Line data Source code
1 : /* Generated automatically by the program `genemit'
2 : from the machine description file `md'. */
3 :
4 : #define IN_TARGET_CODE 1
5 : #include "config.h"
6 : #include "system.h"
7 : #include "coretypes.h"
8 : #include "backend.h"
9 : #include "predict.h"
10 : #include "tree.h"
11 : #include "rtl.h"
12 : #include "alias.h"
13 : #include "varasm.h"
14 : #include "stor-layout.h"
15 : #include "calls.h"
16 : #include "memmodel.h"
17 : #include "tm_p.h"
18 : #include "flags.h"
19 : #include "insn-config.h"
20 : #include "expmed.h"
21 : #include "dojump.h"
22 : #include "explow.h"
23 : #include "emit-rtl.h"
24 : #include "stmt.h"
25 : #include "expr.h"
26 : #include "insn-codes.h"
27 : #include "optabs.h"
28 : #include "dfp.h"
29 : #include "output.h"
30 : #include "recog.h"
31 : #include "df.h"
32 : #include "resource.h"
33 : #include "reload.h"
34 : #include "diagnostic-core.h"
35 : #include "regs.h"
36 : #include "tm-constrs.h"
37 : #include "ggc.h"
38 : #include "target.h"
39 :
40 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1530 */
41 : rtx
42 2 : gen_ccmphi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
43 : {
44 2 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
45 2 : static const uint8_t expand_encoding[] = {
46 : 0x1f, 0x01, 0x00, 0x39, 0x02, 0x03, 0x00, 0x01,
47 : 0x30, 0x02, 0x11, 0x27, 0x00, 0x3a, 0x02, 0x3c,
48 : 0x10, 0x01, 0x02, 0x01, 0x03, 0x27, 0x00, 0x1a,
49 : 0x02, 0x01, 0x01, 0x04, 0x6e
50 : };
51 2 : return expand_rtx (expand_encoding, operands);
52 : }
53 :
54 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3941 */
55 : rtx
56 88 : gen_pushp_di (const rtx operand0, const rtx operand1)
57 : {
58 88 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
59 88 : static const uint8_t expand_encoding[] = {
60 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01,
61 : 0x1a, 0x12, 0x01, 0x27, 0x00, 0x6d
62 : };
63 88 : return expand_rtx (expand_encoding, operands);
64 : }
65 :
66 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5028 */
67 : rtx
68 6061 : gen_extendsidi2_1 (const rtx operand0, const rtx operand1)
69 : {
70 6061 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
71 6061 : static const uint8_t expand_encoding[] = {
72 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x6e, 0x12,
73 : 0x01, 0x01, 0x05, 0x02, 0x11, 0x21, 0x00, 0x31,
74 : 0x11
75 : };
76 6061 : return expand_rtx (expand_encoding, operands);
77 : }
78 :
79 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5704 */
80 : rtx
81 7158 : gen_truncxfdf2 (const rtx operand0, const rtx operand1)
82 : {
83 7158 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
84 7158 : static const uint8_t expand_encoding[] = {
85 : 0x1f, 0x01, 0x00, 0x72, 0x2e, 0x01, 0x01
86 : };
87 7158 : return expand_rtx (expand_encoding, operands);
88 : }
89 :
90 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5992 */
91 : rtx
92 5252 : gen_fix_truncsfsi_sse (const rtx operand0, const rtx operand1)
93 : {
94 5252 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
95 5252 : static const uint8_t expand_encoding[] = {
96 : 0x1f, 0x01, 0x00, 0x74, 0x11, 0x01, 0x01
97 : };
98 5252 : return expand_rtx (expand_encoding, operands);
99 : }
100 :
101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6092 */
102 : rtx
103 3304 : gen_x86_fnstcw_1 (const rtx operand0)
104 : {
105 3304 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
106 3304 : static const uint8_t expand_encoding[] = {
107 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x01, 0x27, 0x00,
108 : 0x1d
109 : };
110 3304 : 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_floatunsdihf2 (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, 0x75, 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_addvsi4_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, 0x12, 0x6e, 0x12, 0x01, 0x01, 0x01,
132 : 0x03, 0x6e, 0x12, 0x3b, 0x11, 0x01, 0x01, 0x01,
133 : 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x11, 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:9198 */
140 : rtx
141 106 : gen_addcarrysi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
142 : {
143 106 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
144 106 : static const uint8_t expand_encoding[] = {
145 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
146 : 0x08, 0x6f, 0x12, 0x3b, 0x11, 0x3b, 0x11, 0x03,
147 : 0x11, 0x05, 0x01, 0x03, 0x27, 0x00, 0x01, 0x01,
148 : 0x01, 0x02, 0x3b, 0x12, 0x03, 0x12, 0x04, 0x01,
149 : 0x03, 0x27, 0x00, 0x6f, 0x12, 0x01, 0x02, 0x1f,
150 : 0x01, 0x00, 0x3b, 0x11, 0x3b, 0x11, 0x02, 0x05,
151 : 0x01, 0x03, 0x27, 0x00, 0x01, 0x01, 0x01, 0x02
152 : };
153 106 : return expand_rtx (expand_encoding, operands);
154 : }
155 :
156 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10328 */
157 : rtx
158 1451 : gen_adddi3_cc_overflow_1 (const rtx operand0, const rtx operand1, const rtx operand2)
159 : {
160 1451 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
161 1451 : static const uint8_t expand_encoding[] = {
162 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
163 : 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02, 0x01,
164 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01, 0x01,
165 : 0x01, 0x02
166 : };
167 1451 : return expand_rtx (expand_encoding, operands);
168 : }
169 :
170 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11864 */
171 : rtx
172 2 : gen_divmodsi4_zext_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
173 : {
174 2 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
175 2 : static const uint8_t expand_encoding[] = {
176 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x6f, 0x12,
177 : 0x43, 0x11, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01,
178 : 0x01, 0x46, 0x11, 0x01, 0x02, 0x01, 0x03, 0x1a,
179 : 0x00, 0x01, 0x27, 0x00, 0x21, 0x05, 0x02, 0x11
180 : };
181 2 : return expand_rtx (expand_encoding, operands);
182 : }
183 :
184 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15777 */
185 : rtx
186 0 : gen_x86_64_shld_nf (const rtx operand0, const rtx operand1, const rtx operand2)
187 : {
188 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
189 0 : static const uint8_t expand_encoding[] = {
190 : 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x4d, 0x12, 0x01,
191 : 0x00, 0x49, 0x0f, 0x01, 0x02, 0x27, 0x3f, 0x32,
192 : 0x12, 0x50, 0x13, 0x6f, 0x13, 0x01, 0x01, 0x3c,
193 : 0x0f, 0x27, 0x40, 0x49, 0x0f, 0x01, 0x02, 0x27,
194 : 0x3f, 0x00
195 : };
196 0 : return expand_rtx (expand_encoding, operands);
197 : }
198 :
199 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16029 */
200 : rtx
201 0 : gen_x86_shld_ndd_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
202 : {
203 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
204 0 : static const uint8_t expand_encoding[] = {
205 : 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x4d, 0x11, 0x01,
206 : 0x01, 0x49, 0x0f, 0x01, 0x03, 0x27, 0x1f, 0x32,
207 : 0x11, 0x50, 0x12, 0x6f, 0x12, 0x01, 0x02, 0x3c,
208 : 0x0f, 0x27, 0x20, 0x49, 0x0f, 0x01, 0x03, 0x27,
209 : 0x1f, 0x00
210 : };
211 0 : return expand_rtx (expand_encoding, operands);
212 : }
213 :
214 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17116 */
215 : rtx
216 0 : gen_lshrdi3_doubleword_lowpart_nf (const rtx operand0, const rtx operand1, const rtx operand2)
217 : {
218 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
219 0 : static const uint8_t expand_encoding[] = {
220 : 0x1f, 0x01, 0x00, 0x32, 0x11, 0x50, 0x12, 0x01,
221 : 0x01, 0x01, 0x02, 0x00
222 : };
223 0 : return expand_rtx (expand_encoding, operands);
224 : }
225 :
226 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17160 */
227 : rtx
228 5102 : gen_x86_64_shrd (const rtx operand0, const rtx operand1, const rtx operand2)
229 : {
230 5102 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
231 5102 : static const uint8_t expand_encoding[] = {
232 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x12,
233 : 0x50, 0x12, 0x01, 0x00, 0x49, 0x0f, 0x01, 0x02,
234 : 0x27, 0x3f, 0x32, 0x12, 0x4d, 0x13, 0x6f, 0x13,
235 : 0x01, 0x01, 0x3c, 0x0f, 0x27, 0x40, 0x49, 0x0f,
236 : 0x01, 0x02, 0x27, 0x3f, 0x00, 0x05, 0x02, 0x11
237 : };
238 5102 : return expand_rtx (expand_encoding, operands);
239 : }
240 :
241 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17412 */
242 : rtx
243 0 : gen_x86_shrd_ndd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
244 : {
245 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
246 0 : static const uint8_t expand_encoding[] = {
247 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x11,
248 : 0x50, 0x11, 0x01, 0x01, 0x49, 0x0f, 0x01, 0x03,
249 : 0x27, 0x1f, 0x32, 0x11, 0x4d, 0x12, 0x6f, 0x12,
250 : 0x01, 0x02, 0x3c, 0x0f, 0x27, 0x20, 0x49, 0x0f,
251 : 0x01, 0x03, 0x27, 0x1f, 0x00, 0x05, 0x02, 0x11
252 : };
253 0 : return expand_rtx (expand_encoding, operands);
254 : }
255 :
256 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18832 */
257 : rtx
258 0 : gen_rotl32di2_doubleword (const rtx operand0, const rtx operand1)
259 : {
260 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
261 0 : static const uint8_t expand_encoding[] = {
262 : 0x1f, 0x01, 0x00, 0x4e, 0x12, 0x01, 0x01, 0x27,
263 : 0x20
264 : };
265 0 : return expand_rtx (expand_encoding, operands);
266 : }
267 :
268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19173 */
269 : rtx
270 1 : gen_lshrdi3_carry (const rtx operand0, const rtx operand1)
271 : {
272 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
273 1 : static const uint8_t expand_encoding[] = {
274 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a,
275 : 0x08, 0x02, 0x49, 0x12, 0x01, 0x01, 0x27, 0x01,
276 : 0x27, 0x00, 0x29, 0x1f, 0x01, 0x00, 0x50, 0x12,
277 : 0x01, 0x01, 0x27, 0x01
278 : };
279 1 : return expand_rtx (expand_encoding, operands);
280 : }
281 :
282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21205 */
283 : rtx
284 16 : gen_set_got_rex64 (const rtx operand0)
285 : {
286 16 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
287 16 : static const uint8_t expand_encoding[] = {
288 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x27, 0x00,
289 : 0x0f
290 : };
291 16 : return expand_rtx (expand_encoding, operands);
292 : }
293 :
294 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21675 */
295 : rtx
296 413 : gen_bsr_rex64_1_zext (const rtx operand0, const rtx operand1)
297 : {
298 413 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
299 413 : static const uint8_t expand_encoding[] = {
300 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12,
301 : 0x3c, 0x11, 0x27, 0x3f, 0x32, 0x11, 0x81, 0x00,
302 : 0x12, 0x01, 0x01, 0x00, 0x05, 0x02, 0x11
303 : };
304 413 : return expand_rtx (expand_encoding, operands);
305 : }
306 :
307 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22081 */
308 : rtx
309 0 : gen_tzcnt_di_nf (const rtx operand0, const rtx operand1)
310 : {
311 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
312 0 : static const uint8_t expand_encoding[] = {
313 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
314 : 0x62
315 : };
316 0 : return expand_rtx (expand_encoding, operands);
317 : }
318 :
319 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22168 */
320 : rtx
321 57 : gen_bmi_bextr_si (const rtx operand0, const rtx operand1, const rtx operand2)
322 : {
323 57 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
324 57 : static const uint8_t expand_encoding[] = {
325 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x11,
326 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x63, 0x05, 0x02,
327 : 0x11
328 : };
329 57 : return expand_rtx (expand_encoding, operands);
330 : }
331 :
332 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22747 */
333 : rtx
334 93 : gen_popcountsi2 (const rtx operand0, const rtx operand1)
335 : {
336 93 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
337 93 : static const uint8_t expand_encoding[] = {
338 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x02,
339 : 0x11, 0x01, 0x01, 0x05, 0x02, 0x11
340 : };
341 93 : return expand_rtx (expand_encoding, operands);
342 : }
343 :
344 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24208 */
345 : rtx
346 16 : gen_rsqrthf2 (const rtx operand0, const rtx operand1)
347 : {
348 16 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
349 16 : static const uint8_t expand_encoding[] = {
350 : 0x1f, 0x01, 0x00, 0x1a, 0x2b, 0x01, 0x01, 0x01,
351 : 0x38
352 : };
353 16 : return expand_rtx (expand_encoding, operands);
354 : }
355 :
356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24986 */
357 : rtx
358 5 : gen_fyl2xp1xf3_i387 (const rtx operand0, const rtx operand1, const rtx operand2)
359 : {
360 5 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
361 5 : static const uint8_t expand_encoding[] = {
362 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
363 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x45, 0x21, 0x00,
364 : 0x31, 0x2f
365 : };
366 5 : return expand_rtx (expand_encoding, operands);
367 : }
368 :
369 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25588 */
370 : rtx
371 0 : gen_lrintxfhi2 (const rtx operand0, const rtx operand1)
372 : {
373 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
374 0 : static const uint8_t expand_encoding[] = {
375 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x01, 0x01, 0x01,
376 : 0x47
377 : };
378 0 : return expand_rtx (expand_encoding, operands);
379 : }
380 :
381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25702 */
382 : rtx
383 77 : gen_frndintxf2_floor_i387 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
384 : {
385 77 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
386 77 : static const uint8_t expand_encoding[] = {
387 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
388 : 0x01, 0x01, 0x01, 0x4c, 0x20, 0x00, 0x01, 0x02,
389 : 0x20, 0x00, 0x01, 0x03
390 : };
391 77 : return expand_rtx (expand_encoding, operands);
392 : }
393 :
394 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25896 */
395 : rtx
396 61 : gen_fxamdf2_i387 (const rtx operand0, const rtx operand1)
397 : {
398 61 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
399 61 : static const uint8_t expand_encoding[] = {
400 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x01, 0x01, 0x01,
401 : 0x4a
402 : };
403 61 : return expand_rtx (expand_encoding, operands);
404 : }
405 :
406 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27277 */
407 : rtx
408 4 : gen_sminhf3 (const rtx operand0, const rtx operand1, const rtx operand2)
409 : {
410 4 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
411 4 : static const uint8_t expand_encoding[] = {
412 : 0x1f, 0x01, 0x00, 0x52, 0x2b, 0x01, 0x01, 0x01,
413 : 0x02
414 : };
415 4 : return expand_rtx (expand_encoding, operands);
416 : }
417 :
418 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27905 */
419 : rtx
420 0 : gen_adjust_stack_and_probe_si (const rtx operand0, const rtx operand1, const rtx operand2)
421 : {
422 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
423 0 : static const uint8_t expand_encoding[] = {
424 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x1b, 0x11,
425 : 0x01, 0x01, 0x01, 0x03, 0x1f, 0x30, 0x11, 0x07,
426 : 0x3c, 0x11, 0x30, 0x11, 0x07, 0x01, 0x02, 0x05,
427 : 0x02, 0x11, 0x21, 0x00, 0x36, 0x01, 0x31, 0x00
428 : };
429 0 : return expand_rtx (expand_encoding, operands);
430 : }
431 :
432 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29670 */
433 : rtx
434 38545 : gen_trap (void)
435 : {
436 38545 : static const uint8_t expand_encoding[] = {
437 : 0x26, 0x00, 0x27, 0x01, 0x27, 0x06
438 : };
439 38545 : return expand_rtx (expand_encoding, nullptr);
440 : }
441 :
442 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29815 */
443 : rtx
444 34 : gen_sse4_2_crc32si (const rtx operand0, const rtx operand1, const rtx operand2)
445 : {
446 34 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
447 34 : static const uint8_t expand_encoding[] = {
448 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x01, 0x01,
449 : 0x01, 0x02, 0x60
450 : };
451 34 : return expand_rtx (expand_encoding, operands);
452 : }
453 :
454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30011 */
455 : rtx
456 0 : gen_xsave (const rtx operand0, const rtx operand1)
457 : {
458 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
459 0 : static const uint8_t expand_encoding[] = {
460 : 0x1f, 0x01, 0x00, 0x1b, 0x01, 0x01, 0x01, 0x01,
461 : 0x18
462 : };
463 0 : return expand_rtx (expand_encoding, operands);
464 : }
465 :
466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30037 */
467 : rtx
468 19 : gen_xsavec64 (const rtx operand0, const rtx operand1, const rtx operand2)
469 : {
470 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
471 19 : static const uint8_t expand_encoding[] = {
472 : 0x1f, 0x01, 0x00, 0x1b, 0x01, 0x02, 0x01, 0x01,
473 : 0x01, 0x02, 0x23
474 : };
475 19 : return expand_rtx (expand_encoding, operands);
476 : }
477 :
478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30110 */
479 : rtx
480 0 : gen_xgetbv (const rtx operand0, const rtx operand1)
481 : {
482 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
483 0 : static const uint8_t expand_encoding[] = {
484 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x01, 0x01, 0x01,
485 : 0x24
486 : };
487 0 : return expand_rtx (expand_encoding, operands);
488 : }
489 :
490 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30214 */
491 : rtx
492 12 : gen_lwp_lwpvalsi (const rtx operand0, const rtx operand1, const rtx operand2)
493 : {
494 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
495 12 : static const uint8_t expand_encoding[] = {
496 : 0x1b, 0x00, 0x03, 0x01, 0x00, 0x01, 0x01, 0x01,
497 : 0x02, 0x0e
498 : };
499 12 : return expand_rtx (expand_encoding, operands);
500 : }
501 :
502 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30262 */
503 : rtx
504 19 : gen_wrfsbasedi (const rtx operand0)
505 : {
506 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
507 19 : static const uint8_t expand_encoding[] = {
508 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x12
509 : };
510 19 : return expand_rtx (expand_encoding, operands);
511 : }
512 :
513 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30320 */
514 : rtx
515 16 : gen_rdsspsi (const rtx operand0, const rtx operand1)
516 : {
517 16 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
518 16 : static const uint8_t expand_encoding[] = {
519 : 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x01, 0x01, 0x01,
520 : 0x3b
521 : };
522 16 : return expand_rtx (expand_encoding, operands);
523 : }
524 :
525 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30370 */
526 : rtx
527 19 : gen_setssbsy (void)
528 : {
529 19 : static const uint8_t expand_encoding[] = {
530 : 0x1b, 0x00, 0x01, 0x27, 0x00, 0x41
531 : };
532 19 : return expand_rtx (expand_encoding, nullptr);
533 : }
534 :
535 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30458 */
536 : rtx
537 29 : gen_xtest_1 (void)
538 : {
539 29 : static const uint8_t expand_encoding[] = {
540 : 0x1f, 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01, 0x27,
541 : 0x00, 0x31
542 : };
543 29 : return expand_rtx (expand_encoding, nullptr);
544 : }
545 :
546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30568 */
547 : rtx
548 18 : gen_rdpid_rex64 (const rtx operand0)
549 : {
550 18 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
551 18 : static const uint8_t expand_encoding[] = {
552 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x01, 0x27, 0x00,
553 : 0x39
554 : };
555 18 : return expand_rtx (expand_encoding, operands);
556 : }
557 :
558 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30623 */
559 : rtx
560 19 : gen_enqcmds_di (const rtx operand0, const rtx operand1)
561 : {
562 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
563 19 : static const uint8_t expand_encoding[] = {
564 : 0x1f, 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x02, 0x01,
565 : 0x00, 0x01, 0x01, 0x50
566 : };
567 19 : return expand_rtx (expand_encoding, operands);
568 : }
569 :
570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30716 */
571 : rtx
572 35 : gen_speculation_barrier (void)
573 : {
574 35 : static const uint8_t expand_encoding[] = {
575 : 0x1b, 0x00, 0x01, 0x27, 0x00, 0x4d
576 : };
577 35 : return expand_rtx (expand_encoding, nullptr);
578 : }
579 :
580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30842 */
581 : rtx
582 27 : gen_urdmsr (const rtx operand0, const rtx operand1)
583 : {
584 27 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
585 27 : static const uint8_t expand_encoding[] = {
586 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x01, 0x01, 0x01,
587 : 0x55
588 : };
589 27 : return expand_rtx (expand_encoding, operands);
590 : }
591 :
592 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:941 */
593 : rtx
594 14 : gen_mmx_rcpit2v2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
595 : {
596 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
597 14 : static const uint8_t expand_encoding[] = {
598 : 0x1f, 0x01, 0x00, 0x1a, 0x67, 0x02, 0x01, 0x01,
599 : 0x01, 0x02, 0x73
600 : };
601 14 : return expand_rtx (expand_encoding, operands);
602 : }
603 :
604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1378 */
605 : rtx
606 27 : gen_iorv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
607 : {
608 27 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
609 27 : static const uint8_t expand_encoding[] = {
610 : 0x1f, 0x01, 0x00, 0x4a, 0x67, 0x01, 0x01, 0x01,
611 : 0x02
612 : };
613 27 : return expand_rtx (expand_encoding, operands);
614 : }
615 :
616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2604 */
617 : rtx
618 0 : gen_andv2bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
619 : {
620 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
621 0 : static const uint8_t expand_encoding[] = {
622 : 0x1f, 0x01, 0x00, 0x49, 0x64, 0x01, 0x01, 0x01,
623 : 0x02
624 : };
625 0 : return expand_rtx (expand_encoding, operands);
626 : }
627 :
628 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2604 */
629 : rtx
630 0 : gen_andv4hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
631 : {
632 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
633 0 : static const uint8_t expand_encoding[] = {
634 : 0x1f, 0x01, 0x00, 0x49, 0x66, 0x01, 0x01, 0x01,
635 : 0x02
636 : };
637 0 : return expand_rtx (expand_encoding, operands);
638 : }
639 :
640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3365 */
641 : rtx
642 0 : gen_ssaddv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
643 : {
644 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
645 0 : static const uint8_t expand_encoding[] = {
646 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x45, 0x01, 0x01,
647 : 0x01, 0x02
648 : };
649 0 : return expand_rtx (expand_encoding, operands);
650 : }
651 :
652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3365 */
653 : rtx
654 0 : gen_sssubv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
655 : {
656 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
657 0 : static const uint8_t expand_encoding[] = {
658 : 0x1f, 0x01, 0x00, 0x81, 0x10, 0x46, 0x01, 0x01,
659 : 0x01, 0x02
660 : };
661 0 : return expand_rtx (expand_encoding, operands);
662 : }
663 :
664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3735 */
665 : rtx
666 7 : gen_sminv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
667 : {
668 7 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
669 7 : static const uint8_t expand_encoding[] = {
670 : 0x1f, 0x01, 0x00, 0x52, 0x45, 0x01, 0x01, 0x01,
671 : 0x02
672 : };
673 7 : return expand_rtx (expand_encoding, operands);
674 : }
675 :
676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3813 */
677 : rtx
678 18 : gen_uminv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
679 : {
680 18 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
681 18 : static const uint8_t expand_encoding[] = {
682 : 0x1f, 0x01, 0x00, 0x54, 0x45, 0x01, 0x01, 0x01,
683 : 0x02
684 : };
685 18 : return expand_rtx (expand_encoding, operands);
686 : }
687 :
688 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3863 */
689 : rtx
690 4 : gen_absv2hi2 (const rtx operand0, const rtx operand1)
691 : {
692 4 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
693 4 : static const uint8_t expand_encoding[] = {
694 : 0x1f, 0x01, 0x00, 0x7b, 0x46, 0x01, 0x01
695 : };
696 4 : return expand_rtx (expand_encoding, operands);
697 : }
698 :
699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3955 */
700 : rtx
701 320 : gen_mmx_lshrv1si3 (const rtx operand0, const rtx operand1, const rtx operand2)
702 : {
703 320 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
704 320 : static const uint8_t expand_encoding[] = {
705 : 0x1f, 0x01, 0x00, 0x50, 0x47, 0x01, 0x01, 0x01,
706 : 0x02
707 : };
708 320 : return expand_rtx (expand_encoding, operands);
709 : }
710 :
711 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4339 */
712 : rtx
713 152 : gen_mmx_pblendvb_v8qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
714 : {
715 152 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
716 152 : static const uint8_t expand_encoding[] = {
717 : 0x1f, 0x01, 0x00, 0x1a, 0x48, 0x03, 0x01, 0x01,
718 : 0x01, 0x02, 0x01, 0x03, 0x34
719 : };
720 152 : return expand_rtx (expand_encoding, operands);
721 : }
722 :
723 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4621 */
724 : rtx
725 0 : gen_mmx_andnotv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
726 : {
727 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
728 0 : static const uint8_t expand_encoding[] = {
729 : 0x1f, 0x01, 0x00, 0x49, 0x49, 0x4c, 0x49, 0x01,
730 : 0x01, 0x01, 0x02
731 : };
732 0 : return expand_rtx (expand_encoding, operands);
733 : }
734 :
735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4954 */
736 : rtx
737 995 : gen_mmx_punpckhwd (const rtx operand0, const rtx operand1, const rtx operand2)
738 : {
739 995 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
740 995 : static const uint8_t expand_encoding[] = {
741 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x49, 0x81, 0x0b,
742 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
743 : 0x27, 0x02, 0x27, 0x06, 0x27, 0x03, 0x27, 0x07
744 : };
745 995 : return expand_rtx (expand_encoding, operands);
746 : }
747 :
748 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5132 */
749 : rtx
750 1 : gen_sse4_1_sign_extendv2qiv2hi2 (const rtx operand0, const rtx operand1)
751 : {
752 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
753 1 : static const uint8_t expand_encoding[] = {
754 : 0x1f, 0x01, 0x00, 0x6e, 0x46, 0x81, 0x0a, 0x44,
755 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
756 : 0x01
757 : };
758 1 : return expand_rtx (expand_encoding, operands);
759 : }
760 :
761 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5686 */
762 : rtx
763 0 : gen_mmx_pswapdv2si2 (const rtx operand0, const rtx operand1)
764 : {
765 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
766 0 : static const uint8_t expand_encoding[] = {
767 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x4a, 0x01, 0x01,
768 : 0x17, 0x00, 0x02, 0x27, 0x01, 0x27, 0x00
769 : };
770 0 : return expand_rtx (expand_encoding, operands);
771 : }
772 :
773 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6986 */
774 : rtx
775 1 : gen_popcountv2qi2 (const rtx operand0, const rtx operand1)
776 : {
777 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
778 1 : static const uint8_t expand_encoding[] = {
779 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x44, 0x01, 0x01
780 : };
781 1 : return expand_rtx (expand_encoding, operands);
782 : }
783 :
784 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
785 : rtx
786 0 : gen_movv16si_internal (const rtx operand0, const rtx operand1)
787 : {
788 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
789 0 : static const uint8_t expand_encoding[] = {
790 : 0x1f, 0x01, 0x00, 0x01, 0x01
791 : };
792 0 : return expand_rtx (expand_encoding, operands);
793 : }
794 :
795 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
796 : rtx
797 0 : gen_movv16hf_internal (const rtx operand0, const rtx operand1)
798 : {
799 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
800 0 : static const uint8_t expand_encoding[] = {
801 : 0x1f, 0x01, 0x00, 0x01, 0x01
802 : };
803 0 : return expand_rtx (expand_encoding, operands);
804 : }
805 :
806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
807 : rtx
808 8 : gen_movv2df_internal (const rtx operand0, const rtx operand1)
809 : {
810 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
811 8 : static const uint8_t expand_encoding[] = {
812 : 0x1f, 0x01, 0x00, 0x01, 0x01
813 : };
814 8 : return expand_rtx (expand_encoding, operands);
815 : }
816 :
817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1769 */
818 : rtx
819 18 : gen_avx512f_blendmv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
820 : {
821 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
822 18 : static const uint8_t expand_encoding[] = {
823 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x01, 0x02,
824 : 0x01, 0x01, 0x01, 0x03
825 : };
826 18 : return expand_rtx (expand_encoding, operands);
827 : }
828 :
829 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1805 */
830 : rtx
831 12 : gen_avx512vl_blendmv16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
832 : {
833 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
834 12 : static const uint8_t expand_encoding[] = {
835 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x01, 0x02,
836 : 0x01, 0x01, 0x01, 0x03
837 : };
838 12 : return expand_rtx (expand_encoding, operands);
839 : }
840 :
841 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1805 */
842 : rtx
843 0 : gen_avx512vl_blendmv8bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
844 : {
845 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
846 0 : static const uint8_t expand_encoding[] = {
847 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x01, 0x02,
848 : 0x01, 0x01, 0x01, 0x03
849 : };
850 0 : return expand_rtx (expand_encoding, operands);
851 : }
852 :
853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2047 */
854 : rtx
855 11 : gen_avx_movntv4df (const rtx operand0, const rtx operand1)
856 : {
857 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
858 11 : static const uint8_t expand_encoding[] = {
859 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x01, 0x01, 0x01,
860 : 0x76
861 : };
862 11 : return expand_rtx (expand_encoding, operands);
863 : }
864 :
865 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2120 */
866 : rtx
867 22 : gen_kxorhi (const rtx operand0, const rtx operand1, const rtx operand2)
868 : {
869 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
870 22 : static const uint8_t expand_encoding[] = {
871 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x10,
872 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
873 : 0x00, 0x81, 0x2f
874 : };
875 22 : return expand_rtx (expand_encoding, operands);
876 : }
877 :
878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2165 */
879 : rtx
880 11 : gen_kandndi (const rtx operand0, const rtx operand1, const rtx operand2)
881 : {
882 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
883 11 : static const uint8_t expand_encoding[] = {
884 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x12,
885 : 0x4c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00,
886 : 0x01, 0x27, 0x00, 0x81, 0x2f
887 : };
888 11 : return expand_rtx (expand_encoding, operands);
889 : }
890 :
891 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2279 */
892 : rtx
893 11 : gen_kaddhi (const rtx operand0, const rtx operand1, const rtx operand2)
894 : {
895 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
896 11 : static const uint8_t expand_encoding[] = {
897 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x10,
898 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
899 : 0x00, 0x81, 0x2f
900 : };
901 11 : return expand_rtx (expand_encoding, operands);
902 : }
903 :
904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2294 */
905 : rtx
906 13 : gen_klshiftrtdi (const rtx operand0, const rtx operand1, const rtx operand2)
907 : {
908 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
909 13 : static const uint8_t expand_encoding[] = {
910 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50, 0x12,
911 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
912 : 0x00, 0x81, 0x2f
913 : };
914 13 : return expand_rtx (expand_encoding, operands);
915 : }
916 :
917 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2395 */
918 : rtx
919 0 : gen_kortesthi_ccz (const rtx operand0, const rtx operand1)
920 : {
921 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
922 0 : static const uint8_t expand_encoding[] = {
923 : 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02, 0x01,
924 : 0x00, 0x01, 0x01, 0x81, 0x30
925 : };
926 0 : return expand_rtx (expand_encoding, operands);
927 : }
928 :
929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
930 : rtx
931 0 : gen_avx512fp16_vmsubv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
932 : {
933 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
934 0 : static const uint8_t expand_encoding[] = {
935 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x3c, 0x6a,
936 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
937 : };
938 0 : return expand_rtx (expand_encoding, operands);
939 : }
940 :
941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
942 : rtx
943 9 : gen_sse_vmsubv4sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
944 : {
945 9 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
946 9 : static const uint8_t expand_encoding[] = {
947 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
948 : 0x6b, 0x3c, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01,
949 : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
950 : };
951 9 : return expand_rtx (expand_encoding, operands);
952 : }
953 :
954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
955 : rtx
956 46 : gen_sse2_vmsubv2df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
957 : {
958 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
959 46 : static const uint8_t expand_encoding[] = {
960 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
961 : 0x6c, 0x81, 0x09, 0x6c, 0x3c, 0x6c, 0x01, 0x01,
962 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01,
963 : 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
964 : };
965 46 : return expand_rtx (expand_encoding, operands);
966 : }
967 :
968 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
969 : rtx
970 0 : gen_sse_vmmulv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
971 : {
972 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
973 0 : static const uint8_t expand_encoding[] = {
974 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
975 : 0x6b, 0x3e, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01,
976 : 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
977 : };
978 0 : return expand_rtx (expand_encoding, operands);
979 : }
980 :
981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
982 : rtx
983 9 : gen_sse2_vmdivv2df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
984 : {
985 9 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
986 9 : static const uint8_t expand_encoding[] = {
987 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
988 : 0x6c, 0x43, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
989 : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
990 : };
991 9 : return expand_rtx (expand_encoding, operands);
992 : }
993 :
994 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
995 : rtx
996 0 : gen_avx512fp16_divv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
997 : {
998 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
999 0 : static const uint8_t expand_encoding[] = {
1000 : 0x1f, 0x01, 0x00, 0x43, 0x6a, 0x01, 0x01, 0x01,
1001 : 0x02
1002 : };
1003 0 : return expand_rtx (expand_encoding, operands);
1004 : }
1005 :
1006 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
1007 : rtx
1008 0 : gen_sse_divv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1009 : {
1010 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1011 0 : static const uint8_t expand_encoding[] = {
1012 : 0x1f, 0x01, 0x00, 0x43, 0x6b, 0x01, 0x01, 0x01,
1013 : 0x02
1014 : };
1015 0 : return expand_rtx (expand_encoding, operands);
1016 : }
1017 :
1018 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
1019 : rtx
1020 25 : gen_sse2_divv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1021 : {
1022 25 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1023 25 : static const uint8_t expand_encoding[] = {
1024 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x43, 0x6c,
1025 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
1026 : };
1027 25 : return expand_rtx (expand_encoding, operands);
1028 : }
1029 :
1030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3036 */
1031 : rtx
1032 36 : gen_rcp14v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1033 : {
1034 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1035 36 : static const uint8_t expand_encoding[] = {
1036 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
1037 : 0x01, 0x01, 0x01, 0x81, 0x22, 0x01, 0x02, 0x01,
1038 : 0x03
1039 : };
1040 36 : return expand_rtx (expand_encoding, operands);
1041 : }
1042 :
1043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1044 : rtx
1045 0 : gen_avx512fp16_sqrtv32hf2 (const rtx operand0, const rtx operand1)
1046 : {
1047 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1048 0 : static const uint8_t expand_encoding[] = {
1049 : 0x1f, 0x01, 0x00, 0x7c, 0x73, 0x01, 0x01
1050 : };
1051 0 : return expand_rtx (expand_encoding, operands);
1052 : }
1053 :
1054 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1055 : rtx
1056 0 : gen_avx512f_sqrtv16sf2 (const rtx operand0, const rtx operand1)
1057 : {
1058 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1059 0 : static const uint8_t expand_encoding[] = {
1060 : 0x1f, 0x01, 0x00, 0x7c, 0x74, 0x01, 0x01
1061 : };
1062 0 : return expand_rtx (expand_encoding, operands);
1063 : }
1064 :
1065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1066 : rtx
1067 0 : gen_avx512f_sqrtv8df2 (const rtx operand0, const rtx operand1)
1068 : {
1069 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1070 0 : static const uint8_t expand_encoding[] = {
1071 : 0x1f, 0x01, 0x00, 0x7c, 0x75, 0x01, 0x01
1072 : };
1073 0 : return expand_rtx (expand_encoding, operands);
1074 : }
1075 :
1076 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3117 */
1077 : rtx
1078 0 : gen_avx512fp16_vmsqrtv8hf2 (const rtx operand0, const rtx operand1, const rtx operand2)
1079 : {
1080 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1081 0 : static const uint8_t expand_encoding[] = {
1082 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x7c, 0x6a,
1083 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x01
1084 : };
1085 0 : return expand_rtx (expand_encoding, operands);
1086 : }
1087 :
1088 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3117 */
1089 : rtx
1090 0 : gen_sse2_vmsqrtv2df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1091 : {
1092 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1093 0 : static const uint8_t expand_encoding[] = {
1094 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
1095 : 0x6c, 0x7c, 0x6c, 0x01, 0x01, 0x01, 0x03, 0x01,
1096 : 0x04, 0x01, 0x02, 0x27, 0x01
1097 : };
1098 0 : return expand_rtx (expand_encoding, operands);
1099 : }
1100 :
1101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3196 */
1102 : rtx
1103 36 : gen_rsqrt14v8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1104 : {
1105 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1106 36 : static const uint8_t expand_encoding[] = {
1107 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
1108 : 0x01, 0x01, 0x01, 0x81, 0x23, 0x01, 0x02, 0x01,
1109 : 0x03
1110 : };
1111 36 : return expand_rtx (expand_encoding, operands);
1112 : }
1113 :
1114 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3276 */
1115 : rtx
1116 0 : gen_avx512fp16_vmrsqrtv8hf2 (const rtx operand0, const rtx operand1, const rtx operand2)
1117 : {
1118 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1119 0 : static const uint8_t expand_encoding[] = {
1120 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1121 : 0x01, 0x01, 0x01, 0x38, 0x01, 0x02, 0x27, 0x01
1122 : };
1123 0 : return expand_rtx (expand_encoding, operands);
1124 : }
1125 :
1126 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1127 : rtx
1128 33 : gen_ieee_minv32hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1129 : {
1130 33 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1131 33 : static const uint8_t expand_encoding[] = {
1132 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1133 : 0x73, 0x1a, 0x73, 0x02, 0x01, 0x01, 0x01, 0x02,
1134 : 0x3f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
1135 : 0x33
1136 : };
1137 33 : return expand_rtx (expand_encoding, operands);
1138 : }
1139 :
1140 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1141 : rtx
1142 62 : gen_ieee_maxv16sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1143 : {
1144 62 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1145 62 : static const uint8_t expand_encoding[] = {
1146 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1147 : 0x74, 0x1a, 0x74, 0x02, 0x01, 0x01, 0x01, 0x02,
1148 : 0x40, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
1149 : 0x33
1150 : };
1151 62 : return expand_rtx (expand_encoding, operands);
1152 : }
1153 :
1154 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1155 : rtx
1156 0 : gen_ieee_maxv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1157 : {
1158 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1159 0 : static const uint8_t expand_encoding[] = {
1160 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x01, 0x01,
1161 : 0x01, 0x02, 0x40
1162 : };
1163 0 : return expand_rtx (expand_encoding, operands);
1164 : }
1165 :
1166 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1167 : rtx
1168 24 : gen_ieee_maxv4df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1169 : {
1170 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1171 24 : static const uint8_t expand_encoding[] = {
1172 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
1173 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x03,
1174 : 0x01, 0x04
1175 : };
1176 24 : return expand_rtx (expand_encoding, operands);
1177 : }
1178 :
1179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1180 : rtx
1181 33 : gen_avx512fp16_ieee_vmmaxv8hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1182 : {
1183 33 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1184 33 : static const uint8_t expand_encoding[] = {
1185 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1186 : 0x6a, 0x81, 0x09, 0x6a, 0x1a, 0x6a, 0x02, 0x01,
1187 : 0x01, 0x01, 0x02, 0x40, 0x01, 0x03, 0x01, 0x04,
1188 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
1189 : };
1190 33 : return expand_rtx (expand_encoding, operands);
1191 : }
1192 :
1193 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1194 : rtx
1195 46 : gen_sse_ieee_vmminv4sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1196 : {
1197 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1198 46 : static const uint8_t expand_encoding[] = {
1199 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1200 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x02, 0x01,
1201 : 0x01, 0x01, 0x02, 0x3f, 0x01, 0x03, 0x01, 0x04,
1202 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
1203 : };
1204 46 : return expand_rtx (expand_encoding, operands);
1205 : }
1206 :
1207 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3595 */
1208 : rtx
1209 59 : gen_vec_addsubv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1210 : {
1211 59 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1212 59 : static const uint8_t expand_encoding[] = {
1213 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x3c, 0x70,
1214 : 0x01, 0x01, 0x01, 0x02, 0x3b, 0x70, 0x01, 0x01,
1215 : 0x01, 0x02, 0x27, 0x05
1216 : };
1217 59 : return expand_rtx (expand_encoding, operands);
1218 : }
1219 :
1220 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1221 : rtx
1222 0 : gen_reducepv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1223 : {
1224 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1225 0 : static const uint8_t expand_encoding[] = {
1226 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1227 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x41, 0x01,
1228 : 0x03, 0x01, 0x04
1229 : };
1230 0 : return expand_rtx (expand_encoding, operands);
1231 : }
1232 :
1233 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1234 : rtx
1235 33 : gen_reducepv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1236 : {
1237 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1238 33 : static const uint8_t expand_encoding[] = {
1239 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1240 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x41, 0x01,
1241 : 0x03, 0x01, 0x04
1242 : };
1243 33 : return expand_rtx (expand_encoding, operands);
1244 : }
1245 :
1246 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1247 : rtx
1248 24 : gen_reducepv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1249 : {
1250 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1251 24 : static const uint8_t expand_encoding[] = {
1252 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1253 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x41, 0x01,
1254 : 0x03, 0x01, 0x04
1255 : };
1256 24 : return expand_rtx (expand_encoding, operands);
1257 : }
1258 :
1259 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4294 */
1260 : rtx
1261 63 : gen_reducesv8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1262 : {
1263 63 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1264 63 : static const uint8_t expand_encoding[] = {
1265 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1266 : 0x6a, 0x81, 0x09, 0x6a, 0x1a, 0x6a, 0x03, 0x01,
1267 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x41, 0x01,
1268 : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
1269 : 0x06, 0x81, 0x33
1270 : };
1271 63 : return expand_rtx (expand_encoding, operands);
1272 : }
1273 :
1274 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4352 */
1275 : rtx
1276 53 : gen_avx_cmpv2df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1277 : {
1278 53 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1279 53 : static const uint8_t expand_encoding[] = {
1280 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
1281 : 0x01, 0x02, 0x01, 0x03, 0x3c
1282 : };
1283 53 : return expand_rtx (expand_encoding, operands);
1284 : }
1285 :
1286 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1287 : rtx
1288 0 : gen_avx512bw_cmpv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1289 : {
1290 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1291 0 : static const uint8_t expand_encoding[] = {
1292 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01, 0x01,
1293 : 0x01, 0x02, 0x01, 0x03, 0x3c
1294 : };
1295 0 : return expand_rtx (expand_encoding, operands);
1296 : }
1297 :
1298 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1299 : rtx
1300 0 : gen_avx512f_cmpv16sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1301 : {
1302 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1303 0 : static const uint8_t expand_encoding[] = {
1304 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x1a, 0x10,
1305 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
1306 : 0x01, 0x04, 0x81, 0x33
1307 : };
1308 0 : return expand_rtx (expand_encoding, operands);
1309 : }
1310 :
1311 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1312 : rtx
1313 0 : gen_avx512vl_cmpv4df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1314 : {
1315 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1316 0 : static const uint8_t expand_encoding[] = {
1317 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1318 : 0x01, 0x02, 0x01, 0x03, 0x3c
1319 : };
1320 0 : return expand_rtx (expand_encoding, operands);
1321 : }
1322 :
1323 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1324 : rtx
1325 131 : gen_avx512vl_cmpv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1326 : {
1327 131 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1328 131 : static const uint8_t expand_encoding[] = {
1329 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x03,
1330 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1331 : 0x04
1332 : };
1333 131 : return expand_rtx (expand_encoding, operands);
1334 : }
1335 :
1336 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1337 : rtx
1338 136 : gen_avx512vl_cmpv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1339 : {
1340 136 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1341 136 : static const uint8_t expand_encoding[] = {
1342 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1343 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1344 : 0x04
1345 : };
1346 136 : return expand_rtx (expand_encoding, operands);
1347 : }
1348 :
1349 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1350 : rtx
1351 6 : gen_avx512vl_ucmpv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1352 : {
1353 6 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1354 6 : static const uint8_t expand_encoding[] = {
1355 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01, 0x01,
1356 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e
1357 : };
1358 6 : return expand_rtx (expand_encoding, operands);
1359 : }
1360 :
1361 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1362 : rtx
1363 188 : gen_avx512vl_ucmpv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1364 : {
1365 188 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1366 188 : static const uint8_t expand_encoding[] = {
1367 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1368 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e,
1369 : 0x01, 0x04
1370 : };
1371 188 : return expand_rtx (expand_encoding, operands);
1372 : }
1373 :
1374 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1375 : rtx
1376 0 : gen_avx512vl_ucmpv2di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1377 : {
1378 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1379 0 : static const uint8_t expand_encoding[] = {
1380 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1381 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e
1382 : };
1383 0 : return expand_rtx (expand_encoding, operands);
1384 : }
1385 :
1386 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5207 */
1387 : rtx
1388 258 : gen_avx512f_vmcmpv8hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1389 : {
1390 258 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1391 258 : static const uint8_t expand_encoding[] = {
1392 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x49, 0x0f,
1393 : 0x1a, 0x0f, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01,
1394 : 0x03, 0x3c, 0x49, 0x0f, 0x01, 0x04, 0x27, 0x01,
1395 : 0x01, 0x05, 0x81, 0x33
1396 : };
1397 258 : return expand_rtx (expand_encoding, operands);
1398 : }
1399 :
1400 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5225 */
1401 : rtx
1402 14 : gen_avx10_2_ucomxsf (const rtx operand0, const rtx operand1)
1403 : {
1404 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1405 14 : static const uint8_t expand_encoding[] = {
1406 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x01, 0x1a,
1407 : 0x0d, 0x02, 0x81, 0x0a, 0x2d, 0x01, 0x00, 0x17,
1408 : 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2d, 0x01,
1409 : 0x01, 0x17, 0x00, 0x01, 0x27, 0x00, 0x3e, 0x1b
1410 : };
1411 14 : return expand_rtx (expand_encoding, operands);
1412 : }
1413 :
1414 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5241 */
1415 : rtx
1416 0 : gen_avx512fp16_ucomi_round (const rtx operand0, const rtx operand1, const rtx operand2)
1417 : {
1418 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1419 0 : static const uint8_t expand_encoding[] = {
1420 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x1a,
1421 : 0x0d, 0x01, 0x3a, 0x0d, 0x81, 0x0a, 0x2b, 0x01,
1422 : 0x00, 0x17, 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a,
1423 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
1424 : 0x1b, 0x01, 0x02, 0x81, 0x33
1425 : };
1426 0 : return expand_rtx (expand_encoding, operands);
1427 : }
1428 :
1429 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5611 */
1430 : rtx
1431 0 : gen_avx512bf16_andnotv8bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1432 : {
1433 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1434 0 : static const uint8_t expand_encoding[] = {
1435 : 0x1f, 0x01, 0x00, 0x49, 0x69, 0x4c, 0x69, 0x01,
1436 : 0x01, 0x01, 0x02
1437 : };
1438 0 : return expand_rtx (expand_encoding, operands);
1439 : }
1440 :
1441 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5611 */
1442 : rtx
1443 24 : gen_sse2_andnotv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1444 : {
1445 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1446 24 : static const uint8_t expand_encoding[] = {
1447 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x49, 0x6c,
1448 : 0x4c, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
1449 : 0x01, 0x04
1450 : };
1451 24 : return expand_rtx (expand_encoding, operands);
1452 : }
1453 :
1454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6044 */
1455 : rtx
1456 1039 : gen_andsf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1457 : {
1458 1039 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1459 1039 : static const uint8_t expand_encoding[] = {
1460 : 0x1f, 0x01, 0x00, 0x49, 0x2d, 0x01, 0x01, 0x01,
1461 : 0x02
1462 : };
1463 1039 : return expand_rtx (expand_encoding, operands);
1464 : }
1465 :
1466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6317 */
1467 : rtx
1468 0 : gen_fma_fmadd_v16sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1469 : {
1470 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1471 0 : static const uint8_t expand_encoding[] = {
1472 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x19,
1473 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1474 : 0x04, 0x01, 0x05
1475 : };
1476 0 : return expand_rtx (expand_encoding, operands);
1477 : }
1478 :
1479 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6355 */
1480 : rtx
1481 46 : gen_avx512bw_fmadd_v32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1482 : {
1483 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1484 46 : static const uint8_t expand_encoding[] = {
1485 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1486 : 0x73, 0x81, 0x19, 0x73, 0x01, 0x01, 0x01, 0x02,
1487 : 0x01, 0x03, 0x01, 0x01, 0x01, 0x04, 0x01, 0x05,
1488 : 0x81, 0x33
1489 : };
1490 46 : return expand_rtx (expand_encoding, operands);
1491 : }
1492 :
1493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1494 : rtx
1495 0 : gen_avx512bw_fmadd_v32hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1496 : {
1497 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1498 0 : static const uint8_t expand_encoding[] = {
1499 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x19,
1500 : 0x73, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1501 : 0x03, 0x01, 0x04
1502 : };
1503 0 : return expand_rtx (expand_encoding, operands);
1504 : }
1505 :
1506 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1507 : rtx
1508 12 : gen_avx512vl_fmadd_v4sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1509 : {
1510 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1511 12 : static const uint8_t expand_encoding[] = {
1512 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
1513 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1514 : 0x03, 0x01, 0x04
1515 : };
1516 12 : return expand_rtx (expand_encoding, operands);
1517 : }
1518 :
1519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6419 */
1520 : rtx
1521 23 : gen_fma_fmsub_v32hf_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1522 : {
1523 23 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1524 23 : static const uint8_t expand_encoding[] = {
1525 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1526 : 0x73, 0x81, 0x19, 0x73, 0x01, 0x01, 0x01, 0x02,
1527 : 0x3d, 0x73, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1528 : 0x01, 0x06, 0x81, 0x33
1529 : };
1530 23 : return expand_rtx (expand_encoding, operands);
1531 : }
1532 :
1533 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1534 : rtx
1535 0 : gen_avx512bw_fmsub_v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1536 : {
1537 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1538 0 : static const uint8_t expand_encoding[] = {
1539 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x19,
1540 : 0x73, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x73, 0x01,
1541 : 0x03, 0x01, 0x01, 0x01, 0x04
1542 : };
1543 0 : return expand_rtx (expand_encoding, operands);
1544 : }
1545 :
1546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1547 : rtx
1548 12 : gen_avx512vl_fmsub_v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1549 : {
1550 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1551 12 : static const uint8_t expand_encoding[] = {
1552 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
1553 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6b, 0x01,
1554 : 0x03, 0x01, 0x01, 0x01, 0x04
1555 : };
1556 12 : return expand_rtx (expand_encoding, operands);
1557 : }
1558 :
1559 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6477 */
1560 : rtx
1561 23 : gen_avx512bw_fmsub_v32hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1562 : {
1563 23 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1564 23 : static const uint8_t expand_encoding[] = {
1565 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1566 : 0x73, 0x81, 0x19, 0x73, 0x01, 0x01, 0x01, 0x02,
1567 : 0x3d, 0x73, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1568 : 0x01, 0x05, 0x81, 0x33
1569 : };
1570 23 : return expand_rtx (expand_encoding, operands);
1571 : }
1572 :
1573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6525 */
1574 : rtx
1575 0 : gen_fma_fnmadd_v32hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1576 : {
1577 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1578 0 : static const uint8_t expand_encoding[] = {
1579 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x19,
1580 : 0x73, 0x3d, 0x73, 0x01, 0x01, 0x01, 0x02, 0x01,
1581 : 0x03, 0x01, 0x04, 0x01, 0x05
1582 : };
1583 0 : return expand_rtx (expand_encoding, operands);
1584 : }
1585 :
1586 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6525 */
1587 : rtx
1588 13 : gen_fma_fnmadd_v4df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1589 : {
1590 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1591 13 : static const uint8_t expand_encoding[] = {
1592 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1593 : 0x70, 0x3d, 0x70, 0x01, 0x01, 0x01, 0x02, 0x01,
1594 : 0x03, 0x01, 0x04, 0x01, 0x05
1595 : };
1596 13 : return expand_rtx (expand_encoding, operands);
1597 : }
1598 :
1599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6565 */
1600 : rtx
1601 12 : gen_avx512vl_fnmadd_v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1602 : {
1603 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1604 12 : static const uint8_t expand_encoding[] = {
1605 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
1606 : 0x6b, 0x3d, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01,
1607 : 0x03, 0x01, 0x01, 0x01, 0x04
1608 : };
1609 12 : return expand_rtx (expand_encoding, operands);
1610 : }
1611 :
1612 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6583 */
1613 : rtx
1614 0 : gen_avx512f_fnmadd_v16sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1615 : {
1616 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1617 0 : static const uint8_t expand_encoding[] = {
1618 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x19,
1619 : 0x74, 0x3d, 0x74, 0x01, 0x01, 0x01, 0x02, 0x01,
1620 : 0x03, 0x01, 0x03, 0x01, 0x04
1621 : };
1622 0 : return expand_rtx (expand_encoding, operands);
1623 : }
1624 :
1625 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6632 */
1626 : rtx
1627 12 : gen_fma_fnmsub_v16hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1628 : {
1629 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1630 12 : static const uint8_t expand_encoding[] = {
1631 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x19,
1632 : 0x6e, 0x3d, 0x6e, 0x01, 0x01, 0x01, 0x02, 0x3d,
1633 : 0x6e, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1634 : };
1635 12 : return expand_rtx (expand_encoding, operands);
1636 : }
1637 :
1638 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6632 */
1639 : rtx
1640 13 : gen_fma_fnmsub_v2df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1641 : {
1642 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1643 13 : static const uint8_t expand_encoding[] = {
1644 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x19,
1645 : 0x6c, 0x3d, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x3d,
1646 : 0x6c, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1647 : };
1648 13 : return expand_rtx (expand_encoding, operands);
1649 : }
1650 :
1651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6674 */
1652 : rtx
1653 45 : gen_avx512f_fnmsub_v8df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1654 : {
1655 45 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1656 45 : static const uint8_t expand_encoding[] = {
1657 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1658 : 0x75, 0x81, 0x19, 0x75, 0x3d, 0x75, 0x01, 0x01,
1659 : 0x01, 0x02, 0x3d, 0x75, 0x01, 0x03, 0x01, 0x01,
1660 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1661 : };
1662 45 : return expand_rtx (expand_encoding, operands);
1663 : }
1664 :
1665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1666 : rtx
1667 0 : gen_avx512vl_fnmsub_v8sf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1668 : {
1669 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1670 0 : static const uint8_t expand_encoding[] = {
1671 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
1672 : 0x6f, 0x81, 0x19, 0x6f, 0x3d, 0x6f, 0x01, 0x01,
1673 : 0x01, 0x02, 0x3d, 0x6f, 0x01, 0x03, 0x01, 0x03,
1674 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1675 : };
1676 0 : return expand_rtx (expand_encoding, operands);
1677 : }
1678 :
1679 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6795 */
1680 : rtx
1681 12 : gen_fma_fmaddsub_v16hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1682 : {
1683 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1684 12 : static const uint8_t expand_encoding[] = {
1685 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
1686 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1687 : 0x06, 0x01, 0x04, 0x01, 0x05
1688 : };
1689 12 : return expand_rtx (expand_encoding, operands);
1690 : }
1691 :
1692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6795 */
1693 : rtx
1694 24 : gen_fma_fmaddsub_v2df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1695 : {
1696 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1697 24 : static const uint8_t expand_encoding[] = {
1698 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
1699 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1700 : 0x06, 0x01, 0x04, 0x01, 0x05
1701 : };
1702 24 : return expand_rtx (expand_encoding, operands);
1703 : }
1704 :
1705 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1706 : rtx
1707 0 : gen_avx512vl_fmaddsub_v8sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1708 : {
1709 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1710 0 : static const uint8_t expand_encoding[] = {
1711 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
1712 : 0x6f, 0x1a, 0x6f, 0x03, 0x01, 0x01, 0x01, 0x02,
1713 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04,
1714 : 0x01, 0x05, 0x81, 0x33
1715 : };
1716 0 : return expand_rtx (expand_encoding, operands);
1717 : }
1718 :
1719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1720 : rtx
1721 12 : gen_avx512vl_fmaddsub_v16hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1722 : {
1723 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1724 12 : static const uint8_t expand_encoding[] = {
1725 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
1726 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1727 : 0x06, 0x01, 0x03, 0x01, 0x04
1728 : };
1729 12 : return expand_rtx (expand_encoding, operands);
1730 : }
1731 :
1732 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1733 : rtx
1734 0 : gen_avx512vl_fmaddsub_v4sf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1735 : {
1736 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1737 0 : static const uint8_t expand_encoding[] = {
1738 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1739 : 0x6b, 0x1a, 0x6b, 0x03, 0x01, 0x01, 0x01, 0x02,
1740 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04,
1741 : 0x01, 0x05, 0x81, 0x33
1742 : };
1743 0 : return expand_rtx (expand_encoding, operands);
1744 : }
1745 :
1746 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6864 */
1747 : rtx
1748 0 : gen_fma_fmsubadd_v16sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1749 : {
1750 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1751 0 : static const uint8_t expand_encoding[] = {
1752 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
1753 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x74, 0x01,
1754 : 0x03, 0x81, 0x06, 0x01, 0x04, 0x01, 0x05
1755 : };
1756 0 : return expand_rtx (expand_encoding, operands);
1757 : }
1758 :
1759 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1760 : rtx
1761 23 : gen_avx512vl_fmsubadd_v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1762 : {
1763 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1764 23 : static const uint8_t expand_encoding[] = {
1765 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
1766 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6e, 0x01,
1767 : 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04
1768 : };
1769 23 : return expand_rtx (expand_encoding, operands);
1770 : }
1771 :
1772 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1773 : rtx
1774 0 : gen_avx512vl_fmsubadd_v4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1775 : {
1776 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1777 0 : static const uint8_t expand_encoding[] = {
1778 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1779 : 0x6b, 0x1a, 0x6b, 0x03, 0x01, 0x01, 0x01, 0x02,
1780 : 0x3d, 0x6b, 0x01, 0x03, 0x81, 0x06, 0x01, 0x01,
1781 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1782 : };
1783 0 : return expand_rtx (expand_encoding, operands);
1784 : }
1785 :
1786 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6900 */
1787 : rtx
1788 12 : gen_avx512fp16_fmsubadd_v8hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1789 : {
1790 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1791 12 : static const uint8_t expand_encoding[] = {
1792 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1793 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6a, 0x01,
1794 : 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04
1795 : };
1796 12 : return expand_rtx (expand_encoding, operands);
1797 : }
1798 :
1799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6900 */
1800 : rtx
1801 22 : gen_avx512f_fmsubadd_v8df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1802 : {
1803 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1804 22 : static const uint8_t expand_encoding[] = {
1805 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1806 : 0x75, 0x1a, 0x75, 0x03, 0x01, 0x01, 0x01, 0x02,
1807 : 0x3d, 0x75, 0x01, 0x03, 0x81, 0x06, 0x01, 0x03,
1808 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1809 : };
1810 22 : return expand_rtx (expand_encoding, operands);
1811 : }
1812 :
1813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7060 */
1814 : rtx
1815 0 : gen_avx512f_vmfmadd_v8hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1816 : {
1817 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1818 0 : static const uint8_t expand_encoding[] = {
1819 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1820 : 0x6a, 0x81, 0x19, 0x6a, 0x01, 0x01, 0x01, 0x02,
1821 : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x03,
1822 : 0x27, 0x01
1823 : };
1824 0 : return expand_rtx (expand_encoding, operands);
1825 : }
1826 :
1827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7092 */
1828 : rtx
1829 100 : gen_avx512f_vmfmadd_v4sf_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1830 : {
1831 100 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1832 100 : static const uint8_t expand_encoding[] = {
1833 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1834 : 0x6b, 0x81, 0x09, 0x6b, 0x81, 0x19, 0x6b, 0x01,
1835 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
1836 : 0x05, 0x01, 0x01, 0x27, 0x01, 0x01, 0x06, 0x81,
1837 : 0x33
1838 : };
1839 100 : return expand_rtx (expand_encoding, operands);
1840 : }
1841 :
1842 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7173 */
1843 : rtx
1844 0 : gen_avx512f_vmfnmadd_v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1845 : {
1846 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1847 0 : static const uint8_t expand_encoding[] = {
1848 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1849 : 0x6b, 0x81, 0x19, 0x6b, 0x3d, 0x6b, 0x01, 0x01,
1850 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1851 : 0x01, 0x01, 0x27, 0x01
1852 : };
1853 0 : return expand_rtx (expand_encoding, operands);
1854 : }
1855 :
1856 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7194 */
1857 : rtx
1858 0 : gen_avx512f_vmfnmadd_v2df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1859 : {
1860 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1861 0 : static const uint8_t expand_encoding[] = {
1862 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1863 : 0x6c, 0x81, 0x09, 0x6c, 0x81, 0x19, 0x6c, 0x3d,
1864 : 0x6c, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03, 0x01,
1865 : 0x03, 0x01, 0x04, 0x01, 0x03, 0x27, 0x01, 0x01,
1866 : 0x05, 0x81, 0x33
1867 : };
1868 0 : return expand_rtx (expand_encoding, operands);
1869 : }
1870 :
1871 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7534 */
1872 : rtx
1873 23 : gen_fma_fmaddc_v32hf_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1874 : {
1875 23 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1876 23 : static const uint8_t expand_encoding[] = {
1877 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1878 : 0x73, 0x1a, 0x73, 0x03, 0x01, 0x01, 0x01, 0x02,
1879 : 0x01, 0x03, 0x81, 0x5a, 0x01, 0x04, 0x1a, 0x11,
1880 : 0x01, 0x01, 0x05, 0x81, 0x60, 0x01, 0x06, 0x81,
1881 : 0x33
1882 : };
1883 23 : return expand_rtx (expand_encoding, operands);
1884 : }
1885 :
1886 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7534 */
1887 : rtx
1888 12 : gen_fma_fcmaddc_v8hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1889 : {
1890 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1891 12 : static const uint8_t expand_encoding[] = {
1892 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1893 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1894 : 0x5c, 0x01, 0x04, 0x1a, 0x0f, 0x01, 0x01, 0x05,
1895 : 0x81, 0x60
1896 : };
1897 12 : return expand_rtx (expand_encoding, operands);
1898 : }
1899 :
1900 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7581 */
1901 : rtx
1902 0 : gen_fma_fcmaddc_v8hf_fma_zero (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1903 : {
1904 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1905 0 : static const uint8_t expand_encoding[] = {
1906 : 0x1f, 0x01, 0x00, 0x3b, 0x6a, 0x1a, 0x6a, 0x03,
1907 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5c,
1908 : 0x01, 0x04
1909 : };
1910 0 : return expand_rtx (expand_encoding, operands);
1911 : }
1912 :
1913 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7639 */
1914 : rtx
1915 0 : gen_fma_v16hf_fcmaddc_bcst (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1916 : {
1917 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1918 0 : static const uint8_t expand_encoding[] = {
1919 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
1920 : 0x32, 0x6e, 0x01, 0x02, 0x00, 0x01, 0x03, 0x81,
1921 : 0x5c
1922 : };
1923 0 : return expand_rtx (expand_encoding, operands);
1924 : }
1925 :
1926 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1927 : rtx
1928 0 : gen_avx512bw_fmulc_v32hf (const rtx operand0, const rtx operand1, const rtx operand2)
1929 : {
1930 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1931 0 : static const uint8_t expand_encoding[] = {
1932 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01, 0x01,
1933 : 0x01, 0x02, 0x81, 0x5e
1934 : };
1935 0 : return expand_rtx (expand_encoding, operands);
1936 : }
1937 :
1938 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1939 : rtx
1940 27 : gen_avx512bw_fcmulc_v32hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1941 : {
1942 27 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1943 27 : static const uint8_t expand_encoding[] = {
1944 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
1945 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x5f, 0x01,
1946 : 0x03, 0x81, 0x33
1947 : };
1948 27 : return expand_rtx (expand_encoding, operands);
1949 : }
1950 :
1951 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7858 */
1952 : rtx
1953 0 : gen_avx512fp16_fma_fmaddcsh_v8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1954 : {
1955 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1956 0 : static const uint8_t expand_encoding[] = {
1957 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1958 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1959 : 0x5a, 0x01, 0x02, 0x27, 0x03
1960 : };
1961 0 : return expand_rtx (expand_encoding, operands);
1962 : }
1963 :
1964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7874 */
1965 : rtx
1966 35 : gen_avx512fp16_fmaddcsh_v8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1967 : {
1968 35 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1969 35 : static const uint8_t expand_encoding[] = {
1970 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1971 : 0x6a, 0x81, 0x09, 0x6a, 0x1a, 0x6a, 0x03, 0x01,
1972 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a, 0x01,
1973 : 0x01, 0x1a, 0x0f, 0x01, 0x01, 0x04, 0x81, 0x60,
1974 : 0x01, 0x02, 0x27, 0x03, 0x01, 0x05, 0x81, 0x33
1975 : };
1976 35 : return expand_rtx (expand_encoding, operands);
1977 : }
1978 :
1979 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1980 : rtx
1981 0 : gen_avx512fp16_vcvtph2uw_v32hi_round (const rtx operand0, const rtx operand1, const rtx operand2)
1982 : {
1983 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1984 0 : static const uint8_t expand_encoding[] = {
1985 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x1a, 0x5a,
1986 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x81,
1987 : 0x33
1988 : };
1989 0 : return expand_rtx (expand_encoding, operands);
1990 : }
1991 :
1992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1993 : rtx
1994 0 : gen_avx512fp16_vcvtph2udq_v16si_round (const rtx operand0, const rtx operand1, const rtx operand2)
1995 : {
1996 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1997 0 : static const uint8_t expand_encoding[] = {
1998 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x1a, 0x5b,
1999 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x81,
2000 : 0x33
2001 : };
2002 0 : return expand_rtx (expand_encoding, operands);
2003 : }
2004 :
2005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2006 : rtx
2007 0 : gen_avx512fp16_vcvtph2qq_v8di (const rtx operand0, const rtx operand1)
2008 : {
2009 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2010 0 : static const uint8_t expand_encoding[] = {
2011 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
2012 : 0x2f
2013 : };
2014 0 : return expand_rtx (expand_encoding, operands);
2015 : }
2016 :
2017 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2018 : rtx
2019 0 : gen_avx512fp16_vcvtph2w_v16hi (const rtx operand0, const rtx operand1)
2020 : {
2021 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2022 0 : static const uint8_t expand_encoding[] = {
2023 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
2024 : 0x2f
2025 : };
2026 0 : return expand_rtx (expand_encoding, operands);
2027 : }
2028 :
2029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2030 : rtx
2031 0 : gen_avx512fp16_vcvtph2dq_v8si (const rtx operand0, const rtx operand1)
2032 : {
2033 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2034 0 : static const uint8_t expand_encoding[] = {
2035 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
2036 : 0x2f
2037 : };
2038 0 : return expand_rtx (expand_encoding, operands);
2039 : }
2040 :
2041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2042 : rtx
2043 0 : gen_avx512fp16_vcvtph2qq_v4di (const rtx operand0, const rtx operand1)
2044 : {
2045 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2046 0 : static const uint8_t expand_encoding[] = {
2047 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
2048 : 0x2f
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_vcvtph2w_v8hi (const rtx operand0, const rtx operand1)
2056 : {
2057 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2058 0 : static const uint8_t expand_encoding[] = {
2059 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
2060 : 0x2f
2061 : };
2062 0 : return expand_rtx (expand_encoding, operands);
2063 : }
2064 :
2065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2066 : rtx
2067 0 : gen_avx512fp16_vcvtph2dq_v4si (const rtx operand0, const rtx operand1)
2068 : {
2069 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2070 0 : static const uint8_t expand_encoding[] = {
2071 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2072 : 0x2f
2073 : };
2074 0 : return expand_rtx (expand_encoding, operands);
2075 : }
2076 :
2077 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2078 : rtx
2079 0 : gen_avx512fp16_vcvtph2qq_v2di (const rtx operand0, const rtx operand1)
2080 : {
2081 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2082 0 : static const uint8_t expand_encoding[] = {
2083 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
2084 : 0x2f
2085 : };
2086 0 : return expand_rtx (expand_encoding, operands);
2087 : }
2088 :
2089 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2090 : rtx
2091 0 : gen_avx512fp16_vcvtuw2ph_v8hi (const rtx operand0, const rtx operand1)
2092 : {
2093 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2094 0 : static const uint8_t expand_encoding[] = {
2095 : 0x1f, 0x01, 0x00, 0x75, 0x6a, 0x01, 0x01
2096 : };
2097 0 : return expand_rtx (expand_encoding, operands);
2098 : }
2099 :
2100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2101 : rtx
2102 0 : gen_avx512fp16_vcvtuw2ph_v16hi (const rtx operand0, const rtx operand1)
2103 : {
2104 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2105 0 : static const uint8_t expand_encoding[] = {
2106 : 0x1f, 0x01, 0x00, 0x75, 0x6e, 0x01, 0x01
2107 : };
2108 0 : return expand_rtx (expand_encoding, operands);
2109 : }
2110 :
2111 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2112 : rtx
2113 69 : gen_avx512fp16_vcvtw2ph_v32hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2114 : {
2115 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2116 69 : static const uint8_t expand_encoding[] = {
2117 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
2118 : 0x73, 0x73, 0x73, 0x01, 0x01, 0x01, 0x02, 0x01,
2119 : 0x03, 0x01, 0x04, 0x81, 0x33
2120 : };
2121 69 : return expand_rtx (expand_encoding, operands);
2122 : }
2123 :
2124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2125 : rtx
2126 0 : gen_avx512fp16_vcvtudq2ph_v8si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2127 : {
2128 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2129 0 : static const uint8_t expand_encoding[] = {
2130 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2131 : 0x6a, 0x75, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
2132 : 0x03, 0x01, 0x04, 0x81, 0x33
2133 : };
2134 0 : return expand_rtx (expand_encoding, operands);
2135 : }
2136 :
2137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2138 : rtx
2139 69 : gen_avx512fp16_vcvtqq2ph_v8di_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2140 : {
2141 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2142 69 : static const uint8_t expand_encoding[] = {
2143 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2144 : 0x6a, 0x73, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
2145 : 0x03, 0x01, 0x04, 0x81, 0x33
2146 : };
2147 69 : return expand_rtx (expand_encoding, operands);
2148 : }
2149 :
2150 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8185 */
2151 : rtx
2152 23 : gen_avx512fp16_vcvtsh2siq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2153 : {
2154 23 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2155 23 : static const uint8_t expand_encoding[] = {
2156 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2157 : 0x01, 0x81, 0x0a, 0x2b, 0x01, 0x01, 0x17, 0x00,
2158 : 0x01, 0x27, 0x00, 0x2f, 0x01, 0x02, 0x81, 0x33
2159 : };
2160 23 : return expand_rtx (expand_encoding, operands);
2161 : }
2162 :
2163 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8211 */
2164 : rtx
2165 22 : gen_avx512fp16_vcvtusi2shq_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2166 : {
2167 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2168 22 : static const uint8_t expand_encoding[] = {
2169 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2170 : 0x6a, 0x81, 0x0c, 0x6a, 0x75, 0x2b, 0x01, 0x02,
2171 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2172 : };
2173 22 : return expand_rtx (expand_encoding, operands);
2174 : }
2175 :
2176 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2177 : rtx
2178 0 : gen_unspec_avx512fp16_fix_truncv16hi2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2179 : {
2180 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2181 0 : static const uint8_t expand_encoding[] = {
2182 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x81, 0x09,
2183 : 0x55, 0x1a, 0x55, 0x01, 0x01, 0x01, 0x81, 0x2d,
2184 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2185 : };
2186 0 : return expand_rtx (expand_encoding, operands);
2187 : }
2188 :
2189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2190 : rtx
2191 0 : gen_unspec_avx512fp16_fixuns_truncv32hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2192 : {
2193 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2194 0 : static const uint8_t expand_encoding[] = {
2195 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
2196 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2197 : 0x03
2198 : };
2199 0 : return expand_rtx (expand_encoding, operands);
2200 : }
2201 :
2202 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2203 : rtx
2204 0 : gen_unspec_avx512fp16_fix_truncv16si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2205 : {
2206 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2207 0 : static const uint8_t expand_encoding[] = {
2208 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x1a, 0x5b,
2209 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2210 : 0x33
2211 : };
2212 0 : return expand_rtx (expand_encoding, operands);
2213 : }
2214 :
2215 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2216 : rtx
2217 0 : gen_unspec_avx512fp16_fix_truncv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2218 : {
2219 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2220 0 : static const uint8_t expand_encoding[] = {
2221 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
2222 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2223 : 0x03
2224 : };
2225 0 : return expand_rtx (expand_encoding, operands);
2226 : }
2227 :
2228 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2229 : rtx
2230 0 : gen_avx512fp16_fixuns_truncv8hi2 (const rtx operand0, const rtx operand1)
2231 : {
2232 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2233 0 : static const uint8_t expand_encoding[] = {
2234 : 0x1f, 0x01, 0x00, 0x76, 0x50, 0x01, 0x01
2235 : };
2236 0 : return expand_rtx (expand_encoding, operands);
2237 : }
2238 :
2239 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2240 : rtx
2241 0 : gen_avx512fp16_fixuns_truncv16hi2 (const rtx operand0, const rtx operand1)
2242 : {
2243 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2244 0 : static const uint8_t expand_encoding[] = {
2245 : 0x1f, 0x01, 0x00, 0x76, 0x55, 0x01, 0x01
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_truncv32hi2 (const rtx operand0, const rtx operand1)
2253 : {
2254 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2255 0 : static const uint8_t expand_encoding[] = {
2256 : 0x1f, 0x01, 0x00, 0x76, 0x5a, 0x01, 0x01
2257 : };
2258 0 : return expand_rtx (expand_encoding, operands);
2259 : }
2260 :
2261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2262 : rtx
2263 0 : gen_avx512fp16_fixuns_truncv8si2 (const rtx operand0, const rtx operand1)
2264 : {
2265 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2266 0 : static const uint8_t expand_encoding[] = {
2267 : 0x1f, 0x01, 0x00, 0x76, 0x56, 0x01, 0x01
2268 : };
2269 0 : return expand_rtx (expand_encoding, operands);
2270 : }
2271 :
2272 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2273 : rtx
2274 0 : gen_avx512fp16_fixuns_truncv16si2 (const rtx operand0, const rtx operand1)
2275 : {
2276 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2277 0 : static const uint8_t expand_encoding[] = {
2278 : 0x1f, 0x01, 0x00, 0x76, 0x5b, 0x01, 0x01
2279 : };
2280 0 : return expand_rtx (expand_encoding, operands);
2281 : }
2282 :
2283 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2284 : rtx
2285 0 : gen_avx512fp16_fix_truncv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2286 : {
2287 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2288 0 : static const uint8_t expand_encoding[] = {
2289 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2290 : 0x5c, 0x74, 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01,
2291 : 0x03, 0x01, 0x04, 0x81, 0x33
2292 : };
2293 0 : return expand_rtx (expand_encoding, operands);
2294 : }
2295 :
2296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8269 */
2297 : rtx
2298 36 : gen_unspec_avx512fp16_fixuns_truncv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2299 : {
2300 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2301 36 : static const uint8_t expand_encoding[] = {
2302 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
2303 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2304 : 0x03
2305 : };
2306 36 : return expand_rtx (expand_encoding, operands);
2307 : }
2308 :
2309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8319 */
2310 : rtx
2311 0 : gen_unspec_avx512fp16_fixuns_truncv2di2 (const rtx operand0, const rtx operand1)
2312 : {
2313 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2314 0 : static const uint8_t expand_encoding[] = {
2315 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
2316 : 0x81, 0x2e
2317 : };
2318 0 : return expand_rtx (expand_encoding, operands);
2319 : }
2320 :
2321 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8352 */
2322 : rtx
2323 21 : gen_unspec_avx512fp16_fixuns_truncsi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2324 : {
2325 21 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2326 21 : static const uint8_t expand_encoding[] = {
2327 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2328 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2329 : 0x33
2330 : };
2331 21 : return expand_rtx (expand_encoding, operands);
2332 : }
2333 :
2334 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8363 */
2335 : rtx
2336 0 : gen_avx512fp16_fixuns_truncdi2 (const rtx operand0, const rtx operand1)
2337 : {
2338 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2339 0 : static const uint8_t expand_encoding[] = {
2340 : 0x1f, 0x01, 0x00, 0x76, 0x12, 0x81, 0x0a, 0x2b,
2341 : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2342 : };
2343 0 : return expand_rtx (expand_encoding, operands);
2344 : }
2345 :
2346 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8395 */
2347 : rtx
2348 69 : gen_avx512fp16_float_extend_phv8df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2349 : {
2350 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2351 69 : static const uint8_t expand_encoding[] = {
2352 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
2353 : 0x75, 0x71, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
2354 : 0x03, 0x01, 0x04, 0x81, 0x33
2355 : };
2356 69 : return expand_rtx (expand_encoding, operands);
2357 : }
2358 :
2359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8422 */
2360 : rtx
2361 36 : gen_avx512fp16_float_extend_phv4sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2362 : {
2363 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2364 36 : static const uint8_t expand_encoding[] = {
2365 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x71, 0x6b,
2366 : 0x81, 0x0a, 0x66, 0x01, 0x01, 0x17, 0x00, 0x04,
2367 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
2368 : 0x01, 0x02, 0x01, 0x03
2369 : };
2370 36 : return expand_rtx (expand_encoding, operands);
2371 : }
2372 :
2373 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8489 */
2374 : rtx
2375 0 : gen_avx512fp16_vcvtps2ph_v8sf_round (const rtx operand0, const rtx operand1, const rtx operand2)
2376 : {
2377 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2378 0 : static const uint8_t expand_encoding[] = {
2379 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x72, 0x6a,
2380 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2381 : };
2382 0 : return expand_rtx (expand_encoding, operands);
2383 : }
2384 :
2385 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8656 */
2386 : rtx
2387 0 : gen_avx512fp16_vcvtsh2ss_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2388 : {
2389 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2390 0 : static const uint8_t expand_encoding[] = {
2391 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
2392 : 0x6b, 0x81, 0x0c, 0x6b, 0x71, 0x2d, 0x81, 0x0a,
2393 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2394 : 0x01, 0x02, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2395 : };
2396 0 : return expand_rtx (expand_encoding, operands);
2397 : }
2398 :
2399 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8686 */
2400 : rtx
2401 0 : gen_avx512fp16_vcvtss2sh_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2402 : {
2403 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2404 0 : static const uint8_t expand_encoding[] = {
2405 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2406 : 0x6a, 0x81, 0x0c, 0x6a, 0x72, 0x2b, 0x81, 0x0a,
2407 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2408 : 0x01, 0x02, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2409 : };
2410 0 : return expand_rtx (expand_encoding, operands);
2411 : }
2412 :
2413 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8813 */
2414 : rtx
2415 23 : gen_unspec_sse_cvttps2pi (const rtx operand0, const rtx operand1)
2416 : {
2417 23 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2418 23 : static const uint8_t expand_encoding[] = {
2419 : 0x1f, 0x01, 0x00, 0x1a, 0x4a, 0x01, 0x01, 0x01,
2420 : 0x81, 0x2d
2421 : };
2422 23 : return expand_rtx (expand_encoding, operands);
2423 : }
2424 :
2425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8913 */
2426 : rtx
2427 16 : gen_sse_cvtss2si_round (const rtx operand0, const rtx operand1, const rtx operand2)
2428 : {
2429 16 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2430 16 : static const uint8_t expand_encoding[] = {
2431 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2432 : 0x01, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
2433 : 0x01, 0x27, 0x00, 0x2f, 0x01, 0x02, 0x81, 0x33
2434 : };
2435 16 : return expand_rtx (expand_encoding, operands);
2436 : }
2437 :
2438 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8974 */
2439 : rtx
2440 0 : gen_cvtusi2ss32 (const rtx operand0, const rtx operand1, const rtx operand2)
2441 : {
2442 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2443 0 : static const uint8_t expand_encoding[] = {
2444 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0c,
2445 : 0x6b, 0x75, 0x2d, 0x01, 0x02, 0x01, 0x01, 0x27,
2446 : 0x01
2447 : };
2448 0 : return expand_rtx (expand_encoding, operands);
2449 : }
2450 :
2451 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9002 */
2452 : rtx
2453 66 : gen_floatv16siv16sf2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2454 : {
2455 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2456 66 : static const uint8_t expand_encoding[] = {
2457 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
2458 : 0x74, 0x73, 0x74, 0x01, 0x01, 0x01, 0x02, 0x01,
2459 : 0x03, 0x01, 0x04, 0x81, 0x33
2460 : };
2461 66 : return expand_rtx (expand_encoding, operands);
2462 : }
2463 :
2464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9043 */
2465 : rtx
2466 24 : gen_avx_fix_notruncv8sfv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2467 : {
2468 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2469 24 : static const uint8_t expand_encoding[] = {
2470 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
2471 : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x01, 0x03
2472 : };
2473 24 : return expand_rtx (expand_encoding, operands);
2474 : }
2475 :
2476 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9070 */
2477 : rtx
2478 36 : gen_avx512vl_fixuns_notruncv4sfv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2479 : {
2480 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2481 36 : static const uint8_t expand_encoding[] = {
2482 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
2483 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2484 : 0x03
2485 : };
2486 36 : return expand_rtx (expand_encoding, operands);
2487 : }
2488 :
2489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9114 */
2490 : rtx
2491 36 : gen_avx512dq_cvtps2uqqv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2492 : {
2493 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2494 36 : static const uint8_t expand_encoding[] = {
2495 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
2496 : 0x01, 0x81, 0x0a, 0x67, 0x01, 0x01, 0x17, 0x00,
2497 : 0x02, 0x27, 0x00, 0x27, 0x01, 0x81, 0x1d, 0x01,
2498 : 0x02, 0x01, 0x03
2499 : };
2500 36 : return expand_rtx (expand_encoding, operands);
2501 : }
2502 :
2503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9138 */
2504 : rtx
2505 0 : gen_fix_truncv16sfv16si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2506 : {
2507 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2508 0 : static const uint8_t expand_encoding[] = {
2509 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x74, 0x5b,
2510 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2511 : };
2512 0 : return expand_rtx (expand_encoding, operands);
2513 : }
2514 :
2515 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9167 */
2516 : rtx
2517 24 : gen_unspec_fix_truncv4sfv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2518 : {
2519 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2520 24 : static const uint8_t expand_encoding[] = {
2521 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
2522 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2523 : 0x03
2524 : };
2525 24 : return expand_rtx (expand_encoding, operands);
2526 : }
2527 :
2528 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9363 */
2529 : rtx
2530 33 : gen_sse2_cvtsi2sdq (const rtx operand0, const rtx operand1, const rtx operand2)
2531 : {
2532 33 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2533 33 : static const uint8_t expand_encoding[] = {
2534 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0c,
2535 : 0x6c, 0x73, 0x2e, 0x01, 0x02, 0x01, 0x01, 0x27,
2536 : 0x01
2537 : };
2538 33 : return expand_rtx (expand_encoding, operands);
2539 : }
2540 :
2541 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9409 */
2542 : rtx
2543 0 : gen_avx512f_vcvttss2usi (const rtx operand0, const rtx operand1)
2544 : {
2545 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2546 0 : static const uint8_t expand_encoding[] = {
2547 : 0x1f, 0x01, 0x00, 0x76, 0x11, 0x81, 0x0a, 0x2d,
2548 : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2549 : };
2550 0 : return expand_rtx (expand_encoding, operands);
2551 : }
2552 :
2553 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9434 */
2554 : rtx
2555 22 : gen_unspec_avx512f_vcvttsd2usi_round (const rtx operand0, const rtx operand1, const rtx operand2)
2556 : {
2557 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2558 22 : static const uint8_t expand_encoding[] = {
2559 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2560 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2561 : 0x33
2562 : };
2563 22 : return expand_rtx (expand_encoding, operands);
2564 : }
2565 :
2566 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9474 */
2567 : rtx
2568 0 : gen_sse2_cvtsd2si_2 (const rtx operand0, const rtx operand1)
2569 : {
2570 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2571 0 : static const uint8_t expand_encoding[] = {
2572 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
2573 : 0x2f
2574 : };
2575 0 : return expand_rtx (expand_encoding, operands);
2576 : }
2577 :
2578 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9504 */
2579 : rtx
2580 0 : gen_sse2_cvttsd2siq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2581 : {
2582 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2583 0 : static const uint8_t expand_encoding[] = {
2584 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x74, 0x12,
2585 : 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01,
2586 : 0x27, 0x00, 0x01, 0x02, 0x81, 0x33
2587 : };
2588 0 : return expand_rtx (expand_encoding, operands);
2589 : }
2590 :
2591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2592 : rtx
2593 57 : gen_floatunsv8div8df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2594 : {
2595 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2596 57 : static const uint8_t expand_encoding[] = {
2597 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
2598 : 0x75, 0x75, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
2599 : 0x03, 0x01, 0x04, 0x81, 0x33
2600 : };
2601 57 : return expand_rtx (expand_encoding, operands);
2602 : }
2603 :
2604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2605 : rtx
2606 36 : gen_floatv2div2df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2607 : {
2608 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2609 36 : static const uint8_t expand_encoding[] = {
2610 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x73, 0x6c,
2611 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2612 : };
2613 36 : return expand_rtx (expand_encoding, operands);
2614 : }
2615 :
2616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9550 */
2617 : rtx
2618 0 : gen_floatunsv8div8sf2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2619 : {
2620 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2621 0 : static const uint8_t expand_encoding[] = {
2622 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x75, 0x6f,
2623 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2624 : };
2625 0 : return expand_rtx (expand_encoding, operands);
2626 : }
2627 :
2628 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9700 */
2629 : rtx
2630 1 : gen_floatunsv4siv4df2 (const rtx operand0, const rtx operand1)
2631 : {
2632 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2633 1 : static const uint8_t expand_encoding[] = {
2634 : 0x1f, 0x01, 0x00, 0x75, 0x70, 0x01, 0x01
2635 : };
2636 1 : return expand_rtx (expand_encoding, operands);
2637 : }
2638 :
2639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9762 */
2640 : rtx
2641 0 : gen_avx512f_cvtpd2dq512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2642 : {
2643 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2644 0 : static const uint8_t expand_encoding[] = {
2645 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
2646 : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x01, 0x03
2647 : };
2648 0 : return expand_rtx (expand_encoding, operands);
2649 : }
2650 :
2651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9863 */
2652 : rtx
2653 0 : gen_fixuns_notruncv4dfv4si2 (const rtx operand0, const rtx operand1)
2654 : {
2655 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2656 0 : static const uint8_t expand_encoding[] = {
2657 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2658 : 0x81, 0x1d
2659 : };
2660 0 : return expand_rtx (expand_encoding, operands);
2661 : }
2662 :
2663 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9921 */
2664 : rtx
2665 0 : gen_unspec_fix_truncv8dfv8si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2666 : {
2667 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2668 0 : static const uint8_t expand_encoding[] = {
2669 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x1a, 0x56,
2670 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2671 : 0x33
2672 : };
2673 0 : return expand_rtx (expand_encoding, operands);
2674 : }
2675 :
2676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9932 */
2677 : rtx
2678 0 : gen_fix_truncv8dfv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2679 : {
2680 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2681 0 : static const uint8_t expand_encoding[] = {
2682 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x74, 0x56,
2683 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2684 : };
2685 0 : return expand_rtx (expand_encoding, operands);
2686 : }
2687 :
2688 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10022 */
2689 : rtx
2690 0 : gen_fix_truncv4dfv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2691 : {
2692 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2693 0 : static const uint8_t expand_encoding[] = {
2694 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x74, 0x51,
2695 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2696 : };
2697 0 : return expand_rtx (expand_encoding, operands);
2698 : }
2699 :
2700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10050 */
2701 : rtx
2702 0 : gen_unspec_fixuns_truncv8dfv8di2_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, 0x5c, 0x1a, 0x5c,
2707 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2708 : 0x03
2709 : };
2710 0 : return expand_rtx (expand_encoding, operands);
2711 : }
2712 :
2713 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10061 */
2714 : rtx
2715 8 : gen_fix_truncv8dfv8di2 (const rtx operand0, const rtx operand1)
2716 : {
2717 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2718 8 : static const uint8_t expand_encoding[] = {
2719 : 0x1f, 0x01, 0x00, 0x74, 0x5c, 0x01, 0x01
2720 : };
2721 8 : return expand_rtx (expand_encoding, operands);
2722 : }
2723 :
2724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10061 */
2725 : rtx
2726 4 : gen_fix_truncv4dfv4di2 (const rtx operand0, const rtx operand1)
2727 : {
2728 4 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2729 4 : static const uint8_t expand_encoding[] = {
2730 : 0x1f, 0x01, 0x00, 0x74, 0x57, 0x01, 0x01
2731 : };
2732 4 : return expand_rtx (expand_encoding, operands);
2733 : }
2734 :
2735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10071 */
2736 : rtx
2737 0 : gen_fix_notruncv8dfv8di2 (const rtx operand0, const rtx operand1)
2738 : {
2739 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2740 0 : static const uint8_t expand_encoding[] = {
2741 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
2742 : 0x2f
2743 : };
2744 0 : return expand_rtx (expand_encoding, operands);
2745 : }
2746 :
2747 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10082 */
2748 : rtx
2749 0 : gen_fixuns_notruncv8dfv8di2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2750 : {
2751 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2752 0 : static const uint8_t expand_encoding[] = {
2753 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x1a, 0x5c,
2754 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x81,
2755 : 0x33
2756 : };
2757 0 : return expand_rtx (expand_encoding, operands);
2758 : }
2759 :
2760 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10093 */
2761 : rtx
2762 57 : gen_unspec_fix_truncv8sfv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2763 : {
2764 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2765 57 : static const uint8_t expand_encoding[] = {
2766 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2767 : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x81, 0x2d,
2768 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2769 : };
2770 57 : return expand_rtx (expand_encoding, operands);
2771 : }
2772 :
2773 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10104 */
2774 : rtx
2775 0 : gen_fix_truncv8sfv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2776 : {
2777 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2778 0 : static const uint8_t expand_encoding[] = {
2779 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2780 : 0x5c, 0x74, 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01,
2781 : 0x03, 0x01, 0x04, 0x81, 0x33
2782 : };
2783 0 : return expand_rtx (expand_encoding, operands);
2784 : }
2785 :
2786 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10114 */
2787 : rtx
2788 36 : gen_unspec_avx512dq_fixuns_truncv2sfv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2789 : {
2790 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2791 36 : static const uint8_t expand_encoding[] = {
2792 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
2793 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2794 : 0x03
2795 : };
2796 36 : return expand_rtx (expand_encoding, operands);
2797 : }
2798 :
2799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10331 */
2800 : rtx
2801 0 : gen_sse2_cvttpd2dq_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2802 : {
2803 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2804 0 : static const uint8_t expand_encoding[] = {
2805 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x81, 0x09,
2806 : 0x4a, 0x74, 0x4a, 0x01, 0x01, 0x81, 0x0a, 0x4a,
2807 : 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
2808 : 0x01, 0x01, 0x03, 0x2c, 0x4a, 0x02, 0x27, 0x00,
2809 : 0x27, 0x00
2810 : };
2811 0 : return expand_rtx (expand_encoding, operands);
2812 : }
2813 :
2814 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10458 */
2815 : rtx
2816 138 : gen_avx_cvtpd2ps256 (const rtx operand0, const rtx operand1)
2817 : {
2818 138 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2819 138 : static const uint8_t expand_encoding[] = {
2820 : 0x1f, 0x01, 0x00, 0x72, 0x6b, 0x01, 0x01
2821 : };
2822 138 : return expand_rtx (expand_encoding, operands);
2823 : }
2824 :
2825 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10582 */
2826 : rtx
2827 12 : gen_avx_cvtps2pd256 (const rtx operand0, const rtx operand1)
2828 : {
2829 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2830 12 : static const uint8_t expand_encoding[] = {
2831 : 0x1f, 0x01, 0x00, 0x71, 0x70, 0x01, 0x01
2832 : };
2833 12 : return expand_rtx (expand_encoding, operands);
2834 : }
2835 :
2836 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10620 */
2837 : rtx
2838 12 : gen_avx512vl_cvtw2maskv8hi (const rtx operand0, const rtx operand1)
2839 : {
2840 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2841 12 : static const uint8_t expand_encoding[] = {
2842 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x01, 0x01, 0x01,
2843 : 0x81, 0x40
2844 : };
2845 12 : return expand_rtx (expand_encoding, operands);
2846 : }
2847 :
2848 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10764 */
2849 : rtx
2850 0 : gen_sse2_cvtps2pd_mask_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2851 : {
2852 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2853 0 : static const uint8_t expand_encoding[] = {
2854 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x71, 0x6c,
2855 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2856 : };
2857 0 : return expand_rtx (expand_encoding, operands);
2858 : }
2859 :
2860 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11574 */
2861 : rtx
2862 24 : gen_vec_interleave_highv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2863 : {
2864 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2865 24 : static const uint8_t expand_encoding[] = {
2866 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0a,
2867 : 0x6b, 0x81, 0x0b, 0x6f, 0x01, 0x01, 0x01, 0x02,
2868 : 0x17, 0x00, 0x04, 0x27, 0x02, 0x27, 0x06, 0x27,
2869 : 0x03, 0x27, 0x07, 0x01, 0x03, 0x01, 0x04
2870 : };
2871 24 : return expand_rtx (expand_encoding, operands);
2872 : }
2873 :
2874 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11731 */
2875 : rtx
2876 36 : gen_avx512f_movshdup512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2877 : {
2878 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2879 36 : static const uint8_t expand_encoding[] = {
2880 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x0a,
2881 : 0x74, 0x81, 0x0b, 0x79, 0x01, 0x01, 0x01, 0x01,
2882 : 0x17, 0x00, 0x10, 0x27, 0x01, 0x27, 0x01, 0x27,
2883 : 0x03, 0x27, 0x03, 0x27, 0x05, 0x27, 0x05, 0x27,
2884 : 0x07, 0x27, 0x07, 0x27, 0x09, 0x27, 0x09, 0x27,
2885 : 0x0b, 0x27, 0x0b, 0x27, 0x0d, 0x27, 0x0d, 0x27,
2886 : 0x0f, 0x27, 0x0f, 0x01, 0x02, 0x01, 0x03
2887 : };
2888 36 : return expand_rtx (expand_encoding, operands);
2889 : }
2890 :
2891 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11980 */
2892 : rtx
2893 16 : gen_sse_loadhps (const rtx operand0, const rtx operand1, const rtx operand2)
2894 : {
2895 16 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2896 16 : static const uint8_t expand_encoding[] = {
2897 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6b, 0x81, 0x0a,
2898 : 0x67, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00,
2899 : 0x27, 0x01, 0x01, 0x02
2900 : };
2901 16 : return expand_rtx (expand_encoding, operands);
2902 : }
2903 :
2904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12096 */
2905 : rtx
2906 0 : gen_avx512f_vec_dupv8df_1 (const rtx operand0, const rtx operand1)
2907 : {
2908 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2909 0 : static const uint8_t expand_encoding[] = {
2910 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x75, 0x81, 0x0a,
2911 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2912 : };
2913 0 : return expand_rtx (expand_encoding, operands);
2914 : }
2915 :
2916 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12428 */
2917 : rtx
2918 0 : gen_vec_setv16bf_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2919 : {
2920 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2921 0 : static const uint8_t expand_encoding[] = {
2922 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x0c,
2923 : 0x6d, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2924 : };
2925 0 : return expand_rtx (expand_encoding, operands);
2926 : }
2927 :
2928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12801 */
2929 : rtx
2930 24 : gen_avx512dq_vextracti64x2_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
2931 : {
2932 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
2933 24 : static const uint8_t expand_encoding[] = {
2934 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x81, 0x0a,
2935 : 0x52, 0x01, 0x01, 0x17, 0x00, 0x02, 0x01, 0x02,
2936 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
2937 : };
2938 24 : return expand_rtx (expand_encoding, operands);
2939 : }
2940 :
2941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13040 */
2942 : rtx
2943 474 : gen_vec_extract_hi_v8di (const rtx operand0, const rtx operand1)
2944 : {
2945 474 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2946 474 : static const uint8_t expand_encoding[] = {
2947 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x57, 0x01, 0x01,
2948 : 0x17, 0x00, 0x04, 0x27, 0x04, 0x27, 0x05, 0x27,
2949 : 0x06, 0x27, 0x07
2950 : };
2951 474 : return expand_rtx (expand_encoding, operands);
2952 : }
2953 :
2954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13230 */
2955 : rtx
2956 0 : gen_vec_extract_lo_v4df_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, 0x6c, 0x81, 0x0a,
2961 : 0x6c, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00,
2962 : 0x27, 0x01, 0x01, 0x02, 0x01, 0x03
2963 : };
2964 0 : return expand_rtx (expand_encoding, operands);
2965 : }
2966 :
2967 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13337 */
2968 : rtx
2969 2381 : gen_vec_extract_lo_v8sf (const rtx operand0, const rtx operand1)
2970 : {
2971 2381 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2972 2381 : static const uint8_t expand_encoding[] = {
2973 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x01, 0x01,
2974 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x01, 0x27,
2975 : 0x02, 0x27, 0x03
2976 : };
2977 2381 : return expand_rtx (expand_encoding, operands);
2978 : }
2979 :
2980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13427 */
2981 : rtx
2982 19 : gen_vec_extract_hi_v32hf (const rtx operand0, const rtx operand1)
2983 : {
2984 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2985 19 : static const uint8_t expand_encoding[] = {
2986 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6e, 0x01, 0x01,
2987 : 0x17, 0x00, 0x10, 0x27, 0x10, 0x27, 0x11, 0x27,
2988 : 0x12, 0x27, 0x13, 0x27, 0x14, 0x27, 0x15, 0x27,
2989 : 0x16, 0x27, 0x17, 0x27, 0x18, 0x27, 0x19, 0x27,
2990 : 0x1a, 0x27, 0x1b, 0x27, 0x1c, 0x27, 0x1d, 0x27,
2991 : 0x1e, 0x27, 0x1f
2992 : };
2993 19 : return expand_rtx (expand_encoding, operands);
2994 : }
2995 :
2996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13556 */
2997 : rtx
2998 801 : gen_vec_extract_lo_v32qi (const rtx operand0, const rtx operand1)
2999 : {
3000 801 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3001 801 : static const uint8_t expand_encoding[] = {
3002 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x4f, 0x01, 0x01,
3003 : 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x01, 0x27,
3004 : 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05, 0x27,
3005 : 0x06, 0x27, 0x07, 0x27, 0x08, 0x27, 0x09, 0x27,
3006 : 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d, 0x27,
3007 : 0x0e, 0x27, 0x0f
3008 : };
3009 801 : return expand_rtx (expand_encoding, operands);
3010 : }
3011 :
3012 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13818 */
3013 : rtx
3014 0 : gen_avx512f_unpcklpd512 (const rtx operand0, const rtx operand1, const rtx operand2)
3015 : {
3016 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3017 0 : static const uint8_t expand_encoding[] = {
3018 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x75, 0x81, 0x0b,
3019 : 0x7a, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3020 : 0x27, 0x00, 0x27, 0x08, 0x27, 0x02, 0x27, 0x0a,
3021 : 0x27, 0x04, 0x27, 0x0c, 0x27, 0x06, 0x27, 0x0e
3022 : };
3023 0 : return expand_rtx (expand_encoding, operands);
3024 : }
3025 :
3026 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13977 */
3027 : rtx
3028 0 : gen_avx512f_vmscalefv4sf (const rtx operand0, const rtx operand1, const rtx operand2)
3029 : {
3030 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3031 0 : static const uint8_t expand_encoding[] = {
3032 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
3033 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x01,
3034 : 0x27, 0x01
3035 : };
3036 0 : return expand_rtx (expand_encoding, operands);
3037 : }
3038 :
3039 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3040 : rtx
3041 0 : gen_avx512bw_scalefv32hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3042 : {
3043 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3044 0 : static const uint8_t expand_encoding[] = {
3045 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
3046 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3047 : 0x81, 0x33
3048 : };
3049 0 : return expand_rtx (expand_encoding, operands);
3050 : }
3051 :
3052 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3053 : rtx
3054 0 : gen_avx512fp16_scalefv8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3055 : {
3056 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3057 0 : static const uint8_t expand_encoding[] = {
3058 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
3059 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
3060 : 0x3b, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3061 : 0x33
3062 : };
3063 0 : return expand_rtx (expand_encoding, operands);
3064 : }
3065 :
3066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3067 : rtx
3068 36 : gen_avx512vl_scalefv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3069 : {
3070 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3071 36 : static const uint8_t expand_encoding[] = {
3072 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
3073 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3074 : 0x01, 0x04
3075 : };
3076 36 : return expand_rtx (expand_encoding, operands);
3077 : }
3078 :
3079 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3080 : rtx
3081 0 : gen_avx512vl_scalefv2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3082 : {
3083 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3084 0 : static const uint8_t expand_encoding[] = {
3085 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x1a, 0x6c,
3086 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3087 : 0x81, 0x33
3088 : };
3089 0 : return expand_rtx (expand_encoding, operands);
3090 : }
3091 :
3092 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14017 */
3093 : rtx
3094 0 : gen_avx512f_vternlogv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3095 : {
3096 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3097 0 : static const uint8_t expand_encoding[] = {
3098 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01, 0x01,
3099 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x25
3100 : };
3101 0 : return expand_rtx (expand_encoding, operands);
3102 : }
3103 :
3104 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3105 : rtx
3106 0 : gen_avx512vl_getexpv16hf (const rtx operand0, const rtx operand1)
3107 : {
3108 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3109 0 : static const uint8_t expand_encoding[] = {
3110 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x01, 0x01, 0x01,
3111 : 0x81, 0x26
3112 : };
3113 0 : return expand_rtx (expand_encoding, operands);
3114 : }
3115 :
3116 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3117 : rtx
3118 0 : gen_avx512f_getexpv16sf (const rtx operand0, const rtx operand1)
3119 : {
3120 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3121 0 : static const uint8_t expand_encoding[] = {
3122 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x01, 0x01, 0x01,
3123 : 0x81, 0x26
3124 : };
3125 0 : return expand_rtx (expand_encoding, operands);
3126 : }
3127 :
3128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3129 : rtx
3130 0 : gen_avx512vl_getexpv8sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3131 : {
3132 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3133 0 : static const uint8_t expand_encoding[] = {
3134 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
3135 : 0x6f, 0x1a, 0x6f, 0x01, 0x01, 0x01, 0x81, 0x26,
3136 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
3137 : };
3138 0 : return expand_rtx (expand_encoding, operands);
3139 : }
3140 :
3141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3142 : rtx
3143 0 : gen_avx512vl_getexpv4df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3144 : {
3145 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3146 0 : static const uint8_t expand_encoding[] = {
3147 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
3148 : 0x70, 0x1a, 0x70, 0x01, 0x01, 0x01, 0x81, 0x26,
3149 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
3150 : };
3151 0 : return expand_rtx (expand_encoding, operands);
3152 : }
3153 :
3154 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14410 */
3155 : rtx
3156 34 : gen_avx512f_sgetexpv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3157 : {
3158 34 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3159 34 : static const uint8_t expand_encoding[] = {
3160 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3161 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x02, 0x01,
3162 : 0x01, 0x01, 0x02, 0x81, 0x26, 0x01, 0x03, 0x01,
3163 : 0x04, 0x01, 0x01, 0x27, 0x01, 0x01, 0x05, 0x81,
3164 : 0x33
3165 : };
3166 34 : return expand_rtx (expand_encoding, operands);
3167 : }
3168 :
3169 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3170 : rtx
3171 0 : gen_avx512f_fixupimmv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3172 : {
3173 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3174 0 : static const uint8_t expand_encoding[] = {
3175 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01, 0x01,
3176 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x24
3177 : };
3178 0 : return expand_rtx (expand_encoding, operands);
3179 : }
3180 :
3181 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3182 : rtx
3183 8 : gen_avx512vl_fixupimmv4sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3184 : {
3185 8 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3186 8 : static const uint8_t expand_encoding[] = {
3187 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
3188 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3189 : 0x04, 0x81, 0x24, 0x01, 0x05, 0x01, 0x06
3190 : };
3191 8 : return expand_rtx (expand_encoding, operands);
3192 : }
3193 :
3194 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3195 : rtx
3196 0 : gen_avx512vl_fixupimmv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3197 : {
3198 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3199 0 : static const uint8_t expand_encoding[] = {
3200 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01, 0x01,
3201 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x24
3202 : };
3203 0 : return expand_rtx (expand_encoding, operands);
3204 : }
3205 :
3206 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14526 */
3207 : rtx
3208 16 : gen_avx512vl_fixupimmv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3209 : {
3210 16 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3211 16 : static const uint8_t expand_encoding[] = {
3212 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
3213 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3214 : 0x04, 0x81, 0x24, 0x01, 0x01, 0x01, 0x05
3215 : };
3216 16 : return expand_rtx (expand_encoding, operands);
3217 : }
3218 :
3219 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14558 */
3220 : rtx
3221 0 : gen_avx512f_sfixupimmv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3222 : {
3223 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3224 0 : static const uint8_t expand_encoding[] = {
3225 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3226 : 0x6b, 0x1a, 0x6b, 0x04, 0x01, 0x01, 0x01, 0x02,
3227 : 0x01, 0x03, 0x01, 0x04, 0x81, 0x24, 0x01, 0x02,
3228 : 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
3229 : };
3230 0 : return expand_rtx (expand_encoding, operands);
3231 : }
3232 :
3233 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14574 */
3234 : rtx
3235 38 : gen_avx512f_sfixupimmv2df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3236 : {
3237 38 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3238 38 : static const uint8_t expand_encoding[] = {
3239 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
3240 : 0x6c, 0x81, 0x09, 0x6c, 0x1a, 0x6c, 0x04, 0x01,
3241 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
3242 : 0x24, 0x01, 0x02, 0x27, 0x01, 0x01, 0x01, 0x01,
3243 : 0x05, 0x01, 0x06, 0x81, 0x33
3244 : };
3245 38 : return expand_rtx (expand_encoding, operands);
3246 : }
3247 :
3248 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3249 : rtx
3250 0 : gen_avx512fp16_rndscalev8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3251 : {
3252 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3253 0 : static const uint8_t expand_encoding[] = {
3254 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
3255 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
3256 : 0x5f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3257 : 0x33
3258 : };
3259 0 : return expand_rtx (expand_encoding, operands);
3260 : }
3261 :
3262 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3263 : rtx
3264 0 : gen_avx512vl_rndscalev4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3265 : {
3266 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3267 0 : static const uint8_t expand_encoding[] = {
3268 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3269 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
3270 : 0x5f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3271 : 0x33
3272 : };
3273 0 : return expand_rtx (expand_encoding, operands);
3274 : }
3275 :
3276 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3277 : rtx
3278 0 : gen_avx512vl_rndscalev2df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3279 : {
3280 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3281 0 : static const uint8_t expand_encoding[] = {
3282 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
3283 : 0x6c, 0x1a, 0x6c, 0x02, 0x01, 0x01, 0x01, 0x02,
3284 : 0x5f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3285 : 0x33
3286 : };
3287 0 : return expand_rtx (expand_encoding, operands);
3288 : }
3289 :
3290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14605 */
3291 : rtx
3292 0 : gen_avx512f_rndscalev2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3293 : {
3294 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3295 0 : static const uint8_t expand_encoding[] = {
3296 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
3297 : 0x6c, 0x1a, 0x6c, 0x02, 0x01, 0x02, 0x01, 0x03,
3298 : 0x5f, 0x01, 0x01, 0x27, 0x01, 0x01, 0x04, 0x81,
3299 : 0x33
3300 : };
3301 0 : return expand_rtx (expand_encoding, operands);
3302 : }
3303 :
3304 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14830 */
3305 : rtx
3306 24 : gen_avx2_interleave_highv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3307 : {
3308 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3309 24 : static const uint8_t expand_encoding[] = {
3310 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x0a,
3311 : 0x57, 0x81, 0x0b, 0x5c, 0x01, 0x01, 0x01, 0x02,
3312 : 0x17, 0x00, 0x04, 0x27, 0x01, 0x27, 0x05, 0x27,
3313 : 0x03, 0x27, 0x07, 0x01, 0x03, 0x01, 0x04
3314 : };
3315 24 : return expand_rtx (expand_encoding, operands);
3316 : }
3317 :
3318 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14912 */
3319 : rtx
3320 4194 : gen_vec_interleave_lowv2di (const rtx operand0, const rtx operand1, const rtx operand2)
3321 : {
3322 4194 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3323 4194 : static const uint8_t expand_encoding[] = {
3324 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x52, 0x81, 0x0b,
3325 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x02,
3326 : 0x27, 0x00, 0x27, 0x02
3327 : };
3328 4194 : return expand_rtx (expand_encoding, operands);
3329 : }
3330 :
3331 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15215 */
3332 : rtx
3333 0 : gen_sse2_movsd_v2di (const rtx operand0, const rtx operand1, const rtx operand2)
3334 : {
3335 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3336 0 : static const uint8_t expand_encoding[] = {
3337 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x01, 0x02,
3338 : 0x01, 0x01, 0x27, 0x01
3339 : };
3340 0 : return expand_rtx (expand_encoding, operands);
3341 : }
3342 :
3343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15503 */
3344 : rtx
3345 36 : gen_avx512f_us_truncatev16siv16qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3346 : {
3347 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3348 36 : static const uint8_t expand_encoding[] = {
3349 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x81, 0x18,
3350 : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3351 : };
3352 36 : return expand_rtx (expand_encoding, operands);
3353 : }
3354 :
3355 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15532 */
3356 : rtx
3357 0 : gen_avx512bw_ss_truncatev32hiv32qi2 (const rtx operand0, const rtx operand1)
3358 : {
3359 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3360 0 : static const uint8_t expand_encoding[] = {
3361 : 0x1f, 0x01, 0x00, 0x81, 0x17, 0x54, 0x01, 0x01
3362 : };
3363 0 : return expand_rtx (expand_encoding, operands);
3364 : }
3365 :
3366 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15675 */
3367 : rtx
3368 36 : gen_avx512vl_truncatev8siv8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3369 : {
3370 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3371 36 : static const uint8_t expand_encoding[] = {
3372 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x70, 0x50,
3373 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3374 : };
3375 36 : return expand_rtx (expand_encoding, operands);
3376 : }
3377 :
3378 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15736 */
3379 : rtx
3380 4 : gen_avx512vl_truncatev2div2qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3381 : {
3382 4 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3383 4 : static const uint8_t expand_encoding[] = {
3384 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x70, 0x44,
3385 : 0x01, 0x01, 0x01, 0x02
3386 : };
3387 4 : return expand_rtx (expand_encoding, operands);
3388 : }
3389 :
3390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15736 */
3391 : rtx
3392 0 : gen_avx512vl_us_truncatev8hiv8qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3393 : {
3394 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3395 0 : static const uint8_t expand_encoding[] = {
3396 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x18,
3397 : 0x48, 0x01, 0x01, 0x01, 0x02
3398 : };
3399 0 : return expand_rtx (expand_encoding, operands);
3400 : }
3401 :
3402 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15889 */
3403 : rtx
3404 36 : gen_avx512vl_ss_truncatev4div4qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3405 : {
3406 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3407 36 : static const uint8_t expand_encoding[] = {
3408 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x09,
3409 : 0x45, 0x81, 0x17, 0x45, 0x01, 0x01, 0x81, 0x0a,
3410 : 0x45, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
3411 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
3412 : 0x2c, 0x4c, 0x0c, 0x27, 0x00, 0x27, 0x00, 0x27,
3413 : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3414 : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3415 : 0x00, 0x27, 0x00
3416 : };
3417 36 : return expand_rtx (expand_encoding, operands);
3418 : }
3419 :
3420 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15987 */
3421 : rtx
3422 36 : gen_avx512vl_us_truncatev8hiv8qi2_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 : 0x48, 0x81, 0x18, 0x48, 0x01, 0x01, 0x81, 0x0a,
3428 : 0x48, 0x01, 0x02, 0x17, 0x00, 0x08, 0x27, 0x00,
3429 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
3430 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x03,
3431 : 0x2c, 0x48, 0x08, 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:16091 */
3439 : rtx
3440 3 : gen_avx512vl_truncatev2div2hi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3441 : {
3442 3 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3443 3 : static const uint8_t expand_encoding[] = {
3444 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x70, 0x46,
3445 : 0x01, 0x01, 0x01, 0x02
3446 : };
3447 3 : return expand_rtx (expand_encoding, operands);
3448 : }
3449 :
3450 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16149 */
3451 : rtx
3452 36 : gen_avx512vl_us_truncatev4div4hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3453 : {
3454 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3455 36 : static const uint8_t expand_encoding[] = {
3456 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x81, 0x09,
3457 : 0x49, 0x81, 0x18, 0x49, 0x01, 0x01, 0x81, 0x0a,
3458 : 0x49, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
3459 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
3460 : 0x2c, 0x49, 0x04, 0x27, 0x00, 0x27, 0x00, 0x27,
3461 : 0x00, 0x27, 0x00
3462 : };
3463 36 : return expand_rtx (expand_encoding, operands);
3464 : }
3465 :
3466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16332 */
3467 : rtx
3468 0 : gen_avx512vl_ss_truncatev2div2si2 (const rtx operand0, const rtx operand1, const rtx operand2)
3469 : {
3470 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3471 0 : static const uint8_t expand_encoding[] = {
3472 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x81, 0x17,
3473 : 0x4a, 0x01, 0x01, 0x01, 0x02
3474 : };
3475 0 : return expand_rtx (expand_encoding, operands);
3476 : }
3477 :
3478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16422 */
3479 : rtx
3480 11 : gen_avx512vl_truncatev2div2si2_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, 0x4a, 0x70, 0x4a,
3485 : 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:16503 */
3491 : rtx
3492 36 : gen_avx512f_truncatev8div16qi2_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, 0x4f, 0x81, 0x09,
3497 : 0x48, 0x70, 0x48, 0x01, 0x01, 0x81, 0x0a, 0x48,
3498 : 0x01, 0x02, 0x17, 0x00, 0x08, 0x27, 0x00, 0x27,
3499 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27,
3500 : 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x03, 0x2c,
3501 : 0x48, 0x08, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3502 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3503 : 0x27, 0x00
3504 : };
3505 36 : return expand_rtx (expand_encoding, operands);
3506 : }
3507 :
3508 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17481 */
3509 : rtx
3510 58 : gen_ashrv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3511 : {
3512 58 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3513 58 : static const uint8_t expand_encoding[] = {
3514 : 0x1f, 0x01, 0x00, 0x4f, 0x55, 0x01, 0x01, 0x01,
3515 : 0x02
3516 : };
3517 58 : return expand_rtx (expand_encoding, operands);
3518 : }
3519 :
3520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17663 */
3521 : rtx
3522 41 : gen_lshrv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3523 : {
3524 41 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3525 41 : static const uint8_t expand_encoding[] = {
3526 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x50, 0x55,
3527 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3528 : };
3529 41 : return expand_rtx (expand_encoding, operands);
3530 : }
3531 :
3532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17663 */
3533 : rtx
3534 38 : gen_lshrv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3535 : {
3536 38 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3537 38 : static const uint8_t expand_encoding[] = {
3538 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x50, 0x52,
3539 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3540 : };
3541 38 : return expand_rtx (expand_encoding, operands);
3542 : }
3543 :
3544 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17751 */
3545 : rtx
3546 41 : gen_ashlv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3547 : {
3548 41 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3549 41 : static const uint8_t expand_encoding[] = {
3550 : 0x1f, 0x01, 0x00, 0x4d, 0x5a, 0x01, 0x01, 0x01,
3551 : 0x02
3552 : };
3553 41 : return expand_rtx (expand_encoding, operands);
3554 : }
3555 :
3556 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17751 */
3557 : rtx
3558 246 : gen_lshrv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3559 : {
3560 246 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3561 246 : static const uint8_t expand_encoding[] = {
3562 : 0x1f, 0x01, 0x00, 0x50, 0x5c, 0x01, 0x01, 0x01,
3563 : 0x02
3564 : };
3565 246 : return expand_rtx (expand_encoding, operands);
3566 : }
3567 :
3568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17970 */
3569 : rtx
3570 0 : gen_avx512bw_ashlv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
3571 : {
3572 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3573 0 : static const uint8_t expand_encoding[] = {
3574 : 0x1f, 0x01, 0x00, 0x4d, 0x53, 0x01, 0x01, 0x01,
3575 : 0x02
3576 : };
3577 0 : return expand_rtx (expand_encoding, operands);
3578 : }
3579 :
3580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3581 : rtx
3582 0 : gen_avx512vl_rolvv8si (const rtx operand0, const rtx operand1, const rtx operand2)
3583 : {
3584 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3585 0 : static const uint8_t expand_encoding[] = {
3586 : 0x1f, 0x01, 0x00, 0x4e, 0x56, 0x01, 0x01, 0x01,
3587 : 0x02
3588 : };
3589 0 : return expand_rtx (expand_encoding, operands);
3590 : }
3591 :
3592 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3593 : rtx
3594 0 : gen_avx512f_rolvv8di (const rtx operand0, const rtx operand1, const rtx operand2)
3595 : {
3596 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3597 0 : static const uint8_t expand_encoding[] = {
3598 : 0x1f, 0x01, 0x00, 0x4e, 0x5c, 0x01, 0x01, 0x01,
3599 : 0x02
3600 : };
3601 0 : return expand_rtx (expand_encoding, operands);
3602 : }
3603 :
3604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3605 : rtx
3606 36 : gen_avx512vl_rolvv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3607 : {
3608 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3609 36 : static const uint8_t expand_encoding[] = {
3610 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x4e, 0x52,
3611 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3612 : };
3613 36 : return expand_rtx (expand_encoding, operands);
3614 : }
3615 :
3616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3617 : rtx
3618 24 : gen_avx512vl_rolv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3619 : {
3620 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3621 24 : static const uint8_t expand_encoding[] = {
3622 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4e, 0x51,
3623 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3624 : };
3625 24 : return expand_rtx (expand_encoding, operands);
3626 : }
3627 :
3628 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3629 : rtx
3630 0 : gen_avx512vl_rolv2di (const rtx operand0, const rtx operand1, const rtx operand2)
3631 : {
3632 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3633 0 : static const uint8_t expand_encoding[] = {
3634 : 0x1f, 0x01, 0x00, 0x4e, 0x52, 0x01, 0x01, 0x01,
3635 : 0x02
3636 : };
3637 0 : return expand_rtx (expand_encoding, operands);
3638 : }
3639 :
3640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18754 */
3641 : rtx
3642 0 : gen_one_cmplv16si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3643 : {
3644 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3645 0 : static const uint8_t expand_encoding[] = {
3646 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4b, 0x5b,
3647 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3648 : };
3649 0 : return expand_rtx (expand_encoding, operands);
3650 : }
3651 :
3652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3653 : rtx
3654 24 : gen_avx512bw_testmv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3655 : {
3656 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3657 24 : static const uint8_t expand_encoding[] = {
3658 : 0x1f, 0x01, 0x00, 0x49, 0x12, 0x1a, 0x12, 0x02,
3659 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x1f, 0x01, 0x03
3660 : };
3661 24 : return expand_rtx (expand_encoding, operands);
3662 : }
3663 :
3664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3665 : rtx
3666 0 : gen_avx512f_testmv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3667 : {
3668 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3669 0 : static const uint8_t expand_encoding[] = {
3670 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x01, 0x01,
3671 : 0x01, 0x02, 0x81, 0x1f
3672 : };
3673 0 : return expand_rtx (expand_encoding, operands);
3674 : }
3675 :
3676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3677 : rtx
3678 24 : gen_avx512vl_testmv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3679 : {
3680 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3681 24 : static const uint8_t expand_encoding[] = {
3682 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3683 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x1f, 0x01, 0x03
3684 : };
3685 24 : return expand_rtx (expand_encoding, operands);
3686 : }
3687 :
3688 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3689 : rtx
3690 0 : gen_avx512vl_testnmv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3691 : {
3692 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3693 0 : static const uint8_t expand_encoding[] = {
3694 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x01, 0x01,
3695 : 0x01, 0x02, 0x81, 0x20
3696 : };
3697 0 : return expand_rtx (expand_encoding, operands);
3698 : }
3699 :
3700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3701 : rtx
3702 24 : gen_avx512vl_testnmv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3703 : {
3704 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3705 24 : static const uint8_t expand_encoding[] = {
3706 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3707 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x20, 0x01, 0x03
3708 : };
3709 24 : return expand_rtx (expand_encoding, operands);
3710 : }
3711 :
3712 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19655 */
3713 : rtx
3714 0 : gen_avx512bw_packsswb (const rtx operand0, const rtx operand1, const rtx operand2)
3715 : {
3716 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3717 0 : static const uint8_t expand_encoding[] = {
3718 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x59, 0x81, 0x0b,
3719 : 0x59, 0x81, 0x17, 0x54, 0x01, 0x01, 0x81, 0x17,
3720 : 0x54, 0x01, 0x02, 0x17, 0x00, 0x40, 0x27, 0x00,
3721 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
3722 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x27, 0x20,
3723 : 0x27, 0x21, 0x27, 0x22, 0x27, 0x23, 0x27, 0x24,
3724 : 0x27, 0x25, 0x27, 0x26, 0x27, 0x27, 0x27, 0x08,
3725 : 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b, 0x27, 0x0c,
3726 : 0x27, 0x0d, 0x27, 0x0e, 0x27, 0x0f, 0x27, 0x28,
3727 : 0x27, 0x29, 0x27, 0x2a, 0x27, 0x2b, 0x27, 0x2c,
3728 : 0x27, 0x2d, 0x27, 0x2e, 0x27, 0x2f, 0x27, 0x10,
3729 : 0x27, 0x11, 0x27, 0x12, 0x27, 0x13, 0x27, 0x14,
3730 : 0x27, 0x15, 0x27, 0x16, 0x27, 0x17, 0x27, 0x30,
3731 : 0x27, 0x31, 0x27, 0x32, 0x27, 0x33, 0x27, 0x34,
3732 : 0x27, 0x35, 0x27, 0x36, 0x27, 0x37, 0x27, 0x18,
3733 : 0x27, 0x19, 0x27, 0x1a, 0x27, 0x1b, 0x27, 0x1c,
3734 : 0x27, 0x1d, 0x27, 0x1e, 0x27, 0x1f, 0x27, 0x38,
3735 : 0x27, 0x39, 0x27, 0x3a, 0x27, 0x3b, 0x27, 0x3c,
3736 : 0x27, 0x3d, 0x27, 0x3e, 0x27, 0x3f
3737 : };
3738 0 : return expand_rtx (expand_encoding, operands);
3739 : }
3740 :
3741 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19885 */
3742 : rtx
3743 16 : gen_avx512bw_interleave_lowv64qi (const rtx operand0, const rtx operand1, const rtx operand2)
3744 : {
3745 16 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3746 16 : static const uint8_t expand_encoding[] = {
3747 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x59, 0x81, 0x0b,
3748 : 0x5e, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x40,
3749 : 0x27, 0x00, 0x27, 0x40, 0x27, 0x01, 0x27, 0x41,
3750 : 0x27, 0x02, 0x27, 0x42, 0x27, 0x03, 0x27, 0x43,
3751 : 0x27, 0x04, 0x27, 0x44, 0x27, 0x05, 0x27, 0x45,
3752 : 0x27, 0x06, 0x27, 0x46, 0x27, 0x07, 0x27, 0x47,
3753 : 0x27, 0x10, 0x27, 0x50, 0x27, 0x11, 0x27, 0x51,
3754 : 0x27, 0x12, 0x27, 0x52, 0x27, 0x13, 0x27, 0x53,
3755 : 0x27, 0x14, 0x27, 0x54, 0x27, 0x15, 0x27, 0x55,
3756 : 0x27, 0x16, 0x27, 0x56, 0x27, 0x17, 0x27, 0x57,
3757 : 0x27, 0x20, 0x27, 0x60, 0x27, 0x21, 0x27, 0x61,
3758 : 0x27, 0x22, 0x27, 0x62, 0x27, 0x23, 0x27, 0x63,
3759 : 0x27, 0x24, 0x27, 0x64, 0x27, 0x25, 0x27, 0x65,
3760 : 0x27, 0x26, 0x27, 0x66, 0x27, 0x27, 0x27, 0x67,
3761 : 0x27, 0x30, 0x27, 0x70, 0x27, 0x31, 0x27, 0x71,
3762 : 0x27, 0x32, 0x27, 0x72, 0x27, 0x33, 0x27, 0x73,
3763 : 0x27, 0x34, 0x27, 0x74, 0x27, 0x35, 0x27, 0x75,
3764 : 0x27, 0x36, 0x27, 0x76, 0x27, 0x37, 0x27, 0x77
3765 : };
3766 16 : return expand_rtx (expand_encoding, operands);
3767 : }
3768 :
3769 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20009 */
3770 : rtx
3771 32 : gen_avx2_interleave_highv16hi (const rtx operand0, const rtx operand1, const rtx operand2)
3772 : {
3773 32 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3774 32 : static const uint8_t expand_encoding[] = {
3775 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x55, 0x81, 0x0b,
3776 : 0x5a, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10,
3777 : 0x27, 0x04, 0x27, 0x14, 0x27, 0x05, 0x27, 0x15,
3778 : 0x27, 0x06, 0x27, 0x16, 0x27, 0x07, 0x27, 0x17,
3779 : 0x27, 0x0c, 0x27, 0x1c, 0x27, 0x0d, 0x27, 0x1d,
3780 : 0x27, 0x0e, 0x27, 0x1e, 0x27, 0x0f, 0x27, 0x1f
3781 : };
3782 32 : return expand_rtx (expand_encoding, operands);
3783 : }
3784 :
3785 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20029 */
3786 : rtx
3787 24 : gen_vec_interleave_highv8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3788 : {
3789 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3790 24 : static const uint8_t expand_encoding[] = {
3791 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0a,
3792 : 0x50, 0x81, 0x0b, 0x55, 0x01, 0x01, 0x01, 0x02,
3793 : 0x17, 0x00, 0x08, 0x27, 0x04, 0x27, 0x0c, 0x27,
3794 : 0x05, 0x27, 0x0d, 0x27, 0x06, 0x27, 0x0e, 0x27,
3795 : 0x07, 0x27, 0x0f, 0x01, 0x03, 0x01, 0x04
3796 : };
3797 24 : return expand_rtx (expand_encoding, operands);
3798 : }
3799 :
3800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20077 */
3801 : rtx
3802 0 : gen_avx2_interleave_lowv16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3803 : {
3804 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3805 0 : static const uint8_t expand_encoding[] = {
3806 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x0a,
3807 : 0x6e, 0x81, 0x0b, 0x73, 0x01, 0x01, 0x01, 0x02,
3808 : 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x10, 0x27,
3809 : 0x01, 0x27, 0x11, 0x27, 0x02, 0x27, 0x12, 0x27,
3810 : 0x03, 0x27, 0x13, 0x27, 0x08, 0x27, 0x18, 0x27,
3811 : 0x09, 0x27, 0x19, 0x27, 0x0a, 0x27, 0x1a, 0x27,
3812 : 0x0b, 0x27, 0x1b, 0x01, 0x03, 0x01, 0x04
3813 : };
3814 0 : return expand_rtx (expand_encoding, operands);
3815 : }
3816 :
3817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20154 */
3818 : rtx
3819 4102 : gen_vec_interleave_highv4si (const rtx operand0, const rtx operand1, const rtx operand2)
3820 : {
3821 4102 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3822 4102 : static const uint8_t expand_encoding[] = {
3823 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x51, 0x81, 0x0b,
3824 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
3825 : 0x27, 0x02, 0x27, 0x06, 0x27, 0x03, 0x27, 0x07
3826 : };
3827 4102 : return expand_rtx (expand_encoding, operands);
3828 : }
3829 :
3830 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20277 */
3831 : rtx
3832 1 : gen_sse4_1_pinsrb (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3833 : {
3834 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3835 1 : static const uint8_t expand_encoding[] = {
3836 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x81, 0x0c,
3837 : 0x4f, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03
3838 : };
3839 1 : return expand_rtx (expand_encoding, operands);
3840 : }
3841 :
3842 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20437 */
3843 : rtx
3844 24 : gen_avx512dq_vinserti64x2_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3845 : {
3846 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3847 24 : static const uint8_t expand_encoding[] = {
3848 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x81, 0x09,
3849 : 0x5c, 0x01, 0x01, 0x81, 0x0c, 0x5c, 0x01, 0x02,
3850 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
3851 : };
3852 24 : return expand_rtx (expand_encoding, operands);
3853 : }
3854 :
3855 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20509 */
3856 : rtx
3857 22 : gen_vec_set_hi_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3858 : {
3859 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3860 22 : static const uint8_t expand_encoding[] = {
3861 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0b,
3862 : 0x5b, 0x81, 0x0a, 0x56, 0x01, 0x01, 0x17, 0x00,
3863 : 0x08, 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27,
3864 : 0x03, 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27,
3865 : 0x07, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3866 : };
3867 22 : return expand_rtx (expand_encoding, operands);
3868 : }
3869 :
3870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20634 */
3871 : rtx
3872 0 : gen_avx512f_shuf_i64x2_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7, const rtx operand8, const rtx operand9, const rtx operand10)
3873 : {
3874 0 : rtx operands[11] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10 };
3875 0 : static const uint8_t expand_encoding[] = {
3876 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x5c, 0x81, 0x0b,
3877 : 0x61, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3878 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
3879 : 0x01, 0x07, 0x01, 0x08, 0x01, 0x09, 0x01, 0x0a
3880 : };
3881 0 : return expand_rtx (expand_encoding, operands);
3882 : }
3883 :
3884 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20807 */
3885 : rtx
3886 33 : gen_avx512f_shuf_i32x4_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)
3887 : {
3888 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 };
3889 33 : static const uint8_t expand_encoding[] = {
3890 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0a,
3891 : 0x5b, 0x81, 0x0b, 0x60, 0x01, 0x01, 0x01, 0x02,
3892 : 0x17, 0x00, 0x10, 0x01, 0x03, 0x01, 0x04, 0x01,
3893 : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08, 0x01,
3894 : 0x09, 0x01, 0x0a, 0x01, 0x0b, 0x01, 0x0c, 0x01,
3895 : 0x0d, 0x01, 0x0e, 0x01, 0x0f, 0x01, 0x10, 0x01,
3896 : 0x11, 0x01, 0x12, 0x01, 0x13, 0x01, 0x14
3897 : };
3898 33 : return expand_rtx (expand_encoding, operands);
3899 : }
3900 :
3901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21409 */
3902 : rtx
3903 40 : gen_sse2_pshufhw_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3904 : {
3905 40 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3906 40 : static const uint8_t expand_encoding[] = {
3907 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x50, 0x01, 0x01,
3908 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x01, 0x27,
3909 : 0x02, 0x27, 0x03, 0x01, 0x02, 0x01, 0x03, 0x01,
3910 : 0x04, 0x01, 0x05
3911 : };
3912 40 : return expand_rtx (expand_encoding, operands);
3913 : }
3914 :
3915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22378 */
3916 : rtx
3917 16 : gen_avx_movmskpd256 (const rtx operand0, const rtx operand1)
3918 : {
3919 16 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3920 16 : static const uint8_t expand_encoding[] = {
3921 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
3922 : 0x32
3923 : };
3924 16 : return expand_rtx (expand_encoding, operands);
3925 : }
3926 :
3927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23007 */
3928 : rtx
3929 14 : gen_avx2_phaddwv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3930 : {
3931 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3932 14 : static const uint8_t expand_encoding[] = {
3933 : 0x1f, 0x01, 0x00, 0x3b, 0x55, 0x81, 0x0a, 0x55,
3934 : 0x81, 0x0b, 0x5a, 0x01, 0x01, 0x01, 0x02, 0x17,
3935 : 0x00, 0x10, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
3936 : 0x27, 0x06, 0x27, 0x10, 0x27, 0x12, 0x27, 0x14,
3937 : 0x27, 0x16, 0x27, 0x08, 0x27, 0x0a, 0x27, 0x0c,
3938 : 0x27, 0x0e, 0x27, 0x18, 0x27, 0x1a, 0x27, 0x1c,
3939 : 0x27, 0x1e, 0x81, 0x0a, 0x55, 0x81, 0x0b, 0x5a,
3940 : 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10, 0x27,
3941 : 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07, 0x27,
3942 : 0x11, 0x27, 0x13, 0x27, 0x15, 0x27, 0x17, 0x27,
3943 : 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27, 0x0f, 0x27,
3944 : 0x19, 0x27, 0x1b, 0x27, 0x1d, 0x27, 0x1f
3945 : };
3946 14 : return expand_rtx (expand_encoding, operands);
3947 : }
3948 :
3949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23128 */
3950 : rtx
3951 29 : gen_ssse3_phsubdv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3952 : {
3953 29 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3954 29 : static const uint8_t expand_encoding[] = {
3955 : 0x1f, 0x01, 0x00, 0x3c, 0x51, 0x81, 0x0a, 0x51,
3956 : 0x81, 0x0b, 0x56, 0x01, 0x01, 0x01, 0x02, 0x17,
3957 : 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
3958 : 0x27, 0x06, 0x81, 0x0a, 0x51, 0x81, 0x0b, 0x56,
3959 : 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27,
3960 : 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07
3961 : };
3962 29 : return expand_rtx (expand_encoding, operands);
3963 : }
3964 :
3965 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23265 */
3966 : rtx
3967 70 : gen_avx512bw_umulhrswv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3968 : {
3969 70 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3970 70 : static const uint8_t expand_encoding[] = {
3971 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x70, 0x5a,
3972 : 0x50, 0x60, 0x3b, 0x60, 0x50, 0x60, 0x3e, 0x60,
3973 : 0x6e, 0x60, 0x01, 0x01, 0x6e, 0x60, 0x01, 0x02,
3974 : 0x27, 0x0e, 0x2c, 0x5a, 0x20, 0x27, 0x01, 0x27,
3975 : 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27,
3976 : 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27,
3977 : 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27,
3978 : 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27,
3979 : 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27,
3980 : 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27,
3981 : 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27,
3982 : 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x01,
3983 : 0x03, 0x01, 0x04
3984 : };
3985 70 : return expand_rtx (expand_encoding, operands);
3986 : }
3987 :
3988 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23665 */
3989 : rtx
3990 15 : gen_ssse3_psignv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3991 : {
3992 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3993 15 : static const uint8_t expand_encoding[] = {
3994 : 0x1f, 0x01, 0x00, 0x1a, 0x49, 0x02, 0x01, 0x01,
3995 : 0x01, 0x02, 0x79
3996 : };
3997 15 : return expand_rtx (expand_encoding, operands);
3998 : }
3999 :
4000 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23832 */
4001 : rtx
4002 24 : gen_absv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4003 : {
4004 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4005 24 : static const uint8_t expand_encoding[] = {
4006 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x7b, 0x56,
4007 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4008 : };
4009 24 : return expand_rtx (expand_encoding, operands);
4010 : }
4011 :
4012 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23846 */
4013 : rtx
4014 24 : gen_absv8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4015 : {
4016 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4017 24 : static const uint8_t expand_encoding[] = {
4018 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x7b, 0x50,
4019 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4020 : };
4021 24 : return expand_rtx (expand_encoding, operands);
4022 : }
4023 :
4024 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23966 */
4025 : rtx
4026 20 : gen_sse4_1_blendps (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4027 : {
4028 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4029 20 : static const uint8_t expand_encoding[] = {
4030 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x01, 0x02,
4031 : 0x01, 0x01, 0x01, 0x03
4032 : };
4033 20 : return expand_rtx (expand_encoding, operands);
4034 : }
4035 :
4036 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24220 */
4037 : rtx
4038 47 : gen_sse4_1_dpps (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4039 : {
4040 47 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4041 47 : static const uint8_t expand_encoding[] = {
4042 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
4043 : 0x01, 0x02, 0x01, 0x03, 0x7f
4044 : };
4045 47 : return expand_rtx (expand_encoding, operands);
4046 : }
4047 :
4048 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24297 */
4049 : rtx
4050 22 : gen_avx2_mpsadbw_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4051 : {
4052 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4053 22 : static const uint8_t expand_encoding[] = {
4054 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
4055 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4056 : 0x01, 0x01, 0x04, 0x01, 0x05
4057 : };
4058 22 : return expand_rtx (expand_encoding, operands);
4059 : }
4060 :
4061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24471 */
4062 : rtx
4063 34 : gen_sse4_1_pblendw (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4064 : {
4065 34 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4066 34 : static const uint8_t expand_encoding[] = {
4067 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x01, 0x02,
4068 : 0x01, 0x01, 0x01, 0x03
4069 : };
4070 34 : return expand_rtx (expand_encoding, operands);
4071 : }
4072 :
4073 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24648 */
4074 : rtx
4075 64 : gen_avx512bw_sign_extendv32qiv32hi2 (const rtx operand0, const rtx operand1)
4076 : {
4077 64 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4078 64 : static const uint8_t expand_encoding[] = {
4079 : 0x1f, 0x01, 0x00, 0x6e, 0x5a, 0x01, 0x01
4080 : };
4081 64 : return expand_rtx (expand_encoding, operands);
4082 : }
4083 :
4084 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24872 */
4085 : rtx
4086 36 : gen_avx512f_zero_extendv16qiv16si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4087 : {
4088 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4089 36 : static const uint8_t expand_encoding[] = {
4090 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x6f, 0x5b,
4091 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4092 : };
4093 36 : return expand_rtx (expand_encoding, operands);
4094 : }
4095 :
4096 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25076 */
4097 : rtx
4098 64 : gen_avx512f_sign_extendv16hiv16si2 (const rtx operand0, const rtx operand1)
4099 : {
4100 64 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4101 64 : static const uint8_t expand_encoding[] = {
4102 : 0x1f, 0x01, 0x00, 0x6e, 0x5b, 0x01, 0x01
4103 : };
4104 64 : return expand_rtx (expand_encoding, operands);
4105 : }
4106 :
4107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25130 */
4108 : rtx
4109 24 : gen_avx2_zero_extendv8hiv8si2_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, 0x56, 0x6f, 0x56,
4114 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4115 : };
4116 24 : return expand_rtx (expand_encoding, operands);
4117 : }
4118 :
4119 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25431 */
4120 : rtx
4121 15 : gen_avx2_sign_extendv4qiv4di2 (const rtx operand0, const rtx operand1)
4122 : {
4123 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4124 15 : static const uint8_t expand_encoding[] = {
4125 : 0x1f, 0x01, 0x00, 0x6e, 0x57, 0x81, 0x0a, 0x45,
4126 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
4127 : 0x01, 0x27, 0x02, 0x27, 0x03
4128 : };
4129 15 : return expand_rtx (expand_encoding, operands);
4130 : }
4131 :
4132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25591 */
4133 : rtx
4134 0 : gen_avx512f_sign_extendv8hiv8di2 (const rtx operand0, const rtx operand1)
4135 : {
4136 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4137 0 : static const uint8_t expand_encoding[] = {
4138 : 0x1f, 0x01, 0x00, 0x6e, 0x5c, 0x01, 0x01
4139 : };
4140 0 : return expand_rtx (expand_encoding, operands);
4141 : }
4142 :
4143 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25693 */
4144 : rtx
4145 15 : gen_sse4_1_sign_extendv2hiv2di2 (const rtx operand0, const rtx operand1)
4146 : {
4147 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4148 15 : static const uint8_t expand_encoding[] = {
4149 : 0x1f, 0x01, 0x00, 0x6e, 0x52, 0x81, 0x0a, 0x46,
4150 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
4151 : 0x01
4152 : };
4153 15 : return expand_rtx (expand_encoding, operands);
4154 : }
4155 :
4156 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25838 */
4157 : rtx
4158 24 : gen_avx2_sign_extendv4siv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4159 : {
4160 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4161 24 : static const uint8_t expand_encoding[] = {
4162 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6e, 0x57,
4163 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4164 : };
4165 24 : return expand_rtx (expand_encoding, operands);
4166 : }
4167 :
4168 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26099 */
4169 : rtx
4170 3 : gen_ptesttf2 (const rtx operand0, const rtx operand1)
4171 : {
4172 3 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4173 3 : static const uint8_t expand_encoding[] = {
4174 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
4175 : 0x00, 0x01, 0x01, 0x81, 0x03
4176 : };
4177 3 : return expand_rtx (expand_encoding, operands);
4178 : }
4179 :
4180 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26685 */
4181 : rtx
4182 61 : gen_sse4_2_pcmpestrm (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4183 : {
4184 61 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4185 61 : static const uint8_t expand_encoding[] = {
4186 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x4f,
4187 : 0x05, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
4188 : 0x04, 0x01, 0x05, 0x81, 0x04, 0x1f, 0x30, 0x02,
4189 : 0x11, 0x1a, 0x02, 0x05, 0x01, 0x01, 0x01, 0x02,
4190 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x04
4191 : };
4192 61 : return expand_rtx (expand_encoding, operands);
4193 : }
4194 :
4195 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26882 */
4196 : rtx
4197 8 : gen_xop_pmacssdd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4198 : {
4199 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4200 8 : static const uint8_t expand_encoding[] = {
4201 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x51, 0x3e, 0x51,
4202 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4203 : };
4204 8 : return expand_rtx (expand_encoding, operands);
4205 : }
4206 :
4207 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26989 */
4208 : rtx
4209 0 : gen_xop_pcmov_v16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4210 : {
4211 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4212 0 : static const uint8_t expand_encoding[] = {
4213 : 0x1f, 0x01, 0x00, 0x39, 0x4f, 0x01, 0x03, 0x01,
4214 : 0x01, 0x01, 0x02
4215 : };
4216 0 : return expand_rtx (expand_encoding, operands);
4217 : }
4218 :
4219 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26989 */
4220 : rtx
4221 0 : gen_xop_pcmov_v1ti (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4222 : {
4223 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4224 0 : static const uint8_t expand_encoding[] = {
4225 : 0x1f, 0x01, 0x00, 0x39, 0x53, 0x01, 0x03, 0x01,
4226 : 0x01, 0x01, 0x02
4227 : };
4228 0 : return expand_rtx (expand_encoding, operands);
4229 : }
4230 :
4231 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27052 */
4232 : rtx
4233 9 : gen_xop_phaddubd (const rtx operand0, const rtx operand1)
4234 : {
4235 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4236 9 : static const uint8_t expand_encoding[] = {
4237 : 0x1f, 0x01, 0x00, 0x3b, 0x51, 0x3b, 0x51, 0x6f,
4238 : 0x51, 0x81, 0x0a, 0x45, 0x01, 0x01, 0x17, 0x00,
4239 : 0x04, 0x27, 0x00, 0x27, 0x04, 0x27, 0x08, 0x27,
4240 : 0x0c, 0x6f, 0x51, 0x81, 0x0a, 0x45, 0x01, 0x01,
4241 : 0x17, 0x00, 0x04, 0x27, 0x01, 0x27, 0x05, 0x27,
4242 : 0x09, 0x27, 0x0d, 0x3b, 0x51, 0x6f, 0x51, 0x81,
4243 : 0x0a, 0x45, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27,
4244 : 0x02, 0x27, 0x06, 0x27, 0x0a, 0x27, 0x0e, 0x6f,
4245 : 0x51, 0x81, 0x0a, 0x45, 0x01, 0x01, 0x17, 0x00,
4246 : 0x04, 0x27, 0x03, 0x27, 0x07, 0x27, 0x0b, 0x27,
4247 : 0x0f
4248 : };
4249 9 : return expand_rtx (expand_encoding, operands);
4250 : }
4251 :
4252 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27269 */
4253 : rtx
4254 3193 : gen_xop_pperm (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4255 : {
4256 3193 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4257 3193 : static const uint8_t expand_encoding[] = {
4258 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01, 0x01,
4259 : 0x01, 0x02, 0x01, 0x03, 0x36
4260 : };
4261 3193 : return expand_rtx (expand_encoding, operands);
4262 : }
4263 :
4264 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27386 */
4265 : rtx
4266 12 : gen_xop_rotlv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
4267 : {
4268 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4269 12 : static const uint8_t expand_encoding[] = {
4270 : 0x1f, 0x01, 0x00, 0x4e, 0x50, 0x01, 0x01, 0x01,
4271 : 0x02
4272 : };
4273 12 : return expand_rtx (expand_encoding, operands);
4274 : }
4275 :
4276 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27438 */
4277 : rtx
4278 20 : gen_xop_vrotlv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
4279 : {
4280 20 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4281 20 : static const uint8_t expand_encoding[] = {
4282 : 0x1f, 0x01, 0x00, 0x39, 0x52, 0x5e, 0x52, 0x01,
4283 : 0x02, 0x27, 0x00, 0x4e, 0x52, 0x01, 0x01, 0x01,
4284 : 0x02, 0x51, 0x52, 0x01, 0x01, 0x3d, 0x52, 0x01,
4285 : 0x02
4286 : };
4287 20 : return expand_rtx (expand_encoding, operands);
4288 : }
4289 :
4290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27852 */
4291 : rtx
4292 0 : gen_xop_frczdf2 (const rtx operand0, const rtx operand1)
4293 : {
4294 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4295 0 : static const uint8_t expand_encoding[] = {
4296 : 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x01, 0x01, 0x01,
4297 : 0x81, 0x09
4298 : };
4299 0 : return expand_rtx (expand_encoding, operands);
4300 : }
4301 :
4302 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27900 */
4303 : rtx
4304 32 : gen_xop_maskcmp_unsv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4305 : {
4306 32 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4307 32 : static const uint8_t expand_encoding[] = {
4308 : 0x1f, 0x01, 0x00, 0x03, 0x50, 0x01, 0x01, 0x02,
4309 : 0x01, 0x03
4310 : };
4311 32 : return expand_rtx (expand_encoding, operands);
4312 : }
4313 :
4314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27927 */
4315 : rtx
4316 32 : gen_xop_pcom_tfv2di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4317 : {
4318 32 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4319 32 : static const uint8_t expand_encoding[] = {
4320 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
4321 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x08
4322 : };
4323 32 : return expand_rtx (expand_encoding, operands);
4324 : }
4325 :
4326 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28047 */
4327 : rtx
4328 50 : gen_aeskeygenassist (const rtx operand0, const rtx operand1, const rtx operand2)
4329 : {
4330 50 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4331 50 : static const uint8_t expand_encoding[] = {
4332 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x01,
4333 : 0x01, 0x02, 0x81, 0x0f
4334 : };
4335 50 : return expand_rtx (expand_encoding, operands);
4336 : }
4337 :
4338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4339 : rtx
4340 38 : gen_avx2_pbroadcastv8hi (const rtx operand0, const rtx operand1)
4341 : {
4342 38 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4343 38 : static const uint8_t expand_encoding[] = {
4344 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x50, 0x81, 0x0a,
4345 : 0x10, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4346 : };
4347 38 : return expand_rtx (expand_encoding, operands);
4348 : }
4349 :
4350 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4351 : rtx
4352 0 : gen_avx2_pbroadcastv8bf (const rtx operand0, const rtx operand1)
4353 : {
4354 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4355 0 : static const uint8_t expand_encoding[] = {
4356 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x69, 0x81, 0x0a,
4357 : 0x2c, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4358 : };
4359 0 : return expand_rtx (expand_encoding, operands);
4360 : }
4361 :
4362 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28181 */
4363 : rtx
4364 26 : gen_avx2_permvarv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4365 : {
4366 26 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4367 26 : static const uint8_t expand_encoding[] = {
4368 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
4369 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4370 : 0x03, 0x01, 0x04
4371 : };
4372 26 : return expand_rtx (expand_encoding, operands);
4373 : }
4374 :
4375 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28181 */
4376 : rtx
4377 0 : gen_avx2_permvarv4df (const rtx operand0, const rtx operand1, const rtx operand2)
4378 : {
4379 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4380 0 : static const uint8_t expand_encoding[] = {
4381 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01, 0x01,
4382 : 0x01, 0x02, 0x81, 0x18
4383 : };
4384 0 : return expand_rtx (expand_encoding, operands);
4385 : }
4386 :
4387 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4388 : rtx
4389 47 : gen_avx512vl_permvarv8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4390 : {
4391 47 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4392 47 : static const uint8_t expand_encoding[] = {
4393 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
4394 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4395 : 0x03, 0x01, 0x04
4396 : };
4397 47 : return expand_rtx (expand_encoding, operands);
4398 : }
4399 :
4400 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4401 : rtx
4402 0 : gen_avx512vl_permvarv8bf (const rtx operand0, const rtx operand1, const rtx operand2)
4403 : {
4404 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4405 0 : static const uint8_t expand_encoding[] = {
4406 : 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x02, 0x01, 0x01,
4407 : 0x01, 0x02, 0x81, 0x18
4408 : };
4409 0 : return expand_rtx (expand_encoding, operands);
4410 : }
4411 :
4412 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28419 */
4413 : rtx
4414 27 : gen_avx2_permv4df_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)
4415 : {
4416 27 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
4417 27 : static const uint8_t expand_encoding[] = {
4418 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
4419 : 0x70, 0x01, 0x01, 0x17, 0x00, 0x04, 0x01, 0x02,
4420 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
4421 : 0x01, 0x07
4422 : };
4423 27 : return expand_rtx (expand_encoding, operands);
4424 : }
4425 :
4426 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28571 */
4427 : rtx
4428 0 : gen_avx512bw_vec_dupv64qi_1 (const rtx operand0, const rtx operand1)
4429 : {
4430 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4431 0 : static const uint8_t expand_encoding[] = {
4432 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x59, 0x81, 0x0a,
4433 : 0x0f, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4434 : };
4435 0 : return expand_rtx (expand_encoding, operands);
4436 : }
4437 :
4438 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4439 : rtx
4440 36 : gen_avx512f_vec_dupv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4441 : {
4442 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4443 36 : static const uint8_t expand_encoding[] = {
4444 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x81, 0x0c,
4445 : 0x5c, 0x81, 0x0a, 0x12, 0x01, 0x01, 0x17, 0x00,
4446 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4447 : };
4448 36 : return expand_rtx (expand_encoding, operands);
4449 : }
4450 :
4451 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4452 : rtx
4453 37 : gen_avx512f_vec_dupv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4454 : {
4455 37 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4456 37 : static const uint8_t expand_encoding[] = {
4457 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x0c,
4458 : 0x75, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
4459 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4460 : };
4461 37 : return expand_rtx (expand_encoding, operands);
4462 : }
4463 :
4464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4465 : rtx
4466 0 : gen_avx512bw_vec_dupv32hi (const rtx operand0, const rtx operand1)
4467 : {
4468 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4469 0 : static const uint8_t expand_encoding[] = {
4470 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x5a, 0x81, 0x0a,
4471 : 0x10, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4472 : };
4473 0 : return expand_rtx (expand_encoding, operands);
4474 : }
4475 :
4476 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4477 : rtx
4478 0 : gen_avx512vl_vec_dupv16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4479 : {
4480 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4481 0 : static const uint8_t expand_encoding[] = {
4482 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x0c,
4483 : 0x6e, 0x81, 0x0a, 0x2b, 0x01, 0x01, 0x17, 0x00,
4484 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4485 : };
4486 0 : return expand_rtx (expand_encoding, operands);
4487 : }
4488 :
4489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28629 */
4490 : rtx
4491 36 : gen_avx512f_broadcastv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4492 : {
4493 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4494 36 : static const uint8_t expand_encoding[] = {
4495 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x0c,
4496 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4497 : };
4498 36 : return expand_rtx (expand_encoding, operands);
4499 : }
4500 :
4501 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28642 */
4502 : rtx
4503 0 : gen_avx512fp16_vec_dup_gprv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4504 : {
4505 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4506 0 : static const uint8_t expand_encoding[] = {
4507 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x0c,
4508 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4509 : };
4510 0 : return expand_rtx (expand_encoding, operands);
4511 : }
4512 :
4513 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28654 */
4514 : rtx
4515 0 : gen_avx512f_vec_dup_gprv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4516 : {
4517 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4518 0 : static const uint8_t expand_encoding[] = {
4519 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x0c,
4520 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4521 : };
4522 0 : return expand_rtx (expand_encoding, operands);
4523 : }
4524 :
4525 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28760 */
4526 : rtx
4527 19 : gen_avx2_vbroadcasti128_v4di (const rtx operand0, const rtx operand1)
4528 : {
4529 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4530 19 : static const uint8_t expand_encoding[] = {
4531 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x57, 0x01, 0x01,
4532 : 0x01, 0x01
4533 : };
4534 19 : return expand_rtx (expand_encoding, operands);
4535 : }
4536 :
4537 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28875 */
4538 : rtx
4539 13 : gen_avx_vbroadcastf128_v8sf (const rtx operand0, const rtx operand1)
4540 : {
4541 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4542 13 : static const uint8_t expand_encoding[] = {
4543 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6f, 0x01, 0x01,
4544 : 0x01, 0x01
4545 : };
4546 13 : return expand_rtx (expand_encoding, operands);
4547 : }
4548 :
4549 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28941 */
4550 : rtx
4551 36 : gen_avx512vl_broadcastv8sf_mask_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4552 : {
4553 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4554 36 : static const uint8_t expand_encoding[] = {
4555 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x0c,
4556 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4557 : };
4558 36 : return expand_rtx (expand_encoding, operands);
4559 : }
4560 :
4561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29001 */
4562 : rtx
4563 12 : gen_avx512cd_maskw_vec_dupv16si (const rtx operand0, const rtx operand1)
4564 : {
4565 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4566 12 : static const uint8_t expand_encoding[] = {
4567 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c,
4568 : 0x5b, 0x6f, 0x11, 0x01, 0x01, 0x1a, 0x00, 0x01,
4569 : 0x27, 0x00, 0x81, 0x2f
4570 : };
4571 12 : return expand_rtx (expand_encoding, operands);
4572 : }
4573 :
4574 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29013 */
4575 : rtx
4576 36 : gen_avx512f_vpermilvarv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4577 : {
4578 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4579 36 : static const uint8_t expand_encoding[] = {
4580 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
4581 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x11, 0x01,
4582 : 0x03, 0x01, 0x04
4583 : };
4584 36 : return expand_rtx (expand_encoding, operands);
4585 : }
4586 :
4587 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4588 : rtx
4589 12 : gen_avx512f_vpermt2varv8di3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4590 : {
4591 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4592 12 : static const uint8_t expand_encoding[] = {
4593 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
4594 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4595 : 0x1c, 0x01, 0x04, 0x01, 0x05
4596 : };
4597 12 : return expand_rtx (expand_encoding, operands);
4598 : }
4599 :
4600 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4601 : rtx
4602 1 : gen_avx512vl_vpermt2varv4si3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4603 : {
4604 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4605 1 : static const uint8_t expand_encoding[] = {
4606 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
4607 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4608 : };
4609 1 : return expand_rtx (expand_encoding, operands);
4610 : }
4611 :
4612 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4613 : rtx
4614 135 : gen_avx512bw_vpermt2varv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4615 : {
4616 135 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4617 135 : static const uint8_t expand_encoding[] = {
4618 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x03, 0x01, 0x01,
4619 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4620 : };
4621 135 : return expand_rtx (expand_encoding, operands);
4622 : }
4623 :
4624 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4625 : rtx
4626 12 : gen_avx512vl_vpermt2varv32qi3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4627 : {
4628 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4629 12 : static const uint8_t expand_encoding[] = {
4630 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
4631 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4632 : 0x1c, 0x01, 0x04, 0x01, 0x05
4633 : };
4634 12 : return expand_rtx (expand_encoding, operands);
4635 : }
4636 :
4637 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29131 */
4638 : rtx
4639 0 : gen_avx512vl_vpermt2varv16bf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4640 : {
4641 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4642 0 : static const uint8_t expand_encoding[] = {
4643 : 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x03, 0x01, 0x01,
4644 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4645 : };
4646 0 : return expand_rtx (expand_encoding, operands);
4647 : }
4648 :
4649 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4650 : rtx
4651 24 : gen_avx512vl_vpermt2varv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4652 : {
4653 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4654 24 : static const uint8_t expand_encoding[] = {
4655 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
4656 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4657 : 0x1c, 0x01, 0x02, 0x01, 0x04
4658 : };
4659 24 : return expand_rtx (expand_encoding, operands);
4660 : }
4661 :
4662 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4663 : rtx
4664 26 : gen_avx512bw_vpermt2varv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4665 : {
4666 26 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4667 26 : static const uint8_t expand_encoding[] = {
4668 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
4669 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4670 : 0x1c, 0x01, 0x02, 0x01, 0x04
4671 : };
4672 26 : return expand_rtx (expand_encoding, operands);
4673 : }
4674 :
4675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29352 */
4676 : rtx
4677 24 : gen_vec_set_hi_v4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4678 : {
4679 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4680 24 : static const uint8_t expand_encoding[] = {
4681 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0b,
4682 : 0x70, 0x81, 0x0a, 0x6c, 0x01, 0x01, 0x17, 0x00,
4683 : 0x02, 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01,
4684 : 0x03, 0x01, 0x04
4685 : };
4686 24 : return expand_rtx (expand_encoding, operands);
4687 : }
4688 :
4689 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29448 */
4690 : rtx
4691 2 : gen_vec_set_hi_v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
4692 : {
4693 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4694 2 : static const uint8_t expand_encoding[] = {
4695 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x55, 0x81, 0x0a,
4696 : 0x50, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00,
4697 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
4698 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x02
4699 : };
4700 2 : return expand_rtx (expand_encoding, operands);
4701 : }
4702 :
4703 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29525 */
4704 : rtx
4705 12 : gen_avx_maskloadpd256 (const rtx operand0, const rtx operand1, const rtx operand2)
4706 : {
4707 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4708 12 : static const uint8_t expand_encoding[] = {
4709 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01, 0x02,
4710 : 0x01, 0x01, 0x30
4711 : };
4712 12 : return expand_rtx (expand_encoding, operands);
4713 : }
4714 :
4715 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29546 */
4716 : rtx
4717 12 : gen_avx2_maskstored256 (const rtx operand0, const rtx operand1, const rtx operand2)
4718 : {
4719 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4720 12 : static const uint8_t expand_encoding[] = {
4721 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
4722 : 0x01, 0x02, 0x01, 0x00, 0x30
4723 : };
4724 12 : return expand_rtx (expand_encoding, operands);
4725 : }
4726 :
4727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29638 */
4728 : rtx
4729 24 : gen_avx512vl_storev4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4730 : {
4731 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4732 24 : static const uint8_t expand_encoding[] = {
4733 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
4734 : 0x01, 0x00, 0x01, 0x02, 0x30
4735 : };
4736 24 : return expand_rtx (expand_encoding, operands);
4737 : }
4738 :
4739 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29667 */
4740 : rtx
4741 0 : gen_avx512bw_storev32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4742 : {
4743 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4744 0 : static const uint8_t expand_encoding[] = {
4745 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01, 0x01,
4746 : 0x01, 0x00, 0x01, 0x02, 0x30
4747 : };
4748 0 : return expand_rtx (expand_encoding, operands);
4749 : }
4750 :
4751 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29807 */
4752 : rtx
4753 22 : gen_avx2_ashrvv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4754 : {
4755 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4756 22 : static const uint8_t expand_encoding[] = {
4757 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4f, 0x51,
4758 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4759 : };
4760 22 : return expand_rtx (expand_encoding, operands);
4761 : }
4762 :
4763 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29818 */
4764 : rtx
4765 0 : gen_avx512vl_ashrvv8hi (const rtx operand0, const rtx operand1, const rtx operand2)
4766 : {
4767 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4768 0 : static const uint8_t expand_encoding[] = {
4769 : 0x1f, 0x01, 0x00, 0x4f, 0x50, 0x01, 0x01, 0x01,
4770 : 0x02
4771 : };
4772 0 : return expand_rtx (expand_encoding, operands);
4773 : }
4774 :
4775 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4776 : rtx
4777 34 : gen_avx512f_lshrvv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4778 : {
4779 34 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4780 34 : static const uint8_t expand_encoding[] = {
4781 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x50, 0x5b,
4782 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4783 : };
4784 34 : return expand_rtx (expand_encoding, operands);
4785 : }
4786 :
4787 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4788 : rtx
4789 0 : gen_avx512f_lshrvv8di (const rtx operand0, const rtx operand1, const rtx operand2)
4790 : {
4791 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4792 0 : static const uint8_t expand_encoding[] = {
4793 : 0x1f, 0x01, 0x00, 0x50, 0x5c, 0x01, 0x01, 0x01,
4794 : 0x02
4795 : };
4796 0 : return expand_rtx (expand_encoding, operands);
4797 : }
4798 :
4799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4800 : rtx
4801 22 : gen_avx2_lshrvv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4802 : {
4803 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4804 22 : static const uint8_t expand_encoding[] = {
4805 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x50, 0x52,
4806 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4807 : };
4808 22 : return expand_rtx (expand_encoding, operands);
4809 : }
4810 :
4811 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29840 */
4812 : rtx
4813 0 : gen_avx512bw_lshrvv32hi (const rtx operand0, const rtx operand1, const rtx operand2)
4814 : {
4815 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4816 0 : static const uint8_t expand_encoding[] = {
4817 : 0x1f, 0x01, 0x00, 0x50, 0x5a, 0x01, 0x01, 0x01,
4818 : 0x02
4819 : };
4820 0 : return expand_rtx (expand_encoding, operands);
4821 : }
4822 :
4823 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29851 */
4824 : rtx
4825 147 : gen_avx_vec_concatv4df (const rtx operand0, const rtx operand1, const rtx operand2)
4826 : {
4827 147 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4828 147 : static const uint8_t expand_encoding[] = {
4829 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x70, 0x01, 0x01,
4830 : 0x01, 0x02
4831 : };
4832 147 : return expand_rtx (expand_encoding, operands);
4833 : }
4834 :
4835 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29981 */
4836 : rtx
4837 24 : gen_vcvtph2ps_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4838 : {
4839 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4840 24 : static const uint8_t expand_encoding[] = {
4841 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0a,
4842 : 0x6b, 0x1a, 0x6f, 0x01, 0x01, 0x01, 0x81, 0x16,
4843 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x01, 0x27,
4844 : 0x02, 0x27, 0x03, 0x01, 0x02, 0x01, 0x03
4845 : };
4846 24 : return expand_rtx (expand_encoding, operands);
4847 : }
4848 :
4849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30558 */
4850 : rtx
4851 24 : gen_avx512f_compressv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4852 : {
4853 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4854 24 : static const uint8_t expand_encoding[] = {
4855 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01, 0x01,
4856 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4857 : };
4858 24 : return expand_rtx (expand_encoding, operands);
4859 : }
4860 :
4861 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30572 */
4862 : rtx
4863 35 : gen_compressv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4864 : {
4865 35 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4866 35 : static const uint8_t expand_encoding[] = {
4867 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01, 0x01,
4868 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4869 : };
4870 35 : return expand_rtx (expand_encoding, operands);
4871 : }
4872 :
4873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30586 */
4874 : rtx
4875 12 : gen_avx512vl_compressstorev8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4876 : {
4877 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4878 12 : static const uint8_t expand_encoding[] = {
4879 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
4880 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4881 : };
4882 12 : return expand_rtx (expand_encoding, operands);
4883 : }
4884 :
4885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30601 */
4886 : rtx
4887 12 : gen_compressstorev32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4888 : {
4889 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4890 12 : static const uint8_t expand_encoding[] = {
4891 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x03, 0x01, 0x01,
4892 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4893 : };
4894 12 : return expand_rtx (expand_encoding, operands);
4895 : }
4896 :
4897 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30626 */
4898 : rtx
4899 44 : gen_expandv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4900 : {
4901 44 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4902 44 : static const uint8_t expand_encoding[] = {
4903 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
4904 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4905 : };
4906 44 : return expand_rtx (expand_encoding, operands);
4907 : }
4908 :
4909 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30641 */
4910 : rtx
4911 44 : gen_expandv8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4912 : {
4913 44 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4914 44 : static const uint8_t expand_encoding[] = {
4915 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x03, 0x01, 0x01,
4916 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4917 : };
4918 44 : return expand_rtx (expand_encoding, operands);
4919 : }
4920 :
4921 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30722 */
4922 : rtx
4923 0 : gen_avx512dq_rangepv8df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4924 : {
4925 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4926 0 : static const uint8_t expand_encoding[] = {
4927 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x1a, 0x75,
4928 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4929 : 0x43, 0x01, 0x04, 0x81, 0x33
4930 : };
4931 0 : return expand_rtx (expand_encoding, operands);
4932 : }
4933 :
4934 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30742 */
4935 : rtx
4936 45 : gen_avx512dq_rangesv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
4937 : {
4938 45 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
4939 45 : static const uint8_t expand_encoding[] = {
4940 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
4941 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x03, 0x01,
4942 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x43, 0x01,
4943 : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
4944 : 0x06, 0x81, 0x33
4945 : };
4946 45 : return expand_rtx (expand_encoding, operands);
4947 : }
4948 :
4949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4950 : rtx
4951 0 : gen_avx512dq_fpclassv16sf (const rtx operand0, const rtx operand1, const rtx operand2)
4952 : {
4953 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4954 0 : static const uint8_t expand_encoding[] = {
4955 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x01, 0x01,
4956 : 0x01, 0x02, 0x81, 0x42
4957 : };
4958 0 : return expand_rtx (expand_encoding, operands);
4959 : }
4960 :
4961 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4962 : rtx
4963 0 : gen_avx512dq_fpclassv2df (const rtx operand0, const rtx operand1, const rtx operand2)
4964 : {
4965 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4966 0 : static const uint8_t expand_encoding[] = {
4967 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
4968 : 0x01, 0x02, 0x81, 0x42
4969 : };
4970 0 : return expand_rtx (expand_encoding, operands);
4971 : }
4972 :
4973 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4974 : rtx
4975 0 : gen_avx512bw_getmantv32hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4976 : {
4977 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4978 0 : static const uint8_t expand_encoding[] = {
4979 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
4980 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
4981 : 0x03, 0x81, 0x33
4982 : };
4983 0 : return expand_rtx (expand_encoding, operands);
4984 : }
4985 :
4986 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4987 : rtx
4988 0 : gen_avx512fp16_getmantv8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4989 : {
4990 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4991 0 : static const uint8_t expand_encoding[] = {
4992 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
4993 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
4994 : 0x81, 0x27, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
4995 : 0x81, 0x33
4996 : };
4997 0 : return expand_rtx (expand_encoding, operands);
4998 : }
4999 :
5000 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5001 : rtx
5002 0 : gen_avx512vl_getmantv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5003 : {
5004 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5005 0 : static const uint8_t expand_encoding[] = {
5006 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
5007 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
5008 : 0x81, 0x27, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
5009 : 0x81, 0x33
5010 : };
5011 0 : return expand_rtx (expand_encoding, operands);
5012 : }
5013 :
5014 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5015 : rtx
5016 27 : gen_avx512vl_getmantv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5017 : {
5018 27 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5019 27 : static const uint8_t expand_encoding[] = {
5020 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
5021 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5022 : 0x03, 0x01, 0x04
5023 : };
5024 27 : return expand_rtx (expand_encoding, operands);
5025 : }
5026 :
5027 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30810 */
5028 : rtx
5029 0 : gen_avx512f_vgetmantv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5030 : {
5031 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5032 0 : static const uint8_t expand_encoding[] = {
5033 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
5034 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5035 : 0x27, 0x01, 0x01, 0x27, 0x01
5036 : };
5037 0 : return expand_rtx (expand_encoding, operands);
5038 : }
5039 :
5040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30849 */
5041 : rtx
5042 57 : gen_clzv8si2 (const rtx operand0, const rtx operand1)
5043 : {
5044 57 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5045 57 : static const uint8_t expand_encoding[] = {
5046 : 0x1f, 0x01, 0x00, 0x81, 0x00, 0x56, 0x01, 0x01
5047 : };
5048 57 : return expand_rtx (expand_encoding, operands);
5049 : }
5050 :
5051 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30849 */
5052 : rtx
5053 33 : gen_clzv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5054 : {
5055 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5056 33 : static const uint8_t expand_encoding[] = {
5057 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x00,
5058 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5059 : };
5060 33 : return expand_rtx (expand_encoding, operands);
5061 : }
5062 :
5063 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30894 */
5064 : rtx
5065 12 : gen_sha1nexte (const rtx operand0, const rtx operand1, const rtx operand2)
5066 : {
5067 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5068 12 : static const uint8_t expand_encoding[] = {
5069 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x01, 0x01,
5070 : 0x01, 0x02, 0x81, 0x36
5071 : };
5072 12 : return expand_rtx (expand_encoding, operands);
5073 : }
5074 :
5075 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31013 */
5076 : rtx
5077 12 : gen_vsha512rnds2 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5078 : {
5079 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5080 12 : static const uint8_t expand_encoding[] = {
5081 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
5082 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x72
5083 : };
5084 12 : return expand_rtx (expand_encoding, operands);
5085 : }
5086 :
5087 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31070 */
5088 : rtx
5089 11 : gen_avx512f_si512_256si (const rtx operand0, const rtx operand1)
5090 : {
5091 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5092 11 : static const uint8_t expand_encoding[] = {
5093 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x5b, 0x01, 0x01,
5094 : 0x1a, 0x56, 0x01, 0x27, 0x00, 0x81, 0x14
5095 : };
5096 11 : return expand_rtx (expand_encoding, operands);
5097 : }
5098 :
5099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31154 */
5100 : rtx
5101 13 : gen_vpmadd52luqv8di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5102 : {
5103 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5104 13 : static const uint8_t expand_encoding[] = {
5105 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
5106 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5107 : 0x44, 0x01, 0x04, 0x01, 0x05
5108 : };
5109 13 : return expand_rtx (expand_encoding, operands);
5110 : }
5111 :
5112 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31171 */
5113 : rtx
5114 13 : gen_vpmadd52luqv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5115 : {
5116 13 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5117 13 : static const uint8_t expand_encoding[] = {
5118 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5119 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5120 : 0x44, 0x01, 0x01, 0x01, 0x04
5121 : };
5122 13 : return expand_rtx (expand_encoding, operands);
5123 : }
5124 :
5125 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31206 */
5126 : rtx
5127 26 : gen_vpopcountv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5128 : {
5129 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5130 26 : static const uint8_t expand_encoding[] = {
5131 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x02,
5132 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5133 : };
5134 26 : return expand_rtx (expand_encoding, operands);
5135 : }
5136 :
5137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31256 */
5138 : rtx
5139 26 : gen_vpopcountv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5140 : {
5141 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5142 26 : static const uint8_t expand_encoding[] = {
5143 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x81, 0x02,
5144 : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5145 : };
5146 26 : return expand_rtx (expand_encoding, operands);
5147 : }
5148 :
5149 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31263 */
5150 : rtx
5151 12 : gen_vgf2p8affineinvqb_v32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5152 : {
5153 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5154 12 : static const uint8_t expand_encoding[] = {
5155 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01, 0x01,
5156 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x47
5157 : };
5158 12 : return expand_rtx (expand_encoding, operands);
5159 : }
5160 :
5161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31280 */
5162 : rtx
5163 16 : gen_vgf2p8affineqb_v16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5164 : {
5165 16 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5166 16 : static const uint8_t expand_encoding[] = {
5167 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5168 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5169 : 0x48, 0x01, 0x04, 0x01, 0x05
5170 : };
5171 16 : return expand_rtx (expand_encoding, operands);
5172 : }
5173 :
5174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31313 */
5175 : rtx
5176 22 : gen_vpshrd_v8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5177 : {
5178 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5179 22 : static const uint8_t expand_encoding[] = {
5180 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
5181 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5182 : 0x4b, 0x01, 0x04, 0x01, 0x05
5183 : };
5184 22 : return expand_rtx (expand_encoding, operands);
5185 : }
5186 :
5187 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31313 */
5188 : rtx
5189 11 : gen_vpshrd_v2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5190 : {
5191 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5192 11 : static const uint8_t expand_encoding[] = {
5193 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
5194 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4b
5195 : };
5196 11 : return expand_rtx (expand_encoding, operands);
5197 : }
5198 :
5199 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5200 : rtx
5201 20 : gen_vpshld_v16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5202 : {
5203 20 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5204 20 : static const uint8_t expand_encoding[] = {
5205 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5206 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5207 : 0x4a, 0x01, 0x04, 0x01, 0x05
5208 : };
5209 20 : return expand_rtx (expand_encoding, operands);
5210 : }
5211 :
5212 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31335 */
5213 : rtx
5214 13 : gen_vpshrdv_v32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5215 : {
5216 13 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5217 13 : static const uint8_t expand_encoding[] = {
5218 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x03, 0x01, 0x01,
5219 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4c
5220 : };
5221 13 : return expand_rtx (expand_encoding, operands);
5222 : }
5223 :
5224 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31347 */
5225 : rtx
5226 12 : gen_vpshrdv_v32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5227 : {
5228 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5229 12 : static const uint8_t expand_encoding[] = {
5230 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5231 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5232 : 0x4c, 0x01, 0x01, 0x01, 0x04
5233 : };
5234 12 : return expand_rtx (expand_encoding, operands);
5235 : }
5236 :
5237 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31377 */
5238 : rtx
5239 12 : gen_vpshrdv_v16si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5240 : {
5241 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5242 12 : static const uint8_t expand_encoding[] = {
5243 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5244 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5245 : 0x4c, 0x01, 0x04, 0x01, 0x05
5246 : };
5247 12 : return expand_rtx (expand_encoding, operands);
5248 : }
5249 :
5250 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31392 */
5251 : rtx
5252 12 : gen_vpshldv_v8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5253 : {
5254 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5255 12 : static const uint8_t expand_encoding[] = {
5256 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
5257 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4d
5258 : };
5259 12 : return expand_rtx (expand_encoding, operands);
5260 : }
5261 :
5262 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31404 */
5263 : rtx
5264 12 : gen_vpshldv_v16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5265 : {
5266 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5267 12 : static const uint8_t expand_encoding[] = {
5268 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5269 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5270 : 0x4d, 0x01, 0x01, 0x01, 0x04
5271 : };
5272 12 : return expand_rtx (expand_encoding, operands);
5273 : }
5274 :
5275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31434 */
5276 : rtx
5277 12 : gen_vpshldv_v8si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5278 : {
5279 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5280 12 : static const uint8_t expand_encoding[] = {
5281 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5282 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5283 : 0x4d, 0x01, 0x04, 0x01, 0x05
5284 : };
5285 12 : return expand_rtx (expand_encoding, operands);
5286 : }
5287 :
5288 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31523 */
5289 : rtx
5290 13 : gen_vpdpbusd_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5291 : {
5292 13 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5293 13 : static const uint8_t expand_encoding[] = {
5294 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5295 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5296 : 0x4e, 0x01, 0x01, 0x01, 0x04
5297 : };
5298 13 : return expand_rtx (expand_encoding, operands);
5299 : }
5300 :
5301 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31621 */
5302 : rtx
5303 13 : gen_vpdpbusds_v4si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5304 : {
5305 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5306 13 : static const uint8_t expand_encoding[] = {
5307 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5308 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5309 : 0x4f, 0x01, 0x04, 0x01, 0x05
5310 : };
5311 13 : return expand_rtx (expand_encoding, operands);
5312 : }
5313 :
5314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31730 */
5315 : rtx
5316 12 : gen_vpdpwssds_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5317 : {
5318 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5319 12 : static const uint8_t expand_encoding[] = {
5320 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5321 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5322 : 0x51, 0x01, 0x01, 0x01, 0x04
5323 : };
5324 12 : return expand_rtx (expand_encoding, operands);
5325 : }
5326 :
5327 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31792 */
5328 : rtx
5329 0 : gen_vaesdeclast_v16qi (const rtx operand0, const rtx operand1, const rtx operand2)
5330 : {
5331 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5332 0 : static const uint8_t expand_encoding[] = {
5333 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5334 : 0x01, 0x02, 0x81, 0x53
5335 : };
5336 0 : return expand_rtx (expand_encoding, operands);
5337 : }
5338 :
5339 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31849 */
5340 : rtx
5341 8 : gen_vpclmulqdq_v8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5342 : {
5343 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5344 8 : static const uint8_t expand_encoding[] = {
5345 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
5346 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x56
5347 : };
5348 8 : return expand_rtx (expand_encoding, operands);
5349 : }
5350 :
5351 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31898 */
5352 : rtx
5353 12 : gen_avx512vp2intersect_2intersectv4di (const rtx operand0, const rtx operand1, const rtx operand2)
5354 : {
5355 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5356 12 : static const uint8_t expand_encoding[] = {
5357 : 0x1f, 0x01, 0x00, 0x1a, 0x16, 0x02, 0x01, 0x01,
5358 : 0x01, 0x02, 0x81, 0x58
5359 : };
5360 12 : return expand_rtx (expand_encoding, operands);
5361 : }
5362 :
5363 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31945 */
5364 : rtx
5365 23 : gen_avx512f_cvtne2ps2bf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5366 : {
5367 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5368 23 : static const uint8_t expand_encoding[] = {
5369 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x0b,
5370 : 0x69, 0x72, 0x65, 0x01, 0x02, 0x72, 0x65, 0x01,
5371 : 0x01, 0x01, 0x03, 0x01, 0x04
5372 : };
5373 23 : return expand_rtx (expand_encoding, operands);
5374 : }
5375 :
5376 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32126 */
5377 : rtx
5378 11 : gen_avx512f_dpbf16ps_v4sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5379 : {
5380 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5381 11 : static const uint8_t expand_encoding[] = {
5382 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
5383 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5384 : 0x59, 0x01, 0x04, 0x01, 0x05
5385 : };
5386 11 : return expand_rtx (expand_encoding, operands);
5387 : }
5388 :
5389 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32499 */
5390 : rtx
5391 14 : gen_vpdpbssds_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5392 : {
5393 14 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5394 14 : static const uint8_t expand_encoding[] = {
5395 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5396 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x65
5397 : };
5398 14 : return expand_rtx (expand_encoding, operands);
5399 : }
5400 :
5401 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32499 */
5402 : rtx
5403 14 : gen_vpdpbuuds_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5404 : {
5405 14 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5406 14 : static const uint8_t expand_encoding[] = {
5407 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5408 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x69
5409 : };
5410 14 : return expand_rtx (expand_encoding, operands);
5411 : }
5412 :
5413 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5414 : rtx
5415 12 : gen_vpdpbsuds_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5416 : {
5417 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5418 12 : static const uint8_t expand_encoding[] = {
5419 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5420 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5421 : 0x67, 0x01, 0x01, 0x01, 0x04
5422 : };
5423 12 : return expand_rtx (expand_encoding, operands);
5424 : }
5425 :
5426 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5427 : rtx
5428 12 : gen_vpdpbssds_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5429 : {
5430 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5431 12 : static const uint8_t expand_encoding[] = {
5432 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5433 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5434 : 0x65, 0x01, 0x01, 0x01, 0x04
5435 : };
5436 12 : return expand_rtx (expand_encoding, operands);
5437 : }
5438 :
5439 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32588 */
5440 : rtx
5441 12 : gen_vcvtneebf162ps_v8bf (const rtx operand0, const rtx operand1)
5442 : {
5443 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5444 12 : static const uint8_t expand_encoding[] = {
5445 : 0x1f, 0x01, 0x00, 0x71, 0x6b, 0x81, 0x0a, 0x65,
5446 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
5447 : 0x02, 0x27, 0x04, 0x27, 0x06
5448 : };
5449 12 : return expand_rtx (expand_encoding, operands);
5450 : }
5451 :
5452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32644 */
5453 : rtx
5454 60 : gen_avx10_2_cvt2ps2phx_v32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5455 : {
5456 60 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5457 60 : static const uint8_t expand_encoding[] = {
5458 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
5459 : 0x73, 0x81, 0x0b, 0x73, 0x72, 0x6e, 0x01, 0x02,
5460 : 0x72, 0x6e, 0x01, 0x01, 0x01, 0x03, 0x01, 0x04,
5461 : 0x01, 0x05, 0x81, 0x33
5462 : };
5463 60 : return expand_rtx (expand_encoding, operands);
5464 : }
5465 :
5466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5467 : rtx
5468 0 : gen_vcvt2ph2bf8v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5469 : {
5470 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5471 0 : static const uint8_t expand_encoding[] = {
5472 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
5473 : 0x01, 0x02, 0x81, 0x7a
5474 : };
5475 0 : return expand_rtx (expand_encoding, operands);
5476 : }
5477 :
5478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5479 : rtx
5480 37 : gen_vcvt2ph2bf8v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5481 : {
5482 37 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5483 37 : static const uint8_t expand_encoding[] = {
5484 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5485 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x7a, 0x01,
5486 : 0x03, 0x01, 0x04
5487 : };
5488 37 : return expand_rtx (expand_encoding, operands);
5489 : }
5490 :
5491 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32759 */
5492 : rtx
5493 0 : gen_vcvtbiasph2hf8v32hf (const rtx operand0, const rtx operand1, const rtx operand2)
5494 : {
5495 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5496 0 : static const uint8_t expand_encoding[] = {
5497 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
5498 : 0x01, 0x02, 0x81, 0x78
5499 : };
5500 0 : return expand_rtx (expand_encoding, operands);
5501 : }
5502 :
5503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32759 */
5504 : rtx
5505 36 : gen_vcvtbiasph2hf8v16hf_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, 0x4f, 0x1a, 0x4f,
5510 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x78, 0x01,
5511 : 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:32844 */
5517 : rtx
5518 36 : gen_vcvtph2bf8v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5519 : {
5520 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5521 36 : static const uint8_t expand_encoding[] = {
5522 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
5523 : 0x01, 0x01, 0x01, 0x81, 0x7e, 0x01, 0x02, 0x01,
5524 : 0x03
5525 : };
5526 36 : return expand_rtx (expand_encoding, operands);
5527 : }
5528 :
5529 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32853 */
5530 : rtx
5531 38 : gen_vcvthf82phv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5532 : {
5533 38 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5534 38 : static const uint8_t expand_encoding[] = {
5535 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
5536 : 0x01, 0x01, 0x01, 0x82, 0x02, 0x01, 0x02, 0x01,
5537 : 0x03
5538 : };
5539 38 : return expand_rtx (expand_encoding, operands);
5540 : }
5541 :
5542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32911 */
5543 : rtx
5544 15 : gen_vpdpwsuds_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5545 : {
5546 15 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5547 15 : static const uint8_t expand_encoding[] = {
5548 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5549 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6d
5550 : };
5551 15 : return expand_rtx (expand_encoding, operands);
5552 : }
5553 :
5554 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32933 */
5555 : rtx
5556 12 : gen_vpdpwusds_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5557 : {
5558 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5559 12 : static const uint8_t expand_encoding[] = {
5560 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5561 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5562 : 0x6b, 0x01, 0x01, 0x01, 0x04
5563 : };
5564 12 : return expand_rtx (expand_encoding, operands);
5565 : }
5566 :
5567 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32933 */
5568 : rtx
5569 12 : gen_vpdpwuuds_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5570 : {
5571 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5572 12 : static const uint8_t expand_encoding[] = {
5573 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5574 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5575 : 0x6f, 0x01, 0x01, 0x01, 0x04
5576 : };
5577 12 : return expand_rtx (expand_encoding, operands);
5578 : }
5579 :
5580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32985 */
5581 : rtx
5582 24 : gen_vdpphps_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5583 : {
5584 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5585 24 : static const uint8_t expand_encoding[] = {
5586 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
5587 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5588 : 0x75, 0x01, 0x01, 0x01, 0x04
5589 : };
5590 24 : return expand_rtx (expand_encoding, operands);
5591 : }
5592 :
5593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33026 */
5594 : rtx
5595 24 : gen_avx10_2_scalefbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5596 : {
5597 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5598 24 : static const uint8_t expand_encoding[] = {
5599 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x1a, 0x69,
5600 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x82, 0x03, 0x01,
5601 : 0x03, 0x01, 0x04
5602 : };
5603 24 : return expand_rtx (expand_encoding, operands);
5604 : }
5605 :
5606 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33043 */
5607 : rtx
5608 12 : gen_avx10_2_sminbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
5609 : {
5610 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5611 12 : static const uint8_t expand_encoding[] = {
5612 : 0x1f, 0x01, 0x00, 0x52, 0x69, 0x01, 0x01, 0x01,
5613 : 0x02
5614 : };
5615 12 : return expand_rtx (expand_encoding, operands);
5616 : }
5617 :
5618 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5619 : rtx
5620 24 : gen_avx10_2_divbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5621 : {
5622 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5623 24 : static const uint8_t expand_encoding[] = {
5624 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x43, 0x72,
5625 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5626 : };
5627 24 : return expand_rtx (expand_encoding, operands);
5628 : }
5629 :
5630 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5631 : rtx
5632 12 : gen_avx10_2_subbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
5633 : {
5634 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5635 12 : static const uint8_t expand_encoding[] = {
5636 : 0x1f, 0x01, 0x00, 0x3c, 0x69, 0x01, 0x01, 0x01,
5637 : 0x02
5638 : };
5639 12 : return expand_rtx (expand_encoding, operands);
5640 : }
5641 :
5642 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33077 */
5643 : rtx
5644 11 : gen_avx10_2_fmaddbf16_v16bf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5645 : {
5646 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5647 11 : static const uint8_t expand_encoding[] = {
5648 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x19,
5649 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
5650 : 0x04, 0x01, 0x05
5651 : };
5652 11 : return expand_rtx (expand_encoding, operands);
5653 : }
5654 :
5655 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33139 */
5656 : rtx
5657 0 : gen_avx10_2_fnmaddbf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5658 : {
5659 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5660 0 : static const uint8_t expand_encoding[] = {
5661 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6d, 0x3d, 0x6d,
5662 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5663 : };
5664 0 : return expand_rtx (expand_encoding, operands);
5665 : }
5666 :
5667 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33173 */
5668 : rtx
5669 12 : gen_avx10_2_fnmaddbf16_v8bf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5670 : {
5671 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5672 12 : static const uint8_t expand_encoding[] = {
5673 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5674 : 0x69, 0x3d, 0x69, 0x01, 0x01, 0x01, 0x02, 0x01,
5675 : 0x03, 0x01, 0x03, 0x01, 0x04
5676 : };
5677 12 : return expand_rtx (expand_encoding, operands);
5678 : }
5679 :
5680 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33238 */
5681 : rtx
5682 12 : gen_avx10_2_fmsubbf16_v16bf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5683 : {
5684 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5685 12 : static const uint8_t expand_encoding[] = {
5686 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x19,
5687 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6d, 0x01,
5688 : 0x03, 0x01, 0x03, 0x01, 0x04
5689 : };
5690 12 : return expand_rtx (expand_encoding, operands);
5691 : }
5692 :
5693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33286 */
5694 : rtx
5695 23 : gen_avx10_2_fnmsubbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5696 : {
5697 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5698 23 : static const uint8_t expand_encoding[] = {
5699 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5700 : 0x69, 0x3d, 0x69, 0x01, 0x01, 0x01, 0x02, 0x3d,
5701 : 0x69, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04
5702 : };
5703 23 : return expand_rtx (expand_encoding, operands);
5704 : }
5705 :
5706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33331 */
5707 : rtx
5708 0 : gen_avx10_2_sqrtbf16_v32bf (const rtx operand0, const rtx operand1)
5709 : {
5710 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5711 0 : static const uint8_t expand_encoding[] = {
5712 : 0x1f, 0x01, 0x00, 0x7c, 0x72, 0x01, 0x01
5713 : };
5714 0 : return expand_rtx (expand_encoding, operands);
5715 : }
5716 :
5717 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33339 */
5718 : rtx
5719 1 : gen_avx10_2_rcpbf16_v16bf (const rtx operand0, const rtx operand1)
5720 : {
5721 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5722 1 : static const uint8_t expand_encoding[] = {
5723 : 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x01, 0x01, 0x01,
5724 : 0x37
5725 : };
5726 1 : return expand_rtx (expand_encoding, operands);
5727 : }
5728 :
5729 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33348 */
5730 : rtx
5731 36 : gen_avx10_2_getexpbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5732 : {
5733 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5734 36 : static const uint8_t expand_encoding[] = {
5735 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x1a, 0x69,
5736 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
5737 : 0x03
5738 : };
5739 36 : return expand_rtx (expand_encoding, operands);
5740 : }
5741 :
5742 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5743 : rtx
5744 0 : gen_avx10_2_getmantbf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
5745 : {
5746 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5747 0 : static const uint8_t expand_encoding[] = {
5748 : 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x02, 0x01, 0x01,
5749 : 0x01, 0x02, 0x82, 0x06
5750 : };
5751 0 : return expand_rtx (expand_encoding, operands);
5752 : }
5753 :
5754 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33377 */
5755 : rtx
5756 22 : gen_avx10_2_fpclassbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5757 : {
5758 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5759 22 : static const uint8_t expand_encoding[] = {
5760 : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x02,
5761 : 0x01, 0x01, 0x01, 0x02, 0x82, 0x07, 0x01, 0x03
5762 : };
5763 22 : return expand_rtx (expand_encoding, operands);
5764 : }
5765 :
5766 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33387 */
5767 : rtx
5768 22 : gen_avx10_2_cmpbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5769 : {
5770 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5771 22 : static const uint8_t expand_encoding[] = {
5772 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
5773 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
5774 : 0x04
5775 : };
5776 22 : return expand_rtx (expand_encoding, operands);
5777 : }
5778 :
5779 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5780 : rtx
5781 36 : gen_avx10_2_cvtbf162iubsv16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5782 : {
5783 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5784 36 : static const uint8_t expand_encoding[] = {
5785 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5786 : 0x01, 0x01, 0x01, 0x82, 0x09, 0x01, 0x02, 0x01,
5787 : 0x03
5788 : };
5789 36 : return expand_rtx (expand_encoding, operands);
5790 : }
5791 :
5792 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5793 : rtx
5794 0 : gen_avx10_2_cvttbf162iubsv8bf (const rtx operand0, const rtx operand1)
5795 : {
5796 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5797 0 : static const uint8_t expand_encoding[] = {
5798 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
5799 : 0x82, 0x0f
5800 : };
5801 0 : return expand_rtx (expand_encoding, operands);
5802 : }
5803 :
5804 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33441 */
5805 : rtx
5806 33 : gen_avx10_2_cvtph2iubsv32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5807 : {
5808 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5809 33 : static const uint8_t expand_encoding[] = {
5810 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x81, 0x09,
5811 : 0x5a, 0x1a, 0x5a, 0x01, 0x01, 0x01, 0x82, 0x0b,
5812 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
5813 : };
5814 33 : return expand_rtx (expand_encoding, operands);
5815 : }
5816 :
5817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33456 */
5818 : rtx
5819 0 : gen_avx10_2_cvttph2iubsv32hf (const rtx operand0, const rtx operand1)
5820 : {
5821 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5822 0 : static const uint8_t expand_encoding[] = {
5823 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x01, 0x01, 0x01,
5824 : 0x82, 0x11
5825 : };
5826 0 : return expand_rtx (expand_encoding, operands);
5827 : }
5828 :
5829 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33456 */
5830 : rtx
5831 0 : gen_avx10_2_cvttph2ibsv8hf (const rtx operand0, const rtx operand1)
5832 : {
5833 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5834 0 : static const uint8_t expand_encoding[] = {
5835 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
5836 : 0x82, 0x10
5837 : };
5838 0 : return expand_rtx (expand_encoding, operands);
5839 : }
5840 :
5841 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33471 */
5842 : rtx
5843 0 : gen_avx10_2_cvtps2iubsv16sf_round (const rtx operand0, const rtx operand1, const rtx operand2)
5844 : {
5845 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5846 0 : static const uint8_t expand_encoding[] = {
5847 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x1a, 0x5b,
5848 : 0x01, 0x01, 0x01, 0x82, 0x0d, 0x01, 0x02, 0x81,
5849 : 0x33
5850 : };
5851 0 : return expand_rtx (expand_encoding, operands);
5852 : }
5853 :
5854 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33471 */
5855 : rtx
5856 0 : gen_avx10_2_cvtps2iubsv4sf (const rtx operand0, const rtx operand1)
5857 : {
5858 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5859 0 : static const uint8_t expand_encoding[] = {
5860 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
5861 : 0x82, 0x0d
5862 : };
5863 0 : return expand_rtx (expand_encoding, operands);
5864 : }
5865 :
5866 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33486 */
5867 : rtx
5868 33 : gen_avx10_2_cvttps2iubsv16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5869 : {
5870 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5871 33 : static const uint8_t expand_encoding[] = {
5872 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
5873 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x82, 0x13,
5874 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
5875 : };
5876 33 : return expand_rtx (expand_encoding, operands);
5877 : }
5878 :
5879 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5880 : rtx
5881 36 : gen_avx10_2_vcvttps2dqsv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5882 : {
5883 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5884 36 : static const uint8_t expand_encoding[] = {
5885 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5886 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5887 : 0x03
5888 : };
5889 36 : return expand_rtx (expand_encoding, operands);
5890 : }
5891 :
5892 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5893 : rtx
5894 36 : gen_avx10_2_vcvttps2dqsv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5895 : {
5896 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5897 36 : static const uint8_t expand_encoding[] = {
5898 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5899 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5900 : 0x03
5901 : };
5902 36 : return expand_rtx (expand_encoding, operands);
5903 : }
5904 :
5905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5906 : rtx
5907 0 : gen_avx10_2_vcvttpd2dqsv4df (const rtx operand0, const rtx operand1)
5908 : {
5909 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5910 0 : static const uint8_t expand_encoding[] = {
5911 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
5912 : 0x82, 0x14
5913 : };
5914 0 : return expand_rtx (expand_encoding, operands);
5915 : }
5916 :
5917 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33521 */
5918 : rtx
5919 0 : gen_avx10_2_vcvttpd2qqsv8df_round (const rtx operand0, const rtx operand1, const rtx operand2)
5920 : {
5921 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5922 0 : static const uint8_t expand_encoding[] = {
5923 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x1a, 0x5c,
5924 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x81,
5925 : 0x33
5926 : };
5927 0 : return expand_rtx (expand_encoding, operands);
5928 : }
5929 :
5930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33521 */
5931 : rtx
5932 36 : gen_avx10_2_vcvttpd2uqqsv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5933 : {
5934 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5935 36 : static const uint8_t expand_encoding[] = {
5936 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5937 : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5938 : 0x03
5939 : };
5940 36 : return expand_rtx (expand_encoding, operands);
5941 : }
5942 :
5943 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33532 */
5944 : rtx
5945 36 : gen_avx10_2_vcvttps2uqqsv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5946 : {
5947 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5948 36 : static const uint8_t expand_encoding[] = {
5949 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
5950 : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5951 : 0x03
5952 : };
5953 36 : return expand_rtx (expand_encoding, operands);
5954 : }
5955 :
5956 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33543 */
5957 : rtx
5958 24 : gen_avx10_2_vcvttsd2sissi_round (const rtx operand0, const rtx operand1, const rtx operand2)
5959 : {
5960 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5961 24 : static const uint8_t expand_encoding[] = {
5962 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
5963 : 0x01, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
5964 : 0x01, 0x27, 0x00, 0x82, 0x14, 0x01, 0x02, 0x81,
5965 : 0x33
5966 : };
5967 24 : return expand_rtx (expand_encoding, operands);
5968 : }
5969 :
5970 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33556 */
5971 : rtx
5972 24 : gen_avx10_2_vcvttss2usissi_round (const rtx operand0, const rtx operand1, const rtx operand2)
5973 : {
5974 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5975 24 : static const uint8_t expand_encoding[] = {
5976 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
5977 : 0x01, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
5978 : 0x01, 0x27, 0x00, 0x82, 0x15, 0x01, 0x02, 0x81,
5979 : 0x33
5980 : };
5981 24 : return expand_rtx (expand_encoding, operands);
5982 : }
5983 :
5984 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
5985 : rtx
5986 0 : gen_avx10_2_minmaxpv32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5987 : {
5988 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5989 0 : static const uint8_t expand_encoding[] = {
5990 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01, 0x01,
5991 : 0x01, 0x02, 0x01, 0x03, 0x82, 0x17
5992 : };
5993 0 : return expand_rtx (expand_encoding, operands);
5994 : }
5995 :
5996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
5997 : rtx
5998 0 : gen_avx10_2_minmaxpv8hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5999 : {
6000 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
6001 0 : static const uint8_t expand_encoding[] = {
6002 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x1a, 0x6a,
6003 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6004 : 0x17, 0x01, 0x04, 0x81, 0x33
6005 : };
6006 0 : return expand_rtx (expand_encoding, operands);
6007 : }
6008 :
6009 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6010 : rtx
6011 48 : gen_avx10_2_minmaxpv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
6012 : {
6013 48 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
6014 48 : static const uint8_t expand_encoding[] = {
6015 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
6016 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6017 : 0x17, 0x01, 0x04, 0x01, 0x05
6018 : };
6019 48 : return expand_rtx (expand_encoding, operands);
6020 : }
6021 :
6022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6023 : rtx
6024 0 : gen_avx10_2_minmaxpv4df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
6025 : {
6026 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
6027 0 : static const uint8_t expand_encoding[] = {
6028 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x1a, 0x70,
6029 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6030 : 0x17, 0x01, 0x04, 0x81, 0x33
6031 : };
6032 0 : return expand_rtx (expand_encoding, operands);
6033 : }
6034 :
6035 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33593 */
6036 : rtx
6037 69 : gen_avx10_2_minmaxsv8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
6038 : {
6039 69 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
6040 69 : static const uint8_t expand_encoding[] = {
6041 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
6042 : 0x6a, 0x81, 0x09, 0x6a, 0x1a, 0x6a, 0x03, 0x01,
6043 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x82, 0x17, 0x01,
6044 : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
6045 : 0x06, 0x81, 0x33
6046 : };
6047 69 : return expand_rtx (expand_encoding, operands);
6048 : }
6049 :
6050 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6051 : rtx
6052 0 : gen_avx10_2_vmovrsbv32qi (const rtx operand0, const rtx operand1)
6053 : {
6054 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6055 0 : static const uint8_t expand_encoding[] = {
6056 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x01, 0x01, 0x01,
6057 : 0x82, 0x1b
6058 : };
6059 0 : return expand_rtx (expand_encoding, operands);
6060 : }
6061 :
6062 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6063 : rtx
6064 0 : gen_avx10_2_vmovrswv8hi (const rtx operand0, const rtx operand1)
6065 : {
6066 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6067 0 : static const uint8_t expand_encoding[] = {
6068 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
6069 : 0x82, 0x1b
6070 : };
6071 0 : return expand_rtx (expand_encoding, operands);
6072 : }
6073 :
6074 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6075 : rtx
6076 33 : gen_avx10_2_vmovrsqv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6077 : {
6078 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6079 33 : static const uint8_t expand_encoding[] = {
6080 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
6081 : 0x01, 0x01, 0x01, 0x82, 0x1b, 0x01, 0x02, 0x01,
6082 : 0x03
6083 : };
6084 33 : return expand_rtx (expand_encoding, operands);
6085 : }
6086 :
6087 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33648 */
6088 : rtx
6089 33 : gen_avx512bmm_vbitrevb_v32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6090 : {
6091 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6092 33 : static const uint8_t expand_encoding[] = {
6093 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
6094 : 0x01, 0x01, 0x01, 0x82, 0x1a, 0x01, 0x02, 0x01,
6095 : 0x03
6096 : };
6097 33 : return expand_rtx (expand_encoding, operands);
6098 : }
6099 :
6100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:289 */
6101 : rtx
6102 25 : gen_atomic_storedi_fpu (const rtx operand0, const rtx operand1, const rtx operand2)
6103 : {
6104 25 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6105 25 : static const uint8_t expand_encoding[] = {
6106 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x12,
6107 : 0x01, 0x01, 0x01, 0x82, 0x24, 0x21, 0x00, 0x01,
6108 : 0x02, 0x21, 0x00, 0x31, 0x2e
6109 : };
6110 25 : return expand_rtx (expand_encoding, operands);
6111 : }
6112 :
6113 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:693 */
6114 : rtx
6115 7265 : gen_atomic_fetch_addsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6116 : {
6117 7265 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6118 7265 : static const uint8_t expand_encoding[] = {
6119 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x11,
6120 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x6e, 0x1f, 0x01,
6121 : 0x01, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02, 0x05,
6122 : 0x02, 0x11
6123 : };
6124 7265 : return expand_rtx (expand_encoding, operands);
6125 : }
6126 :
6127 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:814 */
6128 : rtx
6129 18 : gen_rao_axorsi (const rtx operand0, const rtx operand1)
6130 : {
6131 18 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6132 18 : static const uint8_t expand_encoding[] = {
6133 : 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x02, 0x4b, 0x11,
6134 : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00, 0x71
6135 : };
6136 18 : return expand_rtx (expand_encoding, operands);
6137 : }
6138 :
6139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:824 */
6140 : rtx
6141 233 : gen_atomic_addqi (const rtx operand0, const rtx operand1, const rtx operand2)
6142 : {
6143 233 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6144 233 : static const uint8_t expand_encoding[] = {
6145 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x0f,
6146 : 0x02, 0x3b, 0x0f, 0x01, 0x00, 0x01, 0x01, 0x01,
6147 : 0x02, 0x6f, 0x05, 0x02, 0x11
6148 : };
6149 233 : return expand_rtx (expand_encoding, operands);
6150 : }
6151 :
6152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:878 */
6153 : rtx
6154 111 : gen_atomic_xorqi (const rtx operand0, const rtx operand1, const rtx operand2)
6155 : {
6156 111 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6157 111 : static const uint8_t expand_encoding[] = {
6158 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x0f,
6159 : 0x02, 0x4b, 0x0f, 0x01, 0x00, 0x01, 0x01, 0x01,
6160 : 0x02, 0x6f, 0x05, 0x02, 0x11
6161 : };
6162 111 : return expand_rtx (expand_encoding, operands);
6163 : }
6164 :
6165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:910 */
6166 : rtx
6167 26 : gen_atomic_bit_test_and_sethi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6168 : {
6169 26 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6170 26 : static const uint8_t expand_encoding[] = {
6171 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
6172 : 0x08, 0x1b, 0x10, 0x02, 0x01, 0x00, 0x01, 0x02,
6173 : 0x6e, 0x27, 0x00, 0x1f, 0x81, 0x06, 0x10, 0x01,
6174 : 0x00, 0x27, 0x01, 0x01, 0x01, 0x27, 0x01
6175 : };
6176 26 : return expand_rtx (expand_encoding, operands);
6177 : }
6178 :
6179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1018 */
6180 : rtx
6181 72 : gen_atomic_add_fetch_cmp_0hi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6182 : {
6183 72 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6184 72 : static const uint8_t expand_encoding[] = {
6185 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11, 0x3a,
6186 : 0x04, 0x3b, 0x10, 0x1b, 0x10, 0x02, 0x01, 0x00,
6187 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6188 : 0x01, 0x00, 0x3b, 0x10, 0x01, 0x00, 0x01, 0x01
6189 : };
6190 72 : return expand_rtx (expand_encoding, operands);
6191 : }
6192 :
6193 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1089 */
6194 : rtx
6195 44 : gen_atomic_and_fetch_cmp_0hi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6196 : {
6197 44 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6198 44 : static const uint8_t expand_encoding[] = {
6199 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x05, 0x11, 0x3a,
6200 : 0x05, 0x49, 0x10, 0x1b, 0x10, 0x02, 0x01, 0x00,
6201 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6202 : 0x01, 0x00, 0x49, 0x10, 0x01, 0x00, 0x01, 0x01
6203 : };
6204 44 : return expand_rtx (expand_encoding, operands);
6205 : }
6206 :
6207 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1442 */
6208 : rtx
6209 956341 : gen_cbranchqi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6210 : {
6211 956341 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6212 956341 : start_sequence ();
6213 956341 : {
6214 : #define FAIL return (end_sequence (), nullptr)
6215 : #define DONE return end_sequence ()
6216 : #line 1452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6217 : {
6218 : if (MEM_P (operands[1]) && MEM_P (operands[2]))
6219 : operands[1] = force_reg (QImode, operands[1]);
6220 : ix86_expand_branch (GET_CODE (operands[0]),
6221 : operands[1], operands[2], operands[3]);
6222 : DONE;
6223 : }
6224 : #undef DONE
6225 : #undef FAIL
6226 : }
6227 : static const uint8_t expand_encoding[] = {
6228 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6229 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
6230 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
6231 : 0x00, 0x01, 0x03, 0x2f
6232 : };
6233 : return complete_seq (expand_encoding, operands);
6234 : }
6235 :
6236 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1552 */
6237 : rtx
6238 : gen_cmpqi_1 (const rtx operand0, const rtx operand1)
6239 : {
6240 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6241 : static const uint8_t expand_encoding[] = {
6242 : 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01, 0x00,
6243 : 0x01, 0x01
6244 : };
6245 : return expand_rtx (expand_encoding, operands);
6246 : }
6247 :
6248 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1685 */
6249 : extern rtx_insn *gen_split_1 (rtx_insn *, rtx *);
6250 : rtx_insn *
6251 : gen_split_1 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6252 : {
6253 : if (dump_file)
6254 : fprintf (dump_file, "Splitting with gen_split_1 (i386.md:1685)\n");
6255 : start_sequence ();
6256 : #define FAIL return (end_sequence (), nullptr)
6257 : #define DONE return end_sequence ()
6258 : #line 1696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6259 : {
6260 : split_double_mode (DImode, &operands[0], 2, &operands[0], &operands[2]);
6261 :
6262 : operands[4] = gen_reg_rtx (SImode);
6263 :
6264 : /* Special case comparisons against -1. */
6265 : if (operands[1] == constm1_rtx && operands[3] == constm1_rtx)
6266 : {
6267 : emit_insn (gen_andsi3 (operands[4], operands[0], operands[2]));
6268 : emit_insn (gen_cmp_1 (SImode, operands[4], constm1_rtx));
6269 : DONE;
6270 : }
6271 :
6272 : if (operands[1] == const0_rtx)
6273 : emit_move_insn (operands[4], operands[0]);
6274 : else if (operands[0] == const0_rtx)
6275 : emit_move_insn (operands[4], operands[1]);
6276 : else if (operands[1] == constm1_rtx)
6277 : emit_insn (gen_one_cmplsi2 (operands[4], operands[0]));
6278 : else if (operands[0] == constm1_rtx)
6279 : emit_insn (gen_one_cmplsi2 (operands[4], operands[1]));
6280 : else
6281 : {
6282 : if (CONST_SCALAR_INT_P (operands[1])
6283 : && !x86_64_immediate_operand (operands[1], SImode))
6284 : operands[1] = force_reg (SImode, operands[1]);
6285 : emit_insn (gen_xorsi3 (operands[4], operands[0], operands[1]));
6286 : }
6287 :
6288 : if (operands[3] == const0_rtx)
6289 : operands[5] = operands[2];
6290 : else if (operands[2] == const0_rtx)
6291 : operands[5] = operands[3];
6292 : else
6293 : {
6294 : operands[5] = gen_reg_rtx (SImode);
6295 : if (operands[3] == constm1_rtx)
6296 : emit_insn (gen_one_cmplsi2 (operands[5], operands[2]));
6297 : else if (operands[2] == constm1_rtx)
6298 : emit_insn (gen_one_cmplsi2 (operands[5], operands[3]));
6299 : else
6300 : {
6301 : if (CONST_SCALAR_INT_P (operands[3])
6302 : && !x86_64_immediate_operand (operands[3], SImode))
6303 : operands[3] = force_reg (SImode, operands[3]);
6304 : emit_insn (gen_xorsi3 (operands[5], operands[2], operands[3]));
6305 : }
6306 : }
6307 : }
6308 : #undef DONE
6309 : #undef FAIL
6310 : static const uint8_t expand_encoding[] = {
6311 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
6312 : 0x3a, 0x0c, 0x4a, 0x11, 0x01, 0x04, 0x01, 0x05,
6313 : 0x27, 0x00, 0x1f, 0x01, 0x04, 0x4a, 0x11, 0x01,
6314 : 0x04, 0x01, 0x05
6315 : };
6316 : return complete_seq (expand_encoding, operands);
6317 : }
6318 :
6319 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2142 */
6320 : extern rtx_insn *gen_peephole2_1 (rtx_insn *, rtx *);
6321 : rtx_insn *
6322 : gen_peephole2_1 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6323 : {
6324 : HARD_REG_SET _regs_allocated;
6325 : CLEAR_HARD_REG_SET (_regs_allocated);
6326 : if ((operands[0] = peep2_find_free_register (0, 0, "r", QImode, &_regs_allocated)) == NULL_RTX)
6327 : return NULL;
6328 : if (dump_file)
6329 : fprintf (dump_file, "Splitting with gen_peephole2_1 (i386.md:2142)\n");
6330 : start_sequence ();
6331 : static const uint8_t expand_encoding[] = {
6332 : 0x02, 0x1f, 0x01, 0x00, 0x27, 0x01, 0x17, 0x00,
6333 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
6334 : 0x0f, 0x01, 0x00, 0x27, 0x81, 0xff, 0xff, 0xff,
6335 : 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x01, 0x00,
6336 : 0x1f, 0x01, 0x00, 0x3b, 0x0f, 0x01, 0x00, 0x27,
6337 : 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6338 : 0xff, 0x7f
6339 : };
6340 : return complete_seq (expand_encoding, operands);
6341 : }
6342 :
6343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2349 */
6344 : rtx
6345 : gen_reload_noff_store (const rtx operand0, const rtx operand1, const rtx operand2)
6346 : {
6347 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6348 : start_sequence ();
6349 : {
6350 : #define FAIL return (end_sequence (), nullptr)
6351 : #define DONE return end_sequence ()
6352 : #line 2354 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6353 : {
6354 : rtx mem = operands[0];
6355 : rtx addr = XEXP (mem, 0);
6356 :
6357 : emit_move_insn (operands[2], addr);
6358 : mem = replace_equiv_address_nv (mem, operands[2]);
6359 :
6360 : emit_insn (gen_rtx_SET (mem, operands[1]));
6361 : DONE;
6362 : }
6363 : #undef DONE
6364 : #undef FAIL
6365 : }
6366 : static const uint8_t expand_encoding[] = {
6367 : 0x01, 0x17, 0x00, 0x03, 0x01, 0x00, 0x01, 0x01,
6368 : 0x01, 0x02
6369 : };
6370 : return complete_seq (expand_encoding, operands);
6371 : }
6372 :
6373 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2441 */
6374 : extern rtx_insn *gen_split_15 (rtx_insn *, rtx *);
6375 : rtx_insn *
6376 : gen_split_15 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6377 : {
6378 : if (dump_file)
6379 : fprintf (dump_file, "Splitting with gen_split_15 (i386.md:2441)\n");
6380 : start_sequence ();
6381 : #define FAIL return (end_sequence (), nullptr)
6382 : #define DONE return end_sequence ()
6383 : #line 2449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6384 :
6385 : #undef DONE
6386 : #undef FAIL
6387 : static const uint8_t expand_encoding[] = {
6388 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6389 : };
6390 : return complete_seq (expand_encoding, operands);
6391 : }
6392 :
6393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2805 */
6394 : extern rtx_insn *gen_split_25 (rtx_insn *, rtx *);
6395 : rtx_insn *
6396 : gen_split_25 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6397 : {
6398 : if (dump_file)
6399 : fprintf (dump_file, "Splitting with gen_split_25 (i386.md:2805)\n");
6400 : start_sequence ();
6401 : #define FAIL return (end_sequence (), nullptr)
6402 : #define DONE return end_sequence ()
6403 : #line 2815 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6404 : {
6405 : operands[2] = lowpart_subreg (V4SImode, operands[0], DImode);
6406 : operands[3] = gen_highpart (SImode, operands[1]);
6407 :
6408 : emit_move_insn (gen_lowpart (SImode, operands[0]),
6409 : gen_lowpart (SImode, operands[1]));
6410 : }
6411 : #undef DONE
6412 : #undef FAIL
6413 : static const uint8_t expand_encoding[] = {
6414 : 0x01, 0x1f, 0x01, 0x02, 0x81, 0x09, 0x51, 0x81,
6415 : 0x0c, 0x51, 0x01, 0x03, 0x01, 0x02, 0x27, 0x02
6416 : };
6417 : return complete_seq (expand_encoding, operands);
6418 : }
6419 :
6420 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3317 */
6421 : extern rtx_insn *gen_peephole2_13 (rtx_insn *, rtx *);
6422 : rtx_insn *
6423 : gen_peephole2_13 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6424 : {
6425 : if (dump_file)
6426 : fprintf (dump_file, "Splitting with gen_peephole2_13 (i386.md:3317)\n");
6427 : start_sequence ();
6428 : static const uint8_t expand_encoding[] = {
6429 : 0x01, 0x1f, 0x01, 0x02, 0x01, 0x01
6430 : };
6431 : return complete_seq (expand_encoding, operands);
6432 : }
6433 :
6434 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3444 */
6435 : extern rtx_insn *gen_peephole2_23 (rtx_insn *, rtx *);
6436 : rtx_insn *
6437 : gen_peephole2_23 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6438 : {
6439 : if (dump_file)
6440 : fprintf (dump_file, "Splitting with gen_peephole2_23 (i386.md:3444)\n");
6441 : start_sequence ();
6442 : static const uint8_t expand_encoding[] = {
6443 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6444 : };
6445 : return complete_seq (expand_encoding, operands);
6446 : }
6447 :
6448 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3537 */
6449 : extern rtx_insn *gen_split_26 (rtx_insn *, rtx *);
6450 : rtx_insn *
6451 : gen_split_26 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6452 : {
6453 : if (dump_file)
6454 : fprintf (dump_file, "Splitting with gen_split_26 (i386.md:3537)\n");
6455 : start_sequence ();
6456 : static const uint8_t expand_encoding[] = {
6457 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
6458 : 0x11, 0x01, 0x01, 0x27, 0x01, 0x05, 0x02, 0x11,
6459 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3d, 0x11,
6460 : 0x01, 0x00, 0x05, 0x02, 0x11
6461 : };
6462 : return complete_seq (expand_encoding, operands);
6463 : }
6464 :
6465 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3672 */
6466 : extern rtx_insn *gen_peephole2_29 (rtx_insn *, rtx *);
6467 : rtx_insn *
6468 : gen_peephole2_29 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6469 : {
6470 : if (dump_file)
6471 : fprintf (dump_file, "Splitting with gen_peephole2_29 (i386.md:3672)\n");
6472 : start_sequence ();
6473 : static const uint8_t expand_encoding[] = {
6474 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
6475 : 0x00, 0x05, 0x02, 0x11
6476 : };
6477 : return complete_seq (expand_encoding, operands);
6478 : }
6479 :
6480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3672 */
6481 : extern rtx_insn *gen_peephole2_33 (rtx_insn *, rtx *);
6482 : rtx_insn *
6483 : gen_peephole2_33 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6484 : {
6485 : if (dump_file)
6486 : fprintf (dump_file, "Splitting with gen_peephole2_33 (i386.md:3672)\n");
6487 : start_sequence ();
6488 : static const uint8_t expand_encoding[] = {
6489 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
6490 : 0x00, 0x05, 0x02, 0x11
6491 : };
6492 : return complete_seq (expand_encoding, operands);
6493 : }
6494 :
6495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3729 */
6496 : extern rtx_insn *gen_split_28 (rtx_insn *, rtx *);
6497 : rtx_insn *
6498 : gen_split_28 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6499 : {
6500 : if (dump_file)
6501 : fprintf (dump_file, "Splitting with gen_split_28 (i386.md:3729)\n");
6502 : start_sequence ();
6503 : #define FAIL return (end_sequence (), nullptr)
6504 : #define DONE return end_sequence ()
6505 : #line 3747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6506 : {
6507 : operands[4] = gen_lowpart (DImode, operands[1]);
6508 : split_double_concat (TImode, operands[0], operands[4], operands[2]);
6509 : DONE;
6510 : }
6511 : #undef DONE
6512 : #undef FAIL
6513 : static const uint8_t expand_encoding[] = {
6514 : 0x01, 0x27, 0x00
6515 : };
6516 : return complete_seq (expand_encoding, operands);
6517 : }
6518 :
6519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3811 */
6520 : extern rtx_insn *gen_split_38 (rtx_insn *, rtx *);
6521 : rtx_insn *
6522 : gen_split_38 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6523 : {
6524 : if (dump_file)
6525 : fprintf (dump_file, "Splitting with gen_split_38 (i386.md:3811)\n");
6526 : start_sequence ();
6527 : #define FAIL return (end_sequence (), nullptr)
6528 : #define DONE return end_sequence ()
6529 : #line 3817 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6530 : {
6531 : /* Preserve memory attributes. */
6532 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6533 : }
6534 : #undef DONE
6535 : #undef FAIL
6536 : static const uint8_t expand_encoding[] = {
6537 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6538 : 0x12, 0x07, 0x27, 0x81, 0xff, 0xff, 0xff, 0xff,
6539 : 0xff, 0xff, 0xff, 0xff, 0x70, 0x1f, 0x01, 0x00,
6540 : 0x01, 0x01
6541 : };
6542 : return complete_seq (expand_encoding, operands);
6543 : }
6544 :
6545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4011 */
6546 : extern rtx_insn *gen_split_48 (rtx_insn *, rtx *);
6547 : rtx_insn *
6548 : gen_split_48 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6549 : {
6550 : if (dump_file)
6551 : fprintf (dump_file, "Splitting with gen_split_48 (i386.md:4011)\n");
6552 : start_sequence ();
6553 : #define FAIL return (end_sequence (), nullptr)
6554 : #define DONE return end_sequence ()
6555 : #line 4017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6556 : {
6557 : rtx op = XEXP (operands[0], 0);
6558 : if (GET_CODE (op) == PRE_DEC)
6559 : {
6560 : gcc_assert (!TARGET_64BIT);
6561 : op = GEN_INT (-4);
6562 : }
6563 : else
6564 : {
6565 : op = XEXP (XEXP (op, 1), 1);
6566 : gcc_assert (CONST_INT_P (op));
6567 : }
6568 : operands[2] = op;
6569 : /* Preserve memory attributes. */
6570 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6571 : }
6572 : #undef DONE
6573 : #undef FAIL
6574 : static const uint8_t expand_encoding[] = {
6575 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6576 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6577 : 0x01
6578 : };
6579 : return complete_seq (expand_encoding, operands);
6580 : }
6581 :
6582 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4667 */
6583 : extern rtx_insn *gen_split_56 (rtx_insn *, rtx *);
6584 : rtx_insn *
6585 : gen_split_56 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6586 : {
6587 : if (dump_file)
6588 : fprintf (dump_file, "Splitting with gen_split_56 (i386.md:4667)\n");
6589 : start_sequence ();
6590 : #define FAIL return (end_sequence (), nullptr)
6591 : #define DONE return end_sequence ()
6592 : #line 4676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6593 : {
6594 : if (real_isnegzero (CONST_DOUBLE_REAL_VALUE (operands[1])))
6595 : operands[1] = CONST0_RTX (SFmode);
6596 : else
6597 : operands[1] = CONST1_RTX (SFmode);
6598 : }
6599 : #undef DONE
6600 : #undef FAIL
6601 : static const uint8_t expand_encoding[] = {
6602 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1f, 0x01,
6603 : 0x00, 0x3d, 0x2d, 0x01, 0x00
6604 : };
6605 : return complete_seq (expand_encoding, operands);
6606 : }
6607 :
6608 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4882 */
6609 : extern rtx_insn *gen_split_64 (rtx_insn *, rtx *);
6610 : rtx_insn *
6611 : gen_split_64 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6612 : {
6613 : if (dump_file)
6614 : fprintf (dump_file, "Splitting with gen_split_64 (i386.md:4882)\n");
6615 : start_sequence ();
6616 : #define FAIL return (end_sequence (), nullptr)
6617 : #define DONE return end_sequence ()
6618 : #line 4892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6619 : {
6620 : if (!REG_P (operands[1])
6621 : || REGNO (operands[0]) != REGNO (operands[1]))
6622 : {
6623 : ix86_expand_clear (operands[0]);
6624 :
6625 : gcc_assert (!TARGET_PARTIAL_REG_STALL);
6626 : emit_insn (gen_rtx_SET
6627 : (gen_rtx_STRICT_LOW_PART
6628 : (VOIDmode, gen_lowpart (HImode, operands[0])),
6629 : operands[1]));
6630 : DONE;
6631 : }
6632 :
6633 : operands[2] = GEN_INT (GET_MODE_MASK (HImode));
6634 : }
6635 : #undef DONE
6636 : #undef FAIL
6637 : static const uint8_t expand_encoding[] = {
6638 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
6639 : 0x11, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
6640 : };
6641 : return complete_seq (expand_encoding, operands);
6642 : }
6643 :
6644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5097 */
6645 : extern rtx_insn *gen_peephole2_52 (rtx_insn *, rtx *);
6646 : rtx_insn *
6647 : gen_peephole2_52 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6648 : {
6649 : if (dump_file)
6650 : fprintf (dump_file, "Splitting with gen_peephole2_52 (i386.md:5097)\n");
6651 : start_sequence ();
6652 : static const uint8_t expand_encoding[] = {
6653 : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
6654 : 0x02, 0x1f, 0x01, 0x01, 0x4f, 0x12, 0x01, 0x01,
6655 : 0x01, 0x04, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x03,
6656 : 0x01, 0x01
6657 : };
6658 : return complete_seq (expand_encoding, operands);
6659 : }
6660 :
6661 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5312 */
6662 : extern rtx_insn *gen_split_74 (rtx_insn *, rtx *);
6663 : rtx_insn *
6664 : gen_split_74 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6665 : {
6666 : if (dump_file)
6667 : fprintf (dump_file, "Splitting with gen_split_74 (i386.md:5312)\n");
6668 : start_sequence ();
6669 : #define FAIL return (end_sequence (), nullptr)
6670 : #define DONE return end_sequence ()
6671 : #line 5318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6672 : operands[2] = GEN_INT (-GET_MODE_SIZE (XFmode));
6673 : #undef DONE
6674 : #undef FAIL
6675 : static const uint8_t expand_encoding[] = {
6676 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
6677 : 0x11, 0x07, 0x01, 0x02, 0x1f, 0x36, 0x2f, 0x30,
6678 : 0x11, 0x07, 0x71, 0x2f, 0x01, 0x01
6679 : };
6680 : return complete_seq (expand_encoding, operands);
6681 : }
6682 :
6683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5507 */
6684 : rtx
6685 : gen_extendbfsf2 (const rtx operand0, const rtx operand1)
6686 : {
6687 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6688 : static const uint8_t expand_encoding[] = {
6689 : 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x01, 0x01, 0x01,
6690 : 0x3d
6691 : };
6692 : return expand_rtx (expand_encoding, operands);
6693 : }
6694 :
6695 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5678 */
6696 : extern rtx_insn *gen_split_79 (rtx_insn *, rtx *);
6697 : rtx_insn *
6698 : gen_split_79 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6699 : {
6700 : if (dump_file)
6701 : fprintf (dump_file, "Splitting with gen_split_79 (i386.md:5678)\n");
6702 : start_sequence ();
6703 : #define FAIL return (end_sequence (), nullptr)
6704 : #define DONE return end_sequence ()
6705 : #line 5697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6706 : {
6707 : operands[0] = lowpart_subreg (V4SFmode, operands[0], SFmode);
6708 : emit_move_insn (operands[0], CONST0_RTX (V4SFmode));
6709 : }
6710 : #undef DONE
6711 : #undef FAIL
6712 : static const uint8_t expand_encoding[] = {
6713 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
6714 : 0x0c, 0x6b, 0x72, 0x2d, 0x01, 0x01, 0x01, 0x00,
6715 : 0x27, 0x01
6716 : };
6717 : return complete_seq (expand_encoding, operands);
6718 : }
6719 :
6720 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5864 */
6721 : rtx
6722 : gen_fix_truncsfhi2 (const rtx operand0, const rtx operand1)
6723 : {
6724 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6725 : start_sequence ();
6726 : {
6727 : #define FAIL return (end_sequence (), nullptr)
6728 : #define DONE return end_sequence ()
6729 : #line 5870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6730 : {
6731 : if (TARGET_FISTTP)
6732 : {
6733 : emit_insn (gen_fix_trunchi_i387_fisttp (operands[0], operands[1]));
6734 : DONE;
6735 : }
6736 : }
6737 : #undef DONE
6738 : #undef FAIL
6739 : }
6740 : static const uint8_t expand_encoding[] = {
6741 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74,
6742 : 0x10, 0x01, 0x01, 0x05, 0x02, 0x11
6743 : };
6744 : return complete_seq (expand_encoding, operands);
6745 : }
6746 :
6747 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5954 */
6748 : extern rtx_insn *gen_split_81 (rtx_insn *, rtx *);
6749 : rtx_insn *
6750 : gen_split_81 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6751 : {
6752 : if (dump_file)
6753 : fprintf (dump_file, "Splitting with gen_split_81 (i386.md:5954)\n");
6754 : start_sequence ();
6755 : #define FAIL return (end_sequence (), nullptr)
6756 : #define DONE return end_sequence ()
6757 : #line 5966 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6758 : {
6759 : ix86_split_convert_uns_si_sse (operands);
6760 : DONE;
6761 : }
6762 : #undef DONE
6763 : #undef FAIL
6764 : static const uint8_t expand_encoding[] = {
6765 : 0x01, 0x27, 0x00
6766 : };
6767 : return complete_seq (expand_encoding, operands);
6768 : }
6769 :
6770 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6039 */
6771 : extern rtx_insn *gen_split_84 (rtx_insn *, rtx *);
6772 : rtx_insn *
6773 : gen_split_84 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6774 : {
6775 : if (dump_file)
6776 : fprintf (dump_file, "Splitting with gen_split_84 (i386.md:6039)\n");
6777 : start_sequence ();
6778 : #define FAIL return (end_sequence (), nullptr)
6779 : #define DONE return end_sequence ()
6780 : #line 6051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6781 : {
6782 : ix86_optimize_mode_switching[I387_TRUNC] = 1;
6783 :
6784 : operands[2] = assign_386_stack_local (HImode, SLOT_CW_STORED);
6785 : operands[3] = assign_386_stack_local (HImode, SLOT_CW_TRUNC);
6786 :
6787 : emit_insn (gen_fix_truncdi_i387 (operands[0], operands[1],
6788 : operands[2], operands[3]));
6789 : DONE;
6790 : }
6791 : #undef DONE
6792 : #undef FAIL
6793 : static const uint8_t expand_encoding[] = {
6794 : 0x01, 0x27, 0x00
6795 : };
6796 : return complete_seq (expand_encoding, operands);
6797 : }
6798 :
6799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6295 */
6800 : extern rtx_insn *gen_split_94 (rtx_insn *, rtx *);
6801 : rtx_insn *
6802 : gen_split_94 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6803 : {
6804 : if (dump_file)
6805 : fprintf (dump_file, "Splitting with gen_split_94 (i386.md:6295)\n");
6806 : start_sequence ();
6807 : #define FAIL return (end_sequence (), nullptr)
6808 : #define DONE return end_sequence ()
6809 : #line 6311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6810 : {
6811 : const machine_mode vmode = V4SFmode;
6812 :
6813 : operands[0] = lowpart_subreg (vmode, operands[0], SFmode);
6814 : emit_move_insn (operands[0], CONST0_RTX (vmode));
6815 : }
6816 : #undef DONE
6817 : #undef FAIL
6818 : static const uint8_t expand_encoding[] = {
6819 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
6820 : 0x0c, 0x6b, 0x73, 0x2d, 0x01, 0x01, 0x01, 0x00,
6821 : 0x27, 0x01
6822 : };
6823 : return complete_seq (expand_encoding, operands);
6824 : }
6825 :
6826 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6345 */
6827 : extern rtx_insn *gen_split_97 (rtx_insn *, rtx *);
6828 : rtx_insn *
6829 : gen_split_97 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6830 : {
6831 : if (dump_file)
6832 : fprintf (dump_file, "Splitting with gen_split_97 (i386.md:6345)\n");
6833 : start_sequence ();
6834 : #define FAIL return (end_sequence (), nullptr)
6835 : #define DONE return end_sequence ()
6836 : #line 6360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6837 :
6838 : #undef DONE
6839 : #undef FAIL
6840 : static const uint8_t expand_encoding[] = {
6841 : 0x03, 0x1f, 0x01, 0x03, 0x6f, 0x12, 0x01, 0x01,
6842 : 0x1f, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x00,
6843 : 0x73, 0x2d, 0x01, 0x02
6844 : };
6845 : return complete_seq (expand_encoding, operands);
6846 : }
6847 :
6848 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6470 */
6849 : extern rtx_insn *gen_split_100 (rtx_insn *, rtx *);
6850 : rtx_insn *
6851 : gen_split_100 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6852 : {
6853 : if (dump_file)
6854 : fprintf (dump_file, "Splitting with gen_split_100 (i386.md:6470)\n");
6855 : start_sequence ();
6856 : #define FAIL return (end_sequence (), nullptr)
6857 : #define DONE return end_sequence ()
6858 : #line 6477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6859 : operands[1] = GEN_INT (exact_log2 (INTVAL (operands[1])));
6860 : #undef DONE
6861 : #undef FAIL
6862 : static const uint8_t expand_encoding[] = {
6863 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
6864 : 0x11, 0x01, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11
6865 : };
6866 : return complete_seq (expand_encoding, operands);
6867 : }
6868 :
6869 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6514 */
6870 : extern rtx_insn *gen_peephole2_66 (rtx_insn *, rtx *);
6871 : rtx_insn *
6872 : gen_peephole2_66 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6873 : {
6874 : if (dump_file)
6875 : fprintf (dump_file, "Splitting with gen_peephole2_66 (i386.md:6514)\n");
6876 : start_sequence ();
6877 : static const uint8_t expand_encoding[] = {
6878 : 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x3b, 0x11,
6879 : 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
6880 : };
6881 : return complete_seq (expand_encoding, operands);
6882 : }
6883 :
6884 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6555 */
6885 : extern rtx_insn *gen_split_105 (rtx_insn *, rtx *);
6886 : rtx_insn *
6887 : gen_split_105 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6888 : {
6889 : if (dump_file)
6890 : fprintf (dump_file, "Splitting with gen_split_105 (i386.md:6555)\n");
6891 : start_sequence ();
6892 : #define FAIL return (end_sequence (), nullptr)
6893 : #define DONE return end_sequence ()
6894 : #line 6577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6895 : {
6896 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
6897 : if (operands[2] == const0_rtx)
6898 : {
6899 : /* Under NDD op0 and op1 may not equal, do not delete insn then. */
6900 : bool emit_insn_deleted_note_p = true;
6901 : if (!rtx_equal_p (operands[0], operands[1]))
6902 : {
6903 : emit_move_insn (operands[0], operands[1]);
6904 : emit_insn_deleted_note_p = false;
6905 : }
6906 : if (operands[5] != const0_rtx)
6907 : ix86_expand_binary_operator (PLUS, DImode, &operands[3],
6908 : TARGET_APX_NDD);
6909 : else if (!rtx_equal_p (operands[3], operands[4]))
6910 : emit_move_insn (operands[3], operands[4]);
6911 : else if (emit_insn_deleted_note_p)
6912 : emit_note (NOTE_INSN_DELETED);
6913 : DONE;
6914 : }
6915 : }
6916 : #undef DONE
6917 : #undef FAIL
6918 : static const uint8_t expand_encoding[] = {
6919 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
6920 : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
6921 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01,
6922 : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01,
6923 : 0x03, 0x3b, 0x12, 0x3b, 0x12, 0x66, 0x12, 0x30,
6924 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x04, 0x01, 0x05,
6925 : 0x05, 0x02, 0x11
6926 : };
6927 : return complete_seq (expand_encoding, operands);
6928 : }
6929 :
6930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7081 */
6931 : extern rtx_insn *gen_split_123 (rtx_insn *, rtx *);
6932 : rtx_insn *
6933 : gen_split_123 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6934 : {
6935 : if (dump_file)
6936 : fprintf (dump_file, "Splitting with gen_split_123 (i386.md:7081)\n");
6937 : start_sequence ();
6938 : #define FAIL return (end_sequence (), nullptr)
6939 : #define DONE return end_sequence ()
6940 : #line 7104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6941 :
6942 : #undef DONE
6943 : #undef FAIL
6944 : static const uint8_t expand_encoding[] = {
6945 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
6946 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
6947 : 0x3b, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01,
6948 : 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x00,
6949 : 0x05, 0x02, 0x11
6950 : };
6951 : return complete_seq (expand_encoding, operands);
6952 : }
6953 :
6954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7164 */
6955 : extern rtx_insn *gen_split_133 (rtx_insn *, rtx *);
6956 : rtx_insn *
6957 : gen_split_133 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6958 : {
6959 : if (dump_file)
6960 : fprintf (dump_file, "Splitting with gen_split_133 (i386.md:7164)\n");
6961 : start_sequence ();
6962 : #define FAIL return (end_sequence (), nullptr)
6963 : #define DONE return end_sequence ()
6964 : #line 7172 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6965 : {
6966 : if (SImode != SImode)
6967 : {
6968 : operands[0] = gen_lowpart (SImode, operands[0]);
6969 : operands[1] = gen_lowpart (SImode, operands[1]);
6970 : operands[2] = gen_lowpart (SImode, operands[2]);
6971 : }
6972 : }
6973 : #undef DONE
6974 : #undef FAIL
6975 : static const uint8_t expand_encoding[] = {
6976 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01, 0x01,
6977 : 0x01, 0x02
6978 : };
6979 : return complete_seq (expand_encoding, operands);
6980 : }
6981 :
6982 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7584 */
6983 : rtx
6984 : gen_addqi_ext_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6985 : {
6986 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6987 : static const uint8_t expand_encoding[] = {
6988 : 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01,
6989 : 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10, 0x3b,
6990 : 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01, 0x01,
6991 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02, 0x00,
6992 : 0x05, 0x02, 0x11
6993 : };
6994 : return expand_rtx (expand_encoding, operands);
6995 : }
6996 :
6997 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7656 */
6998 : extern rtx_insn *gen_split_147 (rtx_insn *, rtx *);
6999 : rtx_insn *
7000 : gen_split_147 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7001 : {
7002 : if (dump_file)
7003 : fprintf (dump_file, "Splitting with gen_split_147 (i386.md:7656)\n");
7004 : start_sequence ();
7005 : #define FAIL return (end_sequence (), nullptr)
7006 : #define DONE return end_sequence ()
7007 : #line 7693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7008 :
7009 : #undef DONE
7010 : #undef FAIL
7011 : static const uint8_t expand_encoding[] = {
7012 : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
7013 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
7014 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7015 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
7016 : 0x08, 0x32, 0x10, 0x3c, 0x0f, 0x32, 0x0f, 0x81,
7017 : 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7018 : 0x00, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01, 0x02,
7019 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x00, 0x05, 0x02,
7020 : 0x11
7021 : };
7022 : return complete_seq (expand_encoding, operands);
7023 : }
7024 :
7025 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7779 */
7026 : extern rtx_insn *gen_split_152 (rtx_insn *, rtx *);
7027 : rtx_insn *
7028 : gen_split_152 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7029 : {
7030 : if (dump_file)
7031 : fprintf (dump_file, "Splitting with gen_split_152 (i386.md:7779)\n");
7032 : start_sequence ();
7033 : #define FAIL return (end_sequence (), nullptr)
7034 : #define DONE return end_sequence ()
7035 : #line 7819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7036 : {
7037 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
7038 : }
7039 : #undef DONE
7040 : #undef FAIL
7041 : static const uint8_t expand_encoding[] = {
7042 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7043 : 0x3a, 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02,
7044 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01,
7045 : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30,
7046 : 0x09, 0x11, 0x5d, 0x09, 0x3b, 0x12, 0x3b, 0x12,
7047 : 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x6e,
7048 : 0x12, 0x01, 0x04, 0x6e, 0x12, 0x01, 0x05, 0x6e,
7049 : 0x12, 0x3b, 0x11, 0x3b, 0x11, 0x66, 0x11, 0x30,
7050 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x04, 0x01, 0x05,
7051 : 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x3b, 0x11, 0x66,
7052 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x04,
7053 : 0x01, 0x05
7054 : };
7055 : return complete_seq (expand_encoding, operands);
7056 : }
7057 :
7058 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7992 */
7059 : extern rtx_insn *gen_split_159 (rtx_insn *, rtx *);
7060 : rtx_insn *
7061 : gen_split_159 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7062 : {
7063 : if (dump_file)
7064 : fprintf (dump_file, "Splitting with gen_split_159 (i386.md:7992)\n");
7065 : start_sequence ();
7066 : #define FAIL return (end_sequence (), nullptr)
7067 : #define DONE return end_sequence ()
7068 : #line 8005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7069 : {
7070 : operands[0] = gen_lowpart (SImode, operands[0]);
7071 : operands[1] = gen_lowpart (SImode, operands[1]);
7072 : operands[3] = gen_lowpart (SImode, operands[3]);
7073 : }
7074 : #undef DONE
7075 : #undef FAIL
7076 : static const uint8_t expand_encoding[] = {
7077 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3e, 0x11,
7078 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7079 : };
7080 : return complete_seq (expand_encoding, operands);
7081 : }
7082 :
7083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8086 */
7084 : extern rtx_insn *gen_split_169 (rtx_insn *, rtx *);
7085 : rtx_insn *
7086 : gen_split_169 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7087 : {
7088 : if (dump_file)
7089 : fprintf (dump_file, "Splitting with gen_split_169 (i386.md:8086)\n");
7090 : start_sequence ();
7091 : #define FAIL return (end_sequence (), nullptr)
7092 : #define DONE return end_sequence ()
7093 : #line 8102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7094 : {
7095 : operands[0] = gen_lowpart (SImode, operands[0]);
7096 : operands[1] = gen_lowpart (SImode, operands[1]);
7097 : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
7098 : }
7099 : #undef DONE
7100 : #undef FAIL
7101 : static const uint8_t expand_encoding[] = {
7102 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3e, 0x11,
7103 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7104 : };
7105 : return complete_seq (expand_encoding, operands);
7106 : }
7107 :
7108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8141 */
7109 : extern rtx_insn *gen_split_175 (rtx_insn *, rtx *);
7110 : rtx_insn *
7111 : gen_split_175 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7112 : {
7113 : if (dump_file)
7114 : fprintf (dump_file, "Splitting with gen_split_175 (i386.md:8141)\n");
7115 : start_sequence ();
7116 : #define FAIL return (end_sequence (), nullptr)
7117 : #define DONE return end_sequence ()
7118 : #line 8161 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7119 : {
7120 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
7121 : if (operands[2] == const0_rtx)
7122 : {
7123 : if (!rtx_equal_p (operands[0], operands[1]))
7124 : emit_move_insn (operands[0], operands[1]);
7125 : ix86_expand_binary_operator (MINUS, DImode, &operands[3],
7126 : TARGET_APX_NDD);
7127 : DONE;
7128 : }
7129 : }
7130 : #undef DONE
7131 : #undef FAIL
7132 : static const uint8_t expand_encoding[] = {
7133 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7134 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7135 : 0x00, 0x3c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x17,
7136 : 0x00, 0x02, 0x1f, 0x01, 0x03, 0x3c, 0x12, 0x3c,
7137 : 0x12, 0x01, 0x04, 0x66, 0x12, 0x30, 0x02, 0x11,
7138 : 0x27, 0x00, 0x01, 0x05, 0x05, 0x02, 0x11
7139 : };
7140 : return complete_seq (expand_encoding, operands);
7141 : }
7142 :
7143 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8423 */
7144 : extern rtx_insn *gen_split_189 (rtx_insn *, rtx *);
7145 : rtx_insn *
7146 : gen_split_189 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7147 : {
7148 : if (dump_file)
7149 : fprintf (dump_file, "Splitting with gen_split_189 (i386.md:8423)\n");
7150 : start_sequence ();
7151 : #define FAIL return (end_sequence (), nullptr)
7152 : #define DONE return end_sequence ()
7153 : #line 8455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7154 :
7155 : #undef DONE
7156 : #undef FAIL
7157 : static const uint8_t expand_encoding[] = {
7158 : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
7159 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
7160 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7161 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
7162 : 0x08, 0x32, 0x10, 0x3c, 0x0f, 0x32, 0x0f, 0x81,
7163 : 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7164 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7165 : };
7166 : return complete_seq (expand_encoding, operands);
7167 : }
7168 :
7169 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8580 */
7170 : extern rtx_insn *gen_split_194 (rtx_insn *, rtx *);
7171 : rtx_insn *
7172 : gen_split_194 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7173 : {
7174 : if (dump_file)
7175 : fprintf (dump_file, "Splitting with gen_split_194 (i386.md:8580)\n");
7176 : start_sequence ();
7177 : #define FAIL return (end_sequence (), nullptr)
7178 : #define DONE return end_sequence ()
7179 : #line 8621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7180 : {
7181 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
7182 : if (operands[2] == const0_rtx)
7183 : {
7184 : if (!rtx_equal_p (operands[0], operands[1]))
7185 : emit_move_insn (operands[0], operands[1]);
7186 : emit_insn (gen_subvsi4_1 (operands[3], operands[4], operands[5],
7187 : operands[5]));
7188 : DONE;
7189 : }
7190 : }
7191 : #undef DONE
7192 : #undef FAIL
7193 : static const uint8_t expand_encoding[] = {
7194 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7195 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7196 : 0x00, 0x3c, 0x11, 0x01, 0x01, 0x01, 0x02, 0x17,
7197 : 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11, 0x5d, 0x09,
7198 : 0x3c, 0x12, 0x3c, 0x12, 0x6e, 0x12, 0x01, 0x04,
7199 : 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01,
7200 : 0x05, 0x6e, 0x12, 0x3c, 0x11, 0x3c, 0x11, 0x01,
7201 : 0x04, 0x66, 0x11, 0x30, 0x02, 0x11, 0x27, 0x00,
7202 : 0x01, 0x05, 0x1f, 0x01, 0x03, 0x3c, 0x11, 0x3c,
7203 : 0x11, 0x01, 0x04, 0x66, 0x11, 0x30, 0x02, 0x11,
7204 : 0x27, 0x00, 0x01, 0x05
7205 : };
7206 : return complete_seq (expand_encoding, operands);
7207 : }
7208 :
7209 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8756 */
7210 : extern rtx_insn *gen_peephole2_75 (rtx_insn *, rtx *);
7211 : rtx_insn *
7212 : gen_peephole2_75 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7213 : {
7214 : if (dump_file)
7215 : fprintf (dump_file, "Splitting with gen_peephole2_75 (i386.md:8756)\n");
7216 : start_sequence ();
7217 : static const uint8_t expand_encoding[] = {
7218 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7219 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7220 : 0x01, 0x01, 0x00, 0x1f, 0x01, 0x01, 0x3c, 0x10,
7221 : 0x01, 0x01, 0x01, 0x00
7222 : };
7223 : return complete_seq (expand_encoding, operands);
7224 : }
7225 :
7226 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8805 */
7227 : extern rtx_insn *gen_peephole2_85 (rtx_insn *, rtx *);
7228 : rtx_insn *
7229 : gen_peephole2_85 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7230 : {
7231 : if (dump_file)
7232 : fprintf (dump_file, "Splitting with gen_peephole2_85 (i386.md:8805)\n");
7233 : start_sequence ();
7234 : #define FAIL return (end_sequence (), nullptr)
7235 : #define DONE return end_sequence ()
7236 : #line 8827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7237 : {
7238 : rtx cc = gen_rtx_REG (CCmode, FLAGS_REG);
7239 : operands[3] = gen_rtx_fmt_ee (GET_CODE (operands[1]) == NE
7240 : ? GEU : LTU, VOIDmode, cc, const0_rtx);
7241 : }
7242 : #undef DONE
7243 : #undef FAIL
7244 : static const uint8_t expand_encoding[] = {
7245 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7246 : 0x3a, 0x02, 0x01, 0x00, 0x27, 0x01, 0x1f, 0x01,
7247 : 0x00, 0x3c, 0x12, 0x01, 0x00, 0x27, 0x01, 0x1f,
7248 : 0x2f, 0x39, 0x00, 0x01, 0x03, 0x01, 0x02, 0x2f
7249 : };
7250 : return complete_seq (expand_encoding, operands);
7251 : }
7252 :
7253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9229 */
7254 : extern rtx_insn *gen_peephole2_94 (rtx_insn *, rtx *);
7255 : rtx_insn *
7256 : gen_peephole2_94 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7257 : {
7258 : if (dump_file)
7259 : fprintf (dump_file, "Splitting with gen_peephole2_94 (i386.md:9229)\n");
7260 : start_sequence ();
7261 : static const uint8_t expand_encoding[] = {
7262 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7263 : 0x3a, 0x08, 0x6f, 0x12, 0x3b, 0x11, 0x3b, 0x11,
7264 : 0x02, 0x04, 0x01, 0x02, 0x27, 0x00, 0x01, 0x01,
7265 : 0x01, 0x00, 0x3b, 0x12, 0x02, 0x03, 0x01, 0x02,
7266 : 0x27, 0x00, 0x6f, 0x12, 0x01, 0x00, 0x1f, 0x01,
7267 : 0x01, 0x3b, 0x11, 0x3b, 0x11, 0x02, 0x04, 0x01,
7268 : 0x02, 0x27, 0x00, 0x01, 0x01, 0x01, 0x00
7269 : };
7270 : return complete_seq (expand_encoding, operands);
7271 : }
7272 :
7273 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9484 */
7274 : rtx
7275 : gen_addcarrysi_0 (const rtx operand0, const rtx operand1, const rtx operand2)
7276 : {
7277 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7278 : static const uint8_t expand_encoding[] = {
7279 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
7280 : 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02, 0x01,
7281 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01, 0x01,
7282 : 0x01, 0x02
7283 : };
7284 : return expand_rtx (expand_encoding, operands);
7285 : }
7286 :
7287 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9587 */
7288 : extern rtx_insn *gen_peephole2_110 (rtx_insn *, rtx *);
7289 : rtx_insn *
7290 : gen_peephole2_110 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7291 : {
7292 : if (dump_file)
7293 : fprintf (dump_file, "Splitting with gen_peephole2_110 (i386.md:9587)\n");
7294 : start_sequence ();
7295 : static const uint8_t expand_encoding[] = {
7296 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7297 : 0x02, 0x1f, 0x01, 0x01, 0x3c, 0x11, 0x3c, 0x11,
7298 : 0x01, 0x01, 0x02, 0x04, 0x01, 0x03, 0x27, 0x00,
7299 : 0x01, 0x00, 0x05, 0x02, 0x11
7300 : };
7301 : return complete_seq (expand_encoding, operands);
7302 : }
7303 :
7304 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10138 */
7305 : rtx
7306 : gen_subborrowsi_0 (const rtx operand0, const rtx operand1, const rtx operand2)
7307 : {
7308 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7309 : static const uint8_t expand_encoding[] = {
7310 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a,
7311 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00,
7312 : 0x3c, 0x11, 0x01, 0x01, 0x01, 0x02
7313 : };
7314 : return expand_rtx (expand_encoding, operands);
7315 : }
7316 :
7317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10257 */
7318 : extern rtx_insn *gen_split_199 (rtx_insn *, rtx *);
7319 : rtx_insn *
7320 : gen_split_199 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7321 : {
7322 : if (dump_file)
7323 : fprintf (dump_file, "Splitting with gen_split_199 (i386.md:10257)\n");
7324 : start_sequence ();
7325 : #define FAIL return (end_sequence (), nullptr)
7326 : #define DONE return end_sequence ()
7327 : #line 10265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7328 : emit_note (NOTE_INSN_DELETED); DONE;
7329 : #undef DONE
7330 : #undef FAIL
7331 : static const uint8_t expand_encoding[] = {
7332 : 0x01, 0x27, 0x00
7333 : };
7334 : return complete_seq (expand_encoding, operands);
7335 : }
7336 :
7337 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10288 */
7338 : extern rtx_insn *gen_split_205 (rtx_insn *, rtx *);
7339 : rtx_insn *
7340 : gen_split_205 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7341 : {
7342 : if (dump_file)
7343 : fprintf (dump_file, "Splitting with gen_split_205 (i386.md:10288)\n");
7344 : start_sequence ();
7345 : #define FAIL return (end_sequence (), nullptr)
7346 : #define DONE return end_sequence ()
7347 : #line 10296 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7348 : emit_note (NOTE_INSN_DELETED); DONE;
7349 : #undef DONE
7350 : #undef FAIL
7351 : static const uint8_t expand_encoding[] = {
7352 : 0x01, 0x27, 0x00
7353 : };
7354 : return complete_seq (expand_encoding, operands);
7355 : }
7356 :
7357 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10460 */
7358 : extern rtx_insn *gen_split_207 (rtx_insn *, rtx *);
7359 : rtx_insn *
7360 : gen_split_207 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7361 : {
7362 : if (dump_file)
7363 : fprintf (dump_file, "Splitting with gen_split_207 (i386.md:10460)\n");
7364 : start_sequence ();
7365 : #define FAIL return (end_sequence (), nullptr)
7366 : #define DONE return end_sequence ()
7367 : #line 10494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7368 : {
7369 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
7370 : if (operands[2] == const0_rtx)
7371 : {
7372 : if (!rtx_equal_p (operands[0], operands[1]))
7373 : emit_move_insn (operands[0], operands[1]);
7374 : emit_insn (gen_addcarrydi_0 (operands[3], operands[4], operands[5]));
7375 : DONE;
7376 : }
7377 : if (CONST_INT_P (operands[5]))
7378 : operands[6] = simplify_unary_operation (ZERO_EXTEND, TImode,
7379 : operands[5], DImode);
7380 : else
7381 : operands[6] = gen_rtx_ZERO_EXTEND (TImode, operands[5]);
7382 : }
7383 : #undef DONE
7384 : #undef FAIL
7385 : static const uint8_t expand_encoding[] = {
7386 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7387 : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
7388 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01,
7389 : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30,
7390 : 0x08, 0x11, 0x3a, 0x08, 0x6f, 0x13, 0x3b, 0x12,
7391 : 0x3b, 0x12, 0x66, 0x12, 0x30, 0x02, 0x11, 0x27,
7392 : 0x00, 0x01, 0x04, 0x01, 0x05, 0x3b, 0x13, 0x66,
7393 : 0x13, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x06,
7394 : 0x1f, 0x01, 0x03, 0x3b, 0x12, 0x3b, 0x12, 0x66,
7395 : 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x04,
7396 : 0x01, 0x05
7397 : };
7398 : return complete_seq (expand_encoding, operands);
7399 : }
7400 :
7401 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10609 */
7402 : extern rtx_insn *gen_split_225 (rtx_insn *, rtx *);
7403 : rtx_insn *
7404 : gen_split_225 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7405 : {
7406 : if (dump_file)
7407 : fprintf (dump_file, "Splitting with gen_split_225 (i386.md:10609)\n");
7408 : start_sequence ();
7409 : static const uint8_t expand_encoding[] = {
7410 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7411 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7412 : 0x00, 0x3c, 0x10, 0x3c, 0x10, 0x01, 0x01, 0x66,
7413 : 0x10, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7414 : 0x05, 0x02, 0x11
7415 : };
7416 : return complete_seq (expand_encoding, operands);
7417 : }
7418 :
7419 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10631 */
7420 : extern rtx_insn *gen_split_231 (rtx_insn *, rtx *);
7421 : rtx_insn *
7422 : gen_split_231 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7423 : {
7424 : if (dump_file)
7425 : fprintf (dump_file, "Splitting with gen_split_231 (i386.md:10631)\n");
7426 : start_sequence ();
7427 : #define FAIL return (end_sequence (), nullptr)
7428 : #define DONE return end_sequence ()
7429 : #line 10655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7430 : {
7431 : operands[2] = gen_int_mode (INTVAL (operands[2]) - 1,
7432 : DImode == DImode ? SImode : DImode);
7433 : }
7434 : #undef DONE
7435 : #undef FAIL
7436 : static const uint8_t expand_encoding[] = {
7437 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7438 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7439 : 0x00, 0x3b, 0x12, 0x3b, 0x12, 0x66, 0x12, 0x30,
7440 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x01, 0x01, 0x02,
7441 : 0x05, 0x02, 0x11
7442 : };
7443 : return complete_seq (expand_encoding, operands);
7444 : }
7445 :
7446 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10710 */
7447 : extern rtx_insn *gen_split_241 (rtx_insn *, rtx *);
7448 : rtx_insn *
7449 : gen_split_241 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7450 : {
7451 : if (dump_file)
7452 : fprintf (dump_file, "Splitting with gen_split_241 (i386.md:10710)\n");
7453 : start_sequence ();
7454 : #define FAIL return (end_sequence (), nullptr)
7455 : #define DONE return end_sequence ()
7456 : #line 10728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7457 : {
7458 : if (!nonimmediate_operand (operands[1], HImode))
7459 : operands[1] = force_reg (HImode, operands[1]);
7460 : }
7461 : #undef DONE
7462 : #undef FAIL
7463 : static const uint8_t expand_encoding[] = {
7464 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7465 : 0x02, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7466 : 0x00, 0x3b, 0x10, 0x3b, 0x10, 0x66, 0x10, 0x30,
7467 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x01, 0x27, 0x81,
7468 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7469 : 0x7f, 0x05, 0x02, 0x11
7470 : };
7471 : return complete_seq (expand_encoding, operands);
7472 : }
7473 :
7474 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10775 */
7475 : rtx
7476 : gen_ussubdi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7477 : {
7478 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7479 : start_sequence ();
7480 : {
7481 : #define FAIL return (end_sequence (), nullptr)
7482 : #define DONE return end_sequence ()
7483 : #line 10780 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7484 : {
7485 : rtx res = gen_reg_rtx (DImode);
7486 : rtx dst;
7487 :
7488 : emit_insn (gen_subdi_3 (res, operands[1], operands[2]));
7489 :
7490 : if (TARGET_CMOVE)
7491 : {
7492 : rtx cmp = gen_rtx_GEU (VOIDmode, gen_rtx_REG (CCCmode, FLAGS_REG),
7493 : const0_rtx);
7494 :
7495 : if (8 < GET_MODE_SIZE (SImode))
7496 : {
7497 : dst = force_reg (DImode, operands[0]);
7498 : emit_insn (gen_movsicc (gen_lowpart (SImode, dst), cmp,
7499 : gen_lowpart (SImode, res), const0_rtx));
7500 : }
7501 : else
7502 : {
7503 : dst = operands[0];
7504 : emit_insn (gen_movdicc (dst, cmp, res, const0_rtx));
7505 : }
7506 : }
7507 : else
7508 : {
7509 : rtx msk = gen_reg_rtx (DImode);
7510 :
7511 : emit_insn (gen_x86_movdicc_0_m1_neg (msk));
7512 : msk = expand_simple_unop (DImode, NOT, msk, NULL, 1);
7513 : dst = expand_simple_binop (DImode, AND, res, msk,
7514 : operands[0], 1, OPTAB_WIDEN);
7515 : }
7516 :
7517 : if (!rtx_equal_p (dst, operands[0]))
7518 : emit_move_insn (operands[0], dst);
7519 : DONE;
7520 : }
7521 : #undef DONE
7522 : #undef FAIL
7523 : }
7524 : static const uint8_t expand_encoding[] = {
7525 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x16, 0x12, 0x01,
7526 : 0x01, 0x01, 0x02
7527 : };
7528 : return complete_seq (expand_encoding, operands);
7529 : }
7530 :
7531 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10942 */
7532 : rtx
7533 : gen_subdf3 (const rtx operand0, const rtx operand1, const rtx operand2)
7534 : {
7535 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7536 : static const uint8_t expand_encoding[] = {
7537 : 0x1f, 0x01, 0x00, 0x3c, 0x2e, 0x01, 0x01, 0x01,
7538 : 0x02
7539 : };
7540 : return expand_rtx (expand_encoding, operands);
7541 : }
7542 :
7543 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11095 */
7544 : rtx
7545 : gen_mulvsi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7546 : {
7547 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7548 : start_sequence ();
7549 : {
7550 : #define FAIL return (end_sequence (), nullptr)
7551 : #define DONE return end_sequence ()
7552 : #line 11112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7553 : {
7554 : if (CONST_INT_P (operands[2]))
7555 : operands[4] = operands[2];
7556 : else
7557 : operands[4] = gen_rtx_SIGN_EXTEND (DImode, operands[2]);
7558 : }
7559 : #undef DONE
7560 : #undef FAIL
7561 : }
7562 : static const uint8_t expand_encoding[] = {
7563 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7564 : 0x5d, 0x09, 0x3e, 0x12, 0x6e, 0x12, 0x01, 0x01,
7565 : 0x01, 0x04, 0x6e, 0x12, 0x3e, 0x11, 0x01, 0x01,
7566 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x11, 0x01,
7567 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x5d,
7568 : 0x00, 0x30, 0x09, 0x11, 0x27, 0x00, 0x37, 0x00,
7569 : 0x01, 0x03, 0x2f
7570 : };
7571 : return complete_seq (expand_encoding, operands);
7572 : }
7573 :
7574 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11326 */
7575 : rtx
7576 : gen_umulqihi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7577 : {
7578 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7579 : static const uint8_t expand_encoding[] = {
7580 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x10,
7581 : 0x6f, 0x10, 0x01, 0x01, 0x6f, 0x10, 0x01, 0x02,
7582 : 0x05, 0x02, 0x11
7583 : };
7584 : return expand_rtx (expand_encoding, operands);
7585 : }
7586 :
7587 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11625 */
7588 : extern rtx_insn *gen_peephole2_135 (rtx_insn *, rtx *);
7589 : rtx_insn *
7590 : gen_peephole2_135 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7591 : {
7592 : if (dump_file)
7593 : fprintf (dump_file, "Splitting with gen_peephole2_135 (i386.md:11625)\n");
7594 : start_sequence ();
7595 : static const uint8_t expand_encoding[] = {
7596 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
7597 : 0x03, 0x1f, 0x01, 0x04, 0x42, 0x11, 0x01, 0x02,
7598 : 0x01, 0x03, 0x21, 0x00, 0x01, 0x02, 0x05, 0x02,
7599 : 0x11
7600 : };
7601 : return complete_seq (expand_encoding, operands);
7602 : }
7603 :
7604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11703 */
7605 : rtx
7606 : gen_divhf3 (const rtx operand0, const rtx operand1, const rtx operand2)
7607 : {
7608 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7609 : start_sequence ();
7610 : {
7611 : #define FAIL return (end_sequence (), nullptr)
7612 : #define DONE return end_sequence ()
7613 : #line 11708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7614 : {
7615 : if (TARGET_RECIP_DIV
7616 : && optimize_insn_for_speed_p ()
7617 : && flag_finite_math_only && !flag_trapping_math
7618 : && flag_unsafe_math_optimizations)
7619 : {
7620 : rtx op = gen_reg_rtx (HFmode);
7621 : operands[2] = force_reg (HFmode, operands[2]);
7622 : emit_insn (gen_rcphf2 (op, operands[2]));
7623 : emit_insn (gen_mulhf3 (operands[0], operands[1], op));
7624 : DONE;
7625 : }
7626 : }
7627 : #undef DONE
7628 : #undef FAIL
7629 : }
7630 : static const uint8_t expand_encoding[] = {
7631 : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x2b, 0x01, 0x01,
7632 : 0x01, 0x02
7633 : };
7634 : return complete_seq (expand_encoding, operands);
7635 : }
7636 :
7637 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11791 */
7638 : extern rtx_insn *gen_split_252 (rtx_insn *, rtx *);
7639 : rtx_insn *
7640 : gen_split_252 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7641 : {
7642 : if (dump_file)
7643 : fprintf (dump_file, "Splitting with gen_split_252 (i386.md:11791)\n");
7644 : start_sequence ();
7645 : #define FAIL return (end_sequence (), nullptr)
7646 : #define DONE return end_sequence ()
7647 : #line 11805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7648 : ix86_split_idivmod (SImode, operands, false); DONE;
7649 : #undef DONE
7650 : #undef FAIL
7651 : static const uint8_t expand_encoding[] = {
7652 : 0x01, 0x27, 0x00
7653 : };
7654 : return complete_seq (expand_encoding, operands);
7655 : }
7656 :
7657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11983 */
7658 : extern rtx_insn *gen_split_262 (rtx_insn *, rtx *);
7659 : rtx_insn *
7660 : gen_split_262 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7661 : {
7662 : if (dump_file)
7663 : fprintf (dump_file, "Splitting with gen_split_262 (i386.md:11983)\n");
7664 : start_sequence ();
7665 : #define FAIL return (end_sequence (), nullptr)
7666 : #define DONE return end_sequence ()
7667 : #line 12002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7668 : {
7669 : operands[5] = GEN_INT (GET_MODE_BITSIZE (HImode)-1);
7670 :
7671 : if (HImode != HImode
7672 : && (optimize_function_for_size_p (cfun) || TARGET_USE_CLTD))
7673 : operands[4] = operands[2];
7674 : else
7675 : {
7676 : /* Avoid use of cltd in favor of a mov+shift. */
7677 : emit_move_insn (operands[1], operands[2]);
7678 : operands[4] = operands[1];
7679 : }
7680 : }
7681 : #undef DONE
7682 : #undef FAIL
7683 : static const uint8_t expand_encoding[] = {
7684 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x4f,
7685 : 0x10, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11,
7686 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x43, 0x10,
7687 : 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x46,
7688 : 0x10, 0x01, 0x02, 0x01, 0x03, 0x20, 0x00, 0x01,
7689 : 0x01, 0x05, 0x02, 0x11
7690 : };
7691 : return complete_seq (expand_encoding, operands);
7692 : }
7693 :
7694 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12121 */
7695 : extern rtx_insn *gen_split_272 (rtx_insn *, rtx *);
7696 : rtx_insn *
7697 : gen_split_272 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7698 : {
7699 : if (dump_file)
7700 : fprintf (dump_file, "Splitting with gen_split_272 (i386.md:12121)\n");
7701 : start_sequence ();
7702 : #define FAIL return (end_sequence (), nullptr)
7703 : #define DONE return end_sequence ()
7704 : #line 12139 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7705 : {
7706 : int v = exact_log2 (UINTVAL (operands[3]));
7707 : operands[4] = GEN_INT (v);
7708 : operands[5] = GEN_INT ((HOST_WIDE_INT_1U << v) - 1);
7709 : }
7710 : #undef DONE
7711 : #undef FAIL
7712 : static const uint8_t expand_encoding[] = {
7713 : 0x03, 0x1f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
7714 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x50, 0x11,
7715 : 0x01, 0x02, 0x01, 0x04, 0x05, 0x02, 0x11, 0x17,
7716 : 0x00, 0x02, 0x1f, 0x01, 0x01, 0x49, 0x11, 0x01,
7717 : 0x01, 0x01, 0x05, 0x05, 0x02, 0x11
7718 : };
7719 : return complete_seq (expand_encoding, operands);
7720 : }
7721 :
7722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12524 */
7723 : rtx
7724 : gen_testqi_ext_1_ccno (const rtx operand0, const rtx operand1)
7725 : {
7726 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
7727 : static const uint8_t expand_encoding[] = {
7728 : 0x1f, 0x30, 0x05, 0x11, 0x3a, 0x05, 0x49, 0x0f,
7729 : 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
7730 : 0x08, 0x27, 0x08, 0x00, 0x01, 0x01, 0x27, 0x00
7731 : };
7732 : return expand_rtx (expand_encoding, operands);
7733 : }
7734 :
7735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12698 */
7736 : extern rtx_insn *gen_split_284 (rtx_insn *, rtx *);
7737 : rtx_insn *
7738 : gen_split_284 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7739 : {
7740 : if (dump_file)
7741 : fprintf (dump_file, "Splitting with gen_split_284 (i386.md:12698)\n");
7742 : start_sequence ();
7743 : #define FAIL return (end_sequence (), nullptr)
7744 : #define DONE return end_sequence ()
7745 : #line 12713 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7746 : operands[2] = gen_reg_rtx (DImode);
7747 : #undef DONE
7748 : #undef FAIL
7749 : static const uint8_t expand_encoding[] = {
7750 : 0x02, 0x1f, 0x01, 0x02, 0x4c, 0x12, 0x01, 0x00,
7751 : 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x49, 0x12,
7752 : 0x01, 0x02, 0x01, 0x01, 0x27, 0x00
7753 : };
7754 : return complete_seq (expand_encoding, operands);
7755 : }
7756 :
7757 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12794 */
7758 : extern rtx_insn *gen_peephole2_142 (rtx_insn *, rtx *);
7759 : rtx_insn *
7760 : gen_peephole2_142 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7761 : {
7762 : if (dump_file)
7763 : fprintf (dump_file, "Splitting with gen_peephole2_142 (i386.md:12794)\n");
7764 : start_sequence ();
7765 : #define FAIL return (end_sequence (), nullptr)
7766 : #define DONE return end_sequence ()
7767 : #line 12805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7768 : {
7769 : unsigned HOST_WIDE_INT ival = UINTVAL (operands[1]);
7770 : int first_nonzero_byte, bitsize;
7771 : rtx new_addr, new_const;
7772 : machine_mode new_mode;
7773 :
7774 : if (ival == 0)
7775 : FAIL;
7776 :
7777 : /* Clear bits outside mode width. */
7778 : ival &= GET_MODE_MASK (DImode);
7779 :
7780 : first_nonzero_byte = ctz_hwi (ival) / BITS_PER_UNIT;
7781 :
7782 : ival >>= first_nonzero_byte * BITS_PER_UNIT;
7783 :
7784 : bitsize = sizeof (ival) * BITS_PER_UNIT - clz_hwi (ival);
7785 :
7786 : if (bitsize <= GET_MODE_BITSIZE (QImode))
7787 : new_mode = QImode;
7788 : else if (bitsize <= GET_MODE_BITSIZE (HImode))
7789 : new_mode = HImode;
7790 : else if (bitsize <= GET_MODE_BITSIZE (SImode))
7791 : new_mode = SImode;
7792 : else
7793 : new_mode = DImode;
7794 :
7795 : if (GET_MODE_SIZE (new_mode) >= GET_MODE_SIZE (DImode))
7796 : FAIL;
7797 :
7798 : new_addr = adjust_address (operands[0], new_mode, first_nonzero_byte);
7799 : new_const = gen_int_mode (ival, new_mode);
7800 :
7801 : operands[2] = gen_rtx_AND (new_mode, new_addr, new_const);
7802 : }
7803 : #undef DONE
7804 : #undef FAIL
7805 : static const uint8_t expand_encoding[] = {
7806 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x01,
7807 : 0x02, 0x27, 0x00
7808 : };
7809 : return complete_seq (expand_encoding, operands);
7810 : }
7811 :
7812 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13125 */
7813 : extern rtx_insn *gen_split_293 (rtx_insn *, rtx *);
7814 : rtx_insn *
7815 : gen_split_293 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7816 : {
7817 : if (dump_file)
7818 : fprintf (dump_file, "Splitting with gen_split_293 (i386.md:13125)\n");
7819 : start_sequence ();
7820 : #define FAIL return (end_sequence (), nullptr)
7821 : #define DONE return end_sequence ()
7822 : #line 13142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7823 :
7824 : #undef DONE
7825 : #undef FAIL
7826 : static const uint8_t expand_encoding[] = {
7827 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7828 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7829 : 0x49, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
7830 : 0x11
7831 : };
7832 : return complete_seq (expand_encoding, operands);
7833 : }
7834 :
7835 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13147 */
7836 : extern rtx_insn *gen_split_299 (rtx_insn *, rtx *);
7837 : rtx_insn *
7838 : gen_split_299 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7839 : {
7840 : if (dump_file)
7841 : fprintf (dump_file, "Splitting with gen_split_299 (i386.md:13147)\n");
7842 : start_sequence ();
7843 : #define FAIL return (end_sequence (), nullptr)
7844 : #define DONE return end_sequence ()
7845 : #line 13170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7846 :
7847 : #undef DONE
7848 : #undef FAIL
7849 : static const uint8_t expand_encoding[] = {
7850 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7851 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7852 : 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
7853 : 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x00,
7854 : 0x05, 0x02, 0x11
7855 : };
7856 : return complete_seq (expand_encoding, operands);
7857 : }
7858 :
7859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13174 */
7860 : extern rtx_insn *gen_split_309 (rtx_insn *, rtx *);
7861 : rtx_insn *
7862 : gen_split_309 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7863 : {
7864 : if (dump_file)
7865 : fprintf (dump_file, "Splitting with gen_split_309 (i386.md:13174)\n");
7866 : start_sequence ();
7867 : #define FAIL return (end_sequence (), nullptr)
7868 : #define DONE return end_sequence ()
7869 : #line 13199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7870 :
7871 : #undef DONE
7872 : #undef FAIL
7873 : static const uint8_t expand_encoding[] = {
7874 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
7875 : 0x81, 0x06, 0x10, 0x01, 0x02, 0x27, 0x08, 0x27,
7876 : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
7877 : 0x01, 0x00, 0x4a, 0x0f, 0x32, 0x0f, 0x81, 0x06,
7878 : 0x10, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
7879 : 0x01, 0x00, 0x05, 0x02, 0x11
7880 : };
7881 : return complete_seq (expand_encoding, operands);
7882 : }
7883 :
7884 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13203 */
7885 : extern rtx_insn *gen_split_319 (rtx_insn *, rtx *);
7886 : rtx_insn *
7887 : gen_split_319 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7888 : {
7889 : if (dump_file)
7890 : fprintf (dump_file, "Splitting with gen_split_319 (i386.md:13203)\n");
7891 : start_sequence ();
7892 : #define FAIL return (end_sequence (), nullptr)
7893 : #define DONE return end_sequence ()
7894 : #line 13215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7895 : {
7896 : unsigned HOST_WIDE_INT ival = UINTVAL (operands[2]);
7897 : machine_mode mode;
7898 :
7899 : if (ival == GET_MODE_MASK (SImode))
7900 : mode = SImode;
7901 : else if (ival == GET_MODE_MASK (HImode))
7902 : mode = HImode;
7903 : else if (ival == GET_MODE_MASK (QImode))
7904 : mode = QImode;
7905 : else
7906 : gcc_unreachable ();
7907 :
7908 : /* Zero extend to SImode to avoid partial register stalls. */
7909 : if (8 < GET_MODE_SIZE (SImode))
7910 : operands[0] = gen_lowpart (SImode, operands[0]);
7911 :
7912 : emit_insn (gen_extend_insn
7913 : (operands[0], gen_lowpart (mode, operands[1]),
7914 : GET_MODE (operands[0]), mode, 1));
7915 : DONE;
7916 : }
7917 : #undef DONE
7918 : #undef FAIL
7919 : static const uint8_t expand_encoding[] = {
7920 : 0x01, 0x27, 0x00
7921 : };
7922 : return complete_seq (expand_encoding, operands);
7923 : }
7924 :
7925 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13409 */
7926 : extern rtx_insn *gen_split_334 (rtx_insn *, rtx *);
7927 : rtx_insn *
7928 : gen_split_334 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7929 : {
7930 : if (dump_file)
7931 : fprintf (dump_file, "Splitting with gen_split_334 (i386.md:13409)\n");
7932 : start_sequence ();
7933 : #define FAIL return (end_sequence (), nullptr)
7934 : #define DONE return end_sequence ()
7935 : #line 13434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7936 :
7937 : #undef DONE
7938 : #undef FAIL
7939 : static const uint8_t expand_encoding[] = {
7940 : 0x02, 0x1f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
7941 : 0x12, 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00,
7942 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x0f,
7943 : 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27,
7944 : 0x08, 0x27, 0x08, 0x00, 0x01, 0x00, 0x05, 0x02,
7945 : 0x11
7946 : };
7947 : return complete_seq (expand_encoding, operands);
7948 : }
7949 :
7950 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13453 */
7951 : extern rtx_insn *gen_split_343 (rtx_insn *, rtx *);
7952 : rtx_insn *
7953 : gen_split_343 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7954 : {
7955 : if (dump_file)
7956 : fprintf (dump_file, "Splitting with gen_split_343 (i386.md:13453)\n");
7957 : start_sequence ();
7958 : #define FAIL return (end_sequence (), nullptr)
7959 : #define DONE return end_sequence ()
7960 : #line 13485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7961 :
7962 : #undef DONE
7963 : #undef FAIL
7964 : static const uint8_t expand_encoding[] = {
7965 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
7966 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
7967 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7968 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
7969 : 0x08, 0x32, 0x12, 0x49, 0x0f, 0x32, 0x0f, 0x81,
7970 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7971 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7972 : };
7973 : return complete_seq (expand_encoding, operands);
7974 : }
7975 :
7976 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13491 */
7977 : extern rtx_insn *gen_split_353 (rtx_insn *, rtx *);
7978 : rtx_insn *
7979 : gen_split_353 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7980 : {
7981 : if (dump_file)
7982 : fprintf (dump_file, "Splitting with gen_split_353 (i386.md:13491)\n");
7983 : start_sequence ();
7984 : #define FAIL return (end_sequence (), nullptr)
7985 : #define DONE return end_sequence ()
7986 : #line 13537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7987 :
7988 : #undef DONE
7989 : #undef FAIL
7990 : static const uint8_t expand_encoding[] = {
7991 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
7992 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
7993 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7994 : 0x01, 0x04, 0x02, 0x05, 0x4a, 0x0f, 0x32, 0x0f,
7995 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
7996 : 0x08, 0x00, 0x01, 0x02, 0x27, 0x00, 0x1f, 0x81,
7997 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7998 : 0x32, 0x12, 0x4a, 0x0f, 0x32, 0x0f, 0x81, 0x06,
7999 : 0x12, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
8000 : 0x01, 0x02, 0x00
8001 : };
8002 : return complete_seq (expand_encoding, operands);
8003 : }
8004 :
8005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13543 */
8006 : extern rtx_insn *gen_split_363 (rtx_insn *, rtx *);
8007 : rtx_insn *
8008 : gen_split_363 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8009 : {
8010 : if (dump_file)
8011 : fprintf (dump_file, "Splitting with gen_split_363 (i386.md:13543)\n");
8012 : start_sequence ();
8013 : #define FAIL return (end_sequence (), nullptr)
8014 : #define DONE return end_sequence ()
8015 : #line 13580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8016 :
8017 : #undef DONE
8018 : #undef FAIL
8019 : static const uint8_t expand_encoding[] = {
8020 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8021 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8022 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8023 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8024 : 0x08, 0x32, 0x12, 0x4b, 0x0f, 0x32, 0x0f, 0x81,
8025 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8026 : 0x00, 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x02,
8027 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x00, 0x05, 0x02,
8028 : 0x11
8029 : };
8030 : return complete_seq (expand_encoding, operands);
8031 : }
8032 :
8033 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13623 */
8034 : extern rtx_insn *gen_split_373 (rtx_insn *, rtx *);
8035 : rtx_insn *
8036 : gen_split_373 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8037 : {
8038 : if (dump_file)
8039 : fprintf (dump_file, "Splitting with gen_split_373 (i386.md:13623)\n");
8040 : start_sequence ();
8041 : #define FAIL return (end_sequence (), nullptr)
8042 : #define DONE return end_sequence ()
8043 : #line 13644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8044 : {
8045 : operands[0] = gen_lowpart (HImode, operands[0]);
8046 : operands[1] = gen_lowpart (HImode, operands[1]);
8047 : operands[2] = gen_int_mode (INTVAL (operands[2]) >> 8, QImode);
8048 : }
8049 : #undef DONE
8050 : #undef FAIL
8051 : static const uint8_t expand_encoding[] = {
8052 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
8053 : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
8054 : 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
8055 : 0x01, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02,
8056 : 0x00, 0x05, 0x02, 0x11
8057 : };
8058 : return complete_seq (expand_encoding, operands);
8059 : }
8060 :
8061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13760 */
8062 : extern rtx_insn *gen_split_383 (rtx_insn *, rtx *);
8063 : rtx_insn *
8064 : gen_split_383 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8065 : {
8066 : if (dump_file)
8067 : fprintf (dump_file, "Splitting with gen_split_383 (i386.md:13760)\n");
8068 : start_sequence ();
8069 : static const uint8_t expand_encoding[] = {
8070 : 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x11, 0x01, 0x01,
8071 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x11,
8072 : 0x01, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
8073 : };
8074 : return complete_seq (expand_encoding, operands);
8075 : }
8076 :
8077 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13813 */
8078 : extern rtx_insn *gen_split_387 (rtx_insn *, rtx *);
8079 : rtx_insn *
8080 : gen_split_387 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8081 : {
8082 : if (dump_file)
8083 : fprintf (dump_file, "Splitting with gen_split_387 (i386.md:13813)\n");
8084 : start_sequence ();
8085 : #define FAIL return (end_sequence (), nullptr)
8086 : #define DONE return end_sequence ()
8087 : #line 13829 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8088 : operands[4] = gen_reg_rtx (SImode);
8089 : #undef DONE
8090 : #undef FAIL
8091 : static const uint8_t expand_encoding[] = {
8092 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8093 : 0x11, 0x4c, 0x11, 0x01, 0x02, 0x01, 0x01, 0x05,
8094 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
8095 : 0x4b, 0x11, 0x01, 0x04, 0x01, 0x03, 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:13874 */
8102 : rtx
8103 : gen_iorsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8104 : {
8105 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8106 : start_sequence ();
8107 : {
8108 : #define FAIL return (end_sequence (), nullptr)
8109 : #define DONE return end_sequence ()
8110 : #line 13879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8111 : {
8112 : if (GET_MODE_SIZE (SImode) > UNITS_PER_WORD
8113 : && !x86_64_hilo_general_operand (operands[2], SImode))
8114 : operands[2] = force_reg (SImode, operands[2]);
8115 :
8116 : ix86_expand_binary_operator (IOR, SImode, operands, TARGET_APX_NDD);
8117 : DONE;
8118 : }
8119 : #undef DONE
8120 : #undef FAIL
8121 : }
8122 : static const uint8_t expand_encoding[] = {
8123 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x01, 0x01,
8124 : 0x01, 0x02
8125 : };
8126 : return complete_seq (expand_encoding, operands);
8127 : }
8128 :
8129 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13967 */
8130 : extern rtx_insn *gen_split_397 (rtx_insn *, rtx *);
8131 : rtx_insn *
8132 : gen_split_397 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8133 : {
8134 : if (dump_file)
8135 : fprintf (dump_file, "Splitting with gen_split_397 (i386.md:13967)\n");
8136 : start_sequence ();
8137 : #define FAIL return (end_sequence (), nullptr)
8138 : #define DONE return end_sequence ()
8139 : #line 13983 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8140 : {
8141 : if (MASK_REG_P (operands[0]))
8142 : {
8143 : emit_insn (gen_kxnorhi (operands[0], operands[1], operands[2]));
8144 : DONE;
8145 : }
8146 : }
8147 : #undef DONE
8148 : #undef FAIL
8149 : static const uint8_t expand_encoding[] = {
8150 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
8151 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11,
8152 : 0x1f, 0x01, 0x00, 0x4c, 0x10, 0x01, 0x00
8153 : };
8154 : return complete_seq (expand_encoding, operands);
8155 : }
8156 :
8157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14043 */
8158 : extern rtx_insn *gen_split_404 (rtx_insn *, rtx *);
8159 : rtx_insn *
8160 : gen_split_404 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8161 : {
8162 : if (dump_file)
8163 : fprintf (dump_file, "Splitting with gen_split_404 (i386.md:14043)\n");
8164 : start_sequence ();
8165 : #define FAIL return (end_sequence (), nullptr)
8166 : #define DONE return end_sequence ()
8167 : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8168 : {
8169 : operands[1] = force_reg (DImode, operands[1]);
8170 : operands[3] = force_reg (DImode, operands[3]);
8171 : operands[4] = gen_reg_rtx (DImode);
8172 : operands[5] = gen_reg_rtx (DImode);
8173 : }
8174 : #undef DONE
8175 : #undef FAIL
8176 : static const uint8_t expand_encoding[] = {
8177 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8178 : 0x12, 0x4c, 0x12, 0x01, 0x03, 0x01, 0x01, 0x05,
8179 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05,
8180 : 0x49, 0x12, 0x01, 0x03, 0x01, 0x02, 0x05, 0x02,
8181 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
8182 : 0x12, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11
8183 : };
8184 : return complete_seq (expand_encoding, operands);
8185 : }
8186 :
8187 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14222 */
8188 : extern rtx_insn *gen_split_418 (rtx_insn *, rtx *);
8189 : rtx_insn *
8190 : gen_split_418 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8191 : {
8192 : if (dump_file)
8193 : fprintf (dump_file, "Splitting with gen_split_418 (i386.md:14222)\n");
8194 : start_sequence ();
8195 : #define FAIL return (end_sequence (), nullptr)
8196 : #define DONE return end_sequence ()
8197 : #line 14230 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8198 : operands[3] = gen_reg_rtx (DImode);
8199 : #undef DONE
8200 : #undef FAIL
8201 : static const uint8_t expand_encoding[] = {
8202 : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x12, 0x01, 0x01,
8203 : 0x1f, 0x01, 0x00, 0x49, 0x12, 0x01, 0x03, 0x01,
8204 : 0x02
8205 : };
8206 : return complete_seq (expand_encoding, operands);
8207 : }
8208 :
8209 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14332 */
8210 : extern rtx_insn *gen_split_428 (rtx_insn *, rtx *);
8211 : rtx_insn *
8212 : gen_split_428 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8213 : {
8214 : if (dump_file)
8215 : fprintf (dump_file, "Splitting with gen_split_428 (i386.md:14332)\n");
8216 : start_sequence ();
8217 : #define FAIL return (end_sequence (), nullptr)
8218 : #define DONE return end_sequence ()
8219 : #line 14353 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8220 : {
8221 : /* Handle the case where INTVAL (operands[2]) == 0. */
8222 : if (operands[2] == const0_rtx)
8223 : {
8224 : if (!rtx_equal_p (operands[0], operands[1]))
8225 : emit_move_insn (operands[0], operands[1]);
8226 : else
8227 : emit_note (NOTE_INSN_DELETED);
8228 : DONE;
8229 : }
8230 : operands[0] = gen_lowpart (HImode, operands[0]);
8231 : operands[1] = gen_lowpart (HImode, operands[1]);
8232 : operands[2] = gen_int_mode (INTVAL (operands[2]) >> 8, QImode);
8233 : }
8234 : #undef DONE
8235 : #undef FAIL
8236 : static const uint8_t expand_encoding[] = {
8237 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
8238 : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
8239 : 0x4a, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
8240 : 0x01, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02,
8241 : 0x00, 0x05, 0x02, 0x11
8242 : };
8243 : return complete_seq (expand_encoding, operands);
8244 : }
8245 :
8246 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14414 */
8247 : extern rtx_insn *gen_peephole2_147 (rtx_insn *, rtx *);
8248 : rtx_insn *
8249 : gen_peephole2_147 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8250 : {
8251 : if (dump_file)
8252 : fprintf (dump_file, "Splitting with gen_peephole2_147 (i386.md:14414)\n");
8253 : start_sequence ();
8254 : static const uint8_t expand_encoding[] = {
8255 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8256 : };
8257 : return complete_seq (expand_encoding, operands);
8258 : }
8259 :
8260 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14414 */
8261 : extern rtx_insn *gen_peephole2_154 (rtx_insn *, rtx *);
8262 : rtx_insn *
8263 : gen_peephole2_154 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8264 : {
8265 : if (dump_file)
8266 : fprintf (dump_file, "Splitting with gen_peephole2_154 (i386.md:14414)\n");
8267 : start_sequence ();
8268 : static const uint8_t expand_encoding[] = {
8269 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8270 : };
8271 : return complete_seq (expand_encoding, operands);
8272 : }
8273 :
8274 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14426 */
8275 : extern rtx_insn *gen_peephole2_164 (rtx_insn *, rtx *);
8276 : rtx_insn *
8277 : gen_peephole2_164 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8278 : {
8279 : if (dump_file)
8280 : fprintf (dump_file, "Splitting with gen_peephole2_164 (i386.md:14426)\n");
8281 : start_sequence ();
8282 : static const uint8_t expand_encoding[] = {
8283 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
8284 : 0x00, 0x05, 0x02, 0x11
8285 : };
8286 : return complete_seq (expand_encoding, operands);
8287 : }
8288 :
8289 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14455 */
8290 : extern rtx_insn *gen_split_443 (rtx_insn *, rtx *);
8291 : rtx_insn *
8292 : gen_split_443 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8293 : {
8294 : if (dump_file)
8295 : fprintf (dump_file, "Splitting with gen_split_443 (i386.md:14455)\n");
8296 : start_sequence ();
8297 : #define FAIL return (end_sequence (), nullptr)
8298 : #define DONE return end_sequence ()
8299 : #line 14466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8300 : {
8301 : split_double_concat (DImode, operands[0], operands[1],
8302 : gen_lowpart (SImode, operands[2]));
8303 : DONE;
8304 : }
8305 : #undef DONE
8306 : #undef FAIL
8307 : static const uint8_t expand_encoding[] = {
8308 : 0x01, 0x27, 0x00
8309 : };
8310 : return complete_seq (expand_encoding, operands);
8311 : }
8312 :
8313 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14472 */
8314 : extern rtx_insn *gen_split_453 (rtx_insn *, rtx *);
8315 : rtx_insn *
8316 : gen_split_453 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8317 : {
8318 : if (dump_file)
8319 : fprintf (dump_file, "Splitting with gen_split_453 (i386.md:14472)\n");
8320 : start_sequence ();
8321 : #define FAIL return (end_sequence (), nullptr)
8322 : #define DONE return end_sequence ()
8323 : #line 14485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8324 : {
8325 : if (SSE_REG_P (operands[0]))
8326 : {
8327 : rtx tmp = gen_rtx_REG (V2DImode, REGNO (operands[0]));
8328 : emit_insn (gen_vec_concatv2di (tmp, operands[3], operands[1]));
8329 : }
8330 : else
8331 : split_double_concat (DImode, operands[0], operands[3], operands[1]);
8332 : DONE;
8333 : }
8334 : #undef DONE
8335 : #undef FAIL
8336 : static const uint8_t expand_encoding[] = {
8337 : 0x01, 0x27, 0x00
8338 : };
8339 : return complete_seq (expand_encoding, operands);
8340 : }
8341 :
8342 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14497 */
8343 : extern rtx_insn *gen_split_463 (rtx_insn *, rtx *);
8344 : rtx_insn *
8345 : gen_split_463 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8346 : {
8347 : if (dump_file)
8348 : fprintf (dump_file, "Splitting with gen_split_463 (i386.md:14497)\n");
8349 : start_sequence ();
8350 : #define FAIL return (end_sequence (), nullptr)
8351 : #define DONE return end_sequence ()
8352 : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8353 : {
8354 : split_double_concat (DImode, operands[0], operands[1], operands[2]);
8355 : DONE;
8356 : }
8357 : #undef DONE
8358 : #undef FAIL
8359 : static const uint8_t expand_encoding[] = {
8360 : 0x01, 0x27, 0x00
8361 : };
8362 : return complete_seq (expand_encoding, operands);
8363 : }
8364 :
8365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14516 */
8366 : extern rtx_insn *gen_split_472 (rtx_insn *, rtx *);
8367 : rtx_insn *
8368 : gen_split_472 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8369 : {
8370 : if (dump_file)
8371 : fprintf (dump_file, "Splitting with gen_split_472 (i386.md:14516)\n");
8372 : start_sequence ();
8373 : #define FAIL return (end_sequence (), nullptr)
8374 : #define DONE return end_sequence ()
8375 : #line 14538 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8376 : {
8377 : rtx op3 = simplify_subreg (SImode, operands[3], DImode, 0);
8378 : split_double_concat (DImode, operands[0], op3,
8379 : gen_lowpart (SImode, operands[1]));
8380 : DONE;
8381 : }
8382 : #undef DONE
8383 : #undef FAIL
8384 : static const uint8_t expand_encoding[] = {
8385 : 0x01, 0x27, 0x00
8386 : };
8387 : return complete_seq (expand_encoding, operands);
8388 : }
8389 :
8390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14546 */
8391 : extern rtx_insn *gen_split_482 (rtx_insn *, rtx *);
8392 : rtx_insn *
8393 : gen_split_482 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8394 : {
8395 : if (dump_file)
8396 : fprintf (dump_file, "Splitting with gen_split_482 (i386.md:14546)\n");
8397 : start_sequence ();
8398 : #define FAIL return (end_sequence (), nullptr)
8399 : #define DONE return end_sequence ()
8400 : #line 14570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8401 : {
8402 : rtx op3 = simplify_subreg (SImode, operands[3], DImode, 0);
8403 : split_double_concat (DImode, operands[0], op3, operands[1]);
8404 : DONE;
8405 : }
8406 : #undef DONE
8407 : #undef FAIL
8408 : static const uint8_t expand_encoding[] = {
8409 : 0x01, 0x27, 0x00
8410 : };
8411 : return complete_seq (expand_encoding, operands);
8412 : }
8413 :
8414 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14577 */
8415 : extern rtx_insn *gen_split_492 (rtx_insn *, rtx *);
8416 : rtx_insn *
8417 : gen_split_492 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8418 : {
8419 : if (dump_file)
8420 : fprintf (dump_file, "Splitting with gen_split_492 (i386.md:14577)\n");
8421 : start_sequence ();
8422 : #define FAIL return (end_sequence (), nullptr)
8423 : #define DONE return end_sequence ()
8424 : #line 14596 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8425 : {
8426 : rtx op2;
8427 : if (DImode == DImode)
8428 : op2 = gen_int_mode (INTVAL (operands[2]) >> 32, SImode);
8429 : else
8430 : op2 = gen_int_mode (CONST_WIDE_INT_ELT (operands[2], 1), SImode);
8431 : split_double_concat (DImode, operands[0], operands[1], op2);
8432 : DONE;
8433 : }
8434 : #undef DONE
8435 : #undef FAIL
8436 : static const uint8_t expand_encoding[] = {
8437 : 0x01, 0x27, 0x00
8438 : };
8439 : return complete_seq (expand_encoding, operands);
8440 : }
8441 :
8442 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14618 */
8443 : extern rtx_insn *gen_split_497 (rtx_insn *, rtx *);
8444 : rtx_insn *
8445 : gen_split_497 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8446 : {
8447 : if (dump_file)
8448 : fprintf (dump_file, "Splitting with gen_split_497 (i386.md:14618)\n");
8449 : start_sequence ();
8450 : #define FAIL return (end_sequence (), nullptr)
8451 : #define DONE return end_sequence ()
8452 : #line 14639 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8453 : split_double_mode (TImode, &operands[0], 2, &operands[0], &operands[2]);
8454 : #undef DONE
8455 : #undef FAIL
8456 : static const uint8_t expand_encoding[] = {
8457 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
8458 : 0x1a, 0x08, 0x02, 0x01, 0x01, 0x27, 0x00, 0x29,
8459 : 0x1f, 0x01, 0x00, 0x3d, 0x12, 0x01, 0x01, 0x17,
8460 : 0x00, 0x02, 0x1f, 0x01, 0x02, 0x3b, 0x12, 0x3b,
8461 : 0x12, 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00,
8462 : 0x01, 0x03, 0x27, 0x00, 0x05, 0x02, 0x11, 0x17,
8463 : 0x00, 0x02, 0x1f, 0x01, 0x02, 0x3d, 0x12, 0x01,
8464 : 0x02, 0x05, 0x02, 0x11
8465 : };
8466 : return complete_seq (expand_encoding, operands);
8467 : }
8468 :
8469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14933 */
8470 : extern rtx_insn *gen_peephole2_171 (rtx_insn *, rtx *);
8471 : rtx_insn *
8472 : gen_peephole2_171 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8473 : {
8474 : if (dump_file)
8475 : fprintf (dump_file, "Splitting with gen_peephole2_171 (i386.md:14933)\n");
8476 : start_sequence ();
8477 : static const uint8_t expand_encoding[] = {
8478 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
8479 : 0x02, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x3d,
8480 : 0x0f, 0x01, 0x00, 0x27, 0x00, 0x1f, 0x01, 0x00,
8481 : 0x3d, 0x0f, 0x01, 0x00
8482 : };
8483 : return complete_seq (expand_encoding, operands);
8484 : }
8485 :
8486 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14933 */
8487 : extern rtx_insn *gen_peephole2_174 (rtx_insn *, rtx *);
8488 : rtx_insn *
8489 : gen_peephole2_174 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8490 : {
8491 : if (dump_file)
8492 : fprintf (dump_file, "Splitting with gen_peephole2_174 (i386.md:14933)\n");
8493 : start_sequence ();
8494 : static const uint8_t expand_encoding[] = {
8495 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
8496 : 0x02, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x3d,
8497 : 0x12, 0x01, 0x00, 0x27, 0x00, 0x1f, 0x01, 0x00,
8498 : 0x3d, 0x12, 0x01, 0x00
8499 : };
8500 : return complete_seq (expand_encoding, operands);
8501 : }
8502 :
8503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15032 */
8504 : extern rtx_insn *gen_split_505 (rtx_insn *, rtx *);
8505 : rtx_insn *
8506 : gen_split_505 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8507 : {
8508 : if (dump_file)
8509 : fprintf (dump_file, "Splitting with gen_split_505 (i386.md:15032)\n");
8510 : start_sequence ();
8511 : #define FAIL return (end_sequence (), nullptr)
8512 : #define DONE return end_sequence ()
8513 : #line 15069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8514 : {
8515 : operands[1] = force_reg (DImode, operands[1]);
8516 : operands[2] = gen_reg_rtx (DImode);
8517 :
8518 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
8519 : }
8520 : #undef DONE
8521 : #undef FAIL
8522 : static const uint8_t expand_encoding[] = {
8523 : 0x05, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
8524 : 0x1a, 0x08, 0x02, 0x01, 0x01, 0x27, 0x00, 0x29,
8525 : 0x1f, 0x01, 0x02, 0x3d, 0x11, 0x01, 0x01, 0x17,
8526 : 0x00, 0x02, 0x1f, 0x01, 0x05, 0x3b, 0x11, 0x3b,
8527 : 0x11, 0x66, 0x11, 0x30, 0x02, 0x11, 0x27, 0x00,
8528 : 0x01, 0x04, 0x27, 0x00, 0x05, 0x02, 0x11, 0x17,
8529 : 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11, 0x3a, 0x04,
8530 : 0x3d, 0x11, 0x01, 0x05, 0x27, 0x00, 0x1f, 0x01,
8531 : 0x05, 0x3d, 0x11, 0x01, 0x05, 0x1f, 0x01, 0x00,
8532 : 0x39, 0x11, 0x61, 0x00, 0x30, 0x04, 0x11, 0x27,
8533 : 0x00, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01, 0x03,
8534 : 0x39, 0x11, 0x61, 0x00, 0x30, 0x04, 0x11, 0x27,
8535 : 0x00, 0x01, 0x05, 0x01, 0x04
8536 : };
8537 : return complete_seq (expand_encoding, operands);
8538 : }
8539 :
8540 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15131 */
8541 : rtx
8542 : gen_negtf2 (const rtx operand0, const rtx operand1)
8543 : {
8544 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8545 : start_sequence ();
8546 : {
8547 : #define FAIL return (end_sequence (), nullptr)
8548 : #define DONE return end_sequence ()
8549 : #line 15135 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8550 : ix86_expand_fp_absneg_operator (NEG, TFmode, operands); DONE;
8551 : #undef DONE
8552 : #undef FAIL
8553 : }
8554 : static const uint8_t expand_encoding[] = {
8555 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x30, 0x01, 0x01
8556 : };
8557 : return complete_seq (expand_encoding, operands);
8558 : }
8559 :
8560 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15192 */
8561 : rtx
8562 : gen_negdf2 (const rtx operand0, const rtx operand1)
8563 : {
8564 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8565 : start_sequence ();
8566 : {
8567 : #define FAIL return (end_sequence (), nullptr)
8568 : #define DONE return end_sequence ()
8569 : #line 15196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8570 : ix86_expand_fp_absneg_operator (NEG, DFmode, operands); DONE;
8571 : #undef DONE
8572 : #undef FAIL
8573 : }
8574 : static const uint8_t expand_encoding[] = {
8575 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x2e, 0x01, 0x01
8576 : };
8577 : return complete_seq (expand_encoding, operands);
8578 : }
8579 :
8580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15207 */
8581 : extern rtx_insn *gen_split_523 (rtx_insn *, rtx *);
8582 : rtx_insn *
8583 : gen_split_523 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8584 : {
8585 : if (dump_file)
8586 : fprintf (dump_file, "Splitting with gen_split_523 (i386.md:15207)\n");
8587 : start_sequence ();
8588 : static const uint8_t expand_encoding[] = {
8589 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x2f, 0x01, 0x01
8590 : };
8591 : return complete_seq (expand_encoding, operands);
8592 : }
8593 :
8594 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15259 */
8595 : extern rtx_insn *gen_split_533 (rtx_insn *, rtx *);
8596 : rtx_insn *
8597 : gen_split_533 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8598 : {
8599 : if (dump_file)
8600 : fprintf (dump_file, "Splitting with gen_split_533 (i386.md:15259)\n");
8601 : start_sequence ();
8602 : #define FAIL return (end_sequence (), nullptr)
8603 : #define DONE return end_sequence ()
8604 : #line 15269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8605 : {
8606 : machine_mode mode = SFmode;
8607 : machine_mode vmode = V4SFmode;
8608 :
8609 : operands[0] = lowpart_subreg (vmode, operands[0], mode);
8610 : operands[1] = lowpart_subreg (vmode, operands[1], mode);
8611 :
8612 : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
8613 : std::swap (operands[1], operands[2]);
8614 : }
8615 : #undef DONE
8616 : #undef FAIL
8617 : static const uint8_t expand_encoding[] = {
8618 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6b, 0x01, 0x01,
8619 : 0x01, 0x02
8620 : };
8621 : return complete_seq (expand_encoding, operands);
8622 : }
8623 :
8624 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15288 */
8625 : extern rtx_insn *gen_split_543 (rtx_insn *, rtx *);
8626 : rtx_insn *
8627 : gen_split_543 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8628 : {
8629 : if (dump_file)
8630 : fprintf (dump_file, "Splitting with gen_split_543 (i386.md:15288)\n");
8631 : start_sequence ();
8632 : #define FAIL return (end_sequence (), nullptr)
8633 : #define DONE return end_sequence ()
8634 : #line 15295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8635 : ix86_split_fp_absneg_operator (NEG, DFmode, operands); DONE;
8636 : #undef DONE
8637 : #undef FAIL
8638 : static const uint8_t expand_encoding[] = {
8639 : 0x01, 0x27, 0x00
8640 : };
8641 : return complete_seq (expand_encoding, operands);
8642 : }
8643 :
8644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15358 */
8645 : rtx
8646 : gen_one_cmplqi2 (const rtx operand0, const rtx operand1)
8647 : {
8648 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8649 : start_sequence ();
8650 : {
8651 : #define FAIL return (end_sequence (), nullptr)
8652 : #define DONE return end_sequence ()
8653 : #line 15362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8654 : {
8655 : ix86_expand_unary_operator (NOT, QImode, operands, TARGET_APX_NDD);
8656 : DONE;
8657 : }
8658 : #undef DONE
8659 : #undef FAIL
8660 : }
8661 : static const uint8_t expand_encoding[] = {
8662 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x0f, 0x01, 0x01
8663 : };
8664 : return complete_seq (expand_encoding, operands);
8665 : }
8666 :
8667 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15479 */
8668 : extern rtx_insn *gen_split_550 (rtx_insn *, rtx *);
8669 : rtx_insn *
8670 : gen_split_550 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8671 : {
8672 : if (dump_file)
8673 : fprintf (dump_file, "Splitting with gen_split_550 (i386.md:15479)\n");
8674 : start_sequence ();
8675 : static const uint8_t expand_encoding[] = {
8676 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
8677 : 0x02, 0x4b, 0x0f, 0x01, 0x03, 0x27, 0x81, 0xff,
8678 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f,
8679 : 0x27, 0x00, 0x1f, 0x01, 0x01, 0x4b, 0x0f, 0x01,
8680 : 0x03, 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff,
8681 : 0xff, 0xff, 0xff, 0x7f
8682 : };
8683 : return complete_seq (expand_encoding, operands);
8684 : }
8685 :
8686 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15571 */
8687 : rtx
8688 : gen_ashlsi3 (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 return (end_sequence (), nullptr)
8694 : #define DONE return end_sequence ()
8695 : #line 15576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8696 : {
8697 : ix86_expand_binary_operator (ASHIFT, SImode, operands, TARGET_APX_NDD);
8698 : DONE;
8699 : }
8700 : #undef DONE
8701 : #undef FAIL
8702 : }
8703 : static const uint8_t expand_encoding[] = {
8704 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x11, 0x01, 0x01,
8705 : 0x01, 0x02
8706 : };
8707 : return complete_seq (expand_encoding, operands);
8708 : }
8709 :
8710 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15726 */
8711 : extern rtx_insn *gen_peephole2_180 (rtx_insn *, rtx *);
8712 : rtx_insn *
8713 : gen_peephole2_180 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8714 : {
8715 : HARD_REG_SET _regs_allocated;
8716 : CLEAR_HARD_REG_SET (_regs_allocated);
8717 : if ((operands[3] = peep2_find_free_register (0, 1, "r", DImode, &_regs_allocated)) == NULL_RTX)
8718 : return NULL;
8719 : if (dump_file)
8720 : fprintf (dump_file, "Splitting with gen_peephole2_180 (i386.md:15726)\n");
8721 : start_sequence ();
8722 : #define FAIL return (end_sequence (), nullptr)
8723 : #define DONE return end_sequence ()
8724 : #line 15736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8725 : {
8726 : if (TARGET_APX_NDD
8727 : && !rtx_equal_p (operands[0], operands[1])
8728 : && (REG_P (operands[1])))
8729 : ix86_split_ashl_ndd (operands, operands[3]);
8730 : else
8731 : ix86_split_ashl (operands, operands[3], TImode);
8732 : DONE;
8733 : }
8734 : #undef DONE
8735 : #undef FAIL
8736 : static const uint8_t expand_encoding[] = {
8737 : 0x01, 0x27, 0x00
8738 : };
8739 : return complete_seq (expand_encoding, operands);
8740 : }
8741 :
8742 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15910 */
8743 : extern rtx_insn *gen_split_569 (rtx_insn *, rtx *);
8744 : rtx_insn *
8745 : gen_split_569 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8746 : {
8747 : if (dump_file)
8748 : fprintf (dump_file, "Splitting with gen_split_569 (i386.md:15910)\n");
8749 : start_sequence ();
8750 : #define FAIL return (end_sequence (), nullptr)
8751 : #define DONE return end_sequence ()
8752 : #line 15924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8753 : {
8754 : if (rtx_equal_p (operands[4], operands[0]))
8755 : {
8756 : operands[1] = force_reg (DImode, operands[1]);
8757 : emit_insn (gen_x86_64_shld_1 (operands[0], operands[1], operands[2], operands[3]));
8758 : }
8759 : else if (rtx_equal_p (operands[1], operands[0]))
8760 : {
8761 : operands[4] = force_reg (DImode, operands[4]);
8762 : emit_insn (gen_x86_64_shrd_1 (operands[0], operands[4], operands[3], operands[2]));
8763 : }
8764 : else if (TARGET_APX_NDD)
8765 : {
8766 : rtx tmp = gen_reg_rtx (DImode);
8767 : if (MEM_P (operands[4]))
8768 : {
8769 : operands[1] = force_reg (DImode, operands[1]);
8770 : emit_insn (gen_x86_64_shld_ndd_1 (tmp, operands[4], operands[1],
8771 : operands[2], operands[3]));
8772 : }
8773 : else if (MEM_P (operands[1]))
8774 : emit_insn (gen_x86_64_shrd_ndd_1 (tmp, operands[1], operands[4],
8775 : operands[3], operands[2]));
8776 : else
8777 : emit_insn (gen_x86_64_shld_ndd_1 (tmp, operands[4], operands[1],
8778 : operands[2], operands[3]));
8779 : emit_move_insn (operands[0], tmp);
8780 : }
8781 : else
8782 : {
8783 : operands[1] = force_reg (DImode, operands[1]);
8784 : rtx tmp = gen_reg_rtx (DImode);
8785 : emit_move_insn (tmp, operands[4]);
8786 : emit_insn (gen_x86_64_shld_1 (tmp, operands[1], operands[2], operands[3]));
8787 : emit_move_insn (operands[0], tmp);
8788 : }
8789 : DONE;
8790 : }
8791 : #undef DONE
8792 : #undef FAIL
8793 : static const uint8_t expand_encoding[] = {
8794 : 0x01, 0x27, 0x00
8795 : };
8796 : return complete_seq (expand_encoding, operands);
8797 : }
8798 :
8799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16615 */
8800 : extern rtx_insn *gen_split_582 (rtx_insn *, rtx *);
8801 : rtx_insn *
8802 : gen_split_582 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8803 : {
8804 : if (dump_file)
8805 : fprintf (dump_file, "Splitting with gen_split_582 (i386.md:16615)\n");
8806 : start_sequence ();
8807 : #define FAIL return (end_sequence (), nullptr)
8808 : #define DONE return end_sequence ()
8809 : #line 16646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8810 :
8811 : #undef DONE
8812 : #undef FAIL
8813 : static const uint8_t expand_encoding[] = {
8814 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
8815 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
8816 : 0x4d, 0x10, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
8817 : 0x11
8818 : };
8819 : return complete_seq (expand_encoding, operands);
8820 : }
8821 :
8822 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16881 */
8823 : extern rtx_insn *gen_split_592 (rtx_insn *, rtx *);
8824 : rtx_insn *
8825 : gen_split_592 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8826 : {
8827 : if (dump_file)
8828 : fprintf (dump_file, "Splitting with gen_split_592 (i386.md:16881)\n");
8829 : start_sequence ();
8830 : #define FAIL return (end_sequence (), nullptr)
8831 : #define DONE return end_sequence ()
8832 : #line 16928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8833 :
8834 : #undef DONE
8835 : #undef FAIL
8836 : static const uint8_t expand_encoding[] = {
8837 : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
8838 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
8839 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8840 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
8841 : 0x08, 0x32, 0x10, 0x4d, 0x0f, 0x32, 0x0f, 0x81,
8842 : 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8843 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
8844 : };
8845 : return complete_seq (expand_encoding, operands);
8846 : }
8847 :
8848 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16948 */
8849 : rtx
8850 : gen_ashrdi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8851 : {
8852 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8853 : start_sequence ();
8854 : {
8855 : #define FAIL return (end_sequence (), nullptr)
8856 : #define DONE return end_sequence ()
8857 : #line 16953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8858 : {
8859 : ix86_expand_binary_operator (ASHIFTRT, DImode, operands, TARGET_APX_NDD);
8860 : DONE;
8861 : }
8862 : #undef DONE
8863 : #undef FAIL
8864 : }
8865 : static const uint8_t expand_encoding[] = {
8866 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x12, 0x01, 0x01,
8867 : 0x01, 0x02
8868 : };
8869 : return complete_seq (expand_encoding, operands);
8870 : }
8871 :
8872 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17020 */
8873 : extern rtx_insn *gen_split_602 (rtx_insn *, rtx *);
8874 : rtx_insn *
8875 : gen_split_602 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8876 : {
8877 : if (dump_file)
8878 : fprintf (dump_file, "Splitting with gen_split_602 (i386.md:17020)\n");
8879 : start_sequence ();
8880 : #define FAIL return (end_sequence (), nullptr)
8881 : #define DONE return end_sequence ()
8882 : #line 17047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8883 : {
8884 : if ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) != 0)
8885 : {
8886 : emit_insn (gen_ashrti3_doubleword (operands[0], operands[1],
8887 : operands[2]));
8888 : DONE;
8889 : }
8890 :
8891 : split_double_mode (TImode, &operands[0], 2, &operands[4], &operands[6]);
8892 :
8893 : operands[8] = GEN_INT (8 * BITS_PER_UNIT - 1);
8894 : operands[9] = GEN_INT (8 * BITS_PER_UNIT);
8895 :
8896 : if ((INTVAL (operands[3]) & ((8 * BITS_PER_UNIT) - 1))
8897 : != ((8 * BITS_PER_UNIT) - 1))
8898 : {
8899 : rtx tem = gen_reg_rtx (QImode);
8900 : emit_insn (gen_andqi3 (tem, operands[2], operands[3]));
8901 : operands[2] = tem;
8902 : }
8903 :
8904 : if (!rtx_equal_p (operands[4], operands[5]))
8905 : emit_move_insn (operands[4], operands[5]);
8906 : }
8907 : #undef DONE
8908 : #undef FAIL
8909 : static const uint8_t expand_encoding[] = {
8910 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4a,
8911 : 0x12, 0x50, 0x12, 0x01, 0x04, 0x49, 0x0f, 0x01,
8912 : 0x02, 0x01, 0x08, 0x32, 0x12, 0x4d, 0x13, 0x6f,
8913 : 0x13, 0x01, 0x07, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8914 : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8915 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x4f,
8916 : 0x12, 0x01, 0x07, 0x01, 0x02, 0x05, 0x02, 0x11
8917 : };
8918 : return complete_seq (expand_encoding, operands);
8919 : }
8920 :
8921 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17116 */
8922 : extern rtx_insn *gen_split_608 (rtx_insn *, rtx *);
8923 : rtx_insn *
8924 : gen_split_608 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8925 : {
8926 : if (dump_file)
8927 : fprintf (dump_file, "Splitting with gen_split_608 (i386.md:17116)\n");
8928 : start_sequence ();
8929 : #define FAIL return (end_sequence (), nullptr)
8930 : #define DONE return end_sequence ()
8931 : #line 17129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8932 : {
8933 : split_double_mode (DImode, &operands[1], 1, &operands[1], &operands[3]);
8934 : operands[4] = GEN_INT ((4 * BITS_PER_UNIT) - INTVAL (operands[2]));
8935 : if (!rtx_equal_p (operands[0], operands[1]))
8936 : emit_move_insn (operands[0], operands[1]);
8937 : }
8938 : #undef DONE
8939 : #undef FAIL
8940 : static const uint8_t expand_encoding[] = {
8941 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x50, 0x11,
8942 : 0x01, 0x00, 0x01, 0x02, 0x32, 0x11, 0x4d, 0x12,
8943 : 0x6f, 0x12, 0x01, 0x03, 0x01, 0x04, 0x00
8944 : };
8945 : return complete_seq (expand_encoding, operands);
8946 : }
8947 :
8948 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17368 */
8949 : extern rtx_insn *gen_split_618 (rtx_insn *, rtx *);
8950 : rtx_insn *
8951 : gen_split_618 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8952 : {
8953 : if (dump_file)
8954 : fprintf (dump_file, "Splitting with gen_split_618 (i386.md:17368)\n");
8955 : start_sequence ();
8956 : static const uint8_t expand_encoding[] = {
8957 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
8958 : 0x12, 0x50, 0x12, 0x01, 0x01, 0x49, 0x0f, 0x01,
8959 : 0x03, 0x27, 0x3f, 0x32, 0x12, 0x4d, 0x13, 0x6f,
8960 : 0x13, 0x01, 0x02, 0x3c, 0x0f, 0x27, 0x40, 0x49,
8961 : 0x0f, 0x01, 0x03, 0x27, 0x3f, 0x00, 0x05, 0x02,
8962 : 0x11
8963 : };
8964 : return complete_seq (expand_encoding, operands);
8965 : }
8966 :
8967 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17665 */
8968 : rtx
8969 : gen_x86_shiftdi_adj_3 (const rtx operand0, const rtx operand1, const rtx operand2)
8970 : {
8971 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8972 : start_sequence ();
8973 : {
8974 : #define FAIL return (end_sequence (), nullptr)
8975 : #define DONE return end_sequence ()
8976 : #line 17670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8977 : {
8978 : rtx_code_label *label = gen_label_rtx ();
8979 : rtx tmp;
8980 :
8981 : emit_insn (gen_testqi_ccz_1 (operands[2],
8982 : GEN_INT (GET_MODE_BITSIZE (DImode))));
8983 :
8984 : tmp = gen_rtx_REG (CCZmode, FLAGS_REG);
8985 : tmp = gen_rtx_EQ (VOIDmode, tmp, const0_rtx);
8986 : tmp = gen_rtx_IF_THEN_ELSE (VOIDmode, tmp,
8987 : gen_rtx_LABEL_REF (VOIDmode, label),
8988 : pc_rtx);
8989 : tmp = emit_jump_insn (gen_rtx_SET (pc_rtx, tmp));
8990 : JUMP_LABEL (tmp) = label;
8991 :
8992 : emit_move_insn (operands[0], operands[1]);
8993 : emit_insn (gen_ashrdi3_cvt (operands[1], operands[1],
8994 : GEN_INT (GET_MODE_BITSIZE (DImode)-1)));
8995 : emit_label (label);
8996 : LABEL_NUSES (label) = 1;
8997 :
8998 : DONE;
8999 : }
9000 : #undef DONE
9001 : #undef FAIL
9002 : }
9003 : static const uint8_t expand_encoding[] = {
9004 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
9005 : 0x01, 0x20, 0x00, 0x01, 0x02
9006 : };
9007 : return complete_seq (expand_encoding, operands);
9008 : }
9009 :
9010 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18018 */
9011 : extern rtx_insn *gen_split_635 (rtx_insn *, rtx *);
9012 : rtx_insn *
9013 : gen_split_635 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9014 : {
9015 : if (dump_file)
9016 : fprintf (dump_file, "Splitting with gen_split_635 (i386.md:18018)\n");
9017 : start_sequence ();
9018 : #define FAIL return (end_sequence (), nullptr)
9019 : #define DONE return end_sequence ()
9020 : #line 18041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9021 :
9022 : #undef DONE
9023 : #undef FAIL
9024 : static const uint8_t expand_encoding[] = {
9025 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
9026 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
9027 : 0x4f, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
9028 : 0x11
9029 : };
9030 : return complete_seq (expand_encoding, operands);
9031 : }
9032 :
9033 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18214 */
9034 : extern rtx_insn *gen_split_645 (rtx_insn *, rtx *);
9035 : rtx_insn *
9036 : gen_split_645 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9037 : {
9038 : if (dump_file)
9039 : fprintf (dump_file, "Splitting with gen_split_645 (i386.md:18214)\n");
9040 : start_sequence ();
9041 : #define FAIL return (end_sequence (), nullptr)
9042 : #define DONE return end_sequence ()
9043 : #line 18234 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9044 : {
9045 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9046 : operands[2] = gen_lowpart (QImode, operands[2]);
9047 : }
9048 : #undef DONE
9049 : #undef FAIL
9050 : static const uint8_t expand_encoding[] = {
9051 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9052 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9053 : };
9054 : return complete_seq (expand_encoding, operands);
9055 : }
9056 :
9057 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18240 */
9058 : extern rtx_insn *gen_split_654 (rtx_insn *, rtx *);
9059 : rtx_insn *
9060 : gen_split_654 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9061 : {
9062 : if (dump_file)
9063 : fprintf (dump_file, "Splitting with gen_split_654 (i386.md:18240)\n");
9064 : start_sequence ();
9065 : #define FAIL return (end_sequence (), nullptr)
9066 : #define DONE return end_sequence ()
9067 : #line 18259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9068 :
9069 : #undef DONE
9070 : #undef FAIL
9071 : static const uint8_t expand_encoding[] = {
9072 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9073 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9074 : };
9075 : return complete_seq (expand_encoding, operands);
9076 : }
9077 :
9078 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18287 */
9079 : extern rtx_insn *gen_split_664 (rtx_insn *, rtx *);
9080 : rtx_insn *
9081 : gen_split_664 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9082 : {
9083 : if (dump_file)
9084 : fprintf (dump_file, "Splitting with gen_split_664 (i386.md:18287)\n");
9085 : start_sequence ();
9086 : #define FAIL return (end_sequence (), nullptr)
9087 : #define DONE return end_sequence ()
9088 : #line 18305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9089 :
9090 : #undef DONE
9091 : #undef FAIL
9092 : static const uint8_t expand_encoding[] = {
9093 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4f,
9094 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9095 : };
9096 : return complete_seq (expand_encoding, operands);
9097 : }
9098 :
9099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18308 */
9100 : extern rtx_insn *gen_split_671 (rtx_insn *, rtx *);
9101 : rtx_insn *
9102 : gen_split_671 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9103 : {
9104 : if (dump_file)
9105 : fprintf (dump_file, "Splitting with gen_split_671 (i386.md:18308)\n");
9106 : start_sequence ();
9107 : #define FAIL return (end_sequence (), nullptr)
9108 : #define DONE return end_sequence ()
9109 : #line 18329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9110 : {
9111 : HOST_WIDE_INT cnt = INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1);
9112 :
9113 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9114 : operands[2] = gen_lowpart (QImode, operands[2]);
9115 :
9116 : operands[4] = gen_reg_rtx (QImode);
9117 :
9118 : rtx (*insn)(rtx, rtx) = (cnt == 0) ? gen_negqi2 : gen_one_cmplqi2;
9119 : emit_insn (insn (operands[4], operands[2]));
9120 : }
9121 : #undef DONE
9122 : #undef FAIL
9123 : static const uint8_t expand_encoding[] = {
9124 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
9125 : 0x12, 0x01, 0x01, 0x01, 0x04, 0x05, 0x02, 0x11
9126 : };
9127 : return complete_seq (expand_encoding, operands);
9128 : }
9129 :
9130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18408 */
9131 : extern rtx_insn *gen_split_683 (rtx_insn *, rtx *);
9132 : rtx_insn *
9133 : gen_split_683 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9134 : {
9135 : if (dump_file)
9136 : fprintf (dump_file, "Splitting with gen_split_683 (i386.md:18408)\n");
9137 : start_sequence ();
9138 : #define FAIL return (end_sequence (), nullptr)
9139 : #define DONE return end_sequence ()
9140 : #line 18424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9141 : {
9142 : if (!TARGET_XOP)
9143 : {
9144 : rtx op0 = operands[0];
9145 : rtx op2 = operands[2];
9146 : rtx tmp1 = gen_reg_rtx (V4SImode);
9147 : rtx tmp2 = gen_reg_rtx (V4SImode);
9148 : rtx tmp3 = gen_reg_rtx (V4SImode);
9149 : rtx tmp4 = gen_reg_rtx (V4SImode);
9150 : emit_move_insn (tmp1, lowpart_subreg (V4SImode, operands[1], V2DImode));
9151 : emit_insn (gen_ashlv4si3 (tmp2, tmp1, op2));
9152 : emit_insn (gen_ashrv4si3 (tmp3, tmp2, op2));
9153 : vec_perm_builder sel (4, 4, 1);
9154 : sel.quick_grow (4);
9155 : sel[0] = 0;
9156 : sel[1] = 5;
9157 : sel[2] = 2;
9158 : sel[3] = 7;
9159 : vec_perm_indices indices(sel, 2, 4);
9160 : bool ok = targetm.vectorize.vec_perm_const (V4SImode, V4SImode, tmp4,
9161 : tmp1, tmp3, indices);
9162 : gcc_assert (ok);
9163 : emit_move_insn (op0, lowpart_subreg (V2DImode, tmp4, V4SImode));
9164 : DONE;
9165 : }
9166 : else
9167 : operands[4] = gen_reg_rtx (V2DImode);
9168 : }
9169 : #undef DONE
9170 : #undef FAIL
9171 : static const uint8_t expand_encoding[] = {
9172 : 0x02, 0x1f, 0x01, 0x04, 0x4d, 0x52, 0x01, 0x01,
9173 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4f, 0x52, 0x01,
9174 : 0x04, 0x01, 0x02
9175 : };
9176 : return complete_seq (expand_encoding, operands);
9177 : }
9178 :
9179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18524 */
9180 : extern rtx_insn *gen_split_690 (rtx_insn *, rtx *);
9181 : rtx_insn *
9182 : gen_split_690 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9183 : {
9184 : if (dump_file)
9185 : fprintf (dump_file, "Splitting with gen_split_690 (i386.md:18524)\n");
9186 : start_sequence ();
9187 : #define FAIL return (end_sequence (), nullptr)
9188 : #define DONE return end_sequence ()
9189 : #line 18544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9190 : {
9191 : operands[2] = force_lowpart_subreg (QImode, operands[2],
9192 : GET_MODE (operands[2]));
9193 : if (TARGET_APX_NF)
9194 : {
9195 : emit_move_insn (operands[0],
9196 : gen_rtx_ROTATE (DImode, operands[1],
9197 : operands[2]));
9198 : DONE;
9199 : }
9200 : }
9201 : #undef DONE
9202 : #undef FAIL
9203 : static const uint8_t expand_encoding[] = {
9204 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9205 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9206 : };
9207 : return complete_seq (expand_encoding, operands);
9208 : }
9209 :
9210 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18573 */
9211 : extern rtx_insn *gen_split_700 (rtx_insn *, rtx *);
9212 : rtx_insn *
9213 : gen_split_700 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9214 : {
9215 : if (dump_file)
9216 : fprintf (dump_file, "Splitting with gen_split_700 (i386.md:18573)\n");
9217 : start_sequence ();
9218 : #define FAIL return (end_sequence (), nullptr)
9219 : #define DONE return end_sequence ()
9220 : #line 18592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9221 : {
9222 : if (TARGET_APX_NF)
9223 : {
9224 : emit_move_insn (operands[0],
9225 : gen_rtx_ROTATE (QImode, operands[1],
9226 : operands[2]));
9227 : DONE;
9228 : }
9229 : }
9230 : #undef DONE
9231 : #undef FAIL
9232 : static const uint8_t expand_encoding[] = {
9233 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9234 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9235 : };
9236 : return complete_seq (expand_encoding, operands);
9237 : }
9238 :
9239 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18602 */
9240 : extern rtx_insn *gen_split_710 (rtx_insn *, rtx *);
9241 : rtx_insn *
9242 : gen_split_710 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9243 : {
9244 : if (dump_file)
9245 : fprintf (dump_file, "Splitting with gen_split_710 (i386.md:18602)\n");
9246 : start_sequence ();
9247 : #define FAIL return (end_sequence (), nullptr)
9248 : #define DONE return end_sequence ()
9249 : #line 18615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9250 : operands[4] = gen_reg_rtx (HImode);
9251 : #undef DONE
9252 : #undef FAIL
9253 : static const uint8_t expand_encoding[] = {
9254 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9255 : 0x00, 0x4e, 0x10, 0x01, 0x04, 0x49, 0x0f, 0x01,
9256 : 0x02, 0x01, 0x03
9257 : };
9258 : return complete_seq (expand_encoding, operands);
9259 : }
9260 :
9261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18617 */
9262 : extern rtx_insn *gen_split_720 (rtx_insn *, rtx *);
9263 : rtx_insn *
9264 : gen_split_720 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9265 : {
9266 : if (dump_file)
9267 : fprintf (dump_file, "Splitting with gen_split_720 (i386.md:18617)\n");
9268 : start_sequence ();
9269 : #define FAIL return (end_sequence (), nullptr)
9270 : #define DONE return end_sequence ()
9271 : #line 18635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9272 : {
9273 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9274 : operands[2] = gen_lowpart (QImode, operands[2]);
9275 : }
9276 : #undef DONE
9277 : #undef FAIL
9278 : static const uint8_t expand_encoding[] = {
9279 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9280 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9281 : };
9282 : return complete_seq (expand_encoding, operands);
9283 : }
9284 :
9285 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18640 */
9286 : extern rtx_insn *gen_split_730 (rtx_insn *, rtx *);
9287 : rtx_insn *
9288 : gen_split_730 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9289 : {
9290 : if (dump_file)
9291 : fprintf (dump_file, "Splitting with gen_split_730 (i386.md:18640)\n");
9292 : start_sequence ();
9293 : #define FAIL return (end_sequence (), nullptr)
9294 : #define DONE return end_sequence ()
9295 : #line 18652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9296 : operands[4] = gen_reg_rtx (DImode);
9297 : #undef DONE
9298 : #undef FAIL
9299 : static const uint8_t expand_encoding[] = {
9300 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9301 : 0x00, 0x4e, 0x12, 0x01, 0x04, 0x32, 0x0f, 0x01,
9302 : 0x02, 0x00
9303 : };
9304 : return complete_seq (expand_encoding, operands);
9305 : }
9306 :
9307 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18673 */
9308 : extern rtx_insn *gen_split_740 (rtx_insn *, rtx *);
9309 : rtx_insn *
9310 : gen_split_740 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9311 : {
9312 : if (dump_file)
9313 : fprintf (dump_file, "Splitting with gen_split_740 (i386.md:18673)\n");
9314 : start_sequence ();
9315 : #define FAIL return (end_sequence (), nullptr)
9316 : #define DONE return end_sequence ()
9317 : #line 18684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9318 : operands[4] = gen_reg_rtx (QImode);
9319 : #undef DONE
9320 : #undef FAIL
9321 : static const uint8_t expand_encoding[] = {
9322 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9323 : 0x00, 0x4e, 0x0f, 0x01, 0x04, 0x01, 0x02
9324 : };
9325 : return complete_seq (expand_encoding, operands);
9326 : }
9327 :
9328 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18686 */
9329 : extern rtx_insn *gen_split_749 (rtx_insn *, rtx *);
9330 : rtx_insn *
9331 : gen_split_749 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9332 : {
9333 : if (dump_file)
9334 : fprintf (dump_file, "Splitting with gen_split_749 (i386.md:18686)\n");
9335 : start_sequence ();
9336 : #define FAIL return (end_sequence (), nullptr)
9337 : #define DONE return end_sequence ()
9338 : #line 18704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9339 : {
9340 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9341 : operands[2] = gen_lowpart (QImode, operands[2]);
9342 : }
9343 : #undef DONE
9344 : #undef FAIL
9345 : static const uint8_t expand_encoding[] = {
9346 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9347 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9348 : };
9349 : return complete_seq (expand_encoding, operands);
9350 : }
9351 :
9352 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18709 */
9353 : extern rtx_insn *gen_split_759 (rtx_insn *, rtx *);
9354 : rtx_insn *
9355 : gen_split_759 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9356 : {
9357 : if (dump_file)
9358 : fprintf (dump_file, "Splitting with gen_split_759 (i386.md:18709)\n");
9359 : start_sequence ();
9360 : #define FAIL return (end_sequence (), nullptr)
9361 : #define DONE return end_sequence ()
9362 : #line 18721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9363 : operands[4] = gen_reg_rtx (HImode);
9364 : #undef DONE
9365 : #undef FAIL
9366 : static const uint8_t expand_encoding[] = {
9367 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9368 : 0x00, 0x4e, 0x10, 0x01, 0x04, 0x32, 0x0f, 0x01,
9369 : 0x02, 0x00
9370 : };
9371 : return complete_seq (expand_encoding, operands);
9372 : }
9373 :
9374 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18723 */
9375 : extern rtx_insn *gen_split_769 (rtx_insn *, rtx *);
9376 : rtx_insn *
9377 : gen_split_769 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9378 : {
9379 : if (dump_file)
9380 : fprintf (dump_file, "Splitting with gen_split_769 (i386.md:18723)\n");
9381 : start_sequence ();
9382 : #define FAIL return (end_sequence (), nullptr)
9383 : #define DONE return end_sequence ()
9384 : #line 18740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9385 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9386 : #undef DONE
9387 : #undef FAIL
9388 : static const uint8_t expand_encoding[] = {
9389 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9390 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9391 : };
9392 : return complete_seq (expand_encoding, operands);
9393 : }
9394 :
9395 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18742 */
9396 : extern rtx_insn *gen_split_779 (rtx_insn *, rtx *);
9397 : rtx_insn *
9398 : gen_split_779 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9399 : {
9400 : if (dump_file)
9401 : fprintf (dump_file, "Splitting with gen_split_779 (i386.md:18742)\n");
9402 : start_sequence ();
9403 : #define FAIL return (end_sequence (), nullptr)
9404 : #define DONE return end_sequence ()
9405 : #line 18753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9406 : operands[4] = gen_reg_rtx (DImode);
9407 : #undef DONE
9408 : #undef FAIL
9409 : static const uint8_t expand_encoding[] = {
9410 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9411 : 0x00, 0x4e, 0x12, 0x01, 0x04, 0x01, 0x02
9412 : };
9413 : return complete_seq (expand_encoding, operands);
9414 : }
9415 :
9416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18927 */
9417 : extern rtx_insn *gen_split_789 (rtx_insn *, rtx *);
9418 : rtx_insn *
9419 : gen_split_789 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9420 : {
9421 : if (dump_file)
9422 : fprintf (dump_file, "Splitting with gen_split_789 (i386.md:18927)\n");
9423 : start_sequence ();
9424 : #define FAIL return (end_sequence (), nullptr)
9425 : #define DONE return end_sequence ()
9426 : #line 18935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9427 : {
9428 : int bitsize = GET_MODE_BITSIZE (DImode);
9429 :
9430 : operands[2] = GEN_INT ((bitsize - INTVAL (operands[2])) % bitsize);
9431 : }
9432 : #undef DONE
9433 : #undef FAIL
9434 : static const uint8_t expand_encoding[] = {
9435 : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x12, 0x01, 0x01,
9436 : 0x01, 0x02
9437 : };
9438 : return complete_seq (expand_encoding, operands);
9439 : }
9440 :
9441 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19094 */
9442 : extern rtx_insn *gen_split_799 (rtx_insn *, rtx *);
9443 : rtx_insn *
9444 : gen_split_799 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9445 : {
9446 : if (dump_file)
9447 : fprintf (dump_file, "Splitting with gen_split_799 (i386.md:19094)\n");
9448 : start_sequence ();
9449 : #define FAIL return (end_sequence (), nullptr)
9450 : #define DONE return end_sequence ()
9451 : #line 19117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9452 :
9453 : #undef DONE
9454 : #undef FAIL
9455 : static const uint8_t expand_encoding[] = {
9456 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
9457 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
9458 : 0x51, 0x10, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
9459 : 0x11
9460 : };
9461 : return complete_seq (expand_encoding, operands);
9462 : }
9463 :
9464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19252 */
9465 : extern rtx_insn *gen_split_809 (rtx_insn *, rtx *);
9466 : rtx_insn *
9467 : gen_split_809 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9468 : {
9469 : if (dump_file)
9470 : fprintf (dump_file, "Splitting with gen_split_809 (i386.md:19252)\n");
9471 : start_sequence ();
9472 : static const uint8_t expand_encoding[] = {
9473 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
9474 : 0x12, 0x4d, 0x12, 0x27, 0x01, 0x01, 0x01, 0x01,
9475 : 0x03, 0x05, 0x02, 0x11
9476 : };
9477 : return complete_seq (expand_encoding, operands);
9478 : }
9479 :
9480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19367 */
9481 : extern rtx_insn *gen_split_816 (rtx_insn *, rtx *);
9482 : rtx_insn *
9483 : gen_split_816 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9484 : {
9485 : if (dump_file)
9486 : fprintf (dump_file, "Splitting with gen_split_816 (i386.md:19367)\n");
9487 : start_sequence ();
9488 : #define FAIL return (end_sequence (), nullptr)
9489 : #define DONE return end_sequence ()
9490 : #line 19384 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9491 : {
9492 : operands[2] = gen_reg_rtx (QImode);
9493 : operands[5] = gen_reg_rtx (QImode);
9494 : operands[3] = lowpart_subreg (SImode, operands[5], QImode);
9495 : operands[4] = lowpart_subreg (SImode, operands[2], QImode);
9496 : }
9497 : #undef DONE
9498 : #undef FAIL
9499 : static const uint8_t expand_encoding[] = {
9500 : 0x03, 0x1f, 0x01, 0x02, 0x01, 0x00, 0x17, 0x00,
9501 : 0x02, 0x1f, 0x01, 0x03, 0x49, 0x11, 0x4e, 0x11,
9502 : 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9503 : 0xff, 0xff, 0x7e, 0x01, 0x01, 0x01, 0x04, 0x05,
9504 : 0x02, 0x11, 0x1f, 0x01, 0x00, 0x01, 0x05
9505 : };
9506 : return complete_seq (expand_encoding, operands);
9507 : }
9508 :
9509 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19592 */
9510 : extern rtx_insn *gen_split_823 (rtx_insn *, rtx *);
9511 : rtx_insn *
9512 : gen_split_823 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9513 : {
9514 : if (dump_file)
9515 : fprintf (dump_file, "Splitting with gen_split_823 (i386.md:19592)\n");
9516 : start_sequence ();
9517 : #define FAIL return (end_sequence (), nullptr)
9518 : #define DONE return end_sequence ()
9519 : #line 19623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9520 : {
9521 : operands[0] = shallow_copy_rtx (operands[0]);
9522 : PUT_CODE (operands[0], GET_CODE (operands[0]) == NE ? LTU : GEU);
9523 : }
9524 : #undef DONE
9525 : #undef FAIL
9526 : static const uint8_t expand_encoding[] = {
9527 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9528 : 0x00, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27, 0x01,
9529 : 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x02, 0x00,
9530 : 0x30, 0x08, 0x11, 0x27, 0x00, 0x37, 0x00, 0x01,
9531 : 0x03, 0x2f
9532 : };
9533 : return complete_seq (expand_encoding, operands);
9534 : }
9535 :
9536 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19703 */
9537 : extern rtx_insn *gen_split_833 (rtx_insn *, rtx *);
9538 : rtx_insn *
9539 : gen_split_833 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9540 : {
9541 : if (dump_file)
9542 : fprintf (dump_file, "Splitting with gen_split_833 (i386.md:19703)\n");
9543 : start_sequence ();
9544 : #define FAIL return (end_sequence (), nullptr)
9545 : #define DONE return end_sequence ()
9546 : #line 19725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9547 : {
9548 : if (GET_CODE (operands[5]) == EQ)
9549 : std::swap (operands[3], operands[4]);
9550 : }
9551 : #undef DONE
9552 : #undef FAIL
9553 : static const uint8_t expand_encoding[] = {
9554 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9555 : 0x00, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27, 0x01,
9556 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x66,
9557 : 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01, 0x03,
9558 : 0x01, 0x04
9559 : };
9560 : return complete_seq (expand_encoding, operands);
9561 : }
9562 :
9563 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19839 */
9564 : extern rtx_insn *gen_split_846 (rtx_insn *, rtx *);
9565 : rtx_insn *
9566 : gen_split_846 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9567 : {
9568 : if (dump_file)
9569 : fprintf (dump_file, "Splitting with gen_split_846 (i386.md:19839)\n");
9570 : start_sequence ();
9571 : static const uint8_t expand_encoding[] = {
9572 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
9573 : 0x11, 0x01, 0x02, 0x01, 0x03, 0x01, 0x02, 0x1f,
9574 : 0x01, 0x00, 0x02, 0x01, 0x30, 0x08, 0x11, 0x27,
9575 : 0x00
9576 : };
9577 : return complete_seq (expand_encoding, operands);
9578 : }
9579 :
9580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19969 */
9581 : rtx
9582 : gen_setcc_si_slp (const rtx operand0, const rtx operand1, const rtx operand2)
9583 : {
9584 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9585 : static const uint8_t expand_encoding[] = {
9586 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x01, 0x01,
9587 : 0x01, 0x02, 0x2e
9588 : };
9589 : return expand_rtx (expand_encoding, operands);
9590 : }
9591 :
9592 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20022 */
9593 : extern rtx_insn *gen_split_857 (rtx_insn *, rtx *);
9594 : rtx_insn *
9595 : gen_split_857 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9596 : {
9597 : if (dump_file)
9598 : fprintf (dump_file, "Splitting with gen_split_857 (i386.md:20022)\n");
9599 : start_sequence ();
9600 : #define FAIL return (end_sequence (), nullptr)
9601 : #define DONE return end_sequence ()
9602 : #line 20029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9603 : {
9604 : operands[1] = shallow_copy_rtx (operands[1]);
9605 : PUT_MODE (operands[1], QImode);
9606 : PUT_CODE (operands[1],
9607 : ix86_reverse_condition (GET_CODE (operands[1]),
9608 : GET_MODE (XEXP (operands[1], 0))));
9609 :
9610 : /* Make sure that (a) the CCmode we have for the flags is strong
9611 : enough for the reversed compare or (b) we have a valid FP compare. */
9612 : if (! ix86_comparison_operator (operands[1], VOIDmode))
9613 : FAIL;
9614 : }
9615 : #undef DONE
9616 : #undef FAIL
9617 : static const uint8_t expand_encoding[] = {
9618 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
9619 : };
9620 : return complete_seq (expand_encoding, operands);
9621 : }
9622 :
9623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20386 */
9624 : extern rtx_insn *gen_peephole2_191 (rtx_insn *, rtx *);
9625 : rtx_insn *
9626 : gen_peephole2_191 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9627 : {
9628 : if (dump_file)
9629 : fprintf (dump_file, "Splitting with gen_peephole2_191 (i386.md:20386)\n");
9630 : start_sequence ();
9631 : #define FAIL return (end_sequence (), nullptr)
9632 : #define DONE return end_sequence ()
9633 : #line 20408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9634 : {
9635 : operands[8] = gen_lowpart (QImode, operands[4]);
9636 : ix86_expand_clear (operands[4]);
9637 : }
9638 : #undef DONE
9639 : #undef FAIL
9640 : static const uint8_t expand_encoding[] = {
9641 : 0x03, 0x1f, 0x01, 0x06, 0x01, 0x00, 0x17, 0x00,
9642 : 0x02, 0x1f, 0x01, 0x07, 0x01, 0x01, 0x01, 0x05,
9643 : 0x1f, 0x33, 0x00, 0x01, 0x08, 0x01, 0x03
9644 : };
9645 : return complete_seq (expand_encoding, operands);
9646 : }
9647 :
9648 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20614 */
9649 : extern rtx_insn *gen_peephole2_198 (rtx_insn *, rtx *);
9650 : rtx_insn *
9651 : gen_peephole2_198 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9652 : {
9653 : if (dump_file)
9654 : fprintf (dump_file, "Splitting with gen_peephole2_198 (i386.md:20614)\n");
9655 : start_sequence ();
9656 : static const uint8_t expand_encoding[] = {
9657 : 0x02, 0x1b, 0x00, 0x01, 0x27, 0x00, 0x01, 0x17,
9658 : 0x00, 0x02, 0x22, 0x00, 0x36, 0x0f, 0x01, 0x01,
9659 : 0x01, 0x03, 0x1a, 0x00, 0x01, 0x27, 0x00, 0x26
9660 : };
9661 : return complete_seq (expand_encoding, operands);
9662 : }
9663 :
9664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20805 */
9665 : extern rtx_insn *gen_peephole2_205 (rtx_insn *, rtx *);
9666 : rtx_insn *
9667 : gen_peephole2_205 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9668 : {
9669 : if (dump_file)
9670 : fprintf (dump_file, "Splitting with gen_peephole2_205 (i386.md:20805)\n");
9671 : start_sequence ();
9672 : static const uint8_t expand_encoding[] = {
9673 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x02, 0x22,
9674 : 0x00, 0x36, 0x0f, 0x01, 0x01, 0x01, 0x03, 0x1a,
9675 : 0x00, 0x01, 0x27, 0x00, 0x26
9676 : };
9677 : return complete_seq (expand_encoding, operands);
9678 : }
9679 :
9680 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21013 */
9681 : rtx
9682 : gen_return (void)
9683 : {
9684 : start_sequence ();
9685 : {
9686 : #define FAIL return (end_sequence (), nullptr)
9687 : #define DONE return end_sequence ()
9688 : #line 21016 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9689 : {
9690 : if (crtl->args.pops_args)
9691 : {
9692 : rtx popc = GEN_INT (crtl->args.pops_args);
9693 : emit_jump_insn (gen_simple_return_pop_internal (popc));
9694 : DONE;
9695 : }
9696 : }
9697 : #undef DONE
9698 : #undef FAIL
9699 : }
9700 : static const uint8_t expand_encoding[] = {
9701 : 0x01, 0x24
9702 : };
9703 : return complete_seq (expand_encoding, nullptr);
9704 : }
9705 :
9706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21267 */
9707 : extern rtx_insn *gen_split_867 (rtx_insn *, rtx *);
9708 : rtx_insn *
9709 : gen_split_867 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
9710 : {
9711 : if (dump_file)
9712 : fprintf (dump_file, "Splitting with gen_split_867 (i386.md:21267)\n");
9713 : start_sequence ();
9714 : #define FAIL return (end_sequence (), nullptr)
9715 : #define DONE return end_sequence ()
9716 : #line 21273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9717 : ix86_expand_epilogue (2); DONE;
9718 : #undef DONE
9719 : #undef FAIL
9720 : static const uint8_t expand_encoding[] = {
9721 : 0x01, 0x27, 0x00
9722 : };
9723 : return complete_seq (expand_encoding, operands);
9724 : }
9725 :
9726 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21413 */
9727 : extern rtx_insn *gen_split_869 (rtx_insn *, rtx *);
9728 : rtx_insn *
9729 : gen_split_869 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9730 : {
9731 : if (dump_file)
9732 : fprintf (dump_file, "Splitting with gen_split_869 (i386.md:21413)\n");
9733 : start_sequence ();
9734 : #define FAIL return (end_sequence (), nullptr)
9735 : #define DONE return end_sequence ()
9736 : #line 21431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9737 : ix86_expand_clear (operands[0]);
9738 : #undef DONE
9739 : #undef FAIL
9740 : static const uint8_t expand_encoding[] = {
9741 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x30, 0x08, 0x11,
9742 : 0x3a, 0x08, 0x01, 0x01, 0x27, 0x00, 0x1f, 0x01,
9743 : 0x00, 0x81, 0x01, 0x11, 0x01, 0x01, 0x1a, 0x00,
9744 : 0x01, 0x01, 0x00, 0x27
9745 : };
9746 : return complete_seq (expand_encoding, operands);
9747 : }
9748 :
9749 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21737 */
9750 : extern rtx_insn *gen_split_876 (rtx_insn *, rtx *);
9751 : rtx_insn *
9752 : gen_split_876 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9753 : {
9754 : if (dump_file)
9755 : fprintf (dump_file, "Splitting with gen_split_876 (i386.md:21737)\n");
9756 : start_sequence ();
9757 : #define FAIL return (end_sequence (), nullptr)
9758 : #define DONE return end_sequence ()
9759 : #line 21757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9760 : {
9761 : operands[2] = gen_reg_rtx (DImode);
9762 : operands[3] = lowpart_subreg (SImode, operands[2], DImode);
9763 : }
9764 : #undef DONE
9765 : #undef FAIL
9766 : static const uint8_t expand_encoding[] = {
9767 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
9768 : 0x3a, 0x0c, 0x01, 0x01, 0x27, 0x00, 0x1f, 0x01,
9769 : 0x02, 0x3c, 0x12, 0x27, 0x3f, 0x81, 0x00, 0x12,
9770 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
9771 : 0x6f, 0x12, 0x4b, 0x11, 0x01, 0x03, 0x27, 0x3f,
9772 : 0x05, 0x02, 0x11
9773 : };
9774 : return complete_seq (expand_encoding, operands);
9775 : }
9776 :
9777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21919 */
9778 : extern rtx_insn *gen_split_886 (rtx_insn *, rtx *);
9779 : rtx_insn *
9780 : gen_split_886 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9781 : {
9782 : if (dump_file)
9783 : fprintf (dump_file, "Splitting with gen_split_886 (i386.md:21919)\n");
9784 : start_sequence ();
9785 : #define FAIL return (end_sequence (), nullptr)
9786 : #define DONE return end_sequence ()
9787 : #line 21933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9788 :
9789 : #undef DONE
9790 : #undef FAIL
9791 : static const uint8_t expand_encoding[] = {
9792 : 0x02, 0x1f, 0x01, 0x00, 0x27, 0x00, 0x17, 0x00,
9793 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x00, 0x11, 0x01,
9794 : 0x01, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
9795 : };
9796 : return complete_seq (expand_encoding, operands);
9797 : }
9798 :
9799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22081 */
9800 : extern rtx_insn *gen_split_894 (rtx_insn *, rtx *);
9801 : rtx_insn *
9802 : gen_split_894 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9803 : {
9804 : if (dump_file)
9805 : fprintf (dump_file, "Splitting with gen_split_894 (i386.md:22081)\n");
9806 : start_sequence ();
9807 : #define FAIL return (end_sequence (), nullptr)
9808 : #define DONE return end_sequence ()
9809 : #line 22095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9810 :
9811 : #undef DONE
9812 : #undef FAIL
9813 : static const uint8_t expand_encoding[] = {
9814 : 0x02, 0x1f, 0x01, 0x00, 0x27, 0x00, 0x17, 0x00,
9815 : 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01,
9816 : 0x01, 0x62, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
9817 : };
9818 : return complete_seq (expand_encoding, operands);
9819 : }
9820 :
9821 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22295 */
9822 : extern rtx_insn *gen_split_904 (rtx_insn *, rtx *);
9823 : rtx_insn *
9824 : gen_split_904 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9825 : {
9826 : if (dump_file)
9827 : fprintf (dump_file, "Splitting with gen_split_904 (i386.md:22295)\n");
9828 : start_sequence ();
9829 : #define FAIL return (end_sequence (), nullptr)
9830 : #define DONE return end_sequence ()
9831 : #line 22316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9832 : ix86_expand_clear (operands[0]);
9833 : #undef DONE
9834 : #undef FAIL
9835 : static const uint8_t expand_encoding[] = {
9836 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x4b,
9837 : 0x11, 0x3b, 0x11, 0x01, 0x01, 0x27, 0x81, 0xff,
9838 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f,
9839 : 0x01, 0x01, 0x05, 0x02, 0x11, 0x1a, 0x00, 0x01,
9840 : 0x01, 0x00, 0x27
9841 : };
9842 : return complete_seq (expand_encoding, operands);
9843 : }
9844 :
9845 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22747 */
9846 : extern rtx_insn *gen_split_912 (rtx_insn *, rtx *);
9847 : rtx_insn *
9848 : gen_split_912 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9849 : {
9850 : if (dump_file)
9851 : fprintf (dump_file, "Splitting with gen_split_912 (i386.md:22747)\n");
9852 : start_sequence ();
9853 : #define FAIL return (end_sequence (), nullptr)
9854 : #define DONE return end_sequence ()
9855 : #line 22768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9856 : ix86_expand_clear (operands[0]);
9857 : #undef DONE
9858 : #undef FAIL
9859 : static const uint8_t expand_encoding[] = {
9860 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x81,
9861 : 0x02, 0x11, 0x01, 0x01, 0x1a, 0x00, 0x01, 0x01,
9862 : 0x00, 0x27, 0x05, 0x02, 0x11
9863 : };
9864 : return complete_seq (expand_encoding, operands);
9865 : }
9866 :
9867 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23091 */
9868 : extern rtx_insn *gen_peephole2_211 (rtx_insn *, rtx *);
9869 : rtx_insn *
9870 : gen_peephole2_211 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9871 : {
9872 : if (dump_file)
9873 : fprintf (dump_file, "Splitting with gen_peephole2_211 (i386.md:23091)\n");
9874 : start_sequence ();
9875 : #define FAIL return (end_sequence (), nullptr)
9876 : #define DONE return end_sequence ()
9877 : #line 23103 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9878 : operands[0] = gen_lowpart (HImode, operands[0]);
9879 : #undef DONE
9880 : #undef FAIL
9881 : static const uint8_t expand_encoding[] = {
9882 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
9883 : 0x00, 0x4e, 0x10, 0x01, 0x00, 0x27, 0x08, 0x05,
9884 : 0x02, 0x11
9885 : };
9886 : return complete_seq (expand_encoding, operands);
9887 : }
9888 :
9889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23398 */
9890 : rtx
9891 : gen_tls_global_dynamic_32 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
9892 : {
9893 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
9894 : start_sequence ();
9895 : {
9896 : #define FAIL return (end_sequence (), nullptr)
9897 : #define DONE return end_sequence ()
9898 : #line 23410 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9899 : ix86_tls_descriptor_calls_expanded_in_cfun = true;
9900 : #undef DONE
9901 : #undef FAIL
9902 : }
9903 : static const uint8_t expand_encoding[] = {
9904 : 0x01, 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x1a,
9905 : 0x11, 0x04, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
9906 : 0x30, 0x11, 0x07, 0x15, 0x21, 0x00, 0x31, 0x11,
9907 : 0x21, 0x00, 0x31, 0x11, 0x05, 0x02, 0x11
9908 : };
9909 : return complete_seq (expand_encoding, operands);
9910 : }
9911 :
9912 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23624 */
9913 : rtx
9914 : gen_get_thread_pointerdi (const rtx operand0)
9915 : {
9916 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
9917 : start_sequence ();
9918 : {
9919 : #define FAIL return (end_sequence (), nullptr)
9920 : #define DONE return end_sequence ()
9921 : #line 23628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9922 : {
9923 : /* targetm is not visible in the scope of the condition. */
9924 : if (!targetm.have_tls)
9925 : error ("%<__builtin_thread_pointer%> is not supported on this target");
9926 : }
9927 : #undef DONE
9928 : #undef FAIL
9929 : }
9930 : static const uint8_t expand_encoding[] = {
9931 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x27,
9932 : 0x00, 0x14
9933 : };
9934 : return complete_seq (expand_encoding, operands);
9935 : }
9936 :
9937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23767 */
9938 : rtx
9939 : gen_tls_dynamic_gnu2_64_di (const rtx operand0, const rtx operand1)
9940 : {
9941 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
9942 : start_sequence ();
9943 : {
9944 : #define FAIL return (end_sequence (), nullptr)
9945 : #define DONE return end_sequence ()
9946 : #line 23777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9947 : {
9948 : operands[2] = can_create_pseudo_p () ? gen_reg_rtx (ptr_mode) : operands[0];
9949 : if (ix86_tls_descriptor_calls_expanded_in_cfun)
9950 : cfun->machine->tls_descriptor_call_multiple_p = true;
9951 : ix86_tls_descriptor_calls_expanded_in_cfun = true;
9952 : }
9953 : #undef DONE
9954 : #undef FAIL
9955 : }
9956 : static const uint8_t expand_encoding[] = {
9957 : 0x02, 0x1f, 0x01, 0x02, 0x1a, 0x12, 0x01, 0x01,
9958 : 0x01, 0x17, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
9959 : 0x1a, 0x12, 0x03, 0x01, 0x01, 0x01, 0x02, 0x30,
9960 : 0x12, 0x07, 0x17, 0x05, 0x02, 0x11
9961 : };
9962 : return complete_seq (expand_encoding, operands);
9963 : }
9964 :
9965 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24363 */
9966 : rtx
9967 : gen_fmodsf3 (const rtx operand0, const rtx operand1, const rtx operand2)
9968 : {
9969 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9970 : start_sequence ();
9971 : {
9972 : #define FAIL _Pragma ("GCC error \"fmodsf3 cannot FAIL\"") (void)0
9973 : #define DONE return end_sequence ()
9974 : #line 24368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9975 : {
9976 : rtx (*gen_truncxf) (rtx, rtx);
9977 :
9978 : rtx_code_label *label = gen_label_rtx ();
9979 :
9980 : rtx op1 = gen_reg_rtx (XFmode);
9981 : rtx op2 = gen_reg_rtx (XFmode);
9982 :
9983 : emit_insn (gen_extendsfxf2 (op2, operands[2]));
9984 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
9985 :
9986 : emit_label (label);
9987 : emit_insn (gen_fpremxf4_i387 (op1, op2, op1, op2));
9988 : ix86_emit_fp_unordered_jump (label);
9989 : LABEL_NUSES (label) = 1;
9990 :
9991 : /* Truncate the result properly for strict SSE math. */
9992 : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
9993 : && !TARGET_MIX_SSE_I387)
9994 : gen_truncxf = gen_truncxfsf2;
9995 : else
9996 : gen_truncxf = gen_truncxfsf2_i387_noop_unspec;
9997 :
9998 : emit_insn (gen_truncxf (operands[0], op1));
9999 : DONE;
10000 : }
10001 : #undef DONE
10002 : #undef FAIL
10003 : }
10004 : static const uint8_t expand_encoding[] = {
10005 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10006 : 0x01, 0x20, 0x00, 0x01, 0x02
10007 : };
10008 : return complete_seq (expand_encoding, operands);
10009 : }
10010 :
10011 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24555 */
10012 : rtx
10013 : gen_tanxf2 (const rtx operand0, const rtx operand1)
10014 : {
10015 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10016 : start_sequence ();
10017 : {
10018 : #define FAIL _Pragma ("GCC error \"tanxf2 cannot FAIL\"") (void)0
10019 : #define DONE return end_sequence ()
10020 : #line 24560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10021 : {
10022 : rtx one = gen_reg_rtx (SFmode);
10023 : emit_insn (gen_fptanxf4_i387 (one, operands[0], operands[1],
10024 : CONST1_RTX (SFmode)));
10025 : DONE;
10026 : }
10027 : #undef DONE
10028 : #undef FAIL
10029 : }
10030 : static const uint8_t expand_encoding[] = {
10031 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10032 : 0x01
10033 : };
10034 : return complete_seq (expand_encoding, operands);
10035 : }
10036 :
10037 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24667 */
10038 : rtx
10039 : gen_asindf2 (const rtx operand0, const rtx operand1)
10040 : {
10041 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10042 : start_sequence ();
10043 : {
10044 : #define FAIL _Pragma ("GCC error \"asindf2 cannot FAIL\"") (void)0
10045 : #define DONE return end_sequence ()
10046 : #line 24674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10047 : {
10048 : rtx op0 = gen_reg_rtx (XFmode);
10049 : rtx op1 = gen_reg_rtx (XFmode);
10050 :
10051 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10052 : emit_insn (gen_asinxf2 (op0, op1));
10053 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10054 : DONE;
10055 : }
10056 : #undef DONE
10057 : #undef FAIL
10058 : }
10059 : static const uint8_t expand_encoding[] = {
10060 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10061 : 0x01
10062 : };
10063 : return complete_seq (expand_encoding, operands);
10064 : }
10065 :
10066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24761 */
10067 : rtx
10068 : gen_coshdf2 (const rtx operand0, const rtx operand1)
10069 : {
10070 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10071 : start_sequence ();
10072 : {
10073 : #define FAIL _Pragma ("GCC error \"coshdf2 cannot FAIL\"") (void)0
10074 : #define DONE return end_sequence ()
10075 : #line 24768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10076 : {
10077 : rtx op0 = gen_reg_rtx (XFmode);
10078 : rtx op1 = gen_reg_rtx (XFmode);
10079 :
10080 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10081 : emit_insn (gen_coshxf2 (op0, op1));
10082 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10083 : DONE;
10084 : }
10085 : #undef DONE
10086 : #undef FAIL
10087 : }
10088 : static const uint8_t expand_encoding[] = {
10089 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10090 : 0x01
10091 : };
10092 : return complete_seq (expand_encoding, operands);
10093 : }
10094 :
10095 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24871 */
10096 : rtx
10097 : gen_atanhsf2 (const rtx operand0, const rtx operand1)
10098 : {
10099 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10100 : start_sequence ();
10101 : {
10102 : #define FAIL _Pragma ("GCC error \"atanhsf2 cannot FAIL\"") (void)0
10103 : #define DONE return end_sequence ()
10104 : #line 24878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10105 : {
10106 : rtx op0 = gen_reg_rtx (XFmode);
10107 : rtx op1 = gen_reg_rtx (XFmode);
10108 :
10109 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10110 : emit_insn (gen_atanhxf2 (op0, op1));
10111 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10112 : DONE;
10113 : }
10114 : #undef DONE
10115 : #undef FAIL
10116 : }
10117 : static const uint8_t expand_encoding[] = {
10118 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10119 : 0x01
10120 : };
10121 : return complete_seq (expand_encoding, operands);
10122 : }
10123 :
10124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24969 */
10125 : rtx
10126 : gen_log2df2 (const rtx operand0, const rtx operand1)
10127 : {
10128 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10129 : start_sequence ();
10130 : {
10131 : #define FAIL _Pragma ("GCC error \"log2df2 cannot FAIL\"") (void)0
10132 : #define DONE return end_sequence ()
10133 : #line 24976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10134 : {
10135 : rtx op0 = gen_reg_rtx (XFmode);
10136 : rtx op1 = gen_reg_rtx (XFmode);
10137 :
10138 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10139 : emit_insn (gen_log2xf2 (op0, op1));
10140 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10141 : DONE;
10142 : }
10143 : #undef DONE
10144 : #undef FAIL
10145 : }
10146 : static const uint8_t expand_encoding[] = {
10147 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10148 : 0x01
10149 : };
10150 : return complete_seq (expand_encoding, operands);
10151 : }
10152 :
10153 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25162 */
10154 : rtx
10155 : gen_expxf2 (const rtx operand0, const rtx operand1)
10156 : {
10157 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10158 : start_sequence ();
10159 : {
10160 : #define FAIL _Pragma ("GCC error \"expxf2 cannot FAIL\"") (void)0
10161 : #define DONE return end_sequence ()
10162 : #line 25167 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10163 : {
10164 : rtx op2 = force_reg (XFmode, standard_80387_constant_rtx (5)); /* fldl2e */
10165 :
10166 : emit_insn (gen_expNcorexf3 (operands[0], operands[1], op2));
10167 : DONE;
10168 : }
10169 : #undef DONE
10170 : #undef FAIL
10171 : }
10172 : static const uint8_t expand_encoding[] = {
10173 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10174 : 0x01
10175 : };
10176 : return complete_seq (expand_encoding, operands);
10177 : }
10178 :
10179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25232 */
10180 : rtx
10181 : gen_exp2df2 (const rtx operand0, const rtx operand1)
10182 : {
10183 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10184 : start_sequence ();
10185 : {
10186 : #define FAIL _Pragma ("GCC error \"exp2df2 cannot FAIL\"") (void)0
10187 : #define DONE return end_sequence ()
10188 : #line 25239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10189 : {
10190 : rtx op0 = gen_reg_rtx (XFmode);
10191 : rtx op1 = gen_reg_rtx (XFmode);
10192 :
10193 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10194 : emit_insn (gen_exp2xf2 (op0, op1));
10195 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10196 : DONE;
10197 : }
10198 : #undef DONE
10199 : #undef FAIL
10200 : }
10201 : static const uint8_t expand_encoding[] = {
10202 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10203 : 0x01
10204 : };
10205 : return complete_seq (expand_encoding, operands);
10206 : }
10207 :
10208 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25389 */
10209 : rtx
10210 : gen_significandxf2 (const rtx operand0, const rtx operand1)
10211 : {
10212 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
10213 : start_sequence ();
10214 : {
10215 : #define FAIL _Pragma ("GCC error \"significandxf2 cannot FAIL\"") (void)0
10216 : #define DONE return end_sequence ()
10217 : #line 25397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10218 : operands[2] = gen_reg_rtx (XFmode);
10219 : #undef DONE
10220 : #undef FAIL
10221 : }
10222 : static const uint8_t expand_encoding[] = {
10223 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10224 : 0x2f, 0x01, 0x01, 0x01, 0x53, 0x1f, 0x01, 0x02,
10225 : 0x1a, 0x2f, 0x01, 0x01, 0x01, 0x54
10226 : };
10227 : return complete_seq (expand_encoding, operands);
10228 : }
10229 :
10230 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25501 */
10231 : rtx
10232 : gen_nearbyinthf2 (const rtx operand0, const rtx operand1)
10233 : {
10234 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10235 : start_sequence ();
10236 : {
10237 : #define FAIL _Pragma ("GCC error \"nearbyinthf2 cannot FAIL\"") (void)0
10238 : #define DONE return end_sequence ()
10239 : #line 25505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10240 : {
10241 : emit_insn (gen_sse4_1_roundhf2 (operands[0],
10242 : operands[1],
10243 : GEN_INT (ROUND_MXCSR | ROUND_NO_EXC)));
10244 : DONE;
10245 : }
10246 : #undef DONE
10247 : #undef FAIL
10248 : }
10249 : static const uint8_t expand_encoding[] = {
10250 : 0x02, 0x01, 0x00, 0x01, 0x01
10251 : };
10252 : return complete_seq (expand_encoding, operands);
10253 : }
10254 :
10255 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25597 */
10256 : rtx
10257 : gen_lroundhfsi2 (const rtx operand0, const rtx operand1)
10258 : {
10259 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10260 : start_sequence ();
10261 : {
10262 : #define FAIL _Pragma ("GCC error \"lroundhfsi2 cannot FAIL\"") (void)0
10263 : #define DONE return end_sequence ()
10264 : #line 25602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10265 : {
10266 : ix86_expand_lround (operands[0], operands[1]);
10267 : DONE;
10268 : }
10269 : #undef DONE
10270 : #undef FAIL
10271 : }
10272 : static const uint8_t expand_encoding[] = {
10273 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
10274 : 0x01, 0x2f
10275 : };
10276 : return complete_seq (expand_encoding, operands);
10277 : }
10278 :
10279 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25619 */
10280 : rtx
10281 : gen_lroundsfsi2 (const rtx operand0, const rtx operand1)
10282 : {
10283 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10284 : start_sequence ();
10285 : {
10286 : #define FAIL _Pragma ("GCC error \"lroundsfsi2 cannot FAIL\"") (void)0
10287 : #define DONE return end_sequence ()
10288 : #line 25630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10289 : {
10290 : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
10291 : && SImode != HImode
10292 : && ((SImode != DImode) || TARGET_64BIT)
10293 : && !flag_trapping_math && !flag_rounding_math)
10294 : ix86_expand_lround (operands[0], operands[1]);
10295 : else
10296 : ix86_emit_i387_round (operands[0], operands[1]);
10297 : DONE;
10298 : }
10299 : #undef DONE
10300 : #undef FAIL
10301 : }
10302 : static const uint8_t expand_encoding[] = {
10303 : 0x02, 0x01, 0x00, 0x01, 0x01
10304 : };
10305 : return complete_seq (expand_encoding, operands);
10306 : }
10307 :
10308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25715 */
10309 : rtx
10310 : gen_roundevenxf2 (const rtx operand0, const rtx operand1)
10311 : {
10312 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10313 : static const uint8_t expand_encoding[] = {
10314 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
10315 : 0x01, 0x01, 0x01, 0x4b, 0x05, 0x02, 0x11
10316 : };
10317 : return expand_rtx (expand_encoding, operands);
10318 : }
10319 :
10320 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25723 */
10321 : rtx
10322 : gen_btrunchf2 (const rtx operand0, const rtx operand1)
10323 : {
10324 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10325 : start_sequence ();
10326 : {
10327 : #define FAIL _Pragma ("GCC error \"btrunchf2 cannot FAIL\"") (void)0
10328 : #define DONE return end_sequence ()
10329 : #line 25729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10330 : {
10331 : emit_insn (gen_sse4_1_roundhf2 (operands[0], operands[1],
10332 : GEN_INT (ROUND_TRUNC | ROUND_NO_EXC)));
10333 : DONE;
10334 : }
10335 : #undef DONE
10336 : #undef FAIL
10337 : }
10338 : static const uint8_t expand_encoding[] = {
10339 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10340 : 0x2b, 0x01, 0x01, 0x01, 0x4e, 0x05, 0x02, 0x11
10341 : };
10342 : return complete_seq (expand_encoding, operands);
10343 : }
10344 :
10345 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25794 */
10346 : extern rtx_insn *gen_split_934 (rtx_insn *, rtx *);
10347 : rtx_insn *
10348 : gen_split_934 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10349 : {
10350 : if (dump_file)
10351 : fprintf (dump_file, "Splitting with gen_split_934 (i386.md:25794)\n");
10352 : start_sequence ();
10353 : #define FAIL return (end_sequence (), nullptr)
10354 : #define DONE return end_sequence ()
10355 : #line 25805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10356 : {
10357 : ix86_optimize_mode_switching[I387_CEIL] = 1;
10358 :
10359 : operands[2] = assign_386_stack_local (HImode, SLOT_CW_STORED);
10360 : operands[3] = assign_386_stack_local (HImode, SLOT_CW_CEIL);
10361 :
10362 : emit_insn (gen_fisthi2_ceil (operands[0], operands[1],
10363 : operands[2], operands[3]));
10364 : DONE;
10365 : }
10366 : #undef DONE
10367 : #undef FAIL
10368 : static const uint8_t expand_encoding[] = {
10369 : 0x01, 0x27, 0x00
10370 : };
10371 : return complete_seq (expand_encoding, operands);
10372 : }
10373 :
10374 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25794 */
10375 : extern rtx_insn *gen_split_936 (rtx_insn *, rtx *);
10376 : rtx_insn *
10377 : gen_split_936 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10378 : {
10379 : if (dump_file)
10380 : fprintf (dump_file, "Splitting with gen_split_936 (i386.md:25794)\n");
10381 : start_sequence ();
10382 : #define FAIL return (end_sequence (), nullptr)
10383 : #define DONE return end_sequence ()
10384 : #line 25805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10385 : {
10386 : ix86_optimize_mode_switching[I387_CEIL] = 1;
10387 :
10388 : operands[2] = assign_386_stack_local (HImode, SLOT_CW_STORED);
10389 : operands[3] = assign_386_stack_local (HImode, SLOT_CW_CEIL);
10390 :
10391 : emit_insn (gen_fistsi2_ceil (operands[0], operands[1],
10392 : operands[2], operands[3]));
10393 : DONE;
10394 : }
10395 : #undef DONE
10396 : #undef FAIL
10397 : static const uint8_t expand_encoding[] = {
10398 : 0x01, 0x27, 0x00
10399 : };
10400 : return complete_seq (expand_encoding, operands);
10401 : }
10402 :
10403 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25855 */
10404 : rtx
10405 : gen_lfloorhfdi2 (const rtx operand0, const rtx operand1)
10406 : {
10407 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10408 : start_sequence ();
10409 : {
10410 : #define FAIL _Pragma ("GCC error \"lfloorhfdi2 cannot FAIL\"") (void)0
10411 : #define DONE return end_sequence ()
10412 : #line 25860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10413 : {
10414 : rtx tmp = gen_reg_rtx (HFmode);
10415 : emit_insn (gen_sse4_1_roundhf2 (tmp, operands[1],
10416 : GEN_INT (ROUND_FLOOR | ROUND_NO_EXC)));
10417 : emit_insn (gen_fix_trunchfdi2 (operands[0], tmp));
10418 : DONE;
10419 : }
10420 : #undef DONE
10421 : #undef FAIL
10422 : }
10423 : static const uint8_t expand_encoding[] = {
10424 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01,
10425 : 0x01, 0x4f
10426 : };
10427 : return complete_seq (expand_encoding, operands);
10428 : }
10429 :
10430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25908 */
10431 : rtx
10432 : gen_signbittf2 (const rtx operand0, const rtx operand1)
10433 : {
10434 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10435 : start_sequence ();
10436 : {
10437 : #define FAIL _Pragma ("GCC error \"signbittf2 cannot FAIL\"") (void)0
10438 : #define DONE return end_sequence ()
10439 : #line 25912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10440 : {
10441 : if (TARGET_SSE4_1)
10442 : {
10443 : rtx mask = ix86_build_signbit_mask (TFmode, 0, 0);
10444 : rtx scratch = gen_reg_rtx (QImode);
10445 :
10446 : emit_insn (gen_ptesttf2 (operands[1], mask));
10447 : ix86_expand_setcc (scratch, NE,
10448 : gen_rtx_REG (CCZmode, FLAGS_REG), const0_rtx);
10449 :
10450 : emit_insn (gen_zero_extendqisi2 (operands[0], scratch));
10451 : }
10452 : else
10453 : {
10454 : emit_insn (gen_sse_movmskps (operands[0],
10455 : gen_lowpart (V4SFmode, operands[1])));
10456 : emit_insn (gen_andsi3 (operands[0], operands[0], GEN_INT (0x8)));
10457 : }
10458 : DONE;
10459 : }
10460 : #undef DONE
10461 : #undef FAIL
10462 : }
10463 : static const uint8_t expand_encoding[] = {
10464 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10465 : 0x01
10466 : };
10467 : return complete_seq (expand_encoding, operands);
10468 : }
10469 :
10470 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26288 */
10471 : rtx
10472 : gen_setmemsi (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)
10473 : {
10474 : rtx operands[9] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8 };
10475 : start_sequence ();
10476 : {
10477 : #define FAIL return (end_sequence (), nullptr)
10478 : #define DONE return end_sequence ()
10479 : #line 26299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10480 : {
10481 : if (ix86_expand_set_or_cpymem (operands[0], NULL,
10482 : operands[1], operands[2],
10483 : operands[3], operands[4],
10484 : operands[5], operands[6],
10485 : operands[7], operands[8], true))
10486 : DONE;
10487 : else
10488 : FAIL;
10489 : }
10490 : #undef DONE
10491 : #undef FAIL
10492 : }
10493 : static const uint8_t expand_encoding[] = {
10494 : 0x09, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10495 : 0x01, 0x20, 0x00, 0x01, 0x02, 0x20, 0x00, 0x01,
10496 : 0x03, 0x20, 0x00, 0x01, 0x04, 0x20, 0x00, 0x01,
10497 : 0x05, 0x20, 0x00, 0x01, 0x06, 0x20, 0x00, 0x01,
10498 : 0x07, 0x20, 0x00, 0x01, 0x08
10499 : };
10500 : return complete_seq (expand_encoding, operands);
10501 : }
10502 :
10503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26586 */
10504 : rtx
10505 : gen_cmpstrnqi_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
10506 : {
10507 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
10508 : start_sequence ();
10509 : {
10510 : #define FAIL return (end_sequence (), nullptr)
10511 : #define DONE return end_sequence ()
10512 : #line 26598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10513 : {
10514 : if (TARGET_CLD)
10515 : ix86_optimize_mode_switching[X86_DIRFLAG] = 1;
10516 : }
10517 : #undef DONE
10518 : #undef FAIL
10519 : }
10520 : static const uint8_t expand_encoding[] = {
10521 : 0x01, 0x17, 0x00, 0x05, 0x1f, 0x30, 0x02, 0x11,
10522 : 0x39, 0x02, 0x5c, 0x00, 0x01, 0x02, 0x27, 0x00,
10523 : 0x3a, 0x02, 0x01, 0x04, 0x01, 0x05, 0x30, 0x02,
10524 : 0x11, 0x20, 0x00, 0x01, 0x03, 0x21, 0x00, 0x01,
10525 : 0x00, 0x21, 0x00, 0x01, 0x01, 0x21, 0x00, 0x01,
10526 : 0x02
10527 : };
10528 : return complete_seq (expand_encoding, operands);
10529 : }
10530 :
10531 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26814 */
10532 : rtx
10533 : gen_x86_movhicc_0_m1_neg (const rtx operand0)
10534 : {
10535 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
10536 : static const uint8_t expand_encoding[] = {
10537 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3d, 0x10,
10538 : 0x66, 0x10, 0x30, 0x08, 0x11, 0x27, 0x00, 0x05,
10539 : 0x02, 0x11
10540 : };
10541 : return expand_rtx (expand_encoding, operands);
10542 : }
10543 :
10544 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26845 */
10545 : extern rtx_insn *gen_split_945 (rtx_insn *, rtx *);
10546 : rtx_insn *
10547 : gen_split_945 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10548 : {
10549 : if (dump_file)
10550 : fprintf (dump_file, "Splitting with gen_split_945 (i386.md:26845)\n");
10551 : start_sequence ();
10552 : static const uint8_t expand_encoding[] = {
10553 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
10554 : 0x01, 0x01, 0x27, 0x00, 0x29, 0x1f, 0x01, 0x00,
10555 : 0x3d, 0x0f, 0x66, 0x0f, 0x30, 0x08, 0x11, 0x27,
10556 : 0x00
10557 : };
10558 : return complete_seq (expand_encoding, operands);
10559 : }
10560 :
10561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26960 */
10562 : extern rtx_insn *gen_peephole2_220 (rtx_insn *, rtx *);
10563 : rtx_insn *
10564 : gen_peephole2_220 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10565 : {
10566 : HARD_REG_SET _regs_allocated;
10567 : CLEAR_HARD_REG_SET (_regs_allocated);
10568 : if ((operands[4] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
10569 : return NULL;
10570 : if (dump_file)
10571 : fprintf (dump_file, "Splitting with gen_peephole2_220 (i386.md:26960)\n");
10572 : start_sequence ();
10573 : #define FAIL return (end_sequence (), nullptr)
10574 : #define DONE return end_sequence ()
10575 : #line 26973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10576 : {
10577 : if (MEM_P (operands[2]))
10578 : {
10579 : operands[5] = operands[2];
10580 : operands[2] = operands[4];
10581 : }
10582 : else if (MEM_P (operands[3]))
10583 : {
10584 : operands[5] = operands[3];
10585 : operands[3] = operands[4];
10586 : }
10587 : else
10588 : gcc_unreachable ();
10589 : }
10590 : #undef DONE
10591 : #undef FAIL
10592 : static const uint8_t expand_encoding[] = {
10593 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x05, 0x1f, 0x01,
10594 : 0x00, 0x39, 0x11, 0x01, 0x01, 0x01, 0x02, 0x01,
10595 : 0x03
10596 : };
10597 : return complete_seq (expand_encoding, operands);
10598 : }
10599 :
10600 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27115 */
10601 : rtx
10602 : gen_movsfcc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10603 : {
10604 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10605 : start_sequence ();
10606 : {
10607 : #define FAIL return (end_sequence (), nullptr)
10608 : #define DONE return end_sequence ()
10609 : #line 27123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10610 : if (ix86_expand_fp_movcc (operands)) DONE; else FAIL;
10611 : #undef DONE
10612 : #undef FAIL
10613 : }
10614 : static const uint8_t expand_encoding[] = {
10615 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x2d, 0x01, 0x01,
10616 : 0x01, 0x02, 0x01, 0x03
10617 : };
10618 : return complete_seq (expand_encoding, operands);
10619 : }
10620 :
10621 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27344 */
10622 : extern rtx_insn *gen_split_959 (rtx_insn *, rtx *);
10623 : rtx_insn *
10624 : gen_split_959 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10625 : {
10626 : if (dump_file)
10627 : fprintf (dump_file, "Splitting with gen_split_959 (i386.md:27344)\n");
10628 : start_sequence ();
10629 : static const uint8_t expand_encoding[] = {
10630 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x02, 0x01,
10631 : 0x02, 0x01, 0x01, 0x3f
10632 : };
10633 : return complete_seq (expand_encoding, operands);
10634 : }
10635 :
10636 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27417 */
10637 : rtx
10638 : gen_addsicc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10639 : {
10640 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10641 : start_sequence ();
10642 : {
10643 : #define FAIL return (end_sequence (), nullptr)
10644 : #define DONE return end_sequence ()
10645 : #line 27423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10646 : if (ix86_expand_int_addcc (operands)) DONE; else FAIL;
10647 : #undef DONE
10648 : #undef FAIL
10649 : }
10650 : static const uint8_t expand_encoding[] = {
10651 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
10652 : 0x03
10653 : };
10654 : return complete_seq (expand_encoding, operands);
10655 : }
10656 :
10657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10658 : rtx
10659 : gen_sminsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
10660 : {
10661 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10662 : static const uint8_t expand_encoding[] = {
10663 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x52, 0x11,
10664 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10665 : };
10666 : return expand_rtx (expand_encoding, operands);
10667 : }
10668 :
10669 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10670 : rtx
10671 : gen_uminti3 (const rtx operand0, const rtx operand1, const rtx operand2)
10672 : {
10673 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10674 : static const uint8_t expand_encoding[] = {
10675 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x54, 0x13,
10676 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10677 : };
10678 : return expand_rtx (expand_encoding, operands);
10679 : }
10680 :
10681 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27498 */
10682 : extern rtx_insn *gen_split_970 (rtx_insn *, rtx *);
10683 : rtx_insn *
10684 : gen_split_970 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10685 : {
10686 : if (dump_file)
10687 : fprintf (dump_file, "Splitting with gen_split_970 (i386.md:27498)\n");
10688 : start_sequence ();
10689 : #define FAIL return (end_sequence (), nullptr)
10690 : #define DONE return end_sequence ()
10691 : #line 27513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10692 : {
10693 : machine_mode mode = QImode;
10694 : rtx cmp_op = operands[2];
10695 :
10696 : operands[2] = force_reg (mode, cmp_op);
10697 :
10698 : enum rtx_code code = LE;
10699 :
10700 : if (cmp_op == const1_rtx)
10701 : {
10702 : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10703 : Convert umax (x, 1) into (x != 0 ? x : 1).
10704 : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10705 : cmp_op = const0_rtx;
10706 : if (code == GE)
10707 : code = GT;
10708 : else if (code == GEU)
10709 : code = NE;
10710 : }
10711 : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10712 : else if (cmp_op == constm1_rtx && code == LE)
10713 : {
10714 : cmp_op = const0_rtx;
10715 : code = LT;
10716 : }
10717 : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10718 : else if (cmp_op == constm1_rtx && code == GE)
10719 : cmp_op = const0_rtx;
10720 : else if (cmp_op != const0_rtx)
10721 : cmp_op = operands[2];
10722 :
10723 : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10724 : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10725 :
10726 : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10727 : emit_insn (gen_rtx_SET (flags, tmp));
10728 :
10729 : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10730 : }
10731 : #undef DONE
10732 : #undef FAIL
10733 : static const uint8_t expand_encoding[] = {
10734 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x0f, 0x01, 0x03,
10735 : 0x01, 0x01, 0x01, 0x02
10736 : };
10737 : return complete_seq (expand_encoding, operands);
10738 : }
10739 :
10740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27498 */
10741 : extern rtx_insn *gen_split_980 (rtx_insn *, rtx *);
10742 : rtx_insn *
10743 : gen_split_980 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10744 : {
10745 : if (dump_file)
10746 : fprintf (dump_file, "Splitting with gen_split_980 (i386.md:27498)\n");
10747 : start_sequence ();
10748 : #define FAIL return (end_sequence (), nullptr)
10749 : #define DONE return end_sequence ()
10750 : #line 27513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10751 : {
10752 : machine_mode mode = SImode;
10753 : rtx cmp_op = operands[2];
10754 :
10755 : operands[2] = force_reg (mode, cmp_op);
10756 :
10757 : enum rtx_code code = LEU;
10758 :
10759 : if (cmp_op == const1_rtx)
10760 : {
10761 : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10762 : Convert umax (x, 1) into (x != 0 ? x : 1).
10763 : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10764 : cmp_op = const0_rtx;
10765 : if (code == GE)
10766 : code = GT;
10767 : else if (code == GEU)
10768 : code = NE;
10769 : }
10770 : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10771 : else if (cmp_op == constm1_rtx && code == LE)
10772 : {
10773 : cmp_op = const0_rtx;
10774 : code = LT;
10775 : }
10776 : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10777 : else if (cmp_op == constm1_rtx && code == GE)
10778 : cmp_op = const0_rtx;
10779 : else if (cmp_op != const0_rtx)
10780 : cmp_op = operands[2];
10781 :
10782 : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10783 : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10784 :
10785 : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10786 : emit_insn (gen_rtx_SET (flags, tmp));
10787 :
10788 : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10789 : }
10790 : #undef DONE
10791 : #undef FAIL
10792 : static const uint8_t expand_encoding[] = {
10793 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x03,
10794 : 0x01, 0x01, 0x01, 0x02
10795 : };
10796 : return complete_seq (expand_encoding, operands);
10797 : }
10798 :
10799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27567 */
10800 : extern rtx_insn *gen_peephole2_238 (rtx_insn *, rtx *);
10801 : rtx_insn *
10802 : gen_peephole2_238 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10803 : {
10804 : HARD_REG_SET _regs_allocated;
10805 : CLEAR_HARD_REG_SET (_regs_allocated);
10806 : if ((operands[0] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
10807 : return NULL;
10808 : if (dump_file)
10809 : fprintf (dump_file, "Splitting with gen_peephole2_238 (i386.md:27567)\n");
10810 : start_sequence ();
10811 : #define FAIL return (end_sequence (), nullptr)
10812 : #define DONE return end_sequence ()
10813 : #line 27575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10814 : {
10815 : ix86_expand_clear (operands[0]);
10816 : emit_move_insn (operands[1], operands[0]);
10817 : emit_move_insn (operands[2], operands[0]);
10818 : emit_move_insn (operands[3], operands[0]);
10819 : ix86_last_zero_store_uid
10820 : = INSN_UID (emit_move_insn (operands[4], operands[0]));
10821 : DONE;
10822 : }
10823 : #undef DONE
10824 : #undef FAIL
10825 : static const uint8_t expand_encoding[] = {
10826 : 0x01, 0x27, 0x00
10827 : };
10828 : return complete_seq (expand_encoding, operands);
10829 : }
10830 :
10831 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27611 */
10832 : extern rtx_insn *gen_peephole2_244 (rtx_insn *, rtx *);
10833 : rtx_insn *
10834 : gen_peephole2_244 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10835 : {
10836 : if (dump_file)
10837 : fprintf (dump_file, "Splitting with gen_peephole2_244 (i386.md:27611)\n");
10838 : start_sequence ();
10839 : #define FAIL return (end_sequence (), nullptr)
10840 : #define DONE return end_sequence ()
10841 : #line 27621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10842 : {
10843 : emit_move_insn (operands[5], operands[0]);
10844 : emit_move_insn (operands[1], operands[0]);
10845 : emit_move_insn (operands[2], operands[0]);
10846 : emit_move_insn (operands[3], operands[0]);
10847 : ix86_last_zero_store_uid
10848 : = INSN_UID (emit_move_insn (operands[4], operands[0]));
10849 : DONE;
10850 : }
10851 : #undef DONE
10852 : #undef FAIL
10853 : static const uint8_t expand_encoding[] = {
10854 : 0x01, 0x27, 0x00
10855 : };
10856 : return complete_seq (expand_encoding, operands);
10857 : }
10858 :
10859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27678 */
10860 : extern rtx_insn *gen_split_986 (rtx_insn *, rtx *);
10861 : rtx_insn *
10862 : gen_split_986 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10863 : {
10864 : if (dump_file)
10865 : fprintf (dump_file, "Splitting with gen_split_986 (i386.md:27678)\n");
10866 : start_sequence ();
10867 : #define FAIL return (end_sequence (), nullptr)
10868 : #define DONE return end_sequence ()
10869 : #line 27701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10870 : {
10871 : operands[2] = force_reg (HImode, operands[2]);
10872 : operands[3] = gen_reg_rtx (HImode);
10873 : }
10874 : #undef DONE
10875 : #undef FAIL
10876 : static const uint8_t expand_encoding[] = {
10877 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
10878 : 0x3a, 0x08, 0x3b, 0x10, 0x01, 0x01, 0x01, 0x02,
10879 : 0x01, 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x10, 0x01,
10880 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x10,
10881 : 0x63, 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01,
10882 : 0x03, 0x01, 0x02
10883 : };
10884 : return complete_seq (expand_encoding, operands);
10885 : }
10886 :
10887 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27678 */
10888 : extern rtx_insn *gen_split_996 (rtx_insn *, rtx *);
10889 : rtx_insn *
10890 : gen_split_996 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10891 : {
10892 : if (dump_file)
10893 : fprintf (dump_file, "Splitting with gen_split_996 (i386.md:27678)\n");
10894 : start_sequence ();
10895 : #define FAIL return (end_sequence (), nullptr)
10896 : #define DONE return end_sequence ()
10897 : #line 27701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10898 : {
10899 : operands[2] = force_reg (DImode, operands[2]);
10900 : operands[3] = gen_reg_rtx (DImode);
10901 : }
10902 : #undef DONE
10903 : #undef FAIL
10904 : static const uint8_t expand_encoding[] = {
10905 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
10906 : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
10907 : 0x01, 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x12, 0x01,
10908 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x12,
10909 : 0x66, 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01,
10910 : 0x03, 0x01, 0x02
10911 : };
10912 : return complete_seq (expand_encoding, operands);
10913 : }
10914 :
10915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27947 */
10916 : rtx
10917 : gen_save_stack_nonlocal (const rtx operand0, const rtx operand1)
10918 : {
10919 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10920 : start_sequence ();
10921 : {
10922 : #define FAIL return (end_sequence (), nullptr)
10923 : #define DONE return end_sequence ()
10924 : #line 27951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10925 : {
10926 : rtx stack_slot;
10927 :
10928 : if (flag_cf_protection & CF_RETURN)
10929 : {
10930 : /* Copy shadow stack pointer to the first slot
10931 : and stack pointer to the second slot. */
10932 : rtx ssp_slot = adjust_address (operands[0], word_mode, 0);
10933 : stack_slot = adjust_address (operands[0], Pmode, UNITS_PER_WORD);
10934 :
10935 : rtx reg_ssp = force_reg (word_mode, const0_rtx);
10936 : emit_insn (gen_rdssp (word_mode, reg_ssp, reg_ssp));
10937 : emit_move_insn (ssp_slot, reg_ssp);
10938 : }
10939 : else
10940 : stack_slot = adjust_address (operands[0], Pmode, 0);
10941 : emit_move_insn (stack_slot, operands[1]);
10942 : DONE;
10943 : }
10944 : #undef DONE
10945 : #undef FAIL
10946 : }
10947 : static const uint8_t expand_encoding[] = {
10948 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
10949 : };
10950 : return complete_seq (expand_encoding, operands);
10951 : }
10952 :
10953 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28199 */
10954 : extern rtx_insn *gen_peephole2_268 (rtx_insn *, rtx *);
10955 : rtx_insn *
10956 : gen_peephole2_268 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10957 : {
10958 : if (dump_file)
10959 : fprintf (dump_file, "Splitting with gen_peephole2_268 (i386.md:28199)\n");
10960 : start_sequence ();
10961 : static const uint8_t expand_encoding[] = {
10962 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10963 : 0x12, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
10964 : 0x01, 0x04
10965 : };
10966 : return complete_seq (expand_encoding, operands);
10967 : }
10968 :
10969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28378 */
10970 : extern rtx_insn *gen_split_1006 (rtx_insn *, rtx *);
10971 : rtx_insn *
10972 : gen_split_1006 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10973 : {
10974 : if (dump_file)
10975 : fprintf (dump_file, "Splitting with gen_split_1006 (i386.md:28378)\n");
10976 : start_sequence ();
10977 : #define FAIL return (end_sequence (), nullptr)
10978 : #define DONE return end_sequence ()
10979 : #line 28388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10980 : {
10981 : operands[0] = gen_lowpart (SImode, operands[0]);
10982 : operands[1] = gen_lowpart (SImode, operands[1]);
10983 : }
10984 : #undef DONE
10985 : #undef FAIL
10986 : static const uint8_t expand_encoding[] = {
10987 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3d,
10988 : 0x11, 0x01, 0x01, 0x05, 0x02, 0x11
10989 : };
10990 : return complete_seq (expand_encoding, operands);
10991 : }
10992 :
10993 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28428 */
10994 : extern rtx_insn *gen_peephole2_276 (rtx_insn *, rtx *);
10995 : rtx_insn *
10996 : gen_peephole2_276 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10997 : {
10998 : HARD_REG_SET _regs_allocated;
10999 : CLEAR_HARD_REG_SET (_regs_allocated);
11000 : if ((operands[2] = peep2_find_free_register (1, 1, "r", DImode, &_regs_allocated)) == NULL_RTX)
11001 : return NULL;
11002 : if (dump_file)
11003 : fprintf (dump_file, "Splitting with gen_peephole2_276 (i386.md:28428)\n");
11004 : start_sequence ();
11005 : static const uint8_t expand_encoding[] = {
11006 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
11007 : 0x00, 0x01, 0x02
11008 : };
11009 : return complete_seq (expand_encoding, operands);
11010 : }
11011 :
11012 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28500 */
11013 : extern rtx_insn *gen_peephole2_286 (rtx_insn *, rtx *);
11014 : rtx_insn *
11015 : gen_peephole2_286 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11016 : {
11017 : if (dump_file)
11018 : fprintf (dump_file, "Splitting with gen_peephole2_286 (i386.md:28500)\n");
11019 : start_sequence ();
11020 : static const uint8_t expand_encoding[] = {
11021 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
11022 : 0x10, 0x01, 0x01, 0x27, 0x81, 0xff, 0xff, 0xff,
11023 : 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x05, 0x02,
11024 : 0x11
11025 : };
11026 : return complete_seq (expand_encoding, operands);
11027 : }
11028 :
11029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28593 */
11030 : extern rtx_insn *gen_peephole2_296 (rtx_insn *, rtx *);
11031 : rtx_insn *
11032 : gen_peephole2_296 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11033 : {
11034 : HARD_REG_SET _regs_allocated;
11035 : CLEAR_HARD_REG_SET (_regs_allocated);
11036 : if ((operands[2] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11037 : return NULL;
11038 : if (dump_file)
11039 : fprintf (dump_file, "Splitting with gen_peephole2_296 (i386.md:28593)\n");
11040 : start_sequence ();
11041 : static const uint8_t expand_encoding[] = {
11042 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
11043 : 0x02, 0x1f, 0x01, 0x00, 0x02, 0x03, 0x01, 0x00,
11044 : 0x01, 0x02, 0x05, 0x02, 0x11
11045 : };
11046 : return complete_seq (expand_encoding, operands);
11047 : }
11048 :
11049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28654 */
11050 : extern rtx_insn *gen_peephole2_306 (rtx_insn *, rtx *);
11051 : rtx_insn *
11052 : gen_peephole2_306 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11053 : {
11054 : if (dump_file)
11055 : fprintf (dump_file, "Splitting with gen_peephole2_306 (i386.md:28654)\n");
11056 : start_sequence ();
11057 : static const uint8_t expand_encoding[] = {
11058 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x1f, 0x01,
11059 : 0x00, 0x02, 0x03, 0x01, 0x00, 0x01, 0x01
11060 : };
11061 : return complete_seq (expand_encoding, operands);
11062 : }
11063 :
11064 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28695 */
11065 : extern rtx_insn *gen_peephole2_312 (rtx_insn *, rtx *);
11066 : rtx_insn *
11067 : gen_peephole2_312 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11068 : {
11069 : HARD_REG_SET _regs_allocated;
11070 : CLEAR_HARD_REG_SET (_regs_allocated);
11071 : if ((operands[2] = peep2_find_free_register (0, 0, "r", HImode, &_regs_allocated)) == NULL_RTX)
11072 : return NULL;
11073 : if (dump_file)
11074 : fprintf (dump_file, "Splitting with gen_peephole2_312 (i386.md:28695)\n");
11075 : start_sequence ();
11076 : static const uint8_t expand_encoding[] = {
11077 : 0x03, 0x1f, 0x01, 0x02, 0x01, 0x00, 0x17, 0x00,
11078 : 0x02, 0x1f, 0x01, 0x02, 0x02, 0x03, 0x01, 0x01,
11079 : 0x01, 0x02, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x00,
11080 : 0x01, 0x02
11081 : };
11082 : return complete_seq (expand_encoding, operands);
11083 : }
11084 :
11085 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28747 */
11086 : extern rtx_insn *gen_peephole2_322 (rtx_insn *, rtx *);
11087 : rtx_insn *
11088 : gen_peephole2_322 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11089 : {
11090 : if (dump_file)
11091 : fprintf (dump_file, "Splitting with gen_peephole2_322 (i386.md:28747)\n");
11092 : start_sequence ();
11093 : #define FAIL return (end_sequence (), nullptr)
11094 : #define DONE return end_sequence ()
11095 : #line 28767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11096 : {
11097 : operands[4] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (1)), 0, 0));
11098 : operands[5]
11099 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11100 : copy_rtx (operands[1]), operands[2]);
11101 : operands[6]
11102 : = gen_rtx_COMPARE (GET_MODE (operands[4]), copy_rtx (operands[5]),
11103 : const0_rtx);
11104 : }
11105 : #undef DONE
11106 : #undef FAIL
11107 : static const uint8_t expand_encoding[] = {
11108 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x01,
11109 : 0x06, 0x1f, 0x01, 0x01, 0x01, 0x05
11110 : };
11111 : return complete_seq (expand_encoding, operands);
11112 : }
11113 :
11114 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28848 */
11115 : extern rtx_insn *gen_peephole2_332 (rtx_insn *, rtx *);
11116 : rtx_insn *
11117 : gen_peephole2_332 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11118 : {
11119 : if (dump_file)
11120 : fprintf (dump_file, "Splitting with gen_peephole2_332 (i386.md:28848)\n");
11121 : start_sequence ();
11122 : #define FAIL return (end_sequence (), nullptr)
11123 : #define DONE return end_sequence ()
11124 : #line 28865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11125 : {
11126 : operands[3] = SET_DEST (PATTERN (peep2_next_insn (2)));
11127 : operands[4]
11128 : = gen_rtx_fmt_ee (GET_CODE (operands[2]), GET_MODE (operands[2]),
11129 : copy_rtx (operands[1]),
11130 : operands[0]);
11131 : operands[5]
11132 : = gen_rtx_COMPARE (GET_MODE (operands[3]),
11133 : copy_rtx (operands[4]),
11134 : const0_rtx);
11135 : }
11136 : #undef DONE
11137 : #undef FAIL
11138 : static const uint8_t expand_encoding[] = {
11139 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x03, 0x01,
11140 : 0x05, 0x1f, 0x01, 0x01, 0x01, 0x04
11141 : };
11142 : return complete_seq (expand_encoding, operands);
11143 : }
11144 :
11145 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28916 */
11146 : extern rtx_insn *gen_peephole2_342 (rtx_insn *, rtx *);
11147 : rtx_insn *
11148 : gen_peephole2_342 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11149 : {
11150 : if (dump_file)
11151 : fprintf (dump_file, "Splitting with gen_peephole2_342 (i386.md:28916)\n");
11152 : start_sequence ();
11153 : #define FAIL return (end_sequence (), nullptr)
11154 : #define DONE return end_sequence ()
11155 : #line 28943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11156 : {
11157 : operands[7] = SET_DEST (PATTERN (peep2_next_insn (3)));
11158 : operands[8] = gen_rtx_XOR (DImode, copy_rtx (operands[1]),
11159 : operands[2]);
11160 : operands[9]
11161 : = gen_rtx_COMPARE (GET_MODE (operands[7]),
11162 : copy_rtx (operands[8]),
11163 : const0_rtx);
11164 : }
11165 : #undef DONE
11166 : #undef FAIL
11167 : static const uint8_t expand_encoding[] = {
11168 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
11169 : 0x09, 0x1f, 0x01, 0x01, 0x01, 0x08
11170 : };
11171 : return complete_seq (expand_encoding, operands);
11172 : }
11173 :
11174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29069 */
11175 : extern rtx_insn *gen_peephole2_352 (rtx_insn *, rtx *);
11176 : rtx_insn *
11177 : gen_peephole2_352 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11178 : {
11179 : if (dump_file)
11180 : fprintf (dump_file, "Splitting with gen_peephole2_352 (i386.md:29069)\n");
11181 : start_sequence ();
11182 : #define FAIL return (end_sequence (), nullptr)
11183 : #define DONE return end_sequence ()
11184 : #line 29092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11185 : {
11186 : operands[5] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (1)), 0, 0));
11187 : operands[6]
11188 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11189 : copy_rtx (operands[1]), operands[2]);
11190 : operands[7]
11191 : = gen_rtx_COMPARE (GET_MODE (operands[5]), copy_rtx (operands[6]),
11192 : const0_rtx);
11193 : }
11194 : #undef DONE
11195 : #undef FAIL
11196 : static const uint8_t expand_encoding[] = {
11197 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05, 0x01,
11198 : 0x07, 0x1f, 0x01, 0x01, 0x01, 0x06
11199 : };
11200 : return complete_seq (expand_encoding, operands);
11201 : }
11202 :
11203 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29207 */
11204 : extern rtx_insn *gen_peephole2_362 (rtx_insn *, rtx *);
11205 : rtx_insn *
11206 : gen_peephole2_362 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11207 : {
11208 : if (dump_file)
11209 : fprintf (dump_file, "Splitting with gen_peephole2_362 (i386.md:29207)\n");
11210 : start_sequence ();
11211 : #define FAIL return (end_sequence (), nullptr)
11212 : #define DONE return end_sequence ()
11213 : #line 29238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11214 : {
11215 : operands[8] = SET_DEST (PATTERN (peep2_next_insn (3)));
11216 : operands[9] = gen_rtx_XOR (HImode, copy_rtx (operands[1]),
11217 : gen_lowpart (HImode, operands[2]));
11218 : operands[10]
11219 : = gen_rtx_COMPARE (GET_MODE (operands[8]),
11220 : copy_rtx (operands[9]),
11221 : const0_rtx);
11222 : }
11223 : #undef DONE
11224 : #undef FAIL
11225 : static const uint8_t expand_encoding[] = {
11226 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x08, 0x01,
11227 : 0x0a, 0x1f, 0x01, 0x01, 0x01, 0x09
11228 : };
11229 : return complete_seq (expand_encoding, operands);
11230 : }
11231 :
11232 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29339 */
11233 : extern rtx_insn *gen_peephole2_376 (rtx_insn *, rtx *);
11234 : rtx_insn *
11235 : gen_peephole2_376 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11236 : {
11237 : if (dump_file)
11238 : fprintf (dump_file, "Splitting with gen_peephole2_376 (i386.md:29339)\n");
11239 : start_sequence ();
11240 : #define FAIL return (end_sequence (), nullptr)
11241 : #define DONE return end_sequence ()
11242 : #line 29347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11243 : operands[1] = GEN_INT (exact_log2 (INTVAL (operands[1])));
11244 : #undef DONE
11245 : #undef FAIL
11246 : static const uint8_t expand_encoding[] = {
11247 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
11248 : 0x11, 0x01, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11
11249 : };
11250 : return complete_seq (expand_encoding, operands);
11251 : }
11252 :
11253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29397 */
11254 : extern rtx_insn *gen_peephole2_386 (rtx_insn *, rtx *);
11255 : rtx_insn *
11256 : gen_peephole2_386 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11257 : {
11258 : HARD_REG_SET _regs_allocated;
11259 : CLEAR_HARD_REG_SET (_regs_allocated);
11260 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11261 : return NULL;
11262 : if (dump_file)
11263 : fprintf (dump_file, "Splitting with gen_peephole2_386 (i386.md:29397)\n");
11264 : start_sequence ();
11265 : static const uint8_t expand_encoding[] = {
11266 : 0x03, 0x21, 0x00, 0x01, 0x01, 0x1f, 0x36, 0x12,
11267 : 0x56, 0x12, 0x30, 0x12, 0x07, 0x01, 0x01, 0x17,
11268 : 0x00, 0x02, 0x1f, 0x36, 0x12, 0x56, 0x12, 0x30,
11269 : 0x12, 0x07, 0x01, 0x01, 0x21, 0x00, 0x36, 0x01,
11270 : 0x31, 0x00
11271 : };
11272 : return complete_seq (expand_encoding, operands);
11273 : }
11274 :
11275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29439 */
11276 : extern rtx_insn *gen_peephole2_396 (rtx_insn *, rtx *);
11277 : rtx_insn *
11278 : gen_peephole2_396 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11279 : {
11280 : HARD_REG_SET _regs_allocated;
11281 : CLEAR_HARD_REG_SET (_regs_allocated);
11282 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11283 : return NULL;
11284 : if (dump_file)
11285 : fprintf (dump_file, "Splitting with gen_peephole2_396 (i386.md:29439)\n");
11286 : start_sequence ();
11287 : static const uint8_t expand_encoding[] = {
11288 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x36,
11289 : 0x12, 0x59, 0x11, 0x30, 0x11, 0x07, 0x21, 0x00,
11290 : 0x36, 0x01, 0x31, 0x00
11291 : };
11292 : return complete_seq (expand_encoding, operands);
11293 : }
11294 :
11295 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29467 */
11296 : extern rtx_insn *gen_peephole2_406 (rtx_insn *, rtx *);
11297 : rtx_insn *
11298 : gen_peephole2_406 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11299 : {
11300 : HARD_REG_SET _regs_allocated;
11301 : CLEAR_HARD_REG_SET (_regs_allocated);
11302 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11303 : return NULL;
11304 : if (dump_file)
11305 : fprintf (dump_file, "Splitting with gen_peephole2_406 (i386.md:29467)\n");
11306 : start_sequence ();
11307 : static const uint8_t expand_encoding[] = {
11308 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x36,
11309 : 0x12, 0x59, 0x12, 0x30, 0x12, 0x07, 0x21, 0x00,
11310 : 0x36, 0x01, 0x31, 0x00, 0x1f, 0x01, 0x01, 0x36,
11311 : 0x12, 0x59, 0x12, 0x30, 0x12, 0x07
11312 : };
11313 : return complete_seq (expand_encoding, operands);
11314 : }
11315 :
11316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29503 */
11317 : extern rtx_insn *gen_peephole2_417 (rtx_insn *, rtx *);
11318 : rtx_insn *
11319 : gen_peephole2_417 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11320 : {
11321 : HARD_REG_SET _regs_allocated;
11322 : CLEAR_HARD_REG_SET (_regs_allocated);
11323 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11324 : return NULL;
11325 : if (dump_file)
11326 : fprintf (dump_file, "Splitting with gen_peephole2_417 (i386.md:29503)\n");
11327 : start_sequence ();
11328 : static const uint8_t expand_encoding[] = {
11329 : 0x02, 0x1f, 0x01, 0x01, 0x36, 0x11, 0x59, 0x12,
11330 : 0x30, 0x12, 0x07, 0x1f, 0x01, 0x01, 0x36, 0x11,
11331 : 0x59, 0x12, 0x30, 0x12, 0x07
11332 : };
11333 : return complete_seq (expand_encoding, operands);
11334 : }
11335 :
11336 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29593 */
11337 : extern rtx_insn *gen_peephole2_427 (rtx_insn *, rtx *);
11338 : rtx_insn *
11339 : gen_peephole2_427 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11340 : {
11341 : HARD_REG_SET _regs_allocated;
11342 : CLEAR_HARD_REG_SET (_regs_allocated);
11343 : if ((operands[3] = peep2_find_free_register (1, 1, "r", HImode, &_regs_allocated)) == NULL_RTX)
11344 : return NULL;
11345 : if (dump_file)
11346 : fprintf (dump_file, "Splitting with gen_peephole2_427 (i386.md:29593)\n");
11347 : start_sequence ();
11348 : #define FAIL return (end_sequence (), nullptr)
11349 : #define DONE return end_sequence ()
11350 : #line 29605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11351 : {
11352 : if (!rtx_equal_p (operands[0], operands[1]))
11353 : emit_move_insn (operands[0], operands[1]);
11354 : }
11355 : #undef DONE
11356 : #undef FAIL
11357 : static const uint8_t expand_encoding[] = {
11358 : 0x02, 0x1f, 0x01, 0x03, 0x01, 0x02, 0x17, 0x00,
11359 : 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x10, 0x01, 0x00,
11360 : 0x01, 0x03, 0x05, 0x02, 0x11
11361 : };
11362 : return complete_seq (expand_encoding, operands);
11363 : }
11364 :
11365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30396 */
11366 : rtx
11367 : gen_xbegin (const rtx operand0)
11368 : {
11369 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
11370 : start_sequence ();
11371 : {
11372 : #define FAIL return (end_sequence (), nullptr)
11373 : #define DONE return end_sequence ()
11374 : #line 30400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11375 : {
11376 : rtx_code_label *label = gen_label_rtx ();
11377 :
11378 : /* xbegin is emitted as jump_insn, so reload won't be able
11379 : to reload its operand. Force the value into AX hard register. */
11380 : rtx ax_reg = gen_rtx_REG (SImode, AX_REG);
11381 : emit_move_insn (ax_reg, constm1_rtx);
11382 :
11383 : emit_jump_insn (gen_xbegin_1 (ax_reg, label));
11384 :
11385 : emit_label (label);
11386 : LABEL_NUSES (label) = 1;
11387 :
11388 : emit_move_insn (operands[0], ax_reg);
11389 :
11390 : DONE;
11391 : }
11392 : #undef DONE
11393 : #undef FAIL
11394 : }
11395 : static const uint8_t expand_encoding[] = {
11396 : 0x01, 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x01, 0x27,
11397 : 0x00, 0x2e
11398 : };
11399 : return complete_seq (expand_encoding, operands);
11400 : }
11401 :
11402 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:177 */
11403 : rtx
11404 : gen_movv8qi (const rtx operand0, const rtx operand1)
11405 : {
11406 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11407 : start_sequence ();
11408 : {
11409 : #define FAIL return (end_sequence (), nullptr)
11410 : #define DONE return end_sequence ()
11411 : #line 181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11412 : {
11413 : ix86_expand_vector_move (V8QImode, operands);
11414 : DONE;
11415 : }
11416 : #undef DONE
11417 : #undef FAIL
11418 : }
11419 : static const uint8_t expand_encoding[] = {
11420 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11421 : };
11422 : return complete_seq (expand_encoding, operands);
11423 : }
11424 :
11425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:309 */
11426 : extern rtx_insn *gen_split_1010 (rtx_insn *, rtx *);
11427 : rtx_insn *
11428 : gen_split_1010 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11429 : {
11430 : if (dump_file)
11431 : fprintf (dump_file, "Splitting with gen_split_1010 (mmx.md:309)\n");
11432 : start_sequence ();
11433 : #define FAIL return (end_sequence (), nullptr)
11434 : #define DONE return end_sequence ()
11435 : #line 314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11436 : ix86_split_long_move (operands); DONE;
11437 : #undef DONE
11438 : #undef FAIL
11439 : static const uint8_t expand_encoding[] = {
11440 : 0x01, 0x27, 0x00
11441 : };
11442 : return complete_seq (expand_encoding, operands);
11443 : }
11444 :
11445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:316 */
11446 : extern rtx_insn *gen_split_1019 (rtx_insn *, rtx *);
11447 : rtx_insn *
11448 : gen_split_1019 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11449 : {
11450 : if (dump_file)
11451 : fprintf (dump_file, "Splitting with gen_split_1019 (mmx.md:316)\n");
11452 : start_sequence ();
11453 : #define FAIL return (end_sequence (), nullptr)
11454 : #define DONE return end_sequence ()
11455 : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11456 : ix86_split_long_move (operands); DONE;
11457 : #undef DONE
11458 : #undef FAIL
11459 : static const uint8_t expand_encoding[] = {
11460 : 0x01, 0x27, 0x00
11461 : };
11462 : return complete_seq (expand_encoding, operands);
11463 : }
11464 :
11465 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:323 */
11466 : rtx
11467 : gen_movmisalignv4hf (const rtx operand0, const rtx operand1)
11468 : {
11469 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11470 : start_sequence ();
11471 : {
11472 : #define FAIL return (end_sequence (), nullptr)
11473 : #define DONE return end_sequence ()
11474 : #line 327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11475 : {
11476 : ix86_expand_vector_move (V4HFmode, operands);
11477 : DONE;
11478 : }
11479 : #undef DONE
11480 : #undef FAIL
11481 : }
11482 : static const uint8_t expand_encoding[] = {
11483 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11484 : };
11485 : return complete_seq (expand_encoding, operands);
11486 : }
11487 :
11488 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:423 */
11489 : extern rtx_insn *gen_split_1026 (rtx_insn *, rtx *);
11490 : rtx_insn *
11491 : gen_split_1026 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11492 : {
11493 : if (dump_file)
11494 : fprintf (dump_file, "Splitting with gen_split_1026 (mmx.md:423)\n");
11495 : start_sequence ();
11496 : #define FAIL return (end_sequence (), nullptr)
11497 : #define DONE return end_sequence ()
11498 : #line 429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11499 : {
11500 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (V2HFmode)));
11501 : /* Preserve memory attributes. */
11502 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
11503 : }
11504 : #undef DONE
11505 : #undef FAIL
11506 : static const uint8_t expand_encoding[] = {
11507 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
11508 : 0x11, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
11509 : 0x01
11510 : };
11511 : return complete_seq (expand_encoding, operands);
11512 : }
11513 :
11514 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:435 */
11515 : rtx
11516 : gen_movmisalignv2hf (const rtx operand0, const rtx operand1)
11517 : {
11518 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11519 : start_sequence ();
11520 : {
11521 : #define FAIL return (end_sequence (), nullptr)
11522 : #define DONE return end_sequence ()
11523 : #line 439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11524 : {
11525 : ix86_expand_vector_move (V2HFmode, operands);
11526 : DONE;
11527 : }
11528 : #undef DONE
11529 : #undef FAIL
11530 : }
11531 : static const uint8_t expand_encoding[] = {
11532 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11533 : };
11534 : return complete_seq (expand_encoding, operands);
11535 : }
11536 :
11537 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11538 : extern rtx_insn *gen_split_1040 (rtx_insn *, rtx *);
11539 : rtx_insn *
11540 : gen_split_1040 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11541 : {
11542 : if (dump_file)
11543 : fprintf (dump_file, "Splitting with gen_split_1040 (mmx.md:577)\n");
11544 : start_sequence ();
11545 : #define FAIL return (end_sequence (), nullptr)
11546 : #define DONE return end_sequence ()
11547 : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11548 : {
11549 : rtx op1 = avoid_constant_pool_reference (operands[1]);
11550 :
11551 : if (!CONST_VECTOR_P (op1))
11552 : FAIL;
11553 :
11554 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V4HImode);
11555 :
11556 : operands[0] = lowpart_subreg (DImode, operands[0], V4HImode);
11557 : operands[1] = GEN_INT (val);
11558 : }
11559 : #undef DONE
11560 : #undef FAIL
11561 : static const uint8_t expand_encoding[] = {
11562 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11563 : };
11564 : return complete_seq (expand_encoding, operands);
11565 : }
11566 :
11567 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:598 */
11568 : extern rtx_insn *gen_split_1050 (rtx_insn *, rtx *);
11569 : rtx_insn *
11570 : gen_split_1050 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11571 : {
11572 : if (dump_file)
11573 : fprintf (dump_file, "Splitting with gen_split_1050 (mmx.md:598)\n");
11574 : start_sequence ();
11575 : #define FAIL return (end_sequence (), nullptr)
11576 : #define DONE return end_sequence ()
11577 : #line 605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11578 : {
11579 : rtx op1 = operands[1];
11580 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V2HFmode);
11581 :
11582 : operands[0] = adjust_address (operands[0], SImode, 0);
11583 : operands[1] = GEN_INT (val);
11584 : }
11585 : #undef DONE
11586 : #undef FAIL
11587 : static const uint8_t expand_encoding[] = {
11588 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11589 : };
11590 : return complete_seq (expand_encoding, operands);
11591 : }
11592 :
11593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:634 */
11594 : extern rtx_insn *gen_split_1060 (rtx_insn *, rtx *);
11595 : rtx_insn *
11596 : gen_split_1060 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11597 : {
11598 : if (dump_file)
11599 : fprintf (dump_file, "Splitting with gen_split_1060 (mmx.md:634)\n");
11600 : start_sequence ();
11601 : #define FAIL return (end_sequence (), nullptr)
11602 : #define DONE return end_sequence ()
11603 : #line 640 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11604 : {
11605 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (V2QImode)));
11606 : /* Preserve memory attributes. */
11607 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
11608 : }
11609 : #undef DONE
11610 : #undef FAIL
11611 : static const uint8_t expand_encoding[] = {
11612 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
11613 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
11614 : 0x01
11615 : };
11616 : return complete_seq (expand_encoding, operands);
11617 : }
11618 :
11619 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:735 */
11620 : rtx
11621 : gen_addv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11622 : {
11623 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11624 : start_sequence ();
11625 : {
11626 : #define FAIL return (end_sequence (), nullptr)
11627 : #define DONE return end_sequence ()
11628 : #line 741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11629 : {
11630 : rtx op2 = gen_reg_rtx (V4SFmode);
11631 : rtx op1 = gen_reg_rtx (V4SFmode);
11632 : rtx op0 = gen_reg_rtx (V4SFmode);
11633 :
11634 : emit_insn (gen_movq_v2sf_to_sse (op2, operands[2]));
11635 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11636 :
11637 : emit_insn (gen_addv4sf3 (op0, op1, op2));
11638 :
11639 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11640 : DONE;
11641 : }
11642 : #undef DONE
11643 : #undef FAIL
11644 : }
11645 : static const uint8_t expand_encoding[] = {
11646 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x67, 0x01, 0x01,
11647 : 0x01, 0x02
11648 : };
11649 : return complete_seq (expand_encoding, operands);
11650 : }
11651 :
11652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:866 */
11653 : rtx
11654 : gen_mmx_sminv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11655 : {
11656 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11657 : start_sequence ();
11658 : {
11659 : #define FAIL return (end_sequence (), nullptr)
11660 : #define DONE return end_sequence ()
11661 : #line 873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11662 : {
11663 : if (!flag_finite_math_only || flag_signed_zeros)
11664 : {
11665 : operands[1] = force_reg (V2SFmode, operands[1]);
11666 : emit_insn (gen_mmx_ieee_minv2sf3
11667 : (operands[0], operands[1], operands[2]));
11668 : DONE;
11669 : }
11670 : else
11671 : ix86_fixup_binary_operands_no_copy (SMIN, V2SFmode, operands);
11672 : }
11673 : #undef DONE
11674 : #undef FAIL
11675 : }
11676 : static const uint8_t expand_encoding[] = {
11677 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x52,
11678 : 0x67, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
11679 : 0x27, 0x00, 0x6f
11680 : };
11681 : return complete_seq (expand_encoding, operands);
11682 : }
11683 :
11684 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1410 */
11685 : rtx
11686 : gen_xorsignv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11687 : {
11688 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11689 : start_sequence ();
11690 : {
11691 : #define FAIL _Pragma ("GCC error \"xorsignv2sf3 cannot FAIL\"") (void)0
11692 : #define DONE return end_sequence ()
11693 : #line 1418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11694 : {
11695 : operands[3] = ix86_build_signbit_mask (V2SFmode, true, false);
11696 :
11697 : operands[4] = gen_reg_rtx (V2SFmode);
11698 : }
11699 : #undef DONE
11700 : #undef FAIL
11701 : }
11702 : static const uint8_t expand_encoding[] = {
11703 : 0x02, 0x1f, 0x01, 0x04, 0x49, 0x67, 0x01, 0x03,
11704 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x67, 0x01,
11705 : 0x04, 0x01, 0x01
11706 : };
11707 : return complete_seq (expand_encoding, operands);
11708 : }
11709 :
11710 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1564 */
11711 : rtx
11712 : gen_fixuns_truncv2sfv2si2 (const rtx operand0, const rtx operand1)
11713 : {
11714 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11715 : start_sequence ();
11716 : {
11717 : #define FAIL return (end_sequence (), nullptr)
11718 : #define DONE return end_sequence ()
11719 : #line 1568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11720 : {
11721 : rtx op1 = gen_reg_rtx (V4SFmode);
11722 : rtx op0 = gen_reg_rtx (V4SImode);
11723 :
11724 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11725 :
11726 : emit_insn (gen_fixuns_truncv4sfv4si2 (op0, op1));
11727 :
11728 : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
11729 : DONE;
11730 : }
11731 : #undef DONE
11732 : #undef FAIL
11733 : }
11734 : static const uint8_t expand_encoding[] = {
11735 : 0x01, 0x1f, 0x01, 0x00, 0x76, 0x4a, 0x01, 0x01
11736 : };
11737 : return complete_seq (expand_encoding, operands);
11738 : }
11739 :
11740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1868 */
11741 : rtx
11742 : gen_vec_initv2sfsf (const rtx operand0, const rtx operand1)
11743 : {
11744 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11745 : start_sequence ();
11746 : {
11747 : #define FAIL return (end_sequence (), nullptr)
11748 : #define DONE return end_sequence ()
11749 : #line 1872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11750 : {
11751 : ix86_expand_vector_init (TARGET_MMX_WITH_SSE, operands[0],
11752 : operands[1]);
11753 : DONE;
11754 : }
11755 : #undef DONE
11756 : #undef FAIL
11757 : }
11758 : static const uint8_t expand_encoding[] = {
11759 : 0x02, 0x01, 0x00, 0x01, 0x01
11760 : };
11761 : return complete_seq (expand_encoding, operands);
11762 : }
11763 :
11764 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2001 */
11765 : rtx
11766 : gen_btruncv2sf2 (const rtx operand0, const rtx operand1)
11767 : {
11768 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11769 : start_sequence ();
11770 : {
11771 : #define FAIL _Pragma ("GCC error \"btruncv2sf2 cannot FAIL\"") (void)0
11772 : #define DONE return end_sequence ()
11773 : #line 2006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11774 : {
11775 : rtx op1 = gen_reg_rtx (V4SFmode);
11776 : rtx op0 = gen_reg_rtx (V4SFmode);
11777 :
11778 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11779 :
11780 : emit_insn (gen_btruncv4sf2 (op0, op1));
11781 :
11782 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11783 : DONE;
11784 : }
11785 : #undef DONE
11786 : #undef FAIL
11787 : }
11788 : static const uint8_t expand_encoding[] = {
11789 : 0x02, 0x01, 0x00, 0x01, 0x01
11790 : };
11791 : return complete_seq (expand_encoding, operands);
11792 : }
11793 :
11794 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2122 */
11795 : rtx
11796 : gen_addv2hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11797 : {
11798 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11799 : start_sequence ();
11800 : {
11801 : #define FAIL return (end_sequence (), nullptr)
11802 : #define DONE return end_sequence ()
11803 : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11804 : {
11805 : rtx op2 = gen_reg_rtx (V8HFmode);
11806 : rtx op1 = gen_reg_rtx (V8HFmode);
11807 : rtx op0 = gen_reg_rtx (V8HFmode);
11808 :
11809 : emit_insn (gen_movd_v2hf_to_sse (op2, operands[2]));
11810 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
11811 : emit_insn (gen_addv8hf3 (op0, op1, op2));
11812 :
11813 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
11814 : DONE;
11815 : }
11816 : #undef DONE
11817 : #undef FAIL
11818 : }
11819 : static const uint8_t expand_encoding[] = {
11820 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x63, 0x01, 0x01,
11821 : 0x01, 0x02
11822 : };
11823 : return complete_seq (expand_encoding, operands);
11824 : }
11825 :
11826 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2142 */
11827 : rtx
11828 : gen_addv4bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11829 : {
11830 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11831 : start_sequence ();
11832 : {
11833 : #define FAIL return (end_sequence (), nullptr)
11834 : #define DONE return end_sequence ()
11835 : #line 2148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11836 : {
11837 : rtx op0 = gen_reg_rtx (V8BFmode);
11838 : rtx op1 = lowpart_subreg (V8BFmode,
11839 : force_reg (V4BFmode, operands[1]), V4BFmode);
11840 : rtx op2 = lowpart_subreg (V8BFmode,
11841 : force_reg (V4BFmode, operands[2]), V4BFmode);
11842 :
11843 : emit_insn (gen_addv8bf3 (op0, op1, op2));
11844 :
11845 : emit_move_insn (operands[0], lowpart_subreg (V4BFmode, op0, V8BFmode));
11846 : DONE;
11847 : }
11848 : #undef DONE
11849 : #undef FAIL
11850 : }
11851 : static const uint8_t expand_encoding[] = {
11852 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x65, 0x01, 0x01,
11853 : 0x01, 0x02
11854 : };
11855 : return complete_seq (expand_encoding, operands);
11856 : }
11857 :
11858 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2201 */
11859 : rtx
11860 : gen_sminv2bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11861 : {
11862 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11863 : start_sequence ();
11864 : {
11865 : #define FAIL return (end_sequence (), nullptr)
11866 : #define DONE return end_sequence ()
11867 : #line 2207 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11868 : {
11869 : rtx op0 = gen_reg_rtx (V8BFmode);
11870 : rtx op1 = lowpart_subreg (V8BFmode,
11871 : force_reg (V2BFmode, operands[1]), V2BFmode);
11872 : rtx op2 = lowpart_subreg (V8BFmode,
11873 : force_reg (V2BFmode, operands[2]), V2BFmode);
11874 :
11875 : emit_insn (gen_sminv8bf3 (op0, op1, op2));
11876 :
11877 : emit_move_insn (operands[0], lowpart_subreg (V2BFmode, op0, V8BFmode));
11878 : DONE;
11879 : }
11880 : #undef DONE
11881 : #undef FAIL
11882 : }
11883 : static const uint8_t expand_encoding[] = {
11884 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x64, 0x01, 0x01,
11885 : 0x01, 0x02
11886 : };
11887 : return complete_seq (expand_encoding, operands);
11888 : }
11889 :
11890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2254 */
11891 : rtx
11892 : gen_absv4hf2 (const rtx operand0, const rtx operand1)
11893 : {
11894 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11895 : start_sequence ();
11896 : {
11897 : #define FAIL return (end_sequence (), nullptr)
11898 : #define DONE return end_sequence ()
11899 : #line 2259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11900 : ix86_expand_fp_absneg_operator (ABS, V4HFmode, operands); DONE;
11901 : #undef DONE
11902 : #undef FAIL
11903 : }
11904 : static const uint8_t expand_encoding[] = {
11905 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x66, 0x01, 0x01
11906 : };
11907 : return complete_seq (expand_encoding, operands);
11908 : }
11909 :
11910 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2277 */
11911 : extern rtx_insn *gen_split_1078 (rtx_insn *, rtx *);
11912 : rtx_insn *
11913 : gen_split_1078 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11914 : {
11915 : if (dump_file)
11916 : fprintf (dump_file, "Splitting with gen_split_1078 (mmx.md:2277)\n");
11917 : start_sequence ();
11918 : static const uint8_t expand_encoding[] = {
11919 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x64, 0x01, 0x01,
11920 : 0x01, 0x02
11921 : };
11922 : return complete_seq (expand_encoding, operands);
11923 : }
11924 :
11925 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2326 */
11926 : rtx
11927 : gen_vcond_mask_v4hfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11928 : {
11929 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11930 : start_sequence ();
11931 : {
11932 : #define FAIL _Pragma ("GCC error \"vcond_mask_v4hfqi cannot FAIL\"") (void)0
11933 : #define DONE return end_sequence ()
11934 : #line 2333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11935 : {
11936 : rtx op0 = gen_reg_rtx (V8HFmode);
11937 : operands[1] = lowpart_subreg (V8HFmode, operands[1], V4HFmode);
11938 : operands[2] = lowpart_subreg (V8HFmode, operands[2], V4HFmode);
11939 : emit_insn (gen_vcond_mask_v8hfqi (op0, operands[1],
11940 : operands[2], operands[3]));
11941 : emit_move_insn (operands[0],
11942 : lowpart_subreg (V4HFmode, op0, V8HFmode));
11943 : DONE;
11944 : }
11945 : #undef DONE
11946 : #undef FAIL
11947 : }
11948 : static const uint8_t expand_encoding[] = {
11949 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x66, 0x01,
11950 : 0x01, 0x01, 0x02, 0x01, 0x03
11951 : };
11952 : return complete_seq (expand_encoding, operands);
11953 : }
11954 :
11955 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2416 */
11956 : rtx
11957 : gen_btruncv4hf2 (const rtx operand0, const rtx operand1)
11958 : {
11959 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11960 : start_sequence ();
11961 : {
11962 : #define FAIL _Pragma ("GCC error \"btruncv4hf2 cannot FAIL\"") (void)0
11963 : #define DONE return end_sequence ()
11964 : #line 2422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11965 : {
11966 : rtx op1 = gen_reg_rtx (V8HFmode);
11967 : rtx op0 = gen_reg_rtx (V8HFmode);
11968 :
11969 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
11970 : emit_insn (gen_btruncv8hf2 (op0, op1));
11971 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
11972 :
11973 : DONE;
11974 : }
11975 : #undef DONE
11976 : #undef FAIL
11977 : }
11978 : static const uint8_t expand_encoding[] = {
11979 : 0x02, 0x01, 0x00, 0x01, 0x01
11980 : };
11981 : return complete_seq (expand_encoding, operands);
11982 : }
11983 :
11984 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2498 */
11985 : rtx
11986 : gen_lfloorv2hfv2hi2 (const rtx operand0, const rtx operand1)
11987 : {
11988 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11989 : start_sequence ();
11990 : {
11991 : #define FAIL _Pragma ("GCC error \"lfloorv2hfv2hi2 cannot FAIL\"") (void)0
11992 : #define DONE return end_sequence ()
11993 : #line 2504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11994 : {
11995 : rtx op1 = gen_reg_rtx (V8HFmode);
11996 : rtx op0 = gen_reg_rtx (V8HFmode);
11997 :
11998 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
11999 : emit_insn (gen_lfloorv8hfv8hi2 (op0, op1));
12000 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
12001 :
12002 : DONE;
12003 : }
12004 : #undef DONE
12005 : #undef FAIL
12006 : }
12007 : static const uint8_t expand_encoding[] = {
12008 : 0x02, 0x01, 0x00, 0x01, 0x01
12009 : };
12010 : return complete_seq (expand_encoding, operands);
12011 : }
12012 :
12013 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2618 */
12014 : rtx
12015 : gen_copysignv2bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
12016 : {
12017 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12018 : start_sequence ();
12019 : {
12020 : #define FAIL _Pragma ("GCC error \"copysignv2bf3 cannot FAIL\"") (void)0
12021 : #define DONE return end_sequence ()
12022 : #line 2629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12023 : {
12024 : operands[3] = ix86_build_signbit_mask (V2BFmode, true, false);
12025 :
12026 : operands[4] = gen_reg_rtx (V2BFmode);
12027 : operands[5] = gen_reg_rtx (V2BFmode);
12028 : }
12029 : #undef DONE
12030 : #undef FAIL
12031 : }
12032 : static const uint8_t expand_encoding[] = {
12033 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x64, 0x4c, 0x64,
12034 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
12035 : 0x64, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
12036 : 0x4a, 0x64, 0x01, 0x04, 0x01, 0x05
12037 : };
12038 : return complete_seq (expand_encoding, operands);
12039 : }
12040 :
12041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2650 */
12042 : rtx
12043 : gen_signbitv2hf2 (const rtx operand0, const rtx operand1)
12044 : {
12045 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
12046 : start_sequence ();
12047 : {
12048 : #define FAIL _Pragma ("GCC error \"signbitv2hf2 cannot FAIL\"") (void)0
12049 : #define DONE return end_sequence ()
12050 : #line 2657 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12051 : {
12052 : operands[1] = force_reg (V2HFmode, operands[1]);
12053 : operands[2] = GEN_INT (GET_MODE_UNIT_BITSIZE (V2HFmode)-1);
12054 : }
12055 : #undef DONE
12056 : #undef FAIL
12057 : }
12058 : static const uint8_t expand_encoding[] = {
12059 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x46, 0x32, 0x46,
12060 : 0x01, 0x01, 0x00, 0x01, 0x02
12061 : };
12062 : return complete_seq (expand_encoding, operands);
12063 : }
12064 :
12065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2764 */
12066 : rtx
12067 : gen_vec_fmaddsubv4hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12068 : {
12069 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12070 : start_sequence ();
12071 : {
12072 : #define FAIL _Pragma ("GCC error \"vec_fmaddsubv4hf4 cannot FAIL\"") (void)0
12073 : #define DONE return end_sequence ()
12074 : #line 2772 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12075 : {
12076 : rtx op3 = gen_reg_rtx (V8HFmode);
12077 : rtx op2 = gen_reg_rtx (V8HFmode);
12078 : rtx op1 = gen_reg_rtx (V8HFmode);
12079 : rtx op0 = gen_reg_rtx (V8HFmode);
12080 :
12081 : emit_insn (gen_movq_v4hf_to_sse (op3, operands[3]));
12082 : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
12083 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12084 :
12085 : emit_insn (gen_vec_fmaddsubv8hf4 (op0, op1, op2, op3));
12086 :
12087 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12088 : DONE;
12089 : }
12090 : #undef DONE
12091 : #undef FAIL
12092 : }
12093 : static const uint8_t expand_encoding[] = {
12094 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
12095 : 0x03
12096 : };
12097 : return complete_seq (expand_encoding, operands);
12098 : }
12099 :
12100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2898 */
12101 : rtx
12102 : gen_cmlav4hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12103 : {
12104 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12105 : start_sequence ();
12106 : {
12107 : #define FAIL _Pragma ("GCC error \"cmlav4hf4 cannot FAIL\"") (void)0
12108 : #define DONE return end_sequence ()
12109 : #line 2905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12110 : {
12111 : rtx op3 = gen_reg_rtx (V8HFmode);
12112 : rtx op2 = gen_reg_rtx (V8HFmode);
12113 : rtx op1 = gen_reg_rtx (V8HFmode);
12114 : rtx op0 = gen_reg_rtx (V8HFmode);
12115 :
12116 : emit_insn (gen_movq_v4hf_to_sse (op3, operands[3]));
12117 : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
12118 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12119 :
12120 : emit_insn (gen_cmlav8hf4 (op0, op1, op2, op3));
12121 :
12122 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12123 : DONE;
12124 : }
12125 : #undef DONE
12126 : #undef FAIL
12127 : }
12128 : static const uint8_t expand_encoding[] = {
12129 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
12130 : 0x03
12131 : };
12132 : return complete_seq (expand_encoding, operands);
12133 : }
12134 :
12135 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3024 */
12136 : rtx
12137 : gen_floatv2hiv2hf2 (const rtx operand0, const rtx operand1)
12138 : {
12139 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12140 : start_sequence ();
12141 : {
12142 : #define FAIL return (end_sequence (), nullptr)
12143 : #define DONE return end_sequence ()
12144 : #line 3029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12145 : {
12146 : rtx op1 = gen_reg_rtx (V8HImode);
12147 : rtx op0 = gen_reg_rtx (V8HFmode);
12148 :
12149 : rtx (*gen_movd_sse) (rtx, rtx)
12150 : = gen_movd_v2hi_to_sse;
12151 : emit_insn (gen_movd_sse (op1, operands[1]));
12152 :
12153 : emit_insn (gen_floatv8hiv8hf2 (op0, op1));
12154 :
12155 : emit_move_insn (operands[0],
12156 : lowpart_subreg (V2HFmode, op0, V8HFmode));
12157 : DONE;
12158 : }
12159 : #undef DONE
12160 : #undef FAIL
12161 : }
12162 : static const uint8_t expand_encoding[] = {
12163 : 0x01, 0x1f, 0x01, 0x00, 0x73, 0x63, 0x01, 0x01
12164 : };
12165 : return complete_seq (expand_encoding, operands);
12166 : }
12167 :
12168 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3144 */
12169 : rtx
12170 : gen_negv8qi2 (const rtx operand0, const rtx operand1)
12171 : {
12172 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
12173 : start_sequence ();
12174 : {
12175 : #define FAIL return (end_sequence (), nullptr)
12176 : #define DONE return end_sequence ()
12177 : #line 3150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12178 : operands[2] = force_reg (V8QImode, CONST0_RTX (V8QImode));
12179 : #undef DONE
12180 : #undef FAIL
12181 : }
12182 : static const uint8_t expand_encoding[] = {
12183 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x48, 0x01, 0x02,
12184 : 0x01, 0x01
12185 : };
12186 : return complete_seq (expand_encoding, operands);
12187 : }
12188 :
12189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3220 */
12190 : rtx
12191 : gen_mmx_addv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12192 : {
12193 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12194 : start_sequence ();
12195 : {
12196 : #define FAIL return (end_sequence (), nullptr)
12197 : #define DONE return end_sequence ()
12198 : #line 3226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12199 : ix86_fixup_binary_operands_no_copy (PLUS, V4HImode, operands);
12200 : #undef DONE
12201 : #undef FAIL
12202 : }
12203 : static const uint8_t expand_encoding[] = {
12204 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x49, 0x01, 0x01,
12205 : 0x01, 0x02
12206 : };
12207 : return complete_seq (expand_encoding, operands);
12208 : }
12209 :
12210 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3228 */
12211 : rtx
12212 : gen_subv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12213 : {
12214 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12215 : static const uint8_t expand_encoding[] = {
12216 : 0x1f, 0x01, 0x00, 0x3c, 0x48, 0x01, 0x01, 0x01,
12217 : 0x02
12218 : };
12219 : return expand_rtx (expand_encoding, operands);
12220 : }
12221 :
12222 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3334 */
12223 : rtx
12224 : gen_mmx_usaddv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12225 : {
12226 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12227 : start_sequence ();
12228 : {
12229 : #define FAIL return (end_sequence (), nullptr)
12230 : #define DONE return end_sequence ()
12231 : #line 3340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12232 : ix86_fixup_binary_operands_no_copy (US_PLUS, V8QImode, operands);
12233 : #undef DONE
12234 : #undef FAIL
12235 : }
12236 : static const uint8_t expand_encoding[] = {
12237 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0f, 0x48, 0x01,
12238 : 0x01, 0x01, 0x02
12239 : };
12240 : return complete_seq (expand_encoding, operands);
12241 : }
12242 :
12243 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3334 */
12244 : rtx
12245 : gen_mmx_ussubv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12246 : {
12247 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12248 : start_sequence ();
12249 : {
12250 : #define FAIL return (end_sequence (), nullptr)
12251 : #define DONE return end_sequence ()
12252 : #line 3340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12253 : ix86_fixup_binary_operands_no_copy (US_MINUS, V4HImode, operands);
12254 : #undef DONE
12255 : #undef FAIL
12256 : }
12257 : static const uint8_t expand_encoding[] = {
12258 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x16, 0x49, 0x01,
12259 : 0x01, 0x01, 0x02
12260 : };
12261 : return complete_seq (expand_encoding, operands);
12262 : }
12263 :
12264 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3525 */
12265 : rtx
12266 : gen_umulv4hi3_highpart (const rtx operand0, const rtx operand1, const rtx operand2)
12267 : {
12268 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12269 : static const uint8_t expand_encoding[] = {
12270 : 0x1f, 0x01, 0x00, 0x70, 0x49, 0x50, 0x51, 0x3e,
12271 : 0x51, 0x6f, 0x51, 0x01, 0x01, 0x6f, 0x51, 0x01,
12272 : 0x02, 0x27, 0x10
12273 : };
12274 : return expand_rtx (expand_encoding, operands);
12275 : }
12276 :
12277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3728 */
12278 : rtx
12279 : gen_smaxv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12280 : {
12281 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12282 : static const uint8_t expand_encoding[] = {
12283 : 0x1f, 0x01, 0x00, 0x53, 0x49, 0x01, 0x01, 0x01,
12284 : 0x02
12285 : };
12286 : return expand_rtx (expand_encoding, operands);
12287 : }
12288 :
12289 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3806 */
12290 : rtx
12291 : gen_uminv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12292 : {
12293 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12294 : static const uint8_t expand_encoding[] = {
12295 : 0x1f, 0x01, 0x00, 0x54, 0x48, 0x01, 0x01, 0x01,
12296 : 0x02
12297 : };
12298 : return expand_rtx (expand_encoding, operands);
12299 : }
12300 :
12301 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3937 */
12302 : extern rtx_insn *gen_split_1092 (rtx_insn *, rtx *);
12303 : rtx_insn *
12304 : gen_split_1092 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12305 : {
12306 : if (dump_file)
12307 : fprintf (dump_file, "Splitting with gen_split_1092 (mmx.md:3937)\n");
12308 : start_sequence ();
12309 : #define FAIL return (end_sequence (), nullptr)
12310 : #define DONE return end_sequence ()
12311 : #line 3946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12312 : operands[4] = gen_int_mode (64 - 1, DImode);
12313 : #undef DONE
12314 : #undef FAIL
12315 : static const uint8_t expand_encoding[] = {
12316 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x4b, 0x01, 0x01,
12317 : 0x01, 0x04
12318 : };
12319 : return complete_seq (expand_encoding, operands);
12320 : }
12321 :
12322 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4033 */
12323 : extern rtx_insn *gen_split_1096 (rtx_insn *, rtx *);
12324 : rtx_insn *
12325 : gen_split_1096 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12326 : {
12327 : if (dump_file)
12328 : fprintf (dump_file, "Splitting with gen_split_1096 (mmx.md:4033)\n");
12329 : start_sequence ();
12330 : #define FAIL return (end_sequence (), nullptr)
12331 : #define DONE return end_sequence ()
12332 : #line 4057 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12333 : {
12334 : operands[4] = lowpart_subreg (HImode, operands[1], V2QImode);
12335 : operands[3] = lowpart_subreg (HImode, operands[0], V2QImode);
12336 : operands[1] = lowpart_subreg (QImode, operands[1], V2QImode);
12337 : operands[0] = lowpart_subreg (QImode, operands[0], V2QImode);
12338 : }
12339 : #undef DONE
12340 : #undef FAIL
12341 : static const uint8_t expand_encoding[] = {
12342 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
12343 : 0x01, 0x03, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
12344 : 0x50, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
12345 : 0x04, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02,
12346 : 0x00, 0x05, 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f,
12347 : 0x33, 0x00, 0x01, 0x00, 0x50, 0x0f, 0x01, 0x01,
12348 : 0x01, 0x02, 0x05, 0x02, 0x11
12349 : };
12350 : return complete_seq (expand_encoding, operands);
12351 : }
12352 :
12353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4106 */
12354 : rtx
12355 : gen_vec_shl_v2hf (const rtx operand0, const rtx operand1, const rtx operand2)
12356 : {
12357 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12358 : start_sequence ();
12359 : {
12360 : #define FAIL return (end_sequence (), nullptr)
12361 : #define DONE return end_sequence ()
12362 : #line 4112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12363 : {
12364 : rtx op0 = gen_reg_rtx (V1SImode);
12365 : rtx op1 = force_reg (V2HFmode, operands[1]);
12366 :
12367 : emit_insn (gen_mmx_ashlv1si3
12368 : (op0, gen_lowpart (V1SImode, op1), operands[2]));
12369 : emit_move_insn (operands[0], gen_lowpart (V2HFmode, op0));
12370 : DONE;
12371 : }
12372 : #undef DONE
12373 : #undef FAIL
12374 : }
12375 : static const uint8_t expand_encoding[] = {
12376 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x47, 0x01, 0x01,
12377 : 0x01, 0x02
12378 : };
12379 : return complete_seq (expand_encoding, operands);
12380 : }
12381 :
12382 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4138 */
12383 : rtx
12384 : gen_vec_shr_v2hf (const rtx operand0, const rtx operand1, const rtx operand2)
12385 : {
12386 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12387 : start_sequence ();
12388 : {
12389 : #define FAIL return (end_sequence (), nullptr)
12390 : #define DONE return end_sequence ()
12391 : #line 4144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12392 : {
12393 : rtx op0 = gen_reg_rtx (V1SImode);
12394 : rtx op1 = force_reg (V2HFmode, operands[1]);
12395 :
12396 : emit_insn (gen_mmx_lshrv1si3
12397 : (op0, gen_lowpart (V1SImode, op1), operands[2]));
12398 : emit_move_insn (operands[0], gen_lowpart (V2HFmode, op0));
12399 : DONE;
12400 : }
12401 : #undef DONE
12402 : #undef FAIL
12403 : }
12404 : static const uint8_t expand_encoding[] = {
12405 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x47, 0x01, 0x01,
12406 : 0x01, 0x02
12407 : };
12408 : return complete_seq (expand_encoding, operands);
12409 : }
12410 :
12411 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4277 */
12412 : rtx
12413 : gen_vec_cmpv4qiv4qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12414 : {
12415 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12416 : start_sequence ();
12417 : {
12418 : #define FAIL return (end_sequence (), nullptr)
12419 : #define DONE return end_sequence ()
12420 : #line 4283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12421 : {
12422 : bool ok = ix86_expand_int_vec_cmp (operands);
12423 : gcc_assert (ok);
12424 : DONE;
12425 : }
12426 : #undef DONE
12427 : #undef FAIL
12428 : }
12429 : static const uint8_t expand_encoding[] = {
12430 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x45, 0x01, 0x01,
12431 : 0x02, 0x01, 0x03
12432 : };
12433 : return complete_seq (expand_encoding, operands);
12434 : }
12435 :
12436 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4313 */
12437 : rtx
12438 : gen_vcond_mask_v4hiv4hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12439 : {
12440 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12441 : start_sequence ();
12442 : {
12443 : #define FAIL _Pragma ("GCC error \"vcond_mask_v4hiv4hi cannot FAIL\"") (void)0
12444 : #define DONE return end_sequence ()
12445 : #line 4320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12446 : {
12447 : ix86_expand_sse_movcc (operands[0], operands[3],
12448 : operands[1], operands[2]);
12449 : DONE;
12450 : }
12451 : #undef DONE
12452 : #undef FAIL
12453 : }
12454 : static const uint8_t expand_encoding[] = {
12455 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x49, 0x01,
12456 : 0x01, 0x01, 0x02, 0x01, 0x03
12457 : };
12458 : return complete_seq (expand_encoding, operands);
12459 : }
12460 :
12461 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4437 */
12462 : extern rtx_insn *gen_split_1102 (rtx_insn *, rtx *);
12463 : rtx_insn *
12464 : gen_split_1102 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12465 : {
12466 : if (dump_file)
12467 : fprintf (dump_file, "Splitting with gen_split_1102 (mmx.md:4437)\n");
12468 : start_sequence ();
12469 : #define FAIL return (end_sequence (), nullptr)
12470 : #define DONE return end_sequence ()
12471 : #line 4459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12472 : {
12473 : operands[6] = gen_reg_rtx (V2QImode);
12474 : operands[7] = force_reg (V2QImode, operands[4]);
12475 : }
12476 : #undef DONE
12477 : #undef FAIL
12478 : static const uint8_t expand_encoding[] = {
12479 : 0x02, 0x1f, 0x01, 0x06, 0x5d, 0x44, 0x01, 0x03,
12480 : 0x01, 0x07, 0x1f, 0x01, 0x00, 0x1a, 0x44, 0x03,
12481 : 0x01, 0x02, 0x01, 0x01, 0x01, 0x06, 0x34
12482 : };
12483 : return complete_seq (expand_encoding, operands);
12484 : }
12485 :
12486 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4599 */
12487 : extern rtx_insn *gen_split_1110 (rtx_insn *, rtx *);
12488 : rtx_insn *
12489 : gen_split_1110 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12490 : {
12491 : if (dump_file)
12492 : fprintf (dump_file, "Splitting with gen_split_1110 (mmx.md:4599)\n");
12493 : start_sequence ();
12494 : #define FAIL return (end_sequence (), nullptr)
12495 : #define DONE return end_sequence ()
12496 : #line 4608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12497 : {
12498 : operands[2] = CONSTM1_RTX (V16QImode);
12499 : operands[1] = lowpart_subreg (V16QImode, operands[1], V2HImode);
12500 : operands[0] = lowpart_subreg (V16QImode, operands[0], V2HImode);
12501 : }
12502 : #undef DONE
12503 : #undef FAIL
12504 : static const uint8_t expand_encoding[] = {
12505 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x1f, 0x01,
12506 : 0x00, 0x4b, 0x4f, 0x01, 0x00, 0x01, 0x01
12507 : };
12508 : return complete_seq (expand_encoding, operands);
12509 : }
12510 :
12511 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4701 */
12512 : rtx
12513 : gen_mmx_andv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12514 : {
12515 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12516 : start_sequence ();
12517 : {
12518 : #define FAIL return (end_sequence (), nullptr)
12519 : #define DONE return end_sequence ()
12520 : #line 4707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12521 : ix86_fixup_binary_operands_no_copy (AND, V8QImode, operands);
12522 : #undef DONE
12523 : #undef FAIL
12524 : }
12525 : static const uint8_t expand_encoding[] = {
12526 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x48, 0x01, 0x01,
12527 : 0x01, 0x02
12528 : };
12529 : return complete_seq (expand_encoding, operands);
12530 : }
12531 :
12532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4701 */
12533 : rtx
12534 : gen_mmx_xorv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12535 : {
12536 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12537 : start_sequence ();
12538 : {
12539 : #define FAIL return (end_sequence (), nullptr)
12540 : #define DONE return end_sequence ()
12541 : #line 4707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12542 : ix86_fixup_binary_operands_no_copy (XOR, V4HImode, operands);
12543 : #undef DONE
12544 : #undef FAIL
12545 : }
12546 : static const uint8_t expand_encoding[] = {
12547 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x49, 0x01, 0x01,
12548 : 0x01, 0x02
12549 : };
12550 : return complete_seq (expand_encoding, operands);
12551 : }
12552 :
12553 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4709 */
12554 : rtx
12555 : gen_xorv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12556 : {
12557 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12558 : static const uint8_t expand_encoding[] = {
12559 : 0x1f, 0x01, 0x00, 0x4b, 0x4a, 0x01, 0x01, 0x01,
12560 : 0x02
12561 : };
12562 : return expand_rtx (expand_encoding, operands);
12563 : }
12564 :
12565 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4753 */
12566 : extern rtx_insn *gen_split_1120 (rtx_insn *, rtx *);
12567 : rtx_insn *
12568 : gen_split_1120 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12569 : {
12570 : if (dump_file)
12571 : fprintf (dump_file, "Splitting with gen_split_1120 (mmx.md:4753)\n");
12572 : start_sequence ();
12573 : #define FAIL return (end_sequence (), nullptr)
12574 : #define DONE return end_sequence ()
12575 : #line 4764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12576 : {
12577 : if (!register_operand (operands[2], V4QImode))
12578 : {
12579 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (operands[2],
12580 : V4QImode);
12581 : operands[2] = GEN_INT (val);
12582 : }
12583 : else
12584 : operands[2] = lowpart_subreg (SImode, operands[2], V4QImode);
12585 : operands[1] = lowpart_subreg (SImode, operands[1], V4QImode);
12586 : operands[0] = lowpart_subreg (SImode, operands[0], V4QImode);
12587 : }
12588 : #undef DONE
12589 : #undef FAIL
12590 : static const uint8_t expand_encoding[] = {
12591 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
12592 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
12593 : };
12594 : return complete_seq (expand_encoding, operands);
12595 : }
12596 :
12597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4777 */
12598 : extern rtx_insn *gen_split_1130 (rtx_insn *, rtx *);
12599 : rtx_insn *
12600 : gen_split_1130 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12601 : {
12602 : if (dump_file)
12603 : fprintf (dump_file, "Splitting with gen_split_1130 (mmx.md:4777)\n");
12604 : start_sequence ();
12605 : #define FAIL return (end_sequence (), nullptr)
12606 : #define DONE return end_sequence ()
12607 : #line 4786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12608 : {
12609 : operands[2] = lowpart_subreg (V16QImode, operands[2], V4QImode);
12610 : operands[1] = lowpart_subreg (V16QImode, operands[1], V4QImode);
12611 : operands[0] = lowpart_subreg (V16QImode, operands[0], V4QImode);
12612 : }
12613 : #undef DONE
12614 : #undef FAIL
12615 : static const uint8_t expand_encoding[] = {
12616 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x4f, 0x01, 0x01,
12617 : 0x01, 0x02
12618 : };
12619 : return complete_seq (expand_encoding, operands);
12620 : }
12621 :
12622 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4839 */
12623 : extern rtx_insn *gen_split_1140 (rtx_insn *, rtx *);
12624 : rtx_insn *
12625 : gen_split_1140 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
12626 : {
12627 : if (dump_file)
12628 : fprintf (dump_file, "Splitting with gen_split_1140 (mmx.md:4839)\n");
12629 : start_sequence ();
12630 : #define FAIL return (end_sequence (), nullptr)
12631 : #define DONE return end_sequence ()
12632 : #line 4854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12633 : ix86_split_mmx_pack (operands, SS_TRUNCATE); DONE;
12634 : #undef DONE
12635 : #undef FAIL
12636 : static const uint8_t expand_encoding[] = {
12637 : 0x01, 0x27, 0x00
12638 : };
12639 : return complete_seq (expand_encoding, operands);
12640 : }
12641 :
12642 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5054 */
12643 : rtx
12644 : gen_extendv4qiv4hi2 (const rtx operand0, const rtx operand1)
12645 : {
12646 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12647 : start_sequence ();
12648 : {
12649 : #define FAIL return (end_sequence (), nullptr)
12650 : #define DONE return end_sequence ()
12651 : #line 5059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12652 : {
12653 : if (!TARGET_SSE4_1)
12654 : {
12655 : ix86_expand_sse_extend (operands[0], operands[1], false);
12656 : DONE;
12657 : }
12658 :
12659 : rtx op1 = force_reg (V4QImode, operands[1]);
12660 : op1 = lowpart_subreg (V8QImode, op1, V4QImode);
12661 : emit_insn (gen_sse4_1_sign_extendv4qiv4hi2 (operands[0], op1));
12662 : DONE;
12663 : }
12664 : #undef DONE
12665 : #undef FAIL
12666 : }
12667 : static const uint8_t expand_encoding[] = {
12668 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x49, 0x01, 0x01
12669 : };
12670 : return complete_seq (expand_encoding, operands);
12671 : }
12672 :
12673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5191 */
12674 : rtx
12675 : gen_truncv2siv2qi2 (const rtx operand0, const rtx operand1)
12676 : {
12677 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12678 : start_sequence ();
12679 : {
12680 : #define FAIL return (end_sequence (), nullptr)
12681 : #define DONE return end_sequence ()
12682 : #line 5196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12683 : {
12684 : if (TARGET_AVX512VL)
12685 : emit_insn (gen_avx512vl_truncv2siv2qi2 (operands[0], operands[1]));
12686 : else
12687 : ix86_expand_trunc_with_avx2_noavx512f (operands[0], operands[1], V8QImode);
12688 : DONE;
12689 : }
12690 : #undef DONE
12691 : #undef FAIL
12692 : }
12693 : static const uint8_t expand_encoding[] = {
12694 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x44, 0x01, 0x01
12695 : };
12696 : return complete_seq (expand_encoding, operands);
12697 : }
12698 :
12699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5257 */
12700 : rtx
12701 : gen_vec_unpacku_lo_v4hi (const rtx operand0, const rtx operand1)
12702 : {
12703 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12704 : start_sequence ();
12705 : {
12706 : #define FAIL return (end_sequence (), nullptr)
12707 : #define DONE return end_sequence ()
12708 : #line 5261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12709 : ix86_expand_sse_unpack (operands[0], operands[1], true, false); DONE;
12710 : #undef DONE
12711 : #undef FAIL
12712 : }
12713 : static const uint8_t expand_encoding[] = {
12714 : 0x02, 0x01, 0x00, 0x01, 0x01
12715 : };
12716 : return complete_seq (expand_encoding, operands);
12717 : }
12718 :
12719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5565 */
12720 : rtx
12721 : gen_mmx_pshufw (const rtx operand0, const rtx operand1, const rtx operand2)
12722 : {
12723 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12724 : start_sequence ();
12725 : {
12726 : #define FAIL return (end_sequence (), nullptr)
12727 : #define DONE return end_sequence ()
12728 : #line 5571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12729 : {
12730 : int mask = INTVAL (operands[2]);
12731 : emit_insn (gen_mmx_pshufwv4hi_1 (operands[0], operands[1],
12732 : GEN_INT ((mask >> 0) & 3),
12733 : GEN_INT ((mask >> 2) & 3),
12734 : GEN_INT ((mask >> 4) & 3),
12735 : GEN_INT ((mask >> 6) & 3)));
12736 : DONE;
12737 : }
12738 : #undef DONE
12739 : #undef FAIL
12740 : }
12741 : static const uint8_t expand_encoding[] = {
12742 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12743 : };
12744 : return complete_seq (expand_encoding, operands);
12745 : }
12746 :
12747 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5923 */
12748 : rtx
12749 : gen_vec_setv4bf (const rtx operand0, const rtx operand1, const rtx operand2)
12750 : {
12751 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12752 : start_sequence ();
12753 : {
12754 : #define FAIL _Pragma ("GCC error \"vec_setv4bf cannot FAIL\"") (void)0
12755 : #define DONE return end_sequence ()
12756 : #line 5928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12757 : {
12758 : if (CONST_INT_P (operands[2]))
12759 : ix86_expand_vector_set (TARGET_MMX_WITH_SSE, operands[0], operands[1],
12760 : INTVAL (operands[2]));
12761 : else
12762 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
12763 : DONE;
12764 : }
12765 : #undef DONE
12766 : #undef FAIL
12767 : }
12768 : static const uint8_t expand_encoding[] = {
12769 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12770 : };
12771 : return complete_seq (expand_encoding, operands);
12772 : }
12773 :
12774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5993 */
12775 : rtx
12776 : gen_vec_initv8qiqi (const rtx operand0, const rtx operand1)
12777 : {
12778 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12779 : start_sequence ();
12780 : {
12781 : #define FAIL return (end_sequence (), nullptr)
12782 : #define DONE return end_sequence ()
12783 : #line 5997 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12784 : {
12785 : ix86_expand_vector_init (TARGET_MMX_WITH_SSE, operands[0],
12786 : operands[1]);
12787 : DONE;
12788 : }
12789 : #undef DONE
12790 : #undef FAIL
12791 : }
12792 : static const uint8_t expand_encoding[] = {
12793 : 0x02, 0x01, 0x00, 0x01, 0x01
12794 : };
12795 : return complete_seq (expand_encoding, operands);
12796 : }
12797 :
12798 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6221 */
12799 : rtx
12800 : gen_vec_setv4qi (const rtx operand0, const rtx operand1, const rtx operand2)
12801 : {
12802 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12803 : start_sequence ();
12804 : {
12805 : #define FAIL _Pragma ("GCC error \"vec_setv4qi cannot FAIL\"") (void)0
12806 : #define DONE return end_sequence ()
12807 : #line 6226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12808 : {
12809 : if (CONST_INT_P (operands[2]))
12810 : ix86_expand_vector_set (false, operands[0], operands[1],
12811 : INTVAL (operands[2]));
12812 : else
12813 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
12814 : DONE;
12815 : }
12816 : #undef DONE
12817 : #undef FAIL
12818 : }
12819 : static const uint8_t expand_encoding[] = {
12820 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12821 : };
12822 : return complete_seq (expand_encoding, operands);
12823 : }
12824 :
12825 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6355 */
12826 : rtx
12827 : gen_mmx_uavgv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12828 : {
12829 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12830 : start_sequence ();
12831 : {
12832 : #define FAIL return (end_sequence (), nullptr)
12833 : #define DONE return end_sequence ()
12834 : #line 6369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12835 : {
12836 : operands[3] = CONST1_RTX(V4SImode);
12837 : ix86_fixup_binary_operands_no_copy (PLUS, V4HImode, operands);
12838 : }
12839 : #undef DONE
12840 : #undef FAIL
12841 : }
12842 : static const uint8_t expand_encoding[] = {
12843 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x49, 0x50, 0x51,
12844 : 0x3b, 0x51, 0x3b, 0x51, 0x6f, 0x51, 0x01, 0x01,
12845 : 0x6f, 0x51, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
12846 : };
12847 : return complete_seq (expand_encoding, operands);
12848 : }
12849 :
12850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6571 */
12851 : rtx
12852 : gen_reduc_plus_scal_v8qi (const rtx operand0, const rtx operand1)
12853 : {
12854 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12855 : start_sequence ();
12856 : {
12857 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v8qi cannot FAIL\"") (void)0
12858 : #define DONE return end_sequence ()
12859 : #line 6576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12860 : {
12861 : rtx tmp = gen_reg_rtx (V8QImode);
12862 : emit_move_insn (tmp, CONST0_RTX (V8QImode));
12863 : rtx tmp2 = gen_reg_rtx (V1DImode);
12864 : emit_insn (gen_mmx_psadbw (tmp2, operands[1], tmp));
12865 : tmp2 = gen_lowpart (V8QImode, tmp2);
12866 : emit_insn (gen_vec_extractv8qiqi (operands[0], tmp2, const0_rtx));
12867 : DONE;
12868 : }
12869 : #undef DONE
12870 : #undef FAIL
12871 : }
12872 : static const uint8_t expand_encoding[] = {
12873 : 0x01, 0x3b, 0x48, 0x01, 0x00, 0x01, 0x01
12874 : };
12875 : return complete_seq (expand_encoding, operands);
12876 : }
12877 :
12878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6667 */
12879 : rtx
12880 : gen_usadv8qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12881 : {
12882 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12883 : start_sequence ();
12884 : {
12885 : #define FAIL return (end_sequence (), nullptr)
12886 : #define DONE return end_sequence ()
12887 : #line 6673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12888 : {
12889 : rtx t1 = gen_reg_rtx (V1DImode);
12890 : rtx t2 = gen_reg_rtx (V2SImode);
12891 : emit_insn (gen_mmx_psadbw (t1, operands[1], operands[2]));
12892 : convert_move (t2, t1, 0);
12893 : emit_insn (gen_addv2si3 (operands[0], t2, operands[3]));
12894 : DONE;
12895 : }
12896 : #undef DONE
12897 : #undef FAIL
12898 : }
12899 : static const uint8_t expand_encoding[] = {
12900 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
12901 : 0x03
12902 : };
12903 : return complete_seq (expand_encoding, operands);
12904 : }
12905 :
12906 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6934 */
12907 : rtx
12908 : gen_mmx_emms (void)
12909 : {
12910 : start_sequence ();
12911 : {
12912 : #define FAIL return (end_sequence (), nullptr)
12913 : #define DONE return end_sequence ()
12914 : #line 6954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12915 : {
12916 : if (!TARGET_MMX)
12917 : {
12918 : emit_insn (gen_nop ());
12919 : DONE;
12920 : }
12921 : }
12922 : #undef DONE
12923 : #undef FAIL
12924 : }
12925 : static const uint8_t expand_encoding[] = {
12926 : 0x01, 0x17, 0x00, 0x11, 0x1b, 0x00, 0x01, 0x27,
12927 : 0x00, 0x5a, 0x05, 0x2f, 0x08, 0x05, 0x2f, 0x09,
12928 : 0x05, 0x2f, 0x0a, 0x05, 0x2f, 0x0b, 0x05, 0x2f,
12929 : 0x0c, 0x05, 0x2f, 0x0d, 0x05, 0x2f, 0x0e, 0x05,
12930 : 0x2f, 0x0f, 0x05, 0x12, 0x1c, 0x05, 0x12, 0x1d,
12931 : 0x05, 0x12, 0x1e, 0x05, 0x12, 0x1f, 0x05, 0x12,
12932 : 0x20, 0x05, 0x12, 0x21, 0x05, 0x12, 0x22, 0x05,
12933 : 0x12, 0x23
12934 : };
12935 : return complete_seq (expand_encoding, nullptr);
12936 : }
12937 :
12938 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12939 : rtx
12940 : gen_movv16si (const rtx operand0, const rtx operand1)
12941 : {
12942 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12943 : start_sequence ();
12944 : {
12945 : #define FAIL return (end_sequence (), nullptr)
12946 : #define DONE return end_sequence ()
12947 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12948 : {
12949 : ix86_expand_vector_move (V16SImode, operands);
12950 : DONE;
12951 : }
12952 : #undef DONE
12953 : #undef FAIL
12954 : }
12955 : static const uint8_t expand_encoding[] = {
12956 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
12957 : };
12958 : return complete_seq (expand_encoding, operands);
12959 : }
12960 :
12961 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12962 : rtx
12963 : gen_movv32hf (const rtx operand0, const rtx operand1)
12964 : {
12965 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12966 : start_sequence ();
12967 : {
12968 : #define FAIL return (end_sequence (), nullptr)
12969 : #define DONE return end_sequence ()
12970 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12971 : {
12972 : ix86_expand_vector_move (V32HFmode, operands);
12973 : DONE;
12974 : }
12975 : #undef DONE
12976 : #undef FAIL
12977 : }
12978 : static const uint8_t expand_encoding[] = {
12979 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
12980 : };
12981 : return complete_seq (expand_encoding, operands);
12982 : }
12983 :
12984 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12985 : rtx
12986 : gen_movv4df (const rtx operand0, const rtx operand1)
12987 : {
12988 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12989 : start_sequence ();
12990 : {
12991 : #define FAIL return (end_sequence (), nullptr)
12992 : #define DONE return end_sequence ()
12993 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12994 : {
12995 : ix86_expand_vector_move (V4DFmode, operands);
12996 : DONE;
12997 : }
12998 : #undef DONE
12999 : #undef FAIL
13000 : }
13001 : static const uint8_t expand_encoding[] = {
13002 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13003 : };
13004 : return complete_seq (expand_encoding, operands);
13005 : }
13006 :
13007 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13008 : extern rtx_insn *gen_split_1173 (rtx_insn *, rtx *);
13009 : rtx_insn *
13010 : gen_split_1173 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13011 : {
13012 : if (dump_file)
13013 : fprintf (dump_file, "Splitting with gen_split_1173 (sse.md:1539)\n");
13014 : start_sequence ();
13015 : #define FAIL return (end_sequence (), nullptr)
13016 : #define DONE return end_sequence ()
13017 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13018 : operands[2] = CONST0_RTX (V4SImode);
13019 : #undef DONE
13020 : #undef FAIL
13021 : static const uint8_t expand_encoding[] = {
13022 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13023 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13024 : 0x01, 0x01, 0x00, 0x27
13025 : };
13026 : return complete_seq (expand_encoding, operands);
13027 : }
13028 :
13029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13030 : extern rtx_insn *gen_split_1183 (rtx_insn *, rtx *);
13031 : rtx_insn *
13032 : gen_split_1183 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13033 : {
13034 : if (dump_file)
13035 : fprintf (dump_file, "Splitting with gen_split_1183 (sse.md:1539)\n");
13036 : start_sequence ();
13037 : #define FAIL return (end_sequence (), nullptr)
13038 : #define DONE return end_sequence ()
13039 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13040 : operands[2] = CONST0_RTX (V32BFmode);
13041 : #undef DONE
13042 : #undef FAIL
13043 : static const uint8_t expand_encoding[] = {
13044 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13045 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13046 : 0x01, 0x01, 0x00, 0x27
13047 : };
13048 : return complete_seq (expand_encoding, operands);
13049 : }
13050 :
13051 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1568 */
13052 : rtx
13053 : gen_avx512vl_loadv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13054 : {
13055 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13056 : start_sequence ();
13057 : {
13058 : #define FAIL return (end_sequence (), nullptr)
13059 : #define DONE return end_sequence ()
13060 : #line 1575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13061 : {
13062 : if (CONST_INT_P (operands[3]))
13063 : {
13064 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13065 : DONE;
13066 : }
13067 : else if (MEM_P (operands[1]))
13068 : operands[1] = gen_rtx_UNSPEC (V8SImode,
13069 : gen_rtvec(1, operands[1]),
13070 : UNSPEC_MASKLOAD);
13071 : }
13072 : #undef DONE
13073 : #undef FAIL
13074 : }
13075 : static const uint8_t expand_encoding[] = {
13076 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x01,
13077 : 0x01, 0x01, 0x02, 0x01, 0x03
13078 : };
13079 : return complete_seq (expand_encoding, operands);
13080 : }
13081 :
13082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1568 */
13083 : rtx
13084 : gen_avx512vl_loadv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13085 : {
13086 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13087 : start_sequence ();
13088 : {
13089 : #define FAIL return (end_sequence (), nullptr)
13090 : #define DONE return end_sequence ()
13091 : #line 1575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13092 : {
13093 : if (CONST_INT_P (operands[3]))
13094 : {
13095 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13096 : DONE;
13097 : }
13098 : else if (MEM_P (operands[1]))
13099 : operands[1] = gen_rtx_UNSPEC (V2DFmode,
13100 : gen_rtvec(1, operands[1]),
13101 : UNSPEC_MASKLOAD);
13102 : }
13103 : #undef DONE
13104 : #undef FAIL
13105 : }
13106 : static const uint8_t expand_encoding[] = {
13107 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x01,
13108 : 0x01, 0x01, 0x02, 0x01, 0x03
13109 : };
13110 : return complete_seq (expand_encoding, operands);
13111 : }
13112 :
13113 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1616 */
13114 : extern rtx_insn *gen_split_1203 (rtx_insn *, rtx *);
13115 : rtx_insn *
13116 : gen_split_1203 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13117 : {
13118 : if (dump_file)
13119 : fprintf (dump_file, "Splitting with gen_split_1203 (sse.md:1616)\n");
13120 : start_sequence ();
13121 : static const uint8_t expand_encoding[] = {
13122 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13123 : };
13124 : return complete_seq (expand_encoding, operands);
13125 : }
13126 :
13127 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1664 */
13128 : rtx
13129 : gen_avx512bw_loadv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13130 : {
13131 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13132 : start_sequence ();
13133 : {
13134 : #define FAIL return (end_sequence (), nullptr)
13135 : #define DONE return end_sequence ()
13136 : #line 1671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13137 : {
13138 : if (CONST_INT_P (operands[3]))
13139 : {
13140 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13141 : DONE;
13142 : }
13143 : else if (MEM_P (operands[1]))
13144 : operands[1] = gen_rtx_UNSPEC (V32HImode,
13145 : gen_rtvec(1, operands[1]),
13146 : UNSPEC_MASKLOAD);
13147 :
13148 : }
13149 : #undef DONE
13150 : #undef FAIL
13151 : }
13152 : static const uint8_t expand_encoding[] = {
13153 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x01,
13154 : 0x01, 0x01, 0x02, 0x01, 0x03
13155 : };
13156 : return complete_seq (expand_encoding, operands);
13157 : }
13158 :
13159 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1698 */
13160 : extern rtx_insn *gen_split_1221 (rtx_insn *, rtx *);
13161 : rtx_insn *
13162 : gen_split_1221 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13163 : {
13164 : if (dump_file)
13165 : fprintf (dump_file, "Splitting with gen_split_1221 (sse.md:1698)\n");
13166 : start_sequence ();
13167 : static const uint8_t expand_encoding[] = {
13168 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13169 : };
13170 : return complete_seq (expand_encoding, operands);
13171 : }
13172 :
13173 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13174 : rtx
13175 : gen_movmisalignv16qi (const rtx operand0, const rtx operand1)
13176 : {
13177 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13178 : start_sequence ();
13179 : {
13180 : #define FAIL return (end_sequence (), nullptr)
13181 : #define DONE return end_sequence ()
13182 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13183 : {
13184 : ix86_expand_vector_move_misalign (V16QImode, operands);
13185 : DONE;
13186 : }
13187 : #undef DONE
13188 : #undef FAIL
13189 : }
13190 : static const uint8_t expand_encoding[] = {
13191 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13192 : };
13193 : return complete_seq (expand_encoding, operands);
13194 : }
13195 :
13196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13197 : rtx
13198 : gen_movmisalignv8di (const rtx operand0, const rtx operand1)
13199 : {
13200 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13201 : start_sequence ();
13202 : {
13203 : #define FAIL return (end_sequence (), nullptr)
13204 : #define DONE return end_sequence ()
13205 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13206 : {
13207 : ix86_expand_vector_move_misalign (V8DImode, operands);
13208 : DONE;
13209 : }
13210 : #undef DONE
13211 : #undef FAIL
13212 : }
13213 : static const uint8_t expand_encoding[] = {
13214 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13215 : };
13216 : return complete_seq (expand_encoding, operands);
13217 : }
13218 :
13219 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13220 : rtx
13221 : gen_movmisalignv32bf (const rtx operand0, const rtx operand1)
13222 : {
13223 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13224 : start_sequence ();
13225 : {
13226 : #define FAIL return (end_sequence (), nullptr)
13227 : #define DONE return end_sequence ()
13228 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13229 : {
13230 : ix86_expand_vector_move_misalign (V32BFmode, operands);
13231 : DONE;
13232 : }
13233 : #undef DONE
13234 : #undef FAIL
13235 : }
13236 : static const uint8_t expand_encoding[] = {
13237 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13238 : };
13239 : return complete_seq (expand_encoding, operands);
13240 : }
13241 :
13242 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1988 */
13243 : extern rtx_insn *gen_peephole2_433 (rtx_insn *, rtx *);
13244 : rtx_insn *
13245 : gen_peephole2_433 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13246 : {
13247 : if (dump_file)
13248 : fprintf (dump_file, "Splitting with gen_peephole2_433 (sse.md:1988)\n");
13249 : start_sequence ();
13250 : #define FAIL return (end_sequence (), nullptr)
13251 : #define DONE return end_sequence ()
13252 : #line 1998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13253 : operands[5] = adjust_address (operands[1], V2DFmode, 0);
13254 : #undef DONE
13255 : #undef FAIL
13256 : static const uint8_t expand_encoding[] = {
13257 : 0x01, 0x1f, 0x01, 0x02, 0x01, 0x05
13258 : };
13259 : return complete_seq (expand_encoding, operands);
13260 : }
13261 :
13262 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2087 */
13263 : rtx
13264 : gen_storentv4df (const rtx operand0, const rtx operand1)
13265 : {
13266 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13267 : static const uint8_t expand_encoding[] = {
13268 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x01, 0x01, 0x01,
13269 : 0x76
13270 : };
13271 : return expand_rtx (expand_encoding, operands);
13272 : }
13273 :
13274 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2142 */
13275 : extern rtx_insn *gen_split_1229 (rtx_insn *, rtx *);
13276 : rtx_insn *
13277 : gen_split_1229 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13278 : {
13279 : if (dump_file)
13280 : fprintf (dump_file, "Splitting with gen_split_1229 (sse.md:2142)\n");
13281 : start_sequence ();
13282 : static const uint8_t expand_encoding[] = {
13283 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
13284 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13285 : 0x27, 0x00, 0x81, 0x2f
13286 : };
13287 : return complete_seq (expand_encoding, operands);
13288 : }
13289 :
13290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2153 */
13291 : extern rtx_insn *gen_split_1239 (rtx_insn *, rtx *);
13292 : rtx_insn *
13293 : gen_split_1239 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13294 : {
13295 : if (dump_file)
13296 : fprintf (dump_file, "Splitting with gen_split_1239 (sse.md:2153)\n");
13297 : start_sequence ();
13298 : static const uint8_t expand_encoding[] = {
13299 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
13300 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13301 : 0x27, 0x00, 0x81, 0x2f
13302 : };
13303 : return complete_seq (expand_encoding, operands);
13304 : }
13305 :
13306 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2188 */
13307 : extern rtx_insn *gen_split_1249 (rtx_insn *, rtx *);
13308 : rtx_insn *
13309 : gen_split_1249 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13310 : {
13311 : if (dump_file)
13312 : fprintf (dump_file, "Splitting with gen_split_1249 (sse.md:2188)\n");
13313 : start_sequence ();
13314 : static const uint8_t expand_encoding[] = {
13315 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
13316 : 0x0f, 0x4c, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x1a,
13317 : 0x00, 0x01, 0x27, 0x00, 0x81, 0x2f
13318 : };
13319 : return complete_seq (expand_encoding, operands);
13320 : }
13321 :
13322 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2306 */
13323 : extern rtx_insn *gen_split_1259 (rtx_insn *, rtx *);
13324 : rtx_insn *
13325 : gen_split_1259 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13326 : {
13327 : if (dump_file)
13328 : fprintf (dump_file, "Splitting with gen_split_1259 (sse.md:2306)\n");
13329 : start_sequence ();
13330 : static const uint8_t expand_encoding[] = {
13331 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
13332 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13333 : 0x27, 0x00, 0x81, 0x2f
13334 : };
13335 : return complete_seq (expand_encoding, operands);
13336 : }
13337 :
13338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2319 */
13339 : extern rtx_insn *gen_split_1269 (rtx_insn *, rtx *);
13340 : rtx_insn *
13341 : gen_split_1269 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13342 : {
13343 : if (dump_file)
13344 : fprintf (dump_file, "Splitting with gen_split_1269 (sse.md:2319)\n");
13345 : start_sequence ();
13346 : static const uint8_t expand_encoding[] = {
13347 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
13348 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13349 : 0x27, 0x00, 0x81, 0x2f
13350 : };
13351 : return complete_seq (expand_encoding, operands);
13352 : }
13353 :
13354 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2412 */
13355 : extern rtx_insn *gen_split_1275 (rtx_insn *, rtx *);
13356 : rtx_insn *
13357 : gen_split_1275 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
13358 : {
13359 : if (dump_file)
13360 : fprintf (dump_file, "Splitting with gen_split_1275 (sse.md:2412)\n");
13361 : start_sequence ();
13362 : #define FAIL return (end_sequence (), nullptr)
13363 : #define DONE return end_sequence ()
13364 : #line 2422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13365 : {
13366 : if (MASK_REGNO_P (REGNO (operands[2])))
13367 : {
13368 : emit_insn (gen_kortestqi_ccc (operands[2], operands[2]));
13369 : operands[4] = gen_rtx_REG (CCCmode, FLAGS_REG);
13370 : }
13371 : else
13372 : {
13373 : operands[4] = gen_rtx_REG (CCZmode, FLAGS_REG);
13374 : emit_insn (gen_rtx_SET (operands[4],
13375 : gen_rtx_COMPARE (CCZmode,
13376 : operands[2],
13377 : constm1_rtx)));
13378 : }
13379 : ix86_expand_setcc (operands[0],
13380 : GET_CODE (operands[1]),
13381 : operands[4],
13382 : const0_rtx);
13383 : DONE;
13384 : }
13385 : #undef DONE
13386 : #undef FAIL
13387 : static const uint8_t expand_encoding[] = {
13388 : 0x01, 0x27, 0x00
13389 : };
13390 : return complete_seq (expand_encoding, operands);
13391 : }
13392 :
13393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2479 */
13394 : extern rtx_insn *gen_split_1285 (rtx_insn *, rtx *);
13395 : rtx_insn *
13396 : gen_split_1285 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13397 : {
13398 : if (dump_file)
13399 : fprintf (dump_file, "Splitting with gen_split_1285 (sse.md:2479)\n");
13400 : start_sequence ();
13401 : #define FAIL return (end_sequence (), nullptr)
13402 : #define DONE return end_sequence ()
13403 : #line 2497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13404 : {
13405 : rtx flag_reg;
13406 : if (MASK_REGNO_P (REGNO (operands[4])))
13407 : {
13408 : emit_insn (gen_kortestsi_ccc (operands[4], operands[4]));
13409 : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13410 : }
13411 : else
13412 : {
13413 : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13414 : emit_insn (gen_rtx_SET (flag_reg,
13415 : gen_rtx_COMPARE (CCZmode,
13416 : operands[4],
13417 : constm1_rtx)));
13418 : }
13419 : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13420 : flag_reg,const0_rtx);
13421 : operands[0] = gen_lowpart (SImode, operands[0]);
13422 : operands[2] = gen_lowpart (SImode, operands[2]);
13423 : operands[3] = gen_lowpart (SImode, operands[3]);
13424 : }
13425 : #undef DONE
13426 : #undef FAIL
13427 : static const uint8_t expand_encoding[] = {
13428 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x05,
13429 : 0x01, 0x02, 0x01, 0x03
13430 : };
13431 : return complete_seq (expand_encoding, operands);
13432 : }
13433 :
13434 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13435 : rtx
13436 : gen_absv32bf2 (const rtx operand0, const rtx operand1)
13437 : {
13438 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13439 : start_sequence ();
13440 : {
13441 : #define FAIL return (end_sequence (), nullptr)
13442 : #define DONE return end_sequence ()
13443 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13444 : ix86_expand_fp_absneg_operator (ABS, V32BFmode, operands); DONE;
13445 : #undef DONE
13446 : #undef FAIL
13447 : }
13448 : static const uint8_t expand_encoding[] = {
13449 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x72, 0x01, 0x01
13450 : };
13451 : return complete_seq (expand_encoding, operands);
13452 : }
13453 :
13454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13455 : rtx
13456 : gen_absv32hf2 (const rtx operand0, const rtx operand1)
13457 : {
13458 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13459 : start_sequence ();
13460 : {
13461 : #define FAIL return (end_sequence (), nullptr)
13462 : #define DONE return end_sequence ()
13463 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13464 : ix86_expand_fp_absneg_operator (ABS, V32HFmode, operands); DONE;
13465 : #undef DONE
13466 : #undef FAIL
13467 : }
13468 : static const uint8_t expand_encoding[] = {
13469 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x73, 0x01, 0x01
13470 : };
13471 : return complete_seq (expand_encoding, operands);
13472 : }
13473 :
13474 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13475 : rtx
13476 : gen_absv4sf2 (const rtx operand0, const rtx operand1)
13477 : {
13478 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13479 : start_sequence ();
13480 : {
13481 : #define FAIL return (end_sequence (), nullptr)
13482 : #define DONE return end_sequence ()
13483 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13484 : ix86_expand_fp_absneg_operator (ABS, V4SFmode, operands); DONE;
13485 : #undef DONE
13486 : #undef FAIL
13487 : }
13488 : static const uint8_t expand_encoding[] = {
13489 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x6b, 0x01, 0x01
13490 : };
13491 : return complete_seq (expand_encoding, operands);
13492 : }
13493 :
13494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13495 : extern rtx_insn *gen_split_1301 (rtx_insn *, rtx *);
13496 : rtx_insn *
13497 : gen_split_1301 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13498 : {
13499 : if (dump_file)
13500 : fprintf (dump_file, "Splitting with gen_split_1301 (sse.md:2615)\n");
13501 : start_sequence ();
13502 : #define FAIL return (end_sequence (), nullptr)
13503 : #define DONE return end_sequence ()
13504 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13505 : {
13506 : if (TARGET_AVX)
13507 : {
13508 : if (MEM_P (operands[1]))
13509 : std::swap (operands[1], operands[2]);
13510 : }
13511 : else
13512 : {
13513 : if (operands_match_p (operands[0], operands[2]))
13514 : std::swap (operands[1], operands[2]);
13515 : }
13516 : }
13517 : #undef DONE
13518 : #undef FAIL
13519 : static const uint8_t expand_encoding[] = {
13520 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6d, 0x01, 0x01,
13521 : 0x01, 0x02
13522 : };
13523 : return complete_seq (expand_encoding, operands);
13524 : }
13525 :
13526 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13527 : extern rtx_insn *gen_split_1311 (rtx_insn *, rtx *);
13528 : rtx_insn *
13529 : gen_split_1311 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13530 : {
13531 : if (dump_file)
13532 : fprintf (dump_file, "Splitting with gen_split_1311 (sse.md:2615)\n");
13533 : start_sequence ();
13534 : #define FAIL return (end_sequence (), nullptr)
13535 : #define DONE return end_sequence ()
13536 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13537 : {
13538 : if (TARGET_AVX)
13539 : {
13540 : if (MEM_P (operands[1]))
13541 : std::swap (operands[1], operands[2]);
13542 : }
13543 : else
13544 : {
13545 : if (operands_match_p (operands[0], operands[2]))
13546 : std::swap (operands[1], operands[2]);
13547 : }
13548 : }
13549 : #undef DONE
13550 : #undef FAIL
13551 : static const uint8_t expand_encoding[] = {
13552 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x74, 0x01, 0x01,
13553 : 0x01, 0x02
13554 : };
13555 : return complete_seq (expand_encoding, operands);
13556 : }
13557 :
13558 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13559 : extern rtx_insn *gen_split_1321 (rtx_insn *, rtx *);
13560 : rtx_insn *
13561 : gen_split_1321 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13562 : {
13563 : if (dump_file)
13564 : fprintf (dump_file, "Splitting with gen_split_1321 (sse.md:2615)\n");
13565 : start_sequence ();
13566 : #define FAIL return (end_sequence (), nullptr)
13567 : #define DONE return end_sequence ()
13568 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13569 : {
13570 : if (TARGET_AVX)
13571 : {
13572 : if (MEM_P (operands[1]))
13573 : std::swap (operands[1], operands[2]);
13574 : }
13575 : else
13576 : {
13577 : if (operands_match_p (operands[0], operands[2]))
13578 : std::swap (operands[1], operands[2]);
13579 : }
13580 : }
13581 : #undef DONE
13582 : #undef FAIL
13583 : static const uint8_t expand_encoding[] = {
13584 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6c, 0x01, 0x01,
13585 : 0x01, 0x02
13586 : };
13587 : return complete_seq (expand_encoding, operands);
13588 : }
13589 :
13590 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13591 : rtx
13592 : gen_cond_addv16hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13593 : {
13594 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13595 : start_sequence ();
13596 : {
13597 : #define FAIL _Pragma ("GCC error \"cond_addv16hf cannot FAIL\"") (void)0
13598 : #define DONE return end_sequence ()
13599 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13600 : {
13601 : emit_insn (gen_addv16hf3_mask (operands[0],
13602 : operands[2],
13603 : operands[3],
13604 : operands[4],
13605 : operands[1]));
13606 : DONE;
13607 : }
13608 : #undef DONE
13609 : #undef FAIL
13610 : }
13611 : static const uint8_t expand_encoding[] = {
13612 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x3b,
13613 : 0x6e, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13614 : 0x01
13615 : };
13616 : return complete_seq (expand_encoding, operands);
13617 : }
13618 :
13619 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13620 : rtx
13621 : gen_cond_addv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13622 : {
13623 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13624 : start_sequence ();
13625 : {
13626 : #define FAIL _Pragma ("GCC error \"cond_addv8df cannot FAIL\"") (void)0
13627 : #define DONE return end_sequence ()
13628 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13629 : {
13630 : emit_insn (gen_addv8df3_mask (operands[0],
13631 : operands[2],
13632 : operands[3],
13633 : operands[4],
13634 : operands[1]));
13635 : DONE;
13636 : }
13637 : #undef DONE
13638 : #undef FAIL
13639 : }
13640 : static const uint8_t expand_encoding[] = {
13641 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x3b,
13642 : 0x75, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13643 : 0x01
13644 : };
13645 : return complete_seq (expand_encoding, operands);
13646 : }
13647 :
13648 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13649 : rtx
13650 : gen_subv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13651 : {
13652 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13653 : start_sequence ();
13654 : {
13655 : #define FAIL return (end_sequence (), nullptr)
13656 : #define DONE return end_sequence ()
13657 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13658 : ix86_fixup_binary_operands_no_copy (MINUS, V32HFmode, operands);
13659 : #undef DONE
13660 : #undef FAIL
13661 : }
13662 : static const uint8_t expand_encoding[] = {
13663 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x73, 0x01, 0x01,
13664 : 0x01, 0x02
13665 : };
13666 : return complete_seq (expand_encoding, operands);
13667 : }
13668 :
13669 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13670 : rtx
13671 : gen_addv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13672 : {
13673 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13674 : start_sequence ();
13675 : {
13676 : #define FAIL return (end_sequence (), nullptr)
13677 : #define DONE return end_sequence ()
13678 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13679 : ix86_fixup_binary_operands_no_copy (PLUS, V8HFmode, operands);
13680 : #undef DONE
13681 : #undef FAIL
13682 : }
13683 : static const uint8_t expand_encoding[] = {
13684 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x3b,
13685 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13686 : 0x04
13687 : };
13688 : return complete_seq (expand_encoding, operands);
13689 : }
13690 :
13691 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13692 : rtx
13693 : gen_addv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13694 : {
13695 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13696 : start_sequence ();
13697 : {
13698 : #define FAIL return (end_sequence (), nullptr)
13699 : #define DONE return end_sequence ()
13700 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13701 : ix86_fixup_binary_operands_no_copy (PLUS, V8SFmode, operands);
13702 : #undef DONE
13703 : #undef FAIL
13704 : }
13705 : static const uint8_t expand_encoding[] = {
13706 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x6f, 0x01, 0x01,
13707 : 0x01, 0x02
13708 : };
13709 : return complete_seq (expand_encoding, operands);
13710 : }
13711 :
13712 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13713 : rtx
13714 : gen_addv8df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13715 : {
13716 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13717 : start_sequence ();
13718 : {
13719 : #define FAIL return (end_sequence (), nullptr)
13720 : #define DONE return end_sequence ()
13721 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13722 : ix86_fixup_binary_operands_no_copy (PLUS, V8DFmode, operands);
13723 : #undef DONE
13724 : #undef FAIL
13725 : }
13726 : static const uint8_t expand_encoding[] = {
13727 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x3b,
13728 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
13729 : 0x33
13730 : };
13731 : return complete_seq (expand_encoding, operands);
13732 : }
13733 :
13734 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13735 : rtx
13736 : gen_subv4df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13737 : {
13738 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13739 : start_sequence ();
13740 : {
13741 : #define FAIL return (end_sequence (), nullptr)
13742 : #define DONE return end_sequence ()
13743 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13744 : ix86_fixup_binary_operands_no_copy (MINUS, V4DFmode, operands);
13745 : #undef DONE
13746 : #undef FAIL
13747 : }
13748 : static const uint8_t expand_encoding[] = {
13749 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x3c,
13750 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13751 : 0x04
13752 : };
13753 : return complete_seq (expand_encoding, operands);
13754 : }
13755 :
13756 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13757 : rtx
13758 : gen_subv16bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13759 : {
13760 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13761 : start_sequence ();
13762 : {
13763 : #define FAIL return (end_sequence (), nullptr)
13764 : #define DONE return end_sequence ()
13765 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13766 : ix86_fixup_binary_operands_no_copy (MINUS, V16BFmode, operands);
13767 : #undef DONE
13768 : #undef FAIL
13769 : }
13770 : static const uint8_t expand_encoding[] = {
13771 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x6d, 0x01, 0x01,
13772 : 0x01, 0x02
13773 : };
13774 : return complete_seq (expand_encoding, operands);
13775 : }
13776 :
13777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2753 */
13778 : rtx
13779 : gen_cond_mulv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13780 : {
13781 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13782 : start_sequence ();
13783 : {
13784 : #define FAIL _Pragma ("GCC error \"cond_mulv16sf cannot FAIL\"") (void)0
13785 : #define DONE return end_sequence ()
13786 : #line 2762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13787 : {
13788 : emit_insn (gen_mulv16sf3_mask (operands[0],
13789 : operands[2],
13790 : operands[3],
13791 : operands[4],
13792 : operands[1]));
13793 : DONE;
13794 : }
13795 : #undef DONE
13796 : #undef FAIL
13797 : }
13798 : static const uint8_t expand_encoding[] = {
13799 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x3e,
13800 : 0x74, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13801 : 0x01
13802 : };
13803 : return complete_seq (expand_encoding, operands);
13804 : }
13805 :
13806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13807 : rtx
13808 : gen_mulv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13809 : {
13810 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13811 : start_sequence ();
13812 : {
13813 : #define FAIL return (end_sequence (), nullptr)
13814 : #define DONE return end_sequence ()
13815 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13816 : ix86_fixup_binary_operands_no_copy (MULT, V16HFmode, operands);
13817 : #undef DONE
13818 : #undef FAIL
13819 : }
13820 : static const uint8_t expand_encoding[] = {
13821 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x6e, 0x01, 0x01,
13822 : 0x01, 0x02
13823 : };
13824 : return complete_seq (expand_encoding, operands);
13825 : }
13826 :
13827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13828 : rtx
13829 : gen_mulv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13830 : {
13831 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13832 : start_sequence ();
13833 : {
13834 : #define FAIL return (end_sequence (), nullptr)
13835 : #define DONE return end_sequence ()
13836 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13837 : ix86_fixup_binary_operands_no_copy (MULT, V8SFmode, operands);
13838 : #undef DONE
13839 : #undef FAIL
13840 : }
13841 : static const uint8_t expand_encoding[] = {
13842 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x3e,
13843 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13844 : 0x04
13845 : };
13846 : return complete_seq (expand_encoding, operands);
13847 : }
13848 :
13849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13850 : rtx
13851 : gen_mulv32bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13852 : {
13853 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13854 : start_sequence ();
13855 : {
13856 : #define FAIL return (end_sequence (), nullptr)
13857 : #define DONE return end_sequence ()
13858 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13859 : ix86_fixup_binary_operands_no_copy (MULT, V32BFmode, operands);
13860 : #undef DONE
13861 : #undef FAIL
13862 : }
13863 : static const uint8_t expand_encoding[] = {
13864 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x72, 0x01, 0x01,
13865 : 0x01, 0x02
13866 : };
13867 : return complete_seq (expand_encoding, operands);
13868 : }
13869 :
13870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2851 */
13871 : rtx
13872 : gen_divv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13873 : {
13874 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13875 : start_sequence ();
13876 : {
13877 : #define FAIL return (end_sequence (), nullptr)
13878 : #define DONE return end_sequence ()
13879 : #line 2857 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13880 : {
13881 : /* Transform HF vector div to vector mul/rcp. */
13882 : if (GET_MODE_INNER (V32HFmode) == HFmode
13883 : && TARGET_RECIP_VEC_DIV
13884 : && optimize_insn_for_speed_p ()
13885 : && flag_finite_math_only && !flag_trapping_math
13886 : && flag_unsafe_math_optimizations)
13887 : {
13888 : rtx op = gen_reg_rtx (V32HFmode);
13889 : operands[2] = force_reg (V32HFmode, operands[2]);
13890 : emit_insn (gen_avx512fp16_rcpv32hf2 (op, operands[2]));
13891 : emit_insn (gen_mulv32hf3 (operands[0], operands[1], op));
13892 : DONE;
13893 : }
13894 : }
13895 : #undef DONE
13896 : #undef FAIL
13897 : }
13898 : static const uint8_t expand_encoding[] = {
13899 : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x73, 0x01, 0x01,
13900 : 0x01, 0x02
13901 : };
13902 : return complete_seq (expand_encoding, operands);
13903 : }
13904 :
13905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2910 */
13906 : rtx
13907 : gen_cond_divv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13908 : {
13909 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13910 : start_sequence ();
13911 : {
13912 : #define FAIL _Pragma ("GCC error \"cond_divv16sf cannot FAIL\"") (void)0
13913 : #define DONE return end_sequence ()
13914 : #line 2919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13915 : {
13916 : emit_insn (gen_avx512f_divv16sf3_mask (operands[0],
13917 : operands[2],
13918 : operands[3],
13919 : operands[4],
13920 : operands[1]));
13921 : DONE;
13922 : }
13923 : #undef DONE
13924 : #undef FAIL
13925 : }
13926 : static const uint8_t expand_encoding[] = {
13927 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x43,
13928 : 0x74, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13929 : 0x01
13930 : };
13931 : return complete_seq (expand_encoding, operands);
13932 : }
13933 :
13934 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3081 */
13935 : rtx
13936 : gen_sqrtv2df2 (const rtx operand0, const rtx operand1)
13937 : {
13938 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13939 : static const uint8_t expand_encoding[] = {
13940 : 0x1f, 0x01, 0x00, 0x7c, 0x6c, 0x01, 0x01
13941 : };
13942 : return expand_rtx (expand_encoding, operands);
13943 : }
13944 :
13945 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
13946 : rtx
13947 : gen_cond_sminv32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13948 : {
13949 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13950 : start_sequence ();
13951 : {
13952 : #define FAIL return (end_sequence (), nullptr)
13953 : #define DONE return end_sequence ()
13954 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13955 : {
13956 : emit_insn (gen_sminv32hf3_mask (operands[0],
13957 : operands[2],
13958 : operands[3],
13959 : operands[4],
13960 : operands[1]));
13961 : DONE;
13962 : }
13963 : #undef DONE
13964 : #undef FAIL
13965 : }
13966 : static const uint8_t expand_encoding[] = {
13967 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x52,
13968 : 0x73, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13969 : 0x01
13970 : };
13971 : return complete_seq (expand_encoding, operands);
13972 : }
13973 :
13974 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
13975 : rtx
13976 : gen_cond_sminv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13977 : {
13978 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13979 : start_sequence ();
13980 : {
13981 : #define FAIL return (end_sequence (), nullptr)
13982 : #define DONE return end_sequence ()
13983 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13984 : {
13985 : emit_insn (gen_sminv4sf3_mask (operands[0],
13986 : operands[2],
13987 : operands[3],
13988 : operands[4],
13989 : operands[1]));
13990 : DONE;
13991 : }
13992 : #undef DONE
13993 : #undef FAIL
13994 : }
13995 : static const uint8_t expand_encoding[] = {
13996 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x52,
13997 : 0x6b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13998 : 0x01
13999 : };
14000 : return complete_seq (expand_encoding, operands);
14001 : }
14002 :
14003 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14004 : rtx
14005 : gen_smaxv32hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
14006 : {
14007 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
14008 : start_sequence ();
14009 : {
14010 : #define FAIL return (end_sequence (), nullptr)
14011 : #define DONE return end_sequence ()
14012 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14013 : {
14014 : if (!flag_finite_math_only || flag_signed_zeros)
14015 : {
14016 : operands[1] = force_reg (V32HFmode, operands[1]);
14017 : emit_insn (gen_ieee_maxv32hf3_mask_round
14018 : (operands[0], operands[1], operands[2]
14019 : , operands[3], operands[4]
14020 : , operands[5]));
14021 : DONE;
14022 : }
14023 : else
14024 : ix86_fixup_binary_operands_no_copy (SMAX, V32HFmode, operands);
14025 : }
14026 : #undef DONE
14027 : #undef FAIL
14028 : }
14029 : static const uint8_t expand_encoding[] = {
14030 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81,
14031 : 0x09, 0x73, 0x53, 0x73, 0x01, 0x01, 0x01, 0x02,
14032 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
14033 : };
14034 : return complete_seq (expand_encoding, operands);
14035 : }
14036 :
14037 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14038 : rtx
14039 : gen_smaxv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14040 : {
14041 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14042 : start_sequence ();
14043 : {
14044 : #define FAIL return (end_sequence (), nullptr)
14045 : #define DONE return end_sequence ()
14046 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14047 : {
14048 : if (!flag_finite_math_only || flag_signed_zeros)
14049 : {
14050 : operands[1] = force_reg (V8HFmode, operands[1]);
14051 : emit_insn (gen_ieee_maxv8hf3_mask
14052 : (operands[0], operands[1], operands[2]
14053 : , operands[3], operands[4]
14054 : ));
14055 : DONE;
14056 : }
14057 : else
14058 : ix86_fixup_binary_operands_no_copy (SMAX, V8HFmode, operands);
14059 : }
14060 : #undef DONE
14061 : #undef FAIL
14062 : }
14063 : static const uint8_t expand_encoding[] = {
14064 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x53,
14065 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14066 : 0x04
14067 : };
14068 : return complete_seq (expand_encoding, operands);
14069 : }
14070 :
14071 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14072 : rtx
14073 : gen_smaxv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
14074 : {
14075 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14076 : start_sequence ();
14077 : {
14078 : #define FAIL return (end_sequence (), nullptr)
14079 : #define DONE return end_sequence ()
14080 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14081 : {
14082 : if (!flag_finite_math_only || flag_signed_zeros)
14083 : {
14084 : operands[1] = force_reg (V8SFmode, operands[1]);
14085 : emit_insn (gen_ieee_maxv8sf3
14086 : (operands[0], operands[1], operands[2]
14087 :
14088 : ));
14089 : DONE;
14090 : }
14091 : else
14092 : ix86_fixup_binary_operands_no_copy (SMAX, V8SFmode, operands);
14093 : }
14094 : #undef DONE
14095 : #undef FAIL
14096 : }
14097 : static const uint8_t expand_encoding[] = {
14098 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x6f, 0x01, 0x01,
14099 : 0x01, 0x02
14100 : };
14101 : return complete_seq (expand_encoding, operands);
14102 : }
14103 :
14104 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14105 : rtx
14106 : gen_smaxv8df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
14107 : {
14108 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
14109 : start_sequence ();
14110 : {
14111 : #define FAIL return (end_sequence (), nullptr)
14112 : #define DONE return end_sequence ()
14113 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14114 : {
14115 : if (!flag_finite_math_only || flag_signed_zeros)
14116 : {
14117 : operands[1] = force_reg (V8DFmode, operands[1]);
14118 : emit_insn (gen_ieee_maxv8df3_round
14119 : (operands[0], operands[1], operands[2]
14120 :
14121 : , operands[3]));
14122 : DONE;
14123 : }
14124 : else
14125 : ix86_fixup_binary_operands_no_copy (SMAX, V8DFmode, operands);
14126 : }
14127 : #undef DONE
14128 : #undef FAIL
14129 : }
14130 : static const uint8_t expand_encoding[] = {
14131 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x53,
14132 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
14133 : 0x33
14134 : };
14135 : return complete_seq (expand_encoding, operands);
14136 : }
14137 :
14138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14139 : rtx
14140 : gen_sminv4df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14141 : {
14142 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14143 : start_sequence ();
14144 : {
14145 : #define FAIL return (end_sequence (), nullptr)
14146 : #define DONE return end_sequence ()
14147 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14148 : {
14149 : if (!flag_finite_math_only || flag_signed_zeros)
14150 : {
14151 : operands[1] = force_reg (V4DFmode, operands[1]);
14152 : emit_insn (gen_ieee_minv4df3_mask
14153 : (operands[0], operands[1], operands[2]
14154 : , operands[3], operands[4]
14155 : ));
14156 : DONE;
14157 : }
14158 : else
14159 : ix86_fixup_binary_operands_no_copy (SMIN, V4DFmode, operands);
14160 : }
14161 : #undef DONE
14162 : #undef FAIL
14163 : }
14164 : static const uint8_t expand_encoding[] = {
14165 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x52,
14166 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14167 : 0x04
14168 : };
14169 : return complete_seq (expand_encoding, operands);
14170 : }
14171 :
14172 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3366 */
14173 : extern rtx_insn *gen_split_1334 (rtx_insn *, rtx *);
14174 : rtx_insn *
14175 : gen_split_1334 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14176 : {
14177 : if (dump_file)
14178 : fprintf (dump_file, "Splitting with gen_split_1334 (sse.md:3366)\n");
14179 : start_sequence ();
14180 : #define FAIL return (end_sequence (), nullptr)
14181 : #define DONE return end_sequence ()
14182 : #line 3385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14183 : {
14184 : int u = UNSPEC_IEEE_MIN;
14185 : rtx tmp = operands[2];
14186 : if ((INTVAL (operands[5]) == 1 && rtx_equal_p (operands[1], operands[4]))
14187 : || (INTVAL (operands[5]) == 14 && rtx_equal_p (operands[1], operands[3])))
14188 : u = UNSPEC_IEEE_MAX;
14189 :
14190 : if (MEM_P (operands[1]))
14191 : operands[1] = force_reg (V4SFmode, operands[1]);
14192 :
14193 : if (immediate_operand (operands[2], V4SFmode))
14194 : tmp = force_reg (V4SFmode, operands[2]);
14195 : rtvec v = gen_rtvec (2, operands[1], tmp);
14196 : operands[6] = gen_rtx_UNSPEC (V4SFmode, v, u);
14197 : }
14198 : #undef DONE
14199 : #undef FAIL
14200 : static const uint8_t expand_encoding[] = {
14201 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x06
14202 : };
14203 : return complete_seq (expand_encoding, operands);
14204 : }
14205 :
14206 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3430 */
14207 : extern rtx_insn *gen_split_1344 (rtx_insn *, rtx *);
14208 : rtx_insn *
14209 : gen_split_1344 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14210 : {
14211 : if (dump_file)
14212 : fprintf (dump_file, "Splitting with gen_split_1344 (sse.md:3430)\n");
14213 : start_sequence ();
14214 : #define FAIL return (end_sequence (), nullptr)
14215 : #define DONE return end_sequence ()
14216 : #line 3443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14217 : {
14218 : int u = UNSPEC_IEEE_MIN;
14219 : if (GET_CODE (operands[1]) == LT)
14220 : u = UNSPEC_IEEE_MAX;
14221 :
14222 : rtx tmp = force_reg (V4DFmode, operands[3]);
14223 : rtvec v = gen_rtvec (2, tmp, operands[2]);
14224 : operands[5] = gen_rtx_UNSPEC (V4DFmode, v, u);
14225 : }
14226 : #undef DONE
14227 : #undef FAIL
14228 : static const uint8_t expand_encoding[] = {
14229 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x05
14230 : };
14231 : return complete_seq (expand_encoding, operands);
14232 : }
14233 :
14234 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14235 : rtx
14236 : gen_avx512fp16_vmsminv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
14237 : {
14238 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14239 : start_sequence ();
14240 : {
14241 : #define FAIL return (end_sequence (), nullptr)
14242 : #define DONE return end_sequence ()
14243 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14244 : {
14245 : if (!flag_finite_math_only || flag_signed_zeros)
14246 : {
14247 : emit_insn (gen_avx512fp16_ieee_vmminv8hf3
14248 : (operands[0], operands[1], operands[2]
14249 :
14250 : ));
14251 : DONE;
14252 : }
14253 : }
14254 : #undef DONE
14255 : #undef FAIL
14256 : }
14257 : static const uint8_t expand_encoding[] = {
14258 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x52,
14259 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27,
14260 : 0x01
14261 : };
14262 : return complete_seq (expand_encoding, operands);
14263 : }
14264 :
14265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14266 : rtx
14267 : gen_sse_vmsminv4sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
14268 : {
14269 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
14270 : start_sequence ();
14271 : {
14272 : #define FAIL return (end_sequence (), nullptr)
14273 : #define DONE return end_sequence ()
14274 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14275 : {
14276 : if (!flag_finite_math_only || flag_signed_zeros)
14277 : {
14278 : emit_insn (gen_sse_ieee_vmminv4sf3_round
14279 : (operands[0], operands[1], operands[2]
14280 :
14281 : , operands[3]));
14282 : DONE;
14283 : }
14284 : }
14285 : #undef DONE
14286 : #undef FAIL
14287 : }
14288 : static const uint8_t expand_encoding[] = {
14289 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81,
14290 : 0x09, 0x6b, 0x52, 0x6b, 0x01, 0x01, 0x01, 0x02,
14291 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
14292 : };
14293 : return complete_seq (expand_encoding, operands);
14294 : }
14295 :
14296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14297 : rtx
14298 : gen_sse2_vmsminv2df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
14299 : {
14300 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
14301 : start_sequence ();
14302 : {
14303 : #define FAIL return (end_sequence (), nullptr)
14304 : #define DONE return end_sequence ()
14305 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14306 : {
14307 : if (!flag_finite_math_only || flag_signed_zeros)
14308 : {
14309 : emit_insn (gen_sse2_ieee_vmminv2df3_mask_round
14310 : (operands[0], operands[1], operands[2]
14311 : , operands[3], operands[4]
14312 : , operands[5]));
14313 : DONE;
14314 : }
14315 : }
14316 : #undef DONE
14317 : #undef FAIL
14318 : }
14319 : static const uint8_t expand_encoding[] = {
14320 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81,
14321 : 0x09, 0x6c, 0x81, 0x09, 0x6c, 0x52, 0x6c, 0x01,
14322 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14323 : 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
14324 : };
14325 : return complete_seq (expand_encoding, operands);
14326 : }
14327 :
14328 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3708 */
14329 : extern rtx_insn *gen_split_1363 (rtx_insn *, rtx *);
14330 : rtx_insn *
14331 : gen_split_1363 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14332 : {
14333 : if (dump_file)
14334 : fprintf (dump_file, "Splitting with gen_split_1363 (sse.md:3708)\n");
14335 : start_sequence ();
14336 : #define FAIL return (end_sequence (), nullptr)
14337 : #define DONE return end_sequence ()
14338 : #line 3731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14339 : {
14340 : int i, nelt = XVECLEN (operands[5], 0);
14341 : HOST_WIDE_INT ival = 0;
14342 :
14343 : for (i = 0; i < nelt; i++)
14344 : if (INTVAL (XVECEXP (operands[5], 0, i)) >= GET_MODE_NUNITS (V4SFmode))
14345 : ival |= HOST_WIDE_INT_1 << i;
14346 :
14347 : operands[5] = GEN_INT (ival);
14348 : }
14349 : #undef DONE
14350 : #undef FAIL
14351 : static const uint8_t expand_encoding[] = {
14352 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x3c,
14353 : 0x6b, 0x01, 0x03, 0x01, 0x04, 0x3b, 0x6b, 0x01,
14354 : 0x03, 0x01, 0x04, 0x01, 0x05
14355 : };
14356 : return complete_seq (expand_encoding, operands);
14357 : }
14358 :
14359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3977 */
14360 : rtx
14361 : gen_reduc_plus_scal_v16qi (const rtx operand0, const rtx operand1)
14362 : {
14363 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14364 : start_sequence ();
14365 : {
14366 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v16qi cannot FAIL\"") (void)0
14367 : #define DONE return end_sequence ()
14368 : #line 3982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14369 : {
14370 : rtx tmp = gen_reg_rtx (V1TImode);
14371 : emit_insn (gen_sse2_lshrv1ti3 (tmp, gen_lowpart (V1TImode, operands[1]),
14372 : GEN_INT (64)));
14373 : rtx tmp2 = gen_reg_rtx (V16QImode);
14374 : emit_insn (gen_addv16qi3 (tmp2, operands[1], gen_lowpart (V16QImode, tmp)));
14375 : rtx tmp3 = gen_reg_rtx (V16QImode);
14376 : emit_move_insn (tmp3, CONST0_RTX (V16QImode));
14377 : rtx tmp4 = gen_reg_rtx (V2DImode);
14378 : emit_insn (gen_sse2_psadbw (tmp4, tmp2, tmp3));
14379 : tmp4 = gen_lowpart (V16QImode, tmp4);
14380 : emit_insn (gen_vec_extractv16qiqi (operands[0], tmp4, const0_rtx));
14381 : DONE;
14382 : }
14383 : #undef DONE
14384 : #undef FAIL
14385 : }
14386 : static const uint8_t expand_encoding[] = {
14387 : 0x01, 0x3b, 0x4f, 0x01, 0x00, 0x01, 0x01
14388 : };
14389 : return complete_seq (expand_encoding, operands);
14390 : }
14391 :
14392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4007 */
14393 : rtx
14394 : gen_reduc_plus_scal_v32hi (const rtx operand0, const rtx operand1)
14395 : {
14396 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14397 : start_sequence ();
14398 : {
14399 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v32hi cannot FAIL\"") (void)0
14400 : #define DONE return end_sequence ()
14401 : #line 4012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14402 : {
14403 : rtx tmp = gen_reg_rtx (V16HImode);
14404 : rtx tmp2 = gen_reg_rtx (V16HImode);
14405 : rtx tmp3 = gen_reg_rtx (V16HImode);
14406 : emit_insn (gen_vec_extract_hi_v32hi (tmp, operands[1]));
14407 : emit_insn (gen_vec_extract_lo_v32hi (tmp2, operands[1]));
14408 : emit_insn (gen_addv16hi3 (tmp3, tmp, tmp2));
14409 : emit_insn (gen_reduc_plus_scal_v16hi (operands[0], tmp3));
14410 : DONE;
14411 : }
14412 : #undef DONE
14413 : #undef FAIL
14414 : }
14415 : static const uint8_t expand_encoding[] = {
14416 : 0x01, 0x3b, 0x5a, 0x01, 0x00, 0x01, 0x01
14417 : };
14418 : return complete_seq (expand_encoding, operands);
14419 : }
14420 :
14421 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4030 */
14422 : rtx
14423 : gen_reduc_smax_scal_v8hi (const rtx operand0, const rtx operand1)
14424 : {
14425 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14426 : start_sequence ();
14427 : {
14428 : #define FAIL return (end_sequence (), nullptr)
14429 : #define DONE return end_sequence ()
14430 : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14431 : {
14432 : rtx tmp = gen_reg_rtx (V8HImode);
14433 : ix86_expand_reduc (gen_smaxv8hi3, tmp, operands[1]);
14434 : emit_insn (gen_vec_extractv8hihi (operands[0], tmp,
14435 : const0_rtx));
14436 : DONE;
14437 : }
14438 : #undef DONE
14439 : #undef FAIL
14440 : }
14441 : static const uint8_t expand_encoding[] = {
14442 : 0x01, 0x53, 0x50, 0x01, 0x00, 0x01, 0x01
14443 : };
14444 : return complete_seq (expand_encoding, operands);
14445 : }
14446 :
14447 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14448 : rtx
14449 : gen_reduc_smax_scal_v16hf (const rtx operand0, const rtx operand1)
14450 : {
14451 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14452 : start_sequence ();
14453 : {
14454 : #define FAIL return (end_sequence (), nullptr)
14455 : #define DONE return end_sequence ()
14456 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14457 : {
14458 : rtx tmp = gen_reg_rtx (V8HFmode);
14459 : rtx tmp2 = gen_reg_rtx (V8HFmode);
14460 : rtx tmp3 = gen_reg_rtx (V8HFmode);
14461 : emit_insn (gen_vec_extract_hi_v16hf (tmp, operands[1]));
14462 : emit_insn (gen_vec_extract_lo_v16hf (tmp2, operands[1]));
14463 : emit_insn (gen_smaxv8hf3 (tmp3, tmp, tmp2));
14464 : emit_insn (gen_reduc_smax_scal_v8hf (operands[0], tmp3));
14465 : DONE;
14466 : }
14467 : #undef DONE
14468 : #undef FAIL
14469 : }
14470 : static const uint8_t expand_encoding[] = {
14471 : 0x01, 0x53, 0x6e, 0x01, 0x00, 0x01, 0x01
14472 : };
14473 : return complete_seq (expand_encoding, operands);
14474 : }
14475 :
14476 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14477 : rtx
14478 : gen_reduc_smax_scal_v64qi (const rtx operand0, const rtx operand1)
14479 : {
14480 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14481 : start_sequence ();
14482 : {
14483 : #define FAIL return (end_sequence (), nullptr)
14484 : #define DONE return end_sequence ()
14485 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14486 : {
14487 : rtx tmp = gen_reg_rtx (V32QImode);
14488 : rtx tmp2 = gen_reg_rtx (V32QImode);
14489 : rtx tmp3 = gen_reg_rtx (V32QImode);
14490 : emit_insn (gen_vec_extract_hi_v64qi (tmp, operands[1]));
14491 : emit_insn (gen_vec_extract_lo_v64qi (tmp2, operands[1]));
14492 : emit_insn (gen_smaxv32qi3 (tmp3, tmp, tmp2));
14493 : emit_insn (gen_reduc_smax_scal_v32qi (operands[0], tmp3));
14494 : DONE;
14495 : }
14496 : #undef DONE
14497 : #undef FAIL
14498 : }
14499 : static const uint8_t expand_encoding[] = {
14500 : 0x01, 0x53, 0x59, 0x01, 0x00, 0x01, 0x01
14501 : };
14502 : return complete_seq (expand_encoding, operands);
14503 : }
14504 :
14505 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14506 : rtx
14507 : gen_reduc_smax_scal_v16sf (const rtx operand0, const rtx operand1)
14508 : {
14509 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14510 : start_sequence ();
14511 : {
14512 : #define FAIL return (end_sequence (), nullptr)
14513 : #define DONE return end_sequence ()
14514 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14515 : {
14516 : rtx tmp = gen_reg_rtx (V8SFmode);
14517 : rtx tmp2 = gen_reg_rtx (V8SFmode);
14518 : rtx tmp3 = gen_reg_rtx (V8SFmode);
14519 : emit_insn (gen_vec_extract_hi_v16sf (tmp, operands[1]));
14520 : emit_insn (gen_vec_extract_lo_v16sf (tmp2, operands[1]));
14521 : emit_insn (gen_smaxv8sf3 (tmp3, tmp, tmp2));
14522 : emit_insn (gen_reduc_smax_scal_v8sf (operands[0], tmp3));
14523 : DONE;
14524 : }
14525 : #undef DONE
14526 : #undef FAIL
14527 : }
14528 : static const uint8_t expand_encoding[] = {
14529 : 0x01, 0x53, 0x74, 0x01, 0x00, 0x01, 0x01
14530 : };
14531 : return complete_seq (expand_encoding, operands);
14532 : }
14533 :
14534 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4070 */
14535 : rtx
14536 : gen_reduc_umax_scal_v64qi (const rtx operand0, const rtx operand1)
14537 : {
14538 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14539 : start_sequence ();
14540 : {
14541 : #define FAIL return (end_sequence (), nullptr)
14542 : #define DONE return end_sequence ()
14543 : #line 4075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14544 : {
14545 : rtx tmp = gen_reg_rtx (V32QImode);
14546 : rtx tmp2 = gen_reg_rtx (V32QImode);
14547 : rtx tmp3 = gen_reg_rtx (V32QImode);
14548 : emit_insn (gen_vec_extract_hi_v64qi (tmp, operands[1]));
14549 : emit_insn (gen_vec_extract_lo_v64qi (tmp2, operands[1]));
14550 : emit_insn (gen_umaxv32qi3 (tmp3, tmp, tmp2));
14551 : emit_insn (gen_reduc_umax_scal_v32qi (operands[0], tmp3));
14552 : DONE;
14553 : }
14554 : #undef DONE
14555 : #undef FAIL
14556 : }
14557 : static const uint8_t expand_encoding[] = {
14558 : 0x01, 0x55, 0x59, 0x01, 0x00, 0x01, 0x01
14559 : };
14560 : return complete_seq (expand_encoding, operands);
14561 : }
14562 :
14563 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4105 */
14564 : rtx
14565 : gen_reduc_umin_scal_v8hi (const rtx operand0, const rtx operand1)
14566 : {
14567 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14568 : start_sequence ();
14569 : {
14570 : #define FAIL return (end_sequence (), nullptr)
14571 : #define DONE return end_sequence ()
14572 : #line 4110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14573 : {
14574 : rtx tmp = gen_reg_rtx (V8HImode);
14575 : ix86_expand_reduc (gen_uminv8hi3, tmp, operands[1]);
14576 : emit_insn (gen_vec_extractv8hihi (operands[0], tmp, const0_rtx));
14577 : DONE;
14578 : }
14579 : #undef DONE
14580 : #undef FAIL
14581 : }
14582 : static const uint8_t expand_encoding[] = {
14583 : 0x01, 0x54, 0x50, 0x01, 0x00, 0x01, 0x01
14584 : };
14585 : return complete_seq (expand_encoding, operands);
14586 : }
14587 :
14588 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4136 */
14589 : rtx
14590 : gen_reduc_sbool_ior_scal_si (const rtx operand0, const rtx operand1, const rtx operand2)
14591 : {
14592 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14593 : start_sequence ();
14594 : {
14595 : #define FAIL _Pragma ("GCC error \"reduc_sbool_ior_scal_si cannot FAIL\"") (void)0
14596 : #define DONE return end_sequence ()
14597 : #line 4141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14598 : {
14599 : int n_elt = INTVAL (operands[2]);
14600 : rtx op1 = operands[1];
14601 : if (n_elt < 8)
14602 : {
14603 : rtx op2 = gen_int_mode ((1u << n_elt) - 1, QImode);
14604 : op1 = gen_reg_rtx (QImode);
14605 : emit_insn (gen_andqi3 (op1, operands[1], op2));
14606 : }
14607 : ix86_expand_setcc (operands[0], NE,
14608 : op1, CONST0_RTX (SImode));
14609 : DONE;
14610 : }
14611 : #undef DONE
14612 : #undef FAIL
14613 : }
14614 : static const uint8_t expand_encoding[] = {
14615 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
14616 : };
14617 : return complete_seq (expand_encoding, operands);
14618 : }
14619 :
14620 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4199 */
14621 : rtx
14622 : gen_reduc_sbool_and_scal_v8si (const rtx operand0, const rtx operand1)
14623 : {
14624 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14625 : start_sequence ();
14626 : {
14627 : #define FAIL _Pragma ("GCC error \"reduc_sbool_and_scal_v8si cannot FAIL\"") (void)0
14628 : #define DONE return end_sequence ()
14629 : #line 4203 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14630 : {
14631 : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14632 : rtx op2, tmp;
14633 : if (TARGET_AVX2 || 32 != 32)
14634 : {
14635 : op2 = force_reg (V8SImode, CONST0_RTX (V8SImode));
14636 : tmp = gen_reg_rtx (V8SImode);
14637 : rtx op1 = gen_rtx_EQ (V8SImode, operands[1], op2);
14638 : emit_insn (gen_vec_cmpv8siv8si (tmp, op1, operands[1], op2));
14639 : }
14640 : else
14641 : {
14642 : op2 = force_reg (V8SImode, CONSTM1_RTX (V8SImode));
14643 : tmp = gen_reg_rtx (V8SImode);
14644 : rtx ops[3] = { tmp, operands[1], op2 };
14645 : ix86_expand_vector_logical_operator (XOR, V8SImode, ops);
14646 : }
14647 :
14648 : tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, tmp, tmp), UNSPEC_PTEST);
14649 : emit_insn (gen_rtx_SET (flags, tmp));
14650 : rtx ret = gen_rtx_fmt_ee (EQ, VOIDmode, flags, const0_rtx);
14651 : PUT_MODE (ret, QImode);
14652 : emit_insn (gen_rtx_SET (operands[0], ret));
14653 : DONE;
14654 :
14655 : }
14656 : #undef DONE
14657 : #undef FAIL
14658 : }
14659 : static const uint8_t expand_encoding[] = {
14660 : 0x02, 0x01, 0x00, 0x01, 0x01
14661 : };
14662 : return complete_seq (expand_encoding, operands);
14663 : }
14664 :
14665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4230 */
14666 : rtx
14667 : gen_reduc_sbool_ior_scal_v4di (const rtx operand0, const rtx operand1)
14668 : {
14669 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14670 : start_sequence ();
14671 : {
14672 : #define FAIL _Pragma ("GCC error \"reduc_sbool_ior_scal_v4di cannot FAIL\"") (void)0
14673 : #define DONE return end_sequence ()
14674 : #line 4234 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14675 : {
14676 : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14677 : rtx tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, operands[1], operands[1]), UNSPEC_PTEST);
14678 : emit_insn (gen_rtx_SET (flags, tmp));
14679 : rtx ret = gen_rtx_fmt_ee (NE, VOIDmode, flags, const0_rtx);
14680 : PUT_MODE (ret, QImode);
14681 : emit_insn (gen_rtx_SET (operands[0], ret));
14682 : DONE;
14683 : }
14684 : #undef DONE
14685 : #undef FAIL
14686 : }
14687 : static const uint8_t expand_encoding[] = {
14688 : 0x02, 0x01, 0x00, 0x01, 0x01
14689 : };
14690 : return complete_seq (expand_encoding, operands);
14691 : }
14692 :
14693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4311 */
14694 : rtx
14695 : gen_reduc_xor_scal_v16qi (const rtx operand0, const rtx operand1)
14696 : {
14697 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14698 : start_sequence ();
14699 : {
14700 : #define FAIL _Pragma ("GCC error \"reduc_xor_scal_v16qi cannot FAIL\"") (void)0
14701 : #define DONE return end_sequence ()
14702 : #line 4316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14703 : {
14704 : rtx tmp = gen_reg_rtx (V16QImode);
14705 : ix86_expand_reduc (gen_xorv16qi3, tmp, operands[1]);
14706 : emit_insn (gen_vec_extractv16qiqi (operands[0],
14707 : tmp, const0_rtx));
14708 : DONE;
14709 : }
14710 : #undef DONE
14711 : #undef FAIL
14712 : }
14713 : static const uint8_t expand_encoding[] = {
14714 : 0x01, 0x4b, 0x4f, 0x01, 0x00, 0x01, 0x01
14715 : };
14716 : return complete_seq (expand_encoding, operands);
14717 : }
14718 :
14719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14720 : rtx
14721 : gen_reduc_and_scal_v32qi (const rtx operand0, const rtx operand1)
14722 : {
14723 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14724 : start_sequence ();
14725 : {
14726 : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v32qi cannot FAIL\"") (void)0
14727 : #define DONE return end_sequence ()
14728 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14729 : {
14730 : rtx tmp = gen_reg_rtx (V16QImode);
14731 : rtx tmp2 = gen_reg_rtx (V16QImode);
14732 : rtx tmp3 = gen_reg_rtx (V16QImode);
14733 : emit_insn (gen_vec_extract_hi_v32qi (tmp, operands[1]));
14734 : emit_insn (gen_vec_extract_lo_v32qi (tmp2, operands[1]));
14735 : emit_insn (gen_andv16qi3 (tmp3, tmp, tmp2));
14736 : emit_insn (gen_reduc_and_scal_v16qi (operands[0], tmp3));
14737 : DONE;
14738 : }
14739 : #undef DONE
14740 : #undef FAIL
14741 : }
14742 : static const uint8_t expand_encoding[] = {
14743 : 0x01, 0x49, 0x54, 0x01, 0x00, 0x01, 0x01
14744 : };
14745 : return complete_seq (expand_encoding, operands);
14746 : }
14747 :
14748 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14749 : rtx
14750 : gen_reduc_ior_scal_v4di (const rtx operand0, const rtx operand1)
14751 : {
14752 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14753 : start_sequence ();
14754 : {
14755 : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v4di cannot FAIL\"") (void)0
14756 : #define DONE return end_sequence ()
14757 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14758 : {
14759 : rtx tmp = gen_reg_rtx (V2DImode);
14760 : rtx tmp2 = gen_reg_rtx (V2DImode);
14761 : rtx tmp3 = gen_reg_rtx (V2DImode);
14762 : emit_insn (gen_vec_extract_hi_v4di (tmp, operands[1]));
14763 : emit_insn (gen_vec_extract_lo_v4di (tmp2, operands[1]));
14764 : emit_insn (gen_iorv2di3 (tmp3, tmp, tmp2));
14765 : emit_insn (gen_reduc_ior_scal_v2di (operands[0], tmp3));
14766 : DONE;
14767 : }
14768 : #undef DONE
14769 : #undef FAIL
14770 : }
14771 : static const uint8_t expand_encoding[] = {
14772 : 0x01, 0x4a, 0x57, 0x01, 0x00, 0x01, 0x01
14773 : };
14774 : return complete_seq (expand_encoding, operands);
14775 : }
14776 :
14777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14778 : rtx
14779 : gen_reduc_xor_scal_v16si (const rtx operand0, const rtx operand1)
14780 : {
14781 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14782 : start_sequence ();
14783 : {
14784 : #define FAIL _Pragma ("GCC error \"reduc_xor_scal_v16si cannot FAIL\"") (void)0
14785 : #define DONE return end_sequence ()
14786 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14787 : {
14788 : rtx tmp = gen_reg_rtx (V8SImode);
14789 : rtx tmp2 = gen_reg_rtx (V8SImode);
14790 : rtx tmp3 = gen_reg_rtx (V8SImode);
14791 : emit_insn (gen_vec_extract_hi_v16si (tmp, operands[1]));
14792 : emit_insn (gen_vec_extract_lo_v16si (tmp2, operands[1]));
14793 : emit_insn (gen_xorv8si3 (tmp3, tmp, tmp2));
14794 : emit_insn (gen_reduc_xor_scal_v8si (operands[0], tmp3));
14795 : DONE;
14796 : }
14797 : #undef DONE
14798 : #undef FAIL
14799 : }
14800 : static const uint8_t expand_encoding[] = {
14801 : 0x01, 0x4b, 0x5b, 0x01, 0x00, 0x01, 0x01
14802 : };
14803 : return complete_seq (expand_encoding, operands);
14804 : }
14805 :
14806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4396 */
14807 : extern rtx_insn *gen_split_1372 (rtx_insn *, rtx *);
14808 : rtx_insn *
14809 : gen_split_1372 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14810 : {
14811 : if (dump_file)
14812 : fprintf (dump_file, "Splitting with gen_split_1372 (sse.md:4396)\n");
14813 : start_sequence ();
14814 : #define FAIL return (end_sequence (), nullptr)
14815 : #define DONE return end_sequence ()
14816 : #line 4417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14817 : {
14818 : operands[5] = GEN_INT (INTVAL (operands[5]) ^ 4);
14819 : operands[6] = gen_reg_rtx (V4DFmode);
14820 : operands[7]
14821 : = lowpart_subreg (GET_MODE (operands[0]), operands[6], V4DFmode);
14822 : }
14823 : #undef DONE
14824 : #undef FAIL
14825 : static const uint8_t expand_encoding[] = {
14826 : 0x02, 0x1f, 0x01, 0x06, 0x1a, 0x70, 0x03, 0x01,
14827 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c, 0x1f, 0x01,
14828 : 0x00, 0x01, 0x07
14829 : };
14830 : return complete_seq (expand_encoding, operands);
14831 : }
14832 :
14833 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4466 */
14834 : extern rtx_insn *gen_split_1384 (rtx_insn *, rtx *);
14835 : rtx_insn *
14836 : gen_split_1384 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14837 : {
14838 : if (dump_file)
14839 : fprintf (dump_file, "Splitting with gen_split_1384 (sse.md:4466)\n");
14840 : start_sequence ();
14841 : #define FAIL return (end_sequence (), nullptr)
14842 : #define DONE return end_sequence ()
14843 : #line 4489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14844 : {
14845 : if (INTVAL (operands[5]) == 5)
14846 : std::swap (operands[1], operands[2]);
14847 : operands[2] = force_reg (V4DFmode, operands[2]);
14848 : }
14849 : #undef DONE
14850 : #undef FAIL
14851 : static const uint8_t expand_encoding[] = {
14852 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01,
14853 : 0x02, 0x01, 0x01, 0x61, 0x70, 0x01, 0x03, 0x01,
14854 : 0x04, 0x34
14855 : };
14856 : return complete_seq (expand_encoding, operands);
14857 : }
14858 :
14859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14860 : extern rtx_insn *gen_split_1394 (rtx_insn *, rtx *);
14861 : rtx_insn *
14862 : gen_split_1394 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14863 : {
14864 : if (dump_file)
14865 : fprintf (dump_file, "Splitting with gen_split_1394 (sse.md:4685)\n");
14866 : start_sequence ();
14867 : #define FAIL return (end_sequence (), nullptr)
14868 : #define DONE return end_sequence ()
14869 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14870 : {
14871 : operands[5] = lowpart_subreg (HImode,
14872 : operands[0], HImode);
14873 : if (SUBREG_P (operands[5]))
14874 : {
14875 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14876 : SUBREG_PROMOTED_SET (operands[5], 1);
14877 : }
14878 : }
14879 : #undef DONE
14880 : #undef FAIL
14881 : static const uint8_t expand_encoding[] = {
14882 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x10,
14883 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14884 : 0x1f, 0x01, 0x04, 0x01, 0x05
14885 : };
14886 : return complete_seq (expand_encoding, operands);
14887 : }
14888 :
14889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14890 : extern rtx_insn *gen_split_1402 (rtx_insn *, rtx *);
14891 : rtx_insn *
14892 : gen_split_1402 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14893 : {
14894 : if (dump_file)
14895 : fprintf (dump_file, "Splitting with gen_split_1402 (sse.md:4685)\n");
14896 : start_sequence ();
14897 : #define FAIL return (end_sequence (), nullptr)
14898 : #define DONE return end_sequence ()
14899 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14900 : {
14901 : operands[5] = lowpart_subreg (QImode,
14902 : operands[0], DImode);
14903 : if (SUBREG_P (operands[5]))
14904 : {
14905 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14906 : SUBREG_PROMOTED_SET (operands[5], 1);
14907 : }
14908 : }
14909 : #undef DONE
14910 : #undef FAIL
14911 : static const uint8_t expand_encoding[] = {
14912 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
14913 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14914 : 0x1f, 0x01, 0x04, 0x01, 0x05
14915 : };
14916 : return complete_seq (expand_encoding, operands);
14917 : }
14918 :
14919 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14920 : extern rtx_insn *gen_split_1412 (rtx_insn *, rtx *);
14921 : rtx_insn *
14922 : gen_split_1412 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14923 : {
14924 : if (dump_file)
14925 : fprintf (dump_file, "Splitting with gen_split_1412 (sse.md:4685)\n");
14926 : start_sequence ();
14927 : #define FAIL return (end_sequence (), nullptr)
14928 : #define DONE return end_sequence ()
14929 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14930 : {
14931 : operands[5] = lowpart_subreg (SImode,
14932 : operands[0], HImode);
14933 : if (SUBREG_P (operands[5]))
14934 : {
14935 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14936 : SUBREG_PROMOTED_SET (operands[5], 1);
14937 : }
14938 : }
14939 : #undef DONE
14940 : #undef FAIL
14941 : static const uint8_t expand_encoding[] = {
14942 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x11,
14943 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14944 : 0x1f, 0x01, 0x04, 0x01, 0x05
14945 : };
14946 : return complete_seq (expand_encoding, operands);
14947 : }
14948 :
14949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14950 : extern rtx_insn *gen_split_1422 (rtx_insn *, rtx *);
14951 : rtx_insn *
14952 : gen_split_1422 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14953 : {
14954 : if (dump_file)
14955 : fprintf (dump_file, "Splitting with gen_split_1422 (sse.md:4685)\n");
14956 : start_sequence ();
14957 : #define FAIL return (end_sequence (), nullptr)
14958 : #define DONE return end_sequence ()
14959 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14960 : {
14961 : operands[5] = lowpart_subreg (HImode,
14962 : operands[0], SImode);
14963 : if (SUBREG_P (operands[5]))
14964 : {
14965 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14966 : SUBREG_PROMOTED_SET (operands[5], 1);
14967 : }
14968 : }
14969 : #undef DONE
14970 : #undef FAIL
14971 : static const uint8_t expand_encoding[] = {
14972 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x10,
14973 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14974 : 0x1f, 0x01, 0x04, 0x01, 0x05
14975 : };
14976 : return complete_seq (expand_encoding, operands);
14977 : }
14978 :
14979 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14980 : extern rtx_insn *gen_split_1432 (rtx_insn *, rtx *);
14981 : rtx_insn *
14982 : gen_split_1432 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14983 : {
14984 : if (dump_file)
14985 : fprintf (dump_file, "Splitting with gen_split_1432 (sse.md:4685)\n");
14986 : start_sequence ();
14987 : #define FAIL return (end_sequence (), nullptr)
14988 : #define DONE return end_sequence ()
14989 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14990 : {
14991 : operands[5] = lowpart_subreg (QImode,
14992 : operands[0], DImode);
14993 : if (SUBREG_P (operands[5]))
14994 : {
14995 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14996 : SUBREG_PROMOTED_SET (operands[5], 1);
14997 : }
14998 : }
14999 : #undef DONE
15000 : #undef FAIL
15001 : static const uint8_t expand_encoding[] = {
15002 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
15003 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15004 : 0x1f, 0x01, 0x04, 0x01, 0x05
15005 : };
15006 : return complete_seq (expand_encoding, operands);
15007 : }
15008 :
15009 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4724 */
15010 : extern rtx_insn *gen_split_1442 (rtx_insn *, rtx *);
15011 : rtx_insn *
15012 : gen_split_1442 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15013 : {
15014 : if (dump_file)
15015 : fprintf (dump_file, "Splitting with gen_split_1442 (sse.md:4724)\n");
15016 : start_sequence ();
15017 : #define FAIL return (end_sequence (), nullptr)
15018 : #define DONE return end_sequence ()
15019 : #line 4742 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15020 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15021 : #undef DONE
15022 : #undef FAIL
15023 : static const uint8_t expand_encoding[] = {
15024 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15025 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
15026 : };
15027 : return complete_seq (expand_encoding, operands);
15028 : }
15029 :
15030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4724 */
15031 : extern rtx_insn *gen_split_1452 (rtx_insn *, rtx *);
15032 : rtx_insn *
15033 : gen_split_1452 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15034 : {
15035 : if (dump_file)
15036 : fprintf (dump_file, "Splitting with gen_split_1452 (sse.md:4724)\n");
15037 : start_sequence ();
15038 : #define FAIL return (end_sequence (), nullptr)
15039 : #define DONE return end_sequence ()
15040 : #line 4742 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15041 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15042 : #undef DONE
15043 : #undef FAIL
15044 : static const uint8_t expand_encoding[] = {
15045 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15046 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
15047 : };
15048 : return complete_seq (expand_encoding, operands);
15049 : }
15050 :
15051 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4877 */
15052 : extern rtx_insn *gen_split_1462 (rtx_insn *, rtx *);
15053 : rtx_insn *
15054 : gen_split_1462 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15055 : {
15056 : if (dump_file)
15057 : fprintf (dump_file, "Splitting with gen_split_1462 (sse.md:4877)\n");
15058 : start_sequence ();
15059 : #define FAIL return (end_sequence (), nullptr)
15060 : #define DONE return end_sequence ()
15061 : #line 4905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15062 : {
15063 : operands[5] = lowpart_subreg (SImode,
15064 : operands[0], DImode);
15065 : if (SUBREG_P (operands[5]))
15066 : {
15067 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15068 : SUBREG_PROMOTED_SET (operands[5], 1);
15069 : }
15070 : }
15071 : #undef DONE
15072 : #undef FAIL
15073 : static const uint8_t expand_encoding[] = {
15074 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
15075 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15076 : 0x1f, 0x01, 0x04, 0x01, 0x05
15077 : };
15078 : return complete_seq (expand_encoding, operands);
15079 : }
15080 :
15081 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4919 */
15082 : extern rtx_insn *gen_split_1472 (rtx_insn *, rtx *);
15083 : rtx_insn *
15084 : gen_split_1472 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15085 : {
15086 : if (dump_file)
15087 : fprintf (dump_file, "Splitting with gen_split_1472 (sse.md:4919)\n");
15088 : start_sequence ();
15089 : #define FAIL return (end_sequence (), nullptr)
15090 : #define DONE return end_sequence ()
15091 : #line 4936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15092 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15093 : #undef DONE
15094 : #undef FAIL
15095 : static const uint8_t expand_encoding[] = {
15096 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x03, 0x01,
15097 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
15098 : };
15099 : return complete_seq (expand_encoding, operands);
15100 : }
15101 :
15102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4919 */
15103 : extern rtx_insn *gen_split_1481 (rtx_insn *, rtx *);
15104 : rtx_insn *
15105 : gen_split_1481 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15106 : {
15107 : if (dump_file)
15108 : fprintf (dump_file, "Splitting with gen_split_1481 (sse.md:4919)\n");
15109 : start_sequence ();
15110 : #define FAIL return (end_sequence (), nullptr)
15111 : #define DONE return end_sequence ()
15112 : #line 4936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15113 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15114 : #undef DONE
15115 : #undef FAIL
15116 : static const uint8_t expand_encoding[] = {
15117 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01,
15118 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15119 : };
15120 : return complete_seq (expand_encoding, operands);
15121 : }
15122 :
15123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15124 : extern rtx_insn *gen_split_1491 (rtx_insn *, rtx *);
15125 : rtx_insn *
15126 : gen_split_1491 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15127 : {
15128 : if (dump_file)
15129 : fprintf (dump_file, "Splitting with gen_split_1491 (sse.md:4938)\n");
15130 : start_sequence ();
15131 : #define FAIL return (end_sequence (), nullptr)
15132 : #define DONE return end_sequence ()
15133 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15134 : {
15135 : int cmp_imm = INTVAL (operands[3]);
15136 : rtx res = CONST0_RTX (SImode);
15137 : /* EQ/LE/NLT/TRUE. */
15138 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15139 : {
15140 : int nelts = GET_MODE_NUNITS (V32HImode);
15141 : if (nelts >= 8)
15142 : res = CONSTM1_RTX (SImode);
15143 : else
15144 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15145 : }
15146 : operands[4] = res;
15147 : }
15148 : #undef DONE
15149 : #undef FAIL
15150 : static const uint8_t expand_encoding[] = {
15151 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15152 : };
15153 : return complete_seq (expand_encoding, operands);
15154 : }
15155 :
15156 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15157 : extern rtx_insn *gen_split_1501 (rtx_insn *, rtx *);
15158 : rtx_insn *
15159 : gen_split_1501 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15160 : {
15161 : if (dump_file)
15162 : fprintf (dump_file, "Splitting with gen_split_1501 (sse.md:4938)\n");
15163 : start_sequence ();
15164 : #define FAIL return (end_sequence (), nullptr)
15165 : #define DONE return end_sequence ()
15166 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15167 : {
15168 : int cmp_imm = INTVAL (operands[3]);
15169 : rtx res = CONST0_RTX (QImode);
15170 : /* EQ/LE/NLT/TRUE. */
15171 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15172 : {
15173 : int nelts = GET_MODE_NUNITS (V4SImode);
15174 : if (nelts >= 8)
15175 : res = CONSTM1_RTX (QImode);
15176 : else
15177 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15178 : }
15179 : operands[4] = res;
15180 : }
15181 : #undef DONE
15182 : #undef FAIL
15183 : static const uint8_t expand_encoding[] = {
15184 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15185 : };
15186 : return complete_seq (expand_encoding, operands);
15187 : }
15188 :
15189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4999 */
15190 : extern rtx_insn *gen_split_1511 (rtx_insn *, rtx *);
15191 : rtx_insn *
15192 : gen_split_1511 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15193 : {
15194 : if (dump_file)
15195 : fprintf (dump_file, "Splitting with gen_split_1511 (sse.md:4999)\n");
15196 : start_sequence ();
15197 : #define FAIL return (end_sequence (), nullptr)
15198 : #define DONE return end_sequence ()
15199 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15200 : {
15201 : operands[5] = lowpart_subreg (HImode,
15202 : operands[0], HImode);
15203 : if (SUBREG_P (operands[5]))
15204 : {
15205 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15206 : SUBREG_PROMOTED_SET (operands[5], 1);
15207 : }
15208 : }
15209 : #undef DONE
15210 : #undef FAIL
15211 : static const uint8_t expand_encoding[] = {
15212 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x10,
15213 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15214 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15215 : };
15216 : return complete_seq (expand_encoding, operands);
15217 : }
15218 :
15219 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4999 */
15220 : extern rtx_insn *gen_split_1521 (rtx_insn *, rtx *);
15221 : rtx_insn *
15222 : gen_split_1521 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15223 : {
15224 : if (dump_file)
15225 : fprintf (dump_file, "Splitting with gen_split_1521 (sse.md:4999)\n");
15226 : start_sequence ();
15227 : #define FAIL return (end_sequence (), nullptr)
15228 : #define DONE return end_sequence ()
15229 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15230 : {
15231 : operands[5] = lowpart_subreg (HImode,
15232 : operands[0], SImode);
15233 : if (SUBREG_P (operands[5]))
15234 : {
15235 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15236 : SUBREG_PROMOTED_SET (operands[5], 1);
15237 : }
15238 : }
15239 : #undef DONE
15240 : #undef FAIL
15241 : static const uint8_t expand_encoding[] = {
15242 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x10,
15243 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15244 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15245 : };
15246 : return complete_seq (expand_encoding, operands);
15247 : }
15248 :
15249 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15250 : extern rtx_insn *gen_split_1531 (rtx_insn *, rtx *);
15251 : rtx_insn *
15252 : gen_split_1531 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15253 : {
15254 : if (dump_file)
15255 : fprintf (dump_file, "Splitting with gen_split_1531 (sse.md:5091)\n");
15256 : start_sequence ();
15257 : #define FAIL return (end_sequence (), nullptr)
15258 : #define DONE return end_sequence ()
15259 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15260 : {
15261 : operands[5] = lowpart_subreg (QImode,
15262 : operands[0], HImode);
15263 : if (SUBREG_P (operands[5]))
15264 : {
15265 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15266 : SUBREG_PROMOTED_SET (operands[5], 1);
15267 : }
15268 : }
15269 : #undef DONE
15270 : #undef FAIL
15271 : static const uint8_t expand_encoding[] = {
15272 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
15273 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15274 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15275 : };
15276 : return complete_seq (expand_encoding, operands);
15277 : }
15278 :
15279 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15280 : extern rtx_insn *gen_split_1541 (rtx_insn *, rtx *);
15281 : rtx_insn *
15282 : gen_split_1541 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15283 : {
15284 : if (dump_file)
15285 : fprintf (dump_file, "Splitting with gen_split_1541 (sse.md:5091)\n");
15286 : start_sequence ();
15287 : #define FAIL return (end_sequence (), nullptr)
15288 : #define DONE return end_sequence ()
15289 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15290 : {
15291 : operands[5] = lowpart_subreg (QImode,
15292 : operands[0], DImode);
15293 : if (SUBREG_P (operands[5]))
15294 : {
15295 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15296 : SUBREG_PROMOTED_SET (operands[5], 1);
15297 : }
15298 : }
15299 : #undef DONE
15300 : #undef FAIL
15301 : static const uint8_t expand_encoding[] = {
15302 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
15303 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15304 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15305 : };
15306 : return complete_seq (expand_encoding, operands);
15307 : }
15308 :
15309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5161 */
15310 : extern rtx_insn *gen_split_1551 (rtx_insn *, rtx *);
15311 : rtx_insn *
15312 : gen_split_1551 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
15313 : {
15314 : if (dump_file)
15315 : fprintf (dump_file, "Splitting with gen_split_1551 (sse.md:5161)\n");
15316 : start_sequence ();
15317 : #define FAIL return (end_sequence (), nullptr)
15318 : #define DONE return end_sequence ()
15319 : #line 5176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15320 : {
15321 : /* LE: 2, NLT: 5, NLE: 6, LT: 1 */
15322 : int cmp_predicate = 2; /* LE */
15323 : if (MEM_P (operands[1]))
15324 : {
15325 : std::swap (operands[1], operands[2]);
15326 : cmp_predicate = 5; /* NLT (GE) */
15327 : }
15328 : if ((INTVAL (operands[4]) & 4) != 0)
15329 : cmp_predicate ^= 4; /* Invert the comparison to NLE (GT) or LT. */
15330 : emit_insn (gen_avx512bw_ucmpv64qi3 (operands[0], operands[1],operands[2],
15331 : GEN_INT (cmp_predicate)));
15332 : DONE;
15333 : }
15334 : #undef DONE
15335 : #undef FAIL
15336 : static const uint8_t expand_encoding[] = {
15337 : 0x01, 0x27, 0x00
15338 : };
15339 : return complete_seq (expand_encoding, operands);
15340 : }
15341 :
15342 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5161 */
15343 : extern rtx_insn *gen_split_1561 (rtx_insn *, rtx *);
15344 : rtx_insn *
15345 : gen_split_1561 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
15346 : {
15347 : if (dump_file)
15348 : fprintf (dump_file, "Splitting with gen_split_1561 (sse.md:5161)\n");
15349 : start_sequence ();
15350 : #define FAIL return (end_sequence (), nullptr)
15351 : #define DONE return end_sequence ()
15352 : #line 5176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15353 : {
15354 : /* LE: 2, NLT: 5, NLE: 6, LT: 1 */
15355 : int cmp_predicate = 2; /* LE */
15356 : if (MEM_P (operands[1]))
15357 : {
15358 : std::swap (operands[1], operands[2]);
15359 : cmp_predicate = 5; /* NLT (GE) */
15360 : }
15361 : if ((INTVAL (operands[4]) & 4) != 0)
15362 : cmp_predicate ^= 4; /* Invert the comparison to NLE (GT) or LT. */
15363 : emit_insn (gen_avx512vl_ucmpv8hi3 (operands[0], operands[1],operands[2],
15364 : GEN_INT (cmp_predicate)));
15365 : DONE;
15366 : }
15367 : #undef DONE
15368 : #undef FAIL
15369 : static const uint8_t expand_encoding[] = {
15370 : 0x01, 0x27, 0x00
15371 : };
15372 : return complete_seq (expand_encoding, operands);
15373 : }
15374 :
15375 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5275 */
15376 : rtx
15377 : gen_vec_cmpv4sfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15378 : {
15379 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15380 : start_sequence ();
15381 : {
15382 : #define FAIL return (end_sequence (), nullptr)
15383 : #define DONE return end_sequence ()
15384 : #line 5281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15385 : {
15386 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15387 : operands[2], operands[3]);
15388 : gcc_assert (ok);
15389 : DONE;
15390 : }
15391 : #undef DONE
15392 : #undef FAIL
15393 : }
15394 : static const uint8_t expand_encoding[] = {
15395 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15396 : 0x02, 0x01, 0x03
15397 : };
15398 : return complete_seq (expand_encoding, operands);
15399 : }
15400 :
15401 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5301 */
15402 : rtx
15403 : gen_vec_cmpv32bfsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15404 : {
15405 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15406 : start_sequence ();
15407 : {
15408 : #define FAIL return (end_sequence (), nullptr)
15409 : #define DONE return end_sequence ()
15410 : #line 5307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15411 : {
15412 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15413 : operands[2], operands[3]);
15414 : gcc_assert (ok);
15415 : DONE;
15416 : }
15417 : #undef DONE
15418 : #undef FAIL
15419 : }
15420 : static const uint8_t expand_encoding[] = {
15421 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x11, 0x01, 0x01,
15422 : 0x02, 0x01, 0x03
15423 : };
15424 : return complete_seq (expand_encoding, operands);
15425 : }
15426 :
15427 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5338 */
15428 : rtx
15429 : gen_vec_cmpv2div2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15430 : {
15431 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15432 : start_sequence ();
15433 : {
15434 : #define FAIL return (end_sequence (), nullptr)
15435 : #define DONE return end_sequence ()
15436 : #line 5344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15437 : {
15438 : bool ok = ix86_expand_int_vec_cmp (operands);
15439 : gcc_assert (ok);
15440 : DONE;
15441 : }
15442 : #undef DONE
15443 : #undef FAIL
15444 : }
15445 : static const uint8_t expand_encoding[] = {
15446 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x52, 0x01, 0x01,
15447 : 0x02, 0x01, 0x03
15448 : };
15449 : return complete_seq (expand_encoding, operands);
15450 : }
15451 :
15452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5374 */
15453 : rtx
15454 : gen_vec_cmpuv2diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15455 : {
15456 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15457 : start_sequence ();
15458 : {
15459 : #define FAIL return (end_sequence (), nullptr)
15460 : #define DONE return end_sequence ()
15461 : #line 5380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15462 : {
15463 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15464 : operands[2], operands[3]);
15465 : gcc_assert (ok);
15466 : DONE;
15467 : }
15468 : #undef DONE
15469 : #undef FAIL
15470 : }
15471 : static const uint8_t expand_encoding[] = {
15472 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15473 : 0x02, 0x01, 0x03
15474 : };
15475 : return complete_seq (expand_encoding, operands);
15476 : }
15477 :
15478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5400 */
15479 : rtx
15480 : gen_vec_cmpuv4div4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15481 : {
15482 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15483 : start_sequence ();
15484 : {
15485 : #define FAIL return (end_sequence (), nullptr)
15486 : #define DONE return end_sequence ()
15487 : #line 5406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15488 : {
15489 : bool ok = ix86_expand_int_vec_cmp (operands);
15490 : gcc_assert (ok);
15491 : DONE;
15492 : }
15493 : #undef DONE
15494 : #undef FAIL
15495 : }
15496 : static const uint8_t expand_encoding[] = {
15497 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x57, 0x01, 0x01,
15498 : 0x02, 0x01, 0x03
15499 : };
15500 : return complete_seq (expand_encoding, operands);
15501 : }
15502 :
15503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5498 */
15504 : rtx
15505 : gen_vcond_mask_v8diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15506 : {
15507 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15508 : static const uint8_t expand_encoding[] = {
15509 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x01, 0x01,
15510 : 0x01, 0x02, 0x01, 0x03
15511 : };
15512 : return expand_rtx (expand_encoding, operands);
15513 : }
15514 :
15515 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5498 */
15516 : rtx
15517 : gen_vcond_mask_v2dfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15518 : {
15519 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15520 : static const uint8_t expand_encoding[] = {
15521 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x01, 0x01,
15522 : 0x01, 0x02, 0x01, 0x03
15523 : };
15524 : return expand_rtx (expand_encoding, operands);
15525 : }
15526 :
15527 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5506 */
15528 : rtx
15529 : gen_vcond_mask_v16hfhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15530 : {
15531 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15532 : static const uint8_t expand_encoding[] = {
15533 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x01, 0x01,
15534 : 0x01, 0x02, 0x01, 0x03
15535 : };
15536 : return expand_rtx (expand_encoding, operands);
15537 : }
15538 :
15539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5533 */
15540 : rtx
15541 : gen_vcond_mask_v8hiv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15542 : {
15543 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15544 : start_sequence ();
15545 : {
15546 : #define FAIL _Pragma ("GCC error \"vcond_mask_v8hiv8hi cannot FAIL\"") (void)0
15547 : #define DONE return end_sequence ()
15548 : #line 5540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15549 : {
15550 : ix86_expand_sse_movcc (operands[0], operands[3],
15551 : operands[1], operands[2]);
15552 : DONE;
15553 : }
15554 : #undef DONE
15555 : #undef FAIL
15556 : }
15557 : static const uint8_t expand_encoding[] = {
15558 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x01,
15559 : 0x01, 0x01, 0x02, 0x01, 0x03
15560 : };
15561 : return complete_seq (expand_encoding, operands);
15562 : }
15563 :
15564 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5585 */
15565 : rtx
15566 : gen_vcond_mask_sisi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15567 : {
15568 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15569 : start_sequence ();
15570 : {
15571 : #define FAIL _Pragma ("GCC error \"vcond_mask_sisi cannot FAIL\"") (void)0
15572 : #define DONE return end_sequence ()
15573 : #line 5591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15574 : {
15575 : /* (operand[1] & operand[3]) | (operand[2] & ~operand[3]) */
15576 : rtx op1 = gen_reg_rtx (SImode);
15577 : rtx op2 = gen_reg_rtx (SImode);
15578 : rtx op3 = gen_reg_rtx (SImode);
15579 :
15580 : emit_insn (gen_andsi3 (op1, operands[1], operands[3]));
15581 : emit_insn (gen_one_cmplsi2 (op3, operands[3]));
15582 : emit_insn (gen_andsi3 (op2, operands[2], op3));
15583 : emit_insn (gen_iorsi3 (operands[0], op1, op2));
15584 :
15585 : DONE;
15586 : }
15587 : #undef DONE
15588 : #undef FAIL
15589 : }
15590 : static const uint8_t expand_encoding[] = {
15591 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15592 : 0x03
15593 : };
15594 : return complete_seq (expand_encoding, operands);
15595 : }
15596 :
15597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15598 : rtx
15599 : gen_xorv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15600 : {
15601 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15602 : start_sequence ();
15603 : {
15604 : #define FAIL return (end_sequence (), nullptr)
15605 : #define DONE return end_sequence ()
15606 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15607 : ix86_fixup_binary_operands_no_copy (XOR, V8HFmode, operands);
15608 : #undef DONE
15609 : #undef FAIL
15610 : }
15611 : static const uint8_t expand_encoding[] = {
15612 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6a, 0x01, 0x01,
15613 : 0x01, 0x02
15614 : };
15615 : return complete_seq (expand_encoding, operands);
15616 : }
15617 :
15618 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15619 : rtx
15620 : gen_iorv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15621 : {
15622 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15623 : start_sequence ();
15624 : {
15625 : #define FAIL return (end_sequence (), nullptr)
15626 : #define DONE return end_sequence ()
15627 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15628 : ix86_fixup_binary_operands_no_copy (IOR, V4SFmode, operands);
15629 : #undef DONE
15630 : #undef FAIL
15631 : }
15632 : static const uint8_t expand_encoding[] = {
15633 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x4a,
15634 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15635 : 0x04
15636 : };
15637 : return complete_seq (expand_encoding, operands);
15638 : }
15639 :
15640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15641 : rtx
15642 : gen_iorv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
15643 : {
15644 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15645 : start_sequence ();
15646 : {
15647 : #define FAIL return (end_sequence (), nullptr)
15648 : #define DONE return end_sequence ()
15649 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15650 : ix86_fixup_binary_operands_no_copy (IOR, V2DFmode, operands);
15651 : #undef DONE
15652 : #undef FAIL
15653 : }
15654 : static const uint8_t expand_encoding[] = {
15655 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x6c, 0x01, 0x01,
15656 : 0x01, 0x02
15657 : };
15658 : return complete_seq (expand_encoding, operands);
15659 : }
15660 :
15661 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15662 : rtx
15663 : gen_xorv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15664 : {
15665 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15666 : start_sequence ();
15667 : {
15668 : #define FAIL return (end_sequence (), nullptr)
15669 : #define DONE return end_sequence ()
15670 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15671 : ix86_fixup_binary_operands_no_copy (XOR, V32HFmode, operands);
15672 : #undef DONE
15673 : #undef FAIL
15674 : }
15675 : static const uint8_t expand_encoding[] = {
15676 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x73, 0x01, 0x01,
15677 : 0x01, 0x02
15678 : };
15679 : return complete_seq (expand_encoding, operands);
15680 : }
15681 :
15682 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15683 : rtx
15684 : gen_iorv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15685 : {
15686 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15687 : start_sequence ();
15688 : {
15689 : #define FAIL return (end_sequence (), nullptr)
15690 : #define DONE return end_sequence ()
15691 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15692 : ix86_fixup_binary_operands_no_copy (IOR, V8DFmode, operands);
15693 : #undef DONE
15694 : #undef FAIL
15695 : }
15696 : static const uint8_t expand_encoding[] = {
15697 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x4a,
15698 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15699 : 0x04
15700 : };
15701 : return complete_seq (expand_encoding, operands);
15702 : }
15703 :
15704 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5852 */
15705 : extern rtx_insn *gen_split_1570 (rtx_insn *, rtx *);
15706 : rtx_insn *
15707 : gen_split_1570 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15708 : {
15709 : if (dump_file)
15710 : fprintf (dump_file, "Splitting with gen_split_1570 (sse.md:5852)\n");
15711 : start_sequence ();
15712 : #define FAIL return (end_sequence (), nullptr)
15713 : #define DONE return end_sequence ()
15714 : #line 5860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15715 : operands[1] = force_reg (V4SFmode, operands[1]);
15716 : #undef DONE
15717 : #undef FAIL
15718 : static const uint8_t expand_encoding[] = {
15719 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
15720 : };
15721 : return complete_seq (expand_encoding, operands);
15722 : }
15723 :
15724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5862 */
15725 : rtx
15726 : gen_copysignv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15727 : {
15728 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15729 : start_sequence ();
15730 : {
15731 : #define FAIL _Pragma ("GCC error \"copysignv16sf3 cannot FAIL\"") (void)0
15732 : #define DONE return end_sequence ()
15733 : #line 5873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15734 : {
15735 : operands[3] = ix86_build_signbit_mask (V16SFmode, 1, 0);
15736 :
15737 : operands[4] = gen_reg_rtx (V16SFmode);
15738 : operands[5] = gen_reg_rtx (V16SFmode);
15739 : }
15740 : #undef DONE
15741 : #undef FAIL
15742 : }
15743 : static const uint8_t expand_encoding[] = {
15744 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x74, 0x4c, 0x74,
15745 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
15746 : 0x74, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
15747 : 0x4a, 0x74, 0x01, 0x04, 0x01, 0x05
15748 : };
15749 : return complete_seq (expand_encoding, operands);
15750 : }
15751 :
15752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5880 */
15753 : rtx
15754 : gen_xorsignv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15755 : {
15756 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15757 : start_sequence ();
15758 : {
15759 : #define FAIL _Pragma ("GCC error \"xorsignv16hf3 cannot FAIL\"") (void)0
15760 : #define DONE return end_sequence ()
15761 : #line 5888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15762 : {
15763 : operands[3] = ix86_build_signbit_mask (V16HFmode, 1, 0);
15764 :
15765 : operands[4] = gen_reg_rtx (V16HFmode);
15766 : }
15767 : #undef DONE
15768 : #undef FAIL
15769 : }
15770 : static const uint8_t expand_encoding[] = {
15771 : 0x02, 0x1f, 0x01, 0x04, 0x49, 0x6e, 0x01, 0x03,
15772 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x6e, 0x01,
15773 : 0x04, 0x01, 0x01
15774 : };
15775 : return complete_seq (expand_encoding, operands);
15776 : }
15777 :
15778 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5894 */
15779 : rtx
15780 : gen_signbitv4sf2 (const rtx operand0, const rtx operand1)
15781 : {
15782 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
15783 : start_sequence ();
15784 : {
15785 : #define FAIL _Pragma ("GCC error \"signbitv4sf2 cannot FAIL\"") (void)0
15786 : #define DONE return end_sequence ()
15787 : #line 5901 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15788 : {
15789 : operands[1] = force_reg (V4SFmode, operands[1]);
15790 : operands[2] = GEN_INT (GET_MODE_UNIT_BITSIZE (V4SFmode)-1);
15791 : }
15792 : #undef DONE
15793 : #undef FAIL
15794 : }
15795 : static const uint8_t expand_encoding[] = {
15796 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x51, 0x32, 0x51,
15797 : 0x01, 0x01, 0x00, 0x01, 0x02
15798 : };
15799 : return complete_seq (expand_encoding, operands);
15800 : }
15801 :
15802 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6204 */
15803 : rtx
15804 : gen_fmav16sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15805 : {
15806 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15807 : static const uint8_t expand_encoding[] = {
15808 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x74, 0x01, 0x01,
15809 : 0x01, 0x02, 0x01, 0x03
15810 : };
15811 : return expand_rtx (expand_encoding, operands);
15812 : }
15813 :
15814 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6211 */
15815 : rtx
15816 : gen_fmsdf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15817 : {
15818 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15819 : static const uint8_t expand_encoding[] = {
15820 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2e, 0x01, 0x01,
15821 : 0x01, 0x02, 0x3d, 0x2e, 0x01, 0x03
15822 : };
15823 : return expand_rtx (expand_encoding, operands);
15824 : }
15825 :
15826 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6211 */
15827 : rtx
15828 : gen_fmsv32hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15829 : {
15830 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15831 : static const uint8_t expand_encoding[] = {
15832 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x73, 0x01, 0x01,
15833 : 0x01, 0x02, 0x3d, 0x73, 0x01, 0x03
15834 : };
15835 : return expand_rtx (expand_encoding, operands);
15836 : }
15837 :
15838 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6218 */
15839 : rtx
15840 : gen_fnmav16sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15841 : {
15842 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15843 : static const uint8_t expand_encoding[] = {
15844 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x74, 0x3d, 0x74,
15845 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15846 : };
15847 : return expand_rtx (expand_encoding, operands);
15848 : }
15849 :
15850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6225 */
15851 : rtx
15852 : gen_fnmsdf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15853 : {
15854 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15855 : static const uint8_t expand_encoding[] = {
15856 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2e, 0x3d, 0x2e,
15857 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x2e, 0x01, 0x03
15858 : };
15859 : return expand_rtx (expand_encoding, operands);
15860 : }
15861 :
15862 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6225 */
15863 : rtx
15864 : gen_fnmsv32hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15865 : {
15866 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15867 : static const uint8_t expand_encoding[] = {
15868 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x73, 0x3d, 0x73,
15869 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x73, 0x01, 0x03
15870 : };
15871 : return expand_rtx (expand_encoding, operands);
15872 : }
15873 :
15874 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6245 */
15875 : rtx
15876 : gen_fma4i_fmadd_v16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15877 : {
15878 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15879 : static const uint8_t expand_encoding[] = {
15880 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x74, 0x01, 0x01,
15881 : 0x01, 0x02, 0x01, 0x03
15882 : };
15883 : return expand_rtx (expand_encoding, operands);
15884 : }
15885 :
15886 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6260 */
15887 : rtx
15888 : gen_fma4i_fnmadd_sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15889 : {
15890 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15891 : static const uint8_t expand_encoding[] = {
15892 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2d, 0x3d, 0x2d,
15893 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15894 : };
15895 : return expand_rtx (expand_encoding, operands);
15896 : }
15897 :
15898 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6268 */
15899 : rtx
15900 : gen_fma4i_fnmsub_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15901 : {
15902 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15903 : static const uint8_t expand_encoding[] = {
15904 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6b, 0x3d, 0x6b,
15905 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6b, 0x01, 0x03
15906 : };
15907 : return expand_rtx (expand_encoding, operands);
15908 : }
15909 :
15910 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6277 */
15911 : rtx
15912 : gen_avx512fp16_fmadd_v8hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15913 : {
15914 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15915 : start_sequence ();
15916 : {
15917 : #define FAIL return (end_sequence (), nullptr)
15918 : #define DONE return end_sequence ()
15919 : #line 6284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15920 : {
15921 : emit_insn (gen_fma_fmadd_v8hf_maskz_1 (
15922 : operands[0], operands[1], operands[2], operands[3],
15923 : CONST0_RTX (V8HFmode), operands[4]));
15924 : DONE;
15925 : }
15926 : #undef DONE
15927 : #undef FAIL
15928 : }
15929 : static const uint8_t expand_encoding[] = {
15930 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15931 : 0x03, 0x01, 0x04
15932 : };
15933 : return complete_seq (expand_encoding, operands);
15934 : }
15935 :
15936 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6277 */
15937 : rtx
15938 : gen_avx512f_fmadd_v8df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15939 : {
15940 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15941 : start_sequence ();
15942 : {
15943 : #define FAIL return (end_sequence (), nullptr)
15944 : #define DONE return end_sequence ()
15945 : #line 6284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15946 : {
15947 : emit_insn (gen_fma_fmadd_v8df_maskz_1_round (
15948 : operands[0], operands[1], operands[2], operands[3],
15949 : CONST0_RTX (V8DFmode), operands[4], operands[5]));
15950 : DONE;
15951 : }
15952 : #undef DONE
15953 : #undef FAIL
15954 : }
15955 : static const uint8_t expand_encoding[] = {
15956 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15957 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
15958 : 0x81, 0x33
15959 : };
15960 : return complete_seq (expand_encoding, operands);
15961 : }
15962 :
15963 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6332 */
15964 : rtx
15965 : gen_cond_fmav8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15966 : {
15967 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15968 : start_sequence ();
15969 : {
15970 : #define FAIL _Pragma ("GCC error \"cond_fmav8df cannot FAIL\"") (void)0
15971 : #define DONE return end_sequence ()
15972 : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15973 : {
15974 : rtx tmp = gen_reg_rtx (V8DFmode);
15975 : emit_insn (gen_fmav8df4 (tmp,
15976 : operands[2],
15977 : operands[3],
15978 : operands[4]));
15979 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8DFmode,
15980 : tmp,
15981 : operands[5],
15982 : operands[1]));
15983 : DONE;
15984 : }
15985 : #undef DONE
15986 : #undef FAIL
15987 : }
15988 : static const uint8_t expand_encoding[] = {
15989 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81,
15990 : 0x19, 0x75, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04,
15991 : 0x01, 0x05, 0x01, 0x01
15992 : };
15993 : return complete_seq (expand_encoding, operands);
15994 : }
15995 :
15996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
15997 : rtx
15998 : gen_avx512vl_fmsub_v8sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15999 : {
16000 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16001 : start_sequence ();
16002 : {
16003 : #define FAIL return (end_sequence (), nullptr)
16004 : #define DONE return end_sequence ()
16005 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16006 : {
16007 : emit_insn (gen_fma_fmsub_v8sf_maskz_1 (
16008 : operands[0], operands[1], operands[2], operands[3],
16009 : CONST0_RTX (V8SFmode), operands[4]));
16010 : DONE;
16011 : }
16012 : #undef DONE
16013 : #undef FAIL
16014 : }
16015 : static const uint8_t expand_encoding[] = {
16016 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16017 : 0x03, 0x01, 0x04
16018 : };
16019 : return complete_seq (expand_encoding, operands);
16020 : }
16021 :
16022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
16023 : rtx
16024 : gen_avx512vl_fmsub_v2df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16025 : {
16026 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16027 : start_sequence ();
16028 : {
16029 : #define FAIL return (end_sequence (), nullptr)
16030 : #define DONE return end_sequence ()
16031 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16032 : {
16033 : emit_insn (gen_fma_fmsub_v2df_maskz_1_round (
16034 : operands[0], operands[1], operands[2], operands[3],
16035 : CONST0_RTX (V2DFmode), operands[4], operands[5]));
16036 : DONE;
16037 : }
16038 : #undef DONE
16039 : #undef FAIL
16040 : }
16041 : static const uint8_t expand_encoding[] = {
16042 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16043 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16044 : 0x81, 0x33
16045 : };
16046 : return complete_seq (expand_encoding, operands);
16047 : }
16048 :
16049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16050 : rtx
16051 : gen_avx512bw_fnmadd_v32hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16052 : {
16053 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16054 : start_sequence ();
16055 : {
16056 : #define FAIL return (end_sequence (), nullptr)
16057 : #define DONE return end_sequence ()
16058 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16059 : {
16060 : emit_insn (gen_fma_fnmadd_v32hf_maskz_1 (
16061 : operands[0], operands[1], operands[2], operands[3],
16062 : CONST0_RTX (V32HFmode), operands[4]));
16063 : DONE;
16064 : }
16065 : #undef DONE
16066 : #undef FAIL
16067 : }
16068 : static const uint8_t expand_encoding[] = {
16069 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16070 : 0x03, 0x01, 0x04
16071 : };
16072 : return complete_seq (expand_encoding, operands);
16073 : }
16074 :
16075 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16076 : rtx
16077 : gen_avx512vl_fnmadd_v8sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16078 : {
16079 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16080 : start_sequence ();
16081 : {
16082 : #define FAIL return (end_sequence (), nullptr)
16083 : #define DONE return end_sequence ()
16084 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16085 : {
16086 : emit_insn (gen_fma_fnmadd_v8sf_maskz_1 (
16087 : operands[0], operands[1], operands[2], operands[3],
16088 : CONST0_RTX (V8SFmode), operands[4]));
16089 : DONE;
16090 : }
16091 : #undef DONE
16092 : #undef FAIL
16093 : }
16094 : static const uint8_t expand_encoding[] = {
16095 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16096 : 0x03, 0x01, 0x04
16097 : };
16098 : return complete_seq (expand_encoding, operands);
16099 : }
16100 :
16101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16102 : rtx
16103 : gen_avx512vl_fnmadd_v2df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16104 : {
16105 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16106 : start_sequence ();
16107 : {
16108 : #define FAIL return (end_sequence (), nullptr)
16109 : #define DONE return end_sequence ()
16110 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16111 : {
16112 : emit_insn (gen_fma_fnmadd_v2df_maskz_1_round (
16113 : operands[0], operands[1], operands[2], operands[3],
16114 : CONST0_RTX (V2DFmode), operands[4], operands[5]));
16115 : DONE;
16116 : }
16117 : #undef DONE
16118 : #undef FAIL
16119 : }
16120 : static const uint8_t expand_encoding[] = {
16121 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16122 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16123 : 0x81, 0x33
16124 : };
16125 : return complete_seq (expand_encoding, operands);
16126 : }
16127 :
16128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16129 : rtx
16130 : gen_avx512bw_fnmsub_v32hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16131 : {
16132 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16133 : start_sequence ();
16134 : {
16135 : #define FAIL return (end_sequence (), nullptr)
16136 : #define DONE return end_sequence ()
16137 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16138 : {
16139 : emit_insn (gen_fma_fnmsub_v32hf_maskz_1 (
16140 : operands[0], operands[1], operands[2], operands[3],
16141 : CONST0_RTX (V32HFmode), operands[4]));
16142 : DONE;
16143 : }
16144 : #undef DONE
16145 : #undef FAIL
16146 : }
16147 : static const uint8_t expand_encoding[] = {
16148 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16149 : 0x03, 0x01, 0x04
16150 : };
16151 : return complete_seq (expand_encoding, operands);
16152 : }
16153 :
16154 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16155 : rtx
16156 : gen_avx512vl_fnmsub_v8sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16157 : {
16158 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16159 : start_sequence ();
16160 : {
16161 : #define FAIL return (end_sequence (), nullptr)
16162 : #define DONE return end_sequence ()
16163 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16164 : {
16165 : emit_insn (gen_fma_fnmsub_v8sf_maskz_1_round (
16166 : operands[0], operands[1], operands[2], operands[3],
16167 : CONST0_RTX (V8SFmode), operands[4], operands[5]));
16168 : DONE;
16169 : }
16170 : #undef DONE
16171 : #undef FAIL
16172 : }
16173 : static const uint8_t expand_encoding[] = {
16174 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16175 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16176 : 0x81, 0x33
16177 : };
16178 : return complete_seq (expand_encoding, operands);
16179 : }
16180 :
16181 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6649 */
16182 : rtx
16183 : gen_cond_fnmsv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16184 : {
16185 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16186 : start_sequence ();
16187 : {
16188 : #define FAIL _Pragma ("GCC error \"cond_fnmsv8hf cannot FAIL\"") (void)0
16189 : #define DONE return end_sequence ()
16190 : #line 6661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16191 : {
16192 : rtx tmp = gen_reg_rtx (V8HFmode);
16193 : emit_insn (gen_fnmsv8hf4 (tmp,
16194 : operands[2],
16195 : operands[3],
16196 : operands[4]));
16197 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8HFmode,
16198 : tmp,
16199 : operands[5],
16200 : operands[1]));
16201 : DONE;
16202 : }
16203 : #undef DONE
16204 : #undef FAIL
16205 : }
16206 : static const uint8_t expand_encoding[] = {
16207 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81,
16208 : 0x19, 0x6a, 0x3d, 0x6a, 0x01, 0x02, 0x01, 0x03,
16209 : 0x3d, 0x6a, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16210 : };
16211 : return complete_seq (expand_encoding, operands);
16212 : }
16213 :
16214 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6721 */
16215 : rtx
16216 : gen_vec_fmaddsubv16sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16217 : {
16218 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16219 : static const uint8_t expand_encoding[] = {
16220 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
16221 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x06
16222 : };
16223 : return expand_rtx (expand_encoding, operands);
16224 : }
16225 :
16226 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6730 */
16227 : rtx
16228 : gen_vec_fmsubaddv8hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16229 : {
16230 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16231 : static const uint8_t expand_encoding[] = {
16232 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x03, 0x01, 0x01,
16233 : 0x01, 0x02, 0x3d, 0x6a, 0x01, 0x03, 0x81, 0x06
16234 : };
16235 : return expand_rtx (expand_encoding, operands);
16236 : }
16237 :
16238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6740 */
16239 : rtx
16240 : gen_fmaddsub_v8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16241 : {
16242 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16243 : static const uint8_t expand_encoding[] = {
16244 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01, 0x01,
16245 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x06
16246 : };
16247 : return expand_rtx (expand_encoding, operands);
16248 : }
16249 :
16250 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6749 */
16251 : rtx
16252 : gen_avx512f_fmaddsub_v16sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16253 : {
16254 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16255 : start_sequence ();
16256 : {
16257 : #define FAIL return (end_sequence (), nullptr)
16258 : #define DONE return end_sequence ()
16259 : #line 6756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16260 : {
16261 : emit_insn (gen_fma_fmaddsub_v16sf_maskz_1_round (
16262 : operands[0], operands[1], operands[2], operands[3],
16263 : CONST0_RTX (V16SFmode), operands[4], operands[5]));
16264 : DONE;
16265 : }
16266 : #undef DONE
16267 : #undef FAIL
16268 : }
16269 : static const uint8_t expand_encoding[] = {
16270 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16271 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16272 : 0x81, 0x33
16273 : };
16274 : return complete_seq (expand_encoding, operands);
16275 : }
16276 :
16277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6763 */
16278 : rtx
16279 : gen_avx512bw_fmsubadd_v32hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16280 : {
16281 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16282 : start_sequence ();
16283 : {
16284 : #define FAIL return (end_sequence (), nullptr)
16285 : #define DONE return end_sequence ()
16286 : #line 6770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16287 : {
16288 : emit_insn (gen_fma_fmsubadd_v32hf_maskz_1 (
16289 : operands[0], operands[1], operands[2], operands[3],
16290 : CONST0_RTX (V32HFmode), operands[4]));
16291 : DONE;
16292 : }
16293 : #undef DONE
16294 : #undef FAIL
16295 : }
16296 : static const uint8_t expand_encoding[] = {
16297 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16298 : 0x03, 0x01, 0x04
16299 : };
16300 : return complete_seq (expand_encoding, operands);
16301 : }
16302 :
16303 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6763 */
16304 : rtx
16305 : gen_avx512vl_fmsubadd_v8sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16306 : {
16307 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16308 : start_sequence ();
16309 : {
16310 : #define FAIL return (end_sequence (), nullptr)
16311 : #define DONE return end_sequence ()
16312 : #line 6770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16313 : {
16314 : emit_insn (gen_fma_fmsubadd_v8sf_maskz_1_round (
16315 : operands[0], operands[1], operands[2], operands[3],
16316 : CONST0_RTX (V8SFmode), operands[4], operands[5]));
16317 : DONE;
16318 : }
16319 : #undef DONE
16320 : #undef FAIL
16321 : }
16322 : static const uint8_t expand_encoding[] = {
16323 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16324 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16325 : 0x81, 0x33
16326 : };
16327 : return complete_seq (expand_encoding, operands);
16328 : }
16329 :
16330 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6920 */
16331 : rtx
16332 : gen_fmai_vmfmadd_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16333 : {
16334 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16335 : static const uint8_t expand_encoding[] = {
16336 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
16337 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
16338 : 0x01, 0x27, 0x01
16339 : };
16340 : return expand_rtx (expand_encoding, operands);
16341 : }
16342 :
16343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6931 */
16344 : rtx
16345 : gen_fmai_vmfmsub_v8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16346 : {
16347 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16348 : static const uint8_t expand_encoding[] = {
16349 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
16350 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6a, 0x01,
16351 : 0x03, 0x01, 0x01, 0x27, 0x01
16352 : };
16353 : return expand_rtx (expand_encoding, operands);
16354 : }
16355 :
16356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6943 */
16357 : rtx
16358 : gen_fmai_vmfnmadd_v2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16359 : {
16360 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16361 : static const uint8_t expand_encoding[] = {
16362 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x19,
16363 : 0x6c, 0x3d, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
16364 : 0x03, 0x01, 0x01, 0x27, 0x01
16365 : };
16366 : return expand_rtx (expand_encoding, operands);
16367 : }
16368 :
16369 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7078 */
16370 : rtx
16371 : gen_avx512f_vmfmadd_v8hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16372 : {
16373 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16374 : start_sequence ();
16375 : {
16376 : #define FAIL return (end_sequence (), nullptr)
16377 : #define DONE return end_sequence ()
16378 : #line 7085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16379 : {
16380 : emit_insn (gen_avx512f_vmfmadd_v8hf_maskz_1_round (
16381 : operands[0], operands[1], operands[2], operands[3],
16382 : CONST0_RTX (V8HFmode), operands[4], operands[5]));
16383 : DONE;
16384 : }
16385 : #undef DONE
16386 : #undef FAIL
16387 : }
16388 : static const uint8_t expand_encoding[] = {
16389 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16390 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16391 : 0x81, 0x33
16392 : };
16393 : return complete_seq (expand_encoding, operands);
16394 : }
16395 :
16396 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7315 */
16397 : rtx
16398 : gen_fma4i_vmfmadd_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16399 : {
16400 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16401 : start_sequence ();
16402 : {
16403 : #define FAIL return (end_sequence (), nullptr)
16404 : #define DONE return end_sequence ()
16405 : #line 7325 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16406 : operands[4] = CONST0_RTX (V4SFmode);
16407 : #undef DONE
16408 : #undef FAIL
16409 : }
16410 : static const uint8_t expand_encoding[] = {
16411 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
16412 : 0x19, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
16413 : 0x01, 0x04, 0x27, 0x01
16414 : };
16415 : return complete_seq (expand_encoding, operands);
16416 : }
16417 :
16418 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7465 */
16419 : rtx
16420 : gen_avx512bw_fmaddc_v32hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16421 : {
16422 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16423 : start_sequence ();
16424 : {
16425 : #define FAIL return (end_sequence (), nullptr)
16426 : #define DONE return end_sequence ()
16427 : #line 7472 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16428 : {
16429 : emit_insn (gen_fma_fmaddc_v32hf_maskz_1_round (
16430 : operands[0], operands[1], operands[2], operands[3],
16431 : CONST0_RTX (V32HFmode), operands[4], operands[5]));
16432 : DONE;
16433 : }
16434 : #undef DONE
16435 : #undef FAIL
16436 : }
16437 : static const uint8_t expand_encoding[] = {
16438 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16439 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16440 : 0x81, 0x33
16441 : };
16442 : return complete_seq (expand_encoding, operands);
16443 : }
16444 :
16445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7479 */
16446 : rtx
16447 : gen_avx512vl_fcmaddc_v16hf_mask1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16448 : {
16449 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16450 : start_sequence ();
16451 : {
16452 : #define FAIL return (end_sequence (), nullptr)
16453 : #define DONE return end_sequence ()
16454 : #line 7486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16455 : {
16456 : rtx op0, op1, dest;
16457 : if (0)
16458 : emit_insn (gen_avx512vl_fcmaddc_v16hf_mask (
16459 : operands[0], operands[1], operands[2], operands[3],
16460 : operands[4]));
16461 : else
16462 : {
16463 : emit_insn (gen_avx512vl_fcmaddc_v16hf_mask (operands[0],
16464 : operands[1], operands[2], operands[3], operands[4]));
16465 : }
16466 :
16467 : op0 = lowpart_subreg (V8SFmode,
16468 : force_reg (V16HFmode, operands[0]),
16469 : V16HFmode);
16470 : dest = gen_reg_rtx (V8SFmode);
16471 : if (!MEM_P (operands[1]))
16472 : operands[1] = force_reg (V16HFmode, operands[1]);
16473 : op1 = lowpart_subreg (V8SFmode, operands[1], V16HFmode);
16474 : emit_insn (gen_avx512vl_loadv8sf_mask (dest, op0, op1, operands[4]));
16475 : emit_move_insn (operands[0],
16476 : lowpart_subreg (V16HFmode, dest, V8SFmode));
16477 : DONE;
16478 : }
16479 : #undef DONE
16480 : #undef FAIL
16481 : }
16482 : static const uint8_t expand_encoding[] = {
16483 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16484 : 0x03, 0x01, 0x04
16485 : };
16486 : return complete_seq (expand_encoding, operands);
16487 : }
16488 :
16489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7525 */
16490 : rtx
16491 : gen_cmla_conjv32hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16492 : {
16493 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16494 : static const uint8_t expand_encoding[] = {
16495 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01, 0x01,
16496 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5c
16497 : };
16498 : return expand_rtx (expand_encoding, operands);
16499 : }
16500 :
16501 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7564 */
16502 : extern rtx_insn *gen_split_1577 (rtx_insn *, rtx *);
16503 : rtx_insn *
16504 : gen_split_1577 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16505 : {
16506 : if (dump_file)
16507 : fprintf (dump_file, "Splitting with gen_split_1577 (sse.md:7564)\n");
16508 : start_sequence ();
16509 : static const uint8_t expand_encoding[] = {
16510 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01,
16511 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5c
16512 : };
16513 : return complete_seq (expand_encoding, operands);
16514 : }
16515 :
16516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7612 */
16517 : extern rtx_insn *gen_split_1587 (rtx_insn *, rtx *);
16518 : rtx_insn *
16519 : gen_split_1587 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
16520 : {
16521 : if (dump_file)
16522 : fprintf (dump_file, "Splitting with gen_split_1587 (sse.md:7612)\n");
16523 : start_sequence ();
16524 : #define FAIL return (end_sequence (), nullptr)
16525 : #define DONE return end_sequence ()
16526 : #line 7624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16527 : {
16528 : if (!MEM_P (operands[1]))
16529 : operands[1] = force_reg (V16HFmode, operands[1]);
16530 : if (!MEM_P (operands[3]))
16531 : operands[3] = force_reg (V16HFmode, operands[3]);
16532 : operands[1] = lowpart_subreg (V8SFmode, operands[1], V16HFmode);
16533 : operands[3] = lowpart_subreg (V8SFmode, operands[3], V16HFmode);
16534 : rtx dest = gen_reg_rtx (V8SFmode);
16535 : emit_insn (gen_fma_fmaddc_v8sf_pair (dest, operands[1],
16536 : operands[2], operands[3]));
16537 : emit_move_insn (operands[0],
16538 : lowpart_subreg (V16HFmode, dest, V8SFmode));
16539 : DONE;
16540 : }
16541 : #undef DONE
16542 : #undef FAIL
16543 : static const uint8_t expand_encoding[] = {
16544 : 0x01, 0x27, 0x00
16545 : };
16546 : return complete_seq (expand_encoding, operands);
16547 : }
16548 :
16549 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7754 */
16550 : rtx
16551 : gen_avx512fp16_fcmaddcsh_v8hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16552 : {
16553 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16554 : start_sequence ();
16555 : {
16556 : #define FAIL return (end_sequence (), nullptr)
16557 : #define DONE return end_sequence ()
16558 : #line 7761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16559 : {
16560 : emit_insn (gen_avx512fp16_fma_fcmaddcsh_v8hf_maskz_round (
16561 : operands[0], operands[1], operands[2], operands[3],
16562 : CONST0_RTX (V8HFmode), operands[4], operands[5]));
16563 : DONE;
16564 : }
16565 : #undef DONE
16566 : #undef FAIL
16567 : }
16568 : static const uint8_t expand_encoding[] = {
16569 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16570 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16571 : 0x81, 0x33
16572 : };
16573 : return complete_seq (expand_encoding, operands);
16574 : }
16575 :
16576 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7937 */
16577 : rtx
16578 : gen_vec_unpacks_lo_v16hf (const rtx operand0, const rtx operand1)
16579 : {
16580 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16581 : start_sequence ();
16582 : {
16583 : #define FAIL return (end_sequence (), nullptr)
16584 : #define DONE return end_sequence ()
16585 : #line 7941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16586 : {
16587 : rtx tem = operands[1];
16588 : rtx (*gen) (rtx, rtx);
16589 : if (V16HFmode != V8HFmode)
16590 : {
16591 : tem = gen_reg_rtx (V8HFmode);
16592 : emit_insn (gen_vec_extract_lo_v16hf (tem,
16593 : operands[1]));
16594 : gen = gen_extendv8hfv8sf2;
16595 : }
16596 : else
16597 : gen = gen_avx512fp16_float_extend_phv4sf2;
16598 :
16599 : emit_insn (gen (operands[0], tem));
16600 : DONE;
16601 : }
16602 : #undef DONE
16603 : #undef FAIL
16604 : }
16605 : static const uint8_t expand_encoding[] = {
16606 : 0x02, 0x01, 0x00, 0x01, 0x01
16607 : };
16608 : return complete_seq (expand_encoding, operands);
16609 : }
16610 :
16611 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8017 */
16612 : rtx
16613 : gen_floatunsv8hiv8hf2 (const rtx operand0, const rtx operand1)
16614 : {
16615 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16616 : static const uint8_t expand_encoding[] = {
16617 : 0x1f, 0x01, 0x00, 0x75, 0x6a, 0x01, 0x01
16618 : };
16619 : return expand_rtx (expand_encoding, operands);
16620 : }
16621 :
16622 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8017 */
16623 : rtx
16624 : gen_floatv16siv16hf2 (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, 0x73, 0x6e, 0x01, 0x01
16629 : };
16630 : return expand_rtx (expand_encoding, operands);
16631 : }
16632 :
16633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8033 */
16634 : rtx
16635 : gen_floatunsv4div4hf2 (const rtx operand0, const rtx operand1)
16636 : {
16637 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16638 : start_sequence ();
16639 : {
16640 : #define FAIL return (end_sequence (), nullptr)
16641 : #define DONE return end_sequence ()
16642 : #line 8038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16643 : {
16644 : rtx dest = gen_reg_rtx (V8HFmode);
16645 : emit_insn (gen_avx512fp16_floatunsv4div4hf2 (dest,
16646 : operands[1]));
16647 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, dest, V8HFmode));
16648 : DONE;
16649 : }
16650 : #undef DONE
16651 : #undef FAIL
16652 : }
16653 : static const uint8_t expand_encoding[] = {
16654 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x66, 0x01, 0x01
16655 : };
16656 : return complete_seq (expand_encoding, operands);
16657 : }
16658 :
16659 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8122 */
16660 : rtx
16661 : gen_avx512fp16_floatunsv2div2hf2 (const rtx operand0, const rtx operand1)
16662 : {
16663 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
16664 : start_sequence ();
16665 : {
16666 : #define FAIL return (end_sequence (), nullptr)
16667 : #define DONE return end_sequence ()
16668 : #line 8128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16669 : operands[2] = CONST0_RTX (V6HFmode);
16670 : #undef DONE
16671 : #undef FAIL
16672 : }
16673 : static const uint8_t expand_encoding[] = {
16674 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x75,
16675 : 0x63, 0x01, 0x01, 0x01, 0x02
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_truncv16hfv16hi2 (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, 0x55, 0x01, 0x01
16687 : };
16688 : return expand_rtx (expand_encoding, operands);
16689 : }
16690 :
16691 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8252 */
16692 : rtx
16693 : gen_fixuns_truncv4hfv4si2 (const rtx operand0, const rtx operand1)
16694 : {
16695 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16696 : start_sequence ();
16697 : {
16698 : #define FAIL return (end_sequence (), nullptr)
16699 : #define DONE return end_sequence ()
16700 : #line 8257 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16701 : {
16702 : if (!MEM_P (operands[1]))
16703 : {
16704 : operands[1] = lowpart_subreg (V8HFmode,
16705 : force_reg (V4HFmode, operands[1]),
16706 : V4HFmode);
16707 : emit_insn (gen_avx512fp16_fixuns_truncv4si2 (operands[0],
16708 : operands[1]));
16709 : DONE;
16710 : }
16711 : }
16712 : #undef DONE
16713 : #undef FAIL
16714 : }
16715 : static const uint8_t expand_encoding[] = {
16716 : 0x01, 0x1f, 0x01, 0x00, 0x76, 0x51, 0x01, 0x01
16717 : };
16718 : return complete_seq (expand_encoding, operands);
16719 : }
16720 :
16721 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8483 */
16722 : rtx
16723 : gen_truncv8sfv8hf2 (const rtx operand0, const rtx operand1)
16724 : {
16725 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16726 : static const uint8_t expand_encoding[] = {
16727 : 0x1f, 0x01, 0x00, 0x72, 0x6a, 0x01, 0x01
16728 : };
16729 : return expand_rtx (expand_encoding, operands);
16730 : }
16731 :
16732 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8591 */
16733 : rtx
16734 : gen_avx512fp16_truncv2dfv2hf2 (const rtx operand0, const rtx operand1)
16735 : {
16736 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
16737 : start_sequence ();
16738 : {
16739 : #define FAIL return (end_sequence (), nullptr)
16740 : #define DONE return end_sequence ()
16741 : #line 8597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16742 : operands[2] = CONST0_RTX (V6HFmode);
16743 : #undef DONE
16744 : #undef FAIL
16745 : }
16746 : static const uint8_t expand_encoding[] = {
16747 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x72,
16748 : 0x63, 0x01, 0x01, 0x01, 0x02
16749 : };
16750 : return complete_seq (expand_encoding, operands);
16751 : }
16752 :
16753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9025 */
16754 : rtx
16755 : gen_floatunsv4siv4sf2 (const rtx operand0, const rtx operand1)
16756 : {
16757 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16758 : start_sequence ();
16759 : {
16760 : #define FAIL return (end_sequence (), nullptr)
16761 : #define DONE return end_sequence ()
16762 : #line 9030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16763 : {
16764 : if (V4SFmode != V16SFmode && !TARGET_AVX512VL)
16765 : {
16766 : ix86_expand_vector_convert_uns_vsivsf (operands[0], operands[1]);
16767 : DONE;
16768 : }
16769 : }
16770 : #undef DONE
16771 : #undef FAIL
16772 : }
16773 : static const uint8_t expand_encoding[] = {
16774 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x6b, 0x01, 0x01
16775 : };
16776 : return complete_seq (expand_encoding, operands);
16777 : }
16778 :
16779 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9579 */
16780 : rtx
16781 : gen_floatv2div2sf2 (const rtx operand0, const rtx operand1)
16782 : {
16783 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16784 : start_sequence ();
16785 : {
16786 : #define FAIL return (end_sequence (), nullptr)
16787 : #define DONE return end_sequence ()
16788 : #line 9583 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16789 : {
16790 : rtx op0 = gen_reg_rtx (V4SFmode);
16791 :
16792 : emit_insn (gen_avx512dq_floatv2div2sf2
16793 : (op0, operands[1]));
16794 :
16795 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
16796 : DONE;
16797 : }
16798 : #undef DONE
16799 : #undef FAIL
16800 : }
16801 : static const uint8_t expand_encoding[] = {
16802 : 0x01, 0x1f, 0x01, 0x00, 0x73, 0x67, 0x01, 0x01
16803 : };
16804 : return complete_seq (expand_encoding, operands);
16805 : }
16806 :
16807 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9631 */
16808 : rtx
16809 : gen_vec_packs_float_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
16810 : {
16811 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
16812 : start_sequence ();
16813 : {
16814 : #define FAIL return (end_sequence (), nullptr)
16815 : #define DONE return end_sequence ()
16816 : #line 9637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16817 : {
16818 : rtx r1 = gen_reg_rtx (V8HFmode);
16819 : rtx r2 = gen_reg_rtx (V8HFmode);
16820 : rtx (*gen) (rtx, rtx);
16821 :
16822 : if (V8SImode == V4SImode)
16823 : gen = gen_avx512fp16_floatv4siv4hf2;
16824 : else
16825 : gen = gen_floatv8siv8hf2;
16826 : emit_insn (gen (r1, operands[1]));
16827 : emit_insn (gen (r2, operands[2]));
16828 : if (V8SImode == V4SImode)
16829 : emit_insn (gen_sse_movlhps_v8hf (operands[0], r1, r2));
16830 : else
16831 : emit_insn (gen_avx_vec_concatv16hf (operands[0],
16832 : r1, r2));
16833 : DONE;
16834 : }
16835 : #undef DONE
16836 : #undef FAIL
16837 : }
16838 : static const uint8_t expand_encoding[] = {
16839 : 0x03, 0x01, 0x00, 0x73, 0x6e, 0x01, 0x01, 0x01,
16840 : 0x02
16841 : };
16842 : return complete_seq (expand_encoding, operands);
16843 : }
16844 :
16845 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10160 */
16846 : rtx
16847 : gen_vec_unpack_ufix_trunc_lo_v16sf (const rtx operand0, const rtx operand1)
16848 : {
16849 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16850 : start_sequence ();
16851 : {
16852 : #define FAIL return (end_sequence (), nullptr)
16853 : #define DONE return end_sequence ()
16854 : #line 10165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16855 : {
16856 : rtx tem = operands[1];
16857 : rtx (*gen) (rtx, rtx);
16858 :
16859 : if (V16SFmode != V4SFmode)
16860 : {
16861 : tem = gen_reg_rtx (V8SFmode);
16862 : emit_insn (gen_vec_extract_lo_v16sf (tem,
16863 : operands[1]));
16864 : gen = gen_fixuns_truncv8sfv8di2;
16865 : }
16866 : else
16867 : gen = gen_avx512dq_fixuns_truncv2sfv2di2;
16868 :
16869 : emit_insn (gen (operands[0], tem));
16870 : DONE;
16871 : }
16872 : #undef DONE
16873 : #undef FAIL
16874 : }
16875 : static const uint8_t expand_encoding[] = {
16876 : 0x02, 0x01, 0x00, 0x76, 0x5c, 0x01, 0x01
16877 : };
16878 : return complete_seq (expand_encoding, operands);
16879 : }
16880 :
16881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10183 */
16882 : rtx
16883 : gen_vec_unpack_ufix_trunc_hi_v4sf (const rtx operand0, const rtx operand1)
16884 : {
16885 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16886 : start_sequence ();
16887 : {
16888 : #define FAIL return (end_sequence (), nullptr)
16889 : #define DONE return end_sequence ()
16890 : #line 10188 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16891 : {
16892 : rtx tem;
16893 : rtx (*gen) (rtx, rtx);
16894 :
16895 : if (V4SFmode != V4SFmode)
16896 : {
16897 : tem = gen_reg_rtx (V2SFmode);
16898 : emit_insn (gen_vec_extract_hi_v8sf (tem,
16899 : operands[1]));
16900 : gen = gen_fixuns_truncv2sfv2di2;
16901 : }
16902 : else
16903 : {
16904 : tem = gen_reg_rtx (V4SFmode);
16905 : emit_insn (gen_avx_vpermilv4sf (tem, operands[1], GEN_INT (0x4e)));
16906 : gen = gen_avx512dq_fixuns_truncv2sfv2di2;
16907 : }
16908 :
16909 : emit_insn (gen (operands[0], tem));
16910 : DONE;
16911 : }
16912 : #undef DONE
16913 : #undef FAIL
16914 : }
16915 : static const uint8_t expand_encoding[] = {
16916 : 0x02, 0x01, 0x00, 0x76, 0x52, 0x01, 0x01
16917 : };
16918 : return complete_seq (expand_encoding, operands);
16919 : }
16920 :
16921 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10232 */
16922 : rtx
16923 : gen_vec_unpack_sfix_trunc_hi_v8hf (const rtx operand0, const rtx operand1)
16924 : {
16925 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16926 : start_sequence ();
16927 : {
16928 : #define FAIL return (end_sequence (), nullptr)
16929 : #define DONE return end_sequence ()
16930 : #line 10237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16931 : {
16932 : rtx tem = operands[1];
16933 : rtx (*gen) (rtx, rtx);
16934 : if (V8HFmode != V8HFmode)
16935 : {
16936 : tem = gen_reg_rtx (V4HFmode);
16937 : emit_insn (gen_vec_extract_hi_v16hf (tem,
16938 : operands[1]));
16939 : gen = gen_fix_truncv4hfv4si2;
16940 : }
16941 : else
16942 : {
16943 : tem = gen_reg_rtx (V8HFmode);
16944 : rtvec tmp = rtvec_alloc (8);
16945 : for (int i = 0; i != 8; i++)
16946 : RTVEC_ELT (tmp, i) = GEN_INT ((i + 4) % 8);
16947 :
16948 : rtx selector = gen_rtx_PARALLEL (VOIDmode, tmp);
16949 : emit_move_insn (tem,
16950 : gen_rtx_VEC_SELECT (V8HFmode, operands[1], selector));
16951 : gen = gen_avx512fp16_fix_truncv4si2;
16952 : }
16953 :
16954 : emit_insn (gen (operands[0], tem));
16955 : DONE;
16956 : }
16957 : #undef DONE
16958 : #undef FAIL
16959 : }
16960 : static const uint8_t expand_encoding[] = {
16961 : 0x02, 0x01, 0x00, 0x74, 0x51, 0x01, 0x01
16962 : };
16963 : return complete_seq (expand_encoding, operands);
16964 : }
16965 :
16966 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10663 */
16967 : rtx
16968 : gen_avx512vl_cvtmask2dv4si (const rtx operand0, const rtx operand1)
16969 : {
16970 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1 };
16971 : start_sequence ();
16972 : {
16973 : #define FAIL return (end_sequence (), nullptr)
16974 : #define DONE return end_sequence ()
16975 : #line 10670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16976 : {
16977 : operands[2] = CONSTM1_RTX (V4SImode);
16978 : operands[3] = CONST0_RTX (V4SImode);
16979 : }
16980 : #undef DONE
16981 : #undef FAIL
16982 : }
16983 : static const uint8_t expand_encoding[] = {
16984 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x01,
16985 : 0x02, 0x01, 0x03, 0x01, 0x01
16986 : };
16987 : return complete_seq (expand_encoding, operands);
16988 : }
16989 :
16990 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10701 */
16991 : extern rtx_insn *gen_split_1602 (rtx_insn *, rtx *);
16992 : rtx_insn *
16993 : gen_split_1602 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16994 : {
16995 : if (dump_file)
16996 : fprintf (dump_file, "Splitting with gen_split_1602 (sse.md:10701)\n");
16997 : start_sequence ();
16998 : #define FAIL return (end_sequence (), nullptr)
16999 : #define DONE return end_sequence ()
17000 : #line 10717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17001 : operands[4] = gen_reg_rtx (DImode);
17002 : #undef DONE
17003 : #undef FAIL
17004 : static const uint8_t expand_encoding[] = {
17005 : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x12, 0x01, 0x01,
17006 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x01, 0x03,
17007 : 0x01, 0x02, 0x01, 0x04
17008 : };
17009 : return complete_seq (expand_encoding, operands);
17010 : }
17011 :
17012 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10701 */
17013 : extern rtx_insn *gen_split_1608 (rtx_insn *, rtx *);
17014 : rtx_insn *
17015 : gen_split_1608 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17016 : {
17017 : if (dump_file)
17018 : fprintf (dump_file, "Splitting with gen_split_1608 (sse.md:10701)\n");
17019 : start_sequence ();
17020 : #define FAIL return (end_sequence (), nullptr)
17021 : #define DONE return end_sequence ()
17022 : #line 10717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17023 : operands[4] = gen_reg_rtx (HImode);
17024 : #undef DONE
17025 : #undef FAIL
17026 : static const uint8_t expand_encoding[] = {
17027 : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x10, 0x01, 0x01,
17028 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x01, 0x03,
17029 : 0x01, 0x02, 0x01, 0x04
17030 : };
17031 : return complete_seq (expand_encoding, operands);
17032 : }
17033 :
17034 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10823 */
17035 : rtx
17036 : gen_vec_unpacks_lo_v4sf (const rtx operand0, const rtx operand1)
17037 : {
17038 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17039 : start_sequence ();
17040 : {
17041 : #define FAIL return (end_sequence (), nullptr)
17042 : #define DONE return end_sequence ()
17043 : #line 10830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17044 : {
17045 : if (MEM_P (operands[1]))
17046 : {
17047 : operands[1] = adjust_address_nv (operands[1], V2SFmode, 0);
17048 : emit_insn (gen_sse2_cvtps2pd_1 (operands[0], operands[1]));
17049 : DONE;
17050 : }
17051 : }
17052 : #undef DONE
17053 : #undef FAIL
17054 : }
17055 : static const uint8_t expand_encoding[] = {
17056 : 0x01, 0x1f, 0x01, 0x00, 0x71, 0x6c, 0x81, 0x0a,
17057 : 0x67, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00,
17058 : 0x27, 0x01
17059 : };
17060 : return complete_seq (expand_encoding, operands);
17061 : }
17062 :
17063 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10904 */
17064 : rtx
17065 : gen_vec_unpacks_float_hi_v4si (const rtx operand0, const rtx operand1)
17066 : {
17067 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
17068 : start_sequence ();
17069 : {
17070 : #define FAIL return (end_sequence (), nullptr)
17071 : #define DONE return end_sequence ()
17072 : #line 10916 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17073 : operands[2] = gen_reg_rtx (V4SImode);
17074 : #undef DONE
17075 : #undef FAIL
17076 : }
17077 : static const uint8_t expand_encoding[] = {
17078 : 0x02, 0x1f, 0x01, 0x02, 0x81, 0x0a, 0x51, 0x01,
17079 : 0x01, 0x17, 0x00, 0x04, 0x27, 0x02, 0x27, 0x03,
17080 : 0x27, 0x02, 0x27, 0x03, 0x1f, 0x01, 0x00, 0x73,
17081 : 0x6c, 0x81, 0x0a, 0x4a, 0x01, 0x02, 0x17, 0x00,
17082 : 0x02, 0x27, 0x00, 0x27, 0x01
17083 : };
17084 : return complete_seq (expand_encoding, operands);
17085 : }
17086 :
17087 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11112 */
17088 : rtx
17089 : gen_vec_unpacku_float_lo_v16si (const rtx operand0, const rtx operand1)
17090 : {
17091 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17092 : start_sequence ();
17093 : {
17094 : #define FAIL return (end_sequence (), nullptr)
17095 : #define DONE return end_sequence ()
17096 : #line 11116 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17097 : {
17098 : REAL_VALUE_TYPE TWO32r;
17099 : rtx k, x, tmp[3];
17100 :
17101 : real_ldexp (&TWO32r, &dconst1, 32);
17102 : x = const_double_from_real_value (TWO32r, DFmode);
17103 :
17104 : tmp[0] = force_reg (V8DFmode, CONST0_RTX (V8DFmode));
17105 : tmp[1] = force_reg (V8DFmode, ix86_build_const_vector (V8DFmode, 1, x));
17106 : tmp[2] = gen_reg_rtx (V8DFmode);
17107 : k = gen_reg_rtx (QImode);
17108 :
17109 : emit_insn (gen_avx512f_cvtdq2pd512_2 (tmp[2], operands[1]));
17110 : ix86_expand_mask_vec_cmp (k, LT, tmp[2], tmp[0]);
17111 : emit_insn (gen_addv8df3_mask (tmp[2], tmp[2], tmp[1], tmp[2], k));
17112 : emit_move_insn (operands[0], tmp[2]);
17113 : DONE;
17114 : }
17115 : #undef DONE
17116 : #undef FAIL
17117 : }
17118 : static const uint8_t expand_encoding[] = {
17119 : 0x02, 0x01, 0x00, 0x01, 0x01
17120 : };
17121 : return complete_seq (expand_encoding, operands);
17122 : }
17123 :
17124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11274 */
17125 : rtx
17126 : gen_vec_pack_ufix_trunc_v2df (const rtx operand0, const rtx operand1, const rtx operand2)
17127 : {
17128 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17129 : start_sequence ();
17130 : {
17131 : #define FAIL return (end_sequence (), nullptr)
17132 : #define DONE return end_sequence ()
17133 : #line 11279 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17134 : {
17135 : if (V2DFmode == V8DFmode)
17136 : {
17137 : rtx r1, r2;
17138 :
17139 : r1 = gen_reg_rtx (V8SImode);
17140 : r2 = gen_reg_rtx (V8SImode);
17141 :
17142 : emit_insn (gen_fixuns_truncv8dfv8si2 (r1, operands[1]));
17143 : emit_insn (gen_fixuns_truncv8dfv8si2 (r2, operands[2]));
17144 : emit_insn (gen_avx_vec_concatv16si (operands[0], r1, r2));
17145 : }
17146 : else
17147 : {
17148 : rtx tmp[7];
17149 : tmp[0] = ix86_expand_adjust_ufix_to_sfix_si (operands[1], &tmp[2]);
17150 : tmp[1] = ix86_expand_adjust_ufix_to_sfix_si (operands[2], &tmp[3]);
17151 : tmp[4] = gen_reg_rtx (V4SImode);
17152 : emit_insn (gen_vec_pack_sfix_trunc_v2df (tmp[4], tmp[0], tmp[1]));
17153 : if (V4SImode == V4SImode || TARGET_AVX2)
17154 : {
17155 : tmp[5] = gen_reg_rtx (V4SImode);
17156 : ix86_expand_vec_extract_even_odd (tmp[5], tmp[2], tmp[3], 0);
17157 : }
17158 : else
17159 : {
17160 : tmp[5] = gen_reg_rtx (V8SFmode);
17161 : ix86_expand_vec_extract_even_odd (tmp[5],
17162 : gen_lowpart (V8SFmode, tmp[2]),
17163 : gen_lowpart (V8SFmode, tmp[3]), 0);
17164 : tmp[5] = gen_lowpart (V8SImode, tmp[5]);
17165 : }
17166 : tmp[6] = expand_simple_binop (V4SImode, XOR, tmp[4], tmp[5],
17167 : operands[0], 0, OPTAB_DIRECT);
17168 : if (tmp[6] != operands[0])
17169 : emit_move_insn (operands[0], tmp[6]);
17170 : }
17171 :
17172 : DONE;
17173 : }
17174 : #undef DONE
17175 : #undef FAIL
17176 : }
17177 : static const uint8_t expand_encoding[] = {
17178 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17179 : };
17180 : return complete_seq (expand_encoding, operands);
17181 : }
17182 :
17183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12404 */
17184 : extern rtx_insn *gen_split_1614 (rtx_insn *, rtx *);
17185 : rtx_insn *
17186 : gen_split_1614 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17187 : {
17188 : if (dump_file)
17189 : fprintf (dump_file, "Splitting with gen_split_1614 (sse.md:12404)\n");
17190 : start_sequence ();
17191 : #define FAIL return (end_sequence (), nullptr)
17192 : #define DONE return end_sequence ()
17193 : #line 12421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17194 : {
17195 : if (register_operand (operands[2], V8HImode))
17196 : operands[2] = force_reg (V8HImode, operands[2]);
17197 : operands[2] = gen_lowpart (HImode, operands[2]);
17198 : }
17199 : #undef DONE
17200 : #undef FAIL
17201 : static const uint8_t expand_encoding[] = {
17202 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81,
17203 : 0x0c, 0x50, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
17204 : };
17205 : return complete_seq (expand_encoding, operands);
17206 : }
17207 :
17208 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12445 */
17209 : extern rtx_insn *gen_split_1620 (rtx_insn *, rtx *);
17210 : rtx_insn *
17211 : gen_split_1620 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17212 : {
17213 : if (dump_file)
17214 : fprintf (dump_file, "Splitting with gen_split_1620 (sse.md:12445)\n");
17215 : start_sequence ();
17216 : #define FAIL return (end_sequence (), nullptr)
17217 : #define DONE return end_sequence ()
17218 : #line 12457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17219 : {
17220 : rtx dest = gen_reg_rtx (V32HImode);
17221 : emit_insn (gen_vec_setv32hi_0 (dest,
17222 : CONST0_RTX (V32HImode),
17223 : operands[1]));
17224 : emit_move_insn (operands[0],
17225 : lowpart_subreg (V8DImode, dest, V32HImode));
17226 : DONE;
17227 : }
17228 : #undef DONE
17229 : #undef FAIL
17230 : static const uint8_t expand_encoding[] = {
17231 : 0x01, 0x27, 0x00
17232 : };
17233 : return complete_seq (expand_encoding, operands);
17234 : }
17235 :
17236 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12666 */
17237 : rtx
17238 : gen_vec_setv16qi (const rtx operand0, const rtx operand1, const rtx operand2)
17239 : {
17240 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17241 : start_sequence ();
17242 : {
17243 : #define FAIL _Pragma ("GCC error \"vec_setv16qi cannot FAIL\"") (void)0
17244 : #define DONE return end_sequence ()
17245 : #line 12671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17246 : {
17247 : if (CONST_INT_P (operands[2]))
17248 : ix86_expand_vector_set (false, operands[0], operands[1],
17249 : INTVAL (operands[2]));
17250 : else
17251 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17252 : DONE;
17253 : }
17254 : #undef DONE
17255 : #undef FAIL
17256 : }
17257 : static const uint8_t expand_encoding[] = {
17258 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17259 : };
17260 : return complete_seq (expand_encoding, operands);
17261 : }
17262 :
17263 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12680 */
17264 : rtx
17265 : gen_vec_setv16hf (const rtx operand0, const rtx operand1, const rtx operand2)
17266 : {
17267 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17268 : start_sequence ();
17269 : {
17270 : #define FAIL _Pragma ("GCC error \"vec_setv16hf cannot FAIL\"") (void)0
17271 : #define DONE return end_sequence ()
17272 : #line 12685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17273 : {
17274 : if (CONST_INT_P (operands[2]))
17275 : ix86_expand_vector_set (false, operands[0], operands[1],
17276 : INTVAL (operands[2]));
17277 : else
17278 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17279 : DONE;
17280 : }
17281 : #undef DONE
17282 : #undef FAIL
17283 : }
17284 : static const uint8_t expand_encoding[] = {
17285 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17286 : };
17287 : return complete_seq (expand_encoding, operands);
17288 : }
17289 :
17290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12680 */
17291 : rtx
17292 : gen_vec_setv16si (const rtx operand0, const rtx operand1, const rtx operand2)
17293 : {
17294 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17295 : start_sequence ();
17296 : {
17297 : #define FAIL _Pragma ("GCC error \"vec_setv16si cannot FAIL\"") (void)0
17298 : #define DONE return end_sequence ()
17299 : #line 12685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17300 : {
17301 : if (CONST_INT_P (operands[2]))
17302 : ix86_expand_vector_set (false, operands[0], operands[1],
17303 : INTVAL (operands[2]));
17304 : else
17305 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17306 : DONE;
17307 : }
17308 : #undef DONE
17309 : #undef FAIL
17310 : }
17311 : static const uint8_t expand_encoding[] = {
17312 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17313 : };
17314 : return complete_seq (expand_encoding, operands);
17315 : }
17316 :
17317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12772 */
17318 : rtx
17319 : gen_avx512f_vextracti32x4_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
17320 : {
17321 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
17322 : start_sequence ();
17323 : {
17324 : #define FAIL return (end_sequence (), nullptr)
17325 : #define DONE return end_sequence ()
17326 : #line 12779 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17327 : {
17328 : int mask;
17329 : mask = INTVAL (operands[2]);
17330 : rtx dest = operands[0];
17331 :
17332 : if (MEM_P (operands[0]) && !rtx_equal_p (operands[0], operands[3]))
17333 : dest = gen_reg_rtx (V4SImode);
17334 :
17335 : if (V16SImode == V16SImode || V16SImode == V16SFmode)
17336 : emit_insn (gen_avx512f_vextracti32x4_1_mask (dest,
17337 : operands[1], GEN_INT (mask * 4), GEN_INT (mask * 4 + 1),
17338 : GEN_INT (mask * 4 + 2), GEN_INT (mask * 4 + 3), operands[3],
17339 : operands[4]));
17340 : else
17341 : emit_insn (gen_avx512dq_vextracti64x2_1_mask (dest,
17342 : operands[1], GEN_INT (mask * 2), GEN_INT (mask * 2 + 1), operands[3],
17343 : operands[4]));
17344 : if (dest != operands[0])
17345 : emit_move_insn (operands[0], dest);
17346 : DONE;
17347 : }
17348 : #undef DONE
17349 : #undef FAIL
17350 : }
17351 : static const uint8_t expand_encoding[] = {
17352 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17353 : 0x03, 0x01, 0x04
17354 : };
17355 : return complete_seq (expand_encoding, operands);
17356 : }
17357 :
17358 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13093 */
17359 : rtx
17360 : gen_avx512vl_vextractf128v4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
17361 : {
17362 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
17363 : start_sequence ();
17364 : {
17365 : #define FAIL return (end_sequence (), nullptr)
17366 : #define DONE return end_sequence ()
17367 : #line 13100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17368 : {
17369 : rtx (*insn)(rtx, rtx, rtx, rtx);
17370 : rtx dest = operands[0];
17371 :
17372 : if (MEM_P (dest)
17373 : && (GET_MODE_SIZE (GET_MODE_INNER (V4DFmode)) == 4
17374 : /* For V8S[IF]mode there are maskm insns with =m and 0
17375 : constraints. */
17376 : ? !rtx_equal_p (dest, operands[3])
17377 : /* For V4D[IF]mode, hi insns don't allow memory, and
17378 : lo insns have =m and 0C constraints. */
17379 : : (operands[2] != const0_rtx
17380 : || (!rtx_equal_p (dest, operands[3])
17381 : && !CONST_VECTOR_P (operands[3])))))
17382 : dest = gen_reg_rtx (V2DFmode);
17383 : switch (INTVAL (operands[2]))
17384 : {
17385 : case 0:
17386 : insn = gen_vec_extract_lo_v4df_mask;
17387 : break;
17388 : case 1:
17389 : insn = gen_vec_extract_hi_v4df_mask;
17390 : break;
17391 : default:
17392 : gcc_unreachable ();
17393 : }
17394 :
17395 : emit_insn (insn (dest, operands[1], operands[3], operands[4]));
17396 : if (dest != operands[0])
17397 : emit_move_insn (operands[0], dest);
17398 : DONE;
17399 : }
17400 : #undef DONE
17401 : #undef FAIL
17402 : }
17403 : static const uint8_t expand_encoding[] = {
17404 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17405 : 0x03, 0x01, 0x04
17406 : };
17407 : return complete_seq (expand_encoding, operands);
17408 : }
17409 :
17410 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13309 */
17411 : extern rtx_insn *gen_split_1644 (rtx_insn *, rtx *);
17412 : rtx_insn *
17413 : gen_split_1644 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17414 : {
17415 : if (dump_file)
17416 : fprintf (dump_file, "Splitting with gen_split_1644 (sse.md:13309)\n");
17417 : start_sequence ();
17418 : #define FAIL return (end_sequence (), nullptr)
17419 : #define DONE return end_sequence ()
17420 : #line 13318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17421 : operands[1] = gen_lowpart (V4SFmode, operands[1]);
17422 : #undef DONE
17423 : #undef FAIL
17424 : static const uint8_t expand_encoding[] = {
17425 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17426 : };
17427 : return complete_seq (expand_encoding, operands);
17428 : }
17429 :
17430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13600 */
17431 : extern rtx_insn *gen_split_1654 (rtx_insn *, rtx *);
17432 : rtx_insn *
17433 : gen_split_1654 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17434 : {
17435 : if (dump_file)
17436 : fprintf (dump_file, "Splitting with gen_split_1654 (sse.md:13600)\n");
17437 : start_sequence ();
17438 : #define FAIL return (end_sequence (), nullptr)
17439 : #define DONE return end_sequence ()
17440 : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17441 : operands[1] = gen_lowpart (HFmode, operands[1]);
17442 : #undef DONE
17443 : #undef FAIL
17444 : static const uint8_t expand_encoding[] = {
17445 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17446 : };
17447 : return complete_seq (expand_encoding, operands);
17448 : }
17449 :
17450 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17451 : rtx
17452 : gen_vec_extractv8hihi (const rtx operand0, const rtx operand1, const rtx operand2)
17453 : {
17454 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17455 : start_sequence ();
17456 : {
17457 : #define FAIL _Pragma ("GCC error \"vec_extractv8hihi cannot FAIL\"") (void)0
17458 : #define DONE return end_sequence ()
17459 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17460 : {
17461 : ix86_expand_vector_extract (false, operands[0], operands[1],
17462 : INTVAL (operands[2]));
17463 : DONE;
17464 : }
17465 : #undef DONE
17466 : #undef FAIL
17467 : }
17468 : static const uint8_t expand_encoding[] = {
17469 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17470 : };
17471 : return complete_seq (expand_encoding, operands);
17472 : }
17473 :
17474 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17475 : rtx
17476 : gen_vec_extractv32bfbf (const rtx operand0, const rtx operand1, const rtx operand2)
17477 : {
17478 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17479 : start_sequence ();
17480 : {
17481 : #define FAIL _Pragma ("GCC error \"vec_extractv32bfbf cannot FAIL\"") (void)0
17482 : #define DONE return end_sequence ()
17483 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17484 : {
17485 : ix86_expand_vector_extract (false, operands[0], operands[1],
17486 : INTVAL (operands[2]));
17487 : DONE;
17488 : }
17489 : #undef DONE
17490 : #undef FAIL
17491 : }
17492 : static const uint8_t expand_encoding[] = {
17493 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17494 : };
17495 : return complete_seq (expand_encoding, operands);
17496 : }
17497 :
17498 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17499 : rtx
17500 : gen_vec_extractv2titi (const rtx operand0, const rtx operand1, const rtx operand2)
17501 : {
17502 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17503 : start_sequence ();
17504 : {
17505 : #define FAIL _Pragma ("GCC error \"vec_extractv2titi cannot FAIL\"") (void)0
17506 : #define DONE return end_sequence ()
17507 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17508 : {
17509 : ix86_expand_vector_extract (false, operands[0], operands[1],
17510 : INTVAL (operands[2]));
17511 : DONE;
17512 : }
17513 : #undef DONE
17514 : #undef FAIL
17515 : }
17516 : static const uint8_t expand_encoding[] = {
17517 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17518 : };
17519 : return complete_seq (expand_encoding, operands);
17520 : }
17521 :
17522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13669 */
17523 : rtx
17524 : gen_vec_extractv32hiv16hi (const rtx operand0, const rtx operand1, const rtx operand2)
17525 : {
17526 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17527 : start_sequence ();
17528 : {
17529 : #define FAIL _Pragma ("GCC error \"vec_extractv32hiv16hi cannot FAIL\"") (void)0
17530 : #define DONE return end_sequence ()
17531 : #line 13674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17532 : {
17533 : if (INTVAL (operands[2]))
17534 : emit_insn (gen_vec_extract_hi_v32hi (operands[0], operands[1]));
17535 : else
17536 : emit_insn (gen_vec_extract_lo_v32hi (operands[0], operands[1]));
17537 : DONE;
17538 : }
17539 : #undef DONE
17540 : #undef FAIL
17541 : }
17542 : static const uint8_t expand_encoding[] = {
17543 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17544 : };
17545 : return complete_seq (expand_encoding, operands);
17546 : }
17547 :
17548 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13907 */
17549 : rtx
17550 : gen_vec_interleave_lowv2df (const rtx operand0, const rtx operand1, const rtx operand2)
17551 : {
17552 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17553 : start_sequence ();
17554 : {
17555 : #define FAIL return (end_sequence (), nullptr)
17556 : #define DONE return end_sequence ()
17557 : #line 13916 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17558 : {
17559 : if (!ix86_vec_interleave_v2df_operator_ok (operands, 0))
17560 : operands[1] = force_reg (V2DFmode, operands[1]);
17561 : }
17562 : #undef DONE
17563 : #undef FAIL
17564 : }
17565 : static const uint8_t expand_encoding[] = {
17566 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6c, 0x81,
17567 : 0x0b, 0x70, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
17568 : 0x02, 0x27, 0x00, 0x27, 0x02
17569 : };
17570 : return complete_seq (expand_encoding, operands);
17571 : }
17572 :
17573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14002 */
17574 : rtx
17575 : gen_avx512vl_vternlogv2di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
17576 : {
17577 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
17578 : start_sequence ();
17579 : {
17580 : #define FAIL return (end_sequence (), nullptr)
17581 : #define DONE return end_sequence ()
17582 : #line 14010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17583 : {
17584 : emit_insn (gen_avx512vl_vternlogv2di_maskz_1 (
17585 : operands[0], operands[1], operands[2], operands[3],
17586 : operands[4], CONST0_RTX (V2DImode), operands[5]));
17587 : DONE;
17588 : }
17589 : #undef DONE
17590 : #undef FAIL
17591 : }
17592 : static const uint8_t expand_encoding[] = {
17593 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17594 : 0x03, 0x01, 0x04, 0x01, 0x05
17595 : };
17596 : return complete_seq (expand_encoding, operands);
17597 : }
17598 :
17599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17600 : extern rtx_insn *gen_split_1673 (rtx_insn *, rtx *);
17601 : rtx_insn *
17602 : gen_split_1673 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17603 : {
17604 : if (dump_file)
17605 : fprintf (dump_file, "Splitting with gen_split_1673 (sse.md:14065)\n");
17606 : start_sequence ();
17607 : static const uint8_t expand_encoding[] = {
17608 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17609 : 0x00, 0x1a, 0x73, 0x04, 0x01, 0x00, 0x01, 0x00,
17610 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17611 : };
17612 : return complete_seq (expand_encoding, operands);
17613 : }
17614 :
17615 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17616 : extern rtx_insn *gen_split_1683 (rtx_insn *, rtx *);
17617 : rtx_insn *
17618 : gen_split_1683 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17619 : {
17620 : if (dump_file)
17621 : fprintf (dump_file, "Splitting with gen_split_1683 (sse.md:14065)\n");
17622 : start_sequence ();
17623 : static const uint8_t expand_encoding[] = {
17624 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17625 : 0x00, 0x1a, 0x70, 0x04, 0x01, 0x00, 0x01, 0x00,
17626 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17627 : };
17628 : return complete_seq (expand_encoding, operands);
17629 : }
17630 :
17631 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17632 : extern rtx_insn *gen_split_1693 (rtx_insn *, rtx *);
17633 : rtx_insn *
17634 : gen_split_1693 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17635 : {
17636 : if (dump_file)
17637 : fprintf (dump_file, "Splitting with gen_split_1693 (sse.md:14086)\n");
17638 : start_sequence ();
17639 : #define FAIL return (end_sequence (), nullptr)
17640 : #define DONE return end_sequence ()
17641 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17642 : substitute_vpternlog_operands (operands);
17643 : #undef DONE
17644 : #undef FAIL
17645 : static const uint8_t expand_encoding[] = {
17646 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
17647 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17648 : 0x25
17649 : };
17650 : return complete_seq (expand_encoding, operands);
17651 : }
17652 :
17653 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17654 : extern rtx_insn *gen_split_1703 (rtx_insn *, rtx *);
17655 : rtx_insn *
17656 : gen_split_1703 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17657 : {
17658 : if (dump_file)
17659 : fprintf (dump_file, "Splitting with gen_split_1703 (sse.md:14086)\n");
17660 : start_sequence ();
17661 : #define FAIL return (end_sequence (), nullptr)
17662 : #define DONE return end_sequence ()
17663 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17664 : substitute_vpternlog_operands (operands);
17665 : #undef DONE
17666 : #undef FAIL
17667 : static const uint8_t expand_encoding[] = {
17668 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
17669 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17670 : 0x25
17671 : };
17672 : return complete_seq (expand_encoding, operands);
17673 : }
17674 :
17675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17676 : extern rtx_insn *gen_split_1713 (rtx_insn *, rtx *);
17677 : rtx_insn *
17678 : gen_split_1713 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17679 : {
17680 : if (dump_file)
17681 : fprintf (dump_file, "Splitting with gen_split_1713 (sse.md:14118)\n");
17682 : start_sequence ();
17683 : #define FAIL return (end_sequence (), nullptr)
17684 : #define DONE return end_sequence ()
17685 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17686 : {
17687 : rtx args[3];
17688 : args[0] = NULL_RTX;
17689 : args[1] = NULL_RTX;
17690 : args[2] = NULL_RTX;
17691 : int idx = ix86_ternlog_idx (operands[1], args);
17692 : ix86_expand_ternlog (V16HImode, args[0], args[1], args[2], idx,
17693 : operands[0]);
17694 : DONE;
17695 : }
17696 : #undef DONE
17697 : #undef FAIL
17698 : static const uint8_t expand_encoding[] = {
17699 : 0x01, 0x27, 0x00
17700 : };
17701 : return complete_seq (expand_encoding, operands);
17702 : }
17703 :
17704 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17705 : extern rtx_insn *gen_split_1723 (rtx_insn *, rtx *);
17706 : rtx_insn *
17707 : gen_split_1723 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17708 : {
17709 : if (dump_file)
17710 : fprintf (dump_file, "Splitting with gen_split_1723 (sse.md:14118)\n");
17711 : start_sequence ();
17712 : #define FAIL return (end_sequence (), nullptr)
17713 : #define DONE return end_sequence ()
17714 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17715 : {
17716 : rtx args[3];
17717 : args[0] = NULL_RTX;
17718 : args[1] = NULL_RTX;
17719 : args[2] = NULL_RTX;
17720 : int idx = ix86_ternlog_idx (operands[1], args);
17721 : ix86_expand_ternlog (V8HFmode, args[0], args[1], args[2], idx,
17722 : operands[0]);
17723 : DONE;
17724 : }
17725 : #undef DONE
17726 : #undef FAIL
17727 : static const uint8_t expand_encoding[] = {
17728 : 0x01, 0x27, 0x00
17729 : };
17730 : return complete_seq (expand_encoding, operands);
17731 : }
17732 :
17733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17734 : extern rtx_insn *gen_split_1733 (rtx_insn *, rtx *);
17735 : rtx_insn *
17736 : gen_split_1733 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17737 : {
17738 : if (dump_file)
17739 : fprintf (dump_file, "Splitting with gen_split_1733 (sse.md:14142)\n");
17740 : start_sequence ();
17741 : #define FAIL return (end_sequence (), nullptr)
17742 : #define DONE return end_sequence ()
17743 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17744 : {
17745 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17746 : int reg6 = 0xF0;
17747 : int reg2 = 0xCC;
17748 : int reg1 = 0xAA;
17749 : int reg3 = 0;
17750 : int reg4 = 0;
17751 : int reg_mask, tmp1, tmp2;
17752 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17753 : STRIP_UNARY (operands[4])))
17754 : {
17755 : reg4 = reg1;
17756 : reg3 = reg6;
17757 : operands[6] = operands[3];
17758 : }
17759 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17760 : STRIP_UNARY (operands[4])))
17761 : {
17762 : reg4 = reg2;
17763 : reg3 = reg6;
17764 : operands[6] = operands[3];
17765 : }
17766 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17767 : STRIP_UNARY (operands[3])))
17768 : {
17769 : reg4 = reg6;
17770 : reg3 = reg1;
17771 : operands[6] = operands[4];
17772 : }
17773 : else
17774 : {
17775 : reg4 = reg6;
17776 : reg3 = reg2;
17777 : operands[6] = operands[4];
17778 : }
17779 :
17780 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17781 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17782 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17783 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17784 :
17785 : tmp1 = reg1 & reg2;
17786 : tmp2 = reg3 & reg4;
17787 : reg_mask = tmp1 & tmp2;
17788 : reg_mask &= 0xFF;
17789 :
17790 : operands[1] = STRIP_UNARY (operands[1]);
17791 : operands[2] = STRIP_UNARY (operands[2]);
17792 : operands[6] = STRIP_UNARY (operands[6]);
17793 : if (!register_operand (operands[2], V64QImode))
17794 : operands[2] = force_reg (V64QImode, operands[2]);
17795 : if (!register_operand (operands[6], V64QImode))
17796 : operands[6] = force_reg (V64QImode, operands[6]);
17797 : operands[5] = GEN_INT (reg_mask);
17798 : }
17799 : #undef DONE
17800 : #undef FAIL
17801 : static const uint8_t expand_encoding[] = {
17802 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17803 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17804 : 0x25
17805 : };
17806 : return complete_seq (expand_encoding, operands);
17807 : }
17808 :
17809 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17810 : extern rtx_insn *gen_split_1743 (rtx_insn *, rtx *);
17811 : rtx_insn *
17812 : gen_split_1743 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17813 : {
17814 : if (dump_file)
17815 : fprintf (dump_file, "Splitting with gen_split_1743 (sse.md:14142)\n");
17816 : start_sequence ();
17817 : #define FAIL return (end_sequence (), nullptr)
17818 : #define DONE return end_sequence ()
17819 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17820 : {
17821 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17822 : int reg6 = 0xF0;
17823 : int reg2 = 0xCC;
17824 : int reg1 = 0xAA;
17825 : int reg3 = 0;
17826 : int reg4 = 0;
17827 : int reg_mask, tmp1, tmp2;
17828 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17829 : STRIP_UNARY (operands[4])))
17830 : {
17831 : reg4 = reg1;
17832 : reg3 = reg6;
17833 : operands[6] = operands[3];
17834 : }
17835 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17836 : STRIP_UNARY (operands[4])))
17837 : {
17838 : reg4 = reg2;
17839 : reg3 = reg6;
17840 : operands[6] = operands[3];
17841 : }
17842 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17843 : STRIP_UNARY (operands[3])))
17844 : {
17845 : reg4 = reg6;
17846 : reg3 = reg1;
17847 : operands[6] = operands[4];
17848 : }
17849 : else
17850 : {
17851 : reg4 = reg6;
17852 : reg3 = reg2;
17853 : operands[6] = operands[4];
17854 : }
17855 :
17856 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17857 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17858 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17859 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17860 :
17861 : tmp1 = reg1 | reg2;
17862 : tmp2 = reg3 & reg4;
17863 : reg_mask = tmp1 | tmp2;
17864 : reg_mask &= 0xFF;
17865 :
17866 : operands[1] = STRIP_UNARY (operands[1]);
17867 : operands[2] = STRIP_UNARY (operands[2]);
17868 : operands[6] = STRIP_UNARY (operands[6]);
17869 : if (!register_operand (operands[2], V64QImode))
17870 : operands[2] = force_reg (V64QImode, operands[2]);
17871 : if (!register_operand (operands[6], V64QImode))
17872 : operands[6] = force_reg (V64QImode, operands[6]);
17873 : operands[5] = GEN_INT (reg_mask);
17874 : }
17875 : #undef DONE
17876 : #undef FAIL
17877 : static const uint8_t expand_encoding[] = {
17878 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17879 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17880 : 0x25
17881 : };
17882 : return complete_seq (expand_encoding, operands);
17883 : }
17884 :
17885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17886 : extern rtx_insn *gen_split_1753 (rtx_insn *, rtx *);
17887 : rtx_insn *
17888 : gen_split_1753 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17889 : {
17890 : if (dump_file)
17891 : fprintf (dump_file, "Splitting with gen_split_1753 (sse.md:14142)\n");
17892 : start_sequence ();
17893 : #define FAIL return (end_sequence (), nullptr)
17894 : #define DONE return end_sequence ()
17895 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17896 : {
17897 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17898 : int reg6 = 0xF0;
17899 : int reg2 = 0xCC;
17900 : int reg1 = 0xAA;
17901 : int reg3 = 0;
17902 : int reg4 = 0;
17903 : int reg_mask, tmp1, tmp2;
17904 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17905 : STRIP_UNARY (operands[4])))
17906 : {
17907 : reg4 = reg1;
17908 : reg3 = reg6;
17909 : operands[6] = operands[3];
17910 : }
17911 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17912 : STRIP_UNARY (operands[4])))
17913 : {
17914 : reg4 = reg2;
17915 : reg3 = reg6;
17916 : operands[6] = operands[3];
17917 : }
17918 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17919 : STRIP_UNARY (operands[3])))
17920 : {
17921 : reg4 = reg6;
17922 : reg3 = reg1;
17923 : operands[6] = operands[4];
17924 : }
17925 : else
17926 : {
17927 : reg4 = reg6;
17928 : reg3 = reg2;
17929 : operands[6] = operands[4];
17930 : }
17931 :
17932 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17933 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17934 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17935 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17936 :
17937 : tmp1 = reg1 ^ reg2;
17938 : tmp2 = reg3 & reg4;
17939 : reg_mask = tmp1 ^ tmp2;
17940 : reg_mask &= 0xFF;
17941 :
17942 : operands[1] = STRIP_UNARY (operands[1]);
17943 : operands[2] = STRIP_UNARY (operands[2]);
17944 : operands[6] = STRIP_UNARY (operands[6]);
17945 : if (!register_operand (operands[2], V64QImode))
17946 : operands[2] = force_reg (V64QImode, operands[2]);
17947 : if (!register_operand (operands[6], V64QImode))
17948 : operands[6] = force_reg (V64QImode, operands[6]);
17949 : operands[5] = GEN_INT (reg_mask);
17950 : }
17951 : #undef DONE
17952 : #undef FAIL
17953 : static const uint8_t expand_encoding[] = {
17954 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17955 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17956 : 0x25
17957 : };
17958 : return complete_seq (expand_encoding, operands);
17959 : }
17960 :
17961 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17962 : extern rtx_insn *gen_split_1763 (rtx_insn *, rtx *);
17963 : rtx_insn *
17964 : gen_split_1763 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17965 : {
17966 : if (dump_file)
17967 : fprintf (dump_file, "Splitting with gen_split_1763 (sse.md:14142)\n");
17968 : start_sequence ();
17969 : #define FAIL return (end_sequence (), nullptr)
17970 : #define DONE return end_sequence ()
17971 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17972 : {
17973 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17974 : int reg6 = 0xF0;
17975 : int reg2 = 0xCC;
17976 : int reg1 = 0xAA;
17977 : int reg3 = 0;
17978 : int reg4 = 0;
17979 : int reg_mask, tmp1, tmp2;
17980 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17981 : STRIP_UNARY (operands[4])))
17982 : {
17983 : reg4 = reg1;
17984 : reg3 = reg6;
17985 : operands[6] = operands[3];
17986 : }
17987 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17988 : STRIP_UNARY (operands[4])))
17989 : {
17990 : reg4 = reg2;
17991 : reg3 = reg6;
17992 : operands[6] = operands[3];
17993 : }
17994 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17995 : STRIP_UNARY (operands[3])))
17996 : {
17997 : reg4 = reg6;
17998 : reg3 = reg1;
17999 : operands[6] = operands[4];
18000 : }
18001 : else
18002 : {
18003 : reg4 = reg6;
18004 : reg3 = reg2;
18005 : operands[6] = operands[4];
18006 : }
18007 :
18008 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18009 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18010 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18011 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18012 :
18013 : tmp1 = reg1 & reg2;
18014 : tmp2 = reg3 | reg4;
18015 : reg_mask = tmp1 & tmp2;
18016 : reg_mask &= 0xFF;
18017 :
18018 : operands[1] = STRIP_UNARY (operands[1]);
18019 : operands[2] = STRIP_UNARY (operands[2]);
18020 : operands[6] = STRIP_UNARY (operands[6]);
18021 : if (!register_operand (operands[2], V32QImode))
18022 : operands[2] = force_reg (V32QImode, operands[2]);
18023 : if (!register_operand (operands[6], V32QImode))
18024 : operands[6] = force_reg (V32QImode, operands[6]);
18025 : operands[5] = GEN_INT (reg_mask);
18026 : }
18027 : #undef DONE
18028 : #undef FAIL
18029 : static const uint8_t expand_encoding[] = {
18030 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18031 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18032 : 0x25
18033 : };
18034 : return complete_seq (expand_encoding, operands);
18035 : }
18036 :
18037 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18038 : extern rtx_insn *gen_split_1773 (rtx_insn *, rtx *);
18039 : rtx_insn *
18040 : gen_split_1773 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18041 : {
18042 : if (dump_file)
18043 : fprintf (dump_file, "Splitting with gen_split_1773 (sse.md:14142)\n");
18044 : start_sequence ();
18045 : #define FAIL return (end_sequence (), nullptr)
18046 : #define DONE return end_sequence ()
18047 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18048 : {
18049 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18050 : int reg6 = 0xF0;
18051 : int reg2 = 0xCC;
18052 : int reg1 = 0xAA;
18053 : int reg3 = 0;
18054 : int reg4 = 0;
18055 : int reg_mask, tmp1, tmp2;
18056 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18057 : STRIP_UNARY (operands[4])))
18058 : {
18059 : reg4 = reg1;
18060 : reg3 = reg6;
18061 : operands[6] = operands[3];
18062 : }
18063 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18064 : STRIP_UNARY (operands[4])))
18065 : {
18066 : reg4 = reg2;
18067 : reg3 = reg6;
18068 : operands[6] = operands[3];
18069 : }
18070 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18071 : STRIP_UNARY (operands[3])))
18072 : {
18073 : reg4 = reg6;
18074 : reg3 = reg1;
18075 : operands[6] = operands[4];
18076 : }
18077 : else
18078 : {
18079 : reg4 = reg6;
18080 : reg3 = reg2;
18081 : operands[6] = operands[4];
18082 : }
18083 :
18084 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18085 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18086 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18087 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18088 :
18089 : tmp1 = reg1 | reg2;
18090 : tmp2 = reg3 | reg4;
18091 : reg_mask = tmp1 | tmp2;
18092 : reg_mask &= 0xFF;
18093 :
18094 : operands[1] = STRIP_UNARY (operands[1]);
18095 : operands[2] = STRIP_UNARY (operands[2]);
18096 : operands[6] = STRIP_UNARY (operands[6]);
18097 : if (!register_operand (operands[2], V32QImode))
18098 : operands[2] = force_reg (V32QImode, operands[2]);
18099 : if (!register_operand (operands[6], V32QImode))
18100 : operands[6] = force_reg (V32QImode, operands[6]);
18101 : operands[5] = GEN_INT (reg_mask);
18102 : }
18103 : #undef DONE
18104 : #undef FAIL
18105 : static const uint8_t expand_encoding[] = {
18106 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18107 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18108 : 0x25
18109 : };
18110 : return complete_seq (expand_encoding, operands);
18111 : }
18112 :
18113 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18114 : extern rtx_insn *gen_split_1783 (rtx_insn *, rtx *);
18115 : rtx_insn *
18116 : gen_split_1783 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18117 : {
18118 : if (dump_file)
18119 : fprintf (dump_file, "Splitting with gen_split_1783 (sse.md:14142)\n");
18120 : start_sequence ();
18121 : #define FAIL return (end_sequence (), nullptr)
18122 : #define DONE return end_sequence ()
18123 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18124 : {
18125 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18126 : int reg6 = 0xF0;
18127 : int reg2 = 0xCC;
18128 : int reg1 = 0xAA;
18129 : int reg3 = 0;
18130 : int reg4 = 0;
18131 : int reg_mask, tmp1, tmp2;
18132 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18133 : STRIP_UNARY (operands[4])))
18134 : {
18135 : reg4 = reg1;
18136 : reg3 = reg6;
18137 : operands[6] = operands[3];
18138 : }
18139 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18140 : STRIP_UNARY (operands[4])))
18141 : {
18142 : reg4 = reg2;
18143 : reg3 = reg6;
18144 : operands[6] = operands[3];
18145 : }
18146 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18147 : STRIP_UNARY (operands[3])))
18148 : {
18149 : reg4 = reg6;
18150 : reg3 = reg1;
18151 : operands[6] = operands[4];
18152 : }
18153 : else
18154 : {
18155 : reg4 = reg6;
18156 : reg3 = reg2;
18157 : operands[6] = operands[4];
18158 : }
18159 :
18160 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18161 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18162 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18163 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18164 :
18165 : tmp1 = reg1 ^ reg2;
18166 : tmp2 = reg3 | reg4;
18167 : reg_mask = tmp1 ^ tmp2;
18168 : reg_mask &= 0xFF;
18169 :
18170 : operands[1] = STRIP_UNARY (operands[1]);
18171 : operands[2] = STRIP_UNARY (operands[2]);
18172 : operands[6] = STRIP_UNARY (operands[6]);
18173 : if (!register_operand (operands[2], V32QImode))
18174 : operands[2] = force_reg (V32QImode, operands[2]);
18175 : if (!register_operand (operands[6], V32QImode))
18176 : operands[6] = force_reg (V32QImode, operands[6]);
18177 : operands[5] = GEN_INT (reg_mask);
18178 : }
18179 : #undef DONE
18180 : #undef FAIL
18181 : static const uint8_t expand_encoding[] = {
18182 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18183 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18184 : 0x25
18185 : };
18186 : return complete_seq (expand_encoding, operands);
18187 : }
18188 :
18189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18190 : extern rtx_insn *gen_split_1793 (rtx_insn *, rtx *);
18191 : rtx_insn *
18192 : gen_split_1793 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18193 : {
18194 : if (dump_file)
18195 : fprintf (dump_file, "Splitting with gen_split_1793 (sse.md:14142)\n");
18196 : start_sequence ();
18197 : #define FAIL return (end_sequence (), nullptr)
18198 : #define DONE return end_sequence ()
18199 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18200 : {
18201 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18202 : int reg6 = 0xF0;
18203 : int reg2 = 0xCC;
18204 : int reg1 = 0xAA;
18205 : int reg3 = 0;
18206 : int reg4 = 0;
18207 : int reg_mask, tmp1, tmp2;
18208 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18209 : STRIP_UNARY (operands[4])))
18210 : {
18211 : reg4 = reg1;
18212 : reg3 = reg6;
18213 : operands[6] = operands[3];
18214 : }
18215 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18216 : STRIP_UNARY (operands[4])))
18217 : {
18218 : reg4 = reg2;
18219 : reg3 = reg6;
18220 : operands[6] = operands[3];
18221 : }
18222 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18223 : STRIP_UNARY (operands[3])))
18224 : {
18225 : reg4 = reg6;
18226 : reg3 = reg1;
18227 : operands[6] = operands[4];
18228 : }
18229 : else
18230 : {
18231 : reg4 = reg6;
18232 : reg3 = reg2;
18233 : operands[6] = operands[4];
18234 : }
18235 :
18236 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18237 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18238 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18239 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18240 :
18241 : tmp1 = reg1 & reg2;
18242 : tmp2 = reg3 ^ reg4;
18243 : reg_mask = tmp1 & tmp2;
18244 : reg_mask &= 0xFF;
18245 :
18246 : operands[1] = STRIP_UNARY (operands[1]);
18247 : operands[2] = STRIP_UNARY (operands[2]);
18248 : operands[6] = STRIP_UNARY (operands[6]);
18249 : if (!register_operand (operands[2], V16QImode))
18250 : operands[2] = force_reg (V16QImode, operands[2]);
18251 : if (!register_operand (operands[6], V16QImode))
18252 : operands[6] = force_reg (V16QImode, operands[6]);
18253 : operands[5] = GEN_INT (reg_mask);
18254 : }
18255 : #undef DONE
18256 : #undef FAIL
18257 : static const uint8_t expand_encoding[] = {
18258 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18259 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18260 : 0x25
18261 : };
18262 : return complete_seq (expand_encoding, operands);
18263 : }
18264 :
18265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18266 : extern rtx_insn *gen_split_1803 (rtx_insn *, rtx *);
18267 : rtx_insn *
18268 : gen_split_1803 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18269 : {
18270 : if (dump_file)
18271 : fprintf (dump_file, "Splitting with gen_split_1803 (sse.md:14142)\n");
18272 : start_sequence ();
18273 : #define FAIL return (end_sequence (), nullptr)
18274 : #define DONE return end_sequence ()
18275 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18276 : {
18277 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18278 : int reg6 = 0xF0;
18279 : int reg2 = 0xCC;
18280 : int reg1 = 0xAA;
18281 : int reg3 = 0;
18282 : int reg4 = 0;
18283 : int reg_mask, tmp1, tmp2;
18284 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18285 : STRIP_UNARY (operands[4])))
18286 : {
18287 : reg4 = reg1;
18288 : reg3 = reg6;
18289 : operands[6] = operands[3];
18290 : }
18291 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18292 : STRIP_UNARY (operands[4])))
18293 : {
18294 : reg4 = reg2;
18295 : reg3 = reg6;
18296 : operands[6] = operands[3];
18297 : }
18298 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18299 : STRIP_UNARY (operands[3])))
18300 : {
18301 : reg4 = reg6;
18302 : reg3 = reg1;
18303 : operands[6] = operands[4];
18304 : }
18305 : else
18306 : {
18307 : reg4 = reg6;
18308 : reg3 = reg2;
18309 : operands[6] = operands[4];
18310 : }
18311 :
18312 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18313 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18314 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18315 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18316 :
18317 : tmp1 = reg1 | reg2;
18318 : tmp2 = reg3 ^ reg4;
18319 : reg_mask = tmp1 | tmp2;
18320 : reg_mask &= 0xFF;
18321 :
18322 : operands[1] = STRIP_UNARY (operands[1]);
18323 : operands[2] = STRIP_UNARY (operands[2]);
18324 : operands[6] = STRIP_UNARY (operands[6]);
18325 : if (!register_operand (operands[2], V16QImode))
18326 : operands[2] = force_reg (V16QImode, operands[2]);
18327 : if (!register_operand (operands[6], V16QImode))
18328 : operands[6] = force_reg (V16QImode, operands[6]);
18329 : operands[5] = GEN_INT (reg_mask);
18330 : }
18331 : #undef DONE
18332 : #undef FAIL
18333 : static const uint8_t expand_encoding[] = {
18334 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18335 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18336 : 0x25
18337 : };
18338 : return complete_seq (expand_encoding, operands);
18339 : }
18340 :
18341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18342 : extern rtx_insn *gen_split_1813 (rtx_insn *, rtx *);
18343 : rtx_insn *
18344 : gen_split_1813 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18345 : {
18346 : if (dump_file)
18347 : fprintf (dump_file, "Splitting with gen_split_1813 (sse.md:14142)\n");
18348 : start_sequence ();
18349 : #define FAIL return (end_sequence (), nullptr)
18350 : #define DONE return end_sequence ()
18351 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18352 : {
18353 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18354 : int reg6 = 0xF0;
18355 : int reg2 = 0xCC;
18356 : int reg1 = 0xAA;
18357 : int reg3 = 0;
18358 : int reg4 = 0;
18359 : int reg_mask, tmp1, tmp2;
18360 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18361 : STRIP_UNARY (operands[4])))
18362 : {
18363 : reg4 = reg1;
18364 : reg3 = reg6;
18365 : operands[6] = operands[3];
18366 : }
18367 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18368 : STRIP_UNARY (operands[4])))
18369 : {
18370 : reg4 = reg2;
18371 : reg3 = reg6;
18372 : operands[6] = operands[3];
18373 : }
18374 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18375 : STRIP_UNARY (operands[3])))
18376 : {
18377 : reg4 = reg6;
18378 : reg3 = reg1;
18379 : operands[6] = operands[4];
18380 : }
18381 : else
18382 : {
18383 : reg4 = reg6;
18384 : reg3 = reg2;
18385 : operands[6] = operands[4];
18386 : }
18387 :
18388 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18389 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18390 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18391 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18392 :
18393 : tmp1 = reg1 ^ reg2;
18394 : tmp2 = reg3 ^ reg4;
18395 : reg_mask = tmp1 ^ tmp2;
18396 : reg_mask &= 0xFF;
18397 :
18398 : operands[1] = STRIP_UNARY (operands[1]);
18399 : operands[2] = STRIP_UNARY (operands[2]);
18400 : operands[6] = STRIP_UNARY (operands[6]);
18401 : if (!register_operand (operands[2], V16QImode))
18402 : operands[2] = force_reg (V16QImode, operands[2]);
18403 : if (!register_operand (operands[6], V16QImode))
18404 : operands[6] = force_reg (V16QImode, operands[6]);
18405 : operands[5] = GEN_INT (reg_mask);
18406 : }
18407 : #undef DONE
18408 : #undef FAIL
18409 : static const uint8_t expand_encoding[] = {
18410 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18411 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18412 : 0x25
18413 : };
18414 : return complete_seq (expand_encoding, operands);
18415 : }
18416 :
18417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18418 : extern rtx_insn *gen_split_1823 (rtx_insn *, rtx *);
18419 : rtx_insn *
18420 : gen_split_1823 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18421 : {
18422 : if (dump_file)
18423 : fprintf (dump_file, "Splitting with gen_split_1823 (sse.md:14142)\n");
18424 : start_sequence ();
18425 : #define FAIL return (end_sequence (), nullptr)
18426 : #define DONE return end_sequence ()
18427 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18428 : {
18429 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18430 : int reg6 = 0xF0;
18431 : int reg2 = 0xCC;
18432 : int reg1 = 0xAA;
18433 : int reg3 = 0;
18434 : int reg4 = 0;
18435 : int reg_mask, tmp1, tmp2;
18436 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18437 : STRIP_UNARY (operands[4])))
18438 : {
18439 : reg4 = reg1;
18440 : reg3 = reg6;
18441 : operands[6] = operands[3];
18442 : }
18443 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18444 : STRIP_UNARY (operands[4])))
18445 : {
18446 : reg4 = reg2;
18447 : reg3 = reg6;
18448 : operands[6] = operands[3];
18449 : }
18450 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18451 : STRIP_UNARY (operands[3])))
18452 : {
18453 : reg4 = reg6;
18454 : reg3 = reg1;
18455 : operands[6] = operands[4];
18456 : }
18457 : else
18458 : {
18459 : reg4 = reg6;
18460 : reg3 = reg2;
18461 : operands[6] = operands[4];
18462 : }
18463 :
18464 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18465 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18466 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18467 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18468 :
18469 : tmp1 = reg1 | reg2;
18470 : tmp2 = reg3 & reg4;
18471 : reg_mask = tmp1 & tmp2;
18472 : reg_mask &= 0xFF;
18473 :
18474 : operands[1] = STRIP_UNARY (operands[1]);
18475 : operands[2] = STRIP_UNARY (operands[2]);
18476 : operands[6] = STRIP_UNARY (operands[6]);
18477 : if (!register_operand (operands[2], V32HImode))
18478 : operands[2] = force_reg (V32HImode, operands[2]);
18479 : if (!register_operand (operands[6], V32HImode))
18480 : operands[6] = force_reg (V32HImode, operands[6]);
18481 : operands[5] = GEN_INT (reg_mask);
18482 : }
18483 : #undef DONE
18484 : #undef FAIL
18485 : static const uint8_t expand_encoding[] = {
18486 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18487 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18488 : 0x25
18489 : };
18490 : return complete_seq (expand_encoding, operands);
18491 : }
18492 :
18493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18494 : extern rtx_insn *gen_split_1833 (rtx_insn *, rtx *);
18495 : rtx_insn *
18496 : gen_split_1833 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18497 : {
18498 : if (dump_file)
18499 : fprintf (dump_file, "Splitting with gen_split_1833 (sse.md:14142)\n");
18500 : start_sequence ();
18501 : #define FAIL return (end_sequence (), nullptr)
18502 : #define DONE return end_sequence ()
18503 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18504 : {
18505 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18506 : int reg6 = 0xF0;
18507 : int reg2 = 0xCC;
18508 : int reg1 = 0xAA;
18509 : int reg3 = 0;
18510 : int reg4 = 0;
18511 : int reg_mask, tmp1, tmp2;
18512 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18513 : STRIP_UNARY (operands[4])))
18514 : {
18515 : reg4 = reg1;
18516 : reg3 = reg6;
18517 : operands[6] = operands[3];
18518 : }
18519 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18520 : STRIP_UNARY (operands[4])))
18521 : {
18522 : reg4 = reg2;
18523 : reg3 = reg6;
18524 : operands[6] = operands[3];
18525 : }
18526 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18527 : STRIP_UNARY (operands[3])))
18528 : {
18529 : reg4 = reg6;
18530 : reg3 = reg1;
18531 : operands[6] = operands[4];
18532 : }
18533 : else
18534 : {
18535 : reg4 = reg6;
18536 : reg3 = reg2;
18537 : operands[6] = operands[4];
18538 : }
18539 :
18540 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18541 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18542 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18543 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18544 :
18545 : tmp1 = reg1 ^ reg2;
18546 : tmp2 = reg3 & reg4;
18547 : reg_mask = tmp1 | tmp2;
18548 : reg_mask &= 0xFF;
18549 :
18550 : operands[1] = STRIP_UNARY (operands[1]);
18551 : operands[2] = STRIP_UNARY (operands[2]);
18552 : operands[6] = STRIP_UNARY (operands[6]);
18553 : if (!register_operand (operands[2], V32HImode))
18554 : operands[2] = force_reg (V32HImode, operands[2]);
18555 : if (!register_operand (operands[6], V32HImode))
18556 : operands[6] = force_reg (V32HImode, operands[6]);
18557 : operands[5] = GEN_INT (reg_mask);
18558 : }
18559 : #undef DONE
18560 : #undef FAIL
18561 : static const uint8_t expand_encoding[] = {
18562 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18563 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18564 : 0x25
18565 : };
18566 : return complete_seq (expand_encoding, operands);
18567 : }
18568 :
18569 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18570 : extern rtx_insn *gen_split_1843 (rtx_insn *, rtx *);
18571 : rtx_insn *
18572 : gen_split_1843 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18573 : {
18574 : if (dump_file)
18575 : fprintf (dump_file, "Splitting with gen_split_1843 (sse.md:14142)\n");
18576 : start_sequence ();
18577 : #define FAIL return (end_sequence (), nullptr)
18578 : #define DONE return end_sequence ()
18579 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18580 : {
18581 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18582 : int reg6 = 0xF0;
18583 : int reg2 = 0xCC;
18584 : int reg1 = 0xAA;
18585 : int reg3 = 0;
18586 : int reg4 = 0;
18587 : int reg_mask, tmp1, tmp2;
18588 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18589 : STRIP_UNARY (operands[4])))
18590 : {
18591 : reg4 = reg1;
18592 : reg3 = reg6;
18593 : operands[6] = operands[3];
18594 : }
18595 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18596 : STRIP_UNARY (operands[4])))
18597 : {
18598 : reg4 = reg2;
18599 : reg3 = reg6;
18600 : operands[6] = operands[3];
18601 : }
18602 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18603 : STRIP_UNARY (operands[3])))
18604 : {
18605 : reg4 = reg6;
18606 : reg3 = reg1;
18607 : operands[6] = operands[4];
18608 : }
18609 : else
18610 : {
18611 : reg4 = reg6;
18612 : reg3 = reg2;
18613 : operands[6] = operands[4];
18614 : }
18615 :
18616 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18617 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18618 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18619 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18620 :
18621 : tmp1 = reg1 & reg2;
18622 : tmp2 = reg3 & reg4;
18623 : reg_mask = tmp1 ^ tmp2;
18624 : reg_mask &= 0xFF;
18625 :
18626 : operands[1] = STRIP_UNARY (operands[1]);
18627 : operands[2] = STRIP_UNARY (operands[2]);
18628 : operands[6] = STRIP_UNARY (operands[6]);
18629 : if (!register_operand (operands[2], V16HImode))
18630 : operands[2] = force_reg (V16HImode, operands[2]);
18631 : if (!register_operand (operands[6], V16HImode))
18632 : operands[6] = force_reg (V16HImode, operands[6]);
18633 : operands[5] = GEN_INT (reg_mask);
18634 : }
18635 : #undef DONE
18636 : #undef FAIL
18637 : static const uint8_t expand_encoding[] = {
18638 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18639 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18640 : 0x25
18641 : };
18642 : return complete_seq (expand_encoding, operands);
18643 : }
18644 :
18645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18646 : extern rtx_insn *gen_split_1853 (rtx_insn *, rtx *);
18647 : rtx_insn *
18648 : gen_split_1853 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18649 : {
18650 : if (dump_file)
18651 : fprintf (dump_file, "Splitting with gen_split_1853 (sse.md:14142)\n");
18652 : start_sequence ();
18653 : #define FAIL return (end_sequence (), nullptr)
18654 : #define DONE return end_sequence ()
18655 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18656 : {
18657 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18658 : int reg6 = 0xF0;
18659 : int reg2 = 0xCC;
18660 : int reg1 = 0xAA;
18661 : int reg3 = 0;
18662 : int reg4 = 0;
18663 : int reg_mask, tmp1, tmp2;
18664 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18665 : STRIP_UNARY (operands[4])))
18666 : {
18667 : reg4 = reg1;
18668 : reg3 = reg6;
18669 : operands[6] = operands[3];
18670 : }
18671 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18672 : STRIP_UNARY (operands[4])))
18673 : {
18674 : reg4 = reg2;
18675 : reg3 = reg6;
18676 : operands[6] = operands[3];
18677 : }
18678 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18679 : STRIP_UNARY (operands[3])))
18680 : {
18681 : reg4 = reg6;
18682 : reg3 = reg1;
18683 : operands[6] = operands[4];
18684 : }
18685 : else
18686 : {
18687 : reg4 = reg6;
18688 : reg3 = reg2;
18689 : operands[6] = operands[4];
18690 : }
18691 :
18692 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18693 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18694 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18695 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18696 :
18697 : tmp1 = reg1 | reg2;
18698 : tmp2 = reg3 | reg4;
18699 : reg_mask = tmp1 & tmp2;
18700 : reg_mask &= 0xFF;
18701 :
18702 : operands[1] = STRIP_UNARY (operands[1]);
18703 : operands[2] = STRIP_UNARY (operands[2]);
18704 : operands[6] = STRIP_UNARY (operands[6]);
18705 : if (!register_operand (operands[2], V16HImode))
18706 : operands[2] = force_reg (V16HImode, operands[2]);
18707 : if (!register_operand (operands[6], V16HImode))
18708 : operands[6] = force_reg (V16HImode, operands[6]);
18709 : operands[5] = GEN_INT (reg_mask);
18710 : }
18711 : #undef DONE
18712 : #undef FAIL
18713 : static const uint8_t expand_encoding[] = {
18714 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18715 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18716 : 0x25
18717 : };
18718 : return complete_seq (expand_encoding, operands);
18719 : }
18720 :
18721 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18722 : extern rtx_insn *gen_split_1863 (rtx_insn *, rtx *);
18723 : rtx_insn *
18724 : gen_split_1863 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18725 : {
18726 : if (dump_file)
18727 : fprintf (dump_file, "Splitting with gen_split_1863 (sse.md:14142)\n");
18728 : start_sequence ();
18729 : #define FAIL return (end_sequence (), nullptr)
18730 : #define DONE return end_sequence ()
18731 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18732 : {
18733 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18734 : int reg6 = 0xF0;
18735 : int reg2 = 0xCC;
18736 : int reg1 = 0xAA;
18737 : int reg3 = 0;
18738 : int reg4 = 0;
18739 : int reg_mask, tmp1, tmp2;
18740 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18741 : STRIP_UNARY (operands[4])))
18742 : {
18743 : reg4 = reg1;
18744 : reg3 = reg6;
18745 : operands[6] = operands[3];
18746 : }
18747 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18748 : STRIP_UNARY (operands[4])))
18749 : {
18750 : reg4 = reg2;
18751 : reg3 = reg6;
18752 : operands[6] = operands[3];
18753 : }
18754 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18755 : STRIP_UNARY (operands[3])))
18756 : {
18757 : reg4 = reg6;
18758 : reg3 = reg1;
18759 : operands[6] = operands[4];
18760 : }
18761 : else
18762 : {
18763 : reg4 = reg6;
18764 : reg3 = reg2;
18765 : operands[6] = operands[4];
18766 : }
18767 :
18768 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18769 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18770 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18771 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18772 :
18773 : tmp1 = reg1 ^ reg2;
18774 : tmp2 = reg3 | reg4;
18775 : reg_mask = tmp1 | tmp2;
18776 : reg_mask &= 0xFF;
18777 :
18778 : operands[1] = STRIP_UNARY (operands[1]);
18779 : operands[2] = STRIP_UNARY (operands[2]);
18780 : operands[6] = STRIP_UNARY (operands[6]);
18781 : if (!register_operand (operands[2], V16HImode))
18782 : operands[2] = force_reg (V16HImode, operands[2]);
18783 : if (!register_operand (operands[6], V16HImode))
18784 : operands[6] = force_reg (V16HImode, operands[6]);
18785 : operands[5] = GEN_INT (reg_mask);
18786 : }
18787 : #undef DONE
18788 : #undef FAIL
18789 : static const uint8_t expand_encoding[] = {
18790 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18791 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18792 : 0x25
18793 : };
18794 : return complete_seq (expand_encoding, operands);
18795 : }
18796 :
18797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18798 : extern rtx_insn *gen_split_1873 (rtx_insn *, rtx *);
18799 : rtx_insn *
18800 : gen_split_1873 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18801 : {
18802 : if (dump_file)
18803 : fprintf (dump_file, "Splitting with gen_split_1873 (sse.md:14142)\n");
18804 : start_sequence ();
18805 : #define FAIL return (end_sequence (), nullptr)
18806 : #define DONE return end_sequence ()
18807 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18808 : {
18809 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18810 : int reg6 = 0xF0;
18811 : int reg2 = 0xCC;
18812 : int reg1 = 0xAA;
18813 : int reg3 = 0;
18814 : int reg4 = 0;
18815 : int reg_mask, tmp1, tmp2;
18816 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18817 : STRIP_UNARY (operands[4])))
18818 : {
18819 : reg4 = reg1;
18820 : reg3 = reg6;
18821 : operands[6] = operands[3];
18822 : }
18823 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18824 : STRIP_UNARY (operands[4])))
18825 : {
18826 : reg4 = reg2;
18827 : reg3 = reg6;
18828 : operands[6] = operands[3];
18829 : }
18830 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18831 : STRIP_UNARY (operands[3])))
18832 : {
18833 : reg4 = reg6;
18834 : reg3 = reg1;
18835 : operands[6] = operands[4];
18836 : }
18837 : else
18838 : {
18839 : reg4 = reg6;
18840 : reg3 = reg2;
18841 : operands[6] = operands[4];
18842 : }
18843 :
18844 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18845 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18846 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18847 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18848 :
18849 : tmp1 = reg1 & reg2;
18850 : tmp2 = reg3 | reg4;
18851 : reg_mask = tmp1 ^ tmp2;
18852 : reg_mask &= 0xFF;
18853 :
18854 : operands[1] = STRIP_UNARY (operands[1]);
18855 : operands[2] = STRIP_UNARY (operands[2]);
18856 : operands[6] = STRIP_UNARY (operands[6]);
18857 : if (!register_operand (operands[2], V8HImode))
18858 : operands[2] = force_reg (V8HImode, operands[2]);
18859 : if (!register_operand (operands[6], V8HImode))
18860 : operands[6] = force_reg (V8HImode, operands[6]);
18861 : operands[5] = GEN_INT (reg_mask);
18862 : }
18863 : #undef DONE
18864 : #undef FAIL
18865 : static const uint8_t expand_encoding[] = {
18866 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18867 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18868 : 0x25
18869 : };
18870 : return complete_seq (expand_encoding, operands);
18871 : }
18872 :
18873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18874 : extern rtx_insn *gen_split_1883 (rtx_insn *, rtx *);
18875 : rtx_insn *
18876 : gen_split_1883 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18877 : {
18878 : if (dump_file)
18879 : fprintf (dump_file, "Splitting with gen_split_1883 (sse.md:14142)\n");
18880 : start_sequence ();
18881 : #define FAIL return (end_sequence (), nullptr)
18882 : #define DONE return end_sequence ()
18883 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18884 : {
18885 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18886 : int reg6 = 0xF0;
18887 : int reg2 = 0xCC;
18888 : int reg1 = 0xAA;
18889 : int reg3 = 0;
18890 : int reg4 = 0;
18891 : int reg_mask, tmp1, tmp2;
18892 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18893 : STRIP_UNARY (operands[4])))
18894 : {
18895 : reg4 = reg1;
18896 : reg3 = reg6;
18897 : operands[6] = operands[3];
18898 : }
18899 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18900 : STRIP_UNARY (operands[4])))
18901 : {
18902 : reg4 = reg2;
18903 : reg3 = reg6;
18904 : operands[6] = operands[3];
18905 : }
18906 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18907 : STRIP_UNARY (operands[3])))
18908 : {
18909 : reg4 = reg6;
18910 : reg3 = reg1;
18911 : operands[6] = operands[4];
18912 : }
18913 : else
18914 : {
18915 : reg4 = reg6;
18916 : reg3 = reg2;
18917 : operands[6] = operands[4];
18918 : }
18919 :
18920 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18921 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18922 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18923 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18924 :
18925 : tmp1 = reg1 | reg2;
18926 : tmp2 = reg3 ^ reg4;
18927 : reg_mask = tmp1 & tmp2;
18928 : reg_mask &= 0xFF;
18929 :
18930 : operands[1] = STRIP_UNARY (operands[1]);
18931 : operands[2] = STRIP_UNARY (operands[2]);
18932 : operands[6] = STRIP_UNARY (operands[6]);
18933 : if (!register_operand (operands[2], V8HImode))
18934 : operands[2] = force_reg (V8HImode, operands[2]);
18935 : if (!register_operand (operands[6], V8HImode))
18936 : operands[6] = force_reg (V8HImode, operands[6]);
18937 : operands[5] = GEN_INT (reg_mask);
18938 : }
18939 : #undef DONE
18940 : #undef FAIL
18941 : static const uint8_t expand_encoding[] = {
18942 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18943 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18944 : 0x25
18945 : };
18946 : return complete_seq (expand_encoding, operands);
18947 : }
18948 :
18949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18950 : extern rtx_insn *gen_split_1893 (rtx_insn *, rtx *);
18951 : rtx_insn *
18952 : gen_split_1893 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18953 : {
18954 : if (dump_file)
18955 : fprintf (dump_file, "Splitting with gen_split_1893 (sse.md:14142)\n");
18956 : start_sequence ();
18957 : #define FAIL return (end_sequence (), nullptr)
18958 : #define DONE return end_sequence ()
18959 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18960 : {
18961 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18962 : int reg6 = 0xF0;
18963 : int reg2 = 0xCC;
18964 : int reg1 = 0xAA;
18965 : int reg3 = 0;
18966 : int reg4 = 0;
18967 : int reg_mask, tmp1, tmp2;
18968 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18969 : STRIP_UNARY (operands[4])))
18970 : {
18971 : reg4 = reg1;
18972 : reg3 = reg6;
18973 : operands[6] = operands[3];
18974 : }
18975 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18976 : STRIP_UNARY (operands[4])))
18977 : {
18978 : reg4 = reg2;
18979 : reg3 = reg6;
18980 : operands[6] = operands[3];
18981 : }
18982 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18983 : STRIP_UNARY (operands[3])))
18984 : {
18985 : reg4 = reg6;
18986 : reg3 = reg1;
18987 : operands[6] = operands[4];
18988 : }
18989 : else
18990 : {
18991 : reg4 = reg6;
18992 : reg3 = reg2;
18993 : operands[6] = operands[4];
18994 : }
18995 :
18996 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18997 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18998 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18999 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19000 :
19001 : tmp1 = reg1 ^ reg2;
19002 : tmp2 = reg3 ^ reg4;
19003 : reg_mask = tmp1 | tmp2;
19004 : reg_mask &= 0xFF;
19005 :
19006 : operands[1] = STRIP_UNARY (operands[1]);
19007 : operands[2] = STRIP_UNARY (operands[2]);
19008 : operands[6] = STRIP_UNARY (operands[6]);
19009 : if (!register_operand (operands[2], V8HImode))
19010 : operands[2] = force_reg (V8HImode, operands[2]);
19011 : if (!register_operand (operands[6], V8HImode))
19012 : operands[6] = force_reg (V8HImode, operands[6]);
19013 : operands[5] = GEN_INT (reg_mask);
19014 : }
19015 : #undef DONE
19016 : #undef FAIL
19017 : static const uint8_t expand_encoding[] = {
19018 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
19019 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19020 : 0x25
19021 : };
19022 : return complete_seq (expand_encoding, operands);
19023 : }
19024 :
19025 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19026 : extern rtx_insn *gen_split_1903 (rtx_insn *, rtx *);
19027 : rtx_insn *
19028 : gen_split_1903 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19029 : {
19030 : if (dump_file)
19031 : fprintf (dump_file, "Splitting with gen_split_1903 (sse.md:14142)\n");
19032 : start_sequence ();
19033 : #define FAIL return (end_sequence (), nullptr)
19034 : #define DONE return end_sequence ()
19035 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19036 : {
19037 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19038 : int reg6 = 0xF0;
19039 : int reg2 = 0xCC;
19040 : int reg1 = 0xAA;
19041 : int reg3 = 0;
19042 : int reg4 = 0;
19043 : int reg_mask, tmp1, tmp2;
19044 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19045 : STRIP_UNARY (operands[4])))
19046 : {
19047 : reg4 = reg1;
19048 : reg3 = reg6;
19049 : operands[6] = operands[3];
19050 : }
19051 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19052 : STRIP_UNARY (operands[4])))
19053 : {
19054 : reg4 = reg2;
19055 : reg3 = reg6;
19056 : operands[6] = operands[3];
19057 : }
19058 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19059 : STRIP_UNARY (operands[3])))
19060 : {
19061 : reg4 = reg6;
19062 : reg3 = reg1;
19063 : operands[6] = operands[4];
19064 : }
19065 : else
19066 : {
19067 : reg4 = reg6;
19068 : reg3 = reg2;
19069 : operands[6] = operands[4];
19070 : }
19071 :
19072 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19073 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19074 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19075 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19076 :
19077 : tmp1 = reg1 & reg2;
19078 : tmp2 = reg3 ^ reg4;
19079 : reg_mask = tmp1 ^ tmp2;
19080 : reg_mask &= 0xFF;
19081 :
19082 : operands[1] = STRIP_UNARY (operands[1]);
19083 : operands[2] = STRIP_UNARY (operands[2]);
19084 : operands[6] = STRIP_UNARY (operands[6]);
19085 : if (!register_operand (operands[2], V16SImode))
19086 : operands[2] = force_reg (V16SImode, operands[2]);
19087 : if (!register_operand (operands[6], V16SImode))
19088 : operands[6] = force_reg (V16SImode, operands[6]);
19089 : operands[5] = GEN_INT (reg_mask);
19090 : }
19091 : #undef DONE
19092 : #undef FAIL
19093 : static const uint8_t expand_encoding[] = {
19094 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19095 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19096 : 0x25
19097 : };
19098 : return complete_seq (expand_encoding, operands);
19099 : }
19100 :
19101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19102 : extern rtx_insn *gen_split_1913 (rtx_insn *, rtx *);
19103 : rtx_insn *
19104 : gen_split_1913 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19105 : {
19106 : if (dump_file)
19107 : fprintf (dump_file, "Splitting with gen_split_1913 (sse.md:14142)\n");
19108 : start_sequence ();
19109 : #define FAIL return (end_sequence (), nullptr)
19110 : #define DONE return end_sequence ()
19111 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19112 : {
19113 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19114 : int reg6 = 0xF0;
19115 : int reg2 = 0xCC;
19116 : int reg1 = 0xAA;
19117 : int reg3 = 0;
19118 : int reg4 = 0;
19119 : int reg_mask, tmp1, tmp2;
19120 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19121 : STRIP_UNARY (operands[4])))
19122 : {
19123 : reg4 = reg1;
19124 : reg3 = reg6;
19125 : operands[6] = operands[3];
19126 : }
19127 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19128 : STRIP_UNARY (operands[4])))
19129 : {
19130 : reg4 = reg2;
19131 : reg3 = reg6;
19132 : operands[6] = operands[3];
19133 : }
19134 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19135 : STRIP_UNARY (operands[3])))
19136 : {
19137 : reg4 = reg6;
19138 : reg3 = reg1;
19139 : operands[6] = operands[4];
19140 : }
19141 : else
19142 : {
19143 : reg4 = reg6;
19144 : reg3 = reg2;
19145 : operands[6] = operands[4];
19146 : }
19147 :
19148 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19149 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19150 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19151 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19152 :
19153 : tmp1 = reg1 ^ reg2;
19154 : tmp2 = reg3 & reg4;
19155 : reg_mask = tmp1 & tmp2;
19156 : reg_mask &= 0xFF;
19157 :
19158 : operands[1] = STRIP_UNARY (operands[1]);
19159 : operands[2] = STRIP_UNARY (operands[2]);
19160 : operands[6] = STRIP_UNARY (operands[6]);
19161 : if (!register_operand (operands[2], V16SImode))
19162 : operands[2] = force_reg (V16SImode, operands[2]);
19163 : if (!register_operand (operands[6], V16SImode))
19164 : operands[6] = force_reg (V16SImode, operands[6]);
19165 : operands[5] = GEN_INT (reg_mask);
19166 : }
19167 : #undef DONE
19168 : #undef FAIL
19169 : static const uint8_t expand_encoding[] = {
19170 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19171 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19172 : 0x25
19173 : };
19174 : return complete_seq (expand_encoding, operands);
19175 : }
19176 :
19177 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19178 : extern rtx_insn *gen_split_1923 (rtx_insn *, rtx *);
19179 : rtx_insn *
19180 : gen_split_1923 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19181 : {
19182 : if (dump_file)
19183 : fprintf (dump_file, "Splitting with gen_split_1923 (sse.md:14142)\n");
19184 : start_sequence ();
19185 : #define FAIL return (end_sequence (), nullptr)
19186 : #define DONE return end_sequence ()
19187 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19188 : {
19189 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19190 : int reg6 = 0xF0;
19191 : int reg2 = 0xCC;
19192 : int reg1 = 0xAA;
19193 : int reg3 = 0;
19194 : int reg4 = 0;
19195 : int reg_mask, tmp1, tmp2;
19196 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19197 : STRIP_UNARY (operands[4])))
19198 : {
19199 : reg4 = reg1;
19200 : reg3 = reg6;
19201 : operands[6] = operands[3];
19202 : }
19203 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19204 : STRIP_UNARY (operands[4])))
19205 : {
19206 : reg4 = reg2;
19207 : reg3 = reg6;
19208 : operands[6] = operands[3];
19209 : }
19210 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19211 : STRIP_UNARY (operands[3])))
19212 : {
19213 : reg4 = reg6;
19214 : reg3 = reg1;
19215 : operands[6] = operands[4];
19216 : }
19217 : else
19218 : {
19219 : reg4 = reg6;
19220 : reg3 = reg2;
19221 : operands[6] = operands[4];
19222 : }
19223 :
19224 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19225 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19226 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19227 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19228 :
19229 : tmp1 = reg1 & reg2;
19230 : tmp2 = reg3 & reg4;
19231 : reg_mask = tmp1 | tmp2;
19232 : reg_mask &= 0xFF;
19233 :
19234 : operands[1] = STRIP_UNARY (operands[1]);
19235 : operands[2] = STRIP_UNARY (operands[2]);
19236 : operands[6] = STRIP_UNARY (operands[6]);
19237 : if (!register_operand (operands[2], V8SImode))
19238 : operands[2] = force_reg (V8SImode, operands[2]);
19239 : if (!register_operand (operands[6], V8SImode))
19240 : operands[6] = force_reg (V8SImode, operands[6]);
19241 : operands[5] = GEN_INT (reg_mask);
19242 : }
19243 : #undef DONE
19244 : #undef FAIL
19245 : static const uint8_t expand_encoding[] = {
19246 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19247 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19248 : 0x25
19249 : };
19250 : return complete_seq (expand_encoding, operands);
19251 : }
19252 :
19253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19254 : extern rtx_insn *gen_split_1933 (rtx_insn *, rtx *);
19255 : rtx_insn *
19256 : gen_split_1933 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19257 : {
19258 : if (dump_file)
19259 : fprintf (dump_file, "Splitting with gen_split_1933 (sse.md:14142)\n");
19260 : start_sequence ();
19261 : #define FAIL return (end_sequence (), nullptr)
19262 : #define DONE return end_sequence ()
19263 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19264 : {
19265 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19266 : int reg6 = 0xF0;
19267 : int reg2 = 0xCC;
19268 : int reg1 = 0xAA;
19269 : int reg3 = 0;
19270 : int reg4 = 0;
19271 : int reg_mask, tmp1, tmp2;
19272 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19273 : STRIP_UNARY (operands[4])))
19274 : {
19275 : reg4 = reg1;
19276 : reg3 = reg6;
19277 : operands[6] = operands[3];
19278 : }
19279 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19280 : STRIP_UNARY (operands[4])))
19281 : {
19282 : reg4 = reg2;
19283 : reg3 = reg6;
19284 : operands[6] = operands[3];
19285 : }
19286 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19287 : STRIP_UNARY (operands[3])))
19288 : {
19289 : reg4 = reg6;
19290 : reg3 = reg1;
19291 : operands[6] = operands[4];
19292 : }
19293 : else
19294 : {
19295 : reg4 = reg6;
19296 : reg3 = reg2;
19297 : operands[6] = operands[4];
19298 : }
19299 :
19300 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19301 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19302 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19303 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19304 :
19305 : tmp1 = reg1 | reg2;
19306 : tmp2 = reg3 & reg4;
19307 : reg_mask = tmp1 ^ tmp2;
19308 : reg_mask &= 0xFF;
19309 :
19310 : operands[1] = STRIP_UNARY (operands[1]);
19311 : operands[2] = STRIP_UNARY (operands[2]);
19312 : operands[6] = STRIP_UNARY (operands[6]);
19313 : if (!register_operand (operands[2], V8SImode))
19314 : operands[2] = force_reg (V8SImode, operands[2]);
19315 : if (!register_operand (operands[6], V8SImode))
19316 : operands[6] = force_reg (V8SImode, operands[6]);
19317 : operands[5] = GEN_INT (reg_mask);
19318 : }
19319 : #undef DONE
19320 : #undef FAIL
19321 : static const uint8_t expand_encoding[] = {
19322 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19323 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19324 : 0x25
19325 : };
19326 : return complete_seq (expand_encoding, operands);
19327 : }
19328 :
19329 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19330 : extern rtx_insn *gen_split_1943 (rtx_insn *, rtx *);
19331 : rtx_insn *
19332 : gen_split_1943 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19333 : {
19334 : if (dump_file)
19335 : fprintf (dump_file, "Splitting with gen_split_1943 (sse.md:14142)\n");
19336 : start_sequence ();
19337 : #define FAIL return (end_sequence (), nullptr)
19338 : #define DONE return end_sequence ()
19339 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19340 : {
19341 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19342 : int reg6 = 0xF0;
19343 : int reg2 = 0xCC;
19344 : int reg1 = 0xAA;
19345 : int reg3 = 0;
19346 : int reg4 = 0;
19347 : int reg_mask, tmp1, tmp2;
19348 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19349 : STRIP_UNARY (operands[4])))
19350 : {
19351 : reg4 = reg1;
19352 : reg3 = reg6;
19353 : operands[6] = operands[3];
19354 : }
19355 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19356 : STRIP_UNARY (operands[4])))
19357 : {
19358 : reg4 = reg2;
19359 : reg3 = reg6;
19360 : operands[6] = operands[3];
19361 : }
19362 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19363 : STRIP_UNARY (operands[3])))
19364 : {
19365 : reg4 = reg6;
19366 : reg3 = reg1;
19367 : operands[6] = operands[4];
19368 : }
19369 : else
19370 : {
19371 : reg4 = reg6;
19372 : reg3 = reg2;
19373 : operands[6] = operands[4];
19374 : }
19375 :
19376 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19377 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19378 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19379 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19380 :
19381 : tmp1 = reg1 ^ reg2;
19382 : tmp2 = reg3 | reg4;
19383 : reg_mask = tmp1 & tmp2;
19384 : reg_mask &= 0xFF;
19385 :
19386 : operands[1] = STRIP_UNARY (operands[1]);
19387 : operands[2] = STRIP_UNARY (operands[2]);
19388 : operands[6] = STRIP_UNARY (operands[6]);
19389 : if (!register_operand (operands[2], V8SImode))
19390 : operands[2] = force_reg (V8SImode, operands[2]);
19391 : if (!register_operand (operands[6], V8SImode))
19392 : operands[6] = force_reg (V8SImode, operands[6]);
19393 : operands[5] = GEN_INT (reg_mask);
19394 : }
19395 : #undef DONE
19396 : #undef FAIL
19397 : static const uint8_t expand_encoding[] = {
19398 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19399 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19400 : 0x25
19401 : };
19402 : return complete_seq (expand_encoding, operands);
19403 : }
19404 :
19405 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19406 : extern rtx_insn *gen_split_1953 (rtx_insn *, rtx *);
19407 : rtx_insn *
19408 : gen_split_1953 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19409 : {
19410 : if (dump_file)
19411 : fprintf (dump_file, "Splitting with gen_split_1953 (sse.md:14142)\n");
19412 : start_sequence ();
19413 : #define FAIL return (end_sequence (), nullptr)
19414 : #define DONE return end_sequence ()
19415 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19416 : {
19417 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19418 : int reg6 = 0xF0;
19419 : int reg2 = 0xCC;
19420 : int reg1 = 0xAA;
19421 : int reg3 = 0;
19422 : int reg4 = 0;
19423 : int reg_mask, tmp1, tmp2;
19424 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19425 : STRIP_UNARY (operands[4])))
19426 : {
19427 : reg4 = reg1;
19428 : reg3 = reg6;
19429 : operands[6] = operands[3];
19430 : }
19431 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19432 : STRIP_UNARY (operands[4])))
19433 : {
19434 : reg4 = reg2;
19435 : reg3 = reg6;
19436 : operands[6] = operands[3];
19437 : }
19438 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19439 : STRIP_UNARY (operands[3])))
19440 : {
19441 : reg4 = reg6;
19442 : reg3 = reg1;
19443 : operands[6] = operands[4];
19444 : }
19445 : else
19446 : {
19447 : reg4 = reg6;
19448 : reg3 = reg2;
19449 : operands[6] = operands[4];
19450 : }
19451 :
19452 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19453 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19454 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19455 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19456 :
19457 : tmp1 = reg1 & reg2;
19458 : tmp2 = reg3 | reg4;
19459 : reg_mask = tmp1 | tmp2;
19460 : reg_mask &= 0xFF;
19461 :
19462 : operands[1] = STRIP_UNARY (operands[1]);
19463 : operands[2] = STRIP_UNARY (operands[2]);
19464 : operands[6] = STRIP_UNARY (operands[6]);
19465 : if (!register_operand (operands[2], V4SImode))
19466 : operands[2] = force_reg (V4SImode, operands[2]);
19467 : if (!register_operand (operands[6], V4SImode))
19468 : operands[6] = force_reg (V4SImode, operands[6]);
19469 : operands[5] = GEN_INT (reg_mask);
19470 : }
19471 : #undef DONE
19472 : #undef FAIL
19473 : static const uint8_t expand_encoding[] = {
19474 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19475 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19476 : 0x25
19477 : };
19478 : return complete_seq (expand_encoding, operands);
19479 : }
19480 :
19481 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19482 : extern rtx_insn *gen_split_1963 (rtx_insn *, rtx *);
19483 : rtx_insn *
19484 : gen_split_1963 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19485 : {
19486 : if (dump_file)
19487 : fprintf (dump_file, "Splitting with gen_split_1963 (sse.md:14142)\n");
19488 : start_sequence ();
19489 : #define FAIL return (end_sequence (), nullptr)
19490 : #define DONE return end_sequence ()
19491 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19492 : {
19493 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19494 : int reg6 = 0xF0;
19495 : int reg2 = 0xCC;
19496 : int reg1 = 0xAA;
19497 : int reg3 = 0;
19498 : int reg4 = 0;
19499 : int reg_mask, tmp1, tmp2;
19500 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19501 : STRIP_UNARY (operands[4])))
19502 : {
19503 : reg4 = reg1;
19504 : reg3 = reg6;
19505 : operands[6] = operands[3];
19506 : }
19507 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19508 : STRIP_UNARY (operands[4])))
19509 : {
19510 : reg4 = reg2;
19511 : reg3 = reg6;
19512 : operands[6] = operands[3];
19513 : }
19514 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19515 : STRIP_UNARY (operands[3])))
19516 : {
19517 : reg4 = reg6;
19518 : reg3 = reg1;
19519 : operands[6] = operands[4];
19520 : }
19521 : else
19522 : {
19523 : reg4 = reg6;
19524 : reg3 = reg2;
19525 : operands[6] = operands[4];
19526 : }
19527 :
19528 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19529 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19530 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19531 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19532 :
19533 : tmp1 = reg1 | reg2;
19534 : tmp2 = reg3 | reg4;
19535 : reg_mask = tmp1 ^ tmp2;
19536 : reg_mask &= 0xFF;
19537 :
19538 : operands[1] = STRIP_UNARY (operands[1]);
19539 : operands[2] = STRIP_UNARY (operands[2]);
19540 : operands[6] = STRIP_UNARY (operands[6]);
19541 : if (!register_operand (operands[2], V4SImode))
19542 : operands[2] = force_reg (V4SImode, operands[2]);
19543 : if (!register_operand (operands[6], V4SImode))
19544 : operands[6] = force_reg (V4SImode, operands[6]);
19545 : operands[5] = GEN_INT (reg_mask);
19546 : }
19547 : #undef DONE
19548 : #undef FAIL
19549 : static const uint8_t expand_encoding[] = {
19550 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19551 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19552 : 0x25
19553 : };
19554 : return complete_seq (expand_encoding, operands);
19555 : }
19556 :
19557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19558 : extern rtx_insn *gen_split_1973 (rtx_insn *, rtx *);
19559 : rtx_insn *
19560 : gen_split_1973 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19561 : {
19562 : if (dump_file)
19563 : fprintf (dump_file, "Splitting with gen_split_1973 (sse.md:14142)\n");
19564 : start_sequence ();
19565 : #define FAIL return (end_sequence (), nullptr)
19566 : #define DONE return end_sequence ()
19567 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19568 : {
19569 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19570 : int reg6 = 0xF0;
19571 : int reg2 = 0xCC;
19572 : int reg1 = 0xAA;
19573 : int reg3 = 0;
19574 : int reg4 = 0;
19575 : int reg_mask, tmp1, tmp2;
19576 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19577 : STRIP_UNARY (operands[4])))
19578 : {
19579 : reg4 = reg1;
19580 : reg3 = reg6;
19581 : operands[6] = operands[3];
19582 : }
19583 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19584 : STRIP_UNARY (operands[4])))
19585 : {
19586 : reg4 = reg2;
19587 : reg3 = reg6;
19588 : operands[6] = operands[3];
19589 : }
19590 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19591 : STRIP_UNARY (operands[3])))
19592 : {
19593 : reg4 = reg6;
19594 : reg3 = reg1;
19595 : operands[6] = operands[4];
19596 : }
19597 : else
19598 : {
19599 : reg4 = reg6;
19600 : reg3 = reg2;
19601 : operands[6] = operands[4];
19602 : }
19603 :
19604 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19605 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19606 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19607 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19608 :
19609 : tmp1 = reg1 ^ reg2;
19610 : tmp2 = reg3 ^ reg4;
19611 : reg_mask = tmp1 & tmp2;
19612 : reg_mask &= 0xFF;
19613 :
19614 : operands[1] = STRIP_UNARY (operands[1]);
19615 : operands[2] = STRIP_UNARY (operands[2]);
19616 : operands[6] = STRIP_UNARY (operands[6]);
19617 : if (!register_operand (operands[2], V4SImode))
19618 : operands[2] = force_reg (V4SImode, operands[2]);
19619 : if (!register_operand (operands[6], V4SImode))
19620 : operands[6] = force_reg (V4SImode, operands[6]);
19621 : operands[5] = GEN_INT (reg_mask);
19622 : }
19623 : #undef DONE
19624 : #undef FAIL
19625 : static const uint8_t expand_encoding[] = {
19626 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19627 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19628 : 0x25
19629 : };
19630 : return complete_seq (expand_encoding, operands);
19631 : }
19632 :
19633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19634 : extern rtx_insn *gen_split_1983 (rtx_insn *, rtx *);
19635 : rtx_insn *
19636 : gen_split_1983 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19637 : {
19638 : if (dump_file)
19639 : fprintf (dump_file, "Splitting with gen_split_1983 (sse.md:14142)\n");
19640 : start_sequence ();
19641 : #define FAIL return (end_sequence (), nullptr)
19642 : #define DONE return end_sequence ()
19643 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19644 : {
19645 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19646 : int reg6 = 0xF0;
19647 : int reg2 = 0xCC;
19648 : int reg1 = 0xAA;
19649 : int reg3 = 0;
19650 : int reg4 = 0;
19651 : int reg_mask, tmp1, tmp2;
19652 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19653 : STRIP_UNARY (operands[4])))
19654 : {
19655 : reg4 = reg1;
19656 : reg3 = reg6;
19657 : operands[6] = operands[3];
19658 : }
19659 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19660 : STRIP_UNARY (operands[4])))
19661 : {
19662 : reg4 = reg2;
19663 : reg3 = reg6;
19664 : operands[6] = operands[3];
19665 : }
19666 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19667 : STRIP_UNARY (operands[3])))
19668 : {
19669 : reg4 = reg6;
19670 : reg3 = reg1;
19671 : operands[6] = operands[4];
19672 : }
19673 : else
19674 : {
19675 : reg4 = reg6;
19676 : reg3 = reg2;
19677 : operands[6] = operands[4];
19678 : }
19679 :
19680 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19681 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19682 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19683 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19684 :
19685 : tmp1 = reg1 & reg2;
19686 : tmp2 = reg3 ^ reg4;
19687 : reg_mask = tmp1 | tmp2;
19688 : reg_mask &= 0xFF;
19689 :
19690 : operands[1] = STRIP_UNARY (operands[1]);
19691 : operands[2] = STRIP_UNARY (operands[2]);
19692 : operands[6] = STRIP_UNARY (operands[6]);
19693 : if (!register_operand (operands[2], V8DImode))
19694 : operands[2] = force_reg (V8DImode, operands[2]);
19695 : if (!register_operand (operands[6], V8DImode))
19696 : operands[6] = force_reg (V8DImode, operands[6]);
19697 : operands[5] = GEN_INT (reg_mask);
19698 : }
19699 : #undef DONE
19700 : #undef FAIL
19701 : static const uint8_t expand_encoding[] = {
19702 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19703 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19704 : 0x25
19705 : };
19706 : return complete_seq (expand_encoding, operands);
19707 : }
19708 :
19709 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19710 : extern rtx_insn *gen_split_1993 (rtx_insn *, rtx *);
19711 : rtx_insn *
19712 : gen_split_1993 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19713 : {
19714 : if (dump_file)
19715 : fprintf (dump_file, "Splitting with gen_split_1993 (sse.md:14142)\n");
19716 : start_sequence ();
19717 : #define FAIL return (end_sequence (), nullptr)
19718 : #define DONE return end_sequence ()
19719 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19720 : {
19721 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19722 : int reg6 = 0xF0;
19723 : int reg2 = 0xCC;
19724 : int reg1 = 0xAA;
19725 : int reg3 = 0;
19726 : int reg4 = 0;
19727 : int reg_mask, tmp1, tmp2;
19728 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19729 : STRIP_UNARY (operands[4])))
19730 : {
19731 : reg4 = reg1;
19732 : reg3 = reg6;
19733 : operands[6] = operands[3];
19734 : }
19735 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19736 : STRIP_UNARY (operands[4])))
19737 : {
19738 : reg4 = reg2;
19739 : reg3 = reg6;
19740 : operands[6] = operands[3];
19741 : }
19742 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19743 : STRIP_UNARY (operands[3])))
19744 : {
19745 : reg4 = reg6;
19746 : reg3 = reg1;
19747 : operands[6] = operands[4];
19748 : }
19749 : else
19750 : {
19751 : reg4 = reg6;
19752 : reg3 = reg2;
19753 : operands[6] = operands[4];
19754 : }
19755 :
19756 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19757 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19758 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19759 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19760 :
19761 : tmp1 = reg1 | reg2;
19762 : tmp2 = reg3 ^ reg4;
19763 : reg_mask = tmp1 ^ tmp2;
19764 : reg_mask &= 0xFF;
19765 :
19766 : operands[1] = STRIP_UNARY (operands[1]);
19767 : operands[2] = STRIP_UNARY (operands[2]);
19768 : operands[6] = STRIP_UNARY (operands[6]);
19769 : if (!register_operand (operands[2], V8DImode))
19770 : operands[2] = force_reg (V8DImode, operands[2]);
19771 : if (!register_operand (operands[6], V8DImode))
19772 : operands[6] = force_reg (V8DImode, operands[6]);
19773 : operands[5] = GEN_INT (reg_mask);
19774 : }
19775 : #undef DONE
19776 : #undef FAIL
19777 : static const uint8_t expand_encoding[] = {
19778 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19779 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19780 : 0x25
19781 : };
19782 : return complete_seq (expand_encoding, operands);
19783 : }
19784 :
19785 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19786 : extern rtx_insn *gen_split_2003 (rtx_insn *, rtx *);
19787 : rtx_insn *
19788 : gen_split_2003 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19789 : {
19790 : if (dump_file)
19791 : fprintf (dump_file, "Splitting with gen_split_2003 (sse.md:14142)\n");
19792 : start_sequence ();
19793 : #define FAIL return (end_sequence (), nullptr)
19794 : #define DONE return end_sequence ()
19795 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19796 : {
19797 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19798 : int reg6 = 0xF0;
19799 : int reg2 = 0xCC;
19800 : int reg1 = 0xAA;
19801 : int reg3 = 0;
19802 : int reg4 = 0;
19803 : int reg_mask, tmp1, tmp2;
19804 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19805 : STRIP_UNARY (operands[4])))
19806 : {
19807 : reg4 = reg1;
19808 : reg3 = reg6;
19809 : operands[6] = operands[3];
19810 : }
19811 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19812 : STRIP_UNARY (operands[4])))
19813 : {
19814 : reg4 = reg2;
19815 : reg3 = reg6;
19816 : operands[6] = operands[3];
19817 : }
19818 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19819 : STRIP_UNARY (operands[3])))
19820 : {
19821 : reg4 = reg6;
19822 : reg3 = reg1;
19823 : operands[6] = operands[4];
19824 : }
19825 : else
19826 : {
19827 : reg4 = reg6;
19828 : reg3 = reg2;
19829 : operands[6] = operands[4];
19830 : }
19831 :
19832 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19833 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19834 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19835 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19836 :
19837 : tmp1 = reg1 & reg2;
19838 : tmp2 = reg3 & reg4;
19839 : reg_mask = tmp1 & tmp2;
19840 : reg_mask &= 0xFF;
19841 :
19842 : operands[1] = STRIP_UNARY (operands[1]);
19843 : operands[2] = STRIP_UNARY (operands[2]);
19844 : operands[6] = STRIP_UNARY (operands[6]);
19845 : if (!register_operand (operands[2], V4DImode))
19846 : operands[2] = force_reg (V4DImode, operands[2]);
19847 : if (!register_operand (operands[6], V4DImode))
19848 : operands[6] = force_reg (V4DImode, operands[6]);
19849 : operands[5] = GEN_INT (reg_mask);
19850 : }
19851 : #undef DONE
19852 : #undef FAIL
19853 : static const uint8_t expand_encoding[] = {
19854 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19855 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19856 : 0x25
19857 : };
19858 : return complete_seq (expand_encoding, operands);
19859 : }
19860 :
19861 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19862 : extern rtx_insn *gen_split_2013 (rtx_insn *, rtx *);
19863 : rtx_insn *
19864 : gen_split_2013 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19865 : {
19866 : if (dump_file)
19867 : fprintf (dump_file, "Splitting with gen_split_2013 (sse.md:14142)\n");
19868 : start_sequence ();
19869 : #define FAIL return (end_sequence (), nullptr)
19870 : #define DONE return end_sequence ()
19871 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19872 : {
19873 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19874 : int reg6 = 0xF0;
19875 : int reg2 = 0xCC;
19876 : int reg1 = 0xAA;
19877 : int reg3 = 0;
19878 : int reg4 = 0;
19879 : int reg_mask, tmp1, tmp2;
19880 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19881 : STRIP_UNARY (operands[4])))
19882 : {
19883 : reg4 = reg1;
19884 : reg3 = reg6;
19885 : operands[6] = operands[3];
19886 : }
19887 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19888 : STRIP_UNARY (operands[4])))
19889 : {
19890 : reg4 = reg2;
19891 : reg3 = reg6;
19892 : operands[6] = operands[3];
19893 : }
19894 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19895 : STRIP_UNARY (operands[3])))
19896 : {
19897 : reg4 = reg6;
19898 : reg3 = reg1;
19899 : operands[6] = operands[4];
19900 : }
19901 : else
19902 : {
19903 : reg4 = reg6;
19904 : reg3 = reg2;
19905 : operands[6] = operands[4];
19906 : }
19907 :
19908 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19909 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19910 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19911 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19912 :
19913 : tmp1 = reg1 | reg2;
19914 : tmp2 = reg3 & reg4;
19915 : reg_mask = tmp1 | tmp2;
19916 : reg_mask &= 0xFF;
19917 :
19918 : operands[1] = STRIP_UNARY (operands[1]);
19919 : operands[2] = STRIP_UNARY (operands[2]);
19920 : operands[6] = STRIP_UNARY (operands[6]);
19921 : if (!register_operand (operands[2], V4DImode))
19922 : operands[2] = force_reg (V4DImode, operands[2]);
19923 : if (!register_operand (operands[6], V4DImode))
19924 : operands[6] = force_reg (V4DImode, operands[6]);
19925 : operands[5] = GEN_INT (reg_mask);
19926 : }
19927 : #undef DONE
19928 : #undef FAIL
19929 : static const uint8_t expand_encoding[] = {
19930 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19931 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19932 : 0x25
19933 : };
19934 : return complete_seq (expand_encoding, operands);
19935 : }
19936 :
19937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19938 : extern rtx_insn *gen_split_2023 (rtx_insn *, rtx *);
19939 : rtx_insn *
19940 : gen_split_2023 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19941 : {
19942 : if (dump_file)
19943 : fprintf (dump_file, "Splitting with gen_split_2023 (sse.md:14142)\n");
19944 : start_sequence ();
19945 : #define FAIL return (end_sequence (), nullptr)
19946 : #define DONE return end_sequence ()
19947 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19948 : {
19949 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19950 : int reg6 = 0xF0;
19951 : int reg2 = 0xCC;
19952 : int reg1 = 0xAA;
19953 : int reg3 = 0;
19954 : int reg4 = 0;
19955 : int reg_mask, tmp1, tmp2;
19956 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19957 : STRIP_UNARY (operands[4])))
19958 : {
19959 : reg4 = reg1;
19960 : reg3 = reg6;
19961 : operands[6] = operands[3];
19962 : }
19963 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19964 : STRIP_UNARY (operands[4])))
19965 : {
19966 : reg4 = reg2;
19967 : reg3 = reg6;
19968 : operands[6] = operands[3];
19969 : }
19970 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19971 : STRIP_UNARY (operands[3])))
19972 : {
19973 : reg4 = reg6;
19974 : reg3 = reg1;
19975 : operands[6] = operands[4];
19976 : }
19977 : else
19978 : {
19979 : reg4 = reg6;
19980 : reg3 = reg2;
19981 : operands[6] = operands[4];
19982 : }
19983 :
19984 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19985 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19986 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19987 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19988 :
19989 : tmp1 = reg1 ^ reg2;
19990 : tmp2 = reg3 & reg4;
19991 : reg_mask = tmp1 ^ tmp2;
19992 : reg_mask &= 0xFF;
19993 :
19994 : operands[1] = STRIP_UNARY (operands[1]);
19995 : operands[2] = STRIP_UNARY (operands[2]);
19996 : operands[6] = STRIP_UNARY (operands[6]);
19997 : if (!register_operand (operands[2], V4DImode))
19998 : operands[2] = force_reg (V4DImode, operands[2]);
19999 : if (!register_operand (operands[6], V4DImode))
20000 : operands[6] = force_reg (V4DImode, operands[6]);
20001 : operands[5] = GEN_INT (reg_mask);
20002 : }
20003 : #undef DONE
20004 : #undef FAIL
20005 : static const uint8_t expand_encoding[] = {
20006 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
20007 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20008 : 0x25
20009 : };
20010 : return complete_seq (expand_encoding, operands);
20011 : }
20012 :
20013 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20014 : extern rtx_insn *gen_split_2033 (rtx_insn *, rtx *);
20015 : rtx_insn *
20016 : gen_split_2033 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20017 : {
20018 : if (dump_file)
20019 : fprintf (dump_file, "Splitting with gen_split_2033 (sse.md:14142)\n");
20020 : start_sequence ();
20021 : #define FAIL return (end_sequence (), nullptr)
20022 : #define DONE return end_sequence ()
20023 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20024 : {
20025 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20026 : int reg6 = 0xF0;
20027 : int reg2 = 0xCC;
20028 : int reg1 = 0xAA;
20029 : int reg3 = 0;
20030 : int reg4 = 0;
20031 : int reg_mask, tmp1, tmp2;
20032 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20033 : STRIP_UNARY (operands[4])))
20034 : {
20035 : reg4 = reg1;
20036 : reg3 = reg6;
20037 : operands[6] = operands[3];
20038 : }
20039 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20040 : STRIP_UNARY (operands[4])))
20041 : {
20042 : reg4 = reg2;
20043 : reg3 = reg6;
20044 : operands[6] = operands[3];
20045 : }
20046 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20047 : STRIP_UNARY (operands[3])))
20048 : {
20049 : reg4 = reg6;
20050 : reg3 = reg1;
20051 : operands[6] = operands[4];
20052 : }
20053 : else
20054 : {
20055 : reg4 = reg6;
20056 : reg3 = reg2;
20057 : operands[6] = operands[4];
20058 : }
20059 :
20060 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20061 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20062 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20063 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20064 :
20065 : tmp1 = reg1 & reg2;
20066 : tmp2 = reg3 | reg4;
20067 : reg_mask = tmp1 & tmp2;
20068 : reg_mask &= 0xFF;
20069 :
20070 : operands[1] = STRIP_UNARY (operands[1]);
20071 : operands[2] = STRIP_UNARY (operands[2]);
20072 : operands[6] = STRIP_UNARY (operands[6]);
20073 : if (!register_operand (operands[2], V2DImode))
20074 : operands[2] = force_reg (V2DImode, operands[2]);
20075 : if (!register_operand (operands[6], V2DImode))
20076 : operands[6] = force_reg (V2DImode, operands[6]);
20077 : operands[5] = GEN_INT (reg_mask);
20078 : }
20079 : #undef DONE
20080 : #undef FAIL
20081 : static const uint8_t expand_encoding[] = {
20082 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20083 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20084 : 0x25
20085 : };
20086 : return complete_seq (expand_encoding, operands);
20087 : }
20088 :
20089 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20090 : extern rtx_insn *gen_split_2043 (rtx_insn *, rtx *);
20091 : rtx_insn *
20092 : gen_split_2043 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20093 : {
20094 : if (dump_file)
20095 : fprintf (dump_file, "Splitting with gen_split_2043 (sse.md:14142)\n");
20096 : start_sequence ();
20097 : #define FAIL return (end_sequence (), nullptr)
20098 : #define DONE return end_sequence ()
20099 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20100 : {
20101 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20102 : int reg6 = 0xF0;
20103 : int reg2 = 0xCC;
20104 : int reg1 = 0xAA;
20105 : int reg3 = 0;
20106 : int reg4 = 0;
20107 : int reg_mask, tmp1, tmp2;
20108 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20109 : STRIP_UNARY (operands[4])))
20110 : {
20111 : reg4 = reg1;
20112 : reg3 = reg6;
20113 : operands[6] = operands[3];
20114 : }
20115 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20116 : STRIP_UNARY (operands[4])))
20117 : {
20118 : reg4 = reg2;
20119 : reg3 = reg6;
20120 : operands[6] = operands[3];
20121 : }
20122 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20123 : STRIP_UNARY (operands[3])))
20124 : {
20125 : reg4 = reg6;
20126 : reg3 = reg1;
20127 : operands[6] = operands[4];
20128 : }
20129 : else
20130 : {
20131 : reg4 = reg6;
20132 : reg3 = reg2;
20133 : operands[6] = operands[4];
20134 : }
20135 :
20136 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20137 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20138 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20139 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20140 :
20141 : tmp1 = reg1 | reg2;
20142 : tmp2 = reg3 | reg4;
20143 : reg_mask = tmp1 | tmp2;
20144 : reg_mask &= 0xFF;
20145 :
20146 : operands[1] = STRIP_UNARY (operands[1]);
20147 : operands[2] = STRIP_UNARY (operands[2]);
20148 : operands[6] = STRIP_UNARY (operands[6]);
20149 : if (!register_operand (operands[2], V2DImode))
20150 : operands[2] = force_reg (V2DImode, operands[2]);
20151 : if (!register_operand (operands[6], V2DImode))
20152 : operands[6] = force_reg (V2DImode, operands[6]);
20153 : operands[5] = GEN_INT (reg_mask);
20154 : }
20155 : #undef DONE
20156 : #undef FAIL
20157 : static const uint8_t expand_encoding[] = {
20158 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20159 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20160 : 0x25
20161 : };
20162 : return complete_seq (expand_encoding, operands);
20163 : }
20164 :
20165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20166 : extern rtx_insn *gen_split_2053 (rtx_insn *, rtx *);
20167 : rtx_insn *
20168 : gen_split_2053 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20169 : {
20170 : if (dump_file)
20171 : fprintf (dump_file, "Splitting with gen_split_2053 (sse.md:14142)\n");
20172 : start_sequence ();
20173 : #define FAIL return (end_sequence (), nullptr)
20174 : #define DONE return end_sequence ()
20175 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20176 : {
20177 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20178 : int reg6 = 0xF0;
20179 : int reg2 = 0xCC;
20180 : int reg1 = 0xAA;
20181 : int reg3 = 0;
20182 : int reg4 = 0;
20183 : int reg_mask, tmp1, tmp2;
20184 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20185 : STRIP_UNARY (operands[4])))
20186 : {
20187 : reg4 = reg1;
20188 : reg3 = reg6;
20189 : operands[6] = operands[3];
20190 : }
20191 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20192 : STRIP_UNARY (operands[4])))
20193 : {
20194 : reg4 = reg2;
20195 : reg3 = reg6;
20196 : operands[6] = operands[3];
20197 : }
20198 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20199 : STRIP_UNARY (operands[3])))
20200 : {
20201 : reg4 = reg6;
20202 : reg3 = reg1;
20203 : operands[6] = operands[4];
20204 : }
20205 : else
20206 : {
20207 : reg4 = reg6;
20208 : reg3 = reg2;
20209 : operands[6] = operands[4];
20210 : }
20211 :
20212 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20213 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20214 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20215 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20216 :
20217 : tmp1 = reg1 ^ reg2;
20218 : tmp2 = reg3 | reg4;
20219 : reg_mask = tmp1 ^ tmp2;
20220 : reg_mask &= 0xFF;
20221 :
20222 : operands[1] = STRIP_UNARY (operands[1]);
20223 : operands[2] = STRIP_UNARY (operands[2]);
20224 : operands[6] = STRIP_UNARY (operands[6]);
20225 : if (!register_operand (operands[2], V2DImode))
20226 : operands[2] = force_reg (V2DImode, operands[2]);
20227 : if (!register_operand (operands[6], V2DImode))
20228 : operands[6] = force_reg (V2DImode, operands[6]);
20229 : operands[5] = GEN_INT (reg_mask);
20230 : }
20231 : #undef DONE
20232 : #undef FAIL
20233 : static const uint8_t expand_encoding[] = {
20234 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20235 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20236 : 0x25
20237 : };
20238 : return complete_seq (expand_encoding, operands);
20239 : }
20240 :
20241 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20242 : extern rtx_insn *gen_split_2063 (rtx_insn *, rtx *);
20243 : rtx_insn *
20244 : gen_split_2063 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20245 : {
20246 : if (dump_file)
20247 : fprintf (dump_file, "Splitting with gen_split_2063 (sse.md:14142)\n");
20248 : start_sequence ();
20249 : #define FAIL return (end_sequence (), nullptr)
20250 : #define DONE return end_sequence ()
20251 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20252 : {
20253 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20254 : int reg6 = 0xF0;
20255 : int reg2 = 0xCC;
20256 : int reg1 = 0xAA;
20257 : int reg3 = 0;
20258 : int reg4 = 0;
20259 : int reg_mask, tmp1, tmp2;
20260 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20261 : STRIP_UNARY (operands[4])))
20262 : {
20263 : reg4 = reg1;
20264 : reg3 = reg6;
20265 : operands[6] = operands[3];
20266 : }
20267 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20268 : STRIP_UNARY (operands[4])))
20269 : {
20270 : reg4 = reg2;
20271 : reg3 = reg6;
20272 : operands[6] = operands[3];
20273 : }
20274 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20275 : STRIP_UNARY (operands[3])))
20276 : {
20277 : reg4 = reg6;
20278 : reg3 = reg1;
20279 : operands[6] = operands[4];
20280 : }
20281 : else
20282 : {
20283 : reg4 = reg6;
20284 : reg3 = reg2;
20285 : operands[6] = operands[4];
20286 : }
20287 :
20288 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20289 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20290 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20291 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20292 :
20293 : tmp1 = reg1 & reg2;
20294 : tmp2 = reg3 ^ reg4;
20295 : reg_mask = tmp1 & tmp2;
20296 : reg_mask &= 0xFF;
20297 :
20298 : operands[1] = STRIP_UNARY (operands[1]);
20299 : operands[2] = STRIP_UNARY (operands[2]);
20300 : operands[6] = STRIP_UNARY (operands[6]);
20301 : if (!register_operand (operands[2], V32HFmode))
20302 : operands[2] = force_reg (V32HFmode, operands[2]);
20303 : if (!register_operand (operands[6], V32HFmode))
20304 : operands[6] = force_reg (V32HFmode, operands[6]);
20305 : operands[5] = GEN_INT (reg_mask);
20306 : }
20307 : #undef DONE
20308 : #undef FAIL
20309 : static const uint8_t expand_encoding[] = {
20310 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20311 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20312 : 0x25
20313 : };
20314 : return complete_seq (expand_encoding, operands);
20315 : }
20316 :
20317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20318 : extern rtx_insn *gen_split_2073 (rtx_insn *, rtx *);
20319 : rtx_insn *
20320 : gen_split_2073 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20321 : {
20322 : if (dump_file)
20323 : fprintf (dump_file, "Splitting with gen_split_2073 (sse.md:14142)\n");
20324 : start_sequence ();
20325 : #define FAIL return (end_sequence (), nullptr)
20326 : #define DONE return end_sequence ()
20327 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20328 : {
20329 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20330 : int reg6 = 0xF0;
20331 : int reg2 = 0xCC;
20332 : int reg1 = 0xAA;
20333 : int reg3 = 0;
20334 : int reg4 = 0;
20335 : int reg_mask, tmp1, tmp2;
20336 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20337 : STRIP_UNARY (operands[4])))
20338 : {
20339 : reg4 = reg1;
20340 : reg3 = reg6;
20341 : operands[6] = operands[3];
20342 : }
20343 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20344 : STRIP_UNARY (operands[4])))
20345 : {
20346 : reg4 = reg2;
20347 : reg3 = reg6;
20348 : operands[6] = operands[3];
20349 : }
20350 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20351 : STRIP_UNARY (operands[3])))
20352 : {
20353 : reg4 = reg6;
20354 : reg3 = reg1;
20355 : operands[6] = operands[4];
20356 : }
20357 : else
20358 : {
20359 : reg4 = reg6;
20360 : reg3 = reg2;
20361 : operands[6] = operands[4];
20362 : }
20363 :
20364 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20365 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20366 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20367 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20368 :
20369 : tmp1 = reg1 | reg2;
20370 : tmp2 = reg3 ^ reg4;
20371 : reg_mask = tmp1 | tmp2;
20372 : reg_mask &= 0xFF;
20373 :
20374 : operands[1] = STRIP_UNARY (operands[1]);
20375 : operands[2] = STRIP_UNARY (operands[2]);
20376 : operands[6] = STRIP_UNARY (operands[6]);
20377 : if (!register_operand (operands[2], V32HFmode))
20378 : operands[2] = force_reg (V32HFmode, operands[2]);
20379 : if (!register_operand (operands[6], V32HFmode))
20380 : operands[6] = force_reg (V32HFmode, operands[6]);
20381 : operands[5] = GEN_INT (reg_mask);
20382 : }
20383 : #undef DONE
20384 : #undef FAIL
20385 : static const uint8_t expand_encoding[] = {
20386 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20387 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20388 : 0x25
20389 : };
20390 : return complete_seq (expand_encoding, operands);
20391 : }
20392 :
20393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20394 : extern rtx_insn *gen_split_2083 (rtx_insn *, rtx *);
20395 : rtx_insn *
20396 : gen_split_2083 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20397 : {
20398 : if (dump_file)
20399 : fprintf (dump_file, "Splitting with gen_split_2083 (sse.md:14142)\n");
20400 : start_sequence ();
20401 : #define FAIL return (end_sequence (), nullptr)
20402 : #define DONE return end_sequence ()
20403 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20404 : {
20405 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20406 : int reg6 = 0xF0;
20407 : int reg2 = 0xCC;
20408 : int reg1 = 0xAA;
20409 : int reg3 = 0;
20410 : int reg4 = 0;
20411 : int reg_mask, tmp1, tmp2;
20412 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20413 : STRIP_UNARY (operands[4])))
20414 : {
20415 : reg4 = reg1;
20416 : reg3 = reg6;
20417 : operands[6] = operands[3];
20418 : }
20419 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20420 : STRIP_UNARY (operands[4])))
20421 : {
20422 : reg4 = reg2;
20423 : reg3 = reg6;
20424 : operands[6] = operands[3];
20425 : }
20426 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20427 : STRIP_UNARY (operands[3])))
20428 : {
20429 : reg4 = reg6;
20430 : reg3 = reg1;
20431 : operands[6] = operands[4];
20432 : }
20433 : else
20434 : {
20435 : reg4 = reg6;
20436 : reg3 = reg2;
20437 : operands[6] = operands[4];
20438 : }
20439 :
20440 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20441 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20442 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20443 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20444 :
20445 : tmp1 = reg1 ^ reg2;
20446 : tmp2 = reg3 ^ reg4;
20447 : reg_mask = tmp1 ^ tmp2;
20448 : reg_mask &= 0xFF;
20449 :
20450 : operands[1] = STRIP_UNARY (operands[1]);
20451 : operands[2] = STRIP_UNARY (operands[2]);
20452 : operands[6] = STRIP_UNARY (operands[6]);
20453 : if (!register_operand (operands[2], V32HFmode))
20454 : operands[2] = force_reg (V32HFmode, operands[2]);
20455 : if (!register_operand (operands[6], V32HFmode))
20456 : operands[6] = force_reg (V32HFmode, operands[6]);
20457 : operands[5] = GEN_INT (reg_mask);
20458 : }
20459 : #undef DONE
20460 : #undef FAIL
20461 : static const uint8_t expand_encoding[] = {
20462 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20463 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20464 : 0x25
20465 : };
20466 : return complete_seq (expand_encoding, operands);
20467 : }
20468 :
20469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20470 : extern rtx_insn *gen_split_2093 (rtx_insn *, rtx *);
20471 : rtx_insn *
20472 : gen_split_2093 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20473 : {
20474 : if (dump_file)
20475 : fprintf (dump_file, "Splitting with gen_split_2093 (sse.md:14142)\n");
20476 : start_sequence ();
20477 : #define FAIL return (end_sequence (), nullptr)
20478 : #define DONE return end_sequence ()
20479 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20480 : {
20481 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20482 : int reg6 = 0xF0;
20483 : int reg2 = 0xCC;
20484 : int reg1 = 0xAA;
20485 : int reg3 = 0;
20486 : int reg4 = 0;
20487 : int reg_mask, tmp1, tmp2;
20488 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20489 : STRIP_UNARY (operands[4])))
20490 : {
20491 : reg4 = reg1;
20492 : reg3 = reg6;
20493 : operands[6] = operands[3];
20494 : }
20495 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20496 : STRIP_UNARY (operands[4])))
20497 : {
20498 : reg4 = reg2;
20499 : reg3 = reg6;
20500 : operands[6] = operands[3];
20501 : }
20502 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20503 : STRIP_UNARY (operands[3])))
20504 : {
20505 : reg4 = reg6;
20506 : reg3 = reg1;
20507 : operands[6] = operands[4];
20508 : }
20509 : else
20510 : {
20511 : reg4 = reg6;
20512 : reg3 = reg2;
20513 : operands[6] = operands[4];
20514 : }
20515 :
20516 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20517 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20518 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20519 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20520 :
20521 : tmp1 = reg1 | reg2;
20522 : tmp2 = reg3 & reg4;
20523 : reg_mask = tmp1 & tmp2;
20524 : reg_mask &= 0xFF;
20525 :
20526 : operands[1] = STRIP_UNARY (operands[1]);
20527 : operands[2] = STRIP_UNARY (operands[2]);
20528 : operands[6] = STRIP_UNARY (operands[6]);
20529 : if (!register_operand (operands[2], V16HFmode))
20530 : operands[2] = force_reg (V16HFmode, operands[2]);
20531 : if (!register_operand (operands[6], V16HFmode))
20532 : operands[6] = force_reg (V16HFmode, operands[6]);
20533 : operands[5] = GEN_INT (reg_mask);
20534 : }
20535 : #undef DONE
20536 : #undef FAIL
20537 : static const uint8_t expand_encoding[] = {
20538 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20539 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20540 : 0x25
20541 : };
20542 : return complete_seq (expand_encoding, operands);
20543 : }
20544 :
20545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20546 : extern rtx_insn *gen_split_2103 (rtx_insn *, rtx *);
20547 : rtx_insn *
20548 : gen_split_2103 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20549 : {
20550 : if (dump_file)
20551 : fprintf (dump_file, "Splitting with gen_split_2103 (sse.md:14142)\n");
20552 : start_sequence ();
20553 : #define FAIL return (end_sequence (), nullptr)
20554 : #define DONE return end_sequence ()
20555 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20556 : {
20557 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20558 : int reg6 = 0xF0;
20559 : int reg2 = 0xCC;
20560 : int reg1 = 0xAA;
20561 : int reg3 = 0;
20562 : int reg4 = 0;
20563 : int reg_mask, tmp1, tmp2;
20564 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20565 : STRIP_UNARY (operands[4])))
20566 : {
20567 : reg4 = reg1;
20568 : reg3 = reg6;
20569 : operands[6] = operands[3];
20570 : }
20571 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20572 : STRIP_UNARY (operands[4])))
20573 : {
20574 : reg4 = reg2;
20575 : reg3 = reg6;
20576 : operands[6] = operands[3];
20577 : }
20578 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20579 : STRIP_UNARY (operands[3])))
20580 : {
20581 : reg4 = reg6;
20582 : reg3 = reg1;
20583 : operands[6] = operands[4];
20584 : }
20585 : else
20586 : {
20587 : reg4 = reg6;
20588 : reg3 = reg2;
20589 : operands[6] = operands[4];
20590 : }
20591 :
20592 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20593 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20594 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20595 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20596 :
20597 : tmp1 = reg1 ^ reg2;
20598 : tmp2 = reg3 & reg4;
20599 : reg_mask = tmp1 | tmp2;
20600 : reg_mask &= 0xFF;
20601 :
20602 : operands[1] = STRIP_UNARY (operands[1]);
20603 : operands[2] = STRIP_UNARY (operands[2]);
20604 : operands[6] = STRIP_UNARY (operands[6]);
20605 : if (!register_operand (operands[2], V16HFmode))
20606 : operands[2] = force_reg (V16HFmode, operands[2]);
20607 : if (!register_operand (operands[6], V16HFmode))
20608 : operands[6] = force_reg (V16HFmode, operands[6]);
20609 : operands[5] = GEN_INT (reg_mask);
20610 : }
20611 : #undef DONE
20612 : #undef FAIL
20613 : static const uint8_t expand_encoding[] = {
20614 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20615 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20616 : 0x25
20617 : };
20618 : return complete_seq (expand_encoding, operands);
20619 : }
20620 :
20621 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20622 : extern rtx_insn *gen_split_2113 (rtx_insn *, rtx *);
20623 : rtx_insn *
20624 : gen_split_2113 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20625 : {
20626 : if (dump_file)
20627 : fprintf (dump_file, "Splitting with gen_split_2113 (sse.md:14142)\n");
20628 : start_sequence ();
20629 : #define FAIL return (end_sequence (), nullptr)
20630 : #define DONE return end_sequence ()
20631 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20632 : {
20633 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20634 : int reg6 = 0xF0;
20635 : int reg2 = 0xCC;
20636 : int reg1 = 0xAA;
20637 : int reg3 = 0;
20638 : int reg4 = 0;
20639 : int reg_mask, tmp1, tmp2;
20640 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20641 : STRIP_UNARY (operands[4])))
20642 : {
20643 : reg4 = reg1;
20644 : reg3 = reg6;
20645 : operands[6] = operands[3];
20646 : }
20647 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20648 : STRIP_UNARY (operands[4])))
20649 : {
20650 : reg4 = reg2;
20651 : reg3 = reg6;
20652 : operands[6] = operands[3];
20653 : }
20654 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20655 : STRIP_UNARY (operands[3])))
20656 : {
20657 : reg4 = reg6;
20658 : reg3 = reg1;
20659 : operands[6] = operands[4];
20660 : }
20661 : else
20662 : {
20663 : reg4 = reg6;
20664 : reg3 = reg2;
20665 : operands[6] = operands[4];
20666 : }
20667 :
20668 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20669 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20670 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20671 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20672 :
20673 : tmp1 = reg1 & reg2;
20674 : tmp2 = reg3 & reg4;
20675 : reg_mask = tmp1 ^ tmp2;
20676 : reg_mask &= 0xFF;
20677 :
20678 : operands[1] = STRIP_UNARY (operands[1]);
20679 : operands[2] = STRIP_UNARY (operands[2]);
20680 : operands[6] = STRIP_UNARY (operands[6]);
20681 : if (!register_operand (operands[2], V8HFmode))
20682 : operands[2] = force_reg (V8HFmode, operands[2]);
20683 : if (!register_operand (operands[6], V8HFmode))
20684 : operands[6] = force_reg (V8HFmode, operands[6]);
20685 : operands[5] = GEN_INT (reg_mask);
20686 : }
20687 : #undef DONE
20688 : #undef FAIL
20689 : static const uint8_t expand_encoding[] = {
20690 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20691 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20692 : 0x25
20693 : };
20694 : return complete_seq (expand_encoding, operands);
20695 : }
20696 :
20697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20698 : extern rtx_insn *gen_split_2123 (rtx_insn *, rtx *);
20699 : rtx_insn *
20700 : gen_split_2123 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20701 : {
20702 : if (dump_file)
20703 : fprintf (dump_file, "Splitting with gen_split_2123 (sse.md:14142)\n");
20704 : start_sequence ();
20705 : #define FAIL return (end_sequence (), nullptr)
20706 : #define DONE return end_sequence ()
20707 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20708 : {
20709 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20710 : int reg6 = 0xF0;
20711 : int reg2 = 0xCC;
20712 : int reg1 = 0xAA;
20713 : int reg3 = 0;
20714 : int reg4 = 0;
20715 : int reg_mask, tmp1, tmp2;
20716 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20717 : STRIP_UNARY (operands[4])))
20718 : {
20719 : reg4 = reg1;
20720 : reg3 = reg6;
20721 : operands[6] = operands[3];
20722 : }
20723 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20724 : STRIP_UNARY (operands[4])))
20725 : {
20726 : reg4 = reg2;
20727 : reg3 = reg6;
20728 : operands[6] = operands[3];
20729 : }
20730 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20731 : STRIP_UNARY (operands[3])))
20732 : {
20733 : reg4 = reg6;
20734 : reg3 = reg1;
20735 : operands[6] = operands[4];
20736 : }
20737 : else
20738 : {
20739 : reg4 = reg6;
20740 : reg3 = reg2;
20741 : operands[6] = operands[4];
20742 : }
20743 :
20744 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20745 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20746 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20747 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20748 :
20749 : tmp1 = reg1 | reg2;
20750 : tmp2 = reg3 | reg4;
20751 : reg_mask = tmp1 & tmp2;
20752 : reg_mask &= 0xFF;
20753 :
20754 : operands[1] = STRIP_UNARY (operands[1]);
20755 : operands[2] = STRIP_UNARY (operands[2]);
20756 : operands[6] = STRIP_UNARY (operands[6]);
20757 : if (!register_operand (operands[2], V8HFmode))
20758 : operands[2] = force_reg (V8HFmode, operands[2]);
20759 : if (!register_operand (operands[6], V8HFmode))
20760 : operands[6] = force_reg (V8HFmode, operands[6]);
20761 : operands[5] = GEN_INT (reg_mask);
20762 : }
20763 : #undef DONE
20764 : #undef FAIL
20765 : static const uint8_t expand_encoding[] = {
20766 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20767 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20768 : 0x25
20769 : };
20770 : return complete_seq (expand_encoding, operands);
20771 : }
20772 :
20773 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20774 : extern rtx_insn *gen_split_2133 (rtx_insn *, rtx *);
20775 : rtx_insn *
20776 : gen_split_2133 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20777 : {
20778 : if (dump_file)
20779 : fprintf (dump_file, "Splitting with gen_split_2133 (sse.md:14142)\n");
20780 : start_sequence ();
20781 : #define FAIL return (end_sequence (), nullptr)
20782 : #define DONE return end_sequence ()
20783 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20784 : {
20785 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20786 : int reg6 = 0xF0;
20787 : int reg2 = 0xCC;
20788 : int reg1 = 0xAA;
20789 : int reg3 = 0;
20790 : int reg4 = 0;
20791 : int reg_mask, tmp1, tmp2;
20792 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20793 : STRIP_UNARY (operands[4])))
20794 : {
20795 : reg4 = reg1;
20796 : reg3 = reg6;
20797 : operands[6] = operands[3];
20798 : }
20799 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20800 : STRIP_UNARY (operands[4])))
20801 : {
20802 : reg4 = reg2;
20803 : reg3 = reg6;
20804 : operands[6] = operands[3];
20805 : }
20806 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20807 : STRIP_UNARY (operands[3])))
20808 : {
20809 : reg4 = reg6;
20810 : reg3 = reg1;
20811 : operands[6] = operands[4];
20812 : }
20813 : else
20814 : {
20815 : reg4 = reg6;
20816 : reg3 = reg2;
20817 : operands[6] = operands[4];
20818 : }
20819 :
20820 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20821 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20822 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20823 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20824 :
20825 : tmp1 = reg1 ^ reg2;
20826 : tmp2 = reg3 | reg4;
20827 : reg_mask = tmp1 | tmp2;
20828 : reg_mask &= 0xFF;
20829 :
20830 : operands[1] = STRIP_UNARY (operands[1]);
20831 : operands[2] = STRIP_UNARY (operands[2]);
20832 : operands[6] = STRIP_UNARY (operands[6]);
20833 : if (!register_operand (operands[2], V8HFmode))
20834 : operands[2] = force_reg (V8HFmode, operands[2]);
20835 : if (!register_operand (operands[6], V8HFmode))
20836 : operands[6] = force_reg (V8HFmode, operands[6]);
20837 : operands[5] = GEN_INT (reg_mask);
20838 : }
20839 : #undef DONE
20840 : #undef FAIL
20841 : static const uint8_t expand_encoding[] = {
20842 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20843 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20844 : 0x25
20845 : };
20846 : return complete_seq (expand_encoding, operands);
20847 : }
20848 :
20849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20850 : extern rtx_insn *gen_split_2143 (rtx_insn *, rtx *);
20851 : rtx_insn *
20852 : gen_split_2143 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20853 : {
20854 : if (dump_file)
20855 : fprintf (dump_file, "Splitting with gen_split_2143 (sse.md:14142)\n");
20856 : start_sequence ();
20857 : #define FAIL return (end_sequence (), nullptr)
20858 : #define DONE return end_sequence ()
20859 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20860 : {
20861 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20862 : int reg6 = 0xF0;
20863 : int reg2 = 0xCC;
20864 : int reg1 = 0xAA;
20865 : int reg3 = 0;
20866 : int reg4 = 0;
20867 : int reg_mask, tmp1, tmp2;
20868 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20869 : STRIP_UNARY (operands[4])))
20870 : {
20871 : reg4 = reg1;
20872 : reg3 = reg6;
20873 : operands[6] = operands[3];
20874 : }
20875 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20876 : STRIP_UNARY (operands[4])))
20877 : {
20878 : reg4 = reg2;
20879 : reg3 = reg6;
20880 : operands[6] = operands[3];
20881 : }
20882 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20883 : STRIP_UNARY (operands[3])))
20884 : {
20885 : reg4 = reg6;
20886 : reg3 = reg1;
20887 : operands[6] = operands[4];
20888 : }
20889 : else
20890 : {
20891 : reg4 = reg6;
20892 : reg3 = reg2;
20893 : operands[6] = operands[4];
20894 : }
20895 :
20896 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20897 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20898 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20899 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20900 :
20901 : tmp1 = reg1 & reg2;
20902 : tmp2 = reg3 | reg4;
20903 : reg_mask = tmp1 ^ tmp2;
20904 : reg_mask &= 0xFF;
20905 :
20906 : operands[1] = STRIP_UNARY (operands[1]);
20907 : operands[2] = STRIP_UNARY (operands[2]);
20908 : operands[6] = STRIP_UNARY (operands[6]);
20909 : if (!register_operand (operands[2], V32BFmode))
20910 : operands[2] = force_reg (V32BFmode, operands[2]);
20911 : if (!register_operand (operands[6], V32BFmode))
20912 : operands[6] = force_reg (V32BFmode, operands[6]);
20913 : operands[5] = GEN_INT (reg_mask);
20914 : }
20915 : #undef DONE
20916 : #undef FAIL
20917 : static const uint8_t expand_encoding[] = {
20918 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20919 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20920 : 0x25
20921 : };
20922 : return complete_seq (expand_encoding, operands);
20923 : }
20924 :
20925 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20926 : extern rtx_insn *gen_split_2153 (rtx_insn *, rtx *);
20927 : rtx_insn *
20928 : gen_split_2153 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20929 : {
20930 : if (dump_file)
20931 : fprintf (dump_file, "Splitting with gen_split_2153 (sse.md:14142)\n");
20932 : start_sequence ();
20933 : #define FAIL return (end_sequence (), nullptr)
20934 : #define DONE return end_sequence ()
20935 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20936 : {
20937 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20938 : int reg6 = 0xF0;
20939 : int reg2 = 0xCC;
20940 : int reg1 = 0xAA;
20941 : int reg3 = 0;
20942 : int reg4 = 0;
20943 : int reg_mask, tmp1, tmp2;
20944 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20945 : STRIP_UNARY (operands[4])))
20946 : {
20947 : reg4 = reg1;
20948 : reg3 = reg6;
20949 : operands[6] = operands[3];
20950 : }
20951 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20952 : STRIP_UNARY (operands[4])))
20953 : {
20954 : reg4 = reg2;
20955 : reg3 = reg6;
20956 : operands[6] = operands[3];
20957 : }
20958 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20959 : STRIP_UNARY (operands[3])))
20960 : {
20961 : reg4 = reg6;
20962 : reg3 = reg1;
20963 : operands[6] = operands[4];
20964 : }
20965 : else
20966 : {
20967 : reg4 = reg6;
20968 : reg3 = reg2;
20969 : operands[6] = operands[4];
20970 : }
20971 :
20972 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20973 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20974 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20975 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20976 :
20977 : tmp1 = reg1 | reg2;
20978 : tmp2 = reg3 ^ reg4;
20979 : reg_mask = tmp1 & tmp2;
20980 : reg_mask &= 0xFF;
20981 :
20982 : operands[1] = STRIP_UNARY (operands[1]);
20983 : operands[2] = STRIP_UNARY (operands[2]);
20984 : operands[6] = STRIP_UNARY (operands[6]);
20985 : if (!register_operand (operands[2], V32BFmode))
20986 : operands[2] = force_reg (V32BFmode, operands[2]);
20987 : if (!register_operand (operands[6], V32BFmode))
20988 : operands[6] = force_reg (V32BFmode, operands[6]);
20989 : operands[5] = GEN_INT (reg_mask);
20990 : }
20991 : #undef DONE
20992 : #undef FAIL
20993 : static const uint8_t expand_encoding[] = {
20994 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20995 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20996 : 0x25
20997 : };
20998 : return complete_seq (expand_encoding, operands);
20999 : }
21000 :
21001 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21002 : extern rtx_insn *gen_split_2163 (rtx_insn *, rtx *);
21003 : rtx_insn *
21004 : gen_split_2163 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21005 : {
21006 : if (dump_file)
21007 : fprintf (dump_file, "Splitting with gen_split_2163 (sse.md:14142)\n");
21008 : start_sequence ();
21009 : #define FAIL return (end_sequence (), nullptr)
21010 : #define DONE return end_sequence ()
21011 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21012 : {
21013 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21014 : int reg6 = 0xF0;
21015 : int reg2 = 0xCC;
21016 : int reg1 = 0xAA;
21017 : int reg3 = 0;
21018 : int reg4 = 0;
21019 : int reg_mask, tmp1, tmp2;
21020 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21021 : STRIP_UNARY (operands[4])))
21022 : {
21023 : reg4 = reg1;
21024 : reg3 = reg6;
21025 : operands[6] = operands[3];
21026 : }
21027 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21028 : STRIP_UNARY (operands[4])))
21029 : {
21030 : reg4 = reg2;
21031 : reg3 = reg6;
21032 : operands[6] = operands[3];
21033 : }
21034 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21035 : STRIP_UNARY (operands[3])))
21036 : {
21037 : reg4 = reg6;
21038 : reg3 = reg1;
21039 : operands[6] = operands[4];
21040 : }
21041 : else
21042 : {
21043 : reg4 = reg6;
21044 : reg3 = reg2;
21045 : operands[6] = operands[4];
21046 : }
21047 :
21048 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21049 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21050 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21051 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21052 :
21053 : tmp1 = reg1 ^ reg2;
21054 : tmp2 = reg3 ^ reg4;
21055 : reg_mask = tmp1 | tmp2;
21056 : reg_mask &= 0xFF;
21057 :
21058 : operands[1] = STRIP_UNARY (operands[1]);
21059 : operands[2] = STRIP_UNARY (operands[2]);
21060 : operands[6] = STRIP_UNARY (operands[6]);
21061 : if (!register_operand (operands[2], V32BFmode))
21062 : operands[2] = force_reg (V32BFmode, operands[2]);
21063 : if (!register_operand (operands[6], V32BFmode))
21064 : operands[6] = force_reg (V32BFmode, operands[6]);
21065 : operands[5] = GEN_INT (reg_mask);
21066 : }
21067 : #undef DONE
21068 : #undef FAIL
21069 : static const uint8_t expand_encoding[] = {
21070 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
21071 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21072 : 0x25
21073 : };
21074 : return complete_seq (expand_encoding, operands);
21075 : }
21076 :
21077 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21078 : extern rtx_insn *gen_split_2173 (rtx_insn *, rtx *);
21079 : rtx_insn *
21080 : gen_split_2173 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21081 : {
21082 : if (dump_file)
21083 : fprintf (dump_file, "Splitting with gen_split_2173 (sse.md:14142)\n");
21084 : start_sequence ();
21085 : #define FAIL return (end_sequence (), nullptr)
21086 : #define DONE return end_sequence ()
21087 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21088 : {
21089 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21090 : int reg6 = 0xF0;
21091 : int reg2 = 0xCC;
21092 : int reg1 = 0xAA;
21093 : int reg3 = 0;
21094 : int reg4 = 0;
21095 : int reg_mask, tmp1, tmp2;
21096 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21097 : STRIP_UNARY (operands[4])))
21098 : {
21099 : reg4 = reg1;
21100 : reg3 = reg6;
21101 : operands[6] = operands[3];
21102 : }
21103 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21104 : STRIP_UNARY (operands[4])))
21105 : {
21106 : reg4 = reg2;
21107 : reg3 = reg6;
21108 : operands[6] = operands[3];
21109 : }
21110 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21111 : STRIP_UNARY (operands[3])))
21112 : {
21113 : reg4 = reg6;
21114 : reg3 = reg1;
21115 : operands[6] = operands[4];
21116 : }
21117 : else
21118 : {
21119 : reg4 = reg6;
21120 : reg3 = reg2;
21121 : operands[6] = operands[4];
21122 : }
21123 :
21124 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21125 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21126 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21127 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21128 :
21129 : tmp1 = reg1 & reg2;
21130 : tmp2 = reg3 ^ reg4;
21131 : reg_mask = tmp1 ^ tmp2;
21132 : reg_mask &= 0xFF;
21133 :
21134 : operands[1] = STRIP_UNARY (operands[1]);
21135 : operands[2] = STRIP_UNARY (operands[2]);
21136 : operands[6] = STRIP_UNARY (operands[6]);
21137 : if (!register_operand (operands[2], V16BFmode))
21138 : operands[2] = force_reg (V16BFmode, operands[2]);
21139 : if (!register_operand (operands[6], V16BFmode))
21140 : operands[6] = force_reg (V16BFmode, operands[6]);
21141 : operands[5] = GEN_INT (reg_mask);
21142 : }
21143 : #undef DONE
21144 : #undef FAIL
21145 : static const uint8_t expand_encoding[] = {
21146 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21147 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21148 : 0x25
21149 : };
21150 : return complete_seq (expand_encoding, operands);
21151 : }
21152 :
21153 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21154 : extern rtx_insn *gen_split_2183 (rtx_insn *, rtx *);
21155 : rtx_insn *
21156 : gen_split_2183 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21157 : {
21158 : if (dump_file)
21159 : fprintf (dump_file, "Splitting with gen_split_2183 (sse.md:14142)\n");
21160 : start_sequence ();
21161 : #define FAIL return (end_sequence (), nullptr)
21162 : #define DONE return end_sequence ()
21163 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21164 : {
21165 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21166 : int reg6 = 0xF0;
21167 : int reg2 = 0xCC;
21168 : int reg1 = 0xAA;
21169 : int reg3 = 0;
21170 : int reg4 = 0;
21171 : int reg_mask, tmp1, tmp2;
21172 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21173 : STRIP_UNARY (operands[4])))
21174 : {
21175 : reg4 = reg1;
21176 : reg3 = reg6;
21177 : operands[6] = operands[3];
21178 : }
21179 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21180 : STRIP_UNARY (operands[4])))
21181 : {
21182 : reg4 = reg2;
21183 : reg3 = reg6;
21184 : operands[6] = operands[3];
21185 : }
21186 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21187 : STRIP_UNARY (operands[3])))
21188 : {
21189 : reg4 = reg6;
21190 : reg3 = reg1;
21191 : operands[6] = operands[4];
21192 : }
21193 : else
21194 : {
21195 : reg4 = reg6;
21196 : reg3 = reg2;
21197 : operands[6] = operands[4];
21198 : }
21199 :
21200 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21201 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21202 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21203 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21204 :
21205 : tmp1 = reg1 ^ reg2;
21206 : tmp2 = reg3 & reg4;
21207 : reg_mask = tmp1 & tmp2;
21208 : reg_mask &= 0xFF;
21209 :
21210 : operands[1] = STRIP_UNARY (operands[1]);
21211 : operands[2] = STRIP_UNARY (operands[2]);
21212 : operands[6] = STRIP_UNARY (operands[6]);
21213 : if (!register_operand (operands[2], V16BFmode))
21214 : operands[2] = force_reg (V16BFmode, operands[2]);
21215 : if (!register_operand (operands[6], V16BFmode))
21216 : operands[6] = force_reg (V16BFmode, operands[6]);
21217 : operands[5] = GEN_INT (reg_mask);
21218 : }
21219 : #undef DONE
21220 : #undef FAIL
21221 : static const uint8_t expand_encoding[] = {
21222 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21223 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21224 : 0x25
21225 : };
21226 : return complete_seq (expand_encoding, operands);
21227 : }
21228 :
21229 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21230 : extern rtx_insn *gen_split_2193 (rtx_insn *, rtx *);
21231 : rtx_insn *
21232 : gen_split_2193 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21233 : {
21234 : if (dump_file)
21235 : fprintf (dump_file, "Splitting with gen_split_2193 (sse.md:14142)\n");
21236 : start_sequence ();
21237 : #define FAIL return (end_sequence (), nullptr)
21238 : #define DONE return end_sequence ()
21239 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21240 : {
21241 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21242 : int reg6 = 0xF0;
21243 : int reg2 = 0xCC;
21244 : int reg1 = 0xAA;
21245 : int reg3 = 0;
21246 : int reg4 = 0;
21247 : int reg_mask, tmp1, tmp2;
21248 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21249 : STRIP_UNARY (operands[4])))
21250 : {
21251 : reg4 = reg1;
21252 : reg3 = reg6;
21253 : operands[6] = operands[3];
21254 : }
21255 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21256 : STRIP_UNARY (operands[4])))
21257 : {
21258 : reg4 = reg2;
21259 : reg3 = reg6;
21260 : operands[6] = operands[3];
21261 : }
21262 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21263 : STRIP_UNARY (operands[3])))
21264 : {
21265 : reg4 = reg6;
21266 : reg3 = reg1;
21267 : operands[6] = operands[4];
21268 : }
21269 : else
21270 : {
21271 : reg4 = reg6;
21272 : reg3 = reg2;
21273 : operands[6] = operands[4];
21274 : }
21275 :
21276 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21277 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21278 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21279 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21280 :
21281 : tmp1 = reg1 & reg2;
21282 : tmp2 = reg3 & reg4;
21283 : reg_mask = tmp1 | tmp2;
21284 : reg_mask &= 0xFF;
21285 :
21286 : operands[1] = STRIP_UNARY (operands[1]);
21287 : operands[2] = STRIP_UNARY (operands[2]);
21288 : operands[6] = STRIP_UNARY (operands[6]);
21289 : if (!register_operand (operands[2], V8BFmode))
21290 : operands[2] = force_reg (V8BFmode, operands[2]);
21291 : if (!register_operand (operands[6], V8BFmode))
21292 : operands[6] = force_reg (V8BFmode, operands[6]);
21293 : operands[5] = GEN_INT (reg_mask);
21294 : }
21295 : #undef DONE
21296 : #undef FAIL
21297 : static const uint8_t expand_encoding[] = {
21298 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21299 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21300 : 0x25
21301 : };
21302 : return complete_seq (expand_encoding, operands);
21303 : }
21304 :
21305 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21306 : extern rtx_insn *gen_split_2203 (rtx_insn *, rtx *);
21307 : rtx_insn *
21308 : gen_split_2203 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21309 : {
21310 : if (dump_file)
21311 : fprintf (dump_file, "Splitting with gen_split_2203 (sse.md:14142)\n");
21312 : start_sequence ();
21313 : #define FAIL return (end_sequence (), nullptr)
21314 : #define DONE return end_sequence ()
21315 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21316 : {
21317 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21318 : int reg6 = 0xF0;
21319 : int reg2 = 0xCC;
21320 : int reg1 = 0xAA;
21321 : int reg3 = 0;
21322 : int reg4 = 0;
21323 : int reg_mask, tmp1, tmp2;
21324 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21325 : STRIP_UNARY (operands[4])))
21326 : {
21327 : reg4 = reg1;
21328 : reg3 = reg6;
21329 : operands[6] = operands[3];
21330 : }
21331 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21332 : STRIP_UNARY (operands[4])))
21333 : {
21334 : reg4 = reg2;
21335 : reg3 = reg6;
21336 : operands[6] = operands[3];
21337 : }
21338 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21339 : STRIP_UNARY (operands[3])))
21340 : {
21341 : reg4 = reg6;
21342 : reg3 = reg1;
21343 : operands[6] = operands[4];
21344 : }
21345 : else
21346 : {
21347 : reg4 = reg6;
21348 : reg3 = reg2;
21349 : operands[6] = operands[4];
21350 : }
21351 :
21352 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21353 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21354 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21355 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21356 :
21357 : tmp1 = reg1 | reg2;
21358 : tmp2 = reg3 & reg4;
21359 : reg_mask = tmp1 ^ tmp2;
21360 : reg_mask &= 0xFF;
21361 :
21362 : operands[1] = STRIP_UNARY (operands[1]);
21363 : operands[2] = STRIP_UNARY (operands[2]);
21364 : operands[6] = STRIP_UNARY (operands[6]);
21365 : if (!register_operand (operands[2], V8BFmode))
21366 : operands[2] = force_reg (V8BFmode, operands[2]);
21367 : if (!register_operand (operands[6], V8BFmode))
21368 : operands[6] = force_reg (V8BFmode, operands[6]);
21369 : operands[5] = GEN_INT (reg_mask);
21370 : }
21371 : #undef DONE
21372 : #undef FAIL
21373 : static const uint8_t expand_encoding[] = {
21374 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21375 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21376 : 0x25
21377 : };
21378 : return complete_seq (expand_encoding, operands);
21379 : }
21380 :
21381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21382 : extern rtx_insn *gen_split_2213 (rtx_insn *, rtx *);
21383 : rtx_insn *
21384 : gen_split_2213 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21385 : {
21386 : if (dump_file)
21387 : fprintf (dump_file, "Splitting with gen_split_2213 (sse.md:14142)\n");
21388 : start_sequence ();
21389 : #define FAIL return (end_sequence (), nullptr)
21390 : #define DONE return end_sequence ()
21391 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21392 : {
21393 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21394 : int reg6 = 0xF0;
21395 : int reg2 = 0xCC;
21396 : int reg1 = 0xAA;
21397 : int reg3 = 0;
21398 : int reg4 = 0;
21399 : int reg_mask, tmp1, tmp2;
21400 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21401 : STRIP_UNARY (operands[4])))
21402 : {
21403 : reg4 = reg1;
21404 : reg3 = reg6;
21405 : operands[6] = operands[3];
21406 : }
21407 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21408 : STRIP_UNARY (operands[4])))
21409 : {
21410 : reg4 = reg2;
21411 : reg3 = reg6;
21412 : operands[6] = operands[3];
21413 : }
21414 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21415 : STRIP_UNARY (operands[3])))
21416 : {
21417 : reg4 = reg6;
21418 : reg3 = reg1;
21419 : operands[6] = operands[4];
21420 : }
21421 : else
21422 : {
21423 : reg4 = reg6;
21424 : reg3 = reg2;
21425 : operands[6] = operands[4];
21426 : }
21427 :
21428 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21429 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21430 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21431 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21432 :
21433 : tmp1 = reg1 ^ reg2;
21434 : tmp2 = reg3 | reg4;
21435 : reg_mask = tmp1 & tmp2;
21436 : reg_mask &= 0xFF;
21437 :
21438 : operands[1] = STRIP_UNARY (operands[1]);
21439 : operands[2] = STRIP_UNARY (operands[2]);
21440 : operands[6] = STRIP_UNARY (operands[6]);
21441 : if (!register_operand (operands[2], V8BFmode))
21442 : operands[2] = force_reg (V8BFmode, operands[2]);
21443 : if (!register_operand (operands[6], V8BFmode))
21444 : operands[6] = force_reg (V8BFmode, operands[6]);
21445 : operands[5] = GEN_INT (reg_mask);
21446 : }
21447 : #undef DONE
21448 : #undef FAIL
21449 : static const uint8_t expand_encoding[] = {
21450 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21451 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21452 : 0x25
21453 : };
21454 : return complete_seq (expand_encoding, operands);
21455 : }
21456 :
21457 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21458 : extern rtx_insn *gen_split_2223 (rtx_insn *, rtx *);
21459 : rtx_insn *
21460 : gen_split_2223 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21461 : {
21462 : if (dump_file)
21463 : fprintf (dump_file, "Splitting with gen_split_2223 (sse.md:14142)\n");
21464 : start_sequence ();
21465 : #define FAIL return (end_sequence (), nullptr)
21466 : #define DONE return end_sequence ()
21467 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21468 : {
21469 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21470 : int reg6 = 0xF0;
21471 : int reg2 = 0xCC;
21472 : int reg1 = 0xAA;
21473 : int reg3 = 0;
21474 : int reg4 = 0;
21475 : int reg_mask, tmp1, tmp2;
21476 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21477 : STRIP_UNARY (operands[4])))
21478 : {
21479 : reg4 = reg1;
21480 : reg3 = reg6;
21481 : operands[6] = operands[3];
21482 : }
21483 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21484 : STRIP_UNARY (operands[4])))
21485 : {
21486 : reg4 = reg2;
21487 : reg3 = reg6;
21488 : operands[6] = operands[3];
21489 : }
21490 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21491 : STRIP_UNARY (operands[3])))
21492 : {
21493 : reg4 = reg6;
21494 : reg3 = reg1;
21495 : operands[6] = operands[4];
21496 : }
21497 : else
21498 : {
21499 : reg4 = reg6;
21500 : reg3 = reg2;
21501 : operands[6] = operands[4];
21502 : }
21503 :
21504 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21505 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21506 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21507 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21508 :
21509 : tmp1 = reg1 & reg2;
21510 : tmp2 = reg3 | reg4;
21511 : reg_mask = tmp1 | tmp2;
21512 : reg_mask &= 0xFF;
21513 :
21514 : operands[1] = STRIP_UNARY (operands[1]);
21515 : operands[2] = STRIP_UNARY (operands[2]);
21516 : operands[6] = STRIP_UNARY (operands[6]);
21517 : if (!register_operand (operands[2], V16SFmode))
21518 : operands[2] = force_reg (V16SFmode, operands[2]);
21519 : if (!register_operand (operands[6], V16SFmode))
21520 : operands[6] = force_reg (V16SFmode, operands[6]);
21521 : operands[5] = GEN_INT (reg_mask);
21522 : }
21523 : #undef DONE
21524 : #undef FAIL
21525 : static const uint8_t expand_encoding[] = {
21526 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21527 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21528 : 0x25
21529 : };
21530 : return complete_seq (expand_encoding, operands);
21531 : }
21532 :
21533 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21534 : extern rtx_insn *gen_split_2233 (rtx_insn *, rtx *);
21535 : rtx_insn *
21536 : gen_split_2233 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21537 : {
21538 : if (dump_file)
21539 : fprintf (dump_file, "Splitting with gen_split_2233 (sse.md:14142)\n");
21540 : start_sequence ();
21541 : #define FAIL return (end_sequence (), nullptr)
21542 : #define DONE return end_sequence ()
21543 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21544 : {
21545 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21546 : int reg6 = 0xF0;
21547 : int reg2 = 0xCC;
21548 : int reg1 = 0xAA;
21549 : int reg3 = 0;
21550 : int reg4 = 0;
21551 : int reg_mask, tmp1, tmp2;
21552 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21553 : STRIP_UNARY (operands[4])))
21554 : {
21555 : reg4 = reg1;
21556 : reg3 = reg6;
21557 : operands[6] = operands[3];
21558 : }
21559 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21560 : STRIP_UNARY (operands[4])))
21561 : {
21562 : reg4 = reg2;
21563 : reg3 = reg6;
21564 : operands[6] = operands[3];
21565 : }
21566 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21567 : STRIP_UNARY (operands[3])))
21568 : {
21569 : reg4 = reg6;
21570 : reg3 = reg1;
21571 : operands[6] = operands[4];
21572 : }
21573 : else
21574 : {
21575 : reg4 = reg6;
21576 : reg3 = reg2;
21577 : operands[6] = operands[4];
21578 : }
21579 :
21580 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21581 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21582 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21583 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21584 :
21585 : tmp1 = reg1 | reg2;
21586 : tmp2 = reg3 | reg4;
21587 : reg_mask = tmp1 ^ tmp2;
21588 : reg_mask &= 0xFF;
21589 :
21590 : operands[1] = STRIP_UNARY (operands[1]);
21591 : operands[2] = STRIP_UNARY (operands[2]);
21592 : operands[6] = STRIP_UNARY (operands[6]);
21593 : if (!register_operand (operands[2], V16SFmode))
21594 : operands[2] = force_reg (V16SFmode, operands[2]);
21595 : if (!register_operand (operands[6], V16SFmode))
21596 : operands[6] = force_reg (V16SFmode, operands[6]);
21597 : operands[5] = GEN_INT (reg_mask);
21598 : }
21599 : #undef DONE
21600 : #undef FAIL
21601 : static const uint8_t expand_encoding[] = {
21602 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21603 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21604 : 0x25
21605 : };
21606 : return complete_seq (expand_encoding, operands);
21607 : }
21608 :
21609 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21610 : extern rtx_insn *gen_split_2243 (rtx_insn *, rtx *);
21611 : rtx_insn *
21612 : gen_split_2243 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21613 : {
21614 : if (dump_file)
21615 : fprintf (dump_file, "Splitting with gen_split_2243 (sse.md:14142)\n");
21616 : start_sequence ();
21617 : #define FAIL return (end_sequence (), nullptr)
21618 : #define DONE return end_sequence ()
21619 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21620 : {
21621 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21622 : int reg6 = 0xF0;
21623 : int reg2 = 0xCC;
21624 : int reg1 = 0xAA;
21625 : int reg3 = 0;
21626 : int reg4 = 0;
21627 : int reg_mask, tmp1, tmp2;
21628 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21629 : STRIP_UNARY (operands[4])))
21630 : {
21631 : reg4 = reg1;
21632 : reg3 = reg6;
21633 : operands[6] = operands[3];
21634 : }
21635 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21636 : STRIP_UNARY (operands[4])))
21637 : {
21638 : reg4 = reg2;
21639 : reg3 = reg6;
21640 : operands[6] = operands[3];
21641 : }
21642 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21643 : STRIP_UNARY (operands[3])))
21644 : {
21645 : reg4 = reg6;
21646 : reg3 = reg1;
21647 : operands[6] = operands[4];
21648 : }
21649 : else
21650 : {
21651 : reg4 = reg6;
21652 : reg3 = reg2;
21653 : operands[6] = operands[4];
21654 : }
21655 :
21656 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21657 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21658 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21659 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21660 :
21661 : tmp1 = reg1 ^ reg2;
21662 : tmp2 = reg3 ^ reg4;
21663 : reg_mask = tmp1 & tmp2;
21664 : reg_mask &= 0xFF;
21665 :
21666 : operands[1] = STRIP_UNARY (operands[1]);
21667 : operands[2] = STRIP_UNARY (operands[2]);
21668 : operands[6] = STRIP_UNARY (operands[6]);
21669 : if (!register_operand (operands[2], V16SFmode))
21670 : operands[2] = force_reg (V16SFmode, operands[2]);
21671 : if (!register_operand (operands[6], V16SFmode))
21672 : operands[6] = force_reg (V16SFmode, operands[6]);
21673 : operands[5] = GEN_INT (reg_mask);
21674 : }
21675 : #undef DONE
21676 : #undef FAIL
21677 : static const uint8_t expand_encoding[] = {
21678 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21679 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21680 : 0x25
21681 : };
21682 : return complete_seq (expand_encoding, operands);
21683 : }
21684 :
21685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21686 : extern rtx_insn *gen_split_2253 (rtx_insn *, rtx *);
21687 : rtx_insn *
21688 : gen_split_2253 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21689 : {
21690 : if (dump_file)
21691 : fprintf (dump_file, "Splitting with gen_split_2253 (sse.md:14142)\n");
21692 : start_sequence ();
21693 : #define FAIL return (end_sequence (), nullptr)
21694 : #define DONE return end_sequence ()
21695 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21696 : {
21697 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21698 : int reg6 = 0xF0;
21699 : int reg2 = 0xCC;
21700 : int reg1 = 0xAA;
21701 : int reg3 = 0;
21702 : int reg4 = 0;
21703 : int reg_mask, tmp1, tmp2;
21704 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21705 : STRIP_UNARY (operands[4])))
21706 : {
21707 : reg4 = reg1;
21708 : reg3 = reg6;
21709 : operands[6] = operands[3];
21710 : }
21711 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21712 : STRIP_UNARY (operands[4])))
21713 : {
21714 : reg4 = reg2;
21715 : reg3 = reg6;
21716 : operands[6] = operands[3];
21717 : }
21718 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21719 : STRIP_UNARY (operands[3])))
21720 : {
21721 : reg4 = reg6;
21722 : reg3 = reg1;
21723 : operands[6] = operands[4];
21724 : }
21725 : else
21726 : {
21727 : reg4 = reg6;
21728 : reg3 = reg2;
21729 : operands[6] = operands[4];
21730 : }
21731 :
21732 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21733 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21734 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21735 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21736 :
21737 : tmp1 = reg1 & reg2;
21738 : tmp2 = reg3 ^ reg4;
21739 : reg_mask = tmp1 | tmp2;
21740 : reg_mask &= 0xFF;
21741 :
21742 : operands[1] = STRIP_UNARY (operands[1]);
21743 : operands[2] = STRIP_UNARY (operands[2]);
21744 : operands[6] = STRIP_UNARY (operands[6]);
21745 : if (!register_operand (operands[2], V8SFmode))
21746 : operands[2] = force_reg (V8SFmode, operands[2]);
21747 : if (!register_operand (operands[6], V8SFmode))
21748 : operands[6] = force_reg (V8SFmode, operands[6]);
21749 : operands[5] = GEN_INT (reg_mask);
21750 : }
21751 : #undef DONE
21752 : #undef FAIL
21753 : static const uint8_t expand_encoding[] = {
21754 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21755 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21756 : 0x25
21757 : };
21758 : return complete_seq (expand_encoding, operands);
21759 : }
21760 :
21761 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21762 : extern rtx_insn *gen_split_2263 (rtx_insn *, rtx *);
21763 : rtx_insn *
21764 : gen_split_2263 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21765 : {
21766 : if (dump_file)
21767 : fprintf (dump_file, "Splitting with gen_split_2263 (sse.md:14142)\n");
21768 : start_sequence ();
21769 : #define FAIL return (end_sequence (), nullptr)
21770 : #define DONE return end_sequence ()
21771 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21772 : {
21773 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21774 : int reg6 = 0xF0;
21775 : int reg2 = 0xCC;
21776 : int reg1 = 0xAA;
21777 : int reg3 = 0;
21778 : int reg4 = 0;
21779 : int reg_mask, tmp1, tmp2;
21780 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21781 : STRIP_UNARY (operands[4])))
21782 : {
21783 : reg4 = reg1;
21784 : reg3 = reg6;
21785 : operands[6] = operands[3];
21786 : }
21787 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21788 : STRIP_UNARY (operands[4])))
21789 : {
21790 : reg4 = reg2;
21791 : reg3 = reg6;
21792 : operands[6] = operands[3];
21793 : }
21794 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21795 : STRIP_UNARY (operands[3])))
21796 : {
21797 : reg4 = reg6;
21798 : reg3 = reg1;
21799 : operands[6] = operands[4];
21800 : }
21801 : else
21802 : {
21803 : reg4 = reg6;
21804 : reg3 = reg2;
21805 : operands[6] = operands[4];
21806 : }
21807 :
21808 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21809 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21810 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21811 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21812 :
21813 : tmp1 = reg1 | reg2;
21814 : tmp2 = reg3 ^ reg4;
21815 : reg_mask = tmp1 ^ tmp2;
21816 : reg_mask &= 0xFF;
21817 :
21818 : operands[1] = STRIP_UNARY (operands[1]);
21819 : operands[2] = STRIP_UNARY (operands[2]);
21820 : operands[6] = STRIP_UNARY (operands[6]);
21821 : if (!register_operand (operands[2], V8SFmode))
21822 : operands[2] = force_reg (V8SFmode, operands[2]);
21823 : if (!register_operand (operands[6], V8SFmode))
21824 : operands[6] = force_reg (V8SFmode, operands[6]);
21825 : operands[5] = GEN_INT (reg_mask);
21826 : }
21827 : #undef DONE
21828 : #undef FAIL
21829 : static const uint8_t expand_encoding[] = {
21830 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21831 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21832 : 0x25
21833 : };
21834 : return complete_seq (expand_encoding, operands);
21835 : }
21836 :
21837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21838 : extern rtx_insn *gen_split_2273 (rtx_insn *, rtx *);
21839 : rtx_insn *
21840 : gen_split_2273 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21841 : {
21842 : if (dump_file)
21843 : fprintf (dump_file, "Splitting with gen_split_2273 (sse.md:14142)\n");
21844 : start_sequence ();
21845 : #define FAIL return (end_sequence (), nullptr)
21846 : #define DONE return end_sequence ()
21847 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21848 : {
21849 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21850 : int reg6 = 0xF0;
21851 : int reg2 = 0xCC;
21852 : int reg1 = 0xAA;
21853 : int reg3 = 0;
21854 : int reg4 = 0;
21855 : int reg_mask, tmp1, tmp2;
21856 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21857 : STRIP_UNARY (operands[4])))
21858 : {
21859 : reg4 = reg1;
21860 : reg3 = reg6;
21861 : operands[6] = operands[3];
21862 : }
21863 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21864 : STRIP_UNARY (operands[4])))
21865 : {
21866 : reg4 = reg2;
21867 : reg3 = reg6;
21868 : operands[6] = operands[3];
21869 : }
21870 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21871 : STRIP_UNARY (operands[3])))
21872 : {
21873 : reg4 = reg6;
21874 : reg3 = reg1;
21875 : operands[6] = operands[4];
21876 : }
21877 : else
21878 : {
21879 : reg4 = reg6;
21880 : reg3 = reg2;
21881 : operands[6] = operands[4];
21882 : }
21883 :
21884 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21885 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21886 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21887 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21888 :
21889 : tmp1 = reg1 & reg2;
21890 : tmp2 = reg3 & reg4;
21891 : reg_mask = tmp1 & tmp2;
21892 : reg_mask &= 0xFF;
21893 :
21894 : operands[1] = STRIP_UNARY (operands[1]);
21895 : operands[2] = STRIP_UNARY (operands[2]);
21896 : operands[6] = STRIP_UNARY (operands[6]);
21897 : if (!register_operand (operands[2], V4SFmode))
21898 : operands[2] = force_reg (V4SFmode, operands[2]);
21899 : if (!register_operand (operands[6], V4SFmode))
21900 : operands[6] = force_reg (V4SFmode, operands[6]);
21901 : operands[5] = GEN_INT (reg_mask);
21902 : }
21903 : #undef DONE
21904 : #undef FAIL
21905 : static const uint8_t expand_encoding[] = {
21906 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
21907 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21908 : 0x25
21909 : };
21910 : return complete_seq (expand_encoding, operands);
21911 : }
21912 :
21913 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21914 : extern rtx_insn *gen_split_2283 (rtx_insn *, rtx *);
21915 : rtx_insn *
21916 : gen_split_2283 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21917 : {
21918 : if (dump_file)
21919 : fprintf (dump_file, "Splitting with gen_split_2283 (sse.md:14142)\n");
21920 : start_sequence ();
21921 : #define FAIL return (end_sequence (), nullptr)
21922 : #define DONE return end_sequence ()
21923 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21924 : {
21925 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21926 : int reg6 = 0xF0;
21927 : int reg2 = 0xCC;
21928 : int reg1 = 0xAA;
21929 : int reg3 = 0;
21930 : int reg4 = 0;
21931 : int reg_mask, tmp1, tmp2;
21932 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21933 : STRIP_UNARY (operands[4])))
21934 : {
21935 : reg4 = reg1;
21936 : reg3 = reg6;
21937 : operands[6] = operands[3];
21938 : }
21939 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21940 : STRIP_UNARY (operands[4])))
21941 : {
21942 : reg4 = reg2;
21943 : reg3 = reg6;
21944 : operands[6] = operands[3];
21945 : }
21946 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21947 : STRIP_UNARY (operands[3])))
21948 : {
21949 : reg4 = reg6;
21950 : reg3 = reg1;
21951 : operands[6] = operands[4];
21952 : }
21953 : else
21954 : {
21955 : reg4 = reg6;
21956 : reg3 = reg2;
21957 : operands[6] = operands[4];
21958 : }
21959 :
21960 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21961 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21962 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21963 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21964 :
21965 : tmp1 = reg1 | reg2;
21966 : tmp2 = reg3 & reg4;
21967 : reg_mask = tmp1 | tmp2;
21968 : reg_mask &= 0xFF;
21969 :
21970 : operands[1] = STRIP_UNARY (operands[1]);
21971 : operands[2] = STRIP_UNARY (operands[2]);
21972 : operands[6] = STRIP_UNARY (operands[6]);
21973 : if (!register_operand (operands[2], V4SFmode))
21974 : operands[2] = force_reg (V4SFmode, operands[2]);
21975 : if (!register_operand (operands[6], V4SFmode))
21976 : operands[6] = force_reg (V4SFmode, operands[6]);
21977 : operands[5] = GEN_INT (reg_mask);
21978 : }
21979 : #undef DONE
21980 : #undef FAIL
21981 : static const uint8_t expand_encoding[] = {
21982 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
21983 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21984 : 0x25
21985 : };
21986 : return complete_seq (expand_encoding, operands);
21987 : }
21988 :
21989 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21990 : extern rtx_insn *gen_split_2293 (rtx_insn *, rtx *);
21991 : rtx_insn *
21992 : gen_split_2293 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21993 : {
21994 : if (dump_file)
21995 : fprintf (dump_file, "Splitting with gen_split_2293 (sse.md:14142)\n");
21996 : start_sequence ();
21997 : #define FAIL return (end_sequence (), nullptr)
21998 : #define DONE return end_sequence ()
21999 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22000 : {
22001 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22002 : int reg6 = 0xF0;
22003 : int reg2 = 0xCC;
22004 : int reg1 = 0xAA;
22005 : int reg3 = 0;
22006 : int reg4 = 0;
22007 : int reg_mask, tmp1, tmp2;
22008 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22009 : STRIP_UNARY (operands[4])))
22010 : {
22011 : reg4 = reg1;
22012 : reg3 = reg6;
22013 : operands[6] = operands[3];
22014 : }
22015 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22016 : STRIP_UNARY (operands[4])))
22017 : {
22018 : reg4 = reg2;
22019 : reg3 = reg6;
22020 : operands[6] = operands[3];
22021 : }
22022 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22023 : STRIP_UNARY (operands[3])))
22024 : {
22025 : reg4 = reg6;
22026 : reg3 = reg1;
22027 : operands[6] = operands[4];
22028 : }
22029 : else
22030 : {
22031 : reg4 = reg6;
22032 : reg3 = reg2;
22033 : operands[6] = operands[4];
22034 : }
22035 :
22036 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22037 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22038 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22039 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22040 :
22041 : tmp1 = reg1 ^ reg2;
22042 : tmp2 = reg3 & reg4;
22043 : reg_mask = tmp1 ^ tmp2;
22044 : reg_mask &= 0xFF;
22045 :
22046 : operands[1] = STRIP_UNARY (operands[1]);
22047 : operands[2] = STRIP_UNARY (operands[2]);
22048 : operands[6] = STRIP_UNARY (operands[6]);
22049 : if (!register_operand (operands[2], V4SFmode))
22050 : operands[2] = force_reg (V4SFmode, operands[2]);
22051 : if (!register_operand (operands[6], V4SFmode))
22052 : operands[6] = force_reg (V4SFmode, operands[6]);
22053 : operands[5] = GEN_INT (reg_mask);
22054 : }
22055 : #undef DONE
22056 : #undef FAIL
22057 : static const uint8_t expand_encoding[] = {
22058 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
22059 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22060 : 0x25
22061 : };
22062 : return complete_seq (expand_encoding, operands);
22063 : }
22064 :
22065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22066 : extern rtx_insn *gen_split_2303 (rtx_insn *, rtx *);
22067 : rtx_insn *
22068 : gen_split_2303 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22069 : {
22070 : if (dump_file)
22071 : fprintf (dump_file, "Splitting with gen_split_2303 (sse.md:14142)\n");
22072 : start_sequence ();
22073 : #define FAIL return (end_sequence (), nullptr)
22074 : #define DONE return end_sequence ()
22075 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22076 : {
22077 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22078 : int reg6 = 0xF0;
22079 : int reg2 = 0xCC;
22080 : int reg1 = 0xAA;
22081 : int reg3 = 0;
22082 : int reg4 = 0;
22083 : int reg_mask, tmp1, tmp2;
22084 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22085 : STRIP_UNARY (operands[4])))
22086 : {
22087 : reg4 = reg1;
22088 : reg3 = reg6;
22089 : operands[6] = operands[3];
22090 : }
22091 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22092 : STRIP_UNARY (operands[4])))
22093 : {
22094 : reg4 = reg2;
22095 : reg3 = reg6;
22096 : operands[6] = operands[3];
22097 : }
22098 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22099 : STRIP_UNARY (operands[3])))
22100 : {
22101 : reg4 = reg6;
22102 : reg3 = reg1;
22103 : operands[6] = operands[4];
22104 : }
22105 : else
22106 : {
22107 : reg4 = reg6;
22108 : reg3 = reg2;
22109 : operands[6] = operands[4];
22110 : }
22111 :
22112 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22113 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22114 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22115 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22116 :
22117 : tmp1 = reg1 & reg2;
22118 : tmp2 = reg3 | reg4;
22119 : reg_mask = tmp1 & tmp2;
22120 : reg_mask &= 0xFF;
22121 :
22122 : operands[1] = STRIP_UNARY (operands[1]);
22123 : operands[2] = STRIP_UNARY (operands[2]);
22124 : operands[6] = STRIP_UNARY (operands[6]);
22125 : if (!register_operand (operands[2], V8DFmode))
22126 : operands[2] = force_reg (V8DFmode, operands[2]);
22127 : if (!register_operand (operands[6], V8DFmode))
22128 : operands[6] = force_reg (V8DFmode, operands[6]);
22129 : operands[5] = GEN_INT (reg_mask);
22130 : }
22131 : #undef DONE
22132 : #undef FAIL
22133 : static const uint8_t expand_encoding[] = {
22134 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22135 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22136 : 0x25
22137 : };
22138 : return complete_seq (expand_encoding, operands);
22139 : }
22140 :
22141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22142 : extern rtx_insn *gen_split_2313 (rtx_insn *, rtx *);
22143 : rtx_insn *
22144 : gen_split_2313 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22145 : {
22146 : if (dump_file)
22147 : fprintf (dump_file, "Splitting with gen_split_2313 (sse.md:14142)\n");
22148 : start_sequence ();
22149 : #define FAIL return (end_sequence (), nullptr)
22150 : #define DONE return end_sequence ()
22151 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22152 : {
22153 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22154 : int reg6 = 0xF0;
22155 : int reg2 = 0xCC;
22156 : int reg1 = 0xAA;
22157 : int reg3 = 0;
22158 : int reg4 = 0;
22159 : int reg_mask, tmp1, tmp2;
22160 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22161 : STRIP_UNARY (operands[4])))
22162 : {
22163 : reg4 = reg1;
22164 : reg3 = reg6;
22165 : operands[6] = operands[3];
22166 : }
22167 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22168 : STRIP_UNARY (operands[4])))
22169 : {
22170 : reg4 = reg2;
22171 : reg3 = reg6;
22172 : operands[6] = operands[3];
22173 : }
22174 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22175 : STRIP_UNARY (operands[3])))
22176 : {
22177 : reg4 = reg6;
22178 : reg3 = reg1;
22179 : operands[6] = operands[4];
22180 : }
22181 : else
22182 : {
22183 : reg4 = reg6;
22184 : reg3 = reg2;
22185 : operands[6] = operands[4];
22186 : }
22187 :
22188 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22189 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22190 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22191 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22192 :
22193 : tmp1 = reg1 | reg2;
22194 : tmp2 = reg3 | reg4;
22195 : reg_mask = tmp1 | tmp2;
22196 : reg_mask &= 0xFF;
22197 :
22198 : operands[1] = STRIP_UNARY (operands[1]);
22199 : operands[2] = STRIP_UNARY (operands[2]);
22200 : operands[6] = STRIP_UNARY (operands[6]);
22201 : if (!register_operand (operands[2], V8DFmode))
22202 : operands[2] = force_reg (V8DFmode, operands[2]);
22203 : if (!register_operand (operands[6], V8DFmode))
22204 : operands[6] = force_reg (V8DFmode, operands[6]);
22205 : operands[5] = GEN_INT (reg_mask);
22206 : }
22207 : #undef DONE
22208 : #undef FAIL
22209 : static const uint8_t expand_encoding[] = {
22210 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22211 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22212 : 0x25
22213 : };
22214 : return complete_seq (expand_encoding, operands);
22215 : }
22216 :
22217 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22218 : extern rtx_insn *gen_split_2323 (rtx_insn *, rtx *);
22219 : rtx_insn *
22220 : gen_split_2323 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22221 : {
22222 : if (dump_file)
22223 : fprintf (dump_file, "Splitting with gen_split_2323 (sse.md:14142)\n");
22224 : start_sequence ();
22225 : #define FAIL return (end_sequence (), nullptr)
22226 : #define DONE return end_sequence ()
22227 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22228 : {
22229 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22230 : int reg6 = 0xF0;
22231 : int reg2 = 0xCC;
22232 : int reg1 = 0xAA;
22233 : int reg3 = 0;
22234 : int reg4 = 0;
22235 : int reg_mask, tmp1, tmp2;
22236 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22237 : STRIP_UNARY (operands[4])))
22238 : {
22239 : reg4 = reg1;
22240 : reg3 = reg6;
22241 : operands[6] = operands[3];
22242 : }
22243 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22244 : STRIP_UNARY (operands[4])))
22245 : {
22246 : reg4 = reg2;
22247 : reg3 = reg6;
22248 : operands[6] = operands[3];
22249 : }
22250 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22251 : STRIP_UNARY (operands[3])))
22252 : {
22253 : reg4 = reg6;
22254 : reg3 = reg1;
22255 : operands[6] = operands[4];
22256 : }
22257 : else
22258 : {
22259 : reg4 = reg6;
22260 : reg3 = reg2;
22261 : operands[6] = operands[4];
22262 : }
22263 :
22264 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22265 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22266 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22267 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22268 :
22269 : tmp1 = reg1 ^ reg2;
22270 : tmp2 = reg3 | reg4;
22271 : reg_mask = tmp1 ^ tmp2;
22272 : reg_mask &= 0xFF;
22273 :
22274 : operands[1] = STRIP_UNARY (operands[1]);
22275 : operands[2] = STRIP_UNARY (operands[2]);
22276 : operands[6] = STRIP_UNARY (operands[6]);
22277 : if (!register_operand (operands[2], V8DFmode))
22278 : operands[2] = force_reg (V8DFmode, operands[2]);
22279 : if (!register_operand (operands[6], V8DFmode))
22280 : operands[6] = force_reg (V8DFmode, operands[6]);
22281 : operands[5] = GEN_INT (reg_mask);
22282 : }
22283 : #undef DONE
22284 : #undef FAIL
22285 : static const uint8_t expand_encoding[] = {
22286 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22287 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22288 : 0x25
22289 : };
22290 : return complete_seq (expand_encoding, operands);
22291 : }
22292 :
22293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22294 : extern rtx_insn *gen_split_2333 (rtx_insn *, rtx *);
22295 : rtx_insn *
22296 : gen_split_2333 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22297 : {
22298 : if (dump_file)
22299 : fprintf (dump_file, "Splitting with gen_split_2333 (sse.md:14142)\n");
22300 : start_sequence ();
22301 : #define FAIL return (end_sequence (), nullptr)
22302 : #define DONE return end_sequence ()
22303 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22304 : {
22305 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22306 : int reg6 = 0xF0;
22307 : int reg2 = 0xCC;
22308 : int reg1 = 0xAA;
22309 : int reg3 = 0;
22310 : int reg4 = 0;
22311 : int reg_mask, tmp1, tmp2;
22312 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22313 : STRIP_UNARY (operands[4])))
22314 : {
22315 : reg4 = reg1;
22316 : reg3 = reg6;
22317 : operands[6] = operands[3];
22318 : }
22319 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22320 : STRIP_UNARY (operands[4])))
22321 : {
22322 : reg4 = reg2;
22323 : reg3 = reg6;
22324 : operands[6] = operands[3];
22325 : }
22326 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22327 : STRIP_UNARY (operands[3])))
22328 : {
22329 : reg4 = reg6;
22330 : reg3 = reg1;
22331 : operands[6] = operands[4];
22332 : }
22333 : else
22334 : {
22335 : reg4 = reg6;
22336 : reg3 = reg2;
22337 : operands[6] = operands[4];
22338 : }
22339 :
22340 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22341 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22342 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22343 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22344 :
22345 : tmp1 = reg1 & reg2;
22346 : tmp2 = reg3 ^ reg4;
22347 : reg_mask = tmp1 & tmp2;
22348 : reg_mask &= 0xFF;
22349 :
22350 : operands[1] = STRIP_UNARY (operands[1]);
22351 : operands[2] = STRIP_UNARY (operands[2]);
22352 : operands[6] = STRIP_UNARY (operands[6]);
22353 : if (!register_operand (operands[2], V4DFmode))
22354 : operands[2] = force_reg (V4DFmode, operands[2]);
22355 : if (!register_operand (operands[6], V4DFmode))
22356 : operands[6] = force_reg (V4DFmode, operands[6]);
22357 : operands[5] = GEN_INT (reg_mask);
22358 : }
22359 : #undef DONE
22360 : #undef FAIL
22361 : static const uint8_t expand_encoding[] = {
22362 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22363 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22364 : 0x25
22365 : };
22366 : return complete_seq (expand_encoding, operands);
22367 : }
22368 :
22369 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22370 : extern rtx_insn *gen_split_2343 (rtx_insn *, rtx *);
22371 : rtx_insn *
22372 : gen_split_2343 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22373 : {
22374 : if (dump_file)
22375 : fprintf (dump_file, "Splitting with gen_split_2343 (sse.md:14142)\n");
22376 : start_sequence ();
22377 : #define FAIL return (end_sequence (), nullptr)
22378 : #define DONE return end_sequence ()
22379 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22380 : {
22381 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22382 : int reg6 = 0xF0;
22383 : int reg2 = 0xCC;
22384 : int reg1 = 0xAA;
22385 : int reg3 = 0;
22386 : int reg4 = 0;
22387 : int reg_mask, tmp1, tmp2;
22388 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22389 : STRIP_UNARY (operands[4])))
22390 : {
22391 : reg4 = reg1;
22392 : reg3 = reg6;
22393 : operands[6] = operands[3];
22394 : }
22395 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22396 : STRIP_UNARY (operands[4])))
22397 : {
22398 : reg4 = reg2;
22399 : reg3 = reg6;
22400 : operands[6] = operands[3];
22401 : }
22402 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22403 : STRIP_UNARY (operands[3])))
22404 : {
22405 : reg4 = reg6;
22406 : reg3 = reg1;
22407 : operands[6] = operands[4];
22408 : }
22409 : else
22410 : {
22411 : reg4 = reg6;
22412 : reg3 = reg2;
22413 : operands[6] = operands[4];
22414 : }
22415 :
22416 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22417 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22418 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22419 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22420 :
22421 : tmp1 = reg1 | reg2;
22422 : tmp2 = reg3 ^ reg4;
22423 : reg_mask = tmp1 | tmp2;
22424 : reg_mask &= 0xFF;
22425 :
22426 : operands[1] = STRIP_UNARY (operands[1]);
22427 : operands[2] = STRIP_UNARY (operands[2]);
22428 : operands[6] = STRIP_UNARY (operands[6]);
22429 : if (!register_operand (operands[2], V4DFmode))
22430 : operands[2] = force_reg (V4DFmode, operands[2]);
22431 : if (!register_operand (operands[6], V4DFmode))
22432 : operands[6] = force_reg (V4DFmode, operands[6]);
22433 : operands[5] = GEN_INT (reg_mask);
22434 : }
22435 : #undef DONE
22436 : #undef FAIL
22437 : static const uint8_t expand_encoding[] = {
22438 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22439 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22440 : 0x25
22441 : };
22442 : return complete_seq (expand_encoding, operands);
22443 : }
22444 :
22445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22446 : extern rtx_insn *gen_split_2353 (rtx_insn *, rtx *);
22447 : rtx_insn *
22448 : gen_split_2353 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22449 : {
22450 : if (dump_file)
22451 : fprintf (dump_file, "Splitting with gen_split_2353 (sse.md:14142)\n");
22452 : start_sequence ();
22453 : #define FAIL return (end_sequence (), nullptr)
22454 : #define DONE return end_sequence ()
22455 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22456 : {
22457 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22458 : int reg6 = 0xF0;
22459 : int reg2 = 0xCC;
22460 : int reg1 = 0xAA;
22461 : int reg3 = 0;
22462 : int reg4 = 0;
22463 : int reg_mask, tmp1, tmp2;
22464 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22465 : STRIP_UNARY (operands[4])))
22466 : {
22467 : reg4 = reg1;
22468 : reg3 = reg6;
22469 : operands[6] = operands[3];
22470 : }
22471 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22472 : STRIP_UNARY (operands[4])))
22473 : {
22474 : reg4 = reg2;
22475 : reg3 = reg6;
22476 : operands[6] = operands[3];
22477 : }
22478 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22479 : STRIP_UNARY (operands[3])))
22480 : {
22481 : reg4 = reg6;
22482 : reg3 = reg1;
22483 : operands[6] = operands[4];
22484 : }
22485 : else
22486 : {
22487 : reg4 = reg6;
22488 : reg3 = reg2;
22489 : operands[6] = operands[4];
22490 : }
22491 :
22492 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22493 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22494 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22495 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22496 :
22497 : tmp1 = reg1 ^ reg2;
22498 : tmp2 = reg3 ^ reg4;
22499 : reg_mask = tmp1 ^ tmp2;
22500 : reg_mask &= 0xFF;
22501 :
22502 : operands[1] = STRIP_UNARY (operands[1]);
22503 : operands[2] = STRIP_UNARY (operands[2]);
22504 : operands[6] = STRIP_UNARY (operands[6]);
22505 : if (!register_operand (operands[2], V4DFmode))
22506 : operands[2] = force_reg (V4DFmode, operands[2]);
22507 : if (!register_operand (operands[6], V4DFmode))
22508 : operands[6] = force_reg (V4DFmode, operands[6]);
22509 : operands[5] = GEN_INT (reg_mask);
22510 : }
22511 : #undef DONE
22512 : #undef FAIL
22513 : static const uint8_t expand_encoding[] = {
22514 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22515 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22516 : 0x25
22517 : };
22518 : return complete_seq (expand_encoding, operands);
22519 : }
22520 :
22521 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22522 : extern rtx_insn *gen_split_2363 (rtx_insn *, rtx *);
22523 : rtx_insn *
22524 : gen_split_2363 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22525 : {
22526 : if (dump_file)
22527 : fprintf (dump_file, "Splitting with gen_split_2363 (sse.md:14142)\n");
22528 : start_sequence ();
22529 : #define FAIL return (end_sequence (), nullptr)
22530 : #define DONE return end_sequence ()
22531 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22532 : {
22533 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22534 : int reg6 = 0xF0;
22535 : int reg2 = 0xCC;
22536 : int reg1 = 0xAA;
22537 : int reg3 = 0;
22538 : int reg4 = 0;
22539 : int reg_mask, tmp1, tmp2;
22540 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22541 : STRIP_UNARY (operands[4])))
22542 : {
22543 : reg4 = reg1;
22544 : reg3 = reg6;
22545 : operands[6] = operands[3];
22546 : }
22547 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22548 : STRIP_UNARY (operands[4])))
22549 : {
22550 : reg4 = reg2;
22551 : reg3 = reg6;
22552 : operands[6] = operands[3];
22553 : }
22554 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22555 : STRIP_UNARY (operands[3])))
22556 : {
22557 : reg4 = reg6;
22558 : reg3 = reg1;
22559 : operands[6] = operands[4];
22560 : }
22561 : else
22562 : {
22563 : reg4 = reg6;
22564 : reg3 = reg2;
22565 : operands[6] = operands[4];
22566 : }
22567 :
22568 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22569 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22570 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22571 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22572 :
22573 : tmp1 = reg1 | reg2;
22574 : tmp2 = reg3 & reg4;
22575 : reg_mask = tmp1 & tmp2;
22576 : reg_mask &= 0xFF;
22577 :
22578 : operands[1] = STRIP_UNARY (operands[1]);
22579 : operands[2] = STRIP_UNARY (operands[2]);
22580 : operands[6] = STRIP_UNARY (operands[6]);
22581 : if (!register_operand (operands[2], V2DFmode))
22582 : operands[2] = force_reg (V2DFmode, operands[2]);
22583 : if (!register_operand (operands[6], V2DFmode))
22584 : operands[6] = force_reg (V2DFmode, operands[6]);
22585 : operands[5] = GEN_INT (reg_mask);
22586 : }
22587 : #undef DONE
22588 : #undef FAIL
22589 : static const uint8_t expand_encoding[] = {
22590 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22591 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22592 : 0x25
22593 : };
22594 : return complete_seq (expand_encoding, operands);
22595 : }
22596 :
22597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22598 : extern rtx_insn *gen_split_2373 (rtx_insn *, rtx *);
22599 : rtx_insn *
22600 : gen_split_2373 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22601 : {
22602 : if (dump_file)
22603 : fprintf (dump_file, "Splitting with gen_split_2373 (sse.md:14142)\n");
22604 : start_sequence ();
22605 : #define FAIL return (end_sequence (), nullptr)
22606 : #define DONE return end_sequence ()
22607 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22608 : {
22609 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22610 : int reg6 = 0xF0;
22611 : int reg2 = 0xCC;
22612 : int reg1 = 0xAA;
22613 : int reg3 = 0;
22614 : int reg4 = 0;
22615 : int reg_mask, tmp1, tmp2;
22616 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22617 : STRIP_UNARY (operands[4])))
22618 : {
22619 : reg4 = reg1;
22620 : reg3 = reg6;
22621 : operands[6] = operands[3];
22622 : }
22623 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22624 : STRIP_UNARY (operands[4])))
22625 : {
22626 : reg4 = reg2;
22627 : reg3 = reg6;
22628 : operands[6] = operands[3];
22629 : }
22630 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22631 : STRIP_UNARY (operands[3])))
22632 : {
22633 : reg4 = reg6;
22634 : reg3 = reg1;
22635 : operands[6] = operands[4];
22636 : }
22637 : else
22638 : {
22639 : reg4 = reg6;
22640 : reg3 = reg2;
22641 : operands[6] = operands[4];
22642 : }
22643 :
22644 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22645 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22646 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22647 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22648 :
22649 : tmp1 = reg1 ^ reg2;
22650 : tmp2 = reg3 & reg4;
22651 : reg_mask = tmp1 | tmp2;
22652 : reg_mask &= 0xFF;
22653 :
22654 : operands[1] = STRIP_UNARY (operands[1]);
22655 : operands[2] = STRIP_UNARY (operands[2]);
22656 : operands[6] = STRIP_UNARY (operands[6]);
22657 : if (!register_operand (operands[2], V2DFmode))
22658 : operands[2] = force_reg (V2DFmode, operands[2]);
22659 : if (!register_operand (operands[6], V2DFmode))
22660 : operands[6] = force_reg (V2DFmode, operands[6]);
22661 : operands[5] = GEN_INT (reg_mask);
22662 : }
22663 : #undef DONE
22664 : #undef FAIL
22665 : static const uint8_t expand_encoding[] = {
22666 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22667 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22668 : 0x25
22669 : };
22670 : return complete_seq (expand_encoding, operands);
22671 : }
22672 :
22673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22674 : extern rtx_insn *gen_split_2383 (rtx_insn *, rtx *);
22675 : rtx_insn *
22676 : gen_split_2383 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22677 : {
22678 : if (dump_file)
22679 : fprintf (dump_file, "Splitting with gen_split_2383 (sse.md:14227)\n");
22680 : start_sequence ();
22681 : #define FAIL return (end_sequence (), nullptr)
22682 : #define DONE return end_sequence ()
22683 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22684 : {
22685 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22686 : int reg6 = 0xF0;
22687 : int reg2 = 0xCC;
22688 : int reg1 = 0xAA;
22689 : int reg3 = 0;
22690 : int reg4 = 0;
22691 : int reg_mask, tmp1, tmp2;
22692 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22693 : STRIP_UNARY (operands[4])))
22694 : {
22695 : reg4 = reg1;
22696 : reg3 = reg6;
22697 : operands[6] = operands[3];
22698 : }
22699 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22700 : STRIP_UNARY (operands[4])))
22701 : {
22702 : reg4 = reg2;
22703 : reg3 = reg6;
22704 : operands[6] = operands[3];
22705 : }
22706 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22707 : STRIP_UNARY (operands[3])))
22708 : {
22709 : reg4 = reg6;
22710 : reg3 = reg1;
22711 : operands[6] = operands[4];
22712 : }
22713 : else
22714 : {
22715 : reg4 = reg6;
22716 : reg3 = reg2;
22717 : operands[6] = operands[4];
22718 : }
22719 :
22720 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22721 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22722 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22723 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22724 :
22725 : tmp1 = reg1 & reg2;
22726 : tmp2 = tmp1 & reg3;
22727 : reg_mask = tmp2 ^ reg4;
22728 : reg_mask &= 0xFF;
22729 :
22730 : operands[1] = STRIP_UNARY (operands[1]);
22731 : operands[2] = STRIP_UNARY (operands[2]);
22732 : operands[6] = STRIP_UNARY (operands[6]);
22733 : operands[5] = GEN_INT (reg_mask);
22734 : if (!register_operand (operands[2], V64QImode))
22735 : operands[2] = force_reg (V64QImode, operands[2]);
22736 : if (!register_operand (operands[6], V64QImode))
22737 : operands[6] = force_reg (V64QImode, operands[6]);
22738 :
22739 : }
22740 : #undef DONE
22741 : #undef FAIL
22742 : static const uint8_t expand_encoding[] = {
22743 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22744 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22745 : 0x25
22746 : };
22747 : return complete_seq (expand_encoding, operands);
22748 : }
22749 :
22750 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22751 : extern rtx_insn *gen_split_2393 (rtx_insn *, rtx *);
22752 : rtx_insn *
22753 : gen_split_2393 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22754 : {
22755 : if (dump_file)
22756 : fprintf (dump_file, "Splitting with gen_split_2393 (sse.md:14227)\n");
22757 : start_sequence ();
22758 : #define FAIL return (end_sequence (), nullptr)
22759 : #define DONE return end_sequence ()
22760 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22761 : {
22762 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22763 : int reg6 = 0xF0;
22764 : int reg2 = 0xCC;
22765 : int reg1 = 0xAA;
22766 : int reg3 = 0;
22767 : int reg4 = 0;
22768 : int reg_mask, tmp1, tmp2;
22769 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22770 : STRIP_UNARY (operands[4])))
22771 : {
22772 : reg4 = reg1;
22773 : reg3 = reg6;
22774 : operands[6] = operands[3];
22775 : }
22776 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22777 : STRIP_UNARY (operands[4])))
22778 : {
22779 : reg4 = reg2;
22780 : reg3 = reg6;
22781 : operands[6] = operands[3];
22782 : }
22783 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22784 : STRIP_UNARY (operands[3])))
22785 : {
22786 : reg4 = reg6;
22787 : reg3 = reg1;
22788 : operands[6] = operands[4];
22789 : }
22790 : else
22791 : {
22792 : reg4 = reg6;
22793 : reg3 = reg2;
22794 : operands[6] = operands[4];
22795 : }
22796 :
22797 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22798 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22799 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22800 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22801 :
22802 : tmp1 = reg1 | reg2;
22803 : tmp2 = tmp1 | reg3;
22804 : reg_mask = tmp2 & reg4;
22805 : reg_mask &= 0xFF;
22806 :
22807 : operands[1] = STRIP_UNARY (operands[1]);
22808 : operands[2] = STRIP_UNARY (operands[2]);
22809 : operands[6] = STRIP_UNARY (operands[6]);
22810 : operands[5] = GEN_INT (reg_mask);
22811 : if (!register_operand (operands[2], V64QImode))
22812 : operands[2] = force_reg (V64QImode, operands[2]);
22813 : if (!register_operand (operands[6], V64QImode))
22814 : operands[6] = force_reg (V64QImode, operands[6]);
22815 :
22816 : }
22817 : #undef DONE
22818 : #undef FAIL
22819 : static const uint8_t expand_encoding[] = {
22820 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22821 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22822 : 0x25
22823 : };
22824 : return complete_seq (expand_encoding, operands);
22825 : }
22826 :
22827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22828 : extern rtx_insn *gen_split_2403 (rtx_insn *, rtx *);
22829 : rtx_insn *
22830 : gen_split_2403 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22831 : {
22832 : if (dump_file)
22833 : fprintf (dump_file, "Splitting with gen_split_2403 (sse.md:14227)\n");
22834 : start_sequence ();
22835 : #define FAIL return (end_sequence (), nullptr)
22836 : #define DONE return end_sequence ()
22837 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22838 : {
22839 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22840 : int reg6 = 0xF0;
22841 : int reg2 = 0xCC;
22842 : int reg1 = 0xAA;
22843 : int reg3 = 0;
22844 : int reg4 = 0;
22845 : int reg_mask, tmp1, tmp2;
22846 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22847 : STRIP_UNARY (operands[4])))
22848 : {
22849 : reg4 = reg1;
22850 : reg3 = reg6;
22851 : operands[6] = operands[3];
22852 : }
22853 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22854 : STRIP_UNARY (operands[4])))
22855 : {
22856 : reg4 = reg2;
22857 : reg3 = reg6;
22858 : operands[6] = operands[3];
22859 : }
22860 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22861 : STRIP_UNARY (operands[3])))
22862 : {
22863 : reg4 = reg6;
22864 : reg3 = reg1;
22865 : operands[6] = operands[4];
22866 : }
22867 : else
22868 : {
22869 : reg4 = reg6;
22870 : reg3 = reg2;
22871 : operands[6] = operands[4];
22872 : }
22873 :
22874 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22875 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22876 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22877 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22878 :
22879 : tmp1 = reg1 | reg2;
22880 : tmp2 = tmp1 ^ reg3;
22881 : reg_mask = tmp2 | reg4;
22882 : reg_mask &= 0xFF;
22883 :
22884 : operands[1] = STRIP_UNARY (operands[1]);
22885 : operands[2] = STRIP_UNARY (operands[2]);
22886 : operands[6] = STRIP_UNARY (operands[6]);
22887 : operands[5] = GEN_INT (reg_mask);
22888 : if (!register_operand (operands[2], V64QImode))
22889 : operands[2] = force_reg (V64QImode, operands[2]);
22890 : if (!register_operand (operands[6], V64QImode))
22891 : operands[6] = force_reg (V64QImode, operands[6]);
22892 :
22893 : }
22894 : #undef DONE
22895 : #undef FAIL
22896 : static const uint8_t expand_encoding[] = {
22897 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22898 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22899 : 0x25
22900 : };
22901 : return complete_seq (expand_encoding, operands);
22902 : }
22903 :
22904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22905 : extern rtx_insn *gen_split_2413 (rtx_insn *, rtx *);
22906 : rtx_insn *
22907 : gen_split_2413 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22908 : {
22909 : if (dump_file)
22910 : fprintf (dump_file, "Splitting with gen_split_2413 (sse.md:14227)\n");
22911 : start_sequence ();
22912 : #define FAIL return (end_sequence (), nullptr)
22913 : #define DONE return end_sequence ()
22914 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22915 : {
22916 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22917 : int reg6 = 0xF0;
22918 : int reg2 = 0xCC;
22919 : int reg1 = 0xAA;
22920 : int reg3 = 0;
22921 : int reg4 = 0;
22922 : int reg_mask, tmp1, tmp2;
22923 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22924 : STRIP_UNARY (operands[4])))
22925 : {
22926 : reg4 = reg1;
22927 : reg3 = reg6;
22928 : operands[6] = operands[3];
22929 : }
22930 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22931 : STRIP_UNARY (operands[4])))
22932 : {
22933 : reg4 = reg2;
22934 : reg3 = reg6;
22935 : operands[6] = operands[3];
22936 : }
22937 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22938 : STRIP_UNARY (operands[3])))
22939 : {
22940 : reg4 = reg6;
22941 : reg3 = reg1;
22942 : operands[6] = operands[4];
22943 : }
22944 : else
22945 : {
22946 : reg4 = reg6;
22947 : reg3 = reg2;
22948 : operands[6] = operands[4];
22949 : }
22950 :
22951 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22952 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22953 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22954 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22955 :
22956 : tmp1 = reg1 | reg2;
22957 : tmp2 = tmp1 & reg3;
22958 : reg_mask = tmp2 ^ reg4;
22959 : reg_mask &= 0xFF;
22960 :
22961 : operands[1] = STRIP_UNARY (operands[1]);
22962 : operands[2] = STRIP_UNARY (operands[2]);
22963 : operands[6] = STRIP_UNARY (operands[6]);
22964 : operands[5] = GEN_INT (reg_mask);
22965 : if (!register_operand (operands[2], V32QImode))
22966 : operands[2] = force_reg (V32QImode, operands[2]);
22967 : if (!register_operand (operands[6], V32QImode))
22968 : operands[6] = force_reg (V32QImode, operands[6]);
22969 :
22970 : }
22971 : #undef DONE
22972 : #undef FAIL
22973 : static const uint8_t expand_encoding[] = {
22974 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
22975 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22976 : 0x25
22977 : };
22978 : return complete_seq (expand_encoding, operands);
22979 : }
22980 :
22981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22982 : extern rtx_insn *gen_split_2423 (rtx_insn *, rtx *);
22983 : rtx_insn *
22984 : gen_split_2423 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22985 : {
22986 : if (dump_file)
22987 : fprintf (dump_file, "Splitting with gen_split_2423 (sse.md:14227)\n");
22988 : start_sequence ();
22989 : #define FAIL return (end_sequence (), nullptr)
22990 : #define DONE return end_sequence ()
22991 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22992 : {
22993 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22994 : int reg6 = 0xF0;
22995 : int reg2 = 0xCC;
22996 : int reg1 = 0xAA;
22997 : int reg3 = 0;
22998 : int reg4 = 0;
22999 : int reg_mask, tmp1, tmp2;
23000 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23001 : STRIP_UNARY (operands[4])))
23002 : {
23003 : reg4 = reg1;
23004 : reg3 = reg6;
23005 : operands[6] = operands[3];
23006 : }
23007 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23008 : STRIP_UNARY (operands[4])))
23009 : {
23010 : reg4 = reg2;
23011 : reg3 = reg6;
23012 : operands[6] = operands[3];
23013 : }
23014 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23015 : STRIP_UNARY (operands[3])))
23016 : {
23017 : reg4 = reg6;
23018 : reg3 = reg1;
23019 : operands[6] = operands[4];
23020 : }
23021 : else
23022 : {
23023 : reg4 = reg6;
23024 : reg3 = reg2;
23025 : operands[6] = operands[4];
23026 : }
23027 :
23028 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23029 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23030 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23031 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23032 :
23033 : tmp1 = reg1 ^ reg2;
23034 : tmp2 = tmp1 | reg3;
23035 : reg_mask = tmp2 & reg4;
23036 : reg_mask &= 0xFF;
23037 :
23038 : operands[1] = STRIP_UNARY (operands[1]);
23039 : operands[2] = STRIP_UNARY (operands[2]);
23040 : operands[6] = STRIP_UNARY (operands[6]);
23041 : operands[5] = GEN_INT (reg_mask);
23042 : if (!register_operand (operands[2], V32QImode))
23043 : operands[2] = force_reg (V32QImode, operands[2]);
23044 : if (!register_operand (operands[6], V32QImode))
23045 : operands[6] = force_reg (V32QImode, operands[6]);
23046 :
23047 : }
23048 : #undef DONE
23049 : #undef FAIL
23050 : static const uint8_t expand_encoding[] = {
23051 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23052 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23053 : 0x25
23054 : };
23055 : return complete_seq (expand_encoding, operands);
23056 : }
23057 :
23058 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23059 : extern rtx_insn *gen_split_2433 (rtx_insn *, rtx *);
23060 : rtx_insn *
23061 : gen_split_2433 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23062 : {
23063 : if (dump_file)
23064 : fprintf (dump_file, "Splitting with gen_split_2433 (sse.md:14227)\n");
23065 : start_sequence ();
23066 : #define FAIL return (end_sequence (), nullptr)
23067 : #define DONE return end_sequence ()
23068 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23069 : {
23070 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23071 : int reg6 = 0xF0;
23072 : int reg2 = 0xCC;
23073 : int reg1 = 0xAA;
23074 : int reg3 = 0;
23075 : int reg4 = 0;
23076 : int reg_mask, tmp1, tmp2;
23077 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23078 : STRIP_UNARY (operands[4])))
23079 : {
23080 : reg4 = reg1;
23081 : reg3 = reg6;
23082 : operands[6] = operands[3];
23083 : }
23084 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23085 : STRIP_UNARY (operands[4])))
23086 : {
23087 : reg4 = reg2;
23088 : reg3 = reg6;
23089 : operands[6] = operands[3];
23090 : }
23091 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23092 : STRIP_UNARY (operands[3])))
23093 : {
23094 : reg4 = reg6;
23095 : reg3 = reg1;
23096 : operands[6] = operands[4];
23097 : }
23098 : else
23099 : {
23100 : reg4 = reg6;
23101 : reg3 = reg2;
23102 : operands[6] = operands[4];
23103 : }
23104 :
23105 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23106 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23107 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23108 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23109 :
23110 : tmp1 = reg1 ^ reg2;
23111 : tmp2 = tmp1 ^ reg3;
23112 : reg_mask = tmp2 | reg4;
23113 : reg_mask &= 0xFF;
23114 :
23115 : operands[1] = STRIP_UNARY (operands[1]);
23116 : operands[2] = STRIP_UNARY (operands[2]);
23117 : operands[6] = STRIP_UNARY (operands[6]);
23118 : operands[5] = GEN_INT (reg_mask);
23119 : if (!register_operand (operands[2], V32QImode))
23120 : operands[2] = force_reg (V32QImode, operands[2]);
23121 : if (!register_operand (operands[6], V32QImode))
23122 : operands[6] = force_reg (V32QImode, operands[6]);
23123 :
23124 : }
23125 : #undef DONE
23126 : #undef FAIL
23127 : static const uint8_t expand_encoding[] = {
23128 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23129 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23130 : 0x25
23131 : };
23132 : return complete_seq (expand_encoding, operands);
23133 : }
23134 :
23135 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23136 : extern rtx_insn *gen_split_2443 (rtx_insn *, rtx *);
23137 : rtx_insn *
23138 : gen_split_2443 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23139 : {
23140 : if (dump_file)
23141 : fprintf (dump_file, "Splitting with gen_split_2443 (sse.md:14227)\n");
23142 : start_sequence ();
23143 : #define FAIL return (end_sequence (), nullptr)
23144 : #define DONE return end_sequence ()
23145 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23146 : {
23147 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23148 : int reg6 = 0xF0;
23149 : int reg2 = 0xCC;
23150 : int reg1 = 0xAA;
23151 : int reg3 = 0;
23152 : int reg4 = 0;
23153 : int reg_mask, tmp1, tmp2;
23154 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23155 : STRIP_UNARY (operands[4])))
23156 : {
23157 : reg4 = reg1;
23158 : reg3 = reg6;
23159 : operands[6] = operands[3];
23160 : }
23161 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23162 : STRIP_UNARY (operands[4])))
23163 : {
23164 : reg4 = reg2;
23165 : reg3 = reg6;
23166 : operands[6] = operands[3];
23167 : }
23168 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23169 : STRIP_UNARY (operands[3])))
23170 : {
23171 : reg4 = reg6;
23172 : reg3 = reg1;
23173 : operands[6] = operands[4];
23174 : }
23175 : else
23176 : {
23177 : reg4 = reg6;
23178 : reg3 = reg2;
23179 : operands[6] = operands[4];
23180 : }
23181 :
23182 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23183 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23184 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23185 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23186 :
23187 : tmp1 = reg1 ^ reg2;
23188 : tmp2 = tmp1 & reg3;
23189 : reg_mask = tmp2 ^ reg4;
23190 : reg_mask &= 0xFF;
23191 :
23192 : operands[1] = STRIP_UNARY (operands[1]);
23193 : operands[2] = STRIP_UNARY (operands[2]);
23194 : operands[6] = STRIP_UNARY (operands[6]);
23195 : operands[5] = GEN_INT (reg_mask);
23196 : if (!register_operand (operands[2], V16QImode))
23197 : operands[2] = force_reg (V16QImode, operands[2]);
23198 : if (!register_operand (operands[6], V16QImode))
23199 : operands[6] = force_reg (V16QImode, operands[6]);
23200 :
23201 : }
23202 : #undef DONE
23203 : #undef FAIL
23204 : static const uint8_t expand_encoding[] = {
23205 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23206 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23207 : 0x25
23208 : };
23209 : return complete_seq (expand_encoding, operands);
23210 : }
23211 :
23212 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23213 : extern rtx_insn *gen_split_2453 (rtx_insn *, rtx *);
23214 : rtx_insn *
23215 : gen_split_2453 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23216 : {
23217 : if (dump_file)
23218 : fprintf (dump_file, "Splitting with gen_split_2453 (sse.md:14227)\n");
23219 : start_sequence ();
23220 : #define FAIL return (end_sequence (), nullptr)
23221 : #define DONE return end_sequence ()
23222 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23223 : {
23224 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23225 : int reg6 = 0xF0;
23226 : int reg2 = 0xCC;
23227 : int reg1 = 0xAA;
23228 : int reg3 = 0;
23229 : int reg4 = 0;
23230 : int reg_mask, tmp1, tmp2;
23231 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23232 : STRIP_UNARY (operands[4])))
23233 : {
23234 : reg4 = reg1;
23235 : reg3 = reg6;
23236 : operands[6] = operands[3];
23237 : }
23238 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23239 : STRIP_UNARY (operands[4])))
23240 : {
23241 : reg4 = reg2;
23242 : reg3 = reg6;
23243 : operands[6] = operands[3];
23244 : }
23245 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23246 : STRIP_UNARY (operands[3])))
23247 : {
23248 : reg4 = reg6;
23249 : reg3 = reg1;
23250 : operands[6] = operands[4];
23251 : }
23252 : else
23253 : {
23254 : reg4 = reg6;
23255 : reg3 = reg2;
23256 : operands[6] = operands[4];
23257 : }
23258 :
23259 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23260 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23261 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23262 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23263 :
23264 : tmp1 = reg1 & reg2;
23265 : tmp2 = tmp1 ^ reg3;
23266 : reg_mask = tmp2 & reg4;
23267 : reg_mask &= 0xFF;
23268 :
23269 : operands[1] = STRIP_UNARY (operands[1]);
23270 : operands[2] = STRIP_UNARY (operands[2]);
23271 : operands[6] = STRIP_UNARY (operands[6]);
23272 : operands[5] = GEN_INT (reg_mask);
23273 : if (!register_operand (operands[2], V16QImode))
23274 : operands[2] = force_reg (V16QImode, operands[2]);
23275 : if (!register_operand (operands[6], V16QImode))
23276 : operands[6] = force_reg (V16QImode, operands[6]);
23277 :
23278 : }
23279 : #undef DONE
23280 : #undef FAIL
23281 : static const uint8_t expand_encoding[] = {
23282 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23283 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23284 : 0x25
23285 : };
23286 : return complete_seq (expand_encoding, operands);
23287 : }
23288 :
23289 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23290 : extern rtx_insn *gen_split_2463 (rtx_insn *, rtx *);
23291 : rtx_insn *
23292 : gen_split_2463 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23293 : {
23294 : if (dump_file)
23295 : fprintf (dump_file, "Splitting with gen_split_2463 (sse.md:14227)\n");
23296 : start_sequence ();
23297 : #define FAIL return (end_sequence (), nullptr)
23298 : #define DONE return end_sequence ()
23299 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23300 : {
23301 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23302 : int reg6 = 0xF0;
23303 : int reg2 = 0xCC;
23304 : int reg1 = 0xAA;
23305 : int reg3 = 0;
23306 : int reg4 = 0;
23307 : int reg_mask, tmp1, tmp2;
23308 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23309 : STRIP_UNARY (operands[4])))
23310 : {
23311 : reg4 = reg1;
23312 : reg3 = reg6;
23313 : operands[6] = operands[3];
23314 : }
23315 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23316 : STRIP_UNARY (operands[4])))
23317 : {
23318 : reg4 = reg2;
23319 : reg3 = reg6;
23320 : operands[6] = operands[3];
23321 : }
23322 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23323 : STRIP_UNARY (operands[3])))
23324 : {
23325 : reg4 = reg6;
23326 : reg3 = reg1;
23327 : operands[6] = operands[4];
23328 : }
23329 : else
23330 : {
23331 : reg4 = reg6;
23332 : reg3 = reg2;
23333 : operands[6] = operands[4];
23334 : }
23335 :
23336 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23337 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23338 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23339 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23340 :
23341 : tmp1 = reg1 & reg2;
23342 : tmp2 = tmp1 & reg3;
23343 : reg_mask = tmp2 | reg4;
23344 : reg_mask &= 0xFF;
23345 :
23346 : operands[1] = STRIP_UNARY (operands[1]);
23347 : operands[2] = STRIP_UNARY (operands[2]);
23348 : operands[6] = STRIP_UNARY (operands[6]);
23349 : operands[5] = GEN_INT (reg_mask);
23350 : if (!register_operand (operands[2], V32HImode))
23351 : operands[2] = force_reg (V32HImode, operands[2]);
23352 : if (!register_operand (operands[6], V32HImode))
23353 : operands[6] = force_reg (V32HImode, operands[6]);
23354 :
23355 : }
23356 : #undef DONE
23357 : #undef FAIL
23358 : static const uint8_t expand_encoding[] = {
23359 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23360 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23361 : 0x25
23362 : };
23363 : return complete_seq (expand_encoding, operands);
23364 : }
23365 :
23366 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23367 : extern rtx_insn *gen_split_2473 (rtx_insn *, rtx *);
23368 : rtx_insn *
23369 : gen_split_2473 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23370 : {
23371 : if (dump_file)
23372 : fprintf (dump_file, "Splitting with gen_split_2473 (sse.md:14227)\n");
23373 : start_sequence ();
23374 : #define FAIL return (end_sequence (), nullptr)
23375 : #define DONE return end_sequence ()
23376 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23377 : {
23378 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23379 : int reg6 = 0xF0;
23380 : int reg2 = 0xCC;
23381 : int reg1 = 0xAA;
23382 : int reg3 = 0;
23383 : int reg4 = 0;
23384 : int reg_mask, tmp1, tmp2;
23385 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23386 : STRIP_UNARY (operands[4])))
23387 : {
23388 : reg4 = reg1;
23389 : reg3 = reg6;
23390 : operands[6] = operands[3];
23391 : }
23392 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23393 : STRIP_UNARY (operands[4])))
23394 : {
23395 : reg4 = reg2;
23396 : reg3 = reg6;
23397 : operands[6] = operands[3];
23398 : }
23399 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23400 : STRIP_UNARY (operands[3])))
23401 : {
23402 : reg4 = reg6;
23403 : reg3 = reg1;
23404 : operands[6] = operands[4];
23405 : }
23406 : else
23407 : {
23408 : reg4 = reg6;
23409 : reg3 = reg2;
23410 : operands[6] = operands[4];
23411 : }
23412 :
23413 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23414 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23415 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23416 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23417 :
23418 : tmp1 = reg1 & reg2;
23419 : tmp2 = tmp1 | reg3;
23420 : reg_mask = tmp2 ^ reg4;
23421 : reg_mask &= 0xFF;
23422 :
23423 : operands[1] = STRIP_UNARY (operands[1]);
23424 : operands[2] = STRIP_UNARY (operands[2]);
23425 : operands[6] = STRIP_UNARY (operands[6]);
23426 : operands[5] = GEN_INT (reg_mask);
23427 : if (!register_operand (operands[2], V32HImode))
23428 : operands[2] = force_reg (V32HImode, operands[2]);
23429 : if (!register_operand (operands[6], V32HImode))
23430 : operands[6] = force_reg (V32HImode, operands[6]);
23431 :
23432 : }
23433 : #undef DONE
23434 : #undef FAIL
23435 : static const uint8_t expand_encoding[] = {
23436 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23437 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23438 : 0x25
23439 : };
23440 : return complete_seq (expand_encoding, operands);
23441 : }
23442 :
23443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23444 : extern rtx_insn *gen_split_2483 (rtx_insn *, rtx *);
23445 : rtx_insn *
23446 : gen_split_2483 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23447 : {
23448 : if (dump_file)
23449 : fprintf (dump_file, "Splitting with gen_split_2483 (sse.md:14227)\n");
23450 : start_sequence ();
23451 : #define FAIL return (end_sequence (), nullptr)
23452 : #define DONE return end_sequence ()
23453 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23454 : {
23455 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23456 : int reg6 = 0xF0;
23457 : int reg2 = 0xCC;
23458 : int reg1 = 0xAA;
23459 : int reg3 = 0;
23460 : int reg4 = 0;
23461 : int reg_mask, tmp1, tmp2;
23462 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23463 : STRIP_UNARY (operands[4])))
23464 : {
23465 : reg4 = reg1;
23466 : reg3 = reg6;
23467 : operands[6] = operands[3];
23468 : }
23469 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23470 : STRIP_UNARY (operands[4])))
23471 : {
23472 : reg4 = reg2;
23473 : reg3 = reg6;
23474 : operands[6] = operands[3];
23475 : }
23476 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23477 : STRIP_UNARY (operands[3])))
23478 : {
23479 : reg4 = reg6;
23480 : reg3 = reg1;
23481 : operands[6] = operands[4];
23482 : }
23483 : else
23484 : {
23485 : reg4 = reg6;
23486 : reg3 = reg2;
23487 : operands[6] = operands[4];
23488 : }
23489 :
23490 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23491 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23492 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23493 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23494 :
23495 : tmp1 = reg1 | reg2;
23496 : tmp2 = tmp1 ^ reg3;
23497 : reg_mask = tmp2 & reg4;
23498 : reg_mask &= 0xFF;
23499 :
23500 : operands[1] = STRIP_UNARY (operands[1]);
23501 : operands[2] = STRIP_UNARY (operands[2]);
23502 : operands[6] = STRIP_UNARY (operands[6]);
23503 : operands[5] = GEN_INT (reg_mask);
23504 : if (!register_operand (operands[2], V32HImode))
23505 : operands[2] = force_reg (V32HImode, operands[2]);
23506 : if (!register_operand (operands[6], V32HImode))
23507 : operands[6] = force_reg (V32HImode, operands[6]);
23508 :
23509 : }
23510 : #undef DONE
23511 : #undef FAIL
23512 : static const uint8_t expand_encoding[] = {
23513 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23514 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23515 : 0x25
23516 : };
23517 : return complete_seq (expand_encoding, operands);
23518 : }
23519 :
23520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23521 : extern rtx_insn *gen_split_2493 (rtx_insn *, rtx *);
23522 : rtx_insn *
23523 : gen_split_2493 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23524 : {
23525 : if (dump_file)
23526 : fprintf (dump_file, "Splitting with gen_split_2493 (sse.md:14227)\n");
23527 : start_sequence ();
23528 : #define FAIL return (end_sequence (), nullptr)
23529 : #define DONE return end_sequence ()
23530 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23531 : {
23532 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23533 : int reg6 = 0xF0;
23534 : int reg2 = 0xCC;
23535 : int reg1 = 0xAA;
23536 : int reg3 = 0;
23537 : int reg4 = 0;
23538 : int reg_mask, tmp1, tmp2;
23539 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23540 : STRIP_UNARY (operands[4])))
23541 : {
23542 : reg4 = reg1;
23543 : reg3 = reg6;
23544 : operands[6] = operands[3];
23545 : }
23546 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23547 : STRIP_UNARY (operands[4])))
23548 : {
23549 : reg4 = reg2;
23550 : reg3 = reg6;
23551 : operands[6] = operands[3];
23552 : }
23553 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23554 : STRIP_UNARY (operands[3])))
23555 : {
23556 : reg4 = reg6;
23557 : reg3 = reg1;
23558 : operands[6] = operands[4];
23559 : }
23560 : else
23561 : {
23562 : reg4 = reg6;
23563 : reg3 = reg2;
23564 : operands[6] = operands[4];
23565 : }
23566 :
23567 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23568 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23569 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23570 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23571 :
23572 : tmp1 = reg1 | reg2;
23573 : tmp2 = tmp1 & reg3;
23574 : reg_mask = tmp2 | reg4;
23575 : reg_mask &= 0xFF;
23576 :
23577 : operands[1] = STRIP_UNARY (operands[1]);
23578 : operands[2] = STRIP_UNARY (operands[2]);
23579 : operands[6] = STRIP_UNARY (operands[6]);
23580 : operands[5] = GEN_INT (reg_mask);
23581 : if (!register_operand (operands[2], V16HImode))
23582 : operands[2] = force_reg (V16HImode, operands[2]);
23583 : if (!register_operand (operands[6], V16HImode))
23584 : operands[6] = force_reg (V16HImode, operands[6]);
23585 :
23586 : }
23587 : #undef DONE
23588 : #undef FAIL
23589 : static const uint8_t expand_encoding[] = {
23590 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23591 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23592 : 0x25
23593 : };
23594 : return complete_seq (expand_encoding, operands);
23595 : }
23596 :
23597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23598 : extern rtx_insn *gen_split_2503 (rtx_insn *, rtx *);
23599 : rtx_insn *
23600 : gen_split_2503 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23601 : {
23602 : if (dump_file)
23603 : fprintf (dump_file, "Splitting with gen_split_2503 (sse.md:14227)\n");
23604 : start_sequence ();
23605 : #define FAIL return (end_sequence (), nullptr)
23606 : #define DONE return end_sequence ()
23607 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23608 : {
23609 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23610 : int reg6 = 0xF0;
23611 : int reg2 = 0xCC;
23612 : int reg1 = 0xAA;
23613 : int reg3 = 0;
23614 : int reg4 = 0;
23615 : int reg_mask, tmp1, tmp2;
23616 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23617 : STRIP_UNARY (operands[4])))
23618 : {
23619 : reg4 = reg1;
23620 : reg3 = reg6;
23621 : operands[6] = operands[3];
23622 : }
23623 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23624 : STRIP_UNARY (operands[4])))
23625 : {
23626 : reg4 = reg2;
23627 : reg3 = reg6;
23628 : operands[6] = operands[3];
23629 : }
23630 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23631 : STRIP_UNARY (operands[3])))
23632 : {
23633 : reg4 = reg6;
23634 : reg3 = reg1;
23635 : operands[6] = operands[4];
23636 : }
23637 : else
23638 : {
23639 : reg4 = reg6;
23640 : reg3 = reg2;
23641 : operands[6] = operands[4];
23642 : }
23643 :
23644 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23645 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23646 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23647 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23648 :
23649 : tmp1 = reg1 | reg2;
23650 : tmp2 = tmp1 | reg3;
23651 : reg_mask = tmp2 ^ reg4;
23652 : reg_mask &= 0xFF;
23653 :
23654 : operands[1] = STRIP_UNARY (operands[1]);
23655 : operands[2] = STRIP_UNARY (operands[2]);
23656 : operands[6] = STRIP_UNARY (operands[6]);
23657 : operands[5] = GEN_INT (reg_mask);
23658 : if (!register_operand (operands[2], V16HImode))
23659 : operands[2] = force_reg (V16HImode, operands[2]);
23660 : if (!register_operand (operands[6], V16HImode))
23661 : operands[6] = force_reg (V16HImode, operands[6]);
23662 :
23663 : }
23664 : #undef DONE
23665 : #undef FAIL
23666 : static const uint8_t expand_encoding[] = {
23667 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23668 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23669 : 0x25
23670 : };
23671 : return complete_seq (expand_encoding, operands);
23672 : }
23673 :
23674 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23675 : extern rtx_insn *gen_split_2513 (rtx_insn *, rtx *);
23676 : rtx_insn *
23677 : gen_split_2513 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23678 : {
23679 : if (dump_file)
23680 : fprintf (dump_file, "Splitting with gen_split_2513 (sse.md:14227)\n");
23681 : start_sequence ();
23682 : #define FAIL return (end_sequence (), nullptr)
23683 : #define DONE return end_sequence ()
23684 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23685 : {
23686 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23687 : int reg6 = 0xF0;
23688 : int reg2 = 0xCC;
23689 : int reg1 = 0xAA;
23690 : int reg3 = 0;
23691 : int reg4 = 0;
23692 : int reg_mask, tmp1, tmp2;
23693 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23694 : STRIP_UNARY (operands[4])))
23695 : {
23696 : reg4 = reg1;
23697 : reg3 = reg6;
23698 : operands[6] = operands[3];
23699 : }
23700 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23701 : STRIP_UNARY (operands[4])))
23702 : {
23703 : reg4 = reg2;
23704 : reg3 = reg6;
23705 : operands[6] = operands[3];
23706 : }
23707 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23708 : STRIP_UNARY (operands[3])))
23709 : {
23710 : reg4 = reg6;
23711 : reg3 = reg1;
23712 : operands[6] = operands[4];
23713 : }
23714 : else
23715 : {
23716 : reg4 = reg6;
23717 : reg3 = reg2;
23718 : operands[6] = operands[4];
23719 : }
23720 :
23721 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23722 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23723 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23724 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23725 :
23726 : tmp1 = reg1 ^ reg2;
23727 : tmp2 = tmp1 ^ reg3;
23728 : reg_mask = tmp2 & reg4;
23729 : reg_mask &= 0xFF;
23730 :
23731 : operands[1] = STRIP_UNARY (operands[1]);
23732 : operands[2] = STRIP_UNARY (operands[2]);
23733 : operands[6] = STRIP_UNARY (operands[6]);
23734 : operands[5] = GEN_INT (reg_mask);
23735 : if (!register_operand (operands[2], V16HImode))
23736 : operands[2] = force_reg (V16HImode, operands[2]);
23737 : if (!register_operand (operands[6], V16HImode))
23738 : operands[6] = force_reg (V16HImode, operands[6]);
23739 :
23740 : }
23741 : #undef DONE
23742 : #undef FAIL
23743 : static const uint8_t expand_encoding[] = {
23744 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23745 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23746 : 0x25
23747 : };
23748 : return complete_seq (expand_encoding, operands);
23749 : }
23750 :
23751 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23752 : extern rtx_insn *gen_split_2523 (rtx_insn *, rtx *);
23753 : rtx_insn *
23754 : gen_split_2523 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23755 : {
23756 : if (dump_file)
23757 : fprintf (dump_file, "Splitting with gen_split_2523 (sse.md:14227)\n");
23758 : start_sequence ();
23759 : #define FAIL return (end_sequence (), nullptr)
23760 : #define DONE return end_sequence ()
23761 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23762 : {
23763 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23764 : int reg6 = 0xF0;
23765 : int reg2 = 0xCC;
23766 : int reg1 = 0xAA;
23767 : int reg3 = 0;
23768 : int reg4 = 0;
23769 : int reg_mask, tmp1, tmp2;
23770 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23771 : STRIP_UNARY (operands[4])))
23772 : {
23773 : reg4 = reg1;
23774 : reg3 = reg6;
23775 : operands[6] = operands[3];
23776 : }
23777 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23778 : STRIP_UNARY (operands[4])))
23779 : {
23780 : reg4 = reg2;
23781 : reg3 = reg6;
23782 : operands[6] = operands[3];
23783 : }
23784 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23785 : STRIP_UNARY (operands[3])))
23786 : {
23787 : reg4 = reg6;
23788 : reg3 = reg1;
23789 : operands[6] = operands[4];
23790 : }
23791 : else
23792 : {
23793 : reg4 = reg6;
23794 : reg3 = reg2;
23795 : operands[6] = operands[4];
23796 : }
23797 :
23798 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23799 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23800 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23801 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23802 :
23803 : tmp1 = reg1 ^ reg2;
23804 : tmp2 = tmp1 & reg3;
23805 : reg_mask = tmp2 | reg4;
23806 : reg_mask &= 0xFF;
23807 :
23808 : operands[1] = STRIP_UNARY (operands[1]);
23809 : operands[2] = STRIP_UNARY (operands[2]);
23810 : operands[6] = STRIP_UNARY (operands[6]);
23811 : operands[5] = GEN_INT (reg_mask);
23812 : if (!register_operand (operands[2], V8HImode))
23813 : operands[2] = force_reg (V8HImode, operands[2]);
23814 : if (!register_operand (operands[6], V8HImode))
23815 : operands[6] = force_reg (V8HImode, operands[6]);
23816 :
23817 : }
23818 : #undef DONE
23819 : #undef FAIL
23820 : static const uint8_t expand_encoding[] = {
23821 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23822 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23823 : 0x25
23824 : };
23825 : return complete_seq (expand_encoding, operands);
23826 : }
23827 :
23828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23829 : extern rtx_insn *gen_split_2533 (rtx_insn *, rtx *);
23830 : rtx_insn *
23831 : gen_split_2533 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23832 : {
23833 : if (dump_file)
23834 : fprintf (dump_file, "Splitting with gen_split_2533 (sse.md:14227)\n");
23835 : start_sequence ();
23836 : #define FAIL return (end_sequence (), nullptr)
23837 : #define DONE return end_sequence ()
23838 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23839 : {
23840 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23841 : int reg6 = 0xF0;
23842 : int reg2 = 0xCC;
23843 : int reg1 = 0xAA;
23844 : int reg3 = 0;
23845 : int reg4 = 0;
23846 : int reg_mask, tmp1, tmp2;
23847 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23848 : STRIP_UNARY (operands[4])))
23849 : {
23850 : reg4 = reg1;
23851 : reg3 = reg6;
23852 : operands[6] = operands[3];
23853 : }
23854 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23855 : STRIP_UNARY (operands[4])))
23856 : {
23857 : reg4 = reg2;
23858 : reg3 = reg6;
23859 : operands[6] = operands[3];
23860 : }
23861 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23862 : STRIP_UNARY (operands[3])))
23863 : {
23864 : reg4 = reg6;
23865 : reg3 = reg1;
23866 : operands[6] = operands[4];
23867 : }
23868 : else
23869 : {
23870 : reg4 = reg6;
23871 : reg3 = reg2;
23872 : operands[6] = operands[4];
23873 : }
23874 :
23875 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23876 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23877 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23878 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23879 :
23880 : tmp1 = reg1 ^ reg2;
23881 : tmp2 = tmp1 | reg3;
23882 : reg_mask = tmp2 ^ reg4;
23883 : reg_mask &= 0xFF;
23884 :
23885 : operands[1] = STRIP_UNARY (operands[1]);
23886 : operands[2] = STRIP_UNARY (operands[2]);
23887 : operands[6] = STRIP_UNARY (operands[6]);
23888 : operands[5] = GEN_INT (reg_mask);
23889 : if (!register_operand (operands[2], V8HImode))
23890 : operands[2] = force_reg (V8HImode, operands[2]);
23891 : if (!register_operand (operands[6], V8HImode))
23892 : operands[6] = force_reg (V8HImode, operands[6]);
23893 :
23894 : }
23895 : #undef DONE
23896 : #undef FAIL
23897 : static const uint8_t expand_encoding[] = {
23898 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23899 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23900 : 0x25
23901 : };
23902 : return complete_seq (expand_encoding, operands);
23903 : }
23904 :
23905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23906 : extern rtx_insn *gen_split_2543 (rtx_insn *, rtx *);
23907 : rtx_insn *
23908 : gen_split_2543 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23909 : {
23910 : if (dump_file)
23911 : fprintf (dump_file, "Splitting with gen_split_2543 (sse.md:14227)\n");
23912 : start_sequence ();
23913 : #define FAIL return (end_sequence (), nullptr)
23914 : #define DONE return end_sequence ()
23915 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23916 : {
23917 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23918 : int reg6 = 0xF0;
23919 : int reg2 = 0xCC;
23920 : int reg1 = 0xAA;
23921 : int reg3 = 0;
23922 : int reg4 = 0;
23923 : int reg_mask, tmp1, tmp2;
23924 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23925 : STRIP_UNARY (operands[4])))
23926 : {
23927 : reg4 = reg1;
23928 : reg3 = reg6;
23929 : operands[6] = operands[3];
23930 : }
23931 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23932 : STRIP_UNARY (operands[4])))
23933 : {
23934 : reg4 = reg2;
23935 : reg3 = reg6;
23936 : operands[6] = operands[3];
23937 : }
23938 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23939 : STRIP_UNARY (operands[3])))
23940 : {
23941 : reg4 = reg6;
23942 : reg3 = reg1;
23943 : operands[6] = operands[4];
23944 : }
23945 : else
23946 : {
23947 : reg4 = reg6;
23948 : reg3 = reg2;
23949 : operands[6] = operands[4];
23950 : }
23951 :
23952 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23953 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23954 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23955 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23956 :
23957 : tmp1 = reg1 & reg2;
23958 : tmp2 = tmp1 & reg3;
23959 : reg_mask = tmp2 & reg4;
23960 : reg_mask &= 0xFF;
23961 :
23962 : operands[1] = STRIP_UNARY (operands[1]);
23963 : operands[2] = STRIP_UNARY (operands[2]);
23964 : operands[6] = STRIP_UNARY (operands[6]);
23965 : operands[5] = GEN_INT (reg_mask);
23966 : if (!register_operand (operands[2], V16SImode))
23967 : operands[2] = force_reg (V16SImode, operands[2]);
23968 : if (!register_operand (operands[6], V16SImode))
23969 : operands[6] = force_reg (V16SImode, operands[6]);
23970 :
23971 : }
23972 : #undef DONE
23973 : #undef FAIL
23974 : static const uint8_t expand_encoding[] = {
23975 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
23976 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23977 : 0x25
23978 : };
23979 : return complete_seq (expand_encoding, operands);
23980 : }
23981 :
23982 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23983 : extern rtx_insn *gen_split_2553 (rtx_insn *, rtx *);
23984 : rtx_insn *
23985 : gen_split_2553 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23986 : {
23987 : if (dump_file)
23988 : fprintf (dump_file, "Splitting with gen_split_2553 (sse.md:14227)\n");
23989 : start_sequence ();
23990 : #define FAIL return (end_sequence (), nullptr)
23991 : #define DONE return end_sequence ()
23992 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23993 : {
23994 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23995 : int reg6 = 0xF0;
23996 : int reg2 = 0xCC;
23997 : int reg1 = 0xAA;
23998 : int reg3 = 0;
23999 : int reg4 = 0;
24000 : int reg_mask, tmp1, tmp2;
24001 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24002 : STRIP_UNARY (operands[4])))
24003 : {
24004 : reg4 = reg1;
24005 : reg3 = reg6;
24006 : operands[6] = operands[3];
24007 : }
24008 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24009 : STRIP_UNARY (operands[4])))
24010 : {
24011 : reg4 = reg2;
24012 : reg3 = reg6;
24013 : operands[6] = operands[3];
24014 : }
24015 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24016 : STRIP_UNARY (operands[3])))
24017 : {
24018 : reg4 = reg6;
24019 : reg3 = reg1;
24020 : operands[6] = operands[4];
24021 : }
24022 : else
24023 : {
24024 : reg4 = reg6;
24025 : reg3 = reg2;
24026 : operands[6] = operands[4];
24027 : }
24028 :
24029 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24030 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24031 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24032 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24033 :
24034 : tmp1 = reg1 & reg2;
24035 : tmp2 = tmp1 | reg3;
24036 : reg_mask = tmp2 | reg4;
24037 : reg_mask &= 0xFF;
24038 :
24039 : operands[1] = STRIP_UNARY (operands[1]);
24040 : operands[2] = STRIP_UNARY (operands[2]);
24041 : operands[6] = STRIP_UNARY (operands[6]);
24042 : operands[5] = GEN_INT (reg_mask);
24043 : if (!register_operand (operands[2], V16SImode))
24044 : operands[2] = force_reg (V16SImode, operands[2]);
24045 : if (!register_operand (operands[6], V16SImode))
24046 : operands[6] = force_reg (V16SImode, operands[6]);
24047 :
24048 : }
24049 : #undef DONE
24050 : #undef FAIL
24051 : static const uint8_t expand_encoding[] = {
24052 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24053 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24054 : 0x25
24055 : };
24056 : return complete_seq (expand_encoding, operands);
24057 : }
24058 :
24059 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24060 : extern rtx_insn *gen_split_2563 (rtx_insn *, rtx *);
24061 : rtx_insn *
24062 : gen_split_2563 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24063 : {
24064 : if (dump_file)
24065 : fprintf (dump_file, "Splitting with gen_split_2563 (sse.md:14227)\n");
24066 : start_sequence ();
24067 : #define FAIL return (end_sequence (), nullptr)
24068 : #define DONE return end_sequence ()
24069 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24070 : {
24071 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24072 : int reg6 = 0xF0;
24073 : int reg2 = 0xCC;
24074 : int reg1 = 0xAA;
24075 : int reg3 = 0;
24076 : int reg4 = 0;
24077 : int reg_mask, tmp1, tmp2;
24078 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24079 : STRIP_UNARY (operands[4])))
24080 : {
24081 : reg4 = reg1;
24082 : reg3 = reg6;
24083 : operands[6] = operands[3];
24084 : }
24085 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24086 : STRIP_UNARY (operands[4])))
24087 : {
24088 : reg4 = reg2;
24089 : reg3 = reg6;
24090 : operands[6] = operands[3];
24091 : }
24092 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24093 : STRIP_UNARY (operands[3])))
24094 : {
24095 : reg4 = reg6;
24096 : reg3 = reg1;
24097 : operands[6] = operands[4];
24098 : }
24099 : else
24100 : {
24101 : reg4 = reg6;
24102 : reg3 = reg2;
24103 : operands[6] = operands[4];
24104 : }
24105 :
24106 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24107 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24108 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24109 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24110 :
24111 : tmp1 = reg1 & reg2;
24112 : tmp2 = tmp1 ^ reg3;
24113 : reg_mask = tmp2 ^ reg4;
24114 : reg_mask &= 0xFF;
24115 :
24116 : operands[1] = STRIP_UNARY (operands[1]);
24117 : operands[2] = STRIP_UNARY (operands[2]);
24118 : operands[6] = STRIP_UNARY (operands[6]);
24119 : operands[5] = GEN_INT (reg_mask);
24120 : if (!register_operand (operands[2], V16SImode))
24121 : operands[2] = force_reg (V16SImode, operands[2]);
24122 : if (!register_operand (operands[6], V16SImode))
24123 : operands[6] = force_reg (V16SImode, operands[6]);
24124 :
24125 : }
24126 : #undef DONE
24127 : #undef FAIL
24128 : static const uint8_t expand_encoding[] = {
24129 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24130 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24131 : 0x25
24132 : };
24133 : return complete_seq (expand_encoding, operands);
24134 : }
24135 :
24136 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24137 : extern rtx_insn *gen_split_2573 (rtx_insn *, rtx *);
24138 : rtx_insn *
24139 : gen_split_2573 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24140 : {
24141 : if (dump_file)
24142 : fprintf (dump_file, "Splitting with gen_split_2573 (sse.md:14227)\n");
24143 : start_sequence ();
24144 : #define FAIL return (end_sequence (), nullptr)
24145 : #define DONE return end_sequence ()
24146 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24147 : {
24148 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24149 : int reg6 = 0xF0;
24150 : int reg2 = 0xCC;
24151 : int reg1 = 0xAA;
24152 : int reg3 = 0;
24153 : int reg4 = 0;
24154 : int reg_mask, tmp1, tmp2;
24155 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24156 : STRIP_UNARY (operands[4])))
24157 : {
24158 : reg4 = reg1;
24159 : reg3 = reg6;
24160 : operands[6] = operands[3];
24161 : }
24162 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24163 : STRIP_UNARY (operands[4])))
24164 : {
24165 : reg4 = reg2;
24166 : reg3 = reg6;
24167 : operands[6] = operands[3];
24168 : }
24169 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24170 : STRIP_UNARY (operands[3])))
24171 : {
24172 : reg4 = reg6;
24173 : reg3 = reg1;
24174 : operands[6] = operands[4];
24175 : }
24176 : else
24177 : {
24178 : reg4 = reg6;
24179 : reg3 = reg2;
24180 : operands[6] = operands[4];
24181 : }
24182 :
24183 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24184 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24185 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24186 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24187 :
24188 : tmp1 = reg1 | reg2;
24189 : tmp2 = tmp1 & reg3;
24190 : reg_mask = tmp2 & reg4;
24191 : reg_mask &= 0xFF;
24192 :
24193 : operands[1] = STRIP_UNARY (operands[1]);
24194 : operands[2] = STRIP_UNARY (operands[2]);
24195 : operands[6] = STRIP_UNARY (operands[6]);
24196 : operands[5] = GEN_INT (reg_mask);
24197 : if (!register_operand (operands[2], V8SImode))
24198 : operands[2] = force_reg (V8SImode, operands[2]);
24199 : if (!register_operand (operands[6], V8SImode))
24200 : operands[6] = force_reg (V8SImode, operands[6]);
24201 :
24202 : }
24203 : #undef DONE
24204 : #undef FAIL
24205 : static const uint8_t expand_encoding[] = {
24206 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24207 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24208 : 0x25
24209 : };
24210 : return complete_seq (expand_encoding, operands);
24211 : }
24212 :
24213 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24214 : extern rtx_insn *gen_split_2583 (rtx_insn *, rtx *);
24215 : rtx_insn *
24216 : gen_split_2583 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24217 : {
24218 : if (dump_file)
24219 : fprintf (dump_file, "Splitting with gen_split_2583 (sse.md:14227)\n");
24220 : start_sequence ();
24221 : #define FAIL return (end_sequence (), nullptr)
24222 : #define DONE return end_sequence ()
24223 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24224 : {
24225 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24226 : int reg6 = 0xF0;
24227 : int reg2 = 0xCC;
24228 : int reg1 = 0xAA;
24229 : int reg3 = 0;
24230 : int reg4 = 0;
24231 : int reg_mask, tmp1, tmp2;
24232 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24233 : STRIP_UNARY (operands[4])))
24234 : {
24235 : reg4 = reg1;
24236 : reg3 = reg6;
24237 : operands[6] = operands[3];
24238 : }
24239 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24240 : STRIP_UNARY (operands[4])))
24241 : {
24242 : reg4 = reg2;
24243 : reg3 = reg6;
24244 : operands[6] = operands[3];
24245 : }
24246 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24247 : STRIP_UNARY (operands[3])))
24248 : {
24249 : reg4 = reg6;
24250 : reg3 = reg1;
24251 : operands[6] = operands[4];
24252 : }
24253 : else
24254 : {
24255 : reg4 = reg6;
24256 : reg3 = reg2;
24257 : operands[6] = operands[4];
24258 : }
24259 :
24260 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24261 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24262 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24263 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24264 :
24265 : tmp1 = reg1 | reg2;
24266 : tmp2 = tmp1 | reg3;
24267 : reg_mask = tmp2 | reg4;
24268 : reg_mask &= 0xFF;
24269 :
24270 : operands[1] = STRIP_UNARY (operands[1]);
24271 : operands[2] = STRIP_UNARY (operands[2]);
24272 : operands[6] = STRIP_UNARY (operands[6]);
24273 : operands[5] = GEN_INT (reg_mask);
24274 : if (!register_operand (operands[2], V8SImode))
24275 : operands[2] = force_reg (V8SImode, operands[2]);
24276 : if (!register_operand (operands[6], V8SImode))
24277 : operands[6] = force_reg (V8SImode, operands[6]);
24278 :
24279 : }
24280 : #undef DONE
24281 : #undef FAIL
24282 : static const uint8_t expand_encoding[] = {
24283 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24284 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24285 : 0x25
24286 : };
24287 : return complete_seq (expand_encoding, operands);
24288 : }
24289 :
24290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24291 : extern rtx_insn *gen_split_2593 (rtx_insn *, rtx *);
24292 : rtx_insn *
24293 : gen_split_2593 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24294 : {
24295 : if (dump_file)
24296 : fprintf (dump_file, "Splitting with gen_split_2593 (sse.md:14227)\n");
24297 : start_sequence ();
24298 : #define FAIL return (end_sequence (), nullptr)
24299 : #define DONE return end_sequence ()
24300 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24301 : {
24302 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24303 : int reg6 = 0xF0;
24304 : int reg2 = 0xCC;
24305 : int reg1 = 0xAA;
24306 : int reg3 = 0;
24307 : int reg4 = 0;
24308 : int reg_mask, tmp1, tmp2;
24309 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24310 : STRIP_UNARY (operands[4])))
24311 : {
24312 : reg4 = reg1;
24313 : reg3 = reg6;
24314 : operands[6] = operands[3];
24315 : }
24316 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24317 : STRIP_UNARY (operands[4])))
24318 : {
24319 : reg4 = reg2;
24320 : reg3 = reg6;
24321 : operands[6] = operands[3];
24322 : }
24323 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24324 : STRIP_UNARY (operands[3])))
24325 : {
24326 : reg4 = reg6;
24327 : reg3 = reg1;
24328 : operands[6] = operands[4];
24329 : }
24330 : else
24331 : {
24332 : reg4 = reg6;
24333 : reg3 = reg2;
24334 : operands[6] = operands[4];
24335 : }
24336 :
24337 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24338 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24339 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24340 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24341 :
24342 : tmp1 = reg1 | reg2;
24343 : tmp2 = tmp1 ^ reg3;
24344 : reg_mask = tmp2 ^ reg4;
24345 : reg_mask &= 0xFF;
24346 :
24347 : operands[1] = STRIP_UNARY (operands[1]);
24348 : operands[2] = STRIP_UNARY (operands[2]);
24349 : operands[6] = STRIP_UNARY (operands[6]);
24350 : operands[5] = GEN_INT (reg_mask);
24351 : if (!register_operand (operands[2], V8SImode))
24352 : operands[2] = force_reg (V8SImode, operands[2]);
24353 : if (!register_operand (operands[6], V8SImode))
24354 : operands[6] = force_reg (V8SImode, operands[6]);
24355 :
24356 : }
24357 : #undef DONE
24358 : #undef FAIL
24359 : static const uint8_t expand_encoding[] = {
24360 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24361 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24362 : 0x25
24363 : };
24364 : return complete_seq (expand_encoding, operands);
24365 : }
24366 :
24367 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24368 : extern rtx_insn *gen_split_2603 (rtx_insn *, rtx *);
24369 : rtx_insn *
24370 : gen_split_2603 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24371 : {
24372 : if (dump_file)
24373 : fprintf (dump_file, "Splitting with gen_split_2603 (sse.md:14227)\n");
24374 : start_sequence ();
24375 : #define FAIL return (end_sequence (), nullptr)
24376 : #define DONE return end_sequence ()
24377 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24378 : {
24379 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24380 : int reg6 = 0xF0;
24381 : int reg2 = 0xCC;
24382 : int reg1 = 0xAA;
24383 : int reg3 = 0;
24384 : int reg4 = 0;
24385 : int reg_mask, tmp1, tmp2;
24386 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24387 : STRIP_UNARY (operands[4])))
24388 : {
24389 : reg4 = reg1;
24390 : reg3 = reg6;
24391 : operands[6] = operands[3];
24392 : }
24393 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24394 : STRIP_UNARY (operands[4])))
24395 : {
24396 : reg4 = reg2;
24397 : reg3 = reg6;
24398 : operands[6] = operands[3];
24399 : }
24400 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24401 : STRIP_UNARY (operands[3])))
24402 : {
24403 : reg4 = reg6;
24404 : reg3 = reg1;
24405 : operands[6] = operands[4];
24406 : }
24407 : else
24408 : {
24409 : reg4 = reg6;
24410 : reg3 = reg2;
24411 : operands[6] = operands[4];
24412 : }
24413 :
24414 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24415 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24416 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24417 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24418 :
24419 : tmp1 = reg1 ^ reg2;
24420 : tmp2 = tmp1 & reg3;
24421 : reg_mask = tmp2 & reg4;
24422 : reg_mask &= 0xFF;
24423 :
24424 : operands[1] = STRIP_UNARY (operands[1]);
24425 : operands[2] = STRIP_UNARY (operands[2]);
24426 : operands[6] = STRIP_UNARY (operands[6]);
24427 : operands[5] = GEN_INT (reg_mask);
24428 : if (!register_operand (operands[2], V4SImode))
24429 : operands[2] = force_reg (V4SImode, operands[2]);
24430 : if (!register_operand (operands[6], V4SImode))
24431 : operands[6] = force_reg (V4SImode, operands[6]);
24432 :
24433 : }
24434 : #undef DONE
24435 : #undef FAIL
24436 : static const uint8_t expand_encoding[] = {
24437 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24438 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24439 : 0x25
24440 : };
24441 : return complete_seq (expand_encoding, operands);
24442 : }
24443 :
24444 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24445 : extern rtx_insn *gen_split_2613 (rtx_insn *, rtx *);
24446 : rtx_insn *
24447 : gen_split_2613 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24448 : {
24449 : if (dump_file)
24450 : fprintf (dump_file, "Splitting with gen_split_2613 (sse.md:14227)\n");
24451 : start_sequence ();
24452 : #define FAIL return (end_sequence (), nullptr)
24453 : #define DONE return end_sequence ()
24454 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24455 : {
24456 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24457 : int reg6 = 0xF0;
24458 : int reg2 = 0xCC;
24459 : int reg1 = 0xAA;
24460 : int reg3 = 0;
24461 : int reg4 = 0;
24462 : int reg_mask, tmp1, tmp2;
24463 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24464 : STRIP_UNARY (operands[4])))
24465 : {
24466 : reg4 = reg1;
24467 : reg3 = reg6;
24468 : operands[6] = operands[3];
24469 : }
24470 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24471 : STRIP_UNARY (operands[4])))
24472 : {
24473 : reg4 = reg2;
24474 : reg3 = reg6;
24475 : operands[6] = operands[3];
24476 : }
24477 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24478 : STRIP_UNARY (operands[3])))
24479 : {
24480 : reg4 = reg6;
24481 : reg3 = reg1;
24482 : operands[6] = operands[4];
24483 : }
24484 : else
24485 : {
24486 : reg4 = reg6;
24487 : reg3 = reg2;
24488 : operands[6] = operands[4];
24489 : }
24490 :
24491 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24492 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24493 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24494 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24495 :
24496 : tmp1 = reg1 ^ reg2;
24497 : tmp2 = tmp1 | reg3;
24498 : reg_mask = tmp2 | reg4;
24499 : reg_mask &= 0xFF;
24500 :
24501 : operands[1] = STRIP_UNARY (operands[1]);
24502 : operands[2] = STRIP_UNARY (operands[2]);
24503 : operands[6] = STRIP_UNARY (operands[6]);
24504 : operands[5] = GEN_INT (reg_mask);
24505 : if (!register_operand (operands[2], V4SImode))
24506 : operands[2] = force_reg (V4SImode, operands[2]);
24507 : if (!register_operand (operands[6], V4SImode))
24508 : operands[6] = force_reg (V4SImode, operands[6]);
24509 :
24510 : }
24511 : #undef DONE
24512 : #undef FAIL
24513 : static const uint8_t expand_encoding[] = {
24514 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24515 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24516 : 0x25
24517 : };
24518 : return complete_seq (expand_encoding, operands);
24519 : }
24520 :
24521 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24522 : extern rtx_insn *gen_split_2623 (rtx_insn *, rtx *);
24523 : rtx_insn *
24524 : gen_split_2623 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24525 : {
24526 : if (dump_file)
24527 : fprintf (dump_file, "Splitting with gen_split_2623 (sse.md:14227)\n");
24528 : start_sequence ();
24529 : #define FAIL return (end_sequence (), nullptr)
24530 : #define DONE return end_sequence ()
24531 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24532 : {
24533 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24534 : int reg6 = 0xF0;
24535 : int reg2 = 0xCC;
24536 : int reg1 = 0xAA;
24537 : int reg3 = 0;
24538 : int reg4 = 0;
24539 : int reg_mask, tmp1, tmp2;
24540 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24541 : STRIP_UNARY (operands[4])))
24542 : {
24543 : reg4 = reg1;
24544 : reg3 = reg6;
24545 : operands[6] = operands[3];
24546 : }
24547 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24548 : STRIP_UNARY (operands[4])))
24549 : {
24550 : reg4 = reg2;
24551 : reg3 = reg6;
24552 : operands[6] = operands[3];
24553 : }
24554 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24555 : STRIP_UNARY (operands[3])))
24556 : {
24557 : reg4 = reg6;
24558 : reg3 = reg1;
24559 : operands[6] = operands[4];
24560 : }
24561 : else
24562 : {
24563 : reg4 = reg6;
24564 : reg3 = reg2;
24565 : operands[6] = operands[4];
24566 : }
24567 :
24568 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24569 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24570 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24571 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24572 :
24573 : tmp1 = reg1 ^ reg2;
24574 : tmp2 = tmp1 ^ reg3;
24575 : reg_mask = tmp2 ^ reg4;
24576 : reg_mask &= 0xFF;
24577 :
24578 : operands[1] = STRIP_UNARY (operands[1]);
24579 : operands[2] = STRIP_UNARY (operands[2]);
24580 : operands[6] = STRIP_UNARY (operands[6]);
24581 : operands[5] = GEN_INT (reg_mask);
24582 : if (!register_operand (operands[2], V4SImode))
24583 : operands[2] = force_reg (V4SImode, operands[2]);
24584 : if (!register_operand (operands[6], V4SImode))
24585 : operands[6] = force_reg (V4SImode, operands[6]);
24586 :
24587 : }
24588 : #undef DONE
24589 : #undef FAIL
24590 : static const uint8_t expand_encoding[] = {
24591 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24592 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24593 : 0x25
24594 : };
24595 : return complete_seq (expand_encoding, operands);
24596 : }
24597 :
24598 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24599 : extern rtx_insn *gen_split_2633 (rtx_insn *, rtx *);
24600 : rtx_insn *
24601 : gen_split_2633 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24602 : {
24603 : if (dump_file)
24604 : fprintf (dump_file, "Splitting with gen_split_2633 (sse.md:14227)\n");
24605 : start_sequence ();
24606 : #define FAIL return (end_sequence (), nullptr)
24607 : #define DONE return end_sequence ()
24608 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24609 : {
24610 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24611 : int reg6 = 0xF0;
24612 : int reg2 = 0xCC;
24613 : int reg1 = 0xAA;
24614 : int reg3 = 0;
24615 : int reg4 = 0;
24616 : int reg_mask, tmp1, tmp2;
24617 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24618 : STRIP_UNARY (operands[4])))
24619 : {
24620 : reg4 = reg1;
24621 : reg3 = reg6;
24622 : operands[6] = operands[3];
24623 : }
24624 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24625 : STRIP_UNARY (operands[4])))
24626 : {
24627 : reg4 = reg2;
24628 : reg3 = reg6;
24629 : operands[6] = operands[3];
24630 : }
24631 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24632 : STRIP_UNARY (operands[3])))
24633 : {
24634 : reg4 = reg6;
24635 : reg3 = reg1;
24636 : operands[6] = operands[4];
24637 : }
24638 : else
24639 : {
24640 : reg4 = reg6;
24641 : reg3 = reg2;
24642 : operands[6] = operands[4];
24643 : }
24644 :
24645 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24646 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24647 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24648 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24649 :
24650 : tmp1 = reg1 & reg2;
24651 : tmp2 = tmp1 | reg3;
24652 : reg_mask = tmp2 & reg4;
24653 : reg_mask &= 0xFF;
24654 :
24655 : operands[1] = STRIP_UNARY (operands[1]);
24656 : operands[2] = STRIP_UNARY (operands[2]);
24657 : operands[6] = STRIP_UNARY (operands[6]);
24658 : operands[5] = GEN_INT (reg_mask);
24659 : if (!register_operand (operands[2], V8DImode))
24660 : operands[2] = force_reg (V8DImode, operands[2]);
24661 : if (!register_operand (operands[6], V8DImode))
24662 : operands[6] = force_reg (V8DImode, operands[6]);
24663 :
24664 : }
24665 : #undef DONE
24666 : #undef FAIL
24667 : static const uint8_t expand_encoding[] = {
24668 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24669 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24670 : 0x25
24671 : };
24672 : return complete_seq (expand_encoding, operands);
24673 : }
24674 :
24675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24676 : extern rtx_insn *gen_split_2643 (rtx_insn *, rtx *);
24677 : rtx_insn *
24678 : gen_split_2643 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24679 : {
24680 : if (dump_file)
24681 : fprintf (dump_file, "Splitting with gen_split_2643 (sse.md:14227)\n");
24682 : start_sequence ();
24683 : #define FAIL return (end_sequence (), nullptr)
24684 : #define DONE return end_sequence ()
24685 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24686 : {
24687 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24688 : int reg6 = 0xF0;
24689 : int reg2 = 0xCC;
24690 : int reg1 = 0xAA;
24691 : int reg3 = 0;
24692 : int reg4 = 0;
24693 : int reg_mask, tmp1, tmp2;
24694 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24695 : STRIP_UNARY (operands[4])))
24696 : {
24697 : reg4 = reg1;
24698 : reg3 = reg6;
24699 : operands[6] = operands[3];
24700 : }
24701 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24702 : STRIP_UNARY (operands[4])))
24703 : {
24704 : reg4 = reg2;
24705 : reg3 = reg6;
24706 : operands[6] = operands[3];
24707 : }
24708 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24709 : STRIP_UNARY (operands[3])))
24710 : {
24711 : reg4 = reg6;
24712 : reg3 = reg1;
24713 : operands[6] = operands[4];
24714 : }
24715 : else
24716 : {
24717 : reg4 = reg6;
24718 : reg3 = reg2;
24719 : operands[6] = operands[4];
24720 : }
24721 :
24722 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24723 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24724 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24725 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24726 :
24727 : tmp1 = reg1 & reg2;
24728 : tmp2 = tmp1 ^ reg3;
24729 : reg_mask = tmp2 | reg4;
24730 : reg_mask &= 0xFF;
24731 :
24732 : operands[1] = STRIP_UNARY (operands[1]);
24733 : operands[2] = STRIP_UNARY (operands[2]);
24734 : operands[6] = STRIP_UNARY (operands[6]);
24735 : operands[5] = GEN_INT (reg_mask);
24736 : if (!register_operand (operands[2], V8DImode))
24737 : operands[2] = force_reg (V8DImode, operands[2]);
24738 : if (!register_operand (operands[6], V8DImode))
24739 : operands[6] = force_reg (V8DImode, operands[6]);
24740 :
24741 : }
24742 : #undef DONE
24743 : #undef FAIL
24744 : static const uint8_t expand_encoding[] = {
24745 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24746 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24747 : 0x25
24748 : };
24749 : return complete_seq (expand_encoding, operands);
24750 : }
24751 :
24752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24753 : extern rtx_insn *gen_split_2653 (rtx_insn *, rtx *);
24754 : rtx_insn *
24755 : gen_split_2653 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24756 : {
24757 : if (dump_file)
24758 : fprintf (dump_file, "Splitting with gen_split_2653 (sse.md:14227)\n");
24759 : start_sequence ();
24760 : #define FAIL return (end_sequence (), nullptr)
24761 : #define DONE return end_sequence ()
24762 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24763 : {
24764 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24765 : int reg6 = 0xF0;
24766 : int reg2 = 0xCC;
24767 : int reg1 = 0xAA;
24768 : int reg3 = 0;
24769 : int reg4 = 0;
24770 : int reg_mask, tmp1, tmp2;
24771 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24772 : STRIP_UNARY (operands[4])))
24773 : {
24774 : reg4 = reg1;
24775 : reg3 = reg6;
24776 : operands[6] = operands[3];
24777 : }
24778 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24779 : STRIP_UNARY (operands[4])))
24780 : {
24781 : reg4 = reg2;
24782 : reg3 = reg6;
24783 : operands[6] = operands[3];
24784 : }
24785 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24786 : STRIP_UNARY (operands[3])))
24787 : {
24788 : reg4 = reg6;
24789 : reg3 = reg1;
24790 : operands[6] = operands[4];
24791 : }
24792 : else
24793 : {
24794 : reg4 = reg6;
24795 : reg3 = reg2;
24796 : operands[6] = operands[4];
24797 : }
24798 :
24799 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24800 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24801 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24802 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24803 :
24804 : tmp1 = reg1 & reg2;
24805 : tmp2 = tmp1 & reg3;
24806 : reg_mask = tmp2 ^ reg4;
24807 : reg_mask &= 0xFF;
24808 :
24809 : operands[1] = STRIP_UNARY (operands[1]);
24810 : operands[2] = STRIP_UNARY (operands[2]);
24811 : operands[6] = STRIP_UNARY (operands[6]);
24812 : operands[5] = GEN_INT (reg_mask);
24813 : if (!register_operand (operands[2], V4DImode))
24814 : operands[2] = force_reg (V4DImode, operands[2]);
24815 : if (!register_operand (operands[6], V4DImode))
24816 : operands[6] = force_reg (V4DImode, operands[6]);
24817 :
24818 : }
24819 : #undef DONE
24820 : #undef FAIL
24821 : static const uint8_t expand_encoding[] = {
24822 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24823 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24824 : 0x25
24825 : };
24826 : return complete_seq (expand_encoding, operands);
24827 : }
24828 :
24829 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24830 : extern rtx_insn *gen_split_2663 (rtx_insn *, rtx *);
24831 : rtx_insn *
24832 : gen_split_2663 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24833 : {
24834 : if (dump_file)
24835 : fprintf (dump_file, "Splitting with gen_split_2663 (sse.md:14227)\n");
24836 : start_sequence ();
24837 : #define FAIL return (end_sequence (), nullptr)
24838 : #define DONE return end_sequence ()
24839 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24840 : {
24841 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24842 : int reg6 = 0xF0;
24843 : int reg2 = 0xCC;
24844 : int reg1 = 0xAA;
24845 : int reg3 = 0;
24846 : int reg4 = 0;
24847 : int reg_mask, tmp1, tmp2;
24848 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24849 : STRIP_UNARY (operands[4])))
24850 : {
24851 : reg4 = reg1;
24852 : reg3 = reg6;
24853 : operands[6] = operands[3];
24854 : }
24855 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24856 : STRIP_UNARY (operands[4])))
24857 : {
24858 : reg4 = reg2;
24859 : reg3 = reg6;
24860 : operands[6] = operands[3];
24861 : }
24862 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24863 : STRIP_UNARY (operands[3])))
24864 : {
24865 : reg4 = reg6;
24866 : reg3 = reg1;
24867 : operands[6] = operands[4];
24868 : }
24869 : else
24870 : {
24871 : reg4 = reg6;
24872 : reg3 = reg2;
24873 : operands[6] = operands[4];
24874 : }
24875 :
24876 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24877 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24878 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24879 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24880 :
24881 : tmp1 = reg1 | reg2;
24882 : tmp2 = tmp1 | reg3;
24883 : reg_mask = tmp2 & reg4;
24884 : reg_mask &= 0xFF;
24885 :
24886 : operands[1] = STRIP_UNARY (operands[1]);
24887 : operands[2] = STRIP_UNARY (operands[2]);
24888 : operands[6] = STRIP_UNARY (operands[6]);
24889 : operands[5] = GEN_INT (reg_mask);
24890 : if (!register_operand (operands[2], V4DImode))
24891 : operands[2] = force_reg (V4DImode, operands[2]);
24892 : if (!register_operand (operands[6], V4DImode))
24893 : operands[6] = force_reg (V4DImode, operands[6]);
24894 :
24895 : }
24896 : #undef DONE
24897 : #undef FAIL
24898 : static const uint8_t expand_encoding[] = {
24899 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24900 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24901 : 0x25
24902 : };
24903 : return complete_seq (expand_encoding, operands);
24904 : }
24905 :
24906 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24907 : extern rtx_insn *gen_split_2673 (rtx_insn *, rtx *);
24908 : rtx_insn *
24909 : gen_split_2673 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24910 : {
24911 : if (dump_file)
24912 : fprintf (dump_file, "Splitting with gen_split_2673 (sse.md:14227)\n");
24913 : start_sequence ();
24914 : #define FAIL return (end_sequence (), nullptr)
24915 : #define DONE return end_sequence ()
24916 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24917 : {
24918 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24919 : int reg6 = 0xF0;
24920 : int reg2 = 0xCC;
24921 : int reg1 = 0xAA;
24922 : int reg3 = 0;
24923 : int reg4 = 0;
24924 : int reg_mask, tmp1, tmp2;
24925 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24926 : STRIP_UNARY (operands[4])))
24927 : {
24928 : reg4 = reg1;
24929 : reg3 = reg6;
24930 : operands[6] = operands[3];
24931 : }
24932 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24933 : STRIP_UNARY (operands[4])))
24934 : {
24935 : reg4 = reg2;
24936 : reg3 = reg6;
24937 : operands[6] = operands[3];
24938 : }
24939 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24940 : STRIP_UNARY (operands[3])))
24941 : {
24942 : reg4 = reg6;
24943 : reg3 = reg1;
24944 : operands[6] = operands[4];
24945 : }
24946 : else
24947 : {
24948 : reg4 = reg6;
24949 : reg3 = reg2;
24950 : operands[6] = operands[4];
24951 : }
24952 :
24953 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24954 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24955 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24956 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24957 :
24958 : tmp1 = reg1 | reg2;
24959 : tmp2 = tmp1 ^ reg3;
24960 : reg_mask = tmp2 | reg4;
24961 : reg_mask &= 0xFF;
24962 :
24963 : operands[1] = STRIP_UNARY (operands[1]);
24964 : operands[2] = STRIP_UNARY (operands[2]);
24965 : operands[6] = STRIP_UNARY (operands[6]);
24966 : operands[5] = GEN_INT (reg_mask);
24967 : if (!register_operand (operands[2], V4DImode))
24968 : operands[2] = force_reg (V4DImode, operands[2]);
24969 : if (!register_operand (operands[6], V4DImode))
24970 : operands[6] = force_reg (V4DImode, operands[6]);
24971 :
24972 : }
24973 : #undef DONE
24974 : #undef FAIL
24975 : static const uint8_t expand_encoding[] = {
24976 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24977 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24978 : 0x25
24979 : };
24980 : return complete_seq (expand_encoding, operands);
24981 : }
24982 :
24983 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24984 : extern rtx_insn *gen_split_2683 (rtx_insn *, rtx *);
24985 : rtx_insn *
24986 : gen_split_2683 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24987 : {
24988 : if (dump_file)
24989 : fprintf (dump_file, "Splitting with gen_split_2683 (sse.md:14227)\n");
24990 : start_sequence ();
24991 : #define FAIL return (end_sequence (), nullptr)
24992 : #define DONE return end_sequence ()
24993 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24994 : {
24995 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24996 : int reg6 = 0xF0;
24997 : int reg2 = 0xCC;
24998 : int reg1 = 0xAA;
24999 : int reg3 = 0;
25000 : int reg4 = 0;
25001 : int reg_mask, tmp1, tmp2;
25002 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25003 : STRIP_UNARY (operands[4])))
25004 : {
25005 : reg4 = reg1;
25006 : reg3 = reg6;
25007 : operands[6] = operands[3];
25008 : }
25009 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25010 : STRIP_UNARY (operands[4])))
25011 : {
25012 : reg4 = reg2;
25013 : reg3 = reg6;
25014 : operands[6] = operands[3];
25015 : }
25016 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25017 : STRIP_UNARY (operands[3])))
25018 : {
25019 : reg4 = reg6;
25020 : reg3 = reg1;
25021 : operands[6] = operands[4];
25022 : }
25023 : else
25024 : {
25025 : reg4 = reg6;
25026 : reg3 = reg2;
25027 : operands[6] = operands[4];
25028 : }
25029 :
25030 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25031 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25032 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25033 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25034 :
25035 : tmp1 = reg1 | reg2;
25036 : tmp2 = tmp1 & reg3;
25037 : reg_mask = tmp2 ^ reg4;
25038 : reg_mask &= 0xFF;
25039 :
25040 : operands[1] = STRIP_UNARY (operands[1]);
25041 : operands[2] = STRIP_UNARY (operands[2]);
25042 : operands[6] = STRIP_UNARY (operands[6]);
25043 : operands[5] = GEN_INT (reg_mask);
25044 : if (!register_operand (operands[2], V2DImode))
25045 : operands[2] = force_reg (V2DImode, operands[2]);
25046 : if (!register_operand (operands[6], V2DImode))
25047 : operands[6] = force_reg (V2DImode, operands[6]);
25048 :
25049 : }
25050 : #undef DONE
25051 : #undef FAIL
25052 : static const uint8_t expand_encoding[] = {
25053 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25054 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25055 : 0x25
25056 : };
25057 : return complete_seq (expand_encoding, operands);
25058 : }
25059 :
25060 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25061 : extern rtx_insn *gen_split_2693 (rtx_insn *, rtx *);
25062 : rtx_insn *
25063 : gen_split_2693 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25064 : {
25065 : if (dump_file)
25066 : fprintf (dump_file, "Splitting with gen_split_2693 (sse.md:14227)\n");
25067 : start_sequence ();
25068 : #define FAIL return (end_sequence (), nullptr)
25069 : #define DONE return end_sequence ()
25070 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25071 : {
25072 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25073 : int reg6 = 0xF0;
25074 : int reg2 = 0xCC;
25075 : int reg1 = 0xAA;
25076 : int reg3 = 0;
25077 : int reg4 = 0;
25078 : int reg_mask, tmp1, tmp2;
25079 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25080 : STRIP_UNARY (operands[4])))
25081 : {
25082 : reg4 = reg1;
25083 : reg3 = reg6;
25084 : operands[6] = operands[3];
25085 : }
25086 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25087 : STRIP_UNARY (operands[4])))
25088 : {
25089 : reg4 = reg2;
25090 : reg3 = reg6;
25091 : operands[6] = operands[3];
25092 : }
25093 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25094 : STRIP_UNARY (operands[3])))
25095 : {
25096 : reg4 = reg6;
25097 : reg3 = reg1;
25098 : operands[6] = operands[4];
25099 : }
25100 : else
25101 : {
25102 : reg4 = reg6;
25103 : reg3 = reg2;
25104 : operands[6] = operands[4];
25105 : }
25106 :
25107 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25108 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25109 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25110 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25111 :
25112 : tmp1 = reg1 ^ reg2;
25113 : tmp2 = tmp1 | reg3;
25114 : reg_mask = tmp2 & reg4;
25115 : reg_mask &= 0xFF;
25116 :
25117 : operands[1] = STRIP_UNARY (operands[1]);
25118 : operands[2] = STRIP_UNARY (operands[2]);
25119 : operands[6] = STRIP_UNARY (operands[6]);
25120 : operands[5] = GEN_INT (reg_mask);
25121 : if (!register_operand (operands[2], V2DImode))
25122 : operands[2] = force_reg (V2DImode, operands[2]);
25123 : if (!register_operand (operands[6], V2DImode))
25124 : operands[6] = force_reg (V2DImode, operands[6]);
25125 :
25126 : }
25127 : #undef DONE
25128 : #undef FAIL
25129 : static const uint8_t expand_encoding[] = {
25130 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25131 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25132 : 0x25
25133 : };
25134 : return complete_seq (expand_encoding, operands);
25135 : }
25136 :
25137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25138 : extern rtx_insn *gen_split_2703 (rtx_insn *, rtx *);
25139 : rtx_insn *
25140 : gen_split_2703 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25141 : {
25142 : if (dump_file)
25143 : fprintf (dump_file, "Splitting with gen_split_2703 (sse.md:14227)\n");
25144 : start_sequence ();
25145 : #define FAIL return (end_sequence (), nullptr)
25146 : #define DONE return end_sequence ()
25147 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25148 : {
25149 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25150 : int reg6 = 0xF0;
25151 : int reg2 = 0xCC;
25152 : int reg1 = 0xAA;
25153 : int reg3 = 0;
25154 : int reg4 = 0;
25155 : int reg_mask, tmp1, tmp2;
25156 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25157 : STRIP_UNARY (operands[4])))
25158 : {
25159 : reg4 = reg1;
25160 : reg3 = reg6;
25161 : operands[6] = operands[3];
25162 : }
25163 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25164 : STRIP_UNARY (operands[4])))
25165 : {
25166 : reg4 = reg2;
25167 : reg3 = reg6;
25168 : operands[6] = operands[3];
25169 : }
25170 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25171 : STRIP_UNARY (operands[3])))
25172 : {
25173 : reg4 = reg6;
25174 : reg3 = reg1;
25175 : operands[6] = operands[4];
25176 : }
25177 : else
25178 : {
25179 : reg4 = reg6;
25180 : reg3 = reg2;
25181 : operands[6] = operands[4];
25182 : }
25183 :
25184 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25185 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25186 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25187 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25188 :
25189 : tmp1 = reg1 ^ reg2;
25190 : tmp2 = tmp1 ^ reg3;
25191 : reg_mask = tmp2 | reg4;
25192 : reg_mask &= 0xFF;
25193 :
25194 : operands[1] = STRIP_UNARY (operands[1]);
25195 : operands[2] = STRIP_UNARY (operands[2]);
25196 : operands[6] = STRIP_UNARY (operands[6]);
25197 : operands[5] = GEN_INT (reg_mask);
25198 : if (!register_operand (operands[2], V2DImode))
25199 : operands[2] = force_reg (V2DImode, operands[2]);
25200 : if (!register_operand (operands[6], V2DImode))
25201 : operands[6] = force_reg (V2DImode, operands[6]);
25202 :
25203 : }
25204 : #undef DONE
25205 : #undef FAIL
25206 : static const uint8_t expand_encoding[] = {
25207 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25208 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25209 : 0x25
25210 : };
25211 : return complete_seq (expand_encoding, operands);
25212 : }
25213 :
25214 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25215 : extern rtx_insn *gen_split_2713 (rtx_insn *, rtx *);
25216 : rtx_insn *
25217 : gen_split_2713 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25218 : {
25219 : if (dump_file)
25220 : fprintf (dump_file, "Splitting with gen_split_2713 (sse.md:14227)\n");
25221 : start_sequence ();
25222 : #define FAIL return (end_sequence (), nullptr)
25223 : #define DONE return end_sequence ()
25224 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25225 : {
25226 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25227 : int reg6 = 0xF0;
25228 : int reg2 = 0xCC;
25229 : int reg1 = 0xAA;
25230 : int reg3 = 0;
25231 : int reg4 = 0;
25232 : int reg_mask, tmp1, tmp2;
25233 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25234 : STRIP_UNARY (operands[4])))
25235 : {
25236 : reg4 = reg1;
25237 : reg3 = reg6;
25238 : operands[6] = operands[3];
25239 : }
25240 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25241 : STRIP_UNARY (operands[4])))
25242 : {
25243 : reg4 = reg2;
25244 : reg3 = reg6;
25245 : operands[6] = operands[3];
25246 : }
25247 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25248 : STRIP_UNARY (operands[3])))
25249 : {
25250 : reg4 = reg6;
25251 : reg3 = reg1;
25252 : operands[6] = operands[4];
25253 : }
25254 : else
25255 : {
25256 : reg4 = reg6;
25257 : reg3 = reg2;
25258 : operands[6] = operands[4];
25259 : }
25260 :
25261 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25262 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25263 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25264 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25265 :
25266 : tmp1 = reg1 ^ reg2;
25267 : tmp2 = tmp1 & reg3;
25268 : reg_mask = tmp2 ^ reg4;
25269 : reg_mask &= 0xFF;
25270 :
25271 : operands[1] = STRIP_UNARY (operands[1]);
25272 : operands[2] = STRIP_UNARY (operands[2]);
25273 : operands[6] = STRIP_UNARY (operands[6]);
25274 : operands[5] = GEN_INT (reg_mask);
25275 : if (!register_operand (operands[2], V32HFmode))
25276 : operands[2] = force_reg (V32HFmode, operands[2]);
25277 : if (!register_operand (operands[6], V32HFmode))
25278 : operands[6] = force_reg (V32HFmode, operands[6]);
25279 :
25280 : }
25281 : #undef DONE
25282 : #undef FAIL
25283 : static const uint8_t expand_encoding[] = {
25284 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25285 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25286 : 0x25
25287 : };
25288 : return complete_seq (expand_encoding, operands);
25289 : }
25290 :
25291 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25292 : extern rtx_insn *gen_split_2723 (rtx_insn *, rtx *);
25293 : rtx_insn *
25294 : gen_split_2723 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25295 : {
25296 : if (dump_file)
25297 : fprintf (dump_file, "Splitting with gen_split_2723 (sse.md:14227)\n");
25298 : start_sequence ();
25299 : #define FAIL return (end_sequence (), nullptr)
25300 : #define DONE return end_sequence ()
25301 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25302 : {
25303 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25304 : int reg6 = 0xF0;
25305 : int reg2 = 0xCC;
25306 : int reg1 = 0xAA;
25307 : int reg3 = 0;
25308 : int reg4 = 0;
25309 : int reg_mask, tmp1, tmp2;
25310 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25311 : STRIP_UNARY (operands[4])))
25312 : {
25313 : reg4 = reg1;
25314 : reg3 = reg6;
25315 : operands[6] = operands[3];
25316 : }
25317 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25318 : STRIP_UNARY (operands[4])))
25319 : {
25320 : reg4 = reg2;
25321 : reg3 = reg6;
25322 : operands[6] = operands[3];
25323 : }
25324 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25325 : STRIP_UNARY (operands[3])))
25326 : {
25327 : reg4 = reg6;
25328 : reg3 = reg1;
25329 : operands[6] = operands[4];
25330 : }
25331 : else
25332 : {
25333 : reg4 = reg6;
25334 : reg3 = reg2;
25335 : operands[6] = operands[4];
25336 : }
25337 :
25338 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25339 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25340 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25341 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25342 :
25343 : tmp1 = reg1 & reg2;
25344 : tmp2 = tmp1 ^ reg3;
25345 : reg_mask = tmp2 & reg4;
25346 : reg_mask &= 0xFF;
25347 :
25348 : operands[1] = STRIP_UNARY (operands[1]);
25349 : operands[2] = STRIP_UNARY (operands[2]);
25350 : operands[6] = STRIP_UNARY (operands[6]);
25351 : operands[5] = GEN_INT (reg_mask);
25352 : if (!register_operand (operands[2], V32HFmode))
25353 : operands[2] = force_reg (V32HFmode, operands[2]);
25354 : if (!register_operand (operands[6], V32HFmode))
25355 : operands[6] = force_reg (V32HFmode, operands[6]);
25356 :
25357 : }
25358 : #undef DONE
25359 : #undef FAIL
25360 : static const uint8_t expand_encoding[] = {
25361 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25362 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25363 : 0x25
25364 : };
25365 : return complete_seq (expand_encoding, operands);
25366 : }
25367 :
25368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25369 : extern rtx_insn *gen_split_2733 (rtx_insn *, rtx *);
25370 : rtx_insn *
25371 : gen_split_2733 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25372 : {
25373 : if (dump_file)
25374 : fprintf (dump_file, "Splitting with gen_split_2733 (sse.md:14227)\n");
25375 : start_sequence ();
25376 : #define FAIL return (end_sequence (), nullptr)
25377 : #define DONE return end_sequence ()
25378 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25379 : {
25380 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25381 : int reg6 = 0xF0;
25382 : int reg2 = 0xCC;
25383 : int reg1 = 0xAA;
25384 : int reg3 = 0;
25385 : int reg4 = 0;
25386 : int reg_mask, tmp1, tmp2;
25387 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25388 : STRIP_UNARY (operands[4])))
25389 : {
25390 : reg4 = reg1;
25391 : reg3 = reg6;
25392 : operands[6] = operands[3];
25393 : }
25394 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25395 : STRIP_UNARY (operands[4])))
25396 : {
25397 : reg4 = reg2;
25398 : reg3 = reg6;
25399 : operands[6] = operands[3];
25400 : }
25401 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25402 : STRIP_UNARY (operands[3])))
25403 : {
25404 : reg4 = reg6;
25405 : reg3 = reg1;
25406 : operands[6] = operands[4];
25407 : }
25408 : else
25409 : {
25410 : reg4 = reg6;
25411 : reg3 = reg2;
25412 : operands[6] = operands[4];
25413 : }
25414 :
25415 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25416 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25417 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25418 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25419 :
25420 : tmp1 = reg1 & reg2;
25421 : tmp2 = tmp1 & reg3;
25422 : reg_mask = tmp2 | reg4;
25423 : reg_mask &= 0xFF;
25424 :
25425 : operands[1] = STRIP_UNARY (operands[1]);
25426 : operands[2] = STRIP_UNARY (operands[2]);
25427 : operands[6] = STRIP_UNARY (operands[6]);
25428 : operands[5] = GEN_INT (reg_mask);
25429 : if (!register_operand (operands[2], V16HFmode))
25430 : operands[2] = force_reg (V16HFmode, operands[2]);
25431 : if (!register_operand (operands[6], V16HFmode))
25432 : operands[6] = force_reg (V16HFmode, operands[6]);
25433 :
25434 : }
25435 : #undef DONE
25436 : #undef FAIL
25437 : static const uint8_t expand_encoding[] = {
25438 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25439 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25440 : 0x25
25441 : };
25442 : return complete_seq (expand_encoding, operands);
25443 : }
25444 :
25445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25446 : extern rtx_insn *gen_split_2743 (rtx_insn *, rtx *);
25447 : rtx_insn *
25448 : gen_split_2743 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25449 : {
25450 : if (dump_file)
25451 : fprintf (dump_file, "Splitting with gen_split_2743 (sse.md:14227)\n");
25452 : start_sequence ();
25453 : #define FAIL return (end_sequence (), nullptr)
25454 : #define DONE return end_sequence ()
25455 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25456 : {
25457 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25458 : int reg6 = 0xF0;
25459 : int reg2 = 0xCC;
25460 : int reg1 = 0xAA;
25461 : int reg3 = 0;
25462 : int reg4 = 0;
25463 : int reg_mask, tmp1, tmp2;
25464 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25465 : STRIP_UNARY (operands[4])))
25466 : {
25467 : reg4 = reg1;
25468 : reg3 = reg6;
25469 : operands[6] = operands[3];
25470 : }
25471 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25472 : STRIP_UNARY (operands[4])))
25473 : {
25474 : reg4 = reg2;
25475 : reg3 = reg6;
25476 : operands[6] = operands[3];
25477 : }
25478 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25479 : STRIP_UNARY (operands[3])))
25480 : {
25481 : reg4 = reg6;
25482 : reg3 = reg1;
25483 : operands[6] = operands[4];
25484 : }
25485 : else
25486 : {
25487 : reg4 = reg6;
25488 : reg3 = reg2;
25489 : operands[6] = operands[4];
25490 : }
25491 :
25492 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25493 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25494 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25495 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25496 :
25497 : tmp1 = reg1 & reg2;
25498 : tmp2 = tmp1 | reg3;
25499 : reg_mask = tmp2 ^ reg4;
25500 : reg_mask &= 0xFF;
25501 :
25502 : operands[1] = STRIP_UNARY (operands[1]);
25503 : operands[2] = STRIP_UNARY (operands[2]);
25504 : operands[6] = STRIP_UNARY (operands[6]);
25505 : operands[5] = GEN_INT (reg_mask);
25506 : if (!register_operand (operands[2], V16HFmode))
25507 : operands[2] = force_reg (V16HFmode, operands[2]);
25508 : if (!register_operand (operands[6], V16HFmode))
25509 : operands[6] = force_reg (V16HFmode, operands[6]);
25510 :
25511 : }
25512 : #undef DONE
25513 : #undef FAIL
25514 : static const uint8_t expand_encoding[] = {
25515 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25516 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25517 : 0x25
25518 : };
25519 : return complete_seq (expand_encoding, operands);
25520 : }
25521 :
25522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25523 : extern rtx_insn *gen_split_2753 (rtx_insn *, rtx *);
25524 : rtx_insn *
25525 : gen_split_2753 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25526 : {
25527 : if (dump_file)
25528 : fprintf (dump_file, "Splitting with gen_split_2753 (sse.md:14227)\n");
25529 : start_sequence ();
25530 : #define FAIL return (end_sequence (), nullptr)
25531 : #define DONE return end_sequence ()
25532 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25533 : {
25534 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25535 : int reg6 = 0xF0;
25536 : int reg2 = 0xCC;
25537 : int reg1 = 0xAA;
25538 : int reg3 = 0;
25539 : int reg4 = 0;
25540 : int reg_mask, tmp1, tmp2;
25541 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25542 : STRIP_UNARY (operands[4])))
25543 : {
25544 : reg4 = reg1;
25545 : reg3 = reg6;
25546 : operands[6] = operands[3];
25547 : }
25548 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25549 : STRIP_UNARY (operands[4])))
25550 : {
25551 : reg4 = reg2;
25552 : reg3 = reg6;
25553 : operands[6] = operands[3];
25554 : }
25555 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25556 : STRIP_UNARY (operands[3])))
25557 : {
25558 : reg4 = reg6;
25559 : reg3 = reg1;
25560 : operands[6] = operands[4];
25561 : }
25562 : else
25563 : {
25564 : reg4 = reg6;
25565 : reg3 = reg2;
25566 : operands[6] = operands[4];
25567 : }
25568 :
25569 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25570 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25571 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25572 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25573 :
25574 : tmp1 = reg1 | reg2;
25575 : tmp2 = tmp1 ^ reg3;
25576 : reg_mask = tmp2 & reg4;
25577 : reg_mask &= 0xFF;
25578 :
25579 : operands[1] = STRIP_UNARY (operands[1]);
25580 : operands[2] = STRIP_UNARY (operands[2]);
25581 : operands[6] = STRIP_UNARY (operands[6]);
25582 : operands[5] = GEN_INT (reg_mask);
25583 : if (!register_operand (operands[2], V16HFmode))
25584 : operands[2] = force_reg (V16HFmode, operands[2]);
25585 : if (!register_operand (operands[6], V16HFmode))
25586 : operands[6] = force_reg (V16HFmode, operands[6]);
25587 :
25588 : }
25589 : #undef DONE
25590 : #undef FAIL
25591 : static const uint8_t expand_encoding[] = {
25592 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25593 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25594 : 0x25
25595 : };
25596 : return complete_seq (expand_encoding, operands);
25597 : }
25598 :
25599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25600 : extern rtx_insn *gen_split_2763 (rtx_insn *, rtx *);
25601 : rtx_insn *
25602 : gen_split_2763 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25603 : {
25604 : if (dump_file)
25605 : fprintf (dump_file, "Splitting with gen_split_2763 (sse.md:14227)\n");
25606 : start_sequence ();
25607 : #define FAIL return (end_sequence (), nullptr)
25608 : #define DONE return end_sequence ()
25609 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25610 : {
25611 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25612 : int reg6 = 0xF0;
25613 : int reg2 = 0xCC;
25614 : int reg1 = 0xAA;
25615 : int reg3 = 0;
25616 : int reg4 = 0;
25617 : int reg_mask, tmp1, tmp2;
25618 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25619 : STRIP_UNARY (operands[4])))
25620 : {
25621 : reg4 = reg1;
25622 : reg3 = reg6;
25623 : operands[6] = operands[3];
25624 : }
25625 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25626 : STRIP_UNARY (operands[4])))
25627 : {
25628 : reg4 = reg2;
25629 : reg3 = reg6;
25630 : operands[6] = operands[3];
25631 : }
25632 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25633 : STRIP_UNARY (operands[3])))
25634 : {
25635 : reg4 = reg6;
25636 : reg3 = reg1;
25637 : operands[6] = operands[4];
25638 : }
25639 : else
25640 : {
25641 : reg4 = reg6;
25642 : reg3 = reg2;
25643 : operands[6] = operands[4];
25644 : }
25645 :
25646 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25647 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25648 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25649 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25650 :
25651 : tmp1 = reg1 | reg2;
25652 : tmp2 = tmp1 & reg3;
25653 : reg_mask = tmp2 | reg4;
25654 : reg_mask &= 0xFF;
25655 :
25656 : operands[1] = STRIP_UNARY (operands[1]);
25657 : operands[2] = STRIP_UNARY (operands[2]);
25658 : operands[6] = STRIP_UNARY (operands[6]);
25659 : operands[5] = GEN_INT (reg_mask);
25660 : if (!register_operand (operands[2], V8HFmode))
25661 : operands[2] = force_reg (V8HFmode, operands[2]);
25662 : if (!register_operand (operands[6], V8HFmode))
25663 : operands[6] = force_reg (V8HFmode, operands[6]);
25664 :
25665 : }
25666 : #undef DONE
25667 : #undef FAIL
25668 : static const uint8_t expand_encoding[] = {
25669 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25670 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25671 : 0x25
25672 : };
25673 : return complete_seq (expand_encoding, operands);
25674 : }
25675 :
25676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25677 : extern rtx_insn *gen_split_2773 (rtx_insn *, rtx *);
25678 : rtx_insn *
25679 : gen_split_2773 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25680 : {
25681 : if (dump_file)
25682 : fprintf (dump_file, "Splitting with gen_split_2773 (sse.md:14227)\n");
25683 : start_sequence ();
25684 : #define FAIL return (end_sequence (), nullptr)
25685 : #define DONE return end_sequence ()
25686 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25687 : {
25688 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25689 : int reg6 = 0xF0;
25690 : int reg2 = 0xCC;
25691 : int reg1 = 0xAA;
25692 : int reg3 = 0;
25693 : int reg4 = 0;
25694 : int reg_mask, tmp1, tmp2;
25695 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25696 : STRIP_UNARY (operands[4])))
25697 : {
25698 : reg4 = reg1;
25699 : reg3 = reg6;
25700 : operands[6] = operands[3];
25701 : }
25702 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25703 : STRIP_UNARY (operands[4])))
25704 : {
25705 : reg4 = reg2;
25706 : reg3 = reg6;
25707 : operands[6] = operands[3];
25708 : }
25709 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25710 : STRIP_UNARY (operands[3])))
25711 : {
25712 : reg4 = reg6;
25713 : reg3 = reg1;
25714 : operands[6] = operands[4];
25715 : }
25716 : else
25717 : {
25718 : reg4 = reg6;
25719 : reg3 = reg2;
25720 : operands[6] = operands[4];
25721 : }
25722 :
25723 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25724 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25725 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25726 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25727 :
25728 : tmp1 = reg1 | reg2;
25729 : tmp2 = tmp1 | reg3;
25730 : reg_mask = tmp2 ^ reg4;
25731 : reg_mask &= 0xFF;
25732 :
25733 : operands[1] = STRIP_UNARY (operands[1]);
25734 : operands[2] = STRIP_UNARY (operands[2]);
25735 : operands[6] = STRIP_UNARY (operands[6]);
25736 : operands[5] = GEN_INT (reg_mask);
25737 : if (!register_operand (operands[2], V8HFmode))
25738 : operands[2] = force_reg (V8HFmode, operands[2]);
25739 : if (!register_operand (operands[6], V8HFmode))
25740 : operands[6] = force_reg (V8HFmode, operands[6]);
25741 :
25742 : }
25743 : #undef DONE
25744 : #undef FAIL
25745 : static const uint8_t expand_encoding[] = {
25746 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25747 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25748 : 0x25
25749 : };
25750 : return complete_seq (expand_encoding, operands);
25751 : }
25752 :
25753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25754 : extern rtx_insn *gen_split_2783 (rtx_insn *, rtx *);
25755 : rtx_insn *
25756 : gen_split_2783 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25757 : {
25758 : if (dump_file)
25759 : fprintf (dump_file, "Splitting with gen_split_2783 (sse.md:14227)\n");
25760 : start_sequence ();
25761 : #define FAIL return (end_sequence (), nullptr)
25762 : #define DONE return end_sequence ()
25763 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25764 : {
25765 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25766 : int reg6 = 0xF0;
25767 : int reg2 = 0xCC;
25768 : int reg1 = 0xAA;
25769 : int reg3 = 0;
25770 : int reg4 = 0;
25771 : int reg_mask, tmp1, tmp2;
25772 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25773 : STRIP_UNARY (operands[4])))
25774 : {
25775 : reg4 = reg1;
25776 : reg3 = reg6;
25777 : operands[6] = operands[3];
25778 : }
25779 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25780 : STRIP_UNARY (operands[4])))
25781 : {
25782 : reg4 = reg2;
25783 : reg3 = reg6;
25784 : operands[6] = operands[3];
25785 : }
25786 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25787 : STRIP_UNARY (operands[3])))
25788 : {
25789 : reg4 = reg6;
25790 : reg3 = reg1;
25791 : operands[6] = operands[4];
25792 : }
25793 : else
25794 : {
25795 : reg4 = reg6;
25796 : reg3 = reg2;
25797 : operands[6] = operands[4];
25798 : }
25799 :
25800 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25801 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25802 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25803 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25804 :
25805 : tmp1 = reg1 ^ reg2;
25806 : tmp2 = tmp1 ^ reg3;
25807 : reg_mask = tmp2 & reg4;
25808 : reg_mask &= 0xFF;
25809 :
25810 : operands[1] = STRIP_UNARY (operands[1]);
25811 : operands[2] = STRIP_UNARY (operands[2]);
25812 : operands[6] = STRIP_UNARY (operands[6]);
25813 : operands[5] = GEN_INT (reg_mask);
25814 : if (!register_operand (operands[2], V8HFmode))
25815 : operands[2] = force_reg (V8HFmode, operands[2]);
25816 : if (!register_operand (operands[6], V8HFmode))
25817 : operands[6] = force_reg (V8HFmode, operands[6]);
25818 :
25819 : }
25820 : #undef DONE
25821 : #undef FAIL
25822 : static const uint8_t expand_encoding[] = {
25823 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25824 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25825 : 0x25
25826 : };
25827 : return complete_seq (expand_encoding, operands);
25828 : }
25829 :
25830 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25831 : extern rtx_insn *gen_split_2793 (rtx_insn *, rtx *);
25832 : rtx_insn *
25833 : gen_split_2793 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25834 : {
25835 : if (dump_file)
25836 : fprintf (dump_file, "Splitting with gen_split_2793 (sse.md:14227)\n");
25837 : start_sequence ();
25838 : #define FAIL return (end_sequence (), nullptr)
25839 : #define DONE return end_sequence ()
25840 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25841 : {
25842 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25843 : int reg6 = 0xF0;
25844 : int reg2 = 0xCC;
25845 : int reg1 = 0xAA;
25846 : int reg3 = 0;
25847 : int reg4 = 0;
25848 : int reg_mask, tmp1, tmp2;
25849 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25850 : STRIP_UNARY (operands[4])))
25851 : {
25852 : reg4 = reg1;
25853 : reg3 = reg6;
25854 : operands[6] = operands[3];
25855 : }
25856 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25857 : STRIP_UNARY (operands[4])))
25858 : {
25859 : reg4 = reg2;
25860 : reg3 = reg6;
25861 : operands[6] = operands[3];
25862 : }
25863 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25864 : STRIP_UNARY (operands[3])))
25865 : {
25866 : reg4 = reg6;
25867 : reg3 = reg1;
25868 : operands[6] = operands[4];
25869 : }
25870 : else
25871 : {
25872 : reg4 = reg6;
25873 : reg3 = reg2;
25874 : operands[6] = operands[4];
25875 : }
25876 :
25877 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25878 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25879 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25880 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25881 :
25882 : tmp1 = reg1 ^ reg2;
25883 : tmp2 = tmp1 & reg3;
25884 : reg_mask = tmp2 | reg4;
25885 : reg_mask &= 0xFF;
25886 :
25887 : operands[1] = STRIP_UNARY (operands[1]);
25888 : operands[2] = STRIP_UNARY (operands[2]);
25889 : operands[6] = STRIP_UNARY (operands[6]);
25890 : operands[5] = GEN_INT (reg_mask);
25891 : if (!register_operand (operands[2], V32BFmode))
25892 : operands[2] = force_reg (V32BFmode, operands[2]);
25893 : if (!register_operand (operands[6], V32BFmode))
25894 : operands[6] = force_reg (V32BFmode, operands[6]);
25895 :
25896 : }
25897 : #undef DONE
25898 : #undef FAIL
25899 : static const uint8_t expand_encoding[] = {
25900 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25901 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25902 : 0x25
25903 : };
25904 : return complete_seq (expand_encoding, operands);
25905 : }
25906 :
25907 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25908 : extern rtx_insn *gen_split_2803 (rtx_insn *, rtx *);
25909 : rtx_insn *
25910 : gen_split_2803 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25911 : {
25912 : if (dump_file)
25913 : fprintf (dump_file, "Splitting with gen_split_2803 (sse.md:14227)\n");
25914 : start_sequence ();
25915 : #define FAIL return (end_sequence (), nullptr)
25916 : #define DONE return end_sequence ()
25917 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25918 : {
25919 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25920 : int reg6 = 0xF0;
25921 : int reg2 = 0xCC;
25922 : int reg1 = 0xAA;
25923 : int reg3 = 0;
25924 : int reg4 = 0;
25925 : int reg_mask, tmp1, tmp2;
25926 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25927 : STRIP_UNARY (operands[4])))
25928 : {
25929 : reg4 = reg1;
25930 : reg3 = reg6;
25931 : operands[6] = operands[3];
25932 : }
25933 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25934 : STRIP_UNARY (operands[4])))
25935 : {
25936 : reg4 = reg2;
25937 : reg3 = reg6;
25938 : operands[6] = operands[3];
25939 : }
25940 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25941 : STRIP_UNARY (operands[3])))
25942 : {
25943 : reg4 = reg6;
25944 : reg3 = reg1;
25945 : operands[6] = operands[4];
25946 : }
25947 : else
25948 : {
25949 : reg4 = reg6;
25950 : reg3 = reg2;
25951 : operands[6] = operands[4];
25952 : }
25953 :
25954 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25955 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25956 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25957 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25958 :
25959 : tmp1 = reg1 ^ reg2;
25960 : tmp2 = tmp1 | reg3;
25961 : reg_mask = tmp2 ^ reg4;
25962 : reg_mask &= 0xFF;
25963 :
25964 : operands[1] = STRIP_UNARY (operands[1]);
25965 : operands[2] = STRIP_UNARY (operands[2]);
25966 : operands[6] = STRIP_UNARY (operands[6]);
25967 : operands[5] = GEN_INT (reg_mask);
25968 : if (!register_operand (operands[2], V32BFmode))
25969 : operands[2] = force_reg (V32BFmode, operands[2]);
25970 : if (!register_operand (operands[6], V32BFmode))
25971 : operands[6] = force_reg (V32BFmode, operands[6]);
25972 :
25973 : }
25974 : #undef DONE
25975 : #undef FAIL
25976 : static const uint8_t expand_encoding[] = {
25977 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25978 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25979 : 0x25
25980 : };
25981 : return complete_seq (expand_encoding, operands);
25982 : }
25983 :
25984 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25985 : extern rtx_insn *gen_split_2813 (rtx_insn *, rtx *);
25986 : rtx_insn *
25987 : gen_split_2813 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25988 : {
25989 : if (dump_file)
25990 : fprintf (dump_file, "Splitting with gen_split_2813 (sse.md:14227)\n");
25991 : start_sequence ();
25992 : #define FAIL return (end_sequence (), nullptr)
25993 : #define DONE return end_sequence ()
25994 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25995 : {
25996 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25997 : int reg6 = 0xF0;
25998 : int reg2 = 0xCC;
25999 : int reg1 = 0xAA;
26000 : int reg3 = 0;
26001 : int reg4 = 0;
26002 : int reg_mask, tmp1, tmp2;
26003 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26004 : STRIP_UNARY (operands[4])))
26005 : {
26006 : reg4 = reg1;
26007 : reg3 = reg6;
26008 : operands[6] = operands[3];
26009 : }
26010 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26011 : STRIP_UNARY (operands[4])))
26012 : {
26013 : reg4 = reg2;
26014 : reg3 = reg6;
26015 : operands[6] = operands[3];
26016 : }
26017 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26018 : STRIP_UNARY (operands[3])))
26019 : {
26020 : reg4 = reg6;
26021 : reg3 = reg1;
26022 : operands[6] = operands[4];
26023 : }
26024 : else
26025 : {
26026 : reg4 = reg6;
26027 : reg3 = reg2;
26028 : operands[6] = operands[4];
26029 : }
26030 :
26031 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26032 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26033 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26034 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26035 :
26036 : tmp1 = reg1 & reg2;
26037 : tmp2 = tmp1 & reg3;
26038 : reg_mask = tmp2 & reg4;
26039 : reg_mask &= 0xFF;
26040 :
26041 : operands[1] = STRIP_UNARY (operands[1]);
26042 : operands[2] = STRIP_UNARY (operands[2]);
26043 : operands[6] = STRIP_UNARY (operands[6]);
26044 : operands[5] = GEN_INT (reg_mask);
26045 : if (!register_operand (operands[2], V16BFmode))
26046 : operands[2] = force_reg (V16BFmode, operands[2]);
26047 : if (!register_operand (operands[6], V16BFmode))
26048 : operands[6] = force_reg (V16BFmode, operands[6]);
26049 :
26050 : }
26051 : #undef DONE
26052 : #undef FAIL
26053 : static const uint8_t expand_encoding[] = {
26054 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26055 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26056 : 0x25
26057 : };
26058 : return complete_seq (expand_encoding, operands);
26059 : }
26060 :
26061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26062 : extern rtx_insn *gen_split_2823 (rtx_insn *, rtx *);
26063 : rtx_insn *
26064 : gen_split_2823 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26065 : {
26066 : if (dump_file)
26067 : fprintf (dump_file, "Splitting with gen_split_2823 (sse.md:14227)\n");
26068 : start_sequence ();
26069 : #define FAIL return (end_sequence (), nullptr)
26070 : #define DONE return end_sequence ()
26071 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26072 : {
26073 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26074 : int reg6 = 0xF0;
26075 : int reg2 = 0xCC;
26076 : int reg1 = 0xAA;
26077 : int reg3 = 0;
26078 : int reg4 = 0;
26079 : int reg_mask, tmp1, tmp2;
26080 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26081 : STRIP_UNARY (operands[4])))
26082 : {
26083 : reg4 = reg1;
26084 : reg3 = reg6;
26085 : operands[6] = operands[3];
26086 : }
26087 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26088 : STRIP_UNARY (operands[4])))
26089 : {
26090 : reg4 = reg2;
26091 : reg3 = reg6;
26092 : operands[6] = operands[3];
26093 : }
26094 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26095 : STRIP_UNARY (operands[3])))
26096 : {
26097 : reg4 = reg6;
26098 : reg3 = reg1;
26099 : operands[6] = operands[4];
26100 : }
26101 : else
26102 : {
26103 : reg4 = reg6;
26104 : reg3 = reg2;
26105 : operands[6] = operands[4];
26106 : }
26107 :
26108 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26109 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26110 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26111 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26112 :
26113 : tmp1 = reg1 & reg2;
26114 : tmp2 = tmp1 | reg3;
26115 : reg_mask = tmp2 | reg4;
26116 : reg_mask &= 0xFF;
26117 :
26118 : operands[1] = STRIP_UNARY (operands[1]);
26119 : operands[2] = STRIP_UNARY (operands[2]);
26120 : operands[6] = STRIP_UNARY (operands[6]);
26121 : operands[5] = GEN_INT (reg_mask);
26122 : if (!register_operand (operands[2], V16BFmode))
26123 : operands[2] = force_reg (V16BFmode, operands[2]);
26124 : if (!register_operand (operands[6], V16BFmode))
26125 : operands[6] = force_reg (V16BFmode, operands[6]);
26126 :
26127 : }
26128 : #undef DONE
26129 : #undef FAIL
26130 : static const uint8_t expand_encoding[] = {
26131 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26132 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26133 : 0x25
26134 : };
26135 : return complete_seq (expand_encoding, operands);
26136 : }
26137 :
26138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26139 : extern rtx_insn *gen_split_2833 (rtx_insn *, rtx *);
26140 : rtx_insn *
26141 : gen_split_2833 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26142 : {
26143 : if (dump_file)
26144 : fprintf (dump_file, "Splitting with gen_split_2833 (sse.md:14227)\n");
26145 : start_sequence ();
26146 : #define FAIL return (end_sequence (), nullptr)
26147 : #define DONE return end_sequence ()
26148 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26149 : {
26150 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26151 : int reg6 = 0xF0;
26152 : int reg2 = 0xCC;
26153 : int reg1 = 0xAA;
26154 : int reg3 = 0;
26155 : int reg4 = 0;
26156 : int reg_mask, tmp1, tmp2;
26157 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26158 : STRIP_UNARY (operands[4])))
26159 : {
26160 : reg4 = reg1;
26161 : reg3 = reg6;
26162 : operands[6] = operands[3];
26163 : }
26164 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26165 : STRIP_UNARY (operands[4])))
26166 : {
26167 : reg4 = reg2;
26168 : reg3 = reg6;
26169 : operands[6] = operands[3];
26170 : }
26171 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26172 : STRIP_UNARY (operands[3])))
26173 : {
26174 : reg4 = reg6;
26175 : reg3 = reg1;
26176 : operands[6] = operands[4];
26177 : }
26178 : else
26179 : {
26180 : reg4 = reg6;
26181 : reg3 = reg2;
26182 : operands[6] = operands[4];
26183 : }
26184 :
26185 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26186 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26187 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26188 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26189 :
26190 : tmp1 = reg1 & reg2;
26191 : tmp2 = tmp1 ^ reg3;
26192 : reg_mask = tmp2 ^ reg4;
26193 : reg_mask &= 0xFF;
26194 :
26195 : operands[1] = STRIP_UNARY (operands[1]);
26196 : operands[2] = STRIP_UNARY (operands[2]);
26197 : operands[6] = STRIP_UNARY (operands[6]);
26198 : operands[5] = GEN_INT (reg_mask);
26199 : if (!register_operand (operands[2], V16BFmode))
26200 : operands[2] = force_reg (V16BFmode, operands[2]);
26201 : if (!register_operand (operands[6], V16BFmode))
26202 : operands[6] = force_reg (V16BFmode, operands[6]);
26203 :
26204 : }
26205 : #undef DONE
26206 : #undef FAIL
26207 : static const uint8_t expand_encoding[] = {
26208 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26209 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26210 : 0x25
26211 : };
26212 : return complete_seq (expand_encoding, operands);
26213 : }
26214 :
26215 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26216 : extern rtx_insn *gen_split_2843 (rtx_insn *, rtx *);
26217 : rtx_insn *
26218 : gen_split_2843 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26219 : {
26220 : if (dump_file)
26221 : fprintf (dump_file, "Splitting with gen_split_2843 (sse.md:14227)\n");
26222 : start_sequence ();
26223 : #define FAIL return (end_sequence (), nullptr)
26224 : #define DONE return end_sequence ()
26225 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26226 : {
26227 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26228 : int reg6 = 0xF0;
26229 : int reg2 = 0xCC;
26230 : int reg1 = 0xAA;
26231 : int reg3 = 0;
26232 : int reg4 = 0;
26233 : int reg_mask, tmp1, tmp2;
26234 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26235 : STRIP_UNARY (operands[4])))
26236 : {
26237 : reg4 = reg1;
26238 : reg3 = reg6;
26239 : operands[6] = operands[3];
26240 : }
26241 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26242 : STRIP_UNARY (operands[4])))
26243 : {
26244 : reg4 = reg2;
26245 : reg3 = reg6;
26246 : operands[6] = operands[3];
26247 : }
26248 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26249 : STRIP_UNARY (operands[3])))
26250 : {
26251 : reg4 = reg6;
26252 : reg3 = reg1;
26253 : operands[6] = operands[4];
26254 : }
26255 : else
26256 : {
26257 : reg4 = reg6;
26258 : reg3 = reg2;
26259 : operands[6] = operands[4];
26260 : }
26261 :
26262 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26263 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26264 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26265 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26266 :
26267 : tmp1 = reg1 | reg2;
26268 : tmp2 = tmp1 & reg3;
26269 : reg_mask = tmp2 & reg4;
26270 : reg_mask &= 0xFF;
26271 :
26272 : operands[1] = STRIP_UNARY (operands[1]);
26273 : operands[2] = STRIP_UNARY (operands[2]);
26274 : operands[6] = STRIP_UNARY (operands[6]);
26275 : operands[5] = GEN_INT (reg_mask);
26276 : if (!register_operand (operands[2], V8BFmode))
26277 : operands[2] = force_reg (V8BFmode, operands[2]);
26278 : if (!register_operand (operands[6], V8BFmode))
26279 : operands[6] = force_reg (V8BFmode, operands[6]);
26280 :
26281 : }
26282 : #undef DONE
26283 : #undef FAIL
26284 : static const uint8_t expand_encoding[] = {
26285 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26286 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26287 : 0x25
26288 : };
26289 : return complete_seq (expand_encoding, operands);
26290 : }
26291 :
26292 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26293 : extern rtx_insn *gen_split_2853 (rtx_insn *, rtx *);
26294 : rtx_insn *
26295 : gen_split_2853 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26296 : {
26297 : if (dump_file)
26298 : fprintf (dump_file, "Splitting with gen_split_2853 (sse.md:14227)\n");
26299 : start_sequence ();
26300 : #define FAIL return (end_sequence (), nullptr)
26301 : #define DONE return end_sequence ()
26302 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26303 : {
26304 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26305 : int reg6 = 0xF0;
26306 : int reg2 = 0xCC;
26307 : int reg1 = 0xAA;
26308 : int reg3 = 0;
26309 : int reg4 = 0;
26310 : int reg_mask, tmp1, tmp2;
26311 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26312 : STRIP_UNARY (operands[4])))
26313 : {
26314 : reg4 = reg1;
26315 : reg3 = reg6;
26316 : operands[6] = operands[3];
26317 : }
26318 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26319 : STRIP_UNARY (operands[4])))
26320 : {
26321 : reg4 = reg2;
26322 : reg3 = reg6;
26323 : operands[6] = operands[3];
26324 : }
26325 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26326 : STRIP_UNARY (operands[3])))
26327 : {
26328 : reg4 = reg6;
26329 : reg3 = reg1;
26330 : operands[6] = operands[4];
26331 : }
26332 : else
26333 : {
26334 : reg4 = reg6;
26335 : reg3 = reg2;
26336 : operands[6] = operands[4];
26337 : }
26338 :
26339 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26340 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26341 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26342 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26343 :
26344 : tmp1 = reg1 | reg2;
26345 : tmp2 = tmp1 | reg3;
26346 : reg_mask = tmp2 | reg4;
26347 : reg_mask &= 0xFF;
26348 :
26349 : operands[1] = STRIP_UNARY (operands[1]);
26350 : operands[2] = STRIP_UNARY (operands[2]);
26351 : operands[6] = STRIP_UNARY (operands[6]);
26352 : operands[5] = GEN_INT (reg_mask);
26353 : if (!register_operand (operands[2], V8BFmode))
26354 : operands[2] = force_reg (V8BFmode, operands[2]);
26355 : if (!register_operand (operands[6], V8BFmode))
26356 : operands[6] = force_reg (V8BFmode, operands[6]);
26357 :
26358 : }
26359 : #undef DONE
26360 : #undef FAIL
26361 : static const uint8_t expand_encoding[] = {
26362 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26363 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26364 : 0x25
26365 : };
26366 : return complete_seq (expand_encoding, operands);
26367 : }
26368 :
26369 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26370 : extern rtx_insn *gen_split_2863 (rtx_insn *, rtx *);
26371 : rtx_insn *
26372 : gen_split_2863 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26373 : {
26374 : if (dump_file)
26375 : fprintf (dump_file, "Splitting with gen_split_2863 (sse.md:14227)\n");
26376 : start_sequence ();
26377 : #define FAIL return (end_sequence (), nullptr)
26378 : #define DONE return end_sequence ()
26379 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26380 : {
26381 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26382 : int reg6 = 0xF0;
26383 : int reg2 = 0xCC;
26384 : int reg1 = 0xAA;
26385 : int reg3 = 0;
26386 : int reg4 = 0;
26387 : int reg_mask, tmp1, tmp2;
26388 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26389 : STRIP_UNARY (operands[4])))
26390 : {
26391 : reg4 = reg1;
26392 : reg3 = reg6;
26393 : operands[6] = operands[3];
26394 : }
26395 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26396 : STRIP_UNARY (operands[4])))
26397 : {
26398 : reg4 = reg2;
26399 : reg3 = reg6;
26400 : operands[6] = operands[3];
26401 : }
26402 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26403 : STRIP_UNARY (operands[3])))
26404 : {
26405 : reg4 = reg6;
26406 : reg3 = reg1;
26407 : operands[6] = operands[4];
26408 : }
26409 : else
26410 : {
26411 : reg4 = reg6;
26412 : reg3 = reg2;
26413 : operands[6] = operands[4];
26414 : }
26415 :
26416 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26417 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26418 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26419 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26420 :
26421 : tmp1 = reg1 | reg2;
26422 : tmp2 = tmp1 ^ reg3;
26423 : reg_mask = tmp2 ^ reg4;
26424 : reg_mask &= 0xFF;
26425 :
26426 : operands[1] = STRIP_UNARY (operands[1]);
26427 : operands[2] = STRIP_UNARY (operands[2]);
26428 : operands[6] = STRIP_UNARY (operands[6]);
26429 : operands[5] = GEN_INT (reg_mask);
26430 : if (!register_operand (operands[2], V8BFmode))
26431 : operands[2] = force_reg (V8BFmode, operands[2]);
26432 : if (!register_operand (operands[6], V8BFmode))
26433 : operands[6] = force_reg (V8BFmode, operands[6]);
26434 :
26435 : }
26436 : #undef DONE
26437 : #undef FAIL
26438 : static const uint8_t expand_encoding[] = {
26439 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26440 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26441 : 0x25
26442 : };
26443 : return complete_seq (expand_encoding, operands);
26444 : }
26445 :
26446 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26447 : extern rtx_insn *gen_split_2873 (rtx_insn *, rtx *);
26448 : rtx_insn *
26449 : gen_split_2873 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26450 : {
26451 : if (dump_file)
26452 : fprintf (dump_file, "Splitting with gen_split_2873 (sse.md:14227)\n");
26453 : start_sequence ();
26454 : #define FAIL return (end_sequence (), nullptr)
26455 : #define DONE return end_sequence ()
26456 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26457 : {
26458 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26459 : int reg6 = 0xF0;
26460 : int reg2 = 0xCC;
26461 : int reg1 = 0xAA;
26462 : int reg3 = 0;
26463 : int reg4 = 0;
26464 : int reg_mask, tmp1, tmp2;
26465 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26466 : STRIP_UNARY (operands[4])))
26467 : {
26468 : reg4 = reg1;
26469 : reg3 = reg6;
26470 : operands[6] = operands[3];
26471 : }
26472 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26473 : STRIP_UNARY (operands[4])))
26474 : {
26475 : reg4 = reg2;
26476 : reg3 = reg6;
26477 : operands[6] = operands[3];
26478 : }
26479 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26480 : STRIP_UNARY (operands[3])))
26481 : {
26482 : reg4 = reg6;
26483 : reg3 = reg1;
26484 : operands[6] = operands[4];
26485 : }
26486 : else
26487 : {
26488 : reg4 = reg6;
26489 : reg3 = reg2;
26490 : operands[6] = operands[4];
26491 : }
26492 :
26493 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26494 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26495 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26496 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26497 :
26498 : tmp1 = reg1 ^ reg2;
26499 : tmp2 = tmp1 & reg3;
26500 : reg_mask = tmp2 & reg4;
26501 : reg_mask &= 0xFF;
26502 :
26503 : operands[1] = STRIP_UNARY (operands[1]);
26504 : operands[2] = STRIP_UNARY (operands[2]);
26505 : operands[6] = STRIP_UNARY (operands[6]);
26506 : operands[5] = GEN_INT (reg_mask);
26507 : if (!register_operand (operands[2], V16SFmode))
26508 : operands[2] = force_reg (V16SFmode, operands[2]);
26509 : if (!register_operand (operands[6], V16SFmode))
26510 : operands[6] = force_reg (V16SFmode, operands[6]);
26511 :
26512 : }
26513 : #undef DONE
26514 : #undef FAIL
26515 : static const uint8_t expand_encoding[] = {
26516 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26517 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26518 : 0x25
26519 : };
26520 : return complete_seq (expand_encoding, operands);
26521 : }
26522 :
26523 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26524 : extern rtx_insn *gen_split_2883 (rtx_insn *, rtx *);
26525 : rtx_insn *
26526 : gen_split_2883 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26527 : {
26528 : if (dump_file)
26529 : fprintf (dump_file, "Splitting with gen_split_2883 (sse.md:14227)\n");
26530 : start_sequence ();
26531 : #define FAIL return (end_sequence (), nullptr)
26532 : #define DONE return end_sequence ()
26533 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26534 : {
26535 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26536 : int reg6 = 0xF0;
26537 : int reg2 = 0xCC;
26538 : int reg1 = 0xAA;
26539 : int reg3 = 0;
26540 : int reg4 = 0;
26541 : int reg_mask, tmp1, tmp2;
26542 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26543 : STRIP_UNARY (operands[4])))
26544 : {
26545 : reg4 = reg1;
26546 : reg3 = reg6;
26547 : operands[6] = operands[3];
26548 : }
26549 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26550 : STRIP_UNARY (operands[4])))
26551 : {
26552 : reg4 = reg2;
26553 : reg3 = reg6;
26554 : operands[6] = operands[3];
26555 : }
26556 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26557 : STRIP_UNARY (operands[3])))
26558 : {
26559 : reg4 = reg6;
26560 : reg3 = reg1;
26561 : operands[6] = operands[4];
26562 : }
26563 : else
26564 : {
26565 : reg4 = reg6;
26566 : reg3 = reg2;
26567 : operands[6] = operands[4];
26568 : }
26569 :
26570 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26571 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26572 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26573 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26574 :
26575 : tmp1 = reg1 ^ reg2;
26576 : tmp2 = tmp1 | reg3;
26577 : reg_mask = tmp2 | reg4;
26578 : reg_mask &= 0xFF;
26579 :
26580 : operands[1] = STRIP_UNARY (operands[1]);
26581 : operands[2] = STRIP_UNARY (operands[2]);
26582 : operands[6] = STRIP_UNARY (operands[6]);
26583 : operands[5] = GEN_INT (reg_mask);
26584 : if (!register_operand (operands[2], V16SFmode))
26585 : operands[2] = force_reg (V16SFmode, operands[2]);
26586 : if (!register_operand (operands[6], V16SFmode))
26587 : operands[6] = force_reg (V16SFmode, operands[6]);
26588 :
26589 : }
26590 : #undef DONE
26591 : #undef FAIL
26592 : static const uint8_t expand_encoding[] = {
26593 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26594 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26595 : 0x25
26596 : };
26597 : return complete_seq (expand_encoding, operands);
26598 : }
26599 :
26600 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26601 : extern rtx_insn *gen_split_2893 (rtx_insn *, rtx *);
26602 : rtx_insn *
26603 : gen_split_2893 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26604 : {
26605 : if (dump_file)
26606 : fprintf (dump_file, "Splitting with gen_split_2893 (sse.md:14227)\n");
26607 : start_sequence ();
26608 : #define FAIL return (end_sequence (), nullptr)
26609 : #define DONE return end_sequence ()
26610 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26611 : {
26612 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26613 : int reg6 = 0xF0;
26614 : int reg2 = 0xCC;
26615 : int reg1 = 0xAA;
26616 : int reg3 = 0;
26617 : int reg4 = 0;
26618 : int reg_mask, tmp1, tmp2;
26619 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26620 : STRIP_UNARY (operands[4])))
26621 : {
26622 : reg4 = reg1;
26623 : reg3 = reg6;
26624 : operands[6] = operands[3];
26625 : }
26626 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26627 : STRIP_UNARY (operands[4])))
26628 : {
26629 : reg4 = reg2;
26630 : reg3 = reg6;
26631 : operands[6] = operands[3];
26632 : }
26633 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26634 : STRIP_UNARY (operands[3])))
26635 : {
26636 : reg4 = reg6;
26637 : reg3 = reg1;
26638 : operands[6] = operands[4];
26639 : }
26640 : else
26641 : {
26642 : reg4 = reg6;
26643 : reg3 = reg2;
26644 : operands[6] = operands[4];
26645 : }
26646 :
26647 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26648 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26649 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26650 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26651 :
26652 : tmp1 = reg1 ^ reg2;
26653 : tmp2 = tmp1 ^ reg3;
26654 : reg_mask = tmp2 ^ reg4;
26655 : reg_mask &= 0xFF;
26656 :
26657 : operands[1] = STRIP_UNARY (operands[1]);
26658 : operands[2] = STRIP_UNARY (operands[2]);
26659 : operands[6] = STRIP_UNARY (operands[6]);
26660 : operands[5] = GEN_INT (reg_mask);
26661 : if (!register_operand (operands[2], V16SFmode))
26662 : operands[2] = force_reg (V16SFmode, operands[2]);
26663 : if (!register_operand (operands[6], V16SFmode))
26664 : operands[6] = force_reg (V16SFmode, operands[6]);
26665 :
26666 : }
26667 : #undef DONE
26668 : #undef FAIL
26669 : static const uint8_t expand_encoding[] = {
26670 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26671 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26672 : 0x25
26673 : };
26674 : return complete_seq (expand_encoding, operands);
26675 : }
26676 :
26677 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26678 : extern rtx_insn *gen_split_2903 (rtx_insn *, rtx *);
26679 : rtx_insn *
26680 : gen_split_2903 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26681 : {
26682 : if (dump_file)
26683 : fprintf (dump_file, "Splitting with gen_split_2903 (sse.md:14227)\n");
26684 : start_sequence ();
26685 : #define FAIL return (end_sequence (), nullptr)
26686 : #define DONE return end_sequence ()
26687 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26688 : {
26689 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26690 : int reg6 = 0xF0;
26691 : int reg2 = 0xCC;
26692 : int reg1 = 0xAA;
26693 : int reg3 = 0;
26694 : int reg4 = 0;
26695 : int reg_mask, tmp1, tmp2;
26696 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26697 : STRIP_UNARY (operands[4])))
26698 : {
26699 : reg4 = reg1;
26700 : reg3 = reg6;
26701 : operands[6] = operands[3];
26702 : }
26703 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26704 : STRIP_UNARY (operands[4])))
26705 : {
26706 : reg4 = reg2;
26707 : reg3 = reg6;
26708 : operands[6] = operands[3];
26709 : }
26710 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26711 : STRIP_UNARY (operands[3])))
26712 : {
26713 : reg4 = reg6;
26714 : reg3 = reg1;
26715 : operands[6] = operands[4];
26716 : }
26717 : else
26718 : {
26719 : reg4 = reg6;
26720 : reg3 = reg2;
26721 : operands[6] = operands[4];
26722 : }
26723 :
26724 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26725 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26726 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26727 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26728 :
26729 : tmp1 = reg1 & reg2;
26730 : tmp2 = tmp1 | reg3;
26731 : reg_mask = tmp2 & reg4;
26732 : reg_mask &= 0xFF;
26733 :
26734 : operands[1] = STRIP_UNARY (operands[1]);
26735 : operands[2] = STRIP_UNARY (operands[2]);
26736 : operands[6] = STRIP_UNARY (operands[6]);
26737 : operands[5] = GEN_INT (reg_mask);
26738 : if (!register_operand (operands[2], V8SFmode))
26739 : operands[2] = force_reg (V8SFmode, operands[2]);
26740 : if (!register_operand (operands[6], V8SFmode))
26741 : operands[6] = force_reg (V8SFmode, operands[6]);
26742 :
26743 : }
26744 : #undef DONE
26745 : #undef FAIL
26746 : static const uint8_t expand_encoding[] = {
26747 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26748 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26749 : 0x25
26750 : };
26751 : return complete_seq (expand_encoding, operands);
26752 : }
26753 :
26754 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26755 : extern rtx_insn *gen_split_2913 (rtx_insn *, rtx *);
26756 : rtx_insn *
26757 : gen_split_2913 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26758 : {
26759 : if (dump_file)
26760 : fprintf (dump_file, "Splitting with gen_split_2913 (sse.md:14227)\n");
26761 : start_sequence ();
26762 : #define FAIL return (end_sequence (), nullptr)
26763 : #define DONE return end_sequence ()
26764 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26765 : {
26766 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26767 : int reg6 = 0xF0;
26768 : int reg2 = 0xCC;
26769 : int reg1 = 0xAA;
26770 : int reg3 = 0;
26771 : int reg4 = 0;
26772 : int reg_mask, tmp1, tmp2;
26773 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26774 : STRIP_UNARY (operands[4])))
26775 : {
26776 : reg4 = reg1;
26777 : reg3 = reg6;
26778 : operands[6] = operands[3];
26779 : }
26780 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26781 : STRIP_UNARY (operands[4])))
26782 : {
26783 : reg4 = reg2;
26784 : reg3 = reg6;
26785 : operands[6] = operands[3];
26786 : }
26787 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26788 : STRIP_UNARY (operands[3])))
26789 : {
26790 : reg4 = reg6;
26791 : reg3 = reg1;
26792 : operands[6] = operands[4];
26793 : }
26794 : else
26795 : {
26796 : reg4 = reg6;
26797 : reg3 = reg2;
26798 : operands[6] = operands[4];
26799 : }
26800 :
26801 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26802 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26803 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26804 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26805 :
26806 : tmp1 = reg1 & reg2;
26807 : tmp2 = tmp1 ^ reg3;
26808 : reg_mask = tmp2 | reg4;
26809 : reg_mask &= 0xFF;
26810 :
26811 : operands[1] = STRIP_UNARY (operands[1]);
26812 : operands[2] = STRIP_UNARY (operands[2]);
26813 : operands[6] = STRIP_UNARY (operands[6]);
26814 : operands[5] = GEN_INT (reg_mask);
26815 : if (!register_operand (operands[2], V8SFmode))
26816 : operands[2] = force_reg (V8SFmode, operands[2]);
26817 : if (!register_operand (operands[6], V8SFmode))
26818 : operands[6] = force_reg (V8SFmode, operands[6]);
26819 :
26820 : }
26821 : #undef DONE
26822 : #undef FAIL
26823 : static const uint8_t expand_encoding[] = {
26824 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26825 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26826 : 0x25
26827 : };
26828 : return complete_seq (expand_encoding, operands);
26829 : }
26830 :
26831 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26832 : extern rtx_insn *gen_split_2923 (rtx_insn *, rtx *);
26833 : rtx_insn *
26834 : gen_split_2923 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26835 : {
26836 : if (dump_file)
26837 : fprintf (dump_file, "Splitting with gen_split_2923 (sse.md:14227)\n");
26838 : start_sequence ();
26839 : #define FAIL return (end_sequence (), nullptr)
26840 : #define DONE return end_sequence ()
26841 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26842 : {
26843 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26844 : int reg6 = 0xF0;
26845 : int reg2 = 0xCC;
26846 : int reg1 = 0xAA;
26847 : int reg3 = 0;
26848 : int reg4 = 0;
26849 : int reg_mask, tmp1, tmp2;
26850 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26851 : STRIP_UNARY (operands[4])))
26852 : {
26853 : reg4 = reg1;
26854 : reg3 = reg6;
26855 : operands[6] = operands[3];
26856 : }
26857 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26858 : STRIP_UNARY (operands[4])))
26859 : {
26860 : reg4 = reg2;
26861 : reg3 = reg6;
26862 : operands[6] = operands[3];
26863 : }
26864 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26865 : STRIP_UNARY (operands[3])))
26866 : {
26867 : reg4 = reg6;
26868 : reg3 = reg1;
26869 : operands[6] = operands[4];
26870 : }
26871 : else
26872 : {
26873 : reg4 = reg6;
26874 : reg3 = reg2;
26875 : operands[6] = operands[4];
26876 : }
26877 :
26878 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26879 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26880 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26881 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26882 :
26883 : tmp1 = reg1 & reg2;
26884 : tmp2 = tmp1 & reg3;
26885 : reg_mask = tmp2 ^ reg4;
26886 : reg_mask &= 0xFF;
26887 :
26888 : operands[1] = STRIP_UNARY (operands[1]);
26889 : operands[2] = STRIP_UNARY (operands[2]);
26890 : operands[6] = STRIP_UNARY (operands[6]);
26891 : operands[5] = GEN_INT (reg_mask);
26892 : if (!register_operand (operands[2], V4SFmode))
26893 : operands[2] = force_reg (V4SFmode, operands[2]);
26894 : if (!register_operand (operands[6], V4SFmode))
26895 : operands[6] = force_reg (V4SFmode, operands[6]);
26896 :
26897 : }
26898 : #undef DONE
26899 : #undef FAIL
26900 : static const uint8_t expand_encoding[] = {
26901 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26902 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26903 : 0x25
26904 : };
26905 : return complete_seq (expand_encoding, operands);
26906 : }
26907 :
26908 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26909 : extern rtx_insn *gen_split_2933 (rtx_insn *, rtx *);
26910 : rtx_insn *
26911 : gen_split_2933 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26912 : {
26913 : if (dump_file)
26914 : fprintf (dump_file, "Splitting with gen_split_2933 (sse.md:14227)\n");
26915 : start_sequence ();
26916 : #define FAIL return (end_sequence (), nullptr)
26917 : #define DONE return end_sequence ()
26918 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26919 : {
26920 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26921 : int reg6 = 0xF0;
26922 : int reg2 = 0xCC;
26923 : int reg1 = 0xAA;
26924 : int reg3 = 0;
26925 : int reg4 = 0;
26926 : int reg_mask, tmp1, tmp2;
26927 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26928 : STRIP_UNARY (operands[4])))
26929 : {
26930 : reg4 = reg1;
26931 : reg3 = reg6;
26932 : operands[6] = operands[3];
26933 : }
26934 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26935 : STRIP_UNARY (operands[4])))
26936 : {
26937 : reg4 = reg2;
26938 : reg3 = reg6;
26939 : operands[6] = operands[3];
26940 : }
26941 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26942 : STRIP_UNARY (operands[3])))
26943 : {
26944 : reg4 = reg6;
26945 : reg3 = reg1;
26946 : operands[6] = operands[4];
26947 : }
26948 : else
26949 : {
26950 : reg4 = reg6;
26951 : reg3 = reg2;
26952 : operands[6] = operands[4];
26953 : }
26954 :
26955 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26956 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26957 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26958 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26959 :
26960 : tmp1 = reg1 | reg2;
26961 : tmp2 = tmp1 | reg3;
26962 : reg_mask = tmp2 & reg4;
26963 : reg_mask &= 0xFF;
26964 :
26965 : operands[1] = STRIP_UNARY (operands[1]);
26966 : operands[2] = STRIP_UNARY (operands[2]);
26967 : operands[6] = STRIP_UNARY (operands[6]);
26968 : operands[5] = GEN_INT (reg_mask);
26969 : if (!register_operand (operands[2], V4SFmode))
26970 : operands[2] = force_reg (V4SFmode, operands[2]);
26971 : if (!register_operand (operands[6], V4SFmode))
26972 : operands[6] = force_reg (V4SFmode, operands[6]);
26973 :
26974 : }
26975 : #undef DONE
26976 : #undef FAIL
26977 : static const uint8_t expand_encoding[] = {
26978 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26979 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26980 : 0x25
26981 : };
26982 : return complete_seq (expand_encoding, operands);
26983 : }
26984 :
26985 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26986 : extern rtx_insn *gen_split_2943 (rtx_insn *, rtx *);
26987 : rtx_insn *
26988 : gen_split_2943 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26989 : {
26990 : if (dump_file)
26991 : fprintf (dump_file, "Splitting with gen_split_2943 (sse.md:14227)\n");
26992 : start_sequence ();
26993 : #define FAIL return (end_sequence (), nullptr)
26994 : #define DONE return end_sequence ()
26995 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26996 : {
26997 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26998 : int reg6 = 0xF0;
26999 : int reg2 = 0xCC;
27000 : int reg1 = 0xAA;
27001 : int reg3 = 0;
27002 : int reg4 = 0;
27003 : int reg_mask, tmp1, tmp2;
27004 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27005 : STRIP_UNARY (operands[4])))
27006 : {
27007 : reg4 = reg1;
27008 : reg3 = reg6;
27009 : operands[6] = operands[3];
27010 : }
27011 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27012 : STRIP_UNARY (operands[4])))
27013 : {
27014 : reg4 = reg2;
27015 : reg3 = reg6;
27016 : operands[6] = operands[3];
27017 : }
27018 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27019 : STRIP_UNARY (operands[3])))
27020 : {
27021 : reg4 = reg6;
27022 : reg3 = reg1;
27023 : operands[6] = operands[4];
27024 : }
27025 : else
27026 : {
27027 : reg4 = reg6;
27028 : reg3 = reg2;
27029 : operands[6] = operands[4];
27030 : }
27031 :
27032 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27033 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27034 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27035 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27036 :
27037 : tmp1 = reg1 | reg2;
27038 : tmp2 = tmp1 ^ reg3;
27039 : reg_mask = tmp2 | reg4;
27040 : reg_mask &= 0xFF;
27041 :
27042 : operands[1] = STRIP_UNARY (operands[1]);
27043 : operands[2] = STRIP_UNARY (operands[2]);
27044 : operands[6] = STRIP_UNARY (operands[6]);
27045 : operands[5] = GEN_INT (reg_mask);
27046 : if (!register_operand (operands[2], V4SFmode))
27047 : operands[2] = force_reg (V4SFmode, operands[2]);
27048 : if (!register_operand (operands[6], V4SFmode))
27049 : operands[6] = force_reg (V4SFmode, operands[6]);
27050 :
27051 : }
27052 : #undef DONE
27053 : #undef FAIL
27054 : static const uint8_t expand_encoding[] = {
27055 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
27056 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27057 : 0x25
27058 : };
27059 : return complete_seq (expand_encoding, operands);
27060 : }
27061 :
27062 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27063 : extern rtx_insn *gen_split_2953 (rtx_insn *, rtx *);
27064 : rtx_insn *
27065 : gen_split_2953 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27066 : {
27067 : if (dump_file)
27068 : fprintf (dump_file, "Splitting with gen_split_2953 (sse.md:14227)\n");
27069 : start_sequence ();
27070 : #define FAIL return (end_sequence (), nullptr)
27071 : #define DONE return end_sequence ()
27072 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27073 : {
27074 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27075 : int reg6 = 0xF0;
27076 : int reg2 = 0xCC;
27077 : int reg1 = 0xAA;
27078 : int reg3 = 0;
27079 : int reg4 = 0;
27080 : int reg_mask, tmp1, tmp2;
27081 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27082 : STRIP_UNARY (operands[4])))
27083 : {
27084 : reg4 = reg1;
27085 : reg3 = reg6;
27086 : operands[6] = operands[3];
27087 : }
27088 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27089 : STRIP_UNARY (operands[4])))
27090 : {
27091 : reg4 = reg2;
27092 : reg3 = reg6;
27093 : operands[6] = operands[3];
27094 : }
27095 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27096 : STRIP_UNARY (operands[3])))
27097 : {
27098 : reg4 = reg6;
27099 : reg3 = reg1;
27100 : operands[6] = operands[4];
27101 : }
27102 : else
27103 : {
27104 : reg4 = reg6;
27105 : reg3 = reg2;
27106 : operands[6] = operands[4];
27107 : }
27108 :
27109 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27110 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27111 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27112 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27113 :
27114 : tmp1 = reg1 | reg2;
27115 : tmp2 = tmp1 & reg3;
27116 : reg_mask = tmp2 ^ reg4;
27117 : reg_mask &= 0xFF;
27118 :
27119 : operands[1] = STRIP_UNARY (operands[1]);
27120 : operands[2] = STRIP_UNARY (operands[2]);
27121 : operands[6] = STRIP_UNARY (operands[6]);
27122 : operands[5] = GEN_INT (reg_mask);
27123 : if (!register_operand (operands[2], V8DFmode))
27124 : operands[2] = force_reg (V8DFmode, operands[2]);
27125 : if (!register_operand (operands[6], V8DFmode))
27126 : operands[6] = force_reg (V8DFmode, operands[6]);
27127 :
27128 : }
27129 : #undef DONE
27130 : #undef FAIL
27131 : static const uint8_t expand_encoding[] = {
27132 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27133 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27134 : 0x25
27135 : };
27136 : return complete_seq (expand_encoding, operands);
27137 : }
27138 :
27139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27140 : extern rtx_insn *gen_split_2963 (rtx_insn *, rtx *);
27141 : rtx_insn *
27142 : gen_split_2963 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27143 : {
27144 : if (dump_file)
27145 : fprintf (dump_file, "Splitting with gen_split_2963 (sse.md:14227)\n");
27146 : start_sequence ();
27147 : #define FAIL return (end_sequence (), nullptr)
27148 : #define DONE return end_sequence ()
27149 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27150 : {
27151 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27152 : int reg6 = 0xF0;
27153 : int reg2 = 0xCC;
27154 : int reg1 = 0xAA;
27155 : int reg3 = 0;
27156 : int reg4 = 0;
27157 : int reg_mask, tmp1, tmp2;
27158 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27159 : STRIP_UNARY (operands[4])))
27160 : {
27161 : reg4 = reg1;
27162 : reg3 = reg6;
27163 : operands[6] = operands[3];
27164 : }
27165 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27166 : STRIP_UNARY (operands[4])))
27167 : {
27168 : reg4 = reg2;
27169 : reg3 = reg6;
27170 : operands[6] = operands[3];
27171 : }
27172 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27173 : STRIP_UNARY (operands[3])))
27174 : {
27175 : reg4 = reg6;
27176 : reg3 = reg1;
27177 : operands[6] = operands[4];
27178 : }
27179 : else
27180 : {
27181 : reg4 = reg6;
27182 : reg3 = reg2;
27183 : operands[6] = operands[4];
27184 : }
27185 :
27186 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27187 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27188 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27189 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27190 :
27191 : tmp1 = reg1 ^ reg2;
27192 : tmp2 = tmp1 | reg3;
27193 : reg_mask = tmp2 & reg4;
27194 : reg_mask &= 0xFF;
27195 :
27196 : operands[1] = STRIP_UNARY (operands[1]);
27197 : operands[2] = STRIP_UNARY (operands[2]);
27198 : operands[6] = STRIP_UNARY (operands[6]);
27199 : operands[5] = GEN_INT (reg_mask);
27200 : if (!register_operand (operands[2], V8DFmode))
27201 : operands[2] = force_reg (V8DFmode, operands[2]);
27202 : if (!register_operand (operands[6], V8DFmode))
27203 : operands[6] = force_reg (V8DFmode, operands[6]);
27204 :
27205 : }
27206 : #undef DONE
27207 : #undef FAIL
27208 : static const uint8_t expand_encoding[] = {
27209 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27210 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27211 : 0x25
27212 : };
27213 : return complete_seq (expand_encoding, operands);
27214 : }
27215 :
27216 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27217 : extern rtx_insn *gen_split_2973 (rtx_insn *, rtx *);
27218 : rtx_insn *
27219 : gen_split_2973 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27220 : {
27221 : if (dump_file)
27222 : fprintf (dump_file, "Splitting with gen_split_2973 (sse.md:14227)\n");
27223 : start_sequence ();
27224 : #define FAIL return (end_sequence (), nullptr)
27225 : #define DONE return end_sequence ()
27226 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27227 : {
27228 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27229 : int reg6 = 0xF0;
27230 : int reg2 = 0xCC;
27231 : int reg1 = 0xAA;
27232 : int reg3 = 0;
27233 : int reg4 = 0;
27234 : int reg_mask, tmp1, tmp2;
27235 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27236 : STRIP_UNARY (operands[4])))
27237 : {
27238 : reg4 = reg1;
27239 : reg3 = reg6;
27240 : operands[6] = operands[3];
27241 : }
27242 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27243 : STRIP_UNARY (operands[4])))
27244 : {
27245 : reg4 = reg2;
27246 : reg3 = reg6;
27247 : operands[6] = operands[3];
27248 : }
27249 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27250 : STRIP_UNARY (operands[3])))
27251 : {
27252 : reg4 = reg6;
27253 : reg3 = reg1;
27254 : operands[6] = operands[4];
27255 : }
27256 : else
27257 : {
27258 : reg4 = reg6;
27259 : reg3 = reg2;
27260 : operands[6] = operands[4];
27261 : }
27262 :
27263 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27264 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27265 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27266 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27267 :
27268 : tmp1 = reg1 ^ reg2;
27269 : tmp2 = tmp1 ^ reg3;
27270 : reg_mask = tmp2 | reg4;
27271 : reg_mask &= 0xFF;
27272 :
27273 : operands[1] = STRIP_UNARY (operands[1]);
27274 : operands[2] = STRIP_UNARY (operands[2]);
27275 : operands[6] = STRIP_UNARY (operands[6]);
27276 : operands[5] = GEN_INT (reg_mask);
27277 : if (!register_operand (operands[2], V8DFmode))
27278 : operands[2] = force_reg (V8DFmode, operands[2]);
27279 : if (!register_operand (operands[6], V8DFmode))
27280 : operands[6] = force_reg (V8DFmode, operands[6]);
27281 :
27282 : }
27283 : #undef DONE
27284 : #undef FAIL
27285 : static const uint8_t expand_encoding[] = {
27286 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27287 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27288 : 0x25
27289 : };
27290 : return complete_seq (expand_encoding, operands);
27291 : }
27292 :
27293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27294 : extern rtx_insn *gen_split_2983 (rtx_insn *, rtx *);
27295 : rtx_insn *
27296 : gen_split_2983 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27297 : {
27298 : if (dump_file)
27299 : fprintf (dump_file, "Splitting with gen_split_2983 (sse.md:14227)\n");
27300 : start_sequence ();
27301 : #define FAIL return (end_sequence (), nullptr)
27302 : #define DONE return end_sequence ()
27303 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27304 : {
27305 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27306 : int reg6 = 0xF0;
27307 : int reg2 = 0xCC;
27308 : int reg1 = 0xAA;
27309 : int reg3 = 0;
27310 : int reg4 = 0;
27311 : int reg_mask, tmp1, tmp2;
27312 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27313 : STRIP_UNARY (operands[4])))
27314 : {
27315 : reg4 = reg1;
27316 : reg3 = reg6;
27317 : operands[6] = operands[3];
27318 : }
27319 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27320 : STRIP_UNARY (operands[4])))
27321 : {
27322 : reg4 = reg2;
27323 : reg3 = reg6;
27324 : operands[6] = operands[3];
27325 : }
27326 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27327 : STRIP_UNARY (operands[3])))
27328 : {
27329 : reg4 = reg6;
27330 : reg3 = reg1;
27331 : operands[6] = operands[4];
27332 : }
27333 : else
27334 : {
27335 : reg4 = reg6;
27336 : reg3 = reg2;
27337 : operands[6] = operands[4];
27338 : }
27339 :
27340 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27341 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27342 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27343 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27344 :
27345 : tmp1 = reg1 ^ reg2;
27346 : tmp2 = tmp1 & reg3;
27347 : reg_mask = tmp2 ^ reg4;
27348 : reg_mask &= 0xFF;
27349 :
27350 : operands[1] = STRIP_UNARY (operands[1]);
27351 : operands[2] = STRIP_UNARY (operands[2]);
27352 : operands[6] = STRIP_UNARY (operands[6]);
27353 : operands[5] = GEN_INT (reg_mask);
27354 : if (!register_operand (operands[2], V4DFmode))
27355 : operands[2] = force_reg (V4DFmode, operands[2]);
27356 : if (!register_operand (operands[6], V4DFmode))
27357 : operands[6] = force_reg (V4DFmode, operands[6]);
27358 :
27359 : }
27360 : #undef DONE
27361 : #undef FAIL
27362 : static const uint8_t expand_encoding[] = {
27363 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27364 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27365 : 0x25
27366 : };
27367 : return complete_seq (expand_encoding, operands);
27368 : }
27369 :
27370 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27371 : extern rtx_insn *gen_split_2993 (rtx_insn *, rtx *);
27372 : rtx_insn *
27373 : gen_split_2993 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27374 : {
27375 : if (dump_file)
27376 : fprintf (dump_file, "Splitting with gen_split_2993 (sse.md:14227)\n");
27377 : start_sequence ();
27378 : #define FAIL return (end_sequence (), nullptr)
27379 : #define DONE return end_sequence ()
27380 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27381 : {
27382 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27383 : int reg6 = 0xF0;
27384 : int reg2 = 0xCC;
27385 : int reg1 = 0xAA;
27386 : int reg3 = 0;
27387 : int reg4 = 0;
27388 : int reg_mask, tmp1, tmp2;
27389 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27390 : STRIP_UNARY (operands[4])))
27391 : {
27392 : reg4 = reg1;
27393 : reg3 = reg6;
27394 : operands[6] = operands[3];
27395 : }
27396 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27397 : STRIP_UNARY (operands[4])))
27398 : {
27399 : reg4 = reg2;
27400 : reg3 = reg6;
27401 : operands[6] = operands[3];
27402 : }
27403 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27404 : STRIP_UNARY (operands[3])))
27405 : {
27406 : reg4 = reg6;
27407 : reg3 = reg1;
27408 : operands[6] = operands[4];
27409 : }
27410 : else
27411 : {
27412 : reg4 = reg6;
27413 : reg3 = reg2;
27414 : operands[6] = operands[4];
27415 : }
27416 :
27417 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27418 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27419 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27420 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27421 :
27422 : tmp1 = reg1 & reg2;
27423 : tmp2 = tmp1 ^ reg3;
27424 : reg_mask = tmp2 & reg4;
27425 : reg_mask &= 0xFF;
27426 :
27427 : operands[1] = STRIP_UNARY (operands[1]);
27428 : operands[2] = STRIP_UNARY (operands[2]);
27429 : operands[6] = STRIP_UNARY (operands[6]);
27430 : operands[5] = GEN_INT (reg_mask);
27431 : if (!register_operand (operands[2], V4DFmode))
27432 : operands[2] = force_reg (V4DFmode, operands[2]);
27433 : if (!register_operand (operands[6], V4DFmode))
27434 : operands[6] = force_reg (V4DFmode, operands[6]);
27435 :
27436 : }
27437 : #undef DONE
27438 : #undef FAIL
27439 : static const uint8_t expand_encoding[] = {
27440 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27441 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27442 : 0x25
27443 : };
27444 : return complete_seq (expand_encoding, operands);
27445 : }
27446 :
27447 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27448 : extern rtx_insn *gen_split_3003 (rtx_insn *, rtx *);
27449 : rtx_insn *
27450 : gen_split_3003 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27451 : {
27452 : if (dump_file)
27453 : fprintf (dump_file, "Splitting with gen_split_3003 (sse.md:14227)\n");
27454 : start_sequence ();
27455 : #define FAIL return (end_sequence (), nullptr)
27456 : #define DONE return end_sequence ()
27457 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27458 : {
27459 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27460 : int reg6 = 0xF0;
27461 : int reg2 = 0xCC;
27462 : int reg1 = 0xAA;
27463 : int reg3 = 0;
27464 : int reg4 = 0;
27465 : int reg_mask, tmp1, tmp2;
27466 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27467 : STRIP_UNARY (operands[4])))
27468 : {
27469 : reg4 = reg1;
27470 : reg3 = reg6;
27471 : operands[6] = operands[3];
27472 : }
27473 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27474 : STRIP_UNARY (operands[4])))
27475 : {
27476 : reg4 = reg2;
27477 : reg3 = reg6;
27478 : operands[6] = operands[3];
27479 : }
27480 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27481 : STRIP_UNARY (operands[3])))
27482 : {
27483 : reg4 = reg6;
27484 : reg3 = reg1;
27485 : operands[6] = operands[4];
27486 : }
27487 : else
27488 : {
27489 : reg4 = reg6;
27490 : reg3 = reg2;
27491 : operands[6] = operands[4];
27492 : }
27493 :
27494 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27495 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27496 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27497 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27498 :
27499 : tmp1 = reg1 & reg2;
27500 : tmp2 = tmp1 & reg3;
27501 : reg_mask = tmp2 | reg4;
27502 : reg_mask &= 0xFF;
27503 :
27504 : operands[1] = STRIP_UNARY (operands[1]);
27505 : operands[2] = STRIP_UNARY (operands[2]);
27506 : operands[6] = STRIP_UNARY (operands[6]);
27507 : operands[5] = GEN_INT (reg_mask);
27508 : if (!register_operand (operands[2], V2DFmode))
27509 : operands[2] = force_reg (V2DFmode, operands[2]);
27510 : if (!register_operand (operands[6], V2DFmode))
27511 : operands[6] = force_reg (V2DFmode, operands[6]);
27512 :
27513 : }
27514 : #undef DONE
27515 : #undef FAIL
27516 : static const uint8_t expand_encoding[] = {
27517 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27518 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27519 : 0x25
27520 : };
27521 : return complete_seq (expand_encoding, operands);
27522 : }
27523 :
27524 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27525 : extern rtx_insn *gen_split_3013 (rtx_insn *, rtx *);
27526 : rtx_insn *
27527 : gen_split_3013 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27528 : {
27529 : if (dump_file)
27530 : fprintf (dump_file, "Splitting with gen_split_3013 (sse.md:14227)\n");
27531 : start_sequence ();
27532 : #define FAIL return (end_sequence (), nullptr)
27533 : #define DONE return end_sequence ()
27534 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27535 : {
27536 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27537 : int reg6 = 0xF0;
27538 : int reg2 = 0xCC;
27539 : int reg1 = 0xAA;
27540 : int reg3 = 0;
27541 : int reg4 = 0;
27542 : int reg_mask, tmp1, tmp2;
27543 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27544 : STRIP_UNARY (operands[4])))
27545 : {
27546 : reg4 = reg1;
27547 : reg3 = reg6;
27548 : operands[6] = operands[3];
27549 : }
27550 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27551 : STRIP_UNARY (operands[4])))
27552 : {
27553 : reg4 = reg2;
27554 : reg3 = reg6;
27555 : operands[6] = operands[3];
27556 : }
27557 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27558 : STRIP_UNARY (operands[3])))
27559 : {
27560 : reg4 = reg6;
27561 : reg3 = reg1;
27562 : operands[6] = operands[4];
27563 : }
27564 : else
27565 : {
27566 : reg4 = reg6;
27567 : reg3 = reg2;
27568 : operands[6] = operands[4];
27569 : }
27570 :
27571 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27572 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27573 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27574 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27575 :
27576 : tmp1 = reg1 & reg2;
27577 : tmp2 = tmp1 | reg3;
27578 : reg_mask = tmp2 ^ reg4;
27579 : reg_mask &= 0xFF;
27580 :
27581 : operands[1] = STRIP_UNARY (operands[1]);
27582 : operands[2] = STRIP_UNARY (operands[2]);
27583 : operands[6] = STRIP_UNARY (operands[6]);
27584 : operands[5] = GEN_INT (reg_mask);
27585 : if (!register_operand (operands[2], V2DFmode))
27586 : operands[2] = force_reg (V2DFmode, operands[2]);
27587 : if (!register_operand (operands[6], V2DFmode))
27588 : operands[6] = force_reg (V2DFmode, operands[6]);
27589 :
27590 : }
27591 : #undef DONE
27592 : #undef FAIL
27593 : static const uint8_t expand_encoding[] = {
27594 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27595 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27596 : 0x25
27597 : };
27598 : return complete_seq (expand_encoding, operands);
27599 : }
27600 :
27601 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27602 : extern rtx_insn *gen_split_3023 (rtx_insn *, rtx *);
27603 : rtx_insn *
27604 : gen_split_3023 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27605 : {
27606 : if (dump_file)
27607 : fprintf (dump_file, "Splitting with gen_split_3023 (sse.md:14227)\n");
27608 : start_sequence ();
27609 : #define FAIL return (end_sequence (), nullptr)
27610 : #define DONE return end_sequence ()
27611 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27612 : {
27613 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27614 : int reg6 = 0xF0;
27615 : int reg2 = 0xCC;
27616 : int reg1 = 0xAA;
27617 : int reg3 = 0;
27618 : int reg4 = 0;
27619 : int reg_mask, tmp1, tmp2;
27620 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27621 : STRIP_UNARY (operands[4])))
27622 : {
27623 : reg4 = reg1;
27624 : reg3 = reg6;
27625 : operands[6] = operands[3];
27626 : }
27627 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27628 : STRIP_UNARY (operands[4])))
27629 : {
27630 : reg4 = reg2;
27631 : reg3 = reg6;
27632 : operands[6] = operands[3];
27633 : }
27634 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27635 : STRIP_UNARY (operands[3])))
27636 : {
27637 : reg4 = reg6;
27638 : reg3 = reg1;
27639 : operands[6] = operands[4];
27640 : }
27641 : else
27642 : {
27643 : reg4 = reg6;
27644 : reg3 = reg2;
27645 : operands[6] = operands[4];
27646 : }
27647 :
27648 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27649 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27650 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27651 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27652 :
27653 : tmp1 = reg1 | reg2;
27654 : tmp2 = tmp1 ^ reg3;
27655 : reg_mask = tmp2 & reg4;
27656 : reg_mask &= 0xFF;
27657 :
27658 : operands[1] = STRIP_UNARY (operands[1]);
27659 : operands[2] = STRIP_UNARY (operands[2]);
27660 : operands[6] = STRIP_UNARY (operands[6]);
27661 : operands[5] = GEN_INT (reg_mask);
27662 : if (!register_operand (operands[2], V2DFmode))
27663 : operands[2] = force_reg (V2DFmode, operands[2]);
27664 : if (!register_operand (operands[6], V2DFmode))
27665 : operands[6] = force_reg (V2DFmode, operands[6]);
27666 :
27667 : }
27668 : #undef DONE
27669 : #undef FAIL
27670 : static const uint8_t expand_encoding[] = {
27671 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27672 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27673 : 0x25
27674 : };
27675 : return complete_seq (expand_encoding, operands);
27676 : }
27677 :
27678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27679 : extern rtx_insn *gen_split_3033 (rtx_insn *, rtx *);
27680 : rtx_insn *
27681 : gen_split_3033 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27682 : {
27683 : if (dump_file)
27684 : fprintf (dump_file, "Splitting with gen_split_3033 (sse.md:14313)\n");
27685 : start_sequence ();
27686 : #define FAIL return (end_sequence (), nullptr)
27687 : #define DONE return end_sequence ()
27688 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27689 : {
27690 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27691 : int reg3 = 0xF0;
27692 : int reg2 = 0xCC;
27693 : int reg1 = 0xAA;
27694 : int reg_mask, tmp1;
27695 :
27696 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27697 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27698 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27699 :
27700 : tmp1 = reg1 | reg2;
27701 : reg_mask = tmp1 | reg3;
27702 : reg_mask &= 0xFF;
27703 :
27704 : operands[1] = STRIP_UNARY (operands[1]);
27705 : operands[2] = STRIP_UNARY (operands[2]);
27706 : operands[3] = STRIP_UNARY (operands[3]);
27707 : operands[4] = GEN_INT (reg_mask);
27708 : if (!register_operand (operands[2], V64QImode))
27709 : operands[2] = force_reg (V64QImode, operands[2]);
27710 : if (!register_operand (operands[3], V64QImode))
27711 : operands[3] = force_reg (V64QImode, operands[3]);
27712 : }
27713 : #undef DONE
27714 : #undef FAIL
27715 : static const uint8_t expand_encoding[] = {
27716 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
27717 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27718 : 0x25
27719 : };
27720 : return complete_seq (expand_encoding, operands);
27721 : }
27722 :
27723 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27724 : extern rtx_insn *gen_split_3043 (rtx_insn *, rtx *);
27725 : rtx_insn *
27726 : gen_split_3043 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27727 : {
27728 : if (dump_file)
27729 : fprintf (dump_file, "Splitting with gen_split_3043 (sse.md:14313)\n");
27730 : start_sequence ();
27731 : #define FAIL return (end_sequence (), nullptr)
27732 : #define DONE return end_sequence ()
27733 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27734 : {
27735 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27736 : int reg3 = 0xF0;
27737 : int reg2 = 0xCC;
27738 : int reg1 = 0xAA;
27739 : int reg_mask, tmp1;
27740 :
27741 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27742 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27743 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27744 :
27745 : tmp1 = reg1 | reg2;
27746 : reg_mask = tmp1 ^ reg3;
27747 : reg_mask &= 0xFF;
27748 :
27749 : operands[1] = STRIP_UNARY (operands[1]);
27750 : operands[2] = STRIP_UNARY (operands[2]);
27751 : operands[3] = STRIP_UNARY (operands[3]);
27752 : operands[4] = GEN_INT (reg_mask);
27753 : if (!register_operand (operands[2], V32QImode))
27754 : operands[2] = force_reg (V32QImode, operands[2]);
27755 : if (!register_operand (operands[3], V32QImode))
27756 : operands[3] = force_reg (V32QImode, operands[3]);
27757 : }
27758 : #undef DONE
27759 : #undef FAIL
27760 : static const uint8_t expand_encoding[] = {
27761 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
27762 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27763 : 0x25
27764 : };
27765 : return complete_seq (expand_encoding, operands);
27766 : }
27767 :
27768 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27769 : extern rtx_insn *gen_split_3053 (rtx_insn *, rtx *);
27770 : rtx_insn *
27771 : gen_split_3053 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27772 : {
27773 : if (dump_file)
27774 : fprintf (dump_file, "Splitting with gen_split_3053 (sse.md:14313)\n");
27775 : start_sequence ();
27776 : #define FAIL return (end_sequence (), nullptr)
27777 : #define DONE return end_sequence ()
27778 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27779 : {
27780 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27781 : int reg3 = 0xF0;
27782 : int reg2 = 0xCC;
27783 : int reg1 = 0xAA;
27784 : int reg_mask, tmp1;
27785 :
27786 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27787 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27788 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27789 :
27790 : tmp1 = reg1 ^ reg2;
27791 : reg_mask = tmp1 & reg3;
27792 : reg_mask &= 0xFF;
27793 :
27794 : operands[1] = STRIP_UNARY (operands[1]);
27795 : operands[2] = STRIP_UNARY (operands[2]);
27796 : operands[3] = STRIP_UNARY (operands[3]);
27797 : operands[4] = GEN_INT (reg_mask);
27798 : if (!register_operand (operands[2], V16QImode))
27799 : operands[2] = force_reg (V16QImode, operands[2]);
27800 : if (!register_operand (operands[3], V16QImode))
27801 : operands[3] = force_reg (V16QImode, operands[3]);
27802 : }
27803 : #undef DONE
27804 : #undef FAIL
27805 : static const uint8_t expand_encoding[] = {
27806 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
27807 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27808 : 0x25
27809 : };
27810 : return complete_seq (expand_encoding, operands);
27811 : }
27812 :
27813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27814 : extern rtx_insn *gen_split_3063 (rtx_insn *, rtx *);
27815 : rtx_insn *
27816 : gen_split_3063 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27817 : {
27818 : if (dump_file)
27819 : fprintf (dump_file, "Splitting with gen_split_3063 (sse.md:14313)\n");
27820 : start_sequence ();
27821 : #define FAIL return (end_sequence (), nullptr)
27822 : #define DONE return end_sequence ()
27823 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27824 : {
27825 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27826 : int reg3 = 0xF0;
27827 : int reg2 = 0xCC;
27828 : int reg1 = 0xAA;
27829 : int reg_mask, tmp1;
27830 :
27831 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27832 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27833 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27834 :
27835 : tmp1 = reg1 ^ reg2;
27836 : reg_mask = tmp1 | reg3;
27837 : reg_mask &= 0xFF;
27838 :
27839 : operands[1] = STRIP_UNARY (operands[1]);
27840 : operands[2] = STRIP_UNARY (operands[2]);
27841 : operands[3] = STRIP_UNARY (operands[3]);
27842 : operands[4] = GEN_INT (reg_mask);
27843 : if (!register_operand (operands[2], V32HImode))
27844 : operands[2] = force_reg (V32HImode, operands[2]);
27845 : if (!register_operand (operands[3], V32HImode))
27846 : operands[3] = force_reg (V32HImode, operands[3]);
27847 : }
27848 : #undef DONE
27849 : #undef FAIL
27850 : static const uint8_t expand_encoding[] = {
27851 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
27852 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27853 : 0x25
27854 : };
27855 : return complete_seq (expand_encoding, operands);
27856 : }
27857 :
27858 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27859 : extern rtx_insn *gen_split_3073 (rtx_insn *, rtx *);
27860 : rtx_insn *
27861 : gen_split_3073 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27862 : {
27863 : if (dump_file)
27864 : fprintf (dump_file, "Splitting with gen_split_3073 (sse.md:14313)\n");
27865 : start_sequence ();
27866 : #define FAIL return (end_sequence (), nullptr)
27867 : #define DONE return end_sequence ()
27868 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27869 : {
27870 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27871 : int reg3 = 0xF0;
27872 : int reg2 = 0xCC;
27873 : int reg1 = 0xAA;
27874 : int reg_mask, tmp1;
27875 :
27876 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27877 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27878 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27879 :
27880 : tmp1 = reg1 ^ reg2;
27881 : reg_mask = tmp1 ^ reg3;
27882 : reg_mask &= 0xFF;
27883 :
27884 : operands[1] = STRIP_UNARY (operands[1]);
27885 : operands[2] = STRIP_UNARY (operands[2]);
27886 : operands[3] = STRIP_UNARY (operands[3]);
27887 : operands[4] = GEN_INT (reg_mask);
27888 : if (!register_operand (operands[2], V16HImode))
27889 : operands[2] = force_reg (V16HImode, operands[2]);
27890 : if (!register_operand (operands[3], V16HImode))
27891 : operands[3] = force_reg (V16HImode, operands[3]);
27892 : }
27893 : #undef DONE
27894 : #undef FAIL
27895 : static const uint8_t expand_encoding[] = {
27896 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
27897 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27898 : 0x25
27899 : };
27900 : return complete_seq (expand_encoding, operands);
27901 : }
27902 :
27903 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27904 : extern rtx_insn *gen_split_3083 (rtx_insn *, rtx *);
27905 : rtx_insn *
27906 : gen_split_3083 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27907 : {
27908 : if (dump_file)
27909 : fprintf (dump_file, "Splitting with gen_split_3083 (sse.md:14313)\n");
27910 : start_sequence ();
27911 : #define FAIL return (end_sequence (), nullptr)
27912 : #define DONE return end_sequence ()
27913 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27914 : {
27915 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27916 : int reg3 = 0xF0;
27917 : int reg2 = 0xCC;
27918 : int reg1 = 0xAA;
27919 : int reg_mask, tmp1;
27920 :
27921 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27922 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27923 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27924 :
27925 : tmp1 = reg1 & reg2;
27926 : reg_mask = tmp1 & reg3;
27927 : reg_mask &= 0xFF;
27928 :
27929 : operands[1] = STRIP_UNARY (operands[1]);
27930 : operands[2] = STRIP_UNARY (operands[2]);
27931 : operands[3] = STRIP_UNARY (operands[3]);
27932 : operands[4] = GEN_INT (reg_mask);
27933 : if (!register_operand (operands[2], V16SImode))
27934 : operands[2] = force_reg (V16SImode, operands[2]);
27935 : if (!register_operand (operands[3], V16SImode))
27936 : operands[3] = force_reg (V16SImode, operands[3]);
27937 : }
27938 : #undef DONE
27939 : #undef FAIL
27940 : static const uint8_t expand_encoding[] = {
27941 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
27942 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27943 : 0x25
27944 : };
27945 : return complete_seq (expand_encoding, operands);
27946 : }
27947 :
27948 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27949 : extern rtx_insn *gen_split_3093 (rtx_insn *, rtx *);
27950 : rtx_insn *
27951 : gen_split_3093 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27952 : {
27953 : if (dump_file)
27954 : fprintf (dump_file, "Splitting with gen_split_3093 (sse.md:14313)\n");
27955 : start_sequence ();
27956 : #define FAIL return (end_sequence (), nullptr)
27957 : #define DONE return end_sequence ()
27958 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27959 : {
27960 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27961 : int reg3 = 0xF0;
27962 : int reg2 = 0xCC;
27963 : int reg1 = 0xAA;
27964 : int reg_mask, tmp1;
27965 :
27966 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27967 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27968 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27969 :
27970 : tmp1 = reg1 & reg2;
27971 : reg_mask = tmp1 | reg3;
27972 : reg_mask &= 0xFF;
27973 :
27974 : operands[1] = STRIP_UNARY (operands[1]);
27975 : operands[2] = STRIP_UNARY (operands[2]);
27976 : operands[3] = STRIP_UNARY (operands[3]);
27977 : operands[4] = GEN_INT (reg_mask);
27978 : if (!register_operand (operands[2], V8SImode))
27979 : operands[2] = force_reg (V8SImode, operands[2]);
27980 : if (!register_operand (operands[3], V8SImode))
27981 : operands[3] = force_reg (V8SImode, operands[3]);
27982 : }
27983 : #undef DONE
27984 : #undef FAIL
27985 : static const uint8_t expand_encoding[] = {
27986 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
27987 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27988 : 0x25
27989 : };
27990 : return complete_seq (expand_encoding, operands);
27991 : }
27992 :
27993 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27994 : extern rtx_insn *gen_split_3103 (rtx_insn *, rtx *);
27995 : rtx_insn *
27996 : gen_split_3103 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27997 : {
27998 : if (dump_file)
27999 : fprintf (dump_file, "Splitting with gen_split_3103 (sse.md:14313)\n");
28000 : start_sequence ();
28001 : #define FAIL return (end_sequence (), nullptr)
28002 : #define DONE return end_sequence ()
28003 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28004 : {
28005 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28006 : int reg3 = 0xF0;
28007 : int reg2 = 0xCC;
28008 : int reg1 = 0xAA;
28009 : int reg_mask, tmp1;
28010 :
28011 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28012 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28013 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28014 :
28015 : tmp1 = reg1 & reg2;
28016 : reg_mask = tmp1 ^ reg3;
28017 : reg_mask &= 0xFF;
28018 :
28019 : operands[1] = STRIP_UNARY (operands[1]);
28020 : operands[2] = STRIP_UNARY (operands[2]);
28021 : operands[3] = STRIP_UNARY (operands[3]);
28022 : operands[4] = GEN_INT (reg_mask);
28023 : if (!register_operand (operands[2], V4SImode))
28024 : operands[2] = force_reg (V4SImode, operands[2]);
28025 : if (!register_operand (operands[3], V4SImode))
28026 : operands[3] = force_reg (V4SImode, operands[3]);
28027 : }
28028 : #undef DONE
28029 : #undef FAIL
28030 : static const uint8_t expand_encoding[] = {
28031 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
28032 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28033 : 0x25
28034 : };
28035 : return complete_seq (expand_encoding, operands);
28036 : }
28037 :
28038 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28039 : extern rtx_insn *gen_split_3113 (rtx_insn *, rtx *);
28040 : rtx_insn *
28041 : gen_split_3113 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28042 : {
28043 : if (dump_file)
28044 : fprintf (dump_file, "Splitting with gen_split_3113 (sse.md:14313)\n");
28045 : start_sequence ();
28046 : #define FAIL return (end_sequence (), nullptr)
28047 : #define DONE return end_sequence ()
28048 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28049 : {
28050 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28051 : int reg3 = 0xF0;
28052 : int reg2 = 0xCC;
28053 : int reg1 = 0xAA;
28054 : int reg_mask, tmp1;
28055 :
28056 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28057 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28058 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28059 :
28060 : tmp1 = reg1 | reg2;
28061 : reg_mask = tmp1 & reg3;
28062 : reg_mask &= 0xFF;
28063 :
28064 : operands[1] = STRIP_UNARY (operands[1]);
28065 : operands[2] = STRIP_UNARY (operands[2]);
28066 : operands[3] = STRIP_UNARY (operands[3]);
28067 : operands[4] = GEN_INT (reg_mask);
28068 : if (!register_operand (operands[2], V8DImode))
28069 : operands[2] = force_reg (V8DImode, operands[2]);
28070 : if (!register_operand (operands[3], V8DImode))
28071 : operands[3] = force_reg (V8DImode, operands[3]);
28072 : }
28073 : #undef DONE
28074 : #undef FAIL
28075 : static const uint8_t expand_encoding[] = {
28076 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
28077 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28078 : 0x25
28079 : };
28080 : return complete_seq (expand_encoding, operands);
28081 : }
28082 :
28083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28084 : extern rtx_insn *gen_split_3123 (rtx_insn *, rtx *);
28085 : rtx_insn *
28086 : gen_split_3123 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28087 : {
28088 : if (dump_file)
28089 : fprintf (dump_file, "Splitting with gen_split_3123 (sse.md:14313)\n");
28090 : start_sequence ();
28091 : #define FAIL return (end_sequence (), nullptr)
28092 : #define DONE return end_sequence ()
28093 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28094 : {
28095 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28096 : int reg3 = 0xF0;
28097 : int reg2 = 0xCC;
28098 : int reg1 = 0xAA;
28099 : int reg_mask, tmp1;
28100 :
28101 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28102 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28103 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28104 :
28105 : tmp1 = reg1 | reg2;
28106 : reg_mask = tmp1 | reg3;
28107 : reg_mask &= 0xFF;
28108 :
28109 : operands[1] = STRIP_UNARY (operands[1]);
28110 : operands[2] = STRIP_UNARY (operands[2]);
28111 : operands[3] = STRIP_UNARY (operands[3]);
28112 : operands[4] = GEN_INT (reg_mask);
28113 : if (!register_operand (operands[2], V4DImode))
28114 : operands[2] = force_reg (V4DImode, operands[2]);
28115 : if (!register_operand (operands[3], V4DImode))
28116 : operands[3] = force_reg (V4DImode, operands[3]);
28117 : }
28118 : #undef DONE
28119 : #undef FAIL
28120 : static const uint8_t expand_encoding[] = {
28121 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
28122 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28123 : 0x25
28124 : };
28125 : return complete_seq (expand_encoding, operands);
28126 : }
28127 :
28128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28129 : extern rtx_insn *gen_split_3133 (rtx_insn *, rtx *);
28130 : rtx_insn *
28131 : gen_split_3133 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28132 : {
28133 : if (dump_file)
28134 : fprintf (dump_file, "Splitting with gen_split_3133 (sse.md:14313)\n");
28135 : start_sequence ();
28136 : #define FAIL return (end_sequence (), nullptr)
28137 : #define DONE return end_sequence ()
28138 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28139 : {
28140 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28141 : int reg3 = 0xF0;
28142 : int reg2 = 0xCC;
28143 : int reg1 = 0xAA;
28144 : int reg_mask, tmp1;
28145 :
28146 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28147 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28148 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28149 :
28150 : tmp1 = reg1 | reg2;
28151 : reg_mask = tmp1 ^ reg3;
28152 : reg_mask &= 0xFF;
28153 :
28154 : operands[1] = STRIP_UNARY (operands[1]);
28155 : operands[2] = STRIP_UNARY (operands[2]);
28156 : operands[3] = STRIP_UNARY (operands[3]);
28157 : operands[4] = GEN_INT (reg_mask);
28158 : if (!register_operand (operands[2], V2DImode))
28159 : operands[2] = force_reg (V2DImode, operands[2]);
28160 : if (!register_operand (operands[3], V2DImode))
28161 : operands[3] = force_reg (V2DImode, operands[3]);
28162 : }
28163 : #undef DONE
28164 : #undef FAIL
28165 : static const uint8_t expand_encoding[] = {
28166 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
28167 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28168 : 0x25
28169 : };
28170 : return complete_seq (expand_encoding, operands);
28171 : }
28172 :
28173 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28174 : extern rtx_insn *gen_split_3143 (rtx_insn *, rtx *);
28175 : rtx_insn *
28176 : gen_split_3143 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28177 : {
28178 : if (dump_file)
28179 : fprintf (dump_file, "Splitting with gen_split_3143 (sse.md:14313)\n");
28180 : start_sequence ();
28181 : #define FAIL return (end_sequence (), nullptr)
28182 : #define DONE return end_sequence ()
28183 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28184 : {
28185 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28186 : int reg3 = 0xF0;
28187 : int reg2 = 0xCC;
28188 : int reg1 = 0xAA;
28189 : int reg_mask, tmp1;
28190 :
28191 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28192 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28193 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28194 :
28195 : tmp1 = reg1 ^ reg2;
28196 : reg_mask = tmp1 & reg3;
28197 : reg_mask &= 0xFF;
28198 :
28199 : operands[1] = STRIP_UNARY (operands[1]);
28200 : operands[2] = STRIP_UNARY (operands[2]);
28201 : operands[3] = STRIP_UNARY (operands[3]);
28202 : operands[4] = GEN_INT (reg_mask);
28203 : if (!register_operand (operands[2], V32HFmode))
28204 : operands[2] = force_reg (V32HFmode, operands[2]);
28205 : if (!register_operand (operands[3], V32HFmode))
28206 : operands[3] = force_reg (V32HFmode, operands[3]);
28207 : }
28208 : #undef DONE
28209 : #undef FAIL
28210 : static const uint8_t expand_encoding[] = {
28211 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
28212 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28213 : 0x25
28214 : };
28215 : return complete_seq (expand_encoding, operands);
28216 : }
28217 :
28218 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28219 : extern rtx_insn *gen_split_3153 (rtx_insn *, rtx *);
28220 : rtx_insn *
28221 : gen_split_3153 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28222 : {
28223 : if (dump_file)
28224 : fprintf (dump_file, "Splitting with gen_split_3153 (sse.md:14313)\n");
28225 : start_sequence ();
28226 : #define FAIL return (end_sequence (), nullptr)
28227 : #define DONE return end_sequence ()
28228 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28229 : {
28230 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28231 : int reg3 = 0xF0;
28232 : int reg2 = 0xCC;
28233 : int reg1 = 0xAA;
28234 : int reg_mask, tmp1;
28235 :
28236 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28237 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28238 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28239 :
28240 : tmp1 = reg1 ^ reg2;
28241 : reg_mask = tmp1 | reg3;
28242 : reg_mask &= 0xFF;
28243 :
28244 : operands[1] = STRIP_UNARY (operands[1]);
28245 : operands[2] = STRIP_UNARY (operands[2]);
28246 : operands[3] = STRIP_UNARY (operands[3]);
28247 : operands[4] = GEN_INT (reg_mask);
28248 : if (!register_operand (operands[2], V16HFmode))
28249 : operands[2] = force_reg (V16HFmode, operands[2]);
28250 : if (!register_operand (operands[3], V16HFmode))
28251 : operands[3] = force_reg (V16HFmode, operands[3]);
28252 : }
28253 : #undef DONE
28254 : #undef FAIL
28255 : static const uint8_t expand_encoding[] = {
28256 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
28257 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28258 : 0x25
28259 : };
28260 : return complete_seq (expand_encoding, operands);
28261 : }
28262 :
28263 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28264 : extern rtx_insn *gen_split_3163 (rtx_insn *, rtx *);
28265 : rtx_insn *
28266 : gen_split_3163 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28267 : {
28268 : if (dump_file)
28269 : fprintf (dump_file, "Splitting with gen_split_3163 (sse.md:14313)\n");
28270 : start_sequence ();
28271 : #define FAIL return (end_sequence (), nullptr)
28272 : #define DONE return end_sequence ()
28273 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28274 : {
28275 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28276 : int reg3 = 0xF0;
28277 : int reg2 = 0xCC;
28278 : int reg1 = 0xAA;
28279 : int reg_mask, tmp1;
28280 :
28281 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28282 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28283 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28284 :
28285 : tmp1 = reg1 ^ reg2;
28286 : reg_mask = tmp1 ^ reg3;
28287 : reg_mask &= 0xFF;
28288 :
28289 : operands[1] = STRIP_UNARY (operands[1]);
28290 : operands[2] = STRIP_UNARY (operands[2]);
28291 : operands[3] = STRIP_UNARY (operands[3]);
28292 : operands[4] = GEN_INT (reg_mask);
28293 : if (!register_operand (operands[2], V8HFmode))
28294 : operands[2] = force_reg (V8HFmode, operands[2]);
28295 : if (!register_operand (operands[3], V8HFmode))
28296 : operands[3] = force_reg (V8HFmode, operands[3]);
28297 : }
28298 : #undef DONE
28299 : #undef FAIL
28300 : static const uint8_t expand_encoding[] = {
28301 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
28302 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28303 : 0x25
28304 : };
28305 : return complete_seq (expand_encoding, operands);
28306 : }
28307 :
28308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28309 : extern rtx_insn *gen_split_3173 (rtx_insn *, rtx *);
28310 : rtx_insn *
28311 : gen_split_3173 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28312 : {
28313 : if (dump_file)
28314 : fprintf (dump_file, "Splitting with gen_split_3173 (sse.md:14313)\n");
28315 : start_sequence ();
28316 : #define FAIL return (end_sequence (), nullptr)
28317 : #define DONE return end_sequence ()
28318 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28319 : {
28320 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28321 : int reg3 = 0xF0;
28322 : int reg2 = 0xCC;
28323 : int reg1 = 0xAA;
28324 : int reg_mask, tmp1;
28325 :
28326 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28327 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28328 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28329 :
28330 : tmp1 = reg1 & reg2;
28331 : reg_mask = tmp1 & reg3;
28332 : reg_mask &= 0xFF;
28333 :
28334 : operands[1] = STRIP_UNARY (operands[1]);
28335 : operands[2] = STRIP_UNARY (operands[2]);
28336 : operands[3] = STRIP_UNARY (operands[3]);
28337 : operands[4] = GEN_INT (reg_mask);
28338 : if (!register_operand (operands[2], V16BFmode))
28339 : operands[2] = force_reg (V16BFmode, operands[2]);
28340 : if (!register_operand (operands[3], V16BFmode))
28341 : operands[3] = force_reg (V16BFmode, operands[3]);
28342 : }
28343 : #undef DONE
28344 : #undef FAIL
28345 : static const uint8_t expand_encoding[] = {
28346 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
28347 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28348 : 0x25
28349 : };
28350 : return complete_seq (expand_encoding, operands);
28351 : }
28352 :
28353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28354 : extern rtx_insn *gen_split_3183 (rtx_insn *, rtx *);
28355 : rtx_insn *
28356 : gen_split_3183 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28357 : {
28358 : if (dump_file)
28359 : fprintf (dump_file, "Splitting with gen_split_3183 (sse.md:14313)\n");
28360 : start_sequence ();
28361 : #define FAIL return (end_sequence (), nullptr)
28362 : #define DONE return end_sequence ()
28363 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28364 : {
28365 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28366 : int reg3 = 0xF0;
28367 : int reg2 = 0xCC;
28368 : int reg1 = 0xAA;
28369 : int reg_mask, tmp1;
28370 :
28371 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28372 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28373 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28374 :
28375 : tmp1 = reg1 & reg2;
28376 : reg_mask = tmp1 | reg3;
28377 : reg_mask &= 0xFF;
28378 :
28379 : operands[1] = STRIP_UNARY (operands[1]);
28380 : operands[2] = STRIP_UNARY (operands[2]);
28381 : operands[3] = STRIP_UNARY (operands[3]);
28382 : operands[4] = GEN_INT (reg_mask);
28383 : if (!register_operand (operands[2], V8BFmode))
28384 : operands[2] = force_reg (V8BFmode, operands[2]);
28385 : if (!register_operand (operands[3], V8BFmode))
28386 : operands[3] = force_reg (V8BFmode, operands[3]);
28387 : }
28388 : #undef DONE
28389 : #undef FAIL
28390 : static const uint8_t expand_encoding[] = {
28391 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
28392 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28393 : 0x25
28394 : };
28395 : return complete_seq (expand_encoding, operands);
28396 : }
28397 :
28398 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28399 : extern rtx_insn *gen_split_3193 (rtx_insn *, rtx *);
28400 : rtx_insn *
28401 : gen_split_3193 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28402 : {
28403 : if (dump_file)
28404 : fprintf (dump_file, "Splitting with gen_split_3193 (sse.md:14313)\n");
28405 : start_sequence ();
28406 : #define FAIL return (end_sequence (), nullptr)
28407 : #define DONE return end_sequence ()
28408 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28409 : {
28410 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28411 : int reg3 = 0xF0;
28412 : int reg2 = 0xCC;
28413 : int reg1 = 0xAA;
28414 : int reg_mask, tmp1;
28415 :
28416 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28417 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28418 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28419 :
28420 : tmp1 = reg1 & reg2;
28421 : reg_mask = tmp1 ^ reg3;
28422 : reg_mask &= 0xFF;
28423 :
28424 : operands[1] = STRIP_UNARY (operands[1]);
28425 : operands[2] = STRIP_UNARY (operands[2]);
28426 : operands[3] = STRIP_UNARY (operands[3]);
28427 : operands[4] = GEN_INT (reg_mask);
28428 : if (!register_operand (operands[2], V16SFmode))
28429 : operands[2] = force_reg (V16SFmode, operands[2]);
28430 : if (!register_operand (operands[3], V16SFmode))
28431 : operands[3] = force_reg (V16SFmode, operands[3]);
28432 : }
28433 : #undef DONE
28434 : #undef FAIL
28435 : static const uint8_t expand_encoding[] = {
28436 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
28437 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28438 : 0x25
28439 : };
28440 : return complete_seq (expand_encoding, operands);
28441 : }
28442 :
28443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28444 : extern rtx_insn *gen_split_3203 (rtx_insn *, rtx *);
28445 : rtx_insn *
28446 : gen_split_3203 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28447 : {
28448 : if (dump_file)
28449 : fprintf (dump_file, "Splitting with gen_split_3203 (sse.md:14313)\n");
28450 : start_sequence ();
28451 : #define FAIL return (end_sequence (), nullptr)
28452 : #define DONE return end_sequence ()
28453 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28454 : {
28455 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28456 : int reg3 = 0xF0;
28457 : int reg2 = 0xCC;
28458 : int reg1 = 0xAA;
28459 : int reg_mask, tmp1;
28460 :
28461 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28462 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28463 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28464 :
28465 : tmp1 = reg1 | reg2;
28466 : reg_mask = tmp1 & reg3;
28467 : reg_mask &= 0xFF;
28468 :
28469 : operands[1] = STRIP_UNARY (operands[1]);
28470 : operands[2] = STRIP_UNARY (operands[2]);
28471 : operands[3] = STRIP_UNARY (operands[3]);
28472 : operands[4] = GEN_INT (reg_mask);
28473 : if (!register_operand (operands[2], V8SFmode))
28474 : operands[2] = force_reg (V8SFmode, operands[2]);
28475 : if (!register_operand (operands[3], V8SFmode))
28476 : operands[3] = force_reg (V8SFmode, operands[3]);
28477 : }
28478 : #undef DONE
28479 : #undef FAIL
28480 : static const uint8_t expand_encoding[] = {
28481 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
28482 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28483 : 0x25
28484 : };
28485 : return complete_seq (expand_encoding, operands);
28486 : }
28487 :
28488 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28489 : extern rtx_insn *gen_split_3213 (rtx_insn *, rtx *);
28490 : rtx_insn *
28491 : gen_split_3213 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28492 : {
28493 : if (dump_file)
28494 : fprintf (dump_file, "Splitting with gen_split_3213 (sse.md:14313)\n");
28495 : start_sequence ();
28496 : #define FAIL return (end_sequence (), nullptr)
28497 : #define DONE return end_sequence ()
28498 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28499 : {
28500 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28501 : int reg3 = 0xF0;
28502 : int reg2 = 0xCC;
28503 : int reg1 = 0xAA;
28504 : int reg_mask, tmp1;
28505 :
28506 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28507 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28508 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28509 :
28510 : tmp1 = reg1 | reg2;
28511 : reg_mask = tmp1 | reg3;
28512 : reg_mask &= 0xFF;
28513 :
28514 : operands[1] = STRIP_UNARY (operands[1]);
28515 : operands[2] = STRIP_UNARY (operands[2]);
28516 : operands[3] = STRIP_UNARY (operands[3]);
28517 : operands[4] = GEN_INT (reg_mask);
28518 : if (!register_operand (operands[2], V4SFmode))
28519 : operands[2] = force_reg (V4SFmode, operands[2]);
28520 : if (!register_operand (operands[3], V4SFmode))
28521 : operands[3] = force_reg (V4SFmode, operands[3]);
28522 : }
28523 : #undef DONE
28524 : #undef FAIL
28525 : static const uint8_t expand_encoding[] = {
28526 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
28527 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28528 : 0x25
28529 : };
28530 : return complete_seq (expand_encoding, operands);
28531 : }
28532 :
28533 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28534 : extern rtx_insn *gen_split_3223 (rtx_insn *, rtx *);
28535 : rtx_insn *
28536 : gen_split_3223 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28537 : {
28538 : if (dump_file)
28539 : fprintf (dump_file, "Splitting with gen_split_3223 (sse.md:14313)\n");
28540 : start_sequence ();
28541 : #define FAIL return (end_sequence (), nullptr)
28542 : #define DONE return end_sequence ()
28543 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28544 : {
28545 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28546 : int reg3 = 0xF0;
28547 : int reg2 = 0xCC;
28548 : int reg1 = 0xAA;
28549 : int reg_mask, tmp1;
28550 :
28551 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28552 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28553 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28554 :
28555 : tmp1 = reg1 | reg2;
28556 : reg_mask = tmp1 ^ reg3;
28557 : reg_mask &= 0xFF;
28558 :
28559 : operands[1] = STRIP_UNARY (operands[1]);
28560 : operands[2] = STRIP_UNARY (operands[2]);
28561 : operands[3] = STRIP_UNARY (operands[3]);
28562 : operands[4] = GEN_INT (reg_mask);
28563 : if (!register_operand (operands[2], V8DFmode))
28564 : operands[2] = force_reg (V8DFmode, operands[2]);
28565 : if (!register_operand (operands[3], V8DFmode))
28566 : operands[3] = force_reg (V8DFmode, operands[3]);
28567 : }
28568 : #undef DONE
28569 : #undef FAIL
28570 : static const uint8_t expand_encoding[] = {
28571 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
28572 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28573 : 0x25
28574 : };
28575 : return complete_seq (expand_encoding, operands);
28576 : }
28577 :
28578 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28579 : extern rtx_insn *gen_split_3233 (rtx_insn *, rtx *);
28580 : rtx_insn *
28581 : gen_split_3233 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28582 : {
28583 : if (dump_file)
28584 : fprintf (dump_file, "Splitting with gen_split_3233 (sse.md:14313)\n");
28585 : start_sequence ();
28586 : #define FAIL return (end_sequence (), nullptr)
28587 : #define DONE return end_sequence ()
28588 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28589 : {
28590 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28591 : int reg3 = 0xF0;
28592 : int reg2 = 0xCC;
28593 : int reg1 = 0xAA;
28594 : int reg_mask, tmp1;
28595 :
28596 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28597 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28598 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28599 :
28600 : tmp1 = reg1 ^ reg2;
28601 : reg_mask = tmp1 & reg3;
28602 : reg_mask &= 0xFF;
28603 :
28604 : operands[1] = STRIP_UNARY (operands[1]);
28605 : operands[2] = STRIP_UNARY (operands[2]);
28606 : operands[3] = STRIP_UNARY (operands[3]);
28607 : operands[4] = GEN_INT (reg_mask);
28608 : if (!register_operand (operands[2], V4DFmode))
28609 : operands[2] = force_reg (V4DFmode, operands[2]);
28610 : if (!register_operand (operands[3], V4DFmode))
28611 : operands[3] = force_reg (V4DFmode, operands[3]);
28612 : }
28613 : #undef DONE
28614 : #undef FAIL
28615 : static const uint8_t expand_encoding[] = {
28616 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
28617 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28618 : 0x25
28619 : };
28620 : return complete_seq (expand_encoding, operands);
28621 : }
28622 :
28623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28624 : extern rtx_insn *gen_split_3243 (rtx_insn *, rtx *);
28625 : rtx_insn *
28626 : gen_split_3243 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28627 : {
28628 : if (dump_file)
28629 : fprintf (dump_file, "Splitting with gen_split_3243 (sse.md:14313)\n");
28630 : start_sequence ();
28631 : #define FAIL return (end_sequence (), nullptr)
28632 : #define DONE return end_sequence ()
28633 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28634 : {
28635 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28636 : int reg3 = 0xF0;
28637 : int reg2 = 0xCC;
28638 : int reg1 = 0xAA;
28639 : int reg_mask, tmp1;
28640 :
28641 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28642 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28643 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28644 :
28645 : tmp1 = reg1 ^ reg2;
28646 : reg_mask = tmp1 | reg3;
28647 : reg_mask &= 0xFF;
28648 :
28649 : operands[1] = STRIP_UNARY (operands[1]);
28650 : operands[2] = STRIP_UNARY (operands[2]);
28651 : operands[3] = STRIP_UNARY (operands[3]);
28652 : operands[4] = GEN_INT (reg_mask);
28653 : if (!register_operand (operands[2], V2DFmode))
28654 : operands[2] = force_reg (V2DFmode, operands[2]);
28655 : if (!register_operand (operands[3], V2DFmode))
28656 : operands[3] = force_reg (V2DFmode, operands[3]);
28657 : }
28658 : #undef DONE
28659 : #undef FAIL
28660 : static const uint8_t expand_encoding[] = {
28661 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
28662 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28663 : 0x25
28664 : };
28665 : return complete_seq (expand_encoding, operands);
28666 : }
28667 :
28668 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14497 */
28669 : rtx
28670 : gen_avx512vl_fixupimmv4sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
28671 : {
28672 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
28673 : start_sequence ();
28674 : {
28675 : #define FAIL return (end_sequence (), nullptr)
28676 : #define DONE return end_sequence ()
28677 : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28678 : {
28679 : emit_insn (gen_avx512vl_fixupimmv4sf_maskz_1_round (
28680 : operands[0], operands[1], operands[2], operands[3],
28681 : operands[4], CONST0_RTX (V4SFmode), operands[5]
28682 : , operands[6]));
28683 : DONE;
28684 : }
28685 : #undef DONE
28686 : #undef FAIL
28687 : }
28688 : static const uint8_t expand_encoding[] = {
28689 : 0x07, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28690 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x1a, 0x00, 0x01,
28691 : 0x01, 0x06, 0x81, 0x33
28692 : };
28693 : return complete_seq (expand_encoding, operands);
28694 : }
28695 :
28696 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14687 */
28697 : rtx
28698 : gen_avx512f_shufpd512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28699 : {
28700 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28701 : start_sequence ();
28702 : {
28703 : #define FAIL return (end_sequence (), nullptr)
28704 : #define DONE return end_sequence ()
28705 : #line 14695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28706 : {
28707 : int mask = INTVAL (operands[3]);
28708 : emit_insn (gen_avx512f_shufpd512_1_mask (operands[0], operands[1], operands[2],
28709 : GEN_INT (mask & 1),
28710 : GEN_INT (mask & 2 ? 9 : 8),
28711 : GEN_INT (mask & 4 ? 3 : 2),
28712 : GEN_INT (mask & 8 ? 11 : 10),
28713 : GEN_INT (mask & 16 ? 5 : 4),
28714 : GEN_INT (mask & 32 ? 13 : 12),
28715 : GEN_INT (mask & 64 ? 7 : 6),
28716 : GEN_INT (mask & 128 ? 15 : 14),
28717 : operands[4], operands[5]));
28718 : DONE;
28719 : }
28720 : #undef DONE
28721 : #undef FAIL
28722 : }
28723 : static const uint8_t expand_encoding[] = {
28724 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28725 : 0x03, 0x01, 0x04, 0x01, 0x05
28726 : };
28727 : return complete_seq (expand_encoding, operands);
28728 : }
28729 :
28730 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15206 */
28731 : extern rtx_insn *gen_split_3250 (rtx_insn *, rtx *);
28732 : rtx_insn *
28733 : gen_split_3250 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28734 : {
28735 : if (dump_file)
28736 : fprintf (dump_file, "Splitting with gen_split_3250 (sse.md:15206)\n");
28737 : start_sequence ();
28738 : #define FAIL return (end_sequence (), nullptr)
28739 : #define DONE return end_sequence ()
28740 : #line 15213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28741 : operands[0] = adjust_address (operands[0], DFmode, 0);
28742 : #undef DONE
28743 : #undef FAIL
28744 : static const uint8_t expand_encoding[] = {
28745 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
28746 : };
28747 : return complete_seq (expand_encoding, operands);
28748 : }
28749 :
28750 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15517 */
28751 : rtx
28752 : gen_avx512f_us_truncatev16siv16qi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28753 : {
28754 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28755 : static const uint8_t expand_encoding[] = {
28756 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x81, 0x18,
28757 : 0x4f, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28758 : };
28759 : return expand_rtx (expand_encoding, operands);
28760 : }
28761 :
28762 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15517 */
28763 : rtx
28764 : gen_avx512f_ss_truncatev8div8hi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28765 : {
28766 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28767 : static const uint8_t expand_encoding[] = {
28768 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x17,
28769 : 0x50, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28770 : };
28771 : return expand_rtx (expand_encoding, operands);
28772 : }
28773 :
28774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15605 */
28775 : rtx
28776 : gen_truncv16hiv16qi2 (const rtx operand0, const rtx operand1)
28777 : {
28778 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28779 : start_sequence ();
28780 : {
28781 : #define FAIL return (end_sequence (), nullptr)
28782 : #define DONE return end_sequence ()
28783 : #line 15610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28784 : {
28785 : if (!TARGET_AVX512VL
28786 : || (V16QImode == V16QImode && !TARGET_AVX512BW))
28787 : {
28788 : ix86_expand_trunc_with_avx2_noavx512f (operands[0],
28789 : operands[1],
28790 : V32QImode);
28791 : DONE;
28792 : }
28793 : }
28794 : #undef DONE
28795 : #undef FAIL
28796 : }
28797 : static const uint8_t expand_encoding[] = {
28798 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x4f, 0x01, 0x01
28799 : };
28800 : return complete_seq (expand_encoding, operands);
28801 : }
28802 :
28803 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15710 */
28804 : rtx
28805 : gen_truncv2div2qi2 (const rtx operand0, const rtx operand1)
28806 : {
28807 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28808 : start_sequence ();
28809 : {
28810 : #define FAIL return (end_sequence (), nullptr)
28811 : #define DONE return end_sequence ()
28812 : #line 15715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28813 : {
28814 : if (TARGET_AVX512VL
28815 : && (V2DImode != V8HImode || TARGET_AVX512BW))
28816 : {
28817 : rtx op0 = gen_reg_rtx (V16QImode);
28818 :
28819 : emit_insn (gen_avx512vl_truncatev2div2qi2
28820 : (op0, operands[1], CONST0_RTX (V14QImode)));
28821 :
28822 : emit_move_insn (operands[0],
28823 : lowpart_subreg (V2QImode, op0, V16QImode));
28824 : }
28825 : else
28826 : {
28827 : ix86_expand_trunc_with_avx2_noavx512f (operands[0],
28828 : operands[1],
28829 : V16QImode);
28830 : }
28831 : DONE;
28832 : }
28833 : #undef DONE
28834 : #undef FAIL
28835 : }
28836 : static const uint8_t expand_encoding[] = {
28837 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x44, 0x01, 0x01
28838 : };
28839 : return complete_seq (expand_encoding, operands);
28840 : }
28841 :
28842 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15877 */
28843 : extern rtx_insn *gen_split_3263 (rtx_insn *, rtx *);
28844 : rtx_insn *
28845 : gen_split_3263 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28846 : {
28847 : if (dump_file)
28848 : fprintf (dump_file, "Splitting with gen_split_3263 (sse.md:15877)\n");
28849 : start_sequence ();
28850 : #define FAIL return (end_sequence (), nullptr)
28851 : #define DONE return end_sequence ()
28852 : #line 15887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28853 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28854 : #undef DONE
28855 : #undef FAIL
28856 : static const uint8_t expand_encoding[] = {
28857 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x17, 0x45, 0x01,
28858 : 0x01
28859 : };
28860 : return complete_seq (expand_encoding, operands);
28861 : }
28862 :
28863 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15947 */
28864 : rtx
28865 : gen_avx512vl_us_truncatev4siv4qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28866 : {
28867 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28868 : start_sequence ();
28869 : {
28870 : #define FAIL return (end_sequence (), nullptr)
28871 : #define DONE return end_sequence ()
28872 : #line 15953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28873 : {
28874 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28875 : emit_insn (gen_avx512vl_us_truncatev4siv4qi2_mask_store_1 (operands[0],
28876 : operands[1],
28877 : operands[2]));
28878 : DONE;
28879 : }
28880 : #undef DONE
28881 : #undef FAIL
28882 : }
28883 : static const uint8_t expand_encoding[] = {
28884 : 0x03, 0x01, 0x00, 0x81, 0x18, 0x45, 0x01, 0x01,
28885 : 0x01, 0x02
28886 : };
28887 : return complete_seq (expand_encoding, operands);
28888 : }
28889 :
28890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16045 */
28891 : rtx
28892 : gen_avx512vl_ss_truncatev8siv8qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28893 : {
28894 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28895 : start_sequence ();
28896 : {
28897 : #define FAIL return (end_sequence (), nullptr)
28898 : #define DONE return end_sequence ()
28899 : #line 16051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28900 : {
28901 : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
28902 : emit_insn (gen_avx512vl_ss_truncatev8siv8qi2_mask_store_1 (operands[0],
28903 : operands[1],
28904 : operands[2]));
28905 : DONE;
28906 : }
28907 : #undef DONE
28908 : #undef FAIL
28909 : }
28910 : static const uint8_t expand_encoding[] = {
28911 : 0x03, 0x01, 0x00, 0x81, 0x17, 0x48, 0x01, 0x01,
28912 : 0x01, 0x02
28913 : };
28914 : return complete_seq (expand_encoding, operands);
28915 : }
28916 :
28917 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16137 */
28918 : extern rtx_insn *gen_split_3279 (rtx_insn *, rtx *);
28919 : rtx_insn *
28920 : gen_split_3279 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28921 : {
28922 : if (dump_file)
28923 : fprintf (dump_file, "Splitting with gen_split_3279 (sse.md:16137)\n");
28924 : start_sequence ();
28925 : #define FAIL return (end_sequence (), nullptr)
28926 : #define DONE return end_sequence ()
28927 : #line 16147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28928 : operands[0] = adjust_address_nv (operands[0], V4HImode, 0);
28929 : #undef DONE
28930 : #undef FAIL
28931 : static const uint8_t expand_encoding[] = {
28932 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x17, 0x49, 0x01,
28933 : 0x01
28934 : };
28935 : return complete_seq (expand_encoding, operands);
28936 : }
28937 :
28938 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16228 */
28939 : extern rtx_insn *gen_split_3284 (rtx_insn *, rtx *);
28940 : rtx_insn *
28941 : gen_split_3284 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28942 : {
28943 : if (dump_file)
28944 : fprintf (dump_file, "Splitting with gen_split_3284 (sse.md:16228)\n");
28945 : start_sequence ();
28946 : #define FAIL return (end_sequence (), nullptr)
28947 : #define DONE return end_sequence ()
28948 : #line 16238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28949 : operands[0] = adjust_address_nv (operands[0], V2HImode, 0);
28950 : #undef DONE
28951 : #undef FAIL
28952 : static const uint8_t expand_encoding[] = {
28953 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x46, 0x01,
28954 : 0x01
28955 : };
28956 : return complete_seq (expand_encoding, operands);
28957 : }
28958 :
28959 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16378 */
28960 : extern rtx_insn *gen_split_3288 (rtx_insn *, rtx *);
28961 : rtx_insn *
28962 : gen_split_3288 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28963 : {
28964 : if (dump_file)
28965 : fprintf (dump_file, "Splitting with gen_split_3288 (sse.md:16378)\n");
28966 : start_sequence ();
28967 : #define FAIL return (end_sequence (), nullptr)
28968 : #define DONE return end_sequence ()
28969 : #line 16388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28970 : operands[0] = adjust_address_nv (operands[0], V2SImode, 0);
28971 : #undef DONE
28972 : #undef FAIL
28973 : static const uint8_t expand_encoding[] = {
28974 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x4a, 0x01,
28975 : 0x01
28976 : };
28977 : return complete_seq (expand_encoding, operands);
28978 : }
28979 :
28980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16561 */
28981 : rtx
28982 : gen_avx512f_truncatev8div16qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28983 : {
28984 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28985 : start_sequence ();
28986 : {
28987 : #define FAIL return (end_sequence (), nullptr)
28988 : #define DONE return end_sequence ()
28989 : #line 16567 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28990 : {
28991 : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
28992 : emit_insn (gen_avx512f_truncatev8div16qi2_mask_store_1 (operands[0],
28993 : operands[1],
28994 : operands[2]));
28995 : DONE;
28996 : }
28997 : #undef DONE
28998 : #undef FAIL
28999 : }
29000 : static const uint8_t expand_encoding[] = {
29001 : 0x03, 0x01, 0x00, 0x70, 0x48, 0x01, 0x01, 0x01,
29002 : 0x02
29003 : };
29004 : return complete_seq (expand_encoding, operands);
29005 : }
29006 :
29007 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16581 */
29008 : rtx
29009 : gen_negv4di2 (const rtx operand0, const rtx operand1)
29010 : {
29011 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
29012 : start_sequence ();
29013 : {
29014 : #define FAIL return (end_sequence (), nullptr)
29015 : #define DONE return end_sequence ()
29016 : #line 16587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29017 : operands[2] = force_reg (V4DImode, CONST0_RTX (V4DImode));
29018 : #undef DONE
29019 : #undef FAIL
29020 : }
29021 : static const uint8_t expand_encoding[] = {
29022 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x57, 0x01, 0x02,
29023 : 0x01, 0x01
29024 : };
29025 : return complete_seq (expand_encoding, operands);
29026 : }
29027 :
29028 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29029 : rtx
29030 : gen_addv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29031 : {
29032 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29033 : start_sequence ();
29034 : {
29035 : #define FAIL return (end_sequence (), nullptr)
29036 : #define DONE return end_sequence ()
29037 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29038 : ix86_fixup_binary_operands_no_copy (PLUS, V16HImode, operands);
29039 : #undef DONE
29040 : #undef FAIL
29041 : }
29042 : static const uint8_t expand_encoding[] = {
29043 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x55, 0x01, 0x01,
29044 : 0x01, 0x02
29045 : };
29046 : return complete_seq (expand_encoding, operands);
29047 : }
29048 :
29049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29050 : rtx
29051 : gen_subv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29052 : {
29053 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29054 : start_sequence ();
29055 : {
29056 : #define FAIL return (end_sequence (), nullptr)
29057 : #define DONE return end_sequence ()
29058 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29059 : ix86_fixup_binary_operands_no_copy (MINUS, V4SImode, operands);
29060 : #undef DONE
29061 : #undef FAIL
29062 : }
29063 : static const uint8_t expand_encoding[] = {
29064 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x51, 0x01, 0x01,
29065 : 0x01, 0x02
29066 : };
29067 : return complete_seq (expand_encoding, operands);
29068 : }
29069 :
29070 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29071 : rtx
29072 : gen_cond_addv16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29073 : {
29074 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29075 : start_sequence ();
29076 : {
29077 : #define FAIL _Pragma ("GCC error \"cond_addv16qi cannot FAIL\"") (void)0
29078 : #define DONE return end_sequence ()
29079 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29080 : {
29081 : emit_insn (gen_addv16qi3_mask (operands[0],
29082 : operands[2],
29083 : operands[3],
29084 : operands[4],
29085 : operands[1]));
29086 : DONE;
29087 : }
29088 : #undef DONE
29089 : #undef FAIL
29090 : }
29091 : static const uint8_t expand_encoding[] = {
29092 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x3b,
29093 : 0x4f, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29094 : 0x01
29095 : };
29096 : return complete_seq (expand_encoding, operands);
29097 : }
29098 :
29099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29100 : rtx
29101 : gen_cond_addv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29102 : {
29103 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29104 : start_sequence ();
29105 : {
29106 : #define FAIL _Pragma ("GCC error \"cond_addv8si cannot FAIL\"") (void)0
29107 : #define DONE return end_sequence ()
29108 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29109 : {
29110 : emit_insn (gen_addv8si3_mask (operands[0],
29111 : operands[2],
29112 : operands[3],
29113 : operands[4],
29114 : operands[1]));
29115 : DONE;
29116 : }
29117 : #undef DONE
29118 : #undef FAIL
29119 : }
29120 : static const uint8_t expand_encoding[] = {
29121 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x3b,
29122 : 0x56, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29123 : 0x01
29124 : };
29125 : return complete_seq (expand_encoding, operands);
29126 : }
29127 :
29128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29129 : rtx
29130 : gen_cond_subv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29131 : {
29132 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29133 : start_sequence ();
29134 : {
29135 : #define FAIL _Pragma ("GCC error \"cond_subv2di cannot FAIL\"") (void)0
29136 : #define DONE return end_sequence ()
29137 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29138 : {
29139 : emit_insn (gen_subv2di3_mask (operands[0],
29140 : operands[2],
29141 : operands[3],
29142 : operands[4],
29143 : operands[1]));
29144 : DONE;
29145 : }
29146 : #undef DONE
29147 : #undef FAIL
29148 : }
29149 : static const uint8_t expand_encoding[] = {
29150 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x3c,
29151 : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29152 : 0x01
29153 : };
29154 : return complete_seq (expand_encoding, operands);
29155 : }
29156 :
29157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16626 */
29158 : rtx
29159 : gen_addv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29160 : {
29161 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29162 : start_sequence ();
29163 : {
29164 : #define FAIL return (end_sequence (), nullptr)
29165 : #define DONE return end_sequence ()
29166 : #line 16635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29167 : ix86_fixup_binary_operands_no_copy (PLUS, V64QImode, operands);
29168 : #undef DONE
29169 : #undef FAIL
29170 : }
29171 : static const uint8_t expand_encoding[] = {
29172 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x3b,
29173 : 0x59, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29174 : 0x04
29175 : };
29176 : return complete_seq (expand_encoding, operands);
29177 : }
29178 :
29179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16626 */
29180 : rtx
29181 : gen_addv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29182 : {
29183 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29184 : start_sequence ();
29185 : {
29186 : #define FAIL return (end_sequence (), nullptr)
29187 : #define DONE return end_sequence ()
29188 : #line 16635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29189 : ix86_fixup_binary_operands_no_copy (PLUS, V8HImode, operands);
29190 : #undef DONE
29191 : #undef FAIL
29192 : }
29193 : static const uint8_t expand_encoding[] = {
29194 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x3b,
29195 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29196 : 0x04
29197 : };
29198 : return complete_seq (expand_encoding, operands);
29199 : }
29200 :
29201 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29202 : rtx
29203 : gen_ssaddv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29204 : {
29205 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29206 : start_sequence ();
29207 : {
29208 : #define FAIL return (end_sequence (), nullptr)
29209 : #define DONE return end_sequence ()
29210 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29211 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V32QImode, operands);
29212 : #undef DONE
29213 : #undef FAIL
29214 : }
29215 : static const uint8_t expand_encoding[] = {
29216 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x54, 0x01,
29217 : 0x01, 0x01, 0x02
29218 : };
29219 : return complete_seq (expand_encoding, operands);
29220 : }
29221 :
29222 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29223 : rtx
29224 : gen_ussubv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29225 : {
29226 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29227 : start_sequence ();
29228 : {
29229 : #define FAIL return (end_sequence (), nullptr)
29230 : #define DONE return end_sequence ()
29231 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29232 : ix86_fixup_binary_operands_no_copy (US_MINUS, V32QImode, operands);
29233 : #undef DONE
29234 : #undef FAIL
29235 : }
29236 : static const uint8_t expand_encoding[] = {
29237 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81,
29238 : 0x16, 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29239 : 0x01, 0x04
29240 : };
29241 : return complete_seq (expand_encoding, operands);
29242 : }
29243 :
29244 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29245 : rtx
29246 : gen_usaddv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29247 : {
29248 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29249 : start_sequence ();
29250 : {
29251 : #define FAIL return (end_sequence (), nullptr)
29252 : #define DONE return end_sequence ()
29253 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29254 : ix86_fixup_binary_operands_no_copy (US_PLUS, V32HImode, operands);
29255 : #undef DONE
29256 : #undef FAIL
29257 : }
29258 : static const uint8_t expand_encoding[] = {
29259 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x81,
29260 : 0x0f, 0x5a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29261 : 0x01, 0x04
29262 : };
29263 : return complete_seq (expand_encoding, operands);
29264 : }
29265 :
29266 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29267 : rtx
29268 : gen_ussubv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29269 : {
29270 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29271 : start_sequence ();
29272 : {
29273 : #define FAIL return (end_sequence (), nullptr)
29274 : #define DONE return end_sequence ()
29275 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29276 : ix86_fixup_binary_operands_no_copy (US_MINUS, V16HImode, operands);
29277 : #undef DONE
29278 : #undef FAIL
29279 : }
29280 : static const uint8_t expand_encoding[] = {
29281 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x16, 0x55, 0x01,
29282 : 0x01, 0x01, 0x02
29283 : };
29284 : return complete_seq (expand_encoding, operands);
29285 : }
29286 :
29287 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29288 : rtx
29289 : gen_ussubv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29290 : {
29291 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29292 : start_sequence ();
29293 : {
29294 : #define FAIL return (end_sequence (), nullptr)
29295 : #define DONE return end_sequence ()
29296 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29297 : ix86_fixup_binary_operands_no_copy (US_MINUS, V8HImode, operands);
29298 : #undef DONE
29299 : #undef FAIL
29300 : }
29301 : static const uint8_t expand_encoding[] = {
29302 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81,
29303 : 0x16, 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29304 : 0x01, 0x04
29305 : };
29306 : return complete_seq (expand_encoding, operands);
29307 : }
29308 :
29309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16731 */
29310 : rtx
29311 : gen_cond_mulv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29312 : {
29313 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29314 : start_sequence ();
29315 : {
29316 : #define FAIL _Pragma ("GCC error \"cond_mulv32hi cannot FAIL\"") (void)0
29317 : #define DONE return end_sequence ()
29318 : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29319 : {
29320 : emit_insn (gen_mulv32hi3_mask (operands[0],
29321 : operands[2],
29322 : operands[3],
29323 : operands[4],
29324 : operands[1]));
29325 : DONE;
29326 : }
29327 : #undef DONE
29328 : #undef FAIL
29329 : }
29330 : static const uint8_t expand_encoding[] = {
29331 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x3e,
29332 : 0x5a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29333 : 0x01
29334 : };
29335 : return complete_seq (expand_encoding, operands);
29336 : }
29337 :
29338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16771 */
29339 : rtx
29340 : gen_umulv16hi3_highpart (const rtx operand0, const rtx operand1, const rtx operand2)
29341 : {
29342 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29343 : start_sequence ();
29344 : {
29345 : #define FAIL return (end_sequence (), nullptr)
29346 : #define DONE return end_sequence ()
29347 : #line 16783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29348 : ix86_fixup_binary_operands_no_copy (MULT, V16HImode, operands);
29349 : #undef DONE
29350 : #undef FAIL
29351 : }
29352 : static const uint8_t expand_encoding[] = {
29353 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x55, 0x50, 0x5b,
29354 : 0x3e, 0x5b, 0x6f, 0x5b, 0x01, 0x01, 0x6f, 0x5b,
29355 : 0x01, 0x02, 0x27, 0x10
29356 : };
29357 : return complete_seq (expand_encoding, operands);
29358 : }
29359 :
29360 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16850 */
29361 : rtx
29362 : gen_vec_widen_umult_even_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29363 : {
29364 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29365 : start_sequence ();
29366 : {
29367 : #define FAIL return (end_sequence (), nullptr)
29368 : #define DONE return end_sequence ()
29369 : #line 16864 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29370 : ix86_fixup_binary_operands_no_copy (MULT, V8SImode, operands);
29371 : #undef DONE
29372 : #undef FAIL
29373 : }
29374 : static const uint8_t expand_encoding[] = {
29375 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x3e,
29376 : 0x57, 0x6f, 0x57, 0x81, 0x0a, 0x51, 0x01, 0x01,
29377 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27,
29378 : 0x04, 0x27, 0x06, 0x6f, 0x57, 0x81, 0x0a, 0x51,
29379 : 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
29380 : 0x02, 0x27, 0x04, 0x27, 0x06, 0x01, 0x03, 0x01,
29381 : 0x04
29382 : };
29383 : return complete_seq (expand_encoding, operands);
29384 : }
29385 :
29386 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17125 */
29387 : rtx
29388 : gen_sse2_pmaddwd (const rtx operand0, const rtx operand1, const rtx operand2)
29389 : {
29390 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29391 : start_sequence ();
29392 : {
29393 : #define FAIL return (end_sequence (), nullptr)
29394 : #define DONE return end_sequence ()
29395 : #line 17149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29396 : ix86_fixup_binary_operands_no_copy (MULT, V8HImode, operands);
29397 : #undef DONE
29398 : #undef FAIL
29399 : }
29400 : static const uint8_t expand_encoding[] = {
29401 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x51, 0x3e, 0x51,
29402 : 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17,
29403 : 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
29404 : 0x27, 0x06, 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01,
29405 : 0x02, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x02,
29406 : 0x27, 0x04, 0x27, 0x06, 0x3e, 0x51, 0x6e, 0x51,
29407 : 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17, 0x00, 0x04,
29408 : 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07,
29409 : 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01, 0x02, 0x17,
29410 : 0x00, 0x04, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05,
29411 : 0x27, 0x07
29412 : };
29413 : return complete_seq (expand_encoding, operands);
29414 : }
29415 :
29416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17231 */
29417 : rtx
29418 : gen_cond_mulv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29419 : {
29420 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29421 : start_sequence ();
29422 : {
29423 : #define FAIL _Pragma ("GCC error \"cond_mulv4si cannot FAIL\"") (void)0
29424 : #define DONE return end_sequence ()
29425 : #line 17240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29426 : {
29427 : emit_insn (gen_mulv4si3_mask (operands[0],
29428 : operands[2],
29429 : operands[3],
29430 : operands[4],
29431 : operands[1]));
29432 : DONE;
29433 : }
29434 : #undef DONE
29435 : #undef FAIL
29436 : }
29437 : static const uint8_t expand_encoding[] = {
29438 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x3e,
29439 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29440 : 0x01
29441 : };
29442 : return complete_seq (expand_encoding, operands);
29443 : }
29444 :
29445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17301 */
29446 : rtx
29447 : gen_vec_widen_smult_hi_v32qi (const rtx operand0, const rtx operand1, const rtx operand2)
29448 : {
29449 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29450 : start_sequence ();
29451 : {
29452 : #define FAIL return (end_sequence (), nullptr)
29453 : #define DONE return end_sequence ()
29454 : #line 17307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29455 : {
29456 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29457 : false, true);
29458 : DONE;
29459 : }
29460 : #undef DONE
29461 : #undef FAIL
29462 : }
29463 : static const uint8_t expand_encoding[] = {
29464 : 0x03, 0x01, 0x00, 0x6e, 0x55, 0x01, 0x01, 0x01,
29465 : 0x02
29466 : };
29467 : return complete_seq (expand_encoding, operands);
29468 : }
29469 :
29470 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17301 */
29471 : rtx
29472 : gen_vec_widen_smult_hi_v4si (const rtx operand0, const rtx operand1, const rtx operand2)
29473 : {
29474 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29475 : start_sequence ();
29476 : {
29477 : #define FAIL return (end_sequence (), nullptr)
29478 : #define DONE return end_sequence ()
29479 : #line 17307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29480 : {
29481 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29482 : false, true);
29483 : DONE;
29484 : }
29485 : #undef DONE
29486 : #undef FAIL
29487 : }
29488 : static const uint8_t expand_encoding[] = {
29489 : 0x03, 0x01, 0x00, 0x6e, 0x52, 0x01, 0x01, 0x01,
29490 : 0x02
29491 : };
29492 : return complete_seq (expand_encoding, operands);
29493 : }
29494 :
29495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17313 */
29496 : rtx
29497 : gen_vec_widen_smult_lo_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
29498 : {
29499 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29500 : start_sequence ();
29501 : {
29502 : #define FAIL return (end_sequence (), nullptr)
29503 : #define DONE return end_sequence ()
29504 : #line 17319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29505 : {
29506 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29507 : false, false);
29508 : DONE;
29509 : }
29510 : #undef DONE
29511 : #undef FAIL
29512 : }
29513 : static const uint8_t expand_encoding[] = {
29514 : 0x03, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01, 0x01,
29515 : 0x02
29516 : };
29517 : return complete_seq (expand_encoding, operands);
29518 : }
29519 :
29520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17338 */
29521 : rtx
29522 : gen_vec_widen_umult_odd_v4si (const rtx operand0, const rtx operand1, const rtx operand2)
29523 : {
29524 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29525 : start_sequence ();
29526 : {
29527 : #define FAIL return (end_sequence (), nullptr)
29528 : #define DONE return end_sequence ()
29529 : #line 17344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29530 : {
29531 : ix86_expand_mul_widen_evenodd (operands[0], operands[1], operands[2],
29532 : true, true);
29533 : DONE;
29534 : }
29535 : #undef DONE
29536 : #undef FAIL
29537 : }
29538 : static const uint8_t expand_encoding[] = {
29539 : 0x03, 0x01, 0x00, 0x6f, 0x52, 0x01, 0x01, 0x01,
29540 : 0x02
29541 : };
29542 : return complete_seq (expand_encoding, operands);
29543 : }
29544 :
29545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17404 */
29546 : rtx
29547 : gen_uavgv8hi3_ceil (const rtx operand0, const rtx operand1, const rtx operand2)
29548 : {
29549 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29550 : start_sequence ();
29551 : {
29552 : #define FAIL return (end_sequence (), nullptr)
29553 : #define DONE return end_sequence ()
29554 : #line 17417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29555 : {
29556 : operands[3] = CONST1_RTX(V8SImode);
29557 : ix86_fixup_binary_operands_no_copy (PLUS, V8HImode, operands);
29558 : }
29559 : #undef DONE
29560 : #undef FAIL
29561 : }
29562 : static const uint8_t expand_encoding[] = {
29563 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x50, 0x50, 0x56,
29564 : 0x3b, 0x56, 0x3b, 0x56, 0x6f, 0x56, 0x01, 0x01,
29565 : 0x6f, 0x56, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
29566 : };
29567 : return complete_seq (expand_encoding, operands);
29568 : }
29569 :
29570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17500 */
29571 : extern rtx_insn *gen_split_3299 (rtx_insn *, rtx *);
29572 : rtx_insn *
29573 : gen_split_3299 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29574 : {
29575 : if (dump_file)
29576 : fprintf (dump_file, "Splitting with gen_split_3299 (sse.md:17500)\n");
29577 : start_sequence ();
29578 : #define FAIL return (end_sequence (), nullptr)
29579 : #define DONE return end_sequence ()
29580 : #line 17509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29581 : operands[3] = gen_int_mode (32 - 1, DImode);
29582 : #undef DONE
29583 : #undef FAIL
29584 : static const uint8_t expand_encoding[] = {
29585 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x51, 0x01, 0x01,
29586 : 0x01, 0x03
29587 : };
29588 : return complete_seq (expand_encoding, operands);
29589 : }
29590 :
29591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17542 */
29592 : rtx
29593 : gen_ashrv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29594 : {
29595 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29596 : static const uint8_t expand_encoding[] = {
29597 : 0x1f, 0x01, 0x00, 0x4f, 0x5a, 0x01, 0x01, 0x01,
29598 : 0x02
29599 : };
29600 : return expand_rtx (expand_encoding, operands);
29601 : }
29602 :
29603 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17696 */
29604 : extern rtx_insn *gen_split_3309 (rtx_insn *, rtx *);
29605 : rtx_insn *
29606 : gen_split_3309 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29607 : {
29608 : if (dump_file)
29609 : fprintf (dump_file, "Splitting with gen_split_3309 (sse.md:17696)\n");
29610 : start_sequence ();
29611 : #define FAIL return (end_sequence (), nullptr)
29612 : #define DONE return end_sequence ()
29613 : #line 17708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29614 : {
29615 : operands[4] = gen_int_mode (64 - 1, DImode);
29616 : operands[5] = gen_reg_rtx (V4DImode);
29617 : }
29618 : #undef DONE
29619 : #undef FAIL
29620 : static const uint8_t expand_encoding[] = {
29621 : 0x02, 0x1f, 0x01, 0x05, 0x5f, 0x57, 0x01, 0x01,
29622 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x50, 0x57, 0x01,
29623 : 0x05, 0x01, 0x04
29624 : };
29625 : return complete_seq (expand_encoding, operands);
29626 : }
29627 :
29628 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17736 */
29629 : extern rtx_insn *gen_split_3320 (rtx_insn *, rtx *);
29630 : rtx_insn *
29631 : gen_split_3320 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29632 : {
29633 : if (dump_file)
29634 : fprintf (dump_file, "Splitting with gen_split_3320 (sse.md:17736)\n");
29635 : start_sequence ();
29636 : #define FAIL return (end_sequence (), nullptr)
29637 : #define DONE return end_sequence ()
29638 : #line 17749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29639 : operands[5] = gen_int_mode (16 - 1, DImode);
29640 : #undef DONE
29641 : #undef FAIL
29642 : static const uint8_t expand_encoding[] = {
29643 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x55, 0x01, 0x03,
29644 : 0x01, 0x05
29645 : };
29646 : return complete_seq (expand_encoding, operands);
29647 : }
29648 :
29649 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17767 */
29650 : extern rtx_insn *gen_split_3329 (rtx_insn *, rtx *);
29651 : rtx_insn *
29652 : gen_split_3329 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29653 : {
29654 : if (dump_file)
29655 : fprintf (dump_file, "Splitting with gen_split_3329 (sse.md:17767)\n");
29656 : start_sequence ();
29657 : #define FAIL return (end_sequence (), nullptr)
29658 : #define DONE return end_sequence ()
29659 : #line 17778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29660 : operands[3] = XVECEXP (operands[2], 0, 0);
29661 : #undef DONE
29662 : #undef FAIL
29663 : static const uint8_t expand_encoding[] = {
29664 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x5a, 0x01, 0x01,
29665 : 0x01, 0x03
29666 : };
29667 : return complete_seq (expand_encoding, operands);
29668 : }
29669 :
29670 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17780 */
29671 : rtx
29672 : gen_vec_shl_v8hi (const rtx operand0, const rtx operand1, const rtx operand2)
29673 : {
29674 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29675 : start_sequence ();
29676 : {
29677 : #define FAIL return (end_sequence (), nullptr)
29678 : #define DONE return end_sequence ()
29679 : #line 17786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29680 : {
29681 : rtx op0 = gen_reg_rtx (V1TImode);
29682 : rtx op1 = force_reg (V8HImode, operands[1]);
29683 :
29684 : emit_insn (gen_sse2_ashlv1ti3
29685 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29686 : emit_move_insn (operands[0], gen_lowpart (V8HImode, op0));
29687 : DONE;
29688 : }
29689 : #undef DONE
29690 : #undef FAIL
29691 : }
29692 : static const uint8_t expand_encoding[] = {
29693 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x53, 0x01, 0x01,
29694 : 0x01, 0x02
29695 : };
29696 : return complete_seq (expand_encoding, operands);
29697 : }
29698 :
29699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17796 */
29700 : rtx
29701 : gen_vec_shr_v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
29702 : {
29703 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29704 : start_sequence ();
29705 : {
29706 : #define FAIL return (end_sequence (), nullptr)
29707 : #define DONE return end_sequence ()
29708 : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29709 : {
29710 : rtx op0 = gen_reg_rtx (V1TImode);
29711 : rtx op1 = force_reg (V8HFmode, operands[1]);
29712 :
29713 : emit_insn (gen_sse2_lshrv1ti3
29714 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29715 : emit_move_insn (operands[0], gen_lowpart (V8HFmode, op0));
29716 : DONE;
29717 : }
29718 : #undef DONE
29719 : #undef FAIL
29720 : }
29721 : static const uint8_t expand_encoding[] = {
29722 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x53, 0x01, 0x01,
29723 : 0x01, 0x02
29724 : };
29725 : return complete_seq (expand_encoding, operands);
29726 : }
29727 :
29728 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17870 */
29729 : rtx
29730 : gen_ashrv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
29731 : {
29732 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29733 : start_sequence ();
29734 : {
29735 : #define FAIL return (end_sequence (), nullptr)
29736 : #define DONE return end_sequence ()
29737 : #line 17876 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29738 : {
29739 : if (!CONST_INT_P (operands[2]))
29740 : {
29741 : ix86_expand_v1ti_ashiftrt (operands);
29742 : DONE;
29743 : }
29744 : }
29745 : #undef DONE
29746 : #undef FAIL
29747 : }
29748 : static const uint8_t expand_encoding[] = {
29749 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x53, 0x01, 0x01,
29750 : 0x01, 0x02
29751 : };
29752 : return complete_seq (expand_encoding, operands);
29753 : }
29754 :
29755 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29756 : rtx
29757 : gen_uminv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29758 : {
29759 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29760 : start_sequence ();
29761 : {
29762 : #define FAIL return (end_sequence (), nullptr)
29763 : #define DONE return end_sequence ()
29764 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29765 : ix86_fixup_binary_operands_no_copy (UMIN, V32QImode, operands);
29766 : #undef DONE
29767 : #undef FAIL
29768 : }
29769 : static const uint8_t expand_encoding[] = {
29770 : 0x01, 0x1f, 0x01, 0x00, 0x54, 0x54, 0x01, 0x01,
29771 : 0x01, 0x02
29772 : };
29773 : return complete_seq (expand_encoding, operands);
29774 : }
29775 :
29776 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29777 : rtx
29778 : gen_sminv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29779 : {
29780 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29781 : start_sequence ();
29782 : {
29783 : #define FAIL return (end_sequence (), nullptr)
29784 : #define DONE return end_sequence ()
29785 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29786 : ix86_fixup_binary_operands_no_copy (SMIN, V64QImode, operands);
29787 : #undef DONE
29788 : #undef FAIL
29789 : }
29790 : static const uint8_t expand_encoding[] = {
29791 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x59, 0x01, 0x01,
29792 : 0x01, 0x02
29793 : };
29794 : return complete_seq (expand_encoding, operands);
29795 : }
29796 :
29797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29798 : rtx
29799 : gen_uminv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29800 : {
29801 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29802 : start_sequence ();
29803 : {
29804 : #define FAIL return (end_sequence (), nullptr)
29805 : #define DONE return end_sequence ()
29806 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29807 : ix86_fixup_binary_operands_no_copy (UMIN, V16SImode, operands);
29808 : #undef DONE
29809 : #undef FAIL
29810 : }
29811 : static const uint8_t expand_encoding[] = {
29812 : 0x01, 0x1f, 0x01, 0x00, 0x54, 0x5b, 0x01, 0x01,
29813 : 0x01, 0x02
29814 : };
29815 : return complete_seq (expand_encoding, operands);
29816 : }
29817 :
29818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29819 : rtx
29820 : gen_cond_sminv16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29821 : {
29822 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29823 : start_sequence ();
29824 : {
29825 : #define FAIL return (end_sequence (), nullptr)
29826 : #define DONE return end_sequence ()
29827 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29828 : {
29829 : emit_insn (gen_sminv16qi3_mask (operands[0],
29830 : operands[2],
29831 : operands[3],
29832 : operands[4],
29833 : operands[1]));
29834 : DONE;
29835 : }
29836 : #undef DONE
29837 : #undef FAIL
29838 : }
29839 : static const uint8_t expand_encoding[] = {
29840 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x52,
29841 : 0x4f, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29842 : 0x01
29843 : };
29844 : return complete_seq (expand_encoding, operands);
29845 : }
29846 :
29847 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29848 : rtx
29849 : gen_cond_uminv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29850 : {
29851 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29852 : start_sequence ();
29853 : {
29854 : #define FAIL return (end_sequence (), nullptr)
29855 : #define DONE return end_sequence ()
29856 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29857 : {
29858 : emit_insn (gen_uminv16hi3_mask (operands[0],
29859 : operands[2],
29860 : operands[3],
29861 : operands[4],
29862 : operands[1]));
29863 : DONE;
29864 : }
29865 : #undef DONE
29866 : #undef FAIL
29867 : }
29868 : static const uint8_t expand_encoding[] = {
29869 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x54,
29870 : 0x55, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29871 : 0x01
29872 : };
29873 : return complete_seq (expand_encoding, operands);
29874 : }
29875 :
29876 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29877 : rtx
29878 : gen_cond_sminv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29879 : {
29880 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29881 : start_sequence ();
29882 : {
29883 : #define FAIL return (end_sequence (), nullptr)
29884 : #define DONE return end_sequence ()
29885 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29886 : {
29887 : emit_insn (gen_sminv8si3_mask (operands[0],
29888 : operands[2],
29889 : operands[3],
29890 : operands[4],
29891 : operands[1]));
29892 : DONE;
29893 : }
29894 : #undef DONE
29895 : #undef FAIL
29896 : }
29897 : static const uint8_t expand_encoding[] = {
29898 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x52,
29899 : 0x56, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29900 : 0x01
29901 : };
29902 : return complete_seq (expand_encoding, operands);
29903 : }
29904 :
29905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29906 : rtx
29907 : gen_cond_uminv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29908 : {
29909 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29910 : start_sequence ();
29911 : {
29912 : #define FAIL return (end_sequence (), nullptr)
29913 : #define DONE return end_sequence ()
29914 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29915 : {
29916 : emit_insn (gen_uminv8di3_mask (operands[0],
29917 : operands[2],
29918 : operands[3],
29919 : operands[4],
29920 : operands[1]));
29921 : DONE;
29922 : }
29923 : #undef DONE
29924 : #undef FAIL
29925 : }
29926 : static const uint8_t expand_encoding[] = {
29927 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x54,
29928 : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29929 : 0x01
29930 : };
29931 : return complete_seq (expand_encoding, operands);
29932 : }
29933 :
29934 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29935 : rtx
29936 : gen_sminv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29937 : {
29938 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29939 : start_sequence ();
29940 : {
29941 : #define FAIL return (end_sequence (), nullptr)
29942 : #define DONE return end_sequence ()
29943 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29944 : ix86_fixup_binary_operands_no_copy (SMIN, V64QImode, operands);
29945 : #undef DONE
29946 : #undef FAIL
29947 : }
29948 : static const uint8_t expand_encoding[] = {
29949 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x52,
29950 : 0x59, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29951 : 0x04
29952 : };
29953 : return complete_seq (expand_encoding, operands);
29954 : }
29955 :
29956 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29957 : rtx
29958 : gen_uminv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29959 : {
29960 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29961 : start_sequence ();
29962 : {
29963 : #define FAIL return (end_sequence (), nullptr)
29964 : #define DONE return end_sequence ()
29965 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29966 : ix86_fixup_binary_operands_no_copy (UMIN, V32QImode, operands);
29967 : #undef DONE
29968 : #undef FAIL
29969 : }
29970 : static const uint8_t expand_encoding[] = {
29971 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x54,
29972 : 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29973 : 0x04
29974 : };
29975 : return complete_seq (expand_encoding, operands);
29976 : }
29977 :
29978 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29979 : rtx
29980 : gen_sminv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29981 : {
29982 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29983 : start_sequence ();
29984 : {
29985 : #define FAIL return (end_sequence (), nullptr)
29986 : #define DONE return end_sequence ()
29987 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29988 : ix86_fixup_binary_operands_no_copy (SMIN, V16HImode, operands);
29989 : #undef DONE
29990 : #undef FAIL
29991 : }
29992 : static const uint8_t expand_encoding[] = {
29993 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x52,
29994 : 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29995 : 0x04
29996 : };
29997 : return complete_seq (expand_encoding, operands);
29998 : }
29999 :
30000 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30001 : rtx
30002 : gen_uminv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30003 : {
30004 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30005 : start_sequence ();
30006 : {
30007 : #define FAIL return (end_sequence (), nullptr)
30008 : #define DONE return end_sequence ()
30009 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30010 : ix86_fixup_binary_operands_no_copy (UMIN, V16SImode, operands);
30011 : #undef DONE
30012 : #undef FAIL
30013 : }
30014 : static const uint8_t expand_encoding[] = {
30015 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x54,
30016 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30017 : 0x04
30018 : };
30019 : return complete_seq (expand_encoding, operands);
30020 : }
30021 :
30022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30023 : rtx
30024 : gen_umaxv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30025 : {
30026 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30027 : start_sequence ();
30028 : {
30029 : #define FAIL return (end_sequence (), nullptr)
30030 : #define DONE return end_sequence ()
30031 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30032 : ix86_fixup_binary_operands_no_copy (UMAX, V8DImode, operands);
30033 : #undef DONE
30034 : #undef FAIL
30035 : }
30036 : static const uint8_t expand_encoding[] = {
30037 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x55,
30038 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30039 : 0x04
30040 : };
30041 : return complete_seq (expand_encoding, operands);
30042 : }
30043 :
30044 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18106 */
30045 : rtx
30046 : gen_smaxv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30047 : {
30048 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30049 : start_sequence ();
30050 : {
30051 : #define FAIL return (end_sequence (), nullptr)
30052 : #define DONE return end_sequence ()
30053 : #line 18112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30054 : {
30055 : if (TARGET_AVX512F
30056 : && (V8DImode == V8DImode || TARGET_AVX512VL))
30057 : ;
30058 : else
30059 : {
30060 : enum rtx_code code;
30061 : rtx xops[6];
30062 : bool ok;
30063 :
30064 :
30065 : xops[0] = operands[0];
30066 :
30067 : if (SMAX == SMAX || SMAX == UMAX)
30068 : {
30069 : xops[1] = operands[1];
30070 : xops[2] = operands[2];
30071 : }
30072 : else
30073 : {
30074 : xops[1] = operands[2];
30075 : xops[2] = operands[1];
30076 : }
30077 :
30078 : code = (SMAX == UMAX || SMAX == UMIN) ? GTU : GT;
30079 :
30080 : xops[3] = gen_rtx_fmt_ee (code, VOIDmode, operands[1], operands[2]);
30081 : xops[4] = operands[1];
30082 : xops[5] = operands[2];
30083 :
30084 : ok = ix86_expand_int_vcond (xops);
30085 : gcc_assert (ok);
30086 : DONE;
30087 : }
30088 : }
30089 : #undef DONE
30090 : #undef FAIL
30091 : }
30092 : static const uint8_t expand_encoding[] = {
30093 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x5c, 0x01, 0x01,
30094 : 0x01, 0x02
30095 : };
30096 : return complete_seq (expand_encoding, operands);
30097 : }
30098 :
30099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18106 */
30100 : rtx
30101 : gen_umaxv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30102 : {
30103 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30104 : start_sequence ();
30105 : {
30106 : #define FAIL return (end_sequence (), nullptr)
30107 : #define DONE return end_sequence ()
30108 : #line 18112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30109 : {
30110 : if (TARGET_AVX512F
30111 : && (V2DImode == V8DImode || TARGET_AVX512VL))
30112 : ;
30113 : else
30114 : {
30115 : enum rtx_code code;
30116 : rtx xops[6];
30117 : bool ok;
30118 :
30119 :
30120 : xops[0] = operands[0];
30121 :
30122 : if (UMAX == SMAX || UMAX == UMAX)
30123 : {
30124 : xops[1] = operands[1];
30125 : xops[2] = operands[2];
30126 : }
30127 : else
30128 : {
30129 : xops[1] = operands[2];
30130 : xops[2] = operands[1];
30131 : }
30132 :
30133 : code = (UMAX == UMAX || UMAX == UMIN) ? GTU : GT;
30134 :
30135 : xops[3] = gen_rtx_fmt_ee (code, VOIDmode, operands[1], operands[2]);
30136 : xops[4] = operands[1];
30137 : xops[5] = operands[2];
30138 :
30139 : ok = ix86_expand_int_vcond (xops);
30140 : gcc_assert (ok);
30141 : DONE;
30142 : }
30143 : }
30144 : #undef DONE
30145 : #undef FAIL
30146 : }
30147 : static const uint8_t expand_encoding[] = {
30148 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x52, 0x01, 0x01,
30149 : 0x01, 0x02
30150 : };
30151 : return complete_seq (expand_encoding, operands);
30152 : }
30153 :
30154 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18223 */
30155 : rtx
30156 : gen_umaxv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30157 : {
30158 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30159 : start_sequence ();
30160 : {
30161 : #define FAIL return (end_sequence (), nullptr)
30162 : #define DONE return end_sequence ()
30163 : #line 18229 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30164 : {
30165 : if (TARGET_SSE4_1 || V8HImode == V16QImode)
30166 : ix86_fixup_binary_operands_no_copy (UMAX, V8HImode, operands);
30167 : else if (UMAX == UMAX && V8HImode == V8HImode)
30168 : {
30169 : rtx op0 = operands[0], op2 = operands[2], op3 = op0;
30170 : operands[1] = force_reg (V8HImode, operands[1]);
30171 : if (rtx_equal_p (op3, op2))
30172 : op3 = gen_reg_rtx (V8HImode);
30173 : emit_insn (gen_ussubv8hi3 (op3, operands[1], op2));
30174 : emit_insn (gen_addv8hi3 (op0, op3, op2));
30175 : DONE;
30176 : }
30177 : else
30178 : {
30179 : rtx xops[6];
30180 : bool ok;
30181 :
30182 : operands[1] = force_reg (V8HImode, operands[1]);
30183 : operands[2] = force_reg (V8HImode, operands[2]);
30184 :
30185 : xops[0] = operands[0];
30186 :
30187 : if (UMAX == UMAX)
30188 : {
30189 : xops[1] = operands[1];
30190 : xops[2] = operands[2];
30191 : }
30192 : else
30193 : {
30194 : xops[1] = operands[2];
30195 : xops[2] = operands[1];
30196 : }
30197 :
30198 : xops[3] = gen_rtx_GTU (VOIDmode, operands[1], operands[2]);
30199 : xops[4] = operands[1];
30200 : xops[5] = operands[2];
30201 :
30202 : ok = ix86_expand_int_vcond (xops);
30203 : gcc_assert (ok);
30204 : DONE;
30205 : }
30206 : }
30207 : #undef DONE
30208 : #undef FAIL
30209 : }
30210 : static const uint8_t expand_encoding[] = {
30211 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x50, 0x01, 0x01,
30212 : 0x01, 0x02
30213 : };
30214 : return complete_seq (expand_encoding, operands);
30215 : }
30216 :
30217 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18349 */
30218 : extern rtx_insn *gen_split_3358 (rtx_insn *, rtx *);
30219 : rtx_insn *
30220 : gen_split_3358 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30221 : {
30222 : if (dump_file)
30223 : fprintf (dump_file, "Splitting with gen_split_3358 (sse.md:18349)\n");
30224 : start_sequence ();
30225 : #define FAIL return (end_sequence (), nullptr)
30226 : #define DONE return end_sequence ()
30227 : #line 18372 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30228 : {
30229 : if (INTVAL (operands[5]) == 1)
30230 : std::swap (operands[3], operands[4]);
30231 :
30232 : if (operands[3] == CONST0_RTX (V4SImode))
30233 : operands[3] = force_reg (V4SImode, operands[3]);
30234 : if (operands[4] == CONST0_RTX (V4SImode))
30235 : operands[4] = force_reg (V4SImode, operands[4]);
30236 :
30237 : enum rtx_code code = INTVAL (operands[5]) ? GT : EQ;
30238 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V4SImode,
30239 : operands[3], operands[4]));
30240 : DONE;
30241 : }
30242 : #undef DONE
30243 : #undef FAIL
30244 : static const uint8_t expand_encoding[] = {
30245 : 0x01, 0x27, 0x00
30246 : };
30247 : return complete_seq (expand_encoding, operands);
30248 : }
30249 :
30250 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18387 */
30251 : extern rtx_insn *gen_split_3368 (rtx_insn *, rtx *);
30252 : rtx_insn *
30253 : gen_split_3368 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30254 : {
30255 : if (dump_file)
30256 : fprintf (dump_file, "Splitting with gen_split_3368 (sse.md:18387)\n");
30257 : start_sequence ();
30258 : #define FAIL return (end_sequence (), nullptr)
30259 : #define DONE return end_sequence ()
30260 : #line 18411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30261 : {
30262 : if (INTVAL (operands[5]) == 5)
30263 : std::swap (operands[3], operands[4]);
30264 : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30265 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V32QImode,
30266 : operands[3], operands[4]));
30267 : DONE;
30268 : }
30269 : #undef DONE
30270 : #undef FAIL
30271 : static const uint8_t expand_encoding[] = {
30272 : 0x01, 0x27, 0x00
30273 : };
30274 : return complete_seq (expand_encoding, operands);
30275 : }
30276 :
30277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30278 : extern rtx_insn *gen_split_3380 (rtx_insn *, rtx *);
30279 : rtx_insn *
30280 : gen_split_3380 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30281 : {
30282 : if (dump_file)
30283 : fprintf (dump_file, "Splitting with gen_split_3380 (sse.md:18513)\n");
30284 : start_sequence ();
30285 : #define FAIL return (end_sequence (), nullptr)
30286 : #define DONE return end_sequence ()
30287 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30288 : {
30289 : rtx dst_min = gen_reg_rtx (V8HImode);
30290 :
30291 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30292 : operands[3] = force_reg (V8HImode, operands[3]);
30293 : emit_insn (gen_sminv8hi3 (dst_min, operands[3], operands[4]));
30294 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30295 : emit_move_insn (operands[0], gen_rtx_EQ (V8HImode, eq_op, dst_min));
30296 : DONE;
30297 : }
30298 : #undef DONE
30299 : #undef FAIL
30300 : static const uint8_t expand_encoding[] = {
30301 : 0x01, 0x27, 0x00
30302 : };
30303 : return complete_seq (expand_encoding, operands);
30304 : }
30305 :
30306 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30307 : extern rtx_insn *gen_split_3390 (rtx_insn *, rtx *);
30308 : rtx_insn *
30309 : gen_split_3390 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30310 : {
30311 : if (dump_file)
30312 : fprintf (dump_file, "Splitting with gen_split_3390 (sse.md:18513)\n");
30313 : start_sequence ();
30314 : #define FAIL return (end_sequence (), nullptr)
30315 : #define DONE return end_sequence ()
30316 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30317 : {
30318 : rtx dst_min = gen_reg_rtx (V8SImode);
30319 :
30320 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30321 : operands[3] = force_reg (V8SImode, operands[3]);
30322 : emit_insn (gen_sminv8si3 (dst_min, operands[3], operands[4]));
30323 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30324 : emit_move_insn (operands[0], gen_rtx_EQ (V8SImode, eq_op, dst_min));
30325 : DONE;
30326 : }
30327 : #undef DONE
30328 : #undef FAIL
30329 : static const uint8_t expand_encoding[] = {
30330 : 0x01, 0x27, 0x00
30331 : };
30332 : return complete_seq (expand_encoding, operands);
30333 : }
30334 :
30335 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18539 */
30336 : extern rtx_insn *gen_split_3400 (rtx_insn *, rtx *);
30337 : rtx_insn *
30338 : gen_split_3400 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30339 : {
30340 : if (dump_file)
30341 : fprintf (dump_file, "Splitting with gen_split_3400 (sse.md:18539)\n");
30342 : start_sequence ();
30343 : #define FAIL return (end_sequence (), nullptr)
30344 : #define DONE return end_sequence ()
30345 : #line 18559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30346 : {
30347 : if (INTVAL (operands[5]) == 5)
30348 : std::swap (operands[3], operands[4]);
30349 :
30350 : if (MEM_P (operands[3]))
30351 : operands[3] = force_reg (V8SImode, operands[3]);
30352 : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30353 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V8SImode,
30354 : operands[3], operands[4]));
30355 : DONE;
30356 : }
30357 : #undef DONE
30358 : #undef FAIL
30359 : static const uint8_t expand_encoding[] = {
30360 : 0x01, 0x27, 0x00
30361 : };
30362 : return complete_seq (expand_encoding, operands);
30363 : }
30364 :
30365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18596 */
30366 : rtx
30367 : gen_avx512vl_eqv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30368 : {
30369 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30370 : start_sequence ();
30371 : {
30372 : #define FAIL return (end_sequence (), nullptr)
30373 : #define DONE return end_sequence ()
30374 : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30375 : ix86_fixup_binary_operands_no_copy (EQ, V32QImode, operands);
30376 : #undef DONE
30377 : #undef FAIL
30378 : }
30379 : static const uint8_t expand_encoding[] = {
30380 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01,
30381 : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30382 : };
30383 : return complete_seq (expand_encoding, operands);
30384 : }
30385 :
30386 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18596 */
30387 : rtx
30388 : gen_avx512vl_eqv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30389 : {
30390 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30391 : start_sequence ();
30392 : {
30393 : #define FAIL return (end_sequence (), nullptr)
30394 : #define DONE return end_sequence ()
30395 : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30396 : ix86_fixup_binary_operands_no_copy (EQ, V8HImode, operands);
30397 : #undef DONE
30398 : #undef FAIL
30399 : }
30400 : static const uint8_t expand_encoding[] = {
30401 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f,
30402 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c,
30403 : 0x01, 0x03
30404 : };
30405 : return complete_seq (expand_encoding, operands);
30406 : }
30407 :
30408 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18606 */
30409 : rtx
30410 : gen_avx512vl_eqv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30411 : {
30412 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30413 : start_sequence ();
30414 : {
30415 : #define FAIL return (end_sequence (), nullptr)
30416 : #define DONE return end_sequence ()
30417 : #line 18614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30418 : ix86_fixup_binary_operands_no_copy (EQ, V2DImode, operands);
30419 : #undef DONE
30420 : #undef FAIL
30421 : }
30422 : static const uint8_t expand_encoding[] = {
30423 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f,
30424 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c,
30425 : 0x01, 0x03
30426 : };
30427 : return complete_seq (expand_encoding, operands);
30428 : }
30429 :
30430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18690 */
30431 : rtx
30432 : gen_avx512bw_gtv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30433 : {
30434 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30435 : static const uint8_t expand_encoding[] = {
30436 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x03, 0x01, 0x01,
30437 : 0x01, 0x02, 0x27, 0x06, 0x3c
30438 : };
30439 : return expand_rtx (expand_encoding, operands);
30440 : }
30441 :
30442 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18690 */
30443 : rtx
30444 : gen_avx512vl_gtv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30445 : {
30446 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30447 : static const uint8_t expand_encoding[] = {
30448 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x03,
30449 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x06, 0x3c, 0x01,
30450 : 0x03
30451 : };
30452 : return expand_rtx (expand_encoding, operands);
30453 : }
30454 :
30455 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30456 : rtx
30457 : gen_vec_permv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30458 : {
30459 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30460 : start_sequence ();
30461 : {
30462 : #define FAIL return (end_sequence (), nullptr)
30463 : #define DONE return end_sequence ()
30464 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30465 : {
30466 : ix86_expand_vec_perm (operands);
30467 : DONE;
30468 : }
30469 : #undef DONE
30470 : #undef FAIL
30471 : }
30472 : static const uint8_t expand_encoding[] = {
30473 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30474 : 0x03
30475 : };
30476 : return complete_seq (expand_encoding, operands);
30477 : }
30478 :
30479 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30480 : rtx
30481 : gen_vec_permv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30482 : {
30483 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30484 : start_sequence ();
30485 : {
30486 : #define FAIL return (end_sequence (), nullptr)
30487 : #define DONE return end_sequence ()
30488 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30489 : {
30490 : ix86_expand_vec_perm (operands);
30491 : DONE;
30492 : }
30493 : #undef DONE
30494 : #undef FAIL
30495 : }
30496 : static const uint8_t expand_encoding[] = {
30497 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30498 : 0x03
30499 : };
30500 : return complete_seq (expand_encoding, operands);
30501 : }
30502 :
30503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18742 */
30504 : rtx
30505 : gen_one_cmplv8hi2 (const rtx operand0, const rtx operand1)
30506 : {
30507 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
30508 : start_sequence ();
30509 : {
30510 : #define FAIL return (end_sequence (), nullptr)
30511 : #define DONE return end_sequence ()
30512 : #line 18747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30513 : {
30514 : operands[2] = CONSTM1_RTX (V8HImode);
30515 :
30516 : if (!TARGET_AVX512F)
30517 : operands[2] = force_reg (V8HImode, operands[2]);
30518 : }
30519 : #undef DONE
30520 : #undef FAIL
30521 : }
30522 : static const uint8_t expand_encoding[] = {
30523 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x50, 0x01, 0x01,
30524 : 0x01, 0x02
30525 : };
30526 : return complete_seq (expand_encoding, operands);
30527 : }
30528 :
30529 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18754 */
30530 : extern rtx_insn *gen_split_3415 (rtx_insn *, rtx *);
30531 : rtx_insn *
30532 : gen_split_3415 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30533 : {
30534 : if (dump_file)
30535 : fprintf (dump_file, "Splitting with gen_split_3415 (sse.md:18754)\n");
30536 : start_sequence ();
30537 : #define FAIL return (end_sequence (), nullptr)
30538 : #define DONE return end_sequence ()
30539 : #line 18775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30540 : {
30541 : if (MEM_P (operands[1]))
30542 : {
30543 : operands[3] = operands[1];
30544 : operands[1] = operands[0];
30545 : }
30546 : else
30547 : {
30548 : if (GET_MODE_SIZE (HImode) < 4)
30549 : {
30550 : if (64 == 64 ? TARGET_AVX512BW
30551 : : (TARGET_AVX512BW && TARGET_AVX512VL)
30552 : || !EXT_REX_SSE_REG_P (operands[0]))
30553 : {
30554 : operands[3] = operands[1];
30555 : operands[1] = operands[0];
30556 : }
30557 : else
30558 : operands[3] = CONST0_RTX (V32HImode);
30559 : }
30560 : else
30561 : {
30562 : if (64 == 64 || TARGET_AVX512VL
30563 : || !EXT_REX_SSE_REG_P (operands[0]))
30564 : {
30565 : operands[3] = operands[1];
30566 : operands[1] = operands[0];
30567 : }
30568 : else
30569 : operands[3] = CONST0_RTX (V32HImode);
30570 : }
30571 : }
30572 : }
30573 : #undef DONE
30574 : #undef FAIL
30575 : static const uint8_t expand_encoding[] = {
30576 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x17, 0x00,
30577 : 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x5a, 0x01, 0x01,
30578 : 0x01, 0x02, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
30579 : };
30580 : return complete_seq (expand_encoding, operands);
30581 : }
30582 :
30583 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18843 */
30584 : extern rtx_insn *gen_split_3425 (rtx_insn *, rtx *);
30585 : rtx_insn *
30586 : gen_split_3425 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30587 : {
30588 : if (dump_file)
30589 : fprintf (dump_file, "Splitting with gen_split_3425 (sse.md:18843)\n");
30590 : start_sequence ();
30591 : #define FAIL return (end_sequence (), nullptr)
30592 : #define DONE return end_sequence ()
30593 : #line 18854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30594 : operands[2] = CONSTM1_RTX (V8DImode);
30595 : #undef DONE
30596 : #undef FAIL
30597 : static const uint8_t expand_encoding[] = {
30598 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x5c, 0x81, 0x0c,
30599 : 0x5c, 0x01, 0x01, 0x01, 0x02
30600 : };
30601 : return complete_seq (expand_encoding, operands);
30602 : }
30603 :
30604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18856 */
30605 : rtx
30606 : gen_sse2_andnotv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30607 : {
30608 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30609 : static const uint8_t expand_encoding[] = {
30610 : 0x1f, 0x01, 0x00, 0x49, 0x50, 0x4c, 0x50, 0x01,
30611 : 0x01, 0x01, 0x02
30612 : };
30613 : return expand_rtx (expand_encoding, operands);
30614 : }
30615 :
30616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18863 */
30617 : rtx
30618 : gen_andnv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30619 : {
30620 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30621 : static const uint8_t expand_encoding[] = {
30622 : 0x1f, 0x01, 0x00, 0x49, 0x5b, 0x4c, 0x5b, 0x01,
30623 : 0x02, 0x01, 0x01
30624 : };
30625 : return expand_rtx (expand_encoding, operands);
30626 : }
30627 :
30628 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18863 */
30629 : rtx
30630 : gen_andnv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30631 : {
30632 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30633 : static const uint8_t expand_encoding[] = {
30634 : 0x1f, 0x01, 0x00, 0x49, 0x51, 0x4c, 0x51, 0x01,
30635 : 0x02, 0x01, 0x01
30636 : };
30637 : return expand_rtx (expand_encoding, operands);
30638 : }
30639 :
30640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19009 */
30641 : extern rtx_insn *gen_split_3429 (rtx_insn *, rtx *);
30642 : rtx_insn *
30643 : gen_split_3429 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30644 : {
30645 : if (dump_file)
30646 : fprintf (dump_file, "Splitting with gen_split_3429 (sse.md:19009)\n");
30647 : start_sequence ();
30648 : #define FAIL return (end_sequence (), nullptr)
30649 : #define DONE return end_sequence ()
30650 : #line 19022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30651 : operands[3] = gen_reg_rtx (V2DImode);
30652 : #undef DONE
30653 : #undef FAIL
30654 : static const uint8_t expand_encoding[] = {
30655 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x52, 0x01,
30656 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x52, 0x4c, 0x52,
30657 : 0x01, 0x03, 0x01, 0x02
30658 : };
30659 : return complete_seq (expand_encoding, operands);
30660 : }
30661 :
30662 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19025 */
30663 : extern rtx_insn *gen_split_3439 (rtx_insn *, rtx *);
30664 : rtx_insn *
30665 : gen_split_3439 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30666 : {
30667 : if (dump_file)
30668 : fprintf (dump_file, "Splitting with gen_split_3439 (sse.md:19025)\n");
30669 : start_sequence ();
30670 : #define FAIL return (end_sequence (), nullptr)
30671 : #define DONE return end_sequence ()
30672 : #line 19038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30673 : operands[3] = gen_reg_rtx (V8DImode);
30674 : #undef DONE
30675 : #undef FAIL
30676 : static const uint8_t expand_encoding[] = {
30677 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x5c, 0x01,
30678 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x5c, 0x4c, 0x5c,
30679 : 0x01, 0x03, 0x01, 0x02
30680 : };
30681 : return complete_seq (expand_encoding, operands);
30682 : }
30683 :
30684 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19040 */
30685 : extern rtx_insn *gen_split_3449 (rtx_insn *, rtx *);
30686 : rtx_insn *
30687 : gen_split_3449 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30688 : {
30689 : if (dump_file)
30690 : fprintf (dump_file, "Splitting with gen_split_3449 (sse.md:19040)\n");
30691 : start_sequence ();
30692 : #define FAIL return (end_sequence (), nullptr)
30693 : #define DONE return end_sequence ()
30694 : #line 19053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30695 : operands[3] = gen_reg_rtx (V8HImode);
30696 : #undef DONE
30697 : #undef FAIL
30698 : static const uint8_t expand_encoding[] = {
30699 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x50, 0x01,
30700 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x50, 0x4c, 0x50,
30701 : 0x01, 0x03, 0x01, 0x02
30702 : };
30703 : return complete_seq (expand_encoding, operands);
30704 : }
30705 :
30706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19055 */
30707 : extern rtx_insn *gen_split_3459 (rtx_insn *, rtx *);
30708 : rtx_insn *
30709 : gen_split_3459 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30710 : {
30711 : if (dump_file)
30712 : fprintf (dump_file, "Splitting with gen_split_3459 (sse.md:19055)\n");
30713 : start_sequence ();
30714 : #define FAIL return (end_sequence (), nullptr)
30715 : #define DONE return end_sequence ()
30716 : #line 19068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30717 : operands[3] = gen_reg_rtx (V32HImode);
30718 : #undef DONE
30719 : #undef FAIL
30720 : static const uint8_t expand_encoding[] = {
30721 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x5a, 0x01,
30722 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x5a, 0x4b, 0x5a,
30723 : 0x01, 0x03, 0x01, 0x02
30724 : };
30725 : return complete_seq (expand_encoding, operands);
30726 : }
30727 :
30728 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30729 : rtx
30730 : gen_andv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30731 : {
30732 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30733 : start_sequence ();
30734 : {
30735 : #define FAIL return (end_sequence (), nullptr)
30736 : #define DONE return end_sequence ()
30737 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30738 : {
30739 : ix86_expand_vector_logical_operator (AND, V8DImode, operands);
30740 : DONE;
30741 : }
30742 : #undef DONE
30743 : #undef FAIL
30744 : }
30745 : static const uint8_t expand_encoding[] = {
30746 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x5c, 0x01, 0x01,
30747 : 0x01, 0x02
30748 : };
30749 : return complete_seq (expand_encoding, operands);
30750 : }
30751 :
30752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30753 : rtx
30754 : gen_andv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30755 : {
30756 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30757 : start_sequence ();
30758 : {
30759 : #define FAIL return (end_sequence (), nullptr)
30760 : #define DONE return end_sequence ()
30761 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30762 : {
30763 : ix86_expand_vector_logical_operator (AND, V16QImode, operands);
30764 : DONE;
30765 : }
30766 : #undef DONE
30767 : #undef FAIL
30768 : }
30769 : static const uint8_t expand_encoding[] = {
30770 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x4f, 0x01, 0x01,
30771 : 0x01, 0x02
30772 : };
30773 : return complete_seq (expand_encoding, operands);
30774 : }
30775 :
30776 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30777 : rtx
30778 : gen_iorv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30779 : {
30780 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30781 : start_sequence ();
30782 : {
30783 : #define FAIL return (end_sequence (), nullptr)
30784 : #define DONE return end_sequence ()
30785 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30786 : {
30787 : ix86_expand_vector_logical_operator (IOR, V8HImode, operands);
30788 : DONE;
30789 : }
30790 : #undef DONE
30791 : #undef FAIL
30792 : }
30793 : static const uint8_t expand_encoding[] = {
30794 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x50, 0x01, 0x01,
30795 : 0x01, 0x02
30796 : };
30797 : return complete_seq (expand_encoding, operands);
30798 : }
30799 :
30800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30801 : rtx
30802 : gen_xorv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30803 : {
30804 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30805 : start_sequence ();
30806 : {
30807 : #define FAIL return (end_sequence (), nullptr)
30808 : #define DONE return end_sequence ()
30809 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30810 : {
30811 : ix86_expand_vector_logical_operator (XOR, V4DImode, operands);
30812 : DONE;
30813 : }
30814 : #undef DONE
30815 : #undef FAIL
30816 : }
30817 : static const uint8_t expand_encoding[] = {
30818 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x57, 0x01, 0x01,
30819 : 0x01, 0x02
30820 : };
30821 : return complete_seq (expand_encoding, operands);
30822 : }
30823 :
30824 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30825 : rtx
30826 : gen_cond_andv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30827 : {
30828 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30829 : start_sequence ();
30830 : {
30831 : #define FAIL _Pragma ("GCC error \"cond_andv4si cannot FAIL\"") (void)0
30832 : #define DONE return end_sequence ()
30833 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30834 : {
30835 : emit_insn (gen_andv4si3_mask (operands[0],
30836 : operands[2],
30837 : operands[3],
30838 : operands[4],
30839 : operands[1]));
30840 : DONE;
30841 : }
30842 : #undef DONE
30843 : #undef FAIL
30844 : }
30845 : static const uint8_t expand_encoding[] = {
30846 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x49,
30847 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30848 : 0x01
30849 : };
30850 : return complete_seq (expand_encoding, operands);
30851 : }
30852 :
30853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30854 : rtx
30855 : gen_cond_iorv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30856 : {
30857 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30858 : start_sequence ();
30859 : {
30860 : #define FAIL _Pragma ("GCC error \"cond_iorv2di cannot FAIL\"") (void)0
30861 : #define DONE return end_sequence ()
30862 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30863 : {
30864 : emit_insn (gen_iorv2di3_mask (operands[0],
30865 : operands[2],
30866 : operands[3],
30867 : operands[4],
30868 : operands[1]));
30869 : DONE;
30870 : }
30871 : #undef DONE
30872 : #undef FAIL
30873 : }
30874 : static const uint8_t expand_encoding[] = {
30875 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x4a,
30876 : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30877 : 0x01
30878 : };
30879 : return complete_seq (expand_encoding, operands);
30880 : }
30881 :
30882 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19115 */
30883 : rtx
30884 : gen_iorv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30885 : {
30886 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30887 : start_sequence ();
30888 : {
30889 : #define FAIL return (end_sequence (), nullptr)
30890 : #define DONE return end_sequence ()
30891 : #line 19124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30892 : ix86_fixup_binary_operands_no_copy (IOR, V8DImode, operands);
30893 : #undef DONE
30894 : #undef FAIL
30895 : }
30896 : static const uint8_t expand_encoding[] = {
30897 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4a,
30898 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30899 : 0x04
30900 : };
30901 : return complete_seq (expand_encoding, operands);
30902 : }
30903 :
30904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19537 */
30905 : rtx
30906 : gen_vec_pack_trunc_v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
30907 : {
30908 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30909 : start_sequence ();
30910 : {
30911 : #define FAIL return (end_sequence (), nullptr)
30912 : #define DONE return end_sequence ()
30913 : #line 19542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30914 : {
30915 : rtx op1 = gen_lowpart (V32QImode, operands[1]);
30916 : rtx op2 = gen_lowpart (V32QImode, operands[2]);
30917 : ix86_expand_vec_extract_even_odd (operands[0], op1, op2, 0);
30918 : DONE;
30919 : }
30920 : #undef DONE
30921 : #undef FAIL
30922 : }
30923 : static const uint8_t expand_encoding[] = {
30924 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
30925 : };
30926 : return complete_seq (expand_encoding, operands);
30927 : }
30928 :
30929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19575 */
30930 : rtx
30931 : gen_vec_pack_sbool_trunc_qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30932 : {
30933 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30934 : start_sequence ();
30935 : {
30936 : #define FAIL return (end_sequence (), nullptr)
30937 : #define DONE return end_sequence ()
30938 : #line 19581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30939 : {
30940 : HOST_WIDE_INT nunits = INTVAL (operands[3]);
30941 : rtx mask, tem1, tem2;
30942 : if (nunits != 8 && nunits != 4)
30943 : FAIL;
30944 : mask = gen_reg_rtx (QImode);
30945 : emit_move_insn (mask, GEN_INT ((1 << (nunits / 2)) - 1));
30946 : tem1 = gen_reg_rtx (QImode);
30947 : emit_insn (gen_kandqi (tem1, operands[1], mask));
30948 : if (TARGET_AVX512DQ)
30949 : {
30950 : tem2 = gen_reg_rtx (QImode);
30951 : emit_insn (gen_kashiftqi (tem2, operands[2],
30952 : GEN_INT (nunits / 2)));
30953 : }
30954 : else
30955 : {
30956 : tem2 = gen_reg_rtx (HImode);
30957 : emit_insn (gen_kashifthi (tem2, lowpart_subreg (HImode, operands[2],
30958 : QImode),
30959 : GEN_INT (nunits / 2)));
30960 : tem2 = lowpart_subreg (QImode, tem2, HImode);
30961 : }
30962 : emit_insn (gen_kiorqi (operands[0], tem1, tem2));
30963 : DONE;
30964 : }
30965 : #undef DONE
30966 : #undef FAIL
30967 : }
30968 : static const uint8_t expand_encoding[] = {
30969 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30970 : 0x03
30971 : };
30972 : return complete_seq (expand_encoding, operands);
30973 : }
30974 :
30975 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20362 */
30976 : rtx
30977 : gen_avx512dq_vinsertf64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
30978 : {
30979 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
30980 : start_sequence ();
30981 : {
30982 : #define FAIL return (end_sequence (), nullptr)
30983 : #define DONE return end_sequence ()
30984 : #line 20370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30985 : {
30986 : int mask, selector;
30987 : mask = INTVAL (operands[3]);
30988 : selector = (GET_MODE_UNIT_SIZE (V8DFmode) == 4
30989 : ? 0xFFFF ^ (0x000F << mask * 4)
30990 : : 0xFF ^ (0x03 << mask * 2));
30991 : emit_insn (gen_avx512dq_vinsertf64x2_1_mask
30992 : (operands[0], operands[1], operands[2], GEN_INT (selector),
30993 : operands[4], operands[5]));
30994 : DONE;
30995 : }
30996 : #undef DONE
30997 : #undef FAIL
30998 : }
30999 : static const uint8_t expand_encoding[] = {
31000 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31001 : 0x03, 0x01, 0x04, 0x01, 0x05
31002 : };
31003 : return complete_seq (expand_encoding, operands);
31004 : }
31005 :
31006 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20610 */
31007 : rtx
31008 : gen_avx512f_shuf_f64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
31009 : {
31010 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
31011 : start_sequence ();
31012 : {
31013 : #define FAIL return (end_sequence (), nullptr)
31014 : #define DONE return end_sequence ()
31015 : #line 20618 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31016 : {
31017 : int mask = INTVAL (operands[3]);
31018 : emit_insn (gen_avx512f_shuf_f64x2_1_mask
31019 : (operands[0], operands[1], operands[2],
31020 : GEN_INT (((mask >> 0) & 3) * 2),
31021 : GEN_INT (((mask >> 0) & 3) * 2 + 1),
31022 : GEN_INT (((mask >> 2) & 3) * 2),
31023 : GEN_INT (((mask >> 2) & 3) * 2 + 1),
31024 : GEN_INT (((mask >> 4) & 3) * 2 + 8),
31025 : GEN_INT (((mask >> 4) & 3) * 2 + 9),
31026 : GEN_INT (((mask >> 6) & 3) * 2 + 8),
31027 : GEN_INT (((mask >> 6) & 3) * 2 + 9),
31028 : operands[4], operands[5]));
31029 : DONE;
31030 : }
31031 : #undef DONE
31032 : #undef FAIL
31033 : }
31034 : static const uint8_t expand_encoding[] = {
31035 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31036 : 0x03, 0x01, 0x04, 0x01, 0x05
31037 : };
31038 : return complete_seq (expand_encoding, operands);
31039 : }
31040 :
31041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21085 */
31042 : rtx
31043 : gen_sse2_pshufd (const rtx operand0, const rtx operand1, const rtx operand2)
31044 : {
31045 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31046 : start_sequence ();
31047 : {
31048 : #define FAIL return (end_sequence (), nullptr)
31049 : #define DONE return end_sequence ()
31050 : #line 21090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31051 : {
31052 : int mask = INTVAL (operands[2]);
31053 : emit_insn (gen_sse2_pshufd_1 (operands[0], operands[1],
31054 : GEN_INT ((mask >> 0) & 3),
31055 : GEN_INT ((mask >> 2) & 3),
31056 : GEN_INT ((mask >> 4) & 3),
31057 : GEN_INT ((mask >> 6) & 3)));
31058 : DONE;
31059 : }
31060 : #undef DONE
31061 : #undef FAIL
31062 : }
31063 : static const uint8_t expand_encoding[] = {
31064 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
31065 : };
31066 : return complete_seq (expand_encoding, operands);
31067 : }
31068 :
31069 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21477 */
31070 : extern rtx_insn *gen_split_3469 (rtx_insn *, rtx *);
31071 : rtx_insn *
31072 : gen_split_3469 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31073 : {
31074 : if (dump_file)
31075 : fprintf (dump_file, "Splitting with gen_split_3469 (sse.md:21477)\n");
31076 : start_sequence ();
31077 : #define FAIL return (end_sequence (), nullptr)
31078 : #define DONE return end_sequence ()
31079 : #line 21491 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31080 : {
31081 : operands[2] = gen_reg_rtx (SImode);
31082 : operands[3] = gen_lowpart (SImode, force_reg (V16QImode, operands[1]));
31083 : operands[4] = gen_lowpart (QImode, operands[2]);
31084 : }
31085 : #undef DONE
31086 : #undef FAIL
31087 : static const uint8_t expand_encoding[] = {
31088 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01,
31089 : 0x00, 0x01, 0x04
31090 : };
31091 : return complete_seq (expand_encoding, operands);
31092 : }
31093 :
31094 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21812 */
31095 : extern rtx_insn *gen_split_3479 (rtx_insn *, rtx *);
31096 : rtx_insn *
31097 : gen_split_3479 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31098 : {
31099 : if (dump_file)
31100 : fprintf (dump_file, "Splitting with gen_split_3479 (sse.md:21812)\n");
31101 : start_sequence ();
31102 : #define FAIL return (end_sequence (), nullptr)
31103 : #define DONE return end_sequence ()
31104 : #line 21820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31105 : {
31106 : int offs = INTVAL (operands[2]) * GET_MODE_SIZE (DImode);
31107 :
31108 : operands[1] = adjust_address (operands[1], DImode, offs);
31109 : }
31110 : #undef DONE
31111 : #undef FAIL
31112 : static const uint8_t expand_encoding[] = {
31113 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
31114 : };
31115 : return complete_seq (expand_encoding, operands);
31116 : }
31117 :
31118 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22207 */
31119 : rtx
31120 : gen_vec_unpacks_lo_v16qi (const rtx operand0, const rtx operand1)
31121 : {
31122 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31123 : start_sequence ();
31124 : {
31125 : #define FAIL return (end_sequence (), nullptr)
31126 : #define DONE return end_sequence ()
31127 : #line 22211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31128 : ix86_expand_sse_unpack (operands[0], operands[1], false, false); DONE;
31129 : #undef DONE
31130 : #undef FAIL
31131 : }
31132 : static const uint8_t expand_encoding[] = {
31133 : 0x02, 0x01, 0x00, 0x01, 0x01
31134 : };
31135 : return complete_seq (expand_encoding, operands);
31136 : }
31137 :
31138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22213 */
31139 : rtx
31140 : gen_vec_unpacks_hi_v32qi (const rtx operand0, const rtx operand1)
31141 : {
31142 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31143 : start_sequence ();
31144 : {
31145 : #define FAIL return (end_sequence (), nullptr)
31146 : #define DONE return end_sequence ()
31147 : #line 22217 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31148 : ix86_expand_sse_unpack (operands[0], operands[1], false, true); DONE;
31149 : #undef DONE
31150 : #undef FAIL
31151 : }
31152 : static const uint8_t expand_encoding[] = {
31153 : 0x02, 0x01, 0x00, 0x01, 0x01
31154 : };
31155 : return complete_seq (expand_encoding, operands);
31156 : }
31157 :
31158 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22219 */
31159 : rtx
31160 : gen_vec_unpacku_lo_v16qi (const rtx operand0, const rtx operand1)
31161 : {
31162 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31163 : start_sequence ();
31164 : {
31165 : #define FAIL return (end_sequence (), nullptr)
31166 : #define DONE return end_sequence ()
31167 : #line 22223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31168 : ix86_expand_sse_unpack (operands[0], operands[1], true, false); DONE;
31169 : #undef DONE
31170 : #undef FAIL
31171 : }
31172 : static const uint8_t expand_encoding[] = {
31173 : 0x02, 0x01, 0x00, 0x01, 0x01
31174 : };
31175 : return complete_seq (expand_encoding, operands);
31176 : }
31177 :
31178 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22247 */
31179 : rtx
31180 : gen_vec_unpacks_lo_di (const rtx operand0, const rtx operand1)
31181 : {
31182 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31183 : static const uint8_t expand_encoding[] = {
31184 : 0x1f, 0x01, 0x00, 0x32, 0x11, 0x01, 0x01, 0x00
31185 : };
31186 : return expand_rtx (expand_encoding, operands);
31187 : }
31188 :
31189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22252 */
31190 : rtx
31191 : gen_vec_unpacku_hi_v8si (const rtx operand0, const rtx operand1)
31192 : {
31193 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31194 : start_sequence ();
31195 : {
31196 : #define FAIL return (end_sequence (), nullptr)
31197 : #define DONE return end_sequence ()
31198 : #line 22256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31199 : ix86_expand_sse_unpack (operands[0], operands[1], true, true); DONE;
31200 : #undef DONE
31201 : #undef FAIL
31202 : }
31203 : static const uint8_t expand_encoding[] = {
31204 : 0x02, 0x01, 0x00, 0x01, 0x01
31205 : };
31206 : return complete_seq (expand_encoding, operands);
31207 : }
31208 :
31209 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22306 */
31210 : rtx
31211 : gen_sse2_uavgv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31212 : {
31213 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31214 : start_sequence ();
31215 : {
31216 : #define FAIL return (end_sequence (), nullptr)
31217 : #define DONE return end_sequence ()
31218 : #line 22319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31219 : {
31220 : operands[3] = CONST1_RTX(V16HImode);
31221 : ix86_fixup_binary_operands_no_copy (PLUS, V16QImode, operands);
31222 : }
31223 : #undef DONE
31224 : #undef FAIL
31225 : }
31226 : static const uint8_t expand_encoding[] = {
31227 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x4f, 0x50, 0x55,
31228 : 0x3b, 0x55, 0x3b, 0x55, 0x6f, 0x55, 0x01, 0x01,
31229 : 0x6f, 0x55, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
31230 : };
31231 : return complete_seq (expand_encoding, operands);
31232 : }
31233 :
31234 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22350 */
31235 : rtx
31236 : gen_avx2_psadbw (const rtx operand0, const rtx operand1, const rtx operand2)
31237 : {
31238 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31239 : start_sequence ();
31240 : {
31241 : #define FAIL return (end_sequence (), nullptr)
31242 : #define DONE return end_sequence ()
31243 : #line 22357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31244 : ix86_fixup_binary_operands_no_copy (PLUS, V32QImode, operands);
31245 : #undef DONE
31246 : #undef FAIL
31247 : }
31248 : static const uint8_t expand_encoding[] = {
31249 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x02, 0x01,
31250 : 0x01, 0x01, 0x02, 0x39
31251 : };
31252 : return complete_seq (expand_encoding, operands);
31253 : }
31254 :
31255 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22423 */
31256 : extern rtx_insn *gen_split_3494 (rtx_insn *, rtx *);
31257 : rtx_insn *
31258 : gen_split_3494 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31259 : {
31260 : if (dump_file)
31261 : fprintf (dump_file, "Splitting with gen_split_3494 (sse.md:22423)\n");
31262 : start_sequence ();
31263 : #define FAIL return (end_sequence (), nullptr)
31264 : #define DONE return end_sequence ()
31265 : #line 22441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31266 : operands[1] = gen_lowpart (V2DFmode, operands[1]);
31267 : #undef DONE
31268 : #undef FAIL
31269 : static const uint8_t expand_encoding[] = {
31270 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
31271 : 0x01, 0x32
31272 : };
31273 : return complete_seq (expand_encoding, operands);
31274 : }
31275 :
31276 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22466 */
31277 : extern rtx_insn *gen_split_3504 (rtx_insn *, rtx *);
31278 : rtx_insn *
31279 : gen_split_3504 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31280 : {
31281 : if (dump_file)
31282 : fprintf (dump_file, "Splitting with gen_split_3504 (sse.md:22466)\n");
31283 : start_sequence ();
31284 : #define FAIL return (end_sequence (), nullptr)
31285 : #define DONE return end_sequence ()
31286 : #line 22485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31287 : operands[1] = gen_lowpart (V8SFmode, operands[1]);
31288 : #undef DONE
31289 : #undef FAIL
31290 : static const uint8_t expand_encoding[] = {
31291 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
31292 : 0x01, 0x01, 0x01, 0x32
31293 : };
31294 : return complete_seq (expand_encoding, operands);
31295 : }
31296 :
31297 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22491 */
31298 : extern rtx_insn *gen_split_3514 (rtx_insn *, rtx *);
31299 : rtx_insn *
31300 : gen_split_3514 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31301 : {
31302 : if (dump_file)
31303 : fprintf (dump_file, "Splitting with gen_split_3514 (sse.md:22491)\n");
31304 : start_sequence ();
31305 : #define FAIL return (end_sequence (), nullptr)
31306 : #define DONE return end_sequence ()
31307 : #line 22504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31308 : operands[1] = gen_lowpart (V2DFmode, operands[1]);
31309 : #undef DONE
31310 : #undef FAIL
31311 : static const uint8_t expand_encoding[] = {
31312 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
31313 : 0x01, 0x32
31314 : };
31315 : return complete_seq (expand_encoding, operands);
31316 : }
31317 :
31318 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22599 */
31319 : extern rtx_insn *gen_split_3524 (rtx_insn *, rtx *);
31320 : rtx_insn *
31321 : gen_split_3524 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31322 : {
31323 : if (dump_file)
31324 : fprintf (dump_file, "Splitting with gen_split_3524 (sse.md:22599)\n");
31325 : start_sequence ();
31326 : #define FAIL return (end_sequence (), nullptr)
31327 : #define DONE return end_sequence ()
31328 : #line 22612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31329 : operands[2] = gen_reg_rtx (SImode);
31330 : #undef DONE
31331 : #undef FAIL
31332 : static const uint8_t expand_encoding[] = {
31333 : 0x02, 0x1f, 0x01, 0x02, 0x1a, 0x11, 0x01, 0x01,
31334 : 0x01, 0x32, 0x1f, 0x01, 0x00, 0x4b, 0x11, 0x01,
31335 : 0x02, 0x27, 0x83, 0xff, 0x7f
31336 : };
31337 : return complete_seq (expand_encoding, operands);
31338 : }
31339 :
31340 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22711 */
31341 : extern rtx_insn *gen_split_3534 (rtx_insn *, rtx *);
31342 : rtx_insn *
31343 : gen_split_3534 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31344 : {
31345 : if (dump_file)
31346 : fprintf (dump_file, "Splitting with gen_split_3534 (sse.md:22711)\n");
31347 : start_sequence ();
31348 : #define FAIL return (end_sequence (), nullptr)
31349 : #define DONE return end_sequence ()
31350 : #line 22723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31351 :
31352 : #undef DONE
31353 : #undef FAIL
31354 : static const uint8_t expand_encoding[] = {
31355 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
31356 : 0x01, 0x01, 0x01, 0x32
31357 : };
31358 : return complete_seq (expand_encoding, operands);
31359 : }
31360 :
31361 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22862 */
31362 : extern rtx_insn *gen_split_3544 (rtx_insn *, rtx *);
31363 : rtx_insn *
31364 : gen_split_3544 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31365 : {
31366 : if (dump_file)
31367 : fprintf (dump_file, "Splitting with gen_split_3544 (sse.md:22862)\n");
31368 : start_sequence ();
31369 : #define FAIL return (end_sequence (), nullptr)
31370 : #define DONE return end_sequence ()
31371 : #line 22879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31372 : operands[2] = gen_int_mode (UINTVAL (operands[2]), SImode);
31373 : #undef DONE
31374 : #undef FAIL
31375 : static const uint8_t expand_encoding[] = {
31376 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x01,
31377 : 0x01, 0x01, 0x02
31378 : };
31379 : return complete_seq (expand_encoding, operands);
31380 : }
31381 :
31382 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23155 */
31383 : extern rtx_insn *gen_split_3553 (rtx_insn *, rtx *);
31384 : rtx_insn *
31385 : gen_split_3553 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31386 : {
31387 : if (dump_file)
31388 : fprintf (dump_file, "Splitting with gen_split_3553 (sse.md:23155)\n");
31389 : start_sequence ();
31390 : #define FAIL return (end_sequence (), nullptr)
31391 : #define DONE return end_sequence ()
31392 : #line 23174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31393 : {
31394 : /* Generate SSE version of the operation. */
31395 : rtx op0 = lowpart_subreg (V4SImode, operands[0],
31396 : GET_MODE (operands[0]));
31397 : rtx op1 = lowpart_subreg (V4SImode, operands[1],
31398 : GET_MODE (operands[1]));
31399 : rtx op2 = lowpart_subreg (V4SImode, operands[2],
31400 : GET_MODE (operands[2]));
31401 : emit_insn (gen_ssse3_phsubdv4si3 (op0, op1, op2));
31402 : ix86_move_vector_high_sse_to_mmx (op0);
31403 : DONE;
31404 : }
31405 : #undef DONE
31406 : #undef FAIL
31407 : static const uint8_t expand_encoding[] = {
31408 : 0x01, 0x27, 0x00
31409 : };
31410 : return complete_seq (expand_encoding, operands);
31411 : }
31412 :
31413 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23598 */
31414 : rtx
31415 : gen_ssse3_pshufbv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31416 : {
31417 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31418 : start_sequence ();
31419 : {
31420 : #define FAIL return (end_sequence (), nullptr)
31421 : #define DONE return end_sequence ()
31422 : #line 23606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31423 : {
31424 : operands[3] = ix86_build_const_vector (V4SImode, true,
31425 : gen_int_mode (0xf7f7f7f7, SImode));
31426 : }
31427 : #undef DONE
31428 : #undef FAIL
31429 : }
31430 : static const uint8_t expand_encoding[] = {
31431 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
31432 : 0x48, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
31433 : 0x35, 0x21, 0x00, 0x31, 0x51
31434 : };
31435 : return complete_seq (expand_encoding, operands);
31436 : }
31437 :
31438 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23860 */
31439 : rtx
31440 : gen_absv8si2 (const rtx operand0, const rtx operand1)
31441 : {
31442 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31443 : start_sequence ();
31444 : {
31445 : #define FAIL return (end_sequence (), nullptr)
31446 : #define DONE return end_sequence ()
31447 : #line 23865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31448 : {
31449 : if (!TARGET_SSSE3
31450 : || ((V8SImode == V2DImode || V8SImode == V4DImode)
31451 : && !TARGET_AVX512VL))
31452 : {
31453 : ix86_expand_sse2_abs (operands[0], operands[1]);
31454 : DONE;
31455 : }
31456 : }
31457 : #undef DONE
31458 : #undef FAIL
31459 : }
31460 : static const uint8_t expand_encoding[] = {
31461 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x56, 0x01, 0x01
31462 : };
31463 : return complete_seq (expand_encoding, operands);
31464 : }
31465 :
31466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24077 */
31467 : extern rtx_insn *gen_split_3560 (rtx_insn *, rtx *);
31468 : rtx_insn *
31469 : gen_split_3560 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31470 : {
31471 : if (dump_file)
31472 : fprintf (dump_file, "Splitting with gen_split_3560 (sse.md:24077)\n");
31473 : start_sequence ();
31474 : #define FAIL return (end_sequence (), nullptr)
31475 : #define DONE return end_sequence ()
31476 : #line 24092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31477 : operands[3] = gen_lowpart (V8SFmode, operands[3]);
31478 : #undef DONE
31479 : #undef FAIL
31480 : static const uint8_t expand_encoding[] = {
31481 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01,
31482 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31483 : };
31484 : return complete_seq (expand_encoding, operands);
31485 : }
31486 :
31487 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24135 */
31488 : extern rtx_insn *gen_split_3570 (rtx_insn *, rtx *);
31489 : rtx_insn *
31490 : gen_split_3570 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31491 : {
31492 : if (dump_file)
31493 : fprintf (dump_file, "Splitting with gen_split_3570 (sse.md:24135)\n");
31494 : start_sequence ();
31495 : #define FAIL return (end_sequence (), nullptr)
31496 : #define DONE return end_sequence ()
31497 : #line 24151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31498 : {
31499 : operands[0] = gen_lowpart (V8SFmode, operands[0]);
31500 : operands[1] = gen_lowpart (V8SFmode, operands[1]);
31501 : operands[2] = gen_lowpart (V8SFmode, operands[2]);
31502 : operands[3] = gen_lowpart (V8SFmode, operands[3]);
31503 : }
31504 : #undef DONE
31505 : #undef FAIL
31506 : static const uint8_t expand_encoding[] = {
31507 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01,
31508 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31509 : };
31510 : return complete_seq (expand_encoding, operands);
31511 : }
31512 :
31513 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24350 */
31514 : extern rtx_insn *gen_split_3580 (rtx_insn *, rtx *);
31515 : rtx_insn *
31516 : gen_split_3580 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31517 : {
31518 : if (dump_file)
31519 : fprintf (dump_file, "Splitting with gen_split_3580 (sse.md:24350)\n");
31520 : start_sequence ();
31521 : static const uint8_t expand_encoding[] = {
31522 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
31523 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31524 : };
31525 : return complete_seq (expand_encoding, operands);
31526 : }
31527 :
31528 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24379 */
31529 : extern rtx_insn *gen_split_3584 (rtx_insn *, rtx *);
31530 : rtx_insn *
31531 : gen_split_3584 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31532 : {
31533 : if (dump_file)
31534 : fprintf (dump_file, "Splitting with gen_split_3584 (sse.md:24379)\n");
31535 : start_sequence ();
31536 : #define FAIL return (end_sequence (), nullptr)
31537 : #define DONE return end_sequence ()
31538 : #line 24393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31539 :
31540 : #undef DONE
31541 : #undef FAIL
31542 : static const uint8_t expand_encoding[] = {
31543 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
31544 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31545 : };
31546 : return complete_seq (expand_encoding, operands);
31547 : }
31548 :
31549 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24492 */
31550 : rtx
31551 : gen_avx2_pblendw (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
31552 : {
31553 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
31554 : start_sequence ();
31555 : {
31556 : #define FAIL return (end_sequence (), nullptr)
31557 : #define DONE return end_sequence ()
31558 : #line 24499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31559 : {
31560 : HOST_WIDE_INT val = INTVAL (operands[3]) & 0xff;
31561 : operands[3] = GEN_INT (val << 8 | val);
31562 : }
31563 : #undef DONE
31564 : #undef FAIL
31565 : }
31566 : static const uint8_t expand_encoding[] = {
31567 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x01,
31568 : 0x02, 0x01, 0x01, 0x01, 0x03
31569 : };
31570 : return complete_seq (expand_encoding, operands);
31571 : }
31572 :
31573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24642 */
31574 : rtx
31575 : gen_extendv16qiv16hi2 (const rtx operand0, const rtx operand1)
31576 : {
31577 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31578 : static const uint8_t expand_encoding[] = {
31579 : 0x1f, 0x01, 0x00, 0x6e, 0x55, 0x01, 0x01
31580 : };
31581 : return expand_rtx (expand_encoding, operands);
31582 : }
31583 :
31584 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24676 */
31585 : extern rtx_insn *gen_split_3598 (rtx_insn *, rtx *);
31586 : rtx_insn *
31587 : gen_split_3598 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31588 : {
31589 : if (dump_file)
31590 : fprintf (dump_file, "Splitting with gen_split_3598 (sse.md:24676)\n");
31591 : start_sequence ();
31592 : #define FAIL return (end_sequence (), nullptr)
31593 : #define DONE return end_sequence ()
31594 : #line 24691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31595 : {
31596 : operands[0] = lowpart_subreg (V32HImode, operands[0], V64QImode);
31597 : operands[1] = lowpart_subreg (V32QImode, operands[1], V8SImode);
31598 : }
31599 : #undef DONE
31600 : #undef FAIL
31601 : static const uint8_t expand_encoding[] = {
31602 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x5a, 0x01, 0x01
31603 : };
31604 : return complete_seq (expand_encoding, operands);
31605 : }
31606 :
31607 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24851 */
31608 : rtx
31609 : gen_extendv8qiv8hi2 (const rtx operand0, const rtx operand1)
31610 : {
31611 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31612 : start_sequence ();
31613 : {
31614 : #define FAIL return (end_sequence (), nullptr)
31615 : #define DONE return end_sequence ()
31616 : #line 24856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31617 : {
31618 : if (!TARGET_SSE4_1)
31619 : {
31620 : ix86_expand_sse_extend (operands[0], operands[1], false);
31621 : DONE;
31622 : }
31623 :
31624 : if (!MEM_P (operands[1]))
31625 : {
31626 : rtx op1 = force_reg (V8QImode, operands[1]);
31627 : op1 = lowpart_subreg (V16QImode, op1, V8QImode);
31628 : emit_insn (gen_sse4_1_sign_extendv8qiv8hi2 (operands[0], op1));
31629 : DONE;
31630 : }
31631 : }
31632 : #undef DONE
31633 : #undef FAIL
31634 : }
31635 : static const uint8_t expand_encoding[] = {
31636 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x50, 0x01, 0x01
31637 : };
31638 : return complete_seq (expand_encoding, operands);
31639 : }
31640 :
31641 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25010 */
31642 : extern rtx_insn *gen_split_3612 (rtx_insn *, rtx *);
31643 : rtx_insn *
31644 : gen_split_3612 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31645 : {
31646 : if (dump_file)
31647 : fprintf (dump_file, "Splitting with gen_split_3612 (sse.md:25010)\n");
31648 : start_sequence ();
31649 : #define FAIL return (end_sequence (), nullptr)
31650 : #define DONE return end_sequence ()
31651 : #line 25030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31652 : operands[1] = adjust_address_nv (operands[1], V4QImode, 0);
31653 : #undef DONE
31654 : #undef FAIL
31655 : static const uint8_t expand_encoding[] = {
31656 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x51, 0x01, 0x01
31657 : };
31658 : return complete_seq (expand_encoding, operands);
31659 : }
31660 :
31661 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25087 */
31662 : rtx
31663 : gen_zero_extendv16hiv16si2 (const rtx operand0, const rtx operand1)
31664 : {
31665 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31666 : static const uint8_t expand_encoding[] = {
31667 : 0x1f, 0x01, 0x00, 0x6f, 0x5b, 0x01, 0x01
31668 : };
31669 : return expand_rtx (expand_encoding, operands);
31670 : }
31671 :
31672 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25165 */
31673 : extern rtx_insn *gen_split_3623 (rtx_insn *, rtx *);
31674 : rtx_insn *
31675 : gen_split_3623 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31676 : {
31677 : if (dump_file)
31678 : fprintf (dump_file, "Splitting with gen_split_3623 (sse.md:25165)\n");
31679 : start_sequence ();
31680 : #define FAIL return (end_sequence (), nullptr)
31681 : #define DONE return end_sequence ()
31682 : #line 25180 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31683 : {
31684 : operands[0] = lowpart_subreg (V8SImode, operands[0], V16HImode);
31685 : operands[1] = lowpart_subreg (V8HImode, operands[1], V16QImode);
31686 : }
31687 : #undef DONE
31688 : #undef FAIL
31689 : static const uint8_t expand_encoding[] = {
31690 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x56, 0x01, 0x01
31691 : };
31692 : return complete_seq (expand_encoding, operands);
31693 : }
31694 :
31695 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25310 */
31696 : extern rtx_insn *gen_split_3631 (rtx_insn *, rtx *);
31697 : rtx_insn *
31698 : gen_split_3631 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31699 : {
31700 : if (dump_file)
31701 : fprintf (dump_file, "Splitting with gen_split_3631 (sse.md:25310)\n");
31702 : start_sequence ();
31703 : #define FAIL return (end_sequence (), nullptr)
31704 : #define DONE return end_sequence ()
31705 : #line 25330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31706 : {
31707 : operands[0] = lowpart_subreg (V4SImode, operands[0], V8HImode);
31708 : if (MEM_P (operands[1]))
31709 : {
31710 : operands[1] = lowpart_subreg (V4HImode, operands[1], V8QImode);
31711 : operands[1] = gen_rtx_ZERO_EXTEND (V4SImode, operands[1]);
31712 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
31713 : DONE;
31714 : }
31715 : operands[1] = lowpart_subreg (V8HImode, operands[1], V8QImode);
31716 : }
31717 : #undef DONE
31718 : #undef FAIL
31719 : static const uint8_t expand_encoding[] = {
31720 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x51, 0x81, 0x0a,
31721 : 0x49, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00,
31722 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03
31723 : };
31724 : return complete_seq (expand_encoding, operands);
31725 : }
31726 :
31727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25480 */
31728 : extern rtx_insn *gen_split_3641 (rtx_insn *, rtx *);
31729 : rtx_insn *
31730 : gen_split_3641 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31731 : {
31732 : if (dump_file)
31733 : fprintf (dump_file, "Splitting with gen_split_3641 (sse.md:25480)\n");
31734 : start_sequence ();
31735 : #define FAIL return (end_sequence (), nullptr)
31736 : #define DONE return end_sequence ()
31737 : #line 25506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31738 : operands[1] = adjust_address_nv (operands[1], V4QImode, 0);
31739 : #undef DONE
31740 : #undef FAIL
31741 : static const uint8_t expand_encoding[] = {
31742 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6f,
31743 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31744 : };
31745 : return complete_seq (expand_encoding, operands);
31746 : }
31747 :
31748 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25635 */
31749 : extern rtx_insn *gen_split_3645 (rtx_insn *, rtx *);
31750 : rtx_insn *
31751 : gen_split_3645 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31752 : {
31753 : if (dump_file)
31754 : fprintf (dump_file, "Splitting with gen_split_3645 (sse.md:25635)\n");
31755 : start_sequence ();
31756 : #define FAIL return (end_sequence (), nullptr)
31757 : #define DONE return end_sequence ()
31758 : #line 25651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31759 : operands[1] = adjust_address_nv (operands[1], V4HImode, 0);
31760 : #undef DONE
31761 : #undef FAIL
31762 : static const uint8_t expand_encoding[] = {
31763 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01
31764 : };
31765 : return complete_seq (expand_encoding, operands);
31766 : }
31767 :
31768 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25771 */
31769 : rtx
31770 : gen_extendv2hiv2di2 (const rtx operand0, const rtx operand1)
31771 : {
31772 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31773 : start_sequence ();
31774 : {
31775 : #define FAIL return (end_sequence (), nullptr)
31776 : #define DONE return end_sequence ()
31777 : #line 25776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31778 : {
31779 : if (!MEM_P (operands[1]))
31780 : {
31781 : rtx op1 = force_reg (V2HImode, operands[1]);
31782 : op1 = lowpart_subreg (V8HImode, op1, V2HImode);
31783 : emit_insn (gen_sse4_1_sign_extendv2hiv2di2 (operands[0], op1));
31784 : DONE;
31785 : }
31786 : }
31787 : #undef DONE
31788 : #undef FAIL
31789 : }
31790 : static const uint8_t expand_encoding[] = {
31791 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x52, 0x01, 0x01
31792 : };
31793 : return complete_seq (expand_encoding, operands);
31794 : }
31795 :
31796 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25937 */
31797 : extern rtx_insn *gen_split_3659 (rtx_insn *, rtx *);
31798 : rtx_insn *
31799 : gen_split_3659 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31800 : {
31801 : if (dump_file)
31802 : fprintf (dump_file, "Splitting with gen_split_3659 (sse.md:25937)\n");
31803 : start_sequence ();
31804 : #define FAIL return (end_sequence (), nullptr)
31805 : #define DONE return end_sequence ()
31806 : #line 25958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31807 : operands[1] = adjust_address_nv (operands[1], V2SImode, 0);
31808 : #undef DONE
31809 : #undef FAIL
31810 : static const uint8_t expand_encoding[] = {
31811 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x6e,
31812 : 0x52, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31813 : };
31814 : return complete_seq (expand_encoding, operands);
31815 : }
31816 :
31817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26076 */
31818 : rtx
31819 : gen_sse4_1_ptestzv2df (const rtx operand0, const rtx operand1)
31820 : {
31821 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31822 : static const uint8_t expand_encoding[] = {
31823 : 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02, 0x01,
31824 : 0x00, 0x01, 0x01, 0x81, 0x03
31825 : };
31826 : return expand_rtx (expand_encoding, operands);
31827 : }
31828 :
31829 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26084 */
31830 : rtx
31831 : gen_sse4_1_ptestcv8hi (const rtx operand0, const rtx operand1)
31832 : {
31833 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31834 : static const uint8_t expand_encoding[] = {
31835 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31836 : 0x00, 0x01, 0x01, 0x81, 0x03
31837 : };
31838 : return expand_rtx (expand_encoding, operands);
31839 : }
31840 :
31841 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26084 */
31842 : rtx
31843 : gen_avx_ptestcv2ti (const rtx operand0, const rtx operand1)
31844 : {
31845 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31846 : static const uint8_t expand_encoding[] = {
31847 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31848 : 0x00, 0x01, 0x01, 0x81, 0x03
31849 : };
31850 : return expand_rtx (expand_encoding, operands);
31851 : }
31852 :
31853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26092 */
31854 : rtx
31855 : gen_avx_ptestv32qi (const rtx operand0, const rtx operand1)
31856 : {
31857 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31858 : static const uint8_t expand_encoding[] = {
31859 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31860 : 0x00, 0x01, 0x01, 0x81, 0x03
31861 : };
31862 : return expand_rtx (expand_encoding, operands);
31863 : }
31864 :
31865 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26113 */
31866 : extern rtx_insn *gen_split_3666 (rtx_insn *, rtx *);
31867 : rtx_insn *
31868 : gen_split_3666 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31869 : {
31870 : if (dump_file)
31871 : fprintf (dump_file, "Splitting with gen_split_3666 (sse.md:26113)\n");
31872 : start_sequence ();
31873 : static const uint8_t expand_encoding[] = {
31874 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31875 : 0x01, 0x00, 0x01, 0x01, 0x81, 0x03
31876 : };
31877 : return complete_seq (expand_encoding, operands);
31878 : }
31879 :
31880 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26113 */
31881 : extern rtx_insn *gen_split_3676 (rtx_insn *, rtx *);
31882 : rtx_insn *
31883 : gen_split_3676 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31884 : {
31885 : if (dump_file)
31886 : fprintf (dump_file, "Splitting with gen_split_3676 (sse.md:26113)\n");
31887 : start_sequence ();
31888 : static const uint8_t expand_encoding[] = {
31889 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31890 : 0x01, 0x00, 0x01, 0x01, 0x81, 0x03
31891 : };
31892 : return complete_seq (expand_encoding, operands);
31893 : }
31894 :
31895 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26127 */
31896 : extern rtx_insn *gen_split_3686 (rtx_insn *, rtx *);
31897 : rtx_insn *
31898 : gen_split_3686 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31899 : {
31900 : if (dump_file)
31901 : fprintf (dump_file, "Splitting with gen_split_3686 (sse.md:26127)\n");
31902 : start_sequence ();
31903 : static const uint8_t expand_encoding[] = {
31904 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01,
31905 : 0x27, 0x00, 0x2a
31906 : };
31907 : return complete_seq (expand_encoding, operands);
31908 : }
31909 :
31910 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31911 : extern rtx_insn *gen_split_3696 (rtx_insn *, rtx *);
31912 : rtx_insn *
31913 : gen_split_3696 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31914 : {
31915 : if (dump_file)
31916 : fprintf (dump_file, "Splitting with gen_split_3696 (sse.md:26139)\n");
31917 : start_sequence ();
31918 : static const uint8_t expand_encoding[] = {
31919 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31920 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31921 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31922 : };
31923 : return complete_seq (expand_encoding, operands);
31924 : }
31925 :
31926 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31927 : extern rtx_insn *gen_split_3706 (rtx_insn *, rtx *);
31928 : rtx_insn *
31929 : gen_split_3706 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31930 : {
31931 : if (dump_file)
31932 : fprintf (dump_file, "Splitting with gen_split_3706 (sse.md:26139)\n");
31933 : start_sequence ();
31934 : static const uint8_t expand_encoding[] = {
31935 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31936 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31937 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31938 : };
31939 : return complete_seq (expand_encoding, operands);
31940 : }
31941 :
31942 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31943 : extern rtx_insn *gen_split_3716 (rtx_insn *, rtx *);
31944 : rtx_insn *
31945 : gen_split_3716 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31946 : {
31947 : if (dump_file)
31948 : fprintf (dump_file, "Splitting with gen_split_3716 (sse.md:26139)\n");
31949 : start_sequence ();
31950 : static const uint8_t expand_encoding[] = {
31951 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31952 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31953 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31954 : };
31955 : return complete_seq (expand_encoding, operands);
31956 : }
31957 :
31958 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31959 : extern rtx_insn *gen_split_3726 (rtx_insn *, rtx *);
31960 : rtx_insn *
31961 : gen_split_3726 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31962 : {
31963 : if (dump_file)
31964 : fprintf (dump_file, "Splitting with gen_split_3726 (sse.md:26139)\n");
31965 : start_sequence ();
31966 : static const uint8_t expand_encoding[] = {
31967 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31968 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31969 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31970 : };
31971 : return complete_seq (expand_encoding, operands);
31972 : }
31973 :
31974 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31975 : extern rtx_insn *gen_split_3736 (rtx_insn *, rtx *);
31976 : rtx_insn *
31977 : gen_split_3736 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31978 : {
31979 : if (dump_file)
31980 : fprintf (dump_file, "Splitting with gen_split_3736 (sse.md:26139)\n");
31981 : start_sequence ();
31982 : static const uint8_t expand_encoding[] = {
31983 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31984 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31985 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31986 : };
31987 : return complete_seq (expand_encoding, operands);
31988 : }
31989 :
31990 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31991 : extern rtx_insn *gen_split_3746 (rtx_insn *, rtx *);
31992 : rtx_insn *
31993 : gen_split_3746 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31994 : {
31995 : if (dump_file)
31996 : fprintf (dump_file, "Splitting with gen_split_3746 (sse.md:26139)\n");
31997 : start_sequence ();
31998 : static const uint8_t expand_encoding[] = {
31999 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32000 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
32001 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
32002 : };
32003 : return complete_seq (expand_encoding, operands);
32004 : }
32005 :
32006 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26154 */
32007 : extern rtx_insn *gen_split_3756 (rtx_insn *, rtx *);
32008 : rtx_insn *
32009 : gen_split_3756 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32010 : {
32011 : if (dump_file)
32012 : fprintf (dump_file, "Splitting with gen_split_3756 (sse.md:26154)\n");
32013 : start_sequence ();
32014 : static const uint8_t expand_encoding[] = {
32015 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32016 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x33,
32017 : 0x00, 0x01, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11,
32018 : 0x27, 0x00
32019 : };
32020 : return complete_seq (expand_encoding, operands);
32021 : }
32022 :
32023 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26170 */
32024 : extern rtx_insn *gen_split_3766 (rtx_insn *, rtx *);
32025 : rtx_insn *
32026 : gen_split_3766 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32027 : {
32028 : if (dump_file)
32029 : fprintf (dump_file, "Splitting with gen_split_3766 (sse.md:26170)\n");
32030 : start_sequence ();
32031 : static const uint8_t expand_encoding[] = {
32032 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32033 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x2f,
32034 : 0x39, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27,
32035 : 0x00, 0x01, 0x00, 0x2f
32036 : };
32037 : return complete_seq (expand_encoding, operands);
32038 : }
32039 :
32040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26193 */
32041 : extern rtx_insn *gen_split_3776 (rtx_insn *, rtx *);
32042 : rtx_insn *
32043 : gen_split_3776 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32044 : {
32045 : if (dump_file)
32046 : fprintf (dump_file, "Splitting with gen_split_3776 (sse.md:26193)\n");
32047 : start_sequence ();
32048 : #define FAIL return (end_sequence (), nullptr)
32049 : #define DONE return end_sequence ()
32050 : #line 26213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32051 : {
32052 : if (MEM_P (operands[0]))
32053 : operands[3] = force_reg (V16QImode, operands[0]);
32054 : else
32055 : operands[3] = operands[0];
32056 : }
32057 : #undef DONE
32058 : #undef FAIL
32059 : static const uint8_t expand_encoding[] = {
32060 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
32061 : 0x01, 0x03, 0x01, 0x03, 0x81, 0x03
32062 : };
32063 : return complete_seq (expand_encoding, operands);
32064 : }
32065 :
32066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26220 */
32067 : rtx
32068 : gen_nearbyintv16sf2 (const rtx operand0, const rtx operand1)
32069 : {
32070 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32071 : start_sequence ();
32072 : {
32073 : #define FAIL _Pragma ("GCC error \"nearbyintv16sf2 cannot FAIL\"") (void)0
32074 : #define DONE return end_sequence ()
32075 : #line 26227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32076 : operands[2] = GEN_INT (ROUND_MXCSR | ROUND_NO_EXC);
32077 : #undef DONE
32078 : #undef FAIL
32079 : }
32080 : static const uint8_t expand_encoding[] = {
32081 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x01,
32082 : 0x01, 0x01, 0x02, 0x5f
32083 : };
32084 : return complete_seq (expand_encoding, operands);
32085 : }
32086 :
32087 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26229 */
32088 : rtx
32089 : gen_rintv8sf2 (const rtx operand0, const rtx operand1)
32090 : {
32091 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32092 : start_sequence ();
32093 : {
32094 : #define FAIL _Pragma ("GCC error \"rintv8sf2 cannot FAIL\"") (void)0
32095 : #define DONE return end_sequence ()
32096 : #line 26236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32097 : operands[2] = GEN_INT (ROUND_MXCSR);
32098 : #undef DONE
32099 : #undef FAIL
32100 : }
32101 : static const uint8_t expand_encoding[] = {
32102 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01,
32103 : 0x01, 0x01, 0x02, 0x5f
32104 : };
32105 : return complete_seq (expand_encoding, operands);
32106 : }
32107 :
32108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26239 */
32109 : rtx
32110 : gen_lrintv2dfv2di2 (const rtx operand0, const rtx operand1)
32111 : {
32112 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32113 : static const uint8_t expand_encoding[] = {
32114 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
32115 : 0x2f
32116 : };
32117 : return expand_rtx (expand_encoding, operands);
32118 : }
32119 :
32120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26414 */
32121 : rtx
32122 : gen_floorv16hf2 (const rtx operand0, const rtx operand1)
32123 : {
32124 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32125 : start_sequence ();
32126 : {
32127 : #define FAIL _Pragma ("GCC error \"floorv16hf2 cannot FAIL\"") (void)0
32128 : #define DONE return end_sequence ()
32129 : #line 26421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32130 : operands[2] = GEN_INT (ROUND_FLOOR | ROUND_NO_EXC);
32131 : #undef DONE
32132 : #undef FAIL
32133 : }
32134 : static const uint8_t expand_encoding[] = {
32135 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01,
32136 : 0x01, 0x01, 0x02, 0x5f
32137 : };
32138 : return complete_seq (expand_encoding, operands);
32139 : }
32140 :
32141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26414 */
32142 : rtx
32143 : gen_floorv2df2 (const rtx operand0, const rtx operand1)
32144 : {
32145 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32146 : start_sequence ();
32147 : {
32148 : #define FAIL _Pragma ("GCC error \"floorv2df2 cannot FAIL\"") (void)0
32149 : #define DONE return end_sequence ()
32150 : #line 26421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32151 : operands[2] = GEN_INT (ROUND_FLOOR | ROUND_NO_EXC);
32152 : #undef DONE
32153 : #undef FAIL
32154 : }
32155 : static const uint8_t expand_encoding[] = {
32156 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01,
32157 : 0x01, 0x01, 0x02, 0x5f
32158 : };
32159 : return complete_seq (expand_encoding, operands);
32160 : }
32161 :
32162 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26445 */
32163 : rtx
32164 : gen_ceilv32hf2 (const rtx operand0, const rtx operand1)
32165 : {
32166 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32167 : start_sequence ();
32168 : {
32169 : #define FAIL _Pragma ("GCC error \"ceilv32hf2 cannot FAIL\"") (void)0
32170 : #define DONE return end_sequence ()
32171 : #line 26452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32172 : operands[2] = GEN_INT (ROUND_CEIL | ROUND_NO_EXC);
32173 : #undef DONE
32174 : #undef FAIL
32175 : }
32176 : static const uint8_t expand_encoding[] = {
32177 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01,
32178 : 0x01, 0x01, 0x02, 0x5f
32179 : };
32180 : return complete_seq (expand_encoding, operands);
32181 : }
32182 :
32183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26445 */
32184 : rtx
32185 : gen_ceilv2df2 (const rtx operand0, const rtx operand1)
32186 : {
32187 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32188 : start_sequence ();
32189 : {
32190 : #define FAIL _Pragma ("GCC error \"ceilv2df2 cannot FAIL\"") (void)0
32191 : #define DONE return end_sequence ()
32192 : #line 26452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32193 : operands[2] = GEN_INT (ROUND_CEIL | ROUND_NO_EXC);
32194 : #undef DONE
32195 : #undef FAIL
32196 : }
32197 : static const uint8_t expand_encoding[] = {
32198 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01,
32199 : 0x01, 0x01, 0x02, 0x5f
32200 : };
32201 : return complete_seq (expand_encoding, operands);
32202 : }
32203 :
32204 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26476 */
32205 : rtx
32206 : gen_btruncv32hf2 (const rtx operand0, const rtx operand1)
32207 : {
32208 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32209 : start_sequence ();
32210 : {
32211 : #define FAIL _Pragma ("GCC error \"btruncv32hf2 cannot FAIL\"") (void)0
32212 : #define DONE return end_sequence ()
32213 : #line 26483 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32214 : operands[2] = GEN_INT (ROUND_TRUNC | ROUND_NO_EXC);
32215 : #undef DONE
32216 : #undef FAIL
32217 : }
32218 : static const uint8_t expand_encoding[] = {
32219 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01,
32220 : 0x01, 0x01, 0x02, 0x5f
32221 : };
32222 : return complete_seq (expand_encoding, operands);
32223 : }
32224 :
32225 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26485 */
32226 : rtx
32227 : gen_roundv32hf2 (const rtx operand0, const rtx operand1)
32228 : {
32229 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1 };
32230 : start_sequence ();
32231 : {
32232 : #define FAIL _Pragma ("GCC error \"roundv32hf2 cannot FAIL\"") (void)0
32233 : #define DONE return end_sequence ()
32234 : #line 26495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32235 : {
32236 : machine_mode scalar_mode;
32237 : const struct real_format *fmt;
32238 : REAL_VALUE_TYPE pred_half, half_minus_pred_half;
32239 : rtx half, vec_half;
32240 :
32241 : scalar_mode = GET_MODE_INNER (V32HFmode);
32242 :
32243 : /* load nextafter (0.5, 0.0) */
32244 : fmt = REAL_MODE_FORMAT (scalar_mode);
32245 : real_2expN (&half_minus_pred_half, -(fmt->p) - 1, scalar_mode);
32246 : real_arithmetic (&pred_half, MINUS_EXPR, &dconsthalf, &half_minus_pred_half);
32247 : half = const_double_from_real_value (pred_half, scalar_mode);
32248 :
32249 : vec_half = ix86_build_const_vector (V32HFmode, true, half);
32250 : vec_half = force_reg (V32HFmode, vec_half);
32251 :
32252 : operands[2] = gen_reg_rtx (V32HFmode);
32253 : emit_insn (gen_copysignv32hf3 (operands[2], vec_half, operands[1]));
32254 :
32255 : operands[3] = gen_reg_rtx (V32HFmode);
32256 : operands[4] = GEN_INT (ROUND_TRUNC);
32257 : }
32258 : #undef DONE
32259 : #undef FAIL
32260 : }
32261 : static const uint8_t expand_encoding[] = {
32262 : 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x73, 0x01, 0x01,
32263 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02,
32264 : 0x01, 0x03, 0x01, 0x04, 0x5f
32265 : };
32266 : return complete_seq (expand_encoding, operands);
32267 : }
32268 :
32269 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26519 */
32270 : rtx
32271 : gen_lroundv8hfv8hi2 (const rtx operand0, const rtx operand1)
32272 : {
32273 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32274 : start_sequence ();
32275 : {
32276 : #define FAIL _Pragma ("GCC error \"lroundv8hfv8hi2 cannot FAIL\"") (void)0
32277 : #define DONE return end_sequence ()
32278 : #line 26523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32279 : {
32280 : rtx tmp = gen_reg_rtx (V8HFmode);
32281 : emit_insn (gen_roundv8hf2 (tmp, operands[1]));
32282 : emit_insn (gen_fix_truncv8hfv8hi2 (operands[0], tmp));
32283 : DONE;
32284 : }
32285 : #undef DONE
32286 : #undef FAIL
32287 : }
32288 : static const uint8_t expand_encoding[] = {
32289 : 0x02, 0x01, 0x00, 0x01, 0x01
32290 : };
32291 : return complete_seq (expand_encoding, operands);
32292 : }
32293 :
32294 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26555 */
32295 : rtx
32296 : gen_roundv8df2_vec_pack_sfix (const rtx operand0, const rtx operand1, const rtx operand2)
32297 : {
32298 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32299 : start_sequence ();
32300 : {
32301 : #define FAIL return (end_sequence (), nullptr)
32302 : #define DONE return end_sequence ()
32303 : #line 26560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32304 : {
32305 : rtx tmp0, tmp1;
32306 :
32307 : if (V8DFmode == V2DFmode
32308 : && TARGET_AVX && !TARGET_PREFER_AVX128 && optimize_insn_for_speed_p ())
32309 : {
32310 : rtx tmp2 = gen_reg_rtx (V4DFmode);
32311 :
32312 : tmp0 = gen_reg_rtx (V4DFmode);
32313 : tmp1 = force_reg (V2DFmode, operands[1]);
32314 :
32315 : emit_insn (gen_avx_vec_concatv4df (tmp0, tmp1, operands[2]));
32316 : emit_insn (gen_roundv4df2 (tmp2, tmp0));
32317 : emit_insn (gen_fix_truncv4dfv4si2 (operands[0], tmp2));
32318 : }
32319 : else
32320 : {
32321 : tmp0 = gen_reg_rtx (V8DFmode);
32322 : tmp1 = gen_reg_rtx (V8DFmode);
32323 :
32324 : emit_insn (gen_roundv8df2 (tmp0, operands[1]));
32325 : emit_insn (gen_roundv8df2 (tmp1, operands[2]));
32326 :
32327 : emit_insn
32328 : (gen_vec_pack_sfix_trunc_v8df (operands[0], tmp0, tmp1));
32329 : }
32330 : DONE;
32331 : }
32332 : #undef DONE
32333 : #undef FAIL
32334 : }
32335 : static const uint8_t expand_encoding[] = {
32336 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32337 : };
32338 : return complete_seq (expand_encoding, operands);
32339 : }
32340 :
32341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27001 */
32342 : extern rtx_insn *gen_split_3795 (rtx_insn *, rtx *);
32343 : rtx_insn *
32344 : gen_split_3795 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32345 : {
32346 : if (dump_file)
32347 : fprintf (dump_file, "Splitting with gen_split_3795 (sse.md:27001)\n");
32348 : start_sequence ();
32349 : static const uint8_t expand_encoding[] = {
32350 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x6e, 0x01, 0x03,
32351 : 0x01, 0x02, 0x01, 0x01
32352 : };
32353 : return complete_seq (expand_encoding, operands);
32354 : }
32355 :
32356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27013 */
32357 : extern rtx_insn *gen_split_3804 (rtx_insn *, rtx *);
32358 : rtx_insn *
32359 : gen_split_3804 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32360 : {
32361 : if (dump_file)
32362 : fprintf (dump_file, "Splitting with gen_split_3804 (sse.md:27013)\n");
32363 : start_sequence ();
32364 : static const uint8_t expand_encoding[] = {
32365 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x50, 0x01, 0x03,
32366 : 0x01, 0x01, 0x01, 0x02
32367 : };
32368 : return complete_seq (expand_encoding, operands);
32369 : }
32370 :
32371 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27013 */
32372 : extern rtx_insn *gen_split_3814 (rtx_insn *, rtx *);
32373 : rtx_insn *
32374 : gen_split_3814 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32375 : {
32376 : if (dump_file)
32377 : fprintf (dump_file, "Splitting with gen_split_3814 (sse.md:27013)\n");
32378 : start_sequence ();
32379 : static const uint8_t expand_encoding[] = {
32380 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x6b, 0x01, 0x03,
32381 : 0x01, 0x01, 0x01, 0x02
32382 : };
32383 : return complete_seq (expand_encoding, operands);
32384 : }
32385 :
32386 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27416 */
32387 : rtx
32388 : gen_vrotrv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32389 : {
32390 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32391 : start_sequence ();
32392 : {
32393 : #define FAIL return (end_sequence (), nullptr)
32394 : #define DONE return end_sequence ()
32395 : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32396 : {
32397 : rtx reg = gen_reg_rtx (V8HImode);
32398 : emit_insn (gen_negv8hi2 (reg, operands[2]));
32399 : emit_insn (gen_xop_vrotlv8hi3 (operands[0], operands[1], reg));
32400 : DONE;
32401 : }
32402 : #undef DONE
32403 : #undef FAIL
32404 : }
32405 : static const uint8_t expand_encoding[] = {
32406 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32407 : };
32408 : return complete_seq (expand_encoding, operands);
32409 : }
32410 :
32411 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27428 */
32412 : rtx
32413 : gen_vrotlv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32414 : {
32415 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32416 : start_sequence ();
32417 : {
32418 : #define FAIL return (end_sequence (), nullptr)
32419 : #define DONE return end_sequence ()
32420 : #line 27433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32421 : {
32422 : emit_insn (gen_xop_vrotlv8hi3 (operands[0], operands[1], operands[2]));
32423 : DONE;
32424 : }
32425 : #undef DONE
32426 : #undef FAIL
32427 : }
32428 : static const uint8_t expand_encoding[] = {
32429 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32430 : };
32431 : return complete_seq (expand_encoding, operands);
32432 : }
32433 :
32434 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27495 */
32435 : rtx
32436 : gen_vashlv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32437 : {
32438 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32439 : start_sequence ();
32440 : {
32441 : #define FAIL return (end_sequence (), nullptr)
32442 : #define DONE return end_sequence ()
32443 : #line 27501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32444 : {
32445 : if (V32QImode == V32QImode || V32QImode == V64QImode)
32446 : {
32447 : ix86_expand_vecop_qihi (ASHIFT, operands[0], operands[1], operands[2]);
32448 : DONE;
32449 : }
32450 : }
32451 : #undef DONE
32452 : #undef FAIL
32453 : }
32454 : static const uint8_t expand_encoding[] = {
32455 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x54, 0x01, 0x01,
32456 : 0x01, 0x02
32457 : };
32458 : return complete_seq (expand_encoding, operands);
32459 : }
32460 :
32461 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27509 */
32462 : rtx
32463 : gen_vlshrv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32464 : {
32465 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32466 : static const uint8_t expand_encoding[] = {
32467 : 0x1f, 0x01, 0x00, 0x50, 0x5c, 0x01, 0x01, 0x01,
32468 : 0x02
32469 : };
32470 : return expand_rtx (expand_encoding, operands);
32471 : }
32472 :
32473 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27551 */
32474 : rtx
32475 : gen_vashrv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32476 : {
32477 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32478 : start_sequence ();
32479 : {
32480 : #define FAIL return (end_sequence (), nullptr)
32481 : #define DONE return end_sequence ()
32482 : #line 27557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32483 : {
32484 : if (TARGET_XOP)
32485 : {
32486 : rtx neg = gen_reg_rtx (V8HImode);
32487 : emit_insn (gen_negv8hi2 (neg, operands[2]));
32488 : emit_insn (gen_xop_shav8hi3 (operands[0], operands[1], neg));
32489 : DONE;
32490 : }
32491 : else if(V8HImode == V16QImode)
32492 : {
32493 : ix86_expand_vecop_qihi (ASHIFTRT, operands[0],operands[1], operands[2]);
32494 : DONE;
32495 : }
32496 : }
32497 : #undef DONE
32498 : #undef FAIL
32499 : }
32500 : static const uint8_t expand_encoding[] = {
32501 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x50, 0x01, 0x01,
32502 : 0x01, 0x02
32503 : };
32504 : return complete_seq (expand_encoding, operands);
32505 : }
32506 :
32507 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27713 */
32508 : rtx
32509 : gen_ashrv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32510 : {
32511 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32512 : start_sequence ();
32513 : {
32514 : #define FAIL return (end_sequence (), nullptr)
32515 : #define DONE return end_sequence ()
32516 : #line 27719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32517 : {
32518 : if (TARGET_XOP && V64QImode == V16QImode)
32519 : {
32520 : bool negate = false;
32521 : rtx (*gen) (rtx, rtx, rtx);
32522 : rtx tmp, par;
32523 : int i;
32524 :
32525 : if (ASHIFTRT != ASHIFT)
32526 : {
32527 : if (CONST_INT_P (operands[2]))
32528 : operands[2] = GEN_INT (-INTVAL (operands[2]));
32529 : else
32530 : negate = true;
32531 : }
32532 : par = gen_rtx_PARALLEL (V16QImode, rtvec_alloc (16));
32533 : tmp = lowpart_subreg (QImode, operands[2], SImode);
32534 : for (i = 0; i < 16; i++)
32535 : XVECEXP (par, 0, i) = tmp;
32536 :
32537 : tmp = gen_reg_rtx (V16QImode);
32538 : emit_insn (gen_vec_initv16qiqi (tmp, par));
32539 :
32540 : if (negate)
32541 : emit_insn (gen_negv16qi2 (tmp, tmp));
32542 :
32543 : gen = (ASHIFTRT == LSHIFTRT ? gen_xop_shlv16qi3 : gen_xop_shav16qi3);
32544 : emit_insn (gen (operands[0], operands[1], tmp));
32545 : }
32546 : else if (TARGET_GFNI && CONST_INT_P (operands[2])
32547 : && (64 == 64
32548 : || !(INTVAL (operands[2]) == 7 && ASHIFTRT == ASHIFTRT)))
32549 : {
32550 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2],
32551 : ASHIFTRT);
32552 : emit_insn (gen_vgf2p8affineqb_v64qi (operands[0], operands[1], matrix,
32553 : const0_rtx));
32554 : }
32555 : else
32556 : ix86_expand_vecop_qihi (ASHIFTRT, operands[0], operands[1], operands[2]);
32557 : DONE;
32558 : }
32559 : #undef DONE
32560 : #undef FAIL
32561 : }
32562 : static const uint8_t expand_encoding[] = {
32563 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x59, 0x01, 0x01,
32564 : 0x01, 0x02
32565 : };
32566 : return complete_seq (expand_encoding, operands);
32567 : }
32568 :
32569 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27775 */
32570 : rtx
32571 : gen_rotlv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32572 : {
32573 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32574 : start_sequence ();
32575 : {
32576 : #define FAIL return (end_sequence (), nullptr)
32577 : #define DONE return end_sequence ()
32578 : #line 27781 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32579 : {
32580 : /* Handle the V16QI XOP case to avoid a conflict with the other expand. */
32581 : if (TARGET_XOP)
32582 : {
32583 : if (! const_0_to_7_operand (operands[2], SImode))
32584 : {
32585 : rtvec vs = rtvec_alloc (16);
32586 : rtx par = gen_rtx_PARALLEL (V16QImode, vs);
32587 : rtx reg = gen_reg_rtx (V16QImode);
32588 : rtx op2 = operands[2];
32589 : int i;
32590 :
32591 : if (GET_MODE (op2) != QImode)
32592 : {
32593 : op2 = gen_reg_rtx (QImode);
32594 : convert_move (op2, operands[2], false);
32595 : }
32596 :
32597 : for (i = 0; i < 16; i++)
32598 : RTVEC_ELT (vs, i) = op2;
32599 :
32600 : emit_insn (gen_vec_initv16qiqi (reg, par));
32601 : if (ROTATE == ROTATERT)
32602 : {
32603 : rtx neg = gen_reg_rtx (V16QImode);
32604 : emit_insn (gen_negv16qi2 (neg, reg));
32605 : emit_insn (gen_xop_vrotlv16qi3 (operands[0], operands[1], neg));
32606 : reg = neg;
32607 : }
32608 : emit_insn (gen_xop_vrotlv16qi3 (operands[0], operands[1], reg));
32609 : DONE;
32610 : }
32611 : }
32612 : else if (TARGET_GFNI && CONST_INT_P (operands[2]))
32613 : {
32614 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2], ROTATE);
32615 : emit_insn (gen_vgf2p8affineqb_v16qi (operands[0],
32616 : force_reg (V16QImode, operands[1]),
32617 : matrix, const0_rtx));
32618 : DONE;
32619 : }
32620 : else
32621 : FAIL;
32622 : }
32623 : #undef DONE
32624 : #undef FAIL
32625 : }
32626 : static const uint8_t expand_encoding[] = {
32627 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x4f, 0x01, 0x01,
32628 : 0x01, 0x02
32629 : };
32630 : return complete_seq (expand_encoding, operands);
32631 : }
32632 :
32633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28340 */
32634 : rtx
32635 : gen_avx_vpermilv4sf (const rtx operand0, const rtx operand1, const rtx operand2)
32636 : {
32637 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32638 : start_sequence ();
32639 : {
32640 : #define FAIL return (end_sequence (), nullptr)
32641 : #define DONE return end_sequence ()
32642 : #line 28346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32643 : {
32644 : int mask = INTVAL (operands[2]);
32645 : rtx perm[4];
32646 :
32647 : int i;
32648 : for (i = 0; i < 4; i = i + 4)
32649 : {
32650 : perm[i] = GEN_INT (((mask >> 0) & 3) + i);
32651 : perm[i + 1] = GEN_INT (((mask >> 2) & 3) + i);
32652 : perm[i + 2] = GEN_INT (((mask >> 4) & 3) + i);
32653 : perm[i + 3] = GEN_INT (((mask >> 6) & 3) + i);
32654 : }
32655 :
32656 : operands[2]
32657 : = gen_rtx_PARALLEL (VOIDmode, gen_rtvec_v (4, perm));
32658 : }
32659 : #undef DONE
32660 : #undef FAIL
32661 : }
32662 : static const uint8_t expand_encoding[] = {
32663 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x01,
32664 : 0x01, 0x01, 0x02
32665 : };
32666 : return complete_seq (expand_encoding, operands);
32667 : }
32668 :
32669 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28465 */
32670 : rtx
32671 : gen_avx512f_permv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32672 : {
32673 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32674 : start_sequence ();
32675 : {
32676 : #define FAIL return (end_sequence (), nullptr)
32677 : #define DONE return end_sequence ()
32678 : #line 28472 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32679 : {
32680 : int mask = INTVAL (operands[2]);
32681 : emit_insn (gen_avx512f_permv8di_1_mask (operands[0], operands[1],
32682 : GEN_INT ((mask >> 0) & 3),
32683 : GEN_INT ((mask >> 2) & 3),
32684 : GEN_INT ((mask >> 4) & 3),
32685 : GEN_INT ((mask >> 6) & 3),
32686 : GEN_INT (((mask >> 0) & 3) + 4),
32687 : GEN_INT (((mask >> 2) & 3) + 4),
32688 : GEN_INT (((mask >> 4) & 3) + 4),
32689 : GEN_INT (((mask >> 6) & 3) + 4),
32690 : operands[3], operands[4]));
32691 : DONE;
32692 : }
32693 : #undef DONE
32694 : #undef FAIL
32695 : }
32696 : static const uint8_t expand_encoding[] = {
32697 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32698 : 0x03, 0x01, 0x04
32699 : };
32700 : return complete_seq (expand_encoding, operands);
32701 : }
32702 :
32703 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28864 */
32704 : extern rtx_insn *gen_split_3833 (rtx_insn *, rtx *);
32705 : rtx_insn *
32706 : gen_split_3833 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32707 : {
32708 : if (dump_file)
32709 : fprintf (dump_file, "Splitting with gen_split_3833 (sse.md:28864)\n");
32710 : start_sequence ();
32711 : #define FAIL return (end_sequence (), nullptr)
32712 : #define DONE return end_sequence ()
32713 : #line 28873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32714 : operands[2] = gen_lowpart (V2DImode, operands[0]);
32715 : #undef DONE
32716 : #undef FAIL
32717 : static const uint8_t expand_encoding[] = {
32718 : 0x02, 0x1f, 0x01, 0x02, 0x81, 0x0c, 0x52, 0x01,
32719 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x57, 0x01,
32720 : 0x02, 0x01, 0x02
32721 : };
32722 : return complete_seq (expand_encoding, operands);
32723 : }
32724 :
32725 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32726 : rtx
32727 : gen_avx512f_vpermi2varv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32728 : {
32729 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32730 : start_sequence ();
32731 : {
32732 : #define FAIL return (end_sequence (), nullptr)
32733 : #define DONE return end_sequence ()
32734 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32735 : {
32736 : operands[2] = force_reg (V16SImode, operands[2]);
32737 : operands[5] = gen_lowpart (V16SImode, operands[2]);
32738 : }
32739 : #undef DONE
32740 : #undef FAIL
32741 : }
32742 : static const uint8_t expand_encoding[] = {
32743 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a,
32744 : 0x5b, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32745 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32746 : };
32747 : return complete_seq (expand_encoding, operands);
32748 : }
32749 :
32750 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32751 : rtx
32752 : gen_avx512vl_vpermi2varv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32753 : {
32754 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32755 : start_sequence ();
32756 : {
32757 : #define FAIL return (end_sequence (), nullptr)
32758 : #define DONE return end_sequence ()
32759 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32760 : {
32761 : operands[2] = force_reg (V2DImode, operands[2]);
32762 : operands[5] = gen_lowpart (V2DImode, operands[2]);
32763 : }
32764 : #undef DONE
32765 : #undef FAIL
32766 : }
32767 : static const uint8_t expand_encoding[] = {
32768 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a,
32769 : 0x52, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32770 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32771 : };
32772 : return complete_seq (expand_encoding, operands);
32773 : }
32774 :
32775 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32776 : rtx
32777 : gen_avx512f_vpermt2varv8di3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32778 : {
32779 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32780 : start_sequence ();
32781 : {
32782 : #define FAIL return (end_sequence (), nullptr)
32783 : #define DONE return end_sequence ()
32784 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32785 : {
32786 : emit_insn (gen_avx512f_vpermt2varv8di3_maskz_1 (
32787 : operands[0], operands[1], operands[2], operands[3],
32788 : CONST0_RTX (V8DImode), operands[4]));
32789 : DONE;
32790 : }
32791 : #undef DONE
32792 : #undef FAIL
32793 : }
32794 : static const uint8_t expand_encoding[] = {
32795 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32796 : 0x03, 0x01, 0x04
32797 : };
32798 : return complete_seq (expand_encoding, operands);
32799 : }
32800 :
32801 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32802 : rtx
32803 : gen_avx512bw_vpermt2varv32hi3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32804 : {
32805 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32806 : start_sequence ();
32807 : {
32808 : #define FAIL return (end_sequence (), nullptr)
32809 : #define DONE return end_sequence ()
32810 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32811 : {
32812 : emit_insn (gen_avx512bw_vpermt2varv32hi3_maskz_1 (
32813 : operands[0], operands[1], operands[2], operands[3],
32814 : CONST0_RTX (V32HImode), operands[4]));
32815 : DONE;
32816 : }
32817 : #undef DONE
32818 : #undef FAIL
32819 : }
32820 : static const uint8_t expand_encoding[] = {
32821 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32822 : 0x03, 0x01, 0x04
32823 : };
32824 : return complete_seq (expand_encoding, operands);
32825 : }
32826 :
32827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29274 */
32828 : rtx
32829 : gen_avx512vl_vinsertv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
32830 : {
32831 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
32832 : start_sequence ();
32833 : {
32834 : #define FAIL return (end_sequence (), nullptr)
32835 : #define DONE return end_sequence ()
32836 : #line 29282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32837 : {
32838 : rtx (*insn)(rtx, rtx, rtx, rtx, rtx);
32839 :
32840 : switch (INTVAL (operands[3]))
32841 : {
32842 : case 0:
32843 : insn = gen_vec_set_lo_v8sf_mask;
32844 : break;
32845 : case 1:
32846 : insn = gen_vec_set_hi_v8sf_mask;
32847 : break;
32848 : default:
32849 : gcc_unreachable ();
32850 : }
32851 :
32852 : emit_insn (insn (operands[0], operands[1], operands[2], operands[4],
32853 : operands[5]));
32854 : DONE;
32855 : }
32856 : #undef DONE
32857 : #undef FAIL
32858 : }
32859 : static const uint8_t expand_encoding[] = {
32860 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32861 : 0x03, 0x01, 0x04, 0x01, 0x05
32862 : };
32863 : return complete_seq (expand_encoding, operands);
32864 : }
32865 :
32866 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29302 */
32867 : rtx
32868 : gen_avx_vinsertf128v16bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32869 : {
32870 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32871 : start_sequence ();
32872 : {
32873 : #define FAIL return (end_sequence (), nullptr)
32874 : #define DONE return end_sequence ()
32875 : #line 29308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32876 : {
32877 : rtx (*insn)(rtx, rtx, rtx);
32878 :
32879 : switch (INTVAL (operands[3]))
32880 : {
32881 : case 0:
32882 : insn = gen_vec_set_lo_v16bf;
32883 : break;
32884 : case 1:
32885 : insn = gen_vec_set_hi_v16bf;
32886 : break;
32887 : default:
32888 : gcc_unreachable ();
32889 : }
32890 :
32891 : emit_insn (insn (operands[0], operands[1], operands[2]));
32892 : DONE;
32893 : }
32894 : #undef DONE
32895 : #undef FAIL
32896 : }
32897 : static const uint8_t expand_encoding[] = {
32898 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32899 : 0x03
32900 : };
32901 : return complete_seq (expand_encoding, operands);
32902 : }
32903 :
32904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29576 */
32905 : rtx
32906 : gen_maskloadv8siv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32907 : {
32908 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32909 : start_sequence ();
32910 : {
32911 : #define FAIL _Pragma ("GCC error \"maskloadv8siv8si cannot FAIL\"") (void)0
32912 : #define DONE return end_sequence ()
32913 : #line 29584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32914 : {
32915 : emit_insn (gen_maskloadv8siv8si_1 (operands[0],
32916 : operands[1],
32917 : operands[2]));
32918 : DONE;
32919 : }
32920 : #undef DONE
32921 : #undef FAIL
32922 : }
32923 : static const uint8_t expand_encoding[] = {
32924 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01,
32925 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x30
32926 : };
32927 : return complete_seq (expand_encoding, operands);
32928 : }
32929 :
32930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29591 */
32931 : rtx
32932 : gen_maskloadv4dfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32933 : {
32934 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32935 : static const uint8_t expand_encoding[] = {
32936 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
32937 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32938 : 0x02
32939 : };
32940 : return expand_rtx (expand_encoding, operands);
32941 : }
32942 :
32943 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29601 */
32944 : rtx
32945 : gen_maskloadv8hfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32946 : {
32947 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32948 : static const uint8_t expand_encoding[] = {
32949 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
32950 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32951 : 0x02
32952 : };
32953 : return expand_rtx (expand_encoding, operands);
32954 : }
32955 :
32956 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29611 */
32957 : rtx
32958 : gen_maskstorev8siv8si (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, 0x56, 0x03, 0x01, 0x02,
32963 : 0x01, 0x01, 0x01, 0x00, 0x30
32964 : };
32965 : return expand_rtx (expand_encoding, operands);
32966 : }
32967 :
32968 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29620 */
32969 : rtx
32970 : gen_maskstorev4sfqi (const rtx operand0, const rtx operand1, const rtx operand2)
32971 : {
32972 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32973 : static const uint8_t expand_encoding[] = {
32974 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
32975 : 0x01, 0x00, 0x01, 0x02, 0x30
32976 : };
32977 : return expand_rtx (expand_encoding, operands);
32978 : }
32979 :
32980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29629 */
32981 : rtx
32982 : gen_maskstorev32hfsi (const rtx operand0, const rtx operand1, const rtx operand2)
32983 : {
32984 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32985 : static const uint8_t expand_encoding[] = {
32986 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01, 0x01,
32987 : 0x01, 0x00, 0x01, 0x02, 0x30
32988 : };
32989 : return expand_rtx (expand_encoding, operands);
32990 : }
32991 :
32992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
32993 : extern rtx_insn *gen_split_3847 (rtx_insn *, rtx *);
32994 : rtx_insn *
32995 : gen_split_3847 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32996 : {
32997 : if (dump_file)
32998 : fprintf (dump_file, "Splitting with gen_split_3847 (sse.md:29681)\n");
32999 : start_sequence ();
33000 : #define FAIL return (end_sequence (), nullptr)
33001 : #define DONE return end_sequence ()
33002 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33003 : {
33004 : if (constm1_operand (operands[2], V16HImode))
33005 : emit_move_insn (operands[0], operands[1]);
33006 : else
33007 : emit_note (NOTE_INSN_DELETED);
33008 :
33009 : DONE;
33010 : }
33011 : #undef DONE
33012 : #undef FAIL
33013 : static const uint8_t expand_encoding[] = {
33014 : 0x01, 0x27, 0x00
33015 : };
33016 : return complete_seq (expand_encoding, operands);
33017 : }
33018 :
33019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
33020 : extern rtx_insn *gen_split_3857 (rtx_insn *, rtx *);
33021 : rtx_insn *
33022 : gen_split_3857 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33023 : {
33024 : if (dump_file)
33025 : fprintf (dump_file, "Splitting with gen_split_3857 (sse.md:29681)\n");
33026 : start_sequence ();
33027 : #define FAIL return (end_sequence (), nullptr)
33028 : #define DONE return end_sequence ()
33029 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33030 : {
33031 : if (constm1_operand (operands[2], V8HFmode))
33032 : emit_move_insn (operands[0], operands[1]);
33033 : else
33034 : emit_note (NOTE_INSN_DELETED);
33035 :
33036 : DONE;
33037 : }
33038 : #undef DONE
33039 : #undef FAIL
33040 : static const uint8_t expand_encoding[] = {
33041 : 0x01, 0x27, 0x00
33042 : };
33043 : return complete_seq (expand_encoding, operands);
33044 : }
33045 :
33046 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29701 */
33047 : rtx
33048 : gen_cbranchv64qi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33049 : {
33050 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33051 : start_sequence ();
33052 : {
33053 : #define FAIL return (end_sequence (), nullptr)
33054 : #define DONE return end_sequence ()
33055 : #line 29711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33056 : {
33057 : ix86_expand_branch (GET_CODE (operands[0]),
33058 : operands[1], operands[2], operands[3]);
33059 : DONE;
33060 : }
33061 : #undef DONE
33062 : #undef FAIL
33063 : }
33064 : static const uint8_t expand_encoding[] = {
33065 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
33066 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
33067 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
33068 : 0x00, 0x01, 0x03, 0x2f
33069 : };
33070 : return complete_seq (expand_encoding, operands);
33071 : }
33072 :
33073 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29701 */
33074 : rtx
33075 : gen_cbranchv4di4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33076 : {
33077 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33078 : start_sequence ();
33079 : {
33080 : #define FAIL return (end_sequence (), nullptr)
33081 : #define DONE return end_sequence ()
33082 : #line 29711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33083 : {
33084 : ix86_expand_branch (GET_CODE (operands[0]),
33085 : operands[1], operands[2], operands[3]);
33086 : DONE;
33087 : }
33088 : #undef DONE
33089 : #undef FAIL
33090 : }
33091 : static const uint8_t expand_encoding[] = {
33092 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
33093 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
33094 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
33095 : 0x00, 0x01, 0x03, 0x2f
33096 : };
33097 : return complete_seq (expand_encoding, operands);
33098 : }
33099 :
33100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33101 : rtx
33102 : gen_vec_initv16sisi (const rtx operand0, const rtx operand1)
33103 : {
33104 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33105 : start_sequence ();
33106 : {
33107 : #define FAIL return (end_sequence (), nullptr)
33108 : #define DONE return end_sequence ()
33109 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33110 : {
33111 : ix86_expand_vector_init (false, operands[0], operands[1]);
33112 : DONE;
33113 : }
33114 : #undef DONE
33115 : #undef FAIL
33116 : }
33117 : static const uint8_t expand_encoding[] = {
33118 : 0x02, 0x01, 0x00, 0x01, 0x01
33119 : };
33120 : return complete_seq (expand_encoding, operands);
33121 : }
33122 :
33123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33124 : rtx
33125 : gen_vec_initv16bfbf (const rtx operand0, const rtx operand1)
33126 : {
33127 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33128 : start_sequence ();
33129 : {
33130 : #define FAIL return (end_sequence (), nullptr)
33131 : #define DONE return end_sequence ()
33132 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33133 : {
33134 : ix86_expand_vector_init (false, operands[0], operands[1]);
33135 : DONE;
33136 : }
33137 : #undef DONE
33138 : #undef FAIL
33139 : }
33140 : static const uint8_t expand_encoding[] = {
33141 : 0x02, 0x01, 0x00, 0x01, 0x01
33142 : };
33143 : return complete_seq (expand_encoding, operands);
33144 : }
33145 :
33146 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33147 : rtx
33148 : gen_vec_initv64qiv32qi (const rtx operand0, const rtx operand1)
33149 : {
33150 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33151 : start_sequence ();
33152 : {
33153 : #define FAIL return (end_sequence (), nullptr)
33154 : #define DONE return end_sequence ()
33155 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33156 : {
33157 : ix86_expand_vector_init (false, operands[0], operands[1]);
33158 : DONE;
33159 : }
33160 : #undef DONE
33161 : #undef FAIL
33162 : }
33163 : static const uint8_t expand_encoding[] = {
33164 : 0x02, 0x01, 0x00, 0x01, 0x01
33165 : };
33166 : return complete_seq (expand_encoding, operands);
33167 : }
33168 :
33169 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33170 : rtx
33171 : gen_vec_initv4div2di (const rtx operand0, const rtx operand1)
33172 : {
33173 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33174 : start_sequence ();
33175 : {
33176 : #define FAIL return (end_sequence (), nullptr)
33177 : #define DONE return end_sequence ()
33178 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33179 : {
33180 : ix86_expand_vector_init (false, operands[0], operands[1]);
33181 : DONE;
33182 : }
33183 : #undef DONE
33184 : #undef FAIL
33185 : }
33186 : static const uint8_t expand_encoding[] = {
33187 : 0x02, 0x01, 0x00, 0x01, 0x01
33188 : };
33189 : return complete_seq (expand_encoding, operands);
33190 : }
33191 :
33192 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33193 : rtx
33194 : gen_vec_initv8dfv4df (const rtx operand0, const rtx operand1)
33195 : {
33196 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33197 : start_sequence ();
33198 : {
33199 : #define FAIL return (end_sequence (), nullptr)
33200 : #define DONE return end_sequence ()
33201 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33202 : {
33203 : ix86_expand_vector_init (false, operands[0], operands[1]);
33204 : DONE;
33205 : }
33206 : #undef DONE
33207 : #undef FAIL
33208 : }
33209 : static const uint8_t expand_encoding[] = {
33210 : 0x02, 0x01, 0x00, 0x01, 0x01
33211 : };
33212 : return complete_seq (expand_encoding, operands);
33213 : }
33214 :
33215 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33216 : rtx
33217 : gen_cond_lshrv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33218 : {
33219 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33220 : start_sequence ();
33221 : {
33222 : #define FAIL return (end_sequence (), nullptr)
33223 : #define DONE return end_sequence ()
33224 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33225 : {
33226 : if (const_vec_duplicate_p (operands[3]))
33227 : {
33228 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33229 : operands[3] = lowpart_subreg (DImode, operands[3], HImode);
33230 : emit_insn (gen_lshrv8hi3_mask (operands[0],
33231 : operands[2],
33232 : operands[3],
33233 : operands[4],
33234 : operands[1]));
33235 : }
33236 : else
33237 : emit_insn (gen_avx512vl_lshrvv8hi_mask (operands[0],
33238 : operands[2],
33239 : operands[3],
33240 : operands[4],
33241 : operands[1]));
33242 : DONE;
33243 : }
33244 : #undef DONE
33245 : #undef FAIL
33246 : }
33247 : static const uint8_t expand_encoding[] = {
33248 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x50,
33249 : 0x50, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33250 : 0x01
33251 : };
33252 : return complete_seq (expand_encoding, operands);
33253 : }
33254 :
33255 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33256 : rtx
33257 : gen_cond_ashrv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33258 : {
33259 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33260 : start_sequence ();
33261 : {
33262 : #define FAIL return (end_sequence (), nullptr)
33263 : #define DONE return end_sequence ()
33264 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33265 : {
33266 : if (const_vec_duplicate_p (operands[3]))
33267 : {
33268 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33269 : operands[3] = lowpart_subreg (DImode, operands[3], SImode);
33270 : emit_insn (gen_ashrv4si3_mask (operands[0],
33271 : operands[2],
33272 : operands[3],
33273 : operands[4],
33274 : operands[1]));
33275 : }
33276 : else
33277 : emit_insn (gen_avx2_ashrvv4si_mask (operands[0],
33278 : operands[2],
33279 : operands[3],
33280 : operands[4],
33281 : operands[1]));
33282 : DONE;
33283 : }
33284 : #undef DONE
33285 : #undef FAIL
33286 : }
33287 : static const uint8_t expand_encoding[] = {
33288 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4f,
33289 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33290 : 0x01
33291 : };
33292 : return complete_seq (expand_encoding, operands);
33293 : }
33294 :
33295 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33296 : extern rtx_insn *gen_split_3870 (rtx_insn *, rtx *);
33297 : rtx_insn *
33298 : gen_split_3870 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33299 : {
33300 : if (dump_file)
33301 : fprintf (dump_file, "Splitting with gen_split_3870 (sse.md:29963)\n");
33302 : start_sequence ();
33303 : #define FAIL return (end_sequence (), nullptr)
33304 : #define DONE return end_sequence ()
33305 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33306 : {
33307 : operands[1] = gen_lowpart (V32QImode, operands[1]);
33308 : operands[5] = CONST0_RTX (V32QImode);
33309 : }
33310 : #undef DONE
33311 : #undef FAIL
33312 : static const uint8_t expand_encoding[] = {
33313 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x59, 0x01,
33314 : 0x01, 0x01, 0x05
33315 : };
33316 : return complete_seq (expand_encoding, operands);
33317 : }
33318 :
33319 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33320 : extern rtx_insn *gen_split_3875 (rtx_insn *, rtx *);
33321 : rtx_insn *
33322 : gen_split_3875 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33323 : {
33324 : if (dump_file)
33325 : fprintf (dump_file, "Splitting with gen_split_3875 (sse.md:29963)\n");
33326 : start_sequence ();
33327 : #define FAIL return (end_sequence (), nullptr)
33328 : #define DONE return end_sequence ()
33329 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33330 : {
33331 : operands[1] = gen_lowpart (V4HImode, operands[1]);
33332 : operands[5] = CONST0_RTX (V4HImode);
33333 : }
33334 : #undef DONE
33335 : #undef FAIL
33336 : static const uint8_t expand_encoding[] = {
33337 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x01,
33338 : 0x01, 0x01, 0x05
33339 : };
33340 : return complete_seq (expand_encoding, operands);
33341 : }
33342 :
33343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33344 : extern rtx_insn *gen_split_3885 (rtx_insn *, rtx *);
33345 : rtx_insn *
33346 : gen_split_3885 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33347 : {
33348 : if (dump_file)
33349 : fprintf (dump_file, "Splitting with gen_split_3885 (sse.md:29963)\n");
33350 : start_sequence ();
33351 : #define FAIL return (end_sequence (), nullptr)
33352 : #define DONE return end_sequence ()
33353 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33354 : {
33355 : operands[1] = gen_lowpart (V16BFmode, operands[1]);
33356 : operands[5] = CONST0_RTX (V16BFmode);
33357 : }
33358 : #undef DONE
33359 : #undef FAIL
33360 : static const uint8_t expand_encoding[] = {
33361 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x72, 0x01,
33362 : 0x01, 0x01, 0x05
33363 : };
33364 : return complete_seq (expand_encoding, operands);
33365 : }
33366 :
33367 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30039 */
33368 : rtx
33369 : gen_vcvtps2ph (const rtx operand0, const rtx operand1, const rtx operand2)
33370 : {
33371 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
33372 : start_sequence ();
33373 : {
33374 : #define FAIL return (end_sequence (), nullptr)
33375 : #define DONE return end_sequence ()
33376 : #line 30047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33377 : operands[3] = CONST0_RTX (V4HImode);
33378 : #undef DONE
33379 : #undef FAIL
33380 : }
33381 : static const uint8_t expand_encoding[] = {
33382 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x1a,
33383 : 0x49, 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x17,
33384 : 0x01, 0x03
33385 : };
33386 : return complete_seq (expand_encoding, operands);
33387 : }
33388 :
33389 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30168 */
33390 : rtx
33391 : gen_avx2_gathersiv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33392 : {
33393 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33394 : start_sequence ();
33395 : {
33396 : #define FAIL return (end_sequence (), nullptr)
33397 : #define DONE return end_sequence ()
33398 : #line 30183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33399 : {
33400 : operands[6]
33401 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33402 : operands[5]), UNSPEC_VSIBADDR);
33403 : }
33404 : #undef DONE
33405 : #undef FAIL
33406 : }
33407 : static const uint8_t expand_encoding[] = {
33408 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33409 : 0x6f, 0x04, 0x01, 0x01, 0x36, 0x2d, 0x04, 0x06,
33410 : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33411 : 0x21, 0x00, 0x31, 0x6f
33412 : };
33413 : return complete_seq (expand_encoding, operands);
33414 : }
33415 :
33416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30346 */
33417 : rtx
33418 : gen_avx512f_gathersiv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33419 : {
33420 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33421 : start_sequence ();
33422 : {
33423 : #define FAIL return (end_sequence (), nullptr)
33424 : #define DONE return end_sequence ()
33425 : #line 30359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33426 : {
33427 : operands[6]
33428 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33429 : operands[5]), UNSPEC_VSIBADDR);
33430 : }
33431 : #undef DONE
33432 : #undef FAIL
33433 : }
33434 : static const uint8_t expand_encoding[] = {
33435 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33436 : 0x74, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2d,
33437 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x10
33438 : };
33439 : return complete_seq (expand_encoding, operands);
33440 : }
33441 :
33442 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30346 */
33443 : rtx
33444 : gen_avx512vl_gathersiv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33445 : {
33446 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33447 : start_sequence ();
33448 : {
33449 : #define FAIL return (end_sequence (), nullptr)
33450 : #define DONE return end_sequence ()
33451 : #line 30359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33452 : {
33453 : operands[6]
33454 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33455 : operands[5]), UNSPEC_VSIBADDR);
33456 : }
33457 : #undef DONE
33458 : #undef FAIL
33459 : }
33460 : static const uint8_t expand_encoding[] = {
33461 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33462 : 0x6c, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2e,
33463 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33464 : };
33465 : return complete_seq (expand_encoding, operands);
33466 : }
33467 :
33468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30408 */
33469 : rtx
33470 : gen_avx512vl_gatherdiv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33471 : {
33472 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33473 : start_sequence ();
33474 : {
33475 : #define FAIL return (end_sequence (), nullptr)
33476 : #define DONE return end_sequence ()
33477 : #line 30421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33478 : {
33479 : operands[6]
33480 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33481 : operands[5]), UNSPEC_VSIBADDR);
33482 : }
33483 : #undef DONE
33484 : #undef FAIL
33485 : }
33486 : static const uint8_t expand_encoding[] = {
33487 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33488 : 0x6b, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2d,
33489 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33490 : };
33491 : return complete_seq (expand_encoding, operands);
33492 : }
33493 :
33494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30478 */
33495 : rtx
33496 : gen_avx512vl_scattersiv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33497 : {
33498 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33499 : start_sequence ();
33500 : {
33501 : #define FAIL return (end_sequence (), nullptr)
33502 : #define DONE return end_sequence ()
33503 : #line 30490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33504 : {
33505 : operands[5]
33506 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33507 : operands[4], operands[1]),
33508 : UNSPEC_VSIBADDR);
33509 : }
33510 : #undef DONE
33511 : #undef FAIL
33512 : }
33513 : static const uint8_t expand_encoding[] = {
33514 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x70, 0x04,
33515 : 0x05, 0x1a, 0x70, 0x02, 0x01, 0x01, 0x01, 0x03,
33516 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33517 : };
33518 : return complete_seq (expand_encoding, operands);
33519 : }
33520 :
33521 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30518 */
33522 : rtx
33523 : gen_avx512vl_scatterdiv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33524 : {
33525 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33526 : start_sequence ();
33527 : {
33528 : #define FAIL return (end_sequence (), nullptr)
33529 : #define DONE return end_sequence ()
33530 : #line 30530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33531 : {
33532 : operands[5]
33533 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33534 : operands[4], operands[1]),
33535 : UNSPEC_VSIBADDR);
33536 : }
33537 : #undef DONE
33538 : #undef FAIL
33539 : }
33540 : static const uint8_t expand_encoding[] = {
33541 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x6f, 0x04,
33542 : 0x05, 0x1a, 0x6f, 0x02, 0x01, 0x01, 0x01, 0x03,
33543 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33544 : };
33545 : return complete_seq (expand_encoding, operands);
33546 : }
33547 :
33548 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30616 */
33549 : rtx
33550 : gen_avx512f_expandv8df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33551 : {
33552 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33553 : start_sequence ();
33554 : {
33555 : #define FAIL return (end_sequence (), nullptr)
33556 : #define DONE return end_sequence ()
33557 : #line 30624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33558 : operands[2] = CONST0_RTX (V8DFmode);
33559 : #undef DONE
33560 : #undef FAIL
33561 : }
33562 : static const uint8_t expand_encoding[] = {
33563 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01,
33564 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33565 : };
33566 : return complete_seq (expand_encoding, operands);
33567 : }
33568 :
33569 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33570 : extern rtx_insn *gen_split_3895 (rtx_insn *, rtx *);
33571 : rtx_insn *
33572 : gen_split_3895 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33573 : {
33574 : if (dump_file)
33575 : fprintf (dump_file, "Splitting with gen_split_3895 (sse.md:30656)\n");
33576 : start_sequence ();
33577 : #define FAIL return (end_sequence (), nullptr)
33578 : #define DONE return end_sequence ()
33579 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33580 : {
33581 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33582 : bool has_zero = false;
33583 : unsigned n = GET_MODE_NUNITS (V16SFmode), i;
33584 : unsigned ones = 0;
33585 :
33586 : /* If all ones bits is in mask's lower part,
33587 : get number of ones and assign it to ONES. */
33588 : for (i = 0; i != n; i++)
33589 : {
33590 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33591 : break;
33592 :
33593 : /* Record first zero bit. */
33594 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33595 : {
33596 : has_zero = true;
33597 : ones = i;
33598 : }
33599 : }
33600 :
33601 : if (!has_zero)
33602 : ones = n;
33603 :
33604 : if (i != n || (ones != 0 && ones != n))
33605 : {
33606 : rtx reg = gen_reg_rtx (HImode);
33607 : emit_move_insn (reg, operands[3]);
33608 : enum insn_code icode;
33609 : if (i == n)
33610 : /* For masks with all one bits in it's lower part,
33611 : we can transform v{,p}expand* to vmovdq* with
33612 : mask operand. */
33613 : icode = CODE_FOR_avx512f_loadv16sf_mask;
33614 : else
33615 : icode = CODE_FOR_expandv16sf_mask;
33616 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33617 : }
33618 : else
33619 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33620 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33621 : DONE;
33622 : }
33623 : #undef DONE
33624 : #undef FAIL
33625 : static const uint8_t expand_encoding[] = {
33626 : 0x01, 0x27, 0x00
33627 : };
33628 : return complete_seq (expand_encoding, operands);
33629 : }
33630 :
33631 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33632 : extern rtx_insn *gen_split_3905 (rtx_insn *, rtx *);
33633 : rtx_insn *
33634 : gen_split_3905 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33635 : {
33636 : if (dump_file)
33637 : fprintf (dump_file, "Splitting with gen_split_3905 (sse.md:30656)\n");
33638 : start_sequence ();
33639 : #define FAIL return (end_sequence (), nullptr)
33640 : #define DONE return end_sequence ()
33641 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33642 : {
33643 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33644 : bool has_zero = false;
33645 : unsigned n = GET_MODE_NUNITS (V2DFmode), i;
33646 : unsigned ones = 0;
33647 :
33648 : /* If all ones bits is in mask's lower part,
33649 : get number of ones and assign it to ONES. */
33650 : for (i = 0; i != n; i++)
33651 : {
33652 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33653 : break;
33654 :
33655 : /* Record first zero bit. */
33656 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33657 : {
33658 : has_zero = true;
33659 : ones = i;
33660 : }
33661 : }
33662 :
33663 : if (!has_zero)
33664 : ones = n;
33665 :
33666 : if (i != n || (ones != 0 && ones != n))
33667 : {
33668 : rtx reg = gen_reg_rtx (QImode);
33669 : emit_move_insn (reg, operands[3]);
33670 : enum insn_code icode;
33671 : if (i == n)
33672 : /* For masks with all one bits in it's lower part,
33673 : we can transform v{,p}expand* to vmovdq* with
33674 : mask operand. */
33675 : icode = CODE_FOR_avx512vl_loadv2df_mask;
33676 : else
33677 : icode = CODE_FOR_expandv2df_mask;
33678 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33679 : }
33680 : else
33681 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33682 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33683 : DONE;
33684 : }
33685 : #undef DONE
33686 : #undef FAIL
33687 : static const uint8_t expand_encoding[] = {
33688 : 0x01, 0x27, 0x00
33689 : };
33690 : return complete_seq (expand_encoding, operands);
33691 : }
33692 :
33693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30712 */
33694 : rtx
33695 : gen_expandv8hi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33696 : {
33697 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33698 : start_sequence ();
33699 : {
33700 : #define FAIL return (end_sequence (), nullptr)
33701 : #define DONE return end_sequence ()
33702 : #line 30720 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33703 : operands[2] = CONST0_RTX (V8HImode);
33704 : #undef DONE
33705 : #undef FAIL
33706 : }
33707 : static const uint8_t expand_encoding[] = {
33708 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x03, 0x01,
33709 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33710 : };
33711 : return complete_seq (expand_encoding, operands);
33712 : }
33713 :
33714 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31108 */
33715 : rtx
33716 : gen_vpmadd52luqv8di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33717 : {
33718 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33719 : start_sequence ();
33720 : {
33721 : #define FAIL return (end_sequence (), nullptr)
33722 : #define DONE return end_sequence ()
33723 : #line 31115 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33724 : {
33725 : emit_insn (gen_vpmadd52luqv8di_maskz_1 (
33726 : operands[0], operands[1], operands[2], operands[3],
33727 : CONST0_RTX (V8DImode), operands[4]));
33728 : DONE;
33729 : }
33730 : #undef DONE
33731 : #undef FAIL
33732 : }
33733 : static const uint8_t expand_encoding[] = {
33734 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33735 : 0x03, 0x01, 0x04
33736 : };
33737 : return complete_seq (expand_encoding, operands);
33738 : }
33739 :
33740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31250 */
33741 : rtx
33742 : gen_popcountv8hi2 (const rtx operand0, const rtx operand1)
33743 : {
33744 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33745 : static const uint8_t expand_encoding[] = {
33746 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x50, 0x01, 0x01
33747 : };
33748 : return expand_rtx (expand_encoding, operands);
33749 : }
33750 :
33751 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31419 */
33752 : rtx
33753 : gen_vpshldv_v32hi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33754 : {
33755 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33756 : start_sequence ();
33757 : {
33758 : #define FAIL return (end_sequence (), nullptr)
33759 : #define DONE return end_sequence ()
33760 : #line 31426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33761 : {
33762 : emit_insn (gen_vpshldv_v32hi_maskz_1 (operands[0], operands[1],
33763 : operands[2], operands[3],
33764 : CONST0_RTX (V32HImode),
33765 : operands[4]));
33766 : DONE;
33767 : }
33768 : #undef DONE
33769 : #undef FAIL
33770 : }
33771 : static const uint8_t expand_encoding[] = {
33772 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33773 : 0x03, 0x01, 0x04
33774 : };
33775 : return complete_seq (expand_encoding, operands);
33776 : }
33777 :
33778 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31449 */
33779 : rtx
33780 : gen_usdot_prodv8siv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33781 : {
33782 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33783 : start_sequence ();
33784 : {
33785 : #define FAIL return (end_sequence (), nullptr)
33786 : #define DONE return end_sequence ()
33787 : #line 31455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33788 : {
33789 : if (32 == 64
33790 : ? TARGET_AVX512VNNI
33791 : : ((TARGET_AVX512VNNI && TARGET_AVX512VL) || TARGET_AVXVNNI))
33792 : {
33793 : operands[1] = lowpart_subreg (V8SImode,
33794 : force_reg (V32QImode, operands[1]),
33795 : V32QImode);
33796 : operands[2] = lowpart_subreg (V8SImode,
33797 : force_reg (V32QImode, operands[2]),
33798 : V32QImode);
33799 : emit_insn (gen_vpdpbusd_v8si (operands[0], operands[3],
33800 : operands[1], operands[2]));
33801 : }
33802 : else
33803 : {
33804 : /* Emulate with vpdpwssd. */
33805 : rtx op1_lo = gen_reg_rtx (V16HImode);
33806 : rtx op1_hi = gen_reg_rtx (V16HImode);
33807 : rtx op2_lo = gen_reg_rtx (V16HImode);
33808 : rtx op2_hi = gen_reg_rtx (V16HImode);
33809 :
33810 : emit_insn (gen_vec_unpacku_lo_v32qi (op1_lo, operands[1]));
33811 : emit_insn (gen_vec_unpacks_lo_v32qi (op2_lo, operands[2]));
33812 : emit_insn (gen_vec_unpacku_hi_v32qi (op1_hi, operands[1]));
33813 : emit_insn (gen_vec_unpacks_hi_v32qi (op2_hi, operands[2]));
33814 :
33815 : rtx res1 = gen_reg_rtx (V8SImode);
33816 : rtx res2 = gen_reg_rtx (V8SImode);
33817 : rtx sum = gen_reg_rtx (V8SImode);
33818 :
33819 : emit_move_insn (sum, CONST0_RTX (V8SImode));
33820 : emit_insn (gen_sdot_prodv8siv16hi (res1,
33821 : op1_lo, op2_lo, sum));
33822 : emit_insn (gen_sdot_prodv8siv16hi (res2,
33823 : op1_hi, op2_hi,
33824 : operands[3]));
33825 : emit_insn (gen_addv8si3 (operands[0], res1, res2));
33826 : }
33827 : DONE;
33828 : }
33829 : #undef DONE
33830 : #undef FAIL
33831 : }
33832 : static const uint8_t expand_encoding[] = {
33833 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33834 : 0x03
33835 : };
33836 : return complete_seq (expand_encoding, operands);
33837 : }
33838 :
33839 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31885 */
33840 : extern rtx_insn *gen_split_3918 (rtx_insn *, rtx *);
33841 : rtx_insn *
33842 : gen_split_3918 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33843 : {
33844 : if (dump_file)
33845 : fprintf (dump_file, "Splitting with gen_split_3918 (sse.md:31885)\n");
33846 : start_sequence ();
33847 : #define FAIL return (end_sequence (), nullptr)
33848 : #define DONE return end_sequence ()
33849 : #line 31894 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33850 : {
33851 : split_double_mode (P2QImode, &operands[0], 2, &operands[0], &operands[2]);
33852 : }
33853 : #undef DONE
33854 : #undef FAIL
33855 : static const uint8_t expand_encoding[] = {
33856 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1f, 0x01,
33857 : 0x02, 0x01, 0x03
33858 : };
33859 : return complete_seq (expand_encoding, operands);
33860 : }
33861 :
33862 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32040 */
33863 : rtx
33864 : gen_avx512f_cvtneps2bf16_v8sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2)
33865 : {
33866 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
33867 : start_sequence ();
33868 : {
33869 : #define FAIL return (end_sequence (), nullptr)
33870 : #define DONE return end_sequence ()
33871 : #line 32045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33872 : {
33873 : emit_insn (gen_avx512f_cvtneps2bf16_v8sf_mask(operands[0], operands[1],
33874 : CONST0_RTX(V8BFmode), operands[2]));
33875 : DONE;
33876 : }
33877 : #undef DONE
33878 : #undef FAIL
33879 : }
33880 : static const uint8_t expand_encoding[] = {
33881 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
33882 : };
33883 : return complete_seq (expand_encoding, operands);
33884 : }
33885 :
33886 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32216 */
33887 : rtx
33888 : gen_encodekey256u32 (const rtx operand0, const rtx operand1)
33889 : {
33890 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
33891 : start_sequence ();
33892 : {
33893 : #define FAIL return (end_sequence (), nullptr)
33894 : #define DONE return end_sequence ()
33895 : #line 32225 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33896 : {
33897 : rtx xmm_regs[7];
33898 : rtx tmp_unspec;
33899 : unsigned i;
33900 :
33901 : /* parallel rtx for encodekey256 predicate */
33902 : operands[2] = gen_rtx_PARALLEL (VOIDmode, rtvec_alloc (9));
33903 :
33904 : for (i = 0; i < 7; i++)
33905 : xmm_regs[i] = gen_rtx_REG (V2DImode, GET_SSE_REGNO (i));
33906 :
33907 : tmp_unspec
33908 : = gen_rtx_UNSPEC_VOLATILE (SImode,
33909 : gen_rtvec (3, operands[1],
33910 : xmm_regs[0], xmm_regs[1]),
33911 : UNSPECV_ENCODEKEY256U32);
33912 :
33913 : XVECEXP (operands[2], 0, 0)
33914 : = gen_rtx_SET (operands[0], tmp_unspec);
33915 :
33916 : tmp_unspec
33917 : = gen_rtx_UNSPEC_VOLATILE (V2DImode,
33918 : gen_rtvec (1, const0_rtx),
33919 : UNSPECV_ENCODEKEY256U32);
33920 :
33921 : for (i = 0; i < 4; i++)
33922 : XVECEXP (operands[2], 0, i + 1)
33923 : = gen_rtx_SET (xmm_regs[i], tmp_unspec);
33924 :
33925 : for (i = 4; i < 7; i++)
33926 : XVECEXP (operands[2], 0, i + 1)
33927 : = gen_rtx_CLOBBER (VOIDmode, xmm_regs[i]);
33928 :
33929 : XVECEXP (operands[2], 0, 8)
33930 : = gen_rtx_CLOBBER (VOIDmode, gen_rtx_REG (CCmode, FLAGS_REG));
33931 : }
33932 : #undef DONE
33933 : #undef FAIL
33934 : }
33935 : static const uint8_t expand_encoding[] = {
33936 : 0x01, 0x04, 0x02
33937 : };
33938 : return complete_seq (expand_encoding, operands);
33939 : }
33940 :
33941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32403 */
33942 : rtx
33943 : gen_sdot_prodv8siv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33944 : {
33945 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33946 : start_sequence ();
33947 : {
33948 : #define FAIL return (end_sequence (), nullptr)
33949 : #define DONE return end_sequence ()
33950 : #line 32409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33951 : {
33952 : if ((32 == 64 && TARGET_AVX10_2)
33953 : || (32 < 64 && (TARGET_AVXVNNIINT8 || TARGET_AVX10_2)))
33954 : {
33955 : operands[1] = lowpart_subreg (V8SImode,
33956 : force_reg (V32QImode, operands[1]),
33957 : V32QImode);
33958 : operands[2] = lowpart_subreg (V8SImode,
33959 : force_reg (V32QImode, operands[2]),
33960 : V32QImode);
33961 : emit_insn (gen_vpdpbssd_v8si (operands[0], operands[3],
33962 : operands[1], operands[2]));
33963 : }
33964 : else
33965 : {
33966 : /* Emulate with vpdpwssd. */
33967 : rtx op1_lo = gen_reg_rtx (V16HImode);
33968 : rtx op1_hi = gen_reg_rtx (V16HImode);
33969 : rtx op2_lo = gen_reg_rtx (V16HImode);
33970 : rtx op2_hi = gen_reg_rtx (V16HImode);
33971 :
33972 : emit_insn (gen_vec_unpacks_lo_v32qi (op1_lo, operands[1]));
33973 : emit_insn (gen_vec_unpacks_lo_v32qi (op2_lo, operands[2]));
33974 : emit_insn (gen_vec_unpacks_hi_v32qi (op1_hi, operands[1]));
33975 : emit_insn (gen_vec_unpacks_hi_v32qi (op2_hi, operands[2]));
33976 :
33977 : rtx res1 = gen_reg_rtx (V8SImode);
33978 : rtx res2 = gen_reg_rtx (V8SImode);
33979 : rtx sum = gen_reg_rtx (V8SImode);
33980 :
33981 : emit_move_insn (sum, CONST0_RTX (V8SImode));
33982 : emit_insn (gen_sdot_prodv8siv16hi (res1,
33983 : op1_lo, op2_lo, sum));
33984 : emit_insn (gen_sdot_prodv8siv16hi (res2,
33985 : op1_hi, op2_hi,
33986 : operands[3]));
33987 : emit_insn (gen_addv8si3 (operands[0], res1, res2));
33988 : }
33989 :
33990 : DONE;
33991 : }
33992 : #undef DONE
33993 : #undef FAIL
33994 : }
33995 : static const uint8_t expand_encoding[] = {
33996 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33997 : 0x03
33998 : };
33999 : return complete_seq (expand_encoding, operands);
34000 : }
34001 :
34002 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32535 */
34003 : rtx
34004 : gen_vpdpbsuds_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34005 : {
34006 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34007 : start_sequence ();
34008 : {
34009 : #define FAIL return (end_sequence (), nullptr)
34010 : #define DONE return end_sequence ()
34011 : #line 32546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34012 : operands[5] = CONST0_RTX (V8SImode);
34013 : #undef DONE
34014 : #undef FAIL
34015 : }
34016 : static const uint8_t expand_encoding[] = {
34017 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
34018 : 0x56, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34019 : 0x81, 0x67, 0x01, 0x05, 0x01, 0x04
34020 : };
34021 : return complete_seq (expand_encoding, operands);
34022 : }
34023 :
34024 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32693 */
34025 : rtx
34026 : gen_vcvtbiasph2bf8sv8hf (const rtx operand0, const rtx operand1, const rtx operand2)
34027 : {
34028 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34029 : start_sequence ();
34030 : {
34031 : #define FAIL return (end_sequence (), nullptr)
34032 : #define DONE return end_sequence ()
34033 : #line 32702 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34034 : operands[3] = CONST0_RTX (V8QImode);
34035 : #undef DONE
34036 : #undef FAIL
34037 : }
34038 : static const uint8_t expand_encoding[] = {
34039 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x1a,
34040 : 0x48, 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x77,
34041 : 0x01, 0x03
34042 : };
34043 : return complete_seq (expand_encoding, operands);
34044 : }
34045 :
34046 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32785 */
34047 : rtx
34048 : gen_vcvtph2hf8sv8hf (const rtx operand0, const rtx operand1)
34049 : {
34050 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
34051 : start_sequence ();
34052 : {
34053 : #define FAIL return (end_sequence (), nullptr)
34054 : #define DONE return end_sequence ()
34055 : #line 32793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34056 : operands[2] = CONST0_RTX (V8QImode);
34057 : #undef DONE
34058 : #undef FAIL
34059 : }
34060 : static const uint8_t expand_encoding[] = {
34061 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x1a,
34062 : 0x48, 0x01, 0x01, 0x01, 0x82, 0x01, 0x01, 0x02
34063 : };
34064 : return complete_seq (expand_encoding, operands);
34065 : }
34066 :
34067 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32893 */
34068 : rtx
34069 : gen_udot_prodv8siv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34070 : {
34071 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34072 : start_sequence ();
34073 : {
34074 : #define FAIL return (end_sequence (), nullptr)
34075 : #define DONE return end_sequence ()
34076 : #line 32899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34077 : {
34078 : operands[1] = lowpart_subreg (V8SImode,
34079 : force_reg (V16HImode, operands[1]),
34080 : V16HImode);
34081 : operands[2] = lowpart_subreg (V8SImode,
34082 : force_reg (V16HImode, operands[2]),
34083 : V16HImode);
34084 : emit_insn (gen_vpdpwuud_v8si (operands[0], operands[3],
34085 : operands[1], operands[2]));
34086 : DONE;
34087 : }
34088 : #undef DONE
34089 : #undef FAIL
34090 : }
34091 : static const uint8_t expand_encoding[] = {
34092 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34093 : 0x03
34094 : };
34095 : return complete_seq (expand_encoding, operands);
34096 : }
34097 :
34098 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32947 */
34099 : rtx
34100 : gen_vpdpwsud_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34101 : {
34102 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34103 : start_sequence ();
34104 : {
34105 : #define FAIL return (end_sequence (), nullptr)
34106 : #define DONE return end_sequence ()
34107 : #line 32958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34108 : operands[5] = CONST0_RTX (V8SImode);
34109 : #undef DONE
34110 : #undef FAIL
34111 : }
34112 : static const uint8_t expand_encoding[] = {
34113 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
34114 : 0x56, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34115 : 0x81, 0x6c, 0x01, 0x05, 0x01, 0x04
34116 : };
34117 : return complete_seq (expand_encoding, operands);
34118 : }
34119 :
34120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32999 */
34121 : rtx
34122 : gen_vdpphps_v16sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34123 : {
34124 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34125 : start_sequence ();
34126 : {
34127 : #define FAIL return (end_sequence (), nullptr)
34128 : #define DONE return end_sequence ()
34129 : #line 33006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34130 : {
34131 : emit_insn (gen_vdpphps_v16sf_maskz_1 (operands[0], operands[1],
34132 : operands[2], operands[3], CONST0_RTX(V16SFmode), operands[4]));
34133 : DONE;
34134 : }
34135 : #undef DONE
34136 : #undef FAIL
34137 : }
34138 : static const uint8_t expand_encoding[] = {
34139 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34140 : 0x03, 0x01, 0x04
34141 : };
34142 : return complete_seq (expand_encoding, operands);
34143 : }
34144 :
34145 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33124 */
34146 : rtx
34147 : gen_avx10_2_fnmaddbf16_v16bf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34148 : {
34149 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34150 : start_sequence ();
34151 : {
34152 : #define FAIL return (end_sequence (), nullptr)
34153 : #define DONE return end_sequence ()
34154 : #line 33131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34155 : {
34156 : emit_insn (gen_avx10_2_fnmaddbf16_v16bf_maskz_1 (operands[0], operands[1],
34157 : operands[2], operands[3],
34158 : CONST0_RTX (V16BFmode),
34159 : operands[4]));
34160 : DONE;
34161 : }
34162 : #undef DONE
34163 : #undef FAIL
34164 : }
34165 : static const uint8_t expand_encoding[] = {
34166 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34167 : 0x03, 0x01, 0x04
34168 : };
34169 : return complete_seq (expand_encoding, operands);
34170 : }
34171 :
34172 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:86 */
34173 : rtx
34174 : gen_sse2_mfence (void)
34175 : {
34176 : rtx operands[1] ATTRIBUTE_UNUSED;
34177 : start_sequence ();
34178 : {
34179 : #define FAIL return (end_sequence (), nullptr)
34180 : #define DONE return end_sequence ()
34181 : #line 90 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34182 : {
34183 : operands[0] = gen_rtx_MEM (BLKmode, gen_rtx_SCRATCH (Pmode));
34184 : MEM_VOLATILE_P (operands[0]) = 1;
34185 : }
34186 : #undef DONE
34187 : #undef FAIL
34188 : }
34189 : static const uint8_t expand_encoding[] = {
34190 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x01, 0x01, 0x01,
34191 : 0x00, 0x82, 0x1e
34192 : };
34193 : return complete_seq (expand_encoding, operands);
34194 : }
34195 :
34196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:238 */
34197 : rtx
34198 : gen_atomic_storehi (const rtx operand0, const rtx operand1, const rtx operand2)
34199 : {
34200 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34201 : start_sequence ();
34202 : {
34203 : #define FAIL return (end_sequence (), nullptr)
34204 : #define DONE return end_sequence ()
34205 : #line 244 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34206 : {
34207 : enum memmodel model = memmodel_from_int (INTVAL (operands[2]));
34208 :
34209 : if (HImode == DImode && !TARGET_64BIT)
34210 : {
34211 : /* For DImode on 32-bit, we can use the FPU to perform the store. */
34212 : /* Note that while we could perform a cmpxchg8b loop, that turns
34213 : out to be significantly larger than this plus a barrier. */
34214 : emit_insn (gen_atomic_storedi_fpu
34215 : (operands[0], operands[1],
34216 : assign_stack_temp (DImode, GET_MODE_SIZE (DImode))));
34217 : }
34218 : else
34219 : {
34220 : operands[1] = force_reg (HImode, operands[1]);
34221 :
34222 : /* For seq-cst stores, use XCHG when we lack MFENCE. */
34223 : if (is_mm_seq_cst (model)
34224 : && (!(TARGET_64BIT || TARGET_SSE2)
34225 : || TARGET_AVOID_MFENCE))
34226 : {
34227 : emit_insn (gen_atomic_exchangehi (gen_reg_rtx (HImode),
34228 : operands[0], operands[1],
34229 : operands[2]));
34230 : DONE;
34231 : }
34232 :
34233 : /* Otherwise use a store. */
34234 : emit_insn (gen_atomic_storehi_1 (operands[0], operands[1],
34235 : operands[2]));
34236 : }
34237 : /* ... followed by an MFENCE, if required. */
34238 : if (is_mm_seq_cst (model))
34239 : emit_insn (gen_mem_thread_fence (operands[2]));
34240 : DONE;
34241 : }
34242 : #undef DONE
34243 : #undef FAIL
34244 : }
34245 : static const uint8_t expand_encoding[] = {
34246 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x01,
34247 : 0x01, 0x01, 0x02, 0x82, 0x24
34248 : };
34249 : return complete_seq (expand_encoding, operands);
34250 : }
34251 :
34252 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:504 */
34253 : extern rtx_insn *gen_peephole2_436 (rtx_insn *, rtx *);
34254 : rtx_insn *
34255 : gen_peephole2_436 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34256 : {
34257 : if (dump_file)
34258 : fprintf (dump_file, "Splitting with gen_peephole2_436 (sync.md:504)\n");
34259 : start_sequence ();
34260 : static const uint8_t expand_encoding[] = {
34261 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
34262 : 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x10, 0x04, 0x01,
34263 : 0x02, 0x01, 0x00, 0x01, 0x03, 0x01, 0x04, 0x6d,
34264 : 0x1f, 0x01, 0x02, 0x1b, 0x10, 0x01, 0x27, 0x00,
34265 : 0x6d, 0x1f, 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01,
34266 : 0x27, 0x00, 0x6d
34267 : };
34268 : return complete_seq (expand_encoding, operands);
34269 : }
34270 :
34271 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:539 */
34272 : extern rtx_insn *gen_peephole2_445 (rtx_insn *, rtx *);
34273 : rtx_insn *
34274 : gen_peephole2_445 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34275 : {
34276 : if (dump_file)
34277 : fprintf (dump_file, "Splitting with gen_peephole2_445 (sync.md:539)\n");
34278 : start_sequence ();
34279 : static const uint8_t expand_encoding[] = {
34280 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
34281 : 0x01, 0x05, 0x02, 0x11, 0x17, 0x00, 0x03, 0x1f,
34282 : 0x01, 0x02, 0x1b, 0x12, 0x04, 0x01, 0x03, 0x01,
34283 : 0x02, 0x01, 0x04, 0x01, 0x05, 0x6d, 0x1f, 0x01,
34284 : 0x03, 0x1b, 0x12, 0x01, 0x27, 0x00, 0x6d, 0x1f,
34285 : 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01, 0x27, 0x00,
34286 : 0x6d
34287 : };
34288 : return complete_seq (expand_encoding, operands);
34289 : }
34290 :
34291 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:573 */
34292 : rtx
34293 : gen_atomic_fetch_xorsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34294 : {
34295 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34296 : start_sequence ();
34297 : {
34298 : #define FAIL return (end_sequence (), nullptr)
34299 : #define DONE return end_sequence ()
34300 : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34301 : {
34302 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34303 : operands[2], XOR, false,
34304 : false);
34305 : DONE;
34306 : }
34307 : #undef DONE
34308 : #undef FAIL
34309 : }
34310 : static const uint8_t expand_encoding[] = {
34311 : 0x03, 0x01, 0x00, 0x4b, 0x11, 0x01, 0x01, 0x01,
34312 : 0x02, 0x01, 0x03
34313 : };
34314 : return complete_seq (expand_encoding, operands);
34315 : }
34316 :
34317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:601 */
34318 : rtx
34319 : gen_atomic_fetch_nandqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34320 : {
34321 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34322 : start_sequence ();
34323 : {
34324 : #define FAIL return (end_sequence (), nullptr)
34325 : #define DONE return end_sequence ()
34326 : #line 607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34327 : {
34328 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34329 : operands[2], NOT, false,
34330 : false);
34331 : DONE;
34332 : }
34333 : #undef DONE
34334 : #undef FAIL
34335 : }
34336 : static const uint8_t expand_encoding[] = {
34337 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34338 : 0x03
34339 : };
34340 : return complete_seq (expand_encoding, operands);
34341 : }
34342 :
34343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:627 */
34344 : rtx
34345 : gen_atomic_fetch_andti (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34346 : {
34347 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34348 : start_sequence ();
34349 : {
34350 : #define FAIL return (end_sequence (), nullptr)
34351 : #define DONE return end_sequence ()
34352 : #line 634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34353 : {
34354 : bool doubleword = (TImode == DImode && !TARGET_64BIT)
34355 : || (TImode == TImode);
34356 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34357 : operands[2], AND, false,
34358 : doubleword);
34359 : DONE;
34360 : }
34361 : #undef DONE
34362 : #undef FAIL
34363 : }
34364 : static const uint8_t expand_encoding[] = {
34365 : 0x03, 0x01, 0x00, 0x49, 0x13, 0x01, 0x01, 0x01,
34366 : 0x02, 0x01, 0x03
34367 : };
34368 : return complete_seq (expand_encoding, operands);
34369 : }
34370 :
34371 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:674 */
34372 : rtx
34373 : gen_atomic_nand_fetchdi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34374 : {
34375 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34376 : start_sequence ();
34377 : {
34378 : #define FAIL return (end_sequence (), nullptr)
34379 : #define DONE return end_sequence ()
34380 : #line 680 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34381 : {
34382 : bool doubleword = (DImode == DImode && !TARGET_64BIT)
34383 : || (DImode == TImode);
34384 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34385 : operands[2], NOT, true,
34386 : doubleword);
34387 : DONE;
34388 : }
34389 : #undef DONE
34390 : #undef FAIL
34391 : }
34392 : static const uint8_t expand_encoding[] = {
34393 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34394 : 0x03
34395 : };
34396 : return complete_seq (expand_encoding, operands);
34397 : }
34398 :
34399 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:889 */
34400 : rtx
34401 : gen_atomic_bit_test_and_setsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34402 : {
34403 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34404 : start_sequence ();
34405 : {
34406 : #define FAIL return (end_sequence (), nullptr)
34407 : #define DONE return end_sequence ()
34408 : #line 896 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34409 : {
34410 : emit_insn (gen_atomic_bit_test_and_setsi_1 (operands[1], operands[2],
34411 : operands[3]));
34412 : rtx tem = gen_reg_rtx (QImode);
34413 : ix86_expand_setcc (tem, EQ, gen_rtx_REG (CCCmode, FLAGS_REG), const0_rtx);
34414 : rtx result = convert_modes (SImode, QImode, tem, 1);
34415 : if (operands[4] == const0_rtx)
34416 : result = expand_simple_binop (SImode, ASHIFT, result,
34417 : operands[2], operands[0], 0, OPTAB_WIDEN);
34418 : if (result != operands[0])
34419 : emit_move_insn (operands[0], result);
34420 : DONE;
34421 : }
34422 : #undef DONE
34423 : #undef FAIL
34424 : }
34425 : static const uint8_t expand_encoding[] = {
34426 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34427 : 0x03, 0x01, 0x04
34428 : };
34429 : return complete_seq (expand_encoding, operands);
34430 : }
34431 :
34432 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1000 */
34433 : rtx
34434 : gen_atomic_add_fetch_cmp_0hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34435 : {
34436 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34437 : start_sequence ();
34438 : {
34439 : #define FAIL return (end_sequence (), nullptr)
34440 : #define DONE return end_sequence ()
34441 : #line 1007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34442 : {
34443 : if (INTVAL (operands[4]) == GT || INTVAL (operands[4]) == LE)
34444 : FAIL;
34445 : emit_insn (gen_atomic_add_fetch_cmp_0hi_1 (operands[1],
34446 : operands[2],
34447 : operands[3]));
34448 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34449 : gen_rtx_REG (CCGOCmode, FLAGS_REG), const0_rtx);
34450 : DONE;
34451 : }
34452 : #undef DONE
34453 : #undef FAIL
34454 : }
34455 : static const uint8_t expand_encoding[] = {
34456 : 0x04, 0x01, 0x00, 0x3b, 0x10, 0x01, 0x01, 0x01,
34457 : 0x02, 0x01, 0x03, 0x01, 0x04
34458 : };
34459 : return complete_seq (expand_encoding, operands);
34460 : }
34461 :
34462 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1074 */
34463 : rtx
34464 : gen_atomic_or_fetch_cmp_0hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34465 : {
34466 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34467 : start_sequence ();
34468 : {
34469 : #define FAIL return (end_sequence (), nullptr)
34470 : #define DONE return end_sequence ()
34471 : #line 1081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34472 : {
34473 : emit_insn (gen_atomic_or_fetch_cmp_0hi_1 (operands[1], operands[2],
34474 : operands[3]));
34475 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34476 : gen_rtx_REG (CCNOmode, FLAGS_REG), const0_rtx);
34477 : DONE;
34478 : }
34479 : #undef DONE
34480 : #undef FAIL
34481 : }
34482 : static const uint8_t expand_encoding[] = {
34483 : 0x04, 0x01, 0x00, 0x4a, 0x10, 0x01, 0x01, 0x01,
34484 : 0x02, 0x01, 0x03, 0x01, 0x04
34485 : };
34486 : return complete_seq (expand_encoding, operands);
34487 : }
34488 :
34489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1170 */
34490 : extern rtx_insn *gen_peephole2_457 (rtx_insn *, rtx *);
34491 : rtx_insn *
34492 : gen_peephole2_457 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34493 : {
34494 : if (dump_file)
34495 : fprintf (dump_file, "Splitting with gen_peephole2_457 (sync.md:1170)\n");
34496 : start_sequence ();
34497 : #define FAIL return (end_sequence (), nullptr)
34498 : #define DONE return end_sequence ()
34499 : #line 1212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34500 : {
34501 : operands[9] = gen_rtx_REG (GET_MODE (XEXP (operands[8], 0)), FLAGS_REG);
34502 : if (swap_condition (GET_CODE (operands[8])) != GET_CODE (operands[8]))
34503 : {
34504 : operands[8] = shallow_copy_rtx (operands[8]);
34505 : enum rtx_code ccode = swap_condition (GET_CODE (operands[8]));
34506 : PUT_CODE (operands[8], ccode);
34507 : operands[9] = gen_rtx_REG (SELECT_CC_MODE (ccode,
34508 : operands[6],
34509 : operands[5]),
34510 : FLAGS_REG);
34511 : }
34512 : }
34513 : #undef DONE
34514 : #undef FAIL
34515 : static const uint8_t expand_encoding[] = {
34516 : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
34517 : 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x04, 0x01,
34518 : 0x02, 0x01, 0x00, 0x01, 0x03, 0x01, 0x04, 0x70,
34519 : 0x1f, 0x01, 0x02, 0x1b, 0x11, 0x01, 0x27, 0x00,
34520 : 0x70, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
34521 : 0x02, 0x01, 0x00, 0x1f, 0x01, 0x07, 0x02, 0x08,
34522 : 0x01, 0x09, 0x27, 0x00
34523 : };
34524 : return complete_seq (expand_encoding, operands);
34525 : }
34526 :
|