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:2133 */
41 : rtx
42 6 : gen_x86_stc (void)
43 : {
44 6 : static const uint8_t expand_encoding[] = {
45 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01, 0x27,
46 : 0x00, 0x2a
47 : };
48 6 : return expand_rtx (expand_encoding, nullptr);
49 : }
50 :
51 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3379 */
52 : rtx
53 22 : gen_swapsi (const rtx operand0, const rtx operand1)
54 : {
55 22 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
56 22 : static const uint8_t expand_encoding[] = {
57 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01,
58 : 0x1f, 0x01, 0x01, 0x01, 0x00
59 : };
60 22 : return expand_rtx (expand_encoding, operands);
61 : }
62 :
63 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3969 */
64 : rtx
65 15 : gen_pop2p_di (const rtx operand0, const rtx operand1, const rtx operand2)
66 : {
67 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
68 15 : static const uint8_t expand_encoding[] = {
69 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x12,
70 : 0x01, 0x01, 0x01, 0x6b, 0x1f, 0x01, 0x02, 0x1a,
71 : 0x12, 0x01, 0x27, 0x00, 0x6c, 0x1a, 0x12, 0x01,
72 : 0x27, 0x00, 0x6d
73 : };
74 15 : return expand_rtx (expand_encoding, operands);
75 : }
76 :
77 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5516 */
78 : rtx
79 2335 : gen_extendbfsf2_1 (const rtx operand0, const rtx operand1)
80 : {
81 2335 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
82 2335 : static const uint8_t expand_encoding[] = {
83 : 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x01, 0x01, 0x01,
84 : 0x3d
85 : };
86 2335 : return expand_rtx (expand_encoding, operands);
87 : }
88 :
89 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5922 */
90 : rtx
91 20 : gen_fixuns_truncsfsi2_avx512f (const rtx operand0, const rtx operand1)
92 : {
93 20 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
94 20 : static const uint8_t expand_encoding[] = {
95 : 0x1f, 0x01, 0x00, 0x76, 0x11, 0x01, 0x01
96 : };
97 20 : return expand_rtx (expand_encoding, operands);
98 : }
99 :
100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6079 */
101 : rtx
102 2184 : gen_fix_trunchi_i387 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
103 : {
104 2184 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
105 2184 : static const uint8_t expand_encoding[] = {
106 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x74, 0x10,
107 : 0x01, 0x01, 0x20, 0x00, 0x01, 0x02, 0x20, 0x00,
108 : 0x01, 0x03
109 : };
110 2184 : return expand_rtx (expand_encoding, operands);
111 : }
112 :
113 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6185 */
114 : rtx
115 1 : gen_floatdihf2 (const rtx operand0, const rtx operand1)
116 : {
117 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
118 1 : static const uint8_t expand_encoding[] = {
119 : 0x1f, 0x01, 0x00, 0x73, 0x2b, 0x01, 0x01
120 : };
121 1 : return expand_rtx (expand_encoding, operands);
122 : }
123 :
124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7748 */
125 : rtx
126 0 : gen_addvhi4_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
127 : {
128 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
129 0 : static const uint8_t expand_encoding[] = {
130 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11, 0x5d,
131 : 0x09, 0x3b, 0x11, 0x6e, 0x11, 0x01, 0x01, 0x01,
132 : 0x03, 0x6e, 0x11, 0x3b, 0x10, 0x01, 0x01, 0x01,
133 : 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x10, 0x01, 0x01,
134 : 0x01, 0x02
135 : };
136 0 : return expand_rtx (expand_encoding, operands);
137 : }
138 :
139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8876 */
140 : rtx
141 1630 : gen_adddi3_carry (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
142 : {
143 1630 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
144 1630 : static const uint8_t expand_encoding[] = {
145 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x12,
146 : 0x3b, 0x12, 0x03, 0x12, 0x04, 0x01, 0x03, 0x27,
147 : 0x00, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
148 : };
149 1630 : return expand_rtx (expand_encoding, operands);
150 : }
151 :
152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9904 */
153 : rtx
154 1740 : gen_subdi3_carry_ccgz (const rtx operand0, const rtx operand1, const rtx operand2)
155 : {
156 1740 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
157 1740 : static const uint8_t expand_encoding[] = {
158 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x06, 0x11, 0x1a,
159 : 0x06, 0x03, 0x01, 0x01, 0x01, 0x02, 0x66, 0x12,
160 : 0x30, 0x02, 0x11, 0x27, 0x00, 0x28, 0x21, 0x00,
161 : 0x31, 0x12
162 : };
163 1740 : return expand_rtx (expand_encoding, operands);
164 : }
165 :
166 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11511 */
167 : rtx
168 10234 : gen_umuldi3_highpart (const rtx operand0, const rtx operand1, const rtx operand2)
169 : {
170 10234 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
171 10234 : static const uint8_t expand_encoding[] = {
172 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x42, 0x12,
173 : 0x01, 0x01, 0x01, 0x02, 0x21, 0x00, 0x31, 0x12,
174 : 0x05, 0x02, 0x11
175 : };
176 10234 : return expand_rtx (expand_encoding, operands);
177 : }
178 :
179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12392 */
180 : rtx
181 246 : gen_divmodhiqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
182 : {
183 246 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
184 246 : static const uint8_t expand_encoding[] = {
185 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x10,
186 : 0x4d, 0x10, 0x6f, 0x10, 0x70, 0x0f, 0x46, 0x10,
187 : 0x01, 0x01, 0x6e, 0x10, 0x01, 0x02, 0x27, 0x08,
188 : 0x6f, 0x10, 0x70, 0x0f, 0x43, 0x10, 0x01, 0x01,
189 : 0x6e, 0x10, 0x01, 0x02, 0x05, 0x02, 0x11
190 : };
191 246 : return expand_rtx (expand_encoding, operands);
192 : }
193 :
194 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15815 */
195 : rtx
196 503 : gen_x86_64_shld_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
197 : {
198 503 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
199 503 : static const uint8_t expand_encoding[] = {
200 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x12,
201 : 0x4d, 0x12, 0x01, 0x00, 0x01, 0x02, 0x32, 0x12,
202 : 0x50, 0x13, 0x6f, 0x13, 0x01, 0x01, 0x01, 0x03,
203 : 0x00, 0x05, 0x02, 0x11
204 : };
205 503 : return expand_rtx (expand_encoding, operands);
206 : }
207 :
208 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16047 */
209 : rtx
210 77 : gen_x86_shld_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
211 : {
212 77 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
213 77 : static const uint8_t expand_encoding[] = {
214 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x11,
215 : 0x4d, 0x11, 0x01, 0x00, 0x01, 0x02, 0x32, 0x11,
216 : 0x50, 0x12, 0x6f, 0x12, 0x01, 0x01, 0x01, 0x03,
217 : 0x00, 0x05, 0x02, 0x11
218 : };
219 77 : return expand_rtx (expand_encoding, operands);
220 : }
221 :
222 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17116 */
223 : rtx
224 0 : gen_lshrti3_doubleword_lowpart_nf (const rtx operand0, const rtx operand1, const rtx operand2)
225 : {
226 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
227 0 : static const uint8_t expand_encoding[] = {
228 : 0x1f, 0x01, 0x00, 0x32, 0x12, 0x50, 0x13, 0x01,
229 : 0x01, 0x01, 0x02, 0x00
230 : };
231 0 : return expand_rtx (expand_encoding, operands);
232 : }
233 :
234 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17198 */
235 : rtx
236 0 : gen_x86_64_shrd_1_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
237 : {
238 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
239 0 : static const uint8_t expand_encoding[] = {
240 : 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x50, 0x12, 0x01,
241 : 0x00, 0x01, 0x02, 0x32, 0x12, 0x4d, 0x13, 0x6f,
242 : 0x13, 0x01, 0x01, 0x01, 0x03, 0x00
243 : };
244 0 : return expand_rtx (expand_encoding, operands);
245 : }
246 :
247 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17429 */
248 : rtx
249 37 : gen_x86_shrd_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
250 : {
251 37 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
252 37 : static const uint8_t expand_encoding[] = {
253 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x11,
254 : 0x50, 0x11, 0x01, 0x00, 0x01, 0x02, 0x32, 0x11,
255 : 0x4d, 0x12, 0x6f, 0x12, 0x01, 0x01, 0x01, 0x03,
256 : 0x00, 0x05, 0x02, 0x11
257 : };
258 37 : return expand_rtx (expand_encoding, operands);
259 : }
260 :
261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18795 */
262 : rtx
263 10 : gen_ix86_rotrti3_doubleword (const rtx operand0, const rtx operand1, const rtx operand2)
264 : {
265 10 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
266 10 : static const uint8_t expand_encoding[] = {
267 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x51, 0x13,
268 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11, 0x21,
269 : 0x00, 0x31, 0x12
270 : };
271 10 : return expand_rtx (expand_encoding, operands);
272 : }
273 :
274 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20252 */
275 : rtx
276 9249585 : gen_jump (const rtx operand0)
277 : {
278 9249585 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
279 9249585 : static const uint8_t expand_encoding[] = {
280 : 0x1f, 0x2f, 0x37, 0x00, 0x01, 0x00
281 : };
282 9249585 : return expand_rtx (expand_encoding, operands);
283 : }
284 :
285 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21048 */
286 : rtx
287 1491766 : gen_simple_return_internal (void)
288 : {
289 1491766 : static const uint8_t expand_encoding[] = {
290 : 0x24
291 : };
292 1491766 : return expand_rtx (expand_encoding, nullptr);
293 : }
294 :
295 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21267 */
296 : rtx
297 29 : gen_eh_return_internal (void)
298 : {
299 29 : static const uint8_t expand_encoding[] = {
300 : 0x25, 0x00
301 : };
302 29 : return expand_rtx (expand_encoding, nullptr);
303 : }
304 :
305 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21662 */
306 : rtx
307 19 : gen_bsr_rex64_1 (const rtx operand0, const rtx operand1)
308 : {
309 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
310 19 : static const uint8_t expand_encoding[] = {
311 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x12,
312 : 0x27, 0x3f, 0x81, 0x00, 0x12, 0x01, 0x01, 0x05,
313 : 0x02, 0x11
314 : };
315 19 : return expand_rtx (expand_encoding, operands);
316 : }
317 :
318 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22081 */
319 : rtx
320 0 : gen_lzcnt_si_nf (const rtx operand0, const rtx operand1)
321 : {
322 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
323 0 : static const uint8_t expand_encoding[] = {
324 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
325 : 0x61
326 : };
327 0 : return expand_rtx (expand_encoding, operands);
328 : }
329 :
330 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22154 */
331 : rtx
332 34 : gen_lzcnt_hi (const rtx operand0, const rtx operand1)
333 : {
334 34 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
335 34 : static const uint8_t expand_encoding[] = {
336 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x10,
337 : 0x01, 0x01, 0x01, 0x61, 0x05, 0x02, 0x11
338 : };
339 34 : return expand_rtx (expand_encoding, operands);
340 : }
341 :
342 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22722 */
343 : rtx
344 0 : gen_popcountdi2_nf (const rtx operand0, const rtx operand1)
345 : {
346 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
347 0 : static const uint8_t expand_encoding[] = {
348 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x12, 0x01, 0x01
349 : };
350 0 : return expand_rtx (expand_encoding, operands);
351 : }
352 :
353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24151 */
354 : rtx
355 58 : gen_truncxfsf2_i387_noop_unspec (const rtx operand0, const rtx operand1)
356 : {
357 58 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
358 58 : static const uint8_t expand_encoding[] = {
359 : 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x01, 0x01, 0x01,
360 : 0x20
361 : };
362 58 : return expand_rtx (expand_encoding, operands);
363 : }
364 :
365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24507 */
366 : rtx
367 6 : gen_sincosxf3 (const rtx operand0, const rtx operand1, const rtx operand2)
368 : {
369 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
370 6 : static const uint8_t expand_encoding[] = {
371 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
372 : 0x01, 0x01, 0x02, 0x51, 0x1f, 0x01, 0x01, 0x1a,
373 : 0x2f, 0x01, 0x01, 0x02, 0x52
374 : };
375 6 : return expand_rtx (expand_encoding, operands);
376 : }
377 :
378 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25299 */
379 : rtx
380 3 : gen_avx512f_scalefdf2 (const rtx operand0, const rtx operand1, const rtx operand2)
381 : {
382 3 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
383 3 : static const uint8_t expand_encoding[] = {
384 : 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x02, 0x01, 0x01,
385 : 0x01, 0x02, 0x3b
386 : };
387 3 : return expand_rtx (expand_encoding, operands);
388 : }
389 :
390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25677 */
391 : rtx
392 25 : gen_frndintxf2_ceil (const rtx operand0, const rtx operand1)
393 : {
394 25 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
395 25 : static const uint8_t expand_encoding[] = {
396 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
397 : 0x01, 0x01, 0x01, 0x4d, 0x05, 0x02, 0x11
398 : };
399 25 : return expand_rtx (expand_encoding, operands);
400 : }
401 :
402 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25833 */
403 : rtx
404 18 : gen_fistsi2_floor (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
405 : {
406 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
407 18 : static const uint8_t expand_encoding[] = {
408 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x11,
409 : 0x01, 0x01, 0x01, 0x4f, 0x20, 0x00, 0x01, 0x02,
410 : 0x20, 0x00, 0x01, 0x03
411 : };
412 18 : return expand_rtx (expand_encoding, operands);
413 : }
414 :
415 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27262 */
416 : rtx
417 141 : gen_smindf3 (const rtx operand0, const rtx operand1, const rtx operand2)
418 : {
419 141 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
420 141 : static const uint8_t expand_encoding[] = {
421 : 0x1f, 0x01, 0x00, 0x52, 0x2e, 0x01, 0x01, 0x01,
422 : 0x02
423 : };
424 141 : return expand_rtx (expand_encoding, operands);
425 : }
426 :
427 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27843 */
428 : rtx
429 45 : gen_allocate_stack_worker_probe_di (const rtx operand0, const rtx operand1)
430 : {
431 45 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
432 45 : static const uint8_t expand_encoding[] = {
433 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
434 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
435 : };
436 45 : return expand_rtx (expand_encoding, operands);
437 : }
438 :
439 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28281 */
440 : rtx
441 1 : gen_stack_protect_test_1_si (const rtx operand0, const rtx operand1, const rtx operand2)
442 : {
443 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
444 1 : static const uint8_t expand_encoding[] = {
445 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x0c,
446 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5e, 0x21, 0x00,
447 : 0x31, 0x11
448 : };
449 1 : return expand_rtx (expand_encoding, operands);
450 : }
451 :
452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29887 */
453 : rtx
454 2 : gen_rdtsc (const rtx operand0)
455 : {
456 2 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
457 2 : static const uint8_t expand_encoding[] = {
458 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x01, 0x27, 0x00,
459 : 0x09
460 : };
461 2 : return expand_rtx (expand_encoding, operands);
462 : }
463 :
464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29964 */
465 : rtx
466 21 : gen_fxrstor64 (const rtx operand0)
467 : {
468 21 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
469 21 : static const uint8_t expand_encoding[] = {
470 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x17
471 : };
472 21 : return expand_rtx (expand_encoding, operands);
473 : }
474 :
475 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30037 */
476 : rtx
477 19 : gen_xsaveopt64 (const rtx operand0, const rtx operand1, const rtx operand2)
478 : {
479 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
480 19 : static const uint8_t expand_encoding[] = {
481 : 0x1f, 0x01, 0x00, 0x1b, 0x01, 0x02, 0x01, 0x01,
482 : 0x01, 0x02, 0x1d
483 : };
484 19 : return expand_rtx (expand_encoding, operands);
485 : }
486 :
487 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30100 */
488 : rtx
489 21 : gen_xsetbv_rex64 (const rtx operand0, const rtx operand1, const rtx operand2)
490 : {
491 21 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
492 21 : static const uint8_t expand_encoding[] = {
493 : 0x1b, 0x11, 0x03, 0x01, 0x00, 0x01, 0x01, 0x01,
494 : 0x02, 0x25
495 : };
496 21 : return expand_rtx (expand_encoding, operands);
497 : }
498 :
499 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30205 */
500 : rtx
501 18 : gen_lwp_slwpcbdi (const rtx operand0)
502 : {
503 18 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
504 18 : static const uint8_t expand_encoding[] = {
505 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x01, 0x27, 0x00,
506 : 0x0d
507 : };
508 18 : return expand_rtx (expand_encoding, operands);
509 : }
510 :
511 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30262 */
512 : rtx
513 19 : gen_wrgsbasesi (const rtx operand0)
514 : {
515 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
516 19 : static const uint8_t expand_encoding[] = {
517 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x13
518 : };
519 19 : return expand_rtx (expand_encoding, operands);
520 : }
521 :
522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30290 */
523 : rtx
524 19 : gen_rdseeddi (const rtx operand0)
525 : {
526 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
527 19 : static const uint8_t expand_encoding[] = {
528 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
529 : 0x01, 0x27, 0x00, 0x2d, 0x1f, 0x30, 0x08, 0x11,
530 : 0x1b, 0x08, 0x01, 0x27, 0x00, 0x2d
531 : };
532 19 : return expand_rtx (expand_encoding, operands);
533 : }
534 :
535 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30361 */
536 : rtx
537 20 : gen_wrussdi (const rtx operand0, const rtx operand1)
538 : {
539 20 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
540 20 : static const uint8_t expand_encoding[] = {
541 : 0x1b, 0x00, 0x02, 0x01, 0x00, 0x01, 0x01, 0x40
542 : };
543 20 : return expand_rtx (expand_encoding, operands);
544 : }
545 :
546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30497 */
547 : rtx
548 21 : gen_monitorx_di (const rtx operand0, const rtx operand1, const rtx operand2)
549 : {
550 21 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
551 21 : static const uint8_t expand_encoding[] = {
552 : 0x1b, 0x00, 0x03, 0x01, 0x00, 0x01, 0x01, 0x01,
553 : 0x02, 0x35
554 : };
555 21 : return expand_rtx (expand_encoding, operands);
556 : }
557 :
558 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30611 */
559 : rtx
560 19 : gen_xresldtrk (void)
561 : {
562 19 : static const uint8_t expand_encoding[] = {
563 : 0x1b, 0x00, 0x01, 0x27, 0x00, 0x44
564 : };
565 19 : return expand_rtx (expand_encoding, nullptr);
566 : }
567 :
568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30636 */
569 : rtx
570 20 : gen_stui (void)
571 : {
572 20 : static const uint8_t expand_encoding[] = {
573 : 0x1b, 0x00, 0x01, 0x27, 0x00, 0x49
574 : };
575 20 : return expand_rtx (expand_encoding, nullptr);
576 : }
577 :
578 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30698 */
579 : rtx
580 21 : gen_tpause_rex64 (const rtx operand0, const rtx operand1, const rtx operand2)
581 : {
582 21 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
583 21 : static const uint8_t expand_encoding[] = {
584 : 0x1f, 0x30, 0x08, 0x11, 0x1b, 0x08, 0x03, 0x01,
585 : 0x00, 0x01, 0x01, 0x01, 0x02, 0x47
586 : };
587 21 : return expand_rtx (expand_encoding, operands);
588 : }
589 :
590 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30880 */
591 : rtx
592 12 : gen_movrsdi (const rtx operand0, const rtx operand1)
593 : {
594 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
595 12 : static const uint8_t expand_encoding[] = {
596 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x01, 0x01, 0x01,
597 : 0x59
598 : };
599 12 : return expand_rtx (expand_encoding, operands);
600 : }
601 :
602 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1233 */
603 : rtx
604 14 : gen_mmx_gtv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
605 : {
606 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
607 14 : static const uint8_t expand_encoding[] = {
608 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x5f, 0x4a,
609 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
610 : 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:1622 */
616 : rtx
617 14 : gen_mmx_floatv2siv2sf2 (const rtx operand0, const rtx operand1)
618 : {
619 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
620 14 : static const uint8_t expand_encoding[] = {
621 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x73, 0x67,
622 : 0x01, 0x01, 0x1a, 0x00, 0x01, 0x27, 0x00, 0x6f
623 : };
624 14 : return expand_rtx (expand_encoding, operands);
625 : }
626 :
627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2604 */
628 : rtx
629 0 : gen_andv2hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
630 : {
631 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
632 0 : static const uint8_t expand_encoding[] = {
633 : 0x1f, 0x01, 0x00, 0x49, 0x63, 0x01, 0x01, 0x01,
634 : 0x02
635 : };
636 0 : return expand_rtx (expand_encoding, operands);
637 : }
638 :
639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3253 */
640 : rtx
641 13 : gen_subv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
642 : {
643 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
644 13 : static const uint8_t expand_encoding[] = {
645 : 0x1f, 0x01, 0x00, 0x3c, 0x46, 0x01, 0x01, 0x01,
646 : 0x02
647 : };
648 13 : return expand_rtx (expand_encoding, operands);
649 : }
650 :
651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3365 */
652 : rtx
653 0 : gen_ussubv2qi3 (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, 0x81, 0x16, 0x44, 0x01, 0x01,
658 : 0x01, 0x02
659 : };
660 0 : return expand_rtx (expand_encoding, operands);
661 : }
662 :
663 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3686 */
664 : rtx
665 32 : gen_sminv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
666 : {
667 32 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
668 32 : static const uint8_t expand_encoding[] = {
669 : 0x1f, 0x01, 0x00, 0x52, 0x48, 0x01, 0x01, 0x01,
670 : 0x02
671 : };
672 32 : return expand_rtx (expand_encoding, operands);
673 : }
674 :
675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3764 */
676 : rtx
677 6 : gen_uminv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
678 : {
679 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
680 6 : static const uint8_t expand_encoding[] = {
681 : 0x1f, 0x01, 0x00, 0x54, 0x49, 0x01, 0x01, 0x01,
682 : 0x02
683 : };
684 6 : return expand_rtx (expand_encoding, operands);
685 : }
686 :
687 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3842 */
688 : rtx
689 0 : gen_ssse3_absv4hi2 (const rtx operand0, const rtx operand1)
690 : {
691 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
692 0 : static const uint8_t expand_encoding[] = {
693 : 0x1f, 0x01, 0x00, 0x7b, 0x49, 0x01, 0x01
694 : };
695 0 : return expand_rtx (expand_encoding, operands);
696 : }
697 :
698 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3918 */
699 : rtx
700 112 : gen_mmx_lshrv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
701 : {
702 112 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
703 112 : static const uint8_t expand_encoding[] = {
704 : 0x1f, 0x01, 0x00, 0x50, 0x4a, 0x01, 0x01, 0x01,
705 : 0x02
706 : };
707 112 : return expand_rtx (expand_encoding, operands);
708 : }
709 :
710 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4033 */
711 : rtx
712 5 : gen_ashrv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
713 : {
714 5 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
715 5 : static const uint8_t expand_encoding[] = {
716 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4f, 0x44,
717 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
718 : };
719 5 : return expand_rtx (expand_encoding, operands);
720 : }
721 :
722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4577 */
723 : rtx
724 8 : gen_one_cmplv4qi2 (const rtx operand0, const rtx operand1)
725 : {
726 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
727 8 : static const uint8_t expand_encoding[] = {
728 : 0x1f, 0x01, 0x00, 0x4c, 0x45, 0x01, 0x01
729 : };
730 8 : return expand_rtx (expand_encoding, operands);
731 : }
732 :
733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4859 */
734 : rtx
735 92 : gen_mmx_packusdw (const rtx operand0, const rtx operand1, const rtx operand2)
736 : {
737 92 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
738 92 : static const uint8_t expand_encoding[] = {
739 : 0x1f, 0x01, 0x00, 0x1a, 0x49, 0x02, 0x01, 0x01,
740 : 0x01, 0x02, 0x3a
741 : };
742 92 : return expand_rtx (expand_encoding, operands);
743 : }
744 :
745 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5038 */
746 : rtx
747 89 : gen_sse4_1_sign_extendv4qiv4hi2 (const rtx operand0, const rtx operand1)
748 : {
749 89 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
750 89 : static const uint8_t expand_encoding[] = {
751 : 0x1f, 0x01, 0x00, 0x6e, 0x49, 0x81, 0x0a, 0x45,
752 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
753 : 0x01, 0x27, 0x02, 0x27, 0x03
754 : };
755 89 : return expand_rtx (expand_encoding, operands);
756 : }
757 :
758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5204 */
759 : rtx
760 9 : gen_avx512vl_truncv2siv2qi2 (const rtx operand0, const rtx operand1)
761 : {
762 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
763 9 : static const uint8_t expand_encoding[] = {
764 : 0x1f, 0x01, 0x00, 0x70, 0x44, 0x01, 0x01
765 : };
766 9 : return expand_rtx (expand_encoding, operands);
767 : }
768 :
769 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6481 */
770 : rtx
771 11 : gen_uavgv2qi3_ceil (const rtx operand0, const rtx operand1, const rtx operand2)
772 : {
773 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
774 11 : static const uint8_t expand_encoding[] = {
775 : 0x1f, 0x01, 0x00, 0x70, 0x44, 0x50, 0x46, 0x3b,
776 : 0x46, 0x3b, 0x46, 0x6f, 0x46, 0x01, 0x01, 0x6f,
777 : 0x46, 0x01, 0x02, 0x2c, 0x46, 0x02, 0x27, 0x01,
778 : 0x27, 0x01, 0x27, 0x01
779 : };
780 11 : return expand_rtx (expand_encoding, operands);
781 : }
782 :
783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
784 : rtx
785 0 : gen_movv32hi_internal (const rtx operand0, const rtx operand1)
786 : {
787 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
788 0 : static const uint8_t expand_encoding[] = {
789 : 0x1f, 0x01, 0x00, 0x01, 0x01
790 : };
791 0 : return expand_rtx (expand_encoding, operands);
792 : }
793 :
794 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
795 : rtx
796 0 : gen_movv2ti_internal (const rtx operand0, const rtx operand1)
797 : {
798 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
799 0 : static const uint8_t expand_encoding[] = {
800 : 0x1f, 0x01, 0x00, 0x01, 0x01
801 : };
802 0 : return expand_rtx (expand_encoding, operands);
803 : }
804 :
805 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
806 : rtx
807 23 : gen_movv4sf_internal (const rtx operand0, const rtx operand1)
808 : {
809 23 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
810 23 : static const uint8_t expand_encoding[] = {
811 : 0x1f, 0x01, 0x00, 0x01, 0x01
812 : };
813 23 : return expand_rtx (expand_encoding, operands);
814 : }
815 :
816 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1769 */
817 : rtx
818 12 : gen_avx512f_blendmv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
819 : {
820 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
821 12 : static const uint8_t expand_encoding[] = {
822 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x01, 0x02,
823 : 0x01, 0x01, 0x01, 0x03
824 : };
825 12 : return expand_rtx (expand_encoding, operands);
826 : }
827 :
828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1769 */
829 : rtx
830 12 : gen_avx512f_blendmv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
831 : {
832 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
833 12 : static const uint8_t expand_encoding[] = {
834 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x01, 0x02,
835 : 0x01, 0x01, 0x01, 0x03
836 : };
837 12 : return expand_rtx (expand_encoding, operands);
838 : }
839 :
840 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1805 */
841 : rtx
842 12 : gen_avx512vl_blendmv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
843 : {
844 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
845 12 : static const uint8_t expand_encoding[] = {
846 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x01, 0x02,
847 : 0x01, 0x01, 0x01, 0x03
848 : };
849 12 : return expand_rtx (expand_encoding, operands);
850 : }
851 :
852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2013 */
853 : rtx
854 19 : gen_sse3_lddqu (const rtx operand0, const rtx operand1)
855 : {
856 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
857 19 : static const uint8_t expand_encoding[] = {
858 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x01, 0x01, 0x01,
859 : 0x78
860 : };
861 19 : return expand_rtx (expand_encoding, operands);
862 : }
863 :
864 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2059 */
865 : rtx
866 12 : gen_avx512f_movntv8di (const rtx operand0, const rtx operand1)
867 : {
868 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
869 12 : static const uint8_t expand_encoding[] = {
870 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
871 : 0x76
872 : };
873 12 : return expand_rtx (expand_encoding, operands);
874 : }
875 :
876 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2120 */
877 : rtx
878 11 : gen_kxorsi (const rtx operand0, const rtx operand1, const rtx operand2)
879 : {
880 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
881 11 : static const uint8_t expand_encoding[] = {
882 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x11,
883 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
884 : 0x00, 0x81, 0x2f
885 : };
886 11 : return expand_rtx (expand_encoding, operands);
887 : }
888 :
889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2203 */
890 : rtx
891 12 : gen_kxnorsi (const rtx operand0, const rtx operand1, const rtx operand2)
892 : {
893 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
894 12 : static const uint8_t expand_encoding[] = {
895 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x11,
896 : 0x4b, 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00,
897 : 0x01, 0x27, 0x00, 0x81, 0x2f
898 : };
899 12 : return expand_rtx (expand_encoding, operands);
900 : }
901 :
902 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2294 */
903 : rtx
904 163 : gen_kashiftqi (const rtx operand0, const rtx operand1, const rtx operand2)
905 : {
906 163 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
907 163 : static const uint8_t expand_encoding[] = {
908 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d, 0x0f,
909 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
910 : 0x00, 0x81, 0x2f
911 : };
912 163 : return expand_rtx (expand_encoding, operands);
913 : }
914 :
915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2361 */
916 : rtx
917 44 : gen_ktestsi (const rtx operand0, const rtx operand1)
918 : {
919 44 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
920 44 : static const uint8_t expand_encoding[] = {
921 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
922 : 0x00, 0x01, 0x01, 0x81, 0x31
923 : };
924 44 : return expand_rtx (expand_encoding, operands);
925 : }
926 :
927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2563 */
928 : rtx
929 25 : gen_kunpckhi (const rtx operand0, const rtx operand1, const rtx operand2)
930 : {
931 25 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
932 25 : static const uint8_t expand_encoding[] = {
933 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x10,
934 : 0x4d, 0x10, 0x6f, 0x10, 0x01, 0x01, 0x27, 0x08,
935 : 0x6f, 0x10, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
936 : 0x00, 0x81, 0x2f
937 : };
938 25 : 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_sse_vmaddv4sf3 (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, 0x6b, 0x3b, 0x6b,
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:2736 */
954 : rtx
955 139 : gen_sse2_vmaddv2df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
956 : {
957 139 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
958 139 : static const uint8_t expand_encoding[] = {
959 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
960 : 0x6c, 0x3b, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
961 : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
962 : };
963 139 : return expand_rtx (expand_encoding, operands);
964 : }
965 :
966 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
967 : rtx
968 24 : gen_avx512fp16_vmmulv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
969 : {
970 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
971 24 : static const uint8_t expand_encoding[] = {
972 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
973 : 0x6a, 0x3e, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
974 : 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
975 : };
976 24 : return expand_rtx (expand_encoding, operands);
977 : }
978 :
979 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
980 : rtx
981 9 : gen_sse_vmdivv4sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
982 : {
983 9 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
984 9 : static const uint8_t expand_encoding[] = {
985 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
986 : 0x6b, 0x43, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01,
987 : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
988 : };
989 9 : return expand_rtx (expand_encoding, operands);
990 : }
991 :
992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
993 : rtx
994 46 : gen_sse2_vmdivv2df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
995 : {
996 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
997 46 : static const uint8_t expand_encoding[] = {
998 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
999 : 0x6c, 0x81, 0x09, 0x6c, 0x43, 0x6c, 0x01, 0x01,
1000 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01,
1001 : 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
1002 : };
1003 46 : return expand_rtx (expand_encoding, operands);
1004 : }
1005 :
1006 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
1007 : rtx
1008 55 : gen_avx512f_divv16sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1009 : {
1010 55 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1011 55 : static const uint8_t expand_encoding[] = {
1012 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1013 : 0x74, 0x43, 0x74, 0x01, 0x01, 0x01, 0x02, 0x01,
1014 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1015 : };
1016 55 : return expand_rtx (expand_encoding, operands);
1017 : }
1018 :
1019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2942 */
1020 : rtx
1021 11 : gen_avx_rcpv8sf2 (const rtx operand0, const rtx operand1)
1022 : {
1023 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1024 11 : static const uint8_t expand_encoding[] = {
1025 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x01, 0x01, 0x01,
1026 : 0x37
1027 : };
1028 11 : return expand_rtx (expand_encoding, operands);
1029 : }
1030 :
1031 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2998 */
1032 : rtx
1033 36 : gen_avx512fp16_rcpv16hf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1034 : {
1035 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1036 36 : static const uint8_t expand_encoding[] = {
1037 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
1038 : 0x01, 0x01, 0x01, 0x37, 0x01, 0x02, 0x01, 0x03
1039 : };
1040 36 : return expand_rtx (expand_encoding, operands);
1041 : }
1042 :
1043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3048 */
1044 : rtx
1045 12 : gen_srcp14v2df (const rtx operand0, const rtx operand1, const rtx operand2)
1046 : {
1047 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1048 12 : static const uint8_t expand_encoding[] = {
1049 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
1050 : 0x01, 0x01, 0x01, 0x81, 0x22, 0x01, 0x02, 0x27,
1051 : 0x01
1052 : };
1053 12 : return expand_rtx (expand_encoding, operands);
1054 : }
1055 :
1056 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1057 : rtx
1058 36 : gen_avx512fp16_sqrtv8hf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1059 : {
1060 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1061 36 : static const uint8_t expand_encoding[] = {
1062 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x7c, 0x6a,
1063 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
1064 : };
1065 36 : return expand_rtx (expand_encoding, operands);
1066 : }
1067 :
1068 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1069 : rtx
1070 0 : gen_avx512f_sqrtv8df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1071 : {
1072 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1073 0 : static const uint8_t expand_encoding[] = {
1074 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x7c, 0x75,
1075 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
1076 : };
1077 0 : return expand_rtx (expand_encoding, operands);
1078 : }
1079 :
1080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3117 */
1081 : rtx
1082 0 : gen_sse_vmsqrtv4sf2_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1083 : {
1084 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1085 0 : static const uint8_t expand_encoding[] = {
1086 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1087 : 0x6b, 0x7c, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x27,
1088 : 0x01, 0x01, 0x03, 0x81, 0x33
1089 : };
1090 0 : return expand_rtx (expand_encoding, operands);
1091 : }
1092 :
1093 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3186 */
1094 : rtx
1095 0 : gen_avx512fp16_rsqrtv32hf2 (const rtx operand0, const rtx operand1)
1096 : {
1097 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1098 0 : static const uint8_t expand_encoding[] = {
1099 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x01, 0x01, 0x01,
1100 : 0x38
1101 : };
1102 0 : return expand_rtx (expand_encoding, operands);
1103 : }
1104 :
1105 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3196 */
1106 : rtx
1107 36 : gen_rsqrt14v8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1108 : {
1109 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1110 36 : static const uint8_t expand_encoding[] = {
1111 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1112 : 0x01, 0x01, 0x01, 0x81, 0x23, 0x01, 0x02, 0x01,
1113 : 0x03
1114 : };
1115 36 : return expand_rtx (expand_encoding, operands);
1116 : }
1117 :
1118 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1119 : rtx
1120 0 : gen_ieee_maxv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1121 : {
1122 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1123 0 : static const uint8_t expand_encoding[] = {
1124 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01, 0x01,
1125 : 0x01, 0x02, 0x40
1126 : };
1127 0 : return expand_rtx (expand_encoding, operands);
1128 : }
1129 :
1130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1131 : rtx
1132 0 : gen_ieee_maxv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1133 : {
1134 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1135 0 : static const uint8_t expand_encoding[] = {
1136 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01, 0x01,
1137 : 0x01, 0x02, 0x40
1138 : };
1139 0 : return expand_rtx (expand_encoding, operands);
1140 : }
1141 :
1142 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1143 : rtx
1144 11 : gen_ieee_maxv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1145 : {
1146 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1147 11 : static const uint8_t expand_encoding[] = {
1148 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x01, 0x01,
1149 : 0x01, 0x02, 0x40
1150 : };
1151 11 : return expand_rtx (expand_encoding, operands);
1152 : }
1153 :
1154 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1155 : rtx
1156 22 : gen_ieee_maxv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1157 : {
1158 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1159 22 : static const uint8_t expand_encoding[] = {
1160 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
1161 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x03,
1162 : 0x01, 0x04
1163 : };
1164 22 : return expand_rtx (expand_encoding, operands);
1165 : }
1166 :
1167 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1168 : rtx
1169 0 : gen_ieee_minv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1170 : {
1171 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1172 0 : static const uint8_t expand_encoding[] = {
1173 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x01, 0x01,
1174 : 0x01, 0x02, 0x3f
1175 : };
1176 0 : return expand_rtx (expand_encoding, operands);
1177 : }
1178 :
1179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1180 : rtx
1181 112 : gen_ieee_maxv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1182 : {
1183 112 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1184 112 : static const uint8_t expand_encoding[] = {
1185 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01, 0x01,
1186 : 0x01, 0x02, 0x40
1187 : };
1188 112 : return expand_rtx (expand_encoding, operands);
1189 : }
1190 :
1191 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1192 : rtx
1193 24 : gen_avx512fp16_ieee_vmminv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1194 : {
1195 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1196 24 : static const uint8_t expand_encoding[] = {
1197 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1198 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
1199 : 0x3f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27,
1200 : 0x01
1201 : };
1202 24 : return expand_rtx (expand_encoding, operands);
1203 : }
1204 :
1205 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1206 : rtx
1207 8 : gen_sse_ieee_vmminv4sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1208 : {
1209 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1210 8 : static const uint8_t expand_encoding[] = {
1211 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1212 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
1213 : 0x3f, 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81,
1214 : 0x33
1215 : };
1216 8 : return expand_rtx (expand_encoding, operands);
1217 : }
1218 :
1219 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3595 */
1220 : rtx
1221 342 : gen_vec_addsubv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1222 : {
1223 342 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1224 342 : static const uint8_t expand_encoding[] = {
1225 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x3c, 0x6b,
1226 : 0x01, 0x01, 0x01, 0x02, 0x3b, 0x6b, 0x01, 0x01,
1227 : 0x01, 0x02, 0x27, 0x05
1228 : };
1229 342 : return expand_rtx (expand_encoding, operands);
1230 : }
1231 :
1232 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3924 */
1233 : rtx
1234 13 : gen_sse3_hsubv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1235 : {
1236 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1237 13 : static const uint8_t expand_encoding[] = {
1238 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6b, 0x81, 0x0b,
1239 : 0x67, 0x3c, 0x2d, 0x81, 0x0a, 0x2d, 0x01, 0x01,
1240 : 0x17, 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2d,
1241 : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x01, 0x3c,
1242 : 0x2d, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
1243 : 0x01, 0x27, 0x02, 0x81, 0x0a, 0x2d, 0x01, 0x01,
1244 : 0x17, 0x00, 0x01, 0x27, 0x03, 0x81, 0x0b, 0x67,
1245 : 0x3c, 0x2d, 0x81, 0x0a, 0x2d, 0x01, 0x02, 0x17,
1246 : 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2d, 0x01,
1247 : 0x02, 0x17, 0x00, 0x01, 0x27, 0x01, 0x3c, 0x2d,
1248 : 0x81, 0x0a, 0x2d, 0x01, 0x02, 0x17, 0x00, 0x01,
1249 : 0x27, 0x02, 0x81, 0x0a, 0x2d, 0x01, 0x02, 0x17,
1250 : 0x00, 0x01, 0x27, 0x03
1251 : };
1252 13 : return expand_rtx (expand_encoding, operands);
1253 : }
1254 :
1255 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1256 : rtx
1257 27 : gen_reducepv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1258 : {
1259 27 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1260 27 : static const uint8_t expand_encoding[] = {
1261 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1262 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x41, 0x01,
1263 : 0x03, 0x01, 0x04
1264 : };
1265 27 : return expand_rtx (expand_encoding, operands);
1266 : }
1267 :
1268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1269 : rtx
1270 0 : gen_reducepv2df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1271 : {
1272 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1273 0 : static const uint8_t expand_encoding[] = {
1274 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1275 : 0x6c, 0x1a, 0x6c, 0x02, 0x01, 0x01, 0x01, 0x02,
1276 : 0x81, 0x41, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1277 : 0x81, 0x33
1278 : };
1279 0 : return expand_rtx (expand_encoding, operands);
1280 : }
1281 :
1282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4294 */
1283 : rtx
1284 0 : gen_reducesv2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1285 : {
1286 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1287 0 : static const uint8_t expand_encoding[] = {
1288 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1289 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
1290 : 0x01, 0x03, 0x81, 0x41, 0x01, 0x01, 0x27, 0x01,
1291 : 0x01, 0x04, 0x81, 0x33
1292 : };
1293 0 : return expand_rtx (expand_encoding, operands);
1294 : }
1295 :
1296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4620 */
1297 : rtx
1298 152 : gen_sse_vmmaskcmpv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1299 : {
1300 152 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1301 152 : static const uint8_t expand_encoding[] = {
1302 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x03, 0x6b,
1303 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27,
1304 : 0x01
1305 : };
1306 152 : return expand_rtx (expand_encoding, operands);
1307 : }
1308 :
1309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1310 : rtx
1311 0 : gen_avx512f_cmpv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1312 : {
1313 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1314 0 : static const uint8_t expand_encoding[] = {
1315 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01, 0x01,
1316 : 0x01, 0x02, 0x01, 0x03, 0x3c
1317 : };
1318 0 : return expand_rtx (expand_encoding, operands);
1319 : }
1320 :
1321 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1322 : rtx
1323 0 : gen_avx512f_cmpv8df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1324 : {
1325 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1326 0 : static const uint8_t expand_encoding[] = {
1327 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x1a, 0x0f,
1328 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
1329 : 0x01, 0x04, 0x81, 0x33
1330 : };
1331 0 : return expand_rtx (expand_encoding, operands);
1332 : }
1333 :
1334 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1335 : rtx
1336 0 : gen_avx512vl_cmpv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1337 : {
1338 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1339 0 : static const uint8_t expand_encoding[] = {
1340 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01, 0x01,
1341 : 0x01, 0x02, 0x01, 0x03, 0x3c
1342 : };
1343 0 : return expand_rtx (expand_encoding, operands);
1344 : }
1345 :
1346 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1347 : rtx
1348 141 : gen_avx512f_cmpv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1349 : {
1350 141 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1351 141 : static const uint8_t expand_encoding[] = {
1352 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x03,
1353 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1354 : 0x04
1355 : };
1356 141 : return expand_rtx (expand_encoding, operands);
1357 : }
1358 :
1359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1360 : rtx
1361 6 : gen_avx512bw_ucmpv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1362 : {
1363 6 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1364 6 : static const uint8_t expand_encoding[] = {
1365 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x03, 0x01, 0x01,
1366 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e
1367 : };
1368 6 : return expand_rtx (expand_encoding, operands);
1369 : }
1370 :
1371 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1372 : rtx
1373 194 : gen_avx512vl_ucmpv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1374 : {
1375 194 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1376 194 : static const uint8_t expand_encoding[] = {
1377 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x03,
1378 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e,
1379 : 0x01, 0x04
1380 : };
1381 194 : return expand_rtx (expand_encoding, operands);
1382 : }
1383 :
1384 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1385 : rtx
1386 0 : gen_avx512vl_ucmpv4di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1387 : {
1388 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1389 0 : static const uint8_t expand_encoding[] = {
1390 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1391 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e
1392 : };
1393 0 : return expand_rtx (expand_encoding, operands);
1394 : }
1395 :
1396 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5191 */
1397 : rtx
1398 0 : gen_avx512f_vmcmpv2df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1399 : {
1400 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1401 0 : static const uint8_t expand_encoding[] = {
1402 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x49, 0x0f,
1403 : 0x1a, 0x0f, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01,
1404 : 0x03, 0x3c, 0x27, 0x01, 0x01, 0x04, 0x81, 0x33
1405 : };
1406 0 : return expand_rtx (expand_encoding, operands);
1407 : }
1408 :
1409 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5225 */
1410 : rtx
1411 0 : gen_avx10_2_ucomxhf_round (const rtx operand0, const rtx operand1, const rtx operand2)
1412 : {
1413 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1414 0 : static const uint8_t expand_encoding[] = {
1415 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x1a,
1416 : 0x0d, 0x01, 0x1a, 0x0d, 0x02, 0x81, 0x0a, 0x2b,
1417 : 0x01, 0x00, 0x17, 0x00, 0x01, 0x27, 0x00, 0x81,
1418 : 0x0a, 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27,
1419 : 0x00, 0x3e, 0x1b, 0x01, 0x02, 0x81, 0x33
1420 : };
1421 0 : return expand_rtx (expand_encoding, operands);
1422 : }
1423 :
1424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5241 */
1425 : rtx
1426 0 : gen_avx512fp16_ucomi (const rtx operand0, const rtx operand1)
1427 : {
1428 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1429 0 : static const uint8_t expand_encoding[] = {
1430 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x01, 0x3a,
1431 : 0x0d, 0x81, 0x0a, 0x2b, 0x01, 0x00, 0x17, 0x00,
1432 : 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2b, 0x01, 0x01,
1433 : 0x17, 0x00, 0x01, 0x27, 0x00, 0x1b
1434 : };
1435 0 : return expand_rtx (expand_encoding, operands);
1436 : }
1437 :
1438 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5261 */
1439 : rtx
1440 74 : gen_avx10_2_comisbf16_v8bf (const rtx operand0, const rtx operand1)
1441 : {
1442 74 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1443 74 : static const uint8_t expand_encoding[] = {
1444 : 0x1f, 0x30, 0x0d, 0x11, 0x3a, 0x0d, 0x81, 0x0a,
1445 : 0x2c, 0x01, 0x00, 0x17, 0x00, 0x01, 0x27, 0x00,
1446 : 0x81, 0x0a, 0x2c, 0x01, 0x01, 0x17, 0x00, 0x01,
1447 : 0x27, 0x00
1448 : };
1449 74 : return expand_rtx (expand_encoding, operands);
1450 : }
1451 :
1452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5611 */
1453 : rtx
1454 21 : gen_avx_andnotv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1455 : {
1456 21 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1457 21 : static const uint8_t expand_encoding[] = {
1458 : 0x1f, 0x01, 0x00, 0x49, 0x70, 0x4c, 0x70, 0x01,
1459 : 0x01, 0x01, 0x02
1460 : };
1461 21 : return expand_rtx (expand_encoding, operands);
1462 : }
1463 :
1464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5687 */
1465 : rtx
1466 37 : gen_avx512f_andnotv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1467 : {
1468 37 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1469 37 : static const uint8_t expand_encoding[] = {
1470 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x49, 0x75,
1471 : 0x4c, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
1472 : 0x01, 0x04
1473 : };
1474 37 : return expand_rtx (expand_encoding, operands);
1475 : }
1476 :
1477 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6044 */
1478 : rtx
1479 0 : gen_xordf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1480 : {
1481 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1482 0 : static const uint8_t expand_encoding[] = {
1483 : 0x1f, 0x01, 0x00, 0x4b, 0x2e, 0x01, 0x01, 0x01,
1484 : 0x02
1485 : };
1486 0 : return expand_rtx (expand_encoding, operands);
1487 : }
1488 :
1489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6317 */
1490 : rtx
1491 23 : gen_fma_fmadd_v8df_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1492 : {
1493 23 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1494 23 : static const uint8_t expand_encoding[] = {
1495 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1496 : 0x75, 0x81, 0x19, 0x75, 0x01, 0x01, 0x01, 0x02,
1497 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
1498 : 0x81, 0x33
1499 : };
1500 23 : return expand_rtx (expand_encoding, operands);
1501 : }
1502 :
1503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6355 */
1504 : rtx
1505 12 : gen_avx512vl_fmadd_v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1506 : {
1507 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1508 12 : static const uint8_t expand_encoding[] = {
1509 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
1510 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1511 : 0x01, 0x01, 0x04
1512 : };
1513 12 : return expand_rtx (expand_encoding, operands);
1514 : }
1515 :
1516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1517 : rtx
1518 0 : gen_avx512fp16_fmadd_v8hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1519 : {
1520 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1521 0 : static const uint8_t expand_encoding[] = {
1522 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1523 : 0x6a, 0x81, 0x19, 0x6a, 0x01, 0x01, 0x01, 0x02,
1524 : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1525 : 0x81, 0x33
1526 : };
1527 0 : return expand_rtx (expand_encoding, operands);
1528 : }
1529 :
1530 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1531 : rtx
1532 0 : gen_avx512vl_fmadd_v4df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1533 : {
1534 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1535 0 : static const uint8_t expand_encoding[] = {
1536 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
1537 : 0x70, 0x81, 0x19, 0x70, 0x01, 0x01, 0x01, 0x02,
1538 : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1539 : 0x81, 0x33
1540 : };
1541 0 : return expand_rtx (expand_encoding, operands);
1542 : }
1543 :
1544 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6419 */
1545 : rtx
1546 0 : gen_fma_fmsub_v8df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1547 : {
1548 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1549 0 : static const uint8_t expand_encoding[] = {
1550 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x19,
1551 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x75, 0x01,
1552 : 0x03, 0x01, 0x04, 0x01, 0x05
1553 : };
1554 0 : return expand_rtx (expand_encoding, operands);
1555 : }
1556 :
1557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1558 : rtx
1559 0 : gen_avx512f_fmsub_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1560 : {
1561 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1562 0 : static const uint8_t expand_encoding[] = {
1563 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x19,
1564 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x74, 0x01,
1565 : 0x03, 0x01, 0x01, 0x01, 0x04
1566 : };
1567 0 : return expand_rtx (expand_encoding, operands);
1568 : }
1569 :
1570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1571 : rtx
1572 0 : gen_avx512vl_fmsub_v4df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1573 : {
1574 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1575 0 : static const uint8_t expand_encoding[] = {
1576 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
1577 : 0x70, 0x81, 0x19, 0x70, 0x01, 0x01, 0x01, 0x02,
1578 : 0x3d, 0x70, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1579 : 0x01, 0x05, 0x81, 0x33
1580 : };
1581 0 : return expand_rtx (expand_encoding, operands);
1582 : }
1583 :
1584 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6477 */
1585 : rtx
1586 0 : gen_avx512f_fmsub_v8df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1587 : {
1588 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1589 0 : static const uint8_t expand_encoding[] = {
1590 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x19,
1591 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x75, 0x01,
1592 : 0x03, 0x01, 0x03, 0x01, 0x04
1593 : };
1594 0 : return expand_rtx (expand_encoding, operands);
1595 : }
1596 :
1597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6525 */
1598 : rtx
1599 13 : gen_fma_fnmadd_v8sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1600 : {
1601 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1602 13 : static const uint8_t expand_encoding[] = {
1603 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x19,
1604 : 0x6f, 0x3d, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01,
1605 : 0x03, 0x01, 0x04, 0x01, 0x05
1606 : };
1607 13 : return expand_rtx (expand_encoding, operands);
1608 : }
1609 :
1610 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6565 */
1611 : rtx
1612 23 : gen_avx512fp16_fnmadd_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1613 : {
1614 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1615 23 : static const uint8_t expand_encoding[] = {
1616 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
1617 : 0x6a, 0x3d, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
1618 : 0x03, 0x01, 0x01, 0x01, 0x04
1619 : };
1620 23 : return expand_rtx (expand_encoding, operands);
1621 : }
1622 :
1623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6583 */
1624 : rtx
1625 23 : gen_avx512bw_fnmadd_v32hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1626 : {
1627 23 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1628 23 : static const uint8_t expand_encoding[] = {
1629 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1630 : 0x73, 0x81, 0x19, 0x73, 0x3d, 0x73, 0x01, 0x01,
1631 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1632 : 0x01, 0x05, 0x81, 0x33
1633 : };
1634 23 : return expand_rtx (expand_encoding, operands);
1635 : }
1636 :
1637 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6632 */
1638 : rtx
1639 0 : gen_fma_fnmsub_v32hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1640 : {
1641 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1642 0 : static const uint8_t expand_encoding[] = {
1643 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x19,
1644 : 0x73, 0x3d, 0x73, 0x01, 0x01, 0x01, 0x02, 0x3d,
1645 : 0x73, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1646 : };
1647 0 : return expand_rtx (expand_encoding, operands);
1648 : }
1649 :
1650 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6632 */
1651 : rtx
1652 13 : gen_fma_fnmsub_v4df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1653 : {
1654 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1655 13 : static const uint8_t expand_encoding[] = {
1656 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1657 : 0x70, 0x3d, 0x70, 0x01, 0x01, 0x01, 0x02, 0x3d,
1658 : 0x70, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1659 : };
1660 13 : return expand_rtx (expand_encoding, operands);
1661 : }
1662 :
1663 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6674 */
1664 : rtx
1665 0 : gen_avx512f_fnmsub_v8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1666 : {
1667 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1668 0 : static const uint8_t expand_encoding[] = {
1669 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x19,
1670 : 0x75, 0x3d, 0x75, 0x01, 0x01, 0x01, 0x02, 0x3d,
1671 : 0x75, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04
1672 : };
1673 0 : return expand_rtx (expand_encoding, operands);
1674 : }
1675 :
1676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1677 : rtx
1678 0 : gen_avx512fp16_fnmsub_v8hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1679 : {
1680 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1681 0 : static const uint8_t expand_encoding[] = {
1682 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1683 : 0x6a, 0x81, 0x19, 0x6a, 0x3d, 0x6a, 0x01, 0x01,
1684 : 0x01, 0x02, 0x3d, 0x6a, 0x01, 0x03, 0x01, 0x03,
1685 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1686 : };
1687 0 : return expand_rtx (expand_encoding, operands);
1688 : }
1689 :
1690 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1691 : rtx
1692 12 : gen_avx512vl_fnmsub_v2df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1693 : {
1694 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1695 12 : static const uint8_t expand_encoding[] = {
1696 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x19,
1697 : 0x6c, 0x3d, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x3d,
1698 : 0x6c, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04
1699 : };
1700 12 : return expand_rtx (expand_encoding, operands);
1701 : }
1702 :
1703 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6795 */
1704 : rtx
1705 0 : gen_fma_fmaddsub_v8df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1706 : {
1707 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1708 0 : static const uint8_t expand_encoding[] = {
1709 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1710 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1711 : 0x06, 0x01, 0x04, 0x01, 0x05
1712 : };
1713 0 : return expand_rtx (expand_encoding, operands);
1714 : }
1715 :
1716 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1717 : rtx
1718 0 : gen_avx512f_fmaddsub_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1719 : {
1720 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1721 0 : static const uint8_t expand_encoding[] = {
1722 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
1723 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1724 : 0x06, 0x01, 0x01, 0x01, 0x04
1725 : };
1726 0 : return expand_rtx (expand_encoding, operands);
1727 : }
1728 :
1729 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1730 : rtx
1731 24 : gen_avx512vl_fmaddsub_v4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1732 : {
1733 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1734 24 : static const uint8_t expand_encoding[] = {
1735 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
1736 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1737 : 0x06, 0x01, 0x01, 0x01, 0x04
1738 : };
1739 24 : return expand_rtx (expand_encoding, operands);
1740 : }
1741 :
1742 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1743 : rtx
1744 0 : gen_avx512fp16_fmaddsub_v8hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1745 : {
1746 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1747 0 : static const uint8_t expand_encoding[] = {
1748 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1749 : 0x6a, 0x1a, 0x6a, 0x03, 0x01, 0x01, 0x01, 0x02,
1750 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04,
1751 : 0x01, 0x05, 0x81, 0x33
1752 : };
1753 0 : return expand_rtx (expand_encoding, operands);
1754 : }
1755 :
1756 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1757 : rtx
1758 0 : gen_avx512vl_fmaddsub_v2df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1759 : {
1760 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1761 0 : static const uint8_t expand_encoding[] = {
1762 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1763 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
1764 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04,
1765 : 0x01, 0x05, 0x81, 0x33
1766 : };
1767 0 : return expand_rtx (expand_encoding, operands);
1768 : }
1769 :
1770 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6864 */
1771 : rtx
1772 0 : gen_fma_fmsubadd_v8df_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1773 : {
1774 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1775 0 : static const uint8_t expand_encoding[] = {
1776 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1777 : 0x75, 0x1a, 0x75, 0x03, 0x01, 0x01, 0x01, 0x02,
1778 : 0x3d, 0x75, 0x01, 0x03, 0x81, 0x06, 0x01, 0x04,
1779 : 0x01, 0x05, 0x01, 0x06, 0x81, 0x33
1780 : };
1781 0 : return expand_rtx (expand_encoding, operands);
1782 : }
1783 :
1784 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1785 : rtx
1786 0 : gen_avx512vl_fmsubadd_v8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1787 : {
1788 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1789 0 : static const uint8_t expand_encoding[] = {
1790 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
1791 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6f, 0x01,
1792 : 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04
1793 : };
1794 0 : return expand_rtx (expand_encoding, operands);
1795 : }
1796 :
1797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1798 : rtx
1799 0 : gen_avx512vl_fmsubadd_v2df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1800 : {
1801 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1802 0 : static const uint8_t expand_encoding[] = {
1803 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1804 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
1805 : 0x3d, 0x6c, 0x01, 0x03, 0x81, 0x06, 0x01, 0x01,
1806 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1807 : };
1808 0 : return expand_rtx (expand_encoding, operands);
1809 : }
1810 :
1811 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6900 */
1812 : rtx
1813 12 : gen_avx512vl_fmsubadd_v4sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1814 : {
1815 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1816 12 : static const uint8_t expand_encoding[] = {
1817 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1818 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6b, 0x01,
1819 : 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04
1820 : };
1821 12 : return expand_rtx (expand_encoding, operands);
1822 : }
1823 :
1824 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7040 */
1825 : rtx
1826 138 : gen_avx512f_vmfmadd_v8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1827 : {
1828 138 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1829 138 : static const uint8_t expand_encoding[] = {
1830 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1831 : 0x6a, 0x81, 0x09, 0x6a, 0x81, 0x19, 0x6a, 0x01,
1832 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x01,
1833 : 0x04, 0x01, 0x01, 0x27, 0x01, 0x01, 0x05, 0x81,
1834 : 0x33
1835 : };
1836 138 : return expand_rtx (expand_encoding, operands);
1837 : }
1838 :
1839 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7092 */
1840 : rtx
1841 0 : gen_avx512f_vmfmadd_v8hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1842 : {
1843 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1844 0 : static const uint8_t expand_encoding[] = {
1845 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1846 : 0x6a, 0x81, 0x19, 0x6a, 0x01, 0x01, 0x01, 0x02,
1847 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01,
1848 : 0x27, 0x01
1849 : };
1850 0 : return expand_rtx (expand_encoding, operands);
1851 : }
1852 :
1853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7133 */
1854 : rtx
1855 50 : gen_avx512f_vmfmsub_v4sf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1856 : {
1857 50 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1858 50 : static const uint8_t expand_encoding[] = {
1859 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1860 : 0x6b, 0x81, 0x09, 0x6b, 0x81, 0x19, 0x6b, 0x01,
1861 : 0x01, 0x01, 0x02, 0x3d, 0x6b, 0x01, 0x03, 0x01,
1862 : 0x03, 0x01, 0x04, 0x01, 0x03, 0x27, 0x01, 0x01,
1863 : 0x05, 0x81, 0x33
1864 : };
1865 50 : return expand_rtx (expand_encoding, operands);
1866 : }
1867 :
1868 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7194 */
1869 : rtx
1870 0 : gen_avx512f_vmfnmadd_v4sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1871 : {
1872 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1873 0 : static const uint8_t expand_encoding[] = {
1874 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1875 : 0x6b, 0x81, 0x19, 0x6b, 0x3d, 0x6b, 0x01, 0x02,
1876 : 0x01, 0x01, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1877 : 0x01, 0x03, 0x27, 0x01
1878 : };
1879 0 : return expand_rtx (expand_encoding, operands);
1880 : }
1881 :
1882 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7227 */
1883 : rtx
1884 0 : gen_avx512f_vmfnmadd_v2df_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1885 : {
1886 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1887 0 : static const uint8_t expand_encoding[] = {
1888 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1889 : 0x6c, 0x81, 0x09, 0x6c, 0x81, 0x19, 0x6c, 0x3d,
1890 : 0x6c, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03, 0x01,
1891 : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
1892 : 0x06, 0x81, 0x33
1893 : };
1894 0 : return expand_rtx (expand_encoding, operands);
1895 : }
1896 :
1897 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7534 */
1898 : rtx
1899 12 : gen_fma_fcmaddc_v16hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1900 : {
1901 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1902 12 : static const uint8_t expand_encoding[] = {
1903 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
1904 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1905 : 0x5c, 0x01, 0x04, 0x1a, 0x10, 0x01, 0x01, 0x05,
1906 : 0x81, 0x60
1907 : };
1908 12 : return expand_rtx (expand_encoding, operands);
1909 : }
1910 :
1911 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7581 */
1912 : rtx
1913 0 : gen_fma_fmaddc_v32hf_fma_zero (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1914 : {
1915 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1916 0 : static const uint8_t expand_encoding[] = {
1917 : 0x1f, 0x01, 0x00, 0x3b, 0x73, 0x1a, 0x73, 0x03,
1918 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a,
1919 : 0x01, 0x04
1920 : };
1921 0 : return expand_rtx (expand_encoding, operands);
1922 : }
1923 :
1924 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7599 */
1925 : rtx
1926 1 : gen_fma_fmaddc_v4sf_pair (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1927 : {
1928 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1929 1 : static const uint8_t expand_encoding[] = {
1930 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
1931 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5b
1932 : };
1933 1 : return expand_rtx (expand_encoding, operands);
1934 : }
1935 :
1936 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7667 */
1937 : rtx
1938 6 : gen_avx512bw_fcmaddc_v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1939 : {
1940 6 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1941 6 : static const uint8_t expand_encoding[] = {
1942 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1943 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1944 : 0x5c, 0x01, 0x01, 0x1a, 0x11, 0x01, 0x01, 0x04,
1945 : 0x81, 0x60
1946 : };
1947 6 : return expand_rtx (expand_encoding, operands);
1948 : }
1949 :
1950 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1951 : rtx
1952 0 : gen_avx512bw_fcmulc_v32hf (const rtx operand0, const rtx operand1, const rtx operand2)
1953 : {
1954 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1955 0 : static const uint8_t expand_encoding[] = {
1956 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01, 0x01,
1957 : 0x01, 0x02, 0x81, 0x5f
1958 : };
1959 0 : return expand_rtx (expand_encoding, operands);
1960 : }
1961 :
1962 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1963 : rtx
1964 28 : gen_avx512fp16_fmulc_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1965 : {
1966 28 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1967 28 : static const uint8_t expand_encoding[] = {
1968 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1969 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x5e, 0x01,
1970 : 0x03, 0x1a, 0x0f, 0x01, 0x01, 0x04, 0x81, 0x60
1971 : };
1972 28 : return expand_rtx (expand_encoding, operands);
1973 : }
1974 :
1975 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7874 */
1976 : rtx
1977 10 : gen_avx512fp16_fmaddcsh_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1978 : {
1979 10 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1980 10 : static const uint8_t expand_encoding[] = {
1981 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1982 : 0x6a, 0x1a, 0x6a, 0x03, 0x01, 0x01, 0x01, 0x02,
1983 : 0x01, 0x03, 0x81, 0x5a, 0x01, 0x01, 0x1a, 0x0f,
1984 : 0x01, 0x01, 0x04, 0x81, 0x60, 0x01, 0x02, 0x27,
1985 : 0x03
1986 : };
1987 10 : return expand_rtx (expand_encoding, operands);
1988 : }
1989 :
1990 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7894 */
1991 : rtx
1992 24 : gen_avx512fp16_fcmulcsh_v8hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1993 : {
1994 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1995 24 : static const uint8_t expand_encoding[] = {
1996 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1997 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
1998 : 0x81, 0x5f, 0x01, 0x01, 0x27, 0x03, 0x01, 0x03,
1999 : 0x81, 0x33
2000 : };
2001 24 : return expand_rtx (expand_encoding, operands);
2002 : }
2003 :
2004 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2005 : rtx
2006 0 : gen_avx512fp16_vcvtph2udq_v16si (const rtx operand0, const rtx operand1)
2007 : {
2008 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2009 0 : static const uint8_t expand_encoding[] = {
2010 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x01, 0x01, 0x01,
2011 : 0x81, 0x1d
2012 : };
2013 0 : return expand_rtx (expand_encoding, operands);
2014 : }
2015 :
2016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2017 : rtx
2018 0 : gen_avx512fp16_vcvtph2uqq_v8di (const rtx operand0, const rtx operand1)
2019 : {
2020 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2021 0 : static const uint8_t expand_encoding[] = {
2022 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
2023 : 0x81, 0x1d
2024 : };
2025 0 : return expand_rtx (expand_encoding, operands);
2026 : }
2027 :
2028 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2029 : rtx
2030 0 : gen_avx512fp16_vcvtph2uw_v16hi (const rtx operand0, const rtx operand1)
2031 : {
2032 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2033 0 : static const uint8_t expand_encoding[] = {
2034 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
2035 : 0x81, 0x1d
2036 : };
2037 0 : return expand_rtx (expand_encoding, operands);
2038 : }
2039 :
2040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2041 : rtx
2042 0 : gen_avx512fp16_vcvtph2w_v16hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2043 : {
2044 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2045 0 : static const uint8_t expand_encoding[] = {
2046 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x81, 0x09,
2047 : 0x55, 0x1a, 0x55, 0x01, 0x01, 0x01, 0x2f, 0x01,
2048 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2049 : };
2050 0 : return expand_rtx (expand_encoding, operands);
2051 : }
2052 :
2053 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2054 : rtx
2055 0 : gen_avx512fp16_vcvtph2uqq_v4di_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2056 : {
2057 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2058 0 : static const uint8_t expand_encoding[] = {
2059 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x02, 0x81, 0x09,
2060 : 0x57, 0x1a, 0x57, 0x01, 0x01, 0x01, 0x81, 0x1d,
2061 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2062 : };
2063 0 : return expand_rtx (expand_encoding, operands);
2064 : }
2065 :
2066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2067 : rtx
2068 0 : gen_avx512fp16_vcvtph2w_v8hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2069 : {
2070 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2071 0 : static const uint8_t expand_encoding[] = {
2072 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x02, 0x81, 0x09,
2073 : 0x50, 0x1a, 0x50, 0x01, 0x01, 0x01, 0x2f, 0x01,
2074 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2075 : };
2076 0 : return expand_rtx (expand_encoding, operands);
2077 : }
2078 :
2079 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2080 : rtx
2081 0 : gen_avx512fp16_vcvtph2uqq_v2di_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2082 : {
2083 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2084 0 : static const uint8_t expand_encoding[] = {
2085 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x81, 0x09,
2086 : 0x52, 0x1a, 0x52, 0x01, 0x01, 0x01, 0x81, 0x1d,
2087 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2088 : };
2089 0 : return expand_rtx (expand_encoding, operands);
2090 : }
2091 :
2092 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2093 : rtx
2094 0 : gen_avx512fp16_vcvtuw2ph_v8hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2095 : {
2096 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2097 0 : static const uint8_t expand_encoding[] = {
2098 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2099 : 0x6a, 0x75, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
2100 : 0x03, 0x01, 0x04, 0x81, 0x33
2101 : };
2102 0 : return expand_rtx (expand_encoding, operands);
2103 : }
2104 :
2105 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2106 : rtx
2107 0 : gen_avx512fp16_vcvtuw2ph_v32hi (const rtx operand0, const rtx operand1)
2108 : {
2109 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2110 0 : static const uint8_t expand_encoding[] = {
2111 : 0x1f, 0x01, 0x00, 0x75, 0x73, 0x01, 0x01
2112 : };
2113 0 : return expand_rtx (expand_encoding, operands);
2114 : }
2115 :
2116 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2117 : rtx
2118 0 : gen_avx512fp16_vcvtudq2ph_v8si (const rtx operand0, const rtx operand1)
2119 : {
2120 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2121 0 : static const uint8_t expand_encoding[] = {
2122 : 0x1f, 0x01, 0x00, 0x75, 0x6a, 0x01, 0x01
2123 : };
2124 0 : return expand_rtx (expand_encoding, operands);
2125 : }
2126 :
2127 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2128 : rtx
2129 0 : gen_avx512fp16_vcvtudq2ph_v16si (const rtx operand0, const rtx operand1)
2130 : {
2131 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2132 0 : static const uint8_t expand_encoding[] = {
2133 : 0x1f, 0x01, 0x00, 0x75, 0x6e, 0x01, 0x01
2134 : };
2135 0 : return expand_rtx (expand_encoding, operands);
2136 : }
2137 :
2138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2139 : rtx
2140 0 : gen_avx512fp16_vcvtuqq2ph_v8di (const rtx operand0, const rtx operand1)
2141 : {
2142 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2143 0 : static const uint8_t expand_encoding[] = {
2144 : 0x1f, 0x01, 0x00, 0x75, 0x6a, 0x01, 0x01
2145 : };
2146 0 : return expand_rtx (expand_encoding, operands);
2147 : }
2148 :
2149 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8185 */
2150 : rtx
2151 0 : gen_avx512fp16_vcvtsh2usiq (const rtx operand0, const rtx operand1)
2152 : {
2153 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2154 0 : static const uint8_t expand_encoding[] = {
2155 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
2156 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2157 : 0x81, 0x1d
2158 : };
2159 0 : return expand_rtx (expand_encoding, operands);
2160 : }
2161 :
2162 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8211 */
2163 : rtx
2164 22 : gen_avx512fp16_vcvtsi2sh_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2165 : {
2166 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2167 22 : static const uint8_t expand_encoding[] = {
2168 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2169 : 0x6a, 0x81, 0x0c, 0x6a, 0x73, 0x2b, 0x01, 0x02,
2170 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2171 : };
2172 22 : return expand_rtx (expand_encoding, operands);
2173 : }
2174 :
2175 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2176 : rtx
2177 0 : gen_unspec_avx512fp16_fixuns_truncv8hi2 (const rtx operand0, const rtx operand1)
2178 : {
2179 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2180 0 : static const uint8_t expand_encoding[] = {
2181 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
2182 : 0x81, 0x2e
2183 : };
2184 0 : return expand_rtx (expand_encoding, operands);
2185 : }
2186 :
2187 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2188 : rtx
2189 0 : gen_unspec_avx512fp16_fixuns_truncv16hi2 (const rtx operand0, const rtx operand1)
2190 : {
2191 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2192 0 : static const uint8_t expand_encoding[] = {
2193 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
2194 : 0x81, 0x2e
2195 : };
2196 0 : return expand_rtx (expand_encoding, operands);
2197 : }
2198 :
2199 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2200 : rtx
2201 0 : gen_unspec_avx512fp16_fixuns_truncv32hi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2202 : {
2203 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2204 0 : static const uint8_t expand_encoding[] = {
2205 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x1a, 0x5a,
2206 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2207 : 0x33
2208 : };
2209 0 : return expand_rtx (expand_encoding, operands);
2210 : }
2211 :
2212 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2213 : rtx
2214 36 : gen_unspec_avx512fp16_fixuns_truncv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2215 : {
2216 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2217 36 : static const uint8_t expand_encoding[] = {
2218 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
2219 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2220 : 0x03
2221 : };
2222 36 : return expand_rtx (expand_encoding, operands);
2223 : }
2224 :
2225 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2226 : rtx
2227 0 : gen_unspec_avx512fp16_fix_truncv8di2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2228 : {
2229 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2230 0 : static const uint8_t expand_encoding[] = {
2231 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x1a, 0x5c,
2232 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2233 : 0x33
2234 : };
2235 0 : return expand_rtx (expand_encoding, operands);
2236 : }
2237 :
2238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2239 : rtx
2240 0 : gen_avx512fp16_fix_truncv8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2241 : {
2242 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2243 0 : static const uint8_t expand_encoding[] = {
2244 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x74, 0x50,
2245 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2246 : };
2247 0 : return expand_rtx (expand_encoding, operands);
2248 : }
2249 :
2250 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2251 : rtx
2252 0 : gen_avx512fp16_fixuns_truncv16hi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2253 : {
2254 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2255 0 : static const uint8_t expand_encoding[] = {
2256 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x76, 0x55,
2257 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2258 : };
2259 0 : return expand_rtx (expand_encoding, operands);
2260 : }
2261 :
2262 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2263 : rtx
2264 0 : gen_avx512fp16_fixuns_truncv32hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2265 : {
2266 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2267 0 : static const uint8_t expand_encoding[] = {
2268 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x76, 0x5a,
2269 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2270 : };
2271 0 : return expand_rtx (expand_encoding, operands);
2272 : }
2273 :
2274 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2275 : rtx
2276 0 : gen_avx512fp16_fix_truncv16si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2277 : {
2278 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2279 0 : static const uint8_t expand_encoding[] = {
2280 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x74, 0x5b,
2281 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2282 : };
2283 0 : return expand_rtx (expand_encoding, operands);
2284 : }
2285 :
2286 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2287 : rtx
2288 0 : gen_avx512fp16_fix_truncv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2289 : {
2290 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2291 0 : static const uint8_t expand_encoding[] = {
2292 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x74, 0x5c,
2293 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2294 : };
2295 0 : return expand_rtx (expand_encoding, operands);
2296 : }
2297 :
2298 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8269 */
2299 : rtx
2300 36 : gen_unspec_avx512fp16_fix_truncv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2301 : {
2302 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2303 36 : static const uint8_t expand_encoding[] = {
2304 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
2305 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2306 : 0x03
2307 : };
2308 36 : return expand_rtx (expand_encoding, operands);
2309 : }
2310 :
2311 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8319 */
2312 : rtx
2313 0 : gen_unspec_avx512fp16_fix_truncv2di2 (const rtx operand0, const rtx operand1)
2314 : {
2315 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2316 0 : static const uint8_t expand_encoding[] = {
2317 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
2318 : 0x81, 0x2d
2319 : };
2320 0 : return expand_rtx (expand_encoding, operands);
2321 : }
2322 :
2323 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8330 */
2324 : rtx
2325 1 : gen_avx512fp16_fixuns_truncv2di2 (const rtx operand0, const rtx operand1)
2326 : {
2327 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2328 1 : static const uint8_t expand_encoding[] = {
2329 : 0x1f, 0x01, 0x00, 0x76, 0x52, 0x81, 0x0a, 0x63,
2330 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
2331 : 0x01
2332 : };
2333 1 : return expand_rtx (expand_encoding, operands);
2334 : }
2335 :
2336 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8363 */
2337 : rtx
2338 0 : gen_avx512fp16_fix_truncsi2 (const rtx operand0, const rtx operand1)
2339 : {
2340 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2341 0 : static const uint8_t expand_encoding[] = {
2342 : 0x1f, 0x01, 0x00, 0x74, 0x11, 0x81, 0x0a, 0x2b,
2343 : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2344 : };
2345 0 : return expand_rtx (expand_encoding, operands);
2346 : }
2347 :
2348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8375 */
2349 : rtx
2350 0 : gen_avx512fp16_fixuns_truncsi2_mem (const rtx operand0, const rtx operand1)
2351 : {
2352 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2353 0 : static const uint8_t expand_encoding[] = {
2354 : 0x1f, 0x01, 0x00, 0x76, 0x11, 0x01, 0x01
2355 : };
2356 0 : return expand_rtx (expand_encoding, operands);
2357 : }
2358 :
2359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8395 */
2360 : rtx
2361 0 : gen_avx512fp16_float_extend_phv16sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2362 : {
2363 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2364 0 : static const uint8_t expand_encoding[] = {
2365 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x71, 0x74,
2366 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2367 : };
2368 0 : return expand_rtx (expand_encoding, operands);
2369 : }
2370 :
2371 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8461 */
2372 : rtx
2373 36 : gen_avx512fp16_float_extend_phv2df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2374 : {
2375 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2376 36 : static const uint8_t expand_encoding[] = {
2377 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x71, 0x6c,
2378 : 0x81, 0x0a, 0x63, 0x01, 0x01, 0x17, 0x00, 0x02,
2379 : 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01, 0x03
2380 : };
2381 36 : return expand_rtx (expand_encoding, operands);
2382 : }
2383 :
2384 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8489 */
2385 : rtx
2386 0 : gen_avx512fp16_vcvtps2ph_v8sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2387 : {
2388 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2389 0 : static const uint8_t expand_encoding[] = {
2390 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2391 : 0x6a, 0x72, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
2392 : 0x03, 0x01, 0x04, 0x81, 0x33
2393 : };
2394 0 : return expand_rtx (expand_encoding, operands);
2395 : }
2396 :
2397 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8672 */
2398 : rtx
2399 0 : gen_avx512fp16_vcvtsh2ss_mem (const rtx operand0, const rtx operand1, const rtx operand2)
2400 : {
2401 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2402 0 : static const uint8_t expand_encoding[] = {
2403 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0c,
2404 : 0x6b, 0x71, 0x2d, 0x01, 0x01, 0x01, 0x02, 0x27,
2405 : 0x01
2406 : };
2407 0 : return expand_rtx (expand_encoding, operands);
2408 : }
2409 :
2410 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8686 */
2411 : rtx
2412 0 : gen_avx512fp16_vcvtss2sh_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2413 : {
2414 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2415 0 : static const uint8_t expand_encoding[] = {
2416 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
2417 : 0x6a, 0x81, 0x0c, 0x6a, 0x72, 0x2b, 0x81, 0x0a,
2418 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2419 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
2420 : };
2421 0 : return expand_rtx (expand_encoding, operands);
2422 : }
2423 :
2424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8878 */
2425 : rtx
2426 18 : gen_sse_cvtsi2ss_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2427 : {
2428 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2429 18 : static const uint8_t expand_encoding[] = {
2430 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
2431 : 0x6b, 0x81, 0x0c, 0x6b, 0x73, 0x2d, 0x01, 0x02,
2432 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2433 : };
2434 18 : return expand_rtx (expand_encoding, operands);
2435 : }
2436 :
2437 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8943 */
2438 : rtx
2439 28 : gen_unspec_sse_cvttss2si_round (const rtx operand0, const rtx operand1, const rtx operand2)
2440 : {
2441 28 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2442 28 : static const uint8_t expand_encoding[] = {
2443 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2444 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2445 : 0x33
2446 : };
2447 28 : return expand_rtx (expand_encoding, operands);
2448 : }
2449 :
2450 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8988 */
2451 : rtx
2452 24 : gen_cvtusi2ss64_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2453 : {
2454 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2455 24 : static const uint8_t expand_encoding[] = {
2456 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
2457 : 0x6b, 0x81, 0x0c, 0x6b, 0x75, 0x2d, 0x01, 0x02,
2458 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2459 : };
2460 24 : return expand_rtx (expand_encoding, operands);
2461 : }
2462 :
2463 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9015 */
2464 : rtx
2465 0 : gen_floatunsv16siv16sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2466 : {
2467 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2468 0 : static const uint8_t expand_encoding[] = {
2469 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x75, 0x74,
2470 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2471 : };
2472 0 : return expand_rtx (expand_encoding, operands);
2473 : }
2474 :
2475 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9059 */
2476 : rtx
2477 0 : gen_avx512f_fix_notruncv16sfv16si (const rtx operand0, const rtx operand1)
2478 : {
2479 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2480 0 : static const uint8_t expand_encoding[] = {
2481 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x01, 0x01, 0x01,
2482 : 0x2f
2483 : };
2484 0 : return expand_rtx (expand_encoding, operands);
2485 : }
2486 :
2487 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9070 */
2488 : rtx
2489 0 : gen_avx512vl_fixuns_notruncv4sfv4si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2490 : {
2491 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2492 0 : static const uint8_t expand_encoding[] = {
2493 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x81, 0x09,
2494 : 0x51, 0x1a, 0x51, 0x01, 0x01, 0x01, 0x81, 0x1d,
2495 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2496 : };
2497 0 : return expand_rtx (expand_encoding, operands);
2498 : }
2499 :
2500 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9127 */
2501 : rtx
2502 0 : gen_unspec_fix_truncv16sfv16si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2503 : {
2504 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2505 0 : static const uint8_t expand_encoding[] = {
2506 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
2507 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2508 : 0x03
2509 : };
2510 0 : return expand_rtx (expand_encoding, operands);
2511 : }
2512 :
2513 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9138 */
2514 : rtx
2515 0 : gen_fixuns_truncv16sfv16si2 (const rtx operand0, const rtx operand1)
2516 : {
2517 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2518 0 : static const uint8_t expand_encoding[] = {
2519 : 0x1f, 0x01, 0x00, 0x76, 0x5b, 0x01, 0x01
2520 : };
2521 0 : return expand_rtx (expand_encoding, operands);
2522 : }
2523 :
2524 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9167 */
2525 : rtx
2526 36 : gen_unspec_fix_truncv4sfv4si2 (const rtx operand0, const rtx operand1)
2527 : {
2528 36 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2529 36 : static const uint8_t expand_encoding[] = {
2530 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2531 : 0x81, 0x2d
2532 : };
2533 36 : return expand_rtx (expand_encoding, operands);
2534 : }
2535 :
2536 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9319 */
2537 : rtx
2538 0 : gen_unspec_fixuns_truncv2dfv2si2 (const rtx operand0, const rtx operand1)
2539 : {
2540 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2541 0 : static const uint8_t expand_encoding[] = {
2542 : 0x1f, 0x01, 0x00, 0x1a, 0x4a, 0x01, 0x01, 0x01,
2543 : 0x81, 0x2e
2544 : };
2545 0 : return expand_rtx (expand_encoding, operands);
2546 : }
2547 :
2548 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9398 */
2549 : rtx
2550 22 : gen_unspec_avx512f_vcvttss2usi_round (const rtx operand0, const rtx operand1, const rtx operand2)
2551 : {
2552 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2553 22 : static const uint8_t expand_encoding[] = {
2554 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2555 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2556 : 0x33
2557 : };
2558 22 : return expand_rtx (expand_encoding, operands);
2559 : }
2560 :
2561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9421 */
2562 : rtx
2563 19 : gen_avx512f_vcvtsd2usiq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2564 : {
2565 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2566 19 : static const uint8_t expand_encoding[] = {
2567 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2568 : 0x01, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
2569 : 0x01, 0x27, 0x00, 0x81, 0x1d, 0x01, 0x02, 0x81,
2570 : 0x33
2571 : };
2572 19 : return expand_rtx (expand_encoding, operands);
2573 : }
2574 :
2575 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9457 */
2576 : rtx
2577 33 : gen_sse2_cvtsd2siq (const rtx operand0, const rtx operand1)
2578 : {
2579 33 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2580 33 : static const uint8_t expand_encoding[] = {
2581 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
2582 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2583 : 0x2f
2584 : };
2585 33 : return expand_rtx (expand_encoding, operands);
2586 : }
2587 :
2588 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9504 */
2589 : rtx
2590 0 : gen_sse2_cvttsd2siq (const rtx operand0, const rtx operand1)
2591 : {
2592 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2593 0 : static const uint8_t expand_encoding[] = {
2594 : 0x1f, 0x01, 0x00, 0x74, 0x12, 0x81, 0x0a, 0x2e,
2595 : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2596 : };
2597 0 : return expand_rtx (expand_encoding, operands);
2598 : }
2599 :
2600 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2601 : rtx
2602 57 : gen_floatv8div8df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2603 : {
2604 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2605 57 : static const uint8_t expand_encoding[] = {
2606 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
2607 : 0x75, 0x73, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
2608 : 0x03, 0x01, 0x04, 0x81, 0x33
2609 : };
2610 57 : return expand_rtx (expand_encoding, operands);
2611 : }
2612 :
2613 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2614 : rtx
2615 13 : gen_floatv2div2df2 (const rtx operand0, const rtx operand1)
2616 : {
2617 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2618 13 : static const uint8_t expand_encoding[] = {
2619 : 0x1f, 0x01, 0x00, 0x73, 0x6c, 0x01, 0x01
2620 : };
2621 13 : return expand_rtx (expand_encoding, operands);
2622 : }
2623 :
2624 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2625 : rtx
2626 0 : gen_floatunsv2div2df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2627 : {
2628 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2629 0 : static const uint8_t expand_encoding[] = {
2630 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
2631 : 0x6c, 0x75, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
2632 : 0x03, 0x01, 0x04, 0x81, 0x33
2633 : };
2634 0 : return expand_rtx (expand_encoding, operands);
2635 : }
2636 :
2637 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9550 */
2638 : rtx
2639 36 : gen_floatunsv4div4sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2640 : {
2641 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2642 36 : static const uint8_t expand_encoding[] = {
2643 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x75, 0x6b,
2644 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2645 : };
2646 36 : return expand_rtx (expand_encoding, operands);
2647 : }
2648 :
2649 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9762 */
2650 : rtx
2651 0 : gen_avx512f_cvtpd2dq512_round (const rtx operand0, const rtx operand1, const rtx operand2)
2652 : {
2653 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2654 0 : static const uint8_t expand_encoding[] = {
2655 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x1a, 0x56,
2656 : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x81, 0x33
2657 : };
2658 0 : return expand_rtx (expand_encoding, operands);
2659 : }
2660 :
2661 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9863 */
2662 : rtx
2663 66 : gen_fixuns_notruncv8dfv8si2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2664 : {
2665 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2666 66 : static const uint8_t expand_encoding[] = {
2667 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x81, 0x09,
2668 : 0x56, 0x1a, 0x56, 0x01, 0x01, 0x01, 0x81, 0x1d,
2669 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2670 : };
2671 66 : return expand_rtx (expand_encoding, operands);
2672 : }
2673 :
2674 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9921 */
2675 : rtx
2676 0 : gen_unspec_fixuns_truncv8dfv8si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2677 : {
2678 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2679 0 : static const uint8_t expand_encoding[] = {
2680 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x1a, 0x56,
2681 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2682 : 0x33
2683 : };
2684 0 : return expand_rtx (expand_encoding, operands);
2685 : }
2686 :
2687 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9932 */
2688 : rtx
2689 0 : gen_fixuns_truncv8dfv8si2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2690 : {
2691 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2692 0 : static const uint8_t expand_encoding[] = {
2693 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x81, 0x09,
2694 : 0x56, 0x76, 0x56, 0x01, 0x01, 0x01, 0x02, 0x01,
2695 : 0x03, 0x01, 0x04, 0x81, 0x33
2696 : };
2697 0 : return expand_rtx (expand_encoding, operands);
2698 : }
2699 :
2700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10041 */
2701 : rtx
2702 0 : gen_fixuns_truncv4dfv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2703 : {
2704 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2705 0 : static const uint8_t expand_encoding[] = {
2706 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x76, 0x51,
2707 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2708 : };
2709 0 : return expand_rtx (expand_encoding, operands);
2710 : }
2711 :
2712 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10050 */
2713 : rtx
2714 0 : gen_unspec_fixuns_truncv4dfv4di2 (const rtx operand0, const rtx operand1)
2715 : {
2716 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2717 0 : static const uint8_t expand_encoding[] = {
2718 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
2719 : 0x81, 0x2e
2720 : };
2721 0 : return expand_rtx (expand_encoding, operands);
2722 : }
2723 :
2724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10061 */
2725 : rtx
2726 0 : gen_fix_truncv8dfv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2727 : {
2728 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2729 0 : static const uint8_t expand_encoding[] = {
2730 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2731 : 0x5c, 0x74, 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01,
2732 : 0x03, 0x01, 0x04, 0x81, 0x33
2733 : };
2734 0 : return expand_rtx (expand_encoding, operands);
2735 : }
2736 :
2737 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10061 */
2738 : rtx
2739 0 : gen_fixuns_truncv2dfv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2740 : {
2741 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2742 0 : static const uint8_t expand_encoding[] = {
2743 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x76, 0x52,
2744 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2745 : };
2746 0 : return expand_rtx (expand_encoding, operands);
2747 : }
2748 :
2749 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10082 */
2750 : rtx
2751 0 : gen_fixuns_notruncv8dfv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2752 : {
2753 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2754 0 : static const uint8_t expand_encoding[] = {
2755 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
2756 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2757 : 0x03
2758 : };
2759 0 : return expand_rtx (expand_encoding, operands);
2760 : }
2761 :
2762 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10093 */
2763 : rtx
2764 0 : gen_unspec_fixuns_truncv8sfv8di2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2765 : {
2766 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2767 0 : static const uint8_t expand_encoding[] = {
2768 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x1a, 0x5c,
2769 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2770 : 0x33
2771 : };
2772 0 : return expand_rtx (expand_encoding, operands);
2773 : }
2774 :
2775 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10104 */
2776 : rtx
2777 0 : gen_fix_truncv8sfv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2778 : {
2779 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2780 0 : static const uint8_t expand_encoding[] = {
2781 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x74, 0x5c,
2782 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2783 : };
2784 0 : return expand_rtx (expand_encoding, operands);
2785 : }
2786 :
2787 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10114 */
2788 : rtx
2789 36 : gen_unspec_avx512dq_fix_truncv2sfv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2790 : {
2791 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2792 36 : static const uint8_t expand_encoding[] = {
2793 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
2794 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2795 : 0x03
2796 : };
2797 36 : return expand_rtx (expand_encoding, operands);
2798 : }
2799 :
2800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10293 */
2801 : rtx
2802 13 : gen_unspec_sse2_cvttpd2dq (const rtx operand0, const rtx operand1)
2803 : {
2804 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2805 13 : static const uint8_t expand_encoding[] = {
2806 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2807 : 0x81, 0x2d
2808 : };
2809 13 : return expand_rtx (expand_encoding, operands);
2810 : }
2811 :
2812 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10404 */
2813 : rtx
2814 8 : gen_sse2_cvtss2sd_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2815 : {
2816 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2817 8 : static const uint8_t expand_encoding[] = {
2818 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
2819 : 0x6c, 0x71, 0x6c, 0x81, 0x0a, 0x67, 0x01, 0x02,
2820 : 0x17, 0x00, 0x02, 0x27, 0x00, 0x27, 0x01, 0x01,
2821 : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2822 : };
2823 8 : return expand_rtx (expand_encoding, operands);
2824 : }
2825 :
2826 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10582 */
2827 : rtx
2828 0 : gen_avx512f_cvtps2pd512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2829 : {
2830 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2831 0 : static const uint8_t expand_encoding[] = {
2832 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x71, 0x75,
2833 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2834 : };
2835 0 : return expand_rtx (expand_encoding, operands);
2836 : }
2837 :
2838 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10630 */
2839 : rtx
2840 12 : gen_avx512f_cvtd2maskv16si (const rtx operand0, const rtx operand1)
2841 : {
2842 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2843 12 : static const uint8_t expand_encoding[] = {
2844 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x01, 0x01, 0x01,
2845 : 0x81, 0x40
2846 : };
2847 12 : return expand_rtx (expand_encoding, operands);
2848 : }
2849 :
2850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11415 */
2851 : rtx
2852 3023 : gen_sse_movhlps (const rtx operand0, const rtx operand1, const rtx operand2)
2853 : {
2854 3023 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2855 3023 : static const uint8_t expand_encoding[] = {
2856 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x81, 0x0b,
2857 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
2858 : 0x27, 0x06, 0x27, 0x07, 0x27, 0x02, 0x27, 0x03
2859 : };
2860 3023 : return expand_rtx (expand_encoding, operands);
2861 : }
2862 :
2863 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11591 */
2864 : rtx
2865 36 : gen_avx512f_unpcklps512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2866 : {
2867 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2868 36 : static const uint8_t expand_encoding[] = {
2869 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x0a,
2870 : 0x74, 0x81, 0x0b, 0x79, 0x01, 0x01, 0x01, 0x02,
2871 : 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x10, 0x27,
2872 : 0x01, 0x27, 0x11, 0x27, 0x04, 0x27, 0x14, 0x27,
2873 : 0x05, 0x27, 0x15, 0x27, 0x08, 0x27, 0x18, 0x27,
2874 : 0x09, 0x27, 0x19, 0x27, 0x0c, 0x27, 0x1c, 0x27,
2875 : 0x0d, 0x27, 0x1d, 0x01, 0x03, 0x01, 0x04
2876 : };
2877 36 : return expand_rtx (expand_encoding, operands);
2878 : }
2879 :
2880 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11767 */
2881 : rtx
2882 13 : gen_sse3_movsldup (const rtx operand0, const rtx operand1)
2883 : {
2884 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2885 13 : static const uint8_t expand_encoding[] = {
2886 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x81, 0x0b,
2887 : 0x6f, 0x01, 0x01, 0x01, 0x01, 0x17, 0x00, 0x04,
2888 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x06, 0x27, 0x06
2889 : };
2890 13 : return expand_rtx (expand_encoding, operands);
2891 : }
2892 :
2893 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11946 */
2894 : rtx
2895 19 : gen_sse_storehps (const rtx operand0, const rtx operand1)
2896 : {
2897 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2898 19 : static const uint8_t expand_encoding[] = {
2899 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x67, 0x01, 0x01,
2900 : 0x17, 0x00, 0x02, 0x27, 0x02, 0x27, 0x03
2901 : };
2902 19 : return expand_rtx (expand_encoding, operands);
2903 : }
2904 :
2905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12056 */
2906 : rtx
2907 106 : gen_sse_movss_v4sf (const rtx operand0, const rtx operand1, const rtx operand2)
2908 : {
2909 106 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2910 106 : static const uint8_t expand_encoding[] = {
2911 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x01, 0x02,
2912 : 0x01, 0x01, 0x27, 0x01
2913 : };
2914 106 : return expand_rtx (expand_encoding, operands);
2915 : }
2916 :
2917 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12428 */
2918 : rtx
2919 6 : gen_vec_setv16hi_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2920 : {
2921 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2922 6 : static const uint8_t expand_encoding[] = {
2923 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81, 0x0c,
2924 : 0x55, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2925 : };
2926 6 : return expand_rtx (expand_encoding, operands);
2927 : }
2928 :
2929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12599 */
2930 : rtx
2931 51 : gen_sse4_1_insertps_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2932 : {
2933 51 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2934 51 : static const uint8_t expand_encoding[] = {
2935 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x02,
2936 : 0x01, 0x01, 0x01, 0x03, 0x33
2937 : };
2938 51 : return expand_rtx (expand_encoding, operands);
2939 : }
2940 :
2941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13004 */
2942 : rtx
2943 598 : gen_vec_extract_lo_v8di (const rtx operand0, const rtx operand1)
2944 : {
2945 598 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2946 598 : static const uint8_t expand_encoding[] = {
2947 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x57, 0x01, 0x01,
2948 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x01, 0x27,
2949 : 0x02, 0x27, 0x03
2950 : };
2951 598 : return expand_rtx (expand_encoding, operands);
2952 : }
2953 :
2954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13157 */
2955 : rtx
2956 0 : gen_vec_extract_lo_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2957 : {
2958 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2959 0 : static const uint8_t expand_encoding[] = {
2960 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x0a,
2961 : 0x6f, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00,
2962 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
2963 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x02,
2964 : 0x01, 0x03
2965 : };
2966 0 : return expand_rtx (expand_encoding, operands);
2967 : }
2968 :
2969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13284 */
2970 : rtx
2971 1784 : gen_vec_extract_hi_v4di (const rtx operand0, const rtx operand1)
2972 : {
2973 1784 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2974 1784 : static const uint8_t expand_encoding[] = {
2975 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x52, 0x01, 0x01,
2976 : 0x17, 0x00, 0x02, 0x27, 0x02, 0x27, 0x03
2977 : };
2978 1784 : return expand_rtx (expand_encoding, operands);
2979 : }
2980 :
2981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13369 */
2982 : rtx
2983 2364 : gen_vec_extract_hi_v8sf (const rtx operand0, const rtx operand1)
2984 : {
2985 2364 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2986 2364 : static const uint8_t expand_encoding[] = {
2987 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x01, 0x01,
2988 : 0x17, 0x00, 0x04, 0x27, 0x04, 0x27, 0x05, 0x27,
2989 : 0x06, 0x27, 0x07
2990 : };
2991 2364 : return expand_rtx (expand_encoding, operands);
2992 : }
2993 :
2994 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13460 */
2995 : rtx
2996 993 : gen_vec_extract_hi_v16hi (const rtx operand0, const rtx operand1)
2997 : {
2998 993 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2999 993 : static const uint8_t expand_encoding[] = {
3000 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x50, 0x01, 0x01,
3001 : 0x17, 0x00, 0x08, 0x27, 0x08, 0x27, 0x09, 0x27,
3002 : 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d, 0x27,
3003 : 0x0e, 0x27, 0x0f
3004 : };
3005 993 : return expand_rtx (expand_encoding, operands);
3006 : }
3007 :
3008 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13748 */
3009 : rtx
3010 24 : gen_avx512vl_unpckhpd128_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3011 : {
3012 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3013 24 : static const uint8_t expand_encoding[] = {
3014 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0a,
3015 : 0x6c, 0x81, 0x0b, 0x70, 0x01, 0x01, 0x01, 0x02,
3016 : 0x17, 0x00, 0x02, 0x27, 0x01, 0x27, 0x03, 0x01,
3017 : 0x03, 0x01, 0x04
3018 : };
3019 24 : return expand_rtx (expand_encoding, operands);
3020 : }
3021 :
3022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13849 */
3023 : rtx
3024 13 : gen_avx_unpcklpd256 (const rtx operand0, const rtx operand1, const rtx operand2)
3025 : {
3026 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3027 13 : static const uint8_t expand_encoding[] = {
3028 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x70, 0x81, 0x0b,
3029 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
3030 : 0x27, 0x00, 0x27, 0x04, 0x27, 0x02, 0x27, 0x06
3031 : };
3032 13 : return expand_rtx (expand_encoding, operands);
3033 : }
3034 :
3035 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13977 */
3036 : rtx
3037 0 : gen_avx512f_vmscalefv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3038 : {
3039 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3040 0 : static const uint8_t expand_encoding[] = {
3041 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3042 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
3043 : 0x3b, 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81,
3044 : 0x33
3045 : };
3046 0 : return expand_rtx (expand_encoding, operands);
3047 : }
3048 :
3049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3050 : rtx
3051 0 : gen_avx512vl_scalefv16hf (const rtx operand0, const rtx operand1, const rtx operand2)
3052 : {
3053 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3054 0 : static const uint8_t expand_encoding[] = {
3055 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01, 0x01,
3056 : 0x01, 0x02, 0x3b
3057 : };
3058 0 : return expand_rtx (expand_encoding, operands);
3059 : }
3060 :
3061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3062 : rtx
3063 0 : gen_avx512f_scalefv16sf (const rtx operand0, const rtx operand1, const rtx operand2)
3064 : {
3065 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3066 0 : static const uint8_t expand_encoding[] = {
3067 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x01, 0x01,
3068 : 0x01, 0x02, 0x3b
3069 : };
3070 0 : return expand_rtx (expand_encoding, operands);
3071 : }
3072 :
3073 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3074 : rtx
3075 0 : gen_avx512vl_scalefv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3076 : {
3077 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3078 0 : static const uint8_t expand_encoding[] = {
3079 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x1a, 0x6b,
3080 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3081 : 0x81, 0x33
3082 : };
3083 0 : return expand_rtx (expand_encoding, operands);
3084 : }
3085 :
3086 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3087 : rtx
3088 36 : gen_avx512vl_scalefv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3089 : {
3090 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3091 36 : static const uint8_t expand_encoding[] = {
3092 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
3093 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3094 : 0x01, 0x04
3095 : };
3096 36 : return expand_rtx (expand_encoding, operands);
3097 : }
3098 :
3099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14017 */
3100 : rtx
3101 8 : gen_avx512vl_vternlogv4si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3102 : {
3103 8 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3104 8 : static const uint8_t expand_encoding[] = {
3105 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
3106 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3107 : 0x04, 0x81, 0x25, 0x01, 0x05, 0x01, 0x06
3108 : };
3109 8 : return expand_rtx (expand_encoding, operands);
3110 : }
3111 :
3112 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3113 : rtx
3114 69 : gen_avx512bw_getexpv32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3115 : {
3116 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3117 69 : static const uint8_t expand_encoding[] = {
3118 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
3119 : 0x73, 0x1a, 0x73, 0x01, 0x01, 0x01, 0x81, 0x26,
3120 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
3121 : };
3122 69 : return expand_rtx (expand_encoding, operands);
3123 : }
3124 :
3125 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3126 : rtx
3127 0 : gen_avx512f_getexpv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3128 : {
3129 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3130 0 : static const uint8_t expand_encoding[] = {
3131 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
3132 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
3133 : 0x03
3134 : };
3135 0 : return expand_rtx (expand_encoding, operands);
3136 : }
3137 :
3138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3139 : rtx
3140 0 : gen_avx512f_getexpv8df_round (const rtx operand0, const rtx operand1, const rtx operand2)
3141 : {
3142 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3143 0 : static const uint8_t expand_encoding[] = {
3144 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x1a, 0x75,
3145 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x81,
3146 : 0x33
3147 : };
3148 0 : return expand_rtx (expand_encoding, operands);
3149 : }
3150 :
3151 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3152 : rtx
3153 0 : gen_avx512vl_getexpv2df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3154 : {
3155 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3156 0 : static const uint8_t expand_encoding[] = {
3157 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
3158 : 0x6c, 0x1a, 0x6c, 0x01, 0x01, 0x01, 0x81, 0x26,
3159 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
3160 : };
3161 0 : return expand_rtx (expand_encoding, operands);
3162 : }
3163 :
3164 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14410 */
3165 : rtx
3166 17 : gen_avx512f_sgetexpv2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3167 : {
3168 17 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3169 17 : static const uint8_t expand_encoding[] = {
3170 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
3171 : 0x6c, 0x1a, 0x6c, 0x02, 0x01, 0x01, 0x01, 0x02,
3172 : 0x81, 0x26, 0x01, 0x01, 0x27, 0x01, 0x01, 0x03,
3173 : 0x81, 0x33
3174 : };
3175 17 : return expand_rtx (expand_encoding, operands);
3176 : }
3177 :
3178 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3179 : rtx
3180 0 : gen_avx512f_fixupimmv16sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3181 : {
3182 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3183 0 : static const uint8_t expand_encoding[] = {
3184 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
3185 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3186 : 0x04, 0x81, 0x24, 0x01, 0x05, 0x01, 0x06
3187 : };
3188 0 : return expand_rtx (expand_encoding, operands);
3189 : }
3190 :
3191 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3192 : rtx
3193 0 : gen_avx512f_fixupimmv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3194 : {
3195 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3196 0 : static const uint8_t expand_encoding[] = {
3197 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01, 0x01,
3198 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x24
3199 : };
3200 0 : return expand_rtx (expand_encoding, operands);
3201 : }
3202 :
3203 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3204 : rtx
3205 0 : gen_avx512vl_fixupimmv2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3206 : {
3207 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3208 0 : static const uint8_t expand_encoding[] = {
3209 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x1a, 0x6c,
3210 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3211 : 0x04, 0x81, 0x24, 0x01, 0x05, 0x81, 0x33
3212 : };
3213 0 : return expand_rtx (expand_encoding, operands);
3214 : }
3215 :
3216 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14526 */
3217 : rtx
3218 0 : gen_avx512f_fixupimmv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3219 : {
3220 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3221 0 : static const uint8_t expand_encoding[] = {
3222 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
3223 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3224 : 0x04, 0x81, 0x24, 0x01, 0x01, 0x01, 0x05
3225 : };
3226 0 : return expand_rtx (expand_encoding, operands);
3227 : }
3228 :
3229 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14558 */
3230 : rtx
3231 0 : gen_avx512f_sfixupimmv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3232 : {
3233 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3234 0 : static const uint8_t expand_encoding[] = {
3235 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3236 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3237 : 0x04, 0x81, 0x24, 0x01, 0x02, 0x27, 0x01
3238 : };
3239 0 : return expand_rtx (expand_encoding, operands);
3240 : }
3241 :
3242 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3243 : rtx
3244 0 : gen_avx512bw_rndscalev32hf (const rtx operand0, const rtx operand1, const rtx operand2)
3245 : {
3246 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3247 0 : static const uint8_t expand_encoding[] = {
3248 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01, 0x01,
3249 : 0x01, 0x02, 0x5f
3250 : };
3251 0 : return expand_rtx (expand_encoding, operands);
3252 : }
3253 :
3254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3255 : rtx
3256 33 : gen_avx512vl_rndscalev16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3257 : {
3258 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3259 33 : static const uint8_t expand_encoding[] = {
3260 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
3261 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3262 : 0x01, 0x04
3263 : };
3264 33 : return expand_rtx (expand_encoding, operands);
3265 : }
3266 :
3267 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3268 : rtx
3269 0 : gen_avx512vl_rndscalev8sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3270 : {
3271 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3272 0 : static const uint8_t expand_encoding[] = {
3273 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x1a, 0x6f,
3274 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3275 : 0x81, 0x33
3276 : };
3277 0 : return expand_rtx (expand_encoding, operands);
3278 : }
3279 :
3280 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3281 : rtx
3282 0 : gen_avx512f_rndscalev8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3283 : {
3284 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3285 0 : static const uint8_t expand_encoding[] = {
3286 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
3287 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3288 : 0x01, 0x04
3289 : };
3290 0 : return expand_rtx (expand_encoding, operands);
3291 : }
3292 :
3293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14605 */
3294 : rtx
3295 0 : gen_avx512f_rndscalev8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3296 : {
3297 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3298 0 : static const uint8_t expand_encoding[] = {
3299 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
3300 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x02, 0x01, 0x03,
3301 : 0x5f, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01, 0x27,
3302 : 0x01
3303 : };
3304 0 : return expand_rtx (expand_encoding, operands);
3305 : }
3306 :
3307 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14605 */
3308 : rtx
3309 49 : gen_avx512f_rndscalev2df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3310 : {
3311 49 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3312 49 : static const uint8_t expand_encoding[] = {
3313 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
3314 : 0x6c, 0x81, 0x09, 0x6c, 0x1a, 0x6c, 0x02, 0x01,
3315 : 0x02, 0x01, 0x03, 0x5f, 0x01, 0x04, 0x01, 0x05,
3316 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x06, 0x81, 0x33
3317 : };
3318 49 : return expand_rtx (expand_encoding, operands);
3319 : }
3320 :
3321 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14846 */
3322 : rtx
3323 36 : gen_avx512f_interleave_highv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3324 : {
3325 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3326 36 : static const uint8_t expand_encoding[] = {
3327 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x81, 0x0a,
3328 : 0x5c, 0x81, 0x0b, 0x61, 0x01, 0x01, 0x01, 0x02,
3329 : 0x17, 0x00, 0x08, 0x27, 0x01, 0x27, 0x09, 0x27,
3330 : 0x03, 0x27, 0x0b, 0x27, 0x05, 0x27, 0x0d, 0x27,
3331 : 0x07, 0x27, 0x0f, 0x01, 0x03, 0x01, 0x04
3332 : };
3333 36 : return expand_rtx (expand_encoding, operands);
3334 : }
3335 :
3336 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15020 */
3337 : rtx
3338 2 : gen_sse2_storelpd (const rtx operand0, const rtx operand1)
3339 : {
3340 2 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3341 2 : static const uint8_t expand_encoding[] = {
3342 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x2e, 0x01, 0x01,
3343 : 0x17, 0x00, 0x01, 0x27, 0x00
3344 : };
3345 2 : return expand_rtx (expand_encoding, operands);
3346 : }
3347 :
3348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15326 */
3349 : rtx
3350 13 : gen_vec_setv4df_0 (const rtx operand0, const rtx operand1, const rtx operand2)
3351 : {
3352 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3353 13 : static const uint8_t expand_encoding[] = {
3354 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0c,
3355 : 0x70, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
3356 : };
3357 13 : return expand_rtx (expand_encoding, operands);
3358 : }
3359 :
3360 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15503 */
3361 : rtx
3362 36 : gen_avx512f_ss_truncatev8div8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3363 : {
3364 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3365 36 : static const uint8_t expand_encoding[] = {
3366 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x17,
3367 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3368 : };
3369 36 : return expand_rtx (expand_encoding, operands);
3370 : }
3371 :
3372 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15675 */
3373 : rtx
3374 36 : gen_avx512vl_truncatev4div4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3375 : {
3376 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3377 36 : static const uint8_t expand_encoding[] = {
3378 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x70, 0x51,
3379 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3380 : };
3381 36 : return expand_rtx (expand_encoding, operands);
3382 : }
3383 :
3384 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15736 */
3385 : rtx
3386 3 : gen_avx512vl_truncatev4div4qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3387 : {
3388 3 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3389 3 : static const uint8_t expand_encoding[] = {
3390 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x70, 0x45,
3391 : 0x01, 0x01, 0x01, 0x02
3392 : };
3393 3 : return expand_rtx (expand_encoding, operands);
3394 : }
3395 :
3396 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15736 */
3397 : rtx
3398 11 : gen_avx512vl_truncatev4siv4qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3399 : {
3400 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3401 11 : static const uint8_t expand_encoding[] = {
3402 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x70, 0x45,
3403 : 0x01, 0x01, 0x01, 0x02
3404 : };
3405 11 : return expand_rtx (expand_encoding, operands);
3406 : }
3407 :
3408 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15838 */
3409 : rtx
3410 11 : gen_avx512vl_truncatev2div2qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3411 : {
3412 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3413 11 : static const uint8_t expand_encoding[] = {
3414 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x44, 0x70, 0x44,
3415 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3416 : };
3417 11 : return expand_rtx (expand_encoding, operands);
3418 : }
3419 :
3420 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15889 */
3421 : rtx
3422 36 : gen_avx512vl_us_truncatev4div4qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3423 : {
3424 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3425 36 : static const uint8_t expand_encoding[] = {
3426 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x09,
3427 : 0x45, 0x81, 0x18, 0x45, 0x01, 0x01, 0x81, 0x0a,
3428 : 0x45, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
3429 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
3430 : 0x2c, 0x4c, 0x0c, 0x27, 0x00, 0x27, 0x00, 0x27,
3431 : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3432 : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3433 : 0x00, 0x27, 0x00
3434 : };
3435 36 : return expand_rtx (expand_encoding, operands);
3436 : }
3437 :
3438 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16031 */
3439 : rtx
3440 12 : gen_avx512vl_truncatev8hiv8qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3441 : {
3442 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3443 12 : static const uint8_t expand_encoding[] = {
3444 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x70, 0x48,
3445 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3446 : };
3447 12 : return expand_rtx (expand_encoding, operands);
3448 : }
3449 :
3450 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16031 */
3451 : rtx
3452 11 : gen_avx512vl_us_truncatev8siv8qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3453 : {
3454 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3455 11 : static const uint8_t expand_encoding[] = {
3456 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x81, 0x18,
3457 : 0x48, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3458 : };
3459 11 : return expand_rtx (expand_encoding, operands);
3460 : }
3461 :
3462 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16149 */
3463 : rtx
3464 36 : gen_avx512vl_us_truncatev4siv4hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3465 : {
3466 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3467 36 : static const uint8_t expand_encoding[] = {
3468 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x81, 0x09,
3469 : 0x49, 0x81, 0x18, 0x49, 0x01, 0x01, 0x81, 0x0a,
3470 : 0x49, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
3471 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
3472 : 0x2c, 0x49, 0x04, 0x27, 0x00, 0x27, 0x00, 0x27,
3473 : 0x00, 0x27, 0x00
3474 : };
3475 36 : return expand_rtx (expand_encoding, operands);
3476 : }
3477 :
3478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16276 */
3479 : rtx
3480 11 : gen_avx512vl_ss_truncatev2div2hi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3481 : {
3482 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3483 11 : static const uint8_t expand_encoding[] = {
3484 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x46, 0x81, 0x17,
3485 : 0x46, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3486 : };
3487 11 : return expand_rtx (expand_encoding, operands);
3488 : }
3489 :
3490 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16390 */
3491 : rtx
3492 36 : gen_avx512vl_us_truncatev2div2si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3493 : {
3494 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3495 36 : static const uint8_t expand_encoding[] = {
3496 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x81, 0x09,
3497 : 0x4a, 0x81, 0x18, 0x4a, 0x01, 0x01, 0x81, 0x0a,
3498 : 0x4a, 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00,
3499 : 0x27, 0x01, 0x01, 0x03, 0x2c, 0x4a, 0x02, 0x27,
3500 : 0x00, 0x27, 0x00
3501 : };
3502 36 : return expand_rtx (expand_encoding, operands);
3503 : }
3504 :
3505 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17040 */
3506 : rtx
3507 14 : gen_avx512bw_pmaddwd512v32hi (const rtx operand0, const rtx operand1, const rtx operand2)
3508 : {
3509 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3510 14 : static const uint8_t expand_encoding[] = {
3511 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x01, 0x01,
3512 : 0x01, 0x02, 0x81, 0x3d
3513 : };
3514 14 : return expand_rtx (expand_encoding, operands);
3515 : }
3516 :
3517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17467 */
3518 : rtx
3519 43 : gen_ashrv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3520 : {
3521 43 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3522 43 : static const uint8_t expand_encoding[] = {
3523 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x4f, 0x55,
3524 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3525 : };
3526 43 : return expand_rtx (expand_encoding, operands);
3527 : }
3528 :
3529 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17511 */
3530 : rtx
3531 60 : gen_ashrv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3532 : {
3533 60 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3534 60 : static const uint8_t expand_encoding[] = {
3535 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x4f, 0x5a,
3536 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3537 : };
3538 60 : return expand_rtx (expand_encoding, operands);
3539 : }
3540 :
3541 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17663 */
3542 : rtx
3543 49 : gen_ashlv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3544 : {
3545 49 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3546 49 : static const uint8_t expand_encoding[] = {
3547 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4d, 0x51,
3548 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3549 : };
3550 49 : return expand_rtx (expand_encoding, operands);
3551 : }
3552 :
3553 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17677 */
3554 : rtx
3555 5829 : gen_ashlv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3556 : {
3557 5829 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3558 5829 : static const uint8_t expand_encoding[] = {
3559 : 0x1f, 0x01, 0x00, 0x4d, 0x51, 0x01, 0x01, 0x01,
3560 : 0x02
3561 : };
3562 5829 : return expand_rtx (expand_encoding, operands);
3563 : }
3564 :
3565 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17751 */
3566 : rtx
3567 87 : gen_ashlv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3568 : {
3569 87 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3570 87 : static const uint8_t expand_encoding[] = {
3571 : 0x1f, 0x01, 0x00, 0x4d, 0x5b, 0x01, 0x01, 0x01,
3572 : 0x02
3573 : };
3574 87 : return expand_rtx (expand_encoding, operands);
3575 : }
3576 :
3577 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17970 */
3578 : rtx
3579 8 : gen_avx512bw_lshrv4ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
3580 : {
3581 8 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3582 8 : static const uint8_t expand_encoding[] = {
3583 : 0x1f, 0x01, 0x00, 0x50, 0x5d, 0x01, 0x01, 0x01,
3584 : 0x02
3585 : };
3586 8 : return expand_rtx (expand_encoding, operands);
3587 : }
3588 :
3589 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3590 : rtx
3591 36 : gen_avx512f_rolvv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3592 : {
3593 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3594 36 : static const uint8_t expand_encoding[] = {
3595 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4e, 0x5b,
3596 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3597 : };
3598 36 : return expand_rtx (expand_encoding, operands);
3599 : }
3600 :
3601 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3602 : rtx
3603 36 : gen_avx512f_rolvv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3604 : {
3605 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3606 36 : static const uint8_t expand_encoding[] = {
3607 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4e, 0x5c,
3608 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3609 : };
3610 36 : return expand_rtx (expand_encoding, operands);
3611 : }
3612 :
3613 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3614 : rtx
3615 33 : gen_avx512f_rolv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3616 : {
3617 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3618 33 : static const uint8_t expand_encoding[] = {
3619 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4e, 0x5b,
3620 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3621 : };
3622 33 : return expand_rtx (expand_encoding, operands);
3623 : }
3624 :
3625 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3626 : rtx
3627 33 : gen_avx512f_rolv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3628 : {
3629 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3630 33 : static const uint8_t expand_encoding[] = {
3631 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4e, 0x5c,
3632 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3633 : };
3634 33 : return expand_rtx (expand_encoding, operands);
3635 : }
3636 :
3637 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18649 */
3638 : rtx
3639 14 : gen_sse4_2_gtv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3640 : {
3641 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3642 14 : static const uint8_t expand_encoding[] = {
3643 : 0x1f, 0x01, 0x00, 0x5f, 0x52, 0x01, 0x01, 0x01,
3644 : 0x02
3645 : };
3646 14 : return expand_rtx (expand_encoding, operands);
3647 : }
3648 :
3649 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18754 */
3650 : rtx
3651 0 : gen_one_cmplv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3652 : {
3653 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3654 0 : static const uint8_t expand_encoding[] = {
3655 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4b, 0x51,
3656 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3657 : };
3658 0 : return expand_rtx (expand_encoding, operands);
3659 : }
3660 :
3661 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3662 : rtx
3663 0 : gen_avx512vl_testmv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3664 : {
3665 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3666 0 : static const uint8_t expand_encoding[] = {
3667 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x01, 0x01,
3668 : 0x01, 0x02, 0x81, 0x1f
3669 : };
3670 0 : return expand_rtx (expand_encoding, operands);
3671 : }
3672 :
3673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3674 : rtx
3675 0 : gen_avx512vl_testmv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3676 : {
3677 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3678 0 : static const uint8_t expand_encoding[] = {
3679 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
3680 : 0x01, 0x02, 0x81, 0x1f
3681 : };
3682 0 : return expand_rtx (expand_encoding, operands);
3683 : }
3684 :
3685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3686 : rtx
3687 24 : gen_avx512vl_testmv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3688 : {
3689 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3690 24 : static const uint8_t expand_encoding[] = {
3691 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3692 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x1f, 0x01, 0x03
3693 : };
3694 24 : return expand_rtx (expand_encoding, operands);
3695 : }
3696 :
3697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3698 : rtx
3699 0 : gen_avx512vl_testnmv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3700 : {
3701 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3702 0 : static const uint8_t expand_encoding[] = {
3703 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
3704 : 0x01, 0x02, 0x81, 0x20
3705 : };
3706 0 : return expand_rtx (expand_encoding, operands);
3707 : }
3708 :
3709 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3710 : rtx
3711 24 : gen_avx512f_testnmv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3712 : {
3713 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3714 24 : static const uint8_t expand_encoding[] = {
3715 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3716 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x20, 0x01, 0x03
3717 : };
3718 24 : return expand_rtx (expand_encoding, operands);
3719 : }
3720 :
3721 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19702 */
3722 : rtx
3723 16 : gen_sse2_packssdw (const rtx operand0, const rtx operand1, const rtx operand2)
3724 : {
3725 16 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3726 16 : static const uint8_t expand_encoding[] = {
3727 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x81, 0x17,
3728 : 0x49, 0x01, 0x01, 0x81, 0x17, 0x49, 0x01, 0x02
3729 : };
3730 16 : return expand_rtx (expand_encoding, operands);
3731 : }
3732 :
3733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19773 */
3734 : rtx
3735 0 : gen_avx512bw_packuswb (const rtx operand0, const rtx operand1, const rtx operand2)
3736 : {
3737 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3738 0 : static const uint8_t expand_encoding[] = {
3739 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x02, 0x01, 0x01,
3740 : 0x01, 0x02, 0x3a
3741 : };
3742 0 : return expand_rtx (expand_encoding, operands);
3743 : }
3744 :
3745 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19773 */
3746 : rtx
3747 4035 : gen_sse2_packuswb (const rtx operand0, const rtx operand1, const rtx operand2)
3748 : {
3749 4035 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3750 4035 : static const uint8_t expand_encoding[] = {
3751 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
3752 : 0x01, 0x02, 0x3a
3753 : };
3754 4035 : return expand_rtx (expand_encoding, operands);
3755 : }
3756 :
3757 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19861 */
3758 : rtx
3759 3228 : gen_vec_interleave_highv16qi (const rtx operand0, const rtx operand1, const rtx operand2)
3760 : {
3761 3228 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3762 3228 : static const uint8_t expand_encoding[] = {
3763 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x4f, 0x81, 0x0b,
3764 : 0x54, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10,
3765 : 0x27, 0x08, 0x27, 0x18, 0x27, 0x09, 0x27, 0x19,
3766 : 0x27, 0x0a, 0x27, 0x1a, 0x27, 0x0b, 0x27, 0x1b,
3767 : 0x27, 0x0c, 0x27, 0x1c, 0x27, 0x0d, 0x27, 0x1d,
3768 : 0x27, 0x0e, 0x27, 0x1e, 0x27, 0x0f, 0x27, 0x1f
3769 : };
3770 3228 : return expand_rtx (expand_encoding, operands);
3771 : }
3772 :
3773 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19957 */
3774 : rtx
3775 24 : gen_vec_interleave_lowv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3776 : {
3777 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3778 24 : static const uint8_t expand_encoding[] = {
3779 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x81, 0x0a,
3780 : 0x4f, 0x81, 0x0b, 0x54, 0x01, 0x01, 0x01, 0x02,
3781 : 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x10, 0x27,
3782 : 0x01, 0x27, 0x11, 0x27, 0x02, 0x27, 0x12, 0x27,
3783 : 0x03, 0x27, 0x13, 0x27, 0x04, 0x27, 0x14, 0x27,
3784 : 0x05, 0x27, 0x15, 0x27, 0x06, 0x27, 0x16, 0x27,
3785 : 0x07, 0x27, 0x17, 0x01, 0x03, 0x01, 0x04
3786 : };
3787 24 : return expand_rtx (expand_encoding, operands);
3788 : }
3789 :
3790 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20009 */
3791 : rtx
3792 0 : gen_avx2_interleave_highv16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3793 : {
3794 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3795 0 : static const uint8_t expand_encoding[] = {
3796 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x0a,
3797 : 0x6e, 0x81, 0x0b, 0x73, 0x01, 0x01, 0x01, 0x02,
3798 : 0x17, 0x00, 0x10, 0x27, 0x04, 0x27, 0x14, 0x27,
3799 : 0x05, 0x27, 0x15, 0x27, 0x06, 0x27, 0x16, 0x27,
3800 : 0x07, 0x27, 0x17, 0x27, 0x0c, 0x27, 0x1c, 0x27,
3801 : 0x0d, 0x27, 0x1d, 0x27, 0x0e, 0x27, 0x1e, 0x27,
3802 : 0x0f, 0x27, 0x1f, 0x01, 0x03, 0x01, 0x04
3803 : };
3804 0 : return expand_rtx (expand_encoding, operands);
3805 : }
3806 :
3807 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20049 */
3808 : rtx
3809 0 : gen_avx512bw_interleave_lowv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3810 : {
3811 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3812 0 : static const uint8_t expand_encoding[] = {
3813 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x0a,
3814 : 0x73, 0x81, 0x0b, 0x78, 0x01, 0x01, 0x01, 0x02,
3815 : 0x17, 0x00, 0x20, 0x27, 0x00, 0x27, 0x20, 0x27,
3816 : 0x01, 0x27, 0x21, 0x27, 0x02, 0x27, 0x22, 0x27,
3817 : 0x03, 0x27, 0x23, 0x27, 0x08, 0x27, 0x28, 0x27,
3818 : 0x09, 0x27, 0x29, 0x27, 0x0a, 0x27, 0x2a, 0x27,
3819 : 0x0b, 0x27, 0x2b, 0x27, 0x10, 0x27, 0x30, 0x27,
3820 : 0x11, 0x27, 0x31, 0x27, 0x12, 0x27, 0x32, 0x27,
3821 : 0x13, 0x27, 0x33, 0x27, 0x18, 0x27, 0x38, 0x27,
3822 : 0x19, 0x27, 0x39, 0x27, 0x1a, 0x27, 0x3a, 0x27,
3823 : 0x1b, 0x27, 0x3b, 0x01, 0x03, 0x01, 0x04
3824 : };
3825 0 : return expand_rtx (expand_encoding, operands);
3826 : }
3827 :
3828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20097 */
3829 : rtx
3830 0 : gen_vec_interleave_lowv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3831 : {
3832 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3833 0 : static const uint8_t expand_encoding[] = {
3834 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x0a,
3835 : 0x6a, 0x81, 0x0b, 0x6e, 0x01, 0x01, 0x01, 0x02,
3836 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x08, 0x27,
3837 : 0x01, 0x27, 0x09, 0x27, 0x02, 0x27, 0x0a, 0x27,
3838 : 0x03, 0x27, 0x0b, 0x01, 0x03, 0x01, 0x04
3839 : };
3840 0 : return expand_rtx (expand_encoding, operands);
3841 : }
3842 :
3843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20208 */
3844 : rtx
3845 21203 : gen_vec_interleave_lowv4si (const rtx operand0, const rtx operand1, const rtx operand2)
3846 : {
3847 21203 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3848 21203 : static const uint8_t expand_encoding[] = {
3849 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x51, 0x81, 0x0b,
3850 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
3851 : 0x27, 0x00, 0x27, 0x04, 0x27, 0x01, 0x27, 0x05
3852 : };
3853 21203 : return expand_rtx (expand_encoding, operands);
3854 : }
3855 :
3856 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20437 */
3857 : rtx
3858 28 : gen_avx512dq_vinsertf64x2_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3859 : {
3860 28 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3861 28 : static const uint8_t expand_encoding[] = {
3862 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x09,
3863 : 0x75, 0x01, 0x01, 0x81, 0x0c, 0x75, 0x01, 0x02,
3864 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
3865 : };
3866 28 : return expand_rtx (expand_encoding, operands);
3867 : }
3868 :
3869 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20509 */
3870 : rtx
3871 0 : gen_vec_set_hi_v16si (const rtx operand0, const rtx operand1, const rtx operand2)
3872 : {
3873 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3874 0 : static const uint8_t expand_encoding[] = {
3875 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x5b, 0x81, 0x0a,
3876 : 0x56, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00,
3877 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
3878 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x02
3879 : };
3880 0 : return expand_rtx (expand_encoding, operands);
3881 : }
3882 :
3883 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20579 */
3884 : rtx
3885 26 : gen_avx512dq_shuf_f64x2_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)
3886 : {
3887 26 : rtx operands[9] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8 };
3888 26 : static const uint8_t expand_encoding[] = {
3889 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
3890 : 0x70, 0x81, 0x0b, 0x75, 0x01, 0x01, 0x01, 0x02,
3891 : 0x17, 0x00, 0x04, 0x01, 0x03, 0x01, 0x04, 0x01,
3892 : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08
3893 : };
3894 26 : return expand_rtx (expand_encoding, operands);
3895 : }
3896 :
3897 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20807 */
3898 : rtx
3899 33 : gen_avx512f_shuf_f32x4_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7, const rtx operand8, const rtx operand9, const rtx operand10, const rtx operand11, const rtx operand12, const rtx operand13, const rtx operand14, const rtx operand15, const rtx operand16, const rtx operand17, const rtx operand18, const rtx operand19, const rtx operand20)
3900 : {
3901 33 : rtx operands[21] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10, operand11, operand12, operand13, operand14, operand15, operand16, operand17, operand18, operand19, operand20 };
3902 33 : static const uint8_t expand_encoding[] = {
3903 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x0a,
3904 : 0x74, 0x81, 0x0b, 0x79, 0x01, 0x01, 0x01, 0x02,
3905 : 0x17, 0x00, 0x10, 0x01, 0x03, 0x01, 0x04, 0x01,
3906 : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08, 0x01,
3907 : 0x09, 0x01, 0x0a, 0x01, 0x0b, 0x01, 0x0c, 0x01,
3908 : 0x0d, 0x01, 0x0e, 0x01, 0x0f, 0x01, 0x10, 0x01,
3909 : 0x11, 0x01, 0x12, 0x01, 0x13, 0x01, 0x14
3910 : };
3911 33 : return expand_rtx (expand_encoding, operands);
3912 : }
3913 :
3914 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21301 */
3915 : rtx
3916 24 : gen_avx512bw_pshufhwv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3917 : {
3918 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3919 24 : static const uint8_t expand_encoding[] = {
3920 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
3921 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x3e, 0x01,
3922 : 0x03, 0x01, 0x04
3923 : };
3924 24 : return expand_rtx (expand_encoding, operands);
3925 : }
3926 :
3927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22187 */
3928 : rtx
3929 2 : gen_vec_setv8di_0 (const rtx operand0, const rtx operand1, const rtx operand2)
3930 : {
3931 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3932 2 : static const uint8_t expand_encoding[] = {
3933 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x81, 0x0c,
3934 : 0x5c, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
3935 : };
3936 2 : return expand_rtx (expand_encoding, operands);
3937 : }
3938 :
3939 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22951 */
3940 : rtx
3941 14785 : gen_sse_stmxcsr (const rtx operand0)
3942 : {
3943 14785 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
3944 14785 : static const uint8_t expand_encoding[] = {
3945 : 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x01, 0x27, 0x00,
3946 : 0x5d
3947 : };
3948 14785 : return expand_rtx (expand_encoding, operands);
3949 : }
3950 :
3951 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23035 */
3952 : rtx
3953 29 : gen_ssse3_phaddswv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3954 : {
3955 29 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3956 29 : static const uint8_t expand_encoding[] = {
3957 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x50, 0x81, 0x0a,
3958 : 0x50, 0x81, 0x0b, 0x55, 0x01, 0x01, 0x01, 0x02,
3959 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x02, 0x27,
3960 : 0x04, 0x27, 0x06, 0x27, 0x08, 0x27, 0x0a, 0x27,
3961 : 0x0c, 0x27, 0x0e, 0x81, 0x0a, 0x50, 0x81, 0x0b,
3962 : 0x55, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3963 : 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07,
3964 : 0x27, 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27, 0x0f
3965 : };
3966 29 : return expand_rtx (expand_encoding, operands);
3967 : }
3968 :
3969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23063 */
3970 : rtx
3971 15 : gen_ssse3_phsubswv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3972 : {
3973 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3974 15 : static const uint8_t expand_encoding[] = {
3975 : 0x1f, 0x01, 0x00, 0x81, 0x10, 0x49, 0x81, 0x0a,
3976 : 0x49, 0x81, 0x0b, 0x50, 0x01, 0x01, 0x01, 0x02,
3977 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27,
3978 : 0x04, 0x27, 0x06, 0x81, 0x0a, 0x49, 0x81, 0x0b,
3979 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
3980 : 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07
3981 : };
3982 15 : return expand_rtx (expand_encoding, operands);
3983 : }
3984 :
3985 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23252 */
3986 : rtx
3987 24 : gen_avx512bw_pmaddubsw512v16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3988 : {
3989 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3990 24 : static const uint8_t expand_encoding[] = {
3991 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
3992 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x3c, 0x01,
3993 : 0x03, 0x01, 0x04
3994 : };
3995 24 : return expand_rtx (expand_encoding, operands);
3996 : }
3997 :
3998 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23580 */
3999 : rtx
4000 24 : gen_avx2_pshufbv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4001 : {
4002 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4003 24 : static const uint8_t expand_encoding[] = {
4004 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
4005 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x35, 0x01, 0x03,
4006 : 0x01, 0x04
4007 : };
4008 24 : return expand_rtx (expand_encoding, operands);
4009 : }
4010 :
4011 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23665 */
4012 : rtx
4013 15 : gen_ssse3_psignv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
4014 : {
4015 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4016 15 : static const uint8_t expand_encoding[] = {
4017 : 0x1f, 0x01, 0x00, 0x1a, 0x48, 0x02, 0x01, 0x01,
4018 : 0x01, 0x02, 0x79
4019 : };
4020 15 : return expand_rtx (expand_encoding, operands);
4021 : }
4022 :
4023 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23832 */
4024 : rtx
4025 24 : gen_absv16si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4026 : {
4027 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4028 24 : static const uint8_t expand_encoding[] = {
4029 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x7b, 0x5b,
4030 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4031 : };
4032 24 : return expand_rtx (expand_encoding, operands);
4033 : }
4034 :
4035 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23846 */
4036 : rtx
4037 24 : gen_absv32hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4038 : {
4039 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4040 24 : static const uint8_t expand_encoding[] = {
4041 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x7b, 0x5a,
4042 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4043 : };
4044 24 : return expand_rtx (expand_encoding, operands);
4045 : }
4046 :
4047 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23944 */
4048 : rtx
4049 12 : gen_sse4a_insertq (const rtx operand0, const rtx operand1, const rtx operand2)
4050 : {
4051 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4052 12 : static const uint8_t expand_encoding[] = {
4053 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x01,
4054 : 0x01, 0x02, 0x7e
4055 : };
4056 12 : return expand_rtx (expand_encoding, operands);
4057 : }
4058 :
4059 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24015 */
4060 : rtx
4061 127 : gen_sse4_1_blendvss (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4062 : {
4063 127 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4064 127 : static const uint8_t expand_encoding[] = {
4065 : 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x03, 0x01, 0x01,
4066 : 0x01, 0x02, 0x01, 0x03, 0x34
4067 : };
4068 127 : return expand_rtx (expand_encoding, operands);
4069 : }
4070 :
4071 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24262 */
4072 : rtx
4073 32 : gen_sse4_1_mpsadbw (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4074 : {
4075 32 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4076 32 : static const uint8_t expand_encoding[] = {
4077 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01, 0x01,
4078 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x01
4079 : };
4080 32 : return expand_rtx (expand_encoding, operands);
4081 : }
4082 :
4083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24310 */
4084 : rtx
4085 24 : gen_sse4_1_packusdw_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4086 : {
4087 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4088 24 : static const uint8_t expand_encoding[] = {
4089 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
4090 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3a, 0x01, 0x03,
4091 : 0x01, 0x04
4092 : };
4093 24 : return expand_rtx (expand_encoding, operands);
4094 : }
4095 :
4096 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24593 */
4097 : rtx
4098 584 : gen_avx2_zero_extendv16qiv16hi2 (const rtx operand0, const rtx operand1)
4099 : {
4100 584 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4101 584 : static const uint8_t expand_encoding[] = {
4102 : 0x1f, 0x01, 0x00, 0x6f, 0x55, 0x01, 0x01
4103 : };
4104 584 : return expand_rtx (expand_encoding, operands);
4105 : }
4106 :
4107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24702 */
4108 : rtx
4109 24 : gen_sse4_1_zero_extendv8qiv8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4110 : {
4111 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4112 24 : static const uint8_t expand_encoding[] = {
4113 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x6f, 0x50,
4114 : 0x81, 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00, 0x08,
4115 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4116 : 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27, 0x07,
4117 : 0x01, 0x02, 0x01, 0x03
4118 : };
4119 24 : return expand_rtx (expand_encoding, operands);
4120 : }
4121 :
4122 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25076 */
4123 : rtx
4124 69 : gen_avx512f_sign_extendv16hiv16si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4125 : {
4126 69 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4127 69 : static const uint8_t expand_encoding[] = {
4128 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x6e, 0x5b,
4129 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4130 : };
4131 69 : return expand_rtx (expand_encoding, operands);
4132 : }
4133 :
4134 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25186 */
4135 : rtx
4136 35 : gen_sse4_1_sign_extendv4hiv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4137 : {
4138 35 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4139 35 : static const uint8_t expand_encoding[] = {
4140 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x6e, 0x51,
4141 : 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17, 0x00, 0x04,
4142 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4143 : 0x01, 0x02, 0x01, 0x03
4144 : };
4145 35 : return expand_rtx (expand_encoding, operands);
4146 : }
4147 :
4148 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25524 */
4149 : rtx
4150 16 : gen_sse4_1_sign_extendv2qiv2di2 (const rtx operand0, const rtx operand1)
4151 : {
4152 16 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4153 16 : static const uint8_t expand_encoding[] = {
4154 : 0x1f, 0x01, 0x00, 0x6e, 0x52, 0x81, 0x0a, 0x44,
4155 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
4156 : 0x01
4157 : };
4158 16 : return expand_rtx (expand_encoding, operands);
4159 : }
4160 :
4161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25608 */
4162 : rtx
4163 24 : gen_avx2_sign_extendv4hiv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4164 : {
4165 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4166 24 : static const uint8_t expand_encoding[] = {
4167 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6e, 0x57,
4168 : 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17, 0x00, 0x04,
4169 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4170 : 0x01, 0x02, 0x01, 0x03
4171 : };
4172 24 : return expand_rtx (expand_encoding, operands);
4173 : }
4174 :
4175 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25838 */
4176 : rtx
4177 347 : gen_avx2_sign_extendv4siv4di2 (const rtx operand0, const rtx operand1)
4178 : {
4179 347 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4180 347 : static const uint8_t expand_encoding[] = {
4181 : 0x1f, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01
4182 : };
4183 347 : return expand_rtx (expand_encoding, operands);
4184 : }
4185 :
4186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26041 */
4187 : rtx
4188 33 : gen_avx_vtestps (const rtx operand0, const rtx operand1)
4189 : {
4190 33 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4191 33 : static const uint8_t expand_encoding[] = {
4192 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
4193 : 0x00, 0x01, 0x01, 0x81, 0x15
4194 : };
4195 33 : return expand_rtx (expand_encoding, operands);
4196 : }
4197 :
4198 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26339 */
4199 : rtx
4200 24 : gen_sse4_1_roundss (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4201 : {
4202 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4203 24 : static const uint8_t expand_encoding[] = {
4204 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
4205 : 0x02, 0x01, 0x02, 0x01, 0x03, 0x5f, 0x01, 0x01,
4206 : 0x27, 0x01
4207 : };
4208 24 : return expand_rtx (expand_encoding, operands);
4209 : }
4210 :
4211 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26882 */
4212 : rtx
4213 8 : gen_xop_pmacsww (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4214 : {
4215 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4216 8 : static const uint8_t expand_encoding[] = {
4217 : 0x1f, 0x01, 0x00, 0x3b, 0x50, 0x3e, 0x50, 0x01,
4218 : 0x01, 0x01, 0x02, 0x01, 0x03
4219 : };
4220 8 : return expand_rtx (expand_encoding, operands);
4221 : }
4222 :
4223 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26934 */
4224 : rtx
4225 8 : gen_xop_pmacswd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4226 : {
4227 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4228 8 : static const uint8_t expand_encoding[] = {
4229 : 0x1f, 0x01, 0x00, 0x3b, 0x51, 0x3e, 0x51, 0x6e,
4230 : 0x51, 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17, 0x00,
4231 : 0x04, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27,
4232 : 0x07, 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01, 0x02,
4233 : 0x17, 0x00, 0x04, 0x27, 0x01, 0x27, 0x03, 0x27,
4234 : 0x05, 0x27, 0x07, 0x01, 0x03
4235 : };
4236 8 : return expand_rtx (expand_encoding, operands);
4237 : }
4238 :
4239 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26989 */
4240 : rtx
4241 8 : gen_xop_pcmov_v4di256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4242 : {
4243 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4244 8 : static const uint8_t expand_encoding[] = {
4245 : 0x1f, 0x01, 0x00, 0x39, 0x57, 0x01, 0x03, 0x01,
4246 : 0x01, 0x01, 0x02
4247 : };
4248 8 : return expand_rtx (expand_encoding, operands);
4249 : }
4250 :
4251 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27027 */
4252 : rtx
4253 9 : gen_xop_phaddbw (const rtx operand0, const rtx operand1)
4254 : {
4255 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4256 9 : static const uint8_t expand_encoding[] = {
4257 : 0x1f, 0x01, 0x00, 0x3b, 0x50, 0x6e, 0x50, 0x81,
4258 : 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27,
4259 : 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06, 0x27,
4260 : 0x08, 0x27, 0x0a, 0x27, 0x0c, 0x27, 0x0e, 0x6e,
4261 : 0x50, 0x81, 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00,
4262 : 0x08, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27,
4263 : 0x07, 0x27, 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27,
4264 : 0x0f
4265 : };
4266 9 : return expand_rtx (expand_encoding, operands);
4267 : }
4268 :
4269 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27184 */
4270 : rtx
4271 11 : gen_xop_phadddq (const rtx operand0, const rtx operand1)
4272 : {
4273 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4274 11 : static const uint8_t expand_encoding[] = {
4275 : 0x1f, 0x01, 0x00, 0x3b, 0x52, 0x6e, 0x52, 0x81,
4276 : 0x0a, 0x4a, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27,
4277 : 0x00, 0x27, 0x02, 0x6e, 0x52, 0x81, 0x0a, 0x4a,
4278 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x01, 0x27,
4279 : 0x03
4280 : };
4281 11 : return expand_rtx (expand_encoding, operands);
4282 : }
4283 :
4284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27308 */
4285 : rtx
4286 0 : gen_xop_pperm_pack_v8hi_v16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4287 : {
4288 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4289 0 : static const uint8_t expand_encoding[] = {
4290 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0b,
4291 : 0x4f, 0x70, 0x48, 0x01, 0x01, 0x70, 0x48, 0x01,
4292 : 0x02, 0x20, 0x00, 0x01, 0x03
4293 : };
4294 0 : return expand_rtx (expand_encoding, operands);
4295 : }
4296 :
4297 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27438 */
4298 : rtx
4299 33 : gen_xop_vrotlv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
4300 : {
4301 33 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4302 33 : static const uint8_t expand_encoding[] = {
4303 : 0x1f, 0x01, 0x00, 0x39, 0x51, 0x5e, 0x51, 0x01,
4304 : 0x02, 0x27, 0x00, 0x4e, 0x51, 0x01, 0x01, 0x01,
4305 : 0x02, 0x51, 0x51, 0x01, 0x01, 0x3d, 0x51, 0x01,
4306 : 0x02
4307 : };
4308 33 : return expand_rtx (expand_encoding, operands);
4309 : }
4310 :
4311 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27852 */
4312 : rtx
4313 0 : gen_xop_frczsf2 (const rtx operand0, const rtx operand1)
4314 : {
4315 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4316 0 : static const uint8_t expand_encoding[] = {
4317 : 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x01, 0x01, 0x01,
4318 : 0x81, 0x09
4319 : };
4320 0 : return expand_rtx (expand_encoding, operands);
4321 : }
4322 :
4323 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27890 */
4324 : rtx
4325 48 : gen_xop_maskcmpv4si3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4326 : {
4327 48 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4328 48 : static const uint8_t expand_encoding[] = {
4329 : 0x1f, 0x01, 0x00, 0x03, 0x51, 0x01, 0x01, 0x02,
4330 : 0x01, 0x03
4331 : };
4332 48 : return expand_rtx (expand_encoding, operands);
4333 : }
4334 :
4335 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27927 */
4336 : rtx
4337 32 : gen_xop_pcom_tfv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4338 : {
4339 32 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4340 32 : static const uint8_t expand_encoding[] = {
4341 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01, 0x01,
4342 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x08
4343 : };
4344 32 : return expand_rtx (expand_encoding, operands);
4345 : }
4346 :
4347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27996 */
4348 : rtx
4349 35 : gen_aesdec (const rtx operand0, const rtx operand1, const rtx operand2)
4350 : {
4351 35 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4352 35 : static const uint8_t expand_encoding[] = {
4353 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x01,
4354 : 0x01, 0x02, 0x81, 0x0c
4355 : };
4356 35 : return expand_rtx (expand_encoding, operands);
4357 : }
4358 :
4359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4360 : rtx
4361 46 : gen_avx2_pbroadcastv16qi (const rtx operand0, const rtx operand1)
4362 : {
4363 46 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4364 46 : static const uint8_t expand_encoding[] = {
4365 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x4f, 0x81, 0x0a,
4366 : 0x0f, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4367 : };
4368 46 : return expand_rtx (expand_encoding, operands);
4369 : }
4370 :
4371 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4372 : rtx
4373 0 : gen_avx2_pbroadcastv8hf (const rtx operand0, const rtx operand1)
4374 : {
4375 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4376 0 : static const uint8_t expand_encoding[] = {
4377 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6a, 0x81, 0x0a,
4378 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4379 : };
4380 0 : return expand_rtx (expand_encoding, operands);
4381 : }
4382 :
4383 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28181 */
4384 : rtx
4385 1082 : gen_avx2_permvarv8si (const rtx operand0, const rtx operand1, const rtx operand2)
4386 : {
4387 1082 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4388 1082 : static const uint8_t expand_encoding[] = {
4389 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x01, 0x01,
4390 : 0x01, 0x02, 0x81, 0x18
4391 : };
4392 1082 : return expand_rtx (expand_encoding, operands);
4393 : }
4394 :
4395 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28181 */
4396 : rtx
4397 30 : gen_avx512f_permvarv8df (const rtx operand0, const rtx operand1, const rtx operand2)
4398 : {
4399 30 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4400 30 : static const uint8_t expand_encoding[] = {
4401 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x01, 0x01,
4402 : 0x01, 0x02, 0x81, 0x18
4403 : };
4404 30 : return expand_rtx (expand_encoding, operands);
4405 : }
4406 :
4407 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28201 */
4408 : rtx
4409 36 : gen_avx512vl_permvarv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4410 : {
4411 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4412 36 : static const uint8_t expand_encoding[] = {
4413 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
4414 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4415 : 0x03, 0x01, 0x04
4416 : };
4417 36 : return expand_rtx (expand_encoding, operands);
4418 : }
4419 :
4420 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4421 : rtx
4422 0 : gen_avx512vl_permvarv16hf (const rtx operand0, const rtx operand1, const rtx operand2)
4423 : {
4424 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4425 0 : static const uint8_t expand_encoding[] = {
4426 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01, 0x01,
4427 : 0x01, 0x02, 0x81, 0x18
4428 : };
4429 0 : return expand_rtx (expand_encoding, operands);
4430 : }
4431 :
4432 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4433 : rtx
4434 0 : gen_avx512bw_permvarv32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4435 : {
4436 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4437 0 : static const uint8_t expand_encoding[] = {
4438 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x1a, 0x72,
4439 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4440 : 0x03, 0x01, 0x04
4441 : };
4442 0 : return expand_rtx (expand_encoding, operands);
4443 : }
4444 :
4445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28559 */
4446 : rtx
4447 15 : gen_avx2_vec_dupv4df (const rtx operand0, const rtx operand1)
4448 : {
4449 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4450 15 : static const uint8_t expand_encoding[] = {
4451 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x70, 0x81, 0x0a,
4452 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4453 : };
4454 15 : return expand_rtx (expand_encoding, operands);
4455 : }
4456 :
4457 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28571 */
4458 : rtx
4459 0 : gen_avx512bw_vec_dupv32bf_1 (const rtx operand0, const rtx operand1)
4460 : {
4461 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4462 0 : static const uint8_t expand_encoding[] = {
4463 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x72, 0x81, 0x0a,
4464 : 0x2c, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4465 : };
4466 0 : return expand_rtx (expand_encoding, operands);
4467 : }
4468 :
4469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4470 : rtx
4471 24 : gen_avx512vl_vec_dupv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4472 : {
4473 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4474 24 : static const uint8_t expand_encoding[] = {
4475 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x0c,
4476 : 0x57, 0x81, 0x0a, 0x12, 0x01, 0x01, 0x17, 0x00,
4477 : 0x01, 0x27, 0x00, 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:28585 */
4483 : rtx
4484 0 : gen_avx512vl_vec_dupv4df (const rtx operand0, const rtx operand1)
4485 : {
4486 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4487 0 : static const uint8_t expand_encoding[] = {
4488 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x70, 0x81, 0x0a,
4489 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4490 : };
4491 0 : return expand_rtx (expand_encoding, operands);
4492 : }
4493 :
4494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4495 : rtx
4496 24 : gen_avx512vl_vec_dupv32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4497 : {
4498 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4499 24 : static const uint8_t expand_encoding[] = {
4500 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81, 0x0c,
4501 : 0x54, 0x81, 0x0a, 0x0f, 0x01, 0x01, 0x17, 0x00,
4502 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4503 : };
4504 24 : return expand_rtx (expand_encoding, operands);
4505 : }
4506 :
4507 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4508 : rtx
4509 0 : gen_avx512fp16_vec_dupv8hf (const rtx operand0, const rtx operand1)
4510 : {
4511 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4512 0 : static const uint8_t expand_encoding[] = {
4513 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6a, 0x81, 0x0a,
4514 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4515 : };
4516 0 : return expand_rtx (expand_encoding, operands);
4517 : }
4518 :
4519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28616 */
4520 : rtx
4521 36 : gen_avx512f_broadcastv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4522 : {
4523 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4524 36 : static const uint8_t expand_encoding[] = {
4525 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0c,
4526 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4527 : };
4528 36 : return expand_rtx (expand_encoding, operands);
4529 : }
4530 :
4531 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28642 */
4532 : rtx
4533 0 : gen_avx512vl_vec_dup_gprv16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4534 : {
4535 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4536 0 : static const uint8_t expand_encoding[] = {
4537 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x0c,
4538 : 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4539 : };
4540 0 : return expand_rtx (expand_encoding, operands);
4541 : }
4542 :
4543 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28654 */
4544 : rtx
4545 24 : gen_avx512vl_vec_dup_gprv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4546 : {
4547 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4548 24 : static const uint8_t expand_encoding[] = {
4549 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x81, 0x0c,
4550 : 0x52, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4551 : };
4552 24 : return expand_rtx (expand_encoding, operands);
4553 : }
4554 :
4555 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28760 */
4556 : rtx
4557 0 : gen_avx2_vbroadcasti128_v8si (const rtx operand0, const rtx operand1)
4558 : {
4559 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4560 0 : static const uint8_t expand_encoding[] = {
4561 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x01, 0x01,
4562 : 0x01, 0x01
4563 : };
4564 0 : return expand_rtx (expand_encoding, operands);
4565 : }
4566 :
4567 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28875 */
4568 : rtx
4569 0 : gen_avx_vbroadcastf128_v4di (const rtx operand0, const rtx operand1)
4570 : {
4571 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4572 0 : static const uint8_t expand_encoding[] = {
4573 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x57, 0x01, 0x01,
4574 : 0x01, 0x01
4575 : };
4576 0 : return expand_rtx (expand_encoding, operands);
4577 : }
4578 :
4579 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28941 */
4580 : rtx
4581 36 : gen_avx512vl_broadcastv8si_mask_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4582 : {
4583 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4584 36 : static const uint8_t expand_encoding[] = {
4585 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x0c,
4586 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4587 : };
4588 36 : return expand_rtx (expand_encoding, operands);
4589 : }
4590 :
4591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28989 */
4592 : rtx
4593 12 : gen_avx512cd_maskb_vec_dupv8di (const rtx operand0, const rtx operand1)
4594 : {
4595 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4596 12 : static const uint8_t expand_encoding[] = {
4597 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c,
4598 : 0x5c, 0x6f, 0x12, 0x01, 0x01, 0x1a, 0x00, 0x01,
4599 : 0x27, 0x00, 0x81, 0x2f
4600 : };
4601 12 : return expand_rtx (expand_encoding, operands);
4602 : }
4603 :
4604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29013 */
4605 : rtx
4606 12 : gen_avx_vpermilvarv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
4607 : {
4608 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4609 12 : static const uint8_t expand_encoding[] = {
4610 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01, 0x01,
4611 : 0x01, 0x02, 0x81, 0x11
4612 : };
4613 12 : return expand_rtx (expand_encoding, operands);
4614 : }
4615 :
4616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4617 : rtx
4618 123 : gen_avx512f_vpermt2varv16si3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4619 : {
4620 123 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4621 123 : static const uint8_t expand_encoding[] = {
4622 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
4623 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4624 : };
4625 123 : return expand_rtx (expand_encoding, operands);
4626 : }
4627 :
4628 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4629 : rtx
4630 12 : gen_avx512vl_vpermt2varv8si3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4631 : {
4632 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4633 12 : static const uint8_t expand_encoding[] = {
4634 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
4635 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4636 : 0x1c, 0x01, 0x04, 0x01, 0x05
4637 : };
4638 12 : return expand_rtx (expand_encoding, operands);
4639 : }
4640 :
4641 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4642 : rtx
4643 0 : gen_avx512vl_vpermt2varv2di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4644 : {
4645 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4646 0 : static const uint8_t expand_encoding[] = {
4647 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
4648 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4649 : };
4650 0 : return expand_rtx (expand_encoding, operands);
4651 : }
4652 :
4653 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4654 : rtx
4655 12 : gen_avx512vl_vpermt2varv8hi3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4656 : {
4657 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4658 12 : static const uint8_t expand_encoding[] = {
4659 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
4660 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4661 : 0x1c, 0x01, 0x04, 0x01, 0x05
4662 : };
4663 12 : return expand_rtx (expand_encoding, operands);
4664 : }
4665 :
4666 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29131 */
4667 : rtx
4668 0 : gen_avx512fp16_vpermt2varv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4669 : {
4670 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4671 0 : static const uint8_t expand_encoding[] = {
4672 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x03, 0x01, 0x01,
4673 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4674 : };
4675 0 : return expand_rtx (expand_encoding, operands);
4676 : }
4677 :
4678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4679 : rtx
4680 24 : gen_avx512f_vpermt2varv16sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4681 : {
4682 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4683 24 : static const uint8_t expand_encoding[] = {
4684 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
4685 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4686 : 0x1c, 0x01, 0x02, 0x01, 0x04
4687 : };
4688 24 : return expand_rtx (expand_encoding, operands);
4689 : }
4690 :
4691 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4692 : rtx
4693 24 : gen_avx512vl_vpermt2varv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4694 : {
4695 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4696 24 : static const uint8_t expand_encoding[] = {
4697 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
4698 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4699 : 0x1c, 0x01, 0x02, 0x01, 0x04
4700 : };
4701 24 : return expand_rtx (expand_encoding, operands);
4702 : }
4703 :
4704 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29327 */
4705 : rtx
4706 0 : gen_vec_set_lo_v4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4707 : {
4708 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4709 0 : static const uint8_t expand_encoding[] = {
4710 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0b,
4711 : 0x70, 0x01, 0x02, 0x81, 0x0a, 0x6c, 0x01, 0x01,
4712 : 0x17, 0x00, 0x02, 0x27, 0x02, 0x27, 0x03, 0x01,
4713 : 0x03, 0x01, 0x04
4714 : };
4715 0 : return expand_rtx (expand_encoding, operands);
4716 : }
4717 :
4718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29401 */
4719 : rtx
4720 65 : gen_vec_set_hi_v8sf (const rtx operand0, const rtx operand1, const rtx operand2)
4721 : {
4722 65 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4723 65 : static const uint8_t expand_encoding[] = {
4724 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6f, 0x81, 0x0a,
4725 : 0x6b, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00,
4726 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x02
4727 : };
4728 65 : return expand_rtx (expand_encoding, operands);
4729 : }
4730 :
4731 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29498 */
4732 : rtx
4733 1 : gen_vec_set_hi_v32qi (const rtx operand0, const rtx operand1, const rtx operand2)
4734 : {
4735 1 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4736 1 : static const uint8_t expand_encoding[] = {
4737 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x54, 0x81, 0x0a,
4738 : 0x4f, 0x01, 0x01, 0x17, 0x00, 0x10, 0x27, 0x00,
4739 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
4740 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x27, 0x08,
4741 : 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b, 0x27, 0x0c,
4742 : 0x27, 0x0d, 0x27, 0x0e, 0x27, 0x0f, 0x01, 0x02
4743 : };
4744 1 : return expand_rtx (expand_encoding, operands);
4745 : }
4746 :
4747 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29546 */
4748 : rtx
4749 12 : gen_avx2_maskstored (const rtx operand0, const rtx operand1, const rtx operand2)
4750 : {
4751 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4752 12 : static const uint8_t expand_encoding[] = {
4753 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
4754 : 0x01, 0x02, 0x01, 0x00, 0x30
4755 : };
4756 12 : return expand_rtx (expand_encoding, operands);
4757 : }
4758 :
4759 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29638 */
4760 : rtx
4761 26 : gen_avx512f_storev8df_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4762 : {
4763 26 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4764 26 : static const uint8_t expand_encoding[] = {
4765 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01, 0x01,
4766 : 0x01, 0x00, 0x01, 0x02, 0x30
4767 : };
4768 26 : return expand_rtx (expand_encoding, operands);
4769 : }
4770 :
4771 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29667 */
4772 : rtx
4773 0 : gen_avx512vl_storev16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4774 : {
4775 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4776 0 : static const uint8_t expand_encoding[] = {
4777 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
4778 : 0x01, 0x00, 0x01, 0x02, 0x30
4779 : };
4780 0 : return expand_rtx (expand_encoding, operands);
4781 : }
4782 :
4783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29807 */
4784 : rtx
4785 12 : gen_avx2_ashrvv8si (const rtx operand0, const rtx operand1, const rtx operand2)
4786 : {
4787 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4788 12 : static const uint8_t expand_encoding[] = {
4789 : 0x1f, 0x01, 0x00, 0x4f, 0x56, 0x01, 0x01, 0x01,
4790 : 0x02
4791 : };
4792 12 : return expand_rtx (expand_encoding, operands);
4793 : }
4794 :
4795 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29807 */
4796 : rtx
4797 35 : gen_avx512f_ashrvv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4798 : {
4799 35 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4800 35 : static const uint8_t expand_encoding[] = {
4801 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4f, 0x5c,
4802 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4803 : };
4804 35 : return expand_rtx (expand_encoding, operands);
4805 : }
4806 :
4807 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4808 : rtx
4809 12 : gen_avx2_ashlvv8si (const rtx operand0, const rtx operand1, const rtx operand2)
4810 : {
4811 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4812 12 : static const uint8_t expand_encoding[] = {
4813 : 0x1f, 0x01, 0x00, 0x4d, 0x56, 0x01, 0x01, 0x01,
4814 : 0x02
4815 : };
4816 12 : return expand_rtx (expand_encoding, operands);
4817 : }
4818 :
4819 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4820 : rtx
4821 36 : gen_avx512f_ashlvv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4822 : {
4823 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4824 36 : static const uint8_t expand_encoding[] = {
4825 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4d, 0x5c,
4826 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4827 : };
4828 36 : return expand_rtx (expand_encoding, operands);
4829 : }
4830 :
4831 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29840 */
4832 : rtx
4833 0 : gen_avx512vl_ashlvv8hi (const rtx operand0, const rtx operand1, const rtx operand2)
4834 : {
4835 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4836 0 : static const uint8_t expand_encoding[] = {
4837 : 0x1f, 0x01, 0x00, 0x4d, 0x50, 0x01, 0x01, 0x01,
4838 : 0x02
4839 : };
4840 0 : return expand_rtx (expand_encoding, operands);
4841 : }
4842 :
4843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29840 */
4844 : rtx
4845 34 : gen_avx512bw_ashlvv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4846 : {
4847 34 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4848 34 : static const uint8_t expand_encoding[] = {
4849 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x4d, 0x5a,
4850 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4851 : };
4852 34 : return expand_rtx (expand_encoding, operands);
4853 : }
4854 :
4855 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29851 */
4856 : rtx
4857 25 : gen_avx_vec_concatv64qi (const rtx operand0, const rtx operand1, const rtx operand2)
4858 : {
4859 25 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4860 25 : static const uint8_t expand_encoding[] = {
4861 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x59, 0x01, 0x01,
4862 : 0x01, 0x02
4863 : };
4864 25 : return expand_rtx (expand_encoding, operands);
4865 : }
4866 :
4867 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30004 */
4868 : rtx
4869 12 : gen_vcvtph2ps256 (const rtx operand0, const rtx operand1)
4870 : {
4871 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4872 12 : static const uint8_t expand_encoding[] = {
4873 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x01, 0x01, 0x01,
4874 : 0x81, 0x16
4875 : };
4876 12 : return expand_rtx (expand_encoding, operands);
4877 : }
4878 :
4879 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30558 */
4880 : rtx
4881 24 : gen_avx512f_compressv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4882 : {
4883 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4884 24 : static const uint8_t expand_encoding[] = {
4885 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
4886 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4887 : };
4888 24 : return expand_rtx (expand_encoding, operands);
4889 : }
4890 :
4891 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30558 */
4892 : rtx
4893 24 : gen_avx512vl_compressv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4894 : {
4895 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4896 24 : static const uint8_t expand_encoding[] = {
4897 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
4898 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4899 : };
4900 24 : return expand_rtx (expand_encoding, operands);
4901 : }
4902 :
4903 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30586 */
4904 : rtx
4905 12 : gen_avx512f_compressstorev16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4906 : {
4907 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4908 12 : static const uint8_t expand_encoding[] = {
4909 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
4910 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4911 : };
4912 12 : return expand_rtx (expand_encoding, operands);
4913 : }
4914 :
4915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30586 */
4916 : rtx
4917 12 : gen_avx512vl_compressstorev2df_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4918 : {
4919 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4920 12 : static const uint8_t expand_encoding[] = {
4921 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
4922 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4923 : };
4924 12 : return expand_rtx (expand_encoding, operands);
4925 : }
4926 :
4927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30626 */
4928 : rtx
4929 44 : gen_expandv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4930 : {
4931 44 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4932 44 : static const uint8_t expand_encoding[] = {
4933 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
4934 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4935 : };
4936 44 : return expand_rtx (expand_encoding, operands);
4937 : }
4938 :
4939 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30641 */
4940 : rtx
4941 44 : gen_expandv32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4942 : {
4943 44 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4944 44 : static const uint8_t expand_encoding[] = {
4945 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01, 0x01,
4946 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4947 : };
4948 44 : return expand_rtx (expand_encoding, operands);
4949 : }
4950 :
4951 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30722 */
4952 : rtx
4953 0 : gen_avx512dq_rangepv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4954 : {
4955 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4956 0 : static const uint8_t expand_encoding[] = {
4957 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
4958 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x43
4959 : };
4960 0 : return expand_rtx (expand_encoding, operands);
4961 : }
4962 :
4963 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30722 */
4964 : rtx
4965 0 : gen_avx512dq_rangepv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4966 : {
4967 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4968 0 : static const uint8_t expand_encoding[] = {
4969 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
4970 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x43
4971 : };
4972 0 : return expand_rtx (expand_encoding, operands);
4973 : }
4974 :
4975 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30742 */
4976 : rtx
4977 0 : gen_avx512dq_rangesv2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4978 : {
4979 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4980 0 : static const uint8_t expand_encoding[] = {
4981 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
4982 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
4983 : 0x01, 0x03, 0x81, 0x43, 0x01, 0x01, 0x27, 0x01,
4984 : 0x01, 0x04, 0x81, 0x33
4985 : };
4986 0 : return expand_rtx (expand_encoding, operands);
4987 : }
4988 :
4989 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4990 : rtx
4991 17 : gen_avx512dq_fpclassv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4992 : {
4993 17 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4994 17 : static const uint8_t expand_encoding[] = {
4995 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
4996 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x42, 0x01, 0x03
4997 : };
4998 17 : return expand_rtx (expand_encoding, operands);
4999 : }
5000 :
5001 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30778 */
5002 : rtx
5003 0 : gen_avx512dq_vmfpclassv4sf (const rtx operand0, const rtx operand1, const rtx operand2)
5004 : {
5005 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5006 0 : static const uint8_t expand_encoding[] = {
5007 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
5008 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x42, 0x27, 0x01
5009 : };
5010 0 : return expand_rtx (expand_encoding, operands);
5011 : }
5012 :
5013 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5014 : rtx
5015 0 : gen_avx512vl_getmantv16hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5016 : {
5017 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5018 0 : static const uint8_t expand_encoding[] = {
5019 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x1a, 0x6e,
5020 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5021 : 0x03, 0x81, 0x33
5022 : };
5023 0 : return expand_rtx (expand_encoding, operands);
5024 : }
5025 :
5026 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5027 : rtx
5028 0 : gen_avx512f_getmantv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5029 : {
5030 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5031 0 : static const uint8_t expand_encoding[] = {
5032 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
5033 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5034 : 0x03, 0x01, 0x04
5035 : };
5036 0 : return expand_rtx (expand_encoding, operands);
5037 : }
5038 :
5039 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5040 : rtx
5041 0 : gen_avx512f_getmantv8df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5042 : {
5043 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5044 0 : static const uint8_t expand_encoding[] = {
5045 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x1a, 0x75,
5046 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5047 : 0x03, 0x81, 0x33
5048 : };
5049 0 : return expand_rtx (expand_encoding, operands);
5050 : }
5051 :
5052 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5053 : rtx
5054 0 : gen_avx512vl_getmantv2df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5055 : {
5056 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5057 0 : static const uint8_t expand_encoding[] = {
5058 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
5059 : 0x6c, 0x1a, 0x6c, 0x02, 0x01, 0x01, 0x01, 0x02,
5060 : 0x81, 0x27, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
5061 : 0x81, 0x33
5062 : };
5063 0 : return expand_rtx (expand_encoding, operands);
5064 : }
5065 :
5066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30810 */
5067 : rtx
5068 149 : gen_avx512f_vgetmantv2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5069 : {
5070 149 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5071 149 : static const uint8_t expand_encoding[] = {
5072 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
5073 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
5074 : 0x01, 0x03, 0x81, 0x27, 0x01, 0x01, 0x27, 0x01,
5075 : 0x01, 0x04, 0x81, 0x33
5076 : };
5077 149 : return expand_rtx (expand_encoding, operands);
5078 : }
5079 :
5080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30849 */
5081 : rtx
5082 33 : gen_clzv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5083 : {
5084 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5085 33 : static const uint8_t expand_encoding[] = {
5086 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x81, 0x00,
5087 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5088 : };
5089 33 : return expand_rtx (expand_encoding, operands);
5090 : }
5091 :
5092 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30860 */
5093 : rtx
5094 33 : gen_conflictv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5095 : {
5096 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5097 33 : static const uint8_t expand_encoding[] = {
5098 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5099 : 0x01, 0x01, 0x01, 0x81, 0x29, 0x01, 0x02, 0x01,
5100 : 0x03
5101 : };
5102 33 : return expand_rtx (expand_encoding, operands);
5103 : }
5104 :
5105 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30965 */
5106 : rtx
5107 12 : gen_vsm3msg2 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5108 : {
5109 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5110 12 : static const uint8_t expand_encoding[] = {
5111 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5112 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x62
5113 : };
5114 12 : return expand_rtx (expand_encoding, operands);
5115 : }
5116 :
5117 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31051 */
5118 : rtx
5119 11 : gen_avx512f_ps512_ps (const rtx operand0, const rtx operand1)
5120 : {
5121 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5122 11 : static const uint8_t expand_encoding[] = {
5123 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x74, 0x81, 0x0b,
5124 : 0x6f, 0x01, 0x01, 0x1a, 0x6b, 0x01, 0x27, 0x00,
5125 : 0x81, 0x14, 0x1a, 0x6f, 0x01, 0x27, 0x00, 0x81,
5126 : 0x14
5127 : };
5128 11 : return expand_rtx (expand_encoding, operands);
5129 : }
5130 :
5131 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31136 */
5132 : rtx
5133 18 : gen_vpmadd52huqv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5134 : {
5135 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5136 18 : static const uint8_t expand_encoding[] = {
5137 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
5138 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x45
5139 : };
5140 18 : return expand_rtx (expand_encoding, operands);
5141 : }
5142 :
5143 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31171 */
5144 : rtx
5145 13 : gen_vpmadd52huqv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5146 : {
5147 13 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5148 13 : static const uint8_t expand_encoding[] = {
5149 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5150 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5151 : 0x45, 0x01, 0x01, 0x01, 0x04
5152 : };
5153 13 : return expand_rtx (expand_encoding, operands);
5154 : }
5155 :
5156 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31206 */
5157 : rtx
5158 26 : gen_vpopcountv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5159 : {
5160 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5161 26 : static const uint8_t expand_encoding[] = {
5162 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x02,
5163 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5164 : };
5165 26 : return expand_rtx (expand_encoding, operands);
5166 : }
5167 :
5168 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31256 */
5169 : rtx
5170 12 : gen_vpopcountv64qi (const rtx operand0, const rtx operand1)
5171 : {
5172 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5173 12 : static const uint8_t expand_encoding[] = {
5174 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x59, 0x01, 0x01
5175 : };
5176 12 : return expand_rtx (expand_encoding, operands);
5177 : }
5178 :
5179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31256 */
5180 : rtx
5181 12 : gen_vpopcountv16hi (const rtx operand0, const rtx operand1)
5182 : {
5183 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5184 12 : static const uint8_t expand_encoding[] = {
5185 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x55, 0x01, 0x01
5186 : };
5187 12 : return expand_rtx (expand_encoding, operands);
5188 : }
5189 :
5190 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31263 */
5191 : rtx
5192 16 : gen_vgf2p8affineinvqb_v16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5193 : {
5194 16 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5195 16 : static const uint8_t expand_encoding[] = {
5196 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5197 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5198 : 0x47, 0x01, 0x04, 0x01, 0x05
5199 : };
5200 16 : return expand_rtx (expand_encoding, operands);
5201 : }
5202 :
5203 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31297 */
5204 : rtx
5205 14 : gen_vgf2p8mulb_v16qi (const rtx operand0, const rtx operand1, const rtx operand2)
5206 : {
5207 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5208 14 : static const uint8_t expand_encoding[] = {
5209 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5210 : 0x01, 0x02, 0x81, 0x49
5211 : };
5212 14 : return expand_rtx (expand_encoding, operands);
5213 : }
5214 :
5215 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31313 */
5216 : rtx
5217 22 : gen_vpshrd_v16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5218 : {
5219 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5220 22 : static const uint8_t expand_encoding[] = {
5221 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5222 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5223 : 0x4b, 0x01, 0x04, 0x01, 0x05
5224 : };
5225 22 : return expand_rtx (expand_encoding, operands);
5226 : }
5227 :
5228 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5229 : rtx
5230 11 : gen_vpshld_v32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5231 : {
5232 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5233 11 : static const uint8_t expand_encoding[] = {
5234 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x03, 0x01, 0x01,
5235 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4a
5236 : };
5237 11 : return expand_rtx (expand_encoding, operands);
5238 : }
5239 :
5240 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5241 : rtx
5242 22 : gen_vpshld_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5243 : {
5244 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5245 22 : static const uint8_t expand_encoding[] = {
5246 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5247 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5248 : 0x4a, 0x01, 0x04, 0x01, 0x05
5249 : };
5250 22 : return expand_rtx (expand_encoding, operands);
5251 : }
5252 :
5253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31335 */
5254 : rtx
5255 12 : gen_vpshrdv_v8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5256 : {
5257 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5258 12 : static const uint8_t expand_encoding[] = {
5259 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
5260 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4c
5261 : };
5262 12 : return expand_rtx (expand_encoding, operands);
5263 : }
5264 :
5265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31347 */
5266 : rtx
5267 12 : gen_vpshrdv_v16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5268 : {
5269 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5270 12 : static const uint8_t expand_encoding[] = {
5271 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5272 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5273 : 0x4c, 0x01, 0x01, 0x01, 0x04
5274 : };
5275 12 : return expand_rtx (expand_encoding, operands);
5276 : }
5277 :
5278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31377 */
5279 : rtx
5280 12 : gen_vpshrdv_v8si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5281 : {
5282 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5283 12 : static const uint8_t expand_encoding[] = {
5284 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5285 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5286 : 0x4c, 0x01, 0x04, 0x01, 0x05
5287 : };
5288 12 : return expand_rtx (expand_encoding, operands);
5289 : }
5290 :
5291 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31392 */
5292 : rtx
5293 12 : gen_vpshldv_v4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5294 : {
5295 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5296 12 : static const uint8_t expand_encoding[] = {
5297 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
5298 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4d
5299 : };
5300 12 : return expand_rtx (expand_encoding, operands);
5301 : }
5302 :
5303 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31404 */
5304 : rtx
5305 12 : gen_vpshldv_v8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5306 : {
5307 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5308 12 : static const uint8_t expand_encoding[] = {
5309 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5310 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5311 : 0x4d, 0x01, 0x01, 0x01, 0x04
5312 : };
5313 12 : return expand_rtx (expand_encoding, operands);
5314 : }
5315 :
5316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31434 */
5317 : rtx
5318 12 : gen_vpshldv_v4si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5319 : {
5320 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5321 12 : static const uint8_t expand_encoding[] = {
5322 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5323 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5324 : 0x4d, 0x01, 0x04, 0x01, 0x05
5325 : };
5326 12 : return expand_rtx (expand_encoding, operands);
5327 : }
5328 :
5329 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31552 */
5330 : rtx
5331 13 : gen_vpdpbusd_v4si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5332 : {
5333 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5334 13 : static const uint8_t expand_encoding[] = {
5335 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5336 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5337 : 0x4e, 0x01, 0x04, 0x01, 0x05
5338 : };
5339 13 : return expand_rtx (expand_encoding, operands);
5340 : }
5341 :
5342 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31661 */
5343 : rtx
5344 12 : gen_vpdpwssd_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5345 : {
5346 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5347 12 : static const uint8_t expand_encoding[] = {
5348 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5349 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5350 : 0x50, 0x01, 0x01, 0x01, 0x04
5351 : };
5352 12 : return expand_rtx (expand_encoding, operands);
5353 : }
5354 :
5355 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31730 */
5356 : rtx
5357 13 : gen_vpdpwssds_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5358 : {
5359 13 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5360 13 : static const uint8_t expand_encoding[] = {
5361 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5362 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5363 : 0x51, 0x01, 0x01, 0x01, 0x04
5364 : };
5365 13 : return expand_rtx (expand_encoding, operands);
5366 : }
5367 :
5368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31792 */
5369 : rtx
5370 11 : gen_vaesdeclast_v64qi (const rtx operand0, const rtx operand1, const rtx operand2)
5371 : {
5372 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5373 11 : static const uint8_t expand_encoding[] = {
5374 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x02, 0x01, 0x01,
5375 : 0x01, 0x02, 0x81, 0x53
5376 : };
5377 11 : return expand_rtx (expand_encoding, operands);
5378 : }
5379 :
5380 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31849 */
5381 : rtx
5382 0 : gen_vpclmulqdq_v2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5383 : {
5384 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5385 0 : static const uint8_t expand_encoding[] = {
5386 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
5387 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x56
5388 : };
5389 0 : return expand_rtx (expand_encoding, operands);
5390 : }
5391 :
5392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31898 */
5393 : rtx
5394 12 : gen_avx512vp2intersect_2intersectv4si (const rtx operand0, const rtx operand1, const rtx operand2)
5395 : {
5396 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5397 12 : static const uint8_t expand_encoding[] = {
5398 : 0x1f, 0x01, 0x00, 0x1a, 0x16, 0x02, 0x01, 0x01,
5399 : 0x01, 0x02, 0x81, 0x58
5400 : };
5401 12 : return expand_rtx (expand_encoding, operands);
5402 : }
5403 :
5404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32106 */
5405 : rtx
5406 11 : gen_avx512f_cvtneps2bf16_v16sf (const rtx operand0, const rtx operand1)
5407 : {
5408 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5409 11 : static const uint8_t expand_encoding[] = {
5410 : 0x1f, 0x01, 0x00, 0x72, 0x6d, 0x01, 0x01
5411 : };
5412 11 : return expand_rtx (expand_encoding, operands);
5413 : }
5414 :
5415 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32126 */
5416 : rtx
5417 11 : gen_avx512f_dpbf16ps_v8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5418 : {
5419 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5420 11 : static const uint8_t expand_encoding[] = {
5421 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
5422 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x59
5423 : };
5424 11 : return expand_rtx (expand_encoding, operands);
5425 : }
5426 :
5427 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32284 */
5428 : rtx
5429 12 : gen_aesdec256klu8 (const rtx operand0, const rtx operand1, const rtx operand2)
5430 : {
5431 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5432 12 : static const uint8_t expand_encoding[] = {
5433 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x52,
5434 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x65, 0x1f, 0x30,
5435 : 0x0c, 0x11, 0x1b, 0x0c, 0x02, 0x01, 0x01, 0x01,
5436 : 0x02, 0x65
5437 : };
5438 12 : return expand_rtx (expand_encoding, operands);
5439 : }
5440 :
5441 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32499 */
5442 : rtx
5443 14 : gen_vpdpbssds_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5444 : {
5445 14 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5446 14 : static const uint8_t expand_encoding[] = {
5447 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5448 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x65
5449 : };
5450 14 : return expand_rtx (expand_encoding, operands);
5451 : }
5452 :
5453 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32510 */
5454 : rtx
5455 12 : gen_vpdpbuuds_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5456 : {
5457 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5458 12 : static const uint8_t expand_encoding[] = {
5459 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5460 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x69
5461 : };
5462 12 : return expand_rtx (expand_encoding, operands);
5463 : }
5464 :
5465 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5466 : rtx
5467 12 : gen_vpdpbsuds_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5468 : {
5469 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5470 12 : static const uint8_t expand_encoding[] = {
5471 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5472 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5473 : 0x67, 0x01, 0x01, 0x01, 0x04
5474 : };
5475 12 : return expand_rtx (expand_encoding, operands);
5476 : }
5477 :
5478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32562 */
5479 : rtx
5480 14 : gen_vbcstnebf162ps_v4sf (const rtx operand0, const rtx operand1)
5481 : {
5482 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5483 14 : static const uint8_t expand_encoding[] = {
5484 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6b, 0x71, 0x2d,
5485 : 0x01, 0x01
5486 : };
5487 14 : return expand_rtx (expand_encoding, operands);
5488 : }
5489 :
5490 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32616 */
5491 : rtx
5492 12 : gen_vcvtneobf162ps_v8bf (const rtx operand0, const rtx operand1)
5493 : {
5494 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5495 12 : static const uint8_t expand_encoding[] = {
5496 : 0x1f, 0x01, 0x00, 0x71, 0x6b, 0x81, 0x0a, 0x65,
5497 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x01, 0x27,
5498 : 0x03, 0x27, 0x05, 0x27, 0x07
5499 : };
5500 12 : return expand_rtx (expand_encoding, operands);
5501 : }
5502 :
5503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32644 */
5504 : rtx
5505 36 : gen_avx10_2_cvt2ps2phx_v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5506 : {
5507 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5508 36 : static const uint8_t expand_encoding[] = {
5509 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x0b,
5510 : 0x6e, 0x72, 0x6a, 0x01, 0x02, 0x72, 0x6a, 0x01,
5511 : 0x01, 0x01, 0x03, 0x01, 0x04
5512 : };
5513 36 : return expand_rtx (expand_encoding, operands);
5514 : }
5515 :
5516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5517 : rtx
5518 37 : gen_vcvt2ph2bf8v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5519 : {
5520 37 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5521 37 : static const uint8_t expand_encoding[] = {
5522 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
5523 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x7a, 0x01,
5524 : 0x03, 0x01, 0x04
5525 : };
5526 37 : return expand_rtx (expand_encoding, operands);
5527 : }
5528 :
5529 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5530 : rtx
5531 0 : gen_vcvt2ph2hf8v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
5532 : {
5533 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5534 0 : static const uint8_t expand_encoding[] = {
5535 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5536 : 0x01, 0x02, 0x81, 0x7c
5537 : };
5538 0 : return expand_rtx (expand_encoding, operands);
5539 : }
5540 :
5541 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32759 */
5542 : rtx
5543 36 : gen_vcvtbiasph2hf8v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5544 : {
5545 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5546 36 : static const uint8_t expand_encoding[] = {
5547 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
5548 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x78, 0x01,
5549 : 0x03, 0x01, 0x04
5550 : };
5551 36 : return expand_rtx (expand_encoding, operands);
5552 : }
5553 :
5554 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32844 */
5555 : rtx
5556 0 : gen_vcvtph2bf8v16hf (const rtx operand0, const rtx operand1)
5557 : {
5558 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5559 0 : static const uint8_t expand_encoding[] = {
5560 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x01, 0x01, 0x01,
5561 : 0x81, 0x7e
5562 : };
5563 0 : return expand_rtx (expand_encoding, operands);
5564 : }
5565 :
5566 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32844 */
5567 : rtx
5568 0 : gen_vcvtph2bf8v32hf (const rtx operand0, const rtx operand1)
5569 : {
5570 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5571 0 : static const uint8_t expand_encoding[] = {
5572 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x01, 0x01, 0x01,
5573 : 0x81, 0x7e
5574 : };
5575 0 : return expand_rtx (expand_encoding, operands);
5576 : }
5577 :
5578 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32853 */
5579 : rtx
5580 0 : gen_vcvthf82phv32hf (const rtx operand0, const rtx operand1)
5581 : {
5582 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5583 0 : static const uint8_t expand_encoding[] = {
5584 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x01, 0x01, 0x01,
5585 : 0x82, 0x02
5586 : };
5587 0 : return expand_rtx (expand_encoding, operands);
5588 : }
5589 :
5590 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32911 */
5591 : rtx
5592 15 : gen_vpdpwsuds_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5593 : {
5594 15 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5595 15 : static const uint8_t expand_encoding[] = {
5596 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5597 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6d
5598 : };
5599 15 : return expand_rtx (expand_encoding, operands);
5600 : }
5601 :
5602 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32922 */
5603 : rtx
5604 12 : gen_vpdpwusds_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5605 : {
5606 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5607 12 : static const uint8_t expand_encoding[] = {
5608 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5609 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6b
5610 : };
5611 12 : return expand_rtx (expand_encoding, operands);
5612 : }
5613 :
5614 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32933 */
5615 : rtx
5616 12 : gen_vpdpwuuds_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5617 : {
5618 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5619 12 : static const uint8_t expand_encoding[] = {
5620 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5621 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5622 : 0x6f, 0x01, 0x01, 0x01, 0x04
5623 : };
5624 12 : return expand_rtx (expand_encoding, operands);
5625 : }
5626 :
5627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32933 */
5628 : rtx
5629 12 : gen_vpdpwsuds_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5630 : {
5631 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5632 12 : static const uint8_t expand_encoding[] = {
5633 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5634 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5635 : 0x6d, 0x01, 0x01, 0x01, 0x04
5636 : };
5637 12 : return expand_rtx (expand_encoding, operands);
5638 : }
5639 :
5640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33012 */
5641 : rtx
5642 12 : gen_vdpphps_v8sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5643 : {
5644 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5645 12 : static const uint8_t expand_encoding[] = {
5646 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
5647 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5648 : 0x75, 0x01, 0x04, 0x01, 0x05
5649 : };
5650 12 : return expand_rtx (expand_encoding, operands);
5651 : }
5652 :
5653 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33043 */
5654 : rtx
5655 12 : gen_avx10_2_smaxbf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
5656 : {
5657 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5658 12 : static const uint8_t expand_encoding[] = {
5659 : 0x1f, 0x01, 0x00, 0x53, 0x6d, 0x01, 0x01, 0x01,
5660 : 0x02
5661 : };
5662 12 : return expand_rtx (expand_encoding, operands);
5663 : }
5664 :
5665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5666 : rtx
5667 12 : gen_avx10_2_addbf16_v32bf (const rtx operand0, const rtx operand1, const rtx operand2)
5668 : {
5669 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5670 12 : static const uint8_t expand_encoding[] = {
5671 : 0x1f, 0x01, 0x00, 0x3b, 0x72, 0x01, 0x01, 0x01,
5672 : 0x02
5673 : };
5674 12 : return expand_rtx (expand_encoding, operands);
5675 : }
5676 :
5677 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5678 : rtx
5679 24 : gen_avx10_2_addbf16_v16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5680 : {
5681 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5682 24 : static const uint8_t expand_encoding[] = {
5683 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x3b, 0x6d,
5684 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5685 : };
5686 24 : return expand_rtx (expand_encoding, operands);
5687 : }
5688 :
5689 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5690 : rtx
5691 15 : gen_avx10_2_mulbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
5692 : {
5693 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5694 15 : static const uint8_t expand_encoding[] = {
5695 : 0x1f, 0x01, 0x00, 0x3e, 0x69, 0x01, 0x01, 0x01,
5696 : 0x02
5697 : };
5698 15 : return expand_rtx (expand_encoding, operands);
5699 : }
5700 :
5701 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33077 */
5702 : rtx
5703 11 : gen_avx10_2_fmaddbf16_v8bf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5704 : {
5705 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5706 11 : static const uint8_t expand_encoding[] = {
5707 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5708 : 0x69, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
5709 : 0x04, 0x01, 0x05
5710 : };
5711 11 : return expand_rtx (expand_encoding, operands);
5712 : }
5713 :
5714 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33139 */
5715 : rtx
5716 11 : gen_avx10_2_fnmaddbf16_v8bf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5717 : {
5718 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5719 11 : static const uint8_t expand_encoding[] = {
5720 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5721 : 0x69, 0x3d, 0x69, 0x01, 0x01, 0x01, 0x02, 0x01,
5722 : 0x03, 0x01, 0x04, 0x01, 0x05
5723 : };
5724 11 : return expand_rtx (expand_encoding, operands);
5725 : }
5726 :
5727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33204 */
5728 : rtx
5729 11 : gen_avx10_2_fmsubbf16_v16bf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5730 : {
5731 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5732 11 : static const uint8_t expand_encoding[] = {
5733 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x19,
5734 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6d, 0x01,
5735 : 0x03, 0x01, 0x04, 0x01, 0x05
5736 : };
5737 11 : return expand_rtx (expand_encoding, operands);
5738 : }
5739 :
5740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33269 */
5741 : rtx
5742 0 : gen_avx10_2_fnmsubbf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5743 : {
5744 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5745 0 : static const uint8_t expand_encoding[] = {
5746 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6d, 0x3d, 0x6d,
5747 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6d, 0x01, 0x03
5748 : };
5749 0 : return expand_rtx (expand_encoding, operands);
5750 : }
5751 :
5752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33305 */
5753 : rtx
5754 12 : gen_avx10_2_fnmsubbf16_v8bf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5755 : {
5756 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5757 12 : static const uint8_t expand_encoding[] = {
5758 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5759 : 0x69, 0x3d, 0x69, 0x01, 0x01, 0x01, 0x02, 0x3d,
5760 : 0x69, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04
5761 : };
5762 12 : return expand_rtx (expand_encoding, operands);
5763 : }
5764 :
5765 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33331 */
5766 : rtx
5767 0 : gen_avx10_2_sqrtbf16_v8bf (const rtx operand0, const rtx operand1)
5768 : {
5769 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5770 0 : static const uint8_t expand_encoding[] = {
5771 : 0x1f, 0x01, 0x00, 0x7c, 0x69, 0x01, 0x01
5772 : };
5773 0 : return expand_rtx (expand_encoding, operands);
5774 : }
5775 :
5776 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33348 */
5777 : rtx
5778 36 : gen_avx10_2_getexpbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5779 : {
5780 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5781 36 : static const uint8_t expand_encoding[] = {
5782 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x1a, 0x72,
5783 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
5784 : 0x03
5785 : };
5786 36 : return expand_rtx (expand_encoding, operands);
5787 : }
5788 :
5789 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5790 : rtx
5791 0 : gen_avx10_2_rndscalebf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
5792 : {
5793 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5794 0 : static const uint8_t expand_encoding[] = {
5795 : 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x02, 0x01, 0x01,
5796 : 0x01, 0x02, 0x82, 0x04
5797 : };
5798 0 : return expand_rtx (expand_encoding, operands);
5799 : }
5800 :
5801 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5802 : rtx
5803 33 : gen_avx10_2_reducebf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5804 : {
5805 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5806 33 : static const uint8_t expand_encoding[] = {
5807 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x1a, 0x69,
5808 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x82, 0x05, 0x01,
5809 : 0x03, 0x01, 0x04
5810 : };
5811 33 : return expand_rtx (expand_encoding, operands);
5812 : }
5813 :
5814 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33387 */
5815 : rtx
5816 0 : gen_avx10_2_cmpbf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5817 : {
5818 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5819 0 : static const uint8_t expand_encoding[] = {
5820 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01, 0x01,
5821 : 0x01, 0x02, 0x01, 0x03, 0x3c
5822 : };
5823 0 : return expand_rtx (expand_encoding, operands);
5824 : }
5825 :
5826 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5827 : rtx
5828 36 : gen_avx10_2_cvttbf162ibsv32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5829 : {
5830 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5831 36 : static const uint8_t expand_encoding[] = {
5832 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5833 : 0x01, 0x01, 0x01, 0x82, 0x0e, 0x01, 0x02, 0x01,
5834 : 0x03
5835 : };
5836 36 : return expand_rtx (expand_encoding, operands);
5837 : }
5838 :
5839 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5840 : rtx
5841 36 : gen_avx10_2_cvtbf162ibsv8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5842 : {
5843 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5844 36 : static const uint8_t expand_encoding[] = {
5845 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5846 : 0x01, 0x01, 0x01, 0x82, 0x08, 0x01, 0x02, 0x01,
5847 : 0x03
5848 : };
5849 36 : return expand_rtx (expand_encoding, operands);
5850 : }
5851 :
5852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33441 */
5853 : rtx
5854 0 : gen_avx10_2_cvtph2iubsv32hf_round (const rtx operand0, const rtx operand1, const rtx operand2)
5855 : {
5856 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5857 0 : static const uint8_t expand_encoding[] = {
5858 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x1a, 0x5a,
5859 : 0x01, 0x01, 0x01, 0x82, 0x0b, 0x01, 0x02, 0x81,
5860 : 0x33
5861 : };
5862 0 : return expand_rtx (expand_encoding, operands);
5863 : }
5864 :
5865 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33441 */
5866 : rtx
5867 0 : gen_avx10_2_cvtph2iubsv8hf (const rtx operand0, const rtx operand1)
5868 : {
5869 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5870 0 : static const uint8_t expand_encoding[] = {
5871 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
5872 : 0x82, 0x0b
5873 : };
5874 0 : return expand_rtx (expand_encoding, operands);
5875 : }
5876 :
5877 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33456 */
5878 : rtx
5879 33 : gen_avx10_2_cvttph2iubsv32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5880 : {
5881 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5882 33 : static const uint8_t expand_encoding[] = {
5883 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x81, 0x09,
5884 : 0x5a, 0x1a, 0x5a, 0x01, 0x01, 0x01, 0x82, 0x11,
5885 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
5886 : };
5887 33 : return expand_rtx (expand_encoding, operands);
5888 : }
5889 :
5890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33471 */
5891 : rtx
5892 33 : gen_avx10_2_cvtps2ibsv16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5893 : {
5894 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5895 33 : static const uint8_t expand_encoding[] = {
5896 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
5897 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x82, 0x0c,
5898 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
5899 : };
5900 33 : return expand_rtx (expand_encoding, operands);
5901 : }
5902 :
5903 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33471 */
5904 : rtx
5905 36 : gen_avx10_2_cvtps2iubsv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5906 : {
5907 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5908 36 : static const uint8_t expand_encoding[] = {
5909 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5910 : 0x01, 0x01, 0x01, 0x82, 0x0d, 0x01, 0x02, 0x01,
5911 : 0x03
5912 : };
5913 36 : return expand_rtx (expand_encoding, operands);
5914 : }
5915 :
5916 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33486 */
5917 : rtx
5918 0 : gen_avx10_2_cvttps2iubsv8sf (const rtx operand0, const rtx operand1)
5919 : {
5920 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5921 0 : static const uint8_t expand_encoding[] = {
5922 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
5923 : 0x82, 0x13
5924 : };
5925 0 : return expand_rtx (expand_encoding, operands);
5926 : }
5927 :
5928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5929 : rtx
5930 33 : gen_avx10_2_vcvttps2dqsv16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5931 : {
5932 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5933 33 : static const uint8_t expand_encoding[] = {
5934 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
5935 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x82, 0x14,
5936 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
5937 : };
5938 33 : return expand_rtx (expand_encoding, operands);
5939 : }
5940 :
5941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5942 : rtx
5943 36 : gen_avx10_2_vcvttps2udqsv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5944 : {
5945 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5946 36 : static const uint8_t expand_encoding[] = {
5947 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5948 : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5949 : 0x03
5950 : };
5951 36 : return expand_rtx (expand_encoding, operands);
5952 : }
5953 :
5954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5955 : rtx
5956 0 : gen_avx10_2_vcvttpd2udqsv4df (const rtx operand0, const rtx operand1)
5957 : {
5958 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5959 0 : static const uint8_t expand_encoding[] = {
5960 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
5961 : 0x82, 0x15
5962 : };
5963 0 : return expand_rtx (expand_encoding, operands);
5964 : }
5965 :
5966 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33521 */
5967 : rtx
5968 36 : gen_avx10_2_vcvttpd2qqsv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5969 : {
5970 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5971 36 : static const uint8_t expand_encoding[] = {
5972 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
5973 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5974 : 0x03
5975 : };
5976 36 : return expand_rtx (expand_encoding, operands);
5977 : }
5978 :
5979 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33521 */
5980 : rtx
5981 36 : gen_avx10_2_vcvttpd2qqsv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5982 : {
5983 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5984 36 : static const uint8_t expand_encoding[] = {
5985 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5986 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5987 : 0x03
5988 : };
5989 36 : return expand_rtx (expand_encoding, operands);
5990 : }
5991 :
5992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33532 */
5993 : rtx
5994 0 : gen_avx10_2_vcvttps2qqsv4di (const rtx operand0, const rtx operand1)
5995 : {
5996 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5997 0 : static const uint8_t expand_encoding[] = {
5998 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
5999 : 0x82, 0x14
6000 : };
6001 0 : return expand_rtx (expand_encoding, operands);
6002 : }
6003 :
6004 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33543 */
6005 : rtx
6006 0 : gen_avx10_2_vcvttsd2sissi (const rtx operand0, const rtx operand1)
6007 : {
6008 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6009 0 : static const uint8_t expand_encoding[] = {
6010 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x81, 0x0a,
6011 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
6012 : 0x82, 0x14
6013 : };
6014 0 : return expand_rtx (expand_encoding, operands);
6015 : }
6016 :
6017 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33556 */
6018 : rtx
6019 24 : gen_avx10_2_vcvttss2sissi_round (const rtx operand0, const rtx operand1, const rtx operand2)
6020 : {
6021 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6022 24 : static const uint8_t expand_encoding[] = {
6023 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
6024 : 0x01, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
6025 : 0x01, 0x27, 0x00, 0x82, 0x14, 0x01, 0x02, 0x81,
6026 : 0x33
6027 : };
6028 24 : return expand_rtx (expand_encoding, operands);
6029 : }
6030 :
6031 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33569 */
6032 : rtx
6033 0 : gen_avx10_2_minmaxbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6034 : {
6035 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6036 0 : static const uint8_t expand_encoding[] = {
6037 : 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x03, 0x01, 0x01,
6038 : 0x01, 0x02, 0x01, 0x03, 0x82, 0x16
6039 : };
6040 0 : return expand_rtx (expand_encoding, operands);
6041 : }
6042 :
6043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6044 : rtx
6045 0 : gen_avx10_2_minmaxpv16hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
6046 : {
6047 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
6048 0 : static const uint8_t expand_encoding[] = {
6049 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
6050 : 0x6e, 0x1a, 0x6e, 0x03, 0x01, 0x01, 0x01, 0x02,
6051 : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6052 : 0x01, 0x06, 0x81, 0x33
6053 : };
6054 0 : return expand_rtx (expand_encoding, operands);
6055 : }
6056 :
6057 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6058 : rtx
6059 0 : gen_avx10_2_minmaxpv8sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
6060 : {
6061 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
6062 0 : static const uint8_t expand_encoding[] = {
6063 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
6064 : 0x6f, 0x1a, 0x6f, 0x03, 0x01, 0x01, 0x01, 0x02,
6065 : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6066 : 0x01, 0x06, 0x81, 0x33
6067 : };
6068 0 : return expand_rtx (expand_encoding, operands);
6069 : }
6070 :
6071 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6072 : rtx
6073 0 : gen_avx10_2_minmaxpv4df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
6074 : {
6075 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
6076 0 : static const uint8_t expand_encoding[] = {
6077 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
6078 : 0x70, 0x1a, 0x70, 0x03, 0x01, 0x01, 0x01, 0x02,
6079 : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6080 : 0x01, 0x06, 0x81, 0x33
6081 : };
6082 0 : return expand_rtx (expand_encoding, operands);
6083 : }
6084 :
6085 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33593 */
6086 : rtx
6087 0 : gen_avx10_2_minmaxsv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
6088 : {
6089 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
6090 0 : static const uint8_t expand_encoding[] = {
6091 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
6092 : 0x6b, 0x1a, 0x6b, 0x03, 0x01, 0x01, 0x01, 0x02,
6093 : 0x01, 0x03, 0x82, 0x17, 0x01, 0x01, 0x27, 0x01,
6094 : 0x01, 0x04, 0x81, 0x33
6095 : };
6096 0 : return expand_rtx (expand_encoding, operands);
6097 : }
6098 :
6099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6100 : rtx
6101 0 : gen_avx10_2_vmovrsbv16qi (const rtx operand0, const rtx operand1)
6102 : {
6103 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6104 0 : static const uint8_t expand_encoding[] = {
6105 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x01, 0x01, 0x01,
6106 : 0x82, 0x1b
6107 : };
6108 0 : return expand_rtx (expand_encoding, operands);
6109 : }
6110 :
6111 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6112 : rtx
6113 0 : gen_avx10_2_vmovrsdv16si (const rtx operand0, const rtx operand1)
6114 : {
6115 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6116 0 : static const uint8_t expand_encoding[] = {
6117 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x01, 0x01, 0x01,
6118 : 0x82, 0x1b
6119 : };
6120 0 : return expand_rtx (expand_encoding, operands);
6121 : }
6122 :
6123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6124 : rtx
6125 0 : gen_avx10_2_vmovrsqv2di (const rtx operand0, const rtx operand1)
6126 : {
6127 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6128 0 : static const uint8_t expand_encoding[] = {
6129 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
6130 : 0x82, 0x1b
6131 : };
6132 0 : return expand_rtx (expand_encoding, operands);
6133 : }
6134 :
6135 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33661 */
6136 : rtx
6137 0 : gen_avx512bmm_vbitrevb_v64qi (const rtx operand0, const rtx operand1)
6138 : {
6139 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6140 0 : static const uint8_t expand_encoding[] = {
6141 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x01, 0x01, 0x01,
6142 : 0x82, 0x1a
6143 : };
6144 0 : return expand_rtx (expand_encoding, operands);
6145 : }
6146 :
6147 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:281 */
6148 : rtx
6149 125 : gen_atomic_storehi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6150 : {
6151 125 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6152 125 : static const uint8_t expand_encoding[] = {
6153 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x01, 0x01,
6154 : 0x01, 0x02, 0x82, 0x24
6155 : };
6156 125 : return expand_rtx (expand_encoding, operands);
6157 : }
6158 :
6159 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:473 */
6160 : rtx
6161 63 : gen_atomic_compare_and_swapti_doubleword (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
6162 : {
6163 63 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
6164 63 : static const uint8_t expand_encoding[] = {
6165 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x13,
6166 : 0x05, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
6167 : 0x04, 0x01, 0x05, 0x6d, 0x1f, 0x01, 0x01, 0x1b,
6168 : 0x13, 0x01, 0x27, 0x00, 0x6d, 0x1f, 0x30, 0x0c,
6169 : 0x11, 0x1b, 0x0c, 0x01, 0x27, 0x00, 0x6d
6170 : };
6171 63 : return expand_rtx (expand_encoding, operands);
6172 : }
6173 :
6174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:814 */
6175 : rtx
6176 18 : gen_rao_aorsi (const rtx operand0, const rtx operand1)
6177 : {
6178 18 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6179 18 : static const uint8_t expand_encoding[] = {
6180 : 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x02, 0x4a, 0x11,
6181 : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00, 0x71
6182 : };
6183 18 : return expand_rtx (expand_encoding, operands);
6184 : }
6185 :
6186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:814 */
6187 : rtx
6188 19 : gen_rao_aadddi (const rtx operand0, const rtx operand1)
6189 : {
6190 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6191 19 : static const uint8_t expand_encoding[] = {
6192 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x02, 0x3b, 0x12,
6193 : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00, 0x71
6194 : };
6195 19 : return expand_rtx (expand_encoding, operands);
6196 : }
6197 :
6198 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:878 */
6199 : rtx
6200 189 : gen_atomic_orqi (const rtx operand0, const rtx operand1, const rtx operand2)
6201 : {
6202 189 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6203 189 : static const uint8_t expand_encoding[] = {
6204 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x0f,
6205 : 0x02, 0x4a, 0x0f, 0x01, 0x00, 0x01, 0x01, 0x01,
6206 : 0x02, 0x6f, 0x05, 0x02, 0x11
6207 : };
6208 189 : return expand_rtx (expand_encoding, operands);
6209 : }
6210 :
6211 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:878 */
6212 : rtx
6213 172 : gen_atomic_xordi (const rtx operand0, const rtx operand1, const rtx operand2)
6214 : {
6215 172 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6216 172 : static const uint8_t expand_encoding[] = {
6217 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
6218 : 0x02, 0x4b, 0x12, 0x01, 0x00, 0x01, 0x01, 0x01,
6219 : 0x02, 0x6f, 0x05, 0x02, 0x11
6220 : };
6221 172 : return expand_rtx (expand_encoding, operands);
6222 : }
6223 :
6224 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1018 */
6225 : rtx
6226 88 : gen_atomic_add_fetch_cmp_0qi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6227 : {
6228 88 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6229 88 : static const uint8_t expand_encoding[] = {
6230 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11, 0x3a,
6231 : 0x04, 0x3b, 0x0f, 0x1b, 0x0f, 0x02, 0x01, 0x00,
6232 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6233 : 0x01, 0x00, 0x3b, 0x0f, 0x01, 0x00, 0x01, 0x01
6234 : };
6235 88 : return expand_rtx (expand_encoding, operands);
6236 : }
6237 :
6238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1089 */
6239 : rtx
6240 44 : gen_atomic_xor_fetch_cmp_0qi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6241 : {
6242 44 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6243 44 : static const uint8_t expand_encoding[] = {
6244 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x05, 0x11, 0x3a,
6245 : 0x05, 0x4b, 0x0f, 0x1b, 0x0f, 0x02, 0x01, 0x00,
6246 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6247 : 0x01, 0x00, 0x4b, 0x0f, 0x01, 0x00, 0x01, 0x01
6248 : };
6249 44 : return expand_rtx (expand_encoding, operands);
6250 : }
6251 :
6252 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1106 */
6253 : rtx
6254 53 : gen_cmpccxadd_si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
6255 : {
6256 53 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
6257 53 : static const uint8_t expand_encoding[] = {
6258 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x11,
6259 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
6260 : 0x04, 0x70, 0x1f, 0x01, 0x01, 0x1b, 0x11, 0x01,
6261 : 0x27, 0x00, 0x70, 0x1f, 0x30, 0x02, 0x11, 0x3a,
6262 : 0x02, 0x01, 0x01, 0x01, 0x02
6263 : };
6264 53 : return expand_rtx (expand_encoding, operands);
6265 : }
6266 :
6267 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1508 */
6268 : rtx
6269 11383 : gen_cstorehi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6270 : {
6271 11383 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6272 11383 : start_sequence ();
6273 11383 : {
6274 : #define FAIL return (end_sequence (), nullptr)
6275 : #define DONE return end_sequence ()
6276 : #line 1516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6277 : {
6278 : if (HImode == (TARGET_64BIT ? TImode : DImode))
6279 : {
6280 : if (GET_CODE (operands[1]) != EQ
6281 : && GET_CODE (operands[1]) != NE)
6282 : FAIL;
6283 : }
6284 : else if (MEM_P (operands[2]) && MEM_P (operands[3]))
6285 : operands[2] = force_reg (HImode, operands[2]);
6286 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6287 : operands[2], operands[3]);
6288 : DONE;
6289 : }
6290 : #undef DONE
6291 : #undef FAIL
6292 : }
6293 : static const uint8_t expand_encoding[] = {
6294 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6295 : 0x02, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x03, 0x00,
6296 : 0x01, 0x30, 0x02, 0x11, 0x27, 0x00
6297 : };
6298 : return complete_seq (expand_encoding, operands);
6299 : }
6300 :
6301 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1800 */
6302 : rtx
6303 : gen_cbranchdf4 (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 1811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6311 : {
6312 : ix86_expand_branch (GET_CODE (operands[0]),
6313 : operands[1], operands[2], operands[3]);
6314 : DONE;
6315 : }
6316 : #undef DONE
6317 : #undef FAIL
6318 : }
6319 : static const uint8_t expand_encoding[] = {
6320 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6321 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
6322 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
6323 : 0x00, 0x01, 0x03, 0x2f
6324 : };
6325 : return complete_seq (expand_encoding, operands);
6326 : }
6327 :
6328 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1918 */
6329 : rtx
6330 : gen_cstoreccgoc4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6331 : {
6332 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6333 : start_sequence ();
6334 : {
6335 : #define FAIL return (end_sequence (), nullptr)
6336 : #define DONE return end_sequence ()
6337 : #line 1924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6338 : {
6339 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6340 : operands[2], operands[3]);
6341 : DONE;
6342 : }
6343 : #undef DONE
6344 : #undef FAIL
6345 : }
6346 : static const uint8_t expand_encoding[] = {
6347 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x00, 0x01, 0x01,
6348 : 0x02, 0x01, 0x03
6349 : };
6350 : return complete_seq (expand_encoding, operands);
6351 : }
6352 :
6353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1918 */
6354 : rtx
6355 : gen_cstoreccz4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6356 : {
6357 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6358 : start_sequence ();
6359 : {
6360 : #define FAIL return (end_sequence (), nullptr)
6361 : #define DONE return end_sequence ()
6362 : #line 1924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6363 : {
6364 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6365 : operands[2], operands[3]);
6366 : DONE;
6367 : }
6368 : #undef DONE
6369 : #undef FAIL
6370 : }
6371 : static const uint8_t expand_encoding[] = {
6372 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x00, 0x01, 0x01,
6373 : 0x02, 0x01, 0x03
6374 : };
6375 : return complete_seq (expand_encoding, operands);
6376 : }
6377 :
6378 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2275 */
6379 : extern rtx_insn *gen_split_8 (rtx_insn *, rtx *);
6380 : rtx_insn *
6381 : gen_split_8 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6382 : {
6383 : if (dump_file)
6384 : fprintf (dump_file, "Splitting with gen_split_8 (i386.md:2275)\n");
6385 : start_sequence ();
6386 : #define FAIL return (end_sequence (), nullptr)
6387 : #define DONE return end_sequence ()
6388 : #line 2281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6389 : {
6390 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (SImode)));
6391 : /* Preserve memory attributes. */
6392 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6393 : }
6394 : #undef DONE
6395 : #undef FAIL
6396 : static const uint8_t expand_encoding[] = {
6397 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
6398 : 0x11, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6399 : 0x01
6400 : };
6401 : return complete_seq (expand_encoding, operands);
6402 : }
6403 :
6404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2395 */
6405 : rtx
6406 : gen_movti (const rtx operand0, const rtx operand1)
6407 : {
6408 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6409 : start_sequence ();
6410 : {
6411 : #define FAIL return (end_sequence (), nullptr)
6412 : #define DONE return end_sequence ()
6413 : #line 2399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6414 : {
6415 : if (TARGET_64BIT)
6416 : ix86_expand_move (TImode, operands);
6417 : else
6418 : ix86_expand_vector_move (TImode, operands);
6419 : DONE;
6420 : }
6421 : #undef DONE
6422 : #undef FAIL
6423 : }
6424 : static const uint8_t expand_encoding[] = {
6425 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6426 : };
6427 : return complete_seq (expand_encoding, operands);
6428 : }
6429 :
6430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2441 */
6431 : extern rtx_insn *gen_split_16 (rtx_insn *, rtx *);
6432 : rtx_insn *
6433 : gen_split_16 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6434 : {
6435 : if (dump_file)
6436 : fprintf (dump_file, "Splitting with gen_split_16 (i386.md:2441)\n");
6437 : start_sequence ();
6438 : #define FAIL return (end_sequence (), nullptr)
6439 : #define DONE return end_sequence ()
6440 : #line 2449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6441 :
6442 : #undef DONE
6443 : #undef FAIL
6444 : static const uint8_t expand_encoding[] = {
6445 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6446 : };
6447 : return complete_seq (expand_encoding, operands);
6448 : }
6449 :
6450 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2825 */
6451 : extern rtx_insn *gen_peephole2_4 (rtx_insn *, rtx *);
6452 : rtx_insn *
6453 : gen_peephole2_4 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6454 : {
6455 : if (dump_file)
6456 : fprintf (dump_file, "Splitting with gen_peephole2_4 (i386.md:2825)\n");
6457 : start_sequence ();
6458 : #define FAIL return (end_sequence (), nullptr)
6459 : #define DONE return end_sequence ()
6460 : #line 2839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6461 : {
6462 : int shift = ctz_hwi (UINTVAL (operands[1]));
6463 : rtx op1 = gen_int_mode (UINTVAL (operands[1]) >> shift, DImode);
6464 : if (ix86_endbr_immediate_operand (op1, VOIDmode))
6465 : FAIL;
6466 : operands[1] = op1;
6467 : operands[2] = gen_int_mode (shift, QImode);
6468 : }
6469 : #undef DONE
6470 : #undef FAIL
6471 : static const uint8_t expand_encoding[] = {
6472 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
6473 : 0x02, 0x1f, 0x01, 0x00, 0x4d, 0x12, 0x01, 0x00,
6474 : 0x01, 0x02, 0x05, 0x02, 0x11
6475 : };
6476 : return complete_seq (expand_encoding, operands);
6477 : }
6478 :
6479 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3420 */
6480 : extern rtx_insn *gen_peephole2_15 (rtx_insn *, rtx *);
6481 : rtx_insn *
6482 : gen_peephole2_15 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6483 : {
6484 : if (dump_file)
6485 : fprintf (dump_file, "Splitting with gen_peephole2_15 (i386.md:3420)\n");
6486 : start_sequence ();
6487 : static const uint8_t expand_encoding[] = {
6488 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x01,
6489 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01
6490 : };
6491 : return complete_seq (expand_encoding, operands);
6492 : }
6493 :
6494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3444 */
6495 : extern rtx_insn *gen_peephole2_25 (rtx_insn *, rtx *);
6496 : rtx_insn *
6497 : gen_peephole2_25 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6498 : {
6499 : if (dump_file)
6500 : fprintf (dump_file, "Splitting with gen_peephole2_25 (i386.md:3444)\n");
6501 : start_sequence ();
6502 : static const uint8_t expand_encoding[] = {
6503 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6504 : };
6505 : return complete_seq (expand_encoding, operands);
6506 : }
6507 :
6508 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3551 */
6509 : rtx
6510 : gen_extzvhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6511 : {
6512 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6513 : start_sequence ();
6514 : {
6515 : #define FAIL return (end_sequence (), nullptr)
6516 : #define DONE return end_sequence ()
6517 : #line 3557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6518 : {
6519 : if (ix86_expand_pextr (operands))
6520 : DONE;
6521 :
6522 : /* Handle extractions from %ah et al. */
6523 : if (INTVAL (operands[2]) != 8 || INTVAL (operands[3]) != 8)
6524 : FAIL;
6525 :
6526 : unsigned int regno = reg_or_subregno (operands[1]);
6527 :
6528 : /* Be careful to expand only with registers having upper parts. */
6529 : if (regno <= LAST_VIRTUAL_REGISTER && !QI_REGNO_P (regno))
6530 : operands[1] = copy_to_reg (operands[1]);
6531 : }
6532 : #undef DONE
6533 : #undef FAIL
6534 : }
6535 : static const uint8_t expand_encoding[] = {
6536 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x06, 0x10, 0x01,
6537 : 0x01, 0x01, 0x02, 0x01, 0x03
6538 : };
6539 : return complete_seq (expand_encoding, operands);
6540 : }
6541 :
6542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3672 */
6543 : extern rtx_insn *gen_peephole2_34 (rtx_insn *, rtx *);
6544 : rtx_insn *
6545 : gen_peephole2_34 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6546 : {
6547 : if (dump_file)
6548 : fprintf (dump_file, "Splitting with gen_peephole2_34 (i386.md:3672)\n");
6549 : start_sequence ();
6550 : static const uint8_t expand_encoding[] = {
6551 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
6552 : 0x00, 0x05, 0x02, 0x11
6553 : };
6554 : return complete_seq (expand_encoding, operands);
6555 : }
6556 :
6557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3729 */
6558 : extern rtx_insn *gen_split_29 (rtx_insn *, rtx *);
6559 : rtx_insn *
6560 : gen_split_29 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6561 : {
6562 : if (dump_file)
6563 : fprintf (dump_file, "Splitting with gen_split_29 (i386.md:3729)\n");
6564 : start_sequence ();
6565 : #define FAIL return (end_sequence (), nullptr)
6566 : #define DONE return end_sequence ()
6567 : #line 3747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6568 : {
6569 : operands[4] = gen_lowpart (DImode, operands[1]);
6570 : split_double_concat (TImode, operands[0], operands[4], operands[2]);
6571 : DONE;
6572 : }
6573 : #undef DONE
6574 : #undef FAIL
6575 : static const uint8_t expand_encoding[] = {
6576 : 0x01, 0x27, 0x00
6577 : };
6578 : return complete_seq (expand_encoding, operands);
6579 : }
6580 :
6581 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3846 */
6582 : extern rtx_insn *gen_split_39 (rtx_insn *, rtx *);
6583 : rtx_insn *
6584 : gen_split_39 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6585 : {
6586 : if (dump_file)
6587 : fprintf (dump_file, "Splitting with gen_split_39 (i386.md:3846)\n");
6588 : start_sequence ();
6589 : #define FAIL return (end_sequence (), nullptr)
6590 : #define DONE return end_sequence ()
6591 : #line 3852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6592 : {
6593 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (XFmode)));
6594 : /* Preserve memory attributes. */
6595 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6596 : }
6597 : #undef DONE
6598 : #undef FAIL
6599 : static const uint8_t expand_encoding[] = {
6600 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
6601 : 0x11, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6602 : 0x01
6603 : };
6604 : return complete_seq (expand_encoding, operands);
6605 : }
6606 :
6607 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4034 */
6608 : extern rtx_insn *gen_split_49 (rtx_insn *, rtx *);
6609 : rtx_insn *
6610 : gen_split_49 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6611 : {
6612 : if (dump_file)
6613 : fprintf (dump_file, "Splitting with gen_split_49 (i386.md:4034)\n");
6614 : start_sequence ();
6615 : #define FAIL return (end_sequence (), nullptr)
6616 : #define DONE return end_sequence ()
6617 : #line 4040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6618 : operands[2] = find_constant_src (curr_insn);
6619 : #undef DONE
6620 : #undef FAIL
6621 : static const uint8_t expand_encoding[] = {
6622 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x02
6623 : };
6624 : return complete_seq (expand_encoding, operands);
6625 : }
6626 :
6627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4060 */
6628 : rtx
6629 : gen_movbf (const rtx operand0, const rtx operand1)
6630 : {
6631 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6632 : start_sequence ();
6633 : {
6634 : #define FAIL return (end_sequence (), nullptr)
6635 : #define DONE return end_sequence ()
6636 : #line 4064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6637 : ix86_expand_move (BFmode, operands); DONE;
6638 : #undef DONE
6639 : #undef FAIL
6640 : }
6641 : static const uint8_t expand_encoding[] = {
6642 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6643 : };
6644 : return complete_seq (expand_encoding, operands);
6645 : }
6646 :
6647 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4711 */
6648 : rtx
6649 : gen_zero_extendsidi2 (const rtx operand0, const rtx operand1)
6650 : {
6651 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6652 : static const uint8_t expand_encoding[] = {
6653 : 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x01, 0x01
6654 : };
6655 : return expand_rtx (expand_encoding, operands);
6656 : }
6657 :
6658 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4869 */
6659 : rtx
6660 : gen_zero_extendhisi2 (const rtx operand0, const rtx operand1)
6661 : {
6662 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6663 : start_sequence ();
6664 : {
6665 : #define FAIL return (end_sequence (), nullptr)
6666 : #define DONE return end_sequence ()
6667 : #line 4873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6668 : {
6669 : if (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))
6670 : {
6671 : operands[1] = force_reg (HImode, operands[1]);
6672 : emit_insn (gen_zero_extendhisi2_and (operands[0], operands[1]));
6673 : DONE;
6674 : }
6675 : }
6676 : #undef DONE
6677 : #undef FAIL
6678 : }
6679 : static const uint8_t expand_encoding[] = {
6680 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x01, 0x01
6681 : };
6682 : return complete_seq (expand_encoding, operands);
6683 : }
6684 :
6685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4992 */
6686 : extern rtx_insn *gen_peephole2_46 (rtx_insn *, rtx *);
6687 : rtx_insn *
6688 : gen_peephole2_46 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6689 : {
6690 : if (dump_file)
6691 : fprintf (dump_file, "Splitting with gen_peephole2_46 (i386.md:4992)\n");
6692 : start_sequence ();
6693 : static const uint8_t expand_encoding[] = {
6694 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x01, 0x02
6695 : };
6696 : return complete_seq (expand_encoding, operands);
6697 : }
6698 :
6699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5097 */
6700 : extern rtx_insn *gen_peephole2_51 (rtx_insn *, rtx *);
6701 : rtx_insn *
6702 : gen_peephole2_51 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6703 : {
6704 : if (dump_file)
6705 : fprintf (dump_file, "Splitting with gen_peephole2_51 (i386.md:5097)\n");
6706 : start_sequence ();
6707 : static const uint8_t expand_encoding[] = {
6708 : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
6709 : 0x02, 0x1f, 0x01, 0x01, 0x4f, 0x11, 0x01, 0x01,
6710 : 0x01, 0x04, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x03,
6711 : 0x01, 0x01
6712 : };
6713 : return complete_seq (expand_encoding, operands);
6714 : }
6715 :
6716 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5312 */
6717 : extern rtx_insn *gen_split_73 (rtx_insn *, rtx *);
6718 : rtx_insn *
6719 : gen_split_73 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6720 : {
6721 : if (dump_file)
6722 : fprintf (dump_file, "Splitting with gen_split_73 (i386.md:5312)\n");
6723 : start_sequence ();
6724 : #define FAIL return (end_sequence (), nullptr)
6725 : #define DONE return end_sequence ()
6726 : #line 5318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6727 : operands[2] = GEN_INT (-GET_MODE_SIZE (XFmode));
6728 : #undef DONE
6729 : #undef FAIL
6730 : static const uint8_t expand_encoding[] = {
6731 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6732 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x36, 0x2f, 0x30,
6733 : 0x12, 0x07, 0x71, 0x2f, 0x01, 0x01
6734 : };
6735 : return complete_seq (expand_encoding, operands);
6736 : }
6737 :
6738 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5491 */
6739 : rtx
6740 : gen_extendhfdf2 (const rtx operand0, const rtx operand1)
6741 : {
6742 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6743 : static const uint8_t expand_encoding[] = {
6744 : 0x1f, 0x01, 0x00, 0x71, 0x2e, 0x01, 0x01
6745 : };
6746 : return expand_rtx (expand_encoding, operands);
6747 : }
6748 :
6749 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5664 */
6750 : extern rtx_insn *gen_peephole2_55 (rtx_insn *, rtx *);
6751 : rtx_insn *
6752 : gen_peephole2_55 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6753 : {
6754 : if (dump_file)
6755 : fprintf (dump_file, "Splitting with gen_peephole2_55 (i386.md:5664)\n");
6756 : start_sequence ();
6757 : #define FAIL return (end_sequence (), nullptr)
6758 : #define DONE return end_sequence ()
6759 : #line 5672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6760 : operands[2] = lowpart_subreg (DFmode, operands[0], SFmode);
6761 : #undef DONE
6762 : #undef FAIL
6763 : static const uint8_t expand_encoding[] = {
6764 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
6765 : 0x00, 0x72, 0x2d, 0x01, 0x02
6766 : };
6767 : return complete_seq (expand_encoding, operands);
6768 : }
6769 :
6770 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5840 */
6771 : rtx
6772 : gen_fix_truncsfsi2 (const rtx operand0, const rtx operand1)
6773 : {
6774 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6775 : start_sequence ();
6776 : {
6777 : #define FAIL return (end_sequence (), nullptr)
6778 : #define DONE return end_sequence ()
6779 : #line 5845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6780 : {
6781 : if (TARGET_FISTTP
6782 : && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
6783 : {
6784 : emit_insn (gen_fix_truncsi_i387_fisttp (operands[0], operands[1]));
6785 : DONE;
6786 : }
6787 : if (SSE_FLOAT_MODE_P (SFmode))
6788 : {
6789 : rtx out = REG_P (operands[0]) ? operands[0] : gen_reg_rtx (SImode);
6790 : emit_insn (gen_fix_truncsfsi_sse (out, operands[1]));
6791 : if (out != operands[0])
6792 : emit_move_insn (operands[0], out);
6793 : DONE;
6794 : }
6795 : }
6796 : #undef DONE
6797 : #undef FAIL
6798 : }
6799 : static const uint8_t expand_encoding[] = {
6800 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74,
6801 : 0x11, 0x01, 0x01, 0x05, 0x02, 0x11
6802 : };
6803 : return complete_seq (expand_encoding, operands);
6804 : }
6805 :
6806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5983 */
6807 : rtx
6808 : gen_fixuns_truncdfhi2 (const rtx operand0, const rtx operand1)
6809 : {
6810 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
6811 : start_sequence ();
6812 : {
6813 : #define FAIL return (end_sequence (), nullptr)
6814 : #define DONE return end_sequence ()
6815 : #line 5989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6816 : operands[2] = gen_reg_rtx (SImode);
6817 : #undef DONE
6818 : #undef FAIL
6819 : }
6820 : static const uint8_t expand_encoding[] = {
6821 : 0x02, 0x1f, 0x01, 0x02, 0x74, 0x11, 0x01, 0x01,
6822 : 0x1f, 0x01, 0x00, 0x32, 0x10, 0x01, 0x02, 0x00
6823 : };
6824 : return complete_seq (expand_encoding, operands);
6825 : }
6826 :
6827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6133 */
6828 : rtx
6829 : gen_floatdisf2 (const rtx operand0, const rtx operand1)
6830 : {
6831 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6832 : static const uint8_t expand_encoding[] = {
6833 : 0x1f, 0x01, 0x00, 0x73, 0x2d, 0x01, 0x01
6834 : };
6835 : return expand_rtx (expand_encoding, operands);
6836 : }
6837 :
6838 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6238 */
6839 : extern rtx_insn *gen_split_88 (rtx_insn *, rtx *);
6840 : rtx_insn *
6841 : gen_split_88 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6842 : {
6843 : if (dump_file)
6844 : fprintf (dump_file, "Splitting with gen_split_88 (i386.md:6238)\n");
6845 : start_sequence ();
6846 : #define FAIL return (end_sequence (), nullptr)
6847 : #define DONE return end_sequence ()
6848 : #line 6247 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6849 : {
6850 : rtx s = assign_386_stack_local (DImode, SLOT_FLOATxFDI_387);
6851 : emit_insn (gen_floatdidf2_i387_with_xmm (operands[0], operands[1], s));
6852 : DONE;
6853 : }
6854 : #undef DONE
6855 : #undef FAIL
6856 : static const uint8_t expand_encoding[] = {
6857 : 0x01, 0x27, 0x00
6858 : };
6859 : return complete_seq (expand_encoding, operands);
6860 : }
6861 :
6862 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6318 */
6863 : rtx
6864 : gen_floatunsqisf2 (const rtx operand0, const rtx operand1)
6865 : {
6866 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6867 : start_sequence ();
6868 : {
6869 : #define FAIL return (end_sequence (), nullptr)
6870 : #define DONE return end_sequence ()
6871 : #line 6324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6872 : {
6873 : operands[1] = convert_to_mode (SImode, operands[1], 1);
6874 : emit_insn (gen_floatsisf2 (operands[0], operands[1]));
6875 : DONE;
6876 : }
6877 : #undef DONE
6878 : #undef FAIL
6879 : }
6880 : static const uint8_t expand_encoding[] = {
6881 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x2d, 0x01, 0x01
6882 : };
6883 : return complete_seq (expand_encoding, operands);
6884 : }
6885 :
6886 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6364 */
6887 : rtx
6888 : gen_floatunssisf2 (const rtx operand0, const rtx operand1)
6889 : {
6890 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6891 : start_sequence ();
6892 : {
6893 : #define FAIL return (end_sequence (), nullptr)
6894 : #define DONE return end_sequence ()
6895 : #line 6373 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6896 : {
6897 : if (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
6898 : {
6899 : emit_insn (gen_floatunssisf2_i387_with_xmm
6900 : (operands[0], operands[1],
6901 : assign_stack_temp (DImode, GET_MODE_SIZE (DImode))));
6902 : DONE;
6903 : }
6904 : if (!TARGET_AVX512F)
6905 : {
6906 : ix86_expand_convert_uns_sisf_sse (operands[0], operands[1]);
6907 : DONE;
6908 : }
6909 : }
6910 : #undef DONE
6911 : #undef FAIL
6912 : }
6913 : static const uint8_t expand_encoding[] = {
6914 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x2d, 0x01, 0x01
6915 : };
6916 : return complete_seq (expand_encoding, operands);
6917 : }
6918 :
6919 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6487 */
6920 : extern rtx_insn *gen_peephole2_62 (rtx_insn *, rtx *);
6921 : rtx_insn *
6922 : gen_peephole2_62 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6923 : {
6924 : if (dump_file)
6925 : fprintf (dump_file, "Splitting with gen_peephole2_62 (i386.md:6487)\n");
6926 : start_sequence ();
6927 : static const uint8_t expand_encoding[] = {
6928 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3b, 0x11,
6929 : 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
6930 : };
6931 : return complete_seq (expand_encoding, operands);
6932 : }
6933 :
6934 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6529 */
6935 : extern rtx_insn *gen_peephole2_68 (rtx_insn *, rtx *);
6936 : rtx_insn *
6937 : gen_peephole2_68 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6938 : {
6939 : if (dump_file)
6940 : fprintf (dump_file, "Splitting with gen_peephole2_68 (i386.md:6529)\n");
6941 : start_sequence ();
6942 : static const uint8_t expand_encoding[] = {
6943 : 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x3b, 0x11,
6944 : 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
6945 : };
6946 : return complete_seq (expand_encoding, operands);
6947 : }
6948 :
6949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6600 */
6950 : extern rtx_insn *gen_split_107 (rtx_insn *, rtx *);
6951 : rtx_insn *
6952 : gen_split_107 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6953 : {
6954 : if (dump_file)
6955 : fprintf (dump_file, "Splitting with gen_split_107 (i386.md:6600)\n");
6956 : start_sequence ();
6957 : #define FAIL return (end_sequence (), nullptr)
6958 : #define DONE return end_sequence ()
6959 : #line 6623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6960 : split_double_mode (TImode, &operands[0], 2, &operands[0], &operands[3]);
6961 : #undef DONE
6962 : #undef FAIL
6963 : static const uint8_t expand_encoding[] = {
6964 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
6965 : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
6966 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01,
6967 : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01,
6968 : 0x03, 0x3b, 0x12, 0x3b, 0x12, 0x66, 0x12, 0x30,
6969 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x04, 0x27, 0x00,
6970 : 0x05, 0x02, 0x11
6971 : };
6972 : return complete_seq (expand_encoding, operands);
6973 : }
6974 :
6975 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6656 */
6976 : extern rtx_insn *gen_split_115 (rtx_insn *, rtx *);
6977 : rtx_insn *
6978 : gen_split_115 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6979 : {
6980 : if (dump_file)
6981 : fprintf (dump_file, "Splitting with gen_split_115 (i386.md:6656)\n");
6982 : start_sequence ();
6983 : #define FAIL return (end_sequence (), nullptr)
6984 : #define DONE return end_sequence ()
6985 : #line 6687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6986 : split_double_mode (DImode, &operands[0], 1, &operands[0], &operands[5]);
6987 : #undef DONE
6988 : #undef FAIL
6989 : static const uint8_t expand_encoding[] = {
6990 : 0x04, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
6991 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
6992 : 0x11, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x1f,
6993 : 0x01, 0x00, 0x3b, 0x11, 0x01, 0x00, 0x01, 0x01,
6994 : 0x1f, 0x01, 0x05, 0x01, 0x02, 0x17, 0x00, 0x02,
6995 : 0x1f, 0x01, 0x05, 0x3b, 0x11, 0x3b, 0x11, 0x66,
6996 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x05,
6997 : 0x27, 0x00, 0x05, 0x02, 0x11
6998 : };
6999 : return complete_seq (expand_encoding, operands);
7000 : }
7001 :
7002 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7108 */
7003 : extern rtx_insn *gen_split_127 (rtx_insn *, rtx *);
7004 : rtx_insn *
7005 : gen_split_127 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7006 : {
7007 : if (dump_file)
7008 : fprintf (dump_file, "Splitting with gen_split_127 (i386.md:7108)\n");
7009 : start_sequence ();
7010 : #define FAIL return (end_sequence (), nullptr)
7011 : #define DONE return end_sequence ()
7012 : #line 7133 "/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, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
7018 : 0x81, 0x06, 0x12, 0x01, 0x02, 0x27, 0x08, 0x27,
7019 : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
7020 : 0x01, 0x00, 0x3b, 0x0f, 0x32, 0x0f, 0x81, 0x06,
7021 : 0x12, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
7022 : 0x01, 0x00, 0x05, 0x02, 0x11
7023 : };
7024 : return complete_seq (expand_encoding, operands);
7025 : }
7026 :
7027 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7199 */
7028 : extern rtx_insn *gen_split_139 (rtx_insn *, rtx *);
7029 : rtx_insn *
7030 : gen_split_139 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7031 : {
7032 : if (dump_file)
7033 : fprintf (dump_file, "Splitting with gen_split_139 (i386.md:7199)\n");
7034 : start_sequence ();
7035 : static const uint8_t expand_encoding[] = {
7036 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x3b, 0x11,
7037 : 0x01, 0x01, 0x01, 0x02
7038 : };
7039 : return complete_seq (expand_encoding, operands);
7040 : }
7041 :
7042 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7599 */
7043 : extern rtx_insn *gen_split_143 (rtx_insn *, rtx *);
7044 : rtx_insn *
7045 : gen_split_143 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7046 : {
7047 : if (dump_file)
7048 : fprintf (dump_file, "Splitting with gen_split_143 (i386.md:7599)\n");
7049 : start_sequence ();
7050 : #define FAIL return (end_sequence (), nullptr)
7051 : #define DONE return end_sequence ()
7052 : #line 7647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7053 :
7054 : #undef DONE
7055 : #undef FAIL
7056 : static const uint8_t expand_encoding[] = {
7057 : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
7058 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
7059 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7060 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
7061 : 0x08, 0x32, 0x10, 0x3b, 0x0f, 0x32, 0x0f, 0x81,
7062 : 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7063 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7064 : };
7065 : return complete_seq (expand_encoding, operands);
7066 : }
7067 :
7068 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7701 */
7069 : rtx
7070 : gen_addvhi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7071 : {
7072 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7073 : start_sequence ();
7074 : {
7075 : #define FAIL return (end_sequence (), nullptr)
7076 : #define DONE return end_sequence ()
7077 : #line 7719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7078 : {
7079 : ix86_fixup_binary_operands_no_copy (PLUS, HImode, operands);
7080 : if (CONST_SCALAR_INT_P (operands[2]))
7081 : operands[4] = operands[2];
7082 : else
7083 : operands[4] = gen_rtx_SIGN_EXTEND (SImode, operands[2]);
7084 : }
7085 : #undef DONE
7086 : #undef FAIL
7087 : }
7088 : static const uint8_t expand_encoding[] = {
7089 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7090 : 0x5d, 0x09, 0x3b, 0x11, 0x6e, 0x11, 0x01, 0x01,
7091 : 0x01, 0x04, 0x6e, 0x11, 0x3b, 0x10, 0x01, 0x01,
7092 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x10, 0x01,
7093 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x5d,
7094 : 0x00, 0x30, 0x09, 0x11, 0x27, 0x00, 0x37, 0x00,
7095 : 0x01, 0x03, 0x2f
7096 : };
7097 : return complete_seq (expand_encoding, operands);
7098 : }
7099 :
7100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7951 */
7101 : rtx
7102 : gen_uaddvsi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7103 : {
7104 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7105 : start_sequence ();
7106 : {
7107 : #define FAIL return (end_sequence (), nullptr)
7108 : #define DONE return end_sequence ()
7109 : #line 7965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7110 : ix86_fixup_binary_operands_no_copy (PLUS, SImode, operands);
7111 : #undef DONE
7112 : #undef FAIL
7113 : }
7114 : static const uint8_t expand_encoding[] = {
7115 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7116 : 0x3a, 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02,
7117 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01,
7118 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x66,
7119 : 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x37, 0x00,
7120 : 0x01, 0x03, 0x2f
7121 : };
7122 : return complete_seq (expand_encoding, operands);
7123 : }
7124 :
7125 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8034 */
7126 : extern rtx_insn *gen_split_162 (rtx_insn *, rtx *);
7127 : rtx_insn *
7128 : gen_split_162 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7129 : {
7130 : if (dump_file)
7131 : fprintf (dump_file, "Splitting with gen_split_162 (i386.md:8034)\n");
7132 : start_sequence ();
7133 : #define FAIL return (end_sequence (), nullptr)
7134 : #define DONE return end_sequence ()
7135 : #line 8051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7136 : {
7137 : operands[0] = gen_lowpart (SImode, operands[0]);
7138 : operands[1] = gen_lowpart (SImode, operands[1]);
7139 : operands[3] = gen_lowpart (SImode, operands[3]);
7140 : operands[4] = gen_lowpart (SImode, operands[4]);
7141 : }
7142 : #undef DONE
7143 : #undef FAIL
7144 : static const uint8_t expand_encoding[] = {
7145 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3b, 0x11,
7146 : 0x3e, 0x11, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
7147 : 0x01, 0x04
7148 : };
7149 : return complete_seq (expand_encoding, operands);
7150 : }
7151 :
7152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8110 */
7153 : extern rtx_insn *gen_split_172 (rtx_insn *, rtx *);
7154 : rtx_insn *
7155 : gen_split_172 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7156 : {
7157 : if (dump_file)
7158 : fprintf (dump_file, "Splitting with gen_split_172 (i386.md:8110)\n");
7159 : start_sequence ();
7160 : #define FAIL return (end_sequence (), nullptr)
7161 : #define DONE return end_sequence ()
7162 : #line 8125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7163 : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
7164 : #undef DONE
7165 : #undef FAIL
7166 : static const uint8_t expand_encoding[] = {
7167 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x3e, 0x12,
7168 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7169 : };
7170 : return complete_seq (expand_encoding, operands);
7171 : }
7172 :
7173 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8262 */
7174 : extern rtx_insn *gen_split_178 (rtx_insn *, rtx *);
7175 : rtx_insn *
7176 : gen_split_178 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7177 : {
7178 : if (dump_file)
7179 : fprintf (dump_file, "Splitting with gen_split_178 (i386.md:8262)\n");
7180 : start_sequence ();
7181 : #define FAIL return (end_sequence (), nullptr)
7182 : #define DONE return end_sequence ()
7183 : #line 8278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7184 :
7185 : #undef DONE
7186 : #undef FAIL
7187 : static const uint8_t expand_encoding[] = {
7188 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7189 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7190 : 0x3c, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
7191 : 0x11
7192 : };
7193 : return complete_seq (expand_encoding, operands);
7194 : }
7195 :
7196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8310 */
7197 : extern rtx_insn *gen_split_184 (rtx_insn *, rtx *);
7198 : rtx_insn *
7199 : gen_split_184 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7200 : {
7201 : if (dump_file)
7202 : fprintf (dump_file, "Splitting with gen_split_184 (i386.md:8310)\n");
7203 : start_sequence ();
7204 : #define FAIL return (end_sequence (), nullptr)
7205 : #define DONE return end_sequence ()
7206 : #line 8335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7207 :
7208 : #undef DONE
7209 : #undef FAIL
7210 : static const uint8_t expand_encoding[] = {
7211 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
7212 : 0x81, 0x06, 0x11, 0x01, 0x01, 0x27, 0x08, 0x27,
7213 : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
7214 : 0x01, 0x00, 0x3c, 0x0f, 0x01, 0x00, 0x32, 0x0f,
7215 : 0x81, 0x06, 0x11, 0x01, 0x02, 0x27, 0x08, 0x27,
7216 : 0x08, 0x00, 0x05, 0x02, 0x11
7217 : };
7218 : return complete_seq (expand_encoding, operands);
7219 : }
7220 :
7221 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8461 */
7222 : rtx
7223 : gen_subvdi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7224 : {
7225 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7226 : start_sequence ();
7227 : {
7228 : #define FAIL return (end_sequence (), nullptr)
7229 : #define DONE return end_sequence ()
7230 : #line 8479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7231 : {
7232 : ix86_fixup_binary_operands_no_copy (MINUS, DImode, operands,
7233 : TARGET_APX_NDD);
7234 : if (CONST_SCALAR_INT_P (operands[2]))
7235 : operands[4] = operands[2];
7236 : else
7237 : operands[4] = gen_rtx_SIGN_EXTEND (TImode, operands[2]);
7238 : }
7239 : #undef DONE
7240 : #undef FAIL
7241 : }
7242 : static const uint8_t expand_encoding[] = {
7243 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7244 : 0x5d, 0x09, 0x3c, 0x13, 0x6e, 0x13, 0x01, 0x01,
7245 : 0x01, 0x04, 0x6e, 0x13, 0x3c, 0x12, 0x01, 0x01,
7246 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x12, 0x01,
7247 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x5d,
7248 : 0x00, 0x30, 0x09, 0x11, 0x27, 0x00, 0x37, 0x00,
7249 : 0x01, 0x03, 0x2f
7250 : };
7251 : return complete_seq (expand_encoding, operands);
7252 : }
7253 :
7254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8720 */
7255 : rtx
7256 : gen_subqi_3 (const rtx operand0, const rtx operand1, const rtx operand2)
7257 : {
7258 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7259 : static const uint8_t expand_encoding[] = {
7260 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a,
7261 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00,
7262 : 0x3c, 0x0f, 0x01, 0x01, 0x01, 0x02
7263 : };
7264 : return expand_rtx (expand_encoding, operands);
7265 : }
7266 :
7267 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8745 */
7268 : extern rtx_insn *gen_peephole2_73 (rtx_insn *, rtx *);
7269 : rtx_insn *
7270 : gen_peephole2_73 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7271 : {
7272 : if (dump_file)
7273 : fprintf (dump_file, "Splitting with gen_peephole2_73 (i386.md:8745)\n");
7274 : start_sequence ();
7275 : static const uint8_t expand_encoding[] = {
7276 : 0x01, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7277 : 0x00, 0x01, 0x01
7278 : };
7279 : return complete_seq (expand_encoding, operands);
7280 : }
7281 :
7282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8805 */
7283 : extern rtx_insn *gen_peephole2_83 (rtx_insn *, rtx *);
7284 : rtx_insn *
7285 : gen_peephole2_83 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7286 : {
7287 : if (dump_file)
7288 : fprintf (dump_file, "Splitting with gen_peephole2_83 (i386.md:8805)\n");
7289 : start_sequence ();
7290 : #define FAIL return (end_sequence (), nullptr)
7291 : #define DONE return end_sequence ()
7292 : #line 8827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7293 : {
7294 : rtx cc = gen_rtx_REG (CCmode, FLAGS_REG);
7295 : operands[3] = gen_rtx_fmt_ee (GET_CODE (operands[1]) == NE
7296 : ? GEU : LTU, VOIDmode, cc, const0_rtx);
7297 : }
7298 : #undef DONE
7299 : #undef FAIL
7300 : static const uint8_t expand_encoding[] = {
7301 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7302 : 0x3a, 0x02, 0x01, 0x00, 0x27, 0x01, 0x1f, 0x01,
7303 : 0x00, 0x3c, 0x10, 0x01, 0x00, 0x27, 0x01, 0x1f,
7304 : 0x2f, 0x39, 0x00, 0x01, 0x03, 0x01, 0x02, 0x2f
7305 : };
7306 : return complete_seq (expand_encoding, operands);
7307 : }
7308 :
7309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8922 */
7310 : extern rtx_insn *gen_peephole2_91 (rtx_insn *, rtx *);
7311 : rtx_insn *
7312 : gen_peephole2_91 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7313 : {
7314 : if (dump_file)
7315 : fprintf (dump_file, "Splitting with gen_peephole2_91 (i386.md:8922)\n");
7316 : start_sequence ();
7317 : static const uint8_t expand_encoding[] = {
7318 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7319 : 0x02, 0x1f, 0x01, 0x01, 0x3b, 0x10, 0x3b, 0x10,
7320 : 0x02, 0x04, 0x01, 0x03, 0x27, 0x00, 0x01, 0x01,
7321 : 0x01, 0x00, 0x05, 0x02, 0x11
7322 : };
7323 : return complete_seq (expand_encoding, operands);
7324 : }
7325 :
7326 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9383 */
7327 : extern rtx_insn *gen_peephole2_101 (rtx_insn *, rtx *);
7328 : rtx_insn *
7329 : gen_peephole2_101 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7330 : {
7331 : if (dump_file)
7332 : fprintf (dump_file, "Splitting with gen_peephole2_101 (i386.md:9383)\n");
7333 : start_sequence ();
7334 : static const uint8_t expand_encoding[] = {
7335 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
7336 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x6f,
7337 : 0x13, 0x3b, 0x12, 0x3b, 0x12, 0x02, 0x05, 0x01,
7338 : 0x03, 0x27, 0x00, 0x01, 0x02, 0x01, 0x00, 0x3b,
7339 : 0x13, 0x02, 0x04, 0x01, 0x03, 0x27, 0x00, 0x6f,
7340 : 0x13, 0x01, 0x00, 0x1f, 0x01, 0x02, 0x3b, 0x12,
7341 : 0x3b, 0x12, 0x02, 0x05, 0x01, 0x03, 0x27, 0x00,
7342 : 0x01, 0x02, 0x01, 0x00
7343 : };
7344 : return complete_seq (expand_encoding, operands);
7345 : }
7346 :
7347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9587 */
7348 : extern rtx_insn *gen_peephole2_109 (rtx_insn *, rtx *);
7349 : rtx_insn *
7350 : gen_peephole2_109 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7351 : {
7352 : if (dump_file)
7353 : fprintf (dump_file, "Splitting with gen_peephole2_109 (i386.md:9587)\n");
7354 : start_sequence ();
7355 : static const uint8_t expand_encoding[] = {
7356 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7357 : 0x02, 0x1f, 0x01, 0x01, 0x3c, 0x10, 0x3c, 0x10,
7358 : 0x01, 0x01, 0x02, 0x04, 0x01, 0x03, 0x27, 0x00,
7359 : 0x01, 0x00, 0x05, 0x02, 0x11
7360 : };
7361 : return complete_seq (expand_encoding, operands);
7362 : }
7363 :
7364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10077 */
7365 : extern rtx_insn *gen_peephole2_119 (rtx_insn *, rtx *);
7366 : rtx_insn *
7367 : gen_peephole2_119 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7368 : {
7369 : if (dump_file)
7370 : fprintf (dump_file, "Splitting with gen_peephole2_119 (i386.md:10077)\n");
7371 : start_sequence ();
7372 : #define FAIL return (end_sequence (), nullptr)
7373 : #define DONE return end_sequence ()
7374 : #line 10133 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7375 : {
7376 : if (!rtx_equal_p (operands[6], operands[0]))
7377 : operands[9] = operands[7];
7378 : }
7379 : #undef DONE
7380 : #undef FAIL
7381 : static const uint8_t expand_encoding[] = {
7382 : 0x04, 0x1f, 0x01, 0x00, 0x01, 0x09, 0x17, 0x00,
7383 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x6f,
7384 : 0x13, 0x01, 0x01, 0x3b, 0x13, 0x02, 0x04, 0x01,
7385 : 0x03, 0x27, 0x00, 0x6f, 0x13, 0x01, 0x00, 0x1f,
7386 : 0x01, 0x01, 0x3c, 0x12, 0x3c, 0x12, 0x01, 0x01,
7387 : 0x02, 0x05, 0x01, 0x03, 0x27, 0x00, 0x01, 0x00,
7388 : 0x1f, 0x01, 0x0a, 0x66, 0x0f, 0x30, 0x08, 0x11,
7389 : 0x27, 0x00, 0x1f, 0x01, 0x0b, 0x6f, 0x12, 0x01,
7390 : 0x0a
7391 : };
7392 : return complete_seq (expand_encoding, operands);
7393 : }
7394 :
7395 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10288 */
7396 : extern rtx_insn *gen_split_204 (rtx_insn *, rtx *);
7397 : rtx_insn *
7398 : gen_split_204 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7399 : {
7400 : if (dump_file)
7401 : fprintf (dump_file, "Splitting with gen_split_204 (i386.md:10288)\n");
7402 : start_sequence ();
7403 : #define FAIL return (end_sequence (), nullptr)
7404 : #define DONE return end_sequence ()
7405 : #line 10296 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7406 : emit_note (NOTE_INSN_DELETED); DONE;
7407 : #undef DONE
7408 : #undef FAIL
7409 : static const uint8_t expand_encoding[] = {
7410 : 0x01, 0x27, 0x00
7411 : };
7412 : return complete_seq (expand_encoding, operands);
7413 : }
7414 :
7415 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10460 */
7416 : extern rtx_insn *gen_split_206 (rtx_insn *, rtx *);
7417 : rtx_insn *
7418 : gen_split_206 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7419 : {
7420 : if (dump_file)
7421 : fprintf (dump_file, "Splitting with gen_split_206 (i386.md:10460)\n");
7422 : start_sequence ();
7423 : #define FAIL return (end_sequence (), nullptr)
7424 : #define DONE return end_sequence ()
7425 : #line 10494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7426 : {
7427 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
7428 : if (operands[2] == const0_rtx)
7429 : {
7430 : if (!rtx_equal_p (operands[0], operands[1]))
7431 : emit_move_insn (operands[0], operands[1]);
7432 : emit_insn (gen_addcarrysi_0 (operands[3], operands[4], operands[5]));
7433 : DONE;
7434 : }
7435 : if (CONST_INT_P (operands[5]))
7436 : operands[6] = simplify_unary_operation (ZERO_EXTEND, DImode,
7437 : operands[5], SImode);
7438 : else
7439 : operands[6] = gen_rtx_ZERO_EXTEND (DImode, operands[5]);
7440 : }
7441 : #undef DONE
7442 : #undef FAIL
7443 : static const uint8_t expand_encoding[] = {
7444 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7445 : 0x3a, 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02,
7446 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01,
7447 : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30,
7448 : 0x08, 0x11, 0x3a, 0x08, 0x6f, 0x12, 0x3b, 0x11,
7449 : 0x3b, 0x11, 0x66, 0x11, 0x30, 0x02, 0x11, 0x27,
7450 : 0x00, 0x01, 0x04, 0x01, 0x05, 0x3b, 0x12, 0x66,
7451 : 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x06,
7452 : 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x3b, 0x11, 0x66,
7453 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x04,
7454 : 0x01, 0x05
7455 : };
7456 : return complete_seq (expand_encoding, operands);
7457 : }
7458 :
7459 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10609 */
7460 : extern rtx_insn *gen_split_224 (rtx_insn *, rtx *);
7461 : rtx_insn *
7462 : gen_split_224 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7463 : {
7464 : if (dump_file)
7465 : fprintf (dump_file, "Splitting with gen_split_224 (i386.md:10609)\n");
7466 : start_sequence ();
7467 : static const uint8_t expand_encoding[] = {
7468 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7469 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7470 : 0x00, 0x3c, 0x0f, 0x3c, 0x0f, 0x01, 0x01, 0x66,
7471 : 0x0f, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7472 : 0x05, 0x02, 0x11
7473 : };
7474 : return complete_seq (expand_encoding, operands);
7475 : }
7476 :
7477 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10631 */
7478 : extern rtx_insn *gen_split_230 (rtx_insn *, rtx *);
7479 : rtx_insn *
7480 : gen_split_230 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7481 : {
7482 : if (dump_file)
7483 : fprintf (dump_file, "Splitting with gen_split_230 (i386.md:10631)\n");
7484 : start_sequence ();
7485 : #define FAIL return (end_sequence (), nullptr)
7486 : #define DONE return end_sequence ()
7487 : #line 10655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7488 : {
7489 : operands[2] = gen_int_mode (INTVAL (operands[2]) - 1,
7490 : SImode == DImode ? SImode : SImode);
7491 : }
7492 : #undef DONE
7493 : #undef FAIL
7494 : static const uint8_t expand_encoding[] = {
7495 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7496 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7497 : 0x00, 0x3b, 0x11, 0x3b, 0x11, 0x66, 0x11, 0x30,
7498 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x01, 0x01, 0x02,
7499 : 0x05, 0x02, 0x11
7500 : };
7501 : return complete_seq (expand_encoding, operands);
7502 : }
7503 :
7504 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10710 */
7505 : extern rtx_insn *gen_split_240 (rtx_insn *, rtx *);
7506 : rtx_insn *
7507 : gen_split_240 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7508 : {
7509 : if (dump_file)
7510 : fprintf (dump_file, "Splitting with gen_split_240 (i386.md:10710)\n");
7511 : start_sequence ();
7512 : #define FAIL return (end_sequence (), nullptr)
7513 : #define DONE return end_sequence ()
7514 : #line 10728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7515 : {
7516 : if (!nonimmediate_operand (operands[1], QImode))
7517 : operands[1] = force_reg (QImode, operands[1]);
7518 : }
7519 : #undef DONE
7520 : #undef FAIL
7521 : static const uint8_t expand_encoding[] = {
7522 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7523 : 0x02, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7524 : 0x00, 0x3b, 0x0f, 0x3b, 0x0f, 0x66, 0x0f, 0x30,
7525 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x01, 0x27, 0x81,
7526 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7527 : 0x7f, 0x05, 0x02, 0x11
7528 : };
7529 : return complete_seq (expand_encoding, operands);
7530 : }
7531 :
7532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10775 */
7533 : rtx
7534 : gen_ussubsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7535 : {
7536 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7537 : start_sequence ();
7538 : {
7539 : #define FAIL return (end_sequence (), nullptr)
7540 : #define DONE return end_sequence ()
7541 : #line 10780 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7542 : {
7543 : rtx res = gen_reg_rtx (SImode);
7544 : rtx dst;
7545 :
7546 : emit_insn (gen_subsi_3 (res, operands[1], operands[2]));
7547 :
7548 : if (TARGET_CMOVE)
7549 : {
7550 : rtx cmp = gen_rtx_GEU (VOIDmode, gen_rtx_REG (CCCmode, FLAGS_REG),
7551 : const0_rtx);
7552 :
7553 : if (4 < GET_MODE_SIZE (SImode))
7554 : {
7555 : dst = force_reg (SImode, operands[0]);
7556 : emit_insn (gen_movsicc (gen_lowpart (SImode, dst), cmp,
7557 : gen_lowpart (SImode, res), const0_rtx));
7558 : }
7559 : else
7560 : {
7561 : dst = operands[0];
7562 : emit_insn (gen_movsicc (dst, cmp, res, const0_rtx));
7563 : }
7564 : }
7565 : else
7566 : {
7567 : rtx msk = gen_reg_rtx (SImode);
7568 :
7569 : emit_insn (gen_x86_movsicc_0_m1_neg (msk));
7570 : msk = expand_simple_unop (SImode, NOT, msk, NULL, 1);
7571 : dst = expand_simple_binop (SImode, AND, res, msk,
7572 : operands[0], 1, OPTAB_WIDEN);
7573 : }
7574 :
7575 : if (!rtx_equal_p (dst, operands[0]))
7576 : emit_move_insn (operands[0], dst);
7577 : DONE;
7578 : }
7579 : #undef DONE
7580 : #undef FAIL
7581 : }
7582 : static const uint8_t expand_encoding[] = {
7583 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x16, 0x11, 0x01,
7584 : 0x01, 0x01, 0x02
7585 : };
7586 : return complete_seq (expand_encoding, operands);
7587 : }
7588 :
7589 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10942 */
7590 : rtx
7591 : gen_subsf3 (const rtx operand0, const rtx operand1, const rtx operand2)
7592 : {
7593 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7594 : static const uint8_t expand_encoding[] = {
7595 : 0x1f, 0x01, 0x00, 0x3c, 0x2d, 0x01, 0x01, 0x01,
7596 : 0x02
7597 : };
7598 : return expand_rtx (expand_encoding, operands);
7599 : }
7600 :
7601 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10959 */
7602 : rtx
7603 : gen_mulqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7604 : {
7605 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7606 : static const uint8_t expand_encoding[] = {
7607 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x0f,
7608 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
7609 : };
7610 : return expand_rtx (expand_encoding, operands);
7611 : }
7612 :
7613 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11317 */
7614 : rtx
7615 : gen_umulsidi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7616 : {
7617 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7618 : static const uint8_t expand_encoding[] = {
7619 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x12,
7620 : 0x6f, 0x12, 0x01, 0x01, 0x6f, 0x12, 0x01, 0x02,
7621 : 0x05, 0x02, 0x11
7622 : };
7623 : return expand_rtx (expand_encoding, operands);
7624 : }
7625 :
7626 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11317 */
7627 : rtx
7628 : gen_umulditi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7629 : {
7630 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7631 : static const uint8_t expand_encoding[] = {
7632 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x13,
7633 : 0x6f, 0x13, 0x01, 0x01, 0x6f, 0x13, 0x01, 0x02,
7634 : 0x05, 0x02, 0x11
7635 : };
7636 : return expand_rtx (expand_encoding, operands);
7637 : }
7638 :
7639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11464 */
7640 : extern rtx_insn *gen_peephole2_131 (rtx_insn *, rtx *);
7641 : rtx_insn *
7642 : gen_peephole2_131 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7643 : {
7644 : if (dump_file)
7645 : fprintf (dump_file, "Splitting with gen_peephole2_131 (i386.md:11464)\n");
7646 : start_sequence ();
7647 : static const uint8_t expand_encoding[] = {
7648 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
7649 : 0x02, 0x1f, 0x01, 0x04, 0x3e, 0x13, 0x6f, 0x13,
7650 : 0x01, 0x02, 0x6f, 0x13, 0x01, 0x03, 0x05, 0x02,
7651 : 0x11
7652 : };
7653 : return complete_seq (expand_encoding, operands);
7654 : }
7655 :
7656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11625 */
7657 : extern rtx_insn *gen_peephole2_137 (rtx_insn *, rtx *);
7658 : rtx_insn *
7659 : gen_peephole2_137 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7660 : {
7661 : if (dump_file)
7662 : fprintf (dump_file, "Splitting with gen_peephole2_137 (i386.md:11625)\n");
7663 : start_sequence ();
7664 : static const uint8_t expand_encoding[] = {
7665 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
7666 : 0x03, 0x1f, 0x01, 0x04, 0x42, 0x12, 0x01, 0x02,
7667 : 0x01, 0x03, 0x21, 0x00, 0x01, 0x02, 0x05, 0x02,
7668 : 0x11
7669 : };
7670 : return complete_seq (expand_encoding, operands);
7671 : }
7672 :
7673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11747 */
7674 : rtx
7675 : gen_divmoddi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7676 : {
7677 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7678 : static const uint8_t expand_encoding[] = {
7679 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x43, 0x12,
7680 : 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x03, 0x46,
7681 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
7682 : };
7683 : return expand_rtx (expand_encoding, operands);
7684 : }
7685 :
7686 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11775 */
7687 : extern rtx_insn *gen_split_251 (rtx_insn *, rtx *);
7688 : rtx_insn *
7689 : gen_split_251 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7690 : {
7691 : if (dump_file)
7692 : fprintf (dump_file, "Splitting with gen_split_251 (i386.md:11775)\n");
7693 : start_sequence ();
7694 : #define FAIL return (end_sequence (), nullptr)
7695 : #define DONE return end_sequence ()
7696 : #line 11789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7697 : ix86_split_idivmod (SImode, operands, true); DONE;
7698 : #undef DONE
7699 : #undef FAIL
7700 : static const uint8_t expand_encoding[] = {
7701 : 0x01, 0x27, 0x00
7702 : };
7703 : return complete_seq (expand_encoding, operands);
7704 : }
7705 :
7706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11960 */
7707 : extern rtx_insn *gen_split_261 (rtx_insn *, rtx *);
7708 : rtx_insn *
7709 : gen_split_261 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7710 : {
7711 : if (dump_file)
7712 : fprintf (dump_file, "Splitting with gen_split_261 (i386.md:11960)\n");
7713 : start_sequence ();
7714 : #define FAIL return (end_sequence (), nullptr)
7715 : #define DONE return end_sequence ()
7716 : #line 11979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7717 : operands[4] = gen_lowpart (SImode, operands[1]);
7718 : #undef DONE
7719 : #undef FAIL
7720 : static const uint8_t expand_encoding[] = {
7721 : 0x02, 0x1f, 0x01, 0x04, 0x27, 0x00, 0x17, 0x00,
7722 : 0x04, 0x1f, 0x01, 0x01, 0x6f, 0x12, 0x48, 0x11,
7723 : 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x47,
7724 : 0x11, 0x01, 0x02, 0x01, 0x03, 0x20, 0x00, 0x01,
7725 : 0x04, 0x05, 0x02, 0x11
7726 : };
7727 : return complete_seq (expand_encoding, operands);
7728 : }
7729 :
7730 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12041 */
7731 : extern rtx_insn *gen_split_269 (rtx_insn *, rtx *);
7732 : rtx_insn *
7733 : gen_split_269 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7734 : {
7735 : if (dump_file)
7736 : fprintf (dump_file, "Splitting with gen_split_269 (i386.md:12041)\n");
7737 : start_sequence ();
7738 : #define FAIL return (end_sequence (), nullptr)
7739 : #define DONE return end_sequence ()
7740 : #line 12056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7741 : {
7742 : int v = exact_log2 (UINTVAL (operands[3]));
7743 : operands[4] = GEN_INT (v);
7744 : operands[5] = GEN_INT ((HOST_WIDE_INT_1U << v) - 1);
7745 : }
7746 : #undef DONE
7747 : #undef FAIL
7748 : static const uint8_t expand_encoding[] = {
7749 : 0x03, 0x1f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
7750 : 0x02, 0x1f, 0x01, 0x00, 0x50, 0x12, 0x01, 0x02,
7751 : 0x01, 0x04, 0x05, 0x02, 0x11, 0x17, 0x00, 0x02,
7752 : 0x1f, 0x01, 0x01, 0x49, 0x12, 0x01, 0x01, 0x01,
7753 : 0x05, 0x05, 0x02, 0x11
7754 : };
7755 : return complete_seq (expand_encoding, operands);
7756 : }
7757 :
7758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12436 */
7759 : rtx
7760 : gen_testsi_ccno_1 (const rtx operand0, const rtx operand1)
7761 : {
7762 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
7763 : static const uint8_t expand_encoding[] = {
7764 : 0x1f, 0x30, 0x05, 0x11, 0x3a, 0x05, 0x49, 0x11,
7765 : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00
7766 : };
7767 : return expand_rtx (expand_encoding, operands);
7768 : }
7769 :
7770 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12444 */
7771 : rtx
7772 : gen_testqi_ccz_1 (const rtx operand0, const rtx operand1)
7773 : {
7774 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
7775 : static const uint8_t expand_encoding[] = {
7776 : 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x49, 0x0f,
7777 : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00
7778 : };
7779 : return expand_rtx (expand_encoding, operands);
7780 : }
7781 :
7782 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12698 */
7783 : extern rtx_insn *gen_split_283 (rtx_insn *, rtx *);
7784 : rtx_insn *
7785 : gen_split_283 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7786 : {
7787 : if (dump_file)
7788 : fprintf (dump_file, "Splitting with gen_split_283 (i386.md:12698)\n");
7789 : start_sequence ();
7790 : #define FAIL return (end_sequence (), nullptr)
7791 : #define DONE return end_sequence ()
7792 : #line 12713 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7793 : operands[2] = gen_reg_rtx (SImode);
7794 : #undef DONE
7795 : #undef FAIL
7796 : static const uint8_t expand_encoding[] = {
7797 : 0x02, 0x1f, 0x01, 0x02, 0x4c, 0x11, 0x01, 0x00,
7798 : 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x49, 0x11,
7799 : 0x01, 0x02, 0x01, 0x01, 0x27, 0x00
7800 : };
7801 : return complete_seq (expand_encoding, operands);
7802 : }
7803 :
7804 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12794 */
7805 : extern rtx_insn *gen_peephole2_141 (rtx_insn *, rtx *);
7806 : rtx_insn *
7807 : gen_peephole2_141 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7808 : {
7809 : if (dump_file)
7810 : fprintf (dump_file, "Splitting with gen_peephole2_141 (i386.md:12794)\n");
7811 : start_sequence ();
7812 : #define FAIL return (end_sequence (), nullptr)
7813 : #define DONE return end_sequence ()
7814 : #line 12805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7815 : {
7816 : unsigned HOST_WIDE_INT ival = UINTVAL (operands[1]);
7817 : int first_nonzero_byte, bitsize;
7818 : rtx new_addr, new_const;
7819 : machine_mode new_mode;
7820 :
7821 : if (ival == 0)
7822 : FAIL;
7823 :
7824 : /* Clear bits outside mode width. */
7825 : ival &= GET_MODE_MASK (SImode);
7826 :
7827 : first_nonzero_byte = ctz_hwi (ival) / BITS_PER_UNIT;
7828 :
7829 : ival >>= first_nonzero_byte * BITS_PER_UNIT;
7830 :
7831 : bitsize = sizeof (ival) * BITS_PER_UNIT - clz_hwi (ival);
7832 :
7833 : if (bitsize <= GET_MODE_BITSIZE (QImode))
7834 : new_mode = QImode;
7835 : else if (bitsize <= GET_MODE_BITSIZE (HImode))
7836 : new_mode = HImode;
7837 : else if (bitsize <= GET_MODE_BITSIZE (SImode))
7838 : new_mode = SImode;
7839 : else
7840 : new_mode = DImode;
7841 :
7842 : if (GET_MODE_SIZE (new_mode) >= GET_MODE_SIZE (SImode))
7843 : FAIL;
7844 :
7845 : new_addr = adjust_address (operands[0], new_mode, first_nonzero_byte);
7846 : new_const = gen_int_mode (ival, new_mode);
7847 :
7848 : operands[2] = gen_rtx_AND (new_mode, new_addr, new_const);
7849 : }
7850 : #undef DONE
7851 : #undef FAIL
7852 : static const uint8_t expand_encoding[] = {
7853 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x01,
7854 : 0x02, 0x27, 0x00
7855 : };
7856 : return complete_seq (expand_encoding, operands);
7857 : }
7858 :
7859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12982 */
7860 : extern rtx_insn *gen_split_292 (rtx_insn *, rtx *);
7861 : rtx_insn *
7862 : gen_split_292 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7863 : {
7864 : if (dump_file)
7865 : fprintf (dump_file, "Splitting with gen_split_292 (i386.md:12982)\n");
7866 : start_sequence ();
7867 : #define FAIL return (end_sequence (), nullptr)
7868 : #define DONE return end_sequence ()
7869 : #line 12991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7870 : {
7871 : if (SYMBOL_REF_P (operands[2])
7872 : || LABEL_REF_P (operands[2]))
7873 : {
7874 : operands[2] = shallow_copy_rtx (operands[2]);
7875 : PUT_MODE (operands[2], SImode);
7876 : }
7877 : else if (GET_CODE (operands[2]) == CONST)
7878 : {
7879 : /* (const:DI (plus:DI (symbol_ref:DI ("...")) (const_int N))) */
7880 : operands[2] = copy_rtx (operands[2]);
7881 : PUT_MODE (operands[2], SImode);
7882 : PUT_MODE (XEXP (operands[2], 0), SImode);
7883 : PUT_MODE (XEXP (XEXP (operands[2], 0), 0), SImode);
7884 : }
7885 : else
7886 : operands[2] = gen_lowpart (SImode, operands[2]);
7887 : }
7888 : #undef DONE
7889 : #undef FAIL
7890 : static const uint8_t expand_encoding[] = {
7891 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x6f,
7892 : 0x12, 0x49, 0x11, 0x01, 0x01, 0x01, 0x02, 0x05,
7893 : 0x02, 0x11
7894 : };
7895 : return complete_seq (expand_encoding, operands);
7896 : }
7897 :
7898 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13147 */
7899 : extern rtx_insn *gen_split_303 (rtx_insn *, rtx *);
7900 : rtx_insn *
7901 : gen_split_303 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7902 : {
7903 : if (dump_file)
7904 : fprintf (dump_file, "Splitting with gen_split_303 (i386.md:13147)\n");
7905 : start_sequence ();
7906 : #define FAIL return (end_sequence (), nullptr)
7907 : #define DONE return end_sequence ()
7908 : #line 13170 "/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, 0x01, 0x01,
7914 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7915 : 0x4a, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01,
7916 : 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x00,
7917 : 0x05, 0x02, 0x11
7918 : };
7919 : return complete_seq (expand_encoding, operands);
7920 : }
7921 :
7922 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13174 */
7923 : extern rtx_insn *gen_split_313 (rtx_insn *, rtx *);
7924 : rtx_insn *
7925 : gen_split_313 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7926 : {
7927 : if (dump_file)
7928 : fprintf (dump_file, "Splitting with gen_split_313 (i386.md:13174)\n");
7929 : start_sequence ();
7930 : #define FAIL return (end_sequence (), nullptr)
7931 : #define DONE return end_sequence ()
7932 : #line 13199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7933 :
7934 : #undef DONE
7935 : #undef FAIL
7936 : static const uint8_t expand_encoding[] = {
7937 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
7938 : 0x81, 0x06, 0x11, 0x01, 0x02, 0x27, 0x08, 0x27,
7939 : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
7940 : 0x01, 0x00, 0x4b, 0x0f, 0x32, 0x0f, 0x81, 0x06,
7941 : 0x11, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
7942 : 0x01, 0x00, 0x05, 0x02, 0x11
7943 : };
7944 : return complete_seq (expand_encoding, operands);
7945 : }
7946 :
7947 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13248 */
7948 : extern rtx_insn *gen_split_323 (rtx_insn *, rtx *);
7949 : rtx_insn *
7950 : gen_split_323 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7951 : {
7952 : if (dump_file)
7953 : fprintf (dump_file, "Splitting with gen_split_323 (i386.md:13248)\n");
7954 : start_sequence ();
7955 : #define FAIL return (end_sequence (), nullptr)
7956 : #define DONE return end_sequence ()
7957 : #line 13256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7958 : operands[1] = gen_lowpart (QImode, operands[0]);
7959 : #undef DONE
7960 : #undef FAIL
7961 : static const uint8_t expand_encoding[] = {
7962 : 0x01, 0x1f, 0x33, 0x00, 0x01, 0x01, 0x27, 0x00
7963 : };
7964 : return complete_seq (expand_encoding, operands);
7965 : }
7966 :
7967 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13409 */
7968 : extern rtx_insn *gen_split_332 (rtx_insn *, rtx *);
7969 : rtx_insn *
7970 : gen_split_332 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7971 : {
7972 : if (dump_file)
7973 : fprintf (dump_file, "Splitting with gen_split_332 (i386.md:13409)\n");
7974 : start_sequence ();
7975 : #define FAIL return (end_sequence (), nullptr)
7976 : #define DONE return end_sequence ()
7977 : #line 13434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7978 :
7979 : #undef DONE
7980 : #undef FAIL
7981 : static const uint8_t expand_encoding[] = {
7982 : 0x02, 0x1f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
7983 : 0x11, 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00,
7984 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x0f,
7985 : 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01, 0x01, 0x27,
7986 : 0x08, 0x27, 0x08, 0x00, 0x01, 0x00, 0x05, 0x02,
7987 : 0x11
7988 : };
7989 : return complete_seq (expand_encoding, operands);
7990 : }
7991 :
7992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13453 */
7993 : extern rtx_insn *gen_split_341 (rtx_insn *, rtx *);
7994 : rtx_insn *
7995 : gen_split_341 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7996 : {
7997 : if (dump_file)
7998 : fprintf (dump_file, "Splitting with gen_split_341 (i386.md:13453)\n");
7999 : start_sequence ();
8000 : #define FAIL return (end_sequence (), nullptr)
8001 : #define DONE return end_sequence ()
8002 : #line 13485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8003 :
8004 : #undef DONE
8005 : #undef FAIL
8006 : static const uint8_t expand_encoding[] = {
8007 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
8008 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8009 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8010 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8011 : 0x08, 0x32, 0x11, 0x4a, 0x0f, 0x32, 0x0f, 0x81,
8012 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8013 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
8014 : };
8015 : return complete_seq (expand_encoding, operands);
8016 : }
8017 :
8018 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13491 */
8019 : extern rtx_insn *gen_split_351 (rtx_insn *, rtx *);
8020 : rtx_insn *
8021 : gen_split_351 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8022 : {
8023 : if (dump_file)
8024 : fprintf (dump_file, "Splitting with gen_split_351 (i386.md:13491)\n");
8025 : start_sequence ();
8026 : #define FAIL return (end_sequence (), nullptr)
8027 : #define DONE return end_sequence ()
8028 : #line 13537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8029 :
8030 : #undef DONE
8031 : #undef FAIL
8032 : static const uint8_t expand_encoding[] = {
8033 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
8034 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8035 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8036 : 0x01, 0x04, 0x02, 0x05, 0x4b, 0x0f, 0x32, 0x0f,
8037 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8038 : 0x08, 0x00, 0x01, 0x02, 0x27, 0x00, 0x1f, 0x81,
8039 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8040 : 0x32, 0x11, 0x4b, 0x0f, 0x32, 0x0f, 0x81, 0x06,
8041 : 0x11, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
8042 : 0x01, 0x02, 0x00
8043 : };
8044 : return complete_seq (expand_encoding, operands);
8045 : }
8046 :
8047 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13543 */
8048 : extern rtx_insn *gen_split_361 (rtx_insn *, rtx *);
8049 : rtx_insn *
8050 : gen_split_361 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8051 : {
8052 : if (dump_file)
8053 : fprintf (dump_file, "Splitting with gen_split_361 (i386.md:13543)\n");
8054 : start_sequence ();
8055 : #define FAIL return (end_sequence (), nullptr)
8056 : #define DONE return end_sequence ()
8057 : #line 13580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8058 :
8059 : #undef DONE
8060 : #undef FAIL
8061 : static const uint8_t expand_encoding[] = {
8062 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8063 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8064 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8065 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8066 : 0x08, 0x32, 0x12, 0x49, 0x0f, 0x32, 0x0f, 0x81,
8067 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8068 : 0x00, 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x02,
8069 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x00, 0x05, 0x02,
8070 : 0x11
8071 : };
8072 : return complete_seq (expand_encoding, operands);
8073 : }
8074 :
8075 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13585 */
8076 : extern rtx_insn *gen_split_371 (rtx_insn *, rtx *);
8077 : rtx_insn *
8078 : gen_split_371 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8079 : {
8080 : if (dump_file)
8081 : fprintf (dump_file, "Splitting with gen_split_371 (i386.md:13585)\n");
8082 : start_sequence ();
8083 : #define FAIL return (end_sequence (), nullptr)
8084 : #define DONE return end_sequence ()
8085 : #line 13613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8086 : operands[4] = gen_lowpart (GET_MODE (operands[1]), operands[0]);
8087 : #undef DONE
8088 : #undef FAIL
8089 : static const uint8_t expand_encoding[] = {
8090 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8091 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8092 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8093 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8094 : 0x08, 0x81, 0x06, 0x12, 0x4a, 0x00, 0x01, 0x04,
8095 : 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x05, 0x02,
8096 : 0x11
8097 : };
8098 : return complete_seq (expand_encoding, operands);
8099 : }
8100 :
8101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13691 */
8102 : extern rtx_insn *gen_split_381 (rtx_insn *, rtx *);
8103 : rtx_insn *
8104 : gen_split_381 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8105 : {
8106 : if (dump_file)
8107 : fprintf (dump_file, "Splitting with gen_split_381 (i386.md:13691)\n");
8108 : start_sequence ();
8109 : #define FAIL return (end_sequence (), nullptr)
8110 : #define DONE return end_sequence ()
8111 : #line 13705 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8112 : operands[3] = gen_reg_rtx (DImode);
8113 : #undef DONE
8114 : #undef FAIL
8115 : static const uint8_t expand_encoding[] = {
8116 : 0x02, 0x1f, 0x01, 0x03, 0x4c, 0x12, 0x01, 0x01,
8117 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x12,
8118 : 0x01, 0x03, 0x01, 0x02, 0x05, 0x02, 0x11
8119 : };
8120 : return complete_seq (expand_encoding, operands);
8121 : }
8122 :
8123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13832 */
8124 : extern rtx_insn *gen_split_390 (rtx_insn *, rtx *);
8125 : rtx_insn *
8126 : gen_split_390 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8127 : {
8128 : if (dump_file)
8129 : fprintf (dump_file, "Splitting with gen_split_390 (i386.md:13832)\n");
8130 : start_sequence ();
8131 : #define FAIL return (end_sequence (), nullptr)
8132 : #define DONE return end_sequence ()
8133 : #line 13848 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8134 : operands[4] = gen_reg_rtx (DImode);
8135 : #undef DONE
8136 : #undef FAIL
8137 : static const uint8_t expand_encoding[] = {
8138 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8139 : 0x12, 0x4c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x05,
8140 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
8141 : 0x4b, 0x12, 0x01, 0x04, 0x01, 0x03, 0x05, 0x02,
8142 : 0x11
8143 : };
8144 : return complete_seq (expand_encoding, operands);
8145 : }
8146 :
8147 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13874 */
8148 : rtx
8149 : gen_xordi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8150 : {
8151 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8152 : start_sequence ();
8153 : {
8154 : #define FAIL return (end_sequence (), nullptr)
8155 : #define DONE return end_sequence ()
8156 : #line 13879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8157 : {
8158 : if (GET_MODE_SIZE (DImode) > UNITS_PER_WORD
8159 : && !x86_64_hilo_general_operand (operands[2], DImode))
8160 : operands[2] = force_reg (DImode, operands[2]);
8161 :
8162 : ix86_expand_binary_operator (XOR, DImode, operands, TARGET_APX_NDD);
8163 : DONE;
8164 : }
8165 : #undef DONE
8166 : #undef FAIL
8167 : }
8168 : static const uint8_t expand_encoding[] = {
8169 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x12, 0x01, 0x01,
8170 : 0x01, 0x02
8171 : };
8172 : return complete_seq (expand_encoding, operands);
8173 : }
8174 :
8175 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13994 */
8176 : extern rtx_insn *gen_split_400 (rtx_insn *, rtx *);
8177 : rtx_insn *
8178 : gen_split_400 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8179 : {
8180 : if (dump_file)
8181 : fprintf (dump_file, "Splitting with gen_split_400 (i386.md:13994)\n");
8182 : start_sequence ();
8183 : #define FAIL return (end_sequence (), nullptr)
8184 : #define DONE return end_sequence ()
8185 : #line 14010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8186 : operands[3] = GEN_INT (exact_log2 (INTVAL (operands[2])));
8187 : #undef DONE
8188 : #undef FAIL
8189 : static const uint8_t expand_encoding[] = {
8190 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x12,
8191 : 0x01, 0x00, 0x27, 0x01, 0x01, 0x03, 0x27, 0x01,
8192 : 0x05, 0x02, 0x11
8193 : };
8194 : return complete_seq (expand_encoding, operands);
8195 : }
8196 :
8197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14043 */
8198 : extern rtx_insn *gen_split_403 (rtx_insn *, rtx *);
8199 : rtx_insn *
8200 : gen_split_403 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8201 : {
8202 : if (dump_file)
8203 : fprintf (dump_file, "Splitting with gen_split_403 (i386.md:14043)\n");
8204 : start_sequence ();
8205 : #define FAIL return (end_sequence (), nullptr)
8206 : #define DONE return end_sequence ()
8207 : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8208 : {
8209 : operands[1] = force_reg (SImode, operands[1]);
8210 : operands[3] = force_reg (SImode, operands[3]);
8211 : operands[4] = gen_reg_rtx (SImode);
8212 : operands[5] = gen_reg_rtx (SImode);
8213 : }
8214 : #undef DONE
8215 : #undef FAIL
8216 : static const uint8_t expand_encoding[] = {
8217 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8218 : 0x11, 0x4c, 0x11, 0x01, 0x03, 0x01, 0x01, 0x05,
8219 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05,
8220 : 0x49, 0x11, 0x01, 0x03, 0x01, 0x02, 0x05, 0x02,
8221 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
8222 : 0x11, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11
8223 : };
8224 : return complete_seq (expand_encoding, operands);
8225 : }
8226 :
8227 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14222 */
8228 : extern rtx_insn *gen_split_417 (rtx_insn *, rtx *);
8229 : rtx_insn *
8230 : gen_split_417 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8231 : {
8232 : if (dump_file)
8233 : fprintf (dump_file, "Splitting with gen_split_417 (i386.md:14222)\n");
8234 : start_sequence ();
8235 : #define FAIL return (end_sequence (), nullptr)
8236 : #define DONE return end_sequence ()
8237 : #line 14230 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8238 : operands[3] = gen_reg_rtx (SImode);
8239 : #undef DONE
8240 : #undef FAIL
8241 : static const uint8_t expand_encoding[] = {
8242 : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x11, 0x01, 0x01,
8243 : 0x1f, 0x01, 0x00, 0x4b, 0x11, 0x01, 0x03, 0x01,
8244 : 0x02
8245 : };
8246 : return complete_seq (expand_encoding, operands);
8247 : }
8248 :
8249 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14332 */
8250 : extern rtx_insn *gen_split_427 (rtx_insn *, rtx *);
8251 : rtx_insn *
8252 : gen_split_427 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8253 : {
8254 : if (dump_file)
8255 : fprintf (dump_file, "Splitting with gen_split_427 (i386.md:14332)\n");
8256 : start_sequence ();
8257 : #define FAIL return (end_sequence (), nullptr)
8258 : #define DONE return end_sequence ()
8259 : #line 14353 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8260 : {
8261 : /* Handle the case where INTVAL (operands[2]) == 0. */
8262 : if (operands[2] == const0_rtx)
8263 : {
8264 : if (!rtx_equal_p (operands[0], operands[1]))
8265 : emit_move_insn (operands[0], operands[1]);
8266 : else
8267 : emit_note (NOTE_INSN_DELETED);
8268 : DONE;
8269 : }
8270 : operands[0] = gen_lowpart (HImode, operands[0]);
8271 : operands[1] = gen_lowpart (HImode, operands[1]);
8272 : operands[2] = gen_int_mode (INTVAL (operands[2]) >> 8, QImode);
8273 : }
8274 : #undef DONE
8275 : #undef FAIL
8276 : static const uint8_t expand_encoding[] = {
8277 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
8278 : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
8279 : 0x4b, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
8280 : 0x01, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02,
8281 : 0x00, 0x05, 0x02, 0x11
8282 : };
8283 : return complete_seq (expand_encoding, operands);
8284 : }
8285 :
8286 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14414 */
8287 : extern rtx_insn *gen_peephole2_146 (rtx_insn *, rtx *);
8288 : rtx_insn *
8289 : gen_peephole2_146 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8290 : {
8291 : if (dump_file)
8292 : fprintf (dump_file, "Splitting with gen_peephole2_146 (i386.md:14414)\n");
8293 : start_sequence ();
8294 : static const uint8_t expand_encoding[] = {
8295 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8296 : };
8297 : return complete_seq (expand_encoding, operands);
8298 : }
8299 :
8300 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14414 */
8301 : extern rtx_insn *gen_peephole2_153 (rtx_insn *, rtx *);
8302 : rtx_insn *
8303 : gen_peephole2_153 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8304 : {
8305 : if (dump_file)
8306 : fprintf (dump_file, "Splitting with gen_peephole2_153 (i386.md:14414)\n");
8307 : start_sequence ();
8308 : static const uint8_t expand_encoding[] = {
8309 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8310 : };
8311 : return complete_seq (expand_encoding, operands);
8312 : }
8313 :
8314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14426 */
8315 : extern rtx_insn *gen_peephole2_163 (rtx_insn *, rtx *);
8316 : rtx_insn *
8317 : gen_peephole2_163 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8318 : {
8319 : if (dump_file)
8320 : fprintf (dump_file, "Splitting with gen_peephole2_163 (i386.md:14426)\n");
8321 : start_sequence ();
8322 : static const uint8_t expand_encoding[] = {
8323 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
8324 : 0x00, 0x05, 0x02, 0x11
8325 : };
8326 : return complete_seq (expand_encoding, operands);
8327 : }
8328 :
8329 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14455 */
8330 : extern rtx_insn *gen_split_442 (rtx_insn *, rtx *);
8331 : rtx_insn *
8332 : gen_split_442 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8333 : {
8334 : if (dump_file)
8335 : fprintf (dump_file, "Splitting with gen_split_442 (i386.md:14455)\n");
8336 : start_sequence ();
8337 : #define FAIL return (end_sequence (), nullptr)
8338 : #define DONE return end_sequence ()
8339 : #line 14466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8340 : {
8341 : split_double_concat (DImode, operands[0], operands[1],
8342 : gen_lowpart (SImode, operands[2]));
8343 : DONE;
8344 : }
8345 : #undef DONE
8346 : #undef FAIL
8347 : static const uint8_t expand_encoding[] = {
8348 : 0x01, 0x27, 0x00
8349 : };
8350 : return complete_seq (expand_encoding, operands);
8351 : }
8352 :
8353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14472 */
8354 : extern rtx_insn *gen_split_452 (rtx_insn *, rtx *);
8355 : rtx_insn *
8356 : gen_split_452 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8357 : {
8358 : if (dump_file)
8359 : fprintf (dump_file, "Splitting with gen_split_452 (i386.md:14472)\n");
8360 : start_sequence ();
8361 : #define FAIL return (end_sequence (), nullptr)
8362 : #define DONE return end_sequence ()
8363 : #line 14485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8364 : {
8365 : if (SSE_REG_P (operands[0]))
8366 : {
8367 : rtx tmp = gen_rtx_REG (V2DImode, REGNO (operands[0]));
8368 : emit_insn (gen_vec_concatv2di (tmp, operands[3], operands[1]));
8369 : }
8370 : else
8371 : split_double_concat (DImode, operands[0], operands[3], operands[1]);
8372 : DONE;
8373 : }
8374 : #undef DONE
8375 : #undef FAIL
8376 : static const uint8_t expand_encoding[] = {
8377 : 0x01, 0x27, 0x00
8378 : };
8379 : return complete_seq (expand_encoding, operands);
8380 : }
8381 :
8382 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14497 */
8383 : extern rtx_insn *gen_split_462 (rtx_insn *, rtx *);
8384 : rtx_insn *
8385 : gen_split_462 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8386 : {
8387 : if (dump_file)
8388 : fprintf (dump_file, "Splitting with gen_split_462 (i386.md:14497)\n");
8389 : start_sequence ();
8390 : #define FAIL return (end_sequence (), nullptr)
8391 : #define DONE return end_sequence ()
8392 : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8393 : {
8394 : split_double_concat (DImode, operands[0], operands[1], operands[2]);
8395 : DONE;
8396 : }
8397 : #undef DONE
8398 : #undef FAIL
8399 : static const uint8_t expand_encoding[] = {
8400 : 0x01, 0x27, 0x00
8401 : };
8402 : return complete_seq (expand_encoding, operands);
8403 : }
8404 :
8405 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14497 */
8406 : extern rtx_insn *gen_split_471 (rtx_insn *, rtx *);
8407 : rtx_insn *
8408 : gen_split_471 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8409 : {
8410 : if (dump_file)
8411 : fprintf (dump_file, "Splitting with gen_split_471 (i386.md:14497)\n");
8412 : start_sequence ();
8413 : #define FAIL return (end_sequence (), nullptr)
8414 : #define DONE return end_sequence ()
8415 : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8416 : {
8417 : split_double_concat (TImode, operands[0], operands[1], operands[2]);
8418 : DONE;
8419 : }
8420 : #undef DONE
8421 : #undef FAIL
8422 : static const uint8_t expand_encoding[] = {
8423 : 0x01, 0x27, 0x00
8424 : };
8425 : return complete_seq (expand_encoding, operands);
8426 : }
8427 :
8428 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14546 */
8429 : extern rtx_insn *gen_split_481 (rtx_insn *, rtx *);
8430 : rtx_insn *
8431 : gen_split_481 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8432 : {
8433 : if (dump_file)
8434 : fprintf (dump_file, "Splitting with gen_split_481 (i386.md:14546)\n");
8435 : start_sequence ();
8436 : #define FAIL return (end_sequence (), nullptr)
8437 : #define DONE return end_sequence ()
8438 : #line 14570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8439 : {
8440 : rtx op3 = simplify_subreg (SImode, operands[3], DImode, 0);
8441 : split_double_concat (DImode, operands[0], op3, operands[1]);
8442 : DONE;
8443 : }
8444 : #undef DONE
8445 : #undef FAIL
8446 : static const uint8_t expand_encoding[] = {
8447 : 0x01, 0x27, 0x00
8448 : };
8449 : return complete_seq (expand_encoding, operands);
8450 : }
8451 :
8452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14577 */
8453 : extern rtx_insn *gen_split_491 (rtx_insn *, rtx *);
8454 : rtx_insn *
8455 : gen_split_491 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8456 : {
8457 : if (dump_file)
8458 : fprintf (dump_file, "Splitting with gen_split_491 (i386.md:14577)\n");
8459 : start_sequence ();
8460 : #define FAIL return (end_sequence (), nullptr)
8461 : #define DONE return end_sequence ()
8462 : #line 14596 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8463 : {
8464 : rtx op2;
8465 : if (DImode == DImode)
8466 : op2 = gen_int_mode (INTVAL (operands[2]) >> 32, SImode);
8467 : else
8468 : op2 = gen_int_mode (CONST_WIDE_INT_ELT (operands[2], 1), SImode);
8469 : split_double_concat (DImode, operands[0], operands[1], op2);
8470 : DONE;
8471 : }
8472 : #undef DONE
8473 : #undef FAIL
8474 : static const uint8_t expand_encoding[] = {
8475 : 0x01, 0x27, 0x00
8476 : };
8477 : return complete_seq (expand_encoding, operands);
8478 : }
8479 :
8480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14618 */
8481 : extern rtx_insn *gen_split_496 (rtx_insn *, rtx *);
8482 : rtx_insn *
8483 : gen_split_496 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8484 : {
8485 : if (dump_file)
8486 : fprintf (dump_file, "Splitting with gen_split_496 (i386.md:14618)\n");
8487 : start_sequence ();
8488 : #define FAIL return (end_sequence (), nullptr)
8489 : #define DONE return end_sequence ()
8490 : #line 14639 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8491 : split_double_mode (DImode, &operands[0], 2, &operands[0], &operands[2]);
8492 : #undef DONE
8493 : #undef FAIL
8494 : static const uint8_t expand_encoding[] = {
8495 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
8496 : 0x1a, 0x08, 0x02, 0x01, 0x01, 0x27, 0x00, 0x29,
8497 : 0x1f, 0x01, 0x00, 0x3d, 0x11, 0x01, 0x01, 0x17,
8498 : 0x00, 0x02, 0x1f, 0x01, 0x02, 0x3b, 0x11, 0x3b,
8499 : 0x11, 0x66, 0x11, 0x30, 0x02, 0x11, 0x27, 0x00,
8500 : 0x01, 0x03, 0x27, 0x00, 0x05, 0x02, 0x11, 0x17,
8501 : 0x00, 0x02, 0x1f, 0x01, 0x02, 0x3d, 0x11, 0x01,
8502 : 0x02, 0x05, 0x02, 0x11
8503 : };
8504 : return complete_seq (expand_encoding, operands);
8505 : }
8506 :
8507 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14901 */
8508 : rtx
8509 : gen_negvhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8510 : {
8511 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8512 : start_sequence ();
8513 : {
8514 : #define FAIL return (end_sequence (), nullptr)
8515 : #define DONE return end_sequence ()
8516 : #line 14913 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8517 : {
8518 : operands[3]
8519 : = gen_int_mode (HOST_WIDE_INT_1U << (GET_MODE_BITSIZE (HImode) - 1),
8520 : HImode);
8521 : }
8522 : #undef DONE
8523 : #undef FAIL
8524 : }
8525 : static const uint8_t expand_encoding[] = {
8526 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
8527 : 0x1a, 0x09, 0x02, 0x01, 0x01, 0x01, 0x03, 0x29,
8528 : 0x1f, 0x01, 0x00, 0x3d, 0x10, 0x01, 0x01, 0x1f,
8529 : 0x2f, 0x39, 0x00, 0x5d, 0x00, 0x30, 0x09, 0x11,
8530 : 0x27, 0x00, 0x37, 0x00, 0x01, 0x02, 0x2f
8531 : };
8532 : return complete_seq (expand_encoding, operands);
8533 : }
8534 :
8535 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14958 */
8536 : rtx
8537 : gen_abshi2 (const rtx operand0, const rtx operand1)
8538 : {
8539 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8540 : start_sequence ();
8541 : {
8542 : #define FAIL return (end_sequence (), nullptr)
8543 : #define DONE return end_sequence ()
8544 : #line 14966 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8545 : {
8546 : if (TARGET_EXPAND_ABS)
8547 : {
8548 : machine_mode mode = HImode;
8549 : operands[1] = force_reg (mode, operands[1]);
8550 :
8551 : /* Generate rtx abs using:
8552 : abs (x) = (((signed) x >> (W-1)) ^ x) - ((signed) x >> (W-1)) */
8553 :
8554 : rtx shift_amount = gen_int_mode (GET_MODE_PRECISION (mode) - 1, QImode);
8555 : rtx shift_dst = expand_simple_binop (mode, ASHIFTRT, operands[1],
8556 : shift_amount, NULL_RTX,
8557 : 0, OPTAB_DIRECT);
8558 : rtx xor_dst = expand_simple_binop (mode, XOR, shift_dst, operands[1],
8559 : operands[0], 0, OPTAB_DIRECT);
8560 : rtx minus_dst = expand_simple_binop (mode, MINUS, xor_dst, shift_dst,
8561 : operands[0], 0, OPTAB_DIRECT);
8562 : if (!rtx_equal_p (minus_dst, operands[0]))
8563 : emit_move_insn (operands[0], minus_dst);
8564 : DONE;
8565 : }
8566 : }
8567 : #undef DONE
8568 : #undef FAIL
8569 : }
8570 : static const uint8_t expand_encoding[] = {
8571 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x7b,
8572 : 0x10, 0x01, 0x01, 0x05, 0x02, 0x11
8573 : };
8574 : return complete_seq (expand_encoding, operands);
8575 : }
8576 :
8577 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15076 */
8578 : extern rtx_insn *gen_split_509 (rtx_insn *, rtx *);
8579 : rtx_insn *
8580 : gen_split_509 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8581 : {
8582 : if (dump_file)
8583 : fprintf (dump_file, "Splitting with gen_split_509 (i386.md:15076)\n");
8584 : start_sequence ();
8585 : #define FAIL return (end_sequence (), nullptr)
8586 : #define DONE return end_sequence ()
8587 : #line 15098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8588 : {
8589 : operands[1] = force_reg (SImode, operands[1]);
8590 : operands[2] = gen_reg_rtx (SImode);
8591 : }
8592 : #undef DONE
8593 : #undef FAIL
8594 : static const uint8_t expand_encoding[] = {
8595 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11,
8596 : 0x3a, 0x04, 0x3d, 0x11, 0x01, 0x01, 0x27, 0x00,
8597 : 0x1f, 0x01, 0x02, 0x3d, 0x11, 0x01, 0x01, 0x1f,
8598 : 0x01, 0x00, 0x39, 0x11, 0x5e, 0x00, 0x30, 0x04,
8599 : 0x11, 0x27, 0x00, 0x01, 0x02, 0x01, 0x01
8600 : };
8601 : return complete_seq (expand_encoding, operands);
8602 : }
8603 :
8604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15161 */
8605 : extern rtx_insn *gen_split_517 (rtx_insn *, rtx *);
8606 : rtx_insn *
8607 : gen_split_517 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8608 : {
8609 : if (dump_file)
8610 : fprintf (dump_file, "Splitting with gen_split_517 (i386.md:15161)\n");
8611 : start_sequence ();
8612 : #define FAIL return (end_sequence (), nullptr)
8613 : #define DONE return end_sequence ()
8614 : #line 15172 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8615 : {
8616 : if (TARGET_AVX)
8617 : {
8618 : if (MEM_P (operands[1]))
8619 : std::swap (operands[1], operands[2]);
8620 : }
8621 : else
8622 : {
8623 : if (operands_match_p (operands[0], operands[2]))
8624 : std::swap (operands[1], operands[2]);
8625 : }
8626 : }
8627 : #undef DONE
8628 : #undef FAIL
8629 : static const uint8_t expand_encoding[] = {
8630 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x30, 0x01, 0x01,
8631 : 0x01, 0x02
8632 : };
8633 : return complete_seq (expand_encoding, operands);
8634 : }
8635 :
8636 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15214 */
8637 : extern rtx_insn *gen_split_525 (rtx_insn *, rtx *);
8638 : rtx_insn *
8639 : gen_split_525 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8640 : {
8641 : if (dump_file)
8642 : fprintf (dump_file, "Splitting with gen_split_525 (i386.md:15214)\n");
8643 : start_sequence ();
8644 : #define FAIL return (end_sequence (), nullptr)
8645 : #define DONE return end_sequence ()
8646 : #line 15220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8647 : ix86_split_fp_absneg_operator (NEG, SFmode, operands); DONE;
8648 : #undef DONE
8649 : #undef FAIL
8650 : static const uint8_t expand_encoding[] = {
8651 : 0x01, 0x27, 0x00
8652 : };
8653 : return complete_seq (expand_encoding, operands);
8654 : }
8655 :
8656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15259 */
8657 : extern rtx_insn *gen_split_535 (rtx_insn *, rtx *);
8658 : rtx_insn *
8659 : gen_split_535 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8660 : {
8661 : if (dump_file)
8662 : fprintf (dump_file, "Splitting with gen_split_535 (i386.md:15259)\n");
8663 : start_sequence ();
8664 : #define FAIL return (end_sequence (), nullptr)
8665 : #define DONE return end_sequence ()
8666 : #line 15269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8667 : {
8668 : machine_mode mode = DFmode;
8669 : machine_mode vmode = V2DFmode;
8670 :
8671 : operands[0] = lowpart_subreg (vmode, operands[0], mode);
8672 : operands[1] = lowpart_subreg (vmode, operands[1], mode);
8673 :
8674 : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
8675 : std::swap (operands[1], operands[2]);
8676 : }
8677 : #undef DONE
8678 : #undef FAIL
8679 : static const uint8_t expand_encoding[] = {
8680 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6c, 0x01, 0x01,
8681 : 0x01, 0x02
8682 : };
8683 : return complete_seq (expand_encoding, operands);
8684 : }
8685 :
8686 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15333 */
8687 : rtx
8688 : gen_copysigntf3 (const rtx operand0, const rtx operand1, const rtx operand2)
8689 : {
8690 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8691 : start_sequence ();
8692 : {
8693 : #define FAIL _Pragma ("GCC error \"copysigntf3 cannot FAIL\"") (void)0
8694 : #define DONE return end_sequence ()
8695 : #line 15340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8696 : ix86_expand_copysign (operands); DONE;
8697 : #undef DONE
8698 : #undef FAIL
8699 : }
8700 : static const uint8_t expand_encoding[] = {
8701 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
8702 : };
8703 : return complete_seq (expand_encoding, operands);
8704 : }
8705 :
8706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15367 */
8707 : extern rtx_insn *gen_split_546 (rtx_insn *, rtx *);
8708 : rtx_insn *
8709 : gen_split_546 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8710 : {
8711 : if (dump_file)
8712 : fprintf (dump_file, "Splitting with gen_split_546 (i386.md:15367)\n");
8713 : start_sequence ();
8714 : #define FAIL return (end_sequence (), nullptr)
8715 : #define DONE return end_sequence ()
8716 : #line 15377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8717 : split_double_mode (DImode, &operands[0], 2, &operands[0], &operands[2]);
8718 : #undef DONE
8719 : #undef FAIL
8720 : static const uint8_t expand_encoding[] = {
8721 : 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x11, 0x01, 0x01,
8722 : 0x1f, 0x01, 0x02, 0x4c, 0x11, 0x01, 0x03
8723 : };
8724 : return complete_seq (expand_encoding, operands);
8725 : }
8726 :
8727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15521 */
8728 : extern rtx_insn *gen_split_556 (rtx_insn *, rtx *);
8729 : rtx_insn *
8730 : gen_split_556 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8731 : {
8732 : if (dump_file)
8733 : fprintf (dump_file, "Splitting with gen_split_556 (i386.md:15521)\n");
8734 : start_sequence ();
8735 : #define FAIL return (end_sequence (), nullptr)
8736 : #define DONE return end_sequence ()
8737 : #line 15543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8738 :
8739 : #undef DONE
8740 : #undef FAIL
8741 : static const uint8_t expand_encoding[] = {
8742 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
8743 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8744 : 0x27, 0x08, 0x27, 0x08, 0x1f, 0x81, 0x06, 0x11,
8745 : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x4c, 0x11,
8746 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8747 : 0x08
8748 : };
8749 : return complete_seq (expand_encoding, operands);
8750 : }
8751 :
8752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15705 */
8753 : extern rtx_insn *gen_split_562 (rtx_insn *, rtx *);
8754 : rtx_insn *
8755 : gen_split_562 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8756 : {
8757 : if (dump_file)
8758 : fprintf (dump_file, "Splitting with gen_split_562 (i386.md:15705)\n");
8759 : start_sequence ();
8760 : #define FAIL return (end_sequence (), nullptr)
8761 : #define DONE return end_sequence ()
8762 : #line 15712 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8763 : {
8764 : if (TARGET_APX_NDD
8765 : && !rtx_equal_p (operands[0], operands[1])
8766 : && REG_P (operands[1]))
8767 : ix86_split_ashl_ndd (operands, NULL_RTX);
8768 : else
8769 : ix86_split_ashl (operands, NULL_RTX, DImode);
8770 : DONE;
8771 : }
8772 : #undef DONE
8773 : #undef FAIL
8774 : static const uint8_t expand_encoding[] = {
8775 : 0x01, 0x27, 0x00
8776 : };
8777 : return complete_seq (expand_encoding, operands);
8778 : }
8779 :
8780 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15746 */
8781 : extern rtx_insn *gen_split_566 (rtx_insn *, rtx *);
8782 : rtx_insn *
8783 : gen_split_566 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8784 : {
8785 : if (dump_file)
8786 : fprintf (dump_file, "Splitting with gen_split_566 (i386.md:15746)\n");
8787 : start_sequence ();
8788 : #define FAIL return (end_sequence (), nullptr)
8789 : #define DONE return end_sequence ()
8790 : #line 15757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8791 : {
8792 : split_double_mode (TImode, &operands[0], 1, &operands[0], &operands[3]);
8793 : int bits = INTVAL (operands[2]) - (8 * BITS_PER_UNIT);
8794 : bool op_equal_p = rtx_equal_p (operands[3], operands[1]);
8795 : if (bits == 0)
8796 : {
8797 : if (!op_equal_p)
8798 : emit_move_insn (operands[3], operands[1]);
8799 : }
8800 : else
8801 : {
8802 : if (!op_equal_p && !TARGET_APX_NDD)
8803 : emit_move_insn (operands[3], operands[1]);
8804 : rtx op_tmp = TARGET_APX_NDD ? operands[1] : operands[3];
8805 : emit_insn (gen_ashldi3 (operands[3], op_tmp, GEN_INT (bits)));
8806 : }
8807 : ix86_expand_clear (operands[0]);
8808 : DONE;
8809 : }
8810 : #undef DONE
8811 : #undef FAIL
8812 : static const uint8_t expand_encoding[] = {
8813 : 0x01, 0x27, 0x00
8814 : };
8815 : return complete_seq (expand_encoding, operands);
8816 : }
8817 :
8818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16254 */
8819 : rtx
8820 : gen_x86_shiftsi_adj_2 (const rtx operand0, const rtx operand1, const rtx operand2)
8821 : {
8822 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8823 : start_sequence ();
8824 : {
8825 : #define FAIL return (end_sequence (), nullptr)
8826 : #define DONE return end_sequence ()
8827 : #line 16259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8828 : {
8829 : rtx_code_label *label = gen_label_rtx ();
8830 : rtx tmp;
8831 :
8832 : emit_insn (gen_testqi_ccz_1 (operands[2],
8833 : GEN_INT (GET_MODE_BITSIZE (SImode))));
8834 :
8835 : tmp = gen_rtx_REG (CCZmode, FLAGS_REG);
8836 : tmp = gen_rtx_EQ (VOIDmode, tmp, const0_rtx);
8837 : tmp = gen_rtx_IF_THEN_ELSE (VOIDmode, tmp,
8838 : gen_rtx_LABEL_REF (VOIDmode, label),
8839 : pc_rtx);
8840 : tmp = emit_jump_insn (gen_rtx_SET (pc_rtx, tmp));
8841 : JUMP_LABEL (tmp) = label;
8842 :
8843 : emit_move_insn (operands[0], operands[1]);
8844 : ix86_expand_clear (operands[1]);
8845 :
8846 : emit_label (label);
8847 : LABEL_NUSES (label) = 1;
8848 :
8849 : DONE;
8850 : }
8851 : #undef DONE
8852 : #undef FAIL
8853 : }
8854 : static const uint8_t expand_encoding[] = {
8855 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
8856 : 0x01, 0x20, 0x00, 0x01, 0x02
8857 : };
8858 : return complete_seq (expand_encoding, operands);
8859 : }
8860 :
8861 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16665 */
8862 : extern rtx_insn *gen_split_584 (rtx_insn *, rtx *);
8863 : rtx_insn *
8864 : gen_split_584 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8865 : {
8866 : if (dump_file)
8867 : fprintf (dump_file, "Splitting with gen_split_584 (i386.md:16665)\n");
8868 : start_sequence ();
8869 : #define FAIL return (end_sequence (), nullptr)
8870 : #define DONE return end_sequence ()
8871 : #line 16674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8872 : {
8873 : if (HImode != SImode)
8874 : {
8875 : operands[0] = gen_lowpart (SImode, operands[0]);
8876 : operands[1] = gen_lowpart (SImode, operands[1]);
8877 : }
8878 : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
8879 : }
8880 : #undef DONE
8881 : #undef FAIL
8882 : static const uint8_t expand_encoding[] = {
8883 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x11, 0x01, 0x01,
8884 : 0x01, 0x02
8885 : };
8886 : return complete_seq (expand_encoding, operands);
8887 : }
8888 :
8889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16881 */
8890 : extern rtx_insn *gen_split_594 (rtx_insn *, rtx *);
8891 : rtx_insn *
8892 : gen_split_594 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8893 : {
8894 : if (dump_file)
8895 : fprintf (dump_file, "Splitting with gen_split_594 (i386.md:16881)\n");
8896 : start_sequence ();
8897 : #define FAIL return (end_sequence (), nullptr)
8898 : #define DONE return end_sequence ()
8899 : #line 16928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8900 :
8901 : #undef DONE
8902 : #undef FAIL
8903 : static const uint8_t expand_encoding[] = {
8904 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8905 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8906 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8907 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8908 : 0x08, 0x32, 0x12, 0x4d, 0x0f, 0x32, 0x0f, 0x81,
8909 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8910 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
8911 : };
8912 : return complete_seq (expand_encoding, operands);
8913 : }
8914 :
8915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16958 */
8916 : extern rtx_insn *gen_split_597 (rtx_insn *, rtx *);
8917 : rtx_insn *
8918 : gen_split_597 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8919 : {
8920 : if (dump_file)
8921 : fprintf (dump_file, "Splitting with gen_split_597 (i386.md:16958)\n");
8922 : start_sequence ();
8923 : #define FAIL return (end_sequence (), nullptr)
8924 : #define DONE return end_sequence ()
8925 : #line 16986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8926 : {
8927 : if ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) != 0)
8928 : {
8929 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
8930 : operands[2] = gen_lowpart (QImode, operands[2]);
8931 : emit_insn (gen_lshrti3_doubleword (operands[0], operands[1],
8932 : operands[2]));
8933 : DONE;
8934 : }
8935 :
8936 : split_double_mode (TImode, &operands[0], 2, &operands[4], &operands[6]);
8937 :
8938 : operands[8] = GEN_INT (8 * BITS_PER_UNIT - 1);
8939 : operands[9] = GEN_INT (8 * BITS_PER_UNIT);
8940 :
8941 : if ((INTVAL (operands[3]) & ((8 * BITS_PER_UNIT) - 1))
8942 : != ((8 * BITS_PER_UNIT) - 1))
8943 : {
8944 : rtx xops[3];
8945 : xops[0] = gen_reg_rtx (GET_MODE (operands[2]));
8946 : xops[1] = operands[2];
8947 : xops[2] = GEN_INT (INTVAL (operands[3])
8948 : & ((8 * BITS_PER_UNIT) - 1));
8949 : ix86_expand_binary_operator (AND, GET_MODE (operands[2]), xops);
8950 : operands[2] = xops[0];
8951 : }
8952 :
8953 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
8954 : operands[2] = gen_lowpart (QImode, operands[2]);
8955 :
8956 : if (!rtx_equal_p (operands[4], operands[5]))
8957 : emit_move_insn (operands[4], operands[5]);
8958 : }
8959 : #undef DONE
8960 : #undef FAIL
8961 : static const uint8_t expand_encoding[] = {
8962 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4a,
8963 : 0x12, 0x50, 0x12, 0x01, 0x04, 0x49, 0x0f, 0x01,
8964 : 0x02, 0x01, 0x08, 0x32, 0x12, 0x4d, 0x13, 0x6f,
8965 : 0x13, 0x01, 0x07, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8966 : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8967 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x50,
8968 : 0x12, 0x01, 0x07, 0x01, 0x02, 0x05, 0x02, 0x11
8969 : };
8970 : return complete_seq (expand_encoding, operands);
8971 : }
8972 :
8973 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17116 */
8974 : extern rtx_insn *gen_split_609 (rtx_insn *, rtx *);
8975 : rtx_insn *
8976 : gen_split_609 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8977 : {
8978 : if (dump_file)
8979 : fprintf (dump_file, "Splitting with gen_split_609 (i386.md:17116)\n");
8980 : start_sequence ();
8981 : #define FAIL return (end_sequence (), nullptr)
8982 : #define DONE return end_sequence ()
8983 : #line 17129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8984 : {
8985 : split_double_mode (TImode, &operands[1], 1, &operands[1], &operands[3]);
8986 : operands[4] = GEN_INT ((8 * BITS_PER_UNIT) - INTVAL (operands[2]));
8987 : if (!rtx_equal_p (operands[0], operands[1]))
8988 : emit_move_insn (operands[0], operands[1]);
8989 : }
8990 : #undef DONE
8991 : #undef FAIL
8992 : static const uint8_t expand_encoding[] = {
8993 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x50, 0x12,
8994 : 0x01, 0x00, 0x01, 0x02, 0x32, 0x12, 0x4d, 0x13,
8995 : 0x6f, 0x13, 0x01, 0x03, 0x01, 0x04, 0x00
8996 : };
8997 : return complete_seq (expand_encoding, operands);
8998 : }
8999 :
9000 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17469 */
9001 : extern rtx_insn *gen_split_619 (rtx_insn *, rtx *);
9002 : rtx_insn *
9003 : gen_split_619 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
9004 : {
9005 : if (dump_file)
9006 : fprintf (dump_file, "Splitting with gen_split_619 (i386.md:17469)\n");
9007 : start_sequence ();
9008 : #define FAIL return (end_sequence (), nullptr)
9009 : #define DONE return end_sequence ()
9010 : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9011 : {
9012 : if (rtx_equal_p (operands[4], operands[0]))
9013 : {
9014 : operands[1] = force_reg (SImode, operands[1]);
9015 : emit_insn (gen_x86_shrd_1_nf (operands[0], operands[1],
9016 : operands[2], operands[3]));
9017 : }
9018 : else if (rtx_equal_p (operands[1], operands[0]))
9019 : {
9020 : operands[4] = force_reg (SImode, operands[4]);
9021 : emit_insn (gen_x86_shld_1_nf (operands[0], operands[4],
9022 : operands[3], operands[2]));
9023 : }
9024 : else if (TARGET_APX_NDD)
9025 : {
9026 : rtx tmp = gen_reg_rtx (SImode);
9027 : if (MEM_P (operands[4]))
9028 : {
9029 : operands[1] = force_reg (SImode, operands[1]);
9030 : emit_insn (gen_x86_shrd_ndd_1_nf (tmp, operands[4], operands[1],
9031 : operands[2], operands[3]));
9032 : }
9033 : else if (MEM_P (operands[1]))
9034 : emit_insn (gen_x86_shld_ndd_1_nf (tmp, operands[1], operands[4],
9035 : operands[3], operands[2]));
9036 : else
9037 : emit_insn (gen_x86_shrd_ndd_1_nf (tmp, operands[4], operands[1],
9038 : operands[2], operands[3]));
9039 : emit_move_insn (operands[0], tmp);
9040 : }
9041 : else
9042 : {
9043 : operands[1] = force_reg (SImode, operands[1]);
9044 : rtx tmp = gen_reg_rtx (SImode);
9045 : emit_move_insn (tmp, operands[4]);
9046 : emit_insn (gen_x86_shrd_1_nf (tmp, operands[1], operands[2],
9047 : operands[3]));
9048 : emit_move_insn (operands[0], tmp);
9049 : }
9050 : DONE;
9051 : }
9052 : #undef DONE
9053 : #undef FAIL
9054 : static const uint8_t expand_encoding[] = {
9055 : 0x01, 0x27, 0x00
9056 : };
9057 : return complete_seq (expand_encoding, operands);
9058 : }
9059 :
9060 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18018 */
9061 : extern rtx_insn *gen_split_634 (rtx_insn *, rtx *);
9062 : rtx_insn *
9063 : gen_split_634 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9064 : {
9065 : if (dump_file)
9066 : fprintf (dump_file, "Splitting with gen_split_634 (i386.md:18018)\n");
9067 : start_sequence ();
9068 : #define FAIL return (end_sequence (), nullptr)
9069 : #define DONE return end_sequence ()
9070 : #line 18041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9071 :
9072 : #undef DONE
9073 : #undef FAIL
9074 : static const uint8_t expand_encoding[] = {
9075 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
9076 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
9077 : 0x50, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
9078 : 0x11
9079 : };
9080 : return complete_seq (expand_encoding, operands);
9081 : }
9082 :
9083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18214 */
9084 : extern rtx_insn *gen_split_644 (rtx_insn *, rtx *);
9085 : rtx_insn *
9086 : gen_split_644 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9087 : {
9088 : if (dump_file)
9089 : fprintf (dump_file, "Splitting with gen_split_644 (i386.md:18214)\n");
9090 : start_sequence ();
9091 : #define FAIL return (end_sequence (), nullptr)
9092 : #define DONE return end_sequence ()
9093 : #line 18234 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9094 : {
9095 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9096 : operands[2] = gen_lowpart (QImode, operands[2]);
9097 : }
9098 : #undef DONE
9099 : #undef FAIL
9100 : static const uint8_t expand_encoding[] = {
9101 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
9102 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9103 : };
9104 : return complete_seq (expand_encoding, operands);
9105 : }
9106 :
9107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18240 */
9108 : extern rtx_insn *gen_split_651 (rtx_insn *, rtx *);
9109 : rtx_insn *
9110 : gen_split_651 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9111 : {
9112 : if (dump_file)
9113 : fprintf (dump_file, "Splitting with gen_split_651 (i386.md:18240)\n");
9114 : start_sequence ();
9115 : #define FAIL return (end_sequence (), nullptr)
9116 : #define DONE return end_sequence ()
9117 : #line 18259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9118 :
9119 : #undef DONE
9120 : #undef FAIL
9121 : static const uint8_t expand_encoding[] = {
9122 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9123 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9124 : };
9125 : return complete_seq (expand_encoding, operands);
9126 : }
9127 :
9128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18262 */
9129 : extern rtx_insn *gen_split_661 (rtx_insn *, rtx *);
9130 : rtx_insn *
9131 : gen_split_661 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9132 : {
9133 : if (dump_file)
9134 : fprintf (dump_file, "Splitting with gen_split_661 (i386.md:18262)\n");
9135 : start_sequence ();
9136 : #define FAIL return (end_sequence (), nullptr)
9137 : #define DONE return end_sequence ()
9138 : #line 18281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9139 : {
9140 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9141 : operands[2] = gen_lowpart (QImode, operands[2]);
9142 : }
9143 : #undef DONE
9144 : #undef FAIL
9145 : static const uint8_t expand_encoding[] = {
9146 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4f,
9147 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9148 : };
9149 : return complete_seq (expand_encoding, operands);
9150 : }
9151 :
9152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18342 */
9153 : extern rtx_insn *gen_split_675 (rtx_insn *, rtx *);
9154 : rtx_insn *
9155 : gen_split_675 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9156 : {
9157 : if (dump_file)
9158 : fprintf (dump_file, "Splitting with gen_split_675 (i386.md:18342)\n");
9159 : start_sequence ();
9160 : #define FAIL return (end_sequence (), nullptr)
9161 : #define DONE return end_sequence ()
9162 : #line 18362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9163 : {
9164 : HOST_WIDE_INT cnt = INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1);
9165 :
9166 : operands[4] = gen_reg_rtx (QImode);
9167 :
9168 : rtx (*insn)(rtx, rtx) = (cnt == 0) ? gen_negqi2 : gen_one_cmplqi2;
9169 : emit_insn (insn (operands[4], operands[2]));
9170 : }
9171 : #undef DONE
9172 : #undef FAIL
9173 : static const uint8_t expand_encoding[] = {
9174 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9175 : 0x11, 0x01, 0x01, 0x01, 0x04, 0x05, 0x02, 0x11
9176 : };
9177 : return complete_seq (expand_encoding, operands);
9178 : }
9179 :
9180 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18372 */
9181 : extern rtx_insn *gen_split_680 (rtx_insn *, rtx *);
9182 : rtx_insn *
9183 : gen_split_680 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9184 : {
9185 : if (dump_file)
9186 : fprintf (dump_file, "Splitting with gen_split_680 (i386.md:18372)\n");
9187 : start_sequence ();
9188 : #define FAIL return (end_sequence (), nullptr)
9189 : #define DONE return end_sequence ()
9190 : #line 18389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9191 : split_double_mode (DImode, &operands[0], 1, &operands[0], &operands[4]);
9192 : #undef DONE
9193 : #undef FAIL
9194 : static const uint8_t expand_encoding[] = {
9195 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4d,
9196 : 0x11, 0x01, 0x04, 0x01, 0x02, 0x05, 0x02, 0x11,
9197 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4f, 0x11,
9198 : 0x01, 0x04, 0x01, 0x02, 0x05, 0x02, 0x11
9199 : };
9200 : return complete_seq (expand_encoding, operands);
9201 : }
9202 :
9203 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18513 */
9204 : rtx
9205 : gen_rotrqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
9206 : {
9207 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9208 : start_sequence ();
9209 : {
9210 : #define FAIL return (end_sequence (), nullptr)
9211 : #define DONE return end_sequence ()
9212 : #line 18518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9213 : {
9214 : ix86_expand_binary_operator (ROTATERT, QImode, operands, TARGET_APX_NDD);
9215 : DONE;
9216 : }
9217 : #undef DONE
9218 : #undef FAIL
9219 : }
9220 : static const uint8_t expand_encoding[] = {
9221 : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x0f, 0x01, 0x01,
9222 : 0x01, 0x02
9223 : };
9224 : return complete_seq (expand_encoding, operands);
9225 : }
9226 :
9227 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18524 */
9228 : extern rtx_insn *gen_split_686 (rtx_insn *, rtx *);
9229 : rtx_insn *
9230 : gen_split_686 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9231 : {
9232 : if (dump_file)
9233 : fprintf (dump_file, "Splitting with gen_split_686 (i386.md:18524)\n");
9234 : start_sequence ();
9235 : #define FAIL return (end_sequence (), nullptr)
9236 : #define DONE return end_sequence ()
9237 : #line 18544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9238 : {
9239 : operands[2] = force_lowpart_subreg (QImode, operands[2],
9240 : GET_MODE (operands[2]));
9241 : if (TARGET_APX_NF)
9242 : {
9243 : emit_move_insn (operands[0],
9244 : gen_rtx_ROTATE (HImode, operands[1],
9245 : operands[2]));
9246 : DONE;
9247 : }
9248 : }
9249 : #undef DONE
9250 : #undef FAIL
9251 : static const uint8_t expand_encoding[] = {
9252 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9253 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9254 : };
9255 : return complete_seq (expand_encoding, operands);
9256 : }
9257 :
9258 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18556 */
9259 : extern rtx_insn *gen_split_696 (rtx_insn *, rtx *);
9260 : rtx_insn *
9261 : gen_split_696 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9262 : {
9263 : if (dump_file)
9264 : fprintf (dump_file, "Splitting with gen_split_696 (i386.md:18556)\n");
9265 : start_sequence ();
9266 : #define FAIL return (end_sequence (), nullptr)
9267 : #define DONE return end_sequence ()
9268 : #line 18571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9269 : operands[5] = gen_reg_rtx (SImode);
9270 : #undef DONE
9271 : #undef FAIL
9272 : static const uint8_t expand_encoding[] = {
9273 : 0x02, 0x1f, 0x01, 0x05, 0x01, 0x01, 0x1f, 0x01,
9274 : 0x00, 0x4e, 0x11, 0x01, 0x05, 0x32, 0x0f, 0x02,
9275 : 0x04, 0x01, 0x02, 0x01, 0x03, 0x00
9276 : };
9277 : return complete_seq (expand_encoding, operands);
9278 : }
9279 :
9280 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18573 */
9281 : extern rtx_insn *gen_split_706 (rtx_insn *, rtx *);
9282 : rtx_insn *
9283 : gen_split_706 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9284 : {
9285 : if (dump_file)
9286 : fprintf (dump_file, "Splitting with gen_split_706 (i386.md:18573)\n");
9287 : start_sequence ();
9288 : #define FAIL return (end_sequence (), nullptr)
9289 : #define DONE return end_sequence ()
9290 : #line 18592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9291 : {
9292 : if (TARGET_APX_NF)
9293 : {
9294 : emit_move_insn (operands[0],
9295 : gen_rtx_ROTATE (DImode, operands[1],
9296 : operands[2]));
9297 : DONE;
9298 : }
9299 : }
9300 : #undef DONE
9301 : #undef FAIL
9302 : static const uint8_t expand_encoding[] = {
9303 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9304 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9305 : };
9306 : return complete_seq (expand_encoding, operands);
9307 : }
9308 :
9309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18617 */
9310 : extern rtx_insn *gen_split_718 (rtx_insn *, rtx *);
9311 : rtx_insn *
9312 : gen_split_718 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9313 : {
9314 : if (dump_file)
9315 : fprintf (dump_file, "Splitting with gen_split_718 (i386.md:18617)\n");
9316 : start_sequence ();
9317 : #define FAIL return (end_sequence (), nullptr)
9318 : #define DONE return end_sequence ()
9319 : #line 18635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9320 : {
9321 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9322 : operands[2] = gen_lowpart (QImode, operands[2]);
9323 : }
9324 : #undef DONE
9325 : #undef FAIL
9326 : static const uint8_t expand_encoding[] = {
9327 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9328 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9329 : };
9330 : return complete_seq (expand_encoding, operands);
9331 : }
9332 :
9333 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18640 */
9334 : extern rtx_insn *gen_split_728 (rtx_insn *, rtx *);
9335 : rtx_insn *
9336 : gen_split_728 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9337 : {
9338 : if (dump_file)
9339 : fprintf (dump_file, "Splitting with gen_split_728 (i386.md:18640)\n");
9340 : start_sequence ();
9341 : #define FAIL return (end_sequence (), nullptr)
9342 : #define DONE return end_sequence ()
9343 : #line 18652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9344 : operands[4] = gen_reg_rtx (SImode);
9345 : #undef DONE
9346 : #undef FAIL
9347 : static const uint8_t expand_encoding[] = {
9348 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9349 : 0x00, 0x4e, 0x11, 0x01, 0x04, 0x32, 0x0f, 0x01,
9350 : 0x02, 0x00
9351 : };
9352 : return complete_seq (expand_encoding, operands);
9353 : }
9354 :
9355 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18654 */
9356 : extern rtx_insn *gen_split_738 (rtx_insn *, rtx *);
9357 : rtx_insn *
9358 : gen_split_738 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9359 : {
9360 : if (dump_file)
9361 : fprintf (dump_file, "Splitting with gen_split_738 (i386.md:18654)\n");
9362 : start_sequence ();
9363 : #define FAIL return (end_sequence (), nullptr)
9364 : #define DONE return end_sequence ()
9365 : #line 18671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9366 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9367 : #undef DONE
9368 : #undef FAIL
9369 : static const uint8_t expand_encoding[] = {
9370 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9371 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9372 : };
9373 : return complete_seq (expand_encoding, operands);
9374 : }
9375 :
9376 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18686 */
9377 : extern rtx_insn *gen_split_748 (rtx_insn *, rtx *);
9378 : rtx_insn *
9379 : gen_split_748 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9380 : {
9381 : if (dump_file)
9382 : fprintf (dump_file, "Splitting with gen_split_748 (i386.md:18686)\n");
9383 : start_sequence ();
9384 : #define FAIL return (end_sequence (), nullptr)
9385 : #define DONE return end_sequence ()
9386 : #line 18704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9387 : {
9388 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9389 : operands[2] = gen_lowpart (QImode, operands[2]);
9390 : }
9391 : #undef DONE
9392 : #undef FAIL
9393 : static const uint8_t expand_encoding[] = {
9394 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9395 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9396 : };
9397 : return complete_seq (expand_encoding, operands);
9398 : }
9399 :
9400 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18709 */
9401 : extern rtx_insn *gen_split_758 (rtx_insn *, rtx *);
9402 : rtx_insn *
9403 : gen_split_758 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9404 : {
9405 : if (dump_file)
9406 : fprintf (dump_file, "Splitting with gen_split_758 (i386.md:18709)\n");
9407 : start_sequence ();
9408 : #define FAIL return (end_sequence (), nullptr)
9409 : #define DONE return end_sequence ()
9410 : #line 18721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9411 : operands[4] = gen_reg_rtx (HImode);
9412 : #undef DONE
9413 : #undef FAIL
9414 : static const uint8_t expand_encoding[] = {
9415 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9416 : 0x00, 0x51, 0x10, 0x01, 0x04, 0x32, 0x0f, 0x01,
9417 : 0x02, 0x00
9418 : };
9419 : return complete_seq (expand_encoding, operands);
9420 : }
9421 :
9422 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18723 */
9423 : extern rtx_insn *gen_split_768 (rtx_insn *, rtx *);
9424 : rtx_insn *
9425 : gen_split_768 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9426 : {
9427 : if (dump_file)
9428 : fprintf (dump_file, "Splitting with gen_split_768 (i386.md:18723)\n");
9429 : start_sequence ();
9430 : #define FAIL return (end_sequence (), nullptr)
9431 : #define DONE return end_sequence ()
9432 : #line 18740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9433 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9434 : #undef DONE
9435 : #undef FAIL
9436 : static const uint8_t expand_encoding[] = {
9437 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9438 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9439 : };
9440 : return complete_seq (expand_encoding, operands);
9441 : }
9442 :
9443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18742 */
9444 : extern rtx_insn *gen_split_778 (rtx_insn *, rtx *);
9445 : rtx_insn *
9446 : gen_split_778 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9447 : {
9448 : if (dump_file)
9449 : fprintf (dump_file, "Splitting with gen_split_778 (i386.md:18742)\n");
9450 : start_sequence ();
9451 : #define FAIL return (end_sequence (), nullptr)
9452 : #define DONE return end_sequence ()
9453 : #line 18753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9454 : operands[4] = gen_reg_rtx (DImode);
9455 : #undef DONE
9456 : #undef FAIL
9457 : static const uint8_t expand_encoding[] = {
9458 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9459 : 0x00, 0x51, 0x12, 0x01, 0x04, 0x01, 0x02
9460 : };
9461 : return complete_seq (expand_encoding, operands);
9462 : }
9463 :
9464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18927 */
9465 : extern rtx_insn *gen_split_788 (rtx_insn *, rtx *);
9466 : rtx_insn *
9467 : gen_split_788 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9468 : {
9469 : if (dump_file)
9470 : fprintf (dump_file, "Splitting with gen_split_788 (i386.md:18927)\n");
9471 : start_sequence ();
9472 : #define FAIL return (end_sequence (), nullptr)
9473 : #define DONE return end_sequence ()
9474 : #line 18935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9475 : {
9476 : int bitsize = GET_MODE_BITSIZE (SImode);
9477 :
9478 : operands[2] = GEN_INT ((bitsize - INTVAL (operands[2])) % bitsize);
9479 : }
9480 : #undef DONE
9481 : #undef FAIL
9482 : static const uint8_t expand_encoding[] = {
9483 : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x11, 0x01, 0x01,
9484 : 0x01, 0x02
9485 : };
9486 : return complete_seq (expand_encoding, operands);
9487 : }
9488 :
9489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19094 */
9490 : extern rtx_insn *gen_split_797 (rtx_insn *, rtx *);
9491 : rtx_insn *
9492 : gen_split_797 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9493 : {
9494 : if (dump_file)
9495 : fprintf (dump_file, "Splitting with gen_split_797 (i386.md:19094)\n");
9496 : start_sequence ();
9497 : #define FAIL return (end_sequence (), nullptr)
9498 : #define DONE return end_sequence ()
9499 : #line 19117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9500 :
9501 : #undef DONE
9502 : #undef FAIL
9503 : static const uint8_t expand_encoding[] = {
9504 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
9505 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
9506 : 0x51, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
9507 : 0x11
9508 : };
9509 : return complete_seq (expand_encoding, operands);
9510 : }
9511 :
9512 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19252 */
9513 : extern rtx_insn *gen_split_807 (rtx_insn *, rtx *);
9514 : rtx_insn *
9515 : gen_split_807 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9516 : {
9517 : if (dump_file)
9518 : fprintf (dump_file, "Splitting with gen_split_807 (i386.md:19252)\n");
9519 : start_sequence ();
9520 : static const uint8_t expand_encoding[] = {
9521 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
9522 : 0x11, 0x4d, 0x11, 0x27, 0x01, 0x01, 0x01, 0x01,
9523 : 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:19345 */
9529 : extern rtx_insn *gen_split_814 (rtx_insn *, rtx *);
9530 : rtx_insn *
9531 : gen_split_814 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9532 : {
9533 : if (dump_file)
9534 : fprintf (dump_file, "Splitting with gen_split_814 (i386.md:19345)\n");
9535 : start_sequence ();
9536 : #define FAIL return (end_sequence (), nullptr)
9537 : #define DONE return end_sequence ()
9538 : #line 19361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9539 : {
9540 : operands[0] = lowpart_subreg (SImode, operands[0], QImode);
9541 : operands[1] = force_reg (QImode, operands[1]);
9542 : operands[1] = lowpart_subreg (SImode, operands[1], QImode);
9543 : }
9544 : #undef DONE
9545 : #undef FAIL
9546 : static const uint8_t expand_encoding[] = {
9547 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
9548 : 0x11, 0x4e, 0x11, 0x27, 0x81, 0xff, 0xff, 0xff,
9549 : 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x01, 0x02,
9550 : 0x01, 0x01, 0x05, 0x02, 0x11
9551 : };
9552 : return complete_seq (expand_encoding, operands);
9553 : }
9554 :
9555 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19569 */
9556 : extern rtx_insn *gen_split_821 (rtx_insn *, rtx *);
9557 : rtx_insn *
9558 : gen_split_821 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9559 : {
9560 : if (dump_file)
9561 : fprintf (dump_file, "Splitting with gen_split_821 (i386.md:19569)\n");
9562 : start_sequence ();
9563 : #define FAIL return (end_sequence (), nullptr)
9564 : #define DONE return end_sequence ()
9565 : #line 19590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9566 : operands[1] = gen_lowpart (QImode, operands[1]);
9567 : #undef DONE
9568 : #undef FAIL
9569 : static const uint8_t expand_encoding[] = {
9570 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9571 : 0x00, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x01,
9572 : 0x01, 0x01
9573 : };
9574 : return complete_seq (expand_encoding, operands);
9575 : }
9576 :
9577 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19703 */
9578 : extern rtx_insn *gen_split_831 (rtx_insn *, rtx *);
9579 : rtx_insn *
9580 : gen_split_831 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9581 : {
9582 : if (dump_file)
9583 : fprintf (dump_file, "Splitting with gen_split_831 (i386.md:19703)\n");
9584 : start_sequence ();
9585 : #define FAIL return (end_sequence (), nullptr)
9586 : #define DONE return end_sequence ()
9587 : #line 19725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9588 : {
9589 : if (GET_CODE (operands[5]) == EQ)
9590 : std::swap (operands[3], operands[4]);
9591 : }
9592 : #undef DONE
9593 : #undef FAIL
9594 : static const uint8_t expand_encoding[] = {
9595 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9596 : 0x00, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27, 0x01,
9597 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x66,
9598 : 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01, 0x03,
9599 : 0x01, 0x04
9600 : };
9601 : return complete_seq (expand_encoding, operands);
9602 : }
9603 :
9604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19809 */
9605 : extern rtx_insn *gen_split_843 (rtx_insn *, rtx *);
9606 : rtx_insn *
9607 : gen_split_843 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9608 : {
9609 : if (dump_file)
9610 : fprintf (dump_file, "Splitting with gen_split_843 (i386.md:19809)\n");
9611 : start_sequence ();
9612 : #define FAIL return (end_sequence (), nullptr)
9613 : #define DONE return end_sequence ()
9614 : #line 19832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9615 : {
9616 : operands[2] = gen_lowpart (QImode, operands[2]);
9617 : operands[3] = gen_reg_rtx (QImode);
9618 : }
9619 : #undef DONE
9620 : #undef FAIL
9621 : static const uint8_t expand_encoding[] = {
9622 : 0x03, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9623 : 0x00, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27, 0x01,
9624 : 0x01, 0x02, 0x1f, 0x01, 0x03, 0x66, 0x0f, 0x30,
9625 : 0x08, 0x11, 0x27, 0x00, 0x1f, 0x01, 0x00, 0x6f,
9626 : 0x12, 0x01, 0x03
9627 : };
9628 : return complete_seq (expand_encoding, operands);
9629 : }
9630 :
9631 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20010 */
9632 : extern rtx_insn *gen_split_856 (rtx_insn *, rtx *);
9633 : rtx_insn *
9634 : gen_split_856 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9635 : {
9636 : if (dump_file)
9637 : fprintf (dump_file, "Splitting with gen_split_856 (i386.md:20010)\n");
9638 : start_sequence ();
9639 : #define FAIL return (end_sequence (), nullptr)
9640 : #define DONE return end_sequence ()
9641 : #line 20017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9642 : {
9643 : operands[1] = shallow_copy_rtx (operands[1]);
9644 : PUT_MODE (operands[1], QImode);
9645 : }
9646 : #undef DONE
9647 : #undef FAIL
9648 : static const uint8_t expand_encoding[] = {
9649 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
9650 : };
9651 : return complete_seq (expand_encoding, operands);
9652 : }
9653 :
9654 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20208 */
9655 : extern rtx_insn *gen_split_864 (rtx_insn *, rtx *);
9656 : rtx_insn *
9657 : gen_split_864 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9658 : {
9659 : if (dump_file)
9660 : fprintf (dump_file, "Splitting with gen_split_864 (i386.md:20208)\n");
9661 : start_sequence ();
9662 : #define FAIL return (end_sequence (), nullptr)
9663 : #define DONE return end_sequence ()
9664 : #line 20220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9665 : {
9666 : operands[0] = shallow_copy_rtx (operands[0]);
9667 : PUT_MODE (operands[0], VOIDmode);
9668 : }
9669 : #undef DONE
9670 : #undef FAIL
9671 : static const uint8_t expand_encoding[] = {
9672 : 0x01, 0x1f, 0x2f, 0x39, 0x00, 0x01, 0x00, 0x37,
9673 : 0x00, 0x01, 0x01, 0x2f
9674 : };
9675 : return complete_seq (expand_encoding, operands);
9676 : }
9677 :
9678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20415 */
9679 : extern rtx_insn *gen_peephole2_192 (rtx_insn *, rtx *);
9680 : rtx_insn *
9681 : gen_peephole2_192 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9682 : {
9683 : if (dump_file)
9684 : fprintf (dump_file, "Splitting with gen_peephole2_192 (i386.md:20415)\n");
9685 : start_sequence ();
9686 : #define FAIL return (end_sequence (), nullptr)
9687 : #define DONE return end_sequence ()
9688 : #line 20429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9689 : {
9690 : operands[5] = gen_lowpart (QImode, operands[3]);
9691 : ix86_expand_clear (operands[3]);
9692 : }
9693 : #undef DONE
9694 : #undef FAIL
9695 : static const uint8_t expand_encoding[] = {
9696 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x00, 0x1f, 0x33,
9697 : 0x00, 0x01, 0x05, 0x01, 0x02
9698 : };
9699 : return complete_seq (expand_encoding, operands);
9700 : }
9701 :
9702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20614 */
9703 : extern rtx_insn *gen_peephole2_199 (rtx_insn *, rtx *);
9704 : rtx_insn *
9705 : gen_peephole2_199 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9706 : {
9707 : if (dump_file)
9708 : fprintf (dump_file, "Splitting with gen_peephole2_199 (i386.md:20614)\n");
9709 : start_sequence ();
9710 : static const uint8_t expand_encoding[] = {
9711 : 0x02, 0x1b, 0x00, 0x01, 0x27, 0x00, 0x01, 0x17,
9712 : 0x00, 0x02, 0x22, 0x00, 0x36, 0x0f, 0x01, 0x01,
9713 : 0x01, 0x03, 0x1a, 0x00, 0x01, 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:20820 */
9719 : extern rtx_insn *gen_peephole2_206 (rtx_insn *, rtx *);
9720 : rtx_insn *
9721 : gen_peephole2_206 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9722 : {
9723 : if (dump_file)
9724 : fprintf (dump_file, "Splitting with gen_peephole2_206 (i386.md:20820)\n");
9725 : start_sequence ();
9726 : static const uint8_t expand_encoding[] = {
9727 : 0x02, 0x1b, 0x00, 0x01, 0x27, 0x00, 0x01, 0x17,
9728 : 0x00, 0x02, 0x1f, 0x01, 0x02, 0x22, 0x00, 0x36,
9729 : 0x0f, 0x01, 0x01, 0x01, 0x03, 0x1a, 0x00, 0x01,
9730 : 0x27, 0x00, 0x26
9731 : };
9732 : return complete_seq (expand_encoding, operands);
9733 : }
9734 :
9735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21092 */
9736 : rtx
9737 : gen_simple_return_indirect_internal (const rtx operand0)
9738 : {
9739 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
9740 : static const uint8_t expand_encoding[] = {
9741 : 0x17, 0x00, 0x02, 0x24, 0x20, 0x00, 0x01, 0x00
9742 : };
9743 : return expand_rtx (expand_encoding, operands);
9744 : }
9745 :
9746 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21183 */
9747 : rtx
9748 : gen_set_got_labelled (const rtx operand0, const rtx operand1)
9749 : {
9750 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
9751 : start_sequence ();
9752 : {
9753 : #define FAIL return (end_sequence (), nullptr)
9754 : #define DONE return end_sequence ()
9755 : #line 21190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9756 : {
9757 : if (flag_pic && !TARGET_VXWORKS_GOTTPIC)
9758 : ix86_pc_thunk_call_expanded = true;
9759 : }
9760 : #undef DONE
9761 : #undef FAIL
9762 : }
9763 : static const uint8_t expand_encoding[] = {
9764 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
9765 : 0x11, 0x01, 0x37, 0x00, 0x01, 0x01, 0x0f, 0x05,
9766 : 0x02, 0x11
9767 : };
9768 : return complete_seq (expand_encoding, operands);
9769 : }
9770 :
9771 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21385 */
9772 : extern rtx_insn *gen_split_868 (rtx_insn *, rtx *);
9773 : rtx_insn *
9774 : gen_split_868 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9775 : {
9776 : if (dump_file)
9777 : fprintf (dump_file, "Splitting with gen_split_868 (i386.md:21385)\n");
9778 : start_sequence ();
9779 : #define FAIL return (end_sequence (), nullptr)
9780 : #define DONE return end_sequence ()
9781 : #line 21403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9782 : {
9783 : machine_mode flags_mode = TARGET_BMI ? CCCmode : CCZmode;
9784 :
9785 : operands[3] = gen_lowpart (QImode, operands[2]);
9786 : operands[4] = gen_rtx_REG (flags_mode, FLAGS_REG);
9787 : operands[5] = gen_rtx_COMPARE (flags_mode, operands[1], const0_rtx);
9788 :
9789 : ix86_expand_clear (operands[2]);
9790 : }
9791 : #undef DONE
9792 : #undef FAIL
9793 : static const uint8_t expand_encoding[] = {
9794 : 0x05, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x01,
9795 : 0x05, 0x1f, 0x01, 0x00, 0x81, 0x01, 0x11, 0x01,
9796 : 0x01, 0x1f, 0x33, 0x00, 0x01, 0x03, 0x5d, 0x0f,
9797 : 0x01, 0x04, 0x27, 0x00, 0x17, 0x00, 0x02, 0x1f,
9798 : 0x01, 0x02, 0x3d, 0x11, 0x01, 0x02, 0x05, 0x02,
9799 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
9800 : 0x11, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11,
9801 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x11,
9802 : 0x01, 0x00, 0x27, 0x01, 0x05, 0x02, 0x11
9803 : };
9804 : return complete_seq (expand_encoding, operands);
9805 : }
9806 :
9807 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21836 */
9808 : extern rtx_insn *gen_split_883 (rtx_insn *, rtx *);
9809 : rtx_insn *
9810 : gen_split_883 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9811 : {
9812 : if (dump_file)
9813 : fprintf (dump_file, "Splitting with gen_split_883 (i386.md:21836)\n");
9814 : start_sequence ();
9815 : #define FAIL return (end_sequence (), nullptr)
9816 : #define DONE return end_sequence ()
9817 : #line 21857 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9818 : {
9819 : if (INTVAL (operands[2]) == 63)
9820 : {
9821 : emit_insn (gen_bsr_rex64_1 (operands[0], operands[1]));
9822 : DONE;
9823 : }
9824 : operands[3] = gen_reg_rtx (DImode);
9825 : operands[4] = GEN_INT (UINTVAL (operands[2]) - 63);
9826 : }
9827 : #undef DONE
9828 : #undef FAIL
9829 : static const uint8_t expand_encoding[] = {
9830 : 0x02, 0x1f, 0x01, 0x03, 0x3c, 0x12, 0x27, 0x3f,
9831 : 0x81, 0x00, 0x12, 0x01, 0x01, 0x1f, 0x01, 0x00,
9832 : 0x3b, 0x12, 0x01, 0x03, 0x01, 0x04
9833 : };
9834 : return complete_seq (expand_encoding, operands);
9835 : }
9836 :
9837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22030 */
9838 : extern rtx_insn *gen_split_891 (rtx_insn *, rtx *);
9839 : rtx_insn *
9840 : gen_split_891 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9841 : {
9842 : if (dump_file)
9843 : fprintf (dump_file, "Splitting with gen_split_891 (i386.md:22030)\n");
9844 : start_sequence ();
9845 : #define FAIL return (end_sequence (), nullptr)
9846 : #define DONE return end_sequence ()
9847 : #line 22045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9848 : ix86_expand_clear (operands[0]);
9849 : #undef DONE
9850 : #undef FAIL
9851 : static const uint8_t expand_encoding[] = {
9852 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x6f,
9853 : 0x12, 0x81, 0x00, 0x11, 0x01, 0x01, 0x1a, 0x00,
9854 : 0x01, 0x01, 0x00, 0x27, 0x05, 0x02, 0x11
9855 : };
9856 : return complete_seq (expand_encoding, operands);
9857 : }
9858 :
9859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22236 */
9860 : extern rtx_insn *gen_split_902 (rtx_insn *, rtx *);
9861 : rtx_insn *
9862 : gen_split_902 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9863 : {
9864 : if (dump_file)
9865 : fprintf (dump_file, "Splitting with gen_split_902 (i386.md:22236)\n");
9866 : start_sequence ();
9867 : #define FAIL return (end_sequence (), nullptr)
9868 : #define DONE return end_sequence ()
9869 : #line 22259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9870 : ix86_expand_clear (operands[0]);
9871 : #undef DONE
9872 : #undef FAIL
9873 : static const uint8_t expand_encoding[] = {
9874 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x03, 0x02,
9875 : 0x04, 0x49, 0x11, 0x3d, 0x11, 0x01, 0x01, 0x01,
9876 : 0x01, 0x27, 0x00, 0x1f, 0x01, 0x00, 0x49, 0x11,
9877 : 0x3d, 0x11, 0x01, 0x01, 0x01, 0x01, 0x1a, 0x00,
9878 : 0x01, 0x01, 0x00, 0x27
9879 : };
9880 : return complete_seq (expand_encoding, operands);
9881 : }
9882 :
9883 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22722 */
9884 : extern rtx_insn *gen_split_910 (rtx_insn *, rtx *);
9885 : rtx_insn *
9886 : gen_split_910 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9887 : {
9888 : if (dump_file)
9889 : fprintf (dump_file, "Splitting with gen_split_910 (i386.md:22722)\n");
9890 : start_sequence ();
9891 : #define FAIL return (end_sequence (), nullptr)
9892 : #define DONE return end_sequence ()
9893 : #line 22742 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9894 :
9895 : #undef DONE
9896 : #undef FAIL
9897 : static const uint8_t expand_encoding[] = {
9898 : 0x02, 0x1f, 0x01, 0x00, 0x27, 0x00, 0x17, 0x00,
9899 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x02, 0x11, 0x01,
9900 : 0x01, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
9901 : };
9902 : return complete_seq (expand_encoding, operands);
9903 : }
9904 :
9905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22869 */
9906 : extern rtx_insn *gen_split_915 (rtx_insn *, rtx *);
9907 : rtx_insn *
9908 : gen_split_915 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9909 : {
9910 : if (dump_file)
9911 : fprintf (dump_file, "Splitting with gen_split_915 (i386.md:22869)\n");
9912 : start_sequence ();
9913 : #define FAIL return (end_sequence (), nullptr)
9914 : #define DONE return end_sequence ()
9915 : #line 22890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9916 : ix86_expand_clear (operands[0]);
9917 : #undef DONE
9918 : #undef FAIL
9919 : static const uint8_t expand_encoding[] = {
9920 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x6f,
9921 : 0x12, 0x81, 0x02, 0x11, 0x01, 0x01, 0x1a, 0x00,
9922 : 0x01, 0x01, 0x00, 0x27, 0x05, 0x02, 0x11
9923 : };
9924 : return complete_seq (expand_encoding, operands);
9925 : }
9926 :
9927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23220 */
9928 : rtx
9929 : gen_parityqi2 (const rtx operand0, const rtx operand1)
9930 : {
9931 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
9932 : start_sequence ();
9933 : {
9934 : #define FAIL _Pragma ("GCC error \"parityqi2 cannot FAIL\"") (void)0
9935 : #define DONE return end_sequence ()
9936 : #line 23224 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9937 : {
9938 : emit_insn (gen_parityqi2_cmp (operands[1]));
9939 :
9940 : ix86_expand_setcc (operands[0], ORDERED,
9941 : gen_rtx_REG (CCmode, FLAGS_REG), const0_rtx);
9942 : DONE;
9943 : }
9944 : #undef DONE
9945 : #undef FAIL
9946 : }
9947 : static const uint8_t expand_encoding[] = {
9948 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x03, 0x0f, 0x01,
9949 : 0x01
9950 : };
9951 : return complete_seq (expand_encoding, operands);
9952 : }
9953 :
9954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23523 */
9955 : rtx
9956 : gen_tls_local_dynamic_base_32 (const rtx operand0, const rtx operand1, const rtx operand2)
9957 : {
9958 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9959 : start_sequence ();
9960 : {
9961 : #define FAIL return (end_sequence (), nullptr)
9962 : #define DONE return end_sequence ()
9963 : #line 23535 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9964 : ix86_tls_descriptor_calls_expanded_in_cfun = true;
9965 : #undef DONE
9966 : #undef FAIL
9967 : }
9968 : static const uint8_t expand_encoding[] = {
9969 : 0x01, 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x1a,
9970 : 0x11, 0x03, 0x01, 0x01, 0x01, 0x02, 0x30, 0x11,
9971 : 0x07, 0x16, 0x21, 0x00, 0x31, 0x11, 0x21, 0x00,
9972 : 0x31, 0x11, 0x05, 0x02, 0x11
9973 : };
9974 : return complete_seq (expand_encoding, operands);
9975 : }
9976 :
9977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23661 */
9978 : extern rtx_insn *gen_split_922 (rtx_insn *, rtx *);
9979 : rtx_insn *
9980 : gen_split_922 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9981 : {
9982 : if (dump_file)
9983 : fprintf (dump_file, "Splitting with gen_split_922 (i386.md:23661)\n");
9984 : start_sequence ();
9985 : #define FAIL return (end_sequence (), nullptr)
9986 : #define DONE return end_sequence ()
9987 : #line 23674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9988 : {
9989 : operands[2] = gen_const_mem (SImode, GEN_INT (DEFAULT_TLS_SEG_OFFSET));
9990 : set_mem_addr_space (operands[2], DEFAULT_TLS_SEG_REG);
9991 : }
9992 : #undef DONE
9993 : #undef FAIL
9994 : static const uint8_t expand_encoding[] = {
9995 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b,
9996 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9997 : };
9998 : return complete_seq (expand_encoding, operands);
9999 : }
10000 :
10001 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24198 */
10002 : rtx
10003 : gen_rsqrtsf2 (const rtx operand0, const rtx operand1)
10004 : {
10005 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10006 : start_sequence ();
10007 : {
10008 : #define FAIL _Pragma ("GCC error \"rsqrtsf2 cannot FAIL\"") (void)0
10009 : #define DONE return end_sequence ()
10010 : #line 24203 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10011 : {
10012 : ix86_emit_swsqrtsf (operands[0], operands[1], SFmode, 1);
10013 : DONE;
10014 : }
10015 : #undef DONE
10016 : #undef FAIL
10017 : }
10018 : static const uint8_t expand_encoding[] = {
10019 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x01, 0x01,
10020 : 0x01, 0x38
10021 : };
10022 : return complete_seq (expand_encoding, operands);
10023 : }
10024 :
10025 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24436 */
10026 : rtx
10027 : gen_remainderdf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10028 : {
10029 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10030 : start_sequence ();
10031 : {
10032 : #define FAIL _Pragma ("GCC error \"remainderdf3 cannot FAIL\"") (void)0
10033 : #define DONE return end_sequence ()
10034 : #line 24441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10035 : {
10036 : rtx (*gen_truncxf) (rtx, rtx);
10037 :
10038 : rtx_code_label *label = gen_label_rtx ();
10039 :
10040 : rtx op1 = gen_reg_rtx (XFmode);
10041 : rtx op2 = gen_reg_rtx (XFmode);
10042 :
10043 : emit_insn (gen_extenddfxf2 (op2, operands[2]));
10044 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10045 :
10046 : emit_label (label);
10047 :
10048 : emit_insn (gen_fprem1xf4_i387 (op1, op2, op1, op2));
10049 : ix86_emit_fp_unordered_jump (label);
10050 : LABEL_NUSES (label) = 1;
10051 :
10052 : /* Truncate the result properly for strict SSE math. */
10053 : if (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
10054 : && !TARGET_MIX_SSE_I387)
10055 : gen_truncxf = gen_truncxfdf2;
10056 : else
10057 : gen_truncxf = gen_truncxfdf2_i387_noop_unspec;
10058 :
10059 : emit_insn (gen_truncxf (operands[0], op1));
10060 : DONE;
10061 : }
10062 : #undef DONE
10063 : #undef FAIL
10064 : }
10065 : static const uint8_t expand_encoding[] = {
10066 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10067 : 0x01, 0x20, 0x00, 0x01, 0x02
10068 : };
10069 : return complete_seq (expand_encoding, operands);
10070 : }
10071 :
10072 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24598 */
10073 : rtx
10074 : gen_atan2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10075 : {
10076 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10077 : start_sequence ();
10078 : {
10079 : #define FAIL _Pragma ("GCC error \"atan2sf3 cannot FAIL\"") (void)0
10080 : #define DONE return end_sequence ()
10081 : #line 24606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10082 : {
10083 : rtx op0 = gen_reg_rtx (XFmode);
10084 : rtx op1 = gen_reg_rtx (XFmode);
10085 : rtx op2 = gen_reg_rtx (XFmode);
10086 :
10087 : emit_insn (gen_extendsfxf2 (op2, operands[2]));
10088 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10089 :
10090 : emit_insn (gen_atan2xf3 (op0, op1, op2));
10091 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10092 : DONE;
10093 : }
10094 : #undef DONE
10095 : #undef FAIL
10096 : }
10097 : static const uint8_t expand_encoding[] = {
10098 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10099 : 0x01, 0x20, 0x00, 0x01, 0x02
10100 : };
10101 : return complete_seq (expand_encoding, operands);
10102 : }
10103 :
10104 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24722 */
10105 : rtx
10106 : gen_sinhxf2 (const rtx operand0, const rtx operand1)
10107 : {
10108 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10109 : start_sequence ();
10110 : {
10111 : #define FAIL _Pragma ("GCC error \"sinhxf2 cannot FAIL\"") (void)0
10112 : #define DONE return end_sequence ()
10113 : #line 24728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10114 : {
10115 : ix86_emit_i387_sinh (operands[0], operands[1]);
10116 : DONE;
10117 : }
10118 : #undef DONE
10119 : #undef FAIL
10120 : }
10121 : static const uint8_t expand_encoding[] = {
10122 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10123 : 0x01
10124 : };
10125 : return complete_seq (expand_encoding, operands);
10126 : }
10127 :
10128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24805 */
10129 : rtx
10130 : gen_asinhxf2 (const rtx operand0, const rtx operand1)
10131 : {
10132 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10133 : start_sequence ();
10134 : {
10135 : #define FAIL _Pragma ("GCC error \"asinhxf2 cannot FAIL\"") (void)0
10136 : #define DONE return end_sequence ()
10137 : #line 24811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10138 : {
10139 : ix86_emit_i387_asinh (operands[0], operands[1]);
10140 : DONE;
10141 : }
10142 : #undef DONE
10143 : #undef FAIL
10144 : }
10145 : static const uint8_t expand_encoding[] = {
10146 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10147 : 0x01
10148 : };
10149 : return complete_seq (expand_encoding, operands);
10150 : }
10151 :
10152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24871 */
10153 : rtx
10154 : gen_atanhdf2 (const rtx operand0, const rtx operand1)
10155 : {
10156 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10157 : start_sequence ();
10158 : {
10159 : #define FAIL _Pragma ("GCC error \"atanhdf2 cannot FAIL\"") (void)0
10160 : #define DONE return end_sequence ()
10161 : #line 24878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10162 : {
10163 : rtx op0 = gen_reg_rtx (XFmode);
10164 : rtx op1 = gen_reg_rtx (XFmode);
10165 :
10166 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10167 : emit_insn (gen_atanhxf2 (op0, op1));
10168 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10169 : DONE;
10170 : }
10171 : #undef DONE
10172 : #undef FAIL
10173 : }
10174 : static const uint8_t expand_encoding[] = {
10175 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10176 : 0x01
10177 : };
10178 : return complete_seq (expand_encoding, operands);
10179 : }
10180 :
10181 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25000 */
10182 : rtx
10183 : gen_log1pxf2 (const rtx operand0, const rtx operand1)
10184 : {
10185 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10186 : start_sequence ();
10187 : {
10188 : #define FAIL _Pragma ("GCC error \"log1pxf2 cannot FAIL\"") (void)0
10189 : #define DONE return end_sequence ()
10190 : #line 25005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10191 : {
10192 : ix86_emit_i387_log1p (operands[0], operands[1]);
10193 : DONE;
10194 : }
10195 : #undef DONE
10196 : #undef FAIL
10197 : }
10198 : static const uint8_t expand_encoding[] = {
10199 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10200 : 0x01
10201 : };
10202 : return complete_seq (expand_encoding, operands);
10203 : }
10204 :
10205 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25138 */
10206 : rtx
10207 : gen_expNcorexf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10208 : {
10209 : rtx operands[10] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10210 : start_sequence ();
10211 : {
10212 : #define FAIL return (end_sequence (), nullptr)
10213 : #define DONE return end_sequence ()
10214 : #line 25153 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10215 : {
10216 : int i;
10217 :
10218 : for (i = 3; i < 10; i++)
10219 : operands[i] = gen_reg_rtx (XFmode);
10220 :
10221 : emit_move_insn (operands[7], CONST1_RTX (XFmode));
10222 : }
10223 : #undef DONE
10224 : #undef FAIL
10225 : }
10226 : static const uint8_t expand_encoding[] = {
10227 : 0x06, 0x1f, 0x01, 0x03, 0x3e, 0x2f, 0x01, 0x01,
10228 : 0x01, 0x02, 0x1f, 0x01, 0x04, 0x1a, 0x2f, 0x01,
10229 : 0x01, 0x03, 0x46, 0x1f, 0x01, 0x05, 0x3c, 0x2f,
10230 : 0x01, 0x03, 0x01, 0x04, 0x1f, 0x01, 0x06, 0x1a,
10231 : 0x2f, 0x01, 0x01, 0x05, 0x48, 0x1f, 0x01, 0x08,
10232 : 0x3b, 0x2f, 0x01, 0x06, 0x01, 0x07, 0x17, 0x00,
10233 : 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f, 0x02, 0x01,
10234 : 0x08, 0x01, 0x04, 0x55, 0x1f, 0x01, 0x09, 0x1a,
10235 : 0x2f, 0x02, 0x01, 0x08, 0x01, 0x04, 0x56
10236 : };
10237 : return complete_seq (expand_encoding, operands);
10238 : }
10239 :
10240 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25326 */
10241 : rtx
10242 : gen_ldexpsf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10243 : {
10244 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10245 : start_sequence ();
10246 : {
10247 : #define FAIL _Pragma ("GCC error \"ldexpsf3 cannot FAIL\"") (void)0
10248 : #define DONE return end_sequence ()
10249 : #line 25335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10250 : {
10251 : /* Prefer avx512f version. */
10252 : if (TARGET_AVX512F && TARGET_SSE_MATH)
10253 : {
10254 : rtx op2 = gen_reg_rtx (SFmode);
10255 : operands[1] = force_reg (SFmode, operands[1]);
10256 :
10257 : emit_insn (gen_floatsisf2 (op2, operands[2]));
10258 : emit_insn (gen_avx512f_scalefsf2 (operands[0], operands[1], op2));
10259 : }
10260 : else
10261 : {
10262 : rtx op0 = gen_reg_rtx (XFmode);
10263 : rtx op1 = gen_reg_rtx (XFmode);
10264 :
10265 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10266 : emit_insn (gen_ldexpxf3 (op0, op1, operands[2]));
10267 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10268 : }
10269 : DONE;
10270 : }
10271 : #undef DONE
10272 : #undef FAIL
10273 : }
10274 : static const uint8_t expand_encoding[] = {
10275 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10276 : 0x01, 0x20, 0x00, 0x01, 0x02
10277 : };
10278 : return complete_seq (expand_encoding, operands);
10279 : }
10280 :
10281 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25512 */
10282 : rtx
10283 : gen_nearbyintsf2 (const rtx operand0, const rtx operand1)
10284 : {
10285 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10286 : start_sequence ();
10287 : {
10288 : #define FAIL _Pragma ("GCC error \"nearbyintsf2 cannot FAIL\"") (void)0
10289 : #define DONE return end_sequence ()
10290 : #line 25520 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10291 : {
10292 : if (TARGET_SSE4_1 && TARGET_SSE_MATH)
10293 : emit_insn (gen_sse4_1_roundsf2
10294 : (operands[0], operands[1], GEN_INT (ROUND_MXCSR
10295 : | ROUND_NO_EXC)));
10296 : else
10297 : {
10298 : rtx op0 = gen_reg_rtx (XFmode);
10299 : rtx op1 = gen_reg_rtx (XFmode);
10300 :
10301 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10302 : emit_insn (gen_nearbyintxf2 (op0, op1));
10303 : emit_insn (gen_truncxfsf2_i387_noop_unspec (operands[0], op0));
10304 : }
10305 : DONE;
10306 : }
10307 : #undef DONE
10308 : #undef FAIL
10309 : }
10310 : static const uint8_t expand_encoding[] = {
10311 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10312 : 0x01
10313 : };
10314 : return complete_seq (expand_encoding, operands);
10315 : }
10316 :
10317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25613 */
10318 : rtx
10319 : gen_lrintsfdi2 (const rtx operand0, const rtx operand1)
10320 : {
10321 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10322 : static const uint8_t expand_encoding[] = {
10323 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
10324 : 0x2f
10325 : };
10326 : return expand_rtx (expand_encoding, operands);
10327 : }
10328 :
10329 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25619 */
10330 : rtx
10331 : gen_lroundsfdi2 (const rtx operand0, const rtx operand1)
10332 : {
10333 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10334 : start_sequence ();
10335 : {
10336 : #define FAIL _Pragma ("GCC error \"lroundsfdi2 cannot FAIL\"") (void)0
10337 : #define DONE return end_sequence ()
10338 : #line 25630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10339 : {
10340 : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
10341 : && DImode != HImode
10342 : && ((DImode != DImode) || TARGET_64BIT)
10343 : && !flag_trapping_math && !flag_rounding_math)
10344 : ix86_expand_lround (operands[0], operands[1]);
10345 : else
10346 : ix86_emit_i387_round (operands[0], operands[1]);
10347 : DONE;
10348 : }
10349 : #undef DONE
10350 : #undef FAIL
10351 : }
10352 : static const uint8_t expand_encoding[] = {
10353 : 0x02, 0x01, 0x00, 0x01, 0x01
10354 : };
10355 : return complete_seq (expand_encoding, operands);
10356 : }
10357 :
10358 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25715 */
10359 : rtx
10360 : gen_btruncxf2 (const rtx operand0, const rtx operand1)
10361 : {
10362 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10363 : static const uint8_t expand_encoding[] = {
10364 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
10365 : 0x01, 0x01, 0x01, 0x4e, 0x05, 0x02, 0x11
10366 : };
10367 : return expand_rtx (expand_encoding, operands);
10368 : }
10369 :
10370 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25735 */
10371 : rtx
10372 : gen_ceilsf2 (const rtx operand0, const rtx operand1)
10373 : {
10374 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10375 : start_sequence ();
10376 : {
10377 : #define FAIL _Pragma ("GCC error \"ceilsf2 cannot FAIL\"") (void)0
10378 : #define DONE return end_sequence ()
10379 : #line 25748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10380 : {
10381 : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
10382 : && (TARGET_SSE4_1
10383 : || (ROUND_CEIL != ROUND_ROUNDEVEN
10384 : && (flag_fp_int_builtin_inexact || !flag_trapping_math))))
10385 : {
10386 : if (TARGET_SSE4_1)
10387 : emit_insn (gen_sse4_1_roundsf2
10388 : (operands[0], operands[1],
10389 : GEN_INT (ROUND_CEIL | ROUND_NO_EXC)));
10390 : else if (TARGET_64BIT || (SFmode != DFmode))
10391 : {
10392 : if (ROUND_CEIL == ROUND_FLOOR)
10393 : ix86_expand_floorceil (operands[0], operands[1], true);
10394 : else if (ROUND_CEIL == ROUND_CEIL)
10395 : ix86_expand_floorceil (operands[0], operands[1], false);
10396 : else if (ROUND_CEIL == ROUND_TRUNC)
10397 : ix86_expand_trunc (operands[0], operands[1]);
10398 : else
10399 : gcc_unreachable ();
10400 : }
10401 : else
10402 : {
10403 : if (ROUND_CEIL == ROUND_FLOOR)
10404 : ix86_expand_floorceildf_32 (operands[0], operands[1], true);
10405 : else if (ROUND_CEIL == ROUND_CEIL)
10406 : ix86_expand_floorceildf_32 (operands[0], operands[1], false);
10407 : else if (ROUND_CEIL == ROUND_TRUNC)
10408 : ix86_expand_truncdf_32 (operands[0], operands[1]);
10409 : else
10410 : gcc_unreachable ();
10411 : }
10412 : }
10413 : else
10414 : {
10415 : rtx op0 = gen_reg_rtx (XFmode);
10416 : rtx op1 = gen_reg_rtx (XFmode);
10417 :
10418 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10419 : emit_insn (gen_frndintxf2_ceil (op0, op1));
10420 : emit_insn (gen_truncxfsf2_i387_noop_unspec (operands[0], op0));
10421 : }
10422 : DONE;
10423 : }
10424 : #undef DONE
10425 : #undef FAIL
10426 : }
10427 : static const uint8_t expand_encoding[] = {
10428 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10429 : 0x2d, 0x01, 0x01, 0x01, 0x4d, 0x05, 0x02, 0x11
10430 : };
10431 : return complete_seq (expand_encoding, operands);
10432 : }
10433 :
10434 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25794 */
10435 : extern rtx_insn *gen_split_937 (rtx_insn *, rtx *);
10436 : rtx_insn *
10437 : gen_split_937 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10438 : {
10439 : if (dump_file)
10440 : fprintf (dump_file, "Splitting with gen_split_937 (i386.md:25794)\n");
10441 : start_sequence ();
10442 : #define FAIL return (end_sequence (), nullptr)
10443 : #define DONE return end_sequence ()
10444 : #line 25805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10445 : {
10446 : ix86_optimize_mode_switching[I387_FLOOR] = 1;
10447 :
10448 : operands[2] = assign_386_stack_local (HImode, SLOT_CW_STORED);
10449 : operands[3] = assign_386_stack_local (HImode, SLOT_CW_FLOOR);
10450 :
10451 : emit_insn (gen_fistdi2_floor (operands[0], operands[1],
10452 : operands[2], operands[3]));
10453 : DONE;
10454 : }
10455 : #undef DONE
10456 : #undef FAIL
10457 : static const uint8_t expand_encoding[] = {
10458 : 0x01, 0x27, 0x00
10459 : };
10460 : return complete_seq (expand_encoding, operands);
10461 : }
10462 :
10463 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25868 */
10464 : rtx
10465 : gen_lfloordfsi2 (const rtx operand0, const rtx operand1)
10466 : {
10467 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10468 : start_sequence ();
10469 : {
10470 : #define FAIL _Pragma ("GCC error \"lfloordfsi2 cannot FAIL\"") (void)0
10471 : #define DONE return end_sequence ()
10472 : #line 25875 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10473 : {
10474 : if (TARGET_SSE4_1)
10475 : {
10476 : rtx tmp = gen_reg_rtx (DFmode);
10477 :
10478 : emit_insn (gen_sse4_1_rounddf2
10479 : (tmp, operands[1], GEN_INT (ROUND_FLOOR
10480 : | ROUND_NO_EXC)));
10481 : emit_insn (gen_fix_truncdfsi2
10482 : (operands[0], tmp));
10483 : }
10484 : else if (ROUND_FLOOR == ROUND_FLOOR)
10485 : ix86_expand_lfloorceil (operands[0], operands[1], true);
10486 : else if (ROUND_FLOOR == ROUND_CEIL)
10487 : ix86_expand_lfloorceil (operands[0], operands[1], false);
10488 : else
10489 : gcc_unreachable ();
10490 :
10491 : DONE;
10492 : }
10493 : #undef DONE
10494 : #undef FAIL
10495 : }
10496 : static const uint8_t expand_encoding[] = {
10497 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10498 : 0x11, 0x01, 0x01, 0x01, 0x4f, 0x05, 0x02, 0x11
10499 : };
10500 : return complete_seq (expand_encoding, operands);
10501 : }
10502 :
10503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26023 */
10504 : rtx
10505 : gen_cpymemdi (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)
10506 : {
10507 : rtx operands[9] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8 };
10508 : start_sequence ();
10509 : {
10510 : #define FAIL return (end_sequence (), nullptr)
10511 : #define DONE return end_sequence ()
10512 : #line 26034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10513 : {
10514 : if (ix86_expand_set_or_cpymem (operands[0], operands[1],
10515 : operands[2], NULL, operands[3],
10516 : operands[4], operands[5],
10517 : operands[6], operands[7],
10518 : operands[8], false))
10519 : DONE;
10520 : else
10521 : FAIL;
10522 : }
10523 : #undef DONE
10524 : #undef FAIL
10525 : }
10526 : static const uint8_t expand_encoding[] = {
10527 : 0x09, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10528 : 0x01, 0x20, 0x00, 0x01, 0x02, 0x20, 0x00, 0x01,
10529 : 0x03, 0x20, 0x00, 0x01, 0x04, 0x20, 0x00, 0x01,
10530 : 0x05, 0x20, 0x00, 0x01, 0x06, 0x20, 0x00, 0x01,
10531 : 0x07, 0x20, 0x00, 0x01, 0x08
10532 : };
10533 : return complete_seq (expand_encoding, operands);
10534 : }
10535 :
10536 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26512 */
10537 : rtx
10538 : gen_cmpstrnsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
10539 : {
10540 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
10541 : start_sequence ();
10542 : {
10543 : #define FAIL return (end_sequence (), nullptr)
10544 : #define DONE return end_sequence ()
10545 : #line 26519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10546 : {
10547 : if (ix86_expand_cmpstrn_or_cmpmem (operands[0], operands[1],
10548 : operands[2], operands[3],
10549 : operands[4], true))
10550 : DONE;
10551 : else
10552 : FAIL;
10553 : }
10554 : #undef DONE
10555 : #undef FAIL
10556 : }
10557 : static const uint8_t expand_encoding[] = {
10558 : 0x03, 0x1f, 0x01, 0x00, 0x3a, 0x11, 0x01, 0x01,
10559 : 0x01, 0x02, 0x20, 0x00, 0x01, 0x03, 0x20, 0x00,
10560 : 0x01, 0x04
10561 : };
10562 : return complete_seq (expand_encoding, operands);
10563 : }
10564 :
10565 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26748 */
10566 : rtx
10567 : gen_movqicc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10568 : {
10569 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10570 : start_sequence ();
10571 : {
10572 : #define FAIL return (end_sequence (), nullptr)
10573 : #define DONE return end_sequence ()
10574 : #line 26754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10575 : if (ix86_expand_int_movcc (operands)) DONE; else FAIL;
10576 : #undef DONE
10577 : #undef FAIL
10578 : }
10579 : static const uint8_t expand_encoding[] = {
10580 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x0f, 0x01, 0x01,
10581 : 0x01, 0x02, 0x01, 0x03
10582 : };
10583 : return complete_seq (expand_encoding, operands);
10584 : }
10585 :
10586 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26814 */
10587 : rtx
10588 : gen_x86_movdicc_0_m1_neg (const rtx operand0)
10589 : {
10590 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
10591 : static const uint8_t expand_encoding[] = {
10592 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3d, 0x12,
10593 : 0x66, 0x12, 0x30, 0x08, 0x11, 0x27, 0x00, 0x05,
10594 : 0x02, 0x11
10595 : };
10596 : return expand_rtx (expand_encoding, operands);
10597 : }
10598 :
10599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26845 */
10600 : extern rtx_insn *gen_split_948 (rtx_insn *, rtx *);
10601 : rtx_insn *
10602 : gen_split_948 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10603 : {
10604 : if (dump_file)
10605 : fprintf (dump_file, "Splitting with gen_split_948 (i386.md:26845)\n");
10606 : start_sequence ();
10607 : static const uint8_t expand_encoding[] = {
10608 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
10609 : 0x01, 0x01, 0x27, 0x00, 0x29, 0x1f, 0x01, 0x00,
10610 : 0x3d, 0x12, 0x66, 0x12, 0x30, 0x08, 0x11, 0x27,
10611 : 0x00
10612 : };
10613 : return complete_seq (expand_encoding, operands);
10614 : }
10615 :
10616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27023 */
10617 : extern rtx_insn *gen_peephole2_223 (rtx_insn *, rtx *);
10618 : rtx_insn *
10619 : gen_peephole2_223 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10620 : {
10621 : if (dump_file)
10622 : fprintf (dump_file, "Splitting with gen_peephole2_223 (i386.md:27023)\n");
10623 : start_sequence ();
10624 : #define FAIL return (end_sequence (), nullptr)
10625 : #define DONE return end_sequence ()
10626 : #line 27047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10627 : {
10628 : operands[7] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (1)), 0, 0));
10629 : operands[8]
10630 : = ix86_replace_reg_with_reg (operands[5], operands[0], operands[1]);
10631 : operands[9]
10632 : = ix86_replace_reg_with_reg (operands[6], operands[0], operands[1]);
10633 : }
10634 : #undef DONE
10635 : #undef FAIL
10636 : static const uint8_t expand_encoding[] = {
10637 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
10638 : 0x08, 0x1f, 0x01, 0x01, 0x01, 0x09, 0x1f, 0x01,
10639 : 0x00, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x39, 0x10,
10640 : 0x01, 0x04, 0x01, 0x01, 0x01, 0x00
10641 : };
10642 : return complete_seq (expand_encoding, operands);
10643 : }
10644 :
10645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27115 */
10646 : rtx
10647 : gen_movdfcc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10648 : {
10649 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10650 : start_sequence ();
10651 : {
10652 : #define FAIL return (end_sequence (), nullptr)
10653 : #define DONE return end_sequence ()
10654 : #line 27123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10655 : if (ix86_expand_fp_movcc (operands)) DONE; else FAIL;
10656 : #undef DONE
10657 : #undef FAIL
10658 : }
10659 : static const uint8_t expand_encoding[] = {
10660 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x2e, 0x01, 0x01,
10661 : 0x01, 0x02, 0x01, 0x03
10662 : };
10663 : return complete_seq (expand_encoding, operands);
10664 : }
10665 :
10666 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27344 */
10667 : extern rtx_insn *gen_split_960 (rtx_insn *, rtx *);
10668 : rtx_insn *
10669 : gen_split_960 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10670 : {
10671 : if (dump_file)
10672 : fprintf (dump_file, "Splitting with gen_split_960 (i386.md:27344)\n");
10673 : start_sequence ();
10674 : static const uint8_t expand_encoding[] = {
10675 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x02, 0x01,
10676 : 0x02, 0x01, 0x01, 0x3f
10677 : };
10678 : return complete_seq (expand_encoding, operands);
10679 : }
10680 :
10681 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27417 */
10682 : rtx
10683 : gen_adddicc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10684 : {
10685 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10686 : start_sequence ();
10687 : {
10688 : #define FAIL return (end_sequence (), nullptr)
10689 : #define DONE return end_sequence ()
10690 : #line 27423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10691 : if (ix86_expand_int_addcc (operands)) DONE; else FAIL;
10692 : #undef DONE
10693 : #undef FAIL
10694 : }
10695 : static const uint8_t expand_encoding[] = {
10696 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
10697 : 0x03
10698 : };
10699 : return complete_seq (expand_encoding, operands);
10700 : }
10701 :
10702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10703 : rtx
10704 : gen_umaxsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
10705 : {
10706 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10707 : static const uint8_t expand_encoding[] = {
10708 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x55, 0x11,
10709 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10710 : };
10711 : return expand_rtx (expand_encoding, operands);
10712 : }
10713 :
10714 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27440 */
10715 : extern rtx_insn *gen_split_961 (rtx_insn *, rtx *);
10716 : rtx_insn *
10717 : gen_split_961 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10718 : {
10719 : if (dump_file)
10720 : fprintf (dump_file, "Splitting with gen_split_961 (i386.md:27440)\n");
10721 : start_sequence ();
10722 : #define FAIL return (end_sequence (), nullptr)
10723 : #define DONE return end_sequence ()
10724 : #line 27458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10725 : {
10726 : operands[2] = force_reg (DImode, operands[2]);
10727 :
10728 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
10729 :
10730 : rtx cmplo[2] = { operands[1], operands[2] };
10731 : rtx cmphi[2] = { operands[4], operands[5] };
10732 :
10733 : enum rtx_code code = GE;
10734 :
10735 : switch (code)
10736 : {
10737 : case LE: case LEU:
10738 : std::swap (cmplo[0], cmplo[1]);
10739 : std::swap (cmphi[0], cmphi[1]);
10740 : code = swap_condition (code);
10741 : /* FALLTHRU */
10742 :
10743 : case GE: case GEU:
10744 : {
10745 : bool uns = (code == GEU);
10746 : rtx (*sbb_insn) (machine_mode, rtx, rtx, rtx)
10747 : = uns ? gen_sub3_carry_ccc : gen_sub3_carry_ccgz;
10748 :
10749 : emit_insn (gen_cmp_1 (SImode, cmplo[0], cmplo[1]));
10750 :
10751 : rtx tmp = gen_rtx_SCRATCH (SImode);
10752 : emit_insn (sbb_insn (SImode, tmp, cmphi[0], cmphi[1]));
10753 :
10754 : rtx flags = gen_rtx_REG (uns ? CCCmode : CCGZmode, FLAGS_REG);
10755 : operands[6] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10756 :
10757 : break;
10758 : }
10759 :
10760 : default:
10761 : gcc_unreachable ();
10762 : }
10763 : }
10764 : #undef DONE
10765 : #undef FAIL
10766 : static const uint8_t expand_encoding[] = {
10767 : 0x02, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x06,
10768 : 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x03, 0x39,
10769 : 0x11, 0x01, 0x06, 0x01, 0x04, 0x01, 0x05
10770 : };
10771 : return complete_seq (expand_encoding, operands);
10772 : }
10773 :
10774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27498 */
10775 : extern rtx_insn *gen_split_971 (rtx_insn *, rtx *);
10776 : rtx_insn *
10777 : gen_split_971 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10778 : {
10779 : if (dump_file)
10780 : fprintf (dump_file, "Splitting with gen_split_971 (i386.md:27498)\n");
10781 : start_sequence ();
10782 : #define FAIL return (end_sequence (), nullptr)
10783 : #define DONE return end_sequence ()
10784 : #line 27513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10785 : {
10786 : machine_mode mode = QImode;
10787 : rtx cmp_op = operands[2];
10788 :
10789 : operands[2] = force_reg (mode, cmp_op);
10790 :
10791 : enum rtx_code code = GEU;
10792 :
10793 : if (cmp_op == const1_rtx)
10794 : {
10795 : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10796 : Convert umax (x, 1) into (x != 0 ? x : 1).
10797 : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10798 : cmp_op = const0_rtx;
10799 : if (code == GE)
10800 : code = GT;
10801 : else if (code == GEU)
10802 : code = NE;
10803 : }
10804 : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10805 : else if (cmp_op == constm1_rtx && code == LE)
10806 : {
10807 : cmp_op = const0_rtx;
10808 : code = LT;
10809 : }
10810 : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10811 : else if (cmp_op == constm1_rtx && code == GE)
10812 : cmp_op = const0_rtx;
10813 : else if (cmp_op != const0_rtx)
10814 : cmp_op = operands[2];
10815 :
10816 : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10817 : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10818 :
10819 : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10820 : emit_insn (gen_rtx_SET (flags, tmp));
10821 :
10822 : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10823 : }
10824 : #undef DONE
10825 : #undef FAIL
10826 : static const uint8_t expand_encoding[] = {
10827 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x0f, 0x01, 0x03,
10828 : 0x01, 0x01, 0x01, 0x02
10829 : };
10830 : return complete_seq (expand_encoding, operands);
10831 : }
10832 :
10833 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27498 */
10834 : extern rtx_insn *gen_split_981 (rtx_insn *, rtx *);
10835 : rtx_insn *
10836 : gen_split_981 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10837 : {
10838 : if (dump_file)
10839 : fprintf (dump_file, "Splitting with gen_split_981 (i386.md:27498)\n");
10840 : start_sequence ();
10841 : #define FAIL return (end_sequence (), nullptr)
10842 : #define DONE return end_sequence ()
10843 : #line 27513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10844 : {
10845 : machine_mode mode = DImode;
10846 : rtx cmp_op = operands[2];
10847 :
10848 : operands[2] = force_reg (mode, cmp_op);
10849 :
10850 : enum rtx_code code = GE;
10851 :
10852 : if (cmp_op == const1_rtx)
10853 : {
10854 : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10855 : Convert umax (x, 1) into (x != 0 ? x : 1).
10856 : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10857 : cmp_op = const0_rtx;
10858 : if (code == GE)
10859 : code = GT;
10860 : else if (code == GEU)
10861 : code = NE;
10862 : }
10863 : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10864 : else if (cmp_op == constm1_rtx && code == LE)
10865 : {
10866 : cmp_op = const0_rtx;
10867 : code = LT;
10868 : }
10869 : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10870 : else if (cmp_op == constm1_rtx && code == GE)
10871 : cmp_op = const0_rtx;
10872 : else if (cmp_op != const0_rtx)
10873 : cmp_op = operands[2];
10874 :
10875 : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10876 : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10877 :
10878 : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10879 : emit_insn (gen_rtx_SET (flags, tmp));
10880 :
10881 : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10882 : }
10883 : #undef DONE
10884 : #undef FAIL
10885 : static const uint8_t expand_encoding[] = {
10886 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x01, 0x03,
10887 : 0x01, 0x01, 0x01, 0x02
10888 : };
10889 : return complete_seq (expand_encoding, operands);
10890 : }
10891 :
10892 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27631 */
10893 : extern rtx_insn *gen_peephole2_245 (rtx_insn *, rtx *);
10894 : rtx_insn *
10895 : gen_peephole2_245 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10896 : {
10897 : if (dump_file)
10898 : fprintf (dump_file, "Splitting with gen_peephole2_245 (i386.md:27631)\n");
10899 : start_sequence ();
10900 : #define FAIL return (end_sequence (), nullptr)
10901 : #define DONE return end_sequence ()
10902 : #line 27639 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10903 : {
10904 : emit_move_insn (operands[3], operands[0]);
10905 : emit_move_insn (operands[1], operands[0]);
10906 : ix86_last_zero_store_uid
10907 : = INSN_UID (emit_move_insn (operands[2], operands[0]));
10908 : DONE;
10909 : }
10910 : #undef DONE
10911 : #undef FAIL
10912 : static const uint8_t expand_encoding[] = {
10913 : 0x01, 0x27, 0x00
10914 : };
10915 : return complete_seq (expand_encoding, operands);
10916 : }
10917 :
10918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27678 */
10919 : extern rtx_insn *gen_split_989 (rtx_insn *, rtx *);
10920 : rtx_insn *
10921 : gen_split_989 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10922 : {
10923 : if (dump_file)
10924 : fprintf (dump_file, "Splitting with gen_split_989 (i386.md:27678)\n");
10925 : start_sequence ();
10926 : #define FAIL return (end_sequence (), nullptr)
10927 : #define DONE return end_sequence ()
10928 : #line 27701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10929 : {
10930 : operands[1] = force_reg (SImode, operands[1]);
10931 : operands[3] = gen_reg_rtx (SImode);
10932 : }
10933 : #undef DONE
10934 : #undef FAIL
10935 : static const uint8_t expand_encoding[] = {
10936 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
10937 : 0x3a, 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02,
10938 : 0x01, 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x01,
10939 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x11,
10940 : 0x63, 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01,
10941 : 0x03, 0x01, 0x01
10942 : };
10943 : return complete_seq (expand_encoding, operands);
10944 : }
10945 :
10946 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27711 */
10947 : extern rtx_insn *gen_split_999 (rtx_insn *, rtx *);
10948 : rtx_insn *
10949 : gen_split_999 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10950 : {
10951 : if (dump_file)
10952 : fprintf (dump_file, "Splitting with gen_split_999 (i386.md:27711)\n");
10953 : start_sequence ();
10954 : #define FAIL return (end_sequence (), nullptr)
10955 : #define DONE return end_sequence ()
10956 : #line 27732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10957 : {
10958 : operands[1] = force_reg (SImode, operands[1]);
10959 : operands[3] = gen_reg_rtx (SImode);
10960 : }
10961 : #undef DONE
10962 : #undef FAIL
10963 : static const uint8_t expand_encoding[] = {
10964 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
10965 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
10966 : 0x03, 0x3c, 0x11, 0x01, 0x01, 0x01, 0x02, 0x1f,
10967 : 0x01, 0x00, 0x39, 0x11, 0x66, 0x00, 0x30, 0x02,
10968 : 0x11, 0x27, 0x00, 0x01, 0x03, 0x01, 0x01
10969 : };
10970 : return complete_seq (expand_encoding, operands);
10971 : }
10972 :
10973 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28083 */
10974 : extern rtx_insn *gen_peephole2_255 (rtx_insn *, rtx *);
10975 : rtx_insn *
10976 : gen_peephole2_255 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10977 : {
10978 : if (dump_file)
10979 : fprintf (dump_file, "Splitting with gen_peephole2_255 (i386.md:28083)\n");
10980 : start_sequence ();
10981 : #define FAIL return (end_sequence (), nullptr)
10982 : #define DONE return end_sequence ()
10983 : #line 28099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10984 : operands[3] = gen_lowpart (word_mode, operands[3]);
10985 : #undef DONE
10986 : #undef FAIL
10987 : static const uint8_t expand_encoding[] = {
10988 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a,
10989 : 0x11, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
10990 : 0x27, 0x00, 0x05, 0x02, 0x11
10991 : };
10992 : return complete_seq (expand_encoding, operands);
10993 : }
10994 :
10995 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28159 */
10996 : extern rtx_insn *gen_peephole2_263 (rtx_insn *, rtx *);
10997 : rtx_insn *
10998 : gen_peephole2_263 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10999 : {
11000 : if (dump_file)
11001 : fprintf (dump_file, "Splitting with gen_peephole2_263 (i386.md:28159)\n");
11002 : start_sequence ();
11003 : static const uint8_t expand_encoding[] = {
11004 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
11005 : 0x12, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
11006 : 0x01, 0x04
11007 : };
11008 : return complete_seq (expand_encoding, operands);
11009 : }
11010 :
11011 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28247 */
11012 : extern rtx_insn *gen_peephole2_272 (rtx_insn *, rtx *);
11013 : rtx_insn *
11014 : gen_peephole2_272 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11015 : {
11016 : if (dump_file)
11017 : fprintf (dump_file, "Splitting with gen_peephole2_272 (i386.md:28247)\n");
11018 : start_sequence ();
11019 : static const uint8_t expand_encoding[] = {
11020 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
11021 : 0x12, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
11022 : 0x6f, 0x12, 0x01, 0x04
11023 : };
11024 : return complete_seq (expand_encoding, operands);
11025 : }
11026 :
11027 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28428 */
11028 : extern rtx_insn *gen_peephole2_274 (rtx_insn *, rtx *);
11029 : rtx_insn *
11030 : gen_peephole2_274 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11031 : {
11032 : HARD_REG_SET _regs_allocated;
11033 : CLEAR_HARD_REG_SET (_regs_allocated);
11034 : if ((operands[2] = peep2_find_free_register (1, 1, "r", HImode, &_regs_allocated)) == NULL_RTX)
11035 : return NULL;
11036 : if (dump_file)
11037 : fprintf (dump_file, "Splitting with gen_peephole2_274 (i386.md:28428)\n");
11038 : start_sequence ();
11039 : static const uint8_t expand_encoding[] = {
11040 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
11041 : 0x00, 0x01, 0x02
11042 : };
11043 : return complete_seq (expand_encoding, operands);
11044 : }
11045 :
11046 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28466 */
11047 : extern rtx_insn *gen_peephole2_282 (rtx_insn *, rtx *);
11048 : rtx_insn *
11049 : gen_peephole2_282 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11050 : {
11051 : HARD_REG_SET _regs_allocated;
11052 : CLEAR_HARD_REG_SET (_regs_allocated);
11053 : if ((operands[2] = peep2_find_free_register (0, 0, "r", HImode, &_regs_allocated)) == NULL_RTX)
11054 : return NULL;
11055 : if (dump_file)
11056 : fprintf (dump_file, "Splitting with gen_peephole2_282 (i386.md:28466)\n");
11057 : start_sequence ();
11058 : static const uint8_t expand_encoding[] = {
11059 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
11060 : 0x00, 0x01, 0x02
11061 : };
11062 : return complete_seq (expand_encoding, operands);
11063 : }
11064 :
11065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28541 */
11066 : extern rtx_insn *gen_peephole2_289 (rtx_insn *, rtx *);
11067 : rtx_insn *
11068 : gen_peephole2_289 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11069 : {
11070 : if (dump_file)
11071 : fprintf (dump_file, "Splitting with gen_peephole2_289 (i386.md:28541)\n");
11072 : start_sequence ();
11073 : static const uint8_t expand_encoding[] = {
11074 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
11075 : 0x01, 0x49, 0x0f, 0x01, 0x02, 0x01, 0x03, 0x27,
11076 : 0x00, 0x1f, 0x01, 0x02, 0x49, 0x0f, 0x01, 0x02,
11077 : 0x01, 0x03
11078 : };
11079 : return complete_seq (expand_encoding, operands);
11080 : }
11081 :
11082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28606 */
11083 : extern rtx_insn *gen_peephole2_299 (rtx_insn *, rtx *);
11084 : rtx_insn *
11085 : gen_peephole2_299 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11086 : {
11087 : HARD_REG_SET _regs_allocated;
11088 : CLEAR_HARD_REG_SET (_regs_allocated);
11089 : if ((operands[2] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11090 : return NULL;
11091 : if (dump_file)
11092 : fprintf (dump_file, "Splitting with gen_peephole2_299 (i386.md:28606)\n");
11093 : start_sequence ();
11094 : static const uint8_t expand_encoding[] = {
11095 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
11096 : 0x02, 0x1f, 0x01, 0x00, 0x02, 0x03, 0x01, 0x02,
11097 : 0x01, 0x00, 0x05, 0x02, 0x11
11098 : };
11099 : return complete_seq (expand_encoding, operands);
11100 : }
11101 :
11102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28681 */
11103 : extern rtx_insn *gen_peephole2_309 (rtx_insn *, rtx *);
11104 : rtx_insn *
11105 : gen_peephole2_309 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11106 : {
11107 : HARD_REG_SET _regs_allocated;
11108 : CLEAR_HARD_REG_SET (_regs_allocated);
11109 : if ((operands[2] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11110 : return NULL;
11111 : if (dump_file)
11112 : fprintf (dump_file, "Splitting with gen_peephole2_309 (i386.md:28681)\n");
11113 : start_sequence ();
11114 : static const uint8_t expand_encoding[] = {
11115 : 0x03, 0x1f, 0x01, 0x02, 0x01, 0x00, 0x17, 0x00,
11116 : 0x02, 0x1f, 0x01, 0x02, 0x02, 0x03, 0x01, 0x02,
11117 : 0x01, 0x01, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x00,
11118 : 0x01, 0x02
11119 : };
11120 : return complete_seq (expand_encoding, operands);
11121 : }
11122 :
11123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28747 */
11124 : extern rtx_insn *gen_peephole2_319 (rtx_insn *, rtx *);
11125 : rtx_insn *
11126 : gen_peephole2_319 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11127 : {
11128 : if (dump_file)
11129 : fprintf (dump_file, "Splitting with gen_peephole2_319 (i386.md:28747)\n");
11130 : start_sequence ();
11131 : #define FAIL return (end_sequence (), nullptr)
11132 : #define DONE return end_sequence ()
11133 : #line 28767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11134 : {
11135 : operands[4] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (1)), 0, 0));
11136 : operands[5]
11137 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11138 : copy_rtx (operands[1]), operands[2]);
11139 : operands[6]
11140 : = gen_rtx_COMPARE (GET_MODE (operands[4]), copy_rtx (operands[5]),
11141 : const0_rtx);
11142 : }
11143 : #undef DONE
11144 : #undef FAIL
11145 : static const uint8_t expand_encoding[] = {
11146 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x01,
11147 : 0x06, 0x1f, 0x01, 0x01, 0x01, 0x05
11148 : };
11149 : return complete_seq (expand_encoding, operands);
11150 : }
11151 :
11152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28813 */
11153 : extern rtx_insn *gen_peephole2_329 (rtx_insn *, rtx *);
11154 : rtx_insn *
11155 : gen_peephole2_329 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11156 : {
11157 : if (dump_file)
11158 : fprintf (dump_file, "Splitting with gen_peephole2_329 (i386.md:28813)\n");
11159 : start_sequence ();
11160 : #define FAIL return (end_sequence (), nullptr)
11161 : #define DONE return end_sequence ()
11162 : #line 28836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11163 : {
11164 : operands[6] = SET_DEST (PATTERN (peep2_next_insn (3)));
11165 : operands[7]
11166 : = gen_rtx_PLUS (SImode,
11167 : copy_rtx (operands[1]),
11168 : gen_lowpart (SImode, operands[2]));
11169 : operands[8]
11170 : = gen_rtx_COMPARE (GET_MODE (operands[6]),
11171 : copy_rtx (operands[7]),
11172 : const0_rtx);
11173 : }
11174 : #undef DONE
11175 : #undef FAIL
11176 : static const uint8_t expand_encoding[] = {
11177 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x01,
11178 : 0x08, 0x1f, 0x01, 0x01, 0x01, 0x07
11179 : };
11180 : return complete_seq (expand_encoding, operands);
11181 : }
11182 :
11183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28916 */
11184 : extern rtx_insn *gen_peephole2_339 (rtx_insn *, rtx *);
11185 : rtx_insn *
11186 : gen_peephole2_339 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11187 : {
11188 : if (dump_file)
11189 : fprintf (dump_file, "Splitting with gen_peephole2_339 (i386.md:28916)\n");
11190 : start_sequence ();
11191 : #define FAIL return (end_sequence (), nullptr)
11192 : #define DONE return end_sequence ()
11193 : #line 28943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11194 : {
11195 : operands[7] = SET_DEST (PATTERN (peep2_next_insn (3)));
11196 : operands[8] = gen_rtx_XOR (QImode, copy_rtx (operands[1]),
11197 : operands[2]);
11198 : operands[9]
11199 : = gen_rtx_COMPARE (GET_MODE (operands[7]),
11200 : copy_rtx (operands[8]),
11201 : const0_rtx);
11202 : }
11203 : #undef DONE
11204 : #undef FAIL
11205 : static const uint8_t expand_encoding[] = {
11206 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
11207 : 0x09, 0x1f, 0x01, 0x01, 0x01, 0x08
11208 : };
11209 : return complete_seq (expand_encoding, operands);
11210 : }
11211 :
11212 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29029 */
11213 : extern rtx_insn *gen_peephole2_349 (rtx_insn *, rtx *);
11214 : rtx_insn *
11215 : gen_peephole2_349 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11216 : {
11217 : if (dump_file)
11218 : fprintf (dump_file, "Splitting with gen_peephole2_349 (i386.md:29029)\n");
11219 : start_sequence ();
11220 : #define FAIL return (end_sequence (), nullptr)
11221 : #define DONE return end_sequence ()
11222 : #line 29056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11223 : {
11224 : operands[6] = SET_DEST (PATTERN (peep2_next_insn (4)));
11225 : operands[7]
11226 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), QImode,
11227 : copy_rtx (operands[1]),
11228 : gen_lowpart (QImode, operands[2]));
11229 : operands[8]
11230 : = gen_rtx_COMPARE (GET_MODE (operands[6]),
11231 : copy_rtx (operands[7]),
11232 : const0_rtx);
11233 : }
11234 : #undef DONE
11235 : #undef FAIL
11236 : static const uint8_t expand_encoding[] = {
11237 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x01,
11238 : 0x08, 0x1f, 0x01, 0x01, 0x01, 0x07
11239 : };
11240 : return complete_seq (expand_encoding, operands);
11241 : }
11242 :
11243 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29148 */
11244 : extern rtx_insn *gen_peephole2_359 (rtx_insn *, rtx *);
11245 : rtx_insn *
11246 : gen_peephole2_359 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11247 : {
11248 : if (dump_file)
11249 : fprintf (dump_file, "Splitting with gen_peephole2_359 (i386.md:29148)\n");
11250 : start_sequence ();
11251 : #define FAIL return (end_sequence (), nullptr)
11252 : #define DONE return end_sequence ()
11253 : #line 29186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11254 : {
11255 : operands[8] = SET_DEST (PATTERN (peep2_next_insn (4)));
11256 : operands[9] = gen_rtx_XOR (QImode, copy_rtx (operands[1]),
11257 : gen_lowpart (QImode, operands[2]));
11258 : operands[10]
11259 : = gen_rtx_COMPARE (GET_MODE (operands[8]),
11260 : copy_rtx (operands[9]),
11261 : const0_rtx);
11262 : }
11263 : #undef DONE
11264 : #undef FAIL
11265 : static const uint8_t expand_encoding[] = {
11266 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x08, 0x01,
11267 : 0x0a, 0x1f, 0x01, 0x01, 0x01, 0x09
11268 : };
11269 : return complete_seq (expand_encoding, operands);
11270 : }
11271 :
11272 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29297 */
11273 : extern rtx_insn *gen_peephole2_370 (rtx_insn *, rtx *);
11274 : rtx_insn *
11275 : gen_peephole2_370 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11276 : {
11277 : if (dump_file)
11278 : fprintf (dump_file, "Splitting with gen_peephole2_370 (i386.md:29297)\n");
11279 : start_sequence ();
11280 : static const uint8_t expand_encoding[] = {
11281 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b,
11282 : 0x11, 0x01, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11
11283 : };
11284 : return complete_seq (expand_encoding, operands);
11285 : }
11286 :
11287 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29339 */
11288 : extern rtx_insn *gen_peephole2_377 (rtx_insn *, rtx *);
11289 : rtx_insn *
11290 : gen_peephole2_377 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11291 : {
11292 : if (dump_file)
11293 : fprintf (dump_file, "Splitting with gen_peephole2_377 (i386.md:29339)\n");
11294 : start_sequence ();
11295 : #define FAIL return (end_sequence (), nullptr)
11296 : #define DONE return end_sequence ()
11297 : #line 29347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11298 : operands[1] = GEN_INT (exact_log2 (INTVAL (operands[1])));
11299 : #undef DONE
11300 : #undef FAIL
11301 : static const uint8_t expand_encoding[] = {
11302 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
11303 : 0x12, 0x01, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11
11304 : };
11305 : return complete_seq (expand_encoding, operands);
11306 : }
11307 :
11308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29413 */
11309 : extern rtx_insn *gen_peephole2_387 (rtx_insn *, rtx *);
11310 : rtx_insn *
11311 : gen_peephole2_387 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11312 : {
11313 : HARD_REG_SET _regs_allocated;
11314 : CLEAR_HARD_REG_SET (_regs_allocated);
11315 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11316 : return NULL;
11317 : if (dump_file)
11318 : fprintf (dump_file, "Splitting with gen_peephole2_387 (i386.md:29413)\n");
11319 : start_sequence ();
11320 : static const uint8_t expand_encoding[] = {
11321 : 0x02, 0x21, 0x00, 0x01, 0x01, 0x1f, 0x36, 0x11,
11322 : 0x56, 0x11, 0x30, 0x11, 0x07, 0x01, 0x01
11323 : };
11324 : return complete_seq (expand_encoding, operands);
11325 : }
11326 :
11327 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29439 */
11328 : extern rtx_insn *gen_peephole2_397 (rtx_insn *, rtx *);
11329 : rtx_insn *
11330 : gen_peephole2_397 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11331 : {
11332 : HARD_REG_SET _regs_allocated;
11333 : CLEAR_HARD_REG_SET (_regs_allocated);
11334 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11335 : return NULL;
11336 : if (dump_file)
11337 : fprintf (dump_file, "Splitting with gen_peephole2_397 (i386.md:29439)\n");
11338 : start_sequence ();
11339 : static const uint8_t expand_encoding[] = {
11340 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x36,
11341 : 0x11, 0x59, 0x12, 0x30, 0x12, 0x07, 0x21, 0x00,
11342 : 0x36, 0x01, 0x31, 0x00
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_407 (rtx_insn *, rtx *);
11349 : rtx_insn *
11350 : gen_peephole2_407 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11351 : {
11352 : HARD_REG_SET _regs_allocated;
11353 : CLEAR_HARD_REG_SET (_regs_allocated);
11354 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11355 : return NULL;
11356 : if (dump_file)
11357 : fprintf (dump_file, "Splitting with gen_peephole2_407 (i386.md:29481)\n");
11358 : start_sequence ();
11359 : static const uint8_t expand_encoding[] = {
11360 : 0x01, 0x1f, 0x01, 0x01, 0x36, 0x11, 0x59, 0x11,
11361 : 0x30, 0x11, 0x07
11362 : };
11363 : return complete_seq (expand_encoding, operands);
11364 : }
11365 :
11366 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29503 */
11367 : extern rtx_insn *gen_peephole2_416 (rtx_insn *, rtx *);
11368 : rtx_insn *
11369 : gen_peephole2_416 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11370 : {
11371 : HARD_REG_SET _regs_allocated;
11372 : CLEAR_HARD_REG_SET (_regs_allocated);
11373 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11374 : return NULL;
11375 : if (dump_file)
11376 : fprintf (dump_file, "Splitting with gen_peephole2_416 (i386.md:29503)\n");
11377 : start_sequence ();
11378 : static const uint8_t expand_encoding[] = {
11379 : 0x02, 0x1f, 0x01, 0x01, 0x36, 0x12, 0x59, 0x11,
11380 : 0x30, 0x11, 0x07, 0x1f, 0x01, 0x01, 0x36, 0x12,
11381 : 0x59, 0x11, 0x30, 0x11, 0x07
11382 : };
11383 : return complete_seq (expand_encoding, operands);
11384 : }
11385 :
11386 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29574 */
11387 : extern rtx_insn *gen_peephole2_426 (rtx_insn *, rtx *);
11388 : rtx_insn *
11389 : gen_peephole2_426 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11390 : {
11391 : HARD_REG_SET _regs_allocated;
11392 : CLEAR_HARD_REG_SET (_regs_allocated);
11393 : if ((operands[3] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11394 : return NULL;
11395 : if (dump_file)
11396 : fprintf (dump_file, "Splitting with gen_peephole2_426 (i386.md:29574)\n");
11397 : start_sequence ();
11398 : static const uint8_t expand_encoding[] = {
11399 : 0x02, 0x1f, 0x01, 0x03, 0x01, 0x01, 0x17, 0x00,
11400 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x3e, 0x11,
11401 : 0x01, 0x03, 0x01, 0x02, 0x05, 0x02, 0x11
11402 : };
11403 : return complete_seq (expand_encoding, operands);
11404 : }
11405 :
11406 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30300 */
11407 : rtx
11408 : gen_pause (void)
11409 : {
11410 : rtx operands[1] ATTRIBUTE_UNUSED;
11411 : start_sequence ();
11412 : {
11413 : #define FAIL return (end_sequence (), nullptr)
11414 : #define DONE return end_sequence ()
11415 : #line 30304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11416 : {
11417 : operands[0] = gen_rtx_MEM (BLKmode, gen_rtx_SCRATCH (Pmode));
11418 : MEM_VOLATILE_P (operands[0]) = 1;
11419 : }
11420 : #undef DONE
11421 : #undef FAIL
11422 : }
11423 : static const uint8_t expand_encoding[] = {
11424 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x01, 0x01, 0x01,
11425 : 0x00, 0x22
11426 : };
11427 : return complete_seq (expand_encoding, operands);
11428 : }
11429 :
11430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30542 */
11431 : rtx
11432 : gen_wrpkru (const rtx operand0)
11433 : {
11434 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0 };
11435 : start_sequence ();
11436 : {
11437 : #define FAIL return (end_sequence (), nullptr)
11438 : #define DONE return end_sequence ()
11439 : #line 30547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11440 : {
11441 : operands[1] = force_reg (SImode, const0_rtx);
11442 : operands[2] = force_reg (SImode, const0_rtx);
11443 : }
11444 : #undef DONE
11445 : #undef FAIL
11446 : }
11447 : static const uint8_t expand_encoding[] = {
11448 : 0x01, 0x1b, 0x11, 0x03, 0x01, 0x00, 0x01, 0x01,
11449 : 0x01, 0x02, 0x38
11450 : };
11451 : return complete_seq (expand_encoding, operands);
11452 : }
11453 :
11454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30793 */
11455 : rtx
11456 : gen_issignalingxf2 (const rtx operand0, const rtx operand1)
11457 : {
11458 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11459 : start_sequence ();
11460 : {
11461 : #define FAIL return (end_sequence (), nullptr)
11462 : #define DONE return end_sequence ()
11463 : #line 30797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11464 : {
11465 : rtx temp = operands[1];
11466 : if (!MEM_P (temp))
11467 : {
11468 : rtx mem = assign_stack_temp (XFmode, GET_MODE_SIZE (XFmode));
11469 : emit_move_insn (mem, temp);
11470 : temp = mem;
11471 : }
11472 : rtx ex = adjust_address (temp, HImode, 8);
11473 : rtx hi = adjust_address (temp, SImode, 4);
11474 : rtx lo = adjust_address (temp, SImode, 0);
11475 : rtx val = GEN_INT (HOST_WIDE_INT_M1U << 30);
11476 : rtx mask = GEN_INT (0x7fff);
11477 : rtx bit = GEN_INT (HOST_WIDE_INT_1U << 30);
11478 : /* Expand to:
11479 : ((ex & mask) && (int) hi >= 0)
11480 : || ((ex & mask) == mask && ((hi ^ bit) | ((lo | -lo) >> 31)) > val). */
11481 : rtx nlo = expand_unop (SImode, neg_optab, lo, NULL_RTX, 0);
11482 : lo = expand_binop (SImode, ior_optab, lo, nlo,
11483 : NULL_RTX, 1, OPTAB_LIB_WIDEN);
11484 : lo = expand_shift (RSHIFT_EXPR, SImode, lo, 31, NULL_RTX, 1);
11485 : temp = expand_binop (SImode, xor_optab, hi, bit,
11486 : NULL_RTX, 1, OPTAB_LIB_WIDEN);
11487 : temp = expand_binop (SImode, ior_optab, temp, lo,
11488 : NULL_RTX, 1, OPTAB_LIB_WIDEN);
11489 : temp = emit_store_flag_force (gen_reg_rtx (SImode), GTU, temp, val,
11490 : SImode, 1, 1);
11491 : ex = expand_binop (HImode, and_optab, ex, mask,
11492 : NULL_RTX, 1, OPTAB_LIB_WIDEN);
11493 : rtx temp2 = emit_store_flag_force (gen_reg_rtx (SImode), NE,
11494 : ex, const0_rtx, SImode, 1, 1);
11495 : ex = emit_store_flag_force (gen_reg_rtx (SImode), EQ,
11496 : ex, mask, HImode, 1, 1);
11497 : temp = expand_binop (SImode, and_optab, temp, ex,
11498 : NULL_RTX, 1, OPTAB_LIB_WIDEN);
11499 : rtx temp3 = emit_store_flag_force (gen_reg_rtx (SImode), GE,
11500 : hi, const0_rtx, SImode, 0, 1);
11501 : temp2 = expand_binop (SImode, and_optab, temp2, temp3,
11502 : NULL_RTX, 1, OPTAB_LIB_WIDEN);
11503 : temp = expand_binop (SImode, ior_optab, temp, temp2,
11504 : NULL_RTX, 1, OPTAB_LIB_WIDEN);
11505 : emit_move_insn (operands[0], temp);
11506 : DONE;
11507 : }
11508 : #undef DONE
11509 : #undef FAIL
11510 : }
11511 : static const uint8_t expand_encoding[] = {
11512 : 0x02, 0x01, 0x00, 0x01, 0x01
11513 : };
11514 : return complete_seq (expand_encoding, operands);
11515 : }
11516 :
11517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:332 */
11518 : rtx
11519 : gen_movv2bf (const rtx operand0, const rtx operand1)
11520 : {
11521 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11522 : start_sequence ();
11523 : {
11524 : #define FAIL return (end_sequence (), nullptr)
11525 : #define DONE return end_sequence ()
11526 : #line 336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11527 : {
11528 : ix86_expand_vector_move (V2BFmode, operands);
11529 : DONE;
11530 : }
11531 : #undef DONE
11532 : #undef FAIL
11533 : }
11534 : static const uint8_t expand_encoding[] = {
11535 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11536 : };
11537 : return complete_seq (expand_encoding, operands);
11538 : }
11539 :
11540 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:423 */
11541 : extern rtx_insn *gen_split_1032 (rtx_insn *, rtx *);
11542 : rtx_insn *
11543 : gen_split_1032 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11544 : {
11545 : if (dump_file)
11546 : fprintf (dump_file, "Splitting with gen_split_1032 (mmx.md:423)\n");
11547 : start_sequence ();
11548 : #define FAIL return (end_sequence (), nullptr)
11549 : #define DONE return end_sequence ()
11550 : #line 429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11551 : {
11552 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (V2BFmode)));
11553 : /* Preserve memory attributes. */
11554 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
11555 : }
11556 : #undef DONE
11557 : #undef FAIL
11558 : static const uint8_t expand_encoding[] = {
11559 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
11560 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
11561 : 0x01
11562 : };
11563 : return complete_seq (expand_encoding, operands);
11564 : }
11565 :
11566 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11567 : extern rtx_insn *gen_split_1036 (rtx_insn *, rtx *);
11568 : rtx_insn *
11569 : gen_split_1036 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11570 : {
11571 : if (dump_file)
11572 : fprintf (dump_file, "Splitting with gen_split_1036 (mmx.md:577)\n");
11573 : start_sequence ();
11574 : #define FAIL return (end_sequence (), nullptr)
11575 : #define DONE return end_sequence ()
11576 : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11577 : {
11578 : rtx op1 = avoid_constant_pool_reference (operands[1]);
11579 :
11580 : if (!CONST_VECTOR_P (op1))
11581 : FAIL;
11582 :
11583 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V1SImode);
11584 :
11585 : operands[0] = lowpart_subreg (SImode, operands[0], V1SImode);
11586 : operands[1] = GEN_INT (val);
11587 : }
11588 : #undef DONE
11589 : #undef FAIL
11590 : static const uint8_t expand_encoding[] = {
11591 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11592 : };
11593 : return complete_seq (expand_encoding, operands);
11594 : }
11595 :
11596 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:598 */
11597 : extern rtx_insn *gen_split_1046 (rtx_insn *, rtx *);
11598 : rtx_insn *
11599 : gen_split_1046 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11600 : {
11601 : if (dump_file)
11602 : fprintf (dump_file, "Splitting with gen_split_1046 (mmx.md:598)\n");
11603 : start_sequence ();
11604 : #define FAIL return (end_sequence (), nullptr)
11605 : #define DONE return end_sequence ()
11606 : #line 605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11607 : {
11608 : rtx op1 = operands[1];
11609 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V2QImode);
11610 :
11611 : operands[0] = adjust_address (operands[0], HImode, 0);
11612 : operands[1] = GEN_INT (val);
11613 : }
11614 : #undef DONE
11615 : #undef FAIL
11616 : static const uint8_t expand_encoding[] = {
11617 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11618 : };
11619 : return complete_seq (expand_encoding, operands);
11620 : }
11621 :
11622 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:598 */
11623 : extern rtx_insn *gen_split_1053 (rtx_insn *, rtx *);
11624 : rtx_insn *
11625 : gen_split_1053 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11626 : {
11627 : if (dump_file)
11628 : fprintf (dump_file, "Splitting with gen_split_1053 (mmx.md:598)\n");
11629 : start_sequence ();
11630 : #define FAIL return (end_sequence (), nullptr)
11631 : #define DONE return end_sequence ()
11632 : #line 605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11633 : {
11634 : rtx op1 = operands[1];
11635 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V4HImode);
11636 :
11637 : operands[0] = adjust_address (operands[0], DImode, 0);
11638 : operands[1] = GEN_INT (val);
11639 : }
11640 : #undef DONE
11641 : #undef FAIL
11642 : static const uint8_t expand_encoding[] = {
11643 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11644 : };
11645 : return complete_seq (expand_encoding, operands);
11646 : }
11647 :
11648 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:670 */
11649 : rtx
11650 : gen_movq_v2si_to_sse (const rtx operand0, const rtx operand1)
11651 : {
11652 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
11653 : start_sequence ();
11654 : {
11655 : #define FAIL return (end_sequence (), nullptr)
11656 : #define DONE return end_sequence ()
11657 : #line 676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11658 : {
11659 : if (V2SImode != V2SImode
11660 : && !flag_trapping_math)
11661 : {
11662 : rtx op1 = force_reg (V2SImode, operands[1]);
11663 : emit_move_insn (operands[0], lowpart_subreg (V4SImode,
11664 : op1, V2SImode));
11665 : DONE;
11666 : }
11667 :
11668 : operands[2] = CONST0_RTX (V2SImode);
11669 : }
11670 : #undef DONE
11671 : #undef FAIL
11672 : }
11673 : static const uint8_t expand_encoding[] = {
11674 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x01,
11675 : 0x01, 0x01, 0x02
11676 : };
11677 : return complete_seq (expand_encoding, operands);
11678 : }
11679 :
11680 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:776 */
11681 : rtx
11682 : gen_mmx_subv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11683 : {
11684 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11685 : static const uint8_t expand_encoding[] = {
11686 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x67,
11687 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
11688 : 0x00, 0x6f
11689 : };
11690 : return expand_rtx (expand_encoding, operands);
11691 : }
11692 :
11693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:866 */
11694 : rtx
11695 : gen_mmx_smaxv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11696 : {
11697 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11698 : start_sequence ();
11699 : {
11700 : #define FAIL return (end_sequence (), nullptr)
11701 : #define DONE return end_sequence ()
11702 : #line 873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11703 : {
11704 : if (!flag_finite_math_only || flag_signed_zeros)
11705 : {
11706 : operands[1] = force_reg (V2SFmode, operands[1]);
11707 : emit_insn (gen_mmx_ieee_maxv2sf3
11708 : (operands[0], operands[1], operands[2]));
11709 : DONE;
11710 : }
11711 : else
11712 : ix86_fixup_binary_operands_no_copy (SMAX, V2SFmode, operands);
11713 : }
11714 : #undef DONE
11715 : #undef FAIL
11716 : }
11717 : static const uint8_t expand_encoding[] = {
11718 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x53,
11719 : 0x67, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
11720 : 0x27, 0x00, 0x6f
11721 : };
11722 : return complete_seq (expand_encoding, operands);
11723 : }
11724 :
11725 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1392 */
11726 : rtx
11727 : gen_copysignv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11728 : {
11729 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11730 : start_sequence ();
11731 : {
11732 : #define FAIL _Pragma ("GCC error \"copysignv2sf3 cannot FAIL\"") (void)0
11733 : #define DONE return end_sequence ()
11734 : #line 1403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11735 : {
11736 : operands[3] = ix86_build_signbit_mask (V2SFmode, true, false);
11737 :
11738 : operands[4] = gen_reg_rtx (V2SFmode);
11739 : operands[5] = gen_reg_rtx (V2SFmode);
11740 : }
11741 : #undef DONE
11742 : #undef FAIL
11743 : }
11744 : static const uint8_t expand_encoding[] = {
11745 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x67, 0x4c, 0x67,
11746 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
11747 : 0x67, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
11748 : 0x4a, 0x67, 0x01, 0x04, 0x01, 0x05
11749 : };
11750 : return complete_seq (expand_encoding, operands);
11751 : }
11752 :
11753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1606 */
11754 : rtx
11755 : gen_floatunsv2siv2sf2 (const rtx operand0, const rtx operand1)
11756 : {
11757 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11758 : start_sequence ();
11759 : {
11760 : #define FAIL return (end_sequence (), nullptr)
11761 : #define DONE return end_sequence ()
11762 : #line 1610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11763 : {
11764 : rtx op1 = gen_reg_rtx (V4SImode);
11765 : rtx op0 = gen_reg_rtx (V4SFmode);
11766 :
11767 : emit_insn (gen_movq_v2si_to_sse (op1, operands[1]));
11768 :
11769 : emit_insn (gen_floatunsv4siv4sf2 (op0, op1));
11770 :
11771 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11772 : DONE;
11773 : }
11774 : #undef DONE
11775 : #undef FAIL
11776 : }
11777 : static const uint8_t expand_encoding[] = {
11778 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x67, 0x01, 0x01
11779 : };
11780 : return complete_seq (expand_encoding, operands);
11781 : }
11782 :
11783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1933 */
11784 : rtx
11785 : gen_ceilv2sf2 (const rtx operand0, const rtx operand1)
11786 : {
11787 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11788 : start_sequence ();
11789 : {
11790 : #define FAIL _Pragma ("GCC error \"ceilv2sf2 cannot FAIL\"") (void)0
11791 : #define DONE return end_sequence ()
11792 : #line 1938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11793 : {
11794 : rtx op1 = gen_reg_rtx (V4SFmode);
11795 : rtx op0 = gen_reg_rtx (V4SFmode);
11796 :
11797 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11798 :
11799 : emit_insn (gen_ceilv4sf2 (op0, op1));
11800 :
11801 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11802 : DONE;
11803 : }
11804 : #undef DONE
11805 : #undef FAIL
11806 : }
11807 : static const uint8_t expand_encoding[] = {
11808 : 0x02, 0x01, 0x00, 0x01, 0x01
11809 : };
11810 : return complete_seq (expand_encoding, operands);
11811 : }
11812 :
11813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2094 */
11814 : rtx
11815 : gen_movd_v2hi_to_sse (const rtx operand0, const rtx operand1)
11816 : {
11817 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
11818 : start_sequence ();
11819 : {
11820 : #define FAIL return (end_sequence (), nullptr)
11821 : #define DONE return end_sequence ()
11822 : #line 2102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11823 : {
11824 : if (!flag_trapping_math)
11825 : {
11826 : rtx op1 = force_reg (V2HImode, operands[1]);
11827 : emit_move_insn (operands[0],
11828 : lowpart_subreg (V8HImode, op1, V2HImode));
11829 : DONE;
11830 : }
11831 : operands[2] = CONST0_RTX (V8HImode);
11832 : }
11833 : #undef DONE
11834 : #undef FAIL
11835 : }
11836 : static const uint8_t expand_encoding[] = {
11837 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81,
11838 : 0x0c, 0x50, 0x01, 0x01, 0x01, 0x02, 0x27, 0x03
11839 : };
11840 : return complete_seq (expand_encoding, operands);
11841 : }
11842 :
11843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2142 */
11844 : rtx
11845 : gen_mulv2bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11846 : {
11847 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11848 : start_sequence ();
11849 : {
11850 : #define FAIL return (end_sequence (), nullptr)
11851 : #define DONE return end_sequence ()
11852 : #line 2148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11853 : {
11854 : rtx op0 = gen_reg_rtx (V8BFmode);
11855 : rtx op1 = lowpart_subreg (V8BFmode,
11856 : force_reg (V2BFmode, operands[1]), V2BFmode);
11857 : rtx op2 = lowpart_subreg (V8BFmode,
11858 : force_reg (V2BFmode, operands[2]), V2BFmode);
11859 :
11860 : emit_insn (gen_mulv8bf3 (op0, op1, op2));
11861 :
11862 : emit_move_insn (operands[0], lowpart_subreg (V2BFmode, op0, V8BFmode));
11863 : DONE;
11864 : }
11865 : #undef DONE
11866 : #undef FAIL
11867 : }
11868 : static const uint8_t expand_encoding[] = {
11869 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x64, 0x01, 0x01,
11870 : 0x01, 0x02
11871 : };
11872 : return complete_seq (expand_encoding, operands);
11873 : }
11874 :
11875 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2181 */
11876 : rtx
11877 : gen_sminv4hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11878 : {
11879 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11880 : start_sequence ();
11881 : {
11882 : #define FAIL return (end_sequence (), nullptr)
11883 : #define DONE return end_sequence ()
11884 : #line 2187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11885 : {
11886 : rtx op2 = gen_reg_rtx (V8HFmode);
11887 : rtx op1 = gen_reg_rtx (V8HFmode);
11888 : rtx op0 = gen_reg_rtx (V8HFmode);
11889 :
11890 : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
11891 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
11892 :
11893 : emit_insn (gen_sminv8hf3 (op0, op1, op2));
11894 :
11895 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
11896 : DONE;
11897 : }
11898 : #undef DONE
11899 : #undef FAIL
11900 : }
11901 : static const uint8_t expand_encoding[] = {
11902 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x66, 0x01, 0x01,
11903 : 0x01, 0x02
11904 : };
11905 : return complete_seq (expand_encoding, operands);
11906 : }
11907 :
11908 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2254 */
11909 : rtx
11910 : gen_negv2bf2 (const rtx operand0, const rtx operand1)
11911 : {
11912 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11913 : start_sequence ();
11914 : {
11915 : #define FAIL return (end_sequence (), nullptr)
11916 : #define DONE return end_sequence ()
11917 : #line 2259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11918 : ix86_expand_fp_absneg_operator (NEG, V2BFmode, operands); DONE;
11919 : #undef DONE
11920 : #undef FAIL
11921 : }
11922 : static const uint8_t expand_encoding[] = {
11923 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x64, 0x01, 0x01
11924 : };
11925 : return complete_seq (expand_encoding, operands);
11926 : }
11927 :
11928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2254 */
11929 : rtx
11930 : gen_absv2hf2 (const rtx operand0, const rtx operand1)
11931 : {
11932 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11933 : start_sequence ();
11934 : {
11935 : #define FAIL return (end_sequence (), nullptr)
11936 : #define DONE return end_sequence ()
11937 : #line 2259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11938 : ix86_expand_fp_absneg_operator (ABS, V2HFmode, operands); DONE;
11939 : #undef DONE
11940 : #undef FAIL
11941 : }
11942 : static const uint8_t expand_encoding[] = {
11943 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x63, 0x01, 0x01
11944 : };
11945 : return complete_seq (expand_encoding, operands);
11946 : }
11947 :
11948 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2261 */
11949 : extern rtx_insn *gen_split_1076 (rtx_insn *, rtx *);
11950 : rtx_insn *
11951 : gen_split_1076 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11952 : {
11953 : if (dump_file)
11954 : fprintf (dump_file, "Splitting with gen_split_1076 (mmx.md:2261)\n");
11955 : start_sequence ();
11956 : #define FAIL return (end_sequence (), nullptr)
11957 : #define DONE return end_sequence ()
11958 : #line 2271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11959 : {
11960 : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
11961 : std::swap (operands[1], operands[2]);
11962 : }
11963 : #undef DONE
11964 : #undef FAIL
11965 : static const uint8_t expand_encoding[] = {
11966 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x66, 0x01, 0x01,
11967 : 0x01, 0x02
11968 : };
11969 : return complete_seq (expand_encoding, operands);
11970 : }
11971 :
11972 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2362 */
11973 : rtx
11974 : gen_vcond_mask_v2hfv2hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11975 : {
11976 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11977 : start_sequence ();
11978 : {
11979 : #define FAIL _Pragma ("GCC error \"vcond_mask_v2hfv2hi cannot FAIL\"") (void)0
11980 : #define DONE return end_sequence ()
11981 : #line 2369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11982 : {
11983 : ix86_expand_sse_movcc (operands[0], operands[3],
11984 : operands[1], operands[2]);
11985 : DONE;
11986 : }
11987 : #undef DONE
11988 : #undef FAIL
11989 : }
11990 : static const uint8_t expand_encoding[] = {
11991 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x63, 0x01,
11992 : 0x01, 0x01, 0x02, 0x01, 0x03
11993 : };
11994 : return complete_seq (expand_encoding, operands);
11995 : }
11996 :
11997 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2394 */
11998 : rtx
11999 : gen_vec_cmpv4bfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12000 : {
12001 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12002 : start_sequence ();
12003 : {
12004 : #define FAIL return (end_sequence (), nullptr)
12005 : #define DONE return end_sequence ()
12006 : #line 2400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12007 : {
12008 : rtx op2 = lowpart_subreg (V8BFmode,
12009 : force_reg (V4BFmode, operands[2]), V4BFmode);
12010 : rtx op3 = lowpart_subreg (V8BFmode,
12011 : force_reg (V4BFmode, operands[3]), V4BFmode);
12012 :
12013 : emit_insn (gen_vec_cmpv8bfqi (operands[0], operands[1], op2, op3));
12014 : DONE;
12015 : }
12016 : #undef DONE
12017 : #undef FAIL
12018 : }
12019 : static const uint8_t expand_encoding[] = {
12020 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
12021 : 0x02, 0x01, 0x03
12022 : };
12023 : return complete_seq (expand_encoding, operands);
12024 : }
12025 :
12026 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2515 */
12027 : rtx
12028 : gen_ceilv2hf2 (const rtx operand0, const rtx operand1)
12029 : {
12030 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12031 : start_sequence ();
12032 : {
12033 : #define FAIL _Pragma ("GCC error \"ceilv2hf2 cannot FAIL\"") (void)0
12034 : #define DONE return end_sequence ()
12035 : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12036 : {
12037 : rtx op1 = gen_reg_rtx (V8HFmode);
12038 : rtx op0 = gen_reg_rtx (V8HFmode);
12039 :
12040 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12041 : emit_insn (gen_ceilv8hf2 (op0, op1));
12042 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
12043 :
12044 : DONE;
12045 : }
12046 : #undef DONE
12047 : #undef FAIL
12048 : }
12049 : static const uint8_t expand_encoding[] = {
12050 : 0x02, 0x01, 0x00, 0x01, 0x01
12051 : };
12052 : return complete_seq (expand_encoding, operands);
12053 : }
12054 :
12055 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2618 */
12056 : rtx
12057 : gen_copysignv2hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
12058 : {
12059 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12060 : start_sequence ();
12061 : {
12062 : #define FAIL _Pragma ("GCC error \"copysignv2hf3 cannot FAIL\"") (void)0
12063 : #define DONE return end_sequence ()
12064 : #line 2629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12065 : {
12066 : operands[3] = ix86_build_signbit_mask (V2HFmode, true, false);
12067 :
12068 : operands[4] = gen_reg_rtx (V2HFmode);
12069 : operands[5] = gen_reg_rtx (V2HFmode);
12070 : }
12071 : #undef DONE
12072 : #undef FAIL
12073 : }
12074 : static const uint8_t expand_encoding[] = {
12075 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x63, 0x4c, 0x63,
12076 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
12077 : 0x63, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
12078 : 0x4a, 0x63, 0x01, 0x04, 0x01, 0x05
12079 : };
12080 : return complete_seq (expand_encoding, operands);
12081 : }
12082 :
12083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2668 */
12084 : rtx
12085 : gen_fmav2hf4 (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 \"fmav2hf4 cannot FAIL\"") (void)0
12091 : #define DONE return end_sequence ()
12092 : #line 2675 "/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_fmav8hf4 (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, 0x01,
12113 : 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:2812 */
12119 : rtx
12120 : gen_fmav2bf4 (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 \"fmav2bf4 cannot FAIL\"") (void)0
12126 : #define DONE return end_sequence ()
12127 : #line 2819 "/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_fmav8bf4 (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, 0x01,
12144 : 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:2944 */
12150 : rtx
12151 : gen_cmulv4hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
12152 : {
12153 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12154 : start_sequence ();
12155 : {
12156 : #define FAIL _Pragma ("GCC error \"cmulv4hf3 cannot FAIL\"") (void)0
12157 : #define DONE return end_sequence ()
12158 : #line 2950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12159 : {
12160 : rtx op2 = gen_reg_rtx (V8HFmode);
12161 : rtx op1 = gen_reg_rtx (V8HFmode);
12162 : rtx op0 = gen_reg_rtx (V8HFmode);
12163 :
12164 : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
12165 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12166 :
12167 : emit_insn (gen_cmulv8hf3 (op0, op1, op2));
12168 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12169 : DONE;
12170 : }
12171 : #undef DONE
12172 : #undef FAIL
12173 : }
12174 : static const uint8_t expand_encoding[] = {
12175 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12176 : };
12177 : return complete_seq (expand_encoding, operands);
12178 : }
12179 :
12180 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3044 */
12181 : rtx
12182 : gen_floatv2siv2hf2 (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 3050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12190 : {
12191 : rtx op1 = gen_reg_rtx (V4SImode);
12192 : rtx op0 = gen_reg_rtx (V8HFmode);
12193 :
12194 : emit_insn (gen_movq_v2si_to_sse (op1, operands[1]));
12195 :
12196 : emit_insn (gen_avx512fp16_floatv4siv4hf2 (op0, op1));
12197 :
12198 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
12199 : DONE;
12200 : }
12201 : #undef DONE
12202 : #undef FAIL
12203 : }
12204 : static const uint8_t expand_encoding[] = {
12205 : 0x01, 0x1f, 0x01, 0x00, 0x73, 0x63, 0x01, 0x01
12206 : };
12207 : return complete_seq (expand_encoding, operands);
12208 : }
12209 :
12210 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3144 */
12211 : rtx
12212 : gen_negv2si2 (const rtx operand0, const rtx operand1)
12213 : {
12214 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
12215 : start_sequence ();
12216 : {
12217 : #define FAIL return (end_sequence (), nullptr)
12218 : #define DONE return end_sequence ()
12219 : #line 3150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12220 : operands[2] = force_reg (V2SImode, CONST0_RTX (V2SImode));
12221 : #undef DONE
12222 : #undef FAIL
12223 : }
12224 : static const uint8_t expand_encoding[] = {
12225 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x4a, 0x01, 0x02,
12226 : 0x01, 0x01
12227 : };
12228 : return complete_seq (expand_encoding, operands);
12229 : }
12230 :
12231 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3220 */
12232 : rtx
12233 : gen_mmx_subv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12234 : {
12235 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12236 : start_sequence ();
12237 : {
12238 : #define FAIL return (end_sequence (), nullptr)
12239 : #define DONE return end_sequence ()
12240 : #line 3226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12241 : ix86_fixup_binary_operands_no_copy (MINUS, V2SImode, operands);
12242 : #undef DONE
12243 : #undef FAIL
12244 : }
12245 : static const uint8_t expand_encoding[] = {
12246 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x4a, 0x01, 0x01,
12247 : 0x01, 0x02
12248 : };
12249 : return complete_seq (expand_encoding, operands);
12250 : }
12251 :
12252 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3285 */
12253 : extern rtx_insn *gen_split_1085 (rtx_insn *, rtx *);
12254 : rtx_insn *
12255 : gen_split_1085 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12256 : {
12257 : if (dump_file)
12258 : fprintf (dump_file, "Splitting with gen_split_1085 (mmx.md:3285)\n");
12259 : start_sequence ();
12260 : #define FAIL return (end_sequence (), nullptr)
12261 : #define DONE return end_sequence ()
12262 : #line 3310 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12263 : {
12264 : operands[5] = lowpart_subreg (HImode, operands[2], V2QImode);
12265 : operands[4] = lowpart_subreg (HImode, operands[1], V2QImode);
12266 : operands[3] = lowpart_subreg (HImode, operands[0], V2QImode);
12267 : operands[2] = lowpart_subreg (QImode, operands[2], V2QImode);
12268 : operands[1] = lowpart_subreg (QImode, operands[1], V2QImode);
12269 : operands[0] = lowpart_subreg (QImode, operands[0], V2QImode);
12270 : }
12271 : #undef DONE
12272 : #undef FAIL
12273 : static const uint8_t expand_encoding[] = {
12274 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
12275 : 0x00, 0x3c, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05,
12276 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06,
12277 : 0x10, 0x01, 0x03, 0x27, 0x08, 0x27, 0x08, 0x32,
12278 : 0x10, 0x3c, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10,
12279 : 0x01, 0x04, 0x27, 0x08, 0x27, 0x08, 0x00, 0x32,
12280 : 0x0f, 0x81, 0x06, 0x10, 0x01, 0x05, 0x27, 0x08,
12281 : 0x27, 0x08, 0x00, 0x00, 0x05, 0x02, 0x11
12282 : };
12283 : return complete_seq (expand_encoding, operands);
12284 : }
12285 :
12286 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3489 */
12287 : rtx
12288 : gen_mmx_umulv4hi3_highpart (const rtx operand0, const rtx operand1, const rtx operand2)
12289 : {
12290 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12291 : start_sequence ();
12292 : {
12293 : #define FAIL return (end_sequence (), nullptr)
12294 : #define DONE return end_sequence ()
12295 : #line 3501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12296 : ix86_fixup_binary_operands_no_copy (MULT, V4HImode, operands);
12297 : #undef DONE
12298 : #undef FAIL
12299 : }
12300 : static const uint8_t expand_encoding[] = {
12301 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x49, 0x50, 0x51,
12302 : 0x3e, 0x51, 0x6f, 0x51, 0x01, 0x01, 0x6f, 0x51,
12303 : 0x01, 0x02, 0x27, 0x10
12304 : };
12305 : return complete_seq (expand_encoding, operands);
12306 : }
12307 :
12308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3806 */
12309 : rtx
12310 : gen_umaxv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12311 : {
12312 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12313 : static const uint8_t expand_encoding[] = {
12314 : 0x1f, 0x01, 0x00, 0x55, 0x48, 0x01, 0x01, 0x01,
12315 : 0x02
12316 : };
12317 : return expand_rtx (expand_encoding, operands);
12318 : }
12319 :
12320 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3857 */
12321 : rtx
12322 : gen_absv2si2 (const rtx operand0, const rtx operand1)
12323 : {
12324 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12325 : static const uint8_t expand_encoding[] = {
12326 : 0x1f, 0x01, 0x00, 0x7b, 0x4a, 0x01, 0x01
12327 : };
12328 : return expand_rtx (expand_encoding, operands);
12329 : }
12330 :
12331 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3948 */
12332 : rtx
12333 : gen_ashlv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12334 : {
12335 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12336 : static const uint8_t expand_encoding[] = {
12337 : 0x1f, 0x01, 0x00, 0x4d, 0x4a, 0x01, 0x01, 0x01,
12338 : 0x02
12339 : };
12340 : return expand_rtx (expand_encoding, operands);
12341 : }
12342 :
12343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4011 */
12344 : rtx
12345 : gen_lshrv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12346 : {
12347 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12348 : start_sequence ();
12349 : {
12350 : #define FAIL return (end_sequence (), nullptr)
12351 : #define DONE return end_sequence ()
12352 : #line 4016 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12353 : {
12354 : ix86_expand_vecop_qihi_partial (LSHIFTRT, operands[0],
12355 : operands[1], operands[2]);
12356 : DONE;
12357 : }
12358 : #undef DONE
12359 : #undef FAIL
12360 : }
12361 : static const uint8_t expand_encoding[] = {
12362 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x48, 0x01, 0x01,
12363 : 0x01, 0x02
12364 : };
12365 : return complete_seq (expand_encoding, operands);
12366 : }
12367 :
12368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4066 */
12369 : rtx
12370 : gen_vashrv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12371 : {
12372 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12373 : start_sequence ();
12374 : {
12375 : #define FAIL return (end_sequence (), nullptr)
12376 : #define DONE return end_sequence ()
12377 : #line 4072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12378 : {
12379 : ix86_expand_vecop_qihi_partial (ASHIFTRT, operands[0],
12380 : operands[1], operands[2]);
12381 : DONE;
12382 : }
12383 : #undef DONE
12384 : #undef FAIL
12385 : }
12386 : static const uint8_t expand_encoding[] = {
12387 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x48, 0x01, 0x01,
12388 : 0x01, 0x02
12389 : };
12390 : return complete_seq (expand_encoding, operands);
12391 : }
12392 :
12393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4090 */
12394 : rtx
12395 : gen_vec_shl_v4bf (const rtx operand0, const rtx operand1, const rtx operand2)
12396 : {
12397 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12398 : start_sequence ();
12399 : {
12400 : #define FAIL return (end_sequence (), nullptr)
12401 : #define DONE return end_sequence ()
12402 : #line 4096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12403 : {
12404 : rtx op0 = gen_reg_rtx (V1DImode);
12405 : rtx op1 = force_reg (V4BFmode, operands[1]);
12406 :
12407 : emit_insn (gen_mmx_ashlv1di3
12408 : (op0, gen_lowpart (V1DImode, op1), operands[2]));
12409 : emit_move_insn (operands[0], gen_lowpart (V4BFmode, op0));
12410 : DONE;
12411 : }
12412 : #undef DONE
12413 : #undef FAIL
12414 : }
12415 : static const uint8_t expand_encoding[] = {
12416 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x4b, 0x01, 0x01,
12417 : 0x01, 0x02
12418 : };
12419 : return complete_seq (expand_encoding, operands);
12420 : }
12421 :
12422 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4122 */
12423 : rtx
12424 : gen_vec_shr_v4bf (const rtx operand0, const rtx operand1, const rtx operand2)
12425 : {
12426 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12427 : start_sequence ();
12428 : {
12429 : #define FAIL return (end_sequence (), nullptr)
12430 : #define DONE return end_sequence ()
12431 : #line 4128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12432 : {
12433 : rtx op0 = gen_reg_rtx (V1DImode);
12434 : rtx op1 = force_reg (V4BFmode, operands[1]);
12435 :
12436 : emit_insn (gen_mmx_lshrv1di3
12437 : (op0, gen_lowpart (V1DImode, op1), operands[2]));
12438 : emit_move_insn (operands[0], gen_lowpart (V4BFmode, op0));
12439 : DONE;
12440 : }
12441 : #undef DONE
12442 : #undef FAIL
12443 : }
12444 : static const uint8_t expand_encoding[] = {
12445 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x4b, 0x01, 0x01,
12446 : 0x01, 0x02
12447 : };
12448 : return complete_seq (expand_encoding, operands);
12449 : }
12450 :
12451 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4265 */
12452 : rtx
12453 : gen_vec_cmpv8qiv8qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12454 : {
12455 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12456 : start_sequence ();
12457 : {
12458 : #define FAIL return (end_sequence (), nullptr)
12459 : #define DONE return end_sequence ()
12460 : #line 4271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12461 : {
12462 : bool ok = ix86_expand_int_vec_cmp (operands);
12463 : gcc_assert (ok);
12464 : DONE;
12465 : }
12466 : #undef DONE
12467 : #undef FAIL
12468 : }
12469 : static const uint8_t expand_encoding[] = {
12470 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x48, 0x01, 0x01,
12471 : 0x02, 0x01, 0x03
12472 : };
12473 : return complete_seq (expand_encoding, operands);
12474 : }
12475 :
12476 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4301 */
12477 : rtx
12478 : gen_vec_cmpuv2qiv2qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12479 : {
12480 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12481 : start_sequence ();
12482 : {
12483 : #define FAIL return (end_sequence (), nullptr)
12484 : #define DONE return end_sequence ()
12485 : #line 4307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12486 : {
12487 : bool ok = ix86_expand_int_vec_cmp (operands);
12488 : gcc_assert (ok);
12489 : DONE;
12490 : }
12491 : #undef DONE
12492 : #undef FAIL
12493 : }
12494 : static const uint8_t expand_encoding[] = {
12495 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x44, 0x01, 0x01,
12496 : 0x02, 0x01, 0x03
12497 : };
12498 : return complete_seq (expand_encoding, operands);
12499 : }
12500 :
12501 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4387 */
12502 : extern rtx_insn *gen_split_1099 (rtx_insn *, rtx *);
12503 : rtx_insn *
12504 : gen_split_1099 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12505 : {
12506 : if (dump_file)
12507 : fprintf (dump_file, "Splitting with gen_split_1099 (mmx.md:4387)\n");
12508 : start_sequence ();
12509 : #define FAIL return (end_sequence (), nullptr)
12510 : #define DONE return end_sequence ()
12511 : #line 4410 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12512 : {
12513 : operands[6] = gen_reg_rtx (V4HImode);
12514 : operands[7] = lowpart_subreg (V8QImode, operands[6], V4HImode);
12515 : operands[8] = force_reg (V4HImode, operands[4]);
12516 : }
12517 : #undef DONE
12518 : #undef FAIL
12519 : static const uint8_t expand_encoding[] = {
12520 : 0x02, 0x1f, 0x01, 0x06, 0x5d, 0x49, 0x01, 0x03,
12521 : 0x01, 0x08, 0x1f, 0x01, 0x00, 0x1a, 0x48, 0x03,
12522 : 0x01, 0x02, 0x01, 0x01, 0x01, 0x07, 0x34
12523 : };
12524 : return complete_seq (expand_encoding, operands);
12525 : }
12526 :
12527 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4587 */
12528 : extern rtx_insn *gen_split_1107 (rtx_insn *, rtx *);
12529 : rtx_insn *
12530 : gen_split_1107 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12531 : {
12532 : if (dump_file)
12533 : fprintf (dump_file, "Splitting with gen_split_1107 (mmx.md:4587)\n");
12534 : start_sequence ();
12535 : #define FAIL return (end_sequence (), nullptr)
12536 : #define DONE return end_sequence ()
12537 : #line 4594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12538 : {
12539 : operands[1] = lowpart_subreg (SImode, operands[1], V2HImode);
12540 : operands[0] = lowpart_subreg (SImode, operands[0], V2HImode);
12541 : }
12542 : #undef DONE
12543 : #undef FAIL
12544 : static const uint8_t expand_encoding[] = {
12545 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x11, 0x01, 0x01
12546 : };
12547 : return complete_seq (expand_encoding, operands);
12548 : }
12549 :
12550 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4686 */
12551 : extern rtx_insn *gen_split_1117 (rtx_insn *, rtx *);
12552 : rtx_insn *
12553 : gen_split_1117 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12554 : {
12555 : if (dump_file)
12556 : fprintf (dump_file, "Splitting with gen_split_1117 (mmx.md:4686)\n");
12557 : start_sequence ();
12558 : #define FAIL return (end_sequence (), nullptr)
12559 : #define DONE return end_sequence ()
12560 : #line 4695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12561 : {
12562 : operands[2] = lowpart_subreg (V16QImode, operands[2], V4QImode);
12563 : operands[1] = lowpart_subreg (V16QImode, operands[1], V4QImode);
12564 : operands[0] = lowpart_subreg (V16QImode, operands[0], V4QImode);
12565 : }
12566 : #undef DONE
12567 : #undef FAIL
12568 : static const uint8_t expand_encoding[] = {
12569 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x4f, 0x4c, 0x4f,
12570 : 0x01, 0x01, 0x01, 0x02
12571 : };
12572 : return complete_seq (expand_encoding, operands);
12573 : }
12574 :
12575 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4701 */
12576 : rtx
12577 : gen_mmx_xorv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12578 : {
12579 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12580 : start_sequence ();
12581 : {
12582 : #define FAIL return (end_sequence (), nullptr)
12583 : #define DONE return end_sequence ()
12584 : #line 4707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12585 : ix86_fixup_binary_operands_no_copy (XOR, V2SImode, operands);
12586 : #undef DONE
12587 : #undef FAIL
12588 : }
12589 : static const uint8_t expand_encoding[] = {
12590 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x4a, 0x01, 0x01,
12591 : 0x01, 0x02
12592 : };
12593 : return complete_seq (expand_encoding, operands);
12594 : }
12595 :
12596 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4733 */
12597 : rtx
12598 : gen_xorv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12599 : {
12600 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12601 : start_sequence ();
12602 : {
12603 : #define FAIL return (end_sequence (), nullptr)
12604 : #define DONE return end_sequence ()
12605 : #line 4739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12606 : ix86_expand_binary_operator (XOR, V4QImode, operands); DONE;
12607 : #undef DONE
12608 : #undef FAIL
12609 : }
12610 : static const uint8_t expand_encoding[] = {
12611 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x45, 0x01, 0x01,
12612 : 0x01, 0x02
12613 : };
12614 : return complete_seq (expand_encoding, operands);
12615 : }
12616 :
12617 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4753 */
12618 : extern rtx_insn *gen_split_1123 (rtx_insn *, rtx *);
12619 : rtx_insn *
12620 : gen_split_1123 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12621 : {
12622 : if (dump_file)
12623 : fprintf (dump_file, "Splitting with gen_split_1123 (mmx.md:4753)\n");
12624 : start_sequence ();
12625 : #define FAIL return (end_sequence (), nullptr)
12626 : #define DONE return end_sequence ()
12627 : #line 4764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12628 : {
12629 : if (!register_operand (operands[2], V2QImode))
12630 : {
12631 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (operands[2],
12632 : V2QImode);
12633 : operands[2] = GEN_INT (val);
12634 : }
12635 : else
12636 : operands[2] = lowpart_subreg (HImode, operands[2], V2QImode);
12637 : operands[1] = lowpart_subreg (HImode, operands[1], V2QImode);
12638 : operands[0] = lowpart_subreg (HImode, operands[0], V2QImode);
12639 : }
12640 : #undef DONE
12641 : #undef FAIL
12642 : static const uint8_t expand_encoding[] = {
12643 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
12644 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
12645 : };
12646 : return complete_seq (expand_encoding, operands);
12647 : }
12648 :
12649 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4777 */
12650 : extern rtx_insn *gen_split_1133 (rtx_insn *, rtx *);
12651 : rtx_insn *
12652 : gen_split_1133 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12653 : {
12654 : if (dump_file)
12655 : fprintf (dump_file, "Splitting with gen_split_1133 (mmx.md:4777)\n");
12656 : start_sequence ();
12657 : #define FAIL return (end_sequence (), nullptr)
12658 : #define DONE return end_sequence ()
12659 : #line 4786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12660 : {
12661 : operands[2] = lowpart_subreg (V16QImode, operands[2], V2QImode);
12662 : operands[1] = lowpart_subreg (V16QImode, operands[1], V2QImode);
12663 : operands[0] = lowpart_subreg (V16QImode, operands[0], V2QImode);
12664 : }
12665 : #undef DONE
12666 : #undef FAIL
12667 : static const uint8_t expand_encoding[] = {
12668 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x4f, 0x01, 0x01,
12669 : 0x01, 0x02
12670 : };
12671 : return complete_seq (expand_encoding, operands);
12672 : }
12673 :
12674 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4897 */
12675 : extern rtx_insn *gen_split_1143 (rtx_insn *, rtx *);
12676 : rtx_insn *
12677 : gen_split_1143 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
12678 : {
12679 : if (dump_file)
12680 : fprintf (dump_file, "Splitting with gen_split_1143 (mmx.md:4897)\n");
12681 : start_sequence ();
12682 : #define FAIL return (end_sequence (), nullptr)
12683 : #define DONE return end_sequence ()
12684 : #line 4909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12685 : ix86_split_mmx_punpck (operands, true); DONE;
12686 : #undef DONE
12687 : #undef FAIL
12688 : static const uint8_t expand_encoding[] = {
12689 : 0x01, 0x27, 0x00
12690 : };
12691 : return complete_seq (expand_encoding, operands);
12692 : }
12693 :
12694 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5087 */
12695 : rtx
12696 : gen_zero_extendv2hiv2si2 (const rtx operand0, const rtx operand1)
12697 : {
12698 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12699 : start_sequence ();
12700 : {
12701 : #define FAIL return (end_sequence (), nullptr)
12702 : #define DONE return end_sequence ()
12703 : #line 5092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12704 : {
12705 : if (!TARGET_SSE4_1)
12706 : {
12707 : ix86_expand_sse_extend (operands[0], operands[1], true);
12708 : DONE;
12709 : }
12710 :
12711 : rtx op1 = force_reg (V2HImode, operands[1]);
12712 : op1 = lowpart_subreg (V4HImode, op1, V2HImode);
12713 : emit_insn (gen_sse4_1_zero_extendv2hiv2si2 (operands[0], op1));
12714 : DONE;
12715 : }
12716 : #undef DONE
12717 : #undef FAIL
12718 : }
12719 : static const uint8_t expand_encoding[] = {
12720 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x4a, 0x01, 0x01
12721 : };
12722 : return complete_seq (expand_encoding, operands);
12723 : }
12724 :
12725 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5245 */
12726 : rtx
12727 : gen_vec_unpacks_lo_v4hi (const rtx operand0, const rtx operand1)
12728 : {
12729 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12730 : start_sequence ();
12731 : {
12732 : #define FAIL return (end_sequence (), nullptr)
12733 : #define DONE return end_sequence ()
12734 : #line 5249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12735 : ix86_expand_sse_unpack (operands[0], operands[1], false, false); DONE;
12736 : #undef DONE
12737 : #undef FAIL
12738 : }
12739 : static const uint8_t expand_encoding[] = {
12740 : 0x02, 0x01, 0x00, 0x01, 0x01
12741 : };
12742 : return complete_seq (expand_encoding, operands);
12743 : }
12744 :
12745 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5263 */
12746 : rtx
12747 : gen_vec_unpacku_hi_v4hi (const rtx operand0, const rtx operand1)
12748 : {
12749 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12750 : start_sequence ();
12751 : {
12752 : #define FAIL return (end_sequence (), nullptr)
12753 : #define DONE return end_sequence ()
12754 : #line 5267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12755 : ix86_expand_sse_unpack (operands[0], operands[1], true, true); DONE;
12756 : #undef DONE
12757 : #undef FAIL
12758 : }
12759 : static const uint8_t expand_encoding[] = {
12760 : 0x02, 0x01, 0x00, 0x01, 0x01
12761 : };
12762 : return complete_seq (expand_encoding, operands);
12763 : }
12764 :
12765 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5756 */
12766 : rtx
12767 : gen_vec_setv2si (const rtx operand0, const rtx operand1, const rtx operand2)
12768 : {
12769 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12770 : start_sequence ();
12771 : {
12772 : #define FAIL _Pragma ("GCC error \"vec_setv2si cannot FAIL\"") (void)0
12773 : #define DONE return end_sequence ()
12774 : #line 5761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12775 : {
12776 : if (CONST_INT_P (operands[2]))
12777 : ix86_expand_vector_set (TARGET_MMX_WITH_SSE, operands[0], operands[1],
12778 : INTVAL (operands[2]));
12779 : else
12780 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
12781 : DONE;
12782 : }
12783 : #undef DONE
12784 : #undef FAIL
12785 : }
12786 : static const uint8_t expand_encoding[] = {
12787 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12788 : };
12789 : return complete_seq (expand_encoding, operands);
12790 : }
12791 :
12792 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5958 */
12793 : rtx
12794 : gen_vec_initv4hfhf (const rtx operand0, const rtx operand1)
12795 : {
12796 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12797 : start_sequence ();
12798 : {
12799 : #define FAIL return (end_sequence (), nullptr)
12800 : #define DONE return end_sequence ()
12801 : #line 5962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12802 : {
12803 : ix86_expand_vector_init (TARGET_MMX_WITH_SSE, operands[0],
12804 : operands[1]);
12805 : DONE;
12806 : }
12807 : #undef DONE
12808 : #undef FAIL
12809 : }
12810 : static const uint8_t expand_encoding[] = {
12811 : 0x02, 0x01, 0x00, 0x01, 0x01
12812 : };
12813 : return complete_seq (expand_encoding, operands);
12814 : }
12815 :
12816 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6040 */
12817 : extern rtx_insn *gen_split_1160 (rtx_insn *, rtx *);
12818 : rtx_insn *
12819 : gen_split_1160 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12820 : {
12821 : if (dump_file)
12822 : fprintf (dump_file, "Splitting with gen_split_1160 (mmx.md:6040)\n");
12823 : start_sequence ();
12824 : #define FAIL return (end_sequence (), nullptr)
12825 : #define DONE return end_sequence ()
12826 : #line 6054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12827 : operands[3] = GEN_INT (~INTVAL (operands[3]) & 0x3);
12828 : #undef DONE
12829 : #undef FAIL
12830 : static const uint8_t expand_encoding[] = {
12831 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x46, 0x01,
12832 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x46, 0x01,
12833 : 0x01, 0x01, 0x00, 0x01, 0x03
12834 : };
12835 : return complete_seq (expand_encoding, operands);
12836 : }
12837 :
12838 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6246 */
12839 : extern rtx_insn *gen_split_1162 (rtx_insn *, rtx *);
12840 : rtx_insn *
12841 : gen_split_1162 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12842 : {
12843 : if (dump_file)
12844 : fprintf (dump_file, "Splitting with gen_split_1162 (mmx.md:6246)\n");
12845 : start_sequence ();
12846 : #define FAIL return (end_sequence (), nullptr)
12847 : #define DONE return end_sequence ()
12848 : #line 6264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12849 : {
12850 : rtx dest = lowpart_subreg (V8BFmode, operands[0], V2BFmode);
12851 : rtx op1 = lowpart_subreg (V8BFmode, operands[1], V2BFmode);
12852 : rtx op2 = lowpart_subreg (V8BFmode, operands[2], V2BFmode);
12853 :
12854 : emit_insn (gen_vec_interleave_lowv8bf (dest, op1, op2));
12855 :
12856 : static const int map[4] = { 0, 2, 1, 3 };
12857 :
12858 : int sel0 = map[INTVAL (operands[3])];
12859 : int sel1 = map[INTVAL (operands[4])];
12860 :
12861 : if (sel0 == 0 && sel1 == 1)
12862 : DONE;
12863 :
12864 : operands[3] = GEN_INT (sel0);
12865 : operands[4] = GEN_INT (sel1);
12866 : operands[5] = dest;
12867 : }
12868 : #undef DONE
12869 : #undef FAIL
12870 : static const uint8_t expand_encoding[] = {
12871 : 0x01, 0x1f, 0x01, 0x05, 0x81, 0x0a, 0x69, 0x01,
12872 : 0x05, 0x17, 0x00, 0x08, 0x01, 0x03, 0x01, 0x04,
12873 : 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05,
12874 : 0x27, 0x06, 0x27, 0x07
12875 : };
12876 : return complete_seq (expand_encoding, operands);
12877 : }
12878 :
12879 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6546 */
12880 : rtx
12881 : gen_reduc_ior_scal_v4hi (const rtx operand0, const rtx operand1)
12882 : {
12883 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12884 : start_sequence ();
12885 : {
12886 : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v4hi cannot FAIL\"") (void)0
12887 : #define DONE return end_sequence ()
12888 : #line 6551 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12889 : {
12890 : rtx tmp = gen_reg_rtx (V4HImode);
12891 : ix86_expand_reduc (gen_iorv4hi3, tmp, operands[1]);
12892 : emit_insn (gen_vec_extractv4hihi (operands[0],
12893 : tmp, const0_rtx));
12894 : DONE;
12895 : }
12896 : #undef DONE
12897 : #undef FAIL
12898 : }
12899 : static const uint8_t expand_encoding[] = {
12900 : 0x01, 0x4a, 0x49, 0x01, 0x00, 0x01, 0x01
12901 : };
12902 : return complete_seq (expand_encoding, operands);
12903 : }
12904 :
12905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6610 */
12906 : rtx
12907 : gen_reduc_smin_scal_v4qi (const rtx operand0, const rtx operand1)
12908 : {
12909 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12910 : start_sequence ();
12911 : {
12912 : #define FAIL return (end_sequence (), nullptr)
12913 : #define DONE return end_sequence ()
12914 : #line 6615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12915 : {
12916 : rtx tmp = gen_reg_rtx (V4QImode);
12917 : ix86_expand_reduc (gen_sminv4qi3, tmp, operands[1]);
12918 : emit_insn (gen_vec_extractv4qiqi (operands[0], tmp, const0_rtx));
12919 : DONE;
12920 : }
12921 : #undef DONE
12922 : #undef FAIL
12923 : }
12924 : static const uint8_t expand_encoding[] = {
12925 : 0x01, 0x52, 0x45, 0x01, 0x00, 0x01, 0x01
12926 : };
12927 : return complete_seq (expand_encoding, operands);
12928 : }
12929 :
12930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6814 */
12931 : rtx
12932 : gen_usdot_prodv2siv4hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12933 : {
12934 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12935 : start_sequence ();
12936 : {
12937 : #define FAIL return (end_sequence (), nullptr)
12938 : #define DONE return end_sequence ()
12939 : #line 6820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12940 : {
12941 : operands[1] = force_reg (V4HImode, operands[1]);
12942 : operands[2] = force_reg (V4HImode, operands[2]);
12943 : operands[3] = force_reg (V2SImode, operands[3]);
12944 :
12945 : rtx op1 = lowpart_subreg (V8HImode, operands[1], V4HImode);
12946 : rtx op2 = lowpart_subreg (V8HImode, operands[2], V4HImode);
12947 : rtx op3 = lowpart_subreg (V4SImode, operands[3], V2SImode);
12948 : rtx op0 = gen_reg_rtx (V4SImode);
12949 :
12950 : emit_insn (gen_usdot_prodv4siv8hi (op0, op1, op2, op3));
12951 : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
12952 : DONE;
12953 : }
12954 : #undef DONE
12955 : #undef FAIL
12956 : }
12957 : static const uint8_t expand_encoding[] = {
12958 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
12959 : 0x03
12960 : };
12961 : return complete_seq (expand_encoding, operands);
12962 : }
12963 :
12964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12965 : rtx
12966 : gen_movv32hi (const rtx operand0, const rtx operand1)
12967 : {
12968 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12969 : start_sequence ();
12970 : {
12971 : #define FAIL return (end_sequence (), nullptr)
12972 : #define DONE return end_sequence ()
12973 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12974 : {
12975 : ix86_expand_vector_move (V32HImode, operands);
12976 : DONE;
12977 : }
12978 : #undef DONE
12979 : #undef FAIL
12980 : }
12981 : static const uint8_t expand_encoding[] = {
12982 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
12983 : };
12984 : return complete_seq (expand_encoding, operands);
12985 : }
12986 :
12987 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12988 : rtx
12989 : gen_movv2di (const rtx operand0, const rtx operand1)
12990 : {
12991 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12992 : start_sequence ();
12993 : {
12994 : #define FAIL return (end_sequence (), nullptr)
12995 : #define DONE return end_sequence ()
12996 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12997 : {
12998 : ix86_expand_vector_move (V2DImode, operands);
12999 : DONE;
13000 : }
13001 : #undef DONE
13002 : #undef FAIL
13003 : }
13004 : static const uint8_t expand_encoding[] = {
13005 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13006 : };
13007 : return complete_seq (expand_encoding, operands);
13008 : }
13009 :
13010 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
13011 : rtx
13012 : gen_movv16sf (const rtx operand0, const rtx operand1)
13013 : {
13014 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13015 : start_sequence ();
13016 : {
13017 : #define FAIL return (end_sequence (), nullptr)
13018 : #define DONE return end_sequence ()
13019 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13020 : {
13021 : ix86_expand_vector_move (V16SFmode, operands);
13022 : DONE;
13023 : }
13024 : #undef DONE
13025 : #undef FAIL
13026 : }
13027 : static const uint8_t expand_encoding[] = {
13028 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13029 : };
13030 : return complete_seq (expand_encoding, operands);
13031 : }
13032 :
13033 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13034 : extern rtx_insn *gen_split_1169 (rtx_insn *, rtx *);
13035 : rtx_insn *
13036 : gen_split_1169 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13037 : {
13038 : if (dump_file)
13039 : fprintf (dump_file, "Splitting with gen_split_1169 (sse.md:1539)\n");
13040 : start_sequence ();
13041 : #define FAIL return (end_sequence (), nullptr)
13042 : #define DONE return end_sequence ()
13043 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13044 : operands[2] = CONST0_RTX (V16HImode);
13045 : #undef DONE
13046 : #undef FAIL
13047 : static const uint8_t expand_encoding[] = {
13048 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13049 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13050 : 0x01, 0x01, 0x00, 0x27
13051 : };
13052 : return complete_seq (expand_encoding, operands);
13053 : }
13054 :
13055 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13056 : extern rtx_insn *gen_split_1179 (rtx_insn *, rtx *);
13057 : rtx_insn *
13058 : gen_split_1179 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13059 : {
13060 : if (dump_file)
13061 : fprintf (dump_file, "Splitting with gen_split_1179 (sse.md:1539)\n");
13062 : start_sequence ();
13063 : #define FAIL return (end_sequence (), nullptr)
13064 : #define DONE return end_sequence ()
13065 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13066 : operands[2] = CONST0_RTX (V1TImode);
13067 : #undef DONE
13068 : #undef FAIL
13069 : static const uint8_t expand_encoding[] = {
13070 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13071 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13072 : 0x01, 0x01, 0x00, 0x27
13073 : };
13074 : return complete_seq (expand_encoding, operands);
13075 : }
13076 :
13077 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13078 : extern rtx_insn *gen_split_1189 (rtx_insn *, rtx *);
13079 : rtx_insn *
13080 : gen_split_1189 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13081 : {
13082 : if (dump_file)
13083 : fprintf (dump_file, "Splitting with gen_split_1189 (sse.md:1539)\n");
13084 : start_sequence ();
13085 : #define FAIL return (end_sequence (), nullptr)
13086 : #define DONE return end_sequence ()
13087 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13088 : operands[2] = CONST0_RTX (V8DFmode);
13089 : #undef DONE
13090 : #undef FAIL
13091 : static const uint8_t expand_encoding[] = {
13092 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13093 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13094 : 0x01, 0x01, 0x00, 0x27
13095 : };
13096 : return complete_seq (expand_encoding, operands);
13097 : }
13098 :
13099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1568 */
13100 : rtx
13101 : gen_avx512vl_loadv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13102 : {
13103 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13104 : start_sequence ();
13105 : {
13106 : #define FAIL return (end_sequence (), nullptr)
13107 : #define DONE return end_sequence ()
13108 : #line 1575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13109 : {
13110 : if (CONST_INT_P (operands[3]))
13111 : {
13112 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13113 : DONE;
13114 : }
13115 : else if (MEM_P (operands[1]))
13116 : operands[1] = gen_rtx_UNSPEC (V8SFmode,
13117 : gen_rtvec(1, operands[1]),
13118 : UNSPEC_MASKLOAD);
13119 : }
13120 : #undef DONE
13121 : #undef FAIL
13122 : }
13123 : static const uint8_t expand_encoding[] = {
13124 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x01,
13125 : 0x01, 0x01, 0x02, 0x01, 0x03
13126 : };
13127 : return complete_seq (expand_encoding, operands);
13128 : }
13129 :
13130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1616 */
13131 : extern rtx_insn *gen_split_1198 (rtx_insn *, rtx *);
13132 : rtx_insn *
13133 : gen_split_1198 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13134 : {
13135 : if (dump_file)
13136 : fprintf (dump_file, "Splitting with gen_split_1198 (sse.md:1616)\n");
13137 : start_sequence ();
13138 : static const uint8_t expand_encoding[] = {
13139 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13140 : };
13141 : return complete_seq (expand_encoding, operands);
13142 : }
13143 :
13144 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1645 */
13145 : extern rtx_insn *gen_split_1208 (rtx_insn *, rtx *);
13146 : rtx_insn *
13147 : gen_split_1208 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13148 : {
13149 : if (dump_file)
13150 : fprintf (dump_file, "Splitting with gen_split_1208 (sse.md:1645)\n");
13151 : start_sequence ();
13152 : static const uint8_t expand_encoding[] = {
13153 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a,
13154 : 0x6c, 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x02,
13155 : 0x01, 0x03
13156 : };
13157 : return complete_seq (expand_encoding, operands);
13158 : }
13159 :
13160 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1698 */
13161 : extern rtx_insn *gen_split_1212 (rtx_insn *, rtx *);
13162 : rtx_insn *
13163 : gen_split_1212 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13164 : {
13165 : if (dump_file)
13166 : fprintf (dump_file, "Splitting with gen_split_1212 (sse.md:1698)\n");
13167 : start_sequence ();
13168 : static const uint8_t expand_encoding[] = {
13169 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13170 : };
13171 : return complete_seq (expand_encoding, operands);
13172 : }
13173 :
13174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1698 */
13175 : extern rtx_insn *gen_split_1217 (rtx_insn *, rtx *);
13176 : rtx_insn *
13177 : gen_split_1217 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13178 : {
13179 : if (dump_file)
13180 : fprintf (dump_file, "Splitting with gen_split_1217 (sse.md:1698)\n");
13181 : start_sequence ();
13182 : static const uint8_t expand_encoding[] = {
13183 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13184 : };
13185 : return complete_seq (expand_encoding, operands);
13186 : }
13187 :
13188 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1941 */
13189 : extern rtx_insn *gen_split_1223 (rtx_insn *, rtx *);
13190 : rtx_insn *
13191 : gen_split_1223 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13192 : {
13193 : if (dump_file)
13194 : fprintf (dump_file, "Splitting with gen_split_1223 (sse.md:1941)\n");
13195 : start_sequence ();
13196 : #define FAIL return (end_sequence (), nullptr)
13197 : #define DONE return end_sequence ()
13198 : #line 1950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13199 : {
13200 : operands[1] = gen_lowpart (SFmode, operands[1]);
13201 : operands[2] = CONST0_RTX (V4SFmode);
13202 : }
13203 : #undef DONE
13204 : #undef FAIL
13205 : static const uint8_t expand_encoding[] = {
13206 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
13207 : 0x0c, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x27, 0x01
13208 : };
13209 : return complete_seq (expand_encoding, operands);
13210 : }
13211 :
13212 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13213 : rtx
13214 : gen_movmisalignv2di (const rtx operand0, const rtx operand1)
13215 : {
13216 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13217 : start_sequence ();
13218 : {
13219 : #define FAIL return (end_sequence (), nullptr)
13220 : #define DONE return end_sequence ()
13221 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13222 : {
13223 : ix86_expand_vector_move_misalign (V2DImode, operands);
13224 : DONE;
13225 : }
13226 : #undef DONE
13227 : #undef FAIL
13228 : }
13229 : static const uint8_t expand_encoding[] = {
13230 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13231 : };
13232 : return complete_seq (expand_encoding, operands);
13233 : }
13234 :
13235 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13236 : rtx
13237 : gen_movmisalignv8bf (const rtx operand0, const rtx operand1)
13238 : {
13239 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13240 : start_sequence ();
13241 : {
13242 : #define FAIL return (end_sequence (), nullptr)
13243 : #define DONE return end_sequence ()
13244 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13245 : {
13246 : ix86_expand_vector_move_misalign (V8BFmode, operands);
13247 : DONE;
13248 : }
13249 : #undef DONE
13250 : #undef FAIL
13251 : }
13252 : static const uint8_t expand_encoding[] = {
13253 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13254 : };
13255 : return complete_seq (expand_encoding, operands);
13256 : }
13257 :
13258 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2087 */
13259 : rtx
13260 : gen_storentdi (const rtx operand0, const rtx operand1)
13261 : {
13262 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13263 : static const uint8_t expand_encoding[] = {
13264 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
13265 : 0x76
13266 : };
13267 : return expand_rtx (expand_encoding, operands);
13268 : }
13269 :
13270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2087 */
13271 : rtx
13272 : gen_storentdf (const rtx operand0, const rtx operand1)
13273 : {
13274 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13275 : static const uint8_t expand_encoding[] = {
13276 : 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x01, 0x01, 0x01,
13277 : 0x76
13278 : };
13279 : return expand_rtx (expand_encoding, operands);
13280 : }
13281 :
13282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2114 */
13283 : rtx
13284 : gen_kmovb (const rtx operand0, const rtx operand1)
13285 : {
13286 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13287 : static const uint8_t expand_encoding[] = {
13288 : 0x1f, 0x01, 0x00, 0x01, 0x01
13289 : };
13290 : return expand_rtx (expand_encoding, operands);
13291 : }
13292 :
13293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2142 */
13294 : extern rtx_insn *gen_split_1230 (rtx_insn *, rtx *);
13295 : rtx_insn *
13296 : gen_split_1230 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13297 : {
13298 : if (dump_file)
13299 : fprintf (dump_file, "Splitting with gen_split_1230 (sse.md:2142)\n");
13300 : start_sequence ();
13301 : static const uint8_t expand_encoding[] = {
13302 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
13303 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13304 : 0x27, 0x00, 0x81, 0x2f
13305 : };
13306 : return complete_seq (expand_encoding, operands);
13307 : }
13308 :
13309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2153 */
13310 : extern rtx_insn *gen_split_1240 (rtx_insn *, rtx *);
13311 : rtx_insn *
13312 : gen_split_1240 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13313 : {
13314 : if (dump_file)
13315 : fprintf (dump_file, "Splitting with gen_split_1240 (sse.md:2153)\n");
13316 : start_sequence ();
13317 : static const uint8_t expand_encoding[] = {
13318 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
13319 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13320 : 0x27, 0x00, 0x81, 0x2f
13321 : };
13322 : return complete_seq (expand_encoding, operands);
13323 : }
13324 :
13325 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2188 */
13326 : extern rtx_insn *gen_split_1250 (rtx_insn *, rtx *);
13327 : rtx_insn *
13328 : gen_split_1250 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13329 : {
13330 : if (dump_file)
13331 : fprintf (dump_file, "Splitting with gen_split_1250 (sse.md:2188)\n");
13332 : start_sequence ();
13333 : static const uint8_t expand_encoding[] = {
13334 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
13335 : 0x10, 0x4c, 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a,
13336 : 0x00, 0x01, 0x27, 0x00, 0x81, 0x2f
13337 : };
13338 : return complete_seq (expand_encoding, operands);
13339 : }
13340 :
13341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2306 */
13342 : extern rtx_insn *gen_split_1260 (rtx_insn *, rtx *);
13343 : rtx_insn *
13344 : gen_split_1260 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13345 : {
13346 : if (dump_file)
13347 : fprintf (dump_file, "Splitting with gen_split_1260 (sse.md:2306)\n");
13348 : start_sequence ();
13349 : static const uint8_t expand_encoding[] = {
13350 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
13351 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13352 : 0x27, 0x00, 0x81, 0x2f
13353 : };
13354 : return complete_seq (expand_encoding, operands);
13355 : }
13356 :
13357 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2319 */
13358 : extern rtx_insn *gen_split_1270 (rtx_insn *, rtx *);
13359 : rtx_insn *
13360 : gen_split_1270 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13361 : {
13362 : if (dump_file)
13363 : fprintf (dump_file, "Splitting with gen_split_1270 (sse.md:2319)\n");
13364 : start_sequence ();
13365 : static const uint8_t expand_encoding[] = {
13366 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
13367 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13368 : 0x27, 0x00, 0x81, 0x2f
13369 : };
13370 : return complete_seq (expand_encoding, operands);
13371 : }
13372 :
13373 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2412 */
13374 : extern rtx_insn *gen_split_1276 (rtx_insn *, rtx *);
13375 : rtx_insn *
13376 : gen_split_1276 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
13377 : {
13378 : if (dump_file)
13379 : fprintf (dump_file, "Splitting with gen_split_1276 (sse.md:2412)\n");
13380 : start_sequence ();
13381 : #define FAIL return (end_sequence (), nullptr)
13382 : #define DONE return end_sequence ()
13383 : #line 2422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13384 : {
13385 : if (MASK_REGNO_P (REGNO (operands[2])))
13386 : {
13387 : emit_insn (gen_kortesthi_ccc (operands[2], operands[2]));
13388 : operands[4] = gen_rtx_REG (CCCmode, FLAGS_REG);
13389 : }
13390 : else
13391 : {
13392 : operands[4] = gen_rtx_REG (CCZmode, FLAGS_REG);
13393 : emit_insn (gen_rtx_SET (operands[4],
13394 : gen_rtx_COMPARE (CCZmode,
13395 : operands[2],
13396 : constm1_rtx)));
13397 : }
13398 : ix86_expand_setcc (operands[0],
13399 : GET_CODE (operands[1]),
13400 : operands[4],
13401 : const0_rtx);
13402 : DONE;
13403 : }
13404 : #undef DONE
13405 : #undef FAIL
13406 : static const uint8_t expand_encoding[] = {
13407 : 0x01, 0x27, 0x00
13408 : };
13409 : return complete_seq (expand_encoding, operands);
13410 : }
13411 :
13412 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2479 */
13413 : extern rtx_insn *gen_split_1286 (rtx_insn *, rtx *);
13414 : rtx_insn *
13415 : gen_split_1286 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13416 : {
13417 : if (dump_file)
13418 : fprintf (dump_file, "Splitting with gen_split_1286 (sse.md:2479)\n");
13419 : start_sequence ();
13420 : #define FAIL return (end_sequence (), nullptr)
13421 : #define DONE return end_sequence ()
13422 : #line 2497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13423 : {
13424 : rtx flag_reg;
13425 : if (MASK_REGNO_P (REGNO (operands[4])))
13426 : {
13427 : emit_insn (gen_kortestdi_ccc (operands[4], operands[4]));
13428 : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13429 : }
13430 : else
13431 : {
13432 : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13433 : emit_insn (gen_rtx_SET (flag_reg,
13434 : gen_rtx_COMPARE (CCZmode,
13435 : operands[4],
13436 : constm1_rtx)));
13437 : }
13438 : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13439 : flag_reg,const0_rtx);
13440 : operands[0] = gen_lowpart (SImode, operands[0]);
13441 : operands[2] = gen_lowpart (SImode, operands[2]);
13442 : operands[3] = gen_lowpart (SImode, operands[3]);
13443 : }
13444 : #undef DONE
13445 : #undef FAIL
13446 : static const uint8_t expand_encoding[] = {
13447 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x05,
13448 : 0x01, 0x02, 0x01, 0x03
13449 : };
13450 : return complete_seq (expand_encoding, operands);
13451 : }
13452 :
13453 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13454 : rtx
13455 : gen_absv16bf2 (const rtx operand0, const rtx operand1)
13456 : {
13457 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13458 : start_sequence ();
13459 : {
13460 : #define FAIL return (end_sequence (), nullptr)
13461 : #define DONE return end_sequence ()
13462 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13463 : ix86_expand_fp_absneg_operator (ABS, V16BFmode, operands); DONE;
13464 : #undef DONE
13465 : #undef FAIL
13466 : }
13467 : static const uint8_t expand_encoding[] = {
13468 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x6d, 0x01, 0x01
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_absv16hf2 (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 (ABS, V16HFmode, operands); DONE;
13484 : #undef DONE
13485 : #undef FAIL
13486 : }
13487 : static const uint8_t expand_encoding[] = {
13488 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x6e, 0x01, 0x01
13489 : };
13490 : return complete_seq (expand_encoding, operands);
13491 : }
13492 :
13493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13494 : rtx
13495 : gen_absv8df2 (const rtx operand0, const rtx operand1)
13496 : {
13497 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13498 : start_sequence ();
13499 : {
13500 : #define FAIL return (end_sequence (), nullptr)
13501 : #define DONE return end_sequence ()
13502 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13503 : ix86_expand_fp_absneg_operator (ABS, V8DFmode, operands); DONE;
13504 : #undef DONE
13505 : #undef FAIL
13506 : }
13507 : static const uint8_t expand_encoding[] = {
13508 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x75, 0x01, 0x01
13509 : };
13510 : return complete_seq (expand_encoding, operands);
13511 : }
13512 :
13513 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13514 : extern rtx_insn *gen_split_1303 (rtx_insn *, rtx *);
13515 : rtx_insn *
13516 : gen_split_1303 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13517 : {
13518 : if (dump_file)
13519 : fprintf (dump_file, "Splitting with gen_split_1303 (sse.md:2615)\n");
13520 : start_sequence ();
13521 : #define FAIL return (end_sequence (), nullptr)
13522 : #define DONE return end_sequence ()
13523 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13524 : {
13525 : if (TARGET_AVX)
13526 : {
13527 : if (MEM_P (operands[1]))
13528 : std::swap (operands[1], operands[2]);
13529 : }
13530 : else
13531 : {
13532 : if (operands_match_p (operands[0], operands[2]))
13533 : std::swap (operands[1], operands[2]);
13534 : }
13535 : }
13536 : #undef DONE
13537 : #undef FAIL
13538 : static const uint8_t expand_encoding[] = {
13539 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x69, 0x01, 0x01,
13540 : 0x01, 0x02
13541 : };
13542 : return complete_seq (expand_encoding, operands);
13543 : }
13544 :
13545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13546 : extern rtx_insn *gen_split_1313 (rtx_insn *, rtx *);
13547 : rtx_insn *
13548 : gen_split_1313 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13549 : {
13550 : if (dump_file)
13551 : fprintf (dump_file, "Splitting with gen_split_1313 (sse.md:2615)\n");
13552 : start_sequence ();
13553 : #define FAIL return (end_sequence (), nullptr)
13554 : #define DONE return end_sequence ()
13555 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13556 : {
13557 : if (TARGET_AVX)
13558 : {
13559 : if (MEM_P (operands[1]))
13560 : std::swap (operands[1], operands[2]);
13561 : }
13562 : else
13563 : {
13564 : if (operands_match_p (operands[0], operands[2]))
13565 : std::swap (operands[1], operands[2]);
13566 : }
13567 : }
13568 : #undef DONE
13569 : #undef FAIL
13570 : static const uint8_t expand_encoding[] = {
13571 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6f, 0x01, 0x01,
13572 : 0x01, 0x02
13573 : };
13574 : return complete_seq (expand_encoding, operands);
13575 : }
13576 :
13577 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2639 */
13578 : extern rtx_insn *gen_split_1323 (rtx_insn *, rtx *);
13579 : rtx_insn *
13580 : gen_split_1323 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13581 : {
13582 : if (dump_file)
13583 : fprintf (dump_file, "Splitting with gen_split_1323 (sse.md:2639)\n");
13584 : start_sequence ();
13585 : #define FAIL return (end_sequence (), nullptr)
13586 : #define DONE return end_sequence ()
13587 : #line 2650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13588 : {
13589 : if (TARGET_AVX)
13590 : {
13591 : if (MEM_P (operands[1]))
13592 : std::swap (operands[1], operands[2]);
13593 : }
13594 : else
13595 : {
13596 : if (operands_match_p (operands[0], operands[2]))
13597 : std::swap (operands[1], operands[2]);
13598 : }
13599 : }
13600 : #undef DONE
13601 : #undef FAIL
13602 : static const uint8_t expand_encoding[] = {
13603 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x74, 0x01, 0x01,
13604 : 0x01, 0x02
13605 : };
13606 : return complete_seq (expand_encoding, operands);
13607 : }
13608 :
13609 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13610 : rtx
13611 : gen_cond_addv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13612 : {
13613 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13614 : start_sequence ();
13615 : {
13616 : #define FAIL _Pragma ("GCC error \"cond_addv8hf cannot FAIL\"") (void)0
13617 : #define DONE return end_sequence ()
13618 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13619 : {
13620 : emit_insn (gen_addv8hf3_mask (operands[0],
13621 : operands[2],
13622 : operands[3],
13623 : operands[4],
13624 : operands[1]));
13625 : DONE;
13626 : }
13627 : #undef DONE
13628 : #undef FAIL
13629 : }
13630 : static const uint8_t expand_encoding[] = {
13631 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x3b,
13632 : 0x6a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13633 : 0x01
13634 : };
13635 : return complete_seq (expand_encoding, operands);
13636 : }
13637 :
13638 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13639 : rtx
13640 : gen_cond_addv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13641 : {
13642 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13643 : start_sequence ();
13644 : {
13645 : #define FAIL _Pragma ("GCC error \"cond_addv4df cannot FAIL\"") (void)0
13646 : #define DONE return end_sequence ()
13647 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13648 : {
13649 : emit_insn (gen_addv4df3_mask (operands[0],
13650 : operands[2],
13651 : operands[3],
13652 : operands[4],
13653 : operands[1]));
13654 : DONE;
13655 : }
13656 : #undef DONE
13657 : #undef FAIL
13658 : }
13659 : static const uint8_t expand_encoding[] = {
13660 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x3b,
13661 : 0x70, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13662 : 0x01
13663 : };
13664 : return complete_seq (expand_encoding, operands);
13665 : }
13666 :
13667 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13668 : rtx
13669 : gen_subv32hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13670 : {
13671 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13672 : start_sequence ();
13673 : {
13674 : #define FAIL return (end_sequence (), nullptr)
13675 : #define DONE return end_sequence ()
13676 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13677 : ix86_fixup_binary_operands_no_copy (MINUS, V32HFmode, operands);
13678 : #undef DONE
13679 : #undef FAIL
13680 : }
13681 : static const uint8_t expand_encoding[] = {
13682 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x3c,
13683 : 0x73, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13684 : 0x04
13685 : };
13686 : return complete_seq (expand_encoding, operands);
13687 : }
13688 :
13689 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13690 : rtx
13691 : gen_addv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13692 : {
13693 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13694 : start_sequence ();
13695 : {
13696 : #define FAIL return (end_sequence (), nullptr)
13697 : #define DONE return end_sequence ()
13698 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13699 : ix86_fixup_binary_operands_no_copy (PLUS, V16SFmode, operands);
13700 : #undef DONE
13701 : #undef FAIL
13702 : }
13703 : static const uint8_t expand_encoding[] = {
13704 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x74, 0x01, 0x01,
13705 : 0x01, 0x02
13706 : };
13707 : return complete_seq (expand_encoding, operands);
13708 : }
13709 :
13710 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13711 : rtx
13712 : gen_addv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13713 : {
13714 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13715 : start_sequence ();
13716 : {
13717 : #define FAIL return (end_sequence (), nullptr)
13718 : #define DONE return end_sequence ()
13719 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13720 : ix86_fixup_binary_operands_no_copy (PLUS, V8SFmode, operands);
13721 : #undef DONE
13722 : #undef FAIL
13723 : }
13724 : static const uint8_t expand_encoding[] = {
13725 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x3b,
13726 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13727 : 0x04
13728 : };
13729 : return complete_seq (expand_encoding, operands);
13730 : }
13731 :
13732 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13733 : rtx
13734 : gen_subv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
13735 : {
13736 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13737 : start_sequence ();
13738 : {
13739 : #define FAIL return (end_sequence (), nullptr)
13740 : #define DONE return end_sequence ()
13741 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13742 : ix86_fixup_binary_operands_no_copy (MINUS, V8DFmode, operands);
13743 : #undef DONE
13744 : #undef FAIL
13745 : }
13746 : static const uint8_t expand_encoding[] = {
13747 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x75, 0x01, 0x01,
13748 : 0x01, 0x02
13749 : };
13750 : return complete_seq (expand_encoding, operands);
13751 : }
13752 :
13753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13754 : rtx
13755 : gen_addv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
13756 : {
13757 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13758 : start_sequence ();
13759 : {
13760 : #define FAIL return (end_sequence (), nullptr)
13761 : #define DONE return end_sequence ()
13762 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13763 : ix86_fixup_binary_operands_no_copy (PLUS, V2DFmode, operands);
13764 : #undef DONE
13765 : #undef FAIL
13766 : }
13767 : static const uint8_t expand_encoding[] = {
13768 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x6c, 0x01, 0x01,
13769 : 0x01, 0x02
13770 : };
13771 : return complete_seq (expand_encoding, operands);
13772 : }
13773 :
13774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13775 : rtx
13776 : gen_addv16bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13777 : {
13778 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13779 : start_sequence ();
13780 : {
13781 : #define FAIL return (end_sequence (), nullptr)
13782 : #define DONE return end_sequence ()
13783 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13784 : ix86_fixup_binary_operands_no_copy (PLUS, V16BFmode, operands);
13785 : #undef DONE
13786 : #undef FAIL
13787 : }
13788 : static const uint8_t expand_encoding[] = {
13789 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x3b,
13790 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13791 : 0x04
13792 : };
13793 : return complete_seq (expand_encoding, operands);
13794 : }
13795 :
13796 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2753 */
13797 : rtx
13798 : gen_cond_mulv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13799 : {
13800 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13801 : start_sequence ();
13802 : {
13803 : #define FAIL _Pragma ("GCC error \"cond_mulv8sf cannot FAIL\"") (void)0
13804 : #define DONE return end_sequence ()
13805 : #line 2762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13806 : {
13807 : emit_insn (gen_mulv8sf3_mask (operands[0],
13808 : operands[2],
13809 : operands[3],
13810 : operands[4],
13811 : operands[1]));
13812 : DONE;
13813 : }
13814 : #undef DONE
13815 : #undef FAIL
13816 : }
13817 : static const uint8_t expand_encoding[] = {
13818 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x3e,
13819 : 0x6f, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13820 : 0x01
13821 : };
13822 : return complete_seq (expand_encoding, operands);
13823 : }
13824 :
13825 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13826 : rtx
13827 : gen_mulv16hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13828 : {
13829 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13830 : start_sequence ();
13831 : {
13832 : #define FAIL return (end_sequence (), nullptr)
13833 : #define DONE return end_sequence ()
13834 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13835 : ix86_fixup_binary_operands_no_copy (MULT, V16HFmode, operands);
13836 : #undef DONE
13837 : #undef FAIL
13838 : }
13839 : static const uint8_t expand_encoding[] = {
13840 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x3e,
13841 : 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13842 : 0x04
13843 : };
13844 : return complete_seq (expand_encoding, operands);
13845 : }
13846 :
13847 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13848 : rtx
13849 : gen_mulv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
13850 : {
13851 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13852 : start_sequence ();
13853 : {
13854 : #define FAIL return (end_sequence (), nullptr)
13855 : #define DONE return end_sequence ()
13856 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13857 : ix86_fixup_binary_operands_no_copy (MULT, V8DFmode, operands);
13858 : #undef DONE
13859 : #undef FAIL
13860 : }
13861 : static const uint8_t expand_encoding[] = {
13862 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x75, 0x01, 0x01,
13863 : 0x01, 0x02
13864 : };
13865 : return complete_seq (expand_encoding, operands);
13866 : }
13867 :
13868 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13869 : rtx
13870 : gen_mulv32bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13871 : {
13872 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13873 : start_sequence ();
13874 : {
13875 : #define FAIL return (end_sequence (), nullptr)
13876 : #define DONE return end_sequence ()
13877 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13878 : ix86_fixup_binary_operands_no_copy (MULT, V32BFmode, operands);
13879 : #undef DONE
13880 : #undef FAIL
13881 : }
13882 : static const uint8_t expand_encoding[] = {
13883 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x3e,
13884 : 0x72, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13885 : 0x04
13886 : };
13887 : return complete_seq (expand_encoding, operands);
13888 : }
13889 :
13890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2873 */
13891 : rtx
13892 : gen_divv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13893 : {
13894 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13895 : start_sequence ();
13896 : {
13897 : #define FAIL return (end_sequence (), nullptr)
13898 : #define DONE return end_sequence ()
13899 : #line 2878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13900 : {
13901 : if (TARGET_SSE_MATH
13902 : && TARGET_RECIP_VEC_DIV
13903 : && !optimize_insn_for_size_p ()
13904 : && flag_finite_math_only && !flag_trapping_math
13905 : && flag_unsafe_math_optimizations)
13906 : {
13907 : ix86_emit_swdivsf (operands[0], operands[1], operands[2], V8SFmode);
13908 : DONE;
13909 : }
13910 : }
13911 : #undef DONE
13912 : #undef FAIL
13913 : }
13914 : static const uint8_t expand_encoding[] = {
13915 : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x6f, 0x01, 0x01,
13916 : 0x01, 0x02
13917 : };
13918 : return complete_seq (expand_encoding, operands);
13919 : }
13920 :
13921 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2910 */
13922 : rtx
13923 : gen_cond_divv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13924 : {
13925 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13926 : start_sequence ();
13927 : {
13928 : #define FAIL _Pragma ("GCC error \"cond_divv8hf cannot FAIL\"") (void)0
13929 : #define DONE return end_sequence ()
13930 : #line 2919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13931 : {
13932 : emit_insn (gen_avx512fp16_divv8hf3_mask (operands[0],
13933 : operands[2],
13934 : operands[3],
13935 : operands[4],
13936 : operands[1]));
13937 : DONE;
13938 : }
13939 : #undef DONE
13940 : #undef FAIL
13941 : }
13942 : static const uint8_t expand_encoding[] = {
13943 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x43,
13944 : 0x6a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13945 : 0x01
13946 : };
13947 : return complete_seq (expand_encoding, operands);
13948 : }
13949 :
13950 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3081 */
13951 : rtx
13952 : gen_sqrtv8hf2 (const rtx operand0, const rtx operand1)
13953 : {
13954 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13955 : static const uint8_t expand_encoding[] = {
13956 : 0x1f, 0x01, 0x00, 0x7c, 0x6a, 0x01, 0x01
13957 : };
13958 : return expand_rtx (expand_encoding, operands);
13959 : }
13960 :
13961 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3167 */
13962 : rtx
13963 : gen_rsqrtv16hf2 (const rtx operand0, const rtx operand1)
13964 : {
13965 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13966 : static const uint8_t expand_encoding[] = {
13967 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x01, 0x01, 0x01,
13968 : 0x38
13969 : };
13970 : return expand_rtx (expand_encoding, operands);
13971 : }
13972 :
13973 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
13974 : rtx
13975 : gen_cond_sminv16hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13976 : {
13977 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13978 : start_sequence ();
13979 : {
13980 : #define FAIL return (end_sequence (), nullptr)
13981 : #define DONE return end_sequence ()
13982 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13983 : {
13984 : emit_insn (gen_sminv16hf3_mask (operands[0],
13985 : operands[2],
13986 : operands[3],
13987 : operands[4],
13988 : operands[1]));
13989 : DONE;
13990 : }
13991 : #undef DONE
13992 : #undef FAIL
13993 : }
13994 : static const uint8_t expand_encoding[] = {
13995 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x52,
13996 : 0x6e, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13997 : 0x01
13998 : };
13999 : return complete_seq (expand_encoding, operands);
14000 : }
14001 :
14002 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
14003 : rtx
14004 : gen_cond_sminv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14005 : {
14006 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14007 : start_sequence ();
14008 : {
14009 : #define FAIL return (end_sequence (), nullptr)
14010 : #define DONE return end_sequence ()
14011 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14012 : {
14013 : emit_insn (gen_sminv8df3_mask (operands[0],
14014 : operands[2],
14015 : operands[3],
14016 : operands[4],
14017 : operands[1]));
14018 : DONE;
14019 : }
14020 : #undef DONE
14021 : #undef FAIL
14022 : }
14023 : static const uint8_t expand_encoding[] = {
14024 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x52,
14025 : 0x75, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14026 : 0x01
14027 : };
14028 : return complete_seq (expand_encoding, operands);
14029 : }
14030 :
14031 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14032 : rtx
14033 : gen_sminv32hf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
14034 : {
14035 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
14036 : start_sequence ();
14037 : {
14038 : #define FAIL return (end_sequence (), nullptr)
14039 : #define DONE return end_sequence ()
14040 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14041 : {
14042 : if (!flag_finite_math_only || flag_signed_zeros)
14043 : {
14044 : operands[1] = force_reg (V32HFmode, operands[1]);
14045 : emit_insn (gen_ieee_minv32hf3_round
14046 : (operands[0], operands[1], operands[2]
14047 :
14048 : , operands[3]));
14049 : DONE;
14050 : }
14051 : else
14052 : ix86_fixup_binary_operands_no_copy (SMIN, V32HFmode, operands);
14053 : }
14054 : #undef DONE
14055 : #undef FAIL
14056 : }
14057 : static const uint8_t expand_encoding[] = {
14058 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x52,
14059 : 0x73, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
14060 : 0x33
14061 : };
14062 : return complete_seq (expand_encoding, operands);
14063 : }
14064 :
14065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14066 : rtx
14067 : gen_sminv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14068 : {
14069 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14070 : start_sequence ();
14071 : {
14072 : #define FAIL return (end_sequence (), nullptr)
14073 : #define DONE return end_sequence ()
14074 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14075 : {
14076 : if (!flag_finite_math_only || flag_signed_zeros)
14077 : {
14078 : operands[1] = force_reg (V8HFmode, operands[1]);
14079 : emit_insn (gen_ieee_minv8hf3_mask
14080 : (operands[0], operands[1], operands[2]
14081 : , operands[3], operands[4]
14082 : ));
14083 : DONE;
14084 : }
14085 : else
14086 : ix86_fixup_binary_operands_no_copy (SMIN, V8HFmode, operands);
14087 : }
14088 : #undef DONE
14089 : #undef FAIL
14090 : }
14091 : static const uint8_t expand_encoding[] = {
14092 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x52,
14093 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14094 : 0x04
14095 : };
14096 : return complete_seq (expand_encoding, operands);
14097 : }
14098 :
14099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14100 : rtx
14101 : gen_sminv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
14102 : {
14103 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14104 : start_sequence ();
14105 : {
14106 : #define FAIL return (end_sequence (), nullptr)
14107 : #define DONE return end_sequence ()
14108 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14109 : {
14110 : if (!flag_finite_math_only || flag_signed_zeros)
14111 : {
14112 : operands[1] = force_reg (V8SFmode, operands[1]);
14113 : emit_insn (gen_ieee_minv8sf3
14114 : (operands[0], operands[1], operands[2]
14115 :
14116 : ));
14117 : DONE;
14118 : }
14119 : else
14120 : ix86_fixup_binary_operands_no_copy (SMIN, V8SFmode, operands);
14121 : }
14122 : #undef DONE
14123 : #undef FAIL
14124 : }
14125 : static const uint8_t expand_encoding[] = {
14126 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x6f, 0x01, 0x01,
14127 : 0x01, 0x02
14128 : };
14129 : return complete_seq (expand_encoding, operands);
14130 : }
14131 :
14132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14133 : rtx
14134 : gen_smaxv8df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
14135 : {
14136 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
14137 : start_sequence ();
14138 : {
14139 : #define FAIL return (end_sequence (), nullptr)
14140 : #define DONE return end_sequence ()
14141 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14142 : {
14143 : if (!flag_finite_math_only || flag_signed_zeros)
14144 : {
14145 : operands[1] = force_reg (V8DFmode, operands[1]);
14146 : emit_insn (gen_ieee_maxv8df3_mask_round
14147 : (operands[0], operands[1], operands[2]
14148 : , operands[3], operands[4]
14149 : , operands[5]));
14150 : DONE;
14151 : }
14152 : else
14153 : ix86_fixup_binary_operands_no_copy (SMAX, V8DFmode, operands);
14154 : }
14155 : #undef DONE
14156 : #undef FAIL
14157 : }
14158 : static const uint8_t expand_encoding[] = {
14159 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81,
14160 : 0x09, 0x75, 0x53, 0x75, 0x01, 0x01, 0x01, 0x02,
14161 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
14162 : };
14163 : return complete_seq (expand_encoding, operands);
14164 : }
14165 :
14166 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14167 : rtx
14168 : gen_sminv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
14169 : {
14170 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14171 : start_sequence ();
14172 : {
14173 : #define FAIL return (end_sequence (), nullptr)
14174 : #define DONE return end_sequence ()
14175 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14176 : {
14177 : if (!flag_finite_math_only || flag_signed_zeros)
14178 : {
14179 : operands[1] = force_reg (V2DFmode, operands[1]);
14180 : emit_insn (gen_ieee_minv2df3
14181 : (operands[0], operands[1], operands[2]
14182 :
14183 : ));
14184 : DONE;
14185 : }
14186 : else
14187 : ix86_fixup_binary_operands_no_copy (SMIN, V2DFmode, operands);
14188 : }
14189 : #undef DONE
14190 : #undef FAIL
14191 : }
14192 : static const uint8_t expand_encoding[] = {
14193 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x6c, 0x01, 0x01,
14194 : 0x01, 0x02
14195 : };
14196 : return complete_seq (expand_encoding, operands);
14197 : }
14198 :
14199 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3366 */
14200 : extern rtx_insn *gen_split_1336 (rtx_insn *, rtx *);
14201 : rtx_insn *
14202 : gen_split_1336 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14203 : {
14204 : if (dump_file)
14205 : fprintf (dump_file, "Splitting with gen_split_1336 (sse.md:3366)\n");
14206 : start_sequence ();
14207 : #define FAIL return (end_sequence (), nullptr)
14208 : #define DONE return end_sequence ()
14209 : #line 3385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14210 : {
14211 : int u = UNSPEC_IEEE_MIN;
14212 : rtx tmp = operands[2];
14213 : if ((INTVAL (operands[5]) == 1 && rtx_equal_p (operands[1], operands[4]))
14214 : || (INTVAL (operands[5]) == 14 && rtx_equal_p (operands[1], operands[3])))
14215 : u = UNSPEC_IEEE_MAX;
14216 :
14217 : if (MEM_P (operands[1]))
14218 : operands[1] = force_reg (V4DFmode, operands[1]);
14219 :
14220 : if (immediate_operand (operands[2], V4DFmode))
14221 : tmp = force_reg (V4DFmode, operands[2]);
14222 : rtvec v = gen_rtvec (2, operands[1], tmp);
14223 : operands[6] = gen_rtx_UNSPEC (V4DFmode, v, u);
14224 : }
14225 : #undef DONE
14226 : #undef FAIL
14227 : static const uint8_t expand_encoding[] = {
14228 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x06
14229 : };
14230 : return complete_seq (expand_encoding, operands);
14231 : }
14232 :
14233 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3453 */
14234 : extern rtx_insn *gen_split_1347 (rtx_insn *, rtx *);
14235 : rtx_insn *
14236 : gen_split_1347 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14237 : {
14238 : if (dump_file)
14239 : fprintf (dump_file, "Splitting with gen_split_1347 (sse.md:3453)\n");
14240 : start_sequence ();
14241 : #define FAIL return (end_sequence (), nullptr)
14242 : #define DONE return end_sequence ()
14243 : #line 3465 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14244 : {
14245 : int u = UNSPEC_IEEE_MIN;
14246 : if (GET_CODE (operands[1]) == GT)
14247 : u = UNSPEC_IEEE_MAX;
14248 :
14249 : rtx tmp = force_reg (V4SFmode, operands[3]);
14250 : rtvec v = gen_rtvec (2, operands[2], tmp);
14251 : operands[5] = gen_rtx_UNSPEC (V4SFmode, v, u);
14252 : }
14253 : #undef DONE
14254 : #undef FAIL
14255 : static const uint8_t expand_encoding[] = {
14256 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x05
14257 : };
14258 : return complete_seq (expand_encoding, operands);
14259 : }
14260 :
14261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14262 : rtx
14263 : gen_avx512fp16_vmsminv8hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
14264 : {
14265 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
14266 : start_sequence ();
14267 : {
14268 : #define FAIL return (end_sequence (), nullptr)
14269 : #define DONE return end_sequence ()
14270 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14271 : {
14272 : if (!flag_finite_math_only || flag_signed_zeros)
14273 : {
14274 : emit_insn (gen_avx512fp16_ieee_vmminv8hf3_mask_round
14275 : (operands[0], operands[1], operands[2]
14276 : , operands[3], operands[4]
14277 : , operands[5]));
14278 : DONE;
14279 : }
14280 : }
14281 : #undef DONE
14282 : #undef FAIL
14283 : }
14284 : static const uint8_t expand_encoding[] = {
14285 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81,
14286 : 0x09, 0x6a, 0x81, 0x09, 0x6a, 0x52, 0x6a, 0x01,
14287 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14288 : 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
14289 : };
14290 : return complete_seq (expand_encoding, operands);
14291 : }
14292 :
14293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14294 : rtx
14295 : gen_sse2_vmsmaxv2df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
14296 : {
14297 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
14298 : start_sequence ();
14299 : {
14300 : #define FAIL return (end_sequence (), nullptr)
14301 : #define DONE return end_sequence ()
14302 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14303 : {
14304 : if (!flag_finite_math_only || flag_signed_zeros)
14305 : {
14306 : emit_insn (gen_sse2_ieee_vmmaxv2df3_round
14307 : (operands[0], operands[1], operands[2]
14308 :
14309 : , operands[3]));
14310 : DONE;
14311 : }
14312 : }
14313 : #undef DONE
14314 : #undef FAIL
14315 : }
14316 : static const uint8_t expand_encoding[] = {
14317 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81,
14318 : 0x09, 0x6c, 0x53, 0x6c, 0x01, 0x01, 0x01, 0x02,
14319 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
14320 : };
14321 : return complete_seq (expand_encoding, operands);
14322 : }
14323 :
14324 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3646 */
14325 : extern rtx_insn *gen_split_1355 (rtx_insn *, rtx *);
14326 : rtx_insn *
14327 : gen_split_1355 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14328 : {
14329 : if (dump_file)
14330 : fprintf (dump_file, "Splitting with gen_split_1355 (sse.md:3646)\n");
14331 : start_sequence ();
14332 : #define FAIL return (end_sequence (), nullptr)
14333 : #define DONE return end_sequence ()
14334 : #line 3667 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14335 : {
14336 : /* Negate mask bits to compensate for swapped PLUS and MINUS RTXes. */
14337 : operands[5]
14338 : = GEN_INT (~INTVAL (operands[5])
14339 : & ((HOST_WIDE_INT_1U << GET_MODE_NUNITS (V4SFmode)) - 1));
14340 : }
14341 : #undef DONE
14342 : #undef FAIL
14343 : static const uint8_t expand_encoding[] = {
14344 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x3c,
14345 : 0x6b, 0x01, 0x03, 0x01, 0x04, 0x3b, 0x6b, 0x01,
14346 : 0x03, 0x01, 0x04, 0x01, 0x05
14347 : };
14348 : return complete_seq (expand_encoding, operands);
14349 : }
14350 :
14351 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3708 */
14352 : extern rtx_insn *gen_split_1365 (rtx_insn *, rtx *);
14353 : rtx_insn *
14354 : gen_split_1365 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14355 : {
14356 : if (dump_file)
14357 : fprintf (dump_file, "Splitting with gen_split_1365 (sse.md:3708)\n");
14358 : start_sequence ();
14359 : #define FAIL return (end_sequence (), nullptr)
14360 : #define DONE return end_sequence ()
14361 : #line 3731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14362 : {
14363 : int i, nelt = XVECLEN (operands[5], 0);
14364 : HOST_WIDE_INT ival = 0;
14365 :
14366 : for (i = 0; i < nelt; i++)
14367 : if (INTVAL (XVECEXP (operands[5], 0, i)) >= GET_MODE_NUNITS (V2DFmode))
14368 : ival |= HOST_WIDE_INT_1 << i;
14369 :
14370 : operands[5] = GEN_INT (ival);
14371 : }
14372 : #undef DONE
14373 : #undef FAIL
14374 : static const uint8_t expand_encoding[] = {
14375 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x3c,
14376 : 0x6c, 0x01, 0x03, 0x01, 0x04, 0x3b, 0x6c, 0x01,
14377 : 0x03, 0x01, 0x04, 0x01, 0x05
14378 : };
14379 : return complete_seq (expand_encoding, operands);
14380 : }
14381 :
14382 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4007 */
14383 : rtx
14384 : gen_reduc_plus_scal_v16hf (const rtx operand0, const rtx operand1)
14385 : {
14386 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14387 : start_sequence ();
14388 : {
14389 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v16hf cannot FAIL\"") (void)0
14390 : #define DONE return end_sequence ()
14391 : #line 4012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14392 : {
14393 : rtx tmp = gen_reg_rtx (V8HFmode);
14394 : rtx tmp2 = gen_reg_rtx (V8HFmode);
14395 : rtx tmp3 = gen_reg_rtx (V8HFmode);
14396 : emit_insn (gen_vec_extract_hi_v16hf (tmp, operands[1]));
14397 : emit_insn (gen_vec_extract_lo_v16hf (tmp2, operands[1]));
14398 : emit_insn (gen_addv8hf3 (tmp3, tmp, tmp2));
14399 : emit_insn (gen_reduc_plus_scal_v8hf (operands[0], tmp3));
14400 : DONE;
14401 : }
14402 : #undef DONE
14403 : #undef FAIL
14404 : }
14405 : static const uint8_t expand_encoding[] = {
14406 : 0x01, 0x3b, 0x6e, 0x01, 0x00, 0x01, 0x01
14407 : };
14408 : return complete_seq (expand_encoding, operands);
14409 : }
14410 :
14411 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4007 */
14412 : rtx
14413 : gen_reduc_plus_scal_v16si (const rtx operand0, const rtx operand1)
14414 : {
14415 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14416 : start_sequence ();
14417 : {
14418 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v16si cannot FAIL\"") (void)0
14419 : #define DONE return end_sequence ()
14420 : #line 4012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14421 : {
14422 : rtx tmp = gen_reg_rtx (V8SImode);
14423 : rtx tmp2 = gen_reg_rtx (V8SImode);
14424 : rtx tmp3 = gen_reg_rtx (V8SImode);
14425 : emit_insn (gen_vec_extract_hi_v16si (tmp, operands[1]));
14426 : emit_insn (gen_vec_extract_lo_v16si (tmp2, operands[1]));
14427 : emit_insn (gen_addv8si3 (tmp3, tmp, tmp2));
14428 : emit_insn (gen_reduc_plus_scal_v8si (operands[0], tmp3));
14429 : DONE;
14430 : }
14431 : #undef DONE
14432 : #undef FAIL
14433 : }
14434 : static const uint8_t expand_encoding[] = {
14435 : 0x01, 0x3b, 0x5b, 0x01, 0x00, 0x01, 0x01
14436 : };
14437 : return complete_seq (expand_encoding, operands);
14438 : }
14439 :
14440 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4030 */
14441 : rtx
14442 : gen_reduc_smax_scal_v16qi (const rtx operand0, const rtx operand1)
14443 : {
14444 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14445 : start_sequence ();
14446 : {
14447 : #define FAIL return (end_sequence (), nullptr)
14448 : #define DONE return end_sequence ()
14449 : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14450 : {
14451 : rtx tmp = gen_reg_rtx (V16QImode);
14452 : ix86_expand_reduc (gen_smaxv16qi3, tmp, operands[1]);
14453 : emit_insn (gen_vec_extractv16qiqi (operands[0], tmp,
14454 : const0_rtx));
14455 : DONE;
14456 : }
14457 : #undef DONE
14458 : #undef FAIL
14459 : }
14460 : static const uint8_t expand_encoding[] = {
14461 : 0x01, 0x53, 0x4f, 0x01, 0x00, 0x01, 0x01
14462 : };
14463 : return complete_seq (expand_encoding, operands);
14464 : }
14465 :
14466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14467 : rtx
14468 : gen_reduc_smax_scal_v8si (const rtx operand0, const rtx operand1)
14469 : {
14470 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14471 : start_sequence ();
14472 : {
14473 : #define FAIL return (end_sequence (), nullptr)
14474 : #define DONE return end_sequence ()
14475 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14476 : {
14477 : rtx tmp = gen_reg_rtx (V4SImode);
14478 : rtx tmp2 = gen_reg_rtx (V4SImode);
14479 : rtx tmp3 = gen_reg_rtx (V4SImode);
14480 : emit_insn (gen_vec_extract_hi_v8si (tmp, operands[1]));
14481 : emit_insn (gen_vec_extract_lo_v8si (tmp2, operands[1]));
14482 : emit_insn (gen_smaxv4si3 (tmp3, tmp, tmp2));
14483 : emit_insn (gen_reduc_smax_scal_v4si (operands[0], tmp3));
14484 : DONE;
14485 : }
14486 : #undef DONE
14487 : #undef FAIL
14488 : }
14489 : static const uint8_t expand_encoding[] = {
14490 : 0x01, 0x53, 0x56, 0x01, 0x00, 0x01, 0x01
14491 : };
14492 : return complete_seq (expand_encoding, operands);
14493 : }
14494 :
14495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14496 : rtx
14497 : gen_reduc_smax_scal_v32hf (const rtx operand0, const rtx operand1)
14498 : {
14499 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14500 : start_sequence ();
14501 : {
14502 : #define FAIL return (end_sequence (), nullptr)
14503 : #define DONE return end_sequence ()
14504 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14505 : {
14506 : rtx tmp = gen_reg_rtx (V16HFmode);
14507 : rtx tmp2 = gen_reg_rtx (V16HFmode);
14508 : rtx tmp3 = gen_reg_rtx (V16HFmode);
14509 : emit_insn (gen_vec_extract_hi_v32hf (tmp, operands[1]));
14510 : emit_insn (gen_vec_extract_lo_v32hf (tmp2, operands[1]));
14511 : emit_insn (gen_smaxv16hf3 (tmp3, tmp, tmp2));
14512 : emit_insn (gen_reduc_smax_scal_v16hf (operands[0], tmp3));
14513 : DONE;
14514 : }
14515 : #undef DONE
14516 : #undef FAIL
14517 : }
14518 : static const uint8_t expand_encoding[] = {
14519 : 0x01, 0x53, 0x73, 0x01, 0x00, 0x01, 0x01
14520 : };
14521 : return complete_seq (expand_encoding, operands);
14522 : }
14523 :
14524 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14525 : rtx
14526 : gen_reduc_smax_scal_v8df (const rtx operand0, const rtx operand1)
14527 : {
14528 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14529 : start_sequence ();
14530 : {
14531 : #define FAIL return (end_sequence (), nullptr)
14532 : #define DONE return end_sequence ()
14533 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14534 : {
14535 : rtx tmp = gen_reg_rtx (V4DFmode);
14536 : rtx tmp2 = gen_reg_rtx (V4DFmode);
14537 : rtx tmp3 = gen_reg_rtx (V4DFmode);
14538 : emit_insn (gen_vec_extract_hi_v8df (tmp, operands[1]));
14539 : emit_insn (gen_vec_extract_lo_v8df (tmp2, operands[1]));
14540 : emit_insn (gen_smaxv4df3 (tmp3, tmp, tmp2));
14541 : emit_insn (gen_reduc_smax_scal_v4df (operands[0], tmp3));
14542 : DONE;
14543 : }
14544 : #undef DONE
14545 : #undef FAIL
14546 : }
14547 : static const uint8_t expand_encoding[] = {
14548 : 0x01, 0x53, 0x75, 0x01, 0x00, 0x01, 0x01
14549 : };
14550 : return complete_seq (expand_encoding, operands);
14551 : }
14552 :
14553 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4086 */
14554 : rtx
14555 : gen_reduc_umax_scal_v32qi (const rtx operand0, const rtx operand1)
14556 : {
14557 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14558 : start_sequence ();
14559 : {
14560 : #define FAIL return (end_sequence (), nullptr)
14561 : #define DONE return end_sequence ()
14562 : #line 4091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14563 : {
14564 : rtx tmp = gen_reg_rtx (V16QImode);
14565 : rtx tmp2 = gen_reg_rtx (V16QImode);
14566 : rtx tmp3 = gen_reg_rtx (V16QImode);
14567 : emit_insn (gen_vec_extract_hi_v32qi (tmp, operands[1]));
14568 : emit_insn (gen_vec_extract_lo_v32qi (tmp2, operands[1]));
14569 : emit_insn (gen_umaxv16qi3 (tmp3, tmp, tmp2));
14570 : rtx tmp4 = gen_reg_rtx (V16QImode);
14571 : ix86_expand_reduc (gen_umaxv16qi3, tmp4, tmp3);
14572 : emit_insn (gen_vec_extractv16qiqi
14573 : (operands[0], tmp4, const0_rtx));
14574 : DONE;
14575 : }
14576 : #undef DONE
14577 : #undef FAIL
14578 : }
14579 : static const uint8_t expand_encoding[] = {
14580 : 0x01, 0x55, 0x54, 0x01, 0x00, 0x01, 0x01
14581 : };
14582 : return complete_seq (expand_encoding, operands);
14583 : }
14584 :
14585 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4117 */
14586 : rtx
14587 : gen_reduc_sbool_and_scal_hi (const rtx operand0, const rtx operand1, const rtx operand2)
14588 : {
14589 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14590 : start_sequence ();
14591 : {
14592 : #define FAIL _Pragma ("GCC error \"reduc_sbool_and_scal_hi cannot FAIL\"") (void)0
14593 : #define DONE return end_sequence ()
14594 : #line 4122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14595 : {
14596 : int n_elt = INTVAL (operands[2]);
14597 : rtx op2 = CONSTM1_RTX (HImode);
14598 : rtx op1 = operands[1];
14599 : if (n_elt < 8)
14600 : {
14601 : op2 = gen_int_mode ((1u << n_elt) - 1, QImode);
14602 : op1 = gen_reg_rtx (QImode);
14603 : emit_insn (gen_andqi3 (op1, operands[1], op2));
14604 : }
14605 : ix86_expand_setcc (operands[0], EQ, op1, op2);
14606 : DONE;
14607 : }
14608 : #undef DONE
14609 : #undef FAIL
14610 : }
14611 : static const uint8_t expand_encoding[] = {
14612 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
14613 : };
14614 : return complete_seq (expand_encoding, operands);
14615 : }
14616 :
14617 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4155 */
14618 : rtx
14619 : gen_reduc_sbool_xor_scal_di (const rtx operand0, const rtx operand1, const rtx operand2)
14620 : {
14621 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14622 : start_sequence ();
14623 : {
14624 : #define FAIL _Pragma ("GCC error \"reduc_sbool_xor_scal_di cannot FAIL\"") (void)0
14625 : #define DONE return end_sequence ()
14626 : #line 4161 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14627 : {
14628 : rtx popcnt1, op1 = operands[1];
14629 : int n_elt = INTVAL (operands[2]);
14630 : if (n_elt < 8)
14631 : {
14632 : rtx op2 = gen_int_mode ((1u << n_elt) - 1, QImode);
14633 : op1 = gen_reg_rtx (QImode);
14634 : emit_insn (gen_andqi3 (op1, operands[1], op2));
14635 : }
14636 :
14637 : switch (8)
14638 : {
14639 : case 1:
14640 : case 2:
14641 : op1 = gen_reg_rtx (SImode);
14642 : emit_move_insn (op1, gen_rtx_ZERO_EXTEND (SImode, operands[1]));
14643 : /* FALLTHRU. */
14644 : case 4:
14645 : popcnt1 = gen_reg_rtx (SImode);
14646 : emit_insn (gen_popcountsi2 (popcnt1, op1));
14647 : emit_insn (gen_andsi3 (popcnt1, popcnt1, GEN_INT (0x1)));
14648 : break;
14649 :
14650 : case 8:
14651 : popcnt1 = gen_reg_rtx (DImode);
14652 : emit_insn (gen_popcountdi2 (popcnt1, op1));
14653 : emit_insn (gen_anddi3 (popcnt1, popcnt1, GEN_INT (0x1)));
14654 : break;
14655 :
14656 : default:
14657 : gcc_unreachable ();
14658 :
14659 : }
14660 :
14661 : emit_move_insn (operands[0], gen_lowpart (QImode, popcnt1));
14662 : DONE;
14663 : }
14664 : #undef DONE
14665 : #undef FAIL
14666 : }
14667 : static const uint8_t expand_encoding[] = {
14668 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
14669 : };
14670 : return complete_seq (expand_encoding, operands);
14671 : }
14672 :
14673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4230 */
14674 : rtx
14675 : gen_reduc_sbool_ior_scal_v16hi (const rtx operand0, const rtx operand1)
14676 : {
14677 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14678 : start_sequence ();
14679 : {
14680 : #define FAIL _Pragma ("GCC error \"reduc_sbool_ior_scal_v16hi cannot FAIL\"") (void)0
14681 : #define DONE return end_sequence ()
14682 : #line 4234 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14683 : {
14684 : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14685 : rtx tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, operands[1], operands[1]), UNSPEC_PTEST);
14686 : emit_insn (gen_rtx_SET (flags, tmp));
14687 : rtx ret = gen_rtx_fmt_ee (NE, VOIDmode, flags, const0_rtx);
14688 : PUT_MODE (ret, QImode);
14689 : emit_insn (gen_rtx_SET (operands[0], ret));
14690 : DONE;
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:4262 */
14702 : rtx
14703 : gen_reduc_sbool_xor_scal_v4si (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_sbool_xor_scal_v4si cannot FAIL\"") (void)0
14709 : #define DONE return end_sequence ()
14710 : #line 4266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14711 : {
14712 : rtx popcnt1 = gen_reg_rtx (SImode);
14713 : rtx tmp = gen_rtx_UNSPEC (SImode, gen_rtvec(1,
14714 : gen_lowpart (V4SFmode,
14715 : operands[1])),
14716 : UNSPEC_MOVMSK);
14717 : emit_insn (gen_rtx_SET (popcnt1, tmp));
14718 :
14719 : emit_insn (gen_popcountsi2 (popcnt1, popcnt1));
14720 : emit_insn (gen_andsi3 (popcnt1, popcnt1, GEN_INT (0x1)));
14721 :
14722 : emit_move_insn (operands[0], gen_lowpart (QImode, popcnt1));
14723 : DONE;
14724 : }
14725 : #undef DONE
14726 : #undef FAIL
14727 : }
14728 : static const uint8_t expand_encoding[] = {
14729 : 0x02, 0x01, 0x00, 0x01, 0x01
14730 : };
14731 : return complete_seq (expand_encoding, operands);
14732 : }
14733 :
14734 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4311 */
14735 : rtx
14736 : gen_reduc_and_scal_v4si (const rtx operand0, const rtx operand1)
14737 : {
14738 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14739 : start_sequence ();
14740 : {
14741 : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v4si cannot FAIL\"") (void)0
14742 : #define DONE return end_sequence ()
14743 : #line 4316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14744 : {
14745 : rtx tmp = gen_reg_rtx (V4SImode);
14746 : ix86_expand_reduc (gen_andv4si3, tmp, operands[1]);
14747 : emit_insn (gen_vec_extractv4sisi (operands[0],
14748 : tmp, const0_rtx));
14749 : DONE;
14750 : }
14751 : #undef DONE
14752 : #undef FAIL
14753 : }
14754 : static const uint8_t expand_encoding[] = {
14755 : 0x01, 0x49, 0x51, 0x01, 0x00, 0x01, 0x01
14756 : };
14757 : return complete_seq (expand_encoding, operands);
14758 : }
14759 :
14760 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14761 : rtx
14762 : gen_reduc_ior_scal_v16hi (const rtx operand0, const rtx operand1)
14763 : {
14764 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14765 : start_sequence ();
14766 : {
14767 : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v16hi cannot FAIL\"") (void)0
14768 : #define DONE return end_sequence ()
14769 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14770 : {
14771 : rtx tmp = gen_reg_rtx (V8HImode);
14772 : rtx tmp2 = gen_reg_rtx (V8HImode);
14773 : rtx tmp3 = gen_reg_rtx (V8HImode);
14774 : emit_insn (gen_vec_extract_hi_v16hi (tmp, operands[1]));
14775 : emit_insn (gen_vec_extract_lo_v16hi (tmp2, operands[1]));
14776 : emit_insn (gen_iorv8hi3 (tmp3, tmp, tmp2));
14777 : emit_insn (gen_reduc_ior_scal_v8hi (operands[0], tmp3));
14778 : DONE;
14779 : }
14780 : #undef DONE
14781 : #undef FAIL
14782 : }
14783 : static const uint8_t expand_encoding[] = {
14784 : 0x01, 0x4a, 0x55, 0x01, 0x00, 0x01, 0x01
14785 : };
14786 : return complete_seq (expand_encoding, operands);
14787 : }
14788 :
14789 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14790 : rtx
14791 : gen_reduc_xor_scal_v64qi (const rtx operand0, const rtx operand1)
14792 : {
14793 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14794 : start_sequence ();
14795 : {
14796 : #define FAIL _Pragma ("GCC error \"reduc_xor_scal_v64qi cannot FAIL\"") (void)0
14797 : #define DONE return end_sequence ()
14798 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14799 : {
14800 : rtx tmp = gen_reg_rtx (V32QImode);
14801 : rtx tmp2 = gen_reg_rtx (V32QImode);
14802 : rtx tmp3 = gen_reg_rtx (V32QImode);
14803 : emit_insn (gen_vec_extract_hi_v64qi (tmp, operands[1]));
14804 : emit_insn (gen_vec_extract_lo_v64qi (tmp2, operands[1]));
14805 : emit_insn (gen_xorv32qi3 (tmp3, tmp, tmp2));
14806 : emit_insn (gen_reduc_xor_scal_v32qi (operands[0], tmp3));
14807 : DONE;
14808 : }
14809 : #undef DONE
14810 : #undef FAIL
14811 : }
14812 : static const uint8_t expand_encoding[] = {
14813 : 0x01, 0x4b, 0x59, 0x01, 0x00, 0x01, 0x01
14814 : };
14815 : return complete_seq (expand_encoding, operands);
14816 : }
14817 :
14818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4370 */
14819 : extern rtx_insn *gen_split_1366 (rtx_insn *, rtx *);
14820 : rtx_insn *
14821 : gen_split_1366 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14822 : {
14823 : if (dump_file)
14824 : fprintf (dump_file, "Splitting with gen_split_1366 (sse.md:4370)\n");
14825 : start_sequence ();
14826 : #define FAIL return (end_sequence (), nullptr)
14827 : #define DONE return end_sequence ()
14828 : #line 4390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14829 : {
14830 : operands[6] = gen_reg_rtx (V8SFmode);
14831 : operands[7]
14832 : = lowpart_subreg (GET_MODE (operands[0]), operands[6], V8SFmode);
14833 : }
14834 : #undef DONE
14835 : #undef FAIL
14836 : static const uint8_t expand_encoding[] = {
14837 : 0x02, 0x1f, 0x01, 0x06, 0x1a, 0x6f, 0x03, 0x01,
14838 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c, 0x1f, 0x01,
14839 : 0x00, 0x01, 0x07
14840 : };
14841 : return complete_seq (expand_encoding, operands);
14842 : }
14843 :
14844 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4424 */
14845 : extern rtx_insn *gen_split_1376 (rtx_insn *, rtx *);
14846 : rtx_insn *
14847 : gen_split_1376 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14848 : {
14849 : if (dump_file)
14850 : fprintf (dump_file, "Splitting with gen_split_1376 (sse.md:4424)\n");
14851 : start_sequence ();
14852 : static const uint8_t expand_encoding[] = {
14853 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01,
14854 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c
14855 : };
14856 : return complete_seq (expand_encoding, operands);
14857 : }
14858 :
14859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4466 */
14860 : extern rtx_insn *gen_split_1385 (rtx_insn *, rtx *);
14861 : rtx_insn *
14862 : gen_split_1385 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14863 : {
14864 : if (dump_file)
14865 : fprintf (dump_file, "Splitting with gen_split_1385 (sse.md:4466)\n");
14866 : start_sequence ();
14867 : #define FAIL return (end_sequence (), nullptr)
14868 : #define DONE return end_sequence ()
14869 : #line 4489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14870 : {
14871 : if (INTVAL (operands[5]) == 5)
14872 : std::swap (operands[1], operands[2]);
14873 : operands[2] = force_reg (V2DFmode, operands[2]);
14874 : }
14875 : #undef DONE
14876 : #undef FAIL
14877 : static const uint8_t expand_encoding[] = {
14878 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01,
14879 : 0x02, 0x01, 0x01, 0x61, 0x6c, 0x01, 0x03, 0x01,
14880 : 0x04, 0x34
14881 : };
14882 : return complete_seq (expand_encoding, operands);
14883 : }
14884 :
14885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14886 : extern rtx_insn *gen_split_1395 (rtx_insn *, rtx *);
14887 : rtx_insn *
14888 : gen_split_1395 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14889 : {
14890 : if (dump_file)
14891 : fprintf (dump_file, "Splitting with gen_split_1395 (sse.md:4685)\n");
14892 : start_sequence ();
14893 : #define FAIL return (end_sequence (), nullptr)
14894 : #define DONE return end_sequence ()
14895 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14896 : {
14897 : operands[5] = lowpart_subreg (HImode,
14898 : operands[0], SImode);
14899 : if (SUBREG_P (operands[5]))
14900 : {
14901 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14902 : SUBREG_PROMOTED_SET (operands[5], 1);
14903 : }
14904 : }
14905 : #undef DONE
14906 : #undef FAIL
14907 : static const uint8_t expand_encoding[] = {
14908 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x10,
14909 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14910 : 0x1f, 0x01, 0x04, 0x01, 0x05
14911 : };
14912 : return complete_seq (expand_encoding, operands);
14913 : }
14914 :
14915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14916 : extern rtx_insn *gen_split_1403 (rtx_insn *, rtx *);
14917 : rtx_insn *
14918 : gen_split_1403 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14919 : {
14920 : if (dump_file)
14921 : fprintf (dump_file, "Splitting with gen_split_1403 (sse.md:4685)\n");
14922 : start_sequence ();
14923 : #define FAIL return (end_sequence (), nullptr)
14924 : #define DONE return end_sequence ()
14925 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14926 : {
14927 : operands[5] = lowpart_subreg (QImode,
14928 : operands[0], HImode);
14929 : if (SUBREG_P (operands[5]))
14930 : {
14931 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14932 : SUBREG_PROMOTED_SET (operands[5], 1);
14933 : }
14934 : }
14935 : #undef DONE
14936 : #undef FAIL
14937 : static const uint8_t expand_encoding[] = {
14938 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
14939 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14940 : 0x1f, 0x01, 0x04, 0x01, 0x05
14941 : };
14942 : return complete_seq (expand_encoding, operands);
14943 : }
14944 :
14945 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14946 : extern rtx_insn *gen_split_1413 (rtx_insn *, rtx *);
14947 : rtx_insn *
14948 : gen_split_1413 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14949 : {
14950 : if (dump_file)
14951 : fprintf (dump_file, "Splitting with gen_split_1413 (sse.md:4685)\n");
14952 : start_sequence ();
14953 : #define FAIL return (end_sequence (), nullptr)
14954 : #define DONE return end_sequence ()
14955 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14956 : {
14957 : operands[5] = lowpart_subreg (SImode,
14958 : operands[0], SImode);
14959 : if (SUBREG_P (operands[5]))
14960 : {
14961 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14962 : SUBREG_PROMOTED_SET (operands[5], 1);
14963 : }
14964 : }
14965 : #undef DONE
14966 : #undef FAIL
14967 : static const uint8_t expand_encoding[] = {
14968 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x11,
14969 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14970 : 0x1f, 0x01, 0x04, 0x01, 0x05
14971 : };
14972 : return complete_seq (expand_encoding, operands);
14973 : }
14974 :
14975 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14976 : extern rtx_insn *gen_split_1423 (rtx_insn *, rtx *);
14977 : rtx_insn *
14978 : gen_split_1423 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14979 : {
14980 : if (dump_file)
14981 : fprintf (dump_file, "Splitting with gen_split_1423 (sse.md:4685)\n");
14982 : start_sequence ();
14983 : #define FAIL return (end_sequence (), nullptr)
14984 : #define DONE return end_sequence ()
14985 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14986 : {
14987 : operands[5] = lowpart_subreg (HImode,
14988 : operands[0], DImode);
14989 : if (SUBREG_P (operands[5]))
14990 : {
14991 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14992 : SUBREG_PROMOTED_SET (operands[5], 1);
14993 : }
14994 : }
14995 : #undef DONE
14996 : #undef FAIL
14997 : static const uint8_t expand_encoding[] = {
14998 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x10,
14999 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15000 : 0x1f, 0x01, 0x04, 0x01, 0x05
15001 : };
15002 : return complete_seq (expand_encoding, operands);
15003 : }
15004 :
15005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
15006 : extern rtx_insn *gen_split_1433 (rtx_insn *, rtx *);
15007 : rtx_insn *
15008 : gen_split_1433 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15009 : {
15010 : if (dump_file)
15011 : fprintf (dump_file, "Splitting with gen_split_1433 (sse.md:4685)\n");
15012 : start_sequence ();
15013 : #define FAIL return (end_sequence (), nullptr)
15014 : #define DONE return end_sequence ()
15015 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15016 : {
15017 : operands[5] = lowpart_subreg (QImode,
15018 : operands[0], HImode);
15019 : if (SUBREG_P (operands[5]))
15020 : {
15021 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15022 : SUBREG_PROMOTED_SET (operands[5], 1);
15023 : }
15024 : }
15025 : #undef DONE
15026 : #undef FAIL
15027 : static const uint8_t expand_encoding[] = {
15028 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
15029 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15030 : 0x1f, 0x01, 0x04, 0x01, 0x05
15031 : };
15032 : return complete_seq (expand_encoding, operands);
15033 : }
15034 :
15035 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4724 */
15036 : extern rtx_insn *gen_split_1443 (rtx_insn *, rtx *);
15037 : rtx_insn *
15038 : gen_split_1443 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15039 : {
15040 : if (dump_file)
15041 : fprintf (dump_file, "Splitting with gen_split_1443 (sse.md:4724)\n");
15042 : start_sequence ();
15043 : #define FAIL return (end_sequence (), nullptr)
15044 : #define DONE return end_sequence ()
15045 : #line 4742 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15046 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15047 : #undef DONE
15048 : #undef FAIL
15049 : static const uint8_t expand_encoding[] = {
15050 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15051 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
15052 : };
15053 : return complete_seq (expand_encoding, operands);
15054 : }
15055 :
15056 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4724 */
15057 : extern rtx_insn *gen_split_1453 (rtx_insn *, rtx *);
15058 : rtx_insn *
15059 : gen_split_1453 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15060 : {
15061 : if (dump_file)
15062 : fprintf (dump_file, "Splitting with gen_split_1453 (sse.md:4724)\n");
15063 : start_sequence ();
15064 : #define FAIL return (end_sequence (), nullptr)
15065 : #define DONE return end_sequence ()
15066 : #line 4742 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15067 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15068 : #undef DONE
15069 : #undef FAIL
15070 : static const uint8_t expand_encoding[] = {
15071 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15072 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
15073 : };
15074 : return complete_seq (expand_encoding, operands);
15075 : }
15076 :
15077 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4877 */
15078 : extern rtx_insn *gen_split_1463 (rtx_insn *, rtx *);
15079 : rtx_insn *
15080 : gen_split_1463 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15081 : {
15082 : if (dump_file)
15083 : fprintf (dump_file, "Splitting with gen_split_1463 (sse.md:4877)\n");
15084 : start_sequence ();
15085 : #define FAIL return (end_sequence (), nullptr)
15086 : #define DONE return end_sequence ()
15087 : #line 4905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15088 : {
15089 : operands[5] = lowpart_subreg (SImode,
15090 : operands[0], HImode);
15091 : if (SUBREG_P (operands[5]))
15092 : {
15093 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15094 : SUBREG_PROMOTED_SET (operands[5], 1);
15095 : }
15096 : }
15097 : #undef DONE
15098 : #undef FAIL
15099 : static const uint8_t expand_encoding[] = {
15100 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x11,
15101 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15102 : 0x1f, 0x01, 0x04, 0x01, 0x05
15103 : };
15104 : return complete_seq (expand_encoding, operands);
15105 : }
15106 :
15107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4919 */
15108 : extern rtx_insn *gen_split_1473 (rtx_insn *, rtx *);
15109 : rtx_insn *
15110 : gen_split_1473 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15111 : {
15112 : if (dump_file)
15113 : fprintf (dump_file, "Splitting with gen_split_1473 (sse.md:4919)\n");
15114 : start_sequence ();
15115 : #define FAIL return (end_sequence (), nullptr)
15116 : #define DONE return end_sequence ()
15117 : #line 4936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15118 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15119 : #undef DONE
15120 : #undef FAIL
15121 : static const uint8_t expand_encoding[] = {
15122 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x03, 0x01,
15123 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15124 : };
15125 : return complete_seq (expand_encoding, operands);
15126 : }
15127 :
15128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4919 */
15129 : extern rtx_insn *gen_split_1483 (rtx_insn *, rtx *);
15130 : rtx_insn *
15131 : gen_split_1483 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15132 : {
15133 : if (dump_file)
15134 : fprintf (dump_file, "Splitting with gen_split_1483 (sse.md:4919)\n");
15135 : start_sequence ();
15136 : #define FAIL return (end_sequence (), nullptr)
15137 : #define DONE return end_sequence ()
15138 : #line 4936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15139 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15140 : #undef DONE
15141 : #undef FAIL
15142 : static const uint8_t expand_encoding[] = {
15143 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15144 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15145 : };
15146 : return complete_seq (expand_encoding, operands);
15147 : }
15148 :
15149 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15150 : extern rtx_insn *gen_split_1493 (rtx_insn *, rtx *);
15151 : rtx_insn *
15152 : gen_split_1493 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15153 : {
15154 : if (dump_file)
15155 : fprintf (dump_file, "Splitting with gen_split_1493 (sse.md:4938)\n");
15156 : start_sequence ();
15157 : #define FAIL return (end_sequence (), nullptr)
15158 : #define DONE return end_sequence ()
15159 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15160 : {
15161 : int cmp_imm = INTVAL (operands[3]);
15162 : rtx res = CONST0_RTX (HImode);
15163 : /* EQ/LE/NLT/TRUE. */
15164 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15165 : {
15166 : int nelts = GET_MODE_NUNITS (V16HImode);
15167 : if (nelts >= 8)
15168 : res = CONSTM1_RTX (HImode);
15169 : else
15170 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15171 : }
15172 : operands[4] = res;
15173 : }
15174 : #undef DONE
15175 : #undef FAIL
15176 : static const uint8_t expand_encoding[] = {
15177 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15178 : };
15179 : return complete_seq (expand_encoding, operands);
15180 : }
15181 :
15182 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15183 : extern rtx_insn *gen_split_1503 (rtx_insn *, rtx *);
15184 : rtx_insn *
15185 : gen_split_1503 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15186 : {
15187 : if (dump_file)
15188 : fprintf (dump_file, "Splitting with gen_split_1503 (sse.md:4938)\n");
15189 : start_sequence ();
15190 : #define FAIL return (end_sequence (), nullptr)
15191 : #define DONE return end_sequence ()
15192 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15193 : {
15194 : int cmp_imm = INTVAL (operands[3]);
15195 : rtx res = CONST0_RTX (QImode);
15196 : /* EQ/LE/NLT/TRUE. */
15197 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15198 : {
15199 : int nelts = GET_MODE_NUNITS (V8DImode);
15200 : if (nelts >= 8)
15201 : res = CONSTM1_RTX (QImode);
15202 : else
15203 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15204 : }
15205 : operands[4] = res;
15206 : }
15207 : #undef DONE
15208 : #undef FAIL
15209 : static const uint8_t expand_encoding[] = {
15210 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15211 : };
15212 : return complete_seq (expand_encoding, operands);
15213 : }
15214 :
15215 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4999 */
15216 : extern rtx_insn *gen_split_1513 (rtx_insn *, rtx *);
15217 : rtx_insn *
15218 : gen_split_1513 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15219 : {
15220 : if (dump_file)
15221 : fprintf (dump_file, "Splitting with gen_split_1513 (sse.md:4999)\n");
15222 : start_sequence ();
15223 : #define FAIL return (end_sequence (), nullptr)
15224 : #define DONE return end_sequence ()
15225 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15226 : {
15227 : operands[5] = lowpart_subreg (HImode,
15228 : operands[0], DImode);
15229 : if (SUBREG_P (operands[5]))
15230 : {
15231 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15232 : SUBREG_PROMOTED_SET (operands[5], 1);
15233 : }
15234 : }
15235 : #undef DONE
15236 : #undef FAIL
15237 : static const uint8_t expand_encoding[] = {
15238 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x10,
15239 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15240 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15241 : };
15242 : return complete_seq (expand_encoding, operands);
15243 : }
15244 :
15245 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4999 */
15246 : extern rtx_insn *gen_split_1523 (rtx_insn *, rtx *);
15247 : rtx_insn *
15248 : gen_split_1523 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15249 : {
15250 : if (dump_file)
15251 : fprintf (dump_file, "Splitting with gen_split_1523 (sse.md:4999)\n");
15252 : start_sequence ();
15253 : #define FAIL return (end_sequence (), nullptr)
15254 : #define DONE return end_sequence ()
15255 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15256 : {
15257 : operands[5] = lowpart_subreg (QImode,
15258 : operands[0], HImode);
15259 : if (SUBREG_P (operands[5]))
15260 : {
15261 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15262 : SUBREG_PROMOTED_SET (operands[5], 1);
15263 : }
15264 : }
15265 : #undef DONE
15266 : #undef FAIL
15267 : static const uint8_t expand_encoding[] = {
15268 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
15269 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15270 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15271 : };
15272 : return complete_seq (expand_encoding, operands);
15273 : }
15274 :
15275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15276 : extern rtx_insn *gen_split_1533 (rtx_insn *, rtx *);
15277 : rtx_insn *
15278 : gen_split_1533 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15279 : {
15280 : if (dump_file)
15281 : fprintf (dump_file, "Splitting with gen_split_1533 (sse.md:5091)\n");
15282 : start_sequence ();
15283 : #define FAIL return (end_sequence (), nullptr)
15284 : #define DONE return end_sequence ()
15285 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15286 : {
15287 : operands[5] = lowpart_subreg (QImode,
15288 : operands[0], SImode);
15289 : if (SUBREG_P (operands[5]))
15290 : {
15291 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15292 : SUBREG_PROMOTED_SET (operands[5], 1);
15293 : }
15294 : }
15295 : #undef DONE
15296 : #undef FAIL
15297 : static const uint8_t expand_encoding[] = {
15298 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x0f,
15299 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15300 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15301 : };
15302 : return complete_seq (expand_encoding, operands);
15303 : }
15304 :
15305 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15306 : extern rtx_insn *gen_split_1543 (rtx_insn *, rtx *);
15307 : rtx_insn *
15308 : gen_split_1543 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15309 : {
15310 : if (dump_file)
15311 : fprintf (dump_file, "Splitting with gen_split_1543 (sse.md:5091)\n");
15312 : start_sequence ();
15313 : #define FAIL return (end_sequence (), nullptr)
15314 : #define DONE return end_sequence ()
15315 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15316 : {
15317 : operands[5] = lowpart_subreg (QImode,
15318 : operands[0], DImode);
15319 : if (SUBREG_P (operands[5]))
15320 : {
15321 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15322 : SUBREG_PROMOTED_SET (operands[5], 1);
15323 : }
15324 : }
15325 : #undef DONE
15326 : #undef FAIL
15327 : static const uint8_t expand_encoding[] = {
15328 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
15329 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15330 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15331 : };
15332 : return complete_seq (expand_encoding, operands);
15333 : }
15334 :
15335 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5161 */
15336 : extern rtx_insn *gen_split_1553 (rtx_insn *, rtx *);
15337 : rtx_insn *
15338 : gen_split_1553 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
15339 : {
15340 : if (dump_file)
15341 : fprintf (dump_file, "Splitting with gen_split_1553 (sse.md:5161)\n");
15342 : start_sequence ();
15343 : #define FAIL return (end_sequence (), nullptr)
15344 : #define DONE return end_sequence ()
15345 : #line 5176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15346 : {
15347 : /* LE: 2, NLT: 5, NLE: 6, LT: 1 */
15348 : int cmp_predicate = 2; /* LE */
15349 : if (MEM_P (operands[1]))
15350 : {
15351 : std::swap (operands[1], operands[2]);
15352 : cmp_predicate = 5; /* NLT (GE) */
15353 : }
15354 : if ((INTVAL (operands[4]) & 4) != 0)
15355 : cmp_predicate ^= 4; /* Invert the comparison to NLE (GT) or LT. */
15356 : emit_insn (gen_avx512vl_ucmpv16qi3 (operands[0], operands[1],operands[2],
15357 : GEN_INT (cmp_predicate)));
15358 : DONE;
15359 : }
15360 : #undef DONE
15361 : #undef FAIL
15362 : static const uint8_t expand_encoding[] = {
15363 : 0x01, 0x27, 0x00
15364 : };
15365 : return complete_seq (expand_encoding, operands);
15366 : }
15367 :
15368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5275 */
15369 : rtx
15370 : gen_vec_cmpv8siqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15371 : {
15372 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15373 : start_sequence ();
15374 : {
15375 : #define FAIL return (end_sequence (), nullptr)
15376 : #define DONE return end_sequence ()
15377 : #line 5281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15378 : {
15379 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15380 : operands[2], operands[3]);
15381 : gcc_assert (ok);
15382 : DONE;
15383 : }
15384 : #undef DONE
15385 : #undef FAIL
15386 : }
15387 : static const uint8_t expand_encoding[] = {
15388 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15389 : 0x02, 0x01, 0x03
15390 : };
15391 : return complete_seq (expand_encoding, operands);
15392 : }
15393 :
15394 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5275 */
15395 : rtx
15396 : gen_vec_cmpv16sfhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15397 : {
15398 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15399 : start_sequence ();
15400 : {
15401 : #define FAIL return (end_sequence (), nullptr)
15402 : #define DONE return end_sequence ()
15403 : #line 5281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15404 : {
15405 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15406 : operands[2], operands[3]);
15407 : gcc_assert (ok);
15408 : DONE;
15409 : }
15410 : #undef DONE
15411 : #undef FAIL
15412 : }
15413 : static const uint8_t expand_encoding[] = {
15414 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x10, 0x01, 0x01,
15415 : 0x02, 0x01, 0x03
15416 : };
15417 : return complete_seq (expand_encoding, operands);
15418 : }
15419 :
15420 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5288 */
15421 : rtx
15422 : gen_vec_cmpv16hihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15423 : {
15424 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15425 : start_sequence ();
15426 : {
15427 : #define FAIL return (end_sequence (), nullptr)
15428 : #define DONE return end_sequence ()
15429 : #line 5294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15430 : {
15431 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15432 : operands[2], operands[3]);
15433 : gcc_assert (ok);
15434 : DONE;
15435 : }
15436 : #undef DONE
15437 : #undef FAIL
15438 : }
15439 : static const uint8_t expand_encoding[] = {
15440 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x10, 0x01, 0x01,
15441 : 0x02, 0x01, 0x03
15442 : };
15443 : return complete_seq (expand_encoding, operands);
15444 : }
15445 :
15446 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5326 */
15447 : rtx
15448 : gen_vec_cmpv8hiv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15449 : {
15450 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15451 : start_sequence ();
15452 : {
15453 : #define FAIL return (end_sequence (), nullptr)
15454 : #define DONE return end_sequence ()
15455 : #line 5332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15456 : {
15457 : bool ok = ix86_expand_int_vec_cmp (operands);
15458 : gcc_assert (ok);
15459 : DONE;
15460 : }
15461 : #undef DONE
15462 : #undef FAIL
15463 : }
15464 : static const uint8_t expand_encoding[] = {
15465 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x50, 0x01, 0x01,
15466 : 0x02, 0x01, 0x03
15467 : };
15468 : return complete_seq (expand_encoding, operands);
15469 : }
15470 :
15471 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5374 */
15472 : rtx
15473 : gen_vec_cmpuv8diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15474 : {
15475 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15476 : start_sequence ();
15477 : {
15478 : #define FAIL return (end_sequence (), nullptr)
15479 : #define DONE return end_sequence ()
15480 : #line 5380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15481 : {
15482 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15483 : operands[2], operands[3]);
15484 : gcc_assert (ok);
15485 : DONE;
15486 : }
15487 : #undef DONE
15488 : #undef FAIL
15489 : }
15490 : static const uint8_t expand_encoding[] = {
15491 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15492 : 0x02, 0x01, 0x03
15493 : };
15494 : return complete_seq (expand_encoding, operands);
15495 : }
15496 :
15497 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5400 */
15498 : rtx
15499 : gen_vec_cmpuv16hiv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15500 : {
15501 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15502 : start_sequence ();
15503 : {
15504 : #define FAIL return (end_sequence (), nullptr)
15505 : #define DONE return end_sequence ()
15506 : #line 5406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15507 : {
15508 : bool ok = ix86_expand_int_vec_cmp (operands);
15509 : gcc_assert (ok);
15510 : DONE;
15511 : }
15512 : #undef DONE
15513 : #undef FAIL
15514 : }
15515 : static const uint8_t expand_encoding[] = {
15516 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x55, 0x01, 0x01,
15517 : 0x02, 0x01, 0x03
15518 : };
15519 : return complete_seq (expand_encoding, operands);
15520 : }
15521 :
15522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5498 */
15523 : rtx
15524 : gen_vcond_mask_v8siqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15525 : {
15526 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15527 : static const uint8_t expand_encoding[] = {
15528 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x01, 0x01,
15529 : 0x01, 0x02, 0x01, 0x03
15530 : };
15531 : return expand_rtx (expand_encoding, operands);
15532 : }
15533 :
15534 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5498 */
15535 : rtx
15536 : gen_vcond_mask_v8dfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15537 : {
15538 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15539 : static const uint8_t expand_encoding[] = {
15540 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x01, 0x01,
15541 : 0x01, 0x02, 0x01, 0x03
15542 : };
15543 : return expand_rtx (expand_encoding, operands);
15544 : }
15545 :
15546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5506 */
15547 : rtx
15548 : gen_vcond_mask_v8hiqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15549 : {
15550 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15551 : static const uint8_t expand_encoding[] = {
15552 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x01, 0x01,
15553 : 0x01, 0x02, 0x01, 0x03
15554 : };
15555 : return expand_rtx (expand_encoding, operands);
15556 : }
15557 :
15558 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5520 */
15559 : rtx
15560 : gen_vcond_mask_v4div4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15561 : {
15562 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15563 : start_sequence ();
15564 : {
15565 : #define FAIL _Pragma ("GCC error \"vcond_mask_v4div4di cannot FAIL\"") (void)0
15566 : #define DONE return end_sequence ()
15567 : #line 5527 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15568 : {
15569 : ix86_expand_sse_movcc (operands[0], operands[3],
15570 : operands[1], operands[2]);
15571 : DONE;
15572 : }
15573 : #undef DONE
15574 : #undef FAIL
15575 : }
15576 : static const uint8_t expand_encoding[] = {
15577 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x01,
15578 : 0x01, 0x01, 0x02, 0x01, 0x03
15579 : };
15580 : return complete_seq (expand_encoding, operands);
15581 : }
15582 :
15583 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5585 */
15584 : rtx
15585 : gen_vcond_mask_qiqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15586 : {
15587 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15588 : start_sequence ();
15589 : {
15590 : #define FAIL _Pragma ("GCC error \"vcond_mask_qiqi cannot FAIL\"") (void)0
15591 : #define DONE return end_sequence ()
15592 : #line 5591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15593 : {
15594 : /* (operand[1] & operand[3]) | (operand[2] & ~operand[3]) */
15595 : rtx op1 = gen_reg_rtx (QImode);
15596 : rtx op2 = gen_reg_rtx (QImode);
15597 : rtx op3 = gen_reg_rtx (QImode);
15598 :
15599 : emit_insn (gen_andqi3 (op1, operands[1], operands[3]));
15600 : emit_insn (gen_one_cmplqi2 (op3, operands[3]));
15601 : emit_insn (gen_andqi3 (op2, operands[2], op3));
15602 : emit_insn (gen_iorqi3 (operands[0], op1, op2));
15603 :
15604 : DONE;
15605 : }
15606 : #undef DONE
15607 : #undef FAIL
15608 : }
15609 : static const uint8_t expand_encoding[] = {
15610 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15611 : 0x03
15612 : };
15613 : return complete_seq (expand_encoding, operands);
15614 : }
15615 :
15616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15617 : rtx
15618 : gen_andv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15619 : {
15620 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15621 : start_sequence ();
15622 : {
15623 : #define FAIL return (end_sequence (), nullptr)
15624 : #define DONE return end_sequence ()
15625 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15626 : ix86_fixup_binary_operands_no_copy (AND, V8HFmode, operands);
15627 : #undef DONE
15628 : #undef FAIL
15629 : }
15630 : static const uint8_t expand_encoding[] = {
15631 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6a, 0x01, 0x01,
15632 : 0x01, 0x02
15633 : };
15634 : return complete_seq (expand_encoding, operands);
15635 : }
15636 :
15637 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15638 : rtx
15639 : gen_andv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15640 : {
15641 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15642 : start_sequence ();
15643 : {
15644 : #define FAIL return (end_sequence (), nullptr)
15645 : #define DONE return end_sequence ()
15646 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15647 : ix86_fixup_binary_operands_no_copy (AND, V4SFmode, operands);
15648 : #undef DONE
15649 : #undef FAIL
15650 : }
15651 : static const uint8_t expand_encoding[] = {
15652 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x49,
15653 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15654 : 0x04
15655 : };
15656 : return complete_seq (expand_encoding, operands);
15657 : }
15658 :
15659 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15660 : rtx
15661 : gen_xorv4df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15662 : {
15663 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15664 : start_sequence ();
15665 : {
15666 : #define FAIL return (end_sequence (), nullptr)
15667 : #define DONE return end_sequence ()
15668 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15669 : ix86_fixup_binary_operands_no_copy (XOR, V4DFmode, operands);
15670 : #undef DONE
15671 : #undef FAIL
15672 : }
15673 : static const uint8_t expand_encoding[] = {
15674 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x4b,
15675 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15676 : 0x04
15677 : };
15678 : return complete_seq (expand_encoding, operands);
15679 : }
15680 :
15681 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15682 : rtx
15683 : gen_andv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15684 : {
15685 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15686 : start_sequence ();
15687 : {
15688 : #define FAIL return (end_sequence (), nullptr)
15689 : #define DONE return end_sequence ()
15690 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15691 : ix86_fixup_binary_operands_no_copy (AND, V32HFmode, operands);
15692 : #undef DONE
15693 : #undef FAIL
15694 : }
15695 : static const uint8_t expand_encoding[] = {
15696 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x73, 0x01, 0x01,
15697 : 0x01, 0x02
15698 : };
15699 : return complete_seq (expand_encoding, operands);
15700 : }
15701 :
15702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15703 : rtx
15704 : gen_andv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15705 : {
15706 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15707 : start_sequence ();
15708 : {
15709 : #define FAIL return (end_sequence (), nullptr)
15710 : #define DONE return end_sequence ()
15711 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15712 : ix86_fixup_binary_operands_no_copy (AND, V8DFmode, operands);
15713 : #undef DONE
15714 : #undef FAIL
15715 : }
15716 : static const uint8_t expand_encoding[] = {
15717 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x49,
15718 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15719 : 0x04
15720 : };
15721 : return complete_seq (expand_encoding, operands);
15722 : }
15723 :
15724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5852 */
15725 : extern rtx_insn *gen_split_1568 (rtx_insn *, rtx *);
15726 : rtx_insn *
15727 : gen_split_1568 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15728 : {
15729 : if (dump_file)
15730 : fprintf (dump_file, "Splitting with gen_split_1568 (sse.md:5852)\n");
15731 : start_sequence ();
15732 : #define FAIL return (end_sequence (), nullptr)
15733 : #define DONE return end_sequence ()
15734 : #line 5860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15735 : operands[1] = force_reg (V16SFmode, operands[1]);
15736 : #undef DONE
15737 : #undef FAIL
15738 : static const uint8_t expand_encoding[] = {
15739 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
15740 : };
15741 : return complete_seq (expand_encoding, operands);
15742 : }
15743 :
15744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5862 */
15745 : rtx
15746 : gen_copysignv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15747 : {
15748 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15749 : start_sequence ();
15750 : {
15751 : #define FAIL _Pragma ("GCC error \"copysignv16hf3 cannot FAIL\"") (void)0
15752 : #define DONE return end_sequence ()
15753 : #line 5873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15754 : {
15755 : operands[3] = ix86_build_signbit_mask (V16HFmode, 1, 0);
15756 :
15757 : operands[4] = gen_reg_rtx (V16HFmode);
15758 : operands[5] = gen_reg_rtx (V16HFmode);
15759 : }
15760 : #undef DONE
15761 : #undef FAIL
15762 : }
15763 : static const uint8_t expand_encoding[] = {
15764 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x6e, 0x4c, 0x6e,
15765 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
15766 : 0x6e, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
15767 : 0x4a, 0x6e, 0x01, 0x04, 0x01, 0x05
15768 : };
15769 : return complete_seq (expand_encoding, operands);
15770 : }
15771 :
15772 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5880 */
15773 : rtx
15774 : gen_xorsignv8bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15775 : {
15776 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15777 : start_sequence ();
15778 : {
15779 : #define FAIL _Pragma ("GCC error \"xorsignv8bf3 cannot FAIL\"") (void)0
15780 : #define DONE return end_sequence ()
15781 : #line 5888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15782 : {
15783 : operands[3] = ix86_build_signbit_mask (V8BFmode, 1, 0);
15784 :
15785 : operands[4] = gen_reg_rtx (V8BFmode);
15786 : }
15787 : #undef DONE
15788 : #undef FAIL
15789 : }
15790 : static const uint8_t expand_encoding[] = {
15791 : 0x02, 0x1f, 0x01, 0x04, 0x49, 0x69, 0x01, 0x03,
15792 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x69, 0x01,
15793 : 0x04, 0x01, 0x01
15794 : };
15795 : return complete_seq (expand_encoding, operands);
15796 : }
15797 :
15798 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5894 */
15799 : rtx
15800 : gen_signbitv16sf2 (const rtx operand0, const rtx operand1)
15801 : {
15802 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
15803 : start_sequence ();
15804 : {
15805 : #define FAIL _Pragma ("GCC error \"signbitv16sf2 cannot FAIL\"") (void)0
15806 : #define DONE return end_sequence ()
15807 : #line 5901 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15808 : {
15809 : operands[1] = force_reg (V16SFmode, operands[1]);
15810 : operands[2] = GEN_INT (GET_MODE_UNIT_BITSIZE (V16SFmode)-1);
15811 : }
15812 : #undef DONE
15813 : #undef FAIL
15814 : }
15815 : static const uint8_t expand_encoding[] = {
15816 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x5b, 0x32, 0x5b,
15817 : 0x01, 0x01, 0x00, 0x01, 0x02
15818 : };
15819 : return complete_seq (expand_encoding, operands);
15820 : }
15821 :
15822 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6204 */
15823 : rtx
15824 : gen_fmav8sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15825 : {
15826 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15827 : static const uint8_t expand_encoding[] = {
15828 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6f, 0x01, 0x01,
15829 : 0x01, 0x02, 0x01, 0x03
15830 : };
15831 : return expand_rtx (expand_encoding, operands);
15832 : }
15833 :
15834 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6204 */
15835 : rtx
15836 : gen_fmav32bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15837 : {
15838 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15839 : static const uint8_t expand_encoding[] = {
15840 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x72, 0x01, 0x01,
15841 : 0x01, 0x02, 0x01, 0x03
15842 : };
15843 : return expand_rtx (expand_encoding, operands);
15844 : }
15845 :
15846 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6211 */
15847 : rtx
15848 : gen_fmsv8hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15849 : {
15850 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15851 : static const uint8_t expand_encoding[] = {
15852 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6a, 0x01, 0x01,
15853 : 0x01, 0x02, 0x3d, 0x6a, 0x01, 0x03
15854 : };
15855 : return expand_rtx (expand_encoding, operands);
15856 : }
15857 :
15858 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6218 */
15859 : rtx
15860 : gen_fnmav8sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15861 : {
15862 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15863 : static const uint8_t expand_encoding[] = {
15864 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6f, 0x3d, 0x6f,
15865 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15866 : };
15867 : return expand_rtx (expand_encoding, operands);
15868 : }
15869 :
15870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6218 */
15871 : rtx
15872 : gen_fnmav32bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15873 : {
15874 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15875 : static const uint8_t expand_encoding[] = {
15876 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x72, 0x3d, 0x72,
15877 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15878 : };
15879 : return expand_rtx (expand_encoding, operands);
15880 : }
15881 :
15882 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6225 */
15883 : rtx
15884 : gen_fnmsv8hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15885 : {
15886 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15887 : static const uint8_t expand_encoding[] = {
15888 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6a, 0x3d, 0x6a,
15889 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6a, 0x01, 0x03
15890 : };
15891 : return expand_rtx (expand_encoding, operands);
15892 : }
15893 :
15894 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6245 */
15895 : rtx
15896 : gen_fma4i_fmadd_v8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15897 : {
15898 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15899 : static const uint8_t expand_encoding[] = {
15900 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6f, 0x01, 0x01,
15901 : 0x01, 0x02, 0x01, 0x03
15902 : };
15903 : return expand_rtx (expand_encoding, operands);
15904 : }
15905 :
15906 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6252 */
15907 : rtx
15908 : gen_fma4i_fmsub_v16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15909 : {
15910 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15911 : static const uint8_t expand_encoding[] = {
15912 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x74, 0x01, 0x01,
15913 : 0x01, 0x02, 0x3d, 0x74, 0x01, 0x03
15914 : };
15915 : return expand_rtx (expand_encoding, operands);
15916 : }
15917 :
15918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6268 */
15919 : rtx
15920 : gen_fma4i_fnmsub_sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15921 : {
15922 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15923 : static const uint8_t expand_encoding[] = {
15924 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2d, 0x3d, 0x2d,
15925 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x2d, 0x01, 0x03
15926 : };
15927 : return expand_rtx (expand_encoding, operands);
15928 : }
15929 :
15930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6277 */
15931 : rtx
15932 : gen_avx512vl_fmadd_v16hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15933 : {
15934 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15935 : start_sequence ();
15936 : {
15937 : #define FAIL return (end_sequence (), nullptr)
15938 : #define DONE return end_sequence ()
15939 : #line 6284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15940 : {
15941 : emit_insn (gen_fma_fmadd_v16hf_maskz_1 (
15942 : operands[0], operands[1], operands[2], operands[3],
15943 : CONST0_RTX (V16HFmode), operands[4]));
15944 : DONE;
15945 : }
15946 : #undef DONE
15947 : #undef FAIL
15948 : }
15949 : static const uint8_t expand_encoding[] = {
15950 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15951 : 0x03, 0x01, 0x04
15952 : };
15953 : return complete_seq (expand_encoding, operands);
15954 : }
15955 :
15956 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6277 */
15957 : rtx
15958 : gen_avx512vl_fmadd_v4sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15959 : {
15960 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15961 : start_sequence ();
15962 : {
15963 : #define FAIL return (end_sequence (), nullptr)
15964 : #define DONE return end_sequence ()
15965 : #line 6284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15966 : {
15967 : emit_insn (gen_fma_fmadd_v4sf_maskz_1_round (
15968 : operands[0], operands[1], operands[2], operands[3],
15969 : CONST0_RTX (V4SFmode), operands[4], operands[5]));
15970 : DONE;
15971 : }
15972 : #undef DONE
15973 : #undef FAIL
15974 : }
15975 : static const uint8_t expand_encoding[] = {
15976 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15977 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
15978 : 0x81, 0x33
15979 : };
15980 : return complete_seq (expand_encoding, operands);
15981 : }
15982 :
15983 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6332 */
15984 : rtx
15985 : gen_cond_fmav8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15986 : {
15987 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15988 : start_sequence ();
15989 : {
15990 : #define FAIL _Pragma ("GCC error \"cond_fmav8sf cannot FAIL\"") (void)0
15991 : #define DONE return end_sequence ()
15992 : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15993 : {
15994 : rtx tmp = gen_reg_rtx (V8SFmode);
15995 : emit_insn (gen_fmav8sf4 (tmp,
15996 : operands[2],
15997 : operands[3],
15998 : operands[4]));
15999 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8SFmode,
16000 : tmp,
16001 : operands[5],
16002 : operands[1]));
16003 : DONE;
16004 : }
16005 : #undef DONE
16006 : #undef FAIL
16007 : }
16008 : static const uint8_t expand_encoding[] = {
16009 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81,
16010 : 0x19, 0x6f, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04,
16011 : 0x01, 0x05, 0x01, 0x01
16012 : };
16013 : return complete_seq (expand_encoding, operands);
16014 : }
16015 :
16016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
16017 : rtx
16018 : gen_avx512fp16_fmsub_v8hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16019 : {
16020 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16021 : start_sequence ();
16022 : {
16023 : #define FAIL return (end_sequence (), nullptr)
16024 : #define DONE return end_sequence ()
16025 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16026 : {
16027 : emit_insn (gen_fma_fmsub_v8hf_maskz_1_round (
16028 : operands[0], operands[1], operands[2], operands[3],
16029 : CONST0_RTX (V8HFmode), operands[4], operands[5]));
16030 : DONE;
16031 : }
16032 : #undef DONE
16033 : #undef FAIL
16034 : }
16035 : static const uint8_t expand_encoding[] = {
16036 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16037 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16038 : 0x81, 0x33
16039 : };
16040 : return complete_seq (expand_encoding, operands);
16041 : }
16042 :
16043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
16044 : rtx
16045 : gen_avx512vl_fmsub_v2df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16046 : {
16047 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16048 : start_sequence ();
16049 : {
16050 : #define FAIL return (end_sequence (), nullptr)
16051 : #define DONE return end_sequence ()
16052 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16053 : {
16054 : emit_insn (gen_fma_fmsub_v2df_maskz_1 (
16055 : operands[0], operands[1], operands[2], operands[3],
16056 : CONST0_RTX (V2DFmode), operands[4]));
16057 : DONE;
16058 : }
16059 : #undef DONE
16060 : #undef FAIL
16061 : }
16062 : static const uint8_t expand_encoding[] = {
16063 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16064 : 0x03, 0x01, 0x04
16065 : };
16066 : return complete_seq (expand_encoding, operands);
16067 : }
16068 :
16069 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6435 */
16070 : rtx
16071 : gen_cond_fmsv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16072 : {
16073 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16074 : start_sequence ();
16075 : {
16076 : #define FAIL _Pragma ("GCC error \"cond_fmsv4df cannot FAIL\"") (void)0
16077 : #define DONE return end_sequence ()
16078 : #line 6446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16079 : {
16080 : rtx tmp = gen_reg_rtx (V4DFmode);
16081 : emit_insn (gen_fmsv4df4 (tmp,
16082 : operands[2],
16083 : operands[3],
16084 : operands[4]));
16085 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V4DFmode,
16086 : tmp,
16087 : operands[5],
16088 : operands[1]));
16089 : DONE;
16090 : }
16091 : #undef DONE
16092 : #undef FAIL
16093 : }
16094 : static const uint8_t expand_encoding[] = {
16095 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81,
16096 : 0x19, 0x70, 0x01, 0x02, 0x01, 0x03, 0x3d, 0x70,
16097 : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16098 : };
16099 : return complete_seq (expand_encoding, operands);
16100 : }
16101 :
16102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16103 : rtx
16104 : gen_avx512vl_fnmadd_v8sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16105 : {
16106 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16107 : start_sequence ();
16108 : {
16109 : #define FAIL return (end_sequence (), nullptr)
16110 : #define DONE return end_sequence ()
16111 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16112 : {
16113 : emit_insn (gen_fma_fnmadd_v8sf_maskz_1_round (
16114 : operands[0], operands[1], operands[2], operands[3],
16115 : CONST0_RTX (V8SFmode), operands[4], operands[5]));
16116 : DONE;
16117 : }
16118 : #undef DONE
16119 : #undef FAIL
16120 : }
16121 : static const uint8_t expand_encoding[] = {
16122 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16123 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16124 : 0x81, 0x33
16125 : };
16126 : return complete_seq (expand_encoding, operands);
16127 : }
16128 :
16129 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6541 */
16130 : rtx
16131 : gen_cond_fnmav8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16132 : {
16133 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16134 : start_sequence ();
16135 : {
16136 : #define FAIL _Pragma ("GCC error \"cond_fnmav8hf cannot FAIL\"") (void)0
16137 : #define DONE return end_sequence ()
16138 : #line 6552 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16139 : {
16140 : rtx tmp = gen_reg_rtx (V8HFmode);
16141 : emit_insn (gen_fnmav8hf4 (tmp,
16142 : operands[2],
16143 : operands[3],
16144 : operands[4]));
16145 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8HFmode,
16146 : tmp,
16147 : operands[5],
16148 : operands[1]));
16149 : DONE;
16150 : }
16151 : #undef DONE
16152 : #undef FAIL
16153 : }
16154 : static const uint8_t expand_encoding[] = {
16155 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81,
16156 : 0x19, 0x6a, 0x3d, 0x6a, 0x01, 0x02, 0x01, 0x03,
16157 : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16158 : };
16159 : return complete_seq (expand_encoding, operands);
16160 : }
16161 :
16162 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16163 : rtx
16164 : gen_avx512vl_fnmsub_v16hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16165 : {
16166 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16167 : start_sequence ();
16168 : {
16169 : #define FAIL return (end_sequence (), nullptr)
16170 : #define DONE return end_sequence ()
16171 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16172 : {
16173 : emit_insn (gen_fma_fnmsub_v16hf_maskz_1_round (
16174 : operands[0], operands[1], operands[2], operands[3],
16175 : CONST0_RTX (V16HFmode), operands[4], operands[5]));
16176 : DONE;
16177 : }
16178 : #undef DONE
16179 : #undef FAIL
16180 : }
16181 : static const uint8_t expand_encoding[] = {
16182 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16183 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16184 : 0x81, 0x33
16185 : };
16186 : return complete_seq (expand_encoding, operands);
16187 : }
16188 :
16189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16190 : rtx
16191 : gen_avx512f_fnmsub_v8df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16192 : {
16193 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16194 : start_sequence ();
16195 : {
16196 : #define FAIL return (end_sequence (), nullptr)
16197 : #define DONE return end_sequence ()
16198 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16199 : {
16200 : emit_insn (gen_fma_fnmsub_v8df_maskz_1_round (
16201 : operands[0], operands[1], operands[2], operands[3],
16202 : CONST0_RTX (V8DFmode), operands[4], operands[5]));
16203 : DONE;
16204 : }
16205 : #undef DONE
16206 : #undef FAIL
16207 : }
16208 : static const uint8_t expand_encoding[] = {
16209 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16210 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16211 : 0x81, 0x33
16212 : };
16213 : return complete_seq (expand_encoding, operands);
16214 : }
16215 :
16216 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6649 */
16217 : rtx
16218 : gen_cond_fnmsv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16219 : {
16220 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16221 : start_sequence ();
16222 : {
16223 : #define FAIL _Pragma ("GCC error \"cond_fnmsv8df cannot FAIL\"") (void)0
16224 : #define DONE return end_sequence ()
16225 : #line 6661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16226 : {
16227 : rtx tmp = gen_reg_rtx (V8DFmode);
16228 : emit_insn (gen_fnmsv8df4 (tmp,
16229 : operands[2],
16230 : operands[3],
16231 : operands[4]));
16232 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8DFmode,
16233 : tmp,
16234 : operands[5],
16235 : operands[1]));
16236 : DONE;
16237 : }
16238 : #undef DONE
16239 : #undef FAIL
16240 : }
16241 : static const uint8_t expand_encoding[] = {
16242 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81,
16243 : 0x19, 0x75, 0x3d, 0x75, 0x01, 0x02, 0x01, 0x03,
16244 : 0x3d, 0x75, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16245 : };
16246 : return complete_seq (expand_encoding, operands);
16247 : }
16248 :
16249 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6730 */
16250 : rtx
16251 : gen_vec_fmsubaddv32hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16252 : {
16253 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16254 : static const uint8_t expand_encoding[] = {
16255 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01, 0x01,
16256 : 0x01, 0x02, 0x3d, 0x73, 0x01, 0x03, 0x81, 0x06
16257 : };
16258 : return expand_rtx (expand_encoding, operands);
16259 : }
16260 :
16261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6740 */
16262 : rtx
16263 : gen_fmaddsub_v8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16264 : {
16265 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16266 : static const uint8_t expand_encoding[] = {
16267 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
16268 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x06
16269 : };
16270 : return expand_rtx (expand_encoding, operands);
16271 : }
16272 :
16273 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6749 */
16274 : rtx
16275 : gen_avx512fp16_fmaddsub_v8hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16276 : {
16277 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16278 : start_sequence ();
16279 : {
16280 : #define FAIL return (end_sequence (), nullptr)
16281 : #define DONE return end_sequence ()
16282 : #line 6756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16283 : {
16284 : emit_insn (gen_fma_fmaddsub_v8hf_maskz_1_round (
16285 : operands[0], operands[1], operands[2], operands[3],
16286 : CONST0_RTX (V8HFmode), operands[4], operands[5]));
16287 : DONE;
16288 : }
16289 : #undef DONE
16290 : #undef FAIL
16291 : }
16292 : static const uint8_t expand_encoding[] = {
16293 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16294 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16295 : 0x81, 0x33
16296 : };
16297 : return complete_seq (expand_encoding, operands);
16298 : }
16299 :
16300 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6749 */
16301 : rtx
16302 : gen_avx512vl_fmaddsub_v2df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16303 : {
16304 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16305 : start_sequence ();
16306 : {
16307 : #define FAIL return (end_sequence (), nullptr)
16308 : #define DONE return end_sequence ()
16309 : #line 6756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16310 : {
16311 : emit_insn (gen_fma_fmaddsub_v2df_maskz_1_round (
16312 : operands[0], operands[1], operands[2], operands[3],
16313 : CONST0_RTX (V2DFmode), operands[4], operands[5]));
16314 : DONE;
16315 : }
16316 : #undef DONE
16317 : #undef FAIL
16318 : }
16319 : static const uint8_t expand_encoding[] = {
16320 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16321 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16322 : 0x81, 0x33
16323 : };
16324 : return complete_seq (expand_encoding, operands);
16325 : }
16326 :
16327 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6763 */
16328 : rtx
16329 : gen_avx512vl_fmsubadd_v4sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16330 : {
16331 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16332 : start_sequence ();
16333 : {
16334 : #define FAIL return (end_sequence (), nullptr)
16335 : #define DONE return end_sequence ()
16336 : #line 6770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16337 : {
16338 : emit_insn (gen_fma_fmsubadd_v4sf_maskz_1 (
16339 : operands[0], operands[1], operands[2], operands[3],
16340 : CONST0_RTX (V4SFmode), operands[4]));
16341 : DONE;
16342 : }
16343 : #undef DONE
16344 : #undef FAIL
16345 : }
16346 : static const uint8_t expand_encoding[] = {
16347 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16348 : 0x03, 0x01, 0x04
16349 : };
16350 : return complete_seq (expand_encoding, operands);
16351 : }
16352 :
16353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6920 */
16354 : rtx
16355 : gen_fmai_vmfmadd_v8hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16356 : {
16357 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16358 : static const uint8_t expand_encoding[] = {
16359 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
16360 : 0x6a, 0x81, 0x19, 0x6a, 0x01, 0x01, 0x01, 0x02,
16361 : 0x01, 0x03, 0x01, 0x01, 0x27, 0x01, 0x01, 0x04,
16362 : 0x81, 0x33
16363 : };
16364 : return expand_rtx (expand_encoding, operands);
16365 : }
16366 :
16367 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6931 */
16368 : rtx
16369 : gen_fmai_vmfmsub_v8hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16370 : {
16371 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16372 : static const uint8_t expand_encoding[] = {
16373 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
16374 : 0x6a, 0x81, 0x19, 0x6a, 0x01, 0x01, 0x01, 0x02,
16375 : 0x3d, 0x6a, 0x01, 0x03, 0x01, 0x01, 0x27, 0x01,
16376 : 0x01, 0x04, 0x81, 0x33
16377 : };
16378 : return expand_rtx (expand_encoding, operands);
16379 : }
16380 :
16381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6943 */
16382 : rtx
16383 : gen_fmai_vmfnmadd_v2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16384 : {
16385 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16386 : static const uint8_t expand_encoding[] = {
16387 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
16388 : 0x6c, 0x81, 0x19, 0x6c, 0x3d, 0x6c, 0x01, 0x01,
16389 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x27, 0x01,
16390 : 0x01, 0x04, 0x81, 0x33
16391 : };
16392 : return expand_rtx (expand_encoding, operands);
16393 : }
16394 :
16395 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7078 */
16396 : rtx
16397 : gen_avx512f_vmfmadd_v2df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16398 : {
16399 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16400 : start_sequence ();
16401 : {
16402 : #define FAIL return (end_sequence (), nullptr)
16403 : #define DONE return end_sequence ()
16404 : #line 7085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16405 : {
16406 : emit_insn (gen_avx512f_vmfmadd_v2df_maskz_1 (
16407 : operands[0], operands[1], operands[2], operands[3],
16408 : CONST0_RTX (V2DFmode), operands[4]));
16409 : DONE;
16410 : }
16411 : #undef DONE
16412 : #undef FAIL
16413 : }
16414 : static const uint8_t expand_encoding[] = {
16415 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16416 : 0x03, 0x01, 0x04
16417 : };
16418 : return complete_seq (expand_encoding, operands);
16419 : }
16420 :
16421 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7315 */
16422 : rtx
16423 : gen_fma4i_vmfmadd_v2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16424 : {
16425 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16426 : start_sequence ();
16427 : {
16428 : #define FAIL return (end_sequence (), nullptr)
16429 : #define DONE return end_sequence ()
16430 : #line 7325 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16431 : operands[4] = CONST0_RTX (V2DFmode);
16432 : #undef DONE
16433 : #undef FAIL
16434 : }
16435 : static const uint8_t expand_encoding[] = {
16436 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81,
16437 : 0x19, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
16438 : 0x01, 0x04, 0x27, 0x01
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 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16446 : {
16447 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
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 (
16455 : operands[0], operands[1], operands[2], operands[3],
16456 : CONST0_RTX (V16HFmode), operands[4]));
16457 : DONE;
16458 : }
16459 : #undef DONE
16460 : #undef FAIL
16461 : }
16462 : static const uint8_t expand_encoding[] = {
16463 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16464 : 0x03, 0x01, 0x04
16465 : };
16466 : return complete_seq (expand_encoding, operands);
16467 : }
16468 :
16469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7479 */
16470 : rtx
16471 : gen_avx512bw_fcmaddc_v32hf_mask1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16472 : {
16473 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16474 : start_sequence ();
16475 : {
16476 : #define FAIL return (end_sequence (), nullptr)
16477 : #define DONE return end_sequence ()
16478 : #line 7486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16479 : {
16480 : rtx op0, op1, dest;
16481 : if (!(CONST_INT_P (operands[5])
16482 : && (INTVAL (operands[5])
16483 : == NO_ROUND)))
16484 : emit_insn (gen_avx512bw_fcmaddc_v32hf_mask_round (
16485 : operands[0], operands[1], operands[2], operands[3],
16486 : operands[4], operands[5]));
16487 : else
16488 : {
16489 : emit_insn (gen_avx512bw_fcmaddc_v32hf_mask (operands[0],
16490 : operands[1], operands[2], operands[3], operands[4]));
16491 : }
16492 :
16493 : op0 = lowpart_subreg (V16SFmode,
16494 : force_reg (V32HFmode, operands[0]),
16495 : V32HFmode);
16496 : dest = gen_reg_rtx (V16SFmode);
16497 : if (!MEM_P (operands[1]))
16498 : operands[1] = force_reg (V32HFmode, operands[1]);
16499 : op1 = lowpart_subreg (V16SFmode, operands[1], V32HFmode);
16500 : emit_insn (gen_avx512f_loadv16sf_mask (dest, op0, op1, operands[4]));
16501 : emit_move_insn (operands[0],
16502 : lowpart_subreg (V32HFmode, dest, V16SFmode));
16503 : DONE;
16504 : }
16505 : #undef DONE
16506 : #undef FAIL
16507 : }
16508 : static const uint8_t expand_encoding[] = {
16509 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16510 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16511 : 0x81, 0x33
16512 : };
16513 : return complete_seq (expand_encoding, operands);
16514 : }
16515 :
16516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7525 */
16517 : rtx
16518 : gen_cmlav8hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16519 : {
16520 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16521 : static const uint8_t expand_encoding[] = {
16522 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x03, 0x01, 0x01,
16523 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a
16524 : };
16525 : return expand_rtx (expand_encoding, operands);
16526 : }
16527 :
16528 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7581 */
16529 : extern rtx_insn *gen_split_1581 (rtx_insn *, rtx *);
16530 : rtx_insn *
16531 : gen_split_1581 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16532 : {
16533 : if (dump_file)
16534 : fprintf (dump_file, "Splitting with gen_split_1581 (sse.md:7581)\n");
16535 : start_sequence ();
16536 : static const uint8_t expand_encoding[] = {
16537 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01,
16538 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x5c
16539 : };
16540 : return complete_seq (expand_encoding, operands);
16541 : }
16542 :
16543 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7639 */
16544 : extern rtx_insn *gen_split_1591 (rtx_insn *, rtx *);
16545 : rtx_insn *
16546 : gen_split_1591 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
16547 : {
16548 : if (dump_file)
16549 : fprintf (dump_file, "Splitting with gen_split_1591 (sse.md:7639)\n");
16550 : start_sequence ();
16551 : #define FAIL return (end_sequence (), nullptr)
16552 : #define DONE return end_sequence ()
16553 : #line 7651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16554 : {
16555 : if (!MEM_P (operands[1]))
16556 : operands[1] = force_reg (V8HFmode, operands[1]);
16557 : if (!MEM_P (operands[3]))
16558 : operands[3] = force_reg (V8HFmode, operands[3]);
16559 : operands[1] = lowpart_subreg (V4SFmode, operands[1], V8HFmode);
16560 : operands[3] = lowpart_subreg (V4SFmode, operands[3], V8HFmode);
16561 : rtx dest = gen_reg_rtx (V4SFmode);
16562 : emit_insn (gen_fma_fcmaddc_v4sf_pair (dest, operands[1],
16563 : operands[2],
16564 : operands[3]));
16565 : emit_move_insn (operands[0],
16566 : lowpart_subreg (V8HFmode, dest, V4SFmode));
16567 : DONE;
16568 : }
16569 : #undef DONE
16570 : #undef FAIL
16571 : static const uint8_t expand_encoding[] = {
16572 : 0x01, 0x27, 0x00
16573 : };
16574 : return complete_seq (expand_encoding, operands);
16575 : }
16576 :
16577 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7798 */
16578 : rtx
16579 : gen_avx512fp16_fcmaddcsh_v8hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16580 : {
16581 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16582 : start_sequence ();
16583 : {
16584 : #define FAIL return (end_sequence (), nullptr)
16585 : #define DONE return end_sequence ()
16586 : #line 7805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16587 : {
16588 : rtx dest, op0, op1;
16589 :
16590 : if (!(CONST_INT_P (operands[5])
16591 : && (INTVAL (operands[5])
16592 : == NO_ROUND)))
16593 : emit_insn (gen_avx512fp16_fcmaddcsh_v8hf_mask_round (
16594 : operands[0], operands[1], operands[2], operands[3],
16595 : operands[4], operands[5]));
16596 : else
16597 : emit_insn (gen_avx512fp16_fcmaddcsh_v8hf_mask (operands[0],
16598 : operands[1], operands[2], operands[3], operands[4]));
16599 :
16600 : dest = gen_reg_rtx (V4SFmode);
16601 : op0 = lowpart_subreg (V4SFmode,
16602 : force_reg (V8HFmode, operands[0]),
16603 : V8HFmode);
16604 : if (!MEM_P (operands[3]))
16605 : operands[3] = force_reg (V8HFmode, operands[3]);
16606 : op1 = lowpart_subreg (V4SFmode, operands[3], V8HFmode);
16607 : emit_insn (gen_sse_movss_v4sf (dest, op1, op0));
16608 : emit_move_insn (operands[0], lowpart_subreg (V8HFmode, dest, V4SFmode));
16609 : DONE;
16610 : }
16611 : #undef DONE
16612 : #undef FAIL
16613 : }
16614 : static const uint8_t expand_encoding[] = {
16615 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16616 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16617 : 0x81, 0x33
16618 : };
16619 : return complete_seq (expand_encoding, operands);
16620 : }
16621 :
16622 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7989 */
16623 : rtx
16624 : gen_lrintv8hfv8hi2 (const rtx operand0, const rtx operand1)
16625 : {
16626 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16627 : static const uint8_t expand_encoding[] = {
16628 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
16629 : 0x2f
16630 : };
16631 : return expand_rtx (expand_encoding, operands);
16632 : }
16633 :
16634 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8017 */
16635 : rtx
16636 : gen_floatv32hiv32hf2 (const rtx operand0, const rtx operand1)
16637 : {
16638 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16639 : static const uint8_t expand_encoding[] = {
16640 : 0x1f, 0x01, 0x00, 0x73, 0x73, 0x01, 0x01
16641 : };
16642 : return expand_rtx (expand_encoding, operands);
16643 : }
16644 :
16645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8017 */
16646 : rtx
16647 : gen_floatunsv8div8hf2 (const rtx operand0, const rtx operand1)
16648 : {
16649 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16650 : static const uint8_t expand_encoding[] = {
16651 : 0x1f, 0x01, 0x00, 0x75, 0x6a, 0x01, 0x01
16652 : };
16653 : return expand_rtx (expand_encoding, operands);
16654 : }
16655 :
16656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8065 */
16657 : rtx
16658 : gen_avx512fp16_vcvtudq2ph_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16659 : {
16660 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16661 : start_sequence ();
16662 : {
16663 : #define FAIL return (end_sequence (), nullptr)
16664 : #define DONE return end_sequence ()
16665 : #line 8076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16666 : operands[4] = CONST0_RTX (V4HFmode);
16667 : #undef DONE
16668 : #undef FAIL
16669 : }
16670 : static const uint8_t expand_encoding[] = {
16671 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x81,
16672 : 0x09, 0x66, 0x75, 0x66, 0x01, 0x01, 0x81, 0x0a,
16673 : 0x66, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
16674 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
16675 : 0x01, 0x04
16676 : };
16677 : return complete_seq (expand_encoding, operands);
16678 : }
16679 :
16680 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8225 */
16681 : rtx
16682 : gen_fixuns_truncv8hfv8hi2 (const rtx operand0, const rtx operand1)
16683 : {
16684 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16685 : static const uint8_t expand_encoding[] = {
16686 : 0x1f, 0x01, 0x00, 0x76, 0x50, 0x01, 0x01
16687 : };
16688 : return expand_rtx (expand_encoding, operands);
16689 : }
16690 :
16691 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8225 */
16692 : rtx
16693 : gen_fixuns_truncv32hfv32hi2 (const rtx operand0, const rtx operand1)
16694 : {
16695 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16696 : static const uint8_t expand_encoding[] = {
16697 : 0x1f, 0x01, 0x00, 0x76, 0x5a, 0x01, 0x01
16698 : };
16699 : return expand_rtx (expand_encoding, operands);
16700 : }
16701 :
16702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8252 */
16703 : rtx
16704 : gen_fixuns_truncv4hfv4di2 (const rtx operand0, const rtx operand1)
16705 : {
16706 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16707 : start_sequence ();
16708 : {
16709 : #define FAIL return (end_sequence (), nullptr)
16710 : #define DONE return end_sequence ()
16711 : #line 8257 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16712 : {
16713 : if (!MEM_P (operands[1]))
16714 : {
16715 : operands[1] = lowpart_subreg (V8HFmode,
16716 : force_reg (V4HFmode, operands[1]),
16717 : V4HFmode);
16718 : emit_insn (gen_avx512fp16_fixuns_truncv4di2 (operands[0],
16719 : operands[1]));
16720 : DONE;
16721 : }
16722 : }
16723 : #undef DONE
16724 : #undef FAIL
16725 : }
16726 : static const uint8_t expand_encoding[] = {
16727 : 0x01, 0x1f, 0x01, 0x00, 0x76, 0x57, 0x01, 0x01
16728 : };
16729 : return complete_seq (expand_encoding, operands);
16730 : }
16731 :
16732 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8499 */
16733 : rtx
16734 : gen_truncv4sfv4hf2 (const rtx operand0, const rtx operand1)
16735 : {
16736 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16737 : start_sequence ();
16738 : {
16739 : #define FAIL return (end_sequence (), nullptr)
16740 : #define DONE return end_sequence ()
16741 : #line 8503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16742 : {
16743 : rtx dest = gen_reg_rtx (V8HFmode);
16744 :
16745 : emit_insn (gen_avx512fp16_truncv4sfv4hf2 (dest, operands[1]));
16746 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, dest, V8HFmode));
16747 : DONE;
16748 : }
16749 : #undef DONE
16750 : #undef FAIL
16751 : }
16752 : static const uint8_t expand_encoding[] = {
16753 : 0x01, 0x1f, 0x01, 0x00, 0x72, 0x66, 0x01, 0x01
16754 : };
16755 : return complete_seq (expand_encoding, operands);
16756 : }
16757 :
16758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9025 */
16759 : rtx
16760 : gen_floatunsv16siv16sf2 (const rtx operand0, const rtx operand1)
16761 : {
16762 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16763 : start_sequence ();
16764 : {
16765 : #define FAIL return (end_sequence (), nullptr)
16766 : #define DONE return end_sequence ()
16767 : #line 9030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16768 : {
16769 : if (V16SFmode != V16SFmode && !TARGET_AVX512VL)
16770 : {
16771 : ix86_expand_vector_convert_uns_vsivsf (operands[0], operands[1]);
16772 : DONE;
16773 : }
16774 : }
16775 : #undef DONE
16776 : #undef FAIL
16777 : }
16778 : static const uint8_t expand_encoding[] = {
16779 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x74, 0x01, 0x01
16780 : };
16781 : return complete_seq (expand_encoding, operands);
16782 : }
16783 :
16784 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9314 */
16785 : rtx
16786 : gen_fix_truncv2dfv2si2 (const rtx operand0, const rtx operand1)
16787 : {
16788 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16789 : static const uint8_t expand_encoding[] = {
16790 : 0x1f, 0x01, 0x00, 0x74, 0x4a, 0x01, 0x01
16791 : };
16792 : return expand_rtx (expand_encoding, operands);
16793 : }
16794 :
16795 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9606 */
16796 : rtx
16797 : gen_vec_packs_float_v4di (const rtx operand0, const rtx operand1, const rtx operand2)
16798 : {
16799 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
16800 : start_sequence ();
16801 : {
16802 : #define FAIL return (end_sequence (), nullptr)
16803 : #define DONE return end_sequence ()
16804 : #line 9612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16805 : {
16806 : rtx r1 = gen_reg_rtx (V4SFmode);
16807 : rtx r2 = gen_reg_rtx (V4SFmode);
16808 : rtx (*gen) (rtx, rtx);
16809 :
16810 : if (V4DImode == V2DImode)
16811 : gen = gen_avx512dq_floatv2div2sf2;
16812 : else
16813 : gen = gen_floatv4div4sf2;
16814 : emit_insn (gen (r1, operands[1]));
16815 : emit_insn (gen (r2, operands[2]));
16816 : if (V4DImode == V2DImode)
16817 : emit_insn (gen_sse_movlhps (operands[0], r1, r2));
16818 : else
16819 : emit_insn (gen_avx_vec_concatv8sf (operands[0],
16820 : r1, r2));
16821 : DONE;
16822 : }
16823 : #undef DONE
16824 : #undef FAIL
16825 : }
16826 : static const uint8_t expand_encoding[] = {
16827 : 0x03, 0x01, 0x00, 0x73, 0x6f, 0x01, 0x01, 0x01,
16828 : 0x02
16829 : };
16830 : return complete_seq (expand_encoding, operands);
16831 : }
16832 :
16833 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9656 */
16834 : rtx
16835 : gen_floatv2div2sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16836 : {
16837 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16838 : start_sequence ();
16839 : {
16840 : #define FAIL return (end_sequence (), nullptr)
16841 : #define DONE return end_sequence ()
16842 : #line 9667 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16843 : operands[4] = CONST0_RTX (V2SFmode);
16844 : #undef DONE
16845 : #undef FAIL
16846 : }
16847 : static const uint8_t expand_encoding[] = {
16848 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6b, 0x81,
16849 : 0x09, 0x67, 0x73, 0x67, 0x01, 0x01, 0x81, 0x0a,
16850 : 0x67, 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00,
16851 : 0x27, 0x01, 0x01, 0x03, 0x01, 0x04
16852 : };
16853 : return complete_seq (expand_encoding, operands);
16854 : }
16855 :
16856 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10160 */
16857 : rtx
16858 : gen_vec_unpack_ufix_trunc_lo_v8sf (const rtx operand0, const rtx operand1)
16859 : {
16860 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16861 : start_sequence ();
16862 : {
16863 : #define FAIL return (end_sequence (), nullptr)
16864 : #define DONE return end_sequence ()
16865 : #line 10165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16866 : {
16867 : rtx tem = operands[1];
16868 : rtx (*gen) (rtx, rtx);
16869 :
16870 : if (V8SFmode != V4SFmode)
16871 : {
16872 : tem = gen_reg_rtx (V4SFmode);
16873 : emit_insn (gen_vec_extract_lo_v8sf (tem,
16874 : operands[1]));
16875 : gen = gen_fixuns_truncv4sfv4di2;
16876 : }
16877 : else
16878 : gen = gen_avx512dq_fixuns_truncv2sfv2di2;
16879 :
16880 : emit_insn (gen (operands[0], tem));
16881 : DONE;
16882 : }
16883 : #undef DONE
16884 : #undef FAIL
16885 : }
16886 : static const uint8_t expand_encoding[] = {
16887 : 0x02, 0x01, 0x00, 0x76, 0x57, 0x01, 0x01
16888 : };
16889 : return complete_seq (expand_encoding, operands);
16890 : }
16891 :
16892 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10210 */
16893 : rtx
16894 : gen_vec_unpack_ufix_trunc_lo_v32hf (const rtx operand0, const rtx operand1)
16895 : {
16896 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16897 : start_sequence ();
16898 : {
16899 : #define FAIL return (end_sequence (), nullptr)
16900 : #define DONE return end_sequence ()
16901 : #line 10215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16902 : {
16903 : rtx tem = operands[1];
16904 : rtx (*gen) (rtx, rtx);
16905 : if (V32HFmode != V8HFmode)
16906 : {
16907 : tem = gen_reg_rtx (V16HFmode);
16908 : emit_insn (gen_vec_extract_lo_v32hf (tem,
16909 : operands[1]));
16910 : gen = gen_fixuns_truncv16hfv16si2;
16911 : }
16912 : else
16913 : gen = gen_avx512fp16_fixuns_truncv16si2;
16914 :
16915 : emit_insn (gen (operands[0], tem));
16916 : DONE;
16917 : }
16918 : #undef DONE
16919 : #undef FAIL
16920 : }
16921 : static const uint8_t expand_encoding[] = {
16922 : 0x02, 0x01, 0x00, 0x76, 0x5b, 0x01, 0x01
16923 : };
16924 : return complete_seq (expand_encoding, operands);
16925 : }
16926 :
16927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10232 */
16928 : rtx
16929 : gen_vec_unpack_ufix_trunc_hi_v8hf (const rtx operand0, const rtx operand1)
16930 : {
16931 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16932 : start_sequence ();
16933 : {
16934 : #define FAIL return (end_sequence (), nullptr)
16935 : #define DONE return end_sequence ()
16936 : #line 10237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16937 : {
16938 : rtx tem = operands[1];
16939 : rtx (*gen) (rtx, rtx);
16940 : if (V8HFmode != V8HFmode)
16941 : {
16942 : tem = gen_reg_rtx (V4HFmode);
16943 : emit_insn (gen_vec_extract_hi_v16hf (tem,
16944 : operands[1]));
16945 : gen = gen_fixuns_truncv4hfv4si2;
16946 : }
16947 : else
16948 : {
16949 : tem = gen_reg_rtx (V8HFmode);
16950 : rtvec tmp = rtvec_alloc (8);
16951 : for (int i = 0; i != 8; i++)
16952 : RTVEC_ELT (tmp, i) = GEN_INT ((i + 4) % 8);
16953 :
16954 : rtx selector = gen_rtx_PARALLEL (VOIDmode, tmp);
16955 : emit_move_insn (tem,
16956 : gen_rtx_VEC_SELECT (V8HFmode, operands[1], selector));
16957 : gen = gen_avx512fp16_fixuns_truncv4si2;
16958 : }
16959 :
16960 : emit_insn (gen (operands[0], tem));
16961 : DONE;
16962 : }
16963 : #undef DONE
16964 : #undef FAIL
16965 : }
16966 : static const uint8_t expand_encoding[] = {
16967 : 0x02, 0x01, 0x00, 0x76, 0x51, 0x01, 0x01
16968 : };
16969 : return complete_seq (expand_encoding, operands);
16970 : }
16971 :
16972 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10663 */
16973 : rtx
16974 : gen_avx512f_cvtmask2qv8di (const rtx operand0, const rtx operand1)
16975 : {
16976 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1 };
16977 : start_sequence ();
16978 : {
16979 : #define FAIL return (end_sequence (), nullptr)
16980 : #define DONE return end_sequence ()
16981 : #line 10670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16982 : {
16983 : operands[2] = CONSTM1_RTX (V8DImode);
16984 : operands[3] = CONST0_RTX (V8DImode);
16985 : }
16986 : #undef DONE
16987 : #undef FAIL
16988 : }
16989 : static const uint8_t expand_encoding[] = {
16990 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x01,
16991 : 0x02, 0x01, 0x03, 0x01, 0x01
16992 : };
16993 : return complete_seq (expand_encoding, operands);
16994 : }
16995 :
16996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10701 */
16997 : extern rtx_insn *gen_split_1603 (rtx_insn *, rtx *);
16998 : rtx_insn *
16999 : gen_split_1603 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17000 : {
17001 : if (dump_file)
17002 : fprintf (dump_file, "Splitting with gen_split_1603 (sse.md:10701)\n");
17003 : start_sequence ();
17004 : #define FAIL return (end_sequence (), nullptr)
17005 : #define DONE return end_sequence ()
17006 : #line 10717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17007 : operands[4] = gen_reg_rtx (SImode);
17008 : #undef DONE
17009 : #undef FAIL
17010 : static const uint8_t expand_encoding[] = {
17011 : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x11, 0x01, 0x01,
17012 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x01, 0x03,
17013 : 0x01, 0x02, 0x01, 0x04
17014 : };
17015 : return complete_seq (expand_encoding, operands);
17016 : }
17017 :
17018 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10701 */
17019 : extern rtx_insn *gen_split_1613 (rtx_insn *, rtx *);
17020 : rtx_insn *
17021 : gen_split_1613 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17022 : {
17023 : if (dump_file)
17024 : fprintf (dump_file, "Splitting with gen_split_1613 (sse.md:10701)\n");
17025 : start_sequence ();
17026 : #define FAIL return (end_sequence (), nullptr)
17027 : #define DONE return end_sequence ()
17028 : #line 10717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17029 : operands[4] = gen_reg_rtx (QImode);
17030 : #undef DONE
17031 : #undef FAIL
17032 : static const uint8_t expand_encoding[] = {
17033 : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x0f, 0x01, 0x01,
17034 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x01, 0x03,
17035 : 0x01, 0x02, 0x01, 0x04
17036 : };
17037 : return complete_seq (expand_encoding, operands);
17038 : }
17039 :
17040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10865 */
17041 : rtx
17042 : gen_vec_unpacks_float_lo_v32hi (const rtx operand0, const rtx operand1)
17043 : {
17044 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17045 : start_sequence ();
17046 : {
17047 : #define FAIL return (end_sequence (), nullptr)
17048 : #define DONE return end_sequence ()
17049 : #line 10869 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17050 : {
17051 : rtx tmp = gen_reg_rtx (V16SImode);
17052 :
17053 : emit_insn (gen_vec_unpacks_lo_v32hi (tmp, operands[1]));
17054 : emit_insn (gen_rtx_SET (operands[0],
17055 : gen_rtx_FLOAT (V16SFmode, tmp)));
17056 : DONE;
17057 : }
17058 : #undef DONE
17059 : #undef FAIL
17060 : }
17061 : static const uint8_t expand_encoding[] = {
17062 : 0x02, 0x01, 0x00, 0x01, 0x01
17063 : };
17064 : return complete_seq (expand_encoding, operands);
17065 : }
17066 :
17067 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10918 */
17068 : rtx
17069 : gen_vec_unpacks_float_lo_v4si (const rtx operand0, const rtx operand1)
17070 : {
17071 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17072 : static const uint8_t expand_encoding[] = {
17073 : 0x1f, 0x01, 0x00, 0x73, 0x6c, 0x81, 0x0a, 0x4a,
17074 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
17075 : 0x01
17076 : };
17077 : return expand_rtx (expand_encoding, operands);
17078 : }
17079 :
17080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10961 */
17081 : rtx
17082 : gen_vec_unpacks_float_lo_v16si (const rtx operand0, const rtx operand1)
17083 : {
17084 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17085 : static const uint8_t expand_encoding[] = {
17086 : 0x1f, 0x01, 0x00, 0x73, 0x75, 0x81, 0x0a, 0x56,
17087 : 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00, 0x27,
17088 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27,
17089 : 0x05, 0x27, 0x06, 0x27, 0x07
17090 : };
17091 : return expand_rtx (expand_encoding, operands);
17092 : }
17093 :
17094 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11135 */
17095 : rtx
17096 : gen_vec_pack_trunc_v4df (const rtx operand0, const rtx operand1, const rtx operand2)
17097 : {
17098 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17099 : start_sequence ();
17100 : {
17101 : #define FAIL return (end_sequence (), nullptr)
17102 : #define DONE return end_sequence ()
17103 : #line 11147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17104 : {
17105 : operands[3] = gen_reg_rtx (V4SFmode);
17106 : operands[4] = gen_reg_rtx (V4SFmode);
17107 : }
17108 : #undef DONE
17109 : #undef FAIL
17110 : }
17111 : static const uint8_t expand_encoding[] = {
17112 : 0x03, 0x1f, 0x01, 0x03, 0x72, 0x6b, 0x01, 0x01,
17113 : 0x1f, 0x01, 0x04, 0x72, 0x6b, 0x01, 0x02, 0x1f,
17114 : 0x01, 0x00, 0x81, 0x0b, 0x6f, 0x01, 0x03, 0x01,
17115 : 0x04
17116 : };
17117 : return complete_seq (expand_encoding, operands);
17118 : }
17119 :
17120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11177 */
17121 : rtx
17122 : gen_vec_pack_trunc_v2df (const rtx operand0, const rtx operand1, const rtx operand2)
17123 : {
17124 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17125 : start_sequence ();
17126 : {
17127 : #define FAIL return (end_sequence (), nullptr)
17128 : #define DONE return end_sequence ()
17129 : #line 11182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17130 : {
17131 : rtx tmp0, tmp1;
17132 :
17133 : if (TARGET_AVX && !TARGET_PREFER_AVX128 && optimize_insn_for_speed_p ())
17134 : {
17135 : tmp0 = gen_reg_rtx (V4DFmode);
17136 : tmp1 = force_reg (V2DFmode, operands[1]);
17137 :
17138 : emit_insn (gen_avx_vec_concatv4df (tmp0, tmp1, operands[2]));
17139 : emit_insn (gen_avx_cvtpd2ps256 (operands[0], tmp0));
17140 : }
17141 : else
17142 : {
17143 : tmp0 = gen_reg_rtx (V4SFmode);
17144 : tmp1 = gen_reg_rtx (V4SFmode);
17145 :
17146 : emit_insn (gen_sse2_cvtpd2ps (tmp0, operands[1]));
17147 : emit_insn (gen_sse2_cvtpd2ps (tmp1, operands[2]));
17148 : emit_insn (gen_sse_movlhps (operands[0], tmp0, tmp1));
17149 : }
17150 : DONE;
17151 : }
17152 : #undef DONE
17153 : #undef FAIL
17154 : }
17155 : static const uint8_t expand_encoding[] = {
17156 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17157 : };
17158 : return complete_seq (expand_encoding, operands);
17159 : }
17160 :
17161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11540 */
17162 : rtx
17163 : gen_vec_interleave_highv8sf (const rtx operand0, const rtx operand1, const rtx operand2)
17164 : {
17165 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17166 : start_sequence ();
17167 : {
17168 : #define FAIL return (end_sequence (), nullptr)
17169 : #define DONE return end_sequence ()
17170 : #line 11569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17171 : {
17172 : operands[3] = gen_reg_rtx (V8SFmode);
17173 : operands[4] = gen_reg_rtx (V8SFmode);
17174 : }
17175 : #undef DONE
17176 : #undef FAIL
17177 : }
17178 : static const uint8_t expand_encoding[] = {
17179 : 0x03, 0x1f, 0x01, 0x03, 0x81, 0x0a, 0x6f, 0x81,
17180 : 0x0b, 0x74, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
17181 : 0x08, 0x27, 0x00, 0x27, 0x08, 0x27, 0x01, 0x27,
17182 : 0x09, 0x27, 0x04, 0x27, 0x0c, 0x27, 0x05, 0x27,
17183 : 0x0d, 0x1f, 0x01, 0x04, 0x81, 0x0a, 0x6f, 0x81,
17184 : 0x0b, 0x74, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
17185 : 0x08, 0x27, 0x02, 0x27, 0x0a, 0x27, 0x03, 0x27,
17186 : 0x0b, 0x27, 0x06, 0x27, 0x0e, 0x27, 0x07, 0x27,
17187 : 0x0f, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6f, 0x81,
17188 : 0x0b, 0x74, 0x01, 0x03, 0x01, 0x04, 0x17, 0x00,
17189 : 0x08, 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27,
17190 : 0x07, 0x27, 0x0c, 0x27, 0x0d, 0x27, 0x0e, 0x27,
17191 : 0x0f
17192 : };
17193 : return complete_seq (expand_encoding, operands);
17194 : }
17195 :
17196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12404 */
17197 : extern rtx_insn *gen_split_1616 (rtx_insn *, rtx *);
17198 : rtx_insn *
17199 : gen_split_1616 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17200 : {
17201 : if (dump_file)
17202 : fprintf (dump_file, "Splitting with gen_split_1616 (sse.md:12404)\n");
17203 : start_sequence ();
17204 : #define FAIL return (end_sequence (), nullptr)
17205 : #define DONE return end_sequence ()
17206 : #line 12421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17207 : {
17208 : if (register_operand (operands[2], V8BFmode))
17209 : operands[2] = force_reg (V8BFmode, operands[2]);
17210 : operands[2] = gen_lowpart (BFmode, operands[2]);
17211 : }
17212 : #undef DONE
17213 : #undef FAIL
17214 : static const uint8_t expand_encoding[] = {
17215 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81,
17216 : 0x0c, 0x69, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
17217 : };
17218 : return complete_seq (expand_encoding, operands);
17219 : }
17220 :
17221 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12559 */
17222 : extern rtx_insn *gen_split_1626 (rtx_insn *, rtx *);
17223 : rtx_insn *
17224 : gen_split_1626 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17225 : {
17226 : if (dump_file)
17227 : fprintf (dump_file, "Splitting with gen_split_1626 (sse.md:12559)\n");
17228 : start_sequence ();
17229 : #define FAIL return (end_sequence (), nullptr)
17230 : #define DONE return end_sequence ()
17231 : #line 12571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17232 : {
17233 : rtx dest = gen_reg_rtx (V4SImode);
17234 : emit_insn (gen_vec_setv4si_0 (dest,
17235 : CONST0_RTX (V4SImode),
17236 : operands[1]));
17237 : emit_move_insn (operands[0],
17238 : lowpart_subreg (V2DImode, dest, V4SImode));
17239 : DONE;
17240 : }
17241 : #undef DONE
17242 : #undef FAIL
17243 : static const uint8_t expand_encoding[] = {
17244 : 0x01, 0x27, 0x00
17245 : };
17246 : return complete_seq (expand_encoding, operands);
17247 : }
17248 :
17249 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12666 */
17250 : rtx
17251 : gen_vec_setv2df (const rtx operand0, const rtx operand1, const rtx operand2)
17252 : {
17253 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17254 : start_sequence ();
17255 : {
17256 : #define FAIL _Pragma ("GCC error \"vec_setv2df cannot FAIL\"") (void)0
17257 : #define DONE return end_sequence ()
17258 : #line 12671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17259 : {
17260 : if (CONST_INT_P (operands[2]))
17261 : ix86_expand_vector_set (false, operands[0], operands[1],
17262 : INTVAL (operands[2]));
17263 : else
17264 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17265 : DONE;
17266 : }
17267 : #undef DONE
17268 : #undef FAIL
17269 : }
17270 : static const uint8_t expand_encoding[] = {
17271 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17272 : };
17273 : return complete_seq (expand_encoding, operands);
17274 : }
17275 :
17276 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12680 */
17277 : rtx
17278 : gen_vec_setv32hi (const rtx operand0, const rtx operand1, const rtx operand2)
17279 : {
17280 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17281 : start_sequence ();
17282 : {
17283 : #define FAIL _Pragma ("GCC error \"vec_setv32hi cannot FAIL\"") (void)0
17284 : #define DONE return end_sequence ()
17285 : #line 12685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17286 : {
17287 : if (CONST_INT_P (operands[2]))
17288 : ix86_expand_vector_set (false, operands[0], operands[1],
17289 : INTVAL (operands[2]));
17290 : else
17291 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17292 : DONE;
17293 : }
17294 : #undef DONE
17295 : #undef FAIL
17296 : }
17297 : static const uint8_t expand_encoding[] = {
17298 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17299 : };
17300 : return complete_seq (expand_encoding, operands);
17301 : }
17302 :
17303 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12772 */
17304 : rtx
17305 : gen_avx512dq_vextractf64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
17306 : {
17307 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
17308 : start_sequence ();
17309 : {
17310 : #define FAIL return (end_sequence (), nullptr)
17311 : #define DONE return end_sequence ()
17312 : #line 12779 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17313 : {
17314 : int mask;
17315 : mask = INTVAL (operands[2]);
17316 : rtx dest = operands[0];
17317 :
17318 : if (MEM_P (operands[0]) && !rtx_equal_p (operands[0], operands[3]))
17319 : dest = gen_reg_rtx (V2DFmode);
17320 :
17321 : if (V8DFmode == V16SImode || V8DFmode == V16SFmode)
17322 : emit_insn (gen_avx512f_vextractf32x4_1_mask (dest,
17323 : operands[1], GEN_INT (mask * 4), GEN_INT (mask * 4 + 1),
17324 : GEN_INT (mask * 4 + 2), GEN_INT (mask * 4 + 3), operands[3],
17325 : operands[4]));
17326 : else
17327 : emit_insn (gen_avx512dq_vextractf64x2_1_mask (dest,
17328 : operands[1], GEN_INT (mask * 2), GEN_INT (mask * 2 + 1), operands[3],
17329 : operands[4]));
17330 : if (dest != operands[0])
17331 : emit_move_insn (operands[0], dest);
17332 : DONE;
17333 : }
17334 : #undef DONE
17335 : #undef FAIL
17336 : }
17337 : static const uint8_t expand_encoding[] = {
17338 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17339 : 0x03, 0x01, 0x04
17340 : };
17341 : return complete_seq (expand_encoding, operands);
17342 : }
17343 :
17344 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13093 */
17345 : rtx
17346 : gen_avx512vl_vextractf128v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
17347 : {
17348 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
17349 : start_sequence ();
17350 : {
17351 : #define FAIL return (end_sequence (), nullptr)
17352 : #define DONE return end_sequence ()
17353 : #line 13100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17354 : {
17355 : rtx (*insn)(rtx, rtx, rtx, rtx);
17356 : rtx dest = operands[0];
17357 :
17358 : if (MEM_P (dest)
17359 : && (GET_MODE_SIZE (GET_MODE_INNER (V8SImode)) == 4
17360 : /* For V8S[IF]mode there are maskm insns with =m and 0
17361 : constraints. */
17362 : ? !rtx_equal_p (dest, operands[3])
17363 : /* For V4D[IF]mode, hi insns don't allow memory, and
17364 : lo insns have =m and 0C constraints. */
17365 : : (operands[2] != const0_rtx
17366 : || (!rtx_equal_p (dest, operands[3])
17367 : && !CONST_VECTOR_P (operands[3])))))
17368 : dest = gen_reg_rtx (V4SImode);
17369 : switch (INTVAL (operands[2]))
17370 : {
17371 : case 0:
17372 : insn = gen_vec_extract_lo_v8si_mask;
17373 : break;
17374 : case 1:
17375 : insn = gen_vec_extract_hi_v8si_mask;
17376 : break;
17377 : default:
17378 : gcc_unreachable ();
17379 : }
17380 :
17381 : emit_insn (insn (dest, operands[1], operands[3], operands[4]));
17382 : if (dest != operands[0])
17383 : emit_move_insn (operands[0], dest);
17384 : DONE;
17385 : }
17386 : #undef DONE
17387 : #undef FAIL
17388 : }
17389 : static const uint8_t expand_encoding[] = {
17390 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17391 : 0x03, 0x01, 0x04
17392 : };
17393 : return complete_seq (expand_encoding, operands);
17394 : }
17395 :
17396 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13206 */
17397 : extern rtx_insn *gen_split_1640 (rtx_insn *, rtx *);
17398 : rtx_insn *
17399 : gen_split_1640 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17400 : {
17401 : if (dump_file)
17402 : fprintf (dump_file, "Splitting with gen_split_1640 (sse.md:13206)\n");
17403 : start_sequence ();
17404 : #define FAIL return (end_sequence (), nullptr)
17405 : #define DONE return end_sequence ()
17406 : #line 13220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17407 : {
17408 : if (!TARGET_AVX512VL
17409 : && REG_P (operands[0])
17410 : && EXT_REX_SSE_REG_P (operands[1]))
17411 : operands[0]
17412 : = lowpart_subreg (V16SImode, operands[0], V8SImode);
17413 : else
17414 : operands[1] = gen_lowpart (V8SImode, operands[1]);
17415 : }
17416 : #undef DONE
17417 : #undef FAIL
17418 : static const uint8_t expand_encoding[] = {
17419 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17420 : };
17421 : return complete_seq (expand_encoding, operands);
17422 : }
17423 :
17424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13556 */
17425 : extern rtx_insn *gen_split_1652 (rtx_insn *, rtx *);
17426 : rtx_insn *
17427 : gen_split_1652 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17428 : {
17429 : if (dump_file)
17430 : fprintf (dump_file, "Splitting with gen_split_1652 (sse.md:13556)\n");
17431 : start_sequence ();
17432 : #define FAIL return (end_sequence (), nullptr)
17433 : #define DONE return end_sequence ()
17434 : #line 13572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17435 : operands[1] = gen_lowpart (V16QImode, operands[1]);
17436 : #undef DONE
17437 : #undef FAIL
17438 : static const uint8_t expand_encoding[] = {
17439 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17440 : };
17441 : return complete_seq (expand_encoding, operands);
17442 : }
17443 :
17444 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17445 : rtx
17446 : gen_vec_extractv32qiqi (const rtx operand0, const rtx operand1, const rtx operand2)
17447 : {
17448 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17449 : start_sequence ();
17450 : {
17451 : #define FAIL _Pragma ("GCC error \"vec_extractv32qiqi cannot FAIL\"") (void)0
17452 : #define DONE return end_sequence ()
17453 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17454 : {
17455 : ix86_expand_vector_extract (false, operands[0], operands[1],
17456 : INTVAL (operands[2]));
17457 : DONE;
17458 : }
17459 : #undef DONE
17460 : #undef FAIL
17461 : }
17462 : static const uint8_t expand_encoding[] = {
17463 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
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_extractv2didi (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_extractv2didi 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_extractv8dfdf (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_extractv8dfdf 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:13669 */
17517 : rtx
17518 : gen_vec_extractv4div2di (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_extractv4div2di cannot FAIL\"") (void)0
17524 : #define DONE return end_sequence ()
17525 : #line 13674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17526 : {
17527 : if (INTVAL (operands[2]))
17528 : emit_insn (gen_vec_extract_hi_v4di (operands[0], operands[1]));
17529 : else
17530 : emit_insn (gen_vec_extract_lo_v4di (operands[0], operands[1]));
17531 : DONE;
17532 : }
17533 : #undef DONE
17534 : #undef FAIL
17535 : }
17536 : static const uint8_t expand_encoding[] = {
17537 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17538 : };
17539 : return complete_seq (expand_encoding, operands);
17540 : }
17541 :
17542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13669 */
17543 : rtx
17544 : gen_vec_extractv8dfv4df (const rtx operand0, const rtx operand1, const rtx operand2)
17545 : {
17546 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17547 : start_sequence ();
17548 : {
17549 : #define FAIL _Pragma ("GCC error \"vec_extractv8dfv4df cannot FAIL\"") (void)0
17550 : #define DONE return end_sequence ()
17551 : #line 13674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17552 : {
17553 : if (INTVAL (operands[2]))
17554 : emit_insn (gen_vec_extract_hi_v8df (operands[0], operands[1]));
17555 : else
17556 : emit_insn (gen_vec_extract_lo_v8df (operands[0], operands[1]));
17557 : DONE;
17558 : }
17559 : #undef DONE
17560 : #undef FAIL
17561 : }
17562 : static const uint8_t expand_encoding[] = {
17563 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17564 : };
17565 : return complete_seq (expand_encoding, operands);
17566 : }
17567 :
17568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14002 */
17569 : rtx
17570 : gen_avx512f_vternlogv8di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
17571 : {
17572 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
17573 : start_sequence ();
17574 : {
17575 : #define FAIL return (end_sequence (), nullptr)
17576 : #define DONE return end_sequence ()
17577 : #line 14010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17578 : {
17579 : emit_insn (gen_avx512f_vternlogv8di_maskz_1 (
17580 : operands[0], operands[1], operands[2], operands[3],
17581 : operands[4], CONST0_RTX (V8DImode), operands[5]));
17582 : DONE;
17583 : }
17584 : #undef DONE
17585 : #undef FAIL
17586 : }
17587 : static const uint8_t expand_encoding[] = {
17588 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17589 : 0x03, 0x01, 0x04, 0x01, 0x05
17590 : };
17591 : return complete_seq (expand_encoding, operands);
17592 : }
17593 :
17594 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17595 : extern rtx_insn *gen_split_1669 (rtx_insn *, rtx *);
17596 : rtx_insn *
17597 : gen_split_1669 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17598 : {
17599 : if (dump_file)
17600 : fprintf (dump_file, "Splitting with gen_split_1669 (sse.md:14065)\n");
17601 : start_sequence ();
17602 : static const uint8_t expand_encoding[] = {
17603 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17604 : 0x00, 0x1a, 0x51, 0x04, 0x01, 0x00, 0x01, 0x00,
17605 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17606 : };
17607 : return complete_seq (expand_encoding, operands);
17608 : }
17609 :
17610 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17611 : extern rtx_insn *gen_split_1679 (rtx_insn *, rtx *);
17612 : rtx_insn *
17613 : gen_split_1679 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17614 : {
17615 : if (dump_file)
17616 : fprintf (dump_file, "Splitting with gen_split_1679 (sse.md:14065)\n");
17617 : start_sequence ();
17618 : static const uint8_t expand_encoding[] = {
17619 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17620 : 0x00, 0x1a, 0x74, 0x04, 0x01, 0x00, 0x01, 0x00,
17621 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17622 : };
17623 : return complete_seq (expand_encoding, operands);
17624 : }
17625 :
17626 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17627 : extern rtx_insn *gen_split_1689 (rtx_insn *, rtx *);
17628 : rtx_insn *
17629 : gen_split_1689 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17630 : {
17631 : if (dump_file)
17632 : fprintf (dump_file, "Splitting with gen_split_1689 (sse.md:14086)\n");
17633 : start_sequence ();
17634 : #define FAIL return (end_sequence (), nullptr)
17635 : #define DONE return end_sequence ()
17636 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17637 : substitute_vpternlog_operands (operands);
17638 : #undef DONE
17639 : #undef FAIL
17640 : static const uint8_t expand_encoding[] = {
17641 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
17642 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17643 : 0x25
17644 : };
17645 : return complete_seq (expand_encoding, operands);
17646 : }
17647 :
17648 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17649 : extern rtx_insn *gen_split_1699 (rtx_insn *, rtx *);
17650 : rtx_insn *
17651 : gen_split_1699 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17652 : {
17653 : if (dump_file)
17654 : fprintf (dump_file, "Splitting with gen_split_1699 (sse.md:14086)\n");
17655 : start_sequence ();
17656 : #define FAIL return (end_sequence (), nullptr)
17657 : #define DONE return end_sequence ()
17658 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17659 : substitute_vpternlog_operands (operands);
17660 : #undef DONE
17661 : #undef FAIL
17662 : static const uint8_t expand_encoding[] = {
17663 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
17664 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17665 : 0x25
17666 : };
17667 : return complete_seq (expand_encoding, operands);
17668 : }
17669 :
17670 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17671 : extern rtx_insn *gen_split_1709 (rtx_insn *, rtx *);
17672 : rtx_insn *
17673 : gen_split_1709 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17674 : {
17675 : if (dump_file)
17676 : fprintf (dump_file, "Splitting with gen_split_1709 (sse.md:14118)\n");
17677 : start_sequence ();
17678 : #define FAIL return (end_sequence (), nullptr)
17679 : #define DONE return end_sequence ()
17680 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17681 : {
17682 : rtx args[3];
17683 : args[0] = NULL_RTX;
17684 : args[1] = NULL_RTX;
17685 : args[2] = NULL_RTX;
17686 : int idx = ix86_ternlog_idx (operands[1], args);
17687 : ix86_expand_ternlog (V64QImode, args[0], args[1], args[2], idx,
17688 : operands[0]);
17689 : DONE;
17690 : }
17691 : #undef DONE
17692 : #undef FAIL
17693 : static const uint8_t expand_encoding[] = {
17694 : 0x01, 0x27, 0x00
17695 : };
17696 : return complete_seq (expand_encoding, operands);
17697 : }
17698 :
17699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17700 : extern rtx_insn *gen_split_1719 (rtx_insn *, rtx *);
17701 : rtx_insn *
17702 : gen_split_1719 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17703 : {
17704 : if (dump_file)
17705 : fprintf (dump_file, "Splitting with gen_split_1719 (sse.md:14118)\n");
17706 : start_sequence ();
17707 : #define FAIL return (end_sequence (), nullptr)
17708 : #define DONE return end_sequence ()
17709 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17710 : {
17711 : rtx args[3];
17712 : args[0] = NULL_RTX;
17713 : args[1] = NULL_RTX;
17714 : args[2] = NULL_RTX;
17715 : int idx = ix86_ternlog_idx (operands[1], args);
17716 : ix86_expand_ternlog (V4DImode, args[0], args[1], args[2], idx,
17717 : operands[0]);
17718 : DONE;
17719 : }
17720 : #undef DONE
17721 : #undef FAIL
17722 : static const uint8_t expand_encoding[] = {
17723 : 0x01, 0x27, 0x00
17724 : };
17725 : return complete_seq (expand_encoding, operands);
17726 : }
17727 :
17728 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17729 : extern rtx_insn *gen_split_1729 (rtx_insn *, rtx *);
17730 : rtx_insn *
17731 : gen_split_1729 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17732 : {
17733 : if (dump_file)
17734 : fprintf (dump_file, "Splitting with gen_split_1729 (sse.md:14118)\n");
17735 : start_sequence ();
17736 : #define FAIL return (end_sequence (), nullptr)
17737 : #define DONE return end_sequence ()
17738 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17739 : {
17740 : rtx args[3];
17741 : args[0] = NULL_RTX;
17742 : args[1] = NULL_RTX;
17743 : args[2] = NULL_RTX;
17744 : int idx = ix86_ternlog_idx (operands[1], args);
17745 : ix86_expand_ternlog (V4SFmode, args[0], args[1], args[2], idx,
17746 : operands[0]);
17747 : DONE;
17748 : }
17749 : #undef DONE
17750 : #undef FAIL
17751 : static const uint8_t expand_encoding[] = {
17752 : 0x01, 0x27, 0x00
17753 : };
17754 : return complete_seq (expand_encoding, operands);
17755 : }
17756 :
17757 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17758 : extern rtx_insn *gen_split_1739 (rtx_insn *, rtx *);
17759 : rtx_insn *
17760 : gen_split_1739 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17761 : {
17762 : if (dump_file)
17763 : fprintf (dump_file, "Splitting with gen_split_1739 (sse.md:14142)\n");
17764 : start_sequence ();
17765 : #define FAIL return (end_sequence (), nullptr)
17766 : #define DONE return end_sequence ()
17767 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17768 : {
17769 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17770 : int reg6 = 0xF0;
17771 : int reg2 = 0xCC;
17772 : int reg1 = 0xAA;
17773 : int reg3 = 0;
17774 : int reg4 = 0;
17775 : int reg_mask, tmp1, tmp2;
17776 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17777 : STRIP_UNARY (operands[4])))
17778 : {
17779 : reg4 = reg1;
17780 : reg3 = reg6;
17781 : operands[6] = operands[3];
17782 : }
17783 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17784 : STRIP_UNARY (operands[4])))
17785 : {
17786 : reg4 = reg2;
17787 : reg3 = reg6;
17788 : operands[6] = operands[3];
17789 : }
17790 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17791 : STRIP_UNARY (operands[3])))
17792 : {
17793 : reg4 = reg6;
17794 : reg3 = reg1;
17795 : operands[6] = operands[4];
17796 : }
17797 : else
17798 : {
17799 : reg4 = reg6;
17800 : reg3 = reg2;
17801 : operands[6] = operands[4];
17802 : }
17803 :
17804 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17805 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17806 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17807 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17808 :
17809 : tmp1 = reg1 & reg2;
17810 : tmp2 = reg3 ^ reg4;
17811 : reg_mask = tmp1 & tmp2;
17812 : reg_mask &= 0xFF;
17813 :
17814 : operands[1] = STRIP_UNARY (operands[1]);
17815 : operands[2] = STRIP_UNARY (operands[2]);
17816 : operands[6] = STRIP_UNARY (operands[6]);
17817 : if (!register_operand (operands[2], V64QImode))
17818 : operands[2] = force_reg (V64QImode, operands[2]);
17819 : if (!register_operand (operands[6], V64QImode))
17820 : operands[6] = force_reg (V64QImode, operands[6]);
17821 : operands[5] = GEN_INT (reg_mask);
17822 : }
17823 : #undef DONE
17824 : #undef FAIL
17825 : static const uint8_t expand_encoding[] = {
17826 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17827 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17828 : 0x25
17829 : };
17830 : return complete_seq (expand_encoding, operands);
17831 : }
17832 :
17833 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17834 : extern rtx_insn *gen_split_1749 (rtx_insn *, rtx *);
17835 : rtx_insn *
17836 : gen_split_1749 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17837 : {
17838 : if (dump_file)
17839 : fprintf (dump_file, "Splitting with gen_split_1749 (sse.md:14142)\n");
17840 : start_sequence ();
17841 : #define FAIL return (end_sequence (), nullptr)
17842 : #define DONE return end_sequence ()
17843 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17844 : {
17845 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17846 : int reg6 = 0xF0;
17847 : int reg2 = 0xCC;
17848 : int reg1 = 0xAA;
17849 : int reg3 = 0;
17850 : int reg4 = 0;
17851 : int reg_mask, tmp1, tmp2;
17852 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17853 : STRIP_UNARY (operands[4])))
17854 : {
17855 : reg4 = reg1;
17856 : reg3 = reg6;
17857 : operands[6] = operands[3];
17858 : }
17859 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17860 : STRIP_UNARY (operands[4])))
17861 : {
17862 : reg4 = reg2;
17863 : reg3 = reg6;
17864 : operands[6] = operands[3];
17865 : }
17866 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17867 : STRIP_UNARY (operands[3])))
17868 : {
17869 : reg4 = reg6;
17870 : reg3 = reg1;
17871 : operands[6] = operands[4];
17872 : }
17873 : else
17874 : {
17875 : reg4 = reg6;
17876 : reg3 = reg2;
17877 : operands[6] = operands[4];
17878 : }
17879 :
17880 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17881 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17882 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17883 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17884 :
17885 : tmp1 = reg1 | reg2;
17886 : tmp2 = reg3 ^ reg4;
17887 : reg_mask = tmp1 | tmp2;
17888 : reg_mask &= 0xFF;
17889 :
17890 : operands[1] = STRIP_UNARY (operands[1]);
17891 : operands[2] = STRIP_UNARY (operands[2]);
17892 : operands[6] = STRIP_UNARY (operands[6]);
17893 : if (!register_operand (operands[2], V64QImode))
17894 : operands[2] = force_reg (V64QImode, operands[2]);
17895 : if (!register_operand (operands[6], V64QImode))
17896 : operands[6] = force_reg (V64QImode, operands[6]);
17897 : operands[5] = GEN_INT (reg_mask);
17898 : }
17899 : #undef DONE
17900 : #undef FAIL
17901 : static const uint8_t expand_encoding[] = {
17902 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17903 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17904 : 0x25
17905 : };
17906 : return complete_seq (expand_encoding, operands);
17907 : }
17908 :
17909 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17910 : extern rtx_insn *gen_split_1759 (rtx_insn *, rtx *);
17911 : rtx_insn *
17912 : gen_split_1759 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17913 : {
17914 : if (dump_file)
17915 : fprintf (dump_file, "Splitting with gen_split_1759 (sse.md:14142)\n");
17916 : start_sequence ();
17917 : #define FAIL return (end_sequence (), nullptr)
17918 : #define DONE return end_sequence ()
17919 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17920 : {
17921 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17922 : int reg6 = 0xF0;
17923 : int reg2 = 0xCC;
17924 : int reg1 = 0xAA;
17925 : int reg3 = 0;
17926 : int reg4 = 0;
17927 : int reg_mask, tmp1, tmp2;
17928 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17929 : STRIP_UNARY (operands[4])))
17930 : {
17931 : reg4 = reg1;
17932 : reg3 = reg6;
17933 : operands[6] = operands[3];
17934 : }
17935 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17936 : STRIP_UNARY (operands[4])))
17937 : {
17938 : reg4 = reg2;
17939 : reg3 = reg6;
17940 : operands[6] = operands[3];
17941 : }
17942 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17943 : STRIP_UNARY (operands[3])))
17944 : {
17945 : reg4 = reg6;
17946 : reg3 = reg1;
17947 : operands[6] = operands[4];
17948 : }
17949 : else
17950 : {
17951 : reg4 = reg6;
17952 : reg3 = reg2;
17953 : operands[6] = operands[4];
17954 : }
17955 :
17956 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17957 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17958 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17959 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17960 :
17961 : tmp1 = reg1 ^ reg2;
17962 : tmp2 = reg3 ^ reg4;
17963 : reg_mask = tmp1 ^ tmp2;
17964 : reg_mask &= 0xFF;
17965 :
17966 : operands[1] = STRIP_UNARY (operands[1]);
17967 : operands[2] = STRIP_UNARY (operands[2]);
17968 : operands[6] = STRIP_UNARY (operands[6]);
17969 : if (!register_operand (operands[2], V64QImode))
17970 : operands[2] = force_reg (V64QImode, operands[2]);
17971 : if (!register_operand (operands[6], V64QImode))
17972 : operands[6] = force_reg (V64QImode, operands[6]);
17973 : operands[5] = GEN_INT (reg_mask);
17974 : }
17975 : #undef DONE
17976 : #undef FAIL
17977 : static const uint8_t expand_encoding[] = {
17978 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17979 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17980 : 0x25
17981 : };
17982 : return complete_seq (expand_encoding, operands);
17983 : }
17984 :
17985 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17986 : extern rtx_insn *gen_split_1769 (rtx_insn *, rtx *);
17987 : rtx_insn *
17988 : gen_split_1769 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17989 : {
17990 : if (dump_file)
17991 : fprintf (dump_file, "Splitting with gen_split_1769 (sse.md:14142)\n");
17992 : start_sequence ();
17993 : #define FAIL return (end_sequence (), nullptr)
17994 : #define DONE return end_sequence ()
17995 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17996 : {
17997 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17998 : int reg6 = 0xF0;
17999 : int reg2 = 0xCC;
18000 : int reg1 = 0xAA;
18001 : int reg3 = 0;
18002 : int reg4 = 0;
18003 : int reg_mask, tmp1, tmp2;
18004 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18005 : STRIP_UNARY (operands[4])))
18006 : {
18007 : reg4 = reg1;
18008 : reg3 = reg6;
18009 : operands[6] = operands[3];
18010 : }
18011 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18012 : STRIP_UNARY (operands[4])))
18013 : {
18014 : reg4 = reg2;
18015 : reg3 = reg6;
18016 : operands[6] = operands[3];
18017 : }
18018 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18019 : STRIP_UNARY (operands[3])))
18020 : {
18021 : reg4 = reg6;
18022 : reg3 = reg1;
18023 : operands[6] = operands[4];
18024 : }
18025 : else
18026 : {
18027 : reg4 = reg6;
18028 : reg3 = reg2;
18029 : operands[6] = operands[4];
18030 : }
18031 :
18032 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18033 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18034 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18035 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18036 :
18037 : tmp1 = reg1 | reg2;
18038 : tmp2 = reg3 & reg4;
18039 : reg_mask = tmp1 & tmp2;
18040 : reg_mask &= 0xFF;
18041 :
18042 : operands[1] = STRIP_UNARY (operands[1]);
18043 : operands[2] = STRIP_UNARY (operands[2]);
18044 : operands[6] = STRIP_UNARY (operands[6]);
18045 : if (!register_operand (operands[2], V32QImode))
18046 : operands[2] = force_reg (V32QImode, operands[2]);
18047 : if (!register_operand (operands[6], V32QImode))
18048 : operands[6] = force_reg (V32QImode, operands[6]);
18049 : operands[5] = GEN_INT (reg_mask);
18050 : }
18051 : #undef DONE
18052 : #undef FAIL
18053 : static const uint8_t expand_encoding[] = {
18054 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18055 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18056 : 0x25
18057 : };
18058 : return complete_seq (expand_encoding, operands);
18059 : }
18060 :
18061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18062 : extern rtx_insn *gen_split_1779 (rtx_insn *, rtx *);
18063 : rtx_insn *
18064 : gen_split_1779 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18065 : {
18066 : if (dump_file)
18067 : fprintf (dump_file, "Splitting with gen_split_1779 (sse.md:14142)\n");
18068 : start_sequence ();
18069 : #define FAIL return (end_sequence (), nullptr)
18070 : #define DONE return end_sequence ()
18071 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18072 : {
18073 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18074 : int reg6 = 0xF0;
18075 : int reg2 = 0xCC;
18076 : int reg1 = 0xAA;
18077 : int reg3 = 0;
18078 : int reg4 = 0;
18079 : int reg_mask, tmp1, tmp2;
18080 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18081 : STRIP_UNARY (operands[4])))
18082 : {
18083 : reg4 = reg1;
18084 : reg3 = reg6;
18085 : operands[6] = operands[3];
18086 : }
18087 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18088 : STRIP_UNARY (operands[4])))
18089 : {
18090 : reg4 = reg2;
18091 : reg3 = reg6;
18092 : operands[6] = operands[3];
18093 : }
18094 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18095 : STRIP_UNARY (operands[3])))
18096 : {
18097 : reg4 = reg6;
18098 : reg3 = reg1;
18099 : operands[6] = operands[4];
18100 : }
18101 : else
18102 : {
18103 : reg4 = reg6;
18104 : reg3 = reg2;
18105 : operands[6] = operands[4];
18106 : }
18107 :
18108 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18109 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18110 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18111 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18112 :
18113 : tmp1 = reg1 ^ reg2;
18114 : tmp2 = reg3 & reg4;
18115 : reg_mask = tmp1 | tmp2;
18116 : reg_mask &= 0xFF;
18117 :
18118 : operands[1] = STRIP_UNARY (operands[1]);
18119 : operands[2] = STRIP_UNARY (operands[2]);
18120 : operands[6] = STRIP_UNARY (operands[6]);
18121 : if (!register_operand (operands[2], V32QImode))
18122 : operands[2] = force_reg (V32QImode, operands[2]);
18123 : if (!register_operand (operands[6], V32QImode))
18124 : operands[6] = force_reg (V32QImode, operands[6]);
18125 : operands[5] = GEN_INT (reg_mask);
18126 : }
18127 : #undef DONE
18128 : #undef FAIL
18129 : static const uint8_t expand_encoding[] = {
18130 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18131 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18132 : 0x25
18133 : };
18134 : return complete_seq (expand_encoding, operands);
18135 : }
18136 :
18137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18138 : extern rtx_insn *gen_split_1789 (rtx_insn *, rtx *);
18139 : rtx_insn *
18140 : gen_split_1789 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18141 : {
18142 : if (dump_file)
18143 : fprintf (dump_file, "Splitting with gen_split_1789 (sse.md:14142)\n");
18144 : start_sequence ();
18145 : #define FAIL return (end_sequence (), nullptr)
18146 : #define DONE return end_sequence ()
18147 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18148 : {
18149 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18150 : int reg6 = 0xF0;
18151 : int reg2 = 0xCC;
18152 : int reg1 = 0xAA;
18153 : int reg3 = 0;
18154 : int reg4 = 0;
18155 : int reg_mask, tmp1, tmp2;
18156 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18157 : STRIP_UNARY (operands[4])))
18158 : {
18159 : reg4 = reg1;
18160 : reg3 = reg6;
18161 : operands[6] = operands[3];
18162 : }
18163 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18164 : STRIP_UNARY (operands[4])))
18165 : {
18166 : reg4 = reg2;
18167 : reg3 = reg6;
18168 : operands[6] = operands[3];
18169 : }
18170 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18171 : STRIP_UNARY (operands[3])))
18172 : {
18173 : reg4 = reg6;
18174 : reg3 = reg1;
18175 : operands[6] = operands[4];
18176 : }
18177 : else
18178 : {
18179 : reg4 = reg6;
18180 : reg3 = reg2;
18181 : operands[6] = operands[4];
18182 : }
18183 :
18184 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18185 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18186 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18187 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18188 :
18189 : tmp1 = reg1 & reg2;
18190 : tmp2 = reg3 & reg4;
18191 : reg_mask = tmp1 ^ tmp2;
18192 : reg_mask &= 0xFF;
18193 :
18194 : operands[1] = STRIP_UNARY (operands[1]);
18195 : operands[2] = STRIP_UNARY (operands[2]);
18196 : operands[6] = STRIP_UNARY (operands[6]);
18197 : if (!register_operand (operands[2], V16QImode))
18198 : operands[2] = force_reg (V16QImode, operands[2]);
18199 : if (!register_operand (operands[6], V16QImode))
18200 : operands[6] = force_reg (V16QImode, operands[6]);
18201 : operands[5] = GEN_INT (reg_mask);
18202 : }
18203 : #undef DONE
18204 : #undef FAIL
18205 : static const uint8_t expand_encoding[] = {
18206 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18207 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18208 : 0x25
18209 : };
18210 : return complete_seq (expand_encoding, operands);
18211 : }
18212 :
18213 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18214 : extern rtx_insn *gen_split_1799 (rtx_insn *, rtx *);
18215 : rtx_insn *
18216 : gen_split_1799 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18217 : {
18218 : if (dump_file)
18219 : fprintf (dump_file, "Splitting with gen_split_1799 (sse.md:14142)\n");
18220 : start_sequence ();
18221 : #define FAIL return (end_sequence (), nullptr)
18222 : #define DONE return end_sequence ()
18223 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18224 : {
18225 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18226 : int reg6 = 0xF0;
18227 : int reg2 = 0xCC;
18228 : int reg1 = 0xAA;
18229 : int reg3 = 0;
18230 : int reg4 = 0;
18231 : int reg_mask, tmp1, tmp2;
18232 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18233 : STRIP_UNARY (operands[4])))
18234 : {
18235 : reg4 = reg1;
18236 : reg3 = reg6;
18237 : operands[6] = operands[3];
18238 : }
18239 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18240 : STRIP_UNARY (operands[4])))
18241 : {
18242 : reg4 = reg2;
18243 : reg3 = reg6;
18244 : operands[6] = operands[3];
18245 : }
18246 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18247 : STRIP_UNARY (operands[3])))
18248 : {
18249 : reg4 = reg6;
18250 : reg3 = reg1;
18251 : operands[6] = operands[4];
18252 : }
18253 : else
18254 : {
18255 : reg4 = reg6;
18256 : reg3 = reg2;
18257 : operands[6] = operands[4];
18258 : }
18259 :
18260 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18261 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18262 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18263 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18264 :
18265 : tmp1 = reg1 | reg2;
18266 : tmp2 = reg3 | reg4;
18267 : reg_mask = tmp1 & tmp2;
18268 : reg_mask &= 0xFF;
18269 :
18270 : operands[1] = STRIP_UNARY (operands[1]);
18271 : operands[2] = STRIP_UNARY (operands[2]);
18272 : operands[6] = STRIP_UNARY (operands[6]);
18273 : if (!register_operand (operands[2], V16QImode))
18274 : operands[2] = force_reg (V16QImode, operands[2]);
18275 : if (!register_operand (operands[6], V16QImode))
18276 : operands[6] = force_reg (V16QImode, operands[6]);
18277 : operands[5] = GEN_INT (reg_mask);
18278 : }
18279 : #undef DONE
18280 : #undef FAIL
18281 : static const uint8_t expand_encoding[] = {
18282 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18283 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18284 : 0x25
18285 : };
18286 : return complete_seq (expand_encoding, operands);
18287 : }
18288 :
18289 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18290 : extern rtx_insn *gen_split_1809 (rtx_insn *, rtx *);
18291 : rtx_insn *
18292 : gen_split_1809 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18293 : {
18294 : if (dump_file)
18295 : fprintf (dump_file, "Splitting with gen_split_1809 (sse.md:14142)\n");
18296 : start_sequence ();
18297 : #define FAIL return (end_sequence (), nullptr)
18298 : #define DONE return end_sequence ()
18299 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18300 : {
18301 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18302 : int reg6 = 0xF0;
18303 : int reg2 = 0xCC;
18304 : int reg1 = 0xAA;
18305 : int reg3 = 0;
18306 : int reg4 = 0;
18307 : int reg_mask, tmp1, tmp2;
18308 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18309 : STRIP_UNARY (operands[4])))
18310 : {
18311 : reg4 = reg1;
18312 : reg3 = reg6;
18313 : operands[6] = operands[3];
18314 : }
18315 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18316 : STRIP_UNARY (operands[4])))
18317 : {
18318 : reg4 = reg2;
18319 : reg3 = reg6;
18320 : operands[6] = operands[3];
18321 : }
18322 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18323 : STRIP_UNARY (operands[3])))
18324 : {
18325 : reg4 = reg6;
18326 : reg3 = reg1;
18327 : operands[6] = operands[4];
18328 : }
18329 : else
18330 : {
18331 : reg4 = reg6;
18332 : reg3 = reg2;
18333 : operands[6] = operands[4];
18334 : }
18335 :
18336 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18337 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18338 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18339 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18340 :
18341 : tmp1 = reg1 ^ reg2;
18342 : tmp2 = reg3 | reg4;
18343 : reg_mask = tmp1 | tmp2;
18344 : reg_mask &= 0xFF;
18345 :
18346 : operands[1] = STRIP_UNARY (operands[1]);
18347 : operands[2] = STRIP_UNARY (operands[2]);
18348 : operands[6] = STRIP_UNARY (operands[6]);
18349 : if (!register_operand (operands[2], V16QImode))
18350 : operands[2] = force_reg (V16QImode, operands[2]);
18351 : if (!register_operand (operands[6], V16QImode))
18352 : operands[6] = force_reg (V16QImode, operands[6]);
18353 : operands[5] = GEN_INT (reg_mask);
18354 : }
18355 : #undef DONE
18356 : #undef FAIL
18357 : static const uint8_t expand_encoding[] = {
18358 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18359 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18360 : 0x25
18361 : };
18362 : return complete_seq (expand_encoding, operands);
18363 : }
18364 :
18365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18366 : extern rtx_insn *gen_split_1819 (rtx_insn *, rtx *);
18367 : rtx_insn *
18368 : gen_split_1819 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18369 : {
18370 : if (dump_file)
18371 : fprintf (dump_file, "Splitting with gen_split_1819 (sse.md:14142)\n");
18372 : start_sequence ();
18373 : #define FAIL return (end_sequence (), nullptr)
18374 : #define DONE return end_sequence ()
18375 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18376 : {
18377 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18378 : int reg6 = 0xF0;
18379 : int reg2 = 0xCC;
18380 : int reg1 = 0xAA;
18381 : int reg3 = 0;
18382 : int reg4 = 0;
18383 : int reg_mask, tmp1, tmp2;
18384 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18385 : STRIP_UNARY (operands[4])))
18386 : {
18387 : reg4 = reg1;
18388 : reg3 = reg6;
18389 : operands[6] = operands[3];
18390 : }
18391 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18392 : STRIP_UNARY (operands[4])))
18393 : {
18394 : reg4 = reg2;
18395 : reg3 = reg6;
18396 : operands[6] = operands[3];
18397 : }
18398 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18399 : STRIP_UNARY (operands[3])))
18400 : {
18401 : reg4 = reg6;
18402 : reg3 = reg1;
18403 : operands[6] = operands[4];
18404 : }
18405 : else
18406 : {
18407 : reg4 = reg6;
18408 : reg3 = reg2;
18409 : operands[6] = operands[4];
18410 : }
18411 :
18412 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18413 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18414 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18415 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18416 :
18417 : tmp1 = reg1 & reg2;
18418 : tmp2 = reg3 | reg4;
18419 : reg_mask = tmp1 ^ tmp2;
18420 : reg_mask &= 0xFF;
18421 :
18422 : operands[1] = STRIP_UNARY (operands[1]);
18423 : operands[2] = STRIP_UNARY (operands[2]);
18424 : operands[6] = STRIP_UNARY (operands[6]);
18425 : if (!register_operand (operands[2], V32HImode))
18426 : operands[2] = force_reg (V32HImode, operands[2]);
18427 : if (!register_operand (operands[6], V32HImode))
18428 : operands[6] = force_reg (V32HImode, operands[6]);
18429 : operands[5] = GEN_INT (reg_mask);
18430 : }
18431 : #undef DONE
18432 : #undef FAIL
18433 : static const uint8_t expand_encoding[] = {
18434 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18435 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18436 : 0x25
18437 : };
18438 : return complete_seq (expand_encoding, operands);
18439 : }
18440 :
18441 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18442 : extern rtx_insn *gen_split_1829 (rtx_insn *, rtx *);
18443 : rtx_insn *
18444 : gen_split_1829 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18445 : {
18446 : if (dump_file)
18447 : fprintf (dump_file, "Splitting with gen_split_1829 (sse.md:14142)\n");
18448 : start_sequence ();
18449 : #define FAIL return (end_sequence (), nullptr)
18450 : #define DONE return end_sequence ()
18451 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18452 : {
18453 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18454 : int reg6 = 0xF0;
18455 : int reg2 = 0xCC;
18456 : int reg1 = 0xAA;
18457 : int reg3 = 0;
18458 : int reg4 = 0;
18459 : int reg_mask, tmp1, tmp2;
18460 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18461 : STRIP_UNARY (operands[4])))
18462 : {
18463 : reg4 = reg1;
18464 : reg3 = reg6;
18465 : operands[6] = operands[3];
18466 : }
18467 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18468 : STRIP_UNARY (operands[4])))
18469 : {
18470 : reg4 = reg2;
18471 : reg3 = reg6;
18472 : operands[6] = operands[3];
18473 : }
18474 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18475 : STRIP_UNARY (operands[3])))
18476 : {
18477 : reg4 = reg6;
18478 : reg3 = reg1;
18479 : operands[6] = operands[4];
18480 : }
18481 : else
18482 : {
18483 : reg4 = reg6;
18484 : reg3 = reg2;
18485 : operands[6] = operands[4];
18486 : }
18487 :
18488 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18489 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18490 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18491 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18492 :
18493 : tmp1 = reg1 | reg2;
18494 : tmp2 = reg3 ^ reg4;
18495 : reg_mask = tmp1 & tmp2;
18496 : reg_mask &= 0xFF;
18497 :
18498 : operands[1] = STRIP_UNARY (operands[1]);
18499 : operands[2] = STRIP_UNARY (operands[2]);
18500 : operands[6] = STRIP_UNARY (operands[6]);
18501 : if (!register_operand (operands[2], V32HImode))
18502 : operands[2] = force_reg (V32HImode, operands[2]);
18503 : if (!register_operand (operands[6], V32HImode))
18504 : operands[6] = force_reg (V32HImode, operands[6]);
18505 : operands[5] = GEN_INT (reg_mask);
18506 : }
18507 : #undef DONE
18508 : #undef FAIL
18509 : static const uint8_t expand_encoding[] = {
18510 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18511 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18512 : 0x25
18513 : };
18514 : return complete_seq (expand_encoding, operands);
18515 : }
18516 :
18517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18518 : extern rtx_insn *gen_split_1839 (rtx_insn *, rtx *);
18519 : rtx_insn *
18520 : gen_split_1839 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18521 : {
18522 : if (dump_file)
18523 : fprintf (dump_file, "Splitting with gen_split_1839 (sse.md:14142)\n");
18524 : start_sequence ();
18525 : #define FAIL return (end_sequence (), nullptr)
18526 : #define DONE return end_sequence ()
18527 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18528 : {
18529 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18530 : int reg6 = 0xF0;
18531 : int reg2 = 0xCC;
18532 : int reg1 = 0xAA;
18533 : int reg3 = 0;
18534 : int reg4 = 0;
18535 : int reg_mask, tmp1, tmp2;
18536 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18537 : STRIP_UNARY (operands[4])))
18538 : {
18539 : reg4 = reg1;
18540 : reg3 = reg6;
18541 : operands[6] = operands[3];
18542 : }
18543 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18544 : STRIP_UNARY (operands[4])))
18545 : {
18546 : reg4 = reg2;
18547 : reg3 = reg6;
18548 : operands[6] = operands[3];
18549 : }
18550 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18551 : STRIP_UNARY (operands[3])))
18552 : {
18553 : reg4 = reg6;
18554 : reg3 = reg1;
18555 : operands[6] = operands[4];
18556 : }
18557 : else
18558 : {
18559 : reg4 = reg6;
18560 : reg3 = reg2;
18561 : operands[6] = operands[4];
18562 : }
18563 :
18564 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18565 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18566 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18567 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18568 :
18569 : tmp1 = reg1 ^ reg2;
18570 : tmp2 = reg3 ^ reg4;
18571 : reg_mask = tmp1 | tmp2;
18572 : reg_mask &= 0xFF;
18573 :
18574 : operands[1] = STRIP_UNARY (operands[1]);
18575 : operands[2] = STRIP_UNARY (operands[2]);
18576 : operands[6] = STRIP_UNARY (operands[6]);
18577 : if (!register_operand (operands[2], V32HImode))
18578 : operands[2] = force_reg (V32HImode, operands[2]);
18579 : if (!register_operand (operands[6], V32HImode))
18580 : operands[6] = force_reg (V32HImode, operands[6]);
18581 : operands[5] = GEN_INT (reg_mask);
18582 : }
18583 : #undef DONE
18584 : #undef FAIL
18585 : static const uint8_t expand_encoding[] = {
18586 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18587 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18588 : 0x25
18589 : };
18590 : return complete_seq (expand_encoding, operands);
18591 : }
18592 :
18593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18594 : extern rtx_insn *gen_split_1849 (rtx_insn *, rtx *);
18595 : rtx_insn *
18596 : gen_split_1849 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18597 : {
18598 : if (dump_file)
18599 : fprintf (dump_file, "Splitting with gen_split_1849 (sse.md:14142)\n");
18600 : start_sequence ();
18601 : #define FAIL return (end_sequence (), nullptr)
18602 : #define DONE return end_sequence ()
18603 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18604 : {
18605 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18606 : int reg6 = 0xF0;
18607 : int reg2 = 0xCC;
18608 : int reg1 = 0xAA;
18609 : int reg3 = 0;
18610 : int reg4 = 0;
18611 : int reg_mask, tmp1, tmp2;
18612 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18613 : STRIP_UNARY (operands[4])))
18614 : {
18615 : reg4 = reg1;
18616 : reg3 = reg6;
18617 : operands[6] = operands[3];
18618 : }
18619 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18620 : STRIP_UNARY (operands[4])))
18621 : {
18622 : reg4 = reg2;
18623 : reg3 = reg6;
18624 : operands[6] = operands[3];
18625 : }
18626 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18627 : STRIP_UNARY (operands[3])))
18628 : {
18629 : reg4 = reg6;
18630 : reg3 = reg1;
18631 : operands[6] = operands[4];
18632 : }
18633 : else
18634 : {
18635 : reg4 = reg6;
18636 : reg3 = reg2;
18637 : operands[6] = operands[4];
18638 : }
18639 :
18640 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18641 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18642 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18643 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18644 :
18645 : tmp1 = reg1 & reg2;
18646 : tmp2 = reg3 ^ reg4;
18647 : reg_mask = tmp1 ^ tmp2;
18648 : reg_mask &= 0xFF;
18649 :
18650 : operands[1] = STRIP_UNARY (operands[1]);
18651 : operands[2] = STRIP_UNARY (operands[2]);
18652 : operands[6] = STRIP_UNARY (operands[6]);
18653 : if (!register_operand (operands[2], V16HImode))
18654 : operands[2] = force_reg (V16HImode, operands[2]);
18655 : if (!register_operand (operands[6], V16HImode))
18656 : operands[6] = force_reg (V16HImode, operands[6]);
18657 : operands[5] = GEN_INT (reg_mask);
18658 : }
18659 : #undef DONE
18660 : #undef FAIL
18661 : static const uint8_t expand_encoding[] = {
18662 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18663 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18664 : 0x25
18665 : };
18666 : return complete_seq (expand_encoding, operands);
18667 : }
18668 :
18669 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18670 : extern rtx_insn *gen_split_1859 (rtx_insn *, rtx *);
18671 : rtx_insn *
18672 : gen_split_1859 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18673 : {
18674 : if (dump_file)
18675 : fprintf (dump_file, "Splitting with gen_split_1859 (sse.md:14142)\n");
18676 : start_sequence ();
18677 : #define FAIL return (end_sequence (), nullptr)
18678 : #define DONE return end_sequence ()
18679 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18680 : {
18681 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18682 : int reg6 = 0xF0;
18683 : int reg2 = 0xCC;
18684 : int reg1 = 0xAA;
18685 : int reg3 = 0;
18686 : int reg4 = 0;
18687 : int reg_mask, tmp1, tmp2;
18688 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18689 : STRIP_UNARY (operands[4])))
18690 : {
18691 : reg4 = reg1;
18692 : reg3 = reg6;
18693 : operands[6] = operands[3];
18694 : }
18695 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18696 : STRIP_UNARY (operands[4])))
18697 : {
18698 : reg4 = reg2;
18699 : reg3 = reg6;
18700 : operands[6] = operands[3];
18701 : }
18702 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18703 : STRIP_UNARY (operands[3])))
18704 : {
18705 : reg4 = reg6;
18706 : reg3 = reg1;
18707 : operands[6] = operands[4];
18708 : }
18709 : else
18710 : {
18711 : reg4 = reg6;
18712 : reg3 = reg2;
18713 : operands[6] = operands[4];
18714 : }
18715 :
18716 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18717 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18718 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18719 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18720 :
18721 : tmp1 = reg1 ^ reg2;
18722 : tmp2 = reg3 & reg4;
18723 : reg_mask = tmp1 & tmp2;
18724 : reg_mask &= 0xFF;
18725 :
18726 : operands[1] = STRIP_UNARY (operands[1]);
18727 : operands[2] = STRIP_UNARY (operands[2]);
18728 : operands[6] = STRIP_UNARY (operands[6]);
18729 : if (!register_operand (operands[2], V16HImode))
18730 : operands[2] = force_reg (V16HImode, operands[2]);
18731 : if (!register_operand (operands[6], V16HImode))
18732 : operands[6] = force_reg (V16HImode, operands[6]);
18733 : operands[5] = GEN_INT (reg_mask);
18734 : }
18735 : #undef DONE
18736 : #undef FAIL
18737 : static const uint8_t expand_encoding[] = {
18738 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18739 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18740 : 0x25
18741 : };
18742 : return complete_seq (expand_encoding, operands);
18743 : }
18744 :
18745 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18746 : extern rtx_insn *gen_split_1869 (rtx_insn *, rtx *);
18747 : rtx_insn *
18748 : gen_split_1869 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18749 : {
18750 : if (dump_file)
18751 : fprintf (dump_file, "Splitting with gen_split_1869 (sse.md:14142)\n");
18752 : start_sequence ();
18753 : #define FAIL return (end_sequence (), nullptr)
18754 : #define DONE return end_sequence ()
18755 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18756 : {
18757 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18758 : int reg6 = 0xF0;
18759 : int reg2 = 0xCC;
18760 : int reg1 = 0xAA;
18761 : int reg3 = 0;
18762 : int reg4 = 0;
18763 : int reg_mask, tmp1, tmp2;
18764 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18765 : STRIP_UNARY (operands[4])))
18766 : {
18767 : reg4 = reg1;
18768 : reg3 = reg6;
18769 : operands[6] = operands[3];
18770 : }
18771 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18772 : STRIP_UNARY (operands[4])))
18773 : {
18774 : reg4 = reg2;
18775 : reg3 = reg6;
18776 : operands[6] = operands[3];
18777 : }
18778 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18779 : STRIP_UNARY (operands[3])))
18780 : {
18781 : reg4 = reg6;
18782 : reg3 = reg1;
18783 : operands[6] = operands[4];
18784 : }
18785 : else
18786 : {
18787 : reg4 = reg6;
18788 : reg3 = reg2;
18789 : operands[6] = operands[4];
18790 : }
18791 :
18792 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18793 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18794 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18795 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18796 :
18797 : tmp1 = reg1 & reg2;
18798 : tmp2 = reg3 & reg4;
18799 : reg_mask = tmp1 | tmp2;
18800 : reg_mask &= 0xFF;
18801 :
18802 : operands[1] = STRIP_UNARY (operands[1]);
18803 : operands[2] = STRIP_UNARY (operands[2]);
18804 : operands[6] = STRIP_UNARY (operands[6]);
18805 : if (!register_operand (operands[2], V8HImode))
18806 : operands[2] = force_reg (V8HImode, operands[2]);
18807 : if (!register_operand (operands[6], V8HImode))
18808 : operands[6] = force_reg (V8HImode, operands[6]);
18809 : operands[5] = GEN_INT (reg_mask);
18810 : }
18811 : #undef DONE
18812 : #undef FAIL
18813 : static const uint8_t expand_encoding[] = {
18814 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18815 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18816 : 0x25
18817 : };
18818 : return complete_seq (expand_encoding, operands);
18819 : }
18820 :
18821 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18822 : extern rtx_insn *gen_split_1879 (rtx_insn *, rtx *);
18823 : rtx_insn *
18824 : gen_split_1879 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18825 : {
18826 : if (dump_file)
18827 : fprintf (dump_file, "Splitting with gen_split_1879 (sse.md:14142)\n");
18828 : start_sequence ();
18829 : #define FAIL return (end_sequence (), nullptr)
18830 : #define DONE return end_sequence ()
18831 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18832 : {
18833 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18834 : int reg6 = 0xF0;
18835 : int reg2 = 0xCC;
18836 : int reg1 = 0xAA;
18837 : int reg3 = 0;
18838 : int reg4 = 0;
18839 : int reg_mask, tmp1, tmp2;
18840 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18841 : STRIP_UNARY (operands[4])))
18842 : {
18843 : reg4 = reg1;
18844 : reg3 = reg6;
18845 : operands[6] = operands[3];
18846 : }
18847 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18848 : STRIP_UNARY (operands[4])))
18849 : {
18850 : reg4 = reg2;
18851 : reg3 = reg6;
18852 : operands[6] = operands[3];
18853 : }
18854 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18855 : STRIP_UNARY (operands[3])))
18856 : {
18857 : reg4 = reg6;
18858 : reg3 = reg1;
18859 : operands[6] = operands[4];
18860 : }
18861 : else
18862 : {
18863 : reg4 = reg6;
18864 : reg3 = reg2;
18865 : operands[6] = operands[4];
18866 : }
18867 :
18868 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18869 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18870 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18871 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18872 :
18873 : tmp1 = reg1 | reg2;
18874 : tmp2 = reg3 & reg4;
18875 : reg_mask = tmp1 ^ tmp2;
18876 : reg_mask &= 0xFF;
18877 :
18878 : operands[1] = STRIP_UNARY (operands[1]);
18879 : operands[2] = STRIP_UNARY (operands[2]);
18880 : operands[6] = STRIP_UNARY (operands[6]);
18881 : if (!register_operand (operands[2], V8HImode))
18882 : operands[2] = force_reg (V8HImode, operands[2]);
18883 : if (!register_operand (operands[6], V8HImode))
18884 : operands[6] = force_reg (V8HImode, operands[6]);
18885 : operands[5] = GEN_INT (reg_mask);
18886 : }
18887 : #undef DONE
18888 : #undef FAIL
18889 : static const uint8_t expand_encoding[] = {
18890 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18891 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18892 : 0x25
18893 : };
18894 : return complete_seq (expand_encoding, operands);
18895 : }
18896 :
18897 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18898 : extern rtx_insn *gen_split_1889 (rtx_insn *, rtx *);
18899 : rtx_insn *
18900 : gen_split_1889 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18901 : {
18902 : if (dump_file)
18903 : fprintf (dump_file, "Splitting with gen_split_1889 (sse.md:14142)\n");
18904 : start_sequence ();
18905 : #define FAIL return (end_sequence (), nullptr)
18906 : #define DONE return end_sequence ()
18907 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18908 : {
18909 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18910 : int reg6 = 0xF0;
18911 : int reg2 = 0xCC;
18912 : int reg1 = 0xAA;
18913 : int reg3 = 0;
18914 : int reg4 = 0;
18915 : int reg_mask, tmp1, tmp2;
18916 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18917 : STRIP_UNARY (operands[4])))
18918 : {
18919 : reg4 = reg1;
18920 : reg3 = reg6;
18921 : operands[6] = operands[3];
18922 : }
18923 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18924 : STRIP_UNARY (operands[4])))
18925 : {
18926 : reg4 = reg2;
18927 : reg3 = reg6;
18928 : operands[6] = operands[3];
18929 : }
18930 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18931 : STRIP_UNARY (operands[3])))
18932 : {
18933 : reg4 = reg6;
18934 : reg3 = reg1;
18935 : operands[6] = operands[4];
18936 : }
18937 : else
18938 : {
18939 : reg4 = reg6;
18940 : reg3 = reg2;
18941 : operands[6] = operands[4];
18942 : }
18943 :
18944 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18945 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18946 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18947 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18948 :
18949 : tmp1 = reg1 ^ reg2;
18950 : tmp2 = reg3 | reg4;
18951 : reg_mask = tmp1 & tmp2;
18952 : reg_mask &= 0xFF;
18953 :
18954 : operands[1] = STRIP_UNARY (operands[1]);
18955 : operands[2] = STRIP_UNARY (operands[2]);
18956 : operands[6] = STRIP_UNARY (operands[6]);
18957 : if (!register_operand (operands[2], V8HImode))
18958 : operands[2] = force_reg (V8HImode, operands[2]);
18959 : if (!register_operand (operands[6], V8HImode))
18960 : operands[6] = force_reg (V8HImode, operands[6]);
18961 : operands[5] = GEN_INT (reg_mask);
18962 : }
18963 : #undef DONE
18964 : #undef FAIL
18965 : static const uint8_t expand_encoding[] = {
18966 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18967 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18968 : 0x25
18969 : };
18970 : return complete_seq (expand_encoding, operands);
18971 : }
18972 :
18973 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18974 : extern rtx_insn *gen_split_1899 (rtx_insn *, rtx *);
18975 : rtx_insn *
18976 : gen_split_1899 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18977 : {
18978 : if (dump_file)
18979 : fprintf (dump_file, "Splitting with gen_split_1899 (sse.md:14142)\n");
18980 : start_sequence ();
18981 : #define FAIL return (end_sequence (), nullptr)
18982 : #define DONE return end_sequence ()
18983 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18984 : {
18985 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18986 : int reg6 = 0xF0;
18987 : int reg2 = 0xCC;
18988 : int reg1 = 0xAA;
18989 : int reg3 = 0;
18990 : int reg4 = 0;
18991 : int reg_mask, tmp1, tmp2;
18992 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18993 : STRIP_UNARY (operands[4])))
18994 : {
18995 : reg4 = reg1;
18996 : reg3 = reg6;
18997 : operands[6] = operands[3];
18998 : }
18999 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19000 : STRIP_UNARY (operands[4])))
19001 : {
19002 : reg4 = reg2;
19003 : reg3 = reg6;
19004 : operands[6] = operands[3];
19005 : }
19006 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19007 : STRIP_UNARY (operands[3])))
19008 : {
19009 : reg4 = reg6;
19010 : reg3 = reg1;
19011 : operands[6] = operands[4];
19012 : }
19013 : else
19014 : {
19015 : reg4 = reg6;
19016 : reg3 = reg2;
19017 : operands[6] = operands[4];
19018 : }
19019 :
19020 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19021 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19022 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19023 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19024 :
19025 : tmp1 = reg1 & reg2;
19026 : tmp2 = reg3 | reg4;
19027 : reg_mask = tmp1 | tmp2;
19028 : reg_mask &= 0xFF;
19029 :
19030 : operands[1] = STRIP_UNARY (operands[1]);
19031 : operands[2] = STRIP_UNARY (operands[2]);
19032 : operands[6] = STRIP_UNARY (operands[6]);
19033 : if (!register_operand (operands[2], V16SImode))
19034 : operands[2] = force_reg (V16SImode, operands[2]);
19035 : if (!register_operand (operands[6], V16SImode))
19036 : operands[6] = force_reg (V16SImode, operands[6]);
19037 : operands[5] = GEN_INT (reg_mask);
19038 : }
19039 : #undef DONE
19040 : #undef FAIL
19041 : static const uint8_t expand_encoding[] = {
19042 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19043 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19044 : 0x25
19045 : };
19046 : return complete_seq (expand_encoding, operands);
19047 : }
19048 :
19049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19050 : extern rtx_insn *gen_split_1909 (rtx_insn *, rtx *);
19051 : rtx_insn *
19052 : gen_split_1909 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19053 : {
19054 : if (dump_file)
19055 : fprintf (dump_file, "Splitting with gen_split_1909 (sse.md:14142)\n");
19056 : start_sequence ();
19057 : #define FAIL return (end_sequence (), nullptr)
19058 : #define DONE return end_sequence ()
19059 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19060 : {
19061 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19062 : int reg6 = 0xF0;
19063 : int reg2 = 0xCC;
19064 : int reg1 = 0xAA;
19065 : int reg3 = 0;
19066 : int reg4 = 0;
19067 : int reg_mask, tmp1, tmp2;
19068 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19069 : STRIP_UNARY (operands[4])))
19070 : {
19071 : reg4 = reg1;
19072 : reg3 = reg6;
19073 : operands[6] = operands[3];
19074 : }
19075 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19076 : STRIP_UNARY (operands[4])))
19077 : {
19078 : reg4 = reg2;
19079 : reg3 = reg6;
19080 : operands[6] = operands[3];
19081 : }
19082 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19083 : STRIP_UNARY (operands[3])))
19084 : {
19085 : reg4 = reg6;
19086 : reg3 = reg1;
19087 : operands[6] = operands[4];
19088 : }
19089 : else
19090 : {
19091 : reg4 = reg6;
19092 : reg3 = reg2;
19093 : operands[6] = operands[4];
19094 : }
19095 :
19096 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19097 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19098 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19099 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19100 :
19101 : tmp1 = reg1 | reg2;
19102 : tmp2 = reg3 | reg4;
19103 : reg_mask = tmp1 ^ tmp2;
19104 : reg_mask &= 0xFF;
19105 :
19106 : operands[1] = STRIP_UNARY (operands[1]);
19107 : operands[2] = STRIP_UNARY (operands[2]);
19108 : operands[6] = STRIP_UNARY (operands[6]);
19109 : if (!register_operand (operands[2], V16SImode))
19110 : operands[2] = force_reg (V16SImode, operands[2]);
19111 : if (!register_operand (operands[6], V16SImode))
19112 : operands[6] = force_reg (V16SImode, operands[6]);
19113 : operands[5] = GEN_INT (reg_mask);
19114 : }
19115 : #undef DONE
19116 : #undef FAIL
19117 : static const uint8_t expand_encoding[] = {
19118 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19119 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19120 : 0x25
19121 : };
19122 : return complete_seq (expand_encoding, operands);
19123 : }
19124 :
19125 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19126 : extern rtx_insn *gen_split_1919 (rtx_insn *, rtx *);
19127 : rtx_insn *
19128 : gen_split_1919 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19129 : {
19130 : if (dump_file)
19131 : fprintf (dump_file, "Splitting with gen_split_1919 (sse.md:14142)\n");
19132 : start_sequence ();
19133 : #define FAIL return (end_sequence (), nullptr)
19134 : #define DONE return end_sequence ()
19135 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19136 : {
19137 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19138 : int reg6 = 0xF0;
19139 : int reg2 = 0xCC;
19140 : int reg1 = 0xAA;
19141 : int reg3 = 0;
19142 : int reg4 = 0;
19143 : int reg_mask, tmp1, tmp2;
19144 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19145 : STRIP_UNARY (operands[4])))
19146 : {
19147 : reg4 = reg1;
19148 : reg3 = reg6;
19149 : operands[6] = operands[3];
19150 : }
19151 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19152 : STRIP_UNARY (operands[4])))
19153 : {
19154 : reg4 = reg2;
19155 : reg3 = reg6;
19156 : operands[6] = operands[3];
19157 : }
19158 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19159 : STRIP_UNARY (operands[3])))
19160 : {
19161 : reg4 = reg6;
19162 : reg3 = reg1;
19163 : operands[6] = operands[4];
19164 : }
19165 : else
19166 : {
19167 : reg4 = reg6;
19168 : reg3 = reg2;
19169 : operands[6] = operands[4];
19170 : }
19171 :
19172 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19173 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19174 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19175 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19176 :
19177 : tmp1 = reg1 ^ reg2;
19178 : tmp2 = reg3 ^ reg4;
19179 : reg_mask = tmp1 & tmp2;
19180 : reg_mask &= 0xFF;
19181 :
19182 : operands[1] = STRIP_UNARY (operands[1]);
19183 : operands[2] = STRIP_UNARY (operands[2]);
19184 : operands[6] = STRIP_UNARY (operands[6]);
19185 : if (!register_operand (operands[2], V16SImode))
19186 : operands[2] = force_reg (V16SImode, operands[2]);
19187 : if (!register_operand (operands[6], V16SImode))
19188 : operands[6] = force_reg (V16SImode, operands[6]);
19189 : operands[5] = GEN_INT (reg_mask);
19190 : }
19191 : #undef DONE
19192 : #undef FAIL
19193 : static const uint8_t expand_encoding[] = {
19194 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19195 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19196 : 0x25
19197 : };
19198 : return complete_seq (expand_encoding, operands);
19199 : }
19200 :
19201 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19202 : extern rtx_insn *gen_split_1929 (rtx_insn *, rtx *);
19203 : rtx_insn *
19204 : gen_split_1929 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19205 : {
19206 : if (dump_file)
19207 : fprintf (dump_file, "Splitting with gen_split_1929 (sse.md:14142)\n");
19208 : start_sequence ();
19209 : #define FAIL return (end_sequence (), nullptr)
19210 : #define DONE return end_sequence ()
19211 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19212 : {
19213 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19214 : int reg6 = 0xF0;
19215 : int reg2 = 0xCC;
19216 : int reg1 = 0xAA;
19217 : int reg3 = 0;
19218 : int reg4 = 0;
19219 : int reg_mask, tmp1, tmp2;
19220 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19221 : STRIP_UNARY (operands[4])))
19222 : {
19223 : reg4 = reg1;
19224 : reg3 = reg6;
19225 : operands[6] = operands[3];
19226 : }
19227 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19228 : STRIP_UNARY (operands[4])))
19229 : {
19230 : reg4 = reg2;
19231 : reg3 = reg6;
19232 : operands[6] = operands[3];
19233 : }
19234 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19235 : STRIP_UNARY (operands[3])))
19236 : {
19237 : reg4 = reg6;
19238 : reg3 = reg1;
19239 : operands[6] = operands[4];
19240 : }
19241 : else
19242 : {
19243 : reg4 = reg6;
19244 : reg3 = reg2;
19245 : operands[6] = operands[4];
19246 : }
19247 :
19248 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19249 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19250 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19251 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19252 :
19253 : tmp1 = reg1 & reg2;
19254 : tmp2 = reg3 ^ reg4;
19255 : reg_mask = tmp1 | tmp2;
19256 : reg_mask &= 0xFF;
19257 :
19258 : operands[1] = STRIP_UNARY (operands[1]);
19259 : operands[2] = STRIP_UNARY (operands[2]);
19260 : operands[6] = STRIP_UNARY (operands[6]);
19261 : if (!register_operand (operands[2], V8SImode))
19262 : operands[2] = force_reg (V8SImode, operands[2]);
19263 : if (!register_operand (operands[6], V8SImode))
19264 : operands[6] = force_reg (V8SImode, operands[6]);
19265 : operands[5] = GEN_INT (reg_mask);
19266 : }
19267 : #undef DONE
19268 : #undef FAIL
19269 : static const uint8_t expand_encoding[] = {
19270 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19271 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19272 : 0x25
19273 : };
19274 : return complete_seq (expand_encoding, operands);
19275 : }
19276 :
19277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19278 : extern rtx_insn *gen_split_1939 (rtx_insn *, rtx *);
19279 : rtx_insn *
19280 : gen_split_1939 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19281 : {
19282 : if (dump_file)
19283 : fprintf (dump_file, "Splitting with gen_split_1939 (sse.md:14142)\n");
19284 : start_sequence ();
19285 : #define FAIL return (end_sequence (), nullptr)
19286 : #define DONE return end_sequence ()
19287 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19288 : {
19289 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19290 : int reg6 = 0xF0;
19291 : int reg2 = 0xCC;
19292 : int reg1 = 0xAA;
19293 : int reg3 = 0;
19294 : int reg4 = 0;
19295 : int reg_mask, tmp1, tmp2;
19296 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19297 : STRIP_UNARY (operands[4])))
19298 : {
19299 : reg4 = reg1;
19300 : reg3 = reg6;
19301 : operands[6] = operands[3];
19302 : }
19303 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19304 : STRIP_UNARY (operands[4])))
19305 : {
19306 : reg4 = reg2;
19307 : reg3 = reg6;
19308 : operands[6] = operands[3];
19309 : }
19310 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19311 : STRIP_UNARY (operands[3])))
19312 : {
19313 : reg4 = reg6;
19314 : reg3 = reg1;
19315 : operands[6] = operands[4];
19316 : }
19317 : else
19318 : {
19319 : reg4 = reg6;
19320 : reg3 = reg2;
19321 : operands[6] = operands[4];
19322 : }
19323 :
19324 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19325 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19326 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19327 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19328 :
19329 : tmp1 = reg1 | reg2;
19330 : tmp2 = reg3 ^ reg4;
19331 : reg_mask = tmp1 ^ tmp2;
19332 : reg_mask &= 0xFF;
19333 :
19334 : operands[1] = STRIP_UNARY (operands[1]);
19335 : operands[2] = STRIP_UNARY (operands[2]);
19336 : operands[6] = STRIP_UNARY (operands[6]);
19337 : if (!register_operand (operands[2], V8SImode))
19338 : operands[2] = force_reg (V8SImode, operands[2]);
19339 : if (!register_operand (operands[6], V8SImode))
19340 : operands[6] = force_reg (V8SImode, operands[6]);
19341 : operands[5] = GEN_INT (reg_mask);
19342 : }
19343 : #undef DONE
19344 : #undef FAIL
19345 : static const uint8_t expand_encoding[] = {
19346 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19347 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19348 : 0x25
19349 : };
19350 : return complete_seq (expand_encoding, operands);
19351 : }
19352 :
19353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19354 : extern rtx_insn *gen_split_1949 (rtx_insn *, rtx *);
19355 : rtx_insn *
19356 : gen_split_1949 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19357 : {
19358 : if (dump_file)
19359 : fprintf (dump_file, "Splitting with gen_split_1949 (sse.md:14142)\n");
19360 : start_sequence ();
19361 : #define FAIL return (end_sequence (), nullptr)
19362 : #define DONE return end_sequence ()
19363 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19364 : {
19365 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19366 : int reg6 = 0xF0;
19367 : int reg2 = 0xCC;
19368 : int reg1 = 0xAA;
19369 : int reg3 = 0;
19370 : int reg4 = 0;
19371 : int reg_mask, tmp1, tmp2;
19372 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19373 : STRIP_UNARY (operands[4])))
19374 : {
19375 : reg4 = reg1;
19376 : reg3 = reg6;
19377 : operands[6] = operands[3];
19378 : }
19379 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19380 : STRIP_UNARY (operands[4])))
19381 : {
19382 : reg4 = reg2;
19383 : reg3 = reg6;
19384 : operands[6] = operands[3];
19385 : }
19386 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19387 : STRIP_UNARY (operands[3])))
19388 : {
19389 : reg4 = reg6;
19390 : reg3 = reg1;
19391 : operands[6] = operands[4];
19392 : }
19393 : else
19394 : {
19395 : reg4 = reg6;
19396 : reg3 = reg2;
19397 : operands[6] = operands[4];
19398 : }
19399 :
19400 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19401 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19402 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19403 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19404 :
19405 : tmp1 = reg1 & reg2;
19406 : tmp2 = reg3 & reg4;
19407 : reg_mask = tmp1 & tmp2;
19408 : reg_mask &= 0xFF;
19409 :
19410 : operands[1] = STRIP_UNARY (operands[1]);
19411 : operands[2] = STRIP_UNARY (operands[2]);
19412 : operands[6] = STRIP_UNARY (operands[6]);
19413 : if (!register_operand (operands[2], V4SImode))
19414 : operands[2] = force_reg (V4SImode, operands[2]);
19415 : if (!register_operand (operands[6], V4SImode))
19416 : operands[6] = force_reg (V4SImode, operands[6]);
19417 : operands[5] = GEN_INT (reg_mask);
19418 : }
19419 : #undef DONE
19420 : #undef FAIL
19421 : static const uint8_t expand_encoding[] = {
19422 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19423 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19424 : 0x25
19425 : };
19426 : return complete_seq (expand_encoding, operands);
19427 : }
19428 :
19429 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19430 : extern rtx_insn *gen_split_1959 (rtx_insn *, rtx *);
19431 : rtx_insn *
19432 : gen_split_1959 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19433 : {
19434 : if (dump_file)
19435 : fprintf (dump_file, "Splitting with gen_split_1959 (sse.md:14142)\n");
19436 : start_sequence ();
19437 : #define FAIL return (end_sequence (), nullptr)
19438 : #define DONE return end_sequence ()
19439 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19440 : {
19441 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19442 : int reg6 = 0xF0;
19443 : int reg2 = 0xCC;
19444 : int reg1 = 0xAA;
19445 : int reg3 = 0;
19446 : int reg4 = 0;
19447 : int reg_mask, tmp1, tmp2;
19448 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19449 : STRIP_UNARY (operands[4])))
19450 : {
19451 : reg4 = reg1;
19452 : reg3 = reg6;
19453 : operands[6] = operands[3];
19454 : }
19455 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19456 : STRIP_UNARY (operands[4])))
19457 : {
19458 : reg4 = reg2;
19459 : reg3 = reg6;
19460 : operands[6] = operands[3];
19461 : }
19462 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19463 : STRIP_UNARY (operands[3])))
19464 : {
19465 : reg4 = reg6;
19466 : reg3 = reg1;
19467 : operands[6] = operands[4];
19468 : }
19469 : else
19470 : {
19471 : reg4 = reg6;
19472 : reg3 = reg2;
19473 : operands[6] = operands[4];
19474 : }
19475 :
19476 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19477 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19478 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19479 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19480 :
19481 : tmp1 = reg1 | reg2;
19482 : tmp2 = reg3 & reg4;
19483 : reg_mask = tmp1 | tmp2;
19484 : reg_mask &= 0xFF;
19485 :
19486 : operands[1] = STRIP_UNARY (operands[1]);
19487 : operands[2] = STRIP_UNARY (operands[2]);
19488 : operands[6] = STRIP_UNARY (operands[6]);
19489 : if (!register_operand (operands[2], V4SImode))
19490 : operands[2] = force_reg (V4SImode, operands[2]);
19491 : if (!register_operand (operands[6], V4SImode))
19492 : operands[6] = force_reg (V4SImode, operands[6]);
19493 : operands[5] = GEN_INT (reg_mask);
19494 : }
19495 : #undef DONE
19496 : #undef FAIL
19497 : static const uint8_t expand_encoding[] = {
19498 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19499 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19500 : 0x25
19501 : };
19502 : return complete_seq (expand_encoding, operands);
19503 : }
19504 :
19505 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19506 : extern rtx_insn *gen_split_1969 (rtx_insn *, rtx *);
19507 : rtx_insn *
19508 : gen_split_1969 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19509 : {
19510 : if (dump_file)
19511 : fprintf (dump_file, "Splitting with gen_split_1969 (sse.md:14142)\n");
19512 : start_sequence ();
19513 : #define FAIL return (end_sequence (), nullptr)
19514 : #define DONE return end_sequence ()
19515 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19516 : {
19517 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19518 : int reg6 = 0xF0;
19519 : int reg2 = 0xCC;
19520 : int reg1 = 0xAA;
19521 : int reg3 = 0;
19522 : int reg4 = 0;
19523 : int reg_mask, tmp1, tmp2;
19524 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19525 : STRIP_UNARY (operands[4])))
19526 : {
19527 : reg4 = reg1;
19528 : reg3 = reg6;
19529 : operands[6] = operands[3];
19530 : }
19531 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19532 : STRIP_UNARY (operands[4])))
19533 : {
19534 : reg4 = reg2;
19535 : reg3 = reg6;
19536 : operands[6] = operands[3];
19537 : }
19538 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19539 : STRIP_UNARY (operands[3])))
19540 : {
19541 : reg4 = reg6;
19542 : reg3 = reg1;
19543 : operands[6] = operands[4];
19544 : }
19545 : else
19546 : {
19547 : reg4 = reg6;
19548 : reg3 = reg2;
19549 : operands[6] = operands[4];
19550 : }
19551 :
19552 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19553 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19554 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19555 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19556 :
19557 : tmp1 = reg1 ^ reg2;
19558 : tmp2 = reg3 & reg4;
19559 : reg_mask = tmp1 ^ tmp2;
19560 : reg_mask &= 0xFF;
19561 :
19562 : operands[1] = STRIP_UNARY (operands[1]);
19563 : operands[2] = STRIP_UNARY (operands[2]);
19564 : operands[6] = STRIP_UNARY (operands[6]);
19565 : if (!register_operand (operands[2], V4SImode))
19566 : operands[2] = force_reg (V4SImode, operands[2]);
19567 : if (!register_operand (operands[6], V4SImode))
19568 : operands[6] = force_reg (V4SImode, operands[6]);
19569 : operands[5] = GEN_INT (reg_mask);
19570 : }
19571 : #undef DONE
19572 : #undef FAIL
19573 : static const uint8_t expand_encoding[] = {
19574 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19575 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19576 : 0x25
19577 : };
19578 : return complete_seq (expand_encoding, operands);
19579 : }
19580 :
19581 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19582 : extern rtx_insn *gen_split_1979 (rtx_insn *, rtx *);
19583 : rtx_insn *
19584 : gen_split_1979 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19585 : {
19586 : if (dump_file)
19587 : fprintf (dump_file, "Splitting with gen_split_1979 (sse.md:14142)\n");
19588 : start_sequence ();
19589 : #define FAIL return (end_sequence (), nullptr)
19590 : #define DONE return end_sequence ()
19591 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19592 : {
19593 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19594 : int reg6 = 0xF0;
19595 : int reg2 = 0xCC;
19596 : int reg1 = 0xAA;
19597 : int reg3 = 0;
19598 : int reg4 = 0;
19599 : int reg_mask, tmp1, tmp2;
19600 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19601 : STRIP_UNARY (operands[4])))
19602 : {
19603 : reg4 = reg1;
19604 : reg3 = reg6;
19605 : operands[6] = operands[3];
19606 : }
19607 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19608 : STRIP_UNARY (operands[4])))
19609 : {
19610 : reg4 = reg2;
19611 : reg3 = reg6;
19612 : operands[6] = operands[3];
19613 : }
19614 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19615 : STRIP_UNARY (operands[3])))
19616 : {
19617 : reg4 = reg6;
19618 : reg3 = reg1;
19619 : operands[6] = operands[4];
19620 : }
19621 : else
19622 : {
19623 : reg4 = reg6;
19624 : reg3 = reg2;
19625 : operands[6] = operands[4];
19626 : }
19627 :
19628 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19629 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19630 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19631 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19632 :
19633 : tmp1 = reg1 & reg2;
19634 : tmp2 = reg3 | reg4;
19635 : reg_mask = tmp1 & tmp2;
19636 : reg_mask &= 0xFF;
19637 :
19638 : operands[1] = STRIP_UNARY (operands[1]);
19639 : operands[2] = STRIP_UNARY (operands[2]);
19640 : operands[6] = STRIP_UNARY (operands[6]);
19641 : if (!register_operand (operands[2], V8DImode))
19642 : operands[2] = force_reg (V8DImode, operands[2]);
19643 : if (!register_operand (operands[6], V8DImode))
19644 : operands[6] = force_reg (V8DImode, operands[6]);
19645 : operands[5] = GEN_INT (reg_mask);
19646 : }
19647 : #undef DONE
19648 : #undef FAIL
19649 : static const uint8_t expand_encoding[] = {
19650 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19651 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19652 : 0x25
19653 : };
19654 : return complete_seq (expand_encoding, operands);
19655 : }
19656 :
19657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19658 : extern rtx_insn *gen_split_1989 (rtx_insn *, rtx *);
19659 : rtx_insn *
19660 : gen_split_1989 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19661 : {
19662 : if (dump_file)
19663 : fprintf (dump_file, "Splitting with gen_split_1989 (sse.md:14142)\n");
19664 : start_sequence ();
19665 : #define FAIL return (end_sequence (), nullptr)
19666 : #define DONE return end_sequence ()
19667 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19668 : {
19669 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19670 : int reg6 = 0xF0;
19671 : int reg2 = 0xCC;
19672 : int reg1 = 0xAA;
19673 : int reg3 = 0;
19674 : int reg4 = 0;
19675 : int reg_mask, tmp1, tmp2;
19676 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19677 : STRIP_UNARY (operands[4])))
19678 : {
19679 : reg4 = reg1;
19680 : reg3 = reg6;
19681 : operands[6] = operands[3];
19682 : }
19683 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19684 : STRIP_UNARY (operands[4])))
19685 : {
19686 : reg4 = reg2;
19687 : reg3 = reg6;
19688 : operands[6] = operands[3];
19689 : }
19690 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19691 : STRIP_UNARY (operands[3])))
19692 : {
19693 : reg4 = reg6;
19694 : reg3 = reg1;
19695 : operands[6] = operands[4];
19696 : }
19697 : else
19698 : {
19699 : reg4 = reg6;
19700 : reg3 = reg2;
19701 : operands[6] = operands[4];
19702 : }
19703 :
19704 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19705 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19706 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19707 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19708 :
19709 : tmp1 = reg1 | reg2;
19710 : tmp2 = reg3 | reg4;
19711 : reg_mask = tmp1 | tmp2;
19712 : reg_mask &= 0xFF;
19713 :
19714 : operands[1] = STRIP_UNARY (operands[1]);
19715 : operands[2] = STRIP_UNARY (operands[2]);
19716 : operands[6] = STRIP_UNARY (operands[6]);
19717 : if (!register_operand (operands[2], V8DImode))
19718 : operands[2] = force_reg (V8DImode, operands[2]);
19719 : if (!register_operand (operands[6], V8DImode))
19720 : operands[6] = force_reg (V8DImode, operands[6]);
19721 : operands[5] = GEN_INT (reg_mask);
19722 : }
19723 : #undef DONE
19724 : #undef FAIL
19725 : static const uint8_t expand_encoding[] = {
19726 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19727 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19728 : 0x25
19729 : };
19730 : return complete_seq (expand_encoding, operands);
19731 : }
19732 :
19733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19734 : extern rtx_insn *gen_split_1999 (rtx_insn *, rtx *);
19735 : rtx_insn *
19736 : gen_split_1999 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19737 : {
19738 : if (dump_file)
19739 : fprintf (dump_file, "Splitting with gen_split_1999 (sse.md:14142)\n");
19740 : start_sequence ();
19741 : #define FAIL return (end_sequence (), nullptr)
19742 : #define DONE return end_sequence ()
19743 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19744 : {
19745 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19746 : int reg6 = 0xF0;
19747 : int reg2 = 0xCC;
19748 : int reg1 = 0xAA;
19749 : int reg3 = 0;
19750 : int reg4 = 0;
19751 : int reg_mask, tmp1, tmp2;
19752 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19753 : STRIP_UNARY (operands[4])))
19754 : {
19755 : reg4 = reg1;
19756 : reg3 = reg6;
19757 : operands[6] = operands[3];
19758 : }
19759 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19760 : STRIP_UNARY (operands[4])))
19761 : {
19762 : reg4 = reg2;
19763 : reg3 = reg6;
19764 : operands[6] = operands[3];
19765 : }
19766 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19767 : STRIP_UNARY (operands[3])))
19768 : {
19769 : reg4 = reg6;
19770 : reg3 = reg1;
19771 : operands[6] = operands[4];
19772 : }
19773 : else
19774 : {
19775 : reg4 = reg6;
19776 : reg3 = reg2;
19777 : operands[6] = operands[4];
19778 : }
19779 :
19780 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19781 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19782 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19783 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19784 :
19785 : tmp1 = reg1 ^ reg2;
19786 : tmp2 = reg3 | reg4;
19787 : reg_mask = tmp1 ^ tmp2;
19788 : reg_mask &= 0xFF;
19789 :
19790 : operands[1] = STRIP_UNARY (operands[1]);
19791 : operands[2] = STRIP_UNARY (operands[2]);
19792 : operands[6] = STRIP_UNARY (operands[6]);
19793 : if (!register_operand (operands[2], V8DImode))
19794 : operands[2] = force_reg (V8DImode, operands[2]);
19795 : if (!register_operand (operands[6], V8DImode))
19796 : operands[6] = force_reg (V8DImode, operands[6]);
19797 : operands[5] = GEN_INT (reg_mask);
19798 : }
19799 : #undef DONE
19800 : #undef FAIL
19801 : static const uint8_t expand_encoding[] = {
19802 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19803 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19804 : 0x25
19805 : };
19806 : return complete_seq (expand_encoding, operands);
19807 : }
19808 :
19809 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19810 : extern rtx_insn *gen_split_2009 (rtx_insn *, rtx *);
19811 : rtx_insn *
19812 : gen_split_2009 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19813 : {
19814 : if (dump_file)
19815 : fprintf (dump_file, "Splitting with gen_split_2009 (sse.md:14142)\n");
19816 : start_sequence ();
19817 : #define FAIL return (end_sequence (), nullptr)
19818 : #define DONE return end_sequence ()
19819 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19820 : {
19821 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19822 : int reg6 = 0xF0;
19823 : int reg2 = 0xCC;
19824 : int reg1 = 0xAA;
19825 : int reg3 = 0;
19826 : int reg4 = 0;
19827 : int reg_mask, tmp1, tmp2;
19828 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19829 : STRIP_UNARY (operands[4])))
19830 : {
19831 : reg4 = reg1;
19832 : reg3 = reg6;
19833 : operands[6] = operands[3];
19834 : }
19835 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19836 : STRIP_UNARY (operands[4])))
19837 : {
19838 : reg4 = reg2;
19839 : reg3 = reg6;
19840 : operands[6] = operands[3];
19841 : }
19842 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19843 : STRIP_UNARY (operands[3])))
19844 : {
19845 : reg4 = reg6;
19846 : reg3 = reg1;
19847 : operands[6] = operands[4];
19848 : }
19849 : else
19850 : {
19851 : reg4 = reg6;
19852 : reg3 = reg2;
19853 : operands[6] = operands[4];
19854 : }
19855 :
19856 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19857 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19858 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19859 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19860 :
19861 : tmp1 = reg1 & reg2;
19862 : tmp2 = reg3 ^ reg4;
19863 : reg_mask = tmp1 & tmp2;
19864 : reg_mask &= 0xFF;
19865 :
19866 : operands[1] = STRIP_UNARY (operands[1]);
19867 : operands[2] = STRIP_UNARY (operands[2]);
19868 : operands[6] = STRIP_UNARY (operands[6]);
19869 : if (!register_operand (operands[2], V4DImode))
19870 : operands[2] = force_reg (V4DImode, operands[2]);
19871 : if (!register_operand (operands[6], V4DImode))
19872 : operands[6] = force_reg (V4DImode, operands[6]);
19873 : operands[5] = GEN_INT (reg_mask);
19874 : }
19875 : #undef DONE
19876 : #undef FAIL
19877 : static const uint8_t expand_encoding[] = {
19878 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19879 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19880 : 0x25
19881 : };
19882 : return complete_seq (expand_encoding, operands);
19883 : }
19884 :
19885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19886 : extern rtx_insn *gen_split_2019 (rtx_insn *, rtx *);
19887 : rtx_insn *
19888 : gen_split_2019 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19889 : {
19890 : if (dump_file)
19891 : fprintf (dump_file, "Splitting with gen_split_2019 (sse.md:14142)\n");
19892 : start_sequence ();
19893 : #define FAIL return (end_sequence (), nullptr)
19894 : #define DONE return end_sequence ()
19895 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19896 : {
19897 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19898 : int reg6 = 0xF0;
19899 : int reg2 = 0xCC;
19900 : int reg1 = 0xAA;
19901 : int reg3 = 0;
19902 : int reg4 = 0;
19903 : int reg_mask, tmp1, tmp2;
19904 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19905 : STRIP_UNARY (operands[4])))
19906 : {
19907 : reg4 = reg1;
19908 : reg3 = reg6;
19909 : operands[6] = operands[3];
19910 : }
19911 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19912 : STRIP_UNARY (operands[4])))
19913 : {
19914 : reg4 = reg2;
19915 : reg3 = reg6;
19916 : operands[6] = operands[3];
19917 : }
19918 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19919 : STRIP_UNARY (operands[3])))
19920 : {
19921 : reg4 = reg6;
19922 : reg3 = reg1;
19923 : operands[6] = operands[4];
19924 : }
19925 : else
19926 : {
19927 : reg4 = reg6;
19928 : reg3 = reg2;
19929 : operands[6] = operands[4];
19930 : }
19931 :
19932 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19933 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19934 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19935 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19936 :
19937 : tmp1 = reg1 | reg2;
19938 : tmp2 = reg3 ^ reg4;
19939 : reg_mask = tmp1 | tmp2;
19940 : reg_mask &= 0xFF;
19941 :
19942 : operands[1] = STRIP_UNARY (operands[1]);
19943 : operands[2] = STRIP_UNARY (operands[2]);
19944 : operands[6] = STRIP_UNARY (operands[6]);
19945 : if (!register_operand (operands[2], V4DImode))
19946 : operands[2] = force_reg (V4DImode, operands[2]);
19947 : if (!register_operand (operands[6], V4DImode))
19948 : operands[6] = force_reg (V4DImode, operands[6]);
19949 : operands[5] = GEN_INT (reg_mask);
19950 : }
19951 : #undef DONE
19952 : #undef FAIL
19953 : static const uint8_t expand_encoding[] = {
19954 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19955 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19956 : 0x25
19957 : };
19958 : return complete_seq (expand_encoding, operands);
19959 : }
19960 :
19961 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19962 : extern rtx_insn *gen_split_2029 (rtx_insn *, rtx *);
19963 : rtx_insn *
19964 : gen_split_2029 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19965 : {
19966 : if (dump_file)
19967 : fprintf (dump_file, "Splitting with gen_split_2029 (sse.md:14142)\n");
19968 : start_sequence ();
19969 : #define FAIL return (end_sequence (), nullptr)
19970 : #define DONE return end_sequence ()
19971 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19972 : {
19973 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19974 : int reg6 = 0xF0;
19975 : int reg2 = 0xCC;
19976 : int reg1 = 0xAA;
19977 : int reg3 = 0;
19978 : int reg4 = 0;
19979 : int reg_mask, tmp1, tmp2;
19980 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19981 : STRIP_UNARY (operands[4])))
19982 : {
19983 : reg4 = reg1;
19984 : reg3 = reg6;
19985 : operands[6] = operands[3];
19986 : }
19987 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19988 : STRIP_UNARY (operands[4])))
19989 : {
19990 : reg4 = reg2;
19991 : reg3 = reg6;
19992 : operands[6] = operands[3];
19993 : }
19994 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19995 : STRIP_UNARY (operands[3])))
19996 : {
19997 : reg4 = reg6;
19998 : reg3 = reg1;
19999 : operands[6] = operands[4];
20000 : }
20001 : else
20002 : {
20003 : reg4 = reg6;
20004 : reg3 = reg2;
20005 : operands[6] = operands[4];
20006 : }
20007 :
20008 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20009 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20010 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20011 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20012 :
20013 : tmp1 = reg1 ^ reg2;
20014 : tmp2 = reg3 ^ reg4;
20015 : reg_mask = tmp1 ^ tmp2;
20016 : reg_mask &= 0xFF;
20017 :
20018 : operands[1] = STRIP_UNARY (operands[1]);
20019 : operands[2] = STRIP_UNARY (operands[2]);
20020 : operands[6] = STRIP_UNARY (operands[6]);
20021 : if (!register_operand (operands[2], V4DImode))
20022 : operands[2] = force_reg (V4DImode, operands[2]);
20023 : if (!register_operand (operands[6], V4DImode))
20024 : operands[6] = force_reg (V4DImode, operands[6]);
20025 : operands[5] = GEN_INT (reg_mask);
20026 : }
20027 : #undef DONE
20028 : #undef FAIL
20029 : static const uint8_t expand_encoding[] = {
20030 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
20031 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20032 : 0x25
20033 : };
20034 : return complete_seq (expand_encoding, operands);
20035 : }
20036 :
20037 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20038 : extern rtx_insn *gen_split_2039 (rtx_insn *, rtx *);
20039 : rtx_insn *
20040 : gen_split_2039 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20041 : {
20042 : if (dump_file)
20043 : fprintf (dump_file, "Splitting with gen_split_2039 (sse.md:14142)\n");
20044 : start_sequence ();
20045 : #define FAIL return (end_sequence (), nullptr)
20046 : #define DONE return end_sequence ()
20047 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20048 : {
20049 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20050 : int reg6 = 0xF0;
20051 : int reg2 = 0xCC;
20052 : int reg1 = 0xAA;
20053 : int reg3 = 0;
20054 : int reg4 = 0;
20055 : int reg_mask, tmp1, tmp2;
20056 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20057 : STRIP_UNARY (operands[4])))
20058 : {
20059 : reg4 = reg1;
20060 : reg3 = reg6;
20061 : operands[6] = operands[3];
20062 : }
20063 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20064 : STRIP_UNARY (operands[4])))
20065 : {
20066 : reg4 = reg2;
20067 : reg3 = reg6;
20068 : operands[6] = operands[3];
20069 : }
20070 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20071 : STRIP_UNARY (operands[3])))
20072 : {
20073 : reg4 = reg6;
20074 : reg3 = reg1;
20075 : operands[6] = operands[4];
20076 : }
20077 : else
20078 : {
20079 : reg4 = reg6;
20080 : reg3 = reg2;
20081 : operands[6] = operands[4];
20082 : }
20083 :
20084 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20085 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20086 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20087 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20088 :
20089 : tmp1 = reg1 | reg2;
20090 : tmp2 = reg3 & reg4;
20091 : reg_mask = tmp1 & tmp2;
20092 : reg_mask &= 0xFF;
20093 :
20094 : operands[1] = STRIP_UNARY (operands[1]);
20095 : operands[2] = STRIP_UNARY (operands[2]);
20096 : operands[6] = STRIP_UNARY (operands[6]);
20097 : if (!register_operand (operands[2], V2DImode))
20098 : operands[2] = force_reg (V2DImode, operands[2]);
20099 : if (!register_operand (operands[6], V2DImode))
20100 : operands[6] = force_reg (V2DImode, operands[6]);
20101 : operands[5] = GEN_INT (reg_mask);
20102 : }
20103 : #undef DONE
20104 : #undef FAIL
20105 : static const uint8_t expand_encoding[] = {
20106 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20107 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20108 : 0x25
20109 : };
20110 : return complete_seq (expand_encoding, operands);
20111 : }
20112 :
20113 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20114 : extern rtx_insn *gen_split_2049 (rtx_insn *, rtx *);
20115 : rtx_insn *
20116 : gen_split_2049 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20117 : {
20118 : if (dump_file)
20119 : fprintf (dump_file, "Splitting with gen_split_2049 (sse.md:14142)\n");
20120 : start_sequence ();
20121 : #define FAIL return (end_sequence (), nullptr)
20122 : #define DONE return end_sequence ()
20123 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20124 : {
20125 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20126 : int reg6 = 0xF0;
20127 : int reg2 = 0xCC;
20128 : int reg1 = 0xAA;
20129 : int reg3 = 0;
20130 : int reg4 = 0;
20131 : int reg_mask, tmp1, tmp2;
20132 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20133 : STRIP_UNARY (operands[4])))
20134 : {
20135 : reg4 = reg1;
20136 : reg3 = reg6;
20137 : operands[6] = operands[3];
20138 : }
20139 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20140 : STRIP_UNARY (operands[4])))
20141 : {
20142 : reg4 = reg2;
20143 : reg3 = reg6;
20144 : operands[6] = operands[3];
20145 : }
20146 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20147 : STRIP_UNARY (operands[3])))
20148 : {
20149 : reg4 = reg6;
20150 : reg3 = reg1;
20151 : operands[6] = operands[4];
20152 : }
20153 : else
20154 : {
20155 : reg4 = reg6;
20156 : reg3 = reg2;
20157 : operands[6] = operands[4];
20158 : }
20159 :
20160 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20161 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20162 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20163 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20164 :
20165 : tmp1 = reg1 ^ reg2;
20166 : tmp2 = reg3 & reg4;
20167 : reg_mask = tmp1 | tmp2;
20168 : reg_mask &= 0xFF;
20169 :
20170 : operands[1] = STRIP_UNARY (operands[1]);
20171 : operands[2] = STRIP_UNARY (operands[2]);
20172 : operands[6] = STRIP_UNARY (operands[6]);
20173 : if (!register_operand (operands[2], V2DImode))
20174 : operands[2] = force_reg (V2DImode, operands[2]);
20175 : if (!register_operand (operands[6], V2DImode))
20176 : operands[6] = force_reg (V2DImode, operands[6]);
20177 : operands[5] = GEN_INT (reg_mask);
20178 : }
20179 : #undef DONE
20180 : #undef FAIL
20181 : static const uint8_t expand_encoding[] = {
20182 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20183 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20184 : 0x25
20185 : };
20186 : return complete_seq (expand_encoding, operands);
20187 : }
20188 :
20189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20190 : extern rtx_insn *gen_split_2059 (rtx_insn *, rtx *);
20191 : rtx_insn *
20192 : gen_split_2059 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20193 : {
20194 : if (dump_file)
20195 : fprintf (dump_file, "Splitting with gen_split_2059 (sse.md:14142)\n");
20196 : start_sequence ();
20197 : #define FAIL return (end_sequence (), nullptr)
20198 : #define DONE return end_sequence ()
20199 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20200 : {
20201 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20202 : int reg6 = 0xF0;
20203 : int reg2 = 0xCC;
20204 : int reg1 = 0xAA;
20205 : int reg3 = 0;
20206 : int reg4 = 0;
20207 : int reg_mask, tmp1, tmp2;
20208 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20209 : STRIP_UNARY (operands[4])))
20210 : {
20211 : reg4 = reg1;
20212 : reg3 = reg6;
20213 : operands[6] = operands[3];
20214 : }
20215 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20216 : STRIP_UNARY (operands[4])))
20217 : {
20218 : reg4 = reg2;
20219 : reg3 = reg6;
20220 : operands[6] = operands[3];
20221 : }
20222 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20223 : STRIP_UNARY (operands[3])))
20224 : {
20225 : reg4 = reg6;
20226 : reg3 = reg1;
20227 : operands[6] = operands[4];
20228 : }
20229 : else
20230 : {
20231 : reg4 = reg6;
20232 : reg3 = reg2;
20233 : operands[6] = operands[4];
20234 : }
20235 :
20236 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20237 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20238 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20239 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20240 :
20241 : tmp1 = reg1 & reg2;
20242 : tmp2 = reg3 & reg4;
20243 : reg_mask = tmp1 ^ tmp2;
20244 : reg_mask &= 0xFF;
20245 :
20246 : operands[1] = STRIP_UNARY (operands[1]);
20247 : operands[2] = STRIP_UNARY (operands[2]);
20248 : operands[6] = STRIP_UNARY (operands[6]);
20249 : if (!register_operand (operands[2], V32HFmode))
20250 : operands[2] = force_reg (V32HFmode, operands[2]);
20251 : if (!register_operand (operands[6], V32HFmode))
20252 : operands[6] = force_reg (V32HFmode, operands[6]);
20253 : operands[5] = GEN_INT (reg_mask);
20254 : }
20255 : #undef DONE
20256 : #undef FAIL
20257 : static const uint8_t expand_encoding[] = {
20258 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20259 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20260 : 0x25
20261 : };
20262 : return complete_seq (expand_encoding, operands);
20263 : }
20264 :
20265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20266 : extern rtx_insn *gen_split_2069 (rtx_insn *, rtx *);
20267 : rtx_insn *
20268 : gen_split_2069 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20269 : {
20270 : if (dump_file)
20271 : fprintf (dump_file, "Splitting with gen_split_2069 (sse.md:14142)\n");
20272 : start_sequence ();
20273 : #define FAIL return (end_sequence (), nullptr)
20274 : #define DONE return end_sequence ()
20275 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20276 : {
20277 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20278 : int reg6 = 0xF0;
20279 : int reg2 = 0xCC;
20280 : int reg1 = 0xAA;
20281 : int reg3 = 0;
20282 : int reg4 = 0;
20283 : int reg_mask, tmp1, tmp2;
20284 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20285 : STRIP_UNARY (operands[4])))
20286 : {
20287 : reg4 = reg1;
20288 : reg3 = reg6;
20289 : operands[6] = operands[3];
20290 : }
20291 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20292 : STRIP_UNARY (operands[4])))
20293 : {
20294 : reg4 = reg2;
20295 : reg3 = reg6;
20296 : operands[6] = operands[3];
20297 : }
20298 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20299 : STRIP_UNARY (operands[3])))
20300 : {
20301 : reg4 = reg6;
20302 : reg3 = reg1;
20303 : operands[6] = operands[4];
20304 : }
20305 : else
20306 : {
20307 : reg4 = reg6;
20308 : reg3 = reg2;
20309 : operands[6] = operands[4];
20310 : }
20311 :
20312 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20313 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20314 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20315 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20316 :
20317 : tmp1 = reg1 | reg2;
20318 : tmp2 = reg3 | reg4;
20319 : reg_mask = tmp1 & tmp2;
20320 : reg_mask &= 0xFF;
20321 :
20322 : operands[1] = STRIP_UNARY (operands[1]);
20323 : operands[2] = STRIP_UNARY (operands[2]);
20324 : operands[6] = STRIP_UNARY (operands[6]);
20325 : if (!register_operand (operands[2], V32HFmode))
20326 : operands[2] = force_reg (V32HFmode, operands[2]);
20327 : if (!register_operand (operands[6], V32HFmode))
20328 : operands[6] = force_reg (V32HFmode, operands[6]);
20329 : operands[5] = GEN_INT (reg_mask);
20330 : }
20331 : #undef DONE
20332 : #undef FAIL
20333 : static const uint8_t expand_encoding[] = {
20334 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20335 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20336 : 0x25
20337 : };
20338 : return complete_seq (expand_encoding, operands);
20339 : }
20340 :
20341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20342 : extern rtx_insn *gen_split_2079 (rtx_insn *, rtx *);
20343 : rtx_insn *
20344 : gen_split_2079 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20345 : {
20346 : if (dump_file)
20347 : fprintf (dump_file, "Splitting with gen_split_2079 (sse.md:14142)\n");
20348 : start_sequence ();
20349 : #define FAIL return (end_sequence (), nullptr)
20350 : #define DONE return end_sequence ()
20351 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20352 : {
20353 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20354 : int reg6 = 0xF0;
20355 : int reg2 = 0xCC;
20356 : int reg1 = 0xAA;
20357 : int reg3 = 0;
20358 : int reg4 = 0;
20359 : int reg_mask, tmp1, tmp2;
20360 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20361 : STRIP_UNARY (operands[4])))
20362 : {
20363 : reg4 = reg1;
20364 : reg3 = reg6;
20365 : operands[6] = operands[3];
20366 : }
20367 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20368 : STRIP_UNARY (operands[4])))
20369 : {
20370 : reg4 = reg2;
20371 : reg3 = reg6;
20372 : operands[6] = operands[3];
20373 : }
20374 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20375 : STRIP_UNARY (operands[3])))
20376 : {
20377 : reg4 = reg6;
20378 : reg3 = reg1;
20379 : operands[6] = operands[4];
20380 : }
20381 : else
20382 : {
20383 : reg4 = reg6;
20384 : reg3 = reg2;
20385 : operands[6] = operands[4];
20386 : }
20387 :
20388 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20389 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20390 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20391 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20392 :
20393 : tmp1 = reg1 ^ reg2;
20394 : tmp2 = reg3 | reg4;
20395 : reg_mask = tmp1 | tmp2;
20396 : reg_mask &= 0xFF;
20397 :
20398 : operands[1] = STRIP_UNARY (operands[1]);
20399 : operands[2] = STRIP_UNARY (operands[2]);
20400 : operands[6] = STRIP_UNARY (operands[6]);
20401 : if (!register_operand (operands[2], V32HFmode))
20402 : operands[2] = force_reg (V32HFmode, operands[2]);
20403 : if (!register_operand (operands[6], V32HFmode))
20404 : operands[6] = force_reg (V32HFmode, operands[6]);
20405 : operands[5] = GEN_INT (reg_mask);
20406 : }
20407 : #undef DONE
20408 : #undef FAIL
20409 : static const uint8_t expand_encoding[] = {
20410 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20411 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20412 : 0x25
20413 : };
20414 : return complete_seq (expand_encoding, operands);
20415 : }
20416 :
20417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20418 : extern rtx_insn *gen_split_2089 (rtx_insn *, rtx *);
20419 : rtx_insn *
20420 : gen_split_2089 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20421 : {
20422 : if (dump_file)
20423 : fprintf (dump_file, "Splitting with gen_split_2089 (sse.md:14142)\n");
20424 : start_sequence ();
20425 : #define FAIL return (end_sequence (), nullptr)
20426 : #define DONE return end_sequence ()
20427 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20428 : {
20429 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20430 : int reg6 = 0xF0;
20431 : int reg2 = 0xCC;
20432 : int reg1 = 0xAA;
20433 : int reg3 = 0;
20434 : int reg4 = 0;
20435 : int reg_mask, tmp1, tmp2;
20436 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20437 : STRIP_UNARY (operands[4])))
20438 : {
20439 : reg4 = reg1;
20440 : reg3 = reg6;
20441 : operands[6] = operands[3];
20442 : }
20443 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20444 : STRIP_UNARY (operands[4])))
20445 : {
20446 : reg4 = reg2;
20447 : reg3 = reg6;
20448 : operands[6] = operands[3];
20449 : }
20450 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20451 : STRIP_UNARY (operands[3])))
20452 : {
20453 : reg4 = reg6;
20454 : reg3 = reg1;
20455 : operands[6] = operands[4];
20456 : }
20457 : else
20458 : {
20459 : reg4 = reg6;
20460 : reg3 = reg2;
20461 : operands[6] = operands[4];
20462 : }
20463 :
20464 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20465 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20466 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20467 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20468 :
20469 : tmp1 = reg1 & reg2;
20470 : tmp2 = reg3 | reg4;
20471 : reg_mask = tmp1 ^ tmp2;
20472 : reg_mask &= 0xFF;
20473 :
20474 : operands[1] = STRIP_UNARY (operands[1]);
20475 : operands[2] = STRIP_UNARY (operands[2]);
20476 : operands[6] = STRIP_UNARY (operands[6]);
20477 : if (!register_operand (operands[2], V16HFmode))
20478 : operands[2] = force_reg (V16HFmode, operands[2]);
20479 : if (!register_operand (operands[6], V16HFmode))
20480 : operands[6] = force_reg (V16HFmode, operands[6]);
20481 : operands[5] = GEN_INT (reg_mask);
20482 : }
20483 : #undef DONE
20484 : #undef FAIL
20485 : static const uint8_t expand_encoding[] = {
20486 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20487 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20488 : 0x25
20489 : };
20490 : return complete_seq (expand_encoding, operands);
20491 : }
20492 :
20493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20494 : extern rtx_insn *gen_split_2099 (rtx_insn *, rtx *);
20495 : rtx_insn *
20496 : gen_split_2099 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20497 : {
20498 : if (dump_file)
20499 : fprintf (dump_file, "Splitting with gen_split_2099 (sse.md:14142)\n");
20500 : start_sequence ();
20501 : #define FAIL return (end_sequence (), nullptr)
20502 : #define DONE return end_sequence ()
20503 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20504 : {
20505 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20506 : int reg6 = 0xF0;
20507 : int reg2 = 0xCC;
20508 : int reg1 = 0xAA;
20509 : int reg3 = 0;
20510 : int reg4 = 0;
20511 : int reg_mask, tmp1, tmp2;
20512 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20513 : STRIP_UNARY (operands[4])))
20514 : {
20515 : reg4 = reg1;
20516 : reg3 = reg6;
20517 : operands[6] = operands[3];
20518 : }
20519 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20520 : STRIP_UNARY (operands[4])))
20521 : {
20522 : reg4 = reg2;
20523 : reg3 = reg6;
20524 : operands[6] = operands[3];
20525 : }
20526 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20527 : STRIP_UNARY (operands[3])))
20528 : {
20529 : reg4 = reg6;
20530 : reg3 = reg1;
20531 : operands[6] = operands[4];
20532 : }
20533 : else
20534 : {
20535 : reg4 = reg6;
20536 : reg3 = reg2;
20537 : operands[6] = operands[4];
20538 : }
20539 :
20540 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20541 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20542 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20543 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20544 :
20545 : tmp1 = reg1 | reg2;
20546 : tmp2 = reg3 ^ reg4;
20547 : reg_mask = tmp1 & tmp2;
20548 : reg_mask &= 0xFF;
20549 :
20550 : operands[1] = STRIP_UNARY (operands[1]);
20551 : operands[2] = STRIP_UNARY (operands[2]);
20552 : operands[6] = STRIP_UNARY (operands[6]);
20553 : if (!register_operand (operands[2], V16HFmode))
20554 : operands[2] = force_reg (V16HFmode, operands[2]);
20555 : if (!register_operand (operands[6], V16HFmode))
20556 : operands[6] = force_reg (V16HFmode, operands[6]);
20557 : operands[5] = GEN_INT (reg_mask);
20558 : }
20559 : #undef DONE
20560 : #undef FAIL
20561 : static const uint8_t expand_encoding[] = {
20562 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20563 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20564 : 0x25
20565 : };
20566 : return complete_seq (expand_encoding, operands);
20567 : }
20568 :
20569 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20570 : extern rtx_insn *gen_split_2109 (rtx_insn *, rtx *);
20571 : rtx_insn *
20572 : gen_split_2109 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20573 : {
20574 : if (dump_file)
20575 : fprintf (dump_file, "Splitting with gen_split_2109 (sse.md:14142)\n");
20576 : start_sequence ();
20577 : #define FAIL return (end_sequence (), nullptr)
20578 : #define DONE return end_sequence ()
20579 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20580 : {
20581 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20582 : int reg6 = 0xF0;
20583 : int reg2 = 0xCC;
20584 : int reg1 = 0xAA;
20585 : int reg3 = 0;
20586 : int reg4 = 0;
20587 : int reg_mask, tmp1, tmp2;
20588 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20589 : STRIP_UNARY (operands[4])))
20590 : {
20591 : reg4 = reg1;
20592 : reg3 = reg6;
20593 : operands[6] = operands[3];
20594 : }
20595 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20596 : STRIP_UNARY (operands[4])))
20597 : {
20598 : reg4 = reg2;
20599 : reg3 = reg6;
20600 : operands[6] = operands[3];
20601 : }
20602 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20603 : STRIP_UNARY (operands[3])))
20604 : {
20605 : reg4 = reg6;
20606 : reg3 = reg1;
20607 : operands[6] = operands[4];
20608 : }
20609 : else
20610 : {
20611 : reg4 = reg6;
20612 : reg3 = reg2;
20613 : operands[6] = operands[4];
20614 : }
20615 :
20616 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20617 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20618 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20619 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20620 :
20621 : tmp1 = reg1 ^ reg2;
20622 : tmp2 = reg3 ^ reg4;
20623 : reg_mask = tmp1 | tmp2;
20624 : reg_mask &= 0xFF;
20625 :
20626 : operands[1] = STRIP_UNARY (operands[1]);
20627 : operands[2] = STRIP_UNARY (operands[2]);
20628 : operands[6] = STRIP_UNARY (operands[6]);
20629 : if (!register_operand (operands[2], V16HFmode))
20630 : operands[2] = force_reg (V16HFmode, operands[2]);
20631 : if (!register_operand (operands[6], V16HFmode))
20632 : operands[6] = force_reg (V16HFmode, operands[6]);
20633 : operands[5] = GEN_INT (reg_mask);
20634 : }
20635 : #undef DONE
20636 : #undef FAIL
20637 : static const uint8_t expand_encoding[] = {
20638 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20639 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20640 : 0x25
20641 : };
20642 : return complete_seq (expand_encoding, operands);
20643 : }
20644 :
20645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20646 : extern rtx_insn *gen_split_2119 (rtx_insn *, rtx *);
20647 : rtx_insn *
20648 : gen_split_2119 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20649 : {
20650 : if (dump_file)
20651 : fprintf (dump_file, "Splitting with gen_split_2119 (sse.md:14142)\n");
20652 : start_sequence ();
20653 : #define FAIL return (end_sequence (), nullptr)
20654 : #define DONE return end_sequence ()
20655 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20656 : {
20657 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20658 : int reg6 = 0xF0;
20659 : int reg2 = 0xCC;
20660 : int reg1 = 0xAA;
20661 : int reg3 = 0;
20662 : int reg4 = 0;
20663 : int reg_mask, tmp1, tmp2;
20664 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20665 : STRIP_UNARY (operands[4])))
20666 : {
20667 : reg4 = reg1;
20668 : reg3 = reg6;
20669 : operands[6] = operands[3];
20670 : }
20671 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20672 : STRIP_UNARY (operands[4])))
20673 : {
20674 : reg4 = reg2;
20675 : reg3 = reg6;
20676 : operands[6] = operands[3];
20677 : }
20678 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20679 : STRIP_UNARY (operands[3])))
20680 : {
20681 : reg4 = reg6;
20682 : reg3 = reg1;
20683 : operands[6] = operands[4];
20684 : }
20685 : else
20686 : {
20687 : reg4 = reg6;
20688 : reg3 = reg2;
20689 : operands[6] = operands[4];
20690 : }
20691 :
20692 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20693 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20694 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20695 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20696 :
20697 : tmp1 = reg1 & reg2;
20698 : tmp2 = reg3 ^ reg4;
20699 : reg_mask = tmp1 ^ tmp2;
20700 : reg_mask &= 0xFF;
20701 :
20702 : operands[1] = STRIP_UNARY (operands[1]);
20703 : operands[2] = STRIP_UNARY (operands[2]);
20704 : operands[6] = STRIP_UNARY (operands[6]);
20705 : if (!register_operand (operands[2], V8HFmode))
20706 : operands[2] = force_reg (V8HFmode, operands[2]);
20707 : if (!register_operand (operands[6], V8HFmode))
20708 : operands[6] = force_reg (V8HFmode, operands[6]);
20709 : operands[5] = GEN_INT (reg_mask);
20710 : }
20711 : #undef DONE
20712 : #undef FAIL
20713 : static const uint8_t expand_encoding[] = {
20714 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20715 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20716 : 0x25
20717 : };
20718 : return complete_seq (expand_encoding, operands);
20719 : }
20720 :
20721 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20722 : extern rtx_insn *gen_split_2129 (rtx_insn *, rtx *);
20723 : rtx_insn *
20724 : gen_split_2129 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20725 : {
20726 : if (dump_file)
20727 : fprintf (dump_file, "Splitting with gen_split_2129 (sse.md:14142)\n");
20728 : start_sequence ();
20729 : #define FAIL return (end_sequence (), nullptr)
20730 : #define DONE return end_sequence ()
20731 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20732 : {
20733 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20734 : int reg6 = 0xF0;
20735 : int reg2 = 0xCC;
20736 : int reg1 = 0xAA;
20737 : int reg3 = 0;
20738 : int reg4 = 0;
20739 : int reg_mask, tmp1, tmp2;
20740 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20741 : STRIP_UNARY (operands[4])))
20742 : {
20743 : reg4 = reg1;
20744 : reg3 = reg6;
20745 : operands[6] = operands[3];
20746 : }
20747 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20748 : STRIP_UNARY (operands[4])))
20749 : {
20750 : reg4 = reg2;
20751 : reg3 = reg6;
20752 : operands[6] = operands[3];
20753 : }
20754 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20755 : STRIP_UNARY (operands[3])))
20756 : {
20757 : reg4 = reg6;
20758 : reg3 = reg1;
20759 : operands[6] = operands[4];
20760 : }
20761 : else
20762 : {
20763 : reg4 = reg6;
20764 : reg3 = reg2;
20765 : operands[6] = operands[4];
20766 : }
20767 :
20768 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20769 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20770 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20771 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20772 :
20773 : tmp1 = reg1 ^ reg2;
20774 : tmp2 = reg3 & reg4;
20775 : reg_mask = tmp1 & tmp2;
20776 : reg_mask &= 0xFF;
20777 :
20778 : operands[1] = STRIP_UNARY (operands[1]);
20779 : operands[2] = STRIP_UNARY (operands[2]);
20780 : operands[6] = STRIP_UNARY (operands[6]);
20781 : if (!register_operand (operands[2], V8HFmode))
20782 : operands[2] = force_reg (V8HFmode, operands[2]);
20783 : if (!register_operand (operands[6], V8HFmode))
20784 : operands[6] = force_reg (V8HFmode, operands[6]);
20785 : operands[5] = GEN_INT (reg_mask);
20786 : }
20787 : #undef DONE
20788 : #undef FAIL
20789 : static const uint8_t expand_encoding[] = {
20790 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20791 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20792 : 0x25
20793 : };
20794 : return complete_seq (expand_encoding, operands);
20795 : }
20796 :
20797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20798 : extern rtx_insn *gen_split_2139 (rtx_insn *, rtx *);
20799 : rtx_insn *
20800 : gen_split_2139 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20801 : {
20802 : if (dump_file)
20803 : fprintf (dump_file, "Splitting with gen_split_2139 (sse.md:14142)\n");
20804 : start_sequence ();
20805 : #define FAIL return (end_sequence (), nullptr)
20806 : #define DONE return end_sequence ()
20807 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20808 : {
20809 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20810 : int reg6 = 0xF0;
20811 : int reg2 = 0xCC;
20812 : int reg1 = 0xAA;
20813 : int reg3 = 0;
20814 : int reg4 = 0;
20815 : int reg_mask, tmp1, tmp2;
20816 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20817 : STRIP_UNARY (operands[4])))
20818 : {
20819 : reg4 = reg1;
20820 : reg3 = reg6;
20821 : operands[6] = operands[3];
20822 : }
20823 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20824 : STRIP_UNARY (operands[4])))
20825 : {
20826 : reg4 = reg2;
20827 : reg3 = reg6;
20828 : operands[6] = operands[3];
20829 : }
20830 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20831 : STRIP_UNARY (operands[3])))
20832 : {
20833 : reg4 = reg6;
20834 : reg3 = reg1;
20835 : operands[6] = operands[4];
20836 : }
20837 : else
20838 : {
20839 : reg4 = reg6;
20840 : reg3 = reg2;
20841 : operands[6] = operands[4];
20842 : }
20843 :
20844 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20845 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20846 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20847 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20848 :
20849 : tmp1 = reg1 & reg2;
20850 : tmp2 = reg3 & reg4;
20851 : reg_mask = tmp1 | tmp2;
20852 : reg_mask &= 0xFF;
20853 :
20854 : operands[1] = STRIP_UNARY (operands[1]);
20855 : operands[2] = STRIP_UNARY (operands[2]);
20856 : operands[6] = STRIP_UNARY (operands[6]);
20857 : if (!register_operand (operands[2], V32BFmode))
20858 : operands[2] = force_reg (V32BFmode, operands[2]);
20859 : if (!register_operand (operands[6], V32BFmode))
20860 : operands[6] = force_reg (V32BFmode, operands[6]);
20861 : operands[5] = GEN_INT (reg_mask);
20862 : }
20863 : #undef DONE
20864 : #undef FAIL
20865 : static const uint8_t expand_encoding[] = {
20866 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20867 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20868 : 0x25
20869 : };
20870 : return complete_seq (expand_encoding, operands);
20871 : }
20872 :
20873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20874 : extern rtx_insn *gen_split_2149 (rtx_insn *, rtx *);
20875 : rtx_insn *
20876 : gen_split_2149 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20877 : {
20878 : if (dump_file)
20879 : fprintf (dump_file, "Splitting with gen_split_2149 (sse.md:14142)\n");
20880 : start_sequence ();
20881 : #define FAIL return (end_sequence (), nullptr)
20882 : #define DONE return end_sequence ()
20883 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20884 : {
20885 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20886 : int reg6 = 0xF0;
20887 : int reg2 = 0xCC;
20888 : int reg1 = 0xAA;
20889 : int reg3 = 0;
20890 : int reg4 = 0;
20891 : int reg_mask, tmp1, tmp2;
20892 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20893 : STRIP_UNARY (operands[4])))
20894 : {
20895 : reg4 = reg1;
20896 : reg3 = reg6;
20897 : operands[6] = operands[3];
20898 : }
20899 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20900 : STRIP_UNARY (operands[4])))
20901 : {
20902 : reg4 = reg2;
20903 : reg3 = reg6;
20904 : operands[6] = operands[3];
20905 : }
20906 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20907 : STRIP_UNARY (operands[3])))
20908 : {
20909 : reg4 = reg6;
20910 : reg3 = reg1;
20911 : operands[6] = operands[4];
20912 : }
20913 : else
20914 : {
20915 : reg4 = reg6;
20916 : reg3 = reg2;
20917 : operands[6] = operands[4];
20918 : }
20919 :
20920 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20921 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20922 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20923 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20924 :
20925 : tmp1 = reg1 | reg2;
20926 : tmp2 = reg3 & reg4;
20927 : reg_mask = tmp1 ^ tmp2;
20928 : reg_mask &= 0xFF;
20929 :
20930 : operands[1] = STRIP_UNARY (operands[1]);
20931 : operands[2] = STRIP_UNARY (operands[2]);
20932 : operands[6] = STRIP_UNARY (operands[6]);
20933 : if (!register_operand (operands[2], V32BFmode))
20934 : operands[2] = force_reg (V32BFmode, operands[2]);
20935 : if (!register_operand (operands[6], V32BFmode))
20936 : operands[6] = force_reg (V32BFmode, operands[6]);
20937 : operands[5] = GEN_INT (reg_mask);
20938 : }
20939 : #undef DONE
20940 : #undef FAIL
20941 : static const uint8_t expand_encoding[] = {
20942 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20943 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20944 : 0x25
20945 : };
20946 : return complete_seq (expand_encoding, operands);
20947 : }
20948 :
20949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20950 : extern rtx_insn *gen_split_2159 (rtx_insn *, rtx *);
20951 : rtx_insn *
20952 : gen_split_2159 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20953 : {
20954 : if (dump_file)
20955 : fprintf (dump_file, "Splitting with gen_split_2159 (sse.md:14142)\n");
20956 : start_sequence ();
20957 : #define FAIL return (end_sequence (), nullptr)
20958 : #define DONE return end_sequence ()
20959 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20960 : {
20961 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20962 : int reg6 = 0xF0;
20963 : int reg2 = 0xCC;
20964 : int reg1 = 0xAA;
20965 : int reg3 = 0;
20966 : int reg4 = 0;
20967 : int reg_mask, tmp1, tmp2;
20968 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20969 : STRIP_UNARY (operands[4])))
20970 : {
20971 : reg4 = reg1;
20972 : reg3 = reg6;
20973 : operands[6] = operands[3];
20974 : }
20975 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20976 : STRIP_UNARY (operands[4])))
20977 : {
20978 : reg4 = reg2;
20979 : reg3 = reg6;
20980 : operands[6] = operands[3];
20981 : }
20982 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20983 : STRIP_UNARY (operands[3])))
20984 : {
20985 : reg4 = reg6;
20986 : reg3 = reg1;
20987 : operands[6] = operands[4];
20988 : }
20989 : else
20990 : {
20991 : reg4 = reg6;
20992 : reg3 = reg2;
20993 : operands[6] = operands[4];
20994 : }
20995 :
20996 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20997 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20998 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20999 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21000 :
21001 : tmp1 = reg1 ^ reg2;
21002 : tmp2 = reg3 | reg4;
21003 : reg_mask = tmp1 & tmp2;
21004 : reg_mask &= 0xFF;
21005 :
21006 : operands[1] = STRIP_UNARY (operands[1]);
21007 : operands[2] = STRIP_UNARY (operands[2]);
21008 : operands[6] = STRIP_UNARY (operands[6]);
21009 : if (!register_operand (operands[2], V32BFmode))
21010 : operands[2] = force_reg (V32BFmode, operands[2]);
21011 : if (!register_operand (operands[6], V32BFmode))
21012 : operands[6] = force_reg (V32BFmode, operands[6]);
21013 : operands[5] = GEN_INT (reg_mask);
21014 : }
21015 : #undef DONE
21016 : #undef FAIL
21017 : static const uint8_t expand_encoding[] = {
21018 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
21019 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21020 : 0x25
21021 : };
21022 : return complete_seq (expand_encoding, operands);
21023 : }
21024 :
21025 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21026 : extern rtx_insn *gen_split_2169 (rtx_insn *, rtx *);
21027 : rtx_insn *
21028 : gen_split_2169 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21029 : {
21030 : if (dump_file)
21031 : fprintf (dump_file, "Splitting with gen_split_2169 (sse.md:14142)\n");
21032 : start_sequence ();
21033 : #define FAIL return (end_sequence (), nullptr)
21034 : #define DONE return end_sequence ()
21035 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21036 : {
21037 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21038 : int reg6 = 0xF0;
21039 : int reg2 = 0xCC;
21040 : int reg1 = 0xAA;
21041 : int reg3 = 0;
21042 : int reg4 = 0;
21043 : int reg_mask, tmp1, tmp2;
21044 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21045 : STRIP_UNARY (operands[4])))
21046 : {
21047 : reg4 = reg1;
21048 : reg3 = reg6;
21049 : operands[6] = operands[3];
21050 : }
21051 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21052 : STRIP_UNARY (operands[4])))
21053 : {
21054 : reg4 = reg2;
21055 : reg3 = reg6;
21056 : operands[6] = operands[3];
21057 : }
21058 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21059 : STRIP_UNARY (operands[3])))
21060 : {
21061 : reg4 = reg6;
21062 : reg3 = reg1;
21063 : operands[6] = operands[4];
21064 : }
21065 : else
21066 : {
21067 : reg4 = reg6;
21068 : reg3 = reg2;
21069 : operands[6] = operands[4];
21070 : }
21071 :
21072 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21073 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21074 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21075 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21076 :
21077 : tmp1 = reg1 & reg2;
21078 : tmp2 = reg3 | reg4;
21079 : reg_mask = tmp1 | tmp2;
21080 : reg_mask &= 0xFF;
21081 :
21082 : operands[1] = STRIP_UNARY (operands[1]);
21083 : operands[2] = STRIP_UNARY (operands[2]);
21084 : operands[6] = STRIP_UNARY (operands[6]);
21085 : if (!register_operand (operands[2], V16BFmode))
21086 : operands[2] = force_reg (V16BFmode, operands[2]);
21087 : if (!register_operand (operands[6], V16BFmode))
21088 : operands[6] = force_reg (V16BFmode, operands[6]);
21089 : operands[5] = GEN_INT (reg_mask);
21090 : }
21091 : #undef DONE
21092 : #undef FAIL
21093 : static const uint8_t expand_encoding[] = {
21094 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21095 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21096 : 0x25
21097 : };
21098 : return complete_seq (expand_encoding, operands);
21099 : }
21100 :
21101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21102 : extern rtx_insn *gen_split_2179 (rtx_insn *, rtx *);
21103 : rtx_insn *
21104 : gen_split_2179 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21105 : {
21106 : if (dump_file)
21107 : fprintf (dump_file, "Splitting with gen_split_2179 (sse.md:14142)\n");
21108 : start_sequence ();
21109 : #define FAIL return (end_sequence (), nullptr)
21110 : #define DONE return end_sequence ()
21111 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21112 : {
21113 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21114 : int reg6 = 0xF0;
21115 : int reg2 = 0xCC;
21116 : int reg1 = 0xAA;
21117 : int reg3 = 0;
21118 : int reg4 = 0;
21119 : int reg_mask, tmp1, tmp2;
21120 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21121 : STRIP_UNARY (operands[4])))
21122 : {
21123 : reg4 = reg1;
21124 : reg3 = reg6;
21125 : operands[6] = operands[3];
21126 : }
21127 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21128 : STRIP_UNARY (operands[4])))
21129 : {
21130 : reg4 = reg2;
21131 : reg3 = reg6;
21132 : operands[6] = operands[3];
21133 : }
21134 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21135 : STRIP_UNARY (operands[3])))
21136 : {
21137 : reg4 = reg6;
21138 : reg3 = reg1;
21139 : operands[6] = operands[4];
21140 : }
21141 : else
21142 : {
21143 : reg4 = reg6;
21144 : reg3 = reg2;
21145 : operands[6] = operands[4];
21146 : }
21147 :
21148 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21149 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21150 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21151 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21152 :
21153 : tmp1 = reg1 | reg2;
21154 : tmp2 = reg3 | reg4;
21155 : reg_mask = tmp1 ^ tmp2;
21156 : reg_mask &= 0xFF;
21157 :
21158 : operands[1] = STRIP_UNARY (operands[1]);
21159 : operands[2] = STRIP_UNARY (operands[2]);
21160 : operands[6] = STRIP_UNARY (operands[6]);
21161 : if (!register_operand (operands[2], V16BFmode))
21162 : operands[2] = force_reg (V16BFmode, operands[2]);
21163 : if (!register_operand (operands[6], V16BFmode))
21164 : operands[6] = force_reg (V16BFmode, operands[6]);
21165 : operands[5] = GEN_INT (reg_mask);
21166 : }
21167 : #undef DONE
21168 : #undef FAIL
21169 : static const uint8_t expand_encoding[] = {
21170 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21171 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21172 : 0x25
21173 : };
21174 : return complete_seq (expand_encoding, operands);
21175 : }
21176 :
21177 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21178 : extern rtx_insn *gen_split_2189 (rtx_insn *, rtx *);
21179 : rtx_insn *
21180 : gen_split_2189 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21181 : {
21182 : if (dump_file)
21183 : fprintf (dump_file, "Splitting with gen_split_2189 (sse.md:14142)\n");
21184 : start_sequence ();
21185 : #define FAIL return (end_sequence (), nullptr)
21186 : #define DONE return end_sequence ()
21187 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21188 : {
21189 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21190 : int reg6 = 0xF0;
21191 : int reg2 = 0xCC;
21192 : int reg1 = 0xAA;
21193 : int reg3 = 0;
21194 : int reg4 = 0;
21195 : int reg_mask, tmp1, tmp2;
21196 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21197 : STRIP_UNARY (operands[4])))
21198 : {
21199 : reg4 = reg1;
21200 : reg3 = reg6;
21201 : operands[6] = operands[3];
21202 : }
21203 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21204 : STRIP_UNARY (operands[4])))
21205 : {
21206 : reg4 = reg2;
21207 : reg3 = reg6;
21208 : operands[6] = operands[3];
21209 : }
21210 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21211 : STRIP_UNARY (operands[3])))
21212 : {
21213 : reg4 = reg6;
21214 : reg3 = reg1;
21215 : operands[6] = operands[4];
21216 : }
21217 : else
21218 : {
21219 : reg4 = reg6;
21220 : reg3 = reg2;
21221 : operands[6] = operands[4];
21222 : }
21223 :
21224 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21225 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21226 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21227 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21228 :
21229 : tmp1 = reg1 ^ reg2;
21230 : tmp2 = reg3 ^ reg4;
21231 : reg_mask = tmp1 & tmp2;
21232 : reg_mask &= 0xFF;
21233 :
21234 : operands[1] = STRIP_UNARY (operands[1]);
21235 : operands[2] = STRIP_UNARY (operands[2]);
21236 : operands[6] = STRIP_UNARY (operands[6]);
21237 : if (!register_operand (operands[2], V16BFmode))
21238 : operands[2] = force_reg (V16BFmode, operands[2]);
21239 : if (!register_operand (operands[6], V16BFmode))
21240 : operands[6] = force_reg (V16BFmode, operands[6]);
21241 : operands[5] = GEN_INT (reg_mask);
21242 : }
21243 : #undef DONE
21244 : #undef FAIL
21245 : static const uint8_t expand_encoding[] = {
21246 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21247 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21248 : 0x25
21249 : };
21250 : return complete_seq (expand_encoding, operands);
21251 : }
21252 :
21253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21254 : extern rtx_insn *gen_split_2199 (rtx_insn *, rtx *);
21255 : rtx_insn *
21256 : gen_split_2199 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21257 : {
21258 : if (dump_file)
21259 : fprintf (dump_file, "Splitting with gen_split_2199 (sse.md:14142)\n");
21260 : start_sequence ();
21261 : #define FAIL return (end_sequence (), nullptr)
21262 : #define DONE return end_sequence ()
21263 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21264 : {
21265 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21266 : int reg6 = 0xF0;
21267 : int reg2 = 0xCC;
21268 : int reg1 = 0xAA;
21269 : int reg3 = 0;
21270 : int reg4 = 0;
21271 : int reg_mask, tmp1, tmp2;
21272 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21273 : STRIP_UNARY (operands[4])))
21274 : {
21275 : reg4 = reg1;
21276 : reg3 = reg6;
21277 : operands[6] = operands[3];
21278 : }
21279 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21280 : STRIP_UNARY (operands[4])))
21281 : {
21282 : reg4 = reg2;
21283 : reg3 = reg6;
21284 : operands[6] = operands[3];
21285 : }
21286 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21287 : STRIP_UNARY (operands[3])))
21288 : {
21289 : reg4 = reg6;
21290 : reg3 = reg1;
21291 : operands[6] = operands[4];
21292 : }
21293 : else
21294 : {
21295 : reg4 = reg6;
21296 : reg3 = reg2;
21297 : operands[6] = operands[4];
21298 : }
21299 :
21300 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21301 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21302 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21303 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21304 :
21305 : tmp1 = reg1 & reg2;
21306 : tmp2 = reg3 ^ reg4;
21307 : reg_mask = tmp1 | tmp2;
21308 : reg_mask &= 0xFF;
21309 :
21310 : operands[1] = STRIP_UNARY (operands[1]);
21311 : operands[2] = STRIP_UNARY (operands[2]);
21312 : operands[6] = STRIP_UNARY (operands[6]);
21313 : if (!register_operand (operands[2], V8BFmode))
21314 : operands[2] = force_reg (V8BFmode, operands[2]);
21315 : if (!register_operand (operands[6], V8BFmode))
21316 : operands[6] = force_reg (V8BFmode, operands[6]);
21317 : operands[5] = GEN_INT (reg_mask);
21318 : }
21319 : #undef DONE
21320 : #undef FAIL
21321 : static const uint8_t expand_encoding[] = {
21322 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21323 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21324 : 0x25
21325 : };
21326 : return complete_seq (expand_encoding, operands);
21327 : }
21328 :
21329 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21330 : extern rtx_insn *gen_split_2209 (rtx_insn *, rtx *);
21331 : rtx_insn *
21332 : gen_split_2209 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21333 : {
21334 : if (dump_file)
21335 : fprintf (dump_file, "Splitting with gen_split_2209 (sse.md:14142)\n");
21336 : start_sequence ();
21337 : #define FAIL return (end_sequence (), nullptr)
21338 : #define DONE return end_sequence ()
21339 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21340 : {
21341 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21342 : int reg6 = 0xF0;
21343 : int reg2 = 0xCC;
21344 : int reg1 = 0xAA;
21345 : int reg3 = 0;
21346 : int reg4 = 0;
21347 : int reg_mask, tmp1, tmp2;
21348 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21349 : STRIP_UNARY (operands[4])))
21350 : {
21351 : reg4 = reg1;
21352 : reg3 = reg6;
21353 : operands[6] = operands[3];
21354 : }
21355 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21356 : STRIP_UNARY (operands[4])))
21357 : {
21358 : reg4 = reg2;
21359 : reg3 = reg6;
21360 : operands[6] = operands[3];
21361 : }
21362 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21363 : STRIP_UNARY (operands[3])))
21364 : {
21365 : reg4 = reg6;
21366 : reg3 = reg1;
21367 : operands[6] = operands[4];
21368 : }
21369 : else
21370 : {
21371 : reg4 = reg6;
21372 : reg3 = reg2;
21373 : operands[6] = operands[4];
21374 : }
21375 :
21376 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21377 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21378 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21379 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21380 :
21381 : tmp1 = reg1 | reg2;
21382 : tmp2 = reg3 ^ reg4;
21383 : reg_mask = tmp1 ^ tmp2;
21384 : reg_mask &= 0xFF;
21385 :
21386 : operands[1] = STRIP_UNARY (operands[1]);
21387 : operands[2] = STRIP_UNARY (operands[2]);
21388 : operands[6] = STRIP_UNARY (operands[6]);
21389 : if (!register_operand (operands[2], V8BFmode))
21390 : operands[2] = force_reg (V8BFmode, operands[2]);
21391 : if (!register_operand (operands[6], V8BFmode))
21392 : operands[6] = force_reg (V8BFmode, operands[6]);
21393 : operands[5] = GEN_INT (reg_mask);
21394 : }
21395 : #undef DONE
21396 : #undef FAIL
21397 : static const uint8_t expand_encoding[] = {
21398 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21399 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21400 : 0x25
21401 : };
21402 : return complete_seq (expand_encoding, operands);
21403 : }
21404 :
21405 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21406 : extern rtx_insn *gen_split_2219 (rtx_insn *, rtx *);
21407 : rtx_insn *
21408 : gen_split_2219 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21409 : {
21410 : if (dump_file)
21411 : fprintf (dump_file, "Splitting with gen_split_2219 (sse.md:14142)\n");
21412 : start_sequence ();
21413 : #define FAIL return (end_sequence (), nullptr)
21414 : #define DONE return end_sequence ()
21415 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21416 : {
21417 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21418 : int reg6 = 0xF0;
21419 : int reg2 = 0xCC;
21420 : int reg1 = 0xAA;
21421 : int reg3 = 0;
21422 : int reg4 = 0;
21423 : int reg_mask, tmp1, tmp2;
21424 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21425 : STRIP_UNARY (operands[4])))
21426 : {
21427 : reg4 = reg1;
21428 : reg3 = reg6;
21429 : operands[6] = operands[3];
21430 : }
21431 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21432 : STRIP_UNARY (operands[4])))
21433 : {
21434 : reg4 = reg2;
21435 : reg3 = reg6;
21436 : operands[6] = operands[3];
21437 : }
21438 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21439 : STRIP_UNARY (operands[3])))
21440 : {
21441 : reg4 = reg6;
21442 : reg3 = reg1;
21443 : operands[6] = operands[4];
21444 : }
21445 : else
21446 : {
21447 : reg4 = reg6;
21448 : reg3 = reg2;
21449 : operands[6] = operands[4];
21450 : }
21451 :
21452 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21453 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21454 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21455 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21456 :
21457 : tmp1 = reg1 & reg2;
21458 : tmp2 = reg3 & reg4;
21459 : reg_mask = tmp1 & tmp2;
21460 : reg_mask &= 0xFF;
21461 :
21462 : operands[1] = STRIP_UNARY (operands[1]);
21463 : operands[2] = STRIP_UNARY (operands[2]);
21464 : operands[6] = STRIP_UNARY (operands[6]);
21465 : if (!register_operand (operands[2], V16SFmode))
21466 : operands[2] = force_reg (V16SFmode, operands[2]);
21467 : if (!register_operand (operands[6], V16SFmode))
21468 : operands[6] = force_reg (V16SFmode, operands[6]);
21469 : operands[5] = GEN_INT (reg_mask);
21470 : }
21471 : #undef DONE
21472 : #undef FAIL
21473 : static const uint8_t expand_encoding[] = {
21474 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21475 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21476 : 0x25
21477 : };
21478 : return complete_seq (expand_encoding, operands);
21479 : }
21480 :
21481 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21482 : extern rtx_insn *gen_split_2229 (rtx_insn *, rtx *);
21483 : rtx_insn *
21484 : gen_split_2229 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21485 : {
21486 : if (dump_file)
21487 : fprintf (dump_file, "Splitting with gen_split_2229 (sse.md:14142)\n");
21488 : start_sequence ();
21489 : #define FAIL return (end_sequence (), nullptr)
21490 : #define DONE return end_sequence ()
21491 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21492 : {
21493 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21494 : int reg6 = 0xF0;
21495 : int reg2 = 0xCC;
21496 : int reg1 = 0xAA;
21497 : int reg3 = 0;
21498 : int reg4 = 0;
21499 : int reg_mask, tmp1, tmp2;
21500 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21501 : STRIP_UNARY (operands[4])))
21502 : {
21503 : reg4 = reg1;
21504 : reg3 = reg6;
21505 : operands[6] = operands[3];
21506 : }
21507 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21508 : STRIP_UNARY (operands[4])))
21509 : {
21510 : reg4 = reg2;
21511 : reg3 = reg6;
21512 : operands[6] = operands[3];
21513 : }
21514 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21515 : STRIP_UNARY (operands[3])))
21516 : {
21517 : reg4 = reg6;
21518 : reg3 = reg1;
21519 : operands[6] = operands[4];
21520 : }
21521 : else
21522 : {
21523 : reg4 = reg6;
21524 : reg3 = reg2;
21525 : operands[6] = operands[4];
21526 : }
21527 :
21528 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21529 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21530 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21531 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21532 :
21533 : tmp1 = reg1 | reg2;
21534 : tmp2 = reg3 & reg4;
21535 : reg_mask = tmp1 | tmp2;
21536 : reg_mask &= 0xFF;
21537 :
21538 : operands[1] = STRIP_UNARY (operands[1]);
21539 : operands[2] = STRIP_UNARY (operands[2]);
21540 : operands[6] = STRIP_UNARY (operands[6]);
21541 : if (!register_operand (operands[2], V16SFmode))
21542 : operands[2] = force_reg (V16SFmode, operands[2]);
21543 : if (!register_operand (operands[6], V16SFmode))
21544 : operands[6] = force_reg (V16SFmode, operands[6]);
21545 : operands[5] = GEN_INT (reg_mask);
21546 : }
21547 : #undef DONE
21548 : #undef FAIL
21549 : static const uint8_t expand_encoding[] = {
21550 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21551 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21552 : 0x25
21553 : };
21554 : return complete_seq (expand_encoding, operands);
21555 : }
21556 :
21557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21558 : extern rtx_insn *gen_split_2239 (rtx_insn *, rtx *);
21559 : rtx_insn *
21560 : gen_split_2239 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21561 : {
21562 : if (dump_file)
21563 : fprintf (dump_file, "Splitting with gen_split_2239 (sse.md:14142)\n");
21564 : start_sequence ();
21565 : #define FAIL return (end_sequence (), nullptr)
21566 : #define DONE return end_sequence ()
21567 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21568 : {
21569 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21570 : int reg6 = 0xF0;
21571 : int reg2 = 0xCC;
21572 : int reg1 = 0xAA;
21573 : int reg3 = 0;
21574 : int reg4 = 0;
21575 : int reg_mask, tmp1, tmp2;
21576 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21577 : STRIP_UNARY (operands[4])))
21578 : {
21579 : reg4 = reg1;
21580 : reg3 = reg6;
21581 : operands[6] = operands[3];
21582 : }
21583 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21584 : STRIP_UNARY (operands[4])))
21585 : {
21586 : reg4 = reg2;
21587 : reg3 = reg6;
21588 : operands[6] = operands[3];
21589 : }
21590 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21591 : STRIP_UNARY (operands[3])))
21592 : {
21593 : reg4 = reg6;
21594 : reg3 = reg1;
21595 : operands[6] = operands[4];
21596 : }
21597 : else
21598 : {
21599 : reg4 = reg6;
21600 : reg3 = reg2;
21601 : operands[6] = operands[4];
21602 : }
21603 :
21604 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21605 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21606 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21607 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21608 :
21609 : tmp1 = reg1 ^ reg2;
21610 : tmp2 = reg3 & reg4;
21611 : reg_mask = tmp1 ^ tmp2;
21612 : reg_mask &= 0xFF;
21613 :
21614 : operands[1] = STRIP_UNARY (operands[1]);
21615 : operands[2] = STRIP_UNARY (operands[2]);
21616 : operands[6] = STRIP_UNARY (operands[6]);
21617 : if (!register_operand (operands[2], V16SFmode))
21618 : operands[2] = force_reg (V16SFmode, operands[2]);
21619 : if (!register_operand (operands[6], V16SFmode))
21620 : operands[6] = force_reg (V16SFmode, operands[6]);
21621 : operands[5] = GEN_INT (reg_mask);
21622 : }
21623 : #undef DONE
21624 : #undef FAIL
21625 : static const uint8_t expand_encoding[] = {
21626 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21627 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21628 : 0x25
21629 : };
21630 : return complete_seq (expand_encoding, operands);
21631 : }
21632 :
21633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21634 : extern rtx_insn *gen_split_2249 (rtx_insn *, rtx *);
21635 : rtx_insn *
21636 : gen_split_2249 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21637 : {
21638 : if (dump_file)
21639 : fprintf (dump_file, "Splitting with gen_split_2249 (sse.md:14142)\n");
21640 : start_sequence ();
21641 : #define FAIL return (end_sequence (), nullptr)
21642 : #define DONE return end_sequence ()
21643 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21644 : {
21645 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21646 : int reg6 = 0xF0;
21647 : int reg2 = 0xCC;
21648 : int reg1 = 0xAA;
21649 : int reg3 = 0;
21650 : int reg4 = 0;
21651 : int reg_mask, tmp1, tmp2;
21652 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21653 : STRIP_UNARY (operands[4])))
21654 : {
21655 : reg4 = reg1;
21656 : reg3 = reg6;
21657 : operands[6] = operands[3];
21658 : }
21659 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21660 : STRIP_UNARY (operands[4])))
21661 : {
21662 : reg4 = reg2;
21663 : reg3 = reg6;
21664 : operands[6] = operands[3];
21665 : }
21666 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21667 : STRIP_UNARY (operands[3])))
21668 : {
21669 : reg4 = reg6;
21670 : reg3 = reg1;
21671 : operands[6] = operands[4];
21672 : }
21673 : else
21674 : {
21675 : reg4 = reg6;
21676 : reg3 = reg2;
21677 : operands[6] = operands[4];
21678 : }
21679 :
21680 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21681 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21682 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21683 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21684 :
21685 : tmp1 = reg1 & reg2;
21686 : tmp2 = reg3 | reg4;
21687 : reg_mask = tmp1 & tmp2;
21688 : reg_mask &= 0xFF;
21689 :
21690 : operands[1] = STRIP_UNARY (operands[1]);
21691 : operands[2] = STRIP_UNARY (operands[2]);
21692 : operands[6] = STRIP_UNARY (operands[6]);
21693 : if (!register_operand (operands[2], V8SFmode))
21694 : operands[2] = force_reg (V8SFmode, operands[2]);
21695 : if (!register_operand (operands[6], V8SFmode))
21696 : operands[6] = force_reg (V8SFmode, operands[6]);
21697 : operands[5] = GEN_INT (reg_mask);
21698 : }
21699 : #undef DONE
21700 : #undef FAIL
21701 : static const uint8_t expand_encoding[] = {
21702 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21703 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21704 : 0x25
21705 : };
21706 : return complete_seq (expand_encoding, operands);
21707 : }
21708 :
21709 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21710 : extern rtx_insn *gen_split_2259 (rtx_insn *, rtx *);
21711 : rtx_insn *
21712 : gen_split_2259 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21713 : {
21714 : if (dump_file)
21715 : fprintf (dump_file, "Splitting with gen_split_2259 (sse.md:14142)\n");
21716 : start_sequence ();
21717 : #define FAIL return (end_sequence (), nullptr)
21718 : #define DONE return end_sequence ()
21719 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21720 : {
21721 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21722 : int reg6 = 0xF0;
21723 : int reg2 = 0xCC;
21724 : int reg1 = 0xAA;
21725 : int reg3 = 0;
21726 : int reg4 = 0;
21727 : int reg_mask, tmp1, tmp2;
21728 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21729 : STRIP_UNARY (operands[4])))
21730 : {
21731 : reg4 = reg1;
21732 : reg3 = reg6;
21733 : operands[6] = operands[3];
21734 : }
21735 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21736 : STRIP_UNARY (operands[4])))
21737 : {
21738 : reg4 = reg2;
21739 : reg3 = reg6;
21740 : operands[6] = operands[3];
21741 : }
21742 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21743 : STRIP_UNARY (operands[3])))
21744 : {
21745 : reg4 = reg6;
21746 : reg3 = reg1;
21747 : operands[6] = operands[4];
21748 : }
21749 : else
21750 : {
21751 : reg4 = reg6;
21752 : reg3 = reg2;
21753 : operands[6] = operands[4];
21754 : }
21755 :
21756 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21757 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21758 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21759 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21760 :
21761 : tmp1 = reg1 | reg2;
21762 : tmp2 = reg3 | reg4;
21763 : reg_mask = tmp1 | tmp2;
21764 : reg_mask &= 0xFF;
21765 :
21766 : operands[1] = STRIP_UNARY (operands[1]);
21767 : operands[2] = STRIP_UNARY (operands[2]);
21768 : operands[6] = STRIP_UNARY (operands[6]);
21769 : if (!register_operand (operands[2], V8SFmode))
21770 : operands[2] = force_reg (V8SFmode, operands[2]);
21771 : if (!register_operand (operands[6], V8SFmode))
21772 : operands[6] = force_reg (V8SFmode, operands[6]);
21773 : operands[5] = GEN_INT (reg_mask);
21774 : }
21775 : #undef DONE
21776 : #undef FAIL
21777 : static const uint8_t expand_encoding[] = {
21778 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21779 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21780 : 0x25
21781 : };
21782 : return complete_seq (expand_encoding, operands);
21783 : }
21784 :
21785 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21786 : extern rtx_insn *gen_split_2269 (rtx_insn *, rtx *);
21787 : rtx_insn *
21788 : gen_split_2269 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21789 : {
21790 : if (dump_file)
21791 : fprintf (dump_file, "Splitting with gen_split_2269 (sse.md:14142)\n");
21792 : start_sequence ();
21793 : #define FAIL return (end_sequence (), nullptr)
21794 : #define DONE return end_sequence ()
21795 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21796 : {
21797 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21798 : int reg6 = 0xF0;
21799 : int reg2 = 0xCC;
21800 : int reg1 = 0xAA;
21801 : int reg3 = 0;
21802 : int reg4 = 0;
21803 : int reg_mask, tmp1, tmp2;
21804 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21805 : STRIP_UNARY (operands[4])))
21806 : {
21807 : reg4 = reg1;
21808 : reg3 = reg6;
21809 : operands[6] = operands[3];
21810 : }
21811 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21812 : STRIP_UNARY (operands[4])))
21813 : {
21814 : reg4 = reg2;
21815 : reg3 = reg6;
21816 : operands[6] = operands[3];
21817 : }
21818 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21819 : STRIP_UNARY (operands[3])))
21820 : {
21821 : reg4 = reg6;
21822 : reg3 = reg1;
21823 : operands[6] = operands[4];
21824 : }
21825 : else
21826 : {
21827 : reg4 = reg6;
21828 : reg3 = reg2;
21829 : operands[6] = operands[4];
21830 : }
21831 :
21832 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21833 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21834 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21835 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21836 :
21837 : tmp1 = reg1 ^ reg2;
21838 : tmp2 = reg3 | reg4;
21839 : reg_mask = tmp1 ^ tmp2;
21840 : reg_mask &= 0xFF;
21841 :
21842 : operands[1] = STRIP_UNARY (operands[1]);
21843 : operands[2] = STRIP_UNARY (operands[2]);
21844 : operands[6] = STRIP_UNARY (operands[6]);
21845 : if (!register_operand (operands[2], V8SFmode))
21846 : operands[2] = force_reg (V8SFmode, operands[2]);
21847 : if (!register_operand (operands[6], V8SFmode))
21848 : operands[6] = force_reg (V8SFmode, operands[6]);
21849 : operands[5] = GEN_INT (reg_mask);
21850 : }
21851 : #undef DONE
21852 : #undef FAIL
21853 : static const uint8_t expand_encoding[] = {
21854 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21855 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21856 : 0x25
21857 : };
21858 : return complete_seq (expand_encoding, operands);
21859 : }
21860 :
21861 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21862 : extern rtx_insn *gen_split_2279 (rtx_insn *, rtx *);
21863 : rtx_insn *
21864 : gen_split_2279 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21865 : {
21866 : if (dump_file)
21867 : fprintf (dump_file, "Splitting with gen_split_2279 (sse.md:14142)\n");
21868 : start_sequence ();
21869 : #define FAIL return (end_sequence (), nullptr)
21870 : #define DONE return end_sequence ()
21871 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21872 : {
21873 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21874 : int reg6 = 0xF0;
21875 : int reg2 = 0xCC;
21876 : int reg1 = 0xAA;
21877 : int reg3 = 0;
21878 : int reg4 = 0;
21879 : int reg_mask, tmp1, tmp2;
21880 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21881 : STRIP_UNARY (operands[4])))
21882 : {
21883 : reg4 = reg1;
21884 : reg3 = reg6;
21885 : operands[6] = operands[3];
21886 : }
21887 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21888 : STRIP_UNARY (operands[4])))
21889 : {
21890 : reg4 = reg2;
21891 : reg3 = reg6;
21892 : operands[6] = operands[3];
21893 : }
21894 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21895 : STRIP_UNARY (operands[3])))
21896 : {
21897 : reg4 = reg6;
21898 : reg3 = reg1;
21899 : operands[6] = operands[4];
21900 : }
21901 : else
21902 : {
21903 : reg4 = reg6;
21904 : reg3 = reg2;
21905 : operands[6] = operands[4];
21906 : }
21907 :
21908 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21909 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21910 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21911 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21912 :
21913 : tmp1 = reg1 & reg2;
21914 : tmp2 = reg3 ^ reg4;
21915 : reg_mask = tmp1 & tmp2;
21916 : reg_mask &= 0xFF;
21917 :
21918 : operands[1] = STRIP_UNARY (operands[1]);
21919 : operands[2] = STRIP_UNARY (operands[2]);
21920 : operands[6] = STRIP_UNARY (operands[6]);
21921 : if (!register_operand (operands[2], V4SFmode))
21922 : operands[2] = force_reg (V4SFmode, operands[2]);
21923 : if (!register_operand (operands[6], V4SFmode))
21924 : operands[6] = force_reg (V4SFmode, operands[6]);
21925 : operands[5] = GEN_INT (reg_mask);
21926 : }
21927 : #undef DONE
21928 : #undef FAIL
21929 : static const uint8_t expand_encoding[] = {
21930 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
21931 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21932 : 0x25
21933 : };
21934 : return complete_seq (expand_encoding, operands);
21935 : }
21936 :
21937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21938 : extern rtx_insn *gen_split_2289 (rtx_insn *, rtx *);
21939 : rtx_insn *
21940 : gen_split_2289 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21941 : {
21942 : if (dump_file)
21943 : fprintf (dump_file, "Splitting with gen_split_2289 (sse.md:14142)\n");
21944 : start_sequence ();
21945 : #define FAIL return (end_sequence (), nullptr)
21946 : #define DONE return end_sequence ()
21947 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21948 : {
21949 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21950 : int reg6 = 0xF0;
21951 : int reg2 = 0xCC;
21952 : int reg1 = 0xAA;
21953 : int reg3 = 0;
21954 : int reg4 = 0;
21955 : int reg_mask, tmp1, tmp2;
21956 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21957 : STRIP_UNARY (operands[4])))
21958 : {
21959 : reg4 = reg1;
21960 : reg3 = reg6;
21961 : operands[6] = operands[3];
21962 : }
21963 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21964 : STRIP_UNARY (operands[4])))
21965 : {
21966 : reg4 = reg2;
21967 : reg3 = reg6;
21968 : operands[6] = operands[3];
21969 : }
21970 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21971 : STRIP_UNARY (operands[3])))
21972 : {
21973 : reg4 = reg6;
21974 : reg3 = reg1;
21975 : operands[6] = operands[4];
21976 : }
21977 : else
21978 : {
21979 : reg4 = reg6;
21980 : reg3 = reg2;
21981 : operands[6] = operands[4];
21982 : }
21983 :
21984 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21985 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21986 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21987 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21988 :
21989 : tmp1 = reg1 | reg2;
21990 : tmp2 = reg3 ^ reg4;
21991 : reg_mask = tmp1 | tmp2;
21992 : reg_mask &= 0xFF;
21993 :
21994 : operands[1] = STRIP_UNARY (operands[1]);
21995 : operands[2] = STRIP_UNARY (operands[2]);
21996 : operands[6] = STRIP_UNARY (operands[6]);
21997 : if (!register_operand (operands[2], V4SFmode))
21998 : operands[2] = force_reg (V4SFmode, operands[2]);
21999 : if (!register_operand (operands[6], V4SFmode))
22000 : operands[6] = force_reg (V4SFmode, operands[6]);
22001 : operands[5] = GEN_INT (reg_mask);
22002 : }
22003 : #undef DONE
22004 : #undef FAIL
22005 : static const uint8_t expand_encoding[] = {
22006 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
22007 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22008 : 0x25
22009 : };
22010 : return complete_seq (expand_encoding, operands);
22011 : }
22012 :
22013 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22014 : extern rtx_insn *gen_split_2299 (rtx_insn *, rtx *);
22015 : rtx_insn *
22016 : gen_split_2299 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22017 : {
22018 : if (dump_file)
22019 : fprintf (dump_file, "Splitting with gen_split_2299 (sse.md:14142)\n");
22020 : start_sequence ();
22021 : #define FAIL return (end_sequence (), nullptr)
22022 : #define DONE return end_sequence ()
22023 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22024 : {
22025 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22026 : int reg6 = 0xF0;
22027 : int reg2 = 0xCC;
22028 : int reg1 = 0xAA;
22029 : int reg3 = 0;
22030 : int reg4 = 0;
22031 : int reg_mask, tmp1, tmp2;
22032 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22033 : STRIP_UNARY (operands[4])))
22034 : {
22035 : reg4 = reg1;
22036 : reg3 = reg6;
22037 : operands[6] = operands[3];
22038 : }
22039 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22040 : STRIP_UNARY (operands[4])))
22041 : {
22042 : reg4 = reg2;
22043 : reg3 = reg6;
22044 : operands[6] = operands[3];
22045 : }
22046 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22047 : STRIP_UNARY (operands[3])))
22048 : {
22049 : reg4 = reg6;
22050 : reg3 = reg1;
22051 : operands[6] = operands[4];
22052 : }
22053 : else
22054 : {
22055 : reg4 = reg6;
22056 : reg3 = reg2;
22057 : operands[6] = operands[4];
22058 : }
22059 :
22060 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22061 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22062 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22063 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22064 :
22065 : tmp1 = reg1 ^ reg2;
22066 : tmp2 = reg3 ^ reg4;
22067 : reg_mask = tmp1 ^ tmp2;
22068 : reg_mask &= 0xFF;
22069 :
22070 : operands[1] = STRIP_UNARY (operands[1]);
22071 : operands[2] = STRIP_UNARY (operands[2]);
22072 : operands[6] = STRIP_UNARY (operands[6]);
22073 : if (!register_operand (operands[2], V4SFmode))
22074 : operands[2] = force_reg (V4SFmode, operands[2]);
22075 : if (!register_operand (operands[6], V4SFmode))
22076 : operands[6] = force_reg (V4SFmode, operands[6]);
22077 : operands[5] = GEN_INT (reg_mask);
22078 : }
22079 : #undef DONE
22080 : #undef FAIL
22081 : static const uint8_t expand_encoding[] = {
22082 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
22083 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22084 : 0x25
22085 : };
22086 : return complete_seq (expand_encoding, operands);
22087 : }
22088 :
22089 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22090 : extern rtx_insn *gen_split_2309 (rtx_insn *, rtx *);
22091 : rtx_insn *
22092 : gen_split_2309 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22093 : {
22094 : if (dump_file)
22095 : fprintf (dump_file, "Splitting with gen_split_2309 (sse.md:14142)\n");
22096 : start_sequence ();
22097 : #define FAIL return (end_sequence (), nullptr)
22098 : #define DONE return end_sequence ()
22099 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22100 : {
22101 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22102 : int reg6 = 0xF0;
22103 : int reg2 = 0xCC;
22104 : int reg1 = 0xAA;
22105 : int reg3 = 0;
22106 : int reg4 = 0;
22107 : int reg_mask, tmp1, tmp2;
22108 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22109 : STRIP_UNARY (operands[4])))
22110 : {
22111 : reg4 = reg1;
22112 : reg3 = reg6;
22113 : operands[6] = operands[3];
22114 : }
22115 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22116 : STRIP_UNARY (operands[4])))
22117 : {
22118 : reg4 = reg2;
22119 : reg3 = reg6;
22120 : operands[6] = operands[3];
22121 : }
22122 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22123 : STRIP_UNARY (operands[3])))
22124 : {
22125 : reg4 = reg6;
22126 : reg3 = reg1;
22127 : operands[6] = operands[4];
22128 : }
22129 : else
22130 : {
22131 : reg4 = reg6;
22132 : reg3 = reg2;
22133 : operands[6] = operands[4];
22134 : }
22135 :
22136 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22137 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22138 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22139 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22140 :
22141 : tmp1 = reg1 | reg2;
22142 : tmp2 = reg3 & reg4;
22143 : reg_mask = tmp1 & tmp2;
22144 : reg_mask &= 0xFF;
22145 :
22146 : operands[1] = STRIP_UNARY (operands[1]);
22147 : operands[2] = STRIP_UNARY (operands[2]);
22148 : operands[6] = STRIP_UNARY (operands[6]);
22149 : if (!register_operand (operands[2], V8DFmode))
22150 : operands[2] = force_reg (V8DFmode, operands[2]);
22151 : if (!register_operand (operands[6], V8DFmode))
22152 : operands[6] = force_reg (V8DFmode, operands[6]);
22153 : operands[5] = GEN_INT (reg_mask);
22154 : }
22155 : #undef DONE
22156 : #undef FAIL
22157 : static const uint8_t expand_encoding[] = {
22158 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22159 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22160 : 0x25
22161 : };
22162 : return complete_seq (expand_encoding, operands);
22163 : }
22164 :
22165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22166 : extern rtx_insn *gen_split_2319 (rtx_insn *, rtx *);
22167 : rtx_insn *
22168 : gen_split_2319 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22169 : {
22170 : if (dump_file)
22171 : fprintf (dump_file, "Splitting with gen_split_2319 (sse.md:14142)\n");
22172 : start_sequence ();
22173 : #define FAIL return (end_sequence (), nullptr)
22174 : #define DONE return end_sequence ()
22175 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22176 : {
22177 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22178 : int reg6 = 0xF0;
22179 : int reg2 = 0xCC;
22180 : int reg1 = 0xAA;
22181 : int reg3 = 0;
22182 : int reg4 = 0;
22183 : int reg_mask, tmp1, tmp2;
22184 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22185 : STRIP_UNARY (operands[4])))
22186 : {
22187 : reg4 = reg1;
22188 : reg3 = reg6;
22189 : operands[6] = operands[3];
22190 : }
22191 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22192 : STRIP_UNARY (operands[4])))
22193 : {
22194 : reg4 = reg2;
22195 : reg3 = reg6;
22196 : operands[6] = operands[3];
22197 : }
22198 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22199 : STRIP_UNARY (operands[3])))
22200 : {
22201 : reg4 = reg6;
22202 : reg3 = reg1;
22203 : operands[6] = operands[4];
22204 : }
22205 : else
22206 : {
22207 : reg4 = reg6;
22208 : reg3 = reg2;
22209 : operands[6] = operands[4];
22210 : }
22211 :
22212 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22213 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22214 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22215 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22216 :
22217 : tmp1 = reg1 ^ reg2;
22218 : tmp2 = reg3 & reg4;
22219 : reg_mask = tmp1 | tmp2;
22220 : reg_mask &= 0xFF;
22221 :
22222 : operands[1] = STRIP_UNARY (operands[1]);
22223 : operands[2] = STRIP_UNARY (operands[2]);
22224 : operands[6] = STRIP_UNARY (operands[6]);
22225 : if (!register_operand (operands[2], V8DFmode))
22226 : operands[2] = force_reg (V8DFmode, operands[2]);
22227 : if (!register_operand (operands[6], V8DFmode))
22228 : operands[6] = force_reg (V8DFmode, operands[6]);
22229 : operands[5] = GEN_INT (reg_mask);
22230 : }
22231 : #undef DONE
22232 : #undef FAIL
22233 : static const uint8_t expand_encoding[] = {
22234 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22235 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22236 : 0x25
22237 : };
22238 : return complete_seq (expand_encoding, operands);
22239 : }
22240 :
22241 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22242 : extern rtx_insn *gen_split_2329 (rtx_insn *, rtx *);
22243 : rtx_insn *
22244 : gen_split_2329 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22245 : {
22246 : if (dump_file)
22247 : fprintf (dump_file, "Splitting with gen_split_2329 (sse.md:14142)\n");
22248 : start_sequence ();
22249 : #define FAIL return (end_sequence (), nullptr)
22250 : #define DONE return end_sequence ()
22251 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22252 : {
22253 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22254 : int reg6 = 0xF0;
22255 : int reg2 = 0xCC;
22256 : int reg1 = 0xAA;
22257 : int reg3 = 0;
22258 : int reg4 = 0;
22259 : int reg_mask, tmp1, tmp2;
22260 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22261 : STRIP_UNARY (operands[4])))
22262 : {
22263 : reg4 = reg1;
22264 : reg3 = reg6;
22265 : operands[6] = operands[3];
22266 : }
22267 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22268 : STRIP_UNARY (operands[4])))
22269 : {
22270 : reg4 = reg2;
22271 : reg3 = reg6;
22272 : operands[6] = operands[3];
22273 : }
22274 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22275 : STRIP_UNARY (operands[3])))
22276 : {
22277 : reg4 = reg6;
22278 : reg3 = reg1;
22279 : operands[6] = operands[4];
22280 : }
22281 : else
22282 : {
22283 : reg4 = reg6;
22284 : reg3 = reg2;
22285 : operands[6] = operands[4];
22286 : }
22287 :
22288 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22289 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22290 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22291 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22292 :
22293 : tmp1 = reg1 & reg2;
22294 : tmp2 = reg3 & reg4;
22295 : reg_mask = tmp1 ^ tmp2;
22296 : reg_mask &= 0xFF;
22297 :
22298 : operands[1] = STRIP_UNARY (operands[1]);
22299 : operands[2] = STRIP_UNARY (operands[2]);
22300 : operands[6] = STRIP_UNARY (operands[6]);
22301 : if (!register_operand (operands[2], V4DFmode))
22302 : operands[2] = force_reg (V4DFmode, operands[2]);
22303 : if (!register_operand (operands[6], V4DFmode))
22304 : operands[6] = force_reg (V4DFmode, operands[6]);
22305 : operands[5] = GEN_INT (reg_mask);
22306 : }
22307 : #undef DONE
22308 : #undef FAIL
22309 : static const uint8_t expand_encoding[] = {
22310 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22311 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22312 : 0x25
22313 : };
22314 : return complete_seq (expand_encoding, operands);
22315 : }
22316 :
22317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22318 : extern rtx_insn *gen_split_2339 (rtx_insn *, rtx *);
22319 : rtx_insn *
22320 : gen_split_2339 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22321 : {
22322 : if (dump_file)
22323 : fprintf (dump_file, "Splitting with gen_split_2339 (sse.md:14142)\n");
22324 : start_sequence ();
22325 : #define FAIL return (end_sequence (), nullptr)
22326 : #define DONE return end_sequence ()
22327 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22328 : {
22329 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22330 : int reg6 = 0xF0;
22331 : int reg2 = 0xCC;
22332 : int reg1 = 0xAA;
22333 : int reg3 = 0;
22334 : int reg4 = 0;
22335 : int reg_mask, tmp1, tmp2;
22336 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22337 : STRIP_UNARY (operands[4])))
22338 : {
22339 : reg4 = reg1;
22340 : reg3 = reg6;
22341 : operands[6] = operands[3];
22342 : }
22343 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22344 : STRIP_UNARY (operands[4])))
22345 : {
22346 : reg4 = reg2;
22347 : reg3 = reg6;
22348 : operands[6] = operands[3];
22349 : }
22350 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22351 : STRIP_UNARY (operands[3])))
22352 : {
22353 : reg4 = reg6;
22354 : reg3 = reg1;
22355 : operands[6] = operands[4];
22356 : }
22357 : else
22358 : {
22359 : reg4 = reg6;
22360 : reg3 = reg2;
22361 : operands[6] = operands[4];
22362 : }
22363 :
22364 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22365 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22366 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22367 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22368 :
22369 : tmp1 = reg1 | reg2;
22370 : tmp2 = reg3 | reg4;
22371 : reg_mask = tmp1 & tmp2;
22372 : reg_mask &= 0xFF;
22373 :
22374 : operands[1] = STRIP_UNARY (operands[1]);
22375 : operands[2] = STRIP_UNARY (operands[2]);
22376 : operands[6] = STRIP_UNARY (operands[6]);
22377 : if (!register_operand (operands[2], V4DFmode))
22378 : operands[2] = force_reg (V4DFmode, operands[2]);
22379 : if (!register_operand (operands[6], V4DFmode))
22380 : operands[6] = force_reg (V4DFmode, operands[6]);
22381 : operands[5] = GEN_INT (reg_mask);
22382 : }
22383 : #undef DONE
22384 : #undef FAIL
22385 : static const uint8_t expand_encoding[] = {
22386 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22387 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22388 : 0x25
22389 : };
22390 : return complete_seq (expand_encoding, operands);
22391 : }
22392 :
22393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22394 : extern rtx_insn *gen_split_2349 (rtx_insn *, rtx *);
22395 : rtx_insn *
22396 : gen_split_2349 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22397 : {
22398 : if (dump_file)
22399 : fprintf (dump_file, "Splitting with gen_split_2349 (sse.md:14142)\n");
22400 : start_sequence ();
22401 : #define FAIL return (end_sequence (), nullptr)
22402 : #define DONE return end_sequence ()
22403 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22404 : {
22405 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22406 : int reg6 = 0xF0;
22407 : int reg2 = 0xCC;
22408 : int reg1 = 0xAA;
22409 : int reg3 = 0;
22410 : int reg4 = 0;
22411 : int reg_mask, tmp1, tmp2;
22412 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22413 : STRIP_UNARY (operands[4])))
22414 : {
22415 : reg4 = reg1;
22416 : reg3 = reg6;
22417 : operands[6] = operands[3];
22418 : }
22419 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22420 : STRIP_UNARY (operands[4])))
22421 : {
22422 : reg4 = reg2;
22423 : reg3 = reg6;
22424 : operands[6] = operands[3];
22425 : }
22426 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22427 : STRIP_UNARY (operands[3])))
22428 : {
22429 : reg4 = reg6;
22430 : reg3 = reg1;
22431 : operands[6] = operands[4];
22432 : }
22433 : else
22434 : {
22435 : reg4 = reg6;
22436 : reg3 = reg2;
22437 : operands[6] = operands[4];
22438 : }
22439 :
22440 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22441 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22442 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22443 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22444 :
22445 : tmp1 = reg1 ^ reg2;
22446 : tmp2 = reg3 | reg4;
22447 : reg_mask = tmp1 | tmp2;
22448 : reg_mask &= 0xFF;
22449 :
22450 : operands[1] = STRIP_UNARY (operands[1]);
22451 : operands[2] = STRIP_UNARY (operands[2]);
22452 : operands[6] = STRIP_UNARY (operands[6]);
22453 : if (!register_operand (operands[2], V4DFmode))
22454 : operands[2] = force_reg (V4DFmode, operands[2]);
22455 : if (!register_operand (operands[6], V4DFmode))
22456 : operands[6] = force_reg (V4DFmode, operands[6]);
22457 : operands[5] = GEN_INT (reg_mask);
22458 : }
22459 : #undef DONE
22460 : #undef FAIL
22461 : static const uint8_t expand_encoding[] = {
22462 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22463 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22464 : 0x25
22465 : };
22466 : return complete_seq (expand_encoding, operands);
22467 : }
22468 :
22469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22470 : extern rtx_insn *gen_split_2359 (rtx_insn *, rtx *);
22471 : rtx_insn *
22472 : gen_split_2359 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22473 : {
22474 : if (dump_file)
22475 : fprintf (dump_file, "Splitting with gen_split_2359 (sse.md:14142)\n");
22476 : start_sequence ();
22477 : #define FAIL return (end_sequence (), nullptr)
22478 : #define DONE return end_sequence ()
22479 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22480 : {
22481 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22482 : int reg6 = 0xF0;
22483 : int reg2 = 0xCC;
22484 : int reg1 = 0xAA;
22485 : int reg3 = 0;
22486 : int reg4 = 0;
22487 : int reg_mask, tmp1, tmp2;
22488 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22489 : STRIP_UNARY (operands[4])))
22490 : {
22491 : reg4 = reg1;
22492 : reg3 = reg6;
22493 : operands[6] = operands[3];
22494 : }
22495 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22496 : STRIP_UNARY (operands[4])))
22497 : {
22498 : reg4 = reg2;
22499 : reg3 = reg6;
22500 : operands[6] = operands[3];
22501 : }
22502 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22503 : STRIP_UNARY (operands[3])))
22504 : {
22505 : reg4 = reg6;
22506 : reg3 = reg1;
22507 : operands[6] = operands[4];
22508 : }
22509 : else
22510 : {
22511 : reg4 = reg6;
22512 : reg3 = reg2;
22513 : operands[6] = operands[4];
22514 : }
22515 :
22516 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22517 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22518 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22519 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22520 :
22521 : tmp1 = reg1 & reg2;
22522 : tmp2 = reg3 | reg4;
22523 : reg_mask = tmp1 ^ tmp2;
22524 : reg_mask &= 0xFF;
22525 :
22526 : operands[1] = STRIP_UNARY (operands[1]);
22527 : operands[2] = STRIP_UNARY (operands[2]);
22528 : operands[6] = STRIP_UNARY (operands[6]);
22529 : if (!register_operand (operands[2], V2DFmode))
22530 : operands[2] = force_reg (V2DFmode, operands[2]);
22531 : if (!register_operand (operands[6], V2DFmode))
22532 : operands[6] = force_reg (V2DFmode, operands[6]);
22533 : operands[5] = GEN_INT (reg_mask);
22534 : }
22535 : #undef DONE
22536 : #undef FAIL
22537 : static const uint8_t expand_encoding[] = {
22538 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22539 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22540 : 0x25
22541 : };
22542 : return complete_seq (expand_encoding, operands);
22543 : }
22544 :
22545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22546 : extern rtx_insn *gen_split_2369 (rtx_insn *, rtx *);
22547 : rtx_insn *
22548 : gen_split_2369 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22549 : {
22550 : if (dump_file)
22551 : fprintf (dump_file, "Splitting with gen_split_2369 (sse.md:14142)\n");
22552 : start_sequence ();
22553 : #define FAIL return (end_sequence (), nullptr)
22554 : #define DONE return end_sequence ()
22555 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22556 : {
22557 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22558 : int reg6 = 0xF0;
22559 : int reg2 = 0xCC;
22560 : int reg1 = 0xAA;
22561 : int reg3 = 0;
22562 : int reg4 = 0;
22563 : int reg_mask, tmp1, tmp2;
22564 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22565 : STRIP_UNARY (operands[4])))
22566 : {
22567 : reg4 = reg1;
22568 : reg3 = reg6;
22569 : operands[6] = operands[3];
22570 : }
22571 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22572 : STRIP_UNARY (operands[4])))
22573 : {
22574 : reg4 = reg2;
22575 : reg3 = reg6;
22576 : operands[6] = operands[3];
22577 : }
22578 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22579 : STRIP_UNARY (operands[3])))
22580 : {
22581 : reg4 = reg6;
22582 : reg3 = reg1;
22583 : operands[6] = operands[4];
22584 : }
22585 : else
22586 : {
22587 : reg4 = reg6;
22588 : reg3 = reg2;
22589 : operands[6] = operands[4];
22590 : }
22591 :
22592 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22593 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22594 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22595 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22596 :
22597 : tmp1 = reg1 | reg2;
22598 : tmp2 = reg3 ^ reg4;
22599 : reg_mask = tmp1 & tmp2;
22600 : reg_mask &= 0xFF;
22601 :
22602 : operands[1] = STRIP_UNARY (operands[1]);
22603 : operands[2] = STRIP_UNARY (operands[2]);
22604 : operands[6] = STRIP_UNARY (operands[6]);
22605 : if (!register_operand (operands[2], V2DFmode))
22606 : operands[2] = force_reg (V2DFmode, operands[2]);
22607 : if (!register_operand (operands[6], V2DFmode))
22608 : operands[6] = force_reg (V2DFmode, operands[6]);
22609 : operands[5] = GEN_INT (reg_mask);
22610 : }
22611 : #undef DONE
22612 : #undef FAIL
22613 : static const uint8_t expand_encoding[] = {
22614 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22615 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22616 : 0x25
22617 : };
22618 : return complete_seq (expand_encoding, operands);
22619 : }
22620 :
22621 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22622 : extern rtx_insn *gen_split_2379 (rtx_insn *, rtx *);
22623 : rtx_insn *
22624 : gen_split_2379 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22625 : {
22626 : if (dump_file)
22627 : fprintf (dump_file, "Splitting with gen_split_2379 (sse.md:14142)\n");
22628 : start_sequence ();
22629 : #define FAIL return (end_sequence (), nullptr)
22630 : #define DONE return end_sequence ()
22631 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22632 : {
22633 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22634 : int reg6 = 0xF0;
22635 : int reg2 = 0xCC;
22636 : int reg1 = 0xAA;
22637 : int reg3 = 0;
22638 : int reg4 = 0;
22639 : int reg_mask, tmp1, tmp2;
22640 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22641 : STRIP_UNARY (operands[4])))
22642 : {
22643 : reg4 = reg1;
22644 : reg3 = reg6;
22645 : operands[6] = operands[3];
22646 : }
22647 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22648 : STRIP_UNARY (operands[4])))
22649 : {
22650 : reg4 = reg2;
22651 : reg3 = reg6;
22652 : operands[6] = operands[3];
22653 : }
22654 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22655 : STRIP_UNARY (operands[3])))
22656 : {
22657 : reg4 = reg6;
22658 : reg3 = reg1;
22659 : operands[6] = operands[4];
22660 : }
22661 : else
22662 : {
22663 : reg4 = reg6;
22664 : reg3 = reg2;
22665 : operands[6] = operands[4];
22666 : }
22667 :
22668 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22669 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22670 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22671 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22672 :
22673 : tmp1 = reg1 ^ reg2;
22674 : tmp2 = reg3 ^ reg4;
22675 : reg_mask = tmp1 | tmp2;
22676 : reg_mask &= 0xFF;
22677 :
22678 : operands[1] = STRIP_UNARY (operands[1]);
22679 : operands[2] = STRIP_UNARY (operands[2]);
22680 : operands[6] = STRIP_UNARY (operands[6]);
22681 : if (!register_operand (operands[2], V2DFmode))
22682 : operands[2] = force_reg (V2DFmode, operands[2]);
22683 : if (!register_operand (operands[6], V2DFmode))
22684 : operands[6] = force_reg (V2DFmode, operands[6]);
22685 : operands[5] = GEN_INT (reg_mask);
22686 : }
22687 : #undef DONE
22688 : #undef FAIL
22689 : static const uint8_t expand_encoding[] = {
22690 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22691 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22692 : 0x25
22693 : };
22694 : return complete_seq (expand_encoding, operands);
22695 : }
22696 :
22697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22698 : extern rtx_insn *gen_split_2389 (rtx_insn *, rtx *);
22699 : rtx_insn *
22700 : gen_split_2389 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22701 : {
22702 : if (dump_file)
22703 : fprintf (dump_file, "Splitting with gen_split_2389 (sse.md:14227)\n");
22704 : start_sequence ();
22705 : #define FAIL return (end_sequence (), nullptr)
22706 : #define DONE return end_sequence ()
22707 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22708 : {
22709 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22710 : int reg6 = 0xF0;
22711 : int reg2 = 0xCC;
22712 : int reg1 = 0xAA;
22713 : int reg3 = 0;
22714 : int reg4 = 0;
22715 : int reg_mask, tmp1, tmp2;
22716 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22717 : STRIP_UNARY (operands[4])))
22718 : {
22719 : reg4 = reg1;
22720 : reg3 = reg6;
22721 : operands[6] = operands[3];
22722 : }
22723 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22724 : STRIP_UNARY (operands[4])))
22725 : {
22726 : reg4 = reg2;
22727 : reg3 = reg6;
22728 : operands[6] = operands[3];
22729 : }
22730 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22731 : STRIP_UNARY (operands[3])))
22732 : {
22733 : reg4 = reg6;
22734 : reg3 = reg1;
22735 : operands[6] = operands[4];
22736 : }
22737 : else
22738 : {
22739 : reg4 = reg6;
22740 : reg3 = reg2;
22741 : operands[6] = operands[4];
22742 : }
22743 :
22744 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22745 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22746 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22747 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22748 :
22749 : tmp1 = reg1 ^ reg2;
22750 : tmp2 = tmp1 & reg3;
22751 : reg_mask = tmp2 ^ reg4;
22752 : reg_mask &= 0xFF;
22753 :
22754 : operands[1] = STRIP_UNARY (operands[1]);
22755 : operands[2] = STRIP_UNARY (operands[2]);
22756 : operands[6] = STRIP_UNARY (operands[6]);
22757 : operands[5] = GEN_INT (reg_mask);
22758 : if (!register_operand (operands[2], V64QImode))
22759 : operands[2] = force_reg (V64QImode, operands[2]);
22760 : if (!register_operand (operands[6], V64QImode))
22761 : operands[6] = force_reg (V64QImode, operands[6]);
22762 :
22763 : }
22764 : #undef DONE
22765 : #undef FAIL
22766 : static const uint8_t expand_encoding[] = {
22767 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22768 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22769 : 0x25
22770 : };
22771 : return complete_seq (expand_encoding, operands);
22772 : }
22773 :
22774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22775 : extern rtx_insn *gen_split_2399 (rtx_insn *, rtx *);
22776 : rtx_insn *
22777 : gen_split_2399 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22778 : {
22779 : if (dump_file)
22780 : fprintf (dump_file, "Splitting with gen_split_2399 (sse.md:14227)\n");
22781 : start_sequence ();
22782 : #define FAIL return (end_sequence (), nullptr)
22783 : #define DONE return end_sequence ()
22784 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22785 : {
22786 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22787 : int reg6 = 0xF0;
22788 : int reg2 = 0xCC;
22789 : int reg1 = 0xAA;
22790 : int reg3 = 0;
22791 : int reg4 = 0;
22792 : int reg_mask, tmp1, tmp2;
22793 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22794 : STRIP_UNARY (operands[4])))
22795 : {
22796 : reg4 = reg1;
22797 : reg3 = reg6;
22798 : operands[6] = operands[3];
22799 : }
22800 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22801 : STRIP_UNARY (operands[4])))
22802 : {
22803 : reg4 = reg2;
22804 : reg3 = reg6;
22805 : operands[6] = operands[3];
22806 : }
22807 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22808 : STRIP_UNARY (operands[3])))
22809 : {
22810 : reg4 = reg6;
22811 : reg3 = reg1;
22812 : operands[6] = operands[4];
22813 : }
22814 : else
22815 : {
22816 : reg4 = reg6;
22817 : reg3 = reg2;
22818 : operands[6] = operands[4];
22819 : }
22820 :
22821 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22822 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22823 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22824 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22825 :
22826 : tmp1 = reg1 & reg2;
22827 : tmp2 = tmp1 ^ reg3;
22828 : reg_mask = tmp2 & reg4;
22829 : reg_mask &= 0xFF;
22830 :
22831 : operands[1] = STRIP_UNARY (operands[1]);
22832 : operands[2] = STRIP_UNARY (operands[2]);
22833 : operands[6] = STRIP_UNARY (operands[6]);
22834 : operands[5] = GEN_INT (reg_mask);
22835 : if (!register_operand (operands[2], V64QImode))
22836 : operands[2] = force_reg (V64QImode, operands[2]);
22837 : if (!register_operand (operands[6], V64QImode))
22838 : operands[6] = force_reg (V64QImode, operands[6]);
22839 :
22840 : }
22841 : #undef DONE
22842 : #undef FAIL
22843 : static const uint8_t expand_encoding[] = {
22844 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22845 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22846 : 0x25
22847 : };
22848 : return complete_seq (expand_encoding, operands);
22849 : }
22850 :
22851 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22852 : extern rtx_insn *gen_split_2409 (rtx_insn *, rtx *);
22853 : rtx_insn *
22854 : gen_split_2409 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22855 : {
22856 : if (dump_file)
22857 : fprintf (dump_file, "Splitting with gen_split_2409 (sse.md:14227)\n");
22858 : start_sequence ();
22859 : #define FAIL return (end_sequence (), nullptr)
22860 : #define DONE return end_sequence ()
22861 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22862 : {
22863 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22864 : int reg6 = 0xF0;
22865 : int reg2 = 0xCC;
22866 : int reg1 = 0xAA;
22867 : int reg3 = 0;
22868 : int reg4 = 0;
22869 : int reg_mask, tmp1, tmp2;
22870 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22871 : STRIP_UNARY (operands[4])))
22872 : {
22873 : reg4 = reg1;
22874 : reg3 = reg6;
22875 : operands[6] = operands[3];
22876 : }
22877 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22878 : STRIP_UNARY (operands[4])))
22879 : {
22880 : reg4 = reg2;
22881 : reg3 = reg6;
22882 : operands[6] = operands[3];
22883 : }
22884 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22885 : STRIP_UNARY (operands[3])))
22886 : {
22887 : reg4 = reg6;
22888 : reg3 = reg1;
22889 : operands[6] = operands[4];
22890 : }
22891 : else
22892 : {
22893 : reg4 = reg6;
22894 : reg3 = reg2;
22895 : operands[6] = operands[4];
22896 : }
22897 :
22898 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22899 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22900 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22901 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22902 :
22903 : tmp1 = reg1 & reg2;
22904 : tmp2 = tmp1 & reg3;
22905 : reg_mask = tmp2 | reg4;
22906 : reg_mask &= 0xFF;
22907 :
22908 : operands[1] = STRIP_UNARY (operands[1]);
22909 : operands[2] = STRIP_UNARY (operands[2]);
22910 : operands[6] = STRIP_UNARY (operands[6]);
22911 : operands[5] = GEN_INT (reg_mask);
22912 : if (!register_operand (operands[2], V32QImode))
22913 : operands[2] = force_reg (V32QImode, operands[2]);
22914 : if (!register_operand (operands[6], V32QImode))
22915 : operands[6] = force_reg (V32QImode, operands[6]);
22916 :
22917 : }
22918 : #undef DONE
22919 : #undef FAIL
22920 : static const uint8_t expand_encoding[] = {
22921 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
22922 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22923 : 0x25
22924 : };
22925 : return complete_seq (expand_encoding, operands);
22926 : }
22927 :
22928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22929 : extern rtx_insn *gen_split_2419 (rtx_insn *, rtx *);
22930 : rtx_insn *
22931 : gen_split_2419 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22932 : {
22933 : if (dump_file)
22934 : fprintf (dump_file, "Splitting with gen_split_2419 (sse.md:14227)\n");
22935 : start_sequence ();
22936 : #define FAIL return (end_sequence (), nullptr)
22937 : #define DONE return end_sequence ()
22938 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22939 : {
22940 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22941 : int reg6 = 0xF0;
22942 : int reg2 = 0xCC;
22943 : int reg1 = 0xAA;
22944 : int reg3 = 0;
22945 : int reg4 = 0;
22946 : int reg_mask, tmp1, tmp2;
22947 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22948 : STRIP_UNARY (operands[4])))
22949 : {
22950 : reg4 = reg1;
22951 : reg3 = reg6;
22952 : operands[6] = operands[3];
22953 : }
22954 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22955 : STRIP_UNARY (operands[4])))
22956 : {
22957 : reg4 = reg2;
22958 : reg3 = reg6;
22959 : operands[6] = operands[3];
22960 : }
22961 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22962 : STRIP_UNARY (operands[3])))
22963 : {
22964 : reg4 = reg6;
22965 : reg3 = reg1;
22966 : operands[6] = operands[4];
22967 : }
22968 : else
22969 : {
22970 : reg4 = reg6;
22971 : reg3 = reg2;
22972 : operands[6] = operands[4];
22973 : }
22974 :
22975 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22976 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22977 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22978 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22979 :
22980 : tmp1 = reg1 & reg2;
22981 : tmp2 = tmp1 | reg3;
22982 : reg_mask = tmp2 ^ reg4;
22983 : reg_mask &= 0xFF;
22984 :
22985 : operands[1] = STRIP_UNARY (operands[1]);
22986 : operands[2] = STRIP_UNARY (operands[2]);
22987 : operands[6] = STRIP_UNARY (operands[6]);
22988 : operands[5] = GEN_INT (reg_mask);
22989 : if (!register_operand (operands[2], V32QImode))
22990 : operands[2] = force_reg (V32QImode, operands[2]);
22991 : if (!register_operand (operands[6], V32QImode))
22992 : operands[6] = force_reg (V32QImode, operands[6]);
22993 :
22994 : }
22995 : #undef DONE
22996 : #undef FAIL
22997 : static const uint8_t expand_encoding[] = {
22998 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
22999 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23000 : 0x25
23001 : };
23002 : return complete_seq (expand_encoding, operands);
23003 : }
23004 :
23005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23006 : extern rtx_insn *gen_split_2429 (rtx_insn *, rtx *);
23007 : rtx_insn *
23008 : gen_split_2429 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23009 : {
23010 : if (dump_file)
23011 : fprintf (dump_file, "Splitting with gen_split_2429 (sse.md:14227)\n");
23012 : start_sequence ();
23013 : #define FAIL return (end_sequence (), nullptr)
23014 : #define DONE return end_sequence ()
23015 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23016 : {
23017 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23018 : int reg6 = 0xF0;
23019 : int reg2 = 0xCC;
23020 : int reg1 = 0xAA;
23021 : int reg3 = 0;
23022 : int reg4 = 0;
23023 : int reg_mask, tmp1, tmp2;
23024 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23025 : STRIP_UNARY (operands[4])))
23026 : {
23027 : reg4 = reg1;
23028 : reg3 = reg6;
23029 : operands[6] = operands[3];
23030 : }
23031 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23032 : STRIP_UNARY (operands[4])))
23033 : {
23034 : reg4 = reg2;
23035 : reg3 = reg6;
23036 : operands[6] = operands[3];
23037 : }
23038 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23039 : STRIP_UNARY (operands[3])))
23040 : {
23041 : reg4 = reg6;
23042 : reg3 = reg1;
23043 : operands[6] = operands[4];
23044 : }
23045 : else
23046 : {
23047 : reg4 = reg6;
23048 : reg3 = reg2;
23049 : operands[6] = operands[4];
23050 : }
23051 :
23052 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23053 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23054 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23055 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23056 :
23057 : tmp1 = reg1 | reg2;
23058 : tmp2 = tmp1 ^ reg3;
23059 : reg_mask = tmp2 & reg4;
23060 : reg_mask &= 0xFF;
23061 :
23062 : operands[1] = STRIP_UNARY (operands[1]);
23063 : operands[2] = STRIP_UNARY (operands[2]);
23064 : operands[6] = STRIP_UNARY (operands[6]);
23065 : operands[5] = GEN_INT (reg_mask);
23066 : if (!register_operand (operands[2], V32QImode))
23067 : operands[2] = force_reg (V32QImode, operands[2]);
23068 : if (!register_operand (operands[6], V32QImode))
23069 : operands[6] = force_reg (V32QImode, operands[6]);
23070 :
23071 : }
23072 : #undef DONE
23073 : #undef FAIL
23074 : static const uint8_t expand_encoding[] = {
23075 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23076 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23077 : 0x25
23078 : };
23079 : return complete_seq (expand_encoding, operands);
23080 : }
23081 :
23082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23083 : extern rtx_insn *gen_split_2439 (rtx_insn *, rtx *);
23084 : rtx_insn *
23085 : gen_split_2439 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23086 : {
23087 : if (dump_file)
23088 : fprintf (dump_file, "Splitting with gen_split_2439 (sse.md:14227)\n");
23089 : start_sequence ();
23090 : #define FAIL return (end_sequence (), nullptr)
23091 : #define DONE return end_sequence ()
23092 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23093 : {
23094 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23095 : int reg6 = 0xF0;
23096 : int reg2 = 0xCC;
23097 : int reg1 = 0xAA;
23098 : int reg3 = 0;
23099 : int reg4 = 0;
23100 : int reg_mask, tmp1, tmp2;
23101 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23102 : STRIP_UNARY (operands[4])))
23103 : {
23104 : reg4 = reg1;
23105 : reg3 = reg6;
23106 : operands[6] = operands[3];
23107 : }
23108 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23109 : STRIP_UNARY (operands[4])))
23110 : {
23111 : reg4 = reg2;
23112 : reg3 = reg6;
23113 : operands[6] = operands[3];
23114 : }
23115 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23116 : STRIP_UNARY (operands[3])))
23117 : {
23118 : reg4 = reg6;
23119 : reg3 = reg1;
23120 : operands[6] = operands[4];
23121 : }
23122 : else
23123 : {
23124 : reg4 = reg6;
23125 : reg3 = reg2;
23126 : operands[6] = operands[4];
23127 : }
23128 :
23129 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23130 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23131 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23132 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23133 :
23134 : tmp1 = reg1 | reg2;
23135 : tmp2 = tmp1 & reg3;
23136 : reg_mask = tmp2 | reg4;
23137 : reg_mask &= 0xFF;
23138 :
23139 : operands[1] = STRIP_UNARY (operands[1]);
23140 : operands[2] = STRIP_UNARY (operands[2]);
23141 : operands[6] = STRIP_UNARY (operands[6]);
23142 : operands[5] = GEN_INT (reg_mask);
23143 : if (!register_operand (operands[2], V16QImode))
23144 : operands[2] = force_reg (V16QImode, operands[2]);
23145 : if (!register_operand (operands[6], V16QImode))
23146 : operands[6] = force_reg (V16QImode, operands[6]);
23147 :
23148 : }
23149 : #undef DONE
23150 : #undef FAIL
23151 : static const uint8_t expand_encoding[] = {
23152 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23153 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23154 : 0x25
23155 : };
23156 : return complete_seq (expand_encoding, operands);
23157 : }
23158 :
23159 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23160 : extern rtx_insn *gen_split_2449 (rtx_insn *, rtx *);
23161 : rtx_insn *
23162 : gen_split_2449 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23163 : {
23164 : if (dump_file)
23165 : fprintf (dump_file, "Splitting with gen_split_2449 (sse.md:14227)\n");
23166 : start_sequence ();
23167 : #define FAIL return (end_sequence (), nullptr)
23168 : #define DONE return end_sequence ()
23169 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23170 : {
23171 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23172 : int reg6 = 0xF0;
23173 : int reg2 = 0xCC;
23174 : int reg1 = 0xAA;
23175 : int reg3 = 0;
23176 : int reg4 = 0;
23177 : int reg_mask, tmp1, tmp2;
23178 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23179 : STRIP_UNARY (operands[4])))
23180 : {
23181 : reg4 = reg1;
23182 : reg3 = reg6;
23183 : operands[6] = operands[3];
23184 : }
23185 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23186 : STRIP_UNARY (operands[4])))
23187 : {
23188 : reg4 = reg2;
23189 : reg3 = reg6;
23190 : operands[6] = operands[3];
23191 : }
23192 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23193 : STRIP_UNARY (operands[3])))
23194 : {
23195 : reg4 = reg6;
23196 : reg3 = reg1;
23197 : operands[6] = operands[4];
23198 : }
23199 : else
23200 : {
23201 : reg4 = reg6;
23202 : reg3 = reg2;
23203 : operands[6] = operands[4];
23204 : }
23205 :
23206 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23207 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23208 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23209 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23210 :
23211 : tmp1 = reg1 | reg2;
23212 : tmp2 = tmp1 | reg3;
23213 : reg_mask = tmp2 ^ reg4;
23214 : reg_mask &= 0xFF;
23215 :
23216 : operands[1] = STRIP_UNARY (operands[1]);
23217 : operands[2] = STRIP_UNARY (operands[2]);
23218 : operands[6] = STRIP_UNARY (operands[6]);
23219 : operands[5] = GEN_INT (reg_mask);
23220 : if (!register_operand (operands[2], V16QImode))
23221 : operands[2] = force_reg (V16QImode, operands[2]);
23222 : if (!register_operand (operands[6], V16QImode))
23223 : operands[6] = force_reg (V16QImode, operands[6]);
23224 :
23225 : }
23226 : #undef DONE
23227 : #undef FAIL
23228 : static const uint8_t expand_encoding[] = {
23229 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23230 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23231 : 0x25
23232 : };
23233 : return complete_seq (expand_encoding, operands);
23234 : }
23235 :
23236 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23237 : extern rtx_insn *gen_split_2459 (rtx_insn *, rtx *);
23238 : rtx_insn *
23239 : gen_split_2459 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23240 : {
23241 : if (dump_file)
23242 : fprintf (dump_file, "Splitting with gen_split_2459 (sse.md:14227)\n");
23243 : start_sequence ();
23244 : #define FAIL return (end_sequence (), nullptr)
23245 : #define DONE return end_sequence ()
23246 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23247 : {
23248 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23249 : int reg6 = 0xF0;
23250 : int reg2 = 0xCC;
23251 : int reg1 = 0xAA;
23252 : int reg3 = 0;
23253 : int reg4 = 0;
23254 : int reg_mask, tmp1, tmp2;
23255 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23256 : STRIP_UNARY (operands[4])))
23257 : {
23258 : reg4 = reg1;
23259 : reg3 = reg6;
23260 : operands[6] = operands[3];
23261 : }
23262 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23263 : STRIP_UNARY (operands[4])))
23264 : {
23265 : reg4 = reg2;
23266 : reg3 = reg6;
23267 : operands[6] = operands[3];
23268 : }
23269 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23270 : STRIP_UNARY (operands[3])))
23271 : {
23272 : reg4 = reg6;
23273 : reg3 = reg1;
23274 : operands[6] = operands[4];
23275 : }
23276 : else
23277 : {
23278 : reg4 = reg6;
23279 : reg3 = reg2;
23280 : operands[6] = operands[4];
23281 : }
23282 :
23283 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23284 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23285 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23286 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23287 :
23288 : tmp1 = reg1 ^ reg2;
23289 : tmp2 = tmp1 ^ reg3;
23290 : reg_mask = tmp2 & reg4;
23291 : reg_mask &= 0xFF;
23292 :
23293 : operands[1] = STRIP_UNARY (operands[1]);
23294 : operands[2] = STRIP_UNARY (operands[2]);
23295 : operands[6] = STRIP_UNARY (operands[6]);
23296 : operands[5] = GEN_INT (reg_mask);
23297 : if (!register_operand (operands[2], V16QImode))
23298 : operands[2] = force_reg (V16QImode, operands[2]);
23299 : if (!register_operand (operands[6], V16QImode))
23300 : operands[6] = force_reg (V16QImode, operands[6]);
23301 :
23302 : }
23303 : #undef DONE
23304 : #undef FAIL
23305 : static const uint8_t expand_encoding[] = {
23306 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23307 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23308 : 0x25
23309 : };
23310 : return complete_seq (expand_encoding, operands);
23311 : }
23312 :
23313 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23314 : extern rtx_insn *gen_split_2469 (rtx_insn *, rtx *);
23315 : rtx_insn *
23316 : gen_split_2469 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23317 : {
23318 : if (dump_file)
23319 : fprintf (dump_file, "Splitting with gen_split_2469 (sse.md:14227)\n");
23320 : start_sequence ();
23321 : #define FAIL return (end_sequence (), nullptr)
23322 : #define DONE return end_sequence ()
23323 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23324 : {
23325 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23326 : int reg6 = 0xF0;
23327 : int reg2 = 0xCC;
23328 : int reg1 = 0xAA;
23329 : int reg3 = 0;
23330 : int reg4 = 0;
23331 : int reg_mask, tmp1, tmp2;
23332 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23333 : STRIP_UNARY (operands[4])))
23334 : {
23335 : reg4 = reg1;
23336 : reg3 = reg6;
23337 : operands[6] = operands[3];
23338 : }
23339 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23340 : STRIP_UNARY (operands[4])))
23341 : {
23342 : reg4 = reg2;
23343 : reg3 = reg6;
23344 : operands[6] = operands[3];
23345 : }
23346 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23347 : STRIP_UNARY (operands[3])))
23348 : {
23349 : reg4 = reg6;
23350 : reg3 = reg1;
23351 : operands[6] = operands[4];
23352 : }
23353 : else
23354 : {
23355 : reg4 = reg6;
23356 : reg3 = reg2;
23357 : operands[6] = operands[4];
23358 : }
23359 :
23360 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23361 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23362 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23363 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23364 :
23365 : tmp1 = reg1 ^ reg2;
23366 : tmp2 = tmp1 & reg3;
23367 : reg_mask = tmp2 | reg4;
23368 : reg_mask &= 0xFF;
23369 :
23370 : operands[1] = STRIP_UNARY (operands[1]);
23371 : operands[2] = STRIP_UNARY (operands[2]);
23372 : operands[6] = STRIP_UNARY (operands[6]);
23373 : operands[5] = GEN_INT (reg_mask);
23374 : if (!register_operand (operands[2], V32HImode))
23375 : operands[2] = force_reg (V32HImode, operands[2]);
23376 : if (!register_operand (operands[6], V32HImode))
23377 : operands[6] = force_reg (V32HImode, operands[6]);
23378 :
23379 : }
23380 : #undef DONE
23381 : #undef FAIL
23382 : static const uint8_t expand_encoding[] = {
23383 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23384 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23385 : 0x25
23386 : };
23387 : return complete_seq (expand_encoding, operands);
23388 : }
23389 :
23390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23391 : extern rtx_insn *gen_split_2479 (rtx_insn *, rtx *);
23392 : rtx_insn *
23393 : gen_split_2479 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23394 : {
23395 : if (dump_file)
23396 : fprintf (dump_file, "Splitting with gen_split_2479 (sse.md:14227)\n");
23397 : start_sequence ();
23398 : #define FAIL return (end_sequence (), nullptr)
23399 : #define DONE return end_sequence ()
23400 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23401 : {
23402 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23403 : int reg6 = 0xF0;
23404 : int reg2 = 0xCC;
23405 : int reg1 = 0xAA;
23406 : int reg3 = 0;
23407 : int reg4 = 0;
23408 : int reg_mask, tmp1, tmp2;
23409 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23410 : STRIP_UNARY (operands[4])))
23411 : {
23412 : reg4 = reg1;
23413 : reg3 = reg6;
23414 : operands[6] = operands[3];
23415 : }
23416 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23417 : STRIP_UNARY (operands[4])))
23418 : {
23419 : reg4 = reg2;
23420 : reg3 = reg6;
23421 : operands[6] = operands[3];
23422 : }
23423 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23424 : STRIP_UNARY (operands[3])))
23425 : {
23426 : reg4 = reg6;
23427 : reg3 = reg1;
23428 : operands[6] = operands[4];
23429 : }
23430 : else
23431 : {
23432 : reg4 = reg6;
23433 : reg3 = reg2;
23434 : operands[6] = operands[4];
23435 : }
23436 :
23437 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23438 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23439 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23440 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23441 :
23442 : tmp1 = reg1 ^ reg2;
23443 : tmp2 = tmp1 | reg3;
23444 : reg_mask = tmp2 ^ reg4;
23445 : reg_mask &= 0xFF;
23446 :
23447 : operands[1] = STRIP_UNARY (operands[1]);
23448 : operands[2] = STRIP_UNARY (operands[2]);
23449 : operands[6] = STRIP_UNARY (operands[6]);
23450 : operands[5] = GEN_INT (reg_mask);
23451 : if (!register_operand (operands[2], V32HImode))
23452 : operands[2] = force_reg (V32HImode, operands[2]);
23453 : if (!register_operand (operands[6], V32HImode))
23454 : operands[6] = force_reg (V32HImode, operands[6]);
23455 :
23456 : }
23457 : #undef DONE
23458 : #undef FAIL
23459 : static const uint8_t expand_encoding[] = {
23460 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23461 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23462 : 0x25
23463 : };
23464 : return complete_seq (expand_encoding, operands);
23465 : }
23466 :
23467 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23468 : extern rtx_insn *gen_split_2489 (rtx_insn *, rtx *);
23469 : rtx_insn *
23470 : gen_split_2489 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23471 : {
23472 : if (dump_file)
23473 : fprintf (dump_file, "Splitting with gen_split_2489 (sse.md:14227)\n");
23474 : start_sequence ();
23475 : #define FAIL return (end_sequence (), nullptr)
23476 : #define DONE return end_sequence ()
23477 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23478 : {
23479 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23480 : int reg6 = 0xF0;
23481 : int reg2 = 0xCC;
23482 : int reg1 = 0xAA;
23483 : int reg3 = 0;
23484 : int reg4 = 0;
23485 : int reg_mask, tmp1, tmp2;
23486 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23487 : STRIP_UNARY (operands[4])))
23488 : {
23489 : reg4 = reg1;
23490 : reg3 = reg6;
23491 : operands[6] = operands[3];
23492 : }
23493 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23494 : STRIP_UNARY (operands[4])))
23495 : {
23496 : reg4 = reg2;
23497 : reg3 = reg6;
23498 : operands[6] = operands[3];
23499 : }
23500 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23501 : STRIP_UNARY (operands[3])))
23502 : {
23503 : reg4 = reg6;
23504 : reg3 = reg1;
23505 : operands[6] = operands[4];
23506 : }
23507 : else
23508 : {
23509 : reg4 = reg6;
23510 : reg3 = reg2;
23511 : operands[6] = operands[4];
23512 : }
23513 :
23514 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23515 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23516 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23517 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23518 :
23519 : tmp1 = reg1 & reg2;
23520 : tmp2 = tmp1 & reg3;
23521 : reg_mask = tmp2 & reg4;
23522 : reg_mask &= 0xFF;
23523 :
23524 : operands[1] = STRIP_UNARY (operands[1]);
23525 : operands[2] = STRIP_UNARY (operands[2]);
23526 : operands[6] = STRIP_UNARY (operands[6]);
23527 : operands[5] = GEN_INT (reg_mask);
23528 : if (!register_operand (operands[2], V16HImode))
23529 : operands[2] = force_reg (V16HImode, operands[2]);
23530 : if (!register_operand (operands[6], V16HImode))
23531 : operands[6] = force_reg (V16HImode, operands[6]);
23532 :
23533 : }
23534 : #undef DONE
23535 : #undef FAIL
23536 : static const uint8_t expand_encoding[] = {
23537 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23538 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23539 : 0x25
23540 : };
23541 : return complete_seq (expand_encoding, operands);
23542 : }
23543 :
23544 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23545 : extern rtx_insn *gen_split_2499 (rtx_insn *, rtx *);
23546 : rtx_insn *
23547 : gen_split_2499 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23548 : {
23549 : if (dump_file)
23550 : fprintf (dump_file, "Splitting with gen_split_2499 (sse.md:14227)\n");
23551 : start_sequence ();
23552 : #define FAIL return (end_sequence (), nullptr)
23553 : #define DONE return end_sequence ()
23554 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23555 : {
23556 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23557 : int reg6 = 0xF0;
23558 : int reg2 = 0xCC;
23559 : int reg1 = 0xAA;
23560 : int reg3 = 0;
23561 : int reg4 = 0;
23562 : int reg_mask, tmp1, tmp2;
23563 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23564 : STRIP_UNARY (operands[4])))
23565 : {
23566 : reg4 = reg1;
23567 : reg3 = reg6;
23568 : operands[6] = operands[3];
23569 : }
23570 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23571 : STRIP_UNARY (operands[4])))
23572 : {
23573 : reg4 = reg2;
23574 : reg3 = reg6;
23575 : operands[6] = operands[3];
23576 : }
23577 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23578 : STRIP_UNARY (operands[3])))
23579 : {
23580 : reg4 = reg6;
23581 : reg3 = reg1;
23582 : operands[6] = operands[4];
23583 : }
23584 : else
23585 : {
23586 : reg4 = reg6;
23587 : reg3 = reg2;
23588 : operands[6] = operands[4];
23589 : }
23590 :
23591 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23592 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23593 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23594 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23595 :
23596 : tmp1 = reg1 & reg2;
23597 : tmp2 = tmp1 | reg3;
23598 : reg_mask = tmp2 | reg4;
23599 : reg_mask &= 0xFF;
23600 :
23601 : operands[1] = STRIP_UNARY (operands[1]);
23602 : operands[2] = STRIP_UNARY (operands[2]);
23603 : operands[6] = STRIP_UNARY (operands[6]);
23604 : operands[5] = GEN_INT (reg_mask);
23605 : if (!register_operand (operands[2], V16HImode))
23606 : operands[2] = force_reg (V16HImode, operands[2]);
23607 : if (!register_operand (operands[6], V16HImode))
23608 : operands[6] = force_reg (V16HImode, operands[6]);
23609 :
23610 : }
23611 : #undef DONE
23612 : #undef FAIL
23613 : static const uint8_t expand_encoding[] = {
23614 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23615 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23616 : 0x25
23617 : };
23618 : return complete_seq (expand_encoding, operands);
23619 : }
23620 :
23621 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23622 : extern rtx_insn *gen_split_2509 (rtx_insn *, rtx *);
23623 : rtx_insn *
23624 : gen_split_2509 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23625 : {
23626 : if (dump_file)
23627 : fprintf (dump_file, "Splitting with gen_split_2509 (sse.md:14227)\n");
23628 : start_sequence ();
23629 : #define FAIL return (end_sequence (), nullptr)
23630 : #define DONE return end_sequence ()
23631 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23632 : {
23633 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23634 : int reg6 = 0xF0;
23635 : int reg2 = 0xCC;
23636 : int reg1 = 0xAA;
23637 : int reg3 = 0;
23638 : int reg4 = 0;
23639 : int reg_mask, tmp1, tmp2;
23640 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23641 : STRIP_UNARY (operands[4])))
23642 : {
23643 : reg4 = reg1;
23644 : reg3 = reg6;
23645 : operands[6] = operands[3];
23646 : }
23647 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23648 : STRIP_UNARY (operands[4])))
23649 : {
23650 : reg4 = reg2;
23651 : reg3 = reg6;
23652 : operands[6] = operands[3];
23653 : }
23654 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23655 : STRIP_UNARY (operands[3])))
23656 : {
23657 : reg4 = reg6;
23658 : reg3 = reg1;
23659 : operands[6] = operands[4];
23660 : }
23661 : else
23662 : {
23663 : reg4 = reg6;
23664 : reg3 = reg2;
23665 : operands[6] = operands[4];
23666 : }
23667 :
23668 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23669 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23670 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23671 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23672 :
23673 : tmp1 = reg1 & reg2;
23674 : tmp2 = tmp1 ^ reg3;
23675 : reg_mask = tmp2 ^ reg4;
23676 : reg_mask &= 0xFF;
23677 :
23678 : operands[1] = STRIP_UNARY (operands[1]);
23679 : operands[2] = STRIP_UNARY (operands[2]);
23680 : operands[6] = STRIP_UNARY (operands[6]);
23681 : operands[5] = GEN_INT (reg_mask);
23682 : if (!register_operand (operands[2], V16HImode))
23683 : operands[2] = force_reg (V16HImode, operands[2]);
23684 : if (!register_operand (operands[6], V16HImode))
23685 : operands[6] = force_reg (V16HImode, operands[6]);
23686 :
23687 : }
23688 : #undef DONE
23689 : #undef FAIL
23690 : static const uint8_t expand_encoding[] = {
23691 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23692 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23693 : 0x25
23694 : };
23695 : return complete_seq (expand_encoding, operands);
23696 : }
23697 :
23698 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23699 : extern rtx_insn *gen_split_2519 (rtx_insn *, rtx *);
23700 : rtx_insn *
23701 : gen_split_2519 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23702 : {
23703 : if (dump_file)
23704 : fprintf (dump_file, "Splitting with gen_split_2519 (sse.md:14227)\n");
23705 : start_sequence ();
23706 : #define FAIL return (end_sequence (), nullptr)
23707 : #define DONE return end_sequence ()
23708 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23709 : {
23710 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23711 : int reg6 = 0xF0;
23712 : int reg2 = 0xCC;
23713 : int reg1 = 0xAA;
23714 : int reg3 = 0;
23715 : int reg4 = 0;
23716 : int reg_mask, tmp1, tmp2;
23717 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23718 : STRIP_UNARY (operands[4])))
23719 : {
23720 : reg4 = reg1;
23721 : reg3 = reg6;
23722 : operands[6] = operands[3];
23723 : }
23724 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23725 : STRIP_UNARY (operands[4])))
23726 : {
23727 : reg4 = reg2;
23728 : reg3 = reg6;
23729 : operands[6] = operands[3];
23730 : }
23731 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23732 : STRIP_UNARY (operands[3])))
23733 : {
23734 : reg4 = reg6;
23735 : reg3 = reg1;
23736 : operands[6] = operands[4];
23737 : }
23738 : else
23739 : {
23740 : reg4 = reg6;
23741 : reg3 = reg2;
23742 : operands[6] = operands[4];
23743 : }
23744 :
23745 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23746 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23747 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23748 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23749 :
23750 : tmp1 = reg1 | reg2;
23751 : tmp2 = tmp1 & reg3;
23752 : reg_mask = tmp2 & reg4;
23753 : reg_mask &= 0xFF;
23754 :
23755 : operands[1] = STRIP_UNARY (operands[1]);
23756 : operands[2] = STRIP_UNARY (operands[2]);
23757 : operands[6] = STRIP_UNARY (operands[6]);
23758 : operands[5] = GEN_INT (reg_mask);
23759 : if (!register_operand (operands[2], V8HImode))
23760 : operands[2] = force_reg (V8HImode, operands[2]);
23761 : if (!register_operand (operands[6], V8HImode))
23762 : operands[6] = force_reg (V8HImode, operands[6]);
23763 :
23764 : }
23765 : #undef DONE
23766 : #undef FAIL
23767 : static const uint8_t expand_encoding[] = {
23768 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23769 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23770 : 0x25
23771 : };
23772 : return complete_seq (expand_encoding, operands);
23773 : }
23774 :
23775 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23776 : extern rtx_insn *gen_split_2529 (rtx_insn *, rtx *);
23777 : rtx_insn *
23778 : gen_split_2529 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23779 : {
23780 : if (dump_file)
23781 : fprintf (dump_file, "Splitting with gen_split_2529 (sse.md:14227)\n");
23782 : start_sequence ();
23783 : #define FAIL return (end_sequence (), nullptr)
23784 : #define DONE return end_sequence ()
23785 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23786 : {
23787 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23788 : int reg6 = 0xF0;
23789 : int reg2 = 0xCC;
23790 : int reg1 = 0xAA;
23791 : int reg3 = 0;
23792 : int reg4 = 0;
23793 : int reg_mask, tmp1, tmp2;
23794 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23795 : STRIP_UNARY (operands[4])))
23796 : {
23797 : reg4 = reg1;
23798 : reg3 = reg6;
23799 : operands[6] = operands[3];
23800 : }
23801 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23802 : STRIP_UNARY (operands[4])))
23803 : {
23804 : reg4 = reg2;
23805 : reg3 = reg6;
23806 : operands[6] = operands[3];
23807 : }
23808 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23809 : STRIP_UNARY (operands[3])))
23810 : {
23811 : reg4 = reg6;
23812 : reg3 = reg1;
23813 : operands[6] = operands[4];
23814 : }
23815 : else
23816 : {
23817 : reg4 = reg6;
23818 : reg3 = reg2;
23819 : operands[6] = operands[4];
23820 : }
23821 :
23822 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23823 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23824 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23825 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23826 :
23827 : tmp1 = reg1 | reg2;
23828 : tmp2 = tmp1 | reg3;
23829 : reg_mask = tmp2 | reg4;
23830 : reg_mask &= 0xFF;
23831 :
23832 : operands[1] = STRIP_UNARY (operands[1]);
23833 : operands[2] = STRIP_UNARY (operands[2]);
23834 : operands[6] = STRIP_UNARY (operands[6]);
23835 : operands[5] = GEN_INT (reg_mask);
23836 : if (!register_operand (operands[2], V8HImode))
23837 : operands[2] = force_reg (V8HImode, operands[2]);
23838 : if (!register_operand (operands[6], V8HImode))
23839 : operands[6] = force_reg (V8HImode, operands[6]);
23840 :
23841 : }
23842 : #undef DONE
23843 : #undef FAIL
23844 : static const uint8_t expand_encoding[] = {
23845 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23846 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23847 : 0x25
23848 : };
23849 : return complete_seq (expand_encoding, operands);
23850 : }
23851 :
23852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23853 : extern rtx_insn *gen_split_2539 (rtx_insn *, rtx *);
23854 : rtx_insn *
23855 : gen_split_2539 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23856 : {
23857 : if (dump_file)
23858 : fprintf (dump_file, "Splitting with gen_split_2539 (sse.md:14227)\n");
23859 : start_sequence ();
23860 : #define FAIL return (end_sequence (), nullptr)
23861 : #define DONE return end_sequence ()
23862 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23863 : {
23864 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23865 : int reg6 = 0xF0;
23866 : int reg2 = 0xCC;
23867 : int reg1 = 0xAA;
23868 : int reg3 = 0;
23869 : int reg4 = 0;
23870 : int reg_mask, tmp1, tmp2;
23871 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23872 : STRIP_UNARY (operands[4])))
23873 : {
23874 : reg4 = reg1;
23875 : reg3 = reg6;
23876 : operands[6] = operands[3];
23877 : }
23878 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23879 : STRIP_UNARY (operands[4])))
23880 : {
23881 : reg4 = reg2;
23882 : reg3 = reg6;
23883 : operands[6] = operands[3];
23884 : }
23885 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23886 : STRIP_UNARY (operands[3])))
23887 : {
23888 : reg4 = reg6;
23889 : reg3 = reg1;
23890 : operands[6] = operands[4];
23891 : }
23892 : else
23893 : {
23894 : reg4 = reg6;
23895 : reg3 = reg2;
23896 : operands[6] = operands[4];
23897 : }
23898 :
23899 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23900 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23901 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23902 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23903 :
23904 : tmp1 = reg1 | reg2;
23905 : tmp2 = tmp1 ^ reg3;
23906 : reg_mask = tmp2 ^ reg4;
23907 : reg_mask &= 0xFF;
23908 :
23909 : operands[1] = STRIP_UNARY (operands[1]);
23910 : operands[2] = STRIP_UNARY (operands[2]);
23911 : operands[6] = STRIP_UNARY (operands[6]);
23912 : operands[5] = GEN_INT (reg_mask);
23913 : if (!register_operand (operands[2], V8HImode))
23914 : operands[2] = force_reg (V8HImode, operands[2]);
23915 : if (!register_operand (operands[6], V8HImode))
23916 : operands[6] = force_reg (V8HImode, operands[6]);
23917 :
23918 : }
23919 : #undef DONE
23920 : #undef FAIL
23921 : static const uint8_t expand_encoding[] = {
23922 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23923 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23924 : 0x25
23925 : };
23926 : return complete_seq (expand_encoding, operands);
23927 : }
23928 :
23929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23930 : extern rtx_insn *gen_split_2549 (rtx_insn *, rtx *);
23931 : rtx_insn *
23932 : gen_split_2549 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23933 : {
23934 : if (dump_file)
23935 : fprintf (dump_file, "Splitting with gen_split_2549 (sse.md:14227)\n");
23936 : start_sequence ();
23937 : #define FAIL return (end_sequence (), nullptr)
23938 : #define DONE return end_sequence ()
23939 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23940 : {
23941 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23942 : int reg6 = 0xF0;
23943 : int reg2 = 0xCC;
23944 : int reg1 = 0xAA;
23945 : int reg3 = 0;
23946 : int reg4 = 0;
23947 : int reg_mask, tmp1, tmp2;
23948 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23949 : STRIP_UNARY (operands[4])))
23950 : {
23951 : reg4 = reg1;
23952 : reg3 = reg6;
23953 : operands[6] = operands[3];
23954 : }
23955 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23956 : STRIP_UNARY (operands[4])))
23957 : {
23958 : reg4 = reg2;
23959 : reg3 = reg6;
23960 : operands[6] = operands[3];
23961 : }
23962 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23963 : STRIP_UNARY (operands[3])))
23964 : {
23965 : reg4 = reg6;
23966 : reg3 = reg1;
23967 : operands[6] = operands[4];
23968 : }
23969 : else
23970 : {
23971 : reg4 = reg6;
23972 : reg3 = reg2;
23973 : operands[6] = operands[4];
23974 : }
23975 :
23976 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23977 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23978 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23979 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23980 :
23981 : tmp1 = reg1 ^ reg2;
23982 : tmp2 = tmp1 & reg3;
23983 : reg_mask = tmp2 & reg4;
23984 : reg_mask &= 0xFF;
23985 :
23986 : operands[1] = STRIP_UNARY (operands[1]);
23987 : operands[2] = STRIP_UNARY (operands[2]);
23988 : operands[6] = STRIP_UNARY (operands[6]);
23989 : operands[5] = GEN_INT (reg_mask);
23990 : if (!register_operand (operands[2], V16SImode))
23991 : operands[2] = force_reg (V16SImode, operands[2]);
23992 : if (!register_operand (operands[6], V16SImode))
23993 : operands[6] = force_reg (V16SImode, operands[6]);
23994 :
23995 : }
23996 : #undef DONE
23997 : #undef FAIL
23998 : static const uint8_t expand_encoding[] = {
23999 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24000 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24001 : 0x25
24002 : };
24003 : return complete_seq (expand_encoding, operands);
24004 : }
24005 :
24006 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24007 : extern rtx_insn *gen_split_2559 (rtx_insn *, rtx *);
24008 : rtx_insn *
24009 : gen_split_2559 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24010 : {
24011 : if (dump_file)
24012 : fprintf (dump_file, "Splitting with gen_split_2559 (sse.md:14227)\n");
24013 : start_sequence ();
24014 : #define FAIL return (end_sequence (), nullptr)
24015 : #define DONE return end_sequence ()
24016 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24017 : {
24018 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24019 : int reg6 = 0xF0;
24020 : int reg2 = 0xCC;
24021 : int reg1 = 0xAA;
24022 : int reg3 = 0;
24023 : int reg4 = 0;
24024 : int reg_mask, tmp1, tmp2;
24025 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24026 : STRIP_UNARY (operands[4])))
24027 : {
24028 : reg4 = reg1;
24029 : reg3 = reg6;
24030 : operands[6] = operands[3];
24031 : }
24032 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24033 : STRIP_UNARY (operands[4])))
24034 : {
24035 : reg4 = reg2;
24036 : reg3 = reg6;
24037 : operands[6] = operands[3];
24038 : }
24039 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24040 : STRIP_UNARY (operands[3])))
24041 : {
24042 : reg4 = reg6;
24043 : reg3 = reg1;
24044 : operands[6] = operands[4];
24045 : }
24046 : else
24047 : {
24048 : reg4 = reg6;
24049 : reg3 = reg2;
24050 : operands[6] = operands[4];
24051 : }
24052 :
24053 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24054 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24055 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24056 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24057 :
24058 : tmp1 = reg1 ^ reg2;
24059 : tmp2 = tmp1 | reg3;
24060 : reg_mask = tmp2 | reg4;
24061 : reg_mask &= 0xFF;
24062 :
24063 : operands[1] = STRIP_UNARY (operands[1]);
24064 : operands[2] = STRIP_UNARY (operands[2]);
24065 : operands[6] = STRIP_UNARY (operands[6]);
24066 : operands[5] = GEN_INT (reg_mask);
24067 : if (!register_operand (operands[2], V16SImode))
24068 : operands[2] = force_reg (V16SImode, operands[2]);
24069 : if (!register_operand (operands[6], V16SImode))
24070 : operands[6] = force_reg (V16SImode, operands[6]);
24071 :
24072 : }
24073 : #undef DONE
24074 : #undef FAIL
24075 : static const uint8_t expand_encoding[] = {
24076 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24077 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24078 : 0x25
24079 : };
24080 : return complete_seq (expand_encoding, operands);
24081 : }
24082 :
24083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24084 : extern rtx_insn *gen_split_2569 (rtx_insn *, rtx *);
24085 : rtx_insn *
24086 : gen_split_2569 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24087 : {
24088 : if (dump_file)
24089 : fprintf (dump_file, "Splitting with gen_split_2569 (sse.md:14227)\n");
24090 : start_sequence ();
24091 : #define FAIL return (end_sequence (), nullptr)
24092 : #define DONE return end_sequence ()
24093 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24094 : {
24095 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24096 : int reg6 = 0xF0;
24097 : int reg2 = 0xCC;
24098 : int reg1 = 0xAA;
24099 : int reg3 = 0;
24100 : int reg4 = 0;
24101 : int reg_mask, tmp1, tmp2;
24102 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24103 : STRIP_UNARY (operands[4])))
24104 : {
24105 : reg4 = reg1;
24106 : reg3 = reg6;
24107 : operands[6] = operands[3];
24108 : }
24109 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24110 : STRIP_UNARY (operands[4])))
24111 : {
24112 : reg4 = reg2;
24113 : reg3 = reg6;
24114 : operands[6] = operands[3];
24115 : }
24116 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24117 : STRIP_UNARY (operands[3])))
24118 : {
24119 : reg4 = reg6;
24120 : reg3 = reg1;
24121 : operands[6] = operands[4];
24122 : }
24123 : else
24124 : {
24125 : reg4 = reg6;
24126 : reg3 = reg2;
24127 : operands[6] = operands[4];
24128 : }
24129 :
24130 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24131 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24132 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24133 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24134 :
24135 : tmp1 = reg1 ^ reg2;
24136 : tmp2 = tmp1 ^ reg3;
24137 : reg_mask = tmp2 ^ reg4;
24138 : reg_mask &= 0xFF;
24139 :
24140 : operands[1] = STRIP_UNARY (operands[1]);
24141 : operands[2] = STRIP_UNARY (operands[2]);
24142 : operands[6] = STRIP_UNARY (operands[6]);
24143 : operands[5] = GEN_INT (reg_mask);
24144 : if (!register_operand (operands[2], V16SImode))
24145 : operands[2] = force_reg (V16SImode, operands[2]);
24146 : if (!register_operand (operands[6], V16SImode))
24147 : operands[6] = force_reg (V16SImode, operands[6]);
24148 :
24149 : }
24150 : #undef DONE
24151 : #undef FAIL
24152 : static const uint8_t expand_encoding[] = {
24153 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24154 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24155 : 0x25
24156 : };
24157 : return complete_seq (expand_encoding, operands);
24158 : }
24159 :
24160 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24161 : extern rtx_insn *gen_split_2579 (rtx_insn *, rtx *);
24162 : rtx_insn *
24163 : gen_split_2579 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24164 : {
24165 : if (dump_file)
24166 : fprintf (dump_file, "Splitting with gen_split_2579 (sse.md:14227)\n");
24167 : start_sequence ();
24168 : #define FAIL return (end_sequence (), nullptr)
24169 : #define DONE return end_sequence ()
24170 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24171 : {
24172 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24173 : int reg6 = 0xF0;
24174 : int reg2 = 0xCC;
24175 : int reg1 = 0xAA;
24176 : int reg3 = 0;
24177 : int reg4 = 0;
24178 : int reg_mask, tmp1, tmp2;
24179 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24180 : STRIP_UNARY (operands[4])))
24181 : {
24182 : reg4 = reg1;
24183 : reg3 = reg6;
24184 : operands[6] = operands[3];
24185 : }
24186 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24187 : STRIP_UNARY (operands[4])))
24188 : {
24189 : reg4 = reg2;
24190 : reg3 = reg6;
24191 : operands[6] = operands[3];
24192 : }
24193 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24194 : STRIP_UNARY (operands[3])))
24195 : {
24196 : reg4 = reg6;
24197 : reg3 = reg1;
24198 : operands[6] = operands[4];
24199 : }
24200 : else
24201 : {
24202 : reg4 = reg6;
24203 : reg3 = reg2;
24204 : operands[6] = operands[4];
24205 : }
24206 :
24207 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24208 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24209 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24210 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24211 :
24212 : tmp1 = reg1 & reg2;
24213 : tmp2 = tmp1 | reg3;
24214 : reg_mask = tmp2 & reg4;
24215 : reg_mask &= 0xFF;
24216 :
24217 : operands[1] = STRIP_UNARY (operands[1]);
24218 : operands[2] = STRIP_UNARY (operands[2]);
24219 : operands[6] = STRIP_UNARY (operands[6]);
24220 : operands[5] = GEN_INT (reg_mask);
24221 : if (!register_operand (operands[2], V8SImode))
24222 : operands[2] = force_reg (V8SImode, operands[2]);
24223 : if (!register_operand (operands[6], V8SImode))
24224 : operands[6] = force_reg (V8SImode, operands[6]);
24225 :
24226 : }
24227 : #undef DONE
24228 : #undef FAIL
24229 : static const uint8_t expand_encoding[] = {
24230 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24231 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24232 : 0x25
24233 : };
24234 : return complete_seq (expand_encoding, operands);
24235 : }
24236 :
24237 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24238 : extern rtx_insn *gen_split_2589 (rtx_insn *, rtx *);
24239 : rtx_insn *
24240 : gen_split_2589 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24241 : {
24242 : if (dump_file)
24243 : fprintf (dump_file, "Splitting with gen_split_2589 (sse.md:14227)\n");
24244 : start_sequence ();
24245 : #define FAIL return (end_sequence (), nullptr)
24246 : #define DONE return end_sequence ()
24247 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24248 : {
24249 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24250 : int reg6 = 0xF0;
24251 : int reg2 = 0xCC;
24252 : int reg1 = 0xAA;
24253 : int reg3 = 0;
24254 : int reg4 = 0;
24255 : int reg_mask, tmp1, tmp2;
24256 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24257 : STRIP_UNARY (operands[4])))
24258 : {
24259 : reg4 = reg1;
24260 : reg3 = reg6;
24261 : operands[6] = operands[3];
24262 : }
24263 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24264 : STRIP_UNARY (operands[4])))
24265 : {
24266 : reg4 = reg2;
24267 : reg3 = reg6;
24268 : operands[6] = operands[3];
24269 : }
24270 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24271 : STRIP_UNARY (operands[3])))
24272 : {
24273 : reg4 = reg6;
24274 : reg3 = reg1;
24275 : operands[6] = operands[4];
24276 : }
24277 : else
24278 : {
24279 : reg4 = reg6;
24280 : reg3 = reg2;
24281 : operands[6] = operands[4];
24282 : }
24283 :
24284 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24285 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24286 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24287 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24288 :
24289 : tmp1 = reg1 & reg2;
24290 : tmp2 = tmp1 ^ reg3;
24291 : reg_mask = tmp2 | reg4;
24292 : reg_mask &= 0xFF;
24293 :
24294 : operands[1] = STRIP_UNARY (operands[1]);
24295 : operands[2] = STRIP_UNARY (operands[2]);
24296 : operands[6] = STRIP_UNARY (operands[6]);
24297 : operands[5] = GEN_INT (reg_mask);
24298 : if (!register_operand (operands[2], V8SImode))
24299 : operands[2] = force_reg (V8SImode, operands[2]);
24300 : if (!register_operand (operands[6], V8SImode))
24301 : operands[6] = force_reg (V8SImode, operands[6]);
24302 :
24303 : }
24304 : #undef DONE
24305 : #undef FAIL
24306 : static const uint8_t expand_encoding[] = {
24307 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24308 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24309 : 0x25
24310 : };
24311 : return complete_seq (expand_encoding, operands);
24312 : }
24313 :
24314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24315 : extern rtx_insn *gen_split_2599 (rtx_insn *, rtx *);
24316 : rtx_insn *
24317 : gen_split_2599 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24318 : {
24319 : if (dump_file)
24320 : fprintf (dump_file, "Splitting with gen_split_2599 (sse.md:14227)\n");
24321 : start_sequence ();
24322 : #define FAIL return (end_sequence (), nullptr)
24323 : #define DONE return end_sequence ()
24324 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24325 : {
24326 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24327 : int reg6 = 0xF0;
24328 : int reg2 = 0xCC;
24329 : int reg1 = 0xAA;
24330 : int reg3 = 0;
24331 : int reg4 = 0;
24332 : int reg_mask, tmp1, tmp2;
24333 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24334 : STRIP_UNARY (operands[4])))
24335 : {
24336 : reg4 = reg1;
24337 : reg3 = reg6;
24338 : operands[6] = operands[3];
24339 : }
24340 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24341 : STRIP_UNARY (operands[4])))
24342 : {
24343 : reg4 = reg2;
24344 : reg3 = reg6;
24345 : operands[6] = operands[3];
24346 : }
24347 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24348 : STRIP_UNARY (operands[3])))
24349 : {
24350 : reg4 = reg6;
24351 : reg3 = reg1;
24352 : operands[6] = operands[4];
24353 : }
24354 : else
24355 : {
24356 : reg4 = reg6;
24357 : reg3 = reg2;
24358 : operands[6] = operands[4];
24359 : }
24360 :
24361 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24362 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24363 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24364 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24365 :
24366 : tmp1 = reg1 & reg2;
24367 : tmp2 = tmp1 & reg3;
24368 : reg_mask = tmp2 ^ reg4;
24369 : reg_mask &= 0xFF;
24370 :
24371 : operands[1] = STRIP_UNARY (operands[1]);
24372 : operands[2] = STRIP_UNARY (operands[2]);
24373 : operands[6] = STRIP_UNARY (operands[6]);
24374 : operands[5] = GEN_INT (reg_mask);
24375 : if (!register_operand (operands[2], V4SImode))
24376 : operands[2] = force_reg (V4SImode, operands[2]);
24377 : if (!register_operand (operands[6], V4SImode))
24378 : operands[6] = force_reg (V4SImode, operands[6]);
24379 :
24380 : }
24381 : #undef DONE
24382 : #undef FAIL
24383 : static const uint8_t expand_encoding[] = {
24384 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24385 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24386 : 0x25
24387 : };
24388 : return complete_seq (expand_encoding, operands);
24389 : }
24390 :
24391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24392 : extern rtx_insn *gen_split_2609 (rtx_insn *, rtx *);
24393 : rtx_insn *
24394 : gen_split_2609 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24395 : {
24396 : if (dump_file)
24397 : fprintf (dump_file, "Splitting with gen_split_2609 (sse.md:14227)\n");
24398 : start_sequence ();
24399 : #define FAIL return (end_sequence (), nullptr)
24400 : #define DONE return end_sequence ()
24401 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24402 : {
24403 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24404 : int reg6 = 0xF0;
24405 : int reg2 = 0xCC;
24406 : int reg1 = 0xAA;
24407 : int reg3 = 0;
24408 : int reg4 = 0;
24409 : int reg_mask, tmp1, tmp2;
24410 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24411 : STRIP_UNARY (operands[4])))
24412 : {
24413 : reg4 = reg1;
24414 : reg3 = reg6;
24415 : operands[6] = operands[3];
24416 : }
24417 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24418 : STRIP_UNARY (operands[4])))
24419 : {
24420 : reg4 = reg2;
24421 : reg3 = reg6;
24422 : operands[6] = operands[3];
24423 : }
24424 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24425 : STRIP_UNARY (operands[3])))
24426 : {
24427 : reg4 = reg6;
24428 : reg3 = reg1;
24429 : operands[6] = operands[4];
24430 : }
24431 : else
24432 : {
24433 : reg4 = reg6;
24434 : reg3 = reg2;
24435 : operands[6] = operands[4];
24436 : }
24437 :
24438 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24439 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24440 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24441 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24442 :
24443 : tmp1 = reg1 | reg2;
24444 : tmp2 = tmp1 | reg3;
24445 : reg_mask = tmp2 & reg4;
24446 : reg_mask &= 0xFF;
24447 :
24448 : operands[1] = STRIP_UNARY (operands[1]);
24449 : operands[2] = STRIP_UNARY (operands[2]);
24450 : operands[6] = STRIP_UNARY (operands[6]);
24451 : operands[5] = GEN_INT (reg_mask);
24452 : if (!register_operand (operands[2], V4SImode))
24453 : operands[2] = force_reg (V4SImode, operands[2]);
24454 : if (!register_operand (operands[6], V4SImode))
24455 : operands[6] = force_reg (V4SImode, operands[6]);
24456 :
24457 : }
24458 : #undef DONE
24459 : #undef FAIL
24460 : static const uint8_t expand_encoding[] = {
24461 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24462 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24463 : 0x25
24464 : };
24465 : return complete_seq (expand_encoding, operands);
24466 : }
24467 :
24468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24469 : extern rtx_insn *gen_split_2619 (rtx_insn *, rtx *);
24470 : rtx_insn *
24471 : gen_split_2619 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24472 : {
24473 : if (dump_file)
24474 : fprintf (dump_file, "Splitting with gen_split_2619 (sse.md:14227)\n");
24475 : start_sequence ();
24476 : #define FAIL return (end_sequence (), nullptr)
24477 : #define DONE return end_sequence ()
24478 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24479 : {
24480 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24481 : int reg6 = 0xF0;
24482 : int reg2 = 0xCC;
24483 : int reg1 = 0xAA;
24484 : int reg3 = 0;
24485 : int reg4 = 0;
24486 : int reg_mask, tmp1, tmp2;
24487 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24488 : STRIP_UNARY (operands[4])))
24489 : {
24490 : reg4 = reg1;
24491 : reg3 = reg6;
24492 : operands[6] = operands[3];
24493 : }
24494 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24495 : STRIP_UNARY (operands[4])))
24496 : {
24497 : reg4 = reg2;
24498 : reg3 = reg6;
24499 : operands[6] = operands[3];
24500 : }
24501 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24502 : STRIP_UNARY (operands[3])))
24503 : {
24504 : reg4 = reg6;
24505 : reg3 = reg1;
24506 : operands[6] = operands[4];
24507 : }
24508 : else
24509 : {
24510 : reg4 = reg6;
24511 : reg3 = reg2;
24512 : operands[6] = operands[4];
24513 : }
24514 :
24515 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24516 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24517 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24518 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24519 :
24520 : tmp1 = reg1 | reg2;
24521 : tmp2 = tmp1 ^ reg3;
24522 : reg_mask = tmp2 | reg4;
24523 : reg_mask &= 0xFF;
24524 :
24525 : operands[1] = STRIP_UNARY (operands[1]);
24526 : operands[2] = STRIP_UNARY (operands[2]);
24527 : operands[6] = STRIP_UNARY (operands[6]);
24528 : operands[5] = GEN_INT (reg_mask);
24529 : if (!register_operand (operands[2], V4SImode))
24530 : operands[2] = force_reg (V4SImode, operands[2]);
24531 : if (!register_operand (operands[6], V4SImode))
24532 : operands[6] = force_reg (V4SImode, operands[6]);
24533 :
24534 : }
24535 : #undef DONE
24536 : #undef FAIL
24537 : static const uint8_t expand_encoding[] = {
24538 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24539 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24540 : 0x25
24541 : };
24542 : return complete_seq (expand_encoding, operands);
24543 : }
24544 :
24545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24546 : extern rtx_insn *gen_split_2629 (rtx_insn *, rtx *);
24547 : rtx_insn *
24548 : gen_split_2629 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24549 : {
24550 : if (dump_file)
24551 : fprintf (dump_file, "Splitting with gen_split_2629 (sse.md:14227)\n");
24552 : start_sequence ();
24553 : #define FAIL return (end_sequence (), nullptr)
24554 : #define DONE return end_sequence ()
24555 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24556 : {
24557 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24558 : int reg6 = 0xF0;
24559 : int reg2 = 0xCC;
24560 : int reg1 = 0xAA;
24561 : int reg3 = 0;
24562 : int reg4 = 0;
24563 : int reg_mask, tmp1, tmp2;
24564 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24565 : STRIP_UNARY (operands[4])))
24566 : {
24567 : reg4 = reg1;
24568 : reg3 = reg6;
24569 : operands[6] = operands[3];
24570 : }
24571 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24572 : STRIP_UNARY (operands[4])))
24573 : {
24574 : reg4 = reg2;
24575 : reg3 = reg6;
24576 : operands[6] = operands[3];
24577 : }
24578 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24579 : STRIP_UNARY (operands[3])))
24580 : {
24581 : reg4 = reg6;
24582 : reg3 = reg1;
24583 : operands[6] = operands[4];
24584 : }
24585 : else
24586 : {
24587 : reg4 = reg6;
24588 : reg3 = reg2;
24589 : operands[6] = operands[4];
24590 : }
24591 :
24592 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24593 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24594 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24595 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24596 :
24597 : tmp1 = reg1 | reg2;
24598 : tmp2 = tmp1 & reg3;
24599 : reg_mask = tmp2 ^ reg4;
24600 : reg_mask &= 0xFF;
24601 :
24602 : operands[1] = STRIP_UNARY (operands[1]);
24603 : operands[2] = STRIP_UNARY (operands[2]);
24604 : operands[6] = STRIP_UNARY (operands[6]);
24605 : operands[5] = GEN_INT (reg_mask);
24606 : if (!register_operand (operands[2], V8DImode))
24607 : operands[2] = force_reg (V8DImode, operands[2]);
24608 : if (!register_operand (operands[6], V8DImode))
24609 : operands[6] = force_reg (V8DImode, operands[6]);
24610 :
24611 : }
24612 : #undef DONE
24613 : #undef FAIL
24614 : static const uint8_t expand_encoding[] = {
24615 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24616 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24617 : 0x25
24618 : };
24619 : return complete_seq (expand_encoding, operands);
24620 : }
24621 :
24622 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24623 : extern rtx_insn *gen_split_2639 (rtx_insn *, rtx *);
24624 : rtx_insn *
24625 : gen_split_2639 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24626 : {
24627 : if (dump_file)
24628 : fprintf (dump_file, "Splitting with gen_split_2639 (sse.md:14227)\n");
24629 : start_sequence ();
24630 : #define FAIL return (end_sequence (), nullptr)
24631 : #define DONE return end_sequence ()
24632 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24633 : {
24634 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24635 : int reg6 = 0xF0;
24636 : int reg2 = 0xCC;
24637 : int reg1 = 0xAA;
24638 : int reg3 = 0;
24639 : int reg4 = 0;
24640 : int reg_mask, tmp1, tmp2;
24641 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24642 : STRIP_UNARY (operands[4])))
24643 : {
24644 : reg4 = reg1;
24645 : reg3 = reg6;
24646 : operands[6] = operands[3];
24647 : }
24648 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24649 : STRIP_UNARY (operands[4])))
24650 : {
24651 : reg4 = reg2;
24652 : reg3 = reg6;
24653 : operands[6] = operands[3];
24654 : }
24655 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24656 : STRIP_UNARY (operands[3])))
24657 : {
24658 : reg4 = reg6;
24659 : reg3 = reg1;
24660 : operands[6] = operands[4];
24661 : }
24662 : else
24663 : {
24664 : reg4 = reg6;
24665 : reg3 = reg2;
24666 : operands[6] = operands[4];
24667 : }
24668 :
24669 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24670 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24671 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24672 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24673 :
24674 : tmp1 = reg1 ^ reg2;
24675 : tmp2 = tmp1 | reg3;
24676 : reg_mask = tmp2 & reg4;
24677 : reg_mask &= 0xFF;
24678 :
24679 : operands[1] = STRIP_UNARY (operands[1]);
24680 : operands[2] = STRIP_UNARY (operands[2]);
24681 : operands[6] = STRIP_UNARY (operands[6]);
24682 : operands[5] = GEN_INT (reg_mask);
24683 : if (!register_operand (operands[2], V8DImode))
24684 : operands[2] = force_reg (V8DImode, operands[2]);
24685 : if (!register_operand (operands[6], V8DImode))
24686 : operands[6] = force_reg (V8DImode, operands[6]);
24687 :
24688 : }
24689 : #undef DONE
24690 : #undef FAIL
24691 : static const uint8_t expand_encoding[] = {
24692 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24693 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24694 : 0x25
24695 : };
24696 : return complete_seq (expand_encoding, operands);
24697 : }
24698 :
24699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24700 : extern rtx_insn *gen_split_2649 (rtx_insn *, rtx *);
24701 : rtx_insn *
24702 : gen_split_2649 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24703 : {
24704 : if (dump_file)
24705 : fprintf (dump_file, "Splitting with gen_split_2649 (sse.md:14227)\n");
24706 : start_sequence ();
24707 : #define FAIL return (end_sequence (), nullptr)
24708 : #define DONE return end_sequence ()
24709 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24710 : {
24711 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24712 : int reg6 = 0xF0;
24713 : int reg2 = 0xCC;
24714 : int reg1 = 0xAA;
24715 : int reg3 = 0;
24716 : int reg4 = 0;
24717 : int reg_mask, tmp1, tmp2;
24718 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24719 : STRIP_UNARY (operands[4])))
24720 : {
24721 : reg4 = reg1;
24722 : reg3 = reg6;
24723 : operands[6] = operands[3];
24724 : }
24725 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24726 : STRIP_UNARY (operands[4])))
24727 : {
24728 : reg4 = reg2;
24729 : reg3 = reg6;
24730 : operands[6] = operands[3];
24731 : }
24732 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24733 : STRIP_UNARY (operands[3])))
24734 : {
24735 : reg4 = reg6;
24736 : reg3 = reg1;
24737 : operands[6] = operands[4];
24738 : }
24739 : else
24740 : {
24741 : reg4 = reg6;
24742 : reg3 = reg2;
24743 : operands[6] = operands[4];
24744 : }
24745 :
24746 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24747 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24748 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24749 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24750 :
24751 : tmp1 = reg1 ^ reg2;
24752 : tmp2 = tmp1 ^ reg3;
24753 : reg_mask = tmp2 | reg4;
24754 : reg_mask &= 0xFF;
24755 :
24756 : operands[1] = STRIP_UNARY (operands[1]);
24757 : operands[2] = STRIP_UNARY (operands[2]);
24758 : operands[6] = STRIP_UNARY (operands[6]);
24759 : operands[5] = GEN_INT (reg_mask);
24760 : if (!register_operand (operands[2], V8DImode))
24761 : operands[2] = force_reg (V8DImode, operands[2]);
24762 : if (!register_operand (operands[6], V8DImode))
24763 : operands[6] = force_reg (V8DImode, operands[6]);
24764 :
24765 : }
24766 : #undef DONE
24767 : #undef FAIL
24768 : static const uint8_t expand_encoding[] = {
24769 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24770 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24771 : 0x25
24772 : };
24773 : return complete_seq (expand_encoding, operands);
24774 : }
24775 :
24776 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24777 : extern rtx_insn *gen_split_2659 (rtx_insn *, rtx *);
24778 : rtx_insn *
24779 : gen_split_2659 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24780 : {
24781 : if (dump_file)
24782 : fprintf (dump_file, "Splitting with gen_split_2659 (sse.md:14227)\n");
24783 : start_sequence ();
24784 : #define FAIL return (end_sequence (), nullptr)
24785 : #define DONE return end_sequence ()
24786 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24787 : {
24788 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24789 : int reg6 = 0xF0;
24790 : int reg2 = 0xCC;
24791 : int reg1 = 0xAA;
24792 : int reg3 = 0;
24793 : int reg4 = 0;
24794 : int reg_mask, tmp1, tmp2;
24795 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24796 : STRIP_UNARY (operands[4])))
24797 : {
24798 : reg4 = reg1;
24799 : reg3 = reg6;
24800 : operands[6] = operands[3];
24801 : }
24802 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24803 : STRIP_UNARY (operands[4])))
24804 : {
24805 : reg4 = reg2;
24806 : reg3 = reg6;
24807 : operands[6] = operands[3];
24808 : }
24809 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24810 : STRIP_UNARY (operands[3])))
24811 : {
24812 : reg4 = reg6;
24813 : reg3 = reg1;
24814 : operands[6] = operands[4];
24815 : }
24816 : else
24817 : {
24818 : reg4 = reg6;
24819 : reg3 = reg2;
24820 : operands[6] = operands[4];
24821 : }
24822 :
24823 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24824 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24825 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24826 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24827 :
24828 : tmp1 = reg1 ^ reg2;
24829 : tmp2 = tmp1 & reg3;
24830 : reg_mask = tmp2 ^ reg4;
24831 : reg_mask &= 0xFF;
24832 :
24833 : operands[1] = STRIP_UNARY (operands[1]);
24834 : operands[2] = STRIP_UNARY (operands[2]);
24835 : operands[6] = STRIP_UNARY (operands[6]);
24836 : operands[5] = GEN_INT (reg_mask);
24837 : if (!register_operand (operands[2], V4DImode))
24838 : operands[2] = force_reg (V4DImode, operands[2]);
24839 : if (!register_operand (operands[6], V4DImode))
24840 : operands[6] = force_reg (V4DImode, operands[6]);
24841 :
24842 : }
24843 : #undef DONE
24844 : #undef FAIL
24845 : static const uint8_t expand_encoding[] = {
24846 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24847 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24848 : 0x25
24849 : };
24850 : return complete_seq (expand_encoding, operands);
24851 : }
24852 :
24853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24854 : extern rtx_insn *gen_split_2669 (rtx_insn *, rtx *);
24855 : rtx_insn *
24856 : gen_split_2669 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24857 : {
24858 : if (dump_file)
24859 : fprintf (dump_file, "Splitting with gen_split_2669 (sse.md:14227)\n");
24860 : start_sequence ();
24861 : #define FAIL return (end_sequence (), nullptr)
24862 : #define DONE return end_sequence ()
24863 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24864 : {
24865 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24866 : int reg6 = 0xF0;
24867 : int reg2 = 0xCC;
24868 : int reg1 = 0xAA;
24869 : int reg3 = 0;
24870 : int reg4 = 0;
24871 : int reg_mask, tmp1, tmp2;
24872 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24873 : STRIP_UNARY (operands[4])))
24874 : {
24875 : reg4 = reg1;
24876 : reg3 = reg6;
24877 : operands[6] = operands[3];
24878 : }
24879 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24880 : STRIP_UNARY (operands[4])))
24881 : {
24882 : reg4 = reg2;
24883 : reg3 = reg6;
24884 : operands[6] = operands[3];
24885 : }
24886 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24887 : STRIP_UNARY (operands[3])))
24888 : {
24889 : reg4 = reg6;
24890 : reg3 = reg1;
24891 : operands[6] = operands[4];
24892 : }
24893 : else
24894 : {
24895 : reg4 = reg6;
24896 : reg3 = reg2;
24897 : operands[6] = operands[4];
24898 : }
24899 :
24900 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24901 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24902 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24903 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24904 :
24905 : tmp1 = reg1 & reg2;
24906 : tmp2 = tmp1 ^ reg3;
24907 : reg_mask = tmp2 & reg4;
24908 : reg_mask &= 0xFF;
24909 :
24910 : operands[1] = STRIP_UNARY (operands[1]);
24911 : operands[2] = STRIP_UNARY (operands[2]);
24912 : operands[6] = STRIP_UNARY (operands[6]);
24913 : operands[5] = GEN_INT (reg_mask);
24914 : if (!register_operand (operands[2], V4DImode))
24915 : operands[2] = force_reg (V4DImode, operands[2]);
24916 : if (!register_operand (operands[6], V4DImode))
24917 : operands[6] = force_reg (V4DImode, operands[6]);
24918 :
24919 : }
24920 : #undef DONE
24921 : #undef FAIL
24922 : static const uint8_t expand_encoding[] = {
24923 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24924 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24925 : 0x25
24926 : };
24927 : return complete_seq (expand_encoding, operands);
24928 : }
24929 :
24930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24931 : extern rtx_insn *gen_split_2679 (rtx_insn *, rtx *);
24932 : rtx_insn *
24933 : gen_split_2679 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24934 : {
24935 : if (dump_file)
24936 : fprintf (dump_file, "Splitting with gen_split_2679 (sse.md:14227)\n");
24937 : start_sequence ();
24938 : #define FAIL return (end_sequence (), nullptr)
24939 : #define DONE return end_sequence ()
24940 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24941 : {
24942 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24943 : int reg6 = 0xF0;
24944 : int reg2 = 0xCC;
24945 : int reg1 = 0xAA;
24946 : int reg3 = 0;
24947 : int reg4 = 0;
24948 : int reg_mask, tmp1, tmp2;
24949 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24950 : STRIP_UNARY (operands[4])))
24951 : {
24952 : reg4 = reg1;
24953 : reg3 = reg6;
24954 : operands[6] = operands[3];
24955 : }
24956 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24957 : STRIP_UNARY (operands[4])))
24958 : {
24959 : reg4 = reg2;
24960 : reg3 = reg6;
24961 : operands[6] = operands[3];
24962 : }
24963 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24964 : STRIP_UNARY (operands[3])))
24965 : {
24966 : reg4 = reg6;
24967 : reg3 = reg1;
24968 : operands[6] = operands[4];
24969 : }
24970 : else
24971 : {
24972 : reg4 = reg6;
24973 : reg3 = reg2;
24974 : operands[6] = operands[4];
24975 : }
24976 :
24977 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24978 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24979 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24980 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24981 :
24982 : tmp1 = reg1 & reg2;
24983 : tmp2 = tmp1 & reg3;
24984 : reg_mask = tmp2 | reg4;
24985 : reg_mask &= 0xFF;
24986 :
24987 : operands[1] = STRIP_UNARY (operands[1]);
24988 : operands[2] = STRIP_UNARY (operands[2]);
24989 : operands[6] = STRIP_UNARY (operands[6]);
24990 : operands[5] = GEN_INT (reg_mask);
24991 : if (!register_operand (operands[2], V2DImode))
24992 : operands[2] = force_reg (V2DImode, operands[2]);
24993 : if (!register_operand (operands[6], V2DImode))
24994 : operands[6] = force_reg (V2DImode, operands[6]);
24995 :
24996 : }
24997 : #undef DONE
24998 : #undef FAIL
24999 : static const uint8_t expand_encoding[] = {
25000 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25001 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25002 : 0x25
25003 : };
25004 : return complete_seq (expand_encoding, operands);
25005 : }
25006 :
25007 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25008 : extern rtx_insn *gen_split_2689 (rtx_insn *, rtx *);
25009 : rtx_insn *
25010 : gen_split_2689 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25011 : {
25012 : if (dump_file)
25013 : fprintf (dump_file, "Splitting with gen_split_2689 (sse.md:14227)\n");
25014 : start_sequence ();
25015 : #define FAIL return (end_sequence (), nullptr)
25016 : #define DONE return end_sequence ()
25017 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25018 : {
25019 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25020 : int reg6 = 0xF0;
25021 : int reg2 = 0xCC;
25022 : int reg1 = 0xAA;
25023 : int reg3 = 0;
25024 : int reg4 = 0;
25025 : int reg_mask, tmp1, tmp2;
25026 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25027 : STRIP_UNARY (operands[4])))
25028 : {
25029 : reg4 = reg1;
25030 : reg3 = reg6;
25031 : operands[6] = operands[3];
25032 : }
25033 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25034 : STRIP_UNARY (operands[4])))
25035 : {
25036 : reg4 = reg2;
25037 : reg3 = reg6;
25038 : operands[6] = operands[3];
25039 : }
25040 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25041 : STRIP_UNARY (operands[3])))
25042 : {
25043 : reg4 = reg6;
25044 : reg3 = reg1;
25045 : operands[6] = operands[4];
25046 : }
25047 : else
25048 : {
25049 : reg4 = reg6;
25050 : reg3 = reg2;
25051 : operands[6] = operands[4];
25052 : }
25053 :
25054 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25055 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25056 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25057 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25058 :
25059 : tmp1 = reg1 & reg2;
25060 : tmp2 = tmp1 | reg3;
25061 : reg_mask = tmp2 ^ reg4;
25062 : reg_mask &= 0xFF;
25063 :
25064 : operands[1] = STRIP_UNARY (operands[1]);
25065 : operands[2] = STRIP_UNARY (operands[2]);
25066 : operands[6] = STRIP_UNARY (operands[6]);
25067 : operands[5] = GEN_INT (reg_mask);
25068 : if (!register_operand (operands[2], V2DImode))
25069 : operands[2] = force_reg (V2DImode, operands[2]);
25070 : if (!register_operand (operands[6], V2DImode))
25071 : operands[6] = force_reg (V2DImode, operands[6]);
25072 :
25073 : }
25074 : #undef DONE
25075 : #undef FAIL
25076 : static const uint8_t expand_encoding[] = {
25077 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25078 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25079 : 0x25
25080 : };
25081 : return complete_seq (expand_encoding, operands);
25082 : }
25083 :
25084 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25085 : extern rtx_insn *gen_split_2699 (rtx_insn *, rtx *);
25086 : rtx_insn *
25087 : gen_split_2699 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25088 : {
25089 : if (dump_file)
25090 : fprintf (dump_file, "Splitting with gen_split_2699 (sse.md:14227)\n");
25091 : start_sequence ();
25092 : #define FAIL return (end_sequence (), nullptr)
25093 : #define DONE return end_sequence ()
25094 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25095 : {
25096 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25097 : int reg6 = 0xF0;
25098 : int reg2 = 0xCC;
25099 : int reg1 = 0xAA;
25100 : int reg3 = 0;
25101 : int reg4 = 0;
25102 : int reg_mask, tmp1, tmp2;
25103 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25104 : STRIP_UNARY (operands[4])))
25105 : {
25106 : reg4 = reg1;
25107 : reg3 = reg6;
25108 : operands[6] = operands[3];
25109 : }
25110 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25111 : STRIP_UNARY (operands[4])))
25112 : {
25113 : reg4 = reg2;
25114 : reg3 = reg6;
25115 : operands[6] = operands[3];
25116 : }
25117 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25118 : STRIP_UNARY (operands[3])))
25119 : {
25120 : reg4 = reg6;
25121 : reg3 = reg1;
25122 : operands[6] = operands[4];
25123 : }
25124 : else
25125 : {
25126 : reg4 = reg6;
25127 : reg3 = reg2;
25128 : operands[6] = operands[4];
25129 : }
25130 :
25131 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25132 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25133 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25134 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25135 :
25136 : tmp1 = reg1 | reg2;
25137 : tmp2 = tmp1 ^ reg3;
25138 : reg_mask = tmp2 & reg4;
25139 : reg_mask &= 0xFF;
25140 :
25141 : operands[1] = STRIP_UNARY (operands[1]);
25142 : operands[2] = STRIP_UNARY (operands[2]);
25143 : operands[6] = STRIP_UNARY (operands[6]);
25144 : operands[5] = GEN_INT (reg_mask);
25145 : if (!register_operand (operands[2], V2DImode))
25146 : operands[2] = force_reg (V2DImode, operands[2]);
25147 : if (!register_operand (operands[6], V2DImode))
25148 : operands[6] = force_reg (V2DImode, operands[6]);
25149 :
25150 : }
25151 : #undef DONE
25152 : #undef FAIL
25153 : static const uint8_t expand_encoding[] = {
25154 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25155 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25156 : 0x25
25157 : };
25158 : return complete_seq (expand_encoding, operands);
25159 : }
25160 :
25161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25162 : extern rtx_insn *gen_split_2709 (rtx_insn *, rtx *);
25163 : rtx_insn *
25164 : gen_split_2709 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25165 : {
25166 : if (dump_file)
25167 : fprintf (dump_file, "Splitting with gen_split_2709 (sse.md:14227)\n");
25168 : start_sequence ();
25169 : #define FAIL return (end_sequence (), nullptr)
25170 : #define DONE return end_sequence ()
25171 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25172 : {
25173 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25174 : int reg6 = 0xF0;
25175 : int reg2 = 0xCC;
25176 : int reg1 = 0xAA;
25177 : int reg3 = 0;
25178 : int reg4 = 0;
25179 : int reg_mask, tmp1, tmp2;
25180 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25181 : STRIP_UNARY (operands[4])))
25182 : {
25183 : reg4 = reg1;
25184 : reg3 = reg6;
25185 : operands[6] = operands[3];
25186 : }
25187 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25188 : STRIP_UNARY (operands[4])))
25189 : {
25190 : reg4 = reg2;
25191 : reg3 = reg6;
25192 : operands[6] = operands[3];
25193 : }
25194 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25195 : STRIP_UNARY (operands[3])))
25196 : {
25197 : reg4 = reg6;
25198 : reg3 = reg1;
25199 : operands[6] = operands[4];
25200 : }
25201 : else
25202 : {
25203 : reg4 = reg6;
25204 : reg3 = reg2;
25205 : operands[6] = operands[4];
25206 : }
25207 :
25208 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25209 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25210 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25211 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25212 :
25213 : tmp1 = reg1 | reg2;
25214 : tmp2 = tmp1 & reg3;
25215 : reg_mask = tmp2 | reg4;
25216 : reg_mask &= 0xFF;
25217 :
25218 : operands[1] = STRIP_UNARY (operands[1]);
25219 : operands[2] = STRIP_UNARY (operands[2]);
25220 : operands[6] = STRIP_UNARY (operands[6]);
25221 : operands[5] = GEN_INT (reg_mask);
25222 : if (!register_operand (operands[2], V32HFmode))
25223 : operands[2] = force_reg (V32HFmode, operands[2]);
25224 : if (!register_operand (operands[6], V32HFmode))
25225 : operands[6] = force_reg (V32HFmode, operands[6]);
25226 :
25227 : }
25228 : #undef DONE
25229 : #undef FAIL
25230 : static const uint8_t expand_encoding[] = {
25231 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25232 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25233 : 0x25
25234 : };
25235 : return complete_seq (expand_encoding, operands);
25236 : }
25237 :
25238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25239 : extern rtx_insn *gen_split_2719 (rtx_insn *, rtx *);
25240 : rtx_insn *
25241 : gen_split_2719 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25242 : {
25243 : if (dump_file)
25244 : fprintf (dump_file, "Splitting with gen_split_2719 (sse.md:14227)\n");
25245 : start_sequence ();
25246 : #define FAIL return (end_sequence (), nullptr)
25247 : #define DONE return end_sequence ()
25248 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25249 : {
25250 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25251 : int reg6 = 0xF0;
25252 : int reg2 = 0xCC;
25253 : int reg1 = 0xAA;
25254 : int reg3 = 0;
25255 : int reg4 = 0;
25256 : int reg_mask, tmp1, tmp2;
25257 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25258 : STRIP_UNARY (operands[4])))
25259 : {
25260 : reg4 = reg1;
25261 : reg3 = reg6;
25262 : operands[6] = operands[3];
25263 : }
25264 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25265 : STRIP_UNARY (operands[4])))
25266 : {
25267 : reg4 = reg2;
25268 : reg3 = reg6;
25269 : operands[6] = operands[3];
25270 : }
25271 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25272 : STRIP_UNARY (operands[3])))
25273 : {
25274 : reg4 = reg6;
25275 : reg3 = reg1;
25276 : operands[6] = operands[4];
25277 : }
25278 : else
25279 : {
25280 : reg4 = reg6;
25281 : reg3 = reg2;
25282 : operands[6] = operands[4];
25283 : }
25284 :
25285 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25286 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25287 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25288 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25289 :
25290 : tmp1 = reg1 | reg2;
25291 : tmp2 = tmp1 | reg3;
25292 : reg_mask = tmp2 ^ reg4;
25293 : reg_mask &= 0xFF;
25294 :
25295 : operands[1] = STRIP_UNARY (operands[1]);
25296 : operands[2] = STRIP_UNARY (operands[2]);
25297 : operands[6] = STRIP_UNARY (operands[6]);
25298 : operands[5] = GEN_INT (reg_mask);
25299 : if (!register_operand (operands[2], V32HFmode))
25300 : operands[2] = force_reg (V32HFmode, operands[2]);
25301 : if (!register_operand (operands[6], V32HFmode))
25302 : operands[6] = force_reg (V32HFmode, operands[6]);
25303 :
25304 : }
25305 : #undef DONE
25306 : #undef FAIL
25307 : static const uint8_t expand_encoding[] = {
25308 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25309 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25310 : 0x25
25311 : };
25312 : return complete_seq (expand_encoding, operands);
25313 : }
25314 :
25315 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25316 : extern rtx_insn *gen_split_2729 (rtx_insn *, rtx *);
25317 : rtx_insn *
25318 : gen_split_2729 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25319 : {
25320 : if (dump_file)
25321 : fprintf (dump_file, "Splitting with gen_split_2729 (sse.md:14227)\n");
25322 : start_sequence ();
25323 : #define FAIL return (end_sequence (), nullptr)
25324 : #define DONE return end_sequence ()
25325 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25326 : {
25327 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25328 : int reg6 = 0xF0;
25329 : int reg2 = 0xCC;
25330 : int reg1 = 0xAA;
25331 : int reg3 = 0;
25332 : int reg4 = 0;
25333 : int reg_mask, tmp1, tmp2;
25334 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25335 : STRIP_UNARY (operands[4])))
25336 : {
25337 : reg4 = reg1;
25338 : reg3 = reg6;
25339 : operands[6] = operands[3];
25340 : }
25341 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25342 : STRIP_UNARY (operands[4])))
25343 : {
25344 : reg4 = reg2;
25345 : reg3 = reg6;
25346 : operands[6] = operands[3];
25347 : }
25348 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25349 : STRIP_UNARY (operands[3])))
25350 : {
25351 : reg4 = reg6;
25352 : reg3 = reg1;
25353 : operands[6] = operands[4];
25354 : }
25355 : else
25356 : {
25357 : reg4 = reg6;
25358 : reg3 = reg2;
25359 : operands[6] = operands[4];
25360 : }
25361 :
25362 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25363 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25364 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25365 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25366 :
25367 : tmp1 = reg1 ^ reg2;
25368 : tmp2 = tmp1 ^ reg3;
25369 : reg_mask = tmp2 & reg4;
25370 : reg_mask &= 0xFF;
25371 :
25372 : operands[1] = STRIP_UNARY (operands[1]);
25373 : operands[2] = STRIP_UNARY (operands[2]);
25374 : operands[6] = STRIP_UNARY (operands[6]);
25375 : operands[5] = GEN_INT (reg_mask);
25376 : if (!register_operand (operands[2], V32HFmode))
25377 : operands[2] = force_reg (V32HFmode, operands[2]);
25378 : if (!register_operand (operands[6], V32HFmode))
25379 : operands[6] = force_reg (V32HFmode, operands[6]);
25380 :
25381 : }
25382 : #undef DONE
25383 : #undef FAIL
25384 : static const uint8_t expand_encoding[] = {
25385 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25386 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25387 : 0x25
25388 : };
25389 : return complete_seq (expand_encoding, operands);
25390 : }
25391 :
25392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25393 : extern rtx_insn *gen_split_2739 (rtx_insn *, rtx *);
25394 : rtx_insn *
25395 : gen_split_2739 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25396 : {
25397 : if (dump_file)
25398 : fprintf (dump_file, "Splitting with gen_split_2739 (sse.md:14227)\n");
25399 : start_sequence ();
25400 : #define FAIL return (end_sequence (), nullptr)
25401 : #define DONE return end_sequence ()
25402 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25403 : {
25404 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25405 : int reg6 = 0xF0;
25406 : int reg2 = 0xCC;
25407 : int reg1 = 0xAA;
25408 : int reg3 = 0;
25409 : int reg4 = 0;
25410 : int reg_mask, tmp1, tmp2;
25411 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25412 : STRIP_UNARY (operands[4])))
25413 : {
25414 : reg4 = reg1;
25415 : reg3 = reg6;
25416 : operands[6] = operands[3];
25417 : }
25418 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25419 : STRIP_UNARY (operands[4])))
25420 : {
25421 : reg4 = reg2;
25422 : reg3 = reg6;
25423 : operands[6] = operands[3];
25424 : }
25425 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25426 : STRIP_UNARY (operands[3])))
25427 : {
25428 : reg4 = reg6;
25429 : reg3 = reg1;
25430 : operands[6] = operands[4];
25431 : }
25432 : else
25433 : {
25434 : reg4 = reg6;
25435 : reg3 = reg2;
25436 : operands[6] = operands[4];
25437 : }
25438 :
25439 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25440 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25441 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25442 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25443 :
25444 : tmp1 = reg1 ^ reg2;
25445 : tmp2 = tmp1 & reg3;
25446 : reg_mask = tmp2 | reg4;
25447 : reg_mask &= 0xFF;
25448 :
25449 : operands[1] = STRIP_UNARY (operands[1]);
25450 : operands[2] = STRIP_UNARY (operands[2]);
25451 : operands[6] = STRIP_UNARY (operands[6]);
25452 : operands[5] = GEN_INT (reg_mask);
25453 : if (!register_operand (operands[2], V16HFmode))
25454 : operands[2] = force_reg (V16HFmode, operands[2]);
25455 : if (!register_operand (operands[6], V16HFmode))
25456 : operands[6] = force_reg (V16HFmode, operands[6]);
25457 :
25458 : }
25459 : #undef DONE
25460 : #undef FAIL
25461 : static const uint8_t expand_encoding[] = {
25462 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25463 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25464 : 0x25
25465 : };
25466 : return complete_seq (expand_encoding, operands);
25467 : }
25468 :
25469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25470 : extern rtx_insn *gen_split_2749 (rtx_insn *, rtx *);
25471 : rtx_insn *
25472 : gen_split_2749 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25473 : {
25474 : if (dump_file)
25475 : fprintf (dump_file, "Splitting with gen_split_2749 (sse.md:14227)\n");
25476 : start_sequence ();
25477 : #define FAIL return (end_sequence (), nullptr)
25478 : #define DONE return end_sequence ()
25479 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25480 : {
25481 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25482 : int reg6 = 0xF0;
25483 : int reg2 = 0xCC;
25484 : int reg1 = 0xAA;
25485 : int reg3 = 0;
25486 : int reg4 = 0;
25487 : int reg_mask, tmp1, tmp2;
25488 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25489 : STRIP_UNARY (operands[4])))
25490 : {
25491 : reg4 = reg1;
25492 : reg3 = reg6;
25493 : operands[6] = operands[3];
25494 : }
25495 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25496 : STRIP_UNARY (operands[4])))
25497 : {
25498 : reg4 = reg2;
25499 : reg3 = reg6;
25500 : operands[6] = operands[3];
25501 : }
25502 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25503 : STRIP_UNARY (operands[3])))
25504 : {
25505 : reg4 = reg6;
25506 : reg3 = reg1;
25507 : operands[6] = operands[4];
25508 : }
25509 : else
25510 : {
25511 : reg4 = reg6;
25512 : reg3 = reg2;
25513 : operands[6] = operands[4];
25514 : }
25515 :
25516 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25517 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25518 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25519 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25520 :
25521 : tmp1 = reg1 ^ reg2;
25522 : tmp2 = tmp1 | reg3;
25523 : reg_mask = tmp2 ^ reg4;
25524 : reg_mask &= 0xFF;
25525 :
25526 : operands[1] = STRIP_UNARY (operands[1]);
25527 : operands[2] = STRIP_UNARY (operands[2]);
25528 : operands[6] = STRIP_UNARY (operands[6]);
25529 : operands[5] = GEN_INT (reg_mask);
25530 : if (!register_operand (operands[2], V16HFmode))
25531 : operands[2] = force_reg (V16HFmode, operands[2]);
25532 : if (!register_operand (operands[6], V16HFmode))
25533 : operands[6] = force_reg (V16HFmode, operands[6]);
25534 :
25535 : }
25536 : #undef DONE
25537 : #undef FAIL
25538 : static const uint8_t expand_encoding[] = {
25539 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25540 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25541 : 0x25
25542 : };
25543 : return complete_seq (expand_encoding, operands);
25544 : }
25545 :
25546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25547 : extern rtx_insn *gen_split_2759 (rtx_insn *, rtx *);
25548 : rtx_insn *
25549 : gen_split_2759 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25550 : {
25551 : if (dump_file)
25552 : fprintf (dump_file, "Splitting with gen_split_2759 (sse.md:14227)\n");
25553 : start_sequence ();
25554 : #define FAIL return (end_sequence (), nullptr)
25555 : #define DONE return end_sequence ()
25556 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25557 : {
25558 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25559 : int reg6 = 0xF0;
25560 : int reg2 = 0xCC;
25561 : int reg1 = 0xAA;
25562 : int reg3 = 0;
25563 : int reg4 = 0;
25564 : int reg_mask, tmp1, tmp2;
25565 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25566 : STRIP_UNARY (operands[4])))
25567 : {
25568 : reg4 = reg1;
25569 : reg3 = reg6;
25570 : operands[6] = operands[3];
25571 : }
25572 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25573 : STRIP_UNARY (operands[4])))
25574 : {
25575 : reg4 = reg2;
25576 : reg3 = reg6;
25577 : operands[6] = operands[3];
25578 : }
25579 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25580 : STRIP_UNARY (operands[3])))
25581 : {
25582 : reg4 = reg6;
25583 : reg3 = reg1;
25584 : operands[6] = operands[4];
25585 : }
25586 : else
25587 : {
25588 : reg4 = reg6;
25589 : reg3 = reg2;
25590 : operands[6] = operands[4];
25591 : }
25592 :
25593 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25594 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25595 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25596 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25597 :
25598 : tmp1 = reg1 & reg2;
25599 : tmp2 = tmp1 & reg3;
25600 : reg_mask = tmp2 & reg4;
25601 : reg_mask &= 0xFF;
25602 :
25603 : operands[1] = STRIP_UNARY (operands[1]);
25604 : operands[2] = STRIP_UNARY (operands[2]);
25605 : operands[6] = STRIP_UNARY (operands[6]);
25606 : operands[5] = GEN_INT (reg_mask);
25607 : if (!register_operand (operands[2], V8HFmode))
25608 : operands[2] = force_reg (V8HFmode, operands[2]);
25609 : if (!register_operand (operands[6], V8HFmode))
25610 : operands[6] = force_reg (V8HFmode, operands[6]);
25611 :
25612 : }
25613 : #undef DONE
25614 : #undef FAIL
25615 : static const uint8_t expand_encoding[] = {
25616 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25617 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25618 : 0x25
25619 : };
25620 : return complete_seq (expand_encoding, operands);
25621 : }
25622 :
25623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25624 : extern rtx_insn *gen_split_2769 (rtx_insn *, rtx *);
25625 : rtx_insn *
25626 : gen_split_2769 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25627 : {
25628 : if (dump_file)
25629 : fprintf (dump_file, "Splitting with gen_split_2769 (sse.md:14227)\n");
25630 : start_sequence ();
25631 : #define FAIL return (end_sequence (), nullptr)
25632 : #define DONE return end_sequence ()
25633 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25634 : {
25635 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25636 : int reg6 = 0xF0;
25637 : int reg2 = 0xCC;
25638 : int reg1 = 0xAA;
25639 : int reg3 = 0;
25640 : int reg4 = 0;
25641 : int reg_mask, tmp1, tmp2;
25642 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25643 : STRIP_UNARY (operands[4])))
25644 : {
25645 : reg4 = reg1;
25646 : reg3 = reg6;
25647 : operands[6] = operands[3];
25648 : }
25649 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25650 : STRIP_UNARY (operands[4])))
25651 : {
25652 : reg4 = reg2;
25653 : reg3 = reg6;
25654 : operands[6] = operands[3];
25655 : }
25656 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25657 : STRIP_UNARY (operands[3])))
25658 : {
25659 : reg4 = reg6;
25660 : reg3 = reg1;
25661 : operands[6] = operands[4];
25662 : }
25663 : else
25664 : {
25665 : reg4 = reg6;
25666 : reg3 = reg2;
25667 : operands[6] = operands[4];
25668 : }
25669 :
25670 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25671 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25672 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25673 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25674 :
25675 : tmp1 = reg1 & reg2;
25676 : tmp2 = tmp1 | reg3;
25677 : reg_mask = tmp2 | reg4;
25678 : reg_mask &= 0xFF;
25679 :
25680 : operands[1] = STRIP_UNARY (operands[1]);
25681 : operands[2] = STRIP_UNARY (operands[2]);
25682 : operands[6] = STRIP_UNARY (operands[6]);
25683 : operands[5] = GEN_INT (reg_mask);
25684 : if (!register_operand (operands[2], V8HFmode))
25685 : operands[2] = force_reg (V8HFmode, operands[2]);
25686 : if (!register_operand (operands[6], V8HFmode))
25687 : operands[6] = force_reg (V8HFmode, operands[6]);
25688 :
25689 : }
25690 : #undef DONE
25691 : #undef FAIL
25692 : static const uint8_t expand_encoding[] = {
25693 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25694 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25695 : 0x25
25696 : };
25697 : return complete_seq (expand_encoding, operands);
25698 : }
25699 :
25700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25701 : extern rtx_insn *gen_split_2779 (rtx_insn *, rtx *);
25702 : rtx_insn *
25703 : gen_split_2779 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25704 : {
25705 : if (dump_file)
25706 : fprintf (dump_file, "Splitting with gen_split_2779 (sse.md:14227)\n");
25707 : start_sequence ();
25708 : #define FAIL return (end_sequence (), nullptr)
25709 : #define DONE return end_sequence ()
25710 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25711 : {
25712 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25713 : int reg6 = 0xF0;
25714 : int reg2 = 0xCC;
25715 : int reg1 = 0xAA;
25716 : int reg3 = 0;
25717 : int reg4 = 0;
25718 : int reg_mask, tmp1, tmp2;
25719 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25720 : STRIP_UNARY (operands[4])))
25721 : {
25722 : reg4 = reg1;
25723 : reg3 = reg6;
25724 : operands[6] = operands[3];
25725 : }
25726 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25727 : STRIP_UNARY (operands[4])))
25728 : {
25729 : reg4 = reg2;
25730 : reg3 = reg6;
25731 : operands[6] = operands[3];
25732 : }
25733 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25734 : STRIP_UNARY (operands[3])))
25735 : {
25736 : reg4 = reg6;
25737 : reg3 = reg1;
25738 : operands[6] = operands[4];
25739 : }
25740 : else
25741 : {
25742 : reg4 = reg6;
25743 : reg3 = reg2;
25744 : operands[6] = operands[4];
25745 : }
25746 :
25747 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25748 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25749 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25750 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25751 :
25752 : tmp1 = reg1 & reg2;
25753 : tmp2 = tmp1 ^ reg3;
25754 : reg_mask = tmp2 ^ reg4;
25755 : reg_mask &= 0xFF;
25756 :
25757 : operands[1] = STRIP_UNARY (operands[1]);
25758 : operands[2] = STRIP_UNARY (operands[2]);
25759 : operands[6] = STRIP_UNARY (operands[6]);
25760 : operands[5] = GEN_INT (reg_mask);
25761 : if (!register_operand (operands[2], V8HFmode))
25762 : operands[2] = force_reg (V8HFmode, operands[2]);
25763 : if (!register_operand (operands[6], V8HFmode))
25764 : operands[6] = force_reg (V8HFmode, operands[6]);
25765 :
25766 : }
25767 : #undef DONE
25768 : #undef FAIL
25769 : static const uint8_t expand_encoding[] = {
25770 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25771 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25772 : 0x25
25773 : };
25774 : return complete_seq (expand_encoding, operands);
25775 : }
25776 :
25777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25778 : extern rtx_insn *gen_split_2789 (rtx_insn *, rtx *);
25779 : rtx_insn *
25780 : gen_split_2789 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25781 : {
25782 : if (dump_file)
25783 : fprintf (dump_file, "Splitting with gen_split_2789 (sse.md:14227)\n");
25784 : start_sequence ();
25785 : #define FAIL return (end_sequence (), nullptr)
25786 : #define DONE return end_sequence ()
25787 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25788 : {
25789 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25790 : int reg6 = 0xF0;
25791 : int reg2 = 0xCC;
25792 : int reg1 = 0xAA;
25793 : int reg3 = 0;
25794 : int reg4 = 0;
25795 : int reg_mask, tmp1, tmp2;
25796 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25797 : STRIP_UNARY (operands[4])))
25798 : {
25799 : reg4 = reg1;
25800 : reg3 = reg6;
25801 : operands[6] = operands[3];
25802 : }
25803 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25804 : STRIP_UNARY (operands[4])))
25805 : {
25806 : reg4 = reg2;
25807 : reg3 = reg6;
25808 : operands[6] = operands[3];
25809 : }
25810 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25811 : STRIP_UNARY (operands[3])))
25812 : {
25813 : reg4 = reg6;
25814 : reg3 = reg1;
25815 : operands[6] = operands[4];
25816 : }
25817 : else
25818 : {
25819 : reg4 = reg6;
25820 : reg3 = reg2;
25821 : operands[6] = operands[4];
25822 : }
25823 :
25824 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25825 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25826 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25827 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25828 :
25829 : tmp1 = reg1 | reg2;
25830 : tmp2 = tmp1 & reg3;
25831 : reg_mask = tmp2 & reg4;
25832 : reg_mask &= 0xFF;
25833 :
25834 : operands[1] = STRIP_UNARY (operands[1]);
25835 : operands[2] = STRIP_UNARY (operands[2]);
25836 : operands[6] = STRIP_UNARY (operands[6]);
25837 : operands[5] = GEN_INT (reg_mask);
25838 : if (!register_operand (operands[2], V32BFmode))
25839 : operands[2] = force_reg (V32BFmode, operands[2]);
25840 : if (!register_operand (operands[6], V32BFmode))
25841 : operands[6] = force_reg (V32BFmode, operands[6]);
25842 :
25843 : }
25844 : #undef DONE
25845 : #undef FAIL
25846 : static const uint8_t expand_encoding[] = {
25847 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25848 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25849 : 0x25
25850 : };
25851 : return complete_seq (expand_encoding, operands);
25852 : }
25853 :
25854 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25855 : extern rtx_insn *gen_split_2799 (rtx_insn *, rtx *);
25856 : rtx_insn *
25857 : gen_split_2799 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25858 : {
25859 : if (dump_file)
25860 : fprintf (dump_file, "Splitting with gen_split_2799 (sse.md:14227)\n");
25861 : start_sequence ();
25862 : #define FAIL return (end_sequence (), nullptr)
25863 : #define DONE return end_sequence ()
25864 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25865 : {
25866 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25867 : int reg6 = 0xF0;
25868 : int reg2 = 0xCC;
25869 : int reg1 = 0xAA;
25870 : int reg3 = 0;
25871 : int reg4 = 0;
25872 : int reg_mask, tmp1, tmp2;
25873 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25874 : STRIP_UNARY (operands[4])))
25875 : {
25876 : reg4 = reg1;
25877 : reg3 = reg6;
25878 : operands[6] = operands[3];
25879 : }
25880 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25881 : STRIP_UNARY (operands[4])))
25882 : {
25883 : reg4 = reg2;
25884 : reg3 = reg6;
25885 : operands[6] = operands[3];
25886 : }
25887 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25888 : STRIP_UNARY (operands[3])))
25889 : {
25890 : reg4 = reg6;
25891 : reg3 = reg1;
25892 : operands[6] = operands[4];
25893 : }
25894 : else
25895 : {
25896 : reg4 = reg6;
25897 : reg3 = reg2;
25898 : operands[6] = operands[4];
25899 : }
25900 :
25901 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25902 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25903 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25904 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25905 :
25906 : tmp1 = reg1 | reg2;
25907 : tmp2 = tmp1 | reg3;
25908 : reg_mask = tmp2 | reg4;
25909 : reg_mask &= 0xFF;
25910 :
25911 : operands[1] = STRIP_UNARY (operands[1]);
25912 : operands[2] = STRIP_UNARY (operands[2]);
25913 : operands[6] = STRIP_UNARY (operands[6]);
25914 : operands[5] = GEN_INT (reg_mask);
25915 : if (!register_operand (operands[2], V32BFmode))
25916 : operands[2] = force_reg (V32BFmode, operands[2]);
25917 : if (!register_operand (operands[6], V32BFmode))
25918 : operands[6] = force_reg (V32BFmode, operands[6]);
25919 :
25920 : }
25921 : #undef DONE
25922 : #undef FAIL
25923 : static const uint8_t expand_encoding[] = {
25924 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25925 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25926 : 0x25
25927 : };
25928 : return complete_seq (expand_encoding, operands);
25929 : }
25930 :
25931 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25932 : extern rtx_insn *gen_split_2809 (rtx_insn *, rtx *);
25933 : rtx_insn *
25934 : gen_split_2809 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25935 : {
25936 : if (dump_file)
25937 : fprintf (dump_file, "Splitting with gen_split_2809 (sse.md:14227)\n");
25938 : start_sequence ();
25939 : #define FAIL return (end_sequence (), nullptr)
25940 : #define DONE return end_sequence ()
25941 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25942 : {
25943 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25944 : int reg6 = 0xF0;
25945 : int reg2 = 0xCC;
25946 : int reg1 = 0xAA;
25947 : int reg3 = 0;
25948 : int reg4 = 0;
25949 : int reg_mask, tmp1, tmp2;
25950 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25951 : STRIP_UNARY (operands[4])))
25952 : {
25953 : reg4 = reg1;
25954 : reg3 = reg6;
25955 : operands[6] = operands[3];
25956 : }
25957 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25958 : STRIP_UNARY (operands[4])))
25959 : {
25960 : reg4 = reg2;
25961 : reg3 = reg6;
25962 : operands[6] = operands[3];
25963 : }
25964 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25965 : STRIP_UNARY (operands[3])))
25966 : {
25967 : reg4 = reg6;
25968 : reg3 = reg1;
25969 : operands[6] = operands[4];
25970 : }
25971 : else
25972 : {
25973 : reg4 = reg6;
25974 : reg3 = reg2;
25975 : operands[6] = operands[4];
25976 : }
25977 :
25978 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25979 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25980 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25981 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25982 :
25983 : tmp1 = reg1 | reg2;
25984 : tmp2 = tmp1 ^ reg3;
25985 : reg_mask = tmp2 ^ reg4;
25986 : reg_mask &= 0xFF;
25987 :
25988 : operands[1] = STRIP_UNARY (operands[1]);
25989 : operands[2] = STRIP_UNARY (operands[2]);
25990 : operands[6] = STRIP_UNARY (operands[6]);
25991 : operands[5] = GEN_INT (reg_mask);
25992 : if (!register_operand (operands[2], V32BFmode))
25993 : operands[2] = force_reg (V32BFmode, operands[2]);
25994 : if (!register_operand (operands[6], V32BFmode))
25995 : operands[6] = force_reg (V32BFmode, operands[6]);
25996 :
25997 : }
25998 : #undef DONE
25999 : #undef FAIL
26000 : static const uint8_t expand_encoding[] = {
26001 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
26002 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26003 : 0x25
26004 : };
26005 : return complete_seq (expand_encoding, operands);
26006 : }
26007 :
26008 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26009 : extern rtx_insn *gen_split_2819 (rtx_insn *, rtx *);
26010 : rtx_insn *
26011 : gen_split_2819 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26012 : {
26013 : if (dump_file)
26014 : fprintf (dump_file, "Splitting with gen_split_2819 (sse.md:14227)\n");
26015 : start_sequence ();
26016 : #define FAIL return (end_sequence (), nullptr)
26017 : #define DONE return end_sequence ()
26018 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26019 : {
26020 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26021 : int reg6 = 0xF0;
26022 : int reg2 = 0xCC;
26023 : int reg1 = 0xAA;
26024 : int reg3 = 0;
26025 : int reg4 = 0;
26026 : int reg_mask, tmp1, tmp2;
26027 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26028 : STRIP_UNARY (operands[4])))
26029 : {
26030 : reg4 = reg1;
26031 : reg3 = reg6;
26032 : operands[6] = operands[3];
26033 : }
26034 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26035 : STRIP_UNARY (operands[4])))
26036 : {
26037 : reg4 = reg2;
26038 : reg3 = reg6;
26039 : operands[6] = operands[3];
26040 : }
26041 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26042 : STRIP_UNARY (operands[3])))
26043 : {
26044 : reg4 = reg6;
26045 : reg3 = reg1;
26046 : operands[6] = operands[4];
26047 : }
26048 : else
26049 : {
26050 : reg4 = reg6;
26051 : reg3 = reg2;
26052 : operands[6] = operands[4];
26053 : }
26054 :
26055 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26056 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26057 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26058 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26059 :
26060 : tmp1 = reg1 ^ reg2;
26061 : tmp2 = tmp1 & reg3;
26062 : reg_mask = tmp2 & reg4;
26063 : reg_mask &= 0xFF;
26064 :
26065 : operands[1] = STRIP_UNARY (operands[1]);
26066 : operands[2] = STRIP_UNARY (operands[2]);
26067 : operands[6] = STRIP_UNARY (operands[6]);
26068 : operands[5] = GEN_INT (reg_mask);
26069 : if (!register_operand (operands[2], V16BFmode))
26070 : operands[2] = force_reg (V16BFmode, operands[2]);
26071 : if (!register_operand (operands[6], V16BFmode))
26072 : operands[6] = force_reg (V16BFmode, operands[6]);
26073 :
26074 : }
26075 : #undef DONE
26076 : #undef FAIL
26077 : static const uint8_t expand_encoding[] = {
26078 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26079 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26080 : 0x25
26081 : };
26082 : return complete_seq (expand_encoding, operands);
26083 : }
26084 :
26085 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26086 : extern rtx_insn *gen_split_2829 (rtx_insn *, rtx *);
26087 : rtx_insn *
26088 : gen_split_2829 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26089 : {
26090 : if (dump_file)
26091 : fprintf (dump_file, "Splitting with gen_split_2829 (sse.md:14227)\n");
26092 : start_sequence ();
26093 : #define FAIL return (end_sequence (), nullptr)
26094 : #define DONE return end_sequence ()
26095 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26096 : {
26097 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26098 : int reg6 = 0xF0;
26099 : int reg2 = 0xCC;
26100 : int reg1 = 0xAA;
26101 : int reg3 = 0;
26102 : int reg4 = 0;
26103 : int reg_mask, tmp1, tmp2;
26104 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26105 : STRIP_UNARY (operands[4])))
26106 : {
26107 : reg4 = reg1;
26108 : reg3 = reg6;
26109 : operands[6] = operands[3];
26110 : }
26111 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26112 : STRIP_UNARY (operands[4])))
26113 : {
26114 : reg4 = reg2;
26115 : reg3 = reg6;
26116 : operands[6] = operands[3];
26117 : }
26118 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26119 : STRIP_UNARY (operands[3])))
26120 : {
26121 : reg4 = reg6;
26122 : reg3 = reg1;
26123 : operands[6] = operands[4];
26124 : }
26125 : else
26126 : {
26127 : reg4 = reg6;
26128 : reg3 = reg2;
26129 : operands[6] = operands[4];
26130 : }
26131 :
26132 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26133 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26134 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26135 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26136 :
26137 : tmp1 = reg1 ^ reg2;
26138 : tmp2 = tmp1 | reg3;
26139 : reg_mask = tmp2 | reg4;
26140 : reg_mask &= 0xFF;
26141 :
26142 : operands[1] = STRIP_UNARY (operands[1]);
26143 : operands[2] = STRIP_UNARY (operands[2]);
26144 : operands[6] = STRIP_UNARY (operands[6]);
26145 : operands[5] = GEN_INT (reg_mask);
26146 : if (!register_operand (operands[2], V16BFmode))
26147 : operands[2] = force_reg (V16BFmode, operands[2]);
26148 : if (!register_operand (operands[6], V16BFmode))
26149 : operands[6] = force_reg (V16BFmode, operands[6]);
26150 :
26151 : }
26152 : #undef DONE
26153 : #undef FAIL
26154 : static const uint8_t expand_encoding[] = {
26155 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26156 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26157 : 0x25
26158 : };
26159 : return complete_seq (expand_encoding, operands);
26160 : }
26161 :
26162 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26163 : extern rtx_insn *gen_split_2839 (rtx_insn *, rtx *);
26164 : rtx_insn *
26165 : gen_split_2839 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26166 : {
26167 : if (dump_file)
26168 : fprintf (dump_file, "Splitting with gen_split_2839 (sse.md:14227)\n");
26169 : start_sequence ();
26170 : #define FAIL return (end_sequence (), nullptr)
26171 : #define DONE return end_sequence ()
26172 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26173 : {
26174 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26175 : int reg6 = 0xF0;
26176 : int reg2 = 0xCC;
26177 : int reg1 = 0xAA;
26178 : int reg3 = 0;
26179 : int reg4 = 0;
26180 : int reg_mask, tmp1, tmp2;
26181 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26182 : STRIP_UNARY (operands[4])))
26183 : {
26184 : reg4 = reg1;
26185 : reg3 = reg6;
26186 : operands[6] = operands[3];
26187 : }
26188 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26189 : STRIP_UNARY (operands[4])))
26190 : {
26191 : reg4 = reg2;
26192 : reg3 = reg6;
26193 : operands[6] = operands[3];
26194 : }
26195 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26196 : STRIP_UNARY (operands[3])))
26197 : {
26198 : reg4 = reg6;
26199 : reg3 = reg1;
26200 : operands[6] = operands[4];
26201 : }
26202 : else
26203 : {
26204 : reg4 = reg6;
26205 : reg3 = reg2;
26206 : operands[6] = operands[4];
26207 : }
26208 :
26209 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26210 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26211 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26212 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26213 :
26214 : tmp1 = reg1 ^ reg2;
26215 : tmp2 = tmp1 ^ reg3;
26216 : reg_mask = tmp2 ^ reg4;
26217 : reg_mask &= 0xFF;
26218 :
26219 : operands[1] = STRIP_UNARY (operands[1]);
26220 : operands[2] = STRIP_UNARY (operands[2]);
26221 : operands[6] = STRIP_UNARY (operands[6]);
26222 : operands[5] = GEN_INT (reg_mask);
26223 : if (!register_operand (operands[2], V16BFmode))
26224 : operands[2] = force_reg (V16BFmode, operands[2]);
26225 : if (!register_operand (operands[6], V16BFmode))
26226 : operands[6] = force_reg (V16BFmode, operands[6]);
26227 :
26228 : }
26229 : #undef DONE
26230 : #undef FAIL
26231 : static const uint8_t expand_encoding[] = {
26232 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26233 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26234 : 0x25
26235 : };
26236 : return complete_seq (expand_encoding, operands);
26237 : }
26238 :
26239 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26240 : extern rtx_insn *gen_split_2849 (rtx_insn *, rtx *);
26241 : rtx_insn *
26242 : gen_split_2849 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26243 : {
26244 : if (dump_file)
26245 : fprintf (dump_file, "Splitting with gen_split_2849 (sse.md:14227)\n");
26246 : start_sequence ();
26247 : #define FAIL return (end_sequence (), nullptr)
26248 : #define DONE return end_sequence ()
26249 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26250 : {
26251 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26252 : int reg6 = 0xF0;
26253 : int reg2 = 0xCC;
26254 : int reg1 = 0xAA;
26255 : int reg3 = 0;
26256 : int reg4 = 0;
26257 : int reg_mask, tmp1, tmp2;
26258 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26259 : STRIP_UNARY (operands[4])))
26260 : {
26261 : reg4 = reg1;
26262 : reg3 = reg6;
26263 : operands[6] = operands[3];
26264 : }
26265 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26266 : STRIP_UNARY (operands[4])))
26267 : {
26268 : reg4 = reg2;
26269 : reg3 = reg6;
26270 : operands[6] = operands[3];
26271 : }
26272 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26273 : STRIP_UNARY (operands[3])))
26274 : {
26275 : reg4 = reg6;
26276 : reg3 = reg1;
26277 : operands[6] = operands[4];
26278 : }
26279 : else
26280 : {
26281 : reg4 = reg6;
26282 : reg3 = reg2;
26283 : operands[6] = operands[4];
26284 : }
26285 :
26286 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26287 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26288 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26289 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26290 :
26291 : tmp1 = reg1 & reg2;
26292 : tmp2 = tmp1 | reg3;
26293 : reg_mask = tmp2 & reg4;
26294 : reg_mask &= 0xFF;
26295 :
26296 : operands[1] = STRIP_UNARY (operands[1]);
26297 : operands[2] = STRIP_UNARY (operands[2]);
26298 : operands[6] = STRIP_UNARY (operands[6]);
26299 : operands[5] = GEN_INT (reg_mask);
26300 : if (!register_operand (operands[2], V8BFmode))
26301 : operands[2] = force_reg (V8BFmode, operands[2]);
26302 : if (!register_operand (operands[6], V8BFmode))
26303 : operands[6] = force_reg (V8BFmode, operands[6]);
26304 :
26305 : }
26306 : #undef DONE
26307 : #undef FAIL
26308 : static const uint8_t expand_encoding[] = {
26309 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26310 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26311 : 0x25
26312 : };
26313 : return complete_seq (expand_encoding, operands);
26314 : }
26315 :
26316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26317 : extern rtx_insn *gen_split_2859 (rtx_insn *, rtx *);
26318 : rtx_insn *
26319 : gen_split_2859 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26320 : {
26321 : if (dump_file)
26322 : fprintf (dump_file, "Splitting with gen_split_2859 (sse.md:14227)\n");
26323 : start_sequence ();
26324 : #define FAIL return (end_sequence (), nullptr)
26325 : #define DONE return end_sequence ()
26326 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26327 : {
26328 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26329 : int reg6 = 0xF0;
26330 : int reg2 = 0xCC;
26331 : int reg1 = 0xAA;
26332 : int reg3 = 0;
26333 : int reg4 = 0;
26334 : int reg_mask, tmp1, tmp2;
26335 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26336 : STRIP_UNARY (operands[4])))
26337 : {
26338 : reg4 = reg1;
26339 : reg3 = reg6;
26340 : operands[6] = operands[3];
26341 : }
26342 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26343 : STRIP_UNARY (operands[4])))
26344 : {
26345 : reg4 = reg2;
26346 : reg3 = reg6;
26347 : operands[6] = operands[3];
26348 : }
26349 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26350 : STRIP_UNARY (operands[3])))
26351 : {
26352 : reg4 = reg6;
26353 : reg3 = reg1;
26354 : operands[6] = operands[4];
26355 : }
26356 : else
26357 : {
26358 : reg4 = reg6;
26359 : reg3 = reg2;
26360 : operands[6] = operands[4];
26361 : }
26362 :
26363 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26364 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26365 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26366 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26367 :
26368 : tmp1 = reg1 & reg2;
26369 : tmp2 = tmp1 ^ reg3;
26370 : reg_mask = tmp2 | reg4;
26371 : reg_mask &= 0xFF;
26372 :
26373 : operands[1] = STRIP_UNARY (operands[1]);
26374 : operands[2] = STRIP_UNARY (operands[2]);
26375 : operands[6] = STRIP_UNARY (operands[6]);
26376 : operands[5] = GEN_INT (reg_mask);
26377 : if (!register_operand (operands[2], V8BFmode))
26378 : operands[2] = force_reg (V8BFmode, operands[2]);
26379 : if (!register_operand (operands[6], V8BFmode))
26380 : operands[6] = force_reg (V8BFmode, operands[6]);
26381 :
26382 : }
26383 : #undef DONE
26384 : #undef FAIL
26385 : static const uint8_t expand_encoding[] = {
26386 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26387 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26388 : 0x25
26389 : };
26390 : return complete_seq (expand_encoding, operands);
26391 : }
26392 :
26393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26394 : extern rtx_insn *gen_split_2869 (rtx_insn *, rtx *);
26395 : rtx_insn *
26396 : gen_split_2869 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26397 : {
26398 : if (dump_file)
26399 : fprintf (dump_file, "Splitting with gen_split_2869 (sse.md:14227)\n");
26400 : start_sequence ();
26401 : #define FAIL return (end_sequence (), nullptr)
26402 : #define DONE return end_sequence ()
26403 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26404 : {
26405 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26406 : int reg6 = 0xF0;
26407 : int reg2 = 0xCC;
26408 : int reg1 = 0xAA;
26409 : int reg3 = 0;
26410 : int reg4 = 0;
26411 : int reg_mask, tmp1, tmp2;
26412 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26413 : STRIP_UNARY (operands[4])))
26414 : {
26415 : reg4 = reg1;
26416 : reg3 = reg6;
26417 : operands[6] = operands[3];
26418 : }
26419 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26420 : STRIP_UNARY (operands[4])))
26421 : {
26422 : reg4 = reg2;
26423 : reg3 = reg6;
26424 : operands[6] = operands[3];
26425 : }
26426 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26427 : STRIP_UNARY (operands[3])))
26428 : {
26429 : reg4 = reg6;
26430 : reg3 = reg1;
26431 : operands[6] = operands[4];
26432 : }
26433 : else
26434 : {
26435 : reg4 = reg6;
26436 : reg3 = reg2;
26437 : operands[6] = operands[4];
26438 : }
26439 :
26440 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26441 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26442 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26443 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26444 :
26445 : tmp1 = reg1 & reg2;
26446 : tmp2 = tmp1 & reg3;
26447 : reg_mask = tmp2 ^ reg4;
26448 : reg_mask &= 0xFF;
26449 :
26450 : operands[1] = STRIP_UNARY (operands[1]);
26451 : operands[2] = STRIP_UNARY (operands[2]);
26452 : operands[6] = STRIP_UNARY (operands[6]);
26453 : operands[5] = GEN_INT (reg_mask);
26454 : if (!register_operand (operands[2], V16SFmode))
26455 : operands[2] = force_reg (V16SFmode, operands[2]);
26456 : if (!register_operand (operands[6], V16SFmode))
26457 : operands[6] = force_reg (V16SFmode, operands[6]);
26458 :
26459 : }
26460 : #undef DONE
26461 : #undef FAIL
26462 : static const uint8_t expand_encoding[] = {
26463 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26464 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26465 : 0x25
26466 : };
26467 : return complete_seq (expand_encoding, operands);
26468 : }
26469 :
26470 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26471 : extern rtx_insn *gen_split_2879 (rtx_insn *, rtx *);
26472 : rtx_insn *
26473 : gen_split_2879 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26474 : {
26475 : if (dump_file)
26476 : fprintf (dump_file, "Splitting with gen_split_2879 (sse.md:14227)\n");
26477 : start_sequence ();
26478 : #define FAIL return (end_sequence (), nullptr)
26479 : #define DONE return end_sequence ()
26480 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26481 : {
26482 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26483 : int reg6 = 0xF0;
26484 : int reg2 = 0xCC;
26485 : int reg1 = 0xAA;
26486 : int reg3 = 0;
26487 : int reg4 = 0;
26488 : int reg_mask, tmp1, tmp2;
26489 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26490 : STRIP_UNARY (operands[4])))
26491 : {
26492 : reg4 = reg1;
26493 : reg3 = reg6;
26494 : operands[6] = operands[3];
26495 : }
26496 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26497 : STRIP_UNARY (operands[4])))
26498 : {
26499 : reg4 = reg2;
26500 : reg3 = reg6;
26501 : operands[6] = operands[3];
26502 : }
26503 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26504 : STRIP_UNARY (operands[3])))
26505 : {
26506 : reg4 = reg6;
26507 : reg3 = reg1;
26508 : operands[6] = operands[4];
26509 : }
26510 : else
26511 : {
26512 : reg4 = reg6;
26513 : reg3 = reg2;
26514 : operands[6] = operands[4];
26515 : }
26516 :
26517 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26518 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26519 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26520 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26521 :
26522 : tmp1 = reg1 | reg2;
26523 : tmp2 = tmp1 | reg3;
26524 : reg_mask = tmp2 & reg4;
26525 : reg_mask &= 0xFF;
26526 :
26527 : operands[1] = STRIP_UNARY (operands[1]);
26528 : operands[2] = STRIP_UNARY (operands[2]);
26529 : operands[6] = STRIP_UNARY (operands[6]);
26530 : operands[5] = GEN_INT (reg_mask);
26531 : if (!register_operand (operands[2], V16SFmode))
26532 : operands[2] = force_reg (V16SFmode, operands[2]);
26533 : if (!register_operand (operands[6], V16SFmode))
26534 : operands[6] = force_reg (V16SFmode, operands[6]);
26535 :
26536 : }
26537 : #undef DONE
26538 : #undef FAIL
26539 : static const uint8_t expand_encoding[] = {
26540 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26541 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26542 : 0x25
26543 : };
26544 : return complete_seq (expand_encoding, operands);
26545 : }
26546 :
26547 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26548 : extern rtx_insn *gen_split_2889 (rtx_insn *, rtx *);
26549 : rtx_insn *
26550 : gen_split_2889 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26551 : {
26552 : if (dump_file)
26553 : fprintf (dump_file, "Splitting with gen_split_2889 (sse.md:14227)\n");
26554 : start_sequence ();
26555 : #define FAIL return (end_sequence (), nullptr)
26556 : #define DONE return end_sequence ()
26557 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26558 : {
26559 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26560 : int reg6 = 0xF0;
26561 : int reg2 = 0xCC;
26562 : int reg1 = 0xAA;
26563 : int reg3 = 0;
26564 : int reg4 = 0;
26565 : int reg_mask, tmp1, tmp2;
26566 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26567 : STRIP_UNARY (operands[4])))
26568 : {
26569 : reg4 = reg1;
26570 : reg3 = reg6;
26571 : operands[6] = operands[3];
26572 : }
26573 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26574 : STRIP_UNARY (operands[4])))
26575 : {
26576 : reg4 = reg2;
26577 : reg3 = reg6;
26578 : operands[6] = operands[3];
26579 : }
26580 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26581 : STRIP_UNARY (operands[3])))
26582 : {
26583 : reg4 = reg6;
26584 : reg3 = reg1;
26585 : operands[6] = operands[4];
26586 : }
26587 : else
26588 : {
26589 : reg4 = reg6;
26590 : reg3 = reg2;
26591 : operands[6] = operands[4];
26592 : }
26593 :
26594 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26595 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26596 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26597 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26598 :
26599 : tmp1 = reg1 | reg2;
26600 : tmp2 = tmp1 ^ reg3;
26601 : reg_mask = tmp2 | reg4;
26602 : reg_mask &= 0xFF;
26603 :
26604 : operands[1] = STRIP_UNARY (operands[1]);
26605 : operands[2] = STRIP_UNARY (operands[2]);
26606 : operands[6] = STRIP_UNARY (operands[6]);
26607 : operands[5] = GEN_INT (reg_mask);
26608 : if (!register_operand (operands[2], V16SFmode))
26609 : operands[2] = force_reg (V16SFmode, operands[2]);
26610 : if (!register_operand (operands[6], V16SFmode))
26611 : operands[6] = force_reg (V16SFmode, operands[6]);
26612 :
26613 : }
26614 : #undef DONE
26615 : #undef FAIL
26616 : static const uint8_t expand_encoding[] = {
26617 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26618 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26619 : 0x25
26620 : };
26621 : return complete_seq (expand_encoding, operands);
26622 : }
26623 :
26624 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26625 : extern rtx_insn *gen_split_2899 (rtx_insn *, rtx *);
26626 : rtx_insn *
26627 : gen_split_2899 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26628 : {
26629 : if (dump_file)
26630 : fprintf (dump_file, "Splitting with gen_split_2899 (sse.md:14227)\n");
26631 : start_sequence ();
26632 : #define FAIL return (end_sequence (), nullptr)
26633 : #define DONE return end_sequence ()
26634 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26635 : {
26636 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26637 : int reg6 = 0xF0;
26638 : int reg2 = 0xCC;
26639 : int reg1 = 0xAA;
26640 : int reg3 = 0;
26641 : int reg4 = 0;
26642 : int reg_mask, tmp1, tmp2;
26643 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26644 : STRIP_UNARY (operands[4])))
26645 : {
26646 : reg4 = reg1;
26647 : reg3 = reg6;
26648 : operands[6] = operands[3];
26649 : }
26650 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26651 : STRIP_UNARY (operands[4])))
26652 : {
26653 : reg4 = reg2;
26654 : reg3 = reg6;
26655 : operands[6] = operands[3];
26656 : }
26657 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26658 : STRIP_UNARY (operands[3])))
26659 : {
26660 : reg4 = reg6;
26661 : reg3 = reg1;
26662 : operands[6] = operands[4];
26663 : }
26664 : else
26665 : {
26666 : reg4 = reg6;
26667 : reg3 = reg2;
26668 : operands[6] = operands[4];
26669 : }
26670 :
26671 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26672 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26673 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26674 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26675 :
26676 : tmp1 = reg1 | reg2;
26677 : tmp2 = tmp1 & reg3;
26678 : reg_mask = tmp2 ^ reg4;
26679 : reg_mask &= 0xFF;
26680 :
26681 : operands[1] = STRIP_UNARY (operands[1]);
26682 : operands[2] = STRIP_UNARY (operands[2]);
26683 : operands[6] = STRIP_UNARY (operands[6]);
26684 : operands[5] = GEN_INT (reg_mask);
26685 : if (!register_operand (operands[2], V8SFmode))
26686 : operands[2] = force_reg (V8SFmode, operands[2]);
26687 : if (!register_operand (operands[6], V8SFmode))
26688 : operands[6] = force_reg (V8SFmode, operands[6]);
26689 :
26690 : }
26691 : #undef DONE
26692 : #undef FAIL
26693 : static const uint8_t expand_encoding[] = {
26694 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26695 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26696 : 0x25
26697 : };
26698 : return complete_seq (expand_encoding, operands);
26699 : }
26700 :
26701 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26702 : extern rtx_insn *gen_split_2909 (rtx_insn *, rtx *);
26703 : rtx_insn *
26704 : gen_split_2909 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26705 : {
26706 : if (dump_file)
26707 : fprintf (dump_file, "Splitting with gen_split_2909 (sse.md:14227)\n");
26708 : start_sequence ();
26709 : #define FAIL return (end_sequence (), nullptr)
26710 : #define DONE return end_sequence ()
26711 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26712 : {
26713 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26714 : int reg6 = 0xF0;
26715 : int reg2 = 0xCC;
26716 : int reg1 = 0xAA;
26717 : int reg3 = 0;
26718 : int reg4 = 0;
26719 : int reg_mask, tmp1, tmp2;
26720 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26721 : STRIP_UNARY (operands[4])))
26722 : {
26723 : reg4 = reg1;
26724 : reg3 = reg6;
26725 : operands[6] = operands[3];
26726 : }
26727 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26728 : STRIP_UNARY (operands[4])))
26729 : {
26730 : reg4 = reg2;
26731 : reg3 = reg6;
26732 : operands[6] = operands[3];
26733 : }
26734 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26735 : STRIP_UNARY (operands[3])))
26736 : {
26737 : reg4 = reg6;
26738 : reg3 = reg1;
26739 : operands[6] = operands[4];
26740 : }
26741 : else
26742 : {
26743 : reg4 = reg6;
26744 : reg3 = reg2;
26745 : operands[6] = operands[4];
26746 : }
26747 :
26748 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26749 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26750 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26751 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26752 :
26753 : tmp1 = reg1 ^ reg2;
26754 : tmp2 = tmp1 | reg3;
26755 : reg_mask = tmp2 & reg4;
26756 : reg_mask &= 0xFF;
26757 :
26758 : operands[1] = STRIP_UNARY (operands[1]);
26759 : operands[2] = STRIP_UNARY (operands[2]);
26760 : operands[6] = STRIP_UNARY (operands[6]);
26761 : operands[5] = GEN_INT (reg_mask);
26762 : if (!register_operand (operands[2], V8SFmode))
26763 : operands[2] = force_reg (V8SFmode, operands[2]);
26764 : if (!register_operand (operands[6], V8SFmode))
26765 : operands[6] = force_reg (V8SFmode, operands[6]);
26766 :
26767 : }
26768 : #undef DONE
26769 : #undef FAIL
26770 : static const uint8_t expand_encoding[] = {
26771 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26772 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26773 : 0x25
26774 : };
26775 : return complete_seq (expand_encoding, operands);
26776 : }
26777 :
26778 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26779 : extern rtx_insn *gen_split_2919 (rtx_insn *, rtx *);
26780 : rtx_insn *
26781 : gen_split_2919 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26782 : {
26783 : if (dump_file)
26784 : fprintf (dump_file, "Splitting with gen_split_2919 (sse.md:14227)\n");
26785 : start_sequence ();
26786 : #define FAIL return (end_sequence (), nullptr)
26787 : #define DONE return end_sequence ()
26788 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26789 : {
26790 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26791 : int reg6 = 0xF0;
26792 : int reg2 = 0xCC;
26793 : int reg1 = 0xAA;
26794 : int reg3 = 0;
26795 : int reg4 = 0;
26796 : int reg_mask, tmp1, tmp2;
26797 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26798 : STRIP_UNARY (operands[4])))
26799 : {
26800 : reg4 = reg1;
26801 : reg3 = reg6;
26802 : operands[6] = operands[3];
26803 : }
26804 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26805 : STRIP_UNARY (operands[4])))
26806 : {
26807 : reg4 = reg2;
26808 : reg3 = reg6;
26809 : operands[6] = operands[3];
26810 : }
26811 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26812 : STRIP_UNARY (operands[3])))
26813 : {
26814 : reg4 = reg6;
26815 : reg3 = reg1;
26816 : operands[6] = operands[4];
26817 : }
26818 : else
26819 : {
26820 : reg4 = reg6;
26821 : reg3 = reg2;
26822 : operands[6] = operands[4];
26823 : }
26824 :
26825 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26826 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26827 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26828 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26829 :
26830 : tmp1 = reg1 ^ reg2;
26831 : tmp2 = tmp1 ^ reg3;
26832 : reg_mask = tmp2 | reg4;
26833 : reg_mask &= 0xFF;
26834 :
26835 : operands[1] = STRIP_UNARY (operands[1]);
26836 : operands[2] = STRIP_UNARY (operands[2]);
26837 : operands[6] = STRIP_UNARY (operands[6]);
26838 : operands[5] = GEN_INT (reg_mask);
26839 : if (!register_operand (operands[2], V8SFmode))
26840 : operands[2] = force_reg (V8SFmode, operands[2]);
26841 : if (!register_operand (operands[6], V8SFmode))
26842 : operands[6] = force_reg (V8SFmode, operands[6]);
26843 :
26844 : }
26845 : #undef DONE
26846 : #undef FAIL
26847 : static const uint8_t expand_encoding[] = {
26848 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26849 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26850 : 0x25
26851 : };
26852 : return complete_seq (expand_encoding, operands);
26853 : }
26854 :
26855 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26856 : extern rtx_insn *gen_split_2929 (rtx_insn *, rtx *);
26857 : rtx_insn *
26858 : gen_split_2929 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26859 : {
26860 : if (dump_file)
26861 : fprintf (dump_file, "Splitting with gen_split_2929 (sse.md:14227)\n");
26862 : start_sequence ();
26863 : #define FAIL return (end_sequence (), nullptr)
26864 : #define DONE return end_sequence ()
26865 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26866 : {
26867 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26868 : int reg6 = 0xF0;
26869 : int reg2 = 0xCC;
26870 : int reg1 = 0xAA;
26871 : int reg3 = 0;
26872 : int reg4 = 0;
26873 : int reg_mask, tmp1, tmp2;
26874 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26875 : STRIP_UNARY (operands[4])))
26876 : {
26877 : reg4 = reg1;
26878 : reg3 = reg6;
26879 : operands[6] = operands[3];
26880 : }
26881 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26882 : STRIP_UNARY (operands[4])))
26883 : {
26884 : reg4 = reg2;
26885 : reg3 = reg6;
26886 : operands[6] = operands[3];
26887 : }
26888 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26889 : STRIP_UNARY (operands[3])))
26890 : {
26891 : reg4 = reg6;
26892 : reg3 = reg1;
26893 : operands[6] = operands[4];
26894 : }
26895 : else
26896 : {
26897 : reg4 = reg6;
26898 : reg3 = reg2;
26899 : operands[6] = operands[4];
26900 : }
26901 :
26902 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26903 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26904 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26905 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26906 :
26907 : tmp1 = reg1 ^ reg2;
26908 : tmp2 = tmp1 & reg3;
26909 : reg_mask = tmp2 ^ reg4;
26910 : reg_mask &= 0xFF;
26911 :
26912 : operands[1] = STRIP_UNARY (operands[1]);
26913 : operands[2] = STRIP_UNARY (operands[2]);
26914 : operands[6] = STRIP_UNARY (operands[6]);
26915 : operands[5] = GEN_INT (reg_mask);
26916 : if (!register_operand (operands[2], V4SFmode))
26917 : operands[2] = force_reg (V4SFmode, operands[2]);
26918 : if (!register_operand (operands[6], V4SFmode))
26919 : operands[6] = force_reg (V4SFmode, operands[6]);
26920 :
26921 : }
26922 : #undef DONE
26923 : #undef FAIL
26924 : static const uint8_t expand_encoding[] = {
26925 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26926 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26927 : 0x25
26928 : };
26929 : return complete_seq (expand_encoding, operands);
26930 : }
26931 :
26932 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26933 : extern rtx_insn *gen_split_2939 (rtx_insn *, rtx *);
26934 : rtx_insn *
26935 : gen_split_2939 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26936 : {
26937 : if (dump_file)
26938 : fprintf (dump_file, "Splitting with gen_split_2939 (sse.md:14227)\n");
26939 : start_sequence ();
26940 : #define FAIL return (end_sequence (), nullptr)
26941 : #define DONE return end_sequence ()
26942 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26943 : {
26944 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26945 : int reg6 = 0xF0;
26946 : int reg2 = 0xCC;
26947 : int reg1 = 0xAA;
26948 : int reg3 = 0;
26949 : int reg4 = 0;
26950 : int reg_mask, tmp1, tmp2;
26951 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26952 : STRIP_UNARY (operands[4])))
26953 : {
26954 : reg4 = reg1;
26955 : reg3 = reg6;
26956 : operands[6] = operands[3];
26957 : }
26958 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26959 : STRIP_UNARY (operands[4])))
26960 : {
26961 : reg4 = reg2;
26962 : reg3 = reg6;
26963 : operands[6] = operands[3];
26964 : }
26965 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26966 : STRIP_UNARY (operands[3])))
26967 : {
26968 : reg4 = reg6;
26969 : reg3 = reg1;
26970 : operands[6] = operands[4];
26971 : }
26972 : else
26973 : {
26974 : reg4 = reg6;
26975 : reg3 = reg2;
26976 : operands[6] = operands[4];
26977 : }
26978 :
26979 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26980 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26981 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26982 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26983 :
26984 : tmp1 = reg1 & reg2;
26985 : tmp2 = tmp1 ^ reg3;
26986 : reg_mask = tmp2 & reg4;
26987 : reg_mask &= 0xFF;
26988 :
26989 : operands[1] = STRIP_UNARY (operands[1]);
26990 : operands[2] = STRIP_UNARY (operands[2]);
26991 : operands[6] = STRIP_UNARY (operands[6]);
26992 : operands[5] = GEN_INT (reg_mask);
26993 : if (!register_operand (operands[2], V4SFmode))
26994 : operands[2] = force_reg (V4SFmode, operands[2]);
26995 : if (!register_operand (operands[6], V4SFmode))
26996 : operands[6] = force_reg (V4SFmode, operands[6]);
26997 :
26998 : }
26999 : #undef DONE
27000 : #undef FAIL
27001 : static const uint8_t expand_encoding[] = {
27002 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
27003 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27004 : 0x25
27005 : };
27006 : return complete_seq (expand_encoding, operands);
27007 : }
27008 :
27009 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27010 : extern rtx_insn *gen_split_2949 (rtx_insn *, rtx *);
27011 : rtx_insn *
27012 : gen_split_2949 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27013 : {
27014 : if (dump_file)
27015 : fprintf (dump_file, "Splitting with gen_split_2949 (sse.md:14227)\n");
27016 : start_sequence ();
27017 : #define FAIL return (end_sequence (), nullptr)
27018 : #define DONE return end_sequence ()
27019 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27020 : {
27021 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27022 : int reg6 = 0xF0;
27023 : int reg2 = 0xCC;
27024 : int reg1 = 0xAA;
27025 : int reg3 = 0;
27026 : int reg4 = 0;
27027 : int reg_mask, tmp1, tmp2;
27028 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27029 : STRIP_UNARY (operands[4])))
27030 : {
27031 : reg4 = reg1;
27032 : reg3 = reg6;
27033 : operands[6] = operands[3];
27034 : }
27035 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27036 : STRIP_UNARY (operands[4])))
27037 : {
27038 : reg4 = reg2;
27039 : reg3 = reg6;
27040 : operands[6] = operands[3];
27041 : }
27042 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27043 : STRIP_UNARY (operands[3])))
27044 : {
27045 : reg4 = reg6;
27046 : reg3 = reg1;
27047 : operands[6] = operands[4];
27048 : }
27049 : else
27050 : {
27051 : reg4 = reg6;
27052 : reg3 = reg2;
27053 : operands[6] = operands[4];
27054 : }
27055 :
27056 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27057 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27058 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27059 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27060 :
27061 : tmp1 = reg1 & reg2;
27062 : tmp2 = tmp1 & reg3;
27063 : reg_mask = tmp2 | reg4;
27064 : reg_mask &= 0xFF;
27065 :
27066 : operands[1] = STRIP_UNARY (operands[1]);
27067 : operands[2] = STRIP_UNARY (operands[2]);
27068 : operands[6] = STRIP_UNARY (operands[6]);
27069 : operands[5] = GEN_INT (reg_mask);
27070 : if (!register_operand (operands[2], V8DFmode))
27071 : operands[2] = force_reg (V8DFmode, operands[2]);
27072 : if (!register_operand (operands[6], V8DFmode))
27073 : operands[6] = force_reg (V8DFmode, operands[6]);
27074 :
27075 : }
27076 : #undef DONE
27077 : #undef FAIL
27078 : static const uint8_t expand_encoding[] = {
27079 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27080 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27081 : 0x25
27082 : };
27083 : return complete_seq (expand_encoding, operands);
27084 : }
27085 :
27086 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27087 : extern rtx_insn *gen_split_2959 (rtx_insn *, rtx *);
27088 : rtx_insn *
27089 : gen_split_2959 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27090 : {
27091 : if (dump_file)
27092 : fprintf (dump_file, "Splitting with gen_split_2959 (sse.md:14227)\n");
27093 : start_sequence ();
27094 : #define FAIL return (end_sequence (), nullptr)
27095 : #define DONE return end_sequence ()
27096 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27097 : {
27098 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27099 : int reg6 = 0xF0;
27100 : int reg2 = 0xCC;
27101 : int reg1 = 0xAA;
27102 : int reg3 = 0;
27103 : int reg4 = 0;
27104 : int reg_mask, tmp1, tmp2;
27105 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27106 : STRIP_UNARY (operands[4])))
27107 : {
27108 : reg4 = reg1;
27109 : reg3 = reg6;
27110 : operands[6] = operands[3];
27111 : }
27112 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27113 : STRIP_UNARY (operands[4])))
27114 : {
27115 : reg4 = reg2;
27116 : reg3 = reg6;
27117 : operands[6] = operands[3];
27118 : }
27119 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27120 : STRIP_UNARY (operands[3])))
27121 : {
27122 : reg4 = reg6;
27123 : reg3 = reg1;
27124 : operands[6] = operands[4];
27125 : }
27126 : else
27127 : {
27128 : reg4 = reg6;
27129 : reg3 = reg2;
27130 : operands[6] = operands[4];
27131 : }
27132 :
27133 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27134 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27135 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27136 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27137 :
27138 : tmp1 = reg1 & reg2;
27139 : tmp2 = tmp1 | reg3;
27140 : reg_mask = tmp2 ^ reg4;
27141 : reg_mask &= 0xFF;
27142 :
27143 : operands[1] = STRIP_UNARY (operands[1]);
27144 : operands[2] = STRIP_UNARY (operands[2]);
27145 : operands[6] = STRIP_UNARY (operands[6]);
27146 : operands[5] = GEN_INT (reg_mask);
27147 : if (!register_operand (operands[2], V8DFmode))
27148 : operands[2] = force_reg (V8DFmode, operands[2]);
27149 : if (!register_operand (operands[6], V8DFmode))
27150 : operands[6] = force_reg (V8DFmode, operands[6]);
27151 :
27152 : }
27153 : #undef DONE
27154 : #undef FAIL
27155 : static const uint8_t expand_encoding[] = {
27156 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27157 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27158 : 0x25
27159 : };
27160 : return complete_seq (expand_encoding, operands);
27161 : }
27162 :
27163 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27164 : extern rtx_insn *gen_split_2969 (rtx_insn *, rtx *);
27165 : rtx_insn *
27166 : gen_split_2969 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27167 : {
27168 : if (dump_file)
27169 : fprintf (dump_file, "Splitting with gen_split_2969 (sse.md:14227)\n");
27170 : start_sequence ();
27171 : #define FAIL return (end_sequence (), nullptr)
27172 : #define DONE return end_sequence ()
27173 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27174 : {
27175 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27176 : int reg6 = 0xF0;
27177 : int reg2 = 0xCC;
27178 : int reg1 = 0xAA;
27179 : int reg3 = 0;
27180 : int reg4 = 0;
27181 : int reg_mask, tmp1, tmp2;
27182 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27183 : STRIP_UNARY (operands[4])))
27184 : {
27185 : reg4 = reg1;
27186 : reg3 = reg6;
27187 : operands[6] = operands[3];
27188 : }
27189 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27190 : STRIP_UNARY (operands[4])))
27191 : {
27192 : reg4 = reg2;
27193 : reg3 = reg6;
27194 : operands[6] = operands[3];
27195 : }
27196 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27197 : STRIP_UNARY (operands[3])))
27198 : {
27199 : reg4 = reg6;
27200 : reg3 = reg1;
27201 : operands[6] = operands[4];
27202 : }
27203 : else
27204 : {
27205 : reg4 = reg6;
27206 : reg3 = reg2;
27207 : operands[6] = operands[4];
27208 : }
27209 :
27210 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27211 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27212 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27213 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27214 :
27215 : tmp1 = reg1 | reg2;
27216 : tmp2 = tmp1 ^ reg3;
27217 : reg_mask = tmp2 & reg4;
27218 : reg_mask &= 0xFF;
27219 :
27220 : operands[1] = STRIP_UNARY (operands[1]);
27221 : operands[2] = STRIP_UNARY (operands[2]);
27222 : operands[6] = STRIP_UNARY (operands[6]);
27223 : operands[5] = GEN_INT (reg_mask);
27224 : if (!register_operand (operands[2], V8DFmode))
27225 : operands[2] = force_reg (V8DFmode, operands[2]);
27226 : if (!register_operand (operands[6], V8DFmode))
27227 : operands[6] = force_reg (V8DFmode, operands[6]);
27228 :
27229 : }
27230 : #undef DONE
27231 : #undef FAIL
27232 : static const uint8_t expand_encoding[] = {
27233 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27234 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27235 : 0x25
27236 : };
27237 : return complete_seq (expand_encoding, operands);
27238 : }
27239 :
27240 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27241 : extern rtx_insn *gen_split_2979 (rtx_insn *, rtx *);
27242 : rtx_insn *
27243 : gen_split_2979 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27244 : {
27245 : if (dump_file)
27246 : fprintf (dump_file, "Splitting with gen_split_2979 (sse.md:14227)\n");
27247 : start_sequence ();
27248 : #define FAIL return (end_sequence (), nullptr)
27249 : #define DONE return end_sequence ()
27250 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27251 : {
27252 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27253 : int reg6 = 0xF0;
27254 : int reg2 = 0xCC;
27255 : int reg1 = 0xAA;
27256 : int reg3 = 0;
27257 : int reg4 = 0;
27258 : int reg_mask, tmp1, tmp2;
27259 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27260 : STRIP_UNARY (operands[4])))
27261 : {
27262 : reg4 = reg1;
27263 : reg3 = reg6;
27264 : operands[6] = operands[3];
27265 : }
27266 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27267 : STRIP_UNARY (operands[4])))
27268 : {
27269 : reg4 = reg2;
27270 : reg3 = reg6;
27271 : operands[6] = operands[3];
27272 : }
27273 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27274 : STRIP_UNARY (operands[3])))
27275 : {
27276 : reg4 = reg6;
27277 : reg3 = reg1;
27278 : operands[6] = operands[4];
27279 : }
27280 : else
27281 : {
27282 : reg4 = reg6;
27283 : reg3 = reg2;
27284 : operands[6] = operands[4];
27285 : }
27286 :
27287 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27288 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27289 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27290 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27291 :
27292 : tmp1 = reg1 | reg2;
27293 : tmp2 = tmp1 & reg3;
27294 : reg_mask = tmp2 | reg4;
27295 : reg_mask &= 0xFF;
27296 :
27297 : operands[1] = STRIP_UNARY (operands[1]);
27298 : operands[2] = STRIP_UNARY (operands[2]);
27299 : operands[6] = STRIP_UNARY (operands[6]);
27300 : operands[5] = GEN_INT (reg_mask);
27301 : if (!register_operand (operands[2], V4DFmode))
27302 : operands[2] = force_reg (V4DFmode, operands[2]);
27303 : if (!register_operand (operands[6], V4DFmode))
27304 : operands[6] = force_reg (V4DFmode, operands[6]);
27305 :
27306 : }
27307 : #undef DONE
27308 : #undef FAIL
27309 : static const uint8_t expand_encoding[] = {
27310 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27311 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27312 : 0x25
27313 : };
27314 : return complete_seq (expand_encoding, operands);
27315 : }
27316 :
27317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27318 : extern rtx_insn *gen_split_2989 (rtx_insn *, rtx *);
27319 : rtx_insn *
27320 : gen_split_2989 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27321 : {
27322 : if (dump_file)
27323 : fprintf (dump_file, "Splitting with gen_split_2989 (sse.md:14227)\n");
27324 : start_sequence ();
27325 : #define FAIL return (end_sequence (), nullptr)
27326 : #define DONE return end_sequence ()
27327 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27328 : {
27329 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27330 : int reg6 = 0xF0;
27331 : int reg2 = 0xCC;
27332 : int reg1 = 0xAA;
27333 : int reg3 = 0;
27334 : int reg4 = 0;
27335 : int reg_mask, tmp1, tmp2;
27336 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27337 : STRIP_UNARY (operands[4])))
27338 : {
27339 : reg4 = reg1;
27340 : reg3 = reg6;
27341 : operands[6] = operands[3];
27342 : }
27343 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27344 : STRIP_UNARY (operands[4])))
27345 : {
27346 : reg4 = reg2;
27347 : reg3 = reg6;
27348 : operands[6] = operands[3];
27349 : }
27350 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27351 : STRIP_UNARY (operands[3])))
27352 : {
27353 : reg4 = reg6;
27354 : reg3 = reg1;
27355 : operands[6] = operands[4];
27356 : }
27357 : else
27358 : {
27359 : reg4 = reg6;
27360 : reg3 = reg2;
27361 : operands[6] = operands[4];
27362 : }
27363 :
27364 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27365 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27366 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27367 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27368 :
27369 : tmp1 = reg1 | reg2;
27370 : tmp2 = tmp1 | reg3;
27371 : reg_mask = tmp2 ^ reg4;
27372 : reg_mask &= 0xFF;
27373 :
27374 : operands[1] = STRIP_UNARY (operands[1]);
27375 : operands[2] = STRIP_UNARY (operands[2]);
27376 : operands[6] = STRIP_UNARY (operands[6]);
27377 : operands[5] = GEN_INT (reg_mask);
27378 : if (!register_operand (operands[2], V4DFmode))
27379 : operands[2] = force_reg (V4DFmode, operands[2]);
27380 : if (!register_operand (operands[6], V4DFmode))
27381 : operands[6] = force_reg (V4DFmode, operands[6]);
27382 :
27383 : }
27384 : #undef DONE
27385 : #undef FAIL
27386 : static const uint8_t expand_encoding[] = {
27387 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27388 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27389 : 0x25
27390 : };
27391 : return complete_seq (expand_encoding, operands);
27392 : }
27393 :
27394 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27395 : extern rtx_insn *gen_split_2999 (rtx_insn *, rtx *);
27396 : rtx_insn *
27397 : gen_split_2999 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27398 : {
27399 : if (dump_file)
27400 : fprintf (dump_file, "Splitting with gen_split_2999 (sse.md:14227)\n");
27401 : start_sequence ();
27402 : #define FAIL return (end_sequence (), nullptr)
27403 : #define DONE return end_sequence ()
27404 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27405 : {
27406 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27407 : int reg6 = 0xF0;
27408 : int reg2 = 0xCC;
27409 : int reg1 = 0xAA;
27410 : int reg3 = 0;
27411 : int reg4 = 0;
27412 : int reg_mask, tmp1, tmp2;
27413 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27414 : STRIP_UNARY (operands[4])))
27415 : {
27416 : reg4 = reg1;
27417 : reg3 = reg6;
27418 : operands[6] = operands[3];
27419 : }
27420 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27421 : STRIP_UNARY (operands[4])))
27422 : {
27423 : reg4 = reg2;
27424 : reg3 = reg6;
27425 : operands[6] = operands[3];
27426 : }
27427 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27428 : STRIP_UNARY (operands[3])))
27429 : {
27430 : reg4 = reg6;
27431 : reg3 = reg1;
27432 : operands[6] = operands[4];
27433 : }
27434 : else
27435 : {
27436 : reg4 = reg6;
27437 : reg3 = reg2;
27438 : operands[6] = operands[4];
27439 : }
27440 :
27441 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27442 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27443 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27444 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27445 :
27446 : tmp1 = reg1 ^ reg2;
27447 : tmp2 = tmp1 ^ reg3;
27448 : reg_mask = tmp2 & reg4;
27449 : reg_mask &= 0xFF;
27450 :
27451 : operands[1] = STRIP_UNARY (operands[1]);
27452 : operands[2] = STRIP_UNARY (operands[2]);
27453 : operands[6] = STRIP_UNARY (operands[6]);
27454 : operands[5] = GEN_INT (reg_mask);
27455 : if (!register_operand (operands[2], V4DFmode))
27456 : operands[2] = force_reg (V4DFmode, operands[2]);
27457 : if (!register_operand (operands[6], V4DFmode))
27458 : operands[6] = force_reg (V4DFmode, operands[6]);
27459 :
27460 : }
27461 : #undef DONE
27462 : #undef FAIL
27463 : static const uint8_t expand_encoding[] = {
27464 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27465 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27466 : 0x25
27467 : };
27468 : return complete_seq (expand_encoding, operands);
27469 : }
27470 :
27471 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27472 : extern rtx_insn *gen_split_3009 (rtx_insn *, rtx *);
27473 : rtx_insn *
27474 : gen_split_3009 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27475 : {
27476 : if (dump_file)
27477 : fprintf (dump_file, "Splitting with gen_split_3009 (sse.md:14227)\n");
27478 : start_sequence ();
27479 : #define FAIL return (end_sequence (), nullptr)
27480 : #define DONE return end_sequence ()
27481 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27482 : {
27483 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27484 : int reg6 = 0xF0;
27485 : int reg2 = 0xCC;
27486 : int reg1 = 0xAA;
27487 : int reg3 = 0;
27488 : int reg4 = 0;
27489 : int reg_mask, tmp1, tmp2;
27490 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27491 : STRIP_UNARY (operands[4])))
27492 : {
27493 : reg4 = reg1;
27494 : reg3 = reg6;
27495 : operands[6] = operands[3];
27496 : }
27497 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27498 : STRIP_UNARY (operands[4])))
27499 : {
27500 : reg4 = reg2;
27501 : reg3 = reg6;
27502 : operands[6] = operands[3];
27503 : }
27504 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27505 : STRIP_UNARY (operands[3])))
27506 : {
27507 : reg4 = reg6;
27508 : reg3 = reg1;
27509 : operands[6] = operands[4];
27510 : }
27511 : else
27512 : {
27513 : reg4 = reg6;
27514 : reg3 = reg2;
27515 : operands[6] = operands[4];
27516 : }
27517 :
27518 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27519 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27520 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27521 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27522 :
27523 : tmp1 = reg1 ^ reg2;
27524 : tmp2 = tmp1 & reg3;
27525 : reg_mask = tmp2 | reg4;
27526 : reg_mask &= 0xFF;
27527 :
27528 : operands[1] = STRIP_UNARY (operands[1]);
27529 : operands[2] = STRIP_UNARY (operands[2]);
27530 : operands[6] = STRIP_UNARY (operands[6]);
27531 : operands[5] = GEN_INT (reg_mask);
27532 : if (!register_operand (operands[2], V2DFmode))
27533 : operands[2] = force_reg (V2DFmode, operands[2]);
27534 : if (!register_operand (operands[6], V2DFmode))
27535 : operands[6] = force_reg (V2DFmode, operands[6]);
27536 :
27537 : }
27538 : #undef DONE
27539 : #undef FAIL
27540 : static const uint8_t expand_encoding[] = {
27541 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27542 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27543 : 0x25
27544 : };
27545 : return complete_seq (expand_encoding, operands);
27546 : }
27547 :
27548 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27549 : extern rtx_insn *gen_split_3019 (rtx_insn *, rtx *);
27550 : rtx_insn *
27551 : gen_split_3019 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27552 : {
27553 : if (dump_file)
27554 : fprintf (dump_file, "Splitting with gen_split_3019 (sse.md:14227)\n");
27555 : start_sequence ();
27556 : #define FAIL return (end_sequence (), nullptr)
27557 : #define DONE return end_sequence ()
27558 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27559 : {
27560 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27561 : int reg6 = 0xF0;
27562 : int reg2 = 0xCC;
27563 : int reg1 = 0xAA;
27564 : int reg3 = 0;
27565 : int reg4 = 0;
27566 : int reg_mask, tmp1, tmp2;
27567 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27568 : STRIP_UNARY (operands[4])))
27569 : {
27570 : reg4 = reg1;
27571 : reg3 = reg6;
27572 : operands[6] = operands[3];
27573 : }
27574 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27575 : STRIP_UNARY (operands[4])))
27576 : {
27577 : reg4 = reg2;
27578 : reg3 = reg6;
27579 : operands[6] = operands[3];
27580 : }
27581 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27582 : STRIP_UNARY (operands[3])))
27583 : {
27584 : reg4 = reg6;
27585 : reg3 = reg1;
27586 : operands[6] = operands[4];
27587 : }
27588 : else
27589 : {
27590 : reg4 = reg6;
27591 : reg3 = reg2;
27592 : operands[6] = operands[4];
27593 : }
27594 :
27595 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27596 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27597 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27598 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27599 :
27600 : tmp1 = reg1 ^ reg2;
27601 : tmp2 = tmp1 | reg3;
27602 : reg_mask = tmp2 ^ reg4;
27603 : reg_mask &= 0xFF;
27604 :
27605 : operands[1] = STRIP_UNARY (operands[1]);
27606 : operands[2] = STRIP_UNARY (operands[2]);
27607 : operands[6] = STRIP_UNARY (operands[6]);
27608 : operands[5] = GEN_INT (reg_mask);
27609 : if (!register_operand (operands[2], V2DFmode))
27610 : operands[2] = force_reg (V2DFmode, operands[2]);
27611 : if (!register_operand (operands[6], V2DFmode))
27612 : operands[6] = force_reg (V2DFmode, operands[6]);
27613 :
27614 : }
27615 : #undef DONE
27616 : #undef FAIL
27617 : static const uint8_t expand_encoding[] = {
27618 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27619 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27620 : 0x25
27621 : };
27622 : return complete_seq (expand_encoding, operands);
27623 : }
27624 :
27625 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27626 : extern rtx_insn *gen_split_3029 (rtx_insn *, rtx *);
27627 : rtx_insn *
27628 : gen_split_3029 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27629 : {
27630 : if (dump_file)
27631 : fprintf (dump_file, "Splitting with gen_split_3029 (sse.md:14313)\n");
27632 : start_sequence ();
27633 : #define FAIL return (end_sequence (), nullptr)
27634 : #define DONE return end_sequence ()
27635 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27636 : {
27637 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27638 : int reg3 = 0xF0;
27639 : int reg2 = 0xCC;
27640 : int reg1 = 0xAA;
27641 : int reg_mask, tmp1;
27642 :
27643 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27644 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27645 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27646 :
27647 : tmp1 = reg1 & reg2;
27648 : reg_mask = tmp1 & reg3;
27649 : reg_mask &= 0xFF;
27650 :
27651 : operands[1] = STRIP_UNARY (operands[1]);
27652 : operands[2] = STRIP_UNARY (operands[2]);
27653 : operands[3] = STRIP_UNARY (operands[3]);
27654 : operands[4] = GEN_INT (reg_mask);
27655 : if (!register_operand (operands[2], V64QImode))
27656 : operands[2] = force_reg (V64QImode, operands[2]);
27657 : if (!register_operand (operands[3], V64QImode))
27658 : operands[3] = force_reg (V64QImode, operands[3]);
27659 : }
27660 : #undef DONE
27661 : #undef FAIL
27662 : static const uint8_t expand_encoding[] = {
27663 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
27664 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27665 : 0x25
27666 : };
27667 : return complete_seq (expand_encoding, operands);
27668 : }
27669 :
27670 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27671 : extern rtx_insn *gen_split_3035 (rtx_insn *, rtx *);
27672 : rtx_insn *
27673 : gen_split_3035 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27674 : {
27675 : if (dump_file)
27676 : fprintf (dump_file, "Splitting with gen_split_3035 (sse.md:14313)\n");
27677 : start_sequence ();
27678 : #define FAIL return (end_sequence (), nullptr)
27679 : #define DONE return end_sequence ()
27680 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27681 : {
27682 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27683 : int reg3 = 0xF0;
27684 : int reg2 = 0xCC;
27685 : int reg1 = 0xAA;
27686 : int reg_mask, tmp1;
27687 :
27688 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27689 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27690 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27691 :
27692 : tmp1 = reg1 ^ reg2;
27693 : reg_mask = tmp1 & reg3;
27694 : reg_mask &= 0xFF;
27695 :
27696 : operands[1] = STRIP_UNARY (operands[1]);
27697 : operands[2] = STRIP_UNARY (operands[2]);
27698 : operands[3] = STRIP_UNARY (operands[3]);
27699 : operands[4] = GEN_INT (reg_mask);
27700 : if (!register_operand (operands[2], V64QImode))
27701 : operands[2] = force_reg (V64QImode, operands[2]);
27702 : if (!register_operand (operands[3], V64QImode))
27703 : operands[3] = force_reg (V64QImode, operands[3]);
27704 : }
27705 : #undef DONE
27706 : #undef FAIL
27707 : static const uint8_t expand_encoding[] = {
27708 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
27709 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27710 : 0x25
27711 : };
27712 : return complete_seq (expand_encoding, operands);
27713 : }
27714 :
27715 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27716 : extern rtx_insn *gen_split_3045 (rtx_insn *, rtx *);
27717 : rtx_insn *
27718 : gen_split_3045 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27719 : {
27720 : if (dump_file)
27721 : fprintf (dump_file, "Splitting with gen_split_3045 (sse.md:14313)\n");
27722 : start_sequence ();
27723 : #define FAIL return (end_sequence (), nullptr)
27724 : #define DONE return end_sequence ()
27725 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27726 : {
27727 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27728 : int reg3 = 0xF0;
27729 : int reg2 = 0xCC;
27730 : int reg1 = 0xAA;
27731 : int reg_mask, tmp1;
27732 :
27733 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27734 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27735 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27736 :
27737 : tmp1 = reg1 ^ reg2;
27738 : reg_mask = tmp1 | reg3;
27739 : reg_mask &= 0xFF;
27740 :
27741 : operands[1] = STRIP_UNARY (operands[1]);
27742 : operands[2] = STRIP_UNARY (operands[2]);
27743 : operands[3] = STRIP_UNARY (operands[3]);
27744 : operands[4] = GEN_INT (reg_mask);
27745 : if (!register_operand (operands[2], V32QImode))
27746 : operands[2] = force_reg (V32QImode, operands[2]);
27747 : if (!register_operand (operands[3], V32QImode))
27748 : operands[3] = force_reg (V32QImode, operands[3]);
27749 : }
27750 : #undef DONE
27751 : #undef FAIL
27752 : static const uint8_t expand_encoding[] = {
27753 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
27754 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27755 : 0x25
27756 : };
27757 : return complete_seq (expand_encoding, operands);
27758 : }
27759 :
27760 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27761 : extern rtx_insn *gen_split_3055 (rtx_insn *, rtx *);
27762 : rtx_insn *
27763 : gen_split_3055 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27764 : {
27765 : if (dump_file)
27766 : fprintf (dump_file, "Splitting with gen_split_3055 (sse.md:14313)\n");
27767 : start_sequence ();
27768 : #define FAIL return (end_sequence (), nullptr)
27769 : #define DONE return end_sequence ()
27770 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27771 : {
27772 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27773 : int reg3 = 0xF0;
27774 : int reg2 = 0xCC;
27775 : int reg1 = 0xAA;
27776 : int reg_mask, tmp1;
27777 :
27778 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27779 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27780 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27781 :
27782 : tmp1 = reg1 ^ reg2;
27783 : reg_mask = tmp1 ^ reg3;
27784 : reg_mask &= 0xFF;
27785 :
27786 : operands[1] = STRIP_UNARY (operands[1]);
27787 : operands[2] = STRIP_UNARY (operands[2]);
27788 : operands[3] = STRIP_UNARY (operands[3]);
27789 : operands[4] = GEN_INT (reg_mask);
27790 : if (!register_operand (operands[2], V16QImode))
27791 : operands[2] = force_reg (V16QImode, operands[2]);
27792 : if (!register_operand (operands[3], V16QImode))
27793 : operands[3] = force_reg (V16QImode, operands[3]);
27794 : }
27795 : #undef DONE
27796 : #undef FAIL
27797 : static const uint8_t expand_encoding[] = {
27798 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
27799 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27800 : 0x25
27801 : };
27802 : return complete_seq (expand_encoding, operands);
27803 : }
27804 :
27805 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27806 : extern rtx_insn *gen_split_3065 (rtx_insn *, rtx *);
27807 : rtx_insn *
27808 : gen_split_3065 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27809 : {
27810 : if (dump_file)
27811 : fprintf (dump_file, "Splitting with gen_split_3065 (sse.md:14313)\n");
27812 : start_sequence ();
27813 : #define FAIL return (end_sequence (), nullptr)
27814 : #define DONE return end_sequence ()
27815 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27816 : {
27817 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27818 : int reg3 = 0xF0;
27819 : int reg2 = 0xCC;
27820 : int reg1 = 0xAA;
27821 : int reg_mask, tmp1;
27822 :
27823 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27824 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27825 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27826 :
27827 : tmp1 = reg1 & reg2;
27828 : reg_mask = tmp1 & reg3;
27829 : reg_mask &= 0xFF;
27830 :
27831 : operands[1] = STRIP_UNARY (operands[1]);
27832 : operands[2] = STRIP_UNARY (operands[2]);
27833 : operands[3] = STRIP_UNARY (operands[3]);
27834 : operands[4] = GEN_INT (reg_mask);
27835 : if (!register_operand (operands[2], V16HImode))
27836 : operands[2] = force_reg (V16HImode, operands[2]);
27837 : if (!register_operand (operands[3], V16HImode))
27838 : operands[3] = force_reg (V16HImode, operands[3]);
27839 : }
27840 : #undef DONE
27841 : #undef FAIL
27842 : static const uint8_t expand_encoding[] = {
27843 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
27844 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27845 : 0x25
27846 : };
27847 : return complete_seq (expand_encoding, operands);
27848 : }
27849 :
27850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27851 : extern rtx_insn *gen_split_3075 (rtx_insn *, rtx *);
27852 : rtx_insn *
27853 : gen_split_3075 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27854 : {
27855 : if (dump_file)
27856 : fprintf (dump_file, "Splitting with gen_split_3075 (sse.md:14313)\n");
27857 : start_sequence ();
27858 : #define FAIL return (end_sequence (), nullptr)
27859 : #define DONE return end_sequence ()
27860 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27861 : {
27862 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27863 : int reg3 = 0xF0;
27864 : int reg2 = 0xCC;
27865 : int reg1 = 0xAA;
27866 : int reg_mask, tmp1;
27867 :
27868 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27869 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27870 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27871 :
27872 : tmp1 = reg1 & reg2;
27873 : reg_mask = tmp1 | reg3;
27874 : reg_mask &= 0xFF;
27875 :
27876 : operands[1] = STRIP_UNARY (operands[1]);
27877 : operands[2] = STRIP_UNARY (operands[2]);
27878 : operands[3] = STRIP_UNARY (operands[3]);
27879 : operands[4] = GEN_INT (reg_mask);
27880 : if (!register_operand (operands[2], V8HImode))
27881 : operands[2] = force_reg (V8HImode, operands[2]);
27882 : if (!register_operand (operands[3], V8HImode))
27883 : operands[3] = force_reg (V8HImode, operands[3]);
27884 : }
27885 : #undef DONE
27886 : #undef FAIL
27887 : static const uint8_t expand_encoding[] = {
27888 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
27889 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27890 : 0x25
27891 : };
27892 : return complete_seq (expand_encoding, operands);
27893 : }
27894 :
27895 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27896 : extern rtx_insn *gen_split_3085 (rtx_insn *, rtx *);
27897 : rtx_insn *
27898 : gen_split_3085 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27899 : {
27900 : if (dump_file)
27901 : fprintf (dump_file, "Splitting with gen_split_3085 (sse.md:14313)\n");
27902 : start_sequence ();
27903 : #define FAIL return (end_sequence (), nullptr)
27904 : #define DONE return end_sequence ()
27905 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27906 : {
27907 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27908 : int reg3 = 0xF0;
27909 : int reg2 = 0xCC;
27910 : int reg1 = 0xAA;
27911 : int reg_mask, tmp1;
27912 :
27913 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27914 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27915 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27916 :
27917 : tmp1 = reg1 & reg2;
27918 : reg_mask = tmp1 ^ reg3;
27919 : reg_mask &= 0xFF;
27920 :
27921 : operands[1] = STRIP_UNARY (operands[1]);
27922 : operands[2] = STRIP_UNARY (operands[2]);
27923 : operands[3] = STRIP_UNARY (operands[3]);
27924 : operands[4] = GEN_INT (reg_mask);
27925 : if (!register_operand (operands[2], V16SImode))
27926 : operands[2] = force_reg (V16SImode, operands[2]);
27927 : if (!register_operand (operands[3], V16SImode))
27928 : operands[3] = force_reg (V16SImode, operands[3]);
27929 : }
27930 : #undef DONE
27931 : #undef FAIL
27932 : static const uint8_t expand_encoding[] = {
27933 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
27934 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27935 : 0x25
27936 : };
27937 : return complete_seq (expand_encoding, operands);
27938 : }
27939 :
27940 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27941 : extern rtx_insn *gen_split_3095 (rtx_insn *, rtx *);
27942 : rtx_insn *
27943 : gen_split_3095 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27944 : {
27945 : if (dump_file)
27946 : fprintf (dump_file, "Splitting with gen_split_3095 (sse.md:14313)\n");
27947 : start_sequence ();
27948 : #define FAIL return (end_sequence (), nullptr)
27949 : #define DONE return end_sequence ()
27950 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27951 : {
27952 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27953 : int reg3 = 0xF0;
27954 : int reg2 = 0xCC;
27955 : int reg1 = 0xAA;
27956 : int reg_mask, tmp1;
27957 :
27958 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27959 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27960 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27961 :
27962 : tmp1 = reg1 | reg2;
27963 : reg_mask = tmp1 & reg3;
27964 : reg_mask &= 0xFF;
27965 :
27966 : operands[1] = STRIP_UNARY (operands[1]);
27967 : operands[2] = STRIP_UNARY (operands[2]);
27968 : operands[3] = STRIP_UNARY (operands[3]);
27969 : operands[4] = GEN_INT (reg_mask);
27970 : if (!register_operand (operands[2], V8SImode))
27971 : operands[2] = force_reg (V8SImode, operands[2]);
27972 : if (!register_operand (operands[3], V8SImode))
27973 : operands[3] = force_reg (V8SImode, operands[3]);
27974 : }
27975 : #undef DONE
27976 : #undef FAIL
27977 : static const uint8_t expand_encoding[] = {
27978 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
27979 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27980 : 0x25
27981 : };
27982 : return complete_seq (expand_encoding, operands);
27983 : }
27984 :
27985 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27986 : extern rtx_insn *gen_split_3105 (rtx_insn *, rtx *);
27987 : rtx_insn *
27988 : gen_split_3105 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27989 : {
27990 : if (dump_file)
27991 : fprintf (dump_file, "Splitting with gen_split_3105 (sse.md:14313)\n");
27992 : start_sequence ();
27993 : #define FAIL return (end_sequence (), nullptr)
27994 : #define DONE return end_sequence ()
27995 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27996 : {
27997 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27998 : int reg3 = 0xF0;
27999 : int reg2 = 0xCC;
28000 : int reg1 = 0xAA;
28001 : int reg_mask, tmp1;
28002 :
28003 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28004 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28005 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28006 :
28007 : tmp1 = reg1 | reg2;
28008 : reg_mask = tmp1 | reg3;
28009 : reg_mask &= 0xFF;
28010 :
28011 : operands[1] = STRIP_UNARY (operands[1]);
28012 : operands[2] = STRIP_UNARY (operands[2]);
28013 : operands[3] = STRIP_UNARY (operands[3]);
28014 : operands[4] = GEN_INT (reg_mask);
28015 : if (!register_operand (operands[2], V4SImode))
28016 : operands[2] = force_reg (V4SImode, operands[2]);
28017 : if (!register_operand (operands[3], V4SImode))
28018 : operands[3] = force_reg (V4SImode, operands[3]);
28019 : }
28020 : #undef DONE
28021 : #undef FAIL
28022 : static const uint8_t expand_encoding[] = {
28023 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
28024 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28025 : 0x25
28026 : };
28027 : return complete_seq (expand_encoding, operands);
28028 : }
28029 :
28030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28031 : extern rtx_insn *gen_split_3115 (rtx_insn *, rtx *);
28032 : rtx_insn *
28033 : gen_split_3115 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28034 : {
28035 : if (dump_file)
28036 : fprintf (dump_file, "Splitting with gen_split_3115 (sse.md:14313)\n");
28037 : start_sequence ();
28038 : #define FAIL return (end_sequence (), nullptr)
28039 : #define DONE return end_sequence ()
28040 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28041 : {
28042 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28043 : int reg3 = 0xF0;
28044 : int reg2 = 0xCC;
28045 : int reg1 = 0xAA;
28046 : int reg_mask, tmp1;
28047 :
28048 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28049 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28050 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28051 :
28052 : tmp1 = reg1 | reg2;
28053 : reg_mask = tmp1 ^ reg3;
28054 : reg_mask &= 0xFF;
28055 :
28056 : operands[1] = STRIP_UNARY (operands[1]);
28057 : operands[2] = STRIP_UNARY (operands[2]);
28058 : operands[3] = STRIP_UNARY (operands[3]);
28059 : operands[4] = GEN_INT (reg_mask);
28060 : if (!register_operand (operands[2], V8DImode))
28061 : operands[2] = force_reg (V8DImode, operands[2]);
28062 : if (!register_operand (operands[3], V8DImode))
28063 : operands[3] = force_reg (V8DImode, operands[3]);
28064 : }
28065 : #undef DONE
28066 : #undef FAIL
28067 : static const uint8_t expand_encoding[] = {
28068 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
28069 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28070 : 0x25
28071 : };
28072 : return complete_seq (expand_encoding, operands);
28073 : }
28074 :
28075 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28076 : extern rtx_insn *gen_split_3125 (rtx_insn *, rtx *);
28077 : rtx_insn *
28078 : gen_split_3125 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28079 : {
28080 : if (dump_file)
28081 : fprintf (dump_file, "Splitting with gen_split_3125 (sse.md:14313)\n");
28082 : start_sequence ();
28083 : #define FAIL return (end_sequence (), nullptr)
28084 : #define DONE return end_sequence ()
28085 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28086 : {
28087 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28088 : int reg3 = 0xF0;
28089 : int reg2 = 0xCC;
28090 : int reg1 = 0xAA;
28091 : int reg_mask, tmp1;
28092 :
28093 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28094 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28095 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28096 :
28097 : tmp1 = reg1 ^ reg2;
28098 : reg_mask = tmp1 & reg3;
28099 : reg_mask &= 0xFF;
28100 :
28101 : operands[1] = STRIP_UNARY (operands[1]);
28102 : operands[2] = STRIP_UNARY (operands[2]);
28103 : operands[3] = STRIP_UNARY (operands[3]);
28104 : operands[4] = GEN_INT (reg_mask);
28105 : if (!register_operand (operands[2], V4DImode))
28106 : operands[2] = force_reg (V4DImode, operands[2]);
28107 : if (!register_operand (operands[3], V4DImode))
28108 : operands[3] = force_reg (V4DImode, operands[3]);
28109 : }
28110 : #undef DONE
28111 : #undef FAIL
28112 : static const uint8_t expand_encoding[] = {
28113 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
28114 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28115 : 0x25
28116 : };
28117 : return complete_seq (expand_encoding, operands);
28118 : }
28119 :
28120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28121 : extern rtx_insn *gen_split_3135 (rtx_insn *, rtx *);
28122 : rtx_insn *
28123 : gen_split_3135 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28124 : {
28125 : if (dump_file)
28126 : fprintf (dump_file, "Splitting with gen_split_3135 (sse.md:14313)\n");
28127 : start_sequence ();
28128 : #define FAIL return (end_sequence (), nullptr)
28129 : #define DONE return end_sequence ()
28130 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28131 : {
28132 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28133 : int reg3 = 0xF0;
28134 : int reg2 = 0xCC;
28135 : int reg1 = 0xAA;
28136 : int reg_mask, tmp1;
28137 :
28138 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28139 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28140 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28141 :
28142 : tmp1 = reg1 ^ reg2;
28143 : reg_mask = tmp1 | reg3;
28144 : reg_mask &= 0xFF;
28145 :
28146 : operands[1] = STRIP_UNARY (operands[1]);
28147 : operands[2] = STRIP_UNARY (operands[2]);
28148 : operands[3] = STRIP_UNARY (operands[3]);
28149 : operands[4] = GEN_INT (reg_mask);
28150 : if (!register_operand (operands[2], V2DImode))
28151 : operands[2] = force_reg (V2DImode, operands[2]);
28152 : if (!register_operand (operands[3], V2DImode))
28153 : operands[3] = force_reg (V2DImode, operands[3]);
28154 : }
28155 : #undef DONE
28156 : #undef FAIL
28157 : static const uint8_t expand_encoding[] = {
28158 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
28159 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28160 : 0x25
28161 : };
28162 : return complete_seq (expand_encoding, operands);
28163 : }
28164 :
28165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28166 : extern rtx_insn *gen_split_3145 (rtx_insn *, rtx *);
28167 : rtx_insn *
28168 : gen_split_3145 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28169 : {
28170 : if (dump_file)
28171 : fprintf (dump_file, "Splitting with gen_split_3145 (sse.md:14313)\n");
28172 : start_sequence ();
28173 : #define FAIL return (end_sequence (), nullptr)
28174 : #define DONE return end_sequence ()
28175 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28176 : {
28177 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28178 : int reg3 = 0xF0;
28179 : int reg2 = 0xCC;
28180 : int reg1 = 0xAA;
28181 : int reg_mask, tmp1;
28182 :
28183 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28184 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28185 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28186 :
28187 : tmp1 = reg1 ^ reg2;
28188 : reg_mask = tmp1 ^ reg3;
28189 : reg_mask &= 0xFF;
28190 :
28191 : operands[1] = STRIP_UNARY (operands[1]);
28192 : operands[2] = STRIP_UNARY (operands[2]);
28193 : operands[3] = STRIP_UNARY (operands[3]);
28194 : operands[4] = GEN_INT (reg_mask);
28195 : if (!register_operand (operands[2], V32HFmode))
28196 : operands[2] = force_reg (V32HFmode, operands[2]);
28197 : if (!register_operand (operands[3], V32HFmode))
28198 : operands[3] = force_reg (V32HFmode, operands[3]);
28199 : }
28200 : #undef DONE
28201 : #undef FAIL
28202 : static const uint8_t expand_encoding[] = {
28203 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
28204 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28205 : 0x25
28206 : };
28207 : return complete_seq (expand_encoding, operands);
28208 : }
28209 :
28210 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28211 : extern rtx_insn *gen_split_3155 (rtx_insn *, rtx *);
28212 : rtx_insn *
28213 : gen_split_3155 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28214 : {
28215 : if (dump_file)
28216 : fprintf (dump_file, "Splitting with gen_split_3155 (sse.md:14313)\n");
28217 : start_sequence ();
28218 : #define FAIL return (end_sequence (), nullptr)
28219 : #define DONE return end_sequence ()
28220 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28221 : {
28222 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28223 : int reg3 = 0xF0;
28224 : int reg2 = 0xCC;
28225 : int reg1 = 0xAA;
28226 : int reg_mask, tmp1;
28227 :
28228 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28229 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28230 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28231 :
28232 : tmp1 = reg1 & reg2;
28233 : reg_mask = tmp1 & reg3;
28234 : reg_mask &= 0xFF;
28235 :
28236 : operands[1] = STRIP_UNARY (operands[1]);
28237 : operands[2] = STRIP_UNARY (operands[2]);
28238 : operands[3] = STRIP_UNARY (operands[3]);
28239 : operands[4] = GEN_INT (reg_mask);
28240 : if (!register_operand (operands[2], V8HFmode))
28241 : operands[2] = force_reg (V8HFmode, operands[2]);
28242 : if (!register_operand (operands[3], V8HFmode))
28243 : operands[3] = force_reg (V8HFmode, operands[3]);
28244 : }
28245 : #undef DONE
28246 : #undef FAIL
28247 : static const uint8_t expand_encoding[] = {
28248 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
28249 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28250 : 0x25
28251 : };
28252 : return complete_seq (expand_encoding, operands);
28253 : }
28254 :
28255 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28256 : extern rtx_insn *gen_split_3165 (rtx_insn *, rtx *);
28257 : rtx_insn *
28258 : gen_split_3165 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28259 : {
28260 : if (dump_file)
28261 : fprintf (dump_file, "Splitting with gen_split_3165 (sse.md:14313)\n");
28262 : start_sequence ();
28263 : #define FAIL return (end_sequence (), nullptr)
28264 : #define DONE return end_sequence ()
28265 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28266 : {
28267 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28268 : int reg3 = 0xF0;
28269 : int reg2 = 0xCC;
28270 : int reg1 = 0xAA;
28271 : int reg_mask, tmp1;
28272 :
28273 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28274 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28275 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28276 :
28277 : tmp1 = reg1 & reg2;
28278 : reg_mask = tmp1 | reg3;
28279 : reg_mask &= 0xFF;
28280 :
28281 : operands[1] = STRIP_UNARY (operands[1]);
28282 : operands[2] = STRIP_UNARY (operands[2]);
28283 : operands[3] = STRIP_UNARY (operands[3]);
28284 : operands[4] = GEN_INT (reg_mask);
28285 : if (!register_operand (operands[2], V32BFmode))
28286 : operands[2] = force_reg (V32BFmode, operands[2]);
28287 : if (!register_operand (operands[3], V32BFmode))
28288 : operands[3] = force_reg (V32BFmode, operands[3]);
28289 : }
28290 : #undef DONE
28291 : #undef FAIL
28292 : static const uint8_t expand_encoding[] = {
28293 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
28294 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28295 : 0x25
28296 : };
28297 : return complete_seq (expand_encoding, operands);
28298 : }
28299 :
28300 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28301 : extern rtx_insn *gen_split_3175 (rtx_insn *, rtx *);
28302 : rtx_insn *
28303 : gen_split_3175 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28304 : {
28305 : if (dump_file)
28306 : fprintf (dump_file, "Splitting with gen_split_3175 (sse.md:14313)\n");
28307 : start_sequence ();
28308 : #define FAIL return (end_sequence (), nullptr)
28309 : #define DONE return end_sequence ()
28310 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28311 : {
28312 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28313 : int reg3 = 0xF0;
28314 : int reg2 = 0xCC;
28315 : int reg1 = 0xAA;
28316 : int reg_mask, tmp1;
28317 :
28318 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28319 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28320 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28321 :
28322 : tmp1 = reg1 & reg2;
28323 : reg_mask = tmp1 ^ reg3;
28324 : reg_mask &= 0xFF;
28325 :
28326 : operands[1] = STRIP_UNARY (operands[1]);
28327 : operands[2] = STRIP_UNARY (operands[2]);
28328 : operands[3] = STRIP_UNARY (operands[3]);
28329 : operands[4] = GEN_INT (reg_mask);
28330 : if (!register_operand (operands[2], V16BFmode))
28331 : operands[2] = force_reg (V16BFmode, operands[2]);
28332 : if (!register_operand (operands[3], V16BFmode))
28333 : operands[3] = force_reg (V16BFmode, operands[3]);
28334 : }
28335 : #undef DONE
28336 : #undef FAIL
28337 : static const uint8_t expand_encoding[] = {
28338 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
28339 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28340 : 0x25
28341 : };
28342 : return complete_seq (expand_encoding, operands);
28343 : }
28344 :
28345 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28346 : extern rtx_insn *gen_split_3185 (rtx_insn *, rtx *);
28347 : rtx_insn *
28348 : gen_split_3185 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28349 : {
28350 : if (dump_file)
28351 : fprintf (dump_file, "Splitting with gen_split_3185 (sse.md:14313)\n");
28352 : start_sequence ();
28353 : #define FAIL return (end_sequence (), nullptr)
28354 : #define DONE return end_sequence ()
28355 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28356 : {
28357 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28358 : int reg3 = 0xF0;
28359 : int reg2 = 0xCC;
28360 : int reg1 = 0xAA;
28361 : int reg_mask, tmp1;
28362 :
28363 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28364 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28365 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28366 :
28367 : tmp1 = reg1 | reg2;
28368 : reg_mask = tmp1 & reg3;
28369 : reg_mask &= 0xFF;
28370 :
28371 : operands[1] = STRIP_UNARY (operands[1]);
28372 : operands[2] = STRIP_UNARY (operands[2]);
28373 : operands[3] = STRIP_UNARY (operands[3]);
28374 : operands[4] = GEN_INT (reg_mask);
28375 : if (!register_operand (operands[2], V8BFmode))
28376 : operands[2] = force_reg (V8BFmode, operands[2]);
28377 : if (!register_operand (operands[3], V8BFmode))
28378 : operands[3] = force_reg (V8BFmode, operands[3]);
28379 : }
28380 : #undef DONE
28381 : #undef FAIL
28382 : static const uint8_t expand_encoding[] = {
28383 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
28384 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28385 : 0x25
28386 : };
28387 : return complete_seq (expand_encoding, operands);
28388 : }
28389 :
28390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28391 : extern rtx_insn *gen_split_3195 (rtx_insn *, rtx *);
28392 : rtx_insn *
28393 : gen_split_3195 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28394 : {
28395 : if (dump_file)
28396 : fprintf (dump_file, "Splitting with gen_split_3195 (sse.md:14313)\n");
28397 : start_sequence ();
28398 : #define FAIL return (end_sequence (), nullptr)
28399 : #define DONE return end_sequence ()
28400 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28401 : {
28402 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28403 : int reg3 = 0xF0;
28404 : int reg2 = 0xCC;
28405 : int reg1 = 0xAA;
28406 : int reg_mask, tmp1;
28407 :
28408 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28409 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28410 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28411 :
28412 : tmp1 = reg1 | reg2;
28413 : reg_mask = tmp1 | reg3;
28414 : reg_mask &= 0xFF;
28415 :
28416 : operands[1] = STRIP_UNARY (operands[1]);
28417 : operands[2] = STRIP_UNARY (operands[2]);
28418 : operands[3] = STRIP_UNARY (operands[3]);
28419 : operands[4] = GEN_INT (reg_mask);
28420 : if (!register_operand (operands[2], V16SFmode))
28421 : operands[2] = force_reg (V16SFmode, operands[2]);
28422 : if (!register_operand (operands[3], V16SFmode))
28423 : operands[3] = force_reg (V16SFmode, operands[3]);
28424 : }
28425 : #undef DONE
28426 : #undef FAIL
28427 : static const uint8_t expand_encoding[] = {
28428 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
28429 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28430 : 0x25
28431 : };
28432 : return complete_seq (expand_encoding, operands);
28433 : }
28434 :
28435 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28436 : extern rtx_insn *gen_split_3205 (rtx_insn *, rtx *);
28437 : rtx_insn *
28438 : gen_split_3205 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28439 : {
28440 : if (dump_file)
28441 : fprintf (dump_file, "Splitting with gen_split_3205 (sse.md:14313)\n");
28442 : start_sequence ();
28443 : #define FAIL return (end_sequence (), nullptr)
28444 : #define DONE return end_sequence ()
28445 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28446 : {
28447 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28448 : int reg3 = 0xF0;
28449 : int reg2 = 0xCC;
28450 : int reg1 = 0xAA;
28451 : int reg_mask, tmp1;
28452 :
28453 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28454 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28455 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28456 :
28457 : tmp1 = reg1 | reg2;
28458 : reg_mask = tmp1 ^ reg3;
28459 : reg_mask &= 0xFF;
28460 :
28461 : operands[1] = STRIP_UNARY (operands[1]);
28462 : operands[2] = STRIP_UNARY (operands[2]);
28463 : operands[3] = STRIP_UNARY (operands[3]);
28464 : operands[4] = GEN_INT (reg_mask);
28465 : if (!register_operand (operands[2], V8SFmode))
28466 : operands[2] = force_reg (V8SFmode, operands[2]);
28467 : if (!register_operand (operands[3], V8SFmode))
28468 : operands[3] = force_reg (V8SFmode, operands[3]);
28469 : }
28470 : #undef DONE
28471 : #undef FAIL
28472 : static const uint8_t expand_encoding[] = {
28473 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
28474 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28475 : 0x25
28476 : };
28477 : return complete_seq (expand_encoding, operands);
28478 : }
28479 :
28480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28481 : extern rtx_insn *gen_split_3215 (rtx_insn *, rtx *);
28482 : rtx_insn *
28483 : gen_split_3215 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28484 : {
28485 : if (dump_file)
28486 : fprintf (dump_file, "Splitting with gen_split_3215 (sse.md:14313)\n");
28487 : start_sequence ();
28488 : #define FAIL return (end_sequence (), nullptr)
28489 : #define DONE return end_sequence ()
28490 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28491 : {
28492 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28493 : int reg3 = 0xF0;
28494 : int reg2 = 0xCC;
28495 : int reg1 = 0xAA;
28496 : int reg_mask, tmp1;
28497 :
28498 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28499 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28500 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28501 :
28502 : tmp1 = reg1 ^ reg2;
28503 : reg_mask = tmp1 & reg3;
28504 : reg_mask &= 0xFF;
28505 :
28506 : operands[1] = STRIP_UNARY (operands[1]);
28507 : operands[2] = STRIP_UNARY (operands[2]);
28508 : operands[3] = STRIP_UNARY (operands[3]);
28509 : operands[4] = GEN_INT (reg_mask);
28510 : if (!register_operand (operands[2], V4SFmode))
28511 : operands[2] = force_reg (V4SFmode, operands[2]);
28512 : if (!register_operand (operands[3], V4SFmode))
28513 : operands[3] = force_reg (V4SFmode, operands[3]);
28514 : }
28515 : #undef DONE
28516 : #undef FAIL
28517 : static const uint8_t expand_encoding[] = {
28518 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
28519 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28520 : 0x25
28521 : };
28522 : return complete_seq (expand_encoding, operands);
28523 : }
28524 :
28525 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28526 : extern rtx_insn *gen_split_3225 (rtx_insn *, rtx *);
28527 : rtx_insn *
28528 : gen_split_3225 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28529 : {
28530 : if (dump_file)
28531 : fprintf (dump_file, "Splitting with gen_split_3225 (sse.md:14313)\n");
28532 : start_sequence ();
28533 : #define FAIL return (end_sequence (), nullptr)
28534 : #define DONE return end_sequence ()
28535 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28536 : {
28537 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28538 : int reg3 = 0xF0;
28539 : int reg2 = 0xCC;
28540 : int reg1 = 0xAA;
28541 : int reg_mask, tmp1;
28542 :
28543 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28544 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28545 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28546 :
28547 : tmp1 = reg1 ^ reg2;
28548 : reg_mask = tmp1 | reg3;
28549 : reg_mask &= 0xFF;
28550 :
28551 : operands[1] = STRIP_UNARY (operands[1]);
28552 : operands[2] = STRIP_UNARY (operands[2]);
28553 : operands[3] = STRIP_UNARY (operands[3]);
28554 : operands[4] = GEN_INT (reg_mask);
28555 : if (!register_operand (operands[2], V8DFmode))
28556 : operands[2] = force_reg (V8DFmode, operands[2]);
28557 : if (!register_operand (operands[3], V8DFmode))
28558 : operands[3] = force_reg (V8DFmode, operands[3]);
28559 : }
28560 : #undef DONE
28561 : #undef FAIL
28562 : static const uint8_t expand_encoding[] = {
28563 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
28564 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28565 : 0x25
28566 : };
28567 : return complete_seq (expand_encoding, operands);
28568 : }
28569 :
28570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28571 : extern rtx_insn *gen_split_3235 (rtx_insn *, rtx *);
28572 : rtx_insn *
28573 : gen_split_3235 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28574 : {
28575 : if (dump_file)
28576 : fprintf (dump_file, "Splitting with gen_split_3235 (sse.md:14313)\n");
28577 : start_sequence ();
28578 : #define FAIL return (end_sequence (), nullptr)
28579 : #define DONE return end_sequence ()
28580 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28581 : {
28582 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28583 : int reg3 = 0xF0;
28584 : int reg2 = 0xCC;
28585 : int reg1 = 0xAA;
28586 : int reg_mask, tmp1;
28587 :
28588 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28589 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28590 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28591 :
28592 : tmp1 = reg1 ^ reg2;
28593 : reg_mask = tmp1 ^ reg3;
28594 : reg_mask &= 0xFF;
28595 :
28596 : operands[1] = STRIP_UNARY (operands[1]);
28597 : operands[2] = STRIP_UNARY (operands[2]);
28598 : operands[3] = STRIP_UNARY (operands[3]);
28599 : operands[4] = GEN_INT (reg_mask);
28600 : if (!register_operand (operands[2], V4DFmode))
28601 : operands[2] = force_reg (V4DFmode, operands[2]);
28602 : if (!register_operand (operands[3], V4DFmode))
28603 : operands[3] = force_reg (V4DFmode, operands[3]);
28604 : }
28605 : #undef DONE
28606 : #undef FAIL
28607 : static const uint8_t expand_encoding[] = {
28608 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
28609 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28610 : 0x25
28611 : };
28612 : return complete_seq (expand_encoding, operands);
28613 : }
28614 :
28615 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14358 */
28616 : rtx
28617 : gen_avx512f_vternlogv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28618 : {
28619 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28620 : start_sequence ();
28621 : {
28622 : #define FAIL return (end_sequence (), nullptr)
28623 : #define DONE return end_sequence ()
28624 : #line 14370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28625 : {
28626 : unsigned HOST_WIDE_INT mode_mask = GET_MODE_MASK (HImode);
28627 : if (CONST_INT_P (operands[5])
28628 : && (UINTVAL (operands[5]) & mode_mask) == mode_mask)
28629 : {
28630 : ix86_expand_ternlog (V16SImode, operands[1], operands[2],
28631 : operands[3], INTVAL (operands[4]),
28632 : operands[0]);
28633 : DONE;
28634 : }
28635 : if (!register_operand (operands[5], HImode))
28636 : operands[5] = force_reg (HImode, operands[5]);
28637 : }
28638 : #undef DONE
28639 : #undef FAIL
28640 : }
28641 : static const uint8_t expand_encoding[] = {
28642 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a,
28643 : 0x5b, 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
28644 : 0x01, 0x04, 0x81, 0x25, 0x01, 0x01, 0x01, 0x05
28645 : };
28646 : return complete_seq (expand_encoding, operands);
28647 : }
28648 :
28649 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14497 */
28650 : rtx
28651 : gen_avx512f_fixupimmv16sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
28652 : {
28653 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
28654 : start_sequence ();
28655 : {
28656 : #define FAIL return (end_sequence (), nullptr)
28657 : #define DONE return end_sequence ()
28658 : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28659 : {
28660 : emit_insn (gen_avx512f_fixupimmv16sf_maskz_1_round (
28661 : operands[0], operands[1], operands[2], operands[3],
28662 : operands[4], CONST0_RTX (V16SFmode), operands[5]
28663 : , operands[6]));
28664 : DONE;
28665 : }
28666 : #undef DONE
28667 : #undef FAIL
28668 : }
28669 : static const uint8_t expand_encoding[] = {
28670 : 0x07, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28671 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x1a, 0x00, 0x01,
28672 : 0x01, 0x06, 0x81, 0x33
28673 : };
28674 : return complete_seq (expand_encoding, operands);
28675 : }
28676 :
28677 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14542 */
28678 : rtx
28679 : gen_avx512f_sfixupimmv4sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28680 : {
28681 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28682 : start_sequence ();
28683 : {
28684 : #define FAIL return (end_sequence (), nullptr)
28685 : #define DONE return end_sequence ()
28686 : #line 14550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28687 : {
28688 : emit_insn (gen_avx512f_sfixupimmv4sf_maskz_1 (
28689 : operands[0], operands[1], operands[2], operands[3],
28690 : operands[4], CONST0_RTX (V4SFmode), operands[5]
28691 : ));
28692 : DONE;
28693 : }
28694 : #undef DONE
28695 : #undef FAIL
28696 : }
28697 : static const uint8_t expand_encoding[] = {
28698 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28699 : 0x03, 0x01, 0x04, 0x01, 0x05
28700 : };
28701 : return complete_seq (expand_encoding, operands);
28702 : }
28703 :
28704 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14987 */
28705 : extern rtx_insn *gen_split_3245 (rtx_insn *, rtx *);
28706 : rtx_insn *
28707 : gen_split_3245 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28708 : {
28709 : if (dump_file)
28710 : fprintf (dump_file, "Splitting with gen_split_3245 (sse.md:14987)\n");
28711 : start_sequence ();
28712 : #define FAIL return (end_sequence (), nullptr)
28713 : #define DONE return end_sequence ()
28714 : #line 14994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28715 : operands[1] = adjust_address (operands[1], DFmode, 8);
28716 : #undef DONE
28717 : #undef FAIL
28718 : static const uint8_t expand_encoding[] = {
28719 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
28720 : };
28721 : return complete_seq (expand_encoding, operands);
28722 : }
28723 :
28724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15353 */
28725 : rtx
28726 : gen_truncv8div8hi2 (const rtx operand0, const rtx operand1)
28727 : {
28728 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28729 : static const uint8_t expand_encoding[] = {
28730 : 0x1f, 0x01, 0x00, 0x70, 0x50, 0x01, 0x01
28731 : };
28732 : return expand_rtx (expand_encoding, operands);
28733 : }
28734 :
28735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15517 */
28736 : rtx
28737 : gen_avx512f_truncatev16siv16qi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28738 : {
28739 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28740 : static const uint8_t expand_encoding[] = {
28741 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x70, 0x4f,
28742 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28743 : };
28744 : return expand_rtx (expand_encoding, operands);
28745 : }
28746 :
28747 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15517 */
28748 : rtx
28749 : gen_avx512f_ss_truncatev8div8si2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28750 : {
28751 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28752 : static const uint8_t expand_encoding[] = {
28753 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x17,
28754 : 0x56, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28755 : };
28756 : return expand_rtx (expand_encoding, operands);
28757 : }
28758 :
28759 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15589 */
28760 : rtx
28761 : gen_avx512bw_us_truncatev32hiv32qi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28762 : {
28763 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28764 : static const uint8_t expand_encoding[] = {
28765 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81, 0x18,
28766 : 0x54, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28767 : };
28768 : return expand_rtx (expand_encoding, operands);
28769 : }
28770 :
28771 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15689 */
28772 : rtx
28773 : gen_avx512vl_ss_truncatev8siv8hi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28774 : {
28775 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28776 : static const uint8_t expand_encoding[] = {
28777 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x17,
28778 : 0x50, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28779 : };
28780 : return expand_rtx (expand_encoding, operands);
28781 : }
28782 :
28783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15710 */
28784 : rtx
28785 : gen_truncv4siv4qi2 (const rtx operand0, const rtx operand1)
28786 : {
28787 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28788 : start_sequence ();
28789 : {
28790 : #define FAIL return (end_sequence (), nullptr)
28791 : #define DONE return end_sequence ()
28792 : #line 15715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28793 : {
28794 : if (TARGET_AVX512VL
28795 : && (V4SImode != V8HImode || TARGET_AVX512BW))
28796 : {
28797 : rtx op0 = gen_reg_rtx (V16QImode);
28798 :
28799 : emit_insn (gen_avx512vl_truncatev4siv4qi2
28800 : (op0, operands[1], CONST0_RTX (V12QImode)));
28801 :
28802 : emit_move_insn (operands[0],
28803 : lowpart_subreg (V4QImode, op0, V16QImode));
28804 : }
28805 : else
28806 : {
28807 : ix86_expand_trunc_with_avx2_noavx512f (operands[0],
28808 : operands[1],
28809 : V16QImode);
28810 : }
28811 : DONE;
28812 : }
28813 : #undef DONE
28814 : #undef FAIL
28815 : }
28816 : static const uint8_t expand_encoding[] = {
28817 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x45, 0x01, 0x01
28818 : };
28819 : return complete_seq (expand_encoding, operands);
28820 : }
28821 :
28822 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15877 */
28823 : extern rtx_insn *gen_split_3265 (rtx_insn *, rtx *);
28824 : rtx_insn *
28825 : gen_split_3265 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28826 : {
28827 : if (dump_file)
28828 : fprintf (dump_file, "Splitting with gen_split_3265 (sse.md:15877)\n");
28829 : start_sequence ();
28830 : #define FAIL return (end_sequence (), nullptr)
28831 : #define DONE return end_sequence ()
28832 : #line 15887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28833 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28834 : #undef DONE
28835 : #undef FAIL
28836 : static const uint8_t expand_encoding[] = {
28837 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x45, 0x01,
28838 : 0x01
28839 : };
28840 : return complete_seq (expand_encoding, operands);
28841 : }
28842 :
28843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15947 */
28844 : rtx
28845 : gen_avx512vl_truncatev4div4qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28846 : {
28847 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28848 : start_sequence ();
28849 : {
28850 : #define FAIL return (end_sequence (), nullptr)
28851 : #define DONE return end_sequence ()
28852 : #line 15953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28853 : {
28854 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28855 : emit_insn (gen_avx512vl_truncatev4div4qi2_mask_store_1 (operands[0],
28856 : operands[1],
28857 : operands[2]));
28858 : DONE;
28859 : }
28860 : #undef DONE
28861 : #undef FAIL
28862 : }
28863 : static const uint8_t expand_encoding[] = {
28864 : 0x03, 0x01, 0x00, 0x70, 0x45, 0x01, 0x01, 0x01,
28865 : 0x02
28866 : };
28867 : return complete_seq (expand_encoding, operands);
28868 : }
28869 :
28870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16069 */
28871 : rtx
28872 : gen_truncv4div4hi2 (const rtx operand0, const rtx operand1)
28873 : {
28874 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28875 : start_sequence ();
28876 : {
28877 : #define FAIL return (end_sequence (), nullptr)
28878 : #define DONE return end_sequence ()
28879 : #line 16074 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28880 : {
28881 : if (TARGET_AVX512VL)
28882 : {
28883 : rtx op0 = gen_reg_rtx (V8HImode);
28884 :
28885 : emit_insn (gen_avx512vl_truncatev4div4hi2
28886 : (op0, operands[1], CONST0_RTX (V4HImode)));
28887 :
28888 : emit_move_insn (operands[0],
28889 : lowpart_subreg (V4HImode, op0, V8HImode));
28890 : DONE;
28891 : }
28892 : else
28893 : ix86_expand_trunc_with_avx2_noavx512f (operands[0], operands[1], V16HImode);
28894 : DONE;
28895 : }
28896 : #undef DONE
28897 : #undef FAIL
28898 : }
28899 : static const uint8_t expand_encoding[] = {
28900 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x49, 0x01, 0x01
28901 : };
28902 : return complete_seq (expand_encoding, operands);
28903 : }
28904 :
28905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16203 */
28906 : rtx
28907 : gen_avx512vl_ss_truncatev4siv4hi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28908 : {
28909 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28910 : start_sequence ();
28911 : {
28912 : #define FAIL return (end_sequence (), nullptr)
28913 : #define DONE return end_sequence ()
28914 : #line 16209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28915 : {
28916 : operands[0] = adjust_address_nv (operands[0], V4HImode, 0);
28917 : emit_insn (gen_avx512vl_ss_truncatev4siv4hi2_mask_store_1 (operands[0],
28918 : operands[1],
28919 : operands[2]));
28920 : DONE;
28921 : }
28922 : #undef DONE
28923 : #undef FAIL
28924 : }
28925 : static const uint8_t expand_encoding[] = {
28926 : 0x03, 0x01, 0x00, 0x81, 0x17, 0x49, 0x01, 0x01,
28927 : 0x01, 0x02
28928 : };
28929 : return complete_seq (expand_encoding, operands);
28930 : }
28931 :
28932 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16290 */
28933 : rtx
28934 : gen_avx512vl_truncatev2div2hi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28935 : {
28936 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28937 : start_sequence ();
28938 : {
28939 : #define FAIL return (end_sequence (), nullptr)
28940 : #define DONE return end_sequence ()
28941 : #line 16296 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28942 : {
28943 : operands[0] = adjust_address_nv (operands[0], V2HImode, 0);
28944 : emit_insn (gen_avx512vl_truncatev2div2hi2_mask_store_1 (operands[0],
28945 : operands[1],
28946 : operands[2]));
28947 : DONE;
28948 : }
28949 : #undef DONE
28950 : #undef FAIL
28951 : }
28952 : static const uint8_t expand_encoding[] = {
28953 : 0x03, 0x01, 0x00, 0x70, 0x46, 0x01, 0x01, 0x01,
28954 : 0x02
28955 : };
28956 : return complete_seq (expand_encoding, operands);
28957 : }
28958 :
28959 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16450 */
28960 : rtx
28961 : gen_truncv8div8qi2 (const rtx operand0, const rtx operand1)
28962 : {
28963 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28964 : start_sequence ();
28965 : {
28966 : #define FAIL return (end_sequence (), nullptr)
28967 : #define DONE return end_sequence ()
28968 : #line 16455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28969 : {
28970 : rtx op0 = gen_reg_rtx (V16QImode);
28971 :
28972 : emit_insn (gen_avx512f_truncatev8div16qi2 (op0, operands[1]));
28973 :
28974 : emit_move_insn (operands[0],
28975 : lowpart_subreg (V8QImode, op0, V16QImode));
28976 : DONE;
28977 : }
28978 : #undef DONE
28979 : #undef FAIL
28980 : }
28981 : static const uint8_t expand_encoding[] = {
28982 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x48, 0x01, 0x01
28983 : };
28984 : return complete_seq (expand_encoding, operands);
28985 : }
28986 :
28987 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16581 */
28988 : rtx
28989 : gen_negv16hi2 (const rtx operand0, const rtx operand1)
28990 : {
28991 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
28992 : start_sequence ();
28993 : {
28994 : #define FAIL return (end_sequence (), nullptr)
28995 : #define DONE return end_sequence ()
28996 : #line 16587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28997 : operands[2] = force_reg (V16HImode, CONST0_RTX (V16HImode));
28998 : #undef DONE
28999 : #undef FAIL
29000 : }
29001 : static const uint8_t expand_encoding[] = {
29002 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x55, 0x01, 0x02,
29003 : 0x01, 0x01
29004 : };
29005 : return complete_seq (expand_encoding, operands);
29006 : }
29007 :
29008 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29009 : rtx
29010 : gen_addv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29011 : {
29012 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29013 : start_sequence ();
29014 : {
29015 : #define FAIL return (end_sequence (), nullptr)
29016 : #define DONE return end_sequence ()
29017 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29018 : ix86_fixup_binary_operands_no_copy (PLUS, V32QImode, operands);
29019 : #undef DONE
29020 : #undef FAIL
29021 : }
29022 : static const uint8_t expand_encoding[] = {
29023 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x54, 0x01, 0x01,
29024 : 0x01, 0x02
29025 : };
29026 : return complete_seq (expand_encoding, operands);
29027 : }
29028 :
29029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29030 : rtx
29031 : gen_addv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29032 : {
29033 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29034 : start_sequence ();
29035 : {
29036 : #define FAIL return (end_sequence (), nullptr)
29037 : #define DONE return end_sequence ()
29038 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29039 : ix86_fixup_binary_operands_no_copy (PLUS, V16SImode, operands);
29040 : #undef DONE
29041 : #undef FAIL
29042 : }
29043 : static const uint8_t expand_encoding[] = {
29044 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x5b, 0x01, 0x01,
29045 : 0x01, 0x02
29046 : };
29047 : return complete_seq (expand_encoding, operands);
29048 : }
29049 :
29050 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29051 : rtx
29052 : gen_addv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29053 : {
29054 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29055 : start_sequence ();
29056 : {
29057 : #define FAIL return (end_sequence (), nullptr)
29058 : #define DONE return end_sequence ()
29059 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29060 : ix86_fixup_binary_operands_no_copy (PLUS, V2DImode, operands);
29061 : #undef DONE
29062 : #undef FAIL
29063 : }
29064 : static const uint8_t expand_encoding[] = {
29065 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x52, 0x01, 0x01,
29066 : 0x01, 0x02
29067 : };
29068 : return complete_seq (expand_encoding, operands);
29069 : }
29070 :
29071 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29072 : rtx
29073 : gen_cond_addv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29074 : {
29075 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29076 : start_sequence ();
29077 : {
29078 : #define FAIL _Pragma ("GCC error \"cond_addv16hi cannot FAIL\"") (void)0
29079 : #define DONE return end_sequence ()
29080 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29081 : {
29082 : emit_insn (gen_addv16hi3_mask (operands[0],
29083 : operands[2],
29084 : operands[3],
29085 : operands[4],
29086 : operands[1]));
29087 : DONE;
29088 : }
29089 : #undef DONE
29090 : #undef FAIL
29091 : }
29092 : static const uint8_t expand_encoding[] = {
29093 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x3b,
29094 : 0x55, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29095 : 0x01
29096 : };
29097 : return complete_seq (expand_encoding, operands);
29098 : }
29099 :
29100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29101 : rtx
29102 : gen_cond_addv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29103 : {
29104 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29105 : start_sequence ();
29106 : {
29107 : #define FAIL _Pragma ("GCC error \"cond_addv8di cannot FAIL\"") (void)0
29108 : #define DONE return end_sequence ()
29109 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29110 : {
29111 : emit_insn (gen_addv8di3_mask (operands[0],
29112 : operands[2],
29113 : operands[3],
29114 : operands[4],
29115 : operands[1]));
29116 : DONE;
29117 : }
29118 : #undef DONE
29119 : #undef FAIL
29120 : }
29121 : static const uint8_t expand_encoding[] = {
29122 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x3b,
29123 : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29124 : 0x01
29125 : };
29126 : return complete_seq (expand_encoding, operands);
29127 : }
29128 :
29129 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16615 */
29130 : rtx
29131 : gen_addv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29132 : {
29133 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29134 : start_sequence ();
29135 : {
29136 : #define FAIL return (end_sequence (), nullptr)
29137 : #define DONE return end_sequence ()
29138 : #line 16624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29139 : ix86_fixup_binary_operands_no_copy (PLUS, V4SImode, operands);
29140 : #undef DONE
29141 : #undef FAIL
29142 : }
29143 : static const uint8_t expand_encoding[] = {
29144 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x3b,
29145 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29146 : 0x04
29147 : };
29148 : return complete_seq (expand_encoding, operands);
29149 : }
29150 :
29151 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16626 */
29152 : rtx
29153 : gen_subv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29154 : {
29155 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29156 : start_sequence ();
29157 : {
29158 : #define FAIL return (end_sequence (), nullptr)
29159 : #define DONE return end_sequence ()
29160 : #line 16635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29161 : ix86_fixup_binary_operands_no_copy (MINUS, V64QImode, operands);
29162 : #undef DONE
29163 : #undef FAIL
29164 : }
29165 : static const uint8_t expand_encoding[] = {
29166 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x3c,
29167 : 0x59, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29168 : 0x04
29169 : };
29170 : return complete_seq (expand_encoding, operands);
29171 : }
29172 :
29173 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29174 : rtx
29175 : gen_ssaddv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29176 : {
29177 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29178 : start_sequence ();
29179 : {
29180 : #define FAIL return (end_sequence (), nullptr)
29181 : #define DONE return end_sequence ()
29182 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29183 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V64QImode, operands);
29184 : #undef DONE
29185 : #undef FAIL
29186 : }
29187 : static const uint8_t expand_encoding[] = {
29188 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x59, 0x01,
29189 : 0x01, 0x01, 0x02
29190 : };
29191 : return complete_seq (expand_encoding, operands);
29192 : }
29193 :
29194 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29195 : rtx
29196 : gen_ssaddv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29197 : {
29198 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29199 : start_sequence ();
29200 : {
29201 : #define FAIL return (end_sequence (), nullptr)
29202 : #define DONE return end_sequence ()
29203 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29204 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V32QImode, operands);
29205 : #undef DONE
29206 : #undef FAIL
29207 : }
29208 : static const uint8_t expand_encoding[] = {
29209 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81,
29210 : 0x0e, 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29211 : 0x01, 0x04
29212 : };
29213 : return complete_seq (expand_encoding, operands);
29214 : }
29215 :
29216 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29217 : rtx
29218 : gen_sssubv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29219 : {
29220 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29221 : start_sequence ();
29222 : {
29223 : #define FAIL return (end_sequence (), nullptr)
29224 : #define DONE return end_sequence ()
29225 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29226 : ix86_fixup_binary_operands_no_copy (SS_MINUS, V16QImode, operands);
29227 : #undef DONE
29228 : #undef FAIL
29229 : }
29230 : static const uint8_t expand_encoding[] = {
29231 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x10, 0x4f, 0x01,
29232 : 0x01, 0x01, 0x02
29233 : };
29234 : return complete_seq (expand_encoding, operands);
29235 : }
29236 :
29237 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29238 : rtx
29239 : gen_sssubv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29240 : {
29241 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29242 : start_sequence ();
29243 : {
29244 : #define FAIL return (end_sequence (), nullptr)
29245 : #define DONE return end_sequence ()
29246 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29247 : ix86_fixup_binary_operands_no_copy (SS_MINUS, V32HImode, operands);
29248 : #undef DONE
29249 : #undef FAIL
29250 : }
29251 : static const uint8_t expand_encoding[] = {
29252 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x10, 0x5a, 0x01,
29253 : 0x01, 0x01, 0x02
29254 : };
29255 : return complete_seq (expand_encoding, operands);
29256 : }
29257 :
29258 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29259 : rtx
29260 : gen_sssubv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29261 : {
29262 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29263 : start_sequence ();
29264 : {
29265 : #define FAIL return (end_sequence (), nullptr)
29266 : #define DONE return end_sequence ()
29267 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29268 : ix86_fixup_binary_operands_no_copy (SS_MINUS, V16HImode, operands);
29269 : #undef DONE
29270 : #undef FAIL
29271 : }
29272 : static const uint8_t expand_encoding[] = {
29273 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x10, 0x55, 0x01,
29274 : 0x01, 0x01, 0x02
29275 : };
29276 : return complete_seq (expand_encoding, operands);
29277 : }
29278 :
29279 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29280 : rtx
29281 : gen_sssubv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29282 : {
29283 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29284 : start_sequence ();
29285 : {
29286 : #define FAIL return (end_sequence (), nullptr)
29287 : #define DONE return end_sequence ()
29288 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29289 : ix86_fixup_binary_operands_no_copy (SS_MINUS, V8HImode, operands);
29290 : #undef DONE
29291 : #undef FAIL
29292 : }
29293 : static const uint8_t expand_encoding[] = {
29294 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81,
29295 : 0x10, 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29296 : 0x01, 0x04
29297 : };
29298 : return complete_seq (expand_encoding, operands);
29299 : }
29300 :
29301 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16731 */
29302 : rtx
29303 : gen_cond_mulv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29304 : {
29305 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29306 : start_sequence ();
29307 : {
29308 : #define FAIL _Pragma ("GCC error \"cond_mulv16hi cannot FAIL\"") (void)0
29309 : #define DONE return end_sequence ()
29310 : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29311 : {
29312 : emit_insn (gen_mulv16hi3_mask (operands[0],
29313 : operands[2],
29314 : operands[3],
29315 : operands[4],
29316 : operands[1]));
29317 : DONE;
29318 : }
29319 : #undef DONE
29320 : #undef FAIL
29321 : }
29322 : static const uint8_t expand_encoding[] = {
29323 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x3e,
29324 : 0x55, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29325 : 0x01
29326 : };
29327 : return complete_seq (expand_encoding, operands);
29328 : }
29329 :
29330 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16771 */
29331 : rtx
29332 : gen_smulv16hi3_highpart (const rtx operand0, const rtx operand1, const rtx operand2)
29333 : {
29334 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29335 : start_sequence ();
29336 : {
29337 : #define FAIL return (end_sequence (), nullptr)
29338 : #define DONE return end_sequence ()
29339 : #line 16783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29340 : ix86_fixup_binary_operands_no_copy (MULT, V16HImode, operands);
29341 : #undef DONE
29342 : #undef FAIL
29343 : }
29344 : static const uint8_t expand_encoding[] = {
29345 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x55, 0x50, 0x5b,
29346 : 0x3e, 0x5b, 0x6e, 0x5b, 0x01, 0x01, 0x6e, 0x5b,
29347 : 0x01, 0x02, 0x27, 0x10
29348 : };
29349 : return complete_seq (expand_encoding, operands);
29350 : }
29351 :
29352 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16806 */
29353 : rtx
29354 : gen_vec_widen_umult_even_v16si (const rtx operand0, const rtx operand1, const rtx operand2)
29355 : {
29356 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29357 : start_sequence ();
29358 : {
29359 : #define FAIL return (end_sequence (), nullptr)
29360 : #define DONE return end_sequence ()
29361 : #line 16824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29362 : ix86_fixup_binary_operands_no_copy (MULT, V16SImode, operands);
29363 : #undef DONE
29364 : #undef FAIL
29365 : }
29366 : static const uint8_t expand_encoding[] = {
29367 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x5c, 0x6f, 0x5c,
29368 : 0x81, 0x0a, 0x56, 0x01, 0x01, 0x17, 0x00, 0x08,
29369 : 0x27, 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06,
29370 : 0x27, 0x08, 0x27, 0x0a, 0x27, 0x0c, 0x27, 0x0e,
29371 : 0x6f, 0x5c, 0x81, 0x0a, 0x56, 0x01, 0x02, 0x17,
29372 : 0x00, 0x08, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
29373 : 0x27, 0x06, 0x27, 0x08, 0x27, 0x0a, 0x27, 0x0c,
29374 : 0x27, 0x0e
29375 : };
29376 : return complete_seq (expand_encoding, operands);
29377 : }
29378 :
29379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17002 */
29380 : rtx
29381 : gen_sse4_1_mulv2siv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29382 : {
29383 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29384 : start_sequence ();
29385 : {
29386 : #define FAIL return (end_sequence (), nullptr)
29387 : #define DONE return end_sequence ()
29388 : #line 17014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29389 : ix86_fixup_binary_operands_no_copy (MULT, V4SImode, operands);
29390 : #undef DONE
29391 : #undef FAIL
29392 : }
29393 : static const uint8_t expand_encoding[] = {
29394 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x3e,
29395 : 0x52, 0x6e, 0x52, 0x81, 0x0a, 0x4a, 0x01, 0x01,
29396 : 0x17, 0x00, 0x02, 0x27, 0x00, 0x27, 0x02, 0x6e,
29397 : 0x52, 0x81, 0x0a, 0x4a, 0x01, 0x02, 0x17, 0x00,
29398 : 0x02, 0x27, 0x00, 0x27, 0x02, 0x01, 0x03, 0x01,
29399 : 0x04
29400 : };
29401 : return complete_seq (expand_encoding, operands);
29402 : }
29403 :
29404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17204 */
29405 : rtx
29406 : gen_avx512dq_mulv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29407 : {
29408 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29409 : start_sequence ();
29410 : {
29411 : #define FAIL return (end_sequence (), nullptr)
29412 : #define DONE return end_sequence ()
29413 : #line 17210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29414 : ix86_fixup_binary_operands_no_copy (MULT, V2DImode, operands);
29415 : #undef DONE
29416 : #undef FAIL
29417 : }
29418 : static const uint8_t expand_encoding[] = {
29419 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x52, 0x01, 0x01,
29420 : 0x01, 0x02
29421 : };
29422 : return complete_seq (expand_encoding, operands);
29423 : }
29424 :
29425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17249 */
29426 : rtx
29427 : gen_mulv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29428 : {
29429 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29430 : start_sequence ();
29431 : {
29432 : #define FAIL return (end_sequence (), nullptr)
29433 : #define DONE return end_sequence ()
29434 : #line 17255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29435 : {
29436 : if (TARGET_SSE4_1)
29437 : {
29438 : if (!vector_operand (operands[1], V4SImode))
29439 : operands[1] = force_reg (V4SImode, operands[1]);
29440 : if (!vector_operand (operands[2], V4SImode))
29441 : operands[2] = force_reg (V4SImode, operands[2]);
29442 : ix86_fixup_binary_operands_no_copy (MULT, V4SImode, operands);
29443 : }
29444 : else
29445 : {
29446 : ix86_expand_sse2_mulv4si3 (operands[0], operands[1], operands[2]);
29447 : DONE;
29448 : }
29449 : }
29450 : #undef DONE
29451 : #undef FAIL
29452 : }
29453 : static const uint8_t expand_encoding[] = {
29454 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x3e,
29455 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29456 : 0x04
29457 : };
29458 : return complete_seq (expand_encoding, operands);
29459 : }
29460 :
29461 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17301 */
29462 : rtx
29463 : gen_vec_widen_smult_hi_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
29464 : {
29465 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29466 : start_sequence ();
29467 : {
29468 : #define FAIL return (end_sequence (), nullptr)
29469 : #define DONE return end_sequence ()
29470 : #line 17307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29471 : {
29472 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29473 : false, true);
29474 : DONE;
29475 : }
29476 : #undef DONE
29477 : #undef FAIL
29478 : }
29479 : static const uint8_t expand_encoding[] = {
29480 : 0x03, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01, 0x01,
29481 : 0x02
29482 : };
29483 : return complete_seq (expand_encoding, operands);
29484 : }
29485 :
29486 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17313 */
29487 : rtx
29488 : gen_vec_widen_smult_lo_v8hi (const rtx operand0, const rtx operand1, const rtx operand2)
29489 : {
29490 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29491 : start_sequence ();
29492 : {
29493 : #define FAIL return (end_sequence (), nullptr)
29494 : #define DONE return end_sequence ()
29495 : #line 17319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29496 : {
29497 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29498 : false, false);
29499 : DONE;
29500 : }
29501 : #undef DONE
29502 : #undef FAIL
29503 : }
29504 : static const uint8_t expand_encoding[] = {
29505 : 0x03, 0x01, 0x00, 0x6e, 0x51, 0x01, 0x01, 0x01,
29506 : 0x02
29507 : };
29508 : return complete_seq (expand_encoding, operands);
29509 : }
29510 :
29511 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17338 */
29512 : rtx
29513 : gen_vec_widen_umult_odd_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
29514 : {
29515 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29516 : start_sequence ();
29517 : {
29518 : #define FAIL return (end_sequence (), nullptr)
29519 : #define DONE return end_sequence ()
29520 : #line 17344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29521 : {
29522 : ix86_expand_mul_widen_evenodd (operands[0], operands[1], operands[2],
29523 : true, true);
29524 : DONE;
29525 : }
29526 : #undef DONE
29527 : #undef FAIL
29528 : }
29529 : static const uint8_t expand_encoding[] = {
29530 : 0x03, 0x01, 0x00, 0x6f, 0x57, 0x01, 0x01, 0x01,
29531 : 0x02
29532 : };
29533 : return complete_seq (expand_encoding, operands);
29534 : }
29535 :
29536 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17404 */
29537 : rtx
29538 : gen_uavgv32hi3_ceil (const rtx operand0, const rtx operand1, const rtx operand2)
29539 : {
29540 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29541 : start_sequence ();
29542 : {
29543 : #define FAIL return (end_sequence (), nullptr)
29544 : #define DONE return end_sequence ()
29545 : #line 17417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29546 : {
29547 : operands[3] = CONST1_RTX(V32SImode);
29548 : ix86_fixup_binary_operands_no_copy (PLUS, V32HImode, operands);
29549 : }
29550 : #undef DONE
29551 : #undef FAIL
29552 : }
29553 : static const uint8_t expand_encoding[] = {
29554 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x5a, 0x50, 0x60,
29555 : 0x3b, 0x60, 0x3b, 0x60, 0x6f, 0x60, 0x01, 0x01,
29556 : 0x6f, 0x60, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
29557 : };
29558 : return complete_seq (expand_encoding, operands);
29559 : }
29560 :
29561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17500 */
29562 : extern rtx_insn *gen_split_3297 (rtx_insn *, rtx *);
29563 : rtx_insn *
29564 : gen_split_3297 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29565 : {
29566 : if (dump_file)
29567 : fprintf (dump_file, "Splitting with gen_split_3297 (sse.md:17500)\n");
29568 : start_sequence ();
29569 : #define FAIL return (end_sequence (), nullptr)
29570 : #define DONE return end_sequence ()
29571 : #line 17509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29572 : operands[3] = gen_int_mode (16 - 1, DImode);
29573 : #undef DONE
29574 : #undef FAIL
29575 : static const uint8_t expand_encoding[] = {
29576 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x50, 0x01, 0x01,
29577 : 0x01, 0x03
29578 : };
29579 : return complete_seq (expand_encoding, operands);
29580 : }
29581 :
29582 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17525 */
29583 : extern rtx_insn *gen_split_3305 (rtx_insn *, rtx *);
29584 : rtx_insn *
29585 : gen_split_3305 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29586 : {
29587 : if (dump_file)
29588 : fprintf (dump_file, "Splitting with gen_split_3305 (sse.md:17525)\n");
29589 : start_sequence ();
29590 : #define FAIL return (end_sequence (), nullptr)
29591 : #define DONE return end_sequence ()
29592 : #line 17540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29593 : operands[5] = gen_int_mode (32 - 1, DImode);
29594 : #undef DONE
29595 : #undef FAIL
29596 : static const uint8_t expand_encoding[] = {
29597 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x51, 0x01, 0x03,
29598 : 0x01, 0x05
29599 : };
29600 : return complete_seq (expand_encoding, operands);
29601 : }
29602 :
29603 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17725 */
29604 : extern rtx_insn *gen_split_3314 (rtx_insn *, rtx *);
29605 : rtx_insn *
29606 : gen_split_3314 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29607 : {
29608 : if (dump_file)
29609 : fprintf (dump_file, "Splitting with gen_split_3314 (sse.md:17725)\n");
29610 : start_sequence ();
29611 : #define FAIL return (end_sequence (), nullptr)
29612 : #define DONE return end_sequence ()
29613 : #line 17734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29614 : operands[4] = gen_int_mode (16 - 1, DImode);
29615 : #undef DONE
29616 : #undef FAIL
29617 : static const uint8_t expand_encoding[] = {
29618 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x50, 0x01, 0x01,
29619 : 0x01, 0x04
29620 : };
29621 : return complete_seq (expand_encoding, operands);
29622 : }
29623 :
29624 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17736 */
29625 : extern rtx_insn *gen_split_3323 (rtx_insn *, rtx *);
29626 : rtx_insn *
29627 : gen_split_3323 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29628 : {
29629 : if (dump_file)
29630 : fprintf (dump_file, "Splitting with gen_split_3323 (sse.md:17736)\n");
29631 : start_sequence ();
29632 : #define FAIL return (end_sequence (), nullptr)
29633 : #define DONE return end_sequence ()
29634 : #line 17749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29635 : operands[5] = gen_int_mode (32 - 1, DImode);
29636 : #undef DONE
29637 : #undef FAIL
29638 : static const uint8_t expand_encoding[] = {
29639 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x56, 0x01, 0x03,
29640 : 0x01, 0x05
29641 : };
29642 : return complete_seq (expand_encoding, operands);
29643 : }
29644 :
29645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17767 */
29646 : extern rtx_insn *gen_split_3332 (rtx_insn *, rtx *);
29647 : rtx_insn *
29648 : gen_split_3332 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29649 : {
29650 : if (dump_file)
29651 : fprintf (dump_file, "Splitting with gen_split_3332 (sse.md:17767)\n");
29652 : start_sequence ();
29653 : #define FAIL return (end_sequence (), nullptr)
29654 : #define DONE return end_sequence ()
29655 : #line 17778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29656 : operands[3] = XVECEXP (operands[2], 0, 0);
29657 : #undef DONE
29658 : #undef FAIL
29659 : static const uint8_t expand_encoding[] = {
29660 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x5b, 0x01, 0x01,
29661 : 0x01, 0x03
29662 : };
29663 : return complete_seq (expand_encoding, operands);
29664 : }
29665 :
29666 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17780 */
29667 : rtx
29668 : gen_vec_shl_v4si (const rtx operand0, const rtx operand1, const rtx operand2)
29669 : {
29670 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29671 : start_sequence ();
29672 : {
29673 : #define FAIL return (end_sequence (), nullptr)
29674 : #define DONE return end_sequence ()
29675 : #line 17786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29676 : {
29677 : rtx op0 = gen_reg_rtx (V1TImode);
29678 : rtx op1 = force_reg (V4SImode, operands[1]);
29679 :
29680 : emit_insn (gen_sse2_ashlv1ti3
29681 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29682 : emit_move_insn (operands[0], gen_lowpart (V4SImode, op0));
29683 : DONE;
29684 : }
29685 : #undef DONE
29686 : #undef FAIL
29687 : }
29688 : static const uint8_t expand_encoding[] = {
29689 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x53, 0x01, 0x01,
29690 : 0x01, 0x02
29691 : };
29692 : return complete_seq (expand_encoding, operands);
29693 : }
29694 :
29695 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17796 */
29696 : rtx
29697 : gen_vec_shr_v2di (const rtx operand0, const rtx operand1, const rtx operand2)
29698 : {
29699 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29700 : start_sequence ();
29701 : {
29702 : #define FAIL return (end_sequence (), nullptr)
29703 : #define DONE return end_sequence ()
29704 : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29705 : {
29706 : rtx op0 = gen_reg_rtx (V1TImode);
29707 : rtx op1 = force_reg (V2DImode, operands[1]);
29708 :
29709 : emit_insn (gen_sse2_lshrv1ti3
29710 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29711 : emit_move_insn (operands[0], gen_lowpart (V2DImode, op0));
29712 : DONE;
29713 : }
29714 : #undef DONE
29715 : #undef FAIL
29716 : }
29717 : static const uint8_t expand_encoding[] = {
29718 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x53, 0x01, 0x01,
29719 : 0x01, 0x02
29720 : };
29721 : return complete_seq (expand_encoding, operands);
29722 : }
29723 :
29724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17900 */
29725 : extern rtx_insn *gen_split_3342 (rtx_insn *, rtx *);
29726 : rtx_insn *
29727 : gen_split_3342 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29728 : {
29729 : if (dump_file)
29730 : fprintf (dump_file, "Splitting with gen_split_3342 (sse.md:17900)\n");
29731 : start_sequence ();
29732 : static const uint8_t expand_encoding[] = {
29733 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x56, 0x01, 0x01,
29734 : 0x01, 0x02
29735 : };
29736 : return complete_seq (expand_encoding, operands);
29737 : }
29738 :
29739 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29740 : rtx
29741 : gen_smaxv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29742 : {
29743 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29744 : start_sequence ();
29745 : {
29746 : #define FAIL return (end_sequence (), nullptr)
29747 : #define DONE return end_sequence ()
29748 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29749 : ix86_fixup_binary_operands_no_copy (SMAX, V32QImode, operands);
29750 : #undef DONE
29751 : #undef FAIL
29752 : }
29753 : static const uint8_t expand_encoding[] = {
29754 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x54, 0x01, 0x01,
29755 : 0x01, 0x02
29756 : };
29757 : return complete_seq (expand_encoding, operands);
29758 : }
29759 :
29760 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29761 : rtx
29762 : gen_smaxv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29763 : {
29764 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29765 : start_sequence ();
29766 : {
29767 : #define FAIL return (end_sequence (), nullptr)
29768 : #define DONE return end_sequence ()
29769 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29770 : ix86_fixup_binary_operands_no_copy (SMAX, V8SImode, operands);
29771 : #undef DONE
29772 : #undef FAIL
29773 : }
29774 : static const uint8_t expand_encoding[] = {
29775 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x56, 0x01, 0x01,
29776 : 0x01, 0x02
29777 : };
29778 : return complete_seq (expand_encoding, operands);
29779 : }
29780 :
29781 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29782 : rtx
29783 : gen_umaxv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29784 : {
29785 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29786 : start_sequence ();
29787 : {
29788 : #define FAIL return (end_sequence (), nullptr)
29789 : #define DONE return end_sequence ()
29790 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29791 : ix86_fixup_binary_operands_no_copy (UMAX, V32HImode, operands);
29792 : #undef DONE
29793 : #undef FAIL
29794 : }
29795 : static const uint8_t expand_encoding[] = {
29796 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x5a, 0x01, 0x01,
29797 : 0x01, 0x02
29798 : };
29799 : return complete_seq (expand_encoding, operands);
29800 : }
29801 :
29802 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29803 : rtx
29804 : gen_cond_smaxv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29805 : {
29806 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29807 : start_sequence ();
29808 : {
29809 : #define FAIL return (end_sequence (), nullptr)
29810 : #define DONE return end_sequence ()
29811 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29812 : {
29813 : emit_insn (gen_smaxv32qi3_mask (operands[0],
29814 : operands[2],
29815 : operands[3],
29816 : operands[4],
29817 : operands[1]));
29818 : DONE;
29819 : }
29820 : #undef DONE
29821 : #undef FAIL
29822 : }
29823 : static const uint8_t expand_encoding[] = {
29824 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x53,
29825 : 0x54, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29826 : 0x01
29827 : };
29828 : return complete_seq (expand_encoding, operands);
29829 : }
29830 :
29831 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29832 : rtx
29833 : gen_cond_umaxv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29834 : {
29835 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29836 : start_sequence ();
29837 : {
29838 : #define FAIL return (end_sequence (), nullptr)
29839 : #define DONE return end_sequence ()
29840 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29841 : {
29842 : emit_insn (gen_umaxv32hi3_mask (operands[0],
29843 : operands[2],
29844 : operands[3],
29845 : operands[4],
29846 : operands[1]));
29847 : DONE;
29848 : }
29849 : #undef DONE
29850 : #undef FAIL
29851 : }
29852 : static const uint8_t expand_encoding[] = {
29853 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x55,
29854 : 0x5a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29855 : 0x01
29856 : };
29857 : return complete_seq (expand_encoding, operands);
29858 : }
29859 :
29860 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29861 : rtx
29862 : gen_cond_smaxv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29863 : {
29864 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29865 : start_sequence ();
29866 : {
29867 : #define FAIL return (end_sequence (), nullptr)
29868 : #define DONE return end_sequence ()
29869 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29870 : {
29871 : emit_insn (gen_smaxv16si3_mask (operands[0],
29872 : operands[2],
29873 : operands[3],
29874 : operands[4],
29875 : operands[1]));
29876 : DONE;
29877 : }
29878 : #undef DONE
29879 : #undef FAIL
29880 : }
29881 : static const uint8_t expand_encoding[] = {
29882 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x53,
29883 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29884 : 0x01
29885 : };
29886 : return complete_seq (expand_encoding, operands);
29887 : }
29888 :
29889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29890 : rtx
29891 : gen_cond_umaxv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29892 : {
29893 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29894 : start_sequence ();
29895 : {
29896 : #define FAIL return (end_sequence (), nullptr)
29897 : #define DONE return end_sequence ()
29898 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29899 : {
29900 : emit_insn (gen_umaxv4si3_mask (operands[0],
29901 : operands[2],
29902 : operands[3],
29903 : operands[4],
29904 : operands[1]));
29905 : DONE;
29906 : }
29907 : #undef DONE
29908 : #undef FAIL
29909 : }
29910 : static const uint8_t expand_encoding[] = {
29911 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x55,
29912 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29913 : 0x01
29914 : };
29915 : return complete_seq (expand_encoding, operands);
29916 : }
29917 :
29918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29919 : rtx
29920 : gen_cond_smaxv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29921 : {
29922 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29923 : start_sequence ();
29924 : {
29925 : #define FAIL return (end_sequence (), nullptr)
29926 : #define DONE return end_sequence ()
29927 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29928 : {
29929 : emit_insn (gen_smaxv2di3_mask (operands[0],
29930 : operands[2],
29931 : operands[3],
29932 : operands[4],
29933 : operands[1]));
29934 : DONE;
29935 : }
29936 : #undef DONE
29937 : #undef FAIL
29938 : }
29939 : static const uint8_t expand_encoding[] = {
29940 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x53,
29941 : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29942 : 0x01
29943 : };
29944 : return complete_seq (expand_encoding, operands);
29945 : }
29946 :
29947 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29948 : rtx
29949 : gen_smaxv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29950 : {
29951 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29952 : start_sequence ();
29953 : {
29954 : #define FAIL return (end_sequence (), nullptr)
29955 : #define DONE return end_sequence ()
29956 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29957 : ix86_fixup_binary_operands_no_copy (SMAX, V16QImode, operands);
29958 : #undef DONE
29959 : #undef FAIL
29960 : }
29961 : static const uint8_t expand_encoding[] = {
29962 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x53,
29963 : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29964 : 0x04
29965 : };
29966 : return complete_seq (expand_encoding, operands);
29967 : }
29968 :
29969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29970 : rtx
29971 : gen_umaxv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29972 : {
29973 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29974 : start_sequence ();
29975 : {
29976 : #define FAIL return (end_sequence (), nullptr)
29977 : #define DONE return end_sequence ()
29978 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29979 : ix86_fixup_binary_operands_no_copy (UMAX, V16HImode, operands);
29980 : #undef DONE
29981 : #undef FAIL
29982 : }
29983 : static const uint8_t expand_encoding[] = {
29984 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x55,
29985 : 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29986 : 0x04
29987 : };
29988 : return complete_seq (expand_encoding, operands);
29989 : }
29990 :
29991 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29992 : rtx
29993 : gen_smaxv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29994 : {
29995 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29996 : start_sequence ();
29997 : {
29998 : #define FAIL return (end_sequence (), nullptr)
29999 : #define DONE return end_sequence ()
30000 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30001 : ix86_fixup_binary_operands_no_copy (SMAX, V8SImode, operands);
30002 : #undef DONE
30003 : #undef FAIL
30004 : }
30005 : static const uint8_t expand_encoding[] = {
30006 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x53,
30007 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30008 : 0x04
30009 : };
30010 : return complete_seq (expand_encoding, operands);
30011 : }
30012 :
30013 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30014 : rtx
30015 : gen_sminv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30016 : {
30017 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30018 : start_sequence ();
30019 : {
30020 : #define FAIL return (end_sequence (), nullptr)
30021 : #define DONE return end_sequence ()
30022 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30023 : ix86_fixup_binary_operands_no_copy (SMIN, V8DImode, operands);
30024 : #undef DONE
30025 : #undef FAIL
30026 : }
30027 : static const uint8_t expand_encoding[] = {
30028 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x52,
30029 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30030 : 0x04
30031 : };
30032 : return complete_seq (expand_encoding, operands);
30033 : }
30034 :
30035 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30036 : rtx
30037 : gen_uminv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30038 : {
30039 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30040 : start_sequence ();
30041 : {
30042 : #define FAIL return (end_sequence (), nullptr)
30043 : #define DONE return end_sequence ()
30044 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30045 : ix86_fixup_binary_operands_no_copy (UMIN, V2DImode, operands);
30046 : #undef DONE
30047 : #undef FAIL
30048 : }
30049 : static const uint8_t expand_encoding[] = {
30050 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x54,
30051 : 0x52, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30052 : 0x04
30053 : };
30054 : return complete_seq (expand_encoding, operands);
30055 : }
30056 :
30057 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18106 */
30058 : rtx
30059 : gen_sminv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30060 : {
30061 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30062 : start_sequence ();
30063 : {
30064 : #define FAIL return (end_sequence (), nullptr)
30065 : #define DONE return end_sequence ()
30066 : #line 18112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30067 : {
30068 : if (TARGET_AVX512F
30069 : && (V2DImode == V8DImode || TARGET_AVX512VL))
30070 : ;
30071 : else
30072 : {
30073 : enum rtx_code code;
30074 : rtx xops[6];
30075 : bool ok;
30076 :
30077 :
30078 : xops[0] = operands[0];
30079 :
30080 : if (SMIN == SMAX || SMIN == UMAX)
30081 : {
30082 : xops[1] = operands[1];
30083 : xops[2] = operands[2];
30084 : }
30085 : else
30086 : {
30087 : xops[1] = operands[2];
30088 : xops[2] = operands[1];
30089 : }
30090 :
30091 : code = (SMIN == UMAX || SMIN == UMIN) ? GTU : GT;
30092 :
30093 : xops[3] = gen_rtx_fmt_ee (code, VOIDmode, operands[1], operands[2]);
30094 : xops[4] = operands[1];
30095 : xops[5] = operands[2];
30096 :
30097 : ok = ix86_expand_int_vcond (xops);
30098 : gcc_assert (ok);
30099 : DONE;
30100 : }
30101 : }
30102 : #undef DONE
30103 : #undef FAIL
30104 : }
30105 : static const uint8_t expand_encoding[] = {
30106 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x52, 0x01, 0x01,
30107 : 0x01, 0x02
30108 : };
30109 : return complete_seq (expand_encoding, operands);
30110 : }
30111 :
30112 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18223 */
30113 : rtx
30114 : gen_uminv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30115 : {
30116 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30117 : start_sequence ();
30118 : {
30119 : #define FAIL return (end_sequence (), nullptr)
30120 : #define DONE return end_sequence ()
30121 : #line 18229 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30122 : {
30123 : if (TARGET_SSE4_1 || V16QImode == V16QImode)
30124 : ix86_fixup_binary_operands_no_copy (UMIN, V16QImode, operands);
30125 : else if (UMIN == UMAX && V16QImode == V8HImode)
30126 : {
30127 : rtx op0 = operands[0], op2 = operands[2], op3 = op0;
30128 : operands[1] = force_reg (V16QImode, operands[1]);
30129 : if (rtx_equal_p (op3, op2))
30130 : op3 = gen_reg_rtx (V8HImode);
30131 : emit_insn (gen_ussubv8hi3 (op3, operands[1], op2));
30132 : emit_insn (gen_addv8hi3 (op0, op3, op2));
30133 : DONE;
30134 : }
30135 : else
30136 : {
30137 : rtx xops[6];
30138 : bool ok;
30139 :
30140 : operands[1] = force_reg (V16QImode, operands[1]);
30141 : operands[2] = force_reg (V16QImode, operands[2]);
30142 :
30143 : xops[0] = operands[0];
30144 :
30145 : if (UMIN == UMAX)
30146 : {
30147 : xops[1] = operands[1];
30148 : xops[2] = operands[2];
30149 : }
30150 : else
30151 : {
30152 : xops[1] = operands[2];
30153 : xops[2] = operands[1];
30154 : }
30155 :
30156 : xops[3] = gen_rtx_GTU (VOIDmode, operands[1], operands[2]);
30157 : xops[4] = operands[1];
30158 : xops[5] = operands[2];
30159 :
30160 : ok = ix86_expand_int_vcond (xops);
30161 : gcc_assert (ok);
30162 : DONE;
30163 : }
30164 : }
30165 : #undef DONE
30166 : #undef FAIL
30167 : }
30168 : static const uint8_t expand_encoding[] = {
30169 : 0x01, 0x1f, 0x01, 0x00, 0x54, 0x4f, 0x01, 0x01,
30170 : 0x01, 0x02
30171 : };
30172 : return complete_seq (expand_encoding, operands);
30173 : }
30174 :
30175 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18331 */
30176 : extern rtx_insn *gen_split_3355 (rtx_insn *, rtx *);
30177 : rtx_insn *
30178 : gen_split_3355 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30179 : {
30180 : if (dump_file)
30181 : fprintf (dump_file, "Splitting with gen_split_3355 (sse.md:18331)\n");
30182 : start_sequence ();
30183 : #define FAIL return (end_sequence (), nullptr)
30184 : #define DONE return end_sequence ()
30185 : #line 18346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30186 : operands[5] = force_reg (V2DImode, operands[2]);
30187 : #undef DONE
30188 : #undef FAIL
30189 : static const uint8_t expand_encoding[] = {
30190 : 0x01, 0x1f, 0x01, 0x00, 0x5d, 0x52, 0x01, 0x01,
30191 : 0x01, 0x05
30192 : };
30193 : return complete_seq (expand_encoding, operands);
30194 : }
30195 :
30196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18387 */
30197 : extern rtx_insn *gen_split_3365 (rtx_insn *, rtx *);
30198 : rtx_insn *
30199 : gen_split_3365 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30200 : {
30201 : if (dump_file)
30202 : fprintf (dump_file, "Splitting with gen_split_3365 (sse.md:18387)\n");
30203 : start_sequence ();
30204 : #define FAIL return (end_sequence (), nullptr)
30205 : #define DONE return end_sequence ()
30206 : #line 18411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30207 : {
30208 : if (INTVAL (operands[5]) == 5)
30209 : std::swap (operands[3], operands[4]);
30210 : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30211 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V8HImode,
30212 : operands[3], operands[4]));
30213 : DONE;
30214 : }
30215 : #undef DONE
30216 : #undef FAIL
30217 : static const uint8_t expand_encoding[] = {
30218 : 0x01, 0x27, 0x00
30219 : };
30220 : return complete_seq (expand_encoding, operands);
30221 : }
30222 :
30223 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18449 */
30224 : extern rtx_insn *gen_split_3374 (rtx_insn *, rtx *);
30225 : rtx_insn *
30226 : gen_split_3374 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30227 : {
30228 : if (dump_file)
30229 : fprintf (dump_file, "Splitting with gen_split_3374 (sse.md:18449)\n");
30230 : start_sequence ();
30231 : #define FAIL return (end_sequence (), nullptr)
30232 : #define DONE return end_sequence ()
30233 : #line 18475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30234 : {
30235 : if (INTVAL (operands[5]) == 5)
30236 : std::swap (operands[1], operands[2]);
30237 : operands[3] = gen_lowpart (V32QImode, operands[3]);
30238 : }
30239 : #undef DONE
30240 : #undef FAIL
30241 : static const uint8_t expand_encoding[] = {
30242 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
30243 : 0x01, 0x01, 0x02, 0x61, 0x54, 0x01, 0x03, 0x01,
30244 : 0x04, 0x34
30245 : };
30246 : return complete_seq (expand_encoding, operands);
30247 : }
30248 :
30249 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30250 : extern rtx_insn *gen_split_3383 (rtx_insn *, rtx *);
30251 : rtx_insn *
30252 : gen_split_3383 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30253 : {
30254 : if (dump_file)
30255 : fprintf (dump_file, "Splitting with gen_split_3383 (sse.md:18513)\n");
30256 : start_sequence ();
30257 : #define FAIL return (end_sequence (), nullptr)
30258 : #define DONE return end_sequence ()
30259 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30260 : {
30261 : rtx dst_min = gen_reg_rtx (V4SImode);
30262 :
30263 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30264 : operands[3] = force_reg (V4SImode, operands[3]);
30265 : emit_insn (gen_uminv4si3 (dst_min, operands[3], operands[4]));
30266 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30267 : emit_move_insn (operands[0], gen_rtx_EQ (V4SImode, eq_op, dst_min));
30268 : DONE;
30269 : }
30270 : #undef DONE
30271 : #undef FAIL
30272 : static const uint8_t expand_encoding[] = {
30273 : 0x01, 0x27, 0x00
30274 : };
30275 : return complete_seq (expand_encoding, operands);
30276 : }
30277 :
30278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30279 : extern rtx_insn *gen_split_3393 (rtx_insn *, rtx *);
30280 : rtx_insn *
30281 : gen_split_3393 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30282 : {
30283 : if (dump_file)
30284 : fprintf (dump_file, "Splitting with gen_split_3393 (sse.md:18513)\n");
30285 : start_sequence ();
30286 : #define FAIL return (end_sequence (), nullptr)
30287 : #define DONE return end_sequence ()
30288 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30289 : {
30290 : rtx dst_min = gen_reg_rtx (V4DImode);
30291 :
30292 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30293 : operands[3] = force_reg (V4DImode, operands[3]);
30294 : emit_insn (gen_uminv4di3 (dst_min, operands[3], operands[4]));
30295 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30296 : emit_move_insn (operands[0], gen_rtx_EQ (V4DImode, eq_op, dst_min));
30297 : DONE;
30298 : }
30299 : #undef DONE
30300 : #undef FAIL
30301 : static const uint8_t expand_encoding[] = {
30302 : 0x01, 0x27, 0x00
30303 : };
30304 : return complete_seq (expand_encoding, operands);
30305 : }
30306 :
30307 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18571 */
30308 : extern rtx_insn *gen_split_3405 (rtx_insn *, rtx *);
30309 : rtx_insn *
30310 : gen_split_3405 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30311 : {
30312 : if (dump_file)
30313 : fprintf (dump_file, "Splitting with gen_split_3405 (sse.md:18571)\n");
30314 : start_sequence ();
30315 : #define FAIL return (end_sequence (), nullptr)
30316 : #define DONE return end_sequence ()
30317 : #line 18588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30318 : {
30319 : if (MEM_P (operands[3]))
30320 : operands[3] = force_reg (V2DImode, operands[3]);
30321 : emit_move_insn (operands[0], gen_rtx_fmt_ee (EQ, V2DImode,
30322 : operands[3], operands[4]));
30323 : DONE;
30324 : }
30325 : #undef DONE
30326 : #undef FAIL
30327 : static const uint8_t expand_encoding[] = {
30328 : 0x01, 0x27, 0x00
30329 : };
30330 : return complete_seq (expand_encoding, operands);
30331 : }
30332 :
30333 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18596 */
30334 : rtx
30335 : gen_avx512bw_eqv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30336 : {
30337 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30338 : start_sequence ();
30339 : {
30340 : #define FAIL return (end_sequence (), nullptr)
30341 : #define DONE return end_sequence ()
30342 : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30343 : ix86_fixup_binary_operands_no_copy (EQ, V64QImode, operands);
30344 : #undef DONE
30345 : #undef FAIL
30346 : }
30347 : static const uint8_t expand_encoding[] = {
30348 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x12, 0x1a, 0x12,
30349 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c,
30350 : 0x01, 0x03
30351 : };
30352 : return complete_seq (expand_encoding, operands);
30353 : }
30354 :
30355 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18596 */
30356 : rtx
30357 : gen_avx512vl_eqv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30358 : {
30359 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30360 : start_sequence ();
30361 : {
30362 : #define FAIL return (end_sequence (), nullptr)
30363 : #define DONE return end_sequence ()
30364 : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30365 : ix86_fixup_binary_operands_no_copy (EQ, V16HImode, operands);
30366 : #undef DONE
30367 : #undef FAIL
30368 : }
30369 : static const uint8_t expand_encoding[] = {
30370 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10,
30371 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c,
30372 : 0x01, 0x03
30373 : };
30374 : return complete_seq (expand_encoding, operands);
30375 : }
30376 :
30377 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18606 */
30378 : rtx
30379 : gen_avx512vl_eqv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30380 : {
30381 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30382 : start_sequence ();
30383 : {
30384 : #define FAIL return (end_sequence (), nullptr)
30385 : #define DONE return end_sequence ()
30386 : #line 18614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30387 : ix86_fixup_binary_operands_no_copy (EQ, V4DImode, operands);
30388 : #undef DONE
30389 : #undef FAIL
30390 : }
30391 : static const uint8_t expand_encoding[] = {
30392 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f,
30393 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c,
30394 : 0x01, 0x03
30395 : };
30396 : return complete_seq (expand_encoding, operands);
30397 : }
30398 :
30399 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18682 */
30400 : rtx
30401 : gen_avx512vl_gtv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30402 : {
30403 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30404 : static const uint8_t expand_encoding[] = {
30405 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
30406 : 0x01, 0x02, 0x27, 0x06, 0x3c
30407 : };
30408 : return expand_rtx (expand_encoding, operands);
30409 : }
30410 :
30411 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18690 */
30412 : rtx
30413 : gen_avx512bw_gtv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30414 : {
30415 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30416 : static const uint8_t expand_encoding[] = {
30417 : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x03,
30418 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x06, 0x3c, 0x01,
30419 : 0x03
30420 : };
30421 : return expand_rtx (expand_encoding, operands);
30422 : }
30423 :
30424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30425 : rtx
30426 : gen_vec_permv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30427 : {
30428 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30429 : start_sequence ();
30430 : {
30431 : #define FAIL return (end_sequence (), nullptr)
30432 : #define DONE return end_sequence ()
30433 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30434 : {
30435 : ix86_expand_vec_perm (operands);
30436 : DONE;
30437 : }
30438 : #undef DONE
30439 : #undef FAIL
30440 : }
30441 : static const uint8_t expand_encoding[] = {
30442 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30443 : 0x03
30444 : };
30445 : return complete_seq (expand_encoding, operands);
30446 : }
30447 :
30448 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30449 : rtx
30450 : gen_vec_permv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30451 : {
30452 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30453 : start_sequence ();
30454 : {
30455 : #define FAIL return (end_sequence (), nullptr)
30456 : #define DONE return end_sequence ()
30457 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30458 : {
30459 : ix86_expand_vec_perm (operands);
30460 : DONE;
30461 : }
30462 : #undef DONE
30463 : #undef FAIL
30464 : }
30465 : static const uint8_t expand_encoding[] = {
30466 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30467 : 0x03
30468 : };
30469 : return complete_seq (expand_encoding, operands);
30470 : }
30471 :
30472 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18742 */
30473 : rtx
30474 : gen_one_cmplv32hi2 (const rtx operand0, const rtx operand1)
30475 : {
30476 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
30477 : start_sequence ();
30478 : {
30479 : #define FAIL return (end_sequence (), nullptr)
30480 : #define DONE return end_sequence ()
30481 : #line 18747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30482 : {
30483 : operands[2] = CONSTM1_RTX (V32HImode);
30484 :
30485 : if (!TARGET_AVX512F)
30486 : operands[2] = force_reg (V32HImode, operands[2]);
30487 : }
30488 : #undef DONE
30489 : #undef FAIL
30490 : }
30491 : static const uint8_t expand_encoding[] = {
30492 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x5a, 0x01, 0x01,
30493 : 0x01, 0x02
30494 : };
30495 : return complete_seq (expand_encoding, operands);
30496 : }
30497 :
30498 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18754 */
30499 : extern rtx_insn *gen_split_3413 (rtx_insn *, rtx *);
30500 : rtx_insn *
30501 : gen_split_3413 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30502 : {
30503 : if (dump_file)
30504 : fprintf (dump_file, "Splitting with gen_split_3413 (sse.md:18754)\n");
30505 : start_sequence ();
30506 : #define FAIL return (end_sequence (), nullptr)
30507 : #define DONE return end_sequence ()
30508 : #line 18775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30509 : {
30510 : if (MEM_P (operands[1]))
30511 : {
30512 : operands[3] = operands[1];
30513 : operands[1] = operands[0];
30514 : }
30515 : else
30516 : {
30517 : if (GET_MODE_SIZE (QImode) < 4)
30518 : {
30519 : if (32 == 64 ? TARGET_AVX512BW
30520 : : (TARGET_AVX512BW && TARGET_AVX512VL)
30521 : || !EXT_REX_SSE_REG_P (operands[0]))
30522 : {
30523 : operands[3] = operands[1];
30524 : operands[1] = operands[0];
30525 : }
30526 : else
30527 : operands[3] = CONST0_RTX (V32QImode);
30528 : }
30529 : else
30530 : {
30531 : if (32 == 64 || TARGET_AVX512VL
30532 : || !EXT_REX_SSE_REG_P (operands[0]))
30533 : {
30534 : operands[3] = operands[1];
30535 : operands[1] = operands[0];
30536 : }
30537 : else
30538 : operands[3] = CONST0_RTX (V32QImode);
30539 : }
30540 : }
30541 : }
30542 : #undef DONE
30543 : #undef FAIL
30544 : static const uint8_t expand_encoding[] = {
30545 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x17, 0x00,
30546 : 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x54, 0x01, 0x01,
30547 : 0x01, 0x02, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
30548 : };
30549 : return complete_seq (expand_encoding, operands);
30550 : }
30551 :
30552 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18843 */
30553 : extern rtx_insn *gen_split_3423 (rtx_insn *, rtx *);
30554 : rtx_insn *
30555 : gen_split_3423 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30556 : {
30557 : if (dump_file)
30558 : fprintf (dump_file, "Splitting with gen_split_3423 (sse.md:18843)\n");
30559 : start_sequence ();
30560 : #define FAIL return (end_sequence (), nullptr)
30561 : #define DONE return end_sequence ()
30562 : #line 18854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30563 : operands[2] = CONSTM1_RTX (V8SImode);
30564 : #undef DONE
30565 : #undef FAIL
30566 : static const uint8_t expand_encoding[] = {
30567 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x56, 0x81, 0x0c,
30568 : 0x56, 0x01, 0x01, 0x01, 0x02
30569 : };
30570 : return complete_seq (expand_encoding, operands);
30571 : }
30572 :
30573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18856 */
30574 : rtx
30575 : gen_avx512bw_andnotv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30576 : {
30577 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30578 : static const uint8_t expand_encoding[] = {
30579 : 0x1f, 0x01, 0x00, 0x49, 0x5a, 0x4c, 0x5a, 0x01,
30580 : 0x01, 0x01, 0x02
30581 : };
30582 : return expand_rtx (expand_encoding, operands);
30583 : }
30584 :
30585 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18856 */
30586 : rtx
30587 : gen_avx2_andnotv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30588 : {
30589 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30590 : static const uint8_t expand_encoding[] = {
30591 : 0x1f, 0x01, 0x00, 0x49, 0x57, 0x4c, 0x57, 0x01,
30592 : 0x01, 0x01, 0x02
30593 : };
30594 : return expand_rtx (expand_encoding, operands);
30595 : }
30596 :
30597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18863 */
30598 : rtx
30599 : gen_andnv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30600 : {
30601 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30602 : static const uint8_t expand_encoding[] = {
30603 : 0x1f, 0x01, 0x00, 0x49, 0x56, 0x4c, 0x56, 0x01,
30604 : 0x02, 0x01, 0x01
30605 : };
30606 : return expand_rtx (expand_encoding, operands);
30607 : }
30608 :
30609 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19009 */
30610 : extern rtx_insn *gen_split_3428 (rtx_insn *, rtx *);
30611 : rtx_insn *
30612 : gen_split_3428 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30613 : {
30614 : if (dump_file)
30615 : fprintf (dump_file, "Splitting with gen_split_3428 (sse.md:19009)\n");
30616 : start_sequence ();
30617 : #define FAIL return (end_sequence (), nullptr)
30618 : #define DONE return end_sequence ()
30619 : #line 19022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30620 : operands[3] = gen_reg_rtx (V4SImode);
30621 : #undef DONE
30622 : #undef FAIL
30623 : static const uint8_t expand_encoding[] = {
30624 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x51, 0x01,
30625 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x51, 0x4c, 0x51,
30626 : 0x01, 0x03, 0x01, 0x02
30627 : };
30628 : return complete_seq (expand_encoding, operands);
30629 : }
30630 :
30631 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19025 */
30632 : extern rtx_insn *gen_split_3438 (rtx_insn *, rtx *);
30633 : rtx_insn *
30634 : gen_split_3438 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30635 : {
30636 : if (dump_file)
30637 : fprintf (dump_file, "Splitting with gen_split_3438 (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 (V4SImode);
30643 : #undef DONE
30644 : #undef FAIL
30645 : static const uint8_t expand_encoding[] = {
30646 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x51, 0x01,
30647 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x51, 0x4c, 0x51,
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:19040 */
30654 : extern rtx_insn *gen_split_3448 (rtx_insn *, rtx *);
30655 : rtx_insn *
30656 : gen_split_3448 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30657 : {
30658 : if (dump_file)
30659 : fprintf (dump_file, "Splitting with gen_split_3448 (sse.md:19040)\n");
30660 : start_sequence ();
30661 : #define FAIL return (end_sequence (), nullptr)
30662 : #define DONE return end_sequence ()
30663 : #line 19053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30664 : operands[3] = gen_reg_rtx (V16HImode);
30665 : #undef DONE
30666 : #undef FAIL
30667 : static const uint8_t expand_encoding[] = {
30668 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x55, 0x01,
30669 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x55, 0x4c, 0x55,
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:19055 */
30676 : extern rtx_insn *gen_split_3458 (rtx_insn *, rtx *);
30677 : rtx_insn *
30678 : gen_split_3458 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30679 : {
30680 : if (dump_file)
30681 : fprintf (dump_file, "Splitting with gen_split_3458 (sse.md:19055)\n");
30682 : start_sequence ();
30683 : #define FAIL return (end_sequence (), nullptr)
30684 : #define DONE return end_sequence ()
30685 : #line 19068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30686 : operands[3] = gen_reg_rtx (V16QImode);
30687 : #undef DONE
30688 : #undef FAIL
30689 : static const uint8_t expand_encoding[] = {
30690 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x4f, 0x01,
30691 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x4f, 0x4b, 0x4f,
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:19086 */
30698 : rtx
30699 : gen_xorv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30700 : {
30701 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30702 : start_sequence ();
30703 : {
30704 : #define FAIL return (end_sequence (), nullptr)
30705 : #define DONE return end_sequence ()
30706 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30707 : {
30708 : ix86_expand_vector_logical_operator (XOR, V16SImode, operands);
30709 : DONE;
30710 : }
30711 : #undef DONE
30712 : #undef FAIL
30713 : }
30714 : static const uint8_t expand_encoding[] = {
30715 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x5b, 0x01, 0x01,
30716 : 0x01, 0x02
30717 : };
30718 : return complete_seq (expand_encoding, operands);
30719 : }
30720 :
30721 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30722 : rtx
30723 : gen_iorv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30724 : {
30725 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30726 : start_sequence ();
30727 : {
30728 : #define FAIL return (end_sequence (), nullptr)
30729 : #define DONE return end_sequence ()
30730 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30731 : {
30732 : ix86_expand_vector_logical_operator (IOR, V16QImode, operands);
30733 : DONE;
30734 : }
30735 : #undef DONE
30736 : #undef FAIL
30737 : }
30738 : static const uint8_t expand_encoding[] = {
30739 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x4f, 0x01, 0x01,
30740 : 0x01, 0x02
30741 : };
30742 : return complete_seq (expand_encoding, operands);
30743 : }
30744 :
30745 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30746 : rtx
30747 : gen_xorv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30748 : {
30749 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30750 : start_sequence ();
30751 : {
30752 : #define FAIL return (end_sequence (), nullptr)
30753 : #define DONE return end_sequence ()
30754 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30755 : {
30756 : ix86_expand_vector_logical_operator (XOR, V8HImode, operands);
30757 : DONE;
30758 : }
30759 : #undef DONE
30760 : #undef FAIL
30761 : }
30762 : static const uint8_t expand_encoding[] = {
30763 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x50, 0x01, 0x01,
30764 : 0x01, 0x02
30765 : };
30766 : return complete_seq (expand_encoding, operands);
30767 : }
30768 :
30769 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30770 : rtx
30771 : gen_andv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30772 : {
30773 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30774 : start_sequence ();
30775 : {
30776 : #define FAIL return (end_sequence (), nullptr)
30777 : #define DONE return end_sequence ()
30778 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30779 : {
30780 : ix86_expand_vector_logical_operator (AND, V2DImode, operands);
30781 : DONE;
30782 : }
30783 : #undef DONE
30784 : #undef FAIL
30785 : }
30786 : static const uint8_t expand_encoding[] = {
30787 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x52, 0x01, 0x01,
30788 : 0x01, 0x02
30789 : };
30790 : return complete_seq (expand_encoding, operands);
30791 : }
30792 :
30793 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30794 : rtx
30795 : gen_cond_iorv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30796 : {
30797 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30798 : start_sequence ();
30799 : {
30800 : #define FAIL _Pragma ("GCC error \"cond_iorv4si cannot FAIL\"") (void)0
30801 : #define DONE return end_sequence ()
30802 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30803 : {
30804 : emit_insn (gen_iorv4si3_mask (operands[0],
30805 : operands[2],
30806 : operands[3],
30807 : operands[4],
30808 : operands[1]));
30809 : DONE;
30810 : }
30811 : #undef DONE
30812 : #undef FAIL
30813 : }
30814 : static const uint8_t expand_encoding[] = {
30815 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4a,
30816 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30817 : 0x01
30818 : };
30819 : return complete_seq (expand_encoding, operands);
30820 : }
30821 :
30822 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30823 : rtx
30824 : gen_cond_xorv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30825 : {
30826 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30827 : start_sequence ();
30828 : {
30829 : #define FAIL _Pragma ("GCC error \"cond_xorv2di cannot FAIL\"") (void)0
30830 : #define DONE return end_sequence ()
30831 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30832 : {
30833 : emit_insn (gen_xorv2di3_mask (operands[0],
30834 : operands[2],
30835 : operands[3],
30836 : operands[4],
30837 : operands[1]));
30838 : DONE;
30839 : }
30840 : #undef DONE
30841 : #undef FAIL
30842 : }
30843 : static const uint8_t expand_encoding[] = {
30844 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x4b,
30845 : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30846 : 0x01
30847 : };
30848 : return complete_seq (expand_encoding, operands);
30849 : }
30850 :
30851 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19115 */
30852 : rtx
30853 : gen_xorv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30854 : {
30855 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30856 : start_sequence ();
30857 : {
30858 : #define FAIL return (end_sequence (), nullptr)
30859 : #define DONE return end_sequence ()
30860 : #line 19124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30861 : ix86_fixup_binary_operands_no_copy (XOR, V8DImode, operands);
30862 : #undef DONE
30863 : #undef FAIL
30864 : }
30865 : static const uint8_t expand_encoding[] = {
30866 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4b,
30867 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30868 : 0x04
30869 : };
30870 : return complete_seq (expand_encoding, operands);
30871 : }
30872 :
30873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19537 */
30874 : rtx
30875 : gen_vec_pack_trunc_v8hi (const rtx operand0, const rtx operand1, const rtx operand2)
30876 : {
30877 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30878 : start_sequence ();
30879 : {
30880 : #define FAIL return (end_sequence (), nullptr)
30881 : #define DONE return end_sequence ()
30882 : #line 19542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30883 : {
30884 : rtx op1 = gen_lowpart (V16QImode, operands[1]);
30885 : rtx op2 = gen_lowpart (V16QImode, operands[2]);
30886 : ix86_expand_vec_extract_even_odd (operands[0], op1, op2, 0);
30887 : DONE;
30888 : }
30889 : #undef DONE
30890 : #undef FAIL
30891 : }
30892 : static const uint8_t expand_encoding[] = {
30893 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
30894 : };
30895 : return complete_seq (expand_encoding, operands);
30896 : }
30897 :
30898 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19559 */
30899 : rtx
30900 : gen_vec_pack_trunc_si (const rtx operand0, const rtx operand1, const rtx operand2)
30901 : {
30902 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30903 : start_sequence ();
30904 : {
30905 : #define FAIL return (end_sequence (), nullptr)
30906 : #define DONE return end_sequence ()
30907 : #line 19571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30908 : {
30909 : operands[3] = GEN_INT (GET_MODE_BITSIZE (SImode));
30910 : }
30911 : #undef DONE
30912 : #undef FAIL
30913 : }
30914 : static const uint8_t expand_encoding[] = {
30915 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
30916 : 0x12, 0x4d, 0x12, 0x6f, 0x12, 0x01, 0x02, 0x01,
30917 : 0x03, 0x6f, 0x12, 0x01, 0x01, 0x1a, 0x00, 0x01,
30918 : 0x27, 0x00, 0x81, 0x2f
30919 : };
30920 : return complete_seq (expand_encoding, operands);
30921 : }
30922 :
30923 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20346 */
30924 : extern rtx_insn *gen_split_3466 (rtx_insn *, rtx *);
30925 : rtx_insn *
30926 : gen_split_3466 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30927 : {
30928 : if (dump_file)
30929 : fprintf (dump_file, "Splitting with gen_split_3466 (sse.md:20346)\n");
30930 : start_sequence ();
30931 : static const uint8_t expand_encoding[] = {
30932 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x50, 0x01,
30933 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x01,
30934 : 0x00, 0x01, 0x01, 0x01, 0x03
30935 : };
30936 : return complete_seq (expand_encoding, operands);
30937 : }
30938 :
30939 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20346 */
30940 : extern rtx_insn *gen_split_3468 (rtx_insn *, rtx *);
30941 : rtx_insn *
30942 : gen_split_3468 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30943 : {
30944 : if (dump_file)
30945 : fprintf (dump_file, "Splitting with gen_split_3468 (sse.md:20346)\n");
30946 : start_sequence ();
30947 : static const uint8_t expand_encoding[] = {
30948 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x69, 0x01,
30949 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x01,
30950 : 0x00, 0x01, 0x01, 0x01, 0x03
30951 : };
30952 : return complete_seq (expand_encoding, operands);
30953 : }
30954 :
30955 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20559 */
30956 : rtx
30957 : gen_avx512dq_shuf_f64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
30958 : {
30959 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
30960 : start_sequence ();
30961 : {
30962 : #define FAIL return (end_sequence (), nullptr)
30963 : #define DONE return end_sequence ()
30964 : #line 20567 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30965 : {
30966 : int mask = INTVAL (operands[3]);
30967 : emit_insn (gen_avx512dq_shuf_f64x2_1_mask
30968 : (operands[0], operands[1], operands[2],
30969 : GEN_INT (((mask >> 0) & 1) * 2 + 0),
30970 : GEN_INT (((mask >> 0) & 1) * 2 + 1),
30971 : GEN_INT (((mask >> 1) & 1) * 2 + 4),
30972 : GEN_INT (((mask >> 1) & 1) * 2 + 5),
30973 : operands[4], operands[5]));
30974 : DONE;
30975 : }
30976 : #undef DONE
30977 : #undef FAIL
30978 : }
30979 : static const uint8_t expand_encoding[] = {
30980 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30981 : 0x03, 0x01, 0x04, 0x01, 0x05
30982 : };
30983 : return complete_seq (expand_encoding, operands);
30984 : }
30985 :
30986 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21067 */
30987 : rtx
30988 : gen_avx512vl_pshufd_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30989 : {
30990 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30991 : start_sequence ();
30992 : {
30993 : #define FAIL return (end_sequence (), nullptr)
30994 : #define DONE return end_sequence ()
30995 : #line 21074 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30996 : {
30997 : int mask = INTVAL (operands[2]);
30998 : emit_insn (gen_sse2_pshufd_1_mask (operands[0], operands[1],
30999 : GEN_INT ((mask >> 0) & 3),
31000 : GEN_INT ((mask >> 2) & 3),
31001 : GEN_INT ((mask >> 4) & 3),
31002 : GEN_INT ((mask >> 6) & 3),
31003 : operands[3], operands[4]));
31004 : DONE;
31005 : }
31006 : #undef DONE
31007 : #undef FAIL
31008 : }
31009 : static const uint8_t expand_encoding[] = {
31010 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31011 : 0x03, 0x01, 0x04
31012 : };
31013 : return complete_seq (expand_encoding, operands);
31014 : }
31015 :
31016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21313 */
31017 : rtx
31018 : gen_avx512vl_pshufhwv3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
31019 : {
31020 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
31021 : start_sequence ();
31022 : {
31023 : #define FAIL return (end_sequence (), nullptr)
31024 : #define DONE return end_sequence ()
31025 : #line 21320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31026 : {
31027 : int mask = INTVAL (operands[2]);
31028 : emit_insn (gen_avx2_pshufhw_1_mask (operands[0], operands[1],
31029 : GEN_INT (((mask >> 0) & 3) + 4),
31030 : GEN_INT (((mask >> 2) & 3) + 4),
31031 : GEN_INT (((mask >> 4) & 3) + 4),
31032 : GEN_INT (((mask >> 6) & 3) + 4),
31033 : GEN_INT (((mask >> 0) & 3) + 12),
31034 : GEN_INT (((mask >> 2) & 3) + 12),
31035 : GEN_INT (((mask >> 4) & 3) + 12),
31036 : GEN_INT (((mask >> 6) & 3) + 12),
31037 : operands[3], operands[4]));
31038 : DONE;
31039 : }
31040 : #undef DONE
31041 : #undef FAIL
31042 : }
31043 : static const uint8_t expand_encoding[] = {
31044 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31045 : 0x03, 0x01, 0x04
31046 : };
31047 : return complete_seq (expand_encoding, operands);
31048 : }
31049 :
31050 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21812 */
31051 : extern rtx_insn *gen_split_3478 (rtx_insn *, rtx *);
31052 : rtx_insn *
31053 : gen_split_3478 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31054 : {
31055 : if (dump_file)
31056 : fprintf (dump_file, "Splitting with gen_split_3478 (sse.md:21812)\n");
31057 : start_sequence ();
31058 : #define FAIL return (end_sequence (), nullptr)
31059 : #define DONE return end_sequence ()
31060 : #line 21820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31061 : {
31062 : int offs = INTVAL (operands[2]) * GET_MODE_SIZE (SImode);
31063 :
31064 : operands[1] = adjust_address (operands[1], SImode, offs);
31065 : }
31066 : #undef DONE
31067 : #undef FAIL
31068 : static const uint8_t expand_encoding[] = {
31069 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
31070 : };
31071 : return complete_seq (expand_encoding, operands);
31072 : }
31073 :
31074 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22207 */
31075 : rtx
31076 : gen_vec_unpacks_lo_v32qi (const rtx operand0, const rtx operand1)
31077 : {
31078 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31079 : start_sequence ();
31080 : {
31081 : #define FAIL return (end_sequence (), nullptr)
31082 : #define DONE return end_sequence ()
31083 : #line 22211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31084 : ix86_expand_sse_unpack (operands[0], operands[1], false, false); DONE;
31085 : #undef DONE
31086 : #undef FAIL
31087 : }
31088 : static const uint8_t expand_encoding[] = {
31089 : 0x02, 0x01, 0x00, 0x01, 0x01
31090 : };
31091 : return complete_seq (expand_encoding, operands);
31092 : }
31093 :
31094 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22207 */
31095 : rtx
31096 : gen_vec_unpacks_lo_v8si (const rtx operand0, const rtx operand1)
31097 : {
31098 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31099 : start_sequence ();
31100 : {
31101 : #define FAIL return (end_sequence (), nullptr)
31102 : #define DONE return end_sequence ()
31103 : #line 22211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31104 : ix86_expand_sse_unpack (operands[0], operands[1], false, false); DONE;
31105 : #undef DONE
31106 : #undef FAIL
31107 : }
31108 : static const uint8_t expand_encoding[] = {
31109 : 0x02, 0x01, 0x00, 0x01, 0x01
31110 : };
31111 : return complete_seq (expand_encoding, operands);
31112 : }
31113 :
31114 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22213 */
31115 : rtx
31116 : gen_vec_unpacks_hi_v8si (const rtx operand0, const rtx operand1)
31117 : {
31118 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31119 : start_sequence ();
31120 : {
31121 : #define FAIL return (end_sequence (), nullptr)
31122 : #define DONE return end_sequence ()
31123 : #line 22217 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31124 : ix86_expand_sse_unpack (operands[0], operands[1], false, true); DONE;
31125 : #undef DONE
31126 : #undef FAIL
31127 : }
31128 : static const uint8_t expand_encoding[] = {
31129 : 0x02, 0x01, 0x00, 0x01, 0x01
31130 : };
31131 : return complete_seq (expand_encoding, operands);
31132 : }
31133 :
31134 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22219 */
31135 : rtx
31136 : gen_vec_unpacku_lo_v4si (const rtx operand0, const rtx operand1)
31137 : {
31138 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31139 : start_sequence ();
31140 : {
31141 : #define FAIL return (end_sequence (), nullptr)
31142 : #define DONE return end_sequence ()
31143 : #line 22223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31144 : ix86_expand_sse_unpack (operands[0], operands[1], true, false); DONE;
31145 : #undef DONE
31146 : #undef FAIL
31147 : }
31148 : static const uint8_t expand_encoding[] = {
31149 : 0x02, 0x01, 0x00, 0x01, 0x01
31150 : };
31151 : return complete_seq (expand_encoding, operands);
31152 : }
31153 :
31154 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22252 */
31155 : rtx
31156 : gen_vec_unpacku_hi_v4si (const rtx operand0, const rtx operand1)
31157 : {
31158 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31159 : start_sequence ();
31160 : {
31161 : #define FAIL return (end_sequence (), nullptr)
31162 : #define DONE return end_sequence ()
31163 : #line 22256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31164 : ix86_expand_sse_unpack (operands[0], operands[1], true, true); DONE;
31165 : #undef DONE
31166 : #undef FAIL
31167 : }
31168 : static const uint8_t expand_encoding[] = {
31169 : 0x02, 0x01, 0x00, 0x01, 0x01
31170 : };
31171 : return complete_seq (expand_encoding, operands);
31172 : }
31173 :
31174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22306 */
31175 : rtx
31176 : gen_sse2_uavgv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
31177 : {
31178 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
31179 : start_sequence ();
31180 : {
31181 : #define FAIL return (end_sequence (), nullptr)
31182 : #define DONE return end_sequence ()
31183 : #line 22319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31184 : {
31185 : operands[5] = CONST1_RTX(V16HImode);
31186 : ix86_fixup_binary_operands_no_copy (PLUS, V16QImode, operands);
31187 : }
31188 : #undef DONE
31189 : #undef FAIL
31190 : }
31191 : static const uint8_t expand_encoding[] = {
31192 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x70,
31193 : 0x4f, 0x50, 0x55, 0x3b, 0x55, 0x3b, 0x55, 0x6f,
31194 : 0x55, 0x01, 0x01, 0x6f, 0x55, 0x01, 0x02, 0x01,
31195 : 0x05, 0x27, 0x01, 0x01, 0x03, 0x01, 0x04
31196 : };
31197 : return complete_seq (expand_encoding, operands);
31198 : }
31199 :
31200 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22405 */
31201 : extern rtx_insn *gen_split_3488 (rtx_insn *, rtx *);
31202 : rtx_insn *
31203 : gen_split_3488 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31204 : {
31205 : if (dump_file)
31206 : fprintf (dump_file, "Splitting with gen_split_3488 (sse.md:22405)\n");
31207 : start_sequence ();
31208 : #define FAIL return (end_sequence (), nullptr)
31209 : #define DONE return end_sequence ()
31210 : #line 22417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31211 : operands[1] = gen_lowpart (V4SFmode, operands[1]);
31212 : #undef DONE
31213 : #undef FAIL
31214 : static const uint8_t expand_encoding[] = {
31215 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
31216 : 0x01, 0x32
31217 : };
31218 : return complete_seq (expand_encoding, operands);
31219 : }
31220 :
31221 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22447 */
31222 : extern rtx_insn *gen_split_3497 (rtx_insn *, rtx *);
31223 : rtx_insn *
31224 : gen_split_3497 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31225 : {
31226 : if (dump_file)
31227 : fprintf (dump_file, "Splitting with gen_split_3497 (sse.md:22447)\n");
31228 : start_sequence ();
31229 : #define FAIL return (end_sequence (), nullptr)
31230 : #define DONE return end_sequence ()
31231 : #line 22460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31232 : operands[1] = gen_lowpart (V4SFmode, operands[1]);
31233 : #undef DONE
31234 : #undef FAIL
31235 : static const uint8_t expand_encoding[] = {
31236 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31237 : 0x01, 0x01, 0x01, 0x32
31238 : };
31239 : return complete_seq (expand_encoding, operands);
31240 : }
31241 :
31242 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22466 */
31243 : extern rtx_insn *gen_split_3507 (rtx_insn *, rtx *);
31244 : rtx_insn *
31245 : gen_split_3507 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31246 : {
31247 : if (dump_file)
31248 : fprintf (dump_file, "Splitting with gen_split_3507 (sse.md:22466)\n");
31249 : start_sequence ();
31250 : #define FAIL return (end_sequence (), nullptr)
31251 : #define DONE return end_sequence ()
31252 : #line 22485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31253 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31254 : #undef DONE
31255 : #undef FAIL
31256 : static const uint8_t expand_encoding[] = {
31257 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31258 : 0x01, 0x01, 0x01, 0x32
31259 : };
31260 : return complete_seq (expand_encoding, operands);
31261 : }
31262 :
31263 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22510 */
31264 : extern rtx_insn *gen_split_3517 (rtx_insn *, rtx *);
31265 : rtx_insn *
31266 : gen_split_3517 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31267 : {
31268 : if (dump_file)
31269 : fprintf (dump_file, "Splitting with gen_split_3517 (sse.md:22510)\n");
31270 : start_sequence ();
31271 : #define FAIL return (end_sequence (), nullptr)
31272 : #define DONE return end_sequence ()
31273 : #line 22524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31274 : operands[1] = gen_lowpart (V4SFmode, operands[1]);
31275 : #undef DONE
31276 : #undef FAIL
31277 : static const uint8_t expand_encoding[] = {
31278 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31279 : 0x01, 0x01, 0x01, 0x32
31280 : };
31281 : return complete_seq (expand_encoding, operands);
31282 : }
31283 :
31284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22636 */
31285 : extern rtx_insn *gen_split_3527 (rtx_insn *, rtx *);
31286 : rtx_insn *
31287 : gen_split_3527 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31288 : {
31289 : if (dump_file)
31290 : fprintf (dump_file, "Splitting with gen_split_3527 (sse.md:22636)\n");
31291 : start_sequence ();
31292 : #define FAIL return (end_sequence (), nullptr)
31293 : #define DONE return end_sequence ()
31294 : #line 22647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31295 : {
31296 : operands[2] = gen_reg_rtx (SImode);
31297 : operands[1] = gen_lowpart (V32QImode, operands[1]);
31298 : if (GET_MODE_NUNITS (V32QImode) == 32)
31299 : operands[3] = gen_rtx_NOT (SImode, operands[2]);
31300 : else
31301 : {
31302 : operands[3]
31303 : = gen_int_mode ((HOST_WIDE_INT_1 << GET_MODE_NUNITS (V32QImode)) - 1,
31304 : SImode);
31305 : operands[3] = gen_rtx_XOR (SImode, operands[2], operands[3]);
31306 : }
31307 : }
31308 : #undef DONE
31309 : #undef FAIL
31310 : static const uint8_t expand_encoding[] = {
31311 : 0x02, 0x1f, 0x01, 0x02, 0x1a, 0x11, 0x01, 0x01,
31312 : 0x01, 0x32, 0x1f, 0x01, 0x00, 0x01, 0x03
31313 : };
31314 : return complete_seq (expand_encoding, operands);
31315 : }
31316 :
31317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22815 */
31318 : extern rtx_insn *gen_split_3540 (rtx_insn *, rtx *);
31319 : rtx_insn *
31320 : gen_split_3540 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31321 : {
31322 : if (dump_file)
31323 : fprintf (dump_file, "Splitting with gen_split_3540 (sse.md:22815)\n");
31324 : start_sequence ();
31325 : static const uint8_t expand_encoding[] = {
31326 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x01, 0x01
31327 : };
31328 : return complete_seq (expand_encoding, operands);
31329 : }
31330 :
31331 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22862 */
31332 : extern rtx_insn *gen_split_3545 (rtx_insn *, rtx *);
31333 : rtx_insn *
31334 : gen_split_3545 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31335 : {
31336 : if (dump_file)
31337 : fprintf (dump_file, "Splitting with gen_split_3545 (sse.md:22862)\n");
31338 : start_sequence ();
31339 : #define FAIL return (end_sequence (), nullptr)
31340 : #define DONE return end_sequence ()
31341 : #line 22879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31342 : operands[2] = gen_int_mode (UINTVAL (operands[2]), HImode);
31343 : #undef DONE
31344 : #undef FAIL
31345 : static const uint8_t expand_encoding[] = {
31346 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x01,
31347 : 0x01, 0x01, 0x02
31348 : };
31349 : return complete_seq (expand_encoding, operands);
31350 : }
31351 :
31352 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23384 */
31353 : rtx
31354 : gen_avx2_pmulhrswv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
31355 : {
31356 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
31357 : start_sequence ();
31358 : {
31359 : #define FAIL return (end_sequence (), nullptr)
31360 : #define DONE return end_sequence ()
31361 : #line 23402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31362 : {
31363 : operands[5] = CONST1_RTX(V16HImode);
31364 : ix86_fixup_binary_operands_no_copy (MULT, V16HImode, operands);
31365 : }
31366 : #undef DONE
31367 : #undef FAIL
31368 : }
31369 : static const uint8_t expand_encoding[] = {
31370 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x70,
31371 : 0x55, 0x50, 0x5b, 0x3b, 0x5b, 0x50, 0x5b, 0x3e,
31372 : 0x5b, 0x6e, 0x5b, 0x01, 0x01, 0x6e, 0x5b, 0x01,
31373 : 0x02, 0x27, 0x0e, 0x01, 0x05, 0x27, 0x01, 0x01,
31374 : 0x03, 0x01, 0x04
31375 : };
31376 : return complete_seq (expand_encoding, operands);
31377 : }
31378 :
31379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23860 */
31380 : rtx
31381 : gen_absv64qi2 (const rtx operand0, const rtx operand1)
31382 : {
31383 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31384 : start_sequence ();
31385 : {
31386 : #define FAIL return (end_sequence (), nullptr)
31387 : #define DONE return end_sequence ()
31388 : #line 23865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31389 : {
31390 : if (!TARGET_SSSE3
31391 : || ((V64QImode == V2DImode || V64QImode == V4DImode)
31392 : && !TARGET_AVX512VL))
31393 : {
31394 : ix86_expand_sse2_abs (operands[0], operands[1]);
31395 : DONE;
31396 : }
31397 : }
31398 : #undef DONE
31399 : #undef FAIL
31400 : }
31401 : static const uint8_t expand_encoding[] = {
31402 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x59, 0x01, 0x01
31403 : };
31404 : return complete_seq (expand_encoding, operands);
31405 : }
31406 :
31407 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23860 */
31408 : rtx
31409 : gen_absv4si2 (const rtx operand0, const rtx operand1)
31410 : {
31411 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31412 : start_sequence ();
31413 : {
31414 : #define FAIL return (end_sequence (), nullptr)
31415 : #define DONE return end_sequence ()
31416 : #line 23865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31417 : {
31418 : if (!TARGET_SSSE3
31419 : || ((V4SImode == V2DImode || V4SImode == V4DImode)
31420 : && !TARGET_AVX512VL))
31421 : {
31422 : ix86_expand_sse2_abs (operands[0], operands[1]);
31423 : DONE;
31424 : }
31425 : }
31426 : #undef DONE
31427 : #undef FAIL
31428 : }
31429 : static const uint8_t expand_encoding[] = {
31430 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x51, 0x01, 0x01
31431 : };
31432 : return complete_seq (expand_encoding, operands);
31433 : }
31434 :
31435 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24077 */
31436 : extern rtx_insn *gen_split_3561 (rtx_insn *, rtx *);
31437 : rtx_insn *
31438 : gen_split_3561 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31439 : {
31440 : if (dump_file)
31441 : fprintf (dump_file, "Splitting with gen_split_3561 (sse.md:24077)\n");
31442 : start_sequence ();
31443 : #define FAIL return (end_sequence (), nullptr)
31444 : #define DONE return end_sequence ()
31445 : #line 24092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31446 : operands[3] = gen_lowpart (V4SFmode, operands[3]);
31447 : #undef DONE
31448 : #undef FAIL
31449 : static const uint8_t expand_encoding[] = {
31450 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
31451 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31452 : };
31453 : return complete_seq (expand_encoding, operands);
31454 : }
31455 :
31456 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24135 */
31457 : extern rtx_insn *gen_split_3571 (rtx_insn *, rtx *);
31458 : rtx_insn *
31459 : gen_split_3571 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31460 : {
31461 : if (dump_file)
31462 : fprintf (dump_file, "Splitting with gen_split_3571 (sse.md:24135)\n");
31463 : start_sequence ();
31464 : #define FAIL return (end_sequence (), nullptr)
31465 : #define DONE return end_sequence ()
31466 : #line 24151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31467 : {
31468 : operands[0] = gen_lowpart (V4DFmode, operands[0]);
31469 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31470 : operands[2] = gen_lowpart (V4DFmode, operands[2]);
31471 : operands[3] = gen_lowpart (V4DFmode, operands[3]);
31472 : }
31473 : #undef DONE
31474 : #undef FAIL
31475 : static const uint8_t expand_encoding[] = {
31476 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01,
31477 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31478 : };
31479 : return complete_seq (expand_encoding, operands);
31480 : }
31481 :
31482 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24350 */
31483 : extern rtx_insn *gen_split_3581 (rtx_insn *, rtx *);
31484 : rtx_insn *
31485 : gen_split_3581 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31486 : {
31487 : if (dump_file)
31488 : fprintf (dump_file, "Splitting with gen_split_3581 (sse.md:24350)\n");
31489 : start_sequence ();
31490 : static const uint8_t expand_encoding[] = {
31491 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01,
31492 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31493 : };
31494 : return complete_seq (expand_encoding, operands);
31495 : }
31496 :
31497 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24379 */
31498 : extern rtx_insn *gen_split_3585 (rtx_insn *, rtx *);
31499 : rtx_insn *
31500 : gen_split_3585 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31501 : {
31502 : if (dump_file)
31503 : fprintf (dump_file, "Splitting with gen_split_3585 (sse.md:24379)\n");
31504 : start_sequence ();
31505 : #define FAIL return (end_sequence (), nullptr)
31506 : #define DONE return end_sequence ()
31507 : #line 24393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31508 :
31509 : #undef DONE
31510 : #undef FAIL
31511 : static const uint8_t expand_encoding[] = {
31512 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01,
31513 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31514 : };
31515 : return complete_seq (expand_encoding, operands);
31516 : }
31517 :
31518 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24504 */
31519 : rtx
31520 : gen_avx2_pblendw_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
31521 : {
31522 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
31523 : start_sequence ();
31524 : {
31525 : #define FAIL return (end_sequence (), nullptr)
31526 : #define DONE return end_sequence ()
31527 : #line 24512 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31528 : {
31529 : int mask = INTVAL (operands[3]);
31530 : if (mask == 0)
31531 : emit_move_insn (operands[0], operands[1]);
31532 : else
31533 : {
31534 : rtx tmp = gen_reg_rtx (V16HImode);
31535 : rtx blendw_idx, blendd_idx;
31536 :
31537 : if (mask & 0xff)
31538 : {
31539 : blendw_idx = GEN_INT (mask & 0xff);
31540 : blendd_idx = GEN_INT (15);
31541 : }
31542 : else
31543 : {
31544 : blendw_idx = GEN_INT (mask >> 8 & 0xff);
31545 : blendd_idx = GEN_INT (240);
31546 : }
31547 : emit_insn (gen_avx2_pblendw (tmp, operands[1],
31548 : operands[2], blendw_idx));
31549 :
31550 : rtx op0 = gen_reg_rtx (V8SImode);
31551 : tmp = lowpart_subreg (V8SImode, tmp, V16HImode);
31552 : operands[1] = lowpart_subreg (V8SImode, operands[1], V16HImode);
31553 : emit_insn (gen_avx2_pblenddv8si (op0, operands[1],
31554 : tmp, blendd_idx));
31555 : emit_move_insn (operands[0], lowpart_subreg (V16HImode, op0, V8SImode));
31556 : }
31557 :
31558 : DONE;
31559 : }
31560 : #undef DONE
31561 : #undef FAIL
31562 : }
31563 : static const uint8_t expand_encoding[] = {
31564 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x01,
31565 : 0x02, 0x01, 0x01, 0x01, 0x03
31566 : };
31567 : return complete_seq (expand_encoding, operands);
31568 : }
31569 :
31570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24783 */
31571 : extern rtx_insn *gen_split_3604 (rtx_insn *, rtx *);
31572 : rtx_insn *
31573 : gen_split_3604 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31574 : {
31575 : if (dump_file)
31576 : fprintf (dump_file, "Splitting with gen_split_3604 (sse.md:24783)\n");
31577 : start_sequence ();
31578 : #define FAIL return (end_sequence (), nullptr)
31579 : #define DONE return end_sequence ()
31580 : #line 24802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31581 : {
31582 : operands[0] = lowpart_subreg (V8HImode, operands[0], V16QImode);
31583 : if (MEM_P (operands[1]))
31584 : {
31585 : operands[1] = lowpart_subreg (V8QImode, operands[1], V16QImode);
31586 : operands[1] = gen_rtx_ZERO_EXTEND (V8HImode, operands[1]);
31587 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
31588 : DONE;
31589 : }
31590 : }
31591 : #undef DONE
31592 : #undef FAIL
31593 : static const uint8_t expand_encoding[] = {
31594 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x50, 0x81, 0x0a,
31595 : 0x48, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00,
31596 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
31597 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07
31598 : };
31599 : return complete_seq (expand_encoding, operands);
31600 : }
31601 :
31602 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24965 */
31603 : rtx
31604 : gen_extendv8qiv8si2 (const rtx operand0, const rtx operand1)
31605 : {
31606 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31607 : start_sequence ();
31608 : {
31609 : #define FAIL return (end_sequence (), nullptr)
31610 : #define DONE return end_sequence ()
31611 : #line 24970 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31612 : {
31613 : if (!MEM_P (operands[1]))
31614 : {
31615 : rtx op1 = force_reg (V8QImode, operands[1]);
31616 : op1 = lowpart_subreg (V16QImode, op1, V8QImode);
31617 : emit_insn (gen_avx2_sign_extendv8qiv8si2 (operands[0], op1));
31618 : DONE;
31619 : }
31620 : }
31621 : #undef DONE
31622 : #undef FAIL
31623 : }
31624 : static const uint8_t expand_encoding[] = {
31625 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x56, 0x01, 0x01
31626 : };
31627 : return complete_seq (expand_encoding, operands);
31628 : }
31629 :
31630 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25087 */
31631 : rtx
31632 : gen_extendv16hiv16si2 (const rtx operand0, const rtx operand1)
31633 : {
31634 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31635 : static const uint8_t expand_encoding[] = {
31636 : 0x1f, 0x01, 0x00, 0x6e, 0x5b, 0x01, 0x01
31637 : };
31638 : return expand_rtx (expand_encoding, operands);
31639 : }
31640 :
31641 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25148 */
31642 : extern rtx_insn *gen_split_3622 (rtx_insn *, rtx *);
31643 : rtx_insn *
31644 : gen_split_3622 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31645 : {
31646 : if (dump_file)
31647 : fprintf (dump_file, "Splitting with gen_split_3622 (sse.md:25148)\n");
31648 : start_sequence ();
31649 : #define FAIL return (end_sequence (), nullptr)
31650 : #define DONE return end_sequence ()
31651 : #line 25160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31652 : {
31653 : operands[0] = lowpart_subreg (V8SImode, operands[0], V16HImode);
31654 : operands[1] = lowpart_subreg (V8HImode, operands[1], V16HImode);
31655 : }
31656 : #undef DONE
31657 : #undef FAIL
31658 : static const uint8_t expand_encoding[] = {
31659 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x56, 0x01, 0x01
31660 : };
31661 : return complete_seq (expand_encoding, operands);
31662 : }
31663 :
31664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25280 */
31665 : extern rtx_insn *gen_split_3630 (rtx_insn *, rtx *);
31666 : rtx_insn *
31667 : gen_split_3630 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31668 : {
31669 : if (dump_file)
31670 : fprintf (dump_file, "Splitting with gen_split_3630 (sse.md:25280)\n");
31671 : start_sequence ();
31672 : #define FAIL return (end_sequence (), nullptr)
31673 : #define DONE return end_sequence ()
31674 : #line 25297 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31675 : {
31676 : operands[0] = lowpart_subreg (V4SImode, operands[0], V8HImode);
31677 : if (MEM_P (operands[1]))
31678 : {
31679 : operands[1] = lowpart_subreg (V4HImode, operands[1], V8HImode);
31680 : operands[1] = gen_rtx_ZERO_EXTEND (V4SImode, operands[1]);
31681 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
31682 : DONE;
31683 : }
31684 : }
31685 : #undef DONE
31686 : #undef FAIL
31687 : static const uint8_t expand_encoding[] = {
31688 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x51, 0x81, 0x0a,
31689 : 0x49, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00,
31690 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03
31691 : };
31692 : return complete_seq (expand_encoding, operands);
31693 : }
31694 :
31695 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25480 */
31696 : extern rtx_insn *gen_split_3640 (rtx_insn *, rtx *);
31697 : rtx_insn *
31698 : gen_split_3640 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31699 : {
31700 : if (dump_file)
31701 : fprintf (dump_file, "Splitting with gen_split_3640 (sse.md:25480)\n");
31702 : start_sequence ();
31703 : #define FAIL return (end_sequence (), nullptr)
31704 : #define DONE return end_sequence ()
31705 : #line 25506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31706 : operands[1] = adjust_address_nv (operands[1], V4QImode, 0);
31707 : #undef DONE
31708 : #undef FAIL
31709 : static const uint8_t expand_encoding[] = {
31710 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6e,
31711 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31712 : };
31713 : return complete_seq (expand_encoding, operands);
31714 : }
31715 :
31716 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25602 */
31717 : rtx
31718 : gen_zero_extendv8hiv8di2 (const rtx operand0, const rtx operand1)
31719 : {
31720 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31721 : static const uint8_t expand_encoding[] = {
31722 : 0x1f, 0x01, 0x00, 0x6f, 0x5c, 0x01, 0x01
31723 : };
31724 : return expand_rtx (expand_encoding, operands);
31725 : }
31726 :
31727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25722 */
31728 : extern rtx_insn *gen_split_3649 (rtx_insn *, rtx *);
31729 : rtx_insn *
31730 : gen_split_3649 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31731 : {
31732 : if (dump_file)
31733 : fprintf (dump_file, "Splitting with gen_split_3649 (sse.md:25722)\n");
31734 : start_sequence ();
31735 : #define FAIL return (end_sequence (), nullptr)
31736 : #define DONE return end_sequence ()
31737 : #line 25741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31738 : operands[1] = adjust_address_nv (operands[1], V2HImode, 0);
31739 : #undef DONE
31740 : #undef FAIL
31741 : static const uint8_t expand_encoding[] = {
31742 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x52, 0x01, 0x01
31743 : };
31744 : return complete_seq (expand_encoding, operands);
31745 : }
31746 :
31747 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25832 */
31748 : rtx
31749 : gen_zero_extendv8siv8di2 (const rtx operand0, const rtx operand1)
31750 : {
31751 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31752 : static const uint8_t expand_encoding[] = {
31753 : 0x1f, 0x01, 0x00, 0x6f, 0x5c, 0x01, 0x01
31754 : };
31755 : return expand_rtx (expand_encoding, operands);
31756 : }
31757 :
31758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25920 */
31759 : extern rtx_insn *gen_split_3657 (rtx_insn *, rtx *);
31760 : rtx_insn *
31761 : gen_split_3657 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31762 : {
31763 : if (dump_file)
31764 : fprintf (dump_file, "Splitting with gen_split_3657 (sse.md:25920)\n");
31765 : start_sequence ();
31766 : #define FAIL return (end_sequence (), nullptr)
31767 : #define DONE return end_sequence ()
31768 : #line 25935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31769 : operands[1] = adjust_address_nv (operands[1], V2SImode, 0);
31770 : #undef DONE
31771 : #undef FAIL
31772 : static const uint8_t expand_encoding[] = {
31773 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x52, 0x01, 0x01
31774 : };
31775 : return complete_seq (expand_encoding, operands);
31776 : }
31777 :
31778 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26076 */
31779 : rtx
31780 : gen_sse4_1_ptestzv4si (const rtx operand0, const rtx operand1)
31781 : {
31782 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31783 : static const uint8_t expand_encoding[] = {
31784 : 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02, 0x01,
31785 : 0x00, 0x01, 0x01, 0x81, 0x03
31786 : };
31787 : return expand_rtx (expand_encoding, operands);
31788 : }
31789 :
31790 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26076 */
31791 : rtx
31792 : gen_avx_ptestzv16hi (const rtx operand0, const rtx operand1)
31793 : {
31794 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31795 : static const uint8_t expand_encoding[] = {
31796 : 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02, 0x01,
31797 : 0x00, 0x01, 0x01, 0x81, 0x03
31798 : };
31799 : return expand_rtx (expand_encoding, operands);
31800 : }
31801 :
31802 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26084 */
31803 : rtx
31804 : gen_sse4_1_ptestcv1ti (const rtx operand0, const rtx operand1)
31805 : {
31806 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31807 : static const uint8_t expand_encoding[] = {
31808 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31809 : 0x00, 0x01, 0x01, 0x81, 0x03
31810 : };
31811 : return expand_rtx (expand_encoding, operands);
31812 : }
31813 :
31814 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26092 */
31815 : rtx
31816 : gen_sse4_1_ptestv16qi (const rtx operand0, const rtx operand1)
31817 : {
31818 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31819 : static const uint8_t expand_encoding[] = {
31820 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31821 : 0x00, 0x01, 0x01, 0x81, 0x03
31822 : };
31823 : return expand_rtx (expand_encoding, operands);
31824 : }
31825 :
31826 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26092 */
31827 : rtx
31828 : gen_avx_ptestv4di (const rtx operand0, const rtx operand1)
31829 : {
31830 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31831 : static const uint8_t expand_encoding[] = {
31832 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31833 : 0x00, 0x01, 0x01, 0x81, 0x03
31834 : };
31835 : return expand_rtx (expand_encoding, operands);
31836 : }
31837 :
31838 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26113 */
31839 : extern rtx_insn *gen_split_3669 (rtx_insn *, rtx *);
31840 : rtx_insn *
31841 : gen_split_3669 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31842 : {
31843 : if (dump_file)
31844 : fprintf (dump_file, "Splitting with gen_split_3669 (sse.md:26113)\n");
31845 : start_sequence ();
31846 : static const uint8_t expand_encoding[] = {
31847 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31848 : 0x01, 0x00, 0x01, 0x01, 0x81, 0x03
31849 : };
31850 : return complete_seq (expand_encoding, operands);
31851 : }
31852 :
31853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26127 */
31854 : extern rtx_insn *gen_split_3679 (rtx_insn *, rtx *);
31855 : rtx_insn *
31856 : gen_split_3679 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31857 : {
31858 : if (dump_file)
31859 : fprintf (dump_file, "Splitting with gen_split_3679 (sse.md:26127)\n");
31860 : start_sequence ();
31861 : static const uint8_t expand_encoding[] = {
31862 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01,
31863 : 0x27, 0x00, 0x2a
31864 : };
31865 : return complete_seq (expand_encoding, operands);
31866 : }
31867 :
31868 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26127 */
31869 : extern rtx_insn *gen_split_3689 (rtx_insn *, rtx *);
31870 : rtx_insn *
31871 : gen_split_3689 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31872 : {
31873 : if (dump_file)
31874 : fprintf (dump_file, "Splitting with gen_split_3689 (sse.md:26127)\n");
31875 : start_sequence ();
31876 : static const uint8_t expand_encoding[] = {
31877 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01,
31878 : 0x27, 0x00, 0x2a
31879 : };
31880 : return complete_seq (expand_encoding, operands);
31881 : }
31882 :
31883 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31884 : extern rtx_insn *gen_split_3699 (rtx_insn *, rtx *);
31885 : rtx_insn *
31886 : gen_split_3699 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31887 : {
31888 : if (dump_file)
31889 : fprintf (dump_file, "Splitting with gen_split_3699 (sse.md:26139)\n");
31890 : start_sequence ();
31891 : static const uint8_t expand_encoding[] = {
31892 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31893 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31894 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31895 : };
31896 : return complete_seq (expand_encoding, operands);
31897 : }
31898 :
31899 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31900 : extern rtx_insn *gen_split_3709 (rtx_insn *, rtx *);
31901 : rtx_insn *
31902 : gen_split_3709 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31903 : {
31904 : if (dump_file)
31905 : fprintf (dump_file, "Splitting with gen_split_3709 (sse.md:26139)\n");
31906 : start_sequence ();
31907 : static const uint8_t expand_encoding[] = {
31908 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31909 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31910 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31911 : };
31912 : return complete_seq (expand_encoding, operands);
31913 : }
31914 :
31915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31916 : extern rtx_insn *gen_split_3719 (rtx_insn *, rtx *);
31917 : rtx_insn *
31918 : gen_split_3719 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31919 : {
31920 : if (dump_file)
31921 : fprintf (dump_file, "Splitting with gen_split_3719 (sse.md:26139)\n");
31922 : start_sequence ();
31923 : static const uint8_t expand_encoding[] = {
31924 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31925 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31926 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31927 : };
31928 : return complete_seq (expand_encoding, operands);
31929 : }
31930 :
31931 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31932 : extern rtx_insn *gen_split_3729 (rtx_insn *, rtx *);
31933 : rtx_insn *
31934 : gen_split_3729 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31935 : {
31936 : if (dump_file)
31937 : fprintf (dump_file, "Splitting with gen_split_3729 (sse.md:26139)\n");
31938 : start_sequence ();
31939 : static const uint8_t expand_encoding[] = {
31940 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31941 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31942 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31943 : };
31944 : return complete_seq (expand_encoding, operands);
31945 : }
31946 :
31947 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31948 : extern rtx_insn *gen_split_3739 (rtx_insn *, rtx *);
31949 : rtx_insn *
31950 : gen_split_3739 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31951 : {
31952 : if (dump_file)
31953 : fprintf (dump_file, "Splitting with gen_split_3739 (sse.md:26139)\n");
31954 : start_sequence ();
31955 : static const uint8_t expand_encoding[] = {
31956 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31957 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31958 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31959 : };
31960 : return complete_seq (expand_encoding, operands);
31961 : }
31962 :
31963 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26154 */
31964 : extern rtx_insn *gen_split_3749 (rtx_insn *, rtx *);
31965 : rtx_insn *
31966 : gen_split_3749 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31967 : {
31968 : if (dump_file)
31969 : fprintf (dump_file, "Splitting with gen_split_3749 (sse.md:26154)\n");
31970 : start_sequence ();
31971 : static const uint8_t expand_encoding[] = {
31972 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31973 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x33,
31974 : 0x00, 0x01, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11,
31975 : 0x27, 0x00
31976 : };
31977 : return complete_seq (expand_encoding, operands);
31978 : }
31979 :
31980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26154 */
31981 : extern rtx_insn *gen_split_3759 (rtx_insn *, rtx *);
31982 : rtx_insn *
31983 : gen_split_3759 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31984 : {
31985 : if (dump_file)
31986 : fprintf (dump_file, "Splitting with gen_split_3759 (sse.md:26154)\n");
31987 : start_sequence ();
31988 : static const uint8_t expand_encoding[] = {
31989 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31990 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x33,
31991 : 0x00, 0x01, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11,
31992 : 0x27, 0x00
31993 : };
31994 : return complete_seq (expand_encoding, operands);
31995 : }
31996 :
31997 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26170 */
31998 : extern rtx_insn *gen_split_3769 (rtx_insn *, rtx *);
31999 : rtx_insn *
32000 : gen_split_3769 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32001 : {
32002 : if (dump_file)
32003 : fprintf (dump_file, "Splitting with gen_split_3769 (sse.md:26170)\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, 0x2f,
32008 : 0x39, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27,
32009 : 0x00, 0x01, 0x00, 0x2f
32010 : };
32011 : return complete_seq (expand_encoding, operands);
32012 : }
32013 :
32014 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26193 */
32015 : extern rtx_insn *gen_split_3779 (rtx_insn *, rtx *);
32016 : rtx_insn *
32017 : gen_split_3779 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32018 : {
32019 : if (dump_file)
32020 : fprintf (dump_file, "Splitting with gen_split_3779 (sse.md:26193)\n");
32021 : start_sequence ();
32022 : #define FAIL return (end_sequence (), nullptr)
32023 : #define DONE return end_sequence ()
32024 : #line 26213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32025 : {
32026 : if (MEM_P (operands[0]))
32027 : operands[3] = force_reg (V8SImode, operands[0]);
32028 : else
32029 : operands[3] = operands[0];
32030 : }
32031 : #undef DONE
32032 : #undef FAIL
32033 : static const uint8_t expand_encoding[] = {
32034 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
32035 : 0x01, 0x03, 0x01, 0x03, 0x81, 0x03
32036 : };
32037 : return complete_seq (expand_encoding, operands);
32038 : }
32039 :
32040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26220 */
32041 : rtx
32042 : gen_nearbyintv8df2 (const rtx operand0, const rtx operand1)
32043 : {
32044 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32045 : start_sequence ();
32046 : {
32047 : #define FAIL _Pragma ("GCC error \"nearbyintv8df2 cannot FAIL\"") (void)0
32048 : #define DONE return end_sequence ()
32049 : #line 26227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32050 : operands[2] = GEN_INT (ROUND_MXCSR | ROUND_NO_EXC);
32051 : #undef DONE
32052 : #undef FAIL
32053 : }
32054 : static const uint8_t expand_encoding[] = {
32055 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x01,
32056 : 0x01, 0x01, 0x02, 0x5f
32057 : };
32058 : return complete_seq (expand_encoding, operands);
32059 : }
32060 :
32061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26229 */
32062 : rtx
32063 : gen_rintv4df2 (const rtx operand0, const rtx operand1)
32064 : {
32065 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32066 : start_sequence ();
32067 : {
32068 : #define FAIL _Pragma ("GCC error \"rintv4df2 cannot FAIL\"") (void)0
32069 : #define DONE return end_sequence ()
32070 : #line 26236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32071 : operands[2] = GEN_INT (ROUND_MXCSR);
32072 : #undef DONE
32073 : #undef FAIL
32074 : }
32075 : static const uint8_t expand_encoding[] = {
32076 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01,
32077 : 0x01, 0x01, 0x02, 0x5f
32078 : };
32079 : return complete_seq (expand_encoding, operands);
32080 : }
32081 :
32082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26301 */
32083 : rtx
32084 : gen_avx_roundpd_vec_pack_sfix256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32085 : {
32086 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32087 : start_sequence ();
32088 : {
32089 : #define FAIL return (end_sequence (), nullptr)
32090 : #define DONE return end_sequence ()
32091 : #line 26307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32092 : {
32093 : rtx tmp0, tmp1;
32094 :
32095 : if (V4DFmode == V2DFmode
32096 : && TARGET_AVX && !TARGET_PREFER_AVX128 && optimize_insn_for_speed_p ())
32097 : {
32098 : rtx tmp2 = gen_reg_rtx (V4DFmode);
32099 :
32100 : tmp0 = gen_reg_rtx (V4DFmode);
32101 : tmp1 = force_reg (V2DFmode, operands[1]);
32102 :
32103 : emit_insn (gen_avx_vec_concatv4df (tmp0, tmp1, operands[2]));
32104 : emit_insn (gen_avx_roundpd256 (tmp2, tmp0, operands[3]));
32105 : emit_insn (gen_fix_truncv4dfv4si2 (operands[0], tmp2));
32106 : }
32107 : else
32108 : {
32109 : tmp0 = gen_reg_rtx (V4DFmode);
32110 : tmp1 = gen_reg_rtx (V4DFmode);
32111 :
32112 : emit_insn
32113 : (gen_avx_roundpd256 (tmp0, operands[1],
32114 : operands[3]));
32115 : emit_insn
32116 : (gen_avx_roundpd256 (tmp1, operands[2],
32117 : operands[3]));
32118 : emit_insn
32119 : (gen_vec_pack_sfix_trunc_v4df (operands[0], tmp0, tmp1));
32120 : }
32121 : DONE;
32122 : }
32123 : #undef DONE
32124 : #undef FAIL
32125 : }
32126 : static const uint8_t expand_encoding[] = {
32127 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32128 : 0x03
32129 : };
32130 : return complete_seq (expand_encoding, operands);
32131 : }
32132 :
32133 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26434 */
32134 : rtx
32135 : gen_lfloorv8dfv8di2 (const rtx operand0, const rtx operand1)
32136 : {
32137 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32138 : start_sequence ();
32139 : {
32140 : #define FAIL _Pragma ("GCC error \"lfloorv8dfv8di2 cannot FAIL\"") (void)0
32141 : #define DONE return end_sequence ()
32142 : #line 26438 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32143 : {
32144 : rtx tmp = gen_reg_rtx (V8DFmode);
32145 : emit_insn (gen_floorv8df2 (tmp, operands[1]));
32146 : emit_insn (gen_fix_truncv8dfv8di2 (operands[0], tmp));
32147 : DONE;
32148 : }
32149 : #undef DONE
32150 : #undef FAIL
32151 : }
32152 : static const uint8_t expand_encoding[] = {
32153 : 0x02, 0x01, 0x00, 0x01, 0x01
32154 : };
32155 : return complete_seq (expand_encoding, operands);
32156 : }
32157 :
32158 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26445 */
32159 : rtx
32160 : gen_ceilv4df2 (const rtx operand0, const rtx operand1)
32161 : {
32162 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32163 : start_sequence ();
32164 : {
32165 : #define FAIL _Pragma ("GCC error \"ceilv4df2 cannot FAIL\"") (void)0
32166 : #define DONE return end_sequence ()
32167 : #line 26452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32168 : operands[2] = GEN_INT (ROUND_CEIL | ROUND_NO_EXC);
32169 : #undef DONE
32170 : #undef FAIL
32171 : }
32172 : static const uint8_t expand_encoding[] = {
32173 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01,
32174 : 0x01, 0x01, 0x02, 0x5f
32175 : };
32176 : return complete_seq (expand_encoding, operands);
32177 : }
32178 :
32179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26465 */
32180 : rtx
32181 : gen_lceilv2dfv2di2 (const rtx operand0, const rtx operand1)
32182 : {
32183 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32184 : start_sequence ();
32185 : {
32186 : #define FAIL _Pragma ("GCC error \"lceilv2dfv2di2 cannot FAIL\"") (void)0
32187 : #define DONE return end_sequence ()
32188 : #line 26469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32189 : {
32190 : rtx tmp = gen_reg_rtx (V2DFmode);
32191 : emit_insn (gen_ceilv2df2 (tmp, operands[1]));
32192 : emit_insn (gen_fix_truncv2dfv2di2 (operands[0], tmp));
32193 : DONE;
32194 : }
32195 : #undef DONE
32196 : #undef FAIL
32197 : }
32198 : static const uint8_t expand_encoding[] = {
32199 : 0x02, 0x01, 0x00, 0x01, 0x01
32200 : };
32201 : return complete_seq (expand_encoding, operands);
32202 : }
32203 :
32204 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26485 */
32205 : rtx
32206 : gen_roundv16hf2 (const rtx operand0, const rtx operand1)
32207 : {
32208 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1 };
32209 : start_sequence ();
32210 : {
32211 : #define FAIL _Pragma ("GCC error \"roundv16hf2 cannot FAIL\"") (void)0
32212 : #define DONE return end_sequence ()
32213 : #line 26495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32214 : {
32215 : machine_mode scalar_mode;
32216 : const struct real_format *fmt;
32217 : REAL_VALUE_TYPE pred_half, half_minus_pred_half;
32218 : rtx half, vec_half;
32219 :
32220 : scalar_mode = GET_MODE_INNER (V16HFmode);
32221 :
32222 : /* load nextafter (0.5, 0.0) */
32223 : fmt = REAL_MODE_FORMAT (scalar_mode);
32224 : real_2expN (&half_minus_pred_half, -(fmt->p) - 1, scalar_mode);
32225 : real_arithmetic (&pred_half, MINUS_EXPR, &dconsthalf, &half_minus_pred_half);
32226 : half = const_double_from_real_value (pred_half, scalar_mode);
32227 :
32228 : vec_half = ix86_build_const_vector (V16HFmode, true, half);
32229 : vec_half = force_reg (V16HFmode, vec_half);
32230 :
32231 : operands[2] = gen_reg_rtx (V16HFmode);
32232 : emit_insn (gen_copysignv16hf3 (operands[2], vec_half, operands[1]));
32233 :
32234 : operands[3] = gen_reg_rtx (V16HFmode);
32235 : operands[4] = GEN_INT (ROUND_TRUNC);
32236 : }
32237 : #undef DONE
32238 : #undef FAIL
32239 : }
32240 : static const uint8_t expand_encoding[] = {
32241 : 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x6e, 0x01, 0x01,
32242 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02,
32243 : 0x01, 0x03, 0x01, 0x04, 0x5f
32244 : };
32245 : return complete_seq (expand_encoding, operands);
32246 : }
32247 :
32248 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26530 */
32249 : rtx
32250 : gen_lroundv16sfv16si2 (const rtx operand0, const rtx operand1)
32251 : {
32252 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32253 : start_sequence ();
32254 : {
32255 : #define FAIL _Pragma ("GCC error \"lroundv16sfv16si2 cannot FAIL\"") (void)0
32256 : #define DONE return end_sequence ()
32257 : #line 26534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32258 : {
32259 : rtx tmp = gen_reg_rtx (V16SFmode);
32260 : emit_insn (gen_roundv16sf2 (tmp, operands[1]));
32261 : emit_insn (gen_fix_truncv16sfv16si2 (operands[0], tmp));
32262 : DONE;
32263 : }
32264 : #undef DONE
32265 : #undef FAIL
32266 : }
32267 : static const uint8_t expand_encoding[] = {
32268 : 0x02, 0x01, 0x00, 0x01, 0x01
32269 : };
32270 : return complete_seq (expand_encoding, operands);
32271 : }
32272 :
32273 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26555 */
32274 : rtx
32275 : gen_roundv4df2_vec_pack_sfix (const rtx operand0, const rtx operand1, const rtx operand2)
32276 : {
32277 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32278 : start_sequence ();
32279 : {
32280 : #define FAIL return (end_sequence (), nullptr)
32281 : #define DONE return end_sequence ()
32282 : #line 26560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32283 : {
32284 : rtx tmp0, tmp1;
32285 :
32286 : if (V4DFmode == V2DFmode
32287 : && TARGET_AVX && !TARGET_PREFER_AVX128 && optimize_insn_for_speed_p ())
32288 : {
32289 : rtx tmp2 = gen_reg_rtx (V4DFmode);
32290 :
32291 : tmp0 = gen_reg_rtx (V4DFmode);
32292 : tmp1 = force_reg (V2DFmode, operands[1]);
32293 :
32294 : emit_insn (gen_avx_vec_concatv4df (tmp0, tmp1, operands[2]));
32295 : emit_insn (gen_roundv4df2 (tmp2, tmp0));
32296 : emit_insn (gen_fix_truncv4dfv4si2 (operands[0], tmp2));
32297 : }
32298 : else
32299 : {
32300 : tmp0 = gen_reg_rtx (V4DFmode);
32301 : tmp1 = gen_reg_rtx (V4DFmode);
32302 :
32303 : emit_insn (gen_roundv4df2 (tmp0, operands[1]));
32304 : emit_insn (gen_roundv4df2 (tmp1, operands[2]));
32305 :
32306 : emit_insn
32307 : (gen_vec_pack_sfix_trunc_v4df (operands[0], tmp0, tmp1));
32308 : }
32309 : DONE;
32310 : }
32311 : #undef DONE
32312 : #undef FAIL
32313 : }
32314 : static const uint8_t expand_encoding[] = {
32315 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32316 : };
32317 : return complete_seq (expand_encoding, operands);
32318 : }
32319 :
32320 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27001 */
32321 : extern rtx_insn *gen_split_3796 (rtx_insn *, rtx *);
32322 : rtx_insn *
32323 : gen_split_3796 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32324 : {
32325 : if (dump_file)
32326 : fprintf (dump_file, "Splitting with gen_split_3796 (sse.md:27001)\n");
32327 : start_sequence ();
32328 : static const uint8_t expand_encoding[] = {
32329 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x6a, 0x01, 0x03,
32330 : 0x01, 0x02, 0x01, 0x01
32331 : };
32332 : return complete_seq (expand_encoding, operands);
32333 : }
32334 :
32335 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27013 */
32336 : extern rtx_insn *gen_split_3806 (rtx_insn *, rtx *);
32337 : rtx_insn *
32338 : gen_split_3806 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32339 : {
32340 : if (dump_file)
32341 : fprintf (dump_file, "Splitting with gen_split_3806 (sse.md:27013)\n");
32342 : start_sequence ();
32343 : static const uint8_t expand_encoding[] = {
32344 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x51, 0x01, 0x03,
32345 : 0x01, 0x01, 0x01, 0x02
32346 : };
32347 : return complete_seq (expand_encoding, operands);
32348 : }
32349 :
32350 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27013 */
32351 : extern rtx_insn *gen_split_3816 (rtx_insn *, rtx *);
32352 : rtx_insn *
32353 : gen_split_3816 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32354 : {
32355 : if (dump_file)
32356 : fprintf (dump_file, "Splitting with gen_split_3816 (sse.md:27013)\n");
32357 : start_sequence ();
32358 : static const uint8_t expand_encoding[] = {
32359 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x6c, 0x01, 0x03,
32360 : 0x01, 0x01, 0x01, 0x02
32361 : };
32362 : return complete_seq (expand_encoding, operands);
32363 : }
32364 :
32365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27416 */
32366 : rtx
32367 : gen_vrotrv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32368 : {
32369 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32370 : start_sequence ();
32371 : {
32372 : #define FAIL return (end_sequence (), nullptr)
32373 : #define DONE return end_sequence ()
32374 : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32375 : {
32376 : rtx reg = gen_reg_rtx (V2DImode);
32377 : emit_insn (gen_negv2di2 (reg, operands[2]));
32378 : emit_insn (gen_xop_vrotlv2di3 (operands[0], operands[1], reg));
32379 : DONE;
32380 : }
32381 : #undef DONE
32382 : #undef FAIL
32383 : }
32384 : static const uint8_t expand_encoding[] = {
32385 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32386 : };
32387 : return complete_seq (expand_encoding, operands);
32388 : }
32389 :
32390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27458 */
32391 : rtx
32392 : gen_vlshrv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32393 : {
32394 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32395 : start_sequence ();
32396 : {
32397 : #define FAIL return (end_sequence (), nullptr)
32398 : #define DONE return end_sequence ()
32399 : #line 27464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32400 : {
32401 : if (TARGET_XOP)
32402 : {
32403 : rtx neg = gen_reg_rtx (V16QImode);
32404 : emit_insn (gen_negv16qi2 (neg, operands[2]));
32405 : emit_insn (gen_xop_shlv16qi3 (operands[0], operands[1], neg));
32406 : DONE;
32407 : }
32408 : else if (V16QImode == V16QImode)
32409 : {
32410 : ix86_expand_vecop_qihi (LSHIFTRT, operands[0], operands[1], operands[2]);
32411 : DONE;
32412 : }
32413 : }
32414 : #undef DONE
32415 : #undef FAIL
32416 : }
32417 : static const uint8_t expand_encoding[] = {
32418 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x4f, 0x01, 0x01,
32419 : 0x01, 0x02
32420 : };
32421 : return complete_seq (expand_encoding, operands);
32422 : }
32423 :
32424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27495 */
32425 : rtx
32426 : gen_vlshrv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32427 : {
32428 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32429 : start_sequence ();
32430 : {
32431 : #define FAIL return (end_sequence (), nullptr)
32432 : #define DONE return end_sequence ()
32433 : #line 27501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32434 : {
32435 : if (V32HImode == V32QImode || V32HImode == V64QImode)
32436 : {
32437 : ix86_expand_vecop_qihi (LSHIFTRT, operands[0], operands[1], operands[2]);
32438 : DONE;
32439 : }
32440 : }
32441 : #undef DONE
32442 : #undef FAIL
32443 : }
32444 : static const uint8_t expand_encoding[] = {
32445 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x5a, 0x01, 0x01,
32446 : 0x01, 0x02
32447 : };
32448 : return complete_seq (expand_encoding, operands);
32449 : }
32450 :
32451 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27551 */
32452 : rtx
32453 : gen_vashrv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32454 : {
32455 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32456 : start_sequence ();
32457 : {
32458 : #define FAIL return (end_sequence (), nullptr)
32459 : #define DONE return end_sequence ()
32460 : #line 27557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32461 : {
32462 : if (TARGET_XOP)
32463 : {
32464 : rtx neg = gen_reg_rtx (V16QImode);
32465 : emit_insn (gen_negv16qi2 (neg, operands[2]));
32466 : emit_insn (gen_xop_shav16qi3 (operands[0], operands[1], neg));
32467 : DONE;
32468 : }
32469 : else if(V16QImode == V16QImode)
32470 : {
32471 : ix86_expand_vecop_qihi (ASHIFTRT, operands[0],operands[1], operands[2]);
32472 : DONE;
32473 : }
32474 : }
32475 : #undef DONE
32476 : #undef FAIL
32477 : }
32478 : static const uint8_t expand_encoding[] = {
32479 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x4f, 0x01, 0x01,
32480 : 0x01, 0x02
32481 : };
32482 : return complete_seq (expand_encoding, operands);
32483 : }
32484 :
32485 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27713 */
32486 : rtx
32487 : gen_lshrv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32488 : {
32489 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32490 : start_sequence ();
32491 : {
32492 : #define FAIL return (end_sequence (), nullptr)
32493 : #define DONE return end_sequence ()
32494 : #line 27719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32495 : {
32496 : if (TARGET_XOP && V64QImode == V16QImode)
32497 : {
32498 : bool negate = false;
32499 : rtx (*gen) (rtx, rtx, rtx);
32500 : rtx tmp, par;
32501 : int i;
32502 :
32503 : if (LSHIFTRT != ASHIFT)
32504 : {
32505 : if (CONST_INT_P (operands[2]))
32506 : operands[2] = GEN_INT (-INTVAL (operands[2]));
32507 : else
32508 : negate = true;
32509 : }
32510 : par = gen_rtx_PARALLEL (V16QImode, rtvec_alloc (16));
32511 : tmp = lowpart_subreg (QImode, operands[2], SImode);
32512 : for (i = 0; i < 16; i++)
32513 : XVECEXP (par, 0, i) = tmp;
32514 :
32515 : tmp = gen_reg_rtx (V16QImode);
32516 : emit_insn (gen_vec_initv16qiqi (tmp, par));
32517 :
32518 : if (negate)
32519 : emit_insn (gen_negv16qi2 (tmp, tmp));
32520 :
32521 : gen = (LSHIFTRT == LSHIFTRT ? gen_xop_shlv16qi3 : gen_xop_shav16qi3);
32522 : emit_insn (gen (operands[0], operands[1], tmp));
32523 : }
32524 : else if (TARGET_GFNI && CONST_INT_P (operands[2])
32525 : && (64 == 64
32526 : || !(INTVAL (operands[2]) == 7 && LSHIFTRT == ASHIFTRT)))
32527 : {
32528 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2],
32529 : LSHIFTRT);
32530 : emit_insn (gen_vgf2p8affineqb_v64qi (operands[0], operands[1], matrix,
32531 : const0_rtx));
32532 : }
32533 : else
32534 : ix86_expand_vecop_qihi (LSHIFTRT, operands[0], operands[1], operands[2]);
32535 : DONE;
32536 : }
32537 : #undef DONE
32538 : #undef FAIL
32539 : }
32540 : static const uint8_t expand_encoding[] = {
32541 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x59, 0x01, 0x01,
32542 : 0x01, 0x02
32543 : };
32544 : return complete_seq (expand_encoding, operands);
32545 : }
32546 :
32547 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27762 */
32548 : rtx
32549 : gen_rotrv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32550 : {
32551 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32552 : start_sequence ();
32553 : {
32554 : #define FAIL return (end_sequence (), nullptr)
32555 : #define DONE return end_sequence ()
32556 : #line 27768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32557 : {
32558 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2], ROTATERT);
32559 : emit_insn (gen_vgf2p8affineqb_v32qi (operands[0], operands[1], matrix,
32560 : const0_rtx));
32561 : DONE;
32562 : }
32563 : #undef DONE
32564 : #undef FAIL
32565 : }
32566 : static const uint8_t expand_encoding[] = {
32567 : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x54, 0x01, 0x01,
32568 : 0x01, 0x02
32569 : };
32570 : return complete_seq (expand_encoding, operands);
32571 : }
32572 :
32573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28258 */
32574 : extern rtx_insn *gen_split_3819 (rtx_insn *, rtx *);
32575 : rtx_insn *
32576 : gen_split_3819 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32577 : {
32578 : if (dump_file)
32579 : fprintf (dump_file, "Splitting with gen_split_3819 (sse.md:28258)\n");
32580 : start_sequence ();
32581 : #define FAIL return (end_sequence (), nullptr)
32582 : #define DONE return end_sequence ()
32583 : #line 28269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32584 : {
32585 : rtx op0 = operands[0], op1 = operands[1];
32586 : int elt = INTVAL (operands[3]);
32587 :
32588 : if (REG_P (op1))
32589 : {
32590 : int mask;
32591 :
32592 : if (TARGET_AVX2 && elt == 0)
32593 : {
32594 : emit_insn (gen_vec_dupv4df (op0, gen_lowpart (DFmode,
32595 : op1)));
32596 : DONE;
32597 : }
32598 :
32599 : /* Shuffle element we care about into all elements of the 128-bit lane.
32600 : The other lane gets shuffled too, but we don't care. */
32601 : if (V4DFmode == V4DFmode)
32602 : mask = (elt & 1 ? 15 : 0);
32603 : else
32604 : mask = (elt & 3) * 0x55;
32605 : emit_insn (gen_avx_vpermilv4df (op0, op1, GEN_INT (mask)));
32606 :
32607 : /* Shuffle the lane we care about into both lanes of the dest. */
32608 : mask = (elt / (4 / 2)) * 0x11;
32609 : if (EXT_REX_SSE_REG_P (op0))
32610 : {
32611 : /* There is no EVEX VPERM2F128, but we can use either VBROADCASTSS
32612 : or VSHUFF128. */
32613 : gcc_assert (V4DFmode == V8SFmode);
32614 : if ((mask & 1) == 0)
32615 : emit_insn (gen_avx2_vec_dupv8sf (op0,
32616 : gen_lowpart (V4SFmode, op0)));
32617 : else
32618 : emit_insn (gen_avx512vl_shuf_f32x4_1 (op0, op0, op0,
32619 : GEN_INT (4), GEN_INT (5),
32620 : GEN_INT (6), GEN_INT (7),
32621 : GEN_INT (12), GEN_INT (13),
32622 : GEN_INT (14), GEN_INT (15)));
32623 : DONE;
32624 : }
32625 :
32626 : emit_insn (gen_avx_vperm2f128v4df3 (op0, op0, op0, GEN_INT (mask)));
32627 : DONE;
32628 : }
32629 :
32630 : operands[1] = adjust_address (op1, DFmode,
32631 : elt * GET_MODE_SIZE (DFmode));
32632 : }
32633 : #undef DONE
32634 : #undef FAIL
32635 : static const uint8_t expand_encoding[] = {
32636 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x70, 0x01,
32637 : 0x01
32638 : };
32639 : return complete_seq (expand_encoding, operands);
32640 : }
32641 :
32642 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28446 */
32643 : rtx
32644 : gen_avx512f_permv8df (const rtx operand0, const rtx operand1, const rtx operand2)
32645 : {
32646 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32647 : start_sequence ();
32648 : {
32649 : #define FAIL return (end_sequence (), nullptr)
32650 : #define DONE return end_sequence ()
32651 : #line 28451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32652 : {
32653 : int mask = INTVAL (operands[2]);
32654 : emit_insn (gen_avx512f_permv8df_1 (operands[0], operands[1],
32655 : GEN_INT ((mask >> 0) & 3),
32656 : GEN_INT ((mask >> 2) & 3),
32657 : GEN_INT ((mask >> 4) & 3),
32658 : GEN_INT ((mask >> 6) & 3),
32659 : GEN_INT (((mask >> 0) & 3) + 4),
32660 : GEN_INT (((mask >> 2) & 3) + 4),
32661 : GEN_INT (((mask >> 4) & 3) + 4),
32662 : GEN_INT (((mask >> 6) & 3) + 4)));
32663 : DONE;
32664 : }
32665 : #undef DONE
32666 : #undef FAIL
32667 : }
32668 : static const uint8_t expand_encoding[] = {
32669 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32670 : };
32671 : return complete_seq (expand_encoding, operands);
32672 : }
32673 :
32674 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28841 */
32675 : extern rtx_insn *gen_split_3827 (rtx_insn *, rtx *);
32676 : rtx_insn *
32677 : gen_split_3827 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32678 : {
32679 : if (dump_file)
32680 : fprintf (dump_file, "Splitting with gen_split_3827 (sse.md:28841)\n");
32681 : start_sequence ();
32682 : #define FAIL return (end_sequence (), nullptr)
32683 : #define DONE return end_sequence ()
32684 : #line 28854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32685 : {
32686 : emit_insn (gen_vec_setv4si_0 (gen_lowpart (V4SImode, operands[0]),
32687 : CONST0_RTX (V4SImode),
32688 : gen_lowpart (SImode, operands[1])));
32689 : emit_insn (gen_avx2_pbroadcastv16hf (operands[0],
32690 : gen_lowpart (V8HFmode,
32691 : operands[0])));
32692 : DONE;
32693 : }
32694 : #undef DONE
32695 : #undef FAIL
32696 : static const uint8_t expand_encoding[] = {
32697 : 0x01, 0x27, 0x00
32698 : };
32699 : return complete_seq (expand_encoding, operands);
32700 : }
32701 :
32702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28902 */
32703 : extern rtx_insn *gen_split_3837 (rtx_insn *, rtx *);
32704 : rtx_insn *
32705 : gen_split_3837 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32706 : {
32707 : if (dump_file)
32708 : fprintf (dump_file, "Splitting with gen_split_3837 (sse.md:28902)\n");
32709 : start_sequence ();
32710 : static const uint8_t expand_encoding[] = {
32711 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x01,
32712 : 0x01, 0x01, 0x01
32713 : };
32714 : return complete_seq (expand_encoding, operands);
32715 : }
32716 :
32717 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32718 : rtx
32719 : gen_avx512f_vpermi2varv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32720 : {
32721 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32722 : start_sequence ();
32723 : {
32724 : #define FAIL return (end_sequence (), nullptr)
32725 : #define DONE return end_sequence ()
32726 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32727 : {
32728 : operands[2] = force_reg (V8DImode, operands[2]);
32729 : operands[5] = gen_lowpart (V8DFmode, operands[2]);
32730 : }
32731 : #undef DONE
32732 : #undef FAIL
32733 : }
32734 : static const uint8_t expand_encoding[] = {
32735 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a,
32736 : 0x75, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32737 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32738 : };
32739 : return complete_seq (expand_encoding, operands);
32740 : }
32741 :
32742 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32743 : rtx
32744 : gen_avx512vl_vpermi2varv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32745 : {
32746 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32747 : start_sequence ();
32748 : {
32749 : #define FAIL return (end_sequence (), nullptr)
32750 : #define DONE return end_sequence ()
32751 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32752 : {
32753 : operands[2] = force_reg (V16HImode, operands[2]);
32754 : operands[5] = gen_lowpart (V16HImode, operands[2]);
32755 : }
32756 : #undef DONE
32757 : #undef FAIL
32758 : }
32759 : static const uint8_t expand_encoding[] = {
32760 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a,
32761 : 0x55, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32762 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32763 : };
32764 : return complete_seq (expand_encoding, operands);
32765 : }
32766 :
32767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32768 : rtx
32769 : gen_avx512vl_vpermt2varv8sf3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32770 : {
32771 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32772 : start_sequence ();
32773 : {
32774 : #define FAIL return (end_sequence (), nullptr)
32775 : #define DONE return end_sequence ()
32776 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32777 : {
32778 : emit_insn (gen_avx512vl_vpermt2varv8sf3_maskz_1 (
32779 : operands[0], operands[1], operands[2], operands[3],
32780 : CONST0_RTX (V8SFmode), operands[4]));
32781 : DONE;
32782 : }
32783 : #undef DONE
32784 : #undef FAIL
32785 : }
32786 : static const uint8_t expand_encoding[] = {
32787 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32788 : 0x03, 0x01, 0x04
32789 : };
32790 : return complete_seq (expand_encoding, operands);
32791 : }
32792 :
32793 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32794 : rtx
32795 : gen_avx512bw_vpermt2varv64qi3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32796 : {
32797 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32798 : start_sequence ();
32799 : {
32800 : #define FAIL return (end_sequence (), nullptr)
32801 : #define DONE return end_sequence ()
32802 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32803 : {
32804 : emit_insn (gen_avx512bw_vpermt2varv64qi3_maskz_1 (
32805 : operands[0], operands[1], operands[2], operands[3],
32806 : CONST0_RTX (V64QImode), operands[4]));
32807 : DONE;
32808 : }
32809 : #undef DONE
32810 : #undef FAIL
32811 : }
32812 : static const uint8_t expand_encoding[] = {
32813 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32814 : 0x03, 0x01, 0x04
32815 : };
32816 : return complete_seq (expand_encoding, operands);
32817 : }
32818 :
32819 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29302 */
32820 : rtx
32821 : gen_avx_vinsertf128v32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32822 : {
32823 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32824 : start_sequence ();
32825 : {
32826 : #define FAIL return (end_sequence (), nullptr)
32827 : #define DONE return end_sequence ()
32828 : #line 29308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32829 : {
32830 : rtx (*insn)(rtx, rtx, rtx);
32831 :
32832 : switch (INTVAL (operands[3]))
32833 : {
32834 : case 0:
32835 : insn = gen_vec_set_lo_v32qi;
32836 : break;
32837 : case 1:
32838 : insn = gen_vec_set_hi_v32qi;
32839 : break;
32840 : default:
32841 : gcc_unreachable ();
32842 : }
32843 :
32844 : emit_insn (insn (operands[0], operands[1], operands[2]));
32845 : DONE;
32846 : }
32847 : #undef DONE
32848 : #undef FAIL
32849 : }
32850 : static const uint8_t expand_encoding[] = {
32851 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32852 : 0x03
32853 : };
32854 : return complete_seq (expand_encoding, operands);
32855 : }
32856 :
32857 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29568 */
32858 : rtx
32859 : gen_maskloadv4sfv4si_1 (const rtx operand0, const rtx operand1, const rtx operand2)
32860 : {
32861 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32862 : static const uint8_t expand_encoding[] = {
32863 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01, 0x02,
32864 : 0x01, 0x01, 0x30
32865 : };
32866 : return expand_rtx (expand_encoding, operands);
32867 : }
32868 :
32869 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29568 */
32870 : rtx
32871 : gen_maskloadv8siv8si_1 (const rtx operand0, const rtx operand1, const rtx operand2)
32872 : {
32873 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32874 : static const uint8_t expand_encoding[] = {
32875 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x01, 0x02,
32876 : 0x01, 0x01, 0x30
32877 : };
32878 : return expand_rtx (expand_encoding, operands);
32879 : }
32880 :
32881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29591 */
32882 : rtx
32883 : gen_maskloadv16sihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32884 : {
32885 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32886 : static const uint8_t expand_encoding[] = {
32887 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
32888 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32889 : 0x02
32890 : };
32891 : return expand_rtx (expand_encoding, operands);
32892 : }
32893 :
32894 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29591 */
32895 : rtx
32896 : gen_maskloadv4diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32897 : {
32898 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32899 : static const uint8_t expand_encoding[] = {
32900 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
32901 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32902 : 0x02
32903 : };
32904 : return expand_rtx (expand_encoding, operands);
32905 : }
32906 :
32907 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29601 */
32908 : rtx
32909 : gen_maskloadv32qisi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32910 : {
32911 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32912 : static const uint8_t expand_encoding[] = {
32913 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
32914 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32915 : 0x02
32916 : };
32917 : return expand_rtx (expand_encoding, operands);
32918 : }
32919 :
32920 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29611 */
32921 : rtx
32922 : gen_maskstorev4sfv4si (const rtx operand0, const rtx operand1, const rtx operand2)
32923 : {
32924 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32925 : static const uint8_t expand_encoding[] = {
32926 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x02,
32927 : 0x01, 0x01, 0x01, 0x00, 0x30
32928 : };
32929 : return expand_rtx (expand_encoding, operands);
32930 : }
32931 :
32932 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29620 */
32933 : rtx
32934 : gen_maskstorev16sihi (const rtx operand0, const rtx operand1, const rtx operand2)
32935 : {
32936 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32937 : static const uint8_t expand_encoding[] = {
32938 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
32939 : 0x01, 0x00, 0x01, 0x02, 0x30
32940 : };
32941 : return expand_rtx (expand_encoding, operands);
32942 : }
32943 :
32944 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29620 */
32945 : rtx
32946 : gen_maskstorev4dfqi (const rtx operand0, const rtx operand1, const rtx operand2)
32947 : {
32948 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32949 : static const uint8_t expand_encoding[] = {
32950 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
32951 : 0x01, 0x00, 0x01, 0x02, 0x30
32952 : };
32953 : return expand_rtx (expand_encoding, operands);
32954 : }
32955 :
32956 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29629 */
32957 : rtx
32958 : gen_maskstorev8hfqi (const rtx operand0, const rtx operand1, const rtx operand2)
32959 : {
32960 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32961 : static const uint8_t expand_encoding[] = {
32962 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x03, 0x01, 0x01,
32963 : 0x01, 0x00, 0x01, 0x02, 0x30
32964 : };
32965 : return expand_rtx (expand_encoding, operands);
32966 : }
32967 :
32968 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
32969 : extern rtx_insn *gen_split_3849 (rtx_insn *, rtx *);
32970 : rtx_insn *
32971 : gen_split_3849 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32972 : {
32973 : if (dump_file)
32974 : fprintf (dump_file, "Splitting with gen_split_3849 (sse.md:29681)\n");
32975 : start_sequence ();
32976 : #define FAIL return (end_sequence (), nullptr)
32977 : #define DONE return end_sequence ()
32978 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32979 : {
32980 : if (constm1_operand (operands[2], V16SImode))
32981 : emit_move_insn (operands[0], operands[1]);
32982 : else
32983 : emit_note (NOTE_INSN_DELETED);
32984 :
32985 : DONE;
32986 : }
32987 : #undef DONE
32988 : #undef FAIL
32989 : static const uint8_t expand_encoding[] = {
32990 : 0x01, 0x27, 0x00
32991 : };
32992 : return complete_seq (expand_encoding, operands);
32993 : }
32994 :
32995 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
32996 : extern rtx_insn *gen_split_3859 (rtx_insn *, rtx *);
32997 : rtx_insn *
32998 : gen_split_3859 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32999 : {
33000 : if (dump_file)
33001 : fprintf (dump_file, "Splitting with gen_split_3859 (sse.md:29681)\n");
33002 : start_sequence ();
33003 : #define FAIL return (end_sequence (), nullptr)
33004 : #define DONE return end_sequence ()
33005 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33006 : {
33007 : if (constm1_operand (operands[2], V16BFmode))
33008 : emit_move_insn (operands[0], operands[1]);
33009 : else
33010 : emit_note (NOTE_INSN_DELETED);
33011 :
33012 : DONE;
33013 : }
33014 : #undef DONE
33015 : #undef FAIL
33016 : static const uint8_t expand_encoding[] = {
33017 : 0x01, 0x27, 0x00
33018 : };
33019 : return complete_seq (expand_encoding, operands);
33020 : }
33021 :
33022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29701 */
33023 : rtx
33024 : gen_cbranchv16qi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33025 : {
33026 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33027 : start_sequence ();
33028 : {
33029 : #define FAIL return (end_sequence (), nullptr)
33030 : #define DONE return end_sequence ()
33031 : #line 29711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33032 : {
33033 : ix86_expand_branch (GET_CODE (operands[0]),
33034 : operands[1], operands[2], operands[3]);
33035 : DONE;
33036 : }
33037 : #undef DONE
33038 : #undef FAIL
33039 : }
33040 : static const uint8_t expand_encoding[] = {
33041 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
33042 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
33043 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
33044 : 0x00, 0x01, 0x03, 0x2f
33045 : };
33046 : return complete_seq (expand_encoding, operands);
33047 : }
33048 :
33049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29718 */
33050 : extern rtx_insn *gen_split_3867 (rtx_insn *, rtx *);
33051 : rtx_insn *
33052 : gen_split_3867 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33053 : {
33054 : if (dump_file)
33055 : fprintf (dump_file, "Splitting with gen_split_3867 (sse.md:29718)\n");
33056 : start_sequence ();
33057 : #define FAIL return (end_sequence (), nullptr)
33058 : #define DONE return end_sequence ()
33059 : #line 29727 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33060 : {
33061 : if (REG_P (operands[0]))
33062 : operands[0] = gen_lowpart (V4SImode, operands[0]);
33063 : else
33064 : operands[1] = lowpart_subreg (V8SImode, operands[1],
33065 : V4SImode);
33066 : }
33067 : #undef DONE
33068 : #undef FAIL
33069 : static const uint8_t expand_encoding[] = {
33070 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
33071 : };
33072 : return complete_seq (expand_encoding, operands);
33073 : }
33074 :
33075 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33076 : rtx
33077 : gen_vec_initv4sisi (const rtx operand0, const rtx operand1)
33078 : {
33079 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33080 : start_sequence ();
33081 : {
33082 : #define FAIL return (end_sequence (), nullptr)
33083 : #define DONE return end_sequence ()
33084 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33085 : {
33086 : ix86_expand_vector_init (false, operands[0], operands[1]);
33087 : DONE;
33088 : }
33089 : #undef DONE
33090 : #undef FAIL
33091 : }
33092 : static const uint8_t expand_encoding[] = {
33093 : 0x02, 0x01, 0x00, 0x01, 0x01
33094 : };
33095 : return complete_seq (expand_encoding, operands);
33096 : }
33097 :
33098 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33099 : rtx
33100 : gen_vec_initv16sfsf (const rtx operand0, const rtx operand1)
33101 : {
33102 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33103 : start_sequence ();
33104 : {
33105 : #define FAIL return (end_sequence (), nullptr)
33106 : #define DONE return end_sequence ()
33107 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33108 : {
33109 : ix86_expand_vector_init (false, operands[0], operands[1]);
33110 : DONE;
33111 : }
33112 : #undef DONE
33113 : #undef FAIL
33114 : }
33115 : static const uint8_t expand_encoding[] = {
33116 : 0x02, 0x01, 0x00, 0x01, 0x01
33117 : };
33118 : return complete_seq (expand_encoding, operands);
33119 : }
33120 :
33121 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33122 : rtx
33123 : gen_vec_initv16qiv8qi (const rtx operand0, const rtx operand1)
33124 : {
33125 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33126 : start_sequence ();
33127 : {
33128 : #define FAIL return (end_sequence (), nullptr)
33129 : #define DONE return end_sequence ()
33130 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33131 : {
33132 : ix86_expand_vector_init (false, operands[0], operands[1]);
33133 : DONE;
33134 : }
33135 : #undef DONE
33136 : #undef FAIL
33137 : }
33138 : static const uint8_t expand_encoding[] = {
33139 : 0x02, 0x01, 0x00, 0x01, 0x01
33140 : };
33141 : return complete_seq (expand_encoding, operands);
33142 : }
33143 :
33144 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33145 : rtx
33146 : gen_vec_initv16hfv8hf (const rtx operand0, const rtx operand1)
33147 : {
33148 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33149 : start_sequence ();
33150 : {
33151 : #define FAIL return (end_sequence (), nullptr)
33152 : #define DONE return end_sequence ()
33153 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33154 : {
33155 : ix86_expand_vector_init (false, operands[0], operands[1]);
33156 : DONE;
33157 : }
33158 : #undef DONE
33159 : #undef FAIL
33160 : }
33161 : static const uint8_t expand_encoding[] = {
33162 : 0x02, 0x01, 0x00, 0x01, 0x01
33163 : };
33164 : return complete_seq (expand_encoding, operands);
33165 : }
33166 :
33167 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33168 : rtx
33169 : gen_vec_initv4tiv2ti (const rtx operand0, const rtx operand1)
33170 : {
33171 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33172 : start_sequence ();
33173 : {
33174 : #define FAIL return (end_sequence (), nullptr)
33175 : #define DONE return end_sequence ()
33176 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33177 : {
33178 : ix86_expand_vector_init (false, operands[0], operands[1]);
33179 : DONE;
33180 : }
33181 : #undef DONE
33182 : #undef FAIL
33183 : }
33184 : static const uint8_t expand_encoding[] = {
33185 : 0x02, 0x01, 0x00, 0x01, 0x01
33186 : };
33187 : return complete_seq (expand_encoding, operands);
33188 : }
33189 :
33190 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33191 : rtx
33192 : gen_cond_ashlv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33193 : {
33194 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33195 : start_sequence ();
33196 : {
33197 : #define FAIL _Pragma ("GCC error \"cond_ashlv16si cannot FAIL\"") (void)0
33198 : #define DONE return end_sequence ()
33199 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33200 : {
33201 : if (const_vec_duplicate_p (operands[3]))
33202 : {
33203 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33204 : operands[3] = lowpart_subreg (DImode, operands[3], SImode);
33205 : emit_insn (gen_ashlv16si3_mask (operands[0],
33206 : operands[2],
33207 : operands[3],
33208 : operands[4],
33209 : operands[1]));
33210 : }
33211 : else
33212 : emit_insn (gen_avx512f_ashlvv16si_mask (operands[0],
33213 : operands[2],
33214 : operands[3],
33215 : operands[4],
33216 : operands[1]));
33217 : DONE;
33218 : }
33219 : #undef DONE
33220 : #undef FAIL
33221 : }
33222 : static const uint8_t expand_encoding[] = {
33223 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4d,
33224 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33225 : 0x01
33226 : };
33227 : return complete_seq (expand_encoding, operands);
33228 : }
33229 :
33230 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33231 : rtx
33232 : gen_cond_lshrv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33233 : {
33234 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33235 : start_sequence ();
33236 : {
33237 : #define FAIL return (end_sequence (), nullptr)
33238 : #define DONE return end_sequence ()
33239 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33240 : {
33241 : if (const_vec_duplicate_p (operands[3]))
33242 : {
33243 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33244 : operands[3] = lowpart_subreg (DImode, operands[3], DImode);
33245 : emit_insn (gen_lshrv8di3_mask (operands[0],
33246 : operands[2],
33247 : operands[3],
33248 : operands[4],
33249 : operands[1]));
33250 : }
33251 : else
33252 : emit_insn (gen_avx512f_lshrvv8di_mask (operands[0],
33253 : operands[2],
33254 : operands[3],
33255 : operands[4],
33256 : operands[1]));
33257 : DONE;
33258 : }
33259 : #undef DONE
33260 : #undef FAIL
33261 : }
33262 : static const uint8_t expand_encoding[] = {
33263 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x50,
33264 : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33265 : 0x01
33266 : };
33267 : return complete_seq (expand_encoding, operands);
33268 : }
33269 :
33270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33271 : extern rtx_insn *gen_split_3872 (rtx_insn *, rtx *);
33272 : rtx_insn *
33273 : gen_split_3872 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33274 : {
33275 : if (dump_file)
33276 : fprintf (dump_file, "Splitting with gen_split_3872 (sse.md:29963)\n");
33277 : start_sequence ();
33278 : #define FAIL return (end_sequence (), nullptr)
33279 : #define DONE return end_sequence ()
33280 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33281 : {
33282 : operands[1] = gen_lowpart (V8QImode, operands[1]);
33283 : operands[5] = CONST0_RTX (V8QImode);
33284 : }
33285 : #undef DONE
33286 : #undef FAIL
33287 : static const uint8_t expand_encoding[] = {
33288 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x01,
33289 : 0x01, 0x01, 0x05
33290 : };
33291 : return complete_seq (expand_encoding, operands);
33292 : }
33293 :
33294 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33295 : extern rtx_insn *gen_split_3877 (rtx_insn *, rtx *);
33296 : rtx_insn *
33297 : gen_split_3877 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33298 : {
33299 : if (dump_file)
33300 : fprintf (dump_file, "Splitting with gen_split_3877 (sse.md:29963)\n");
33301 : start_sequence ();
33302 : #define FAIL return (end_sequence (), nullptr)
33303 : #define DONE return end_sequence ()
33304 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33305 : {
33306 : operands[1] = gen_lowpart (V4SImode, operands[1]);
33307 : operands[5] = CONST0_RTX (V4SImode);
33308 : }
33309 : #undef DONE
33310 : #undef FAIL
33311 : static const uint8_t expand_encoding[] = {
33312 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x01,
33313 : 0x01, 0x01, 0x05
33314 : };
33315 : return complete_seq (expand_encoding, operands);
33316 : }
33317 :
33318 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33319 : extern rtx_insn *gen_split_3887 (rtx_insn *, rtx *);
33320 : rtx_insn *
33321 : gen_split_3887 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33322 : {
33323 : if (dump_file)
33324 : fprintf (dump_file, "Splitting with gen_split_3887 (sse.md:29963)\n");
33325 : start_sequence ();
33326 : #define FAIL return (end_sequence (), nullptr)
33327 : #define DONE return end_sequence ()
33328 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33329 : {
33330 : operands[1] = gen_lowpart (V4BFmode, operands[1]);
33331 : operands[5] = CONST0_RTX (V4BFmode);
33332 : }
33333 : #undef DONE
33334 : #undef FAIL
33335 : static const uint8_t expand_encoding[] = {
33336 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x69, 0x01,
33337 : 0x01, 0x01, 0x05
33338 : };
33339 : return complete_seq (expand_encoding, operands);
33340 : }
33341 :
33342 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30168 */
33343 : rtx
33344 : gen_avx2_gathersiv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33345 : {
33346 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33347 : start_sequence ();
33348 : {
33349 : #define FAIL return (end_sequence (), nullptr)
33350 : #define DONE return end_sequence ()
33351 : #line 30183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33352 : {
33353 : operands[6]
33354 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33355 : operands[5]), UNSPEC_VSIBADDR);
33356 : }
33357 : #undef DONE
33358 : #undef FAIL
33359 : }
33360 : static const uint8_t expand_encoding[] = {
33361 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33362 : 0x52, 0x04, 0x01, 0x01, 0x36, 0x12, 0x04, 0x06,
33363 : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33364 : 0x21, 0x00, 0x31, 0x52
33365 : };
33366 : return complete_seq (expand_encoding, operands);
33367 : }
33368 :
33369 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30231 */
33370 : rtx
33371 : gen_avx2_gatherdiv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33372 : {
33373 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33374 : start_sequence ();
33375 : {
33376 : #define FAIL return (end_sequence (), nullptr)
33377 : #define DONE return end_sequence ()
33378 : #line 30246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33379 : {
33380 : operands[6]
33381 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33382 : operands[5]), UNSPEC_VSIBADDR);
33383 : }
33384 : #undef DONE
33385 : #undef FAIL
33386 : }
33387 : static const uint8_t expand_encoding[] = {
33388 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33389 : 0x6c, 0x04, 0x01, 0x01, 0x36, 0x2e, 0x04, 0x06,
33390 : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33391 : 0x21, 0x00, 0x31, 0x6c
33392 : };
33393 : return complete_seq (expand_encoding, operands);
33394 : }
33395 :
33396 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30346 */
33397 : rtx
33398 : gen_avx512f_gathersiv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33399 : {
33400 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33401 : start_sequence ();
33402 : {
33403 : #define FAIL return (end_sequence (), nullptr)
33404 : #define DONE return end_sequence ()
33405 : #line 30359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33406 : {
33407 : operands[6]
33408 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33409 : operands[5]), UNSPEC_VSIBADDR);
33410 : }
33411 : #undef DONE
33412 : #undef FAIL
33413 : }
33414 : static const uint8_t expand_encoding[] = {
33415 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33416 : 0x75, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2e,
33417 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33418 : };
33419 : return complete_seq (expand_encoding, operands);
33420 : }
33421 :
33422 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30408 */
33423 : rtx
33424 : gen_avx512f_gatherdiv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33425 : {
33426 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33427 : start_sequence ();
33428 : {
33429 : #define FAIL return (end_sequence (), nullptr)
33430 : #define DONE return end_sequence ()
33431 : #line 30421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33432 : {
33433 : operands[6]
33434 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33435 : operands[5]), UNSPEC_VSIBADDR);
33436 : }
33437 : #undef DONE
33438 : #undef FAIL
33439 : }
33440 : static const uint8_t expand_encoding[] = {
33441 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33442 : 0x74, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2d,
33443 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33444 : };
33445 : return complete_seq (expand_encoding, operands);
33446 : }
33447 :
33448 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30408 */
33449 : rtx
33450 : gen_avx512vl_gatherdiv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33451 : {
33452 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33453 : start_sequence ();
33454 : {
33455 : #define FAIL return (end_sequence (), nullptr)
33456 : #define DONE return end_sequence ()
33457 : #line 30421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33458 : {
33459 : operands[6]
33460 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33461 : operands[5]), UNSPEC_VSIBADDR);
33462 : }
33463 : #undef DONE
33464 : #undef FAIL
33465 : }
33466 : static const uint8_t expand_encoding[] = {
33467 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33468 : 0x6c, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2e,
33469 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33470 : };
33471 : return complete_seq (expand_encoding, operands);
33472 : }
33473 :
33474 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30478 */
33475 : rtx
33476 : gen_avx512vl_scattersiv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33477 : {
33478 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33479 : start_sequence ();
33480 : {
33481 : #define FAIL return (end_sequence (), nullptr)
33482 : #define DONE return end_sequence ()
33483 : #line 30490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33484 : {
33485 : operands[5]
33486 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33487 : operands[4], operands[1]),
33488 : UNSPEC_VSIBADDR);
33489 : }
33490 : #undef DONE
33491 : #undef FAIL
33492 : }
33493 : static const uint8_t expand_encoding[] = {
33494 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x6c, 0x04,
33495 : 0x05, 0x1a, 0x6c, 0x02, 0x01, 0x01, 0x01, 0x03,
33496 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33497 : };
33498 : return complete_seq (expand_encoding, operands);
33499 : }
33500 :
33501 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30518 */
33502 : rtx
33503 : gen_avx512vl_scatterdiv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33504 : {
33505 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33506 : start_sequence ();
33507 : {
33508 : #define FAIL return (end_sequence (), nullptr)
33509 : #define DONE return end_sequence ()
33510 : #line 30530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33511 : {
33512 : operands[5]
33513 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33514 : operands[4], operands[1]),
33515 : UNSPEC_VSIBADDR);
33516 : }
33517 : #undef DONE
33518 : #undef FAIL
33519 : }
33520 : static const uint8_t expand_encoding[] = {
33521 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x6b, 0x04,
33522 : 0x05, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x03,
33523 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33524 : };
33525 : return complete_seq (expand_encoding, operands);
33526 : }
33527 :
33528 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30616 */
33529 : rtx
33530 : gen_avx512vl_expandv4si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33531 : {
33532 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33533 : start_sequence ();
33534 : {
33535 : #define FAIL return (end_sequence (), nullptr)
33536 : #define DONE return end_sequence ()
33537 : #line 30624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33538 : operands[2] = CONST0_RTX (V4SImode);
33539 : #undef DONE
33540 : #undef FAIL
33541 : }
33542 : static const uint8_t expand_encoding[] = {
33543 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01,
33544 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33545 : };
33546 : return complete_seq (expand_encoding, operands);
33547 : }
33548 :
33549 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33550 : extern rtx_insn *gen_split_3900 (rtx_insn *, rtx *);
33551 : rtx_insn *
33552 : gen_split_3900 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33553 : {
33554 : if (dump_file)
33555 : fprintf (dump_file, "Splitting with gen_split_3900 (sse.md:30656)\n");
33556 : start_sequence ();
33557 : #define FAIL return (end_sequence (), nullptr)
33558 : #define DONE return end_sequence ()
33559 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33560 : {
33561 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33562 : bool has_zero = false;
33563 : unsigned n = GET_MODE_NUNITS (V4DImode), i;
33564 : unsigned ones = 0;
33565 :
33566 : /* If all ones bits is in mask's lower part,
33567 : get number of ones and assign it to ONES. */
33568 : for (i = 0; i != n; i++)
33569 : {
33570 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33571 : break;
33572 :
33573 : /* Record first zero bit. */
33574 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33575 : {
33576 : has_zero = true;
33577 : ones = i;
33578 : }
33579 : }
33580 :
33581 : if (!has_zero)
33582 : ones = n;
33583 :
33584 : if (i != n || (ones != 0 && ones != n))
33585 : {
33586 : rtx reg = gen_reg_rtx (QImode);
33587 : emit_move_insn (reg, operands[3]);
33588 : enum insn_code icode;
33589 : if (i == n)
33590 : /* For masks with all one bits in it's lower part,
33591 : we can transform v{,p}expand* to vmovdq* with
33592 : mask operand. */
33593 : icode = CODE_FOR_avx512vl_loadv4di_mask;
33594 : else
33595 : icode = CODE_FOR_expandv4di_mask;
33596 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33597 : }
33598 : else
33599 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33600 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33601 : DONE;
33602 : }
33603 : #undef DONE
33604 : #undef FAIL
33605 : static const uint8_t expand_encoding[] = {
33606 : 0x01, 0x27, 0x00
33607 : };
33608 : return complete_seq (expand_encoding, operands);
33609 : }
33610 :
33611 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33612 : extern rtx_insn *gen_split_3910 (rtx_insn *, rtx *);
33613 : rtx_insn *
33614 : gen_split_3910 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33615 : {
33616 : if (dump_file)
33617 : fprintf (dump_file, "Splitting with gen_split_3910 (sse.md:30656)\n");
33618 : start_sequence ();
33619 : #define FAIL return (end_sequence (), nullptr)
33620 : #define DONE return end_sequence ()
33621 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33622 : {
33623 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33624 : bool has_zero = false;
33625 : unsigned n = GET_MODE_NUNITS (V16HImode), i;
33626 : unsigned ones = 0;
33627 :
33628 : /* If all ones bits is in mask's lower part,
33629 : get number of ones and assign it to ONES. */
33630 : for (i = 0; i != n; i++)
33631 : {
33632 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33633 : break;
33634 :
33635 : /* Record first zero bit. */
33636 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33637 : {
33638 : has_zero = true;
33639 : ones = i;
33640 : }
33641 : }
33642 :
33643 : if (!has_zero)
33644 : ones = n;
33645 :
33646 : if (i != n || (ones != 0 && ones != n))
33647 : {
33648 : rtx reg = gen_reg_rtx (HImode);
33649 : emit_move_insn (reg, operands[3]);
33650 : enum insn_code icode;
33651 : if (i == n)
33652 : /* For masks with all one bits in it's lower part,
33653 : we can transform v{,p}expand* to vmovdq* with
33654 : mask operand. */
33655 : icode = CODE_FOR_avx512vl_loadv16hi_mask;
33656 : else
33657 : icode = CODE_FOR_expandv16hi_mask;
33658 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33659 : }
33660 : else
33661 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33662 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33663 : DONE;
33664 : }
33665 : #undef DONE
33666 : #undef FAIL
33667 : static const uint8_t expand_encoding[] = {
33668 : 0x01, 0x27, 0x00
33669 : };
33670 : return complete_seq (expand_encoding, operands);
33671 : }
33672 :
33673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31094 */
33674 : rtx
33675 : gen_vpmadd52huqv8di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33676 : {
33677 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33678 : start_sequence ();
33679 : {
33680 : #define FAIL return (end_sequence (), nullptr)
33681 : #define DONE return end_sequence ()
33682 : #line 31101 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33683 : {
33684 : emit_insn (gen_vpmadd52huqv8di_maskz_1 (
33685 : operands[0], operands[1], operands[2], operands[3],
33686 : CONST0_RTX (V8DImode), operands[4]));
33687 : DONE;
33688 : }
33689 : #undef DONE
33690 : #undef FAIL
33691 : }
33692 : static const uint8_t expand_encoding[] = {
33693 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33694 : 0x03, 0x01, 0x04
33695 : };
33696 : return complete_seq (expand_encoding, operands);
33697 : }
33698 :
33699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31200 */
33700 : rtx
33701 : gen_popcountv4di2 (const rtx operand0, const rtx operand1)
33702 : {
33703 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33704 : static const uint8_t expand_encoding[] = {
33705 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x57, 0x01, 0x01
33706 : };
33707 : return expand_rtx (expand_encoding, operands);
33708 : }
33709 :
33710 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31362 */
33711 : rtx
33712 : gen_vpshrdv_v32hi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33713 : {
33714 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33715 : start_sequence ();
33716 : {
33717 : #define FAIL return (end_sequence (), nullptr)
33718 : #define DONE return end_sequence ()
33719 : #line 31369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33720 : {
33721 : emit_insn (gen_vpshrdv_v32hi_maskz_1 (operands[0], operands[1],
33722 : operands[2], operands[3],
33723 : CONST0_RTX (V32HImode),
33724 : operands[4]));
33725 : DONE;
33726 : }
33727 : #undef DONE
33728 : #undef FAIL
33729 : }
33730 : static const uint8_t expand_encoding[] = {
33731 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33732 : 0x03, 0x01, 0x04
33733 : };
33734 : return complete_seq (expand_encoding, operands);
33735 : }
33736 :
33737 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31419 */
33738 : rtx
33739 : gen_vpshldv_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33740 : {
33741 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33742 : start_sequence ();
33743 : {
33744 : #define FAIL return (end_sequence (), nullptr)
33745 : #define DONE return end_sequence ()
33746 : #line 31426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33747 : {
33748 : emit_insn (gen_vpshldv_v16si_maskz_1 (operands[0], operands[1],
33749 : operands[2], operands[3],
33750 : CONST0_RTX (V16SImode),
33751 : operands[4]));
33752 : DONE;
33753 : }
33754 : #undef DONE
33755 : #undef FAIL
33756 : }
33757 : static const uint8_t expand_encoding[] = {
33758 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33759 : 0x03, 0x01, 0x04
33760 : };
33761 : return complete_seq (expand_encoding, operands);
33762 : }
33763 :
33764 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31449 */
33765 : rtx
33766 : gen_usdot_prodv4siv16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33767 : {
33768 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33769 : start_sequence ();
33770 : {
33771 : #define FAIL return (end_sequence (), nullptr)
33772 : #define DONE return end_sequence ()
33773 : #line 31455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33774 : {
33775 : if (16 == 64
33776 : ? TARGET_AVX512VNNI
33777 : : ((TARGET_AVX512VNNI && TARGET_AVX512VL) || TARGET_AVXVNNI))
33778 : {
33779 : operands[1] = lowpart_subreg (V4SImode,
33780 : force_reg (V16QImode, operands[1]),
33781 : V16QImode);
33782 : operands[2] = lowpart_subreg (V4SImode,
33783 : force_reg (V16QImode, operands[2]),
33784 : V16QImode);
33785 : emit_insn (gen_vpdpbusd_v4si (operands[0], operands[3],
33786 : operands[1], operands[2]));
33787 : }
33788 : else
33789 : {
33790 : /* Emulate with vpdpwssd. */
33791 : rtx op1_lo = gen_reg_rtx (V8HImode);
33792 : rtx op1_hi = gen_reg_rtx (V8HImode);
33793 : rtx op2_lo = gen_reg_rtx (V8HImode);
33794 : rtx op2_hi = gen_reg_rtx (V8HImode);
33795 :
33796 : emit_insn (gen_vec_unpacku_lo_v16qi (op1_lo, operands[1]));
33797 : emit_insn (gen_vec_unpacks_lo_v16qi (op2_lo, operands[2]));
33798 : emit_insn (gen_vec_unpacku_hi_v16qi (op1_hi, operands[1]));
33799 : emit_insn (gen_vec_unpacks_hi_v16qi (op2_hi, operands[2]));
33800 :
33801 : rtx res1 = gen_reg_rtx (V4SImode);
33802 : rtx res2 = gen_reg_rtx (V4SImode);
33803 : rtx sum = gen_reg_rtx (V4SImode);
33804 :
33805 : emit_move_insn (sum, CONST0_RTX (V4SImode));
33806 : emit_insn (gen_sdot_prodv4siv8hi (res1,
33807 : op1_lo, op2_lo, sum));
33808 : emit_insn (gen_sdot_prodv4siv8hi (res2,
33809 : op1_hi, op2_hi,
33810 : operands[3]));
33811 : emit_insn (gen_addv4si3 (operands[0], res1, res2));
33812 : }
33813 : DONE;
33814 : }
33815 : #undef DONE
33816 : #undef FAIL
33817 : }
33818 : static const uint8_t expand_encoding[] = {
33819 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33820 : 0x03
33821 : };
33822 : return complete_seq (expand_encoding, operands);
33823 : }
33824 :
33825 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32040 */
33826 : rtx
33827 : gen_avx512f_cvtneps2bf16_v16sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2)
33828 : {
33829 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
33830 : start_sequence ();
33831 : {
33832 : #define FAIL return (end_sequence (), nullptr)
33833 : #define DONE return end_sequence ()
33834 : #line 32045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33835 : {
33836 : emit_insn (gen_avx512f_cvtneps2bf16_v16sf_mask(operands[0], operands[1],
33837 : CONST0_RTX(V16BFmode), operands[2]));
33838 : DONE;
33839 : }
33840 : #undef DONE
33841 : #undef FAIL
33842 : }
33843 : static const uint8_t expand_encoding[] = {
33844 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
33845 : };
33846 : return complete_seq (expand_encoding, operands);
33847 : }
33848 :
33849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32113 */
33850 : rtx
33851 : gen_avx512f_dpbf16ps_v8sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33852 : {
33853 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33854 : start_sequence ();
33855 : {
33856 : #define FAIL return (end_sequence (), nullptr)
33857 : #define DONE return end_sequence ()
33858 : #line 32120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33859 : {
33860 : emit_insn (gen_avx512f_dpbf16ps_v8sf_maskz_1(operands[0], operands[1],
33861 : operands[2], operands[3], CONST0_RTX(V8SFmode), operands[4]));
33862 : DONE;
33863 : }
33864 : #undef DONE
33865 : #undef FAIL
33866 : }
33867 : static const uint8_t expand_encoding[] = {
33868 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33869 : 0x03, 0x01, 0x04
33870 : };
33871 : return complete_seq (expand_encoding, operands);
33872 : }
33873 :
33874 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32376 */
33875 : rtx
33876 : gen_vec_duplicatev16qi (const rtx operand0, const rtx operand1)
33877 : {
33878 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33879 : start_sequence ();
33880 : {
33881 : #define FAIL return (end_sequence (), nullptr)
33882 : #define DONE return end_sequence ()
33883 : #line 32381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33884 : {
33885 : if (!ix86_expand_vector_init_duplicate (false,
33886 : GET_MODE (operands[0]),
33887 : operands[0],
33888 : operands[1]))
33889 : gcc_unreachable ();
33890 : DONE;
33891 : }
33892 : #undef DONE
33893 : #undef FAIL
33894 : }
33895 : static const uint8_t expand_encoding[] = {
33896 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x4f, 0x01,
33897 : 0x01
33898 : };
33899 : return complete_seq (expand_encoding, operands);
33900 : }
33901 :
33902 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32376 */
33903 : rtx
33904 : gen_vec_duplicatev4si (const rtx operand0, const rtx operand1)
33905 : {
33906 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33907 : start_sequence ();
33908 : {
33909 : #define FAIL return (end_sequence (), nullptr)
33910 : #define DONE return end_sequence ()
33911 : #line 32381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33912 : {
33913 : if (!ix86_expand_vector_init_duplicate (false,
33914 : GET_MODE (operands[0]),
33915 : operands[0],
33916 : operands[1]))
33917 : gcc_unreachable ();
33918 : DONE;
33919 : }
33920 : #undef DONE
33921 : #undef FAIL
33922 : }
33923 : static const uint8_t expand_encoding[] = {
33924 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x51, 0x01,
33925 : 0x01
33926 : };
33927 : return complete_seq (expand_encoding, operands);
33928 : }
33929 :
33930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32535 */
33931 : rtx
33932 : gen_vpdpbssd_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33933 : {
33934 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33935 : start_sequence ();
33936 : {
33937 : #define FAIL return (end_sequence (), nullptr)
33938 : #define DONE return end_sequence ()
33939 : #line 32546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33940 : operands[5] = CONST0_RTX (V16SImode);
33941 : #undef DONE
33942 : #undef FAIL
33943 : }
33944 : static const uint8_t expand_encoding[] = {
33945 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a,
33946 : 0x5b, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
33947 : 0x81, 0x64, 0x01, 0x05, 0x01, 0x04
33948 : };
33949 : return complete_seq (expand_encoding, operands);
33950 : }
33951 :
33952 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32535 */
33953 : rtx
33954 : gen_vpdpbuud_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33955 : {
33956 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33957 : start_sequence ();
33958 : {
33959 : #define FAIL return (end_sequence (), nullptr)
33960 : #define DONE return end_sequence ()
33961 : #line 32546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33962 : operands[5] = CONST0_RTX (V16SImode);
33963 : #undef DONE
33964 : #undef FAIL
33965 : }
33966 : static const uint8_t expand_encoding[] = {
33967 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a,
33968 : 0x5b, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
33969 : 0x81, 0x68, 0x01, 0x05, 0x01, 0x04
33970 : };
33971 : return complete_seq (expand_encoding, operands);
33972 : }
33973 :
33974 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32535 */
33975 : rtx
33976 : gen_vpdpbuud_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33977 : {
33978 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33979 : start_sequence ();
33980 : {
33981 : #define FAIL return (end_sequence (), nullptr)
33982 : #define DONE return end_sequence ()
33983 : #line 32546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33984 : operands[5] = CONST0_RTX (V8SImode);
33985 : #undef DONE
33986 : #undef FAIL
33987 : }
33988 : static const uint8_t expand_encoding[] = {
33989 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
33990 : 0x56, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
33991 : 0x81, 0x68, 0x01, 0x05, 0x01, 0x04
33992 : };
33993 : return complete_seq (expand_encoding, operands);
33994 : }
33995 :
33996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32693 */
33997 : rtx
33998 : gen_vcvtbiasph2hf8v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
33999 : {
34000 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34001 : start_sequence ();
34002 : {
34003 : #define FAIL return (end_sequence (), nullptr)
34004 : #define DONE return end_sequence ()
34005 : #line 32702 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34006 : operands[3] = CONST0_RTX (V8QImode);
34007 : #undef DONE
34008 : #undef FAIL
34009 : }
34010 : static const uint8_t expand_encoding[] = {
34011 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x1a,
34012 : 0x48, 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x78,
34013 : 0x01, 0x03
34014 : };
34015 : return complete_seq (expand_encoding, operands);
34016 : }
34017 :
34018 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32807 */
34019 : rtx
34020 : gen_vcvtph2bf8v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34021 : {
34022 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34023 : start_sequence ();
34024 : {
34025 : #define FAIL return (end_sequence (), nullptr)
34026 : #define DONE return end_sequence ()
34027 : #line 32823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34028 : operands[4] = CONST0_RTX (V8QImode);
34029 : #undef DONE
34030 : #undef FAIL
34031 : }
34032 : static const uint8_t expand_encoding[] = {
34033 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81,
34034 : 0x09, 0x48, 0x1a, 0x48, 0x01, 0x01, 0x01, 0x81,
34035 : 0x7e, 0x81, 0x0a, 0x48, 0x01, 0x02, 0x17, 0x00,
34036 : 0x08, 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27,
34037 : 0x03, 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27,
34038 : 0x07, 0x01, 0x03, 0x01, 0x04
34039 : };
34040 : return complete_seq (expand_encoding, operands);
34041 : }
34042 :
34043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32947 */
34044 : rtx
34045 : gen_vpdpwusd_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34046 : {
34047 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34048 : start_sequence ();
34049 : {
34050 : #define FAIL return (end_sequence (), nullptr)
34051 : #define DONE return end_sequence ()
34052 : #line 32958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34053 : operands[5] = CONST0_RTX (V16SImode);
34054 : #undef DONE
34055 : #undef FAIL
34056 : }
34057 : static const uint8_t expand_encoding[] = {
34058 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a,
34059 : 0x5b, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34060 : 0x81, 0x6a, 0x01, 0x05, 0x01, 0x04
34061 : };
34062 : return complete_seq (expand_encoding, operands);
34063 : }
34064 :
34065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32947 */
34066 : rtx
34067 : gen_vpdpwuud_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34068 : {
34069 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34070 : start_sequence ();
34071 : {
34072 : #define FAIL return (end_sequence (), nullptr)
34073 : #define DONE return end_sequence ()
34074 : #line 32958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34075 : operands[5] = CONST0_RTX (V8SImode);
34076 : #undef DONE
34077 : #undef FAIL
34078 : }
34079 : static const uint8_t expand_encoding[] = {
34080 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
34081 : 0x56, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34082 : 0x81, 0x6e, 0x01, 0x05, 0x01, 0x04
34083 : };
34084 : return complete_seq (expand_encoding, operands);
34085 : }
34086 :
34087 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32999 */
34088 : rtx
34089 : gen_vdpphps_v4sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34090 : {
34091 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34092 : start_sequence ();
34093 : {
34094 : #define FAIL return (end_sequence (), nullptr)
34095 : #define DONE return end_sequence ()
34096 : #line 33006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34097 : {
34098 : emit_insn (gen_vdpphps_v4sf_maskz_1 (operands[0], operands[1],
34099 : operands[2], operands[3], CONST0_RTX(V4SFmode), operands[4]));
34100 : DONE;
34101 : }
34102 : #undef DONE
34103 : #undef FAIL
34104 : }
34105 : static const uint8_t expand_encoding[] = {
34106 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34107 : 0x03, 0x01, 0x04
34108 : };
34109 : return complete_seq (expand_encoding, operands);
34110 : }
34111 :
34112 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33189 */
34113 : rtx
34114 : gen_avx10_2_fmsubbf16_v16bf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34115 : {
34116 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34117 : start_sequence ();
34118 : {
34119 : #define FAIL return (end_sequence (), nullptr)
34120 : #define DONE return end_sequence ()
34121 : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34122 : {
34123 : emit_insn (gen_avx10_2_fmsubbf16_v16bf_maskz_1 (operands[0], operands[1],
34124 : operands[2], operands[3],
34125 : CONST0_RTX (V16BFmode),
34126 : operands[4]));
34127 : DONE;
34128 : }
34129 : #undef DONE
34130 : #undef FAIL
34131 : }
34132 : static const uint8_t expand_encoding[] = {
34133 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34134 : 0x03, 0x01, 0x04
34135 : };
34136 : return complete_seq (expand_encoding, operands);
34137 : }
34138 :
34139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:162 */
34140 : rtx
34141 : gen_atomic_loadhi (const rtx operand0, const rtx operand1, const rtx operand2)
34142 : {
34143 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34144 : start_sequence ();
34145 : {
34146 : #define FAIL return (end_sequence (), nullptr)
34147 : #define DONE return end_sequence ()
34148 : #line 168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34149 : {
34150 : /* For DImode on 32-bit, we can use the FPU to perform the load. */
34151 : if (HImode == DImode && !TARGET_64BIT)
34152 : emit_insn (gen_atomic_loaddi_fpu
34153 : (operands[0], operands[1],
34154 : assign_stack_temp (DImode, GET_MODE_SIZE (DImode))));
34155 : else
34156 : {
34157 : rtx dst = operands[0];
34158 :
34159 : if (MEM_P (dst))
34160 : dst = gen_reg_rtx (HImode);
34161 :
34162 : emit_move_insn (dst, operands[1]);
34163 :
34164 : /* Fix up the destination if needed. */
34165 : if (dst != operands[0])
34166 : emit_move_insn (operands[0], dst);
34167 : }
34168 : DONE;
34169 : }
34170 : #undef DONE
34171 : #undef FAIL
34172 : }
34173 : static const uint8_t expand_encoding[] = {
34174 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x01,
34175 : 0x01, 0x01, 0x02, 0x82, 0x23
34176 : };
34177 : return complete_seq (expand_encoding, operands);
34178 : }
34179 :
34180 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:391 */
34181 : rtx
34182 : gen_atomic_compare_and_swaphi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7)
34183 : {
34184 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
34185 : start_sequence ();
34186 : {
34187 : #define FAIL return (end_sequence (), nullptr)
34188 : #define DONE return end_sequence ()
34189 : #line 401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34190 : {
34191 : if (TARGET_RELAX_CMPXCHG_LOOP)
34192 : {
34193 : ix86_expand_cmpxchg_loop (&operands[0], operands[1], operands[2],
34194 : operands[3], operands[4], operands[6],
34195 : false, NULL);
34196 : }
34197 : else
34198 : {
34199 : emit_insn
34200 : (gen_atomic_compare_and_swaphi_1
34201 : (operands[1], operands[2], operands[3], operands[4], operands[6]));
34202 : ix86_expand_setcc (operands[0], EQ, gen_rtx_REG (CCZmode, FLAGS_REG),
34203 : const0_rtx);
34204 : }
34205 : DONE;
34206 : }
34207 : #undef DONE
34208 : #undef FAIL
34209 : }
34210 : static const uint8_t expand_encoding[] = {
34211 : 0x08, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34212 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06, 0x01,
34213 : 0x07
34214 : };
34215 : return complete_seq (expand_encoding, operands);
34216 : }
34217 :
34218 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:539 */
34219 : extern rtx_insn *gen_peephole2_441 (rtx_insn *, rtx *);
34220 : rtx_insn *
34221 : gen_peephole2_441 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34222 : {
34223 : if (dump_file)
34224 : fprintf (dump_file, "Splitting with gen_peephole2_441 (sync.md:539)\n");
34225 : start_sequence ();
34226 : static const uint8_t expand_encoding[] = {
34227 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
34228 : 0x01, 0x05, 0x02, 0x11, 0x17, 0x00, 0x03, 0x1f,
34229 : 0x01, 0x02, 0x1b, 0x10, 0x04, 0x01, 0x03, 0x01,
34230 : 0x02, 0x01, 0x04, 0x01, 0x05, 0x6d, 0x1f, 0x01,
34231 : 0x03, 0x1b, 0x10, 0x01, 0x27, 0x00, 0x6d, 0x1f,
34232 : 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01, 0x27, 0x00,
34233 : 0x6d
34234 : };
34235 : return complete_seq (expand_encoding, operands);
34236 : }
34237 :
34238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:573 */
34239 : rtx
34240 : gen_atomic_fetch_andhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34241 : {
34242 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34243 : start_sequence ();
34244 : {
34245 : #define FAIL return (end_sequence (), nullptr)
34246 : #define DONE return end_sequence ()
34247 : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34248 : {
34249 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34250 : operands[2], AND, false,
34251 : false);
34252 : DONE;
34253 : }
34254 : #undef DONE
34255 : #undef FAIL
34256 : }
34257 : static const uint8_t expand_encoding[] = {
34258 : 0x03, 0x01, 0x00, 0x49, 0x10, 0x01, 0x01, 0x01,
34259 : 0x02, 0x01, 0x03
34260 : };
34261 : return complete_seq (expand_encoding, operands);
34262 : }
34263 :
34264 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:587 */
34265 : rtx
34266 : gen_atomic_or_fetchhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34267 : {
34268 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34269 : start_sequence ();
34270 : {
34271 : #define FAIL return (end_sequence (), nullptr)
34272 : #define DONE return end_sequence ()
34273 : #line 594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34274 : {
34275 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34276 : operands[2], IOR, true,
34277 : false);
34278 : DONE;
34279 : }
34280 : #undef DONE
34281 : #undef FAIL
34282 : }
34283 : static const uint8_t expand_encoding[] = {
34284 : 0x03, 0x01, 0x00, 0x4a, 0x10, 0x01, 0x01, 0x01,
34285 : 0x02, 0x01, 0x03
34286 : };
34287 : return complete_seq (expand_encoding, operands);
34288 : }
34289 :
34290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:614 */
34291 : rtx
34292 : gen_atomic_nand_fetchsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34293 : {
34294 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34295 : start_sequence ();
34296 : {
34297 : #define FAIL return (end_sequence (), nullptr)
34298 : #define DONE return end_sequence ()
34299 : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34300 : {
34301 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34302 : operands[2], NOT, true,
34303 : false);
34304 : DONE;
34305 : }
34306 : #undef DONE
34307 : #undef FAIL
34308 : }
34309 : static const uint8_t expand_encoding[] = {
34310 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34311 : 0x03
34312 : };
34313 : return complete_seq (expand_encoding, operands);
34314 : }
34315 :
34316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:643 */
34317 : rtx
34318 : gen_atomic_and_fetchti (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34319 : {
34320 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34321 : start_sequence ();
34322 : {
34323 : #define FAIL return (end_sequence (), nullptr)
34324 : #define DONE return end_sequence ()
34325 : #line 650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34326 : {
34327 : bool doubleword = (TImode == DImode && !TARGET_64BIT)
34328 : || (TImode == TImode);
34329 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34330 : operands[2], AND, true,
34331 : doubleword);
34332 : DONE;
34333 : }
34334 : #undef DONE
34335 : #undef FAIL
34336 : }
34337 : static const uint8_t expand_encoding[] = {
34338 : 0x03, 0x01, 0x00, 0x49, 0x13, 0x01, 0x01, 0x01,
34339 : 0x02, 0x01, 0x03
34340 : };
34341 : return complete_seq (expand_encoding, operands);
34342 : }
34343 :
34344 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:709 */
34345 : extern rtx_insn *gen_peephole2_450 (rtx_insn *, rtx *);
34346 : rtx_insn *
34347 : gen_peephole2_450 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34348 : {
34349 : if (dump_file)
34350 : fprintf (dump_file, "Splitting with gen_peephole2_450 (sync.md:709)\n");
34351 : start_sequence ();
34352 : static const uint8_t expand_encoding[] = {
34353 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
34354 : 0x3a, 0x0c, 0x1b, 0x12, 0x02, 0x01, 0x01, 0x01,
34355 : 0x04, 0x6e, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x3b,
34356 : 0x12, 0x01, 0x01, 0x01, 0x02
34357 : };
34358 : return complete_seq (expand_encoding, operands);
34359 : }
34360 :
34361 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:925 */
34362 : rtx
34363 : gen_atomic_bit_test_and_complementsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34364 : {
34365 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34366 : start_sequence ();
34367 : {
34368 : #define FAIL return (end_sequence (), nullptr)
34369 : #define DONE return end_sequence ()
34370 : #line 932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34371 : {
34372 : emit_insn (gen_atomic_bit_test_and_complementsi_1 (operands[1],
34373 : operands[2],
34374 : operands[3]));
34375 : rtx tem = gen_reg_rtx (QImode);
34376 : ix86_expand_setcc (tem, EQ, gen_rtx_REG (CCCmode, FLAGS_REG), const0_rtx);
34377 : rtx result = convert_modes (SImode, QImode, tem, 1);
34378 : if (operands[4] == const0_rtx)
34379 : result = expand_simple_binop (SImode, ASHIFT, result,
34380 : operands[2], operands[0], 0, OPTAB_WIDEN);
34381 : if (result != operands[0])
34382 : emit_move_insn (operands[0], result);
34383 : DONE;
34384 : }
34385 : #undef DONE
34386 : #undef FAIL
34387 : }
34388 : static const uint8_t expand_encoding[] = {
34389 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34390 : 0x03, 0x01, 0x04
34391 : };
34392 : return complete_seq (expand_encoding, operands);
34393 : }
34394 :
34395 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1000 */
34396 : rtx
34397 : gen_atomic_sub_fetch_cmp_0si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34398 : {
34399 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34400 : start_sequence ();
34401 : {
34402 : #define FAIL return (end_sequence (), nullptr)
34403 : #define DONE return end_sequence ()
34404 : #line 1007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34405 : {
34406 : if (INTVAL (operands[4]) == GT || INTVAL (operands[4]) == LE)
34407 : FAIL;
34408 : emit_insn (gen_atomic_sub_fetch_cmp_0si_1 (operands[1],
34409 : operands[2],
34410 : operands[3]));
34411 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34412 : gen_rtx_REG (CCGOCmode, FLAGS_REG), const0_rtx);
34413 : DONE;
34414 : }
34415 : #undef DONE
34416 : #undef FAIL
34417 : }
34418 : static const uint8_t expand_encoding[] = {
34419 : 0x04, 0x01, 0x00, 0x3c, 0x11, 0x01, 0x01, 0x01,
34420 : 0x02, 0x01, 0x03, 0x01, 0x04
34421 : };
34422 : return complete_seq (expand_encoding, operands);
34423 : }
34424 :
34425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1074 */
34426 : rtx
34427 : gen_atomic_or_fetch_cmp_0si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34428 : {
34429 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34430 : start_sequence ();
34431 : {
34432 : #define FAIL return (end_sequence (), nullptr)
34433 : #define DONE return end_sequence ()
34434 : #line 1081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34435 : {
34436 : emit_insn (gen_atomic_or_fetch_cmp_0si_1 (operands[1], operands[2],
34437 : operands[3]));
34438 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34439 : gen_rtx_REG (CCNOmode, FLAGS_REG), const0_rtx);
34440 : DONE;
34441 : }
34442 : #undef DONE
34443 : #undef FAIL
34444 : }
34445 : static const uint8_t expand_encoding[] = {
34446 : 0x04, 0x01, 0x00, 0x4a, 0x11, 0x01, 0x01, 0x01,
34447 : 0x02, 0x01, 0x03, 0x01, 0x04
34448 : };
34449 : return complete_seq (expand_encoding, operands);
34450 : }
34451 :
34452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1226 */
34453 : extern rtx_insn *gen_peephole2_460 (rtx_insn *, rtx *);
34454 : rtx_insn *
34455 : gen_peephole2_460 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34456 : {
34457 : if (dump_file)
34458 : fprintf (dump_file, "Splitting with gen_peephole2_460 (sync.md:1226)\n");
34459 : start_sequence ();
34460 : #define FAIL return (end_sequence (), nullptr)
34461 : #define DONE return end_sequence ()
34462 : #line 1273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34463 : {
34464 : operands[9] = gen_rtx_REG (GET_MODE (XEXP (operands[7], 0)), FLAGS_REG);
34465 : if (swap_condition (GET_CODE (operands[7])) != GET_CODE (operands[7]))
34466 : {
34467 : operands[7] = shallow_copy_rtx (operands[7]);
34468 : enum rtx_code ccode = swap_condition (GET_CODE (operands[7]));
34469 : PUT_CODE (operands[7], ccode);
34470 : operands[9] = gen_rtx_REG (SELECT_CC_MODE (ccode,
34471 : operands[6],
34472 : operands[5]),
34473 : FLAGS_REG);
34474 : }
34475 : }
34476 : #undef DONE
34477 : #undef FAIL
34478 : static const uint8_t expand_encoding[] = {
34479 : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
34480 : 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x04, 0x01,
34481 : 0x02, 0x01, 0x00, 0x01, 0x03, 0x01, 0x04, 0x70,
34482 : 0x1f, 0x01, 0x02, 0x1b, 0x12, 0x01, 0x27, 0x00,
34483 : 0x70, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
34484 : 0x02, 0x01, 0x00, 0x1f, 0x2f, 0x39, 0x00, 0x02,
34485 : 0x07, 0x01, 0x09, 0x27, 0x00, 0x37, 0x00, 0x01,
34486 : 0x08, 0x2f
34487 : };
34488 : return complete_seq (expand_encoding, operands);
34489 : }
34490 :
|