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_ccmpdi (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 : 0x12, 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:3957 */
55 : rtx
56 15 : gen_push2p_di (const rtx operand0, const rtx operand1, const rtx operand2)
57 : {
58 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
59 15 : static const uint8_t expand_encoding[] = {
60 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x13,
61 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x6a, 0x1a, 0x12,
62 : 0x01, 0x27, 0x00, 0x6d
63 : };
64 15 : return expand_rtx (expand_encoding, operands);
65 : }
66 :
67 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5036 */
68 : rtx
69 35395 : gen_extendditi2 (const rtx operand0, const rtx operand1)
70 : {
71 35395 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
72 35395 : static const uint8_t expand_encoding[] = {
73 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x6e, 0x13,
74 : 0x01, 0x01, 0x05, 0x02, 0x11, 0x21, 0x00, 0x31,
75 : 0x12
76 : };
77 35395 : return expand_rtx (expand_encoding, operands);
78 : }
79 :
80 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5815 */
81 : rtx
82 1 : gen_fixuns_trunchfdi2 (const rtx operand0, const rtx operand1)
83 : {
84 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
85 1 : static const uint8_t expand_encoding[] = {
86 : 0x1f, 0x01, 0x00, 0x76, 0x12, 0x01, 0x01
87 : };
88 1 : return expand_rtx (expand_encoding, operands);
89 : }
90 :
91 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6021 */
92 : rtx
93 1 : gen_fix_truncsi_i387_fisttp (const rtx operand0, const rtx operand1)
94 : {
95 1 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
96 1 : static const uint8_t expand_encoding[] = {
97 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74, 0x11,
98 : 0x01, 0x01, 0x21, 0x00, 0x31, 0x2f
99 : };
100 1 : return expand_rtx (expand_encoding, operands);
101 : }
102 :
103 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6122 */
104 : rtx
105 3301 : gen_floatdixf2 (const rtx operand0, const rtx operand1)
106 : {
107 3301 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
108 3301 : static const uint8_t expand_encoding[] = {
109 : 0x1f, 0x01, 0x00, 0x73, 0x2f, 0x01, 0x01
110 : };
111 3301 : return expand_rtx (expand_encoding, operands);
112 : }
113 :
114 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6345 */
115 : rtx
116 21 : gen_floatunssixf2_i387_with_xmm (const rtx operand0, const rtx operand1, const rtx operand2)
117 : {
118 21 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
119 21 : static const uint8_t expand_encoding[] = {
120 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x75, 0x2f,
121 : 0x01, 0x01, 0x21, 0x00, 0x01, 0x02, 0x21, 0x00,
122 : 0x31, 0x12
123 : };
124 21 : return expand_rtx (expand_encoding, operands);
125 : }
126 :
127 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8876 */
128 : rtx
129 3 : gen_addqi3_carry (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
130 : {
131 3 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
132 3 : static const uint8_t expand_encoding[] = {
133 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x0f,
134 : 0x3b, 0x0f, 0x03, 0x0f, 0x04, 0x01, 0x03, 0x27,
135 : 0x00, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
136 : };
137 3 : return expand_rtx (expand_encoding, operands);
138 : }
139 :
140 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9541 */
141 : rtx
142 262 : gen_subsi3_carry (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
143 : {
144 262 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
145 262 : static const uint8_t expand_encoding[] = {
146 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x11,
147 : 0x3c, 0x11, 0x01, 0x01, 0x03, 0x11, 0x04, 0x01,
148 : 0x03, 0x27, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
149 : };
150 262 : return expand_rtx (expand_encoding, operands);
151 : }
152 :
153 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10328 */
154 : rtx
155 4 : gen_addqi3_cc_overflow_1 (const rtx operand0, const rtx operand1, const rtx operand2)
156 : {
157 4 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
158 4 : static const uint8_t expand_encoding[] = {
159 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
160 : 0x08, 0x3b, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x01,
161 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x0f, 0x01, 0x01,
162 : 0x01, 0x02
163 : };
164 4 : return expand_rtx (expand_encoding, operands);
165 : }
166 :
167 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11807 */
168 : rtx
169 4 : gen_divmoddi4_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
170 : {
171 4 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
172 4 : static const uint8_t expand_encoding[] = {
173 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x43, 0x12,
174 : 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x46,
175 : 0x12, 0x01, 0x02, 0x01, 0x03, 0x1a, 0x00, 0x01,
176 : 0x27, 0x00, 0x21, 0x05, 0x02, 0x11
177 : };
178 4 : return expand_rtx (expand_encoding, operands);
179 : }
180 :
181 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12392 */
182 : rtx
183 354 : gen_udivmodhiqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
184 : {
185 354 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
186 354 : static const uint8_t expand_encoding[] = {
187 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x10,
188 : 0x4d, 0x10, 0x6f, 0x10, 0x70, 0x0f, 0x46, 0x10,
189 : 0x01, 0x01, 0x6f, 0x10, 0x01, 0x02, 0x27, 0x08,
190 : 0x6f, 0x10, 0x70, 0x0f, 0x43, 0x10, 0x01, 0x01,
191 : 0x6f, 0x10, 0x01, 0x02, 0x05, 0x02, 0x11
192 : };
193 354 : return expand_rtx (expand_encoding, operands);
194 : }
195 :
196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16007 */
197 : rtx
198 1884 : gen_x86_shld (const rtx operand0, const rtx operand1, const rtx operand2)
199 : {
200 1884 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
201 1884 : static const uint8_t expand_encoding[] = {
202 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x11,
203 : 0x4d, 0x11, 0x01, 0x00, 0x49, 0x0f, 0x01, 0x02,
204 : 0x27, 0x1f, 0x32, 0x11, 0x50, 0x12, 0x6f, 0x12,
205 : 0x01, 0x01, 0x3c, 0x0f, 0x27, 0x20, 0x49, 0x0f,
206 : 0x01, 0x02, 0x27, 0x1f, 0x00, 0x05, 0x02, 0x11
207 : };
208 1884 : return expand_rtx (expand_encoding, operands);
209 : }
210 :
211 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17072 */
212 : rtx
213 2 : gen_ashrti3_doubleword (const rtx operand0, const rtx operand1, const rtx operand2)
214 : {
215 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
216 2 : static const uint8_t expand_encoding[] = {
217 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4f, 0x13,
218 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
219 : };
220 2 : return expand_rtx (expand_encoding, operands);
221 : }
222 :
223 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17181 */
224 : rtx
225 0 : gen_x86_64_shrd_ndd_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
226 : {
227 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
228 0 : static const uint8_t expand_encoding[] = {
229 : 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x50, 0x12, 0x01,
230 : 0x01, 0x49, 0x0f, 0x01, 0x03, 0x27, 0x3f, 0x32,
231 : 0x12, 0x4d, 0x13, 0x6f, 0x13, 0x01, 0x02, 0x3c,
232 : 0x0f, 0x27, 0x40, 0x49, 0x0f, 0x01, 0x03, 0x27,
233 : 0x3f, 0x00
234 : };
235 0 : return expand_rtx (expand_encoding, operands);
236 : }
237 :
238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17429 */
239 : rtx
240 0 : gen_x86_shrd_1_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
241 : {
242 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
243 0 : static const uint8_t expand_encoding[] = {
244 : 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x50, 0x11, 0x01,
245 : 0x00, 0x01, 0x02, 0x32, 0x11, 0x4d, 0x12, 0x6f,
246 : 0x12, 0x01, 0x01, 0x01, 0x03, 0x00
247 : };
248 0 : return expand_rtx (expand_encoding, operands);
249 : }
250 :
251 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18758 */
252 : rtx
253 0 : gen_ix86_rotlti3_doubleword (const rtx operand0, const rtx operand1, const rtx operand2)
254 : {
255 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
256 0 : static const uint8_t expand_encoding[] = {
257 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x4e, 0x13,
258 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11, 0x21,
259 : 0x00, 0x31, 0x12
260 : };
261 0 : return expand_rtx (expand_encoding, operands);
262 : }
263 :
264 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19173 */
265 : rtx
266 0 : gen_ashrsi3_carry (const rtx operand0, const rtx operand1)
267 : {
268 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
269 0 : static const uint8_t expand_encoding[] = {
270 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a,
271 : 0x08, 0x02, 0x49, 0x11, 0x01, 0x01, 0x27, 0x01,
272 : 0x27, 0x00, 0x29, 0x1f, 0x01, 0x00, 0x4f, 0x11,
273 : 0x01, 0x01, 0x27, 0x01
274 : };
275 0 : return expand_rtx (expand_encoding, operands);
276 : }
277 :
278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21118 */
279 : rtx
280 23 : gen_nops (const rtx operand0)
281 : {
282 23 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
283 23 : static const uint8_t expand_encoding[] = {
284 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x08
285 : };
286 23 : return expand_rtx (expand_encoding, operands);
287 : }
288 :
289 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21474 */
290 : rtx
291 562 : gen_ctzdi2 (const rtx operand0, const rtx operand1)
292 : {
293 562 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
294 562 : static const uint8_t expand_encoding[] = {
295 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x01,
296 : 0x12, 0x01, 0x01, 0x05, 0x02, 0x11
297 : };
298 562 : return expand_rtx (expand_encoding, operands);
299 : }
300 :
301 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21938 */
302 : rtx
303 8 : gen_clzdi2_lzcnt (const rtx operand0, const rtx operand1)
304 : {
305 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
306 8 : static const uint8_t expand_encoding[] = {
307 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x00,
308 : 0x12, 0x01, 0x01, 0x05, 0x02, 0x11
309 : };
310 8 : return expand_rtx (expand_encoding, operands);
311 : }
312 :
313 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22154 */
314 : rtx
315 40 : gen_tzcnt_hi (const rtx operand0, const rtx operand1)
316 : {
317 40 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
318 40 : static const uint8_t expand_encoding[] = {
319 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x10,
320 : 0x01, 0x01, 0x01, 0x62, 0x05, 0x02, 0x11
321 : };
322 40 : return expand_rtx (expand_encoding, operands);
323 : }
324 :
325 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22585 */
326 : rtx
327 5 : gen_tbm_bextri_di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
328 : {
329 5 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
330 5 : static const uint8_t expand_encoding[] = {
331 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x06,
332 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x05,
333 : 0x02, 0x11
334 : };
335 5 : return expand_rtx (expand_encoding, operands);
336 : }
337 :
338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24151 */
339 : rtx
340 102 : gen_truncxfdf2_i387_noop_unspec (const rtx operand0, const rtx operand1)
341 : {
342 102 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
343 102 : static const uint8_t expand_encoding[] = {
344 : 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x01, 0x01, 0x01,
345 : 0x20
346 : };
347 102 : return expand_rtx (expand_encoding, operands);
348 : }
349 :
350 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24584 */
351 : rtx
352 4 : gen_atan2xf3 (const rtx operand0, const rtx operand1, const rtx operand2)
353 : {
354 4 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
355 4 : static const uint8_t expand_encoding[] = {
356 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
357 : 0x02, 0x01, 0x02, 0x01, 0x01, 0x43, 0x21, 0x00,
358 : 0x31, 0x2f
359 : };
360 4 : return expand_rtx (expand_encoding, operands);
361 : }
362 :
363 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25417 */
364 : rtx
365 45 : gen_sse4_1_rounddf2 (const rtx operand0, const rtx operand1, const rtx operand2)
366 : {
367 45 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
368 45 : static const uint8_t expand_encoding[] = {
369 : 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x02, 0x01, 0x01,
370 : 0x01, 0x02, 0x5f
371 : };
372 45 : return expand_rtx (expand_encoding, operands);
373 : }
374 :
375 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25702 */
376 : rtx
377 54 : gen_frndintxf2_trunc_i387 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
378 : {
379 54 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
380 54 : static const uint8_t expand_encoding[] = {
381 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
382 : 0x01, 0x01, 0x01, 0x4e, 0x20, 0x00, 0x01, 0x02,
383 : 0x20, 0x00, 0x01, 0x03
384 : };
385 54 : return expand_rtx (expand_encoding, operands);
386 : }
387 :
388 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25946 */
389 : rtx
390 742 : gen_movmsk_df (const rtx operand0, const rtx operand1)
391 : {
392 742 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
393 742 : static const uint8_t expand_encoding[] = {
394 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
395 : 0x32
396 : };
397 742 : return expand_rtx (expand_encoding, operands);
398 : }
399 :
400 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27749 */
401 : rtx
402 1272362 : gen_pro_epilogue_adjust_stack_add_di (const rtx operand0, const rtx operand1, const rtx operand2)
403 : {
404 1272362 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
405 1272362 : static const uint8_t expand_encoding[] = {
406 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x3b, 0x12,
407 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11, 0x21,
408 : 0x00, 0x36, 0x01, 0x31, 0x00
409 : };
410 1272362 : return expand_rtx (expand_encoding, operands);
411 : }
412 :
413 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27917 */
414 : rtx
415 0 : gen_probe_stack_range_di (const rtx operand0, const rtx operand1, const rtx operand2)
416 : {
417 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
418 0 : static const uint8_t expand_encoding[] = {
419 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
420 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x03, 0x05, 0x02,
421 : 0x11
422 : };
423 0 : return expand_rtx (expand_encoding, operands);
424 : }
425 :
426 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29783 */
427 : rtx
428 6 : gen_prefetchi (const rtx operand0, const rtx operand1)
429 : {
430 6 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
431 6 : static const uint8_t expand_encoding[] = {
432 : 0x1b, 0x00, 0x02, 0x01, 0x00, 0x01, 0x01, 0x54
433 : };
434 6 : return expand_rtx (expand_encoding, operands);
435 : }
436 :
437 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29915 */
438 : rtx
439 22 : gen_rdtscp_rex64 (const rtx operand0, const rtx operand1, const rtx operand2)
440 : {
441 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
442 22 : static const uint8_t expand_encoding[] = {
443 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x12,
444 : 0x01, 0x27, 0x00, 0x0a, 0x1f, 0x01, 0x01, 0x1b,
445 : 0x12, 0x01, 0x27, 0x00, 0x0a, 0x1f, 0x01, 0x02,
446 : 0x1b, 0x11, 0x01, 0x27, 0x00, 0x0a
447 : };
448 22 : return expand_rtx (expand_encoding, operands);
449 : }
450 :
451 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30023 */
452 : rtx
453 19 : gen_xsaves_rex64 (const rtx operand0, const rtx operand1, const rtx operand2)
454 : {
455 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
456 19 : static const uint8_t expand_encoding[] = {
457 : 0x1f, 0x01, 0x00, 0x1b, 0x01, 0x02, 0x01, 0x01,
458 : 0x01, 0x02, 0x1e
459 : };
460 19 : return expand_rtx (expand_encoding, operands);
461 : }
462 :
463 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30077 */
464 : rtx
465 19 : gen_xrstors64 (const rtx operand0, const rtx operand1, const rtx operand2)
466 : {
467 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
468 19 : static const uint8_t expand_encoding[] = {
469 : 0x1b, 0x01, 0x03, 0x01, 0x00, 0x01, 0x01, 0x01,
470 : 0x02, 0x21
471 : };
472 19 : return expand_rtx (expand_encoding, operands);
473 : }
474 :
475 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30205 */
476 : rtx
477 0 : gen_lwp_slwpcbsi (const rtx operand0)
478 : {
479 0 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
480 0 : static const uint8_t expand_encoding[] = {
481 : 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x01, 0x27, 0x00,
482 : 0x0d
483 : };
484 0 : return expand_rtx (expand_encoding, operands);
485 : }
486 :
487 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30262 */
488 : rtx
489 19 : gen_wrfsbasesi (const rtx operand0)
490 : {
491 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
492 19 : static const uint8_t expand_encoding[] = {
493 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x12
494 : };
495 19 : return expand_rtx (expand_encoding, operands);
496 : }
497 :
498 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30290 */
499 : rtx
500 28 : gen_rdseedsi (const rtx operand0)
501 : {
502 28 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
503 28 : static const uint8_t expand_encoding[] = {
504 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x11,
505 : 0x01, 0x27, 0x00, 0x2d, 0x1f, 0x30, 0x08, 0x11,
506 : 0x1b, 0x08, 0x01, 0x27, 0x00, 0x2d
507 : };
508 28 : return expand_rtx (expand_encoding, operands);
509 : }
510 :
511 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30361 */
512 : rtx
513 20 : gen_wrusssi (const rtx operand0, const rtx operand1)
514 : {
515 20 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
516 20 : static const uint8_t expand_encoding[] = {
517 : 0x1b, 0x00, 0x02, 0x01, 0x00, 0x01, 0x01, 0x40
518 : };
519 20 : return expand_rtx (expand_encoding, operands);
520 : }
521 :
522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30485 */
523 : rtx
524 21 : gen_mwaitx (const rtx operand0, const rtx operand1, const rtx operand2)
525 : {
526 21 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
527 21 : static const uint8_t expand_encoding[] = {
528 : 0x1b, 0x00, 0x03, 0x01, 0x00, 0x01, 0x01, 0x01,
529 : 0x02, 0x36
530 : };
531 21 : return expand_rtx (expand_encoding, operands);
532 : }
533 :
534 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30591 */
535 : rtx
536 20 : gen_movdiridi (const rtx operand0, const rtx operand1)
537 : {
538 20 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
539 20 : static const uint8_t expand_encoding[] = {
540 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
541 : 0x67
542 : };
543 20 : return expand_rtx (expand_encoding, operands);
544 : }
545 :
546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30651 */
547 : rtx
548 20 : gen_senduipi (const rtx operand0)
549 : {
550 20 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
551 20 : static const uint8_t expand_encoding[] = {
552 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x4b
553 : };
554 20 : return expand_rtx (expand_encoding, operands);
555 : }
556 :
557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30730 */
558 : rtx
559 49 : gen_patchable_area (const rtx operand0, const rtx operand1)
560 : {
561 49 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
562 49 : static const uint8_t expand_encoding[] = {
563 : 0x1b, 0x00, 0x02, 0x01, 0x00, 0x01, 0x01, 0x52
564 : };
565 49 : return expand_rtx (expand_encoding, operands);
566 : }
567 :
568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:655 */
569 : rtx
570 12 : gen_sse_movntq (const rtx operand0, const rtx operand1)
571 : {
572 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
573 12 : static const uint8_t expand_encoding[] = {
574 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
575 : 0x70
576 : };
577 12 : return expand_rtx (expand_encoding, operands);
578 : }
579 :
580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1244 */
581 : rtx
582 14 : gen_mmx_gev2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
583 : {
584 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
585 14 : static const uint8_t expand_encoding[] = {
586 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x5e, 0x4a,
587 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
588 : 0x00, 0x6f
589 : };
590 14 : return expand_rtx (expand_encoding, operands);
591 : }
592 :
593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1632 */
594 : rtx
595 14 : gen_mmx_pf2iw (const rtx operand0, const rtx operand1)
596 : {
597 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
598 14 : static const uint8_t expand_encoding[] = {
599 : 0x1f, 0x01, 0x00, 0x6e, 0x4a, 0x81, 0x17, 0x46,
600 : 0x74, 0x4a, 0x01, 0x01
601 : };
602 14 : return expand_rtx (expand_encoding, operands);
603 : }
604 :
605 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2604 */
606 : rtx
607 0 : gen_iorv2hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
608 : {
609 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
610 0 : static const uint8_t expand_encoding[] = {
611 : 0x1f, 0x01, 0x00, 0x4a, 0x63, 0x01, 0x01, 0x01,
612 : 0x02
613 : };
614 0 : return expand_rtx (expand_encoding, operands);
615 : }
616 :
617 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3266 */
618 : rtx
619 211 : gen_addv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
620 : {
621 211 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
622 211 : static const uint8_t expand_encoding[] = {
623 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x44,
624 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
625 : };
626 211 : return expand_rtx (expand_encoding, operands);
627 : }
628 :
629 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3365 */
630 : rtx
631 0 : gen_ssaddv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
632 : {
633 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
634 0 : static const uint8_t expand_encoding[] = {
635 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x46, 0x01, 0x01,
636 : 0x01, 0x02
637 : };
638 0 : return expand_rtx (expand_encoding, operands);
639 : }
640 :
641 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3686 */
642 : rtx
643 2 : gen_smaxv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
644 : {
645 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
646 2 : static const uint8_t expand_encoding[] = {
647 : 0x1f, 0x01, 0x00, 0x53, 0x4a, 0x01, 0x01, 0x01,
648 : 0x02
649 : };
650 2 : return expand_rtx (expand_encoding, operands);
651 : }
652 :
653 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3764 */
654 : rtx
655 0 : gen_umaxv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
656 : {
657 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
658 0 : static const uint8_t expand_encoding[] = {
659 : 0x1f, 0x01, 0x00, 0x55, 0x4a, 0x01, 0x01, 0x01,
660 : 0x02
661 : };
662 0 : return expand_rtx (expand_encoding, operands);
663 : }
664 :
665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3842 */
666 : rtx
667 0 : gen_ssse3_absv2si2 (const rtx operand0, const rtx operand1)
668 : {
669 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
670 0 : static const uint8_t expand_encoding[] = {
671 : 0x1f, 0x01, 0x00, 0x7b, 0x4a, 0x01, 0x01
672 : };
673 0 : return expand_rtx (expand_encoding, operands);
674 : }
675 :
676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3918 */
677 : rtx
678 141 : gen_mmx_ashlv1di3 (const rtx operand0, const rtx operand1, const rtx operand2)
679 : {
680 141 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
681 141 : static const uint8_t expand_encoding[] = {
682 : 0x1f, 0x01, 0x00, 0x4d, 0x4b, 0x01, 0x01, 0x01,
683 : 0x02
684 : };
685 141 : return expand_rtx (expand_encoding, operands);
686 : }
687 :
688 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4197 */
689 : rtx
690 44 : gen_mmx_gtv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
691 : {
692 44 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
693 44 : static const uint8_t expand_encoding[] = {
694 : 0x1f, 0x01, 0x00, 0x5f, 0x48, 0x01, 0x01, 0x01,
695 : 0x02
696 : };
697 44 : return expand_rtx (expand_encoding, operands);
698 : }
699 :
700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4577 */
701 : rtx
702 8 : gen_one_cmplv2qi2 (const rtx operand0, const rtx operand1)
703 : {
704 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
705 8 : static const uint8_t expand_encoding[] = {
706 : 0x1f, 0x01, 0x00, 0x4c, 0x44, 0x01, 0x01
707 : };
708 8 : return expand_rtx (expand_encoding, operands);
709 : }
710 :
711 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4874 */
712 : rtx
713 272 : gen_mmx_punpckhbw (const rtx operand0, const rtx operand1, const rtx operand2)
714 : {
715 272 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
716 272 : static const uint8_t expand_encoding[] = {
717 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x48, 0x81, 0x0b,
718 : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
719 : 0x27, 0x04, 0x27, 0x0c, 0x27, 0x05, 0x27, 0x0d,
720 : 0x27, 0x06, 0x27, 0x0e, 0x27, 0x07, 0x27, 0x0f
721 : };
722 272 : return expand_rtx (expand_encoding, operands);
723 : }
724 :
725 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5072 */
726 : rtx
727 62 : gen_sse4_1_zero_extendv2hiv2si2 (const rtx operand0, const rtx operand1)
728 : {
729 62 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
730 62 : static const uint8_t expand_encoding[] = {
731 : 0x1f, 0x01, 0x00, 0x6f, 0x4a, 0x81, 0x0a, 0x46,
732 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
733 : 0x01
734 : };
735 62 : return expand_rtx (expand_encoding, operands);
736 : }
737 :
738 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5547 */
739 : rtx
740 215 : gen_mmx_pshufbv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
741 : {
742 215 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
743 215 : static const uint8_t expand_encoding[] = {
744 : 0x1f, 0x01, 0x00, 0x1a, 0x45, 0x02, 0x01, 0x01,
745 : 0x01, 0x02, 0x35
746 : };
747 215 : return expand_rtx (expand_encoding, operands);
748 : }
749 :
750 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6986 */
751 : rtx
752 1 : gen_popcountv4qi2 (const rtx operand0, const rtx operand1)
753 : {
754 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
755 1 : static const uint8_t expand_encoding[] = {
756 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x45, 0x01, 0x01
757 : };
758 1 : return expand_rtx (expand_encoding, operands);
759 : }
760 :
761 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
762 : rtx
763 0 : gen_movv8hi_internal (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, 0x01, 0x01
768 : };
769 0 : return expand_rtx (expand_encoding, operands);
770 : }
771 :
772 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
773 : rtx
774 0 : gen_movv32hf_internal (const rtx operand0, const rtx operand1)
775 : {
776 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
777 0 : static const uint8_t expand_encoding[] = {
778 : 0x1f, 0x01, 0x00, 0x01, 0x01
779 : };
780 0 : return expand_rtx (expand_encoding, operands);
781 : }
782 :
783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
784 : rtx
785 0 : gen_movv4df_internal (const rtx operand0, const rtx operand1)
786 : {
787 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
788 0 : static const uint8_t expand_encoding[] = {
789 : 0x1f, 0x01, 0x00, 0x01, 0x01
790 : };
791 0 : return expand_rtx (expand_encoding, operands);
792 : }
793 :
794 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1769 */
795 : rtx
796 12 : gen_avx512vl_blendmv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
797 : {
798 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
799 12 : static const uint8_t expand_encoding[] = {
800 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x01, 0x02,
801 : 0x01, 0x01, 0x01, 0x03
802 : };
803 12 : return expand_rtx (expand_encoding, operands);
804 : }
805 :
806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1769 */
807 : rtx
808 12 : gen_avx512vl_blendmv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
809 : {
810 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
811 12 : static const uint8_t expand_encoding[] = {
812 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x01, 0x02,
813 : 0x01, 0x01, 0x01, 0x03
814 : };
815 12 : return expand_rtx (expand_encoding, operands);
816 : }
817 :
818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1805 */
819 : rtx
820 0 : gen_avx512fp16_blendmv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
821 : {
822 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
823 0 : static const uint8_t expand_encoding[] = {
824 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x01, 0x02,
825 : 0x01, 0x01, 0x01, 0x03
826 : };
827 0 : return expand_rtx (expand_encoding, operands);
828 : }
829 :
830 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2047 */
831 : rtx
832 11 : gen_avx_movntv8sf (const rtx operand0, const rtx operand1)
833 : {
834 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
835 11 : static const uint8_t expand_encoding[] = {
836 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x01, 0x01, 0x01,
837 : 0x76
838 : };
839 11 : return expand_rtx (expand_encoding, operands);
840 : }
841 :
842 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2120 */
843 : rtx
844 715 : gen_kiorqi (const rtx operand0, const rtx operand1, const rtx operand2)
845 : {
846 715 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
847 715 : static const uint8_t expand_encoding[] = {
848 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x0f,
849 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
850 : 0x00, 0x81, 0x2f
851 : };
852 715 : return expand_rtx (expand_encoding, operands);
853 : }
854 :
855 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2120 */
856 : rtx
857 11 : gen_kxordi (const rtx operand0, const rtx operand1, const rtx operand2)
858 : {
859 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
860 11 : static const uint8_t expand_encoding[] = {
861 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x12,
862 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
863 : 0x00, 0x81, 0x2f
864 : };
865 11 : return expand_rtx (expand_encoding, operands);
866 : }
867 :
868 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2226 */
869 : rtx
870 22 : gen_knothi (const rtx operand0, const rtx operand1)
871 : {
872 22 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
873 22 : static const uint8_t expand_encoding[] = {
874 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x10,
875 : 0x01, 0x01, 0x1a, 0x00, 0x01, 0x27, 0x00, 0x81,
876 : 0x2f
877 : };
878 22 : return expand_rtx (expand_encoding, operands);
879 : }
880 :
881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2294 */
882 : rtx
883 189 : gen_klshiftrthi (const rtx operand0, const rtx operand1, const rtx operand2)
884 : {
885 189 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
886 189 : static const uint8_t expand_encoding[] = {
887 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50, 0x10,
888 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
889 : 0x00, 0x81, 0x2f
890 : };
891 189 : return expand_rtx (expand_encoding, operands);
892 : }
893 :
894 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2387 */
895 : rtx
896 2455 : gen_kortesthi_ccc (const rtx operand0, const rtx operand1)
897 : {
898 2455 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
899 2455 : static const uint8_t expand_encoding[] = {
900 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
901 : 0x00, 0x01, 0x01, 0x81, 0x30
902 : };
903 2455 : return expand_rtx (expand_encoding, operands);
904 : }
905 :
906 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
907 : rtx
908 0 : gen_avx512fp16_vmaddv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
909 : {
910 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
911 0 : static const uint8_t expand_encoding[] = {
912 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x3b, 0x6a,
913 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
914 : };
915 0 : return expand_rtx (expand_encoding, operands);
916 : }
917 :
918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
919 : rtx
920 33 : gen_avx512fp16_vmsubv8hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
921 : {
922 33 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
923 33 : static const uint8_t expand_encoding[] = {
924 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
925 : 0x6a, 0x81, 0x09, 0x6a, 0x3c, 0x6a, 0x01, 0x01,
926 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01,
927 : 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
928 : };
929 33 : return expand_rtx (expand_encoding, operands);
930 : }
931 :
932 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
933 : rtx
934 9 : gen_sse2_vmsubv2df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
935 : {
936 9 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
937 9 : static const uint8_t expand_encoding[] = {
938 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
939 : 0x6c, 0x3c, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
940 : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
941 : };
942 9 : return expand_rtx (expand_encoding, operands);
943 : }
944 :
945 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
946 : rtx
947 24 : gen_avx512fp16_vmdivv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
948 : {
949 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
950 24 : static const uint8_t expand_encoding[] = {
951 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
952 : 0x6a, 0x43, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
953 : 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
954 : };
955 24 : return expand_rtx (expand_encoding, operands);
956 : }
957 :
958 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
959 : rtx
960 9 : gen_sse2_vmmulv2df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
961 : {
962 9 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
963 9 : static const uint8_t expand_encoding[] = {
964 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
965 : 0x6c, 0x3e, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
966 : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
967 : };
968 9 : return expand_rtx (expand_encoding, operands);
969 : }
970 :
971 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
972 : rtx
973 24 : gen_avx512fp16_divv32hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
974 : {
975 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
976 24 : static const uint8_t expand_encoding[] = {
977 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x43, 0x73,
978 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
979 : };
980 24 : return expand_rtx (expand_encoding, operands);
981 : }
982 :
983 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
984 : rtx
985 0 : gen_avx_divv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
986 : {
987 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
988 0 : static const uint8_t expand_encoding[] = {
989 : 0x1f, 0x01, 0x00, 0x43, 0x6f, 0x01, 0x01, 0x01,
990 : 0x02
991 : };
992 0 : return expand_rtx (expand_encoding, operands);
993 : }
994 :
995 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
996 : rtx
997 0 : gen_avx_divv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
998 : {
999 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1000 0 : static const uint8_t expand_encoding[] = {
1001 : 0x1f, 0x01, 0x00, 0x43, 0x70, 0x01, 0x01, 0x01,
1002 : 0x02
1003 : };
1004 0 : return expand_rtx (expand_encoding, operands);
1005 : }
1006 :
1007 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2998 */
1008 : rtx
1009 0 : gen_avx512fp16_rcpv16hf2 (const rtx operand0, const rtx operand1)
1010 : {
1011 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1012 0 : static const uint8_t expand_encoding[] = {
1013 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x01, 0x01, 0x01,
1014 : 0x37
1015 : };
1016 0 : return expand_rtx (expand_encoding, operands);
1017 : }
1018 :
1019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3036 */
1020 : rtx
1021 36 : gen_rcp14v8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1022 : {
1023 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1024 36 : static const uint8_t expand_encoding[] = {
1025 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1026 : 0x01, 0x01, 0x01, 0x81, 0x22, 0x01, 0x02, 0x01,
1027 : 0x03
1028 : };
1029 36 : return expand_rtx (expand_encoding, operands);
1030 : }
1031 :
1032 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1033 : rtx
1034 69 : gen_avx512fp16_sqrtv32hf2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1035 : {
1036 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1037 69 : static const uint8_t expand_encoding[] = {
1038 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1039 : 0x73, 0x7c, 0x73, 0x01, 0x01, 0x01, 0x02, 0x01,
1040 : 0x03, 0x01, 0x04, 0x81, 0x33
1041 : };
1042 69 : return expand_rtx (expand_encoding, operands);
1043 : }
1044 :
1045 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1046 : rtx
1047 24 : gen_sse_sqrtv4sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1048 : {
1049 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1050 24 : static const uint8_t expand_encoding[] = {
1051 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x7c, 0x6b,
1052 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
1053 : };
1054 24 : return expand_rtx (expand_encoding, operands);
1055 : }
1056 :
1057 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3117 */
1058 : rtx
1059 0 : gen_avx512fp16_vmsqrtv8hf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1060 : {
1061 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1062 0 : static const uint8_t expand_encoding[] = {
1063 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1064 : 0x6a, 0x7c, 0x6a, 0x01, 0x01, 0x01, 0x03, 0x01,
1065 : 0x04, 0x01, 0x02, 0x27, 0x01
1066 : };
1067 0 : return expand_rtx (expand_encoding, operands);
1068 : }
1069 :
1070 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3174 */
1071 : rtx
1072 14 : gen_sse_rsqrtv4sf2 (const rtx operand0, const rtx operand1)
1073 : {
1074 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1075 14 : static const uint8_t expand_encoding[] = {
1076 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x01, 0x01, 0x01,
1077 : 0x38
1078 : };
1079 14 : return expand_rtx (expand_encoding, operands);
1080 : }
1081 :
1082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3196 */
1083 : rtx
1084 36 : gen_rsqrt14v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1085 : {
1086 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1087 36 : static const uint8_t expand_encoding[] = {
1088 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1089 : 0x01, 0x01, 0x01, 0x81, 0x23, 0x01, 0x02, 0x01,
1090 : 0x03
1091 : };
1092 36 : return expand_rtx (expand_encoding, operands);
1093 : }
1094 :
1095 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3276 */
1096 : rtx
1097 36 : gen_avx512fp16_vmrsqrtv8hf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1098 : {
1099 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1100 36 : static const uint8_t expand_encoding[] = {
1101 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1102 : 0x6a, 0x1a, 0x6a, 0x01, 0x01, 0x01, 0x38, 0x01,
1103 : 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
1104 : };
1105 36 : return expand_rtx (expand_encoding, operands);
1106 : }
1107 :
1108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1109 : rtx
1110 0 : gen_ieee_minv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1111 : {
1112 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1113 0 : static const uint8_t expand_encoding[] = {
1114 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01, 0x01,
1115 : 0x01, 0x02, 0x3f
1116 : };
1117 0 : return expand_rtx (expand_encoding, operands);
1118 : }
1119 :
1120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1121 : rtx
1122 0 : gen_ieee_maxv16sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1123 : {
1124 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1125 0 : static const uint8_t expand_encoding[] = {
1126 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
1127 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x03,
1128 : 0x01, 0x04
1129 : };
1130 0 : return expand_rtx (expand_encoding, operands);
1131 : }
1132 :
1133 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1134 : rtx
1135 22 : gen_ieee_maxv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1136 : {
1137 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1138 22 : static const uint8_t expand_encoding[] = {
1139 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1140 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x03,
1141 : 0x01, 0x04
1142 : };
1143 22 : return expand_rtx (expand_encoding, operands);
1144 : }
1145 :
1146 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1147 : rtx
1148 12 : gen_ieee_maxv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1149 : {
1150 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1151 12 : static const uint8_t expand_encoding[] = {
1152 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01, 0x01,
1153 : 0x01, 0x02, 0x40
1154 : };
1155 12 : return expand_rtx (expand_encoding, operands);
1156 : }
1157 :
1158 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1159 : rtx
1160 0 : gen_avx512fp16_ieee_vmmaxv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1161 : {
1162 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1163 0 : static const uint8_t expand_encoding[] = {
1164 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1165 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x01,
1166 : 0x27, 0x01
1167 : };
1168 0 : return expand_rtx (expand_encoding, operands);
1169 : }
1170 :
1171 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1172 : rtx
1173 0 : gen_sse_ieee_vmmaxv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1174 : {
1175 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1176 0 : static const uint8_t expand_encoding[] = {
1177 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1178 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
1179 : 0x40, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27,
1180 : 0x01
1181 : };
1182 0 : return expand_rtx (expand_encoding, operands);
1183 : }
1184 :
1185 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1186 : rtx
1187 46 : gen_sse2_ieee_vmmaxv2df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1188 : {
1189 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1190 46 : static const uint8_t expand_encoding[] = {
1191 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1192 : 0x6c, 0x81, 0x09, 0x6c, 0x1a, 0x6c, 0x02, 0x01,
1193 : 0x01, 0x01, 0x02, 0x40, 0x01, 0x03, 0x01, 0x04,
1194 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
1195 : };
1196 46 : return expand_rtx (expand_encoding, operands);
1197 : }
1198 :
1199 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3879 */
1200 : rtx
1201 11 : gen_avx_haddv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1202 : {
1203 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1204 11 : static const uint8_t expand_encoding[] = {
1205 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6f, 0x81, 0x0b,
1206 : 0x6b, 0x81, 0x0b, 0x67, 0x3b, 0x2d, 0x81, 0x0a,
1207 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
1208 : 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01,
1209 : 0x27, 0x01, 0x3b, 0x2d, 0x81, 0x0a, 0x2d, 0x01,
1210 : 0x01, 0x17, 0x00, 0x01, 0x27, 0x02, 0x81, 0x0a,
1211 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x03,
1212 : 0x81, 0x0b, 0x67, 0x3b, 0x2d, 0x81, 0x0a, 0x2d,
1213 : 0x01, 0x02, 0x17, 0x00, 0x01, 0x27, 0x00, 0x81,
1214 : 0x0a, 0x2d, 0x01, 0x02, 0x17, 0x00, 0x01, 0x27,
1215 : 0x01, 0x3b, 0x2d, 0x81, 0x0a, 0x2d, 0x01, 0x02,
1216 : 0x17, 0x00, 0x01, 0x27, 0x02, 0x81, 0x0a, 0x2d,
1217 : 0x01, 0x02, 0x17, 0x00, 0x01, 0x27, 0x03, 0x81,
1218 : 0x0b, 0x6b, 0x81, 0x0b, 0x67, 0x3b, 0x2d, 0x81,
1219 : 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27,
1220 : 0x04, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
1221 : 0x01, 0x27, 0x05, 0x3b, 0x2d, 0x81, 0x0a, 0x2d,
1222 : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x06, 0x81,
1223 : 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27,
1224 : 0x07, 0x81, 0x0b, 0x67, 0x3b, 0x2d, 0x81, 0x0a,
1225 : 0x2d, 0x01, 0x02, 0x17, 0x00, 0x01, 0x27, 0x04,
1226 : 0x81, 0x0a, 0x2d, 0x01, 0x02, 0x17, 0x00, 0x01,
1227 : 0x27, 0x05, 0x3b, 0x2d, 0x81, 0x0a, 0x2d, 0x01,
1228 : 0x02, 0x17, 0x00, 0x01, 0x27, 0x06, 0x81, 0x0a,
1229 : 0x2d, 0x01, 0x02, 0x17, 0x00, 0x01, 0x27, 0x07
1230 : };
1231 11 : return expand_rtx (expand_encoding, operands);
1232 : }
1233 :
1234 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4294 */
1235 : rtx
1236 0 : gen_reducesv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1237 : {
1238 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1239 0 : static const uint8_t expand_encoding[] = {
1240 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1241 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1242 : 0x41, 0x01, 0x01, 0x27, 0x01
1243 : };
1244 0 : return expand_rtx (expand_encoding, operands);
1245 : }
1246 :
1247 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4294 */
1248 : rtx
1249 24 : gen_reducesv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1250 : {
1251 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1252 24 : static const uint8_t expand_encoding[] = {
1253 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
1254 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
1255 : 0x01, 0x03, 0x81, 0x41, 0x01, 0x04, 0x01, 0x05,
1256 : 0x01, 0x01, 0x27, 0x01
1257 : };
1258 24 : return expand_rtx (expand_encoding, operands);
1259 : }
1260 :
1261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4604 */
1262 : rtx
1263 16 : gen_avx_maskcmpv4df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1264 : {
1265 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1266 16 : static const uint8_t expand_encoding[] = {
1267 : 0x1f, 0x01, 0x00, 0x03, 0x70, 0x03, 0x01, 0x01,
1268 : 0x01, 0x02
1269 : };
1270 16 : return expand_rtx (expand_encoding, operands);
1271 : }
1272 :
1273 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1274 : rtx
1275 0 : gen_avx512fp16_cmpv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1276 : {
1277 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1278 0 : static const uint8_t expand_encoding[] = {
1279 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1280 : 0x01, 0x02, 0x01, 0x03, 0x3c
1281 : };
1282 0 : return expand_rtx (expand_encoding, operands);
1283 : }
1284 :
1285 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1286 : rtx
1287 91 : gen_avx512vl_cmpv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1288 : {
1289 91 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1290 91 : static const uint8_t expand_encoding[] = {
1291 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1292 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1293 : 0x04
1294 : };
1295 91 : return expand_rtx (expand_encoding, operands);
1296 : }
1297 :
1298 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1299 : rtx
1300 0 : gen_avx512vl_cmpv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1301 : {
1302 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1303 0 : static const uint8_t expand_encoding[] = {
1304 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01, 0x01,
1305 : 0x01, 0x02, 0x01, 0x03, 0x3c
1306 : };
1307 0 : return expand_rtx (expand_encoding, operands);
1308 : }
1309 :
1310 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1311 : rtx
1312 131 : gen_avx512vl_cmpv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1313 : {
1314 131 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1315 131 : static const uint8_t expand_encoding[] = {
1316 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1317 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1318 : 0x04
1319 : };
1320 131 : return expand_rtx (expand_encoding, operands);
1321 : }
1322 :
1323 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1324 : rtx
1325 0 : gen_avx512vl_cmpv2di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1326 : {
1327 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1328 0 : static const uint8_t expand_encoding[] = {
1329 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1330 : 0x01, 0x02, 0x01, 0x03, 0x3c
1331 : };
1332 0 : return expand_rtx (expand_encoding, operands);
1333 : }
1334 :
1335 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1336 : rtx
1337 182 : gen_avx512bw_ucmpv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1338 : {
1339 182 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1340 182 : static const uint8_t expand_encoding[] = {
1341 : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x03,
1342 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e,
1343 : 0x01, 0x04
1344 : };
1345 182 : return expand_rtx (expand_encoding, operands);
1346 : }
1347 :
1348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1349 : rtx
1350 0 : gen_avx512f_ucmpv8di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1351 : {
1352 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1353 0 : static const uint8_t expand_encoding[] = {
1354 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1355 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e
1356 : };
1357 0 : return expand_rtx (expand_encoding, operands);
1358 : }
1359 :
1360 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5191 */
1361 : rtx
1362 0 : gen_avx512f_vmcmpv4sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1363 : {
1364 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1365 0 : static const uint8_t expand_encoding[] = {
1366 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x49, 0x0f,
1367 : 0x1a, 0x0f, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01,
1368 : 0x03, 0x3c, 0x27, 0x01, 0x01, 0x04, 0x81, 0x33
1369 : };
1370 0 : return expand_rtx (expand_encoding, operands);
1371 : }
1372 :
1373 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5225 */
1374 : rtx
1375 0 : gen_avx10_2_ucomxhf (const rtx operand0, const rtx operand1)
1376 : {
1377 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1378 0 : static const uint8_t expand_encoding[] = {
1379 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x01, 0x1a,
1380 : 0x0d, 0x02, 0x81, 0x0a, 0x2b, 0x01, 0x00, 0x17,
1381 : 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2b, 0x01,
1382 : 0x01, 0x17, 0x00, 0x01, 0x27, 0x00, 0x3e, 0x1b
1383 : };
1384 0 : return expand_rtx (expand_encoding, operands);
1385 : }
1386 :
1387 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5225 */
1388 : rtx
1389 1 : gen_avx10_2_ucomxdf_round (const rtx operand0, const rtx operand1, const rtx operand2)
1390 : {
1391 1 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1392 1 : static const uint8_t expand_encoding[] = {
1393 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x1a,
1394 : 0x0d, 0x01, 0x1a, 0x0d, 0x02, 0x81, 0x0a, 0x2e,
1395 : 0x01, 0x00, 0x17, 0x00, 0x01, 0x27, 0x00, 0x81,
1396 : 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27,
1397 : 0x00, 0x3e, 0x1b, 0x01, 0x02, 0x81, 0x33
1398 : };
1399 1 : return expand_rtx (expand_encoding, operands);
1400 : }
1401 :
1402 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5241 */
1403 : rtx
1404 105 : gen_sse2_ucomi (const rtx operand0, const rtx operand1)
1405 : {
1406 105 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1407 105 : static const uint8_t expand_encoding[] = {
1408 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x01, 0x3a,
1409 : 0x0d, 0x81, 0x0a, 0x2e, 0x01, 0x00, 0x17, 0x00,
1410 : 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2e, 0x01, 0x01,
1411 : 0x17, 0x00, 0x01, 0x27, 0x00, 0x1b
1412 : };
1413 105 : return expand_rtx (expand_encoding, operands);
1414 : }
1415 :
1416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5611 */
1417 : rtx
1418 24 : gen_sse_andnotv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1419 : {
1420 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1421 24 : static const uint8_t expand_encoding[] = {
1422 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x49, 0x6b,
1423 : 0x4c, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
1424 : 0x01, 0x04
1425 : };
1426 24 : return expand_rtx (expand_encoding, operands);
1427 : }
1428 :
1429 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6044 */
1430 : rtx
1431 0 : gen_andbf3 (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, 0x2c, 0x01, 0x01, 0x01,
1436 : 0x02
1437 : };
1438 0 : return expand_rtx (expand_encoding, operands);
1439 : }
1440 :
1441 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6044 */
1442 : rtx
1443 746 : gen_anddf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1444 : {
1445 746 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1446 746 : static const uint8_t expand_encoding[] = {
1447 : 0x1f, 0x01, 0x00, 0x49, 0x2e, 0x01, 0x01, 0x01,
1448 : 0x02
1449 : };
1450 746 : return expand_rtx (expand_encoding, operands);
1451 : }
1452 :
1453 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6317 */
1454 : rtx
1455 13 : gen_fma_fmadd_v4sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1456 : {
1457 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1458 13 : static const uint8_t expand_encoding[] = {
1459 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
1460 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1461 : 0x04, 0x01, 0x05
1462 : };
1463 13 : return expand_rtx (expand_encoding, operands);
1464 : }
1465 :
1466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6355 */
1467 : rtx
1468 0 : gen_avx512f_fmadd_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1469 : {
1470 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
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 : 0x01, 0x01, 0x04
1475 : };
1476 0 : return expand_rtx (expand_encoding, operands);
1477 : }
1478 :
1479 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1480 : rtx
1481 12 : gen_avx512vl_fmadd_v16hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1482 : {
1483 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1484 12 : static const uint8_t expand_encoding[] = {
1485 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x19,
1486 : 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1487 : 0x03, 0x01, 0x04
1488 : };
1489 12 : return expand_rtx (expand_encoding, operands);
1490 : }
1491 :
1492 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1493 : rtx
1494 0 : gen_avx512vl_fmadd_v4sf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1495 : {
1496 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1497 0 : static const uint8_t expand_encoding[] = {
1498 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1499 : 0x6b, 0x81, 0x19, 0x6b, 0x01, 0x01, 0x01, 0x02,
1500 : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1501 : 0x81, 0x33
1502 : };
1503 0 : return expand_rtx (expand_encoding, operands);
1504 : }
1505 :
1506 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6419 */
1507 : rtx
1508 0 : gen_fma_fmsub_v16sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1509 : {
1510 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1511 0 : static const uint8_t expand_encoding[] = {
1512 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x19,
1513 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x74, 0x01,
1514 : 0x03, 0x01, 0x04, 0x01, 0x05
1515 : };
1516 0 : return expand_rtx (expand_encoding, operands);
1517 : }
1518 :
1519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1520 : rtx
1521 23 : gen_avx512vl_fmsub_v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1522 : {
1523 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1524 23 : static const uint8_t expand_encoding[] = {
1525 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x19,
1526 : 0x6e, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6e, 0x01,
1527 : 0x03, 0x01, 0x01, 0x01, 0x04
1528 : };
1529 23 : return expand_rtx (expand_encoding, operands);
1530 : }
1531 :
1532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1533 : rtx
1534 0 : gen_avx512vl_fmsub_v4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1535 : {
1536 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1537 0 : static const uint8_t expand_encoding[] = {
1538 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1539 : 0x6b, 0x81, 0x19, 0x6b, 0x01, 0x01, 0x01, 0x02,
1540 : 0x3d, 0x6b, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1541 : 0x01, 0x05, 0x81, 0x33
1542 : };
1543 0 : return expand_rtx (expand_encoding, operands);
1544 : }
1545 :
1546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6477 */
1547 : rtx
1548 0 : gen_avx512f_fmsub_v16sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1549 : {
1550 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1551 0 : static const uint8_t expand_encoding[] = {
1552 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x19,
1553 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x74, 0x01,
1554 : 0x03, 0x01, 0x03, 0x01, 0x04
1555 : };
1556 0 : return expand_rtx (expand_encoding, operands);
1557 : }
1558 :
1559 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6525 */
1560 : rtx
1561 12 : gen_fma_fnmadd_v16hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1562 : {
1563 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1564 12 : static const uint8_t expand_encoding[] = {
1565 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x19,
1566 : 0x6e, 0x3d, 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01,
1567 : 0x03, 0x01, 0x04, 0x01, 0x05
1568 : };
1569 12 : return expand_rtx (expand_encoding, operands);
1570 : }
1571 :
1572 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6525 */
1573 : rtx
1574 13 : gen_fma_fnmadd_v2df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1575 : {
1576 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1577 13 : static const uint8_t expand_encoding[] = {
1578 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x19,
1579 : 0x6c, 0x3d, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
1580 : 0x03, 0x01, 0x04, 0x01, 0x05
1581 : };
1582 13 : return expand_rtx (expand_encoding, operands);
1583 : }
1584 :
1585 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6565 */
1586 : rtx
1587 45 : gen_avx512f_fnmadd_v8df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1588 : {
1589 45 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1590 45 : static const uint8_t expand_encoding[] = {
1591 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1592 : 0x75, 0x81, 0x19, 0x75, 0x3d, 0x75, 0x01, 0x01,
1593 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1594 : 0x01, 0x05, 0x81, 0x33
1595 : };
1596 45 : return expand_rtx (expand_encoding, operands);
1597 : }
1598 :
1599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6583 */
1600 : rtx
1601 0 : gen_avx512f_fnmadd_v8df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1602 : {
1603 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1604 0 : static const uint8_t expand_encoding[] = {
1605 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x19,
1606 : 0x75, 0x3d, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
1607 : 0x03, 0x01, 0x03, 0x01, 0x04
1608 : };
1609 0 : return expand_rtx (expand_encoding, operands);
1610 : }
1611 :
1612 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6632 */
1613 : rtx
1614 13 : gen_fma_fnmsub_v8sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1615 : {
1616 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1617 13 : static const uint8_t expand_encoding[] = {
1618 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x19,
1619 : 0x6f, 0x3d, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x3d,
1620 : 0x6f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1621 : };
1622 13 : return expand_rtx (expand_encoding, operands);
1623 : }
1624 :
1625 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6674 */
1626 : rtx
1627 23 : gen_avx512fp16_fnmsub_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1628 : {
1629 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1630 23 : static const uint8_t expand_encoding[] = {
1631 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
1632 : 0x6a, 0x3d, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x3d,
1633 : 0x6a, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04
1634 : };
1635 23 : return expand_rtx (expand_encoding, operands);
1636 : }
1637 :
1638 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1639 : rtx
1640 23 : gen_avx512bw_fnmsub_v32hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1641 : {
1642 23 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1643 23 : static const uint8_t expand_encoding[] = {
1644 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1645 : 0x73, 0x81, 0x19, 0x73, 0x3d, 0x73, 0x01, 0x01,
1646 : 0x01, 0x02, 0x3d, 0x73, 0x01, 0x03, 0x01, 0x03,
1647 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1648 : };
1649 23 : return expand_rtx (expand_encoding, operands);
1650 : }
1651 :
1652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1653 : rtx
1654 0 : gen_avx512f_fnmsub_v8df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1655 : {
1656 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1657 0 : static const uint8_t expand_encoding[] = {
1658 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x19,
1659 : 0x75, 0x3d, 0x75, 0x01, 0x01, 0x01, 0x02, 0x3d,
1660 : 0x75, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04
1661 : };
1662 0 : return expand_rtx (expand_encoding, operands);
1663 : }
1664 :
1665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6795 */
1666 : rtx
1667 12 : gen_fma_fmaddsub_v8hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1668 : {
1669 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1670 12 : static const uint8_t expand_encoding[] = {
1671 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1672 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1673 : 0x06, 0x01, 0x04, 0x01, 0x05
1674 : };
1675 12 : return expand_rtx (expand_encoding, operands);
1676 : }
1677 :
1678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1679 : rtx
1680 46 : gen_avx512bw_fmaddsub_v32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1681 : {
1682 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1683 46 : static const uint8_t expand_encoding[] = {
1684 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1685 : 0x73, 0x1a, 0x73, 0x03, 0x01, 0x01, 0x01, 0x02,
1686 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04,
1687 : 0x01, 0x05, 0x81, 0x33
1688 : };
1689 46 : return expand_rtx (expand_encoding, operands);
1690 : }
1691 :
1692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1693 : rtx
1694 0 : gen_avx512f_fmaddsub_v8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1695 : {
1696 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1697 0 : static const uint8_t expand_encoding[] = {
1698 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1699 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1700 : 0x06, 0x01, 0x01, 0x01, 0x04
1701 : };
1702 0 : return expand_rtx (expand_encoding, operands);
1703 : }
1704 :
1705 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1706 : rtx
1707 0 : gen_avx512vl_fmaddsub_v16hf_mask3_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, 0x6e, 0x02, 0x81, 0x09,
1712 : 0x6e, 0x1a, 0x6e, 0x03, 0x01, 0x01, 0x01, 0x02,
1713 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x03, 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_v4df_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, 0x70, 0x1a, 0x70,
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:6864 */
1733 : rtx
1734 0 : gen_fma_fmsubadd_v16sf_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1735 : {
1736 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1737 0 : static const uint8_t expand_encoding[] = {
1738 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1739 : 0x74, 0x1a, 0x74, 0x03, 0x01, 0x01, 0x01, 0x02,
1740 : 0x3d, 0x74, 0x01, 0x03, 0x81, 0x06, 0x01, 0x04,
1741 : 0x01, 0x05, 0x01, 0x06, 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:6881 */
1747 : rtx
1748 23 : gen_avx512fp16_fmsubadd_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1749 : {
1750 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1751 23 : static const uint8_t expand_encoding[] = {
1752 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1753 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6a, 0x01,
1754 : 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04
1755 : };
1756 23 : return expand_rtx (expand_encoding, operands);
1757 : }
1758 :
1759 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1760 : rtx
1761 0 : gen_avx512f_fmsubadd_v8df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1762 : {
1763 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1764 0 : static const uint8_t expand_encoding[] = {
1765 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1766 : 0x75, 0x1a, 0x75, 0x03, 0x01, 0x01, 0x01, 0x02,
1767 : 0x3d, 0x75, 0x01, 0x03, 0x81, 0x06, 0x01, 0x01,
1768 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1769 : };
1770 0 : return expand_rtx (expand_encoding, operands);
1771 : }
1772 :
1773 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6900 */
1774 : rtx
1775 0 : gen_avx512f_fmsubadd_v16sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1776 : {
1777 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1778 0 : static const uint8_t expand_encoding[] = {
1779 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
1780 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x74, 0x01,
1781 : 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04
1782 : };
1783 0 : return expand_rtx (expand_encoding, operands);
1784 : }
1785 :
1786 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6900 */
1787 : rtx
1788 0 : gen_avx512vl_fmsubadd_v4df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1789 : {
1790 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1791 0 : static const uint8_t expand_encoding[] = {
1792 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
1793 : 0x70, 0x1a, 0x70, 0x03, 0x01, 0x01, 0x01, 0x02,
1794 : 0x3d, 0x70, 0x01, 0x03, 0x81, 0x06, 0x01, 0x03,
1795 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1796 : };
1797 0 : return expand_rtx (expand_encoding, operands);
1798 : }
1799 :
1800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7060 */
1801 : rtx
1802 0 : gen_avx512f_vmfmadd_v4sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1803 : {
1804 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1805 0 : static const uint8_t expand_encoding[] = {
1806 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1807 : 0x6b, 0x81, 0x19, 0x6b, 0x01, 0x01, 0x01, 0x02,
1808 : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x03,
1809 : 0x27, 0x01
1810 : };
1811 0 : return expand_rtx (expand_encoding, operands);
1812 : }
1813 :
1814 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7092 */
1815 : rtx
1816 100 : gen_avx512f_vmfmadd_v2df_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1817 : {
1818 100 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1819 100 : static const uint8_t expand_encoding[] = {
1820 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1821 : 0x6c, 0x81, 0x09, 0x6c, 0x81, 0x19, 0x6c, 0x01,
1822 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
1823 : 0x05, 0x01, 0x01, 0x27, 0x01, 0x01, 0x06, 0x81,
1824 : 0x33
1825 : };
1826 100 : return expand_rtx (expand_encoding, operands);
1827 : }
1828 :
1829 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7173 */
1830 : rtx
1831 0 : gen_avx512f_vmfnmadd_v2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1832 : {
1833 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1834 0 : static const uint8_t expand_encoding[] = {
1835 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
1836 : 0x6c, 0x81, 0x19, 0x6c, 0x3d, 0x6c, 0x01, 0x01,
1837 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1838 : 0x01, 0x01, 0x27, 0x01
1839 : };
1840 0 : return expand_rtx (expand_encoding, operands);
1841 : }
1842 :
1843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7227 */
1844 : rtx
1845 23 : gen_avx512f_vmfnmadd_v8hf_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1846 : {
1847 23 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1848 23 : static const uint8_t expand_encoding[] = {
1849 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1850 : 0x6a, 0x81, 0x09, 0x6a, 0x81, 0x19, 0x6a, 0x3d,
1851 : 0x6a, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03, 0x01,
1852 : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
1853 : 0x06, 0x81, 0x33
1854 : };
1855 23 : return expand_rtx (expand_encoding, operands);
1856 : }
1857 :
1858 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7534 */
1859 : rtx
1860 0 : gen_fma_fcmaddc_v32hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1861 : {
1862 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1863 0 : static const uint8_t expand_encoding[] = {
1864 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1865 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1866 : 0x5c, 0x01, 0x04, 0x1a, 0x11, 0x01, 0x01, 0x05,
1867 : 0x81, 0x60
1868 : };
1869 0 : return expand_rtx (expand_encoding, operands);
1870 : }
1871 :
1872 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7547 */
1873 : rtx
1874 0 : gen_fma_v16hf_fadd_fmul (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1875 : {
1876 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1877 0 : static const uint8_t expand_encoding[] = {
1878 : 0x1f, 0x01, 0x00, 0x3b, 0x6e, 0x1a, 0x6e, 0x02,
1879 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x5e, 0x01, 0x03
1880 : };
1881 0 : return expand_rtx (expand_encoding, operands);
1882 : }
1883 :
1884 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7581 */
1885 : rtx
1886 0 : gen_fma_fmaddc_v8hf_fma_zero (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1887 : {
1888 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1889 0 : static const uint8_t expand_encoding[] = {
1890 : 0x1f, 0x01, 0x00, 0x3b, 0x6a, 0x1a, 0x6a, 0x03,
1891 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a,
1892 : 0x01, 0x04
1893 : };
1894 0 : return expand_rtx (expand_encoding, operands);
1895 : }
1896 :
1897 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7612 */
1898 : rtx
1899 0 : gen_fma_v8hf_fmaddc_bcst (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1900 : {
1901 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1902 0 : static const uint8_t expand_encoding[] = {
1903 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x03, 0x01, 0x01,
1904 : 0x32, 0x6a, 0x01, 0x02, 0x00, 0x01, 0x03, 0x81,
1905 : 0x5a
1906 : };
1907 0 : return expand_rtx (expand_encoding, operands);
1908 : }
1909 :
1910 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7667 */
1911 : rtx
1912 24 : gen_avx512fp16_fmaddc_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1913 : {
1914 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1915 24 : static const uint8_t expand_encoding[] = {
1916 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1917 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1918 : 0x5a, 0x01, 0x01, 0x1a, 0x0f, 0x01, 0x01, 0x04,
1919 : 0x81, 0x60
1920 : };
1921 24 : return expand_rtx (expand_encoding, operands);
1922 : }
1923 :
1924 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1925 : rtx
1926 28 : gen_avx512vl_fmulc_v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1927 : {
1928 28 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1929 28 : static const uint8_t expand_encoding[] = {
1930 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
1931 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x5e, 0x01,
1932 : 0x03, 0x1a, 0x10, 0x01, 0x01, 0x04, 0x81, 0x60
1933 : };
1934 28 : return expand_rtx (expand_encoding, operands);
1935 : }
1936 :
1937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7858 */
1938 : rtx
1939 0 : gen_avx512fp16_fma_fcmaddcsh_v8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1940 : {
1941 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1942 0 : static const uint8_t expand_encoding[] = {
1943 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1944 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1945 : 0x5c, 0x01, 0x02, 0x27, 0x03
1946 : };
1947 0 : return expand_rtx (expand_encoding, operands);
1948 : }
1949 :
1950 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7874 */
1951 : rtx
1952 35 : gen_avx512fp16_fcmaddcsh_v8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1953 : {
1954 35 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1955 35 : static const uint8_t expand_encoding[] = {
1956 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1957 : 0x6a, 0x81, 0x09, 0x6a, 0x1a, 0x6a, 0x03, 0x01,
1958 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5c, 0x01,
1959 : 0x01, 0x1a, 0x0f, 0x01, 0x01, 0x04, 0x81, 0x60,
1960 : 0x01, 0x02, 0x27, 0x03, 0x01, 0x05, 0x81, 0x33
1961 : };
1962 35 : return expand_rtx (expand_encoding, operands);
1963 : }
1964 :
1965 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1966 : rtx
1967 0 : gen_avx512fp16_vcvtph2w_v32hi (const rtx operand0, const rtx operand1)
1968 : {
1969 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1970 0 : static const uint8_t expand_encoding[] = {
1971 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x01, 0x01, 0x01,
1972 : 0x2f
1973 : };
1974 0 : return expand_rtx (expand_encoding, operands);
1975 : }
1976 :
1977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1978 : rtx
1979 69 : gen_avx512fp16_vcvtph2udq_v16si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1980 : {
1981 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1982 69 : static const uint8_t expand_encoding[] = {
1983 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
1984 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x81, 0x1d,
1985 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
1986 : };
1987 69 : return expand_rtx (expand_encoding, operands);
1988 : }
1989 :
1990 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1991 : rtx
1992 69 : gen_avx512fp16_vcvtph2qq_v8di_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1993 : {
1994 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1995 69 : static const uint8_t expand_encoding[] = {
1996 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
1997 : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x2f, 0x01,
1998 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
1999 : };
2000 69 : return expand_rtx (expand_encoding, operands);
2001 : }
2002 :
2003 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2004 : rtx
2005 0 : gen_avx512fp16_vcvtph2udq_v8si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2006 : {
2007 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2008 0 : static const uint8_t expand_encoding[] = {
2009 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x81, 0x09,
2010 : 0x56, 0x1a, 0x56, 0x01, 0x01, 0x01, 0x81, 0x1d,
2011 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2012 : };
2013 0 : return expand_rtx (expand_encoding, operands);
2014 : }
2015 :
2016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2017 : rtx
2018 0 : gen_avx512fp16_vcvtph2qq_v4di_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2019 : {
2020 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2021 0 : static const uint8_t expand_encoding[] = {
2022 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x02, 0x81, 0x09,
2023 : 0x57, 0x1a, 0x57, 0x01, 0x01, 0x01, 0x2f, 0x01,
2024 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
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 37 : gen_avx512fp16_vcvtph2udq_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2032 : {
2033 37 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2034 37 : static const uint8_t expand_encoding[] = {
2035 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
2036 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2037 : 0x03
2038 : };
2039 37 : return expand_rtx (expand_encoding, operands);
2040 : }
2041 :
2042 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2043 : rtx
2044 0 : gen_avx512fp16_vcvtph2qq_v2di_round (const rtx operand0, const rtx operand1, const rtx operand2)
2045 : {
2046 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2047 0 : static const uint8_t expand_encoding[] = {
2048 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x1a, 0x52,
2049 : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x81, 0x33
2050 : };
2051 0 : return expand_rtx (expand_encoding, operands);
2052 : }
2053 :
2054 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2055 : rtx
2056 36 : gen_avx512fp16_vcvtuw2ph_v8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2057 : {
2058 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2059 36 : static const uint8_t expand_encoding[] = {
2060 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x75, 0x6a,
2061 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2062 : };
2063 36 : return expand_rtx (expand_encoding, operands);
2064 : }
2065 :
2066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2067 : rtx
2068 0 : gen_avx512fp16_vcvtw2ph_v32hi_round (const rtx operand0, const rtx operand1, const rtx operand2)
2069 : {
2070 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2071 0 : static const uint8_t expand_encoding[] = {
2072 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x73, 0x73,
2073 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2074 : };
2075 0 : return expand_rtx (expand_encoding, operands);
2076 : }
2077 :
2078 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2079 : rtx
2080 36 : gen_avx512fp16_vcvtdq2ph_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2081 : {
2082 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2083 36 : static const uint8_t expand_encoding[] = {
2084 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x73, 0x6a,
2085 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2086 : };
2087 36 : return expand_rtx (expand_encoding, operands);
2088 : }
2089 :
2090 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2091 : rtx
2092 0 : gen_avx512fp16_vcvtudq2ph_v16si_round (const rtx operand0, const rtx operand1, const rtx operand2)
2093 : {
2094 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2095 0 : static const uint8_t expand_encoding[] = {
2096 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x75, 0x6e,
2097 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2098 : };
2099 0 : return expand_rtx (expand_encoding, operands);
2100 : }
2101 :
2102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2103 : rtx
2104 0 : gen_avx512fp16_vcvtuqq2ph_v8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2105 : {
2106 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2107 0 : static const uint8_t expand_encoding[] = {
2108 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x75, 0x6a,
2109 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2110 : };
2111 0 : return expand_rtx (expand_encoding, operands);
2112 : }
2113 :
2114 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8198 */
2115 : rtx
2116 0 : gen_avx512fp16_vcvtsh2si_2 (const rtx operand0, const rtx operand1)
2117 : {
2118 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2119 0 : static const uint8_t expand_encoding[] = {
2120 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
2121 : 0x2f
2122 : };
2123 0 : return expand_rtx (expand_encoding, operands);
2124 : }
2125 :
2126 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8211 */
2127 : rtx
2128 0 : gen_avx512fp16_vcvtusi2shq (const rtx operand0, const rtx operand1, const rtx operand2)
2129 : {
2130 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2131 0 : static const uint8_t expand_encoding[] = {
2132 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x0c,
2133 : 0x6a, 0x75, 0x2b, 0x01, 0x02, 0x01, 0x01, 0x27,
2134 : 0x01
2135 : };
2136 0 : return expand_rtx (expand_encoding, operands);
2137 : }
2138 :
2139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2140 : rtx
2141 36 : gen_unspec_avx512fp16_fixuns_truncv8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2142 : {
2143 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2144 36 : static const uint8_t expand_encoding[] = {
2145 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
2146 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2147 : 0x03
2148 : };
2149 36 : return expand_rtx (expand_encoding, operands);
2150 : }
2151 :
2152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2153 : rtx
2154 0 : gen_unspec_avx512fp16_fix_truncv32hi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2155 : {
2156 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2157 0 : static const uint8_t expand_encoding[] = {
2158 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x1a, 0x5a,
2159 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2160 : 0x33
2161 : };
2162 0 : return expand_rtx (expand_encoding, operands);
2163 : }
2164 :
2165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2166 : rtx
2167 36 : gen_unspec_avx512fp16_fix_truncv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2168 : {
2169 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2170 36 : static const uint8_t expand_encoding[] = {
2171 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
2172 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2173 : 0x03
2174 : };
2175 36 : return expand_rtx (expand_encoding, operands);
2176 : }
2177 :
2178 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2179 : rtx
2180 0 : gen_unspec_avx512fp16_fixuns_truncv16si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2181 : {
2182 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2183 0 : static const uint8_t expand_encoding[] = {
2184 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x1a, 0x5b,
2185 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2186 : 0x33
2187 : };
2188 0 : return expand_rtx (expand_encoding, operands);
2189 : }
2190 :
2191 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2192 : rtx
2193 0 : gen_unspec_avx512fp16_fixuns_truncv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2194 : {
2195 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2196 0 : static const uint8_t expand_encoding[] = {
2197 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
2198 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2199 : 0x03
2200 : };
2201 0 : return expand_rtx (expand_encoding, operands);
2202 : }
2203 :
2204 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2205 : rtx
2206 0 : gen_avx512fp16_fix_truncv16hi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2207 : {
2208 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2209 0 : static const uint8_t expand_encoding[] = {
2210 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x74, 0x55,
2211 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2212 : };
2213 0 : return expand_rtx (expand_encoding, operands);
2214 : }
2215 :
2216 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2217 : rtx
2218 0 : gen_avx512fp16_fix_truncv32hi2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2219 : {
2220 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2221 0 : static const uint8_t expand_encoding[] = {
2222 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x81, 0x09,
2223 : 0x5a, 0x74, 0x5a, 0x01, 0x01, 0x01, 0x02, 0x01,
2224 : 0x03, 0x01, 0x04, 0x81, 0x33
2225 : };
2226 0 : return expand_rtx (expand_encoding, operands);
2227 : }
2228 :
2229 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2230 : rtx
2231 0 : gen_avx512fp16_fix_truncv16si2 (const rtx operand0, const rtx operand1)
2232 : {
2233 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2234 0 : static const uint8_t expand_encoding[] = {
2235 : 0x1f, 0x01, 0x00, 0x74, 0x5b, 0x01, 0x01
2236 : };
2237 0 : return expand_rtx (expand_encoding, operands);
2238 : }
2239 :
2240 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2241 : rtx
2242 0 : gen_avx512fp16_fixuns_truncv16si2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2243 : {
2244 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2245 0 : static const uint8_t expand_encoding[] = {
2246 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
2247 : 0x5b, 0x76, 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01,
2248 : 0x03, 0x01, 0x04, 0x81, 0x33
2249 : };
2250 0 : return expand_rtx (expand_encoding, operands);
2251 : }
2252 :
2253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8269 */
2254 : rtx
2255 0 : gen_unspec_avx512fp16_fix_truncv4di2 (const rtx operand0, const rtx operand1)
2256 : {
2257 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2258 0 : static const uint8_t expand_encoding[] = {
2259 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
2260 : 0x81, 0x2d
2261 : };
2262 0 : return expand_rtx (expand_encoding, operands);
2263 : }
2264 :
2265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8280 */
2266 : rtx
2267 2 : gen_avx512fp16_fix_truncv4di2 (const rtx operand0, const rtx operand1)
2268 : {
2269 2 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2270 2 : static const uint8_t expand_encoding[] = {
2271 : 0x1f, 0x01, 0x00, 0x74, 0x57, 0x81, 0x0a, 0x66,
2272 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
2273 : 0x01, 0x27, 0x02, 0x27, 0x03
2274 : };
2275 2 : return expand_rtx (expand_encoding, operands);
2276 : }
2277 :
2278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8330 */
2279 : rtx
2280 0 : gen_avx512fp16_fix_truncv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2281 : {
2282 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2283 0 : static const uint8_t expand_encoding[] = {
2284 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x74, 0x52,
2285 : 0x81, 0x0a, 0x63, 0x01, 0x01, 0x17, 0x00, 0x02,
2286 : 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01, 0x03
2287 : };
2288 0 : return expand_rtx (expand_encoding, operands);
2289 : }
2290 :
2291 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8363 */
2292 : rtx
2293 0 : gen_avx512fp16_fix_truncsi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2294 : {
2295 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2296 0 : static const uint8_t expand_encoding[] = {
2297 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x74, 0x11,
2298 : 0x81, 0x0a, 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01,
2299 : 0x27, 0x00, 0x01, 0x02, 0x81, 0x33
2300 : };
2301 0 : return expand_rtx (expand_encoding, operands);
2302 : }
2303 :
2304 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8395 */
2305 : rtx
2306 0 : gen_avx512fp16_float_extend_phv8df2 (const rtx operand0, const rtx operand1)
2307 : {
2308 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2309 0 : static const uint8_t expand_encoding[] = {
2310 : 0x1f, 0x01, 0x00, 0x71, 0x75, 0x01, 0x01
2311 : };
2312 0 : return expand_rtx (expand_encoding, operands);
2313 : }
2314 :
2315 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8395 */
2316 : rtx
2317 36 : gen_avx512fp16_float_extend_phv8sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2318 : {
2319 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2320 36 : static const uint8_t expand_encoding[] = {
2321 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x71, 0x6f,
2322 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2323 : };
2324 36 : return expand_rtx (expand_encoding, operands);
2325 : }
2326 :
2327 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8489 */
2328 : rtx
2329 0 : gen_avx512fp16_vcvtpd2ph_v8df_round (const rtx operand0, const rtx operand1, const rtx operand2)
2330 : {
2331 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2332 0 : static const uint8_t expand_encoding[] = {
2333 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x72, 0x6a,
2334 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2335 : };
2336 0 : return expand_rtx (expand_encoding, operands);
2337 : }
2338 :
2339 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8489 */
2340 : rtx
2341 36 : gen_avx512fp16_vcvtps2ph_v8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2342 : {
2343 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2344 36 : static const uint8_t expand_encoding[] = {
2345 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x72, 0x6a,
2346 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2347 : };
2348 36 : return expand_rtx (expand_encoding, operands);
2349 : }
2350 :
2351 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8672 */
2352 : rtx
2353 0 : gen_avx512fp16_vcvtsh2sd_mem (const rtx operand0, const rtx operand1, const rtx operand2)
2354 : {
2355 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2356 0 : static const uint8_t expand_encoding[] = {
2357 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0c,
2358 : 0x6c, 0x71, 0x2e, 0x01, 0x01, 0x01, 0x02, 0x27,
2359 : 0x01
2360 : };
2361 0 : return expand_rtx (expand_encoding, operands);
2362 : }
2363 :
2364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8686 */
2365 : rtx
2366 66 : gen_avx512fp16_vcvtsd2sh_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
2367 : {
2368 66 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
2369 66 : static const uint8_t expand_encoding[] = {
2370 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2371 : 0x6a, 0x81, 0x09, 0x6a, 0x81, 0x0c, 0x6a, 0x72,
2372 : 0x2b, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
2373 : 0x01, 0x27, 0x00, 0x01, 0x03, 0x01, 0x04, 0x01,
2374 : 0x02, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
2375 : };
2376 66 : return expand_rtx (expand_encoding, operands);
2377 : }
2378 :
2379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8878 */
2380 : rtx
2381 35 : gen_sse_cvtsi2ss (const rtx operand0, const rtx operand1, const rtx operand2)
2382 : {
2383 35 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2384 35 : static const uint8_t expand_encoding[] = {
2385 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0c,
2386 : 0x6b, 0x73, 0x2d, 0x01, 0x02, 0x01, 0x01, 0x27,
2387 : 0x01
2388 : };
2389 35 : return expand_rtx (expand_encoding, operands);
2390 : }
2391 :
2392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8943 */
2393 : rtx
2394 24 : gen_unspec_sse_cvttss2si (const rtx operand0, const rtx operand1)
2395 : {
2396 24 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2397 24 : static const uint8_t expand_encoding[] = {
2398 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
2399 : 0x81, 0x2d
2400 : };
2401 24 : return expand_rtx (expand_encoding, operands);
2402 : }
2403 :
2404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8974 */
2405 : rtx
2406 12 : gen_cvtusi2sd32 (const rtx operand0, const rtx operand1, const rtx operand2)
2407 : {
2408 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2409 12 : static const uint8_t expand_encoding[] = {
2410 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0c,
2411 : 0x6c, 0x75, 0x2e, 0x01, 0x02, 0x01, 0x01, 0x27,
2412 : 0x01
2413 : };
2414 12 : return expand_rtx (expand_encoding, operands);
2415 : }
2416 :
2417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9002 */
2418 : rtx
2419 95 : gen_floatv8siv8sf2 (const rtx operand0, const rtx operand1)
2420 : {
2421 95 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2422 95 : static const uint8_t expand_encoding[] = {
2423 : 0x1f, 0x01, 0x00, 0x73, 0x6f, 0x01, 0x01
2424 : };
2425 95 : return expand_rtx (expand_encoding, operands);
2426 : }
2427 :
2428 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9015 */
2429 : rtx
2430 0 : gen_floatunsv8siv8sf2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2431 : {
2432 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2433 0 : static const uint8_t expand_encoding[] = {
2434 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
2435 : 0x6f, 0x75, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01,
2436 : 0x03, 0x01, 0x04, 0x81, 0x33
2437 : };
2438 0 : return expand_rtx (expand_encoding, operands);
2439 : }
2440 :
2441 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9070 */
2442 : rtx
2443 66 : gen_avx512f_fixuns_notruncv16sfv16si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2444 : {
2445 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2446 66 : static const uint8_t expand_encoding[] = {
2447 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
2448 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x81, 0x1d,
2449 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2450 : };
2451 66 : return expand_rtx (expand_encoding, operands);
2452 : }
2453 :
2454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9104 */
2455 : rtx
2456 36 : gen_avx512dq_cvtps2uqqv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2457 : {
2458 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2459 36 : static const uint8_t expand_encoding[] = {
2460 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
2461 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2462 : 0x03
2463 : };
2464 36 : return expand_rtx (expand_encoding, operands);
2465 : }
2466 :
2467 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9138 */
2468 : rtx
2469 8 : gen_fix_truncv16sfv16si2 (const rtx operand0, const rtx operand1)
2470 : {
2471 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2472 8 : static const uint8_t expand_encoding[] = {
2473 : 0x1f, 0x01, 0x00, 0x74, 0x5b, 0x01, 0x01
2474 : };
2475 8 : return expand_rtx (expand_encoding, operands);
2476 : }
2477 :
2478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9138 */
2479 : rtx
2480 0 : gen_fixuns_truncv16sfv16si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2481 : {
2482 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2483 0 : static const uint8_t expand_encoding[] = {
2484 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x76, 0x5b,
2485 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2486 : };
2487 0 : return expand_rtx (expand_encoding, operands);
2488 : }
2489 :
2490 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9261 */
2491 : rtx
2492 12 : gen_sse2_cvtpd2pi (const rtx operand0, const rtx operand1)
2493 : {
2494 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2495 12 : static const uint8_t expand_encoding[] = {
2496 : 0x1f, 0x01, 0x00, 0x1a, 0x4a, 0x01, 0x01, 0x01,
2497 : 0x2f
2498 : };
2499 12 : return expand_rtx (expand_encoding, operands);
2500 : }
2501 :
2502 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9385 */
2503 : rtx
2504 0 : gen_avx512f_vcvtss2usiq (const rtx operand0, const rtx operand1)
2505 : {
2506 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2507 0 : static const uint8_t expand_encoding[] = {
2508 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
2509 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2510 : 0x81, 0x1d
2511 : };
2512 0 : return expand_rtx (expand_encoding, operands);
2513 : }
2514 :
2515 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9409 */
2516 : rtx
2517 0 : gen_avx512f_vcvttss2usiq (const rtx operand0, const rtx operand1)
2518 : {
2519 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2520 0 : static const uint8_t expand_encoding[] = {
2521 : 0x1f, 0x01, 0x00, 0x76, 0x12, 0x81, 0x0a, 0x2d,
2522 : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2523 : };
2524 0 : return expand_rtx (expand_encoding, operands);
2525 : }
2526 :
2527 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9434 */
2528 : rtx
2529 19 : gen_unspec_avx512f_vcvttsd2usiq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2530 : {
2531 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2532 19 : static const uint8_t expand_encoding[] = {
2533 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2534 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2535 : 0x33
2536 : };
2537 19 : return expand_rtx (expand_encoding, operands);
2538 : }
2539 :
2540 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9488 */
2541 : rtx
2542 12 : gen_unspec_sse2_cvttsd2si (const rtx operand0, const rtx operand1)
2543 : {
2544 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2545 12 : static const uint8_t expand_encoding[] = {
2546 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
2547 : 0x81, 0x2d
2548 : };
2549 12 : return expand_rtx (expand_encoding, operands);
2550 : }
2551 :
2552 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9527 */
2553 : rtx
2554 19 : gen_floatv4siv4df2 (const rtx operand0, const rtx operand1)
2555 : {
2556 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2557 19 : static const uint8_t expand_encoding[] = {
2558 : 0x1f, 0x01, 0x00, 0x73, 0x70, 0x01, 0x01
2559 : };
2560 19 : return expand_rtx (expand_encoding, operands);
2561 : }
2562 :
2563 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2564 : rtx
2565 0 : gen_floatunsv8div8df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2566 : {
2567 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2568 0 : static const uint8_t expand_encoding[] = {
2569 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x75, 0x75,
2570 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2571 : };
2572 0 : return expand_rtx (expand_encoding, operands);
2573 : }
2574 :
2575 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2576 : rtx
2577 0 : gen_floatv2div2df2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2578 : {
2579 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2580 0 : static const uint8_t expand_encoding[] = {
2581 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x73, 0x6c,
2582 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2583 : };
2584 0 : return expand_rtx (expand_encoding, operands);
2585 : }
2586 :
2587 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9550 */
2588 : rtx
2589 0 : gen_floatv8div8sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2590 : {
2591 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2592 0 : static const uint8_t expand_encoding[] = {
2593 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x73, 0x6f,
2594 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2595 : };
2596 0 : return expand_rtx (expand_encoding, operands);
2597 : }
2598 :
2599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9700 */
2600 : rtx
2601 1 : gen_floatunsv8siv8df2 (const rtx operand0, const rtx operand1)
2602 : {
2603 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2604 1 : static const uint8_t expand_encoding[] = {
2605 : 0x1f, 0x01, 0x00, 0x75, 0x75, 0x01, 0x01
2606 : };
2607 1 : return expand_rtx (expand_encoding, operands);
2608 : }
2609 :
2610 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9762 */
2611 : rtx
2612 4 : gen_avx512f_cvtpd2dq512 (const rtx operand0, const rtx operand1)
2613 : {
2614 4 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2615 4 : static const uint8_t expand_encoding[] = {
2616 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
2617 : 0x2f
2618 : };
2619 4 : return expand_rtx (expand_encoding, operands);
2620 : }
2621 :
2622 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9863 */
2623 : rtx
2624 0 : gen_fixuns_notruncv8dfv8si2 (const rtx operand0, const rtx operand1)
2625 : {
2626 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2627 0 : static const uint8_t expand_encoding[] = {
2628 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
2629 : 0x81, 0x1d
2630 : };
2631 0 : return expand_rtx (expand_encoding, operands);
2632 : }
2633 :
2634 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9863 */
2635 : rtx
2636 0 : gen_fixuns_notruncv4dfv4si2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2637 : {
2638 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2639 0 : static const uint8_t expand_encoding[] = {
2640 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x81, 0x09,
2641 : 0x51, 0x1a, 0x51, 0x01, 0x01, 0x01, 0x81, 0x1d,
2642 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2643 : };
2644 0 : return expand_rtx (expand_encoding, operands);
2645 : }
2646 :
2647 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9932 */
2648 : rtx
2649 0 : gen_fix_truncv8dfv8si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2650 : {
2651 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2652 0 : static const uint8_t expand_encoding[] = {
2653 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x74, 0x56,
2654 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2655 : };
2656 0 : return expand_rtx (expand_encoding, operands);
2657 : }
2658 :
2659 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10012 */
2660 : rtx
2661 12 : gen_unspec_fix_truncv4dfv4si2 (const rtx operand0, const rtx operand1)
2662 : {
2663 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2664 12 : static const uint8_t expand_encoding[] = {
2665 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2666 : 0x81, 0x2d
2667 : };
2668 12 : return expand_rtx (expand_encoding, operands);
2669 : }
2670 :
2671 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10050 */
2672 : rtx
2673 0 : gen_unspec_fix_truncv8dfv8di2 (const rtx operand0, const rtx operand1)
2674 : {
2675 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2676 0 : static const uint8_t expand_encoding[] = {
2677 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
2678 : 0x81, 0x2d
2679 : };
2680 0 : return expand_rtx (expand_encoding, operands);
2681 : }
2682 :
2683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10050 */
2684 : rtx
2685 36 : gen_unspec_fix_truncv4dfv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2686 : {
2687 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2688 36 : static const uint8_t expand_encoding[] = {
2689 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
2690 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2691 : 0x03
2692 : };
2693 36 : return expand_rtx (expand_encoding, operands);
2694 : }
2695 :
2696 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10061 */
2697 : rtx
2698 8 : gen_fixuns_truncv8dfv8di2 (const rtx operand0, const rtx operand1)
2699 : {
2700 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2701 8 : static const uint8_t expand_encoding[] = {
2702 : 0x1f, 0x01, 0x00, 0x76, 0x5c, 0x01, 0x01
2703 : };
2704 8 : return expand_rtx (expand_encoding, operands);
2705 : }
2706 :
2707 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10061 */
2708 : rtx
2709 15 : gen_fix_truncv2dfv2di2 (const rtx operand0, const rtx operand1)
2710 : {
2711 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2712 15 : static const uint8_t expand_encoding[] = {
2713 : 0x1f, 0x01, 0x00, 0x74, 0x52, 0x01, 0x01
2714 : };
2715 15 : return expand_rtx (expand_encoding, operands);
2716 : }
2717 :
2718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10071 */
2719 : rtx
2720 36 : gen_fix_notruncv4dfv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2721 : {
2722 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2723 36 : static const uint8_t expand_encoding[] = {
2724 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
2725 : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x01, 0x03
2726 : };
2727 36 : return expand_rtx (expand_encoding, operands);
2728 : }
2729 :
2730 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10082 */
2731 : rtx
2732 36 : gen_fixuns_notruncv2dfv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2733 : {
2734 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2735 36 : static const uint8_t expand_encoding[] = {
2736 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
2737 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2738 : 0x03
2739 : };
2740 36 : return expand_rtx (expand_encoding, operands);
2741 : }
2742 :
2743 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10093 */
2744 : rtx
2745 0 : gen_unspec_fixuns_truncv4sfv4di2 (const rtx operand0, const rtx operand1)
2746 : {
2747 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2748 0 : static const uint8_t expand_encoding[] = {
2749 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
2750 : 0x81, 0x2e
2751 : };
2752 0 : return expand_rtx (expand_encoding, operands);
2753 : }
2754 :
2755 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10104 */
2756 : rtx
2757 0 : gen_fixuns_truncv8sfv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2758 : {
2759 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2760 0 : static const uint8_t expand_encoding[] = {
2761 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x76, 0x5c,
2762 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2763 : };
2764 0 : return expand_rtx (expand_encoding, operands);
2765 : }
2766 :
2767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10125 */
2768 : rtx
2769 0 : gen_avx512dq_fix_truncv2sfv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2770 : {
2771 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2772 0 : static const uint8_t expand_encoding[] = {
2773 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x74, 0x52,
2774 : 0x81, 0x0a, 0x67, 0x01, 0x01, 0x17, 0x00, 0x02,
2775 : 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01, 0x03
2776 : };
2777 0 : return expand_rtx (expand_encoding, operands);
2778 : }
2779 :
2780 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10361 */
2781 : rtx
2782 13 : gen_sse2_cvtsd2ss (const rtx operand0, const rtx operand1, const rtx operand2)
2783 : {
2784 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2785 13 : static const uint8_t expand_encoding[] = {
2786 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0c,
2787 : 0x6b, 0x72, 0x67, 0x01, 0x02, 0x01, 0x01, 0x27,
2788 : 0x01
2789 : };
2790 13 : return expand_rtx (expand_encoding, operands);
2791 : }
2792 :
2793 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10448 */
2794 : rtx
2795 66 : gen_avx512f_cvtpd2ps512_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2796 : {
2797 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2798 66 : static const uint8_t expand_encoding[] = {
2799 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
2800 : 0x6f, 0x72, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01,
2801 : 0x03, 0x01, 0x04, 0x81, 0x33
2802 : };
2803 66 : return expand_rtx (expand_encoding, operands);
2804 : }
2805 :
2806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10605 */
2807 : rtx
2808 43 : gen_vec_unpacks_lo_v16sf (const rtx operand0, const rtx operand1)
2809 : {
2810 43 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2811 43 : static const uint8_t expand_encoding[] = {
2812 : 0x1f, 0x01, 0x00, 0x71, 0x75, 0x81, 0x0a, 0x6f,
2813 : 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00, 0x27,
2814 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27,
2815 : 0x05, 0x27, 0x06, 0x27, 0x07
2816 : };
2817 43 : return expand_rtx (expand_encoding, operands);
2818 : }
2819 :
2820 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10748 */
2821 : rtx
2822 24 : gen_sse2_cvtps2pd_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2823 : {
2824 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2825 24 : static const uint8_t expand_encoding[] = {
2826 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x71, 0x6c,
2827 : 0x81, 0x0a, 0x67, 0x01, 0x01, 0x17, 0x00, 0x02,
2828 : 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01, 0x03
2829 : };
2830 24 : return expand_rtx (expand_encoding, operands);
2831 : }
2832 :
2833 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11574 */
2834 : rtx
2835 1098 : gen_vec_interleave_highv4sf (const rtx operand0, const rtx operand1, const rtx operand2)
2836 : {
2837 1098 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2838 1098 : static const uint8_t expand_encoding[] = {
2839 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x81, 0x0b,
2840 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
2841 : 0x27, 0x02, 0x27, 0x06, 0x27, 0x03, 0x27, 0x07
2842 : };
2843 1098 : return expand_rtx (expand_encoding, operands);
2844 : }
2845 :
2846 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11698 */
2847 : rtx
2848 24 : gen_avx_movshdup256_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2849 : {
2850 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2851 24 : static const uint8_t expand_encoding[] = {
2852 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x0a,
2853 : 0x6f, 0x81, 0x0b, 0x74, 0x01, 0x01, 0x01, 0x01,
2854 : 0x17, 0x00, 0x08, 0x27, 0x01, 0x27, 0x01, 0x27,
2855 : 0x03, 0x27, 0x03, 0x27, 0x05, 0x27, 0x05, 0x27,
2856 : 0x07, 0x27, 0x07, 0x01, 0x02, 0x01, 0x03
2857 : };
2858 24 : return expand_rtx (expand_encoding, operands);
2859 : }
2860 :
2861 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11882 */
2862 : rtx
2863 16 : gen_sse_shufps_v4sf_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)
2864 : {
2865 16 : rtx operands[9] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8 };
2866 16 : static const uint8_t expand_encoding[] = {
2867 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0a,
2868 : 0x6b, 0x81, 0x0b, 0x6f, 0x01, 0x01, 0x01, 0x02,
2869 : 0x17, 0x00, 0x04, 0x01, 0x03, 0x01, 0x04, 0x01,
2870 : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08
2871 : };
2872 16 : return expand_rtx (expand_encoding, operands);
2873 : }
2874 :
2875 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12238 */
2876 : rtx
2877 2133 : gen_vec_setv4si_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2878 : {
2879 2133 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2880 2133 : static const uint8_t expand_encoding[] = {
2881 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x81, 0x0c,
2882 : 0x51, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2883 : };
2884 2133 : return expand_rtx (expand_encoding, operands);
2885 : }
2886 :
2887 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12428 */
2888 : rtx
2889 0 : gen_vec_setv32bf_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2890 : {
2891 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2892 0 : static const uint8_t expand_encoding[] = {
2893 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x0c,
2894 : 0x72, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2895 : };
2896 0 : return expand_rtx (expand_encoding, operands);
2897 : }
2898 :
2899 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12862 */
2900 : rtx
2901 55 : gen_avx512f_vextractf32x4_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)
2902 : {
2903 55 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
2904 55 : static const uint8_t expand_encoding[] = {
2905 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0a,
2906 : 0x6b, 0x01, 0x01, 0x17, 0x00, 0x04, 0x01, 0x02,
2907 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
2908 : 0x01, 0x07
2909 : };
2910 55 : return expand_rtx (expand_encoding, operands);
2911 : }
2912 :
2913 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13053 */
2914 : rtx
2915 21 : gen_vec_extract_hi_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2916 : {
2917 21 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2918 21 : static const uint8_t expand_encoding[] = {
2919 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x0a,
2920 : 0x56, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x08,
2921 : 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b, 0x27, 0x0c,
2922 : 0x27, 0x0d, 0x27, 0x0e, 0x27, 0x0f, 0x01, 0x02,
2923 : 0x01, 0x03
2924 : };
2925 21 : return expand_rtx (expand_encoding, operands);
2926 : }
2927 :
2928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13267 */
2929 : rtx
2930 24 : gen_vec_extract_hi_v4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2931 : {
2932 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2933 24 : static const uint8_t expand_encoding[] = {
2934 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0a,
2935 : 0x6c, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x02,
2936 : 0x27, 0x03, 0x01, 0x02, 0x01, 0x03
2937 : };
2938 24 : return expand_rtx (expand_encoding, operands);
2939 : }
2940 :
2941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13386 */
2942 : rtx
2943 42 : gen_vec_extract_lo_v32hf (const rtx operand0, const rtx operand1)
2944 : {
2945 42 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2946 42 : static const uint8_t expand_encoding[] = {
2947 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6e, 0x01, 0x01,
2948 : 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x01, 0x27,
2949 : 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05, 0x27,
2950 : 0x06, 0x27, 0x07, 0x27, 0x08, 0x27, 0x09, 0x27,
2951 : 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d, 0x27,
2952 : 0x0e, 0x27, 0x0f
2953 : };
2954 42 : return expand_rtx (expand_encoding, operands);
2955 : }
2956 :
2957 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13460 */
2958 : rtx
2959 173 : gen_vec_extract_hi_v16bf (const rtx operand0, const rtx operand1)
2960 : {
2961 173 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2962 173 : static const uint8_t expand_encoding[] = {
2963 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x69, 0x01, 0x01,
2964 : 0x17, 0x00, 0x08, 0x27, 0x08, 0x27, 0x09, 0x27,
2965 : 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d, 0x27,
2966 : 0x0e, 0x27, 0x0f
2967 : };
2968 173 : return expand_rtx (expand_encoding, operands);
2969 : }
2970 :
2971 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13802 */
2972 : rtx
2973 36 : gen_avx512f_movddup512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2974 : {
2975 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2976 36 : static const uint8_t expand_encoding[] = {
2977 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x0a,
2978 : 0x75, 0x81, 0x0b, 0x7a, 0x01, 0x01, 0x01, 0x01,
2979 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x08, 0x27,
2980 : 0x02, 0x27, 0x0a, 0x27, 0x04, 0x27, 0x0c, 0x27,
2981 : 0x06, 0x27, 0x0e, 0x01, 0x02, 0x01, 0x03
2982 : };
2983 36 : return expand_rtx (expand_encoding, operands);
2984 : }
2985 :
2986 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13977 */
2987 : rtx
2988 0 : gen_avx512f_vmscalefv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2989 : {
2990 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2991 0 : static const uint8_t expand_encoding[] = {
2992 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
2993 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
2994 : 0x3b, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27,
2995 : 0x01
2996 : };
2997 0 : return expand_rtx (expand_encoding, operands);
2998 : }
2999 :
3000 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3001 : rtx
3002 0 : gen_avx512bw_scalefv32hf (const rtx operand0, const rtx operand1, const rtx operand2)
3003 : {
3004 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3005 0 : static const uint8_t expand_encoding[] = {
3006 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01, 0x01,
3007 : 0x01, 0x02, 0x3b
3008 : };
3009 0 : return expand_rtx (expand_encoding, operands);
3010 : }
3011 :
3012 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3013 : rtx
3014 0 : gen_avx512fp16_scalefv8hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3015 : {
3016 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3017 0 : static const uint8_t expand_encoding[] = {
3018 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x1a, 0x6a,
3019 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3020 : 0x81, 0x33
3021 : };
3022 0 : return expand_rtx (expand_encoding, operands);
3023 : }
3024 :
3025 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3026 : rtx
3027 36 : gen_avx512vl_scalefv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3028 : {
3029 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3030 36 : static const uint8_t expand_encoding[] = {
3031 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
3032 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3033 : 0x01, 0x04
3034 : };
3035 36 : return expand_rtx (expand_encoding, operands);
3036 : }
3037 :
3038 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3039 : rtx
3040 0 : gen_avx512vl_scalefv4df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3041 : {
3042 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3043 0 : static const uint8_t expand_encoding[] = {
3044 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x1a, 0x70,
3045 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3046 : 0x81, 0x33
3047 : };
3048 0 : return expand_rtx (expand_encoding, operands);
3049 : }
3050 :
3051 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14017 */
3052 : rtx
3053 0 : gen_avx512vl_vternlogv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3054 : {
3055 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3056 0 : static const uint8_t expand_encoding[] = {
3057 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01, 0x01,
3058 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x25
3059 : };
3060 0 : return expand_rtx (expand_encoding, operands);
3061 : }
3062 :
3063 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14017 */
3064 : rtx
3065 8 : gen_avx512vl_vternlogv2di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3066 : {
3067 8 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3068 8 : static const uint8_t expand_encoding[] = {
3069 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
3070 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3071 : 0x04, 0x81, 0x25, 0x01, 0x05, 0x01, 0x06
3072 : };
3073 8 : return expand_rtx (expand_encoding, operands);
3074 : }
3075 :
3076 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3077 : rtx
3078 0 : gen_avx512fp16_getexpv8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3079 : {
3080 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3081 0 : static const uint8_t expand_encoding[] = {
3082 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
3083 : 0x6a, 0x1a, 0x6a, 0x01, 0x01, 0x01, 0x81, 0x26,
3084 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
3085 : };
3086 0 : return expand_rtx (expand_encoding, operands);
3087 : }
3088 :
3089 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3090 : rtx
3091 0 : gen_avx512vl_getexpv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3092 : {
3093 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3094 0 : static const uint8_t expand_encoding[] = {
3095 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3096 : 0x6b, 0x1a, 0x6b, 0x01, 0x01, 0x01, 0x81, 0x26,
3097 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
3098 : };
3099 0 : return expand_rtx (expand_encoding, operands);
3100 : }
3101 :
3102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3103 : rtx
3104 36 : gen_avx512vl_getexpv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3105 : {
3106 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3107 36 : static const uint8_t expand_encoding[] = {
3108 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3109 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
3110 : 0x03
3111 : };
3112 36 : return expand_rtx (expand_encoding, operands);
3113 : }
3114 :
3115 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14410 */
3116 : rtx
3117 0 : gen_avx512f_sgetexpv2df (const rtx operand0, const rtx operand1, const rtx operand2)
3118 : {
3119 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3120 0 : static const uint8_t expand_encoding[] = {
3121 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3122 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x26, 0x01,
3123 : 0x01, 0x27, 0x01
3124 : };
3125 0 : return expand_rtx (expand_encoding, operands);
3126 : }
3127 :
3128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14424 */
3129 : rtx
3130 25 : gen_avx512vl_alignv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3131 : {
3132 25 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3133 25 : static const uint8_t expand_encoding[] = {
3134 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
3135 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
3136 : 0x28, 0x01, 0x04, 0x01, 0x05
3137 : };
3138 25 : return expand_rtx (expand_encoding, operands);
3139 : }
3140 :
3141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3142 : rtx
3143 0 : gen_avx512vl_fixupimmv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3144 : {
3145 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3146 0 : static const uint8_t expand_encoding[] = {
3147 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x1a, 0x6b,
3148 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3149 : 0x04, 0x81, 0x24, 0x01, 0x05, 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:14513 */
3155 : rtx
3156 8 : gen_avx512vl_fixupimmv4df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3157 : {
3158 8 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3159 8 : static const uint8_t expand_encoding[] = {
3160 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
3161 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3162 : 0x04, 0x81, 0x24, 0x01, 0x05, 0x01, 0x06
3163 : };
3164 8 : return expand_rtx (expand_encoding, operands);
3165 : }
3166 :
3167 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14526 */
3168 : rtx
3169 0 : gen_avx512vl_fixupimmv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3170 : {
3171 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3172 0 : static const uint8_t expand_encoding[] = {
3173 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3174 : 0x6b, 0x1a, 0x6b, 0x04, 0x01, 0x01, 0x01, 0x02,
3175 : 0x01, 0x03, 0x01, 0x04, 0x81, 0x24, 0x01, 0x01,
3176 : 0x01, 0x05, 0x01, 0x06, 0x81, 0x33
3177 : };
3178 0 : return expand_rtx (expand_encoding, operands);
3179 : }
3180 :
3181 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14558 */
3182 : rtx
3183 19 : gen_avx512f_sfixupimmv4sf_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7)
3184 : {
3185 19 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
3186 19 : static const uint8_t expand_encoding[] = {
3187 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3188 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x04, 0x01,
3189 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
3190 : 0x24, 0x01, 0x05, 0x01, 0x06, 0x01, 0x02, 0x27,
3191 : 0x01, 0x01, 0x07, 0x81, 0x33
3192 : };
3193 19 : return expand_rtx (expand_encoding, operands);
3194 : }
3195 :
3196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3197 : rtx
3198 0 : gen_avx512bw_rndscalev32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3199 : {
3200 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3201 0 : static const uint8_t expand_encoding[] = {
3202 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
3203 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3204 : 0x01, 0x04
3205 : };
3206 0 : return expand_rtx (expand_encoding, operands);
3207 : }
3208 :
3209 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3210 : rtx
3211 0 : gen_avx512f_rndscalev16sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3212 : {
3213 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3214 0 : static const uint8_t expand_encoding[] = {
3215 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x1a, 0x74,
3216 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3217 : 0x81, 0x33
3218 : };
3219 0 : return expand_rtx (expand_encoding, operands);
3220 : }
3221 :
3222 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3223 : rtx
3224 106 : gen_avx512vl_rndscalev4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3225 : {
3226 106 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3227 106 : static const uint8_t expand_encoding[] = {
3228 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
3229 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3230 : 0x01, 0x04
3231 : };
3232 106 : return expand_rtx (expand_encoding, operands);
3233 : }
3234 :
3235 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3236 : rtx
3237 0 : gen_avx512vl_rndscalev2df (const rtx operand0, const rtx operand1, const rtx operand2)
3238 : {
3239 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3240 0 : static const uint8_t expand_encoding[] = {
3241 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01, 0x01,
3242 : 0x01, 0x02, 0x5f
3243 : };
3244 0 : return expand_rtx (expand_encoding, operands);
3245 : }
3246 :
3247 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14605 */
3248 : rtx
3249 0 : gen_avx512f_rndscalev4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3250 : {
3251 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3252 0 : static const uint8_t expand_encoding[] = {
3253 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
3254 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x02, 0x01, 0x03,
3255 : 0x5f, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01, 0x27,
3256 : 0x01
3257 : };
3258 0 : return expand_rtx (expand_encoding, operands);
3259 : }
3260 :
3261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14710 */
3262 : rtx
3263 0 : gen_avx512f_shufpd512_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)
3264 : {
3265 0 : rtx operands[11] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10 };
3266 0 : static const uint8_t expand_encoding[] = {
3267 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x75, 0x81, 0x0b,
3268 : 0x7a, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3269 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
3270 : 0x01, 0x07, 0x01, 0x08, 0x01, 0x09, 0x01, 0x0a
3271 : };
3272 0 : return expand_rtx (expand_encoding, operands);
3273 : }
3274 :
3275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14880 */
3276 : rtx
3277 157 : gen_avx2_interleave_lowv4di (const rtx operand0, const rtx operand1, const rtx operand2)
3278 : {
3279 157 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3280 157 : static const uint8_t expand_encoding[] = {
3281 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x57, 0x81, 0x0b,
3282 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
3283 : 0x27, 0x00, 0x27, 0x04, 0x27, 0x02, 0x27, 0x06
3284 : };
3285 157 : return expand_rtx (expand_encoding, operands);
3286 : }
3287 :
3288 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15093 */
3289 : rtx
3290 368 : gen_sse2_loadhpd (const rtx operand0, const rtx operand1, const rtx operand2)
3291 : {
3292 368 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3293 368 : static const uint8_t expand_encoding[] = {
3294 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6c, 0x81, 0x0a,
3295 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
3296 : 0x01, 0x02
3297 : };
3298 368 : return expand_rtx (expand_encoding, operands);
3299 : }
3300 :
3301 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15503 */
3302 : rtx
3303 36 : gen_avx512f_truncatev16siv16qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3304 : {
3305 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3306 36 : static const uint8_t expand_encoding[] = {
3307 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x70, 0x4f,
3308 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3309 : };
3310 36 : return expand_rtx (expand_encoding, operands);
3311 : }
3312 :
3313 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15503 */
3314 : rtx
3315 36 : gen_avx512f_us_truncatev8div8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3316 : {
3317 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3318 36 : static const uint8_t expand_encoding[] = {
3319 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x18,
3320 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3321 : };
3322 36 : return expand_rtx (expand_encoding, operands);
3323 : }
3324 :
3325 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15675 */
3326 : rtx
3327 36 : gen_avx512vl_us_truncatev8siv8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3328 : {
3329 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3330 36 : static const uint8_t expand_encoding[] = {
3331 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x18,
3332 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3333 : };
3334 36 : return expand_rtx (expand_encoding, operands);
3335 : }
3336 :
3337 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15736 */
3338 : rtx
3339 0 : gen_avx512vl_ss_truncatev8siv8qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3340 : {
3341 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3342 0 : static const uint8_t expand_encoding[] = {
3343 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x17,
3344 : 0x48, 0x01, 0x01, 0x01, 0x02
3345 : };
3346 0 : return expand_rtx (expand_encoding, operands);
3347 : }
3348 :
3349 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15794 */
3350 : rtx
3351 36 : gen_avx512vl_truncatev2div2qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3352 : {
3353 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3354 36 : static const uint8_t expand_encoding[] = {
3355 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x09,
3356 : 0x44, 0x70, 0x44, 0x01, 0x01, 0x81, 0x0a, 0x44,
3357 : 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
3358 : 0x01, 0x01, 0x03, 0x2c, 0x4e, 0x0e, 0x27, 0x00,
3359 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3360 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3361 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3362 : 0x27, 0x00
3363 : };
3364 36 : return expand_rtx (expand_encoding, operands);
3365 : }
3366 :
3367 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15933 */
3368 : rtx
3369 11 : gen_avx512vl_us_truncatev4siv4qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3370 : {
3371 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3372 11 : static const uint8_t expand_encoding[] = {
3373 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x45, 0x81, 0x18,
3374 : 0x45, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3375 : };
3376 11 : return expand_rtx (expand_encoding, operands);
3377 : }
3378 :
3379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15987 */
3380 : rtx
3381 36 : gen_avx512vl_truncatev8siv8qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3382 : {
3383 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3384 36 : static const uint8_t expand_encoding[] = {
3385 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x09,
3386 : 0x48, 0x70, 0x48, 0x01, 0x01, 0x81, 0x0a, 0x48,
3387 : 0x01, 0x02, 0x17, 0x00, 0x08, 0x27, 0x00, 0x27,
3388 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27,
3389 : 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x03, 0x2c,
3390 : 0x48, 0x08, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3391 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3392 : 0x27, 0x00
3393 : };
3394 36 : return expand_rtx (expand_encoding, operands);
3395 : }
3396 :
3397 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16091 */
3398 : rtx
3399 0 : gen_avx512vl_ss_truncatev4siv4hi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3400 : {
3401 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3402 0 : static const uint8_t expand_encoding[] = {
3403 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x81, 0x17,
3404 : 0x49, 0x01, 0x01, 0x01, 0x02
3405 : };
3406 0 : return expand_rtx (expand_encoding, operands);
3407 : }
3408 :
3409 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16185 */
3410 : rtx
3411 12 : gen_avx512vl_truncatev4siv4hi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3412 : {
3413 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3414 12 : static const uint8_t expand_encoding[] = {
3415 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x49, 0x70, 0x49,
3416 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3417 : };
3418 12 : return expand_rtx (expand_encoding, operands);
3419 : }
3420 :
3421 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16185 */
3422 : rtx
3423 11 : gen_avx512vl_us_truncatev4div4hi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3424 : {
3425 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3426 11 : static const uint8_t expand_encoding[] = {
3427 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x49, 0x81, 0x18,
3428 : 0x49, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3429 : };
3430 11 : return expand_rtx (expand_encoding, operands);
3431 : }
3432 :
3433 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16390 */
3434 : rtx
3435 36 : gen_avx512vl_ss_truncatev2div2si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3436 : {
3437 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3438 36 : static const uint8_t expand_encoding[] = {
3439 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x81, 0x09,
3440 : 0x4a, 0x81, 0x17, 0x4a, 0x01, 0x01, 0x81, 0x0a,
3441 : 0x4a, 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00,
3442 : 0x27, 0x01, 0x01, 0x03, 0x2c, 0x4a, 0x02, 0x27,
3443 : 0x00, 0x27, 0x00
3444 : };
3445 36 : return expand_rtx (expand_encoding, operands);
3446 : }
3447 :
3448 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16547 */
3449 : rtx
3450 12 : gen_avx512f_ss_truncatev8div16qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3451 : {
3452 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3453 12 : static const uint8_t expand_encoding[] = {
3454 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x81, 0x17,
3455 : 0x48, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3456 : };
3457 12 : return expand_rtx (expand_encoding, operands);
3458 : }
3459 :
3460 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17040 */
3461 : rtx
3462 0 : gen_avx512bw_pmaddwd512v8hi (const rtx operand0, const rtx operand1, const rtx operand2)
3463 : {
3464 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3465 0 : static const uint8_t expand_encoding[] = {
3466 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x01, 0x01,
3467 : 0x01, 0x02, 0x81, 0x3d
3468 : };
3469 0 : return expand_rtx (expand_encoding, operands);
3470 : }
3471 :
3472 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17481 */
3473 : rtx
3474 2265 : gen_ashrv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3475 : {
3476 2265 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3477 2265 : static const uint8_t expand_encoding[] = {
3478 : 0x1f, 0x01, 0x00, 0x4f, 0x51, 0x01, 0x01, 0x01,
3479 : 0x02
3480 : };
3481 2265 : return expand_rtx (expand_encoding, operands);
3482 : }
3483 :
3484 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17663 */
3485 : rtx
3486 41 : gen_lshrv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3487 : {
3488 41 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3489 41 : static const uint8_t expand_encoding[] = {
3490 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x50, 0x56,
3491 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3492 : };
3493 41 : return expand_rtx (expand_encoding, operands);
3494 : }
3495 :
3496 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17677 */
3497 : rtx
3498 5616 : gen_lshrv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3499 : {
3500 5616 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3501 5616 : static const uint8_t expand_encoding[] = {
3502 : 0x1f, 0x01, 0x00, 0x50, 0x50, 0x01, 0x01, 0x01,
3503 : 0x02
3504 : };
3505 5616 : return expand_rtx (expand_encoding, operands);
3506 : }
3507 :
3508 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17751 */
3509 : rtx
3510 92 : gen_ashlv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3511 : {
3512 92 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3513 92 : static const uint8_t expand_encoding[] = {
3514 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x4d, 0x5a,
3515 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3516 : };
3517 92 : return expand_rtx (expand_encoding, operands);
3518 : }
3519 :
3520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17751 */
3521 : rtx
3522 66 : gen_lshrv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3523 : {
3524 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3525 66 : static const uint8_t expand_encoding[] = {
3526 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x50, 0x5c,
3527 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3528 : };
3529 66 : return expand_rtx (expand_encoding, operands);
3530 : }
3531 :
3532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17985 */
3533 : rtx
3534 34090 : gen_sse2_lshrv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
3535 : {
3536 34090 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3537 34090 : static const uint8_t expand_encoding[] = {
3538 : 0x1f, 0x01, 0x00, 0x50, 0x53, 0x01, 0x01, 0x01,
3539 : 0x02
3540 : };
3541 34090 : return expand_rtx (expand_encoding, operands);
3542 : }
3543 :
3544 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3545 : rtx
3546 36 : gen_avx512vl_rolvv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3547 : {
3548 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3549 36 : static const uint8_t expand_encoding[] = {
3550 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4e, 0x51,
3551 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3552 : };
3553 36 : return expand_rtx (expand_encoding, operands);
3554 : }
3555 :
3556 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3557 : rtx
3558 0 : gen_avx512vl_rolvv2di (const rtx operand0, const rtx operand1, const rtx operand2)
3559 : {
3560 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3561 0 : static const uint8_t expand_encoding[] = {
3562 : 0x1f, 0x01, 0x00, 0x4e, 0x52, 0x01, 0x01, 0x01,
3563 : 0x02
3564 : };
3565 0 : return expand_rtx (expand_encoding, operands);
3566 : }
3567 :
3568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3569 : rtx
3570 24 : gen_avx512vl_rolv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3571 : {
3572 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3573 24 : static const uint8_t expand_encoding[] = {
3574 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x4e, 0x56,
3575 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3576 : };
3577 24 : return expand_rtx (expand_encoding, operands);
3578 : }
3579 :
3580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3581 : rtx
3582 0 : gen_avx512vl_rolv4di (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, 0x57, 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:18666 */
3593 : rtx
3594 0 : gen_avx2_gtv32qi3 (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, 0x5f, 0x54, 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:19327 */
3605 : rtx
3606 11 : gen_andv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
3607 : {
3608 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3609 11 : static const uint8_t expand_encoding[] = {
3610 : 0x1f, 0x01, 0x00, 0x49, 0x53, 0x01, 0x01, 0x01,
3611 : 0x02
3612 : };
3613 11 : return expand_rtx (expand_encoding, operands);
3614 : }
3615 :
3616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3617 : rtx
3618 0 : gen_avx512bw_testmv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3619 : {
3620 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3621 0 : static const uint8_t expand_encoding[] = {
3622 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x01, 0x01,
3623 : 0x01, 0x02, 0x81, 0x1f
3624 : };
3625 0 : return expand_rtx (expand_encoding, operands);
3626 : }
3627 :
3628 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3629 : rtx
3630 24 : gen_avx512vl_testmv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3631 : {
3632 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3633 24 : static const uint8_t expand_encoding[] = {
3634 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3635 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x1f, 0x01, 0x03
3636 : };
3637 24 : return expand_rtx (expand_encoding, operands);
3638 : }
3639 :
3640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3641 : rtx
3642 0 : gen_avx512vl_testnmv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3643 : {
3644 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3645 0 : static const uint8_t expand_encoding[] = {
3646 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x01, 0x01,
3647 : 0x01, 0x02, 0x81, 0x20
3648 : };
3649 0 : return expand_rtx (expand_encoding, operands);
3650 : }
3651 :
3652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3653 : rtx
3654 25 : gen_avx512vl_testnmv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3655 : {
3656 25 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3657 25 : static const uint8_t expand_encoding[] = {
3658 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3659 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x20, 0x01, 0x03
3660 : };
3661 25 : return expand_rtx (expand_encoding, operands);
3662 : }
3663 :
3664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3665 : rtx
3666 0 : gen_avx512vl_testnmv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3667 : {
3668 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3669 0 : static const uint8_t expand_encoding[] = {
3670 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
3671 : 0x01, 0x02, 0x81, 0x20
3672 : };
3673 0 : return expand_rtx (expand_encoding, operands);
3674 : }
3675 :
3676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19702 */
3677 : rtx
3678 24 : gen_sse2_packssdw_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3679 : {
3680 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3681 24 : static const uint8_t expand_encoding[] = {
3682 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0b,
3683 : 0x50, 0x81, 0x17, 0x49, 0x01, 0x01, 0x81, 0x17,
3684 : 0x49, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3685 : };
3686 24 : return expand_rtx (expand_encoding, operands);
3687 : }
3688 :
3689 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19773 */
3690 : rtx
3691 36 : gen_avx512bw_packuswb_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3692 : {
3693 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3694 36 : static const uint8_t expand_encoding[] = {
3695 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
3696 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3a, 0x01, 0x03,
3697 : 0x01, 0x04
3698 : };
3699 36 : return expand_rtx (expand_encoding, operands);
3700 : }
3701 :
3702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19833 */
3703 : rtx
3704 24 : gen_avx2_interleave_highv32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3705 : {
3706 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3707 24 : static const uint8_t expand_encoding[] = {
3708 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81, 0x0a,
3709 : 0x54, 0x81, 0x0b, 0x59, 0x01, 0x01, 0x01, 0x02,
3710 : 0x17, 0x00, 0x20, 0x27, 0x08, 0x27, 0x28, 0x27,
3711 : 0x09, 0x27, 0x29, 0x27, 0x0a, 0x27, 0x2a, 0x27,
3712 : 0x0b, 0x27, 0x2b, 0x27, 0x0c, 0x27, 0x2c, 0x27,
3713 : 0x0d, 0x27, 0x2d, 0x27, 0x0e, 0x27, 0x2e, 0x27,
3714 : 0x0f, 0x27, 0x2f, 0x27, 0x18, 0x27, 0x38, 0x27,
3715 : 0x19, 0x27, 0x39, 0x27, 0x1a, 0x27, 0x3a, 0x27,
3716 : 0x1b, 0x27, 0x3b, 0x27, 0x1c, 0x27, 0x3c, 0x27,
3717 : 0x1d, 0x27, 0x3d, 0x27, 0x1e, 0x27, 0x3e, 0x27,
3718 : 0x1f, 0x27, 0x3f, 0x01, 0x03, 0x01, 0x04
3719 : };
3720 24 : return expand_rtx (expand_encoding, operands);
3721 : }
3722 :
3723 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19981 */
3724 : rtx
3725 36 : gen_avx512bw_interleave_highv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3726 : {
3727 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3728 36 : static const uint8_t expand_encoding[] = {
3729 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x81, 0x0a,
3730 : 0x5a, 0x81, 0x0b, 0x5f, 0x01, 0x01, 0x01, 0x02,
3731 : 0x17, 0x00, 0x20, 0x27, 0x04, 0x27, 0x24, 0x27,
3732 : 0x05, 0x27, 0x25, 0x27, 0x06, 0x27, 0x26, 0x27,
3733 : 0x07, 0x27, 0x27, 0x27, 0x0c, 0x27, 0x2c, 0x27,
3734 : 0x0d, 0x27, 0x2d, 0x27, 0x0e, 0x27, 0x2e, 0x27,
3735 : 0x0f, 0x27, 0x2f, 0x27, 0x14, 0x27, 0x34, 0x27,
3736 : 0x15, 0x27, 0x35, 0x27, 0x16, 0x27, 0x36, 0x27,
3737 : 0x17, 0x27, 0x37, 0x27, 0x1c, 0x27, 0x3c, 0x27,
3738 : 0x1d, 0x27, 0x3d, 0x27, 0x1e, 0x27, 0x3e, 0x27,
3739 : 0x1f, 0x27, 0x3f, 0x01, 0x03, 0x01, 0x04
3740 : };
3741 36 : return expand_rtx (expand_encoding, operands);
3742 : }
3743 :
3744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20009 */
3745 : rtx
3746 0 : gen_avx2_interleave_highv16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3747 : {
3748 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3749 0 : static const uint8_t expand_encoding[] = {
3750 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x0a,
3751 : 0x6d, 0x81, 0x0b, 0x72, 0x01, 0x01, 0x01, 0x02,
3752 : 0x17, 0x00, 0x10, 0x27, 0x04, 0x27, 0x14, 0x27,
3753 : 0x05, 0x27, 0x15, 0x27, 0x06, 0x27, 0x16, 0x27,
3754 : 0x07, 0x27, 0x17, 0x27, 0x0c, 0x27, 0x1c, 0x27,
3755 : 0x0d, 0x27, 0x1d, 0x27, 0x0e, 0x27, 0x1e, 0x27,
3756 : 0x0f, 0x27, 0x1f, 0x01, 0x03, 0x01, 0x04
3757 : };
3758 0 : return expand_rtx (expand_encoding, operands);
3759 : }
3760 :
3761 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20077 */
3762 : rtx
3763 0 : gen_avx2_interleave_lowv16hf (const rtx operand0, const rtx operand1, const rtx operand2)
3764 : {
3765 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3766 0 : static const uint8_t expand_encoding[] = {
3767 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6e, 0x81, 0x0b,
3768 : 0x73, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10,
3769 : 0x27, 0x00, 0x27, 0x10, 0x27, 0x01, 0x27, 0x11,
3770 : 0x27, 0x02, 0x27, 0x12, 0x27, 0x03, 0x27, 0x13,
3771 : 0x27, 0x08, 0x27, 0x18, 0x27, 0x09, 0x27, 0x19,
3772 : 0x27, 0x0a, 0x27, 0x1a, 0x27, 0x0b, 0x27, 0x1b
3773 : };
3774 0 : return expand_rtx (expand_encoding, operands);
3775 : }
3776 :
3777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20097 */
3778 : rtx
3779 1949 : gen_vec_interleave_lowv8bf (const rtx operand0, const rtx operand1, const rtx operand2)
3780 : {
3781 1949 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3782 1949 : static const uint8_t expand_encoding[] = {
3783 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x69, 0x81, 0x0b,
3784 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3785 : 0x27, 0x00, 0x27, 0x08, 0x27, 0x01, 0x27, 0x09,
3786 : 0x27, 0x02, 0x27, 0x0a, 0x27, 0x03, 0x27, 0x0b
3787 : };
3788 1949 : return expand_rtx (expand_encoding, operands);
3789 : }
3790 :
3791 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20188 */
3792 : rtx
3793 36 : gen_avx512f_interleave_lowv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3794 : {
3795 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3796 36 : static const uint8_t expand_encoding[] = {
3797 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0a,
3798 : 0x5b, 0x81, 0x0b, 0x60, 0x01, 0x01, 0x01, 0x02,
3799 : 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x10, 0x27,
3800 : 0x01, 0x27, 0x11, 0x27, 0x04, 0x27, 0x14, 0x27,
3801 : 0x05, 0x27, 0x15, 0x27, 0x08, 0x27, 0x18, 0x27,
3802 : 0x09, 0x27, 0x19, 0x27, 0x0c, 0x27, 0x1c, 0x27,
3803 : 0x0d, 0x27, 0x1d, 0x01, 0x03, 0x01, 0x04
3804 : };
3805 36 : return expand_rtx (expand_encoding, operands);
3806 : }
3807 :
3808 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20491 */
3809 : rtx
3810 3 : gen_vec_set_lo_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3811 : {
3812 3 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3813 3 : static const uint8_t expand_encoding[] = {
3814 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0b,
3815 : 0x5b, 0x01, 0x02, 0x81, 0x0a, 0x56, 0x01, 0x01,
3816 : 0x17, 0x00, 0x08, 0x27, 0x08, 0x27, 0x09, 0x27,
3817 : 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d, 0x27,
3818 : 0x0e, 0x27, 0x0f, 0x01, 0x03, 0x01, 0x04
3819 : };
3820 3 : return expand_rtx (expand_encoding, operands);
3821 : }
3822 :
3823 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20543 */
3824 : rtx
3825 0 : gen_vec_set_hi_v8di (const rtx operand0, const rtx operand1, const rtx operand2)
3826 : {
3827 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3828 0 : static const uint8_t expand_encoding[] = {
3829 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x5c, 0x81, 0x0a,
3830 : 0x57, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00,
3831 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x02
3832 : };
3833 0 : return expand_rtx (expand_encoding, operands);
3834 : }
3835 :
3836 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20734 */
3837 : rtx
3838 27 : gen_avx512vl_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)
3839 : {
3840 27 : rtx operands[13] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10, operand11, operand12 };
3841 27 : static const uint8_t expand_encoding[] = {
3842 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x0a,
3843 : 0x56, 0x81, 0x0b, 0x5b, 0x01, 0x01, 0x01, 0x02,
3844 : 0x17, 0x00, 0x08, 0x01, 0x03, 0x01, 0x04, 0x01,
3845 : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08, 0x01,
3846 : 0x09, 0x01, 0x0a, 0x01, 0x0b, 0x01, 0x0c
3847 : };
3848 27 : return expand_rtx (expand_encoding, operands);
3849 : }
3850 :
3851 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21100 */
3852 : rtx
3853 14183 : gen_sse2_pshufd_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3854 : {
3855 14183 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3856 14183 : static const uint8_t expand_encoding[] = {
3857 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x51, 0x01, 0x01,
3858 : 0x17, 0x00, 0x04, 0x01, 0x02, 0x01, 0x03, 0x01,
3859 : 0x04, 0x01, 0x05
3860 : };
3861 14183 : return expand_rtx (expand_encoding, operands);
3862 : }
3863 :
3864 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21125 */
3865 : rtx
3866 24 : gen_avx512bw_pshuflwv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3867 : {
3868 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3869 24 : static const uint8_t expand_encoding[] = {
3870 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
3871 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x3f, 0x01,
3872 : 0x03, 0x01, 0x04
3873 : };
3874 24 : return expand_rtx (expand_encoding, operands);
3875 : }
3876 :
3877 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21449 */
3878 : rtx
3879 17568 : gen_sse2_loadld (const rtx operand0, const rtx operand1, const rtx operand2)
3880 : {
3881 17568 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3882 17568 : static const uint8_t expand_encoding[] = {
3883 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x81, 0x0c,
3884 : 0x51, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
3885 : };
3886 17568 : return expand_rtx (expand_encoding, operands);
3887 : }
3888 :
3889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22378 */
3890 : rtx
3891 16 : gen_avx_movmskps256 (const rtx operand0, const rtx operand1)
3892 : {
3893 16 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3894 16 : static const uint8_t expand_encoding[] = {
3895 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
3896 : 0x32
3897 : };
3898 16 : return expand_rtx (expand_encoding, operands);
3899 : }
3900 :
3901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22963 */
3902 : rtx
3903 11 : gen_sse2_clflush (const rtx operand0)
3904 : {
3905 11 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
3906 11 : static const uint8_t expand_encoding[] = {
3907 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x5e
3908 : };
3909 11 : return expand_rtx (expand_encoding, operands);
3910 : }
3911 :
3912 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23035 */
3913 : rtx
3914 29 : gen_ssse3_phsubwv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3915 : {
3916 29 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3917 29 : static const uint8_t expand_encoding[] = {
3918 : 0x1f, 0x01, 0x00, 0x3c, 0x50, 0x81, 0x0a, 0x50,
3919 : 0x81, 0x0b, 0x55, 0x01, 0x01, 0x01, 0x02, 0x17,
3920 : 0x00, 0x08, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
3921 : 0x27, 0x06, 0x27, 0x08, 0x27, 0x0a, 0x27, 0x0c,
3922 : 0x27, 0x0e, 0x81, 0x0a, 0x50, 0x81, 0x0b, 0x55,
3923 : 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08, 0x27,
3924 : 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07, 0x27,
3925 : 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27, 0x0f
3926 : };
3927 29 : return expand_rtx (expand_encoding, operands);
3928 : }
3929 :
3930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23104 */
3931 : rtx
3932 15 : gen_avx2_phsubdv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3933 : {
3934 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3935 15 : static const uint8_t expand_encoding[] = {
3936 : 0x1f, 0x01, 0x00, 0x3c, 0x56, 0x81, 0x0a, 0x56,
3937 : 0x81, 0x0b, 0x5b, 0x01, 0x01, 0x01, 0x02, 0x17,
3938 : 0x00, 0x08, 0x27, 0x00, 0x27, 0x02, 0x27, 0x08,
3939 : 0x27, 0x0a, 0x27, 0x04, 0x27, 0x06, 0x27, 0x0c,
3940 : 0x27, 0x0e, 0x81, 0x0a, 0x56, 0x81, 0x0b, 0x5b,
3941 : 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08, 0x27,
3942 : 0x01, 0x27, 0x03, 0x27, 0x09, 0x27, 0x0b, 0x27,
3943 : 0x05, 0x27, 0x07, 0x27, 0x0d, 0x27, 0x0f
3944 : };
3945 15 : return expand_rtx (expand_encoding, operands);
3946 : }
3947 :
3948 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23344 */
3949 : rtx
3950 15 : gen_ssse3_pmaddubsw (const rtx operand0, const rtx operand1, const rtx operand2)
3951 : {
3952 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3953 15 : static const uint8_t expand_encoding[] = {
3954 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x49, 0x3e, 0x49,
3955 : 0x6f, 0x49, 0x81, 0x0a, 0x45, 0x01, 0x01, 0x17,
3956 : 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
3957 : 0x27, 0x06, 0x6e, 0x49, 0x81, 0x0a, 0x45, 0x01,
3958 : 0x02, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x02,
3959 : 0x27, 0x04, 0x27, 0x06, 0x3e, 0x49, 0x6f, 0x49,
3960 : 0x81, 0x0a, 0x45, 0x01, 0x01, 0x17, 0x00, 0x04,
3961 : 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07,
3962 : 0x6e, 0x49, 0x81, 0x0a, 0x45, 0x01, 0x02, 0x17,
3963 : 0x00, 0x04, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05,
3964 : 0x27, 0x07
3965 : };
3966 15 : return expand_rtx (expand_encoding, operands);
3967 : }
3968 :
3969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23647 */
3970 : rtx
3971 14 : gen_avx2_psignv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3972 : {
3973 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3974 14 : static const uint8_t expand_encoding[] = {
3975 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x01, 0x01,
3976 : 0x01, 0x02, 0x79
3977 : };
3978 14 : return expand_rtx (expand_encoding, operands);
3979 : }
3980 :
3981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23705 */
3982 : rtx
3983 3225 : gen_ssse3_palignrv1ti (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3984 : {
3985 3225 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3986 3225 : static const uint8_t expand_encoding[] = {
3987 : 0x1f, 0x01, 0x00, 0x1a, 0x53, 0x03, 0x01, 0x01,
3988 : 0x01, 0x02, 0x01, 0x03, 0x7a
3989 : };
3990 3225 : return expand_rtx (expand_encoding, operands);
3991 : }
3992 :
3993 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23846 */
3994 : rtx
3995 24 : gen_absv16qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3996 : {
3997 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3998 24 : static const uint8_t expand_encoding[] = {
3999 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x7b, 0x4f,
4000 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4001 : };
4002 24 : return expand_rtx (expand_encoding, operands);
4003 : }
4004 :
4005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23918 */
4006 : rtx
4007 10 : gen_sse4a_extrq (const rtx operand0, const rtx operand1, const rtx operand2)
4008 : {
4009 10 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4010 10 : static const uint8_t expand_encoding[] = {
4011 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x01,
4012 : 0x01, 0x02, 0x7c
4013 : };
4014 10 : return expand_rtx (expand_encoding, operands);
4015 : }
4016 :
4017 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23987 */
4018 : rtx
4019 95 : gen_avx_blendvps256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4020 : {
4021 95 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4022 95 : static const uint8_t expand_encoding[] = {
4023 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
4024 : 0x01, 0x02, 0x01, 0x03, 0x34
4025 : };
4026 95 : return expand_rtx (expand_encoding, operands);
4027 : }
4028 :
4029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24248 */
4030 : rtx
4031 13 : gen_avx512f_movntdqa (const rtx operand0, const rtx operand1)
4032 : {
4033 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4034 13 : static const uint8_t expand_encoding[] = {
4035 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
4036 : 0x81, 0x00
4037 : };
4038 13 : return expand_rtx (expand_encoding, operands);
4039 : }
4040 :
4041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24310 */
4042 : rtx
4043 39 : gen_avx512bw_packusdw_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4044 : {
4045 39 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4046 39 : static const uint8_t expand_encoding[] = {
4047 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
4048 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3a, 0x01, 0x03,
4049 : 0x01, 0x04
4050 : };
4051 39 : return expand_rtx (expand_encoding, operands);
4052 : }
4053 :
4054 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24564 */
4055 : rtx
4056 23 : gen_avx2_pblenddv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4057 : {
4058 23 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4059 23 : static const uint8_t expand_encoding[] = {
4060 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x01, 0x02,
4061 : 0x01, 0x01, 0x01, 0x03
4062 : };
4063 23 : return expand_rtx (expand_encoding, operands);
4064 : }
4065 :
4066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24702 */
4067 : rtx
4068 2360 : gen_sse4_1_zero_extendv8qiv8hi2 (const rtx operand0, const rtx operand1)
4069 : {
4070 2360 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4071 2360 : static const uint8_t expand_encoding[] = {
4072 : 0x1f, 0x01, 0x00, 0x6f, 0x50, 0x81, 0x0a, 0x48,
4073 : 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00, 0x27,
4074 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27,
4075 : 0x05, 0x27, 0x06, 0x27, 0x07
4076 : };
4077 2360 : return expand_rtx (expand_encoding, operands);
4078 : }
4079 :
4080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24980 */
4081 : rtx
4082 24 : gen_sse4_1_sign_extendv4qiv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4083 : {
4084 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4085 24 : static const uint8_t expand_encoding[] = {
4086 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x6e, 0x51,
4087 : 0x81, 0x0a, 0x45, 0x01, 0x01, 0x17, 0x00, 0x04,
4088 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4089 : 0x01, 0x02, 0x01, 0x03
4090 : };
4091 24 : return expand_rtx (expand_encoding, operands);
4092 : }
4093 :
4094 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25148 */
4095 : rtx
4096 0 : gen_avx2_zero_extendv8hiv8si2_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4097 : {
4098 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4099 0 : static const uint8_t expand_encoding[] = {
4100 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x55, 0x81, 0x0b,
4101 : 0x5a, 0x01, 0x01, 0x01, 0x02, 0x04, 0x03
4102 : };
4103 0 : return expand_rtx (expand_encoding, operands);
4104 : }
4105 :
4106 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25431 */
4107 : rtx
4108 24 : gen_avx2_sign_extendv4qiv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4109 : {
4110 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4111 24 : static const uint8_t expand_encoding[] = {
4112 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6e, 0x57,
4113 : 0x81, 0x0a, 0x45, 0x01, 0x01, 0x17, 0x00, 0x04,
4114 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4115 : 0x01, 0x02, 0x01, 0x03
4116 : };
4117 24 : return expand_rtx (expand_encoding, operands);
4118 : }
4119 :
4120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25608 */
4121 : rtx
4122 16 : gen_avx2_sign_extendv4hiv4di2 (const rtx operand0, const rtx operand1)
4123 : {
4124 16 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4125 16 : static const uint8_t expand_encoding[] = {
4126 : 0x1f, 0x01, 0x00, 0x6e, 0x57, 0x81, 0x0a, 0x49,
4127 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
4128 : 0x01, 0x27, 0x02, 0x27, 0x03
4129 : };
4130 16 : return expand_rtx (expand_encoding, operands);
4131 : }
4132 :
4133 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25786 */
4134 : rtx
4135 18 : gen_avx512f_zero_extendv8siv8di2 (const rtx operand0, const rtx operand1)
4136 : {
4137 18 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4138 18 : static const uint8_t expand_encoding[] = {
4139 : 0x1f, 0x01, 0x00, 0x6f, 0x5c, 0x01, 0x01
4140 : };
4141 18 : return expand_rtx (expand_encoding, operands);
4142 : }
4143 :
4144 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25891 */
4145 : rtx
4146 82 : gen_sse4_1_zero_extendv2siv2di2 (const rtx operand0, const rtx operand1)
4147 : {
4148 82 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4149 82 : static const uint8_t expand_encoding[] = {
4150 : 0x1f, 0x01, 0x00, 0x6f, 0x52, 0x81, 0x0a, 0x4a,
4151 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
4152 : 0x01
4153 : };
4154 82 : return expand_rtx (expand_encoding, operands);
4155 : }
4156 :
4157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26246 */
4158 : rtx
4159 30 : gen_avx_roundpd256 (const rtx operand0, const rtx operand1, const rtx operand2)
4160 : {
4161 30 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4162 30 : static const uint8_t expand_encoding[] = {
4163 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01, 0x01,
4164 : 0x01, 0x02, 0x5f
4165 : };
4166 30 : return expand_rtx (expand_encoding, operands);
4167 : }
4168 :
4169 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26794 */
4170 : rtx
4171 71 : gen_sse4_2_pcmpistri (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4172 : {
4173 71 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4174 71 : static const uint8_t expand_encoding[] = {
4175 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x11,
4176 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4177 : 0x05, 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x03,
4178 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x05
4179 : };
4180 71 : return expand_rtx (expand_encoding, operands);
4181 : }
4182 :
4183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26914 */
4184 : rtx
4185 46 : gen_xop_pmacsdqh (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4186 : {
4187 46 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4188 46 : static const uint8_t expand_encoding[] = {
4189 : 0x1f, 0x01, 0x00, 0x3b, 0x52, 0x3e, 0x52, 0x6e,
4190 : 0x52, 0x81, 0x0a, 0x4a, 0x01, 0x01, 0x17, 0x00,
4191 : 0x02, 0x27, 0x01, 0x27, 0x03, 0x6e, 0x52, 0x81,
4192 : 0x0a, 0x4a, 0x01, 0x02, 0x17, 0x00, 0x02, 0x27,
4193 : 0x01, 0x27, 0x03, 0x01, 0x03
4194 : };
4195 46 : return expand_rtx (expand_encoding, operands);
4196 : }
4197 :
4198 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26989 */
4199 : rtx
4200 0 : gen_xop_pcmov_v8si256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4201 : {
4202 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4203 0 : static const uint8_t expand_encoding[] = {
4204 : 0x1f, 0x01, 0x00, 0x39, 0x56, 0x01, 0x03, 0x01,
4205 : 0x01, 0x01, 0x02
4206 : };
4207 0 : return expand_rtx (expand_encoding, operands);
4208 : }
4209 :
4210 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26989 */
4211 : rtx
4212 0 : gen_xop_pcmov_v4df256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4213 : {
4214 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4215 0 : static const uint8_t expand_encoding[] = {
4216 : 0x1f, 0x01, 0x00, 0x39, 0x70, 0x01, 0x03, 0x01,
4217 : 0x01, 0x01, 0x02
4218 : };
4219 0 : return expand_rtx (expand_encoding, operands);
4220 : }
4221 :
4222 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27155 */
4223 : rtx
4224 9 : gen_xop_phaddwq (const rtx operand0, const rtx operand1)
4225 : {
4226 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4227 9 : static const uint8_t expand_encoding[] = {
4228 : 0x1f, 0x01, 0x00, 0x3b, 0x52, 0x3b, 0x52, 0x6e,
4229 : 0x52, 0x81, 0x0a, 0x46, 0x01, 0x01, 0x17, 0x00,
4230 : 0x02, 0x27, 0x00, 0x27, 0x04, 0x6e, 0x52, 0x81,
4231 : 0x0a, 0x46, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27,
4232 : 0x01, 0x27, 0x05, 0x3b, 0x52, 0x6e, 0x52, 0x81,
4233 : 0x0a, 0x46, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27,
4234 : 0x02, 0x27, 0x06, 0x6e, 0x52, 0x81, 0x0a, 0x46,
4235 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x03, 0x27,
4236 : 0x07
4237 : };
4238 9 : return expand_rtx (expand_encoding, operands);
4239 : }
4240 :
4241 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27282 */
4242 : rtx
4243 0 : gen_xop_pperm_pack_v2di_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4244 : {
4245 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4246 0 : static const uint8_t expand_encoding[] = {
4247 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0b,
4248 : 0x51, 0x70, 0x4a, 0x01, 0x01, 0x70, 0x4a, 0x01,
4249 : 0x02, 0x20, 0x00, 0x01, 0x03
4250 : };
4251 0 : return expand_rtx (expand_encoding, operands);
4252 : }
4253 :
4254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27438 */
4255 : rtx
4256 20 : gen_xop_vrotlv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
4257 : {
4258 20 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4259 20 : static const uint8_t expand_encoding[] = {
4260 : 0x1f, 0x01, 0x00, 0x39, 0x4f, 0x5e, 0x4f, 0x01,
4261 : 0x02, 0x27, 0x00, 0x4e, 0x4f, 0x01, 0x01, 0x01,
4262 : 0x02, 0x51, 0x4f, 0x01, 0x01, 0x3d, 0x4f, 0x01,
4263 : 0x02
4264 : };
4265 20 : return expand_rtx (expand_encoding, operands);
4266 : }
4267 :
4268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27694 */
4269 : rtx
4270 35 : gen_xop_shlv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
4271 : {
4272 35 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4273 35 : static const uint8_t expand_encoding[] = {
4274 : 0x1f, 0x01, 0x00, 0x39, 0x51, 0x5e, 0x51, 0x01,
4275 : 0x02, 0x27, 0x00, 0x4d, 0x51, 0x01, 0x01, 0x01,
4276 : 0x02, 0x50, 0x51, 0x01, 0x01, 0x3d, 0x51, 0x01,
4277 : 0x02
4278 : };
4279 35 : return expand_rtx (expand_encoding, operands);
4280 : }
4281 :
4282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27890 */
4283 : rtx
4284 48 : gen_xop_maskcmpv2di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4285 : {
4286 48 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4287 48 : static const uint8_t expand_encoding[] = {
4288 : 0x1f, 0x01, 0x00, 0x03, 0x52, 0x01, 0x01, 0x02,
4289 : 0x01, 0x03
4290 : };
4291 48 : return expand_rtx (expand_encoding, operands);
4292 : }
4293 :
4294 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27927 */
4295 : rtx
4296 32 : gen_xop_pcom_tfv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4297 : {
4298 32 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4299 32 : static const uint8_t expand_encoding[] = {
4300 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x03, 0x01, 0x01,
4301 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x08
4302 : };
4303 32 : return expand_rtx (expand_encoding, operands);
4304 : }
4305 :
4306 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28015 */
4307 : rtx
4308 35 : gen_aesdeclast (const rtx operand0, const rtx operand1, const rtx operand2)
4309 : {
4310 35 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4311 35 : static const uint8_t expand_encoding[] = {
4312 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x01,
4313 : 0x01, 0x02, 0x81, 0x0d
4314 : };
4315 35 : return expand_rtx (expand_encoding, operands);
4316 : }
4317 :
4318 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4319 : rtx
4320 108 : gen_avx2_pbroadcastv16hi (const rtx operand0, const rtx operand1)
4321 : {
4322 108 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4323 108 : static const uint8_t expand_encoding[] = {
4324 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x55, 0x81, 0x0a,
4325 : 0x10, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4326 : };
4327 108 : return expand_rtx (expand_encoding, operands);
4328 : }
4329 :
4330 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4331 : rtx
4332 0 : gen_avx2_pbroadcastv16bf (const rtx operand0, const rtx operand1)
4333 : {
4334 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4335 0 : static const uint8_t expand_encoding[] = {
4336 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6d, 0x81, 0x0a,
4337 : 0x2c, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4338 : };
4339 0 : return expand_rtx (expand_encoding, operands);
4340 : }
4341 :
4342 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28181 */
4343 : rtx
4344 16 : gen_avx2_permvarv8sf (const rtx operand0, const rtx operand1, const rtx operand2)
4345 : {
4346 16 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4347 16 : static const uint8_t expand_encoding[] = {
4348 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01, 0x01,
4349 : 0x01, 0x02, 0x81, 0x18
4350 : };
4351 16 : return expand_rtx (expand_encoding, operands);
4352 : }
4353 :
4354 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28181 */
4355 : rtx
4356 39 : gen_avx512f_permvarv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4357 : {
4358 39 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4359 39 : static const uint8_t expand_encoding[] = {
4360 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
4361 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4362 : 0x03, 0x01, 0x04
4363 : };
4364 39 : return expand_rtx (expand_encoding, operands);
4365 : }
4366 :
4367 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4368 : rtx
4369 6 : gen_avx512vl_permvarv8hi (const rtx operand0, const rtx operand1, const rtx operand2)
4370 : {
4371 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4372 6 : static const uint8_t expand_encoding[] = {
4373 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x02, 0x01, 0x01,
4374 : 0x01, 0x02, 0x81, 0x18
4375 : };
4376 6 : return expand_rtx (expand_encoding, operands);
4377 : }
4378 :
4379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4380 : rtx
4381 0 : gen_avx512vl_permvarv16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4382 : {
4383 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4384 0 : static const uint8_t expand_encoding[] = {
4385 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
4386 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4387 : 0x03, 0x01, 0x04
4388 : };
4389 0 : return expand_rtx (expand_encoding, operands);
4390 : }
4391 :
4392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28419 */
4393 : rtx
4394 12 : gen_avx2_permv4df_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4395 : {
4396 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4397 12 : static const uint8_t expand_encoding[] = {
4398 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x70, 0x01, 0x01,
4399 : 0x17, 0x00, 0x04, 0x01, 0x02, 0x01, 0x03, 0x01,
4400 : 0x04, 0x01, 0x05
4401 : };
4402 12 : return expand_rtx (expand_encoding, operands);
4403 : }
4404 :
4405 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28571 */
4406 : rtx
4407 0 : gen_avx512f_vec_dupv8di_1 (const rtx operand0, const rtx operand1)
4408 : {
4409 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4410 0 : static const uint8_t expand_encoding[] = {
4411 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x5c, 0x81, 0x0a,
4412 : 0x12, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4413 : };
4414 0 : return expand_rtx (expand_encoding, operands);
4415 : }
4416 :
4417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4418 : rtx
4419 24 : gen_avx512vl_vec_dupv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4420 : {
4421 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4422 24 : static const uint8_t expand_encoding[] = {
4423 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x0c,
4424 : 0x56, 0x81, 0x0a, 0x11, 0x01, 0x01, 0x17, 0x00,
4425 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4426 : };
4427 24 : return expand_rtx (expand_encoding, operands);
4428 : }
4429 :
4430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4431 : rtx
4432 24 : gen_avx512vl_vec_dupv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4433 : {
4434 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4435 24 : static const uint8_t expand_encoding[] = {
4436 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x0c,
4437 : 0x6f, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
4438 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4439 : };
4440 24 : return expand_rtx (expand_encoding, operands);
4441 : }
4442 :
4443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4444 : rtx
4445 0 : gen_avx512vl_vec_dupv16qi (const rtx operand0, const rtx operand1)
4446 : {
4447 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4448 0 : static const uint8_t expand_encoding[] = {
4449 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x4f, 0x81, 0x0a,
4450 : 0x0f, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4451 : };
4452 0 : return expand_rtx (expand_encoding, operands);
4453 : }
4454 :
4455 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4456 : rtx
4457 24 : gen_avx512vl_vec_dupv8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4458 : {
4459 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4460 24 : static const uint8_t expand_encoding[] = {
4461 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0c,
4462 : 0x50, 0x81, 0x0a, 0x10, 0x01, 0x01, 0x17, 0x00,
4463 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4464 : };
4465 24 : return expand_rtx (expand_encoding, operands);
4466 : }
4467 :
4468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4469 : rtx
4470 0 : gen_avx512vl_vec_dupv8bf (const rtx operand0, const rtx operand1)
4471 : {
4472 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4473 0 : static const uint8_t expand_encoding[] = {
4474 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x69, 0x81, 0x0a,
4475 : 0x2c, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4476 : };
4477 0 : return expand_rtx (expand_encoding, operands);
4478 : }
4479 :
4480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28642 */
4481 : rtx
4482 24 : gen_avx512bw_vec_dup_gprv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4483 : {
4484 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4485 24 : static const uint8_t expand_encoding[] = {
4486 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x81, 0x0c,
4487 : 0x5a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4488 : };
4489 24 : return expand_rtx (expand_encoding, operands);
4490 : }
4491 :
4492 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28654 */
4493 : rtx
4494 24 : gen_avx512vl_vec_dup_gprv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4495 : {
4496 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4497 24 : static const uint8_t expand_encoding[] = {
4498 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x0c,
4499 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4500 : };
4501 24 : return expand_rtx (expand_encoding, operands);
4502 : }
4503 :
4504 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28654 */
4505 : rtx
4506 0 : gen_avx512vl_vec_dup_gprv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4507 : {
4508 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4509 0 : static const uint8_t expand_encoding[] = {
4510 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0c,
4511 : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4512 : };
4513 0 : return expand_rtx (expand_encoding, operands);
4514 : }
4515 :
4516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28875 */
4517 : rtx
4518 0 : gen_avx_vbroadcastf128_v32qi (const rtx operand0, const rtx operand1)
4519 : {
4520 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4521 0 : static const uint8_t expand_encoding[] = {
4522 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x54, 0x01, 0x01,
4523 : 0x01, 0x01
4524 : };
4525 0 : return expand_rtx (expand_encoding, operands);
4526 : }
4527 :
4528 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28928 */
4529 : rtx
4530 36 : gen_avx512dq_broadcastv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4531 : {
4532 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4533 36 : static const uint8_t expand_encoding[] = {
4534 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x81, 0x0c,
4535 : 0x51, 0x81, 0x0a, 0x4a, 0x01, 0x01, 0x17, 0x00,
4536 : 0x02, 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01,
4537 : 0x03
4538 : };
4539 36 : return expand_rtx (expand_encoding, operands);
4540 : }
4541 :
4542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28973 */
4543 : rtx
4544 36 : gen_avx512dq_broadcastv4df_mask_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4545 : {
4546 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4547 36 : static const uint8_t expand_encoding[] = {
4548 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0c,
4549 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4550 : };
4551 36 : return expand_rtx (expand_encoding, operands);
4552 : }
4553 :
4554 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29013 */
4555 : rtx
4556 24 : gen_avx_vpermilvarv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4557 : {
4558 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4559 24 : static const uint8_t expand_encoding[] = {
4560 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
4561 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x11, 0x01,
4562 : 0x03, 0x01, 0x04
4563 : };
4564 24 : return expand_rtx (expand_encoding, operands);
4565 : }
4566 :
4567 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4568 : rtx
4569 12 : gen_avx512f_vpermt2varv16sf3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4570 : {
4571 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4572 12 : static const uint8_t expand_encoding[] = {
4573 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
4574 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4575 : 0x1c, 0x01, 0x04, 0x01, 0x05
4576 : };
4577 12 : return expand_rtx (expand_encoding, operands);
4578 : }
4579 :
4580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4581 : rtx
4582 12 : gen_avx512vl_vpermt2varv4df3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4583 : {
4584 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4585 12 : static const uint8_t expand_encoding[] = {
4586 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
4587 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4588 : 0x1c, 0x01, 0x04, 0x01, 0x05
4589 : };
4590 12 : return expand_rtx (expand_encoding, operands);
4591 : }
4592 :
4593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4594 : rtx
4595 12 : gen_avx512vl_vpermt2varv16hi3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4596 : {
4597 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4598 12 : static const uint8_t expand_encoding[] = {
4599 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
4600 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4601 : 0x1c, 0x01, 0x04, 0x01, 0x05
4602 : };
4603 12 : return expand_rtx (expand_encoding, operands);
4604 : }
4605 :
4606 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29131 */
4607 : rtx
4608 0 : gen_avx512vl_vpermt2varv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4609 : {
4610 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4611 0 : static const uint8_t expand_encoding[] = {
4612 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
4613 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4614 : };
4615 0 : return expand_rtx (expand_encoding, operands);
4616 : }
4617 :
4618 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29131 */
4619 : rtx
4620 0 : gen_avx512vl_vpermt2varv8bf3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4621 : {
4622 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4623 0 : static const uint8_t expand_encoding[] = {
4624 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x1a, 0x69,
4625 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4626 : 0x1c, 0x01, 0x04, 0x01, 0x05
4627 : };
4628 0 : return expand_rtx (expand_encoding, operands);
4629 : }
4630 :
4631 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4632 : rtx
4633 24 : gen_avx512vl_vpermt2varv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4634 : {
4635 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4636 24 : static const uint8_t expand_encoding[] = {
4637 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
4638 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4639 : 0x1c, 0x01, 0x02, 0x01, 0x04
4640 : };
4641 24 : return expand_rtx (expand_encoding, operands);
4642 : }
4643 :
4644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29327 */
4645 : rtx
4646 0 : gen_vec_set_lo_v4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4647 : {
4648 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4649 0 : static const uint8_t expand_encoding[] = {
4650 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x0b,
4651 : 0x57, 0x01, 0x02, 0x81, 0x0a, 0x52, 0x01, 0x01,
4652 : 0x17, 0x00, 0x02, 0x27, 0x02, 0x27, 0x03, 0x01,
4653 : 0x03, 0x01, 0x04
4654 : };
4655 0 : return expand_rtx (expand_encoding, operands);
4656 : }
4657 :
4658 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29401 */
4659 : rtx
4660 91 : gen_vec_set_hi_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
4661 : {
4662 91 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4663 91 : static const uint8_t expand_encoding[] = {
4664 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x81, 0x0a,
4665 : 0x51, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00,
4666 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x02
4667 : };
4668 91 : return expand_rtx (expand_encoding, operands);
4669 : }
4670 :
4671 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29448 */
4672 : rtx
4673 2 : gen_vec_set_hi_v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
4674 : {
4675 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4676 2 : static const uint8_t expand_encoding[] = {
4677 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6d, 0x81, 0x0a,
4678 : 0x69, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00,
4679 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
4680 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x02
4681 : };
4682 2 : return expand_rtx (expand_encoding, operands);
4683 : }
4684 :
4685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29525 */
4686 : rtx
4687 12 : gen_avx2_maskloadd (const rtx operand0, const rtx operand1, const rtx operand2)
4688 : {
4689 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4690 12 : static const uint8_t expand_encoding[] = {
4691 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x01, 0x02,
4692 : 0x01, 0x01, 0x30
4693 : };
4694 12 : return expand_rtx (expand_encoding, operands);
4695 : }
4696 :
4697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29638 */
4698 : rtx
4699 25 : gen_avx512vl_storev8si_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4700 : {
4701 25 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4702 25 : static const uint8_t expand_encoding[] = {
4703 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
4704 : 0x01, 0x00, 0x01, 0x02, 0x30
4705 : };
4706 25 : return expand_rtx (expand_encoding, operands);
4707 : }
4708 :
4709 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29638 */
4710 : rtx
4711 24 : gen_avx512vl_storev2df_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4712 : {
4713 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4714 24 : static const uint8_t expand_encoding[] = {
4715 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
4716 : 0x01, 0x00, 0x01, 0x02, 0x30
4717 : };
4718 24 : return expand_rtx (expand_encoding, operands);
4719 : }
4720 :
4721 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29667 */
4722 : rtx
4723 0 : gen_avx512bw_storev32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4724 : {
4725 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4726 0 : static const uint8_t expand_encoding[] = {
4727 : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x03, 0x01, 0x01,
4728 : 0x01, 0x00, 0x01, 0x02, 0x30
4729 : };
4730 0 : return expand_rtx (expand_encoding, operands);
4731 : }
4732 :
4733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29807 */
4734 : rtx
4735 0 : gen_avx512f_ashrvv16si (const rtx operand0, const rtx operand1, const rtx operand2)
4736 : {
4737 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4738 0 : static const uint8_t expand_encoding[] = {
4739 : 0x1f, 0x01, 0x00, 0x4f, 0x5b, 0x01, 0x01, 0x01,
4740 : 0x02
4741 : };
4742 0 : return expand_rtx (expand_encoding, operands);
4743 : }
4744 :
4745 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29818 */
4746 : rtx
4747 33 : gen_avx512vl_ashrvv8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4748 : {
4749 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4750 33 : static const uint8_t expand_encoding[] = {
4751 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x4f, 0x50,
4752 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4753 : };
4754 33 : return expand_rtx (expand_encoding, operands);
4755 : }
4756 :
4757 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4758 : rtx
4759 12 : gen_avx2_lshrvv8si (const rtx operand0, const rtx operand1, const rtx operand2)
4760 : {
4761 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4762 12 : static const uint8_t expand_encoding[] = {
4763 : 0x1f, 0x01, 0x00, 0x50, 0x56, 0x01, 0x01, 0x01,
4764 : 0x02
4765 : };
4766 12 : return expand_rtx (expand_encoding, operands);
4767 : }
4768 :
4769 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4770 : rtx
4771 36 : gen_avx512f_lshrvv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4772 : {
4773 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4774 36 : static const uint8_t expand_encoding[] = {
4775 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x50, 0x5c,
4776 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4777 : };
4778 36 : return expand_rtx (expand_encoding, operands);
4779 : }
4780 :
4781 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29840 */
4782 : rtx
4783 0 : gen_avx512vl_lshrvv8hi (const rtx operand0, const rtx operand1, const rtx operand2)
4784 : {
4785 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4786 0 : static const uint8_t expand_encoding[] = {
4787 : 0x1f, 0x01, 0x00, 0x50, 0x50, 0x01, 0x01, 0x01,
4788 : 0x02
4789 : };
4790 0 : return expand_rtx (expand_encoding, operands);
4791 : }
4792 :
4793 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29840 */
4794 : rtx
4795 34 : gen_avx512bw_lshrvv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4796 : {
4797 34 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4798 34 : static const uint8_t expand_encoding[] = {
4799 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x50, 0x5a,
4800 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4801 : };
4802 34 : return expand_rtx (expand_encoding, operands);
4803 : }
4804 :
4805 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29851 */
4806 : rtx
4807 2 : gen_avx_vec_concatv32hf (const rtx operand0, const rtx operand1, const rtx operand2)
4808 : {
4809 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4810 2 : static const uint8_t expand_encoding[] = {
4811 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x73, 0x01, 0x01,
4812 : 0x01, 0x02
4813 : };
4814 2 : return expand_rtx (expand_encoding, operands);
4815 : }
4816 :
4817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30015 */
4818 : rtx
4819 0 : gen_avx512f_vcvtph2ps512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4820 : {
4821 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4822 0 : static const uint8_t expand_encoding[] = {
4823 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
4824 : 0x01, 0x01, 0x01, 0x81, 0x16, 0x01, 0x02, 0x01,
4825 : 0x03
4826 : };
4827 0 : return expand_rtx (expand_encoding, operands);
4828 : }
4829 :
4830 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30558 */
4831 : rtx
4832 24 : gen_avx512vl_compressv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4833 : {
4834 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4835 24 : static const uint8_t expand_encoding[] = {
4836 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
4837 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4838 : };
4839 24 : return expand_rtx (expand_encoding, operands);
4840 : }
4841 :
4842 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30572 */
4843 : rtx
4844 24 : gen_compressv32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4845 : {
4846 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4847 24 : static const uint8_t expand_encoding[] = {
4848 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01, 0x01,
4849 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4850 : };
4851 24 : return expand_rtx (expand_encoding, operands);
4852 : }
4853 :
4854 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30586 */
4855 : rtx
4856 12 : gen_avx512vl_compressstorev4di_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4857 : {
4858 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4859 12 : static const uint8_t expand_encoding[] = {
4860 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
4861 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4862 : };
4863 12 : return expand_rtx (expand_encoding, operands);
4864 : }
4865 :
4866 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30601 */
4867 : rtx
4868 12 : gen_compressstorev16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4869 : {
4870 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4871 12 : static const uint8_t expand_encoding[] = {
4872 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x03, 0x01, 0x01,
4873 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4874 : };
4875 12 : return expand_rtx (expand_encoding, operands);
4876 : }
4877 :
4878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30626 */
4879 : rtx
4880 44 : gen_expandv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4881 : {
4882 44 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4883 44 : static const uint8_t expand_encoding[] = {
4884 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
4885 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4886 : };
4887 44 : return expand_rtx (expand_encoding, operands);
4888 : }
4889 :
4890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30722 */
4891 : rtx
4892 0 : gen_avx512dq_rangepv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4893 : {
4894 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4895 0 : static const uint8_t expand_encoding[] = {
4896 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
4897 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x43
4898 : };
4899 0 : return expand_rtx (expand_encoding, operands);
4900 : }
4901 :
4902 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30722 */
4903 : rtx
4904 0 : gen_avx512dq_rangepv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4905 : {
4906 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4907 0 : static const uint8_t expand_encoding[] = {
4908 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
4909 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4910 : 0x43, 0x01, 0x04, 0x01, 0x05
4911 : };
4912 0 : return expand_rtx (expand_encoding, operands);
4913 : }
4914 :
4915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30742 */
4916 : rtx
4917 0 : gen_avx512dq_rangesv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4918 : {
4919 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4920 0 : static const uint8_t expand_encoding[] = {
4921 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
4922 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4923 : 0x43, 0x01, 0x01, 0x27, 0x01
4924 : };
4925 0 : return expand_rtx (expand_encoding, operands);
4926 : }
4927 :
4928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4929 : rtx
4930 16 : gen_avx512dq_fpclassv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4931 : {
4932 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4933 16 : static const uint8_t expand_encoding[] = {
4934 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
4935 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x42, 0x01, 0x03
4936 : };
4937 16 : return expand_rtx (expand_encoding, operands);
4938 : }
4939 :
4940 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4941 : rtx
4942 16 : gen_avx512dq_fpclassv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4943 : {
4944 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4945 16 : static const uint8_t expand_encoding[] = {
4946 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
4947 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x42, 0x01, 0x03
4948 : };
4949 16 : return expand_rtx (expand_encoding, operands);
4950 : }
4951 :
4952 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4953 : rtx
4954 0 : gen_avx512bw_getmantv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4955 : {
4956 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4957 0 : static const uint8_t expand_encoding[] = {
4958 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
4959 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
4960 : 0x03, 0x01, 0x04
4961 : };
4962 0 : return expand_rtx (expand_encoding, operands);
4963 : }
4964 :
4965 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4966 : rtx
4967 0 : gen_avx512f_getmantv16sf (const rtx operand0, const rtx operand1, const rtx operand2)
4968 : {
4969 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4970 0 : static const uint8_t expand_encoding[] = {
4971 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x01, 0x01,
4972 : 0x01, 0x02, 0x81, 0x27
4973 : };
4974 0 : return expand_rtx (expand_encoding, operands);
4975 : }
4976 :
4977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4978 : rtx
4979 0 : gen_avx512vl_getmantv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4980 : {
4981 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4982 0 : static const uint8_t expand_encoding[] = {
4983 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x1a, 0x6b,
4984 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
4985 : 0x03, 0x81, 0x33
4986 : };
4987 0 : return expand_rtx (expand_encoding, operands);
4988 : }
4989 :
4990 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4991 : rtx
4992 27 : gen_avx512vl_getmantv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4993 : {
4994 27 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4995 27 : static const uint8_t expand_encoding[] = {
4996 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
4997 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
4998 : 0x03, 0x01, 0x04
4999 : };
5000 27 : return expand_rtx (expand_encoding, operands);
5001 : }
5002 :
5003 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30810 */
5004 : rtx
5005 0 : gen_avx512f_vgetmantv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5006 : {
5007 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5008 0 : static const uint8_t expand_encoding[] = {
5009 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
5010 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5011 : 0x27, 0x01, 0x01, 0x27, 0x01
5012 : };
5013 0 : return expand_rtx (expand_encoding, operands);
5014 : }
5015 :
5016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30834 */
5017 : rtx
5018 24 : gen_avx512bw_dbpsadbwv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5019 : {
5020 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5021 24 : static const uint8_t expand_encoding[] = {
5022 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5023 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5024 : 0x3b, 0x01, 0x04, 0x01, 0x05
5025 : };
5026 24 : return expand_rtx (expand_encoding, operands);
5027 : }
5028 :
5029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30849 */
5030 : rtx
5031 15 : gen_clzv4di2 (const rtx operand0, const rtx operand1)
5032 : {
5033 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5034 15 : static const uint8_t expand_encoding[] = {
5035 : 0x1f, 0x01, 0x00, 0x81, 0x00, 0x57, 0x01, 0x01
5036 : };
5037 15 : return expand_rtx (expand_encoding, operands);
5038 : }
5039 :
5040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30860 */
5041 : rtx
5042 33 : gen_conflictv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5043 : {
5044 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5045 33 : static const uint8_t expand_encoding[] = {
5046 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5047 : 0x01, 0x01, 0x01, 0x81, 0x29, 0x01, 0x02, 0x01,
5048 : 0x03
5049 : };
5050 33 : return expand_rtx (expand_encoding, operands);
5051 : }
5052 :
5053 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31002 */
5054 : rtx
5055 13 : gen_vsha512msg2 (const rtx operand0, const rtx operand1, const rtx operand2)
5056 : {
5057 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5058 13 : static const uint8_t expand_encoding[] = {
5059 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x02, 0x01, 0x01,
5060 : 0x01, 0x02, 0x81, 0x71
5061 : };
5062 13 : return expand_rtx (expand_encoding, operands);
5063 : }
5064 :
5065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31051 */
5066 : rtx
5067 11 : gen_avx512f_si512_si (const rtx operand0, const rtx operand1)
5068 : {
5069 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5070 11 : static const uint8_t expand_encoding[] = {
5071 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x5b, 0x81, 0x0b,
5072 : 0x56, 0x01, 0x01, 0x1a, 0x51, 0x01, 0x27, 0x00,
5073 : 0x81, 0x14, 0x1a, 0x56, 0x01, 0x27, 0x00, 0x81,
5074 : 0x14
5075 : };
5076 11 : return expand_rtx (expand_encoding, operands);
5077 : }
5078 :
5079 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31136 */
5080 : rtx
5081 18 : gen_vpmadd52luqv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5082 : {
5083 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5084 18 : static const uint8_t expand_encoding[] = {
5085 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
5086 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x44
5087 : };
5088 18 : return expand_rtx (expand_encoding, operands);
5089 : }
5090 :
5091 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31171 */
5092 : rtx
5093 13 : gen_vpmadd52luqv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5094 : {
5095 13 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5096 13 : static const uint8_t expand_encoding[] = {
5097 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5098 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5099 : 0x44, 0x01, 0x01, 0x01, 0x04
5100 : };
5101 13 : return expand_rtx (expand_encoding, operands);
5102 : }
5103 :
5104 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31206 */
5105 : rtx
5106 23 : gen_vpopcountv16si (const rtx operand0, const rtx operand1)
5107 : {
5108 23 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5109 23 : static const uint8_t expand_encoding[] = {
5110 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x5b, 0x01, 0x01
5111 : };
5112 23 : return expand_rtx (expand_encoding, operands);
5113 : }
5114 :
5115 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31206 */
5116 : rtx
5117 12 : gen_vpopcountv4di (const rtx operand0, const rtx operand1)
5118 : {
5119 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5120 12 : static const uint8_t expand_encoding[] = {
5121 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x57, 0x01, 0x01
5122 : };
5123 12 : return expand_rtx (expand_encoding, operands);
5124 : }
5125 :
5126 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31256 */
5127 : rtx
5128 26 : gen_vpopcountv32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5129 : {
5130 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5131 26 : static const uint8_t expand_encoding[] = {
5132 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81, 0x02,
5133 : 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5134 : };
5135 26 : return expand_rtx (expand_encoding, operands);
5136 : }
5137 :
5138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31263 */
5139 : rtx
5140 16 : gen_vgf2p8affineinvqb_v16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5141 : {
5142 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5143 16 : static const uint8_t expand_encoding[] = {
5144 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01, 0x01,
5145 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x47
5146 : };
5147 16 : return expand_rtx (expand_encoding, operands);
5148 : }
5149 :
5150 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31297 */
5151 : rtx
5152 24 : gen_vgf2p8mulb_v64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5153 : {
5154 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5155 24 : static const uint8_t expand_encoding[] = {
5156 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
5157 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x49, 0x01,
5158 : 0x03, 0x01, 0x04
5159 : };
5160 24 : return expand_rtx (expand_encoding, operands);
5161 : }
5162 :
5163 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31313 */
5164 : rtx
5165 11 : gen_vpshrd_v16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5166 : {
5167 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5168 11 : static const uint8_t expand_encoding[] = {
5169 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x03, 0x01, 0x01,
5170 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4b
5171 : };
5172 11 : return expand_rtx (expand_encoding, operands);
5173 : }
5174 :
5175 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31313 */
5176 : rtx
5177 22 : gen_vpshrd_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5178 : {
5179 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5180 22 : static const uint8_t expand_encoding[] = {
5181 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5182 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5183 : 0x4b, 0x01, 0x04, 0x01, 0x05
5184 : };
5185 22 : return expand_rtx (expand_encoding, operands);
5186 : }
5187 :
5188 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5189 : rtx
5190 11 : gen_vpshld_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5191 : {
5192 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5193 11 : static const uint8_t expand_encoding[] = {
5194 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5195 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4a
5196 : };
5197 11 : return expand_rtx (expand_encoding, operands);
5198 : }
5199 :
5200 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5201 : rtx
5202 22 : gen_vpshld_v2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5203 : {
5204 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5205 22 : static const uint8_t expand_encoding[] = {
5206 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5207 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5208 : 0x4a, 0x01, 0x04, 0x01, 0x05
5209 : };
5210 22 : return expand_rtx (expand_encoding, operands);
5211 : }
5212 :
5213 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31347 */
5214 : rtx
5215 12 : gen_vpshrdv_v8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5216 : {
5217 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5218 12 : static const uint8_t expand_encoding[] = {
5219 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
5220 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5221 : 0x4c, 0x01, 0x01, 0x01, 0x04
5222 : };
5223 12 : return expand_rtx (expand_encoding, operands);
5224 : }
5225 :
5226 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31377 */
5227 : rtx
5228 12 : gen_vpshrdv_v16hi_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5229 : {
5230 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5231 12 : static const uint8_t expand_encoding[] = {
5232 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5233 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5234 : 0x4c, 0x01, 0x04, 0x01, 0x05
5235 : };
5236 12 : return expand_rtx (expand_encoding, operands);
5237 : }
5238 :
5239 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31392 */
5240 : rtx
5241 12 : gen_vpshldv_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5242 : {
5243 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5244 12 : static const uint8_t expand_encoding[] = {
5245 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5246 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4d
5247 : };
5248 12 : return expand_rtx (expand_encoding, operands);
5249 : }
5250 :
5251 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31404 */
5252 : rtx
5253 12 : gen_vpshldv_v4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5254 : {
5255 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5256 12 : static const uint8_t expand_encoding[] = {
5257 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5258 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5259 : 0x4d, 0x01, 0x01, 0x01, 0x04
5260 : };
5261 12 : return expand_rtx (expand_encoding, operands);
5262 : }
5263 :
5264 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31434 */
5265 : rtx
5266 12 : gen_vpshldv_v8hi_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5267 : {
5268 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5269 12 : static const uint8_t expand_encoding[] = {
5270 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5271 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5272 : 0x4d, 0x01, 0x04, 0x01, 0x05
5273 : };
5274 12 : return expand_rtx (expand_encoding, operands);
5275 : }
5276 :
5277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31552 */
5278 : rtx
5279 13 : gen_vpdpbusd_v8si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5280 : {
5281 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5282 13 : static const uint8_t expand_encoding[] = {
5283 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5284 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5285 : 0x4e, 0x01, 0x04, 0x01, 0x05
5286 : };
5287 13 : return expand_rtx (expand_encoding, operands);
5288 : }
5289 :
5290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31646 */
5291 : rtx
5292 31 : gen_vpdpwssd_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5293 : {
5294 31 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5295 31 : static const uint8_t expand_encoding[] = {
5296 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5297 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x50
5298 : };
5299 31 : return expand_rtx (expand_encoding, operands);
5300 : }
5301 :
5302 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31704 */
5303 : rtx
5304 12 : gen_vpdpwssds_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5305 : {
5306 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5307 12 : static const uint8_t expand_encoding[] = {
5308 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5309 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x51
5310 : };
5311 12 : return expand_rtx (expand_encoding, operands);
5312 : }
5313 :
5314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31759 */
5315 : rtx
5316 13 : gen_vpdpwssds_v8si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5317 : {
5318 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5319 13 : static const uint8_t expand_encoding[] = {
5320 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5321 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5322 : 0x51, 0x01, 0x04, 0x01, 0x05
5323 : };
5324 13 : return expand_rtx (expand_encoding, operands);
5325 : }
5326 :
5327 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31849 */
5328 : rtx
5329 11 : gen_vpclmulqdq_v4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5330 : {
5331 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5332 11 : static const uint8_t expand_encoding[] = {
5333 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
5334 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x56
5335 : };
5336 11 : return expand_rtx (expand_encoding, operands);
5337 : }
5338 :
5339 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31898 */
5340 : rtx
5341 12 : gen_avx512vp2intersect_2intersectv2di (const rtx operand0, const rtx operand1, const rtx operand2)
5342 : {
5343 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5344 12 : static const uint8_t expand_encoding[] = {
5345 : 0x1f, 0x01, 0x00, 0x1a, 0x16, 0x02, 0x01, 0x01,
5346 : 0x01, 0x02, 0x81, 0x58
5347 : };
5348 12 : return expand_rtx (expand_encoding, operands);
5349 : }
5350 :
5351 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32022 */
5352 : rtx
5353 35 : gen_avx512f_cvtneps2bf16_v4sf_mask_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5354 : {
5355 35 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5356 35 : static const uint8_t expand_encoding[] = {
5357 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x69, 0x81, 0x09,
5358 : 0x65, 0x72, 0x65, 0x01, 0x01, 0x81, 0x0a, 0x65,
5359 : 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
5360 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03, 0x01,
5361 : 0x04
5362 : };
5363 35 : return expand_rtx (expand_encoding, operands);
5364 : }
5365 :
5366 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32136 */
5367 : rtx
5368 12 : gen_avx512f_dpbf16ps_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5369 : {
5370 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5371 12 : static const uint8_t expand_encoding[] = {
5372 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
5373 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5374 : 0x59, 0x01, 0x01, 0x01, 0x04
5375 : };
5376 12 : return expand_rtx (expand_encoding, operands);
5377 : }
5378 :
5379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32499 */
5380 : rtx
5381 14 : gen_vpdpbsuds_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5382 : {
5383 14 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5384 14 : static const uint8_t expand_encoding[] = {
5385 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5386 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x67
5387 : };
5388 14 : return expand_rtx (expand_encoding, operands);
5389 : }
5390 :
5391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32510 */
5392 : rtx
5393 12 : gen_vpdpbssds_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5394 : {
5395 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5396 12 : static const uint8_t expand_encoding[] = {
5397 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5398 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x65
5399 : };
5400 12 : return expand_rtx (expand_encoding, operands);
5401 : }
5402 :
5403 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5404 : rtx
5405 12 : gen_vpdpbuuds_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5406 : {
5407 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5408 12 : static const uint8_t expand_encoding[] = {
5409 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5410 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5411 : 0x69, 0x01, 0x01, 0x01, 0x04
5412 : };
5413 12 : return expand_rtx (expand_encoding, operands);
5414 : }
5415 :
5416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5417 : rtx
5418 12 : gen_vpdpbsuds_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5419 : {
5420 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5421 12 : static const uint8_t expand_encoding[] = {
5422 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5423 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5424 : 0x67, 0x01, 0x01, 0x01, 0x04
5425 : };
5426 12 : return expand_rtx (expand_encoding, operands);
5427 : }
5428 :
5429 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32616 */
5430 : rtx
5431 12 : gen_vcvtneoph2ps_v8hf (const rtx operand0, const rtx operand1)
5432 : {
5433 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5434 12 : static const uint8_t expand_encoding[] = {
5435 : 0x1f, 0x01, 0x00, 0x71, 0x6b, 0x81, 0x0a, 0x66,
5436 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x01, 0x27,
5437 : 0x03, 0x27, 0x05, 0x27, 0x07
5438 : };
5439 12 : return expand_rtx (expand_encoding, operands);
5440 : }
5441 :
5442 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32644 */
5443 : rtx
5444 0 : gen_avx10_2_cvt2ps2phx_v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5445 : {
5446 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5447 0 : static const uint8_t expand_encoding[] = {
5448 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6e, 0x72, 0x6a,
5449 : 0x01, 0x02, 0x72, 0x6a, 0x01, 0x01
5450 : };
5451 0 : return expand_rtx (expand_encoding, operands);
5452 : }
5453 :
5454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5455 : rtx
5456 37 : gen_vcvt2ph2hf8v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5457 : {
5458 37 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5459 37 : static const uint8_t expand_encoding[] = {
5460 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
5461 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x7c, 0x01,
5462 : 0x03, 0x01, 0x04
5463 : };
5464 37 : return expand_rtx (expand_encoding, operands);
5465 : }
5466 :
5467 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5468 : rtx
5469 0 : gen_vcvt2ph2bf8v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
5470 : {
5471 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5472 0 : static const uint8_t expand_encoding[] = {
5473 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5474 : 0x01, 0x02, 0x81, 0x7a
5475 : };
5476 0 : return expand_rtx (expand_encoding, operands);
5477 : }
5478 :
5479 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32759 */
5480 : rtx
5481 36 : gen_vcvtbiasph2bf8v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5482 : {
5483 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5484 36 : static const uint8_t expand_encoding[] = {
5485 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
5486 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x76, 0x01,
5487 : 0x03, 0x01, 0x04
5488 : };
5489 36 : return expand_rtx (expand_encoding, operands);
5490 : }
5491 :
5492 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32759 */
5493 : rtx
5494 0 : gen_vcvtbiasph2hf8v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5495 : {
5496 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5497 0 : static const uint8_t expand_encoding[] = {
5498 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5499 : 0x01, 0x02, 0x81, 0x78
5500 : };
5501 0 : return expand_rtx (expand_encoding, operands);
5502 : }
5503 :
5504 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32844 */
5505 : rtx
5506 36 : gen_vcvtph2hf8v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5507 : {
5508 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5509 36 : static const uint8_t expand_encoding[] = {
5510 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5511 : 0x01, 0x01, 0x01, 0x82, 0x00, 0x01, 0x02, 0x01,
5512 : 0x03
5513 : };
5514 36 : return expand_rtx (expand_encoding, operands);
5515 : }
5516 :
5517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32853 */
5518 : rtx
5519 38 : gen_vcvthf82phv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5520 : {
5521 38 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5522 38 : static const uint8_t expand_encoding[] = {
5523 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
5524 : 0x01, 0x01, 0x01, 0x82, 0x02, 0x01, 0x02, 0x01,
5525 : 0x03
5526 : };
5527 38 : return expand_rtx (expand_encoding, operands);
5528 : }
5529 :
5530 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32911 */
5531 : rtx
5532 15 : gen_vpdpwusds_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5533 : {
5534 15 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5535 15 : static const uint8_t expand_encoding[] = {
5536 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5537 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6b
5538 : };
5539 15 : return expand_rtx (expand_encoding, operands);
5540 : }
5541 :
5542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32922 */
5543 : rtx
5544 12 : gen_vpdpwuuds_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5545 : {
5546 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5547 12 : static const uint8_t expand_encoding[] = {
5548 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5549 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6f
5550 : };
5551 12 : 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_vpdpwsuds_v8si_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, 0x56, 0x1a, 0x56,
5561 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5562 : 0x6d, 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:32974 */
5568 : rtx
5569 0 : gen_vdpphps_v8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5570 : {
5571 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5572 0 : static const uint8_t expand_encoding[] = {
5573 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
5574 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x75
5575 : };
5576 0 : return expand_rtx (expand_encoding, operands);
5577 : }
5578 :
5579 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33026 */
5580 : rtx
5581 12 : gen_avx10_2_scalefbf16_v32bf (const rtx operand0, const rtx operand1, const rtx operand2)
5582 : {
5583 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5584 12 : static const uint8_t expand_encoding[] = {
5585 : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x02, 0x01, 0x01,
5586 : 0x01, 0x02, 0x82, 0x03
5587 : };
5588 12 : return expand_rtx (expand_encoding, operands);
5589 : }
5590 :
5591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33043 */
5592 : rtx
5593 24 : gen_avx10_2_smaxbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5594 : {
5595 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5596 24 : static const uint8_t expand_encoding[] = {
5597 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x53, 0x72,
5598 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5599 : };
5600 24 : return expand_rtx (expand_encoding, operands);
5601 : }
5602 :
5603 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5604 : rtx
5605 24 : gen_avx10_2_addbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5606 : {
5607 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5608 24 : static const uint8_t expand_encoding[] = {
5609 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x3b, 0x72,
5610 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5611 : };
5612 24 : return expand_rtx (expand_encoding, operands);
5613 : }
5614 :
5615 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5616 : rtx
5617 13 : gen_avx10_2_mulbf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
5618 : {
5619 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5620 13 : static const uint8_t expand_encoding[] = {
5621 : 0x1f, 0x01, 0x00, 0x3e, 0x6d, 0x01, 0x01, 0x01,
5622 : 0x02
5623 : };
5624 13 : return expand_rtx (expand_encoding, operands);
5625 : }
5626 :
5627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5628 : rtx
5629 24 : gen_avx10_2_mulbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5630 : {
5631 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5632 24 : static const uint8_t expand_encoding[] = {
5633 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x3e, 0x69,
5634 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5635 : };
5636 24 : return expand_rtx (expand_encoding, operands);
5637 : }
5638 :
5639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33092 */
5640 : rtx
5641 23 : gen_avx10_2_fmaddbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5642 : {
5643 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5644 23 : static const uint8_t expand_encoding[] = {
5645 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5646 : 0x69, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
5647 : 0x01, 0x01, 0x04
5648 : };
5649 23 : return expand_rtx (expand_encoding, operands);
5650 : }
5651 :
5652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33155 */
5653 : rtx
5654 23 : gen_avx10_2_fnmaddbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5655 : {
5656 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5657 23 : static const uint8_t expand_encoding[] = {
5658 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x19,
5659 : 0x72, 0x3d, 0x72, 0x01, 0x01, 0x01, 0x02, 0x01,
5660 : 0x03, 0x01, 0x01, 0x01, 0x04
5661 : };
5662 23 : return expand_rtx (expand_encoding, operands);
5663 : }
5664 :
5665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33204 */
5666 : rtx
5667 0 : gen_avx10_2_fmsubbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5668 : {
5669 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5670 0 : static const uint8_t expand_encoding[] = {
5671 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x69, 0x01, 0x01,
5672 : 0x01, 0x02, 0x3d, 0x69, 0x01, 0x03
5673 : };
5674 0 : return expand_rtx (expand_encoding, operands);
5675 : }
5676 :
5677 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33269 */
5678 : rtx
5679 11 : gen_avx10_2_fnmsubbf16_v32bf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5680 : {
5681 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5682 11 : static const uint8_t expand_encoding[] = {
5683 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x19,
5684 : 0x72, 0x3d, 0x72, 0x01, 0x01, 0x01, 0x02, 0x3d,
5685 : 0x72, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
5686 : };
5687 11 : return expand_rtx (expand_encoding, operands);
5688 : }
5689 :
5690 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33322 */
5691 : rtx
5692 0 : gen_avx10_2_rsqrtbf16_v32bf (const rtx operand0, const rtx operand1)
5693 : {
5694 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5695 0 : static const uint8_t expand_encoding[] = {
5696 : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x01, 0x01, 0x01,
5697 : 0x38
5698 : };
5699 0 : return expand_rtx (expand_encoding, operands);
5700 : }
5701 :
5702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33331 */
5703 : rtx
5704 36 : gen_avx10_2_sqrtbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5705 : {
5706 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5707 36 : static const uint8_t expand_encoding[] = {
5708 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x7c, 0x72,
5709 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5710 : };
5711 36 : return expand_rtx (expand_encoding, operands);
5712 : }
5713 :
5714 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33348 */
5715 : rtx
5716 0 : gen_avx10_2_getexpbf16_v32bf (const rtx operand0, const rtx operand1)
5717 : {
5718 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5719 0 : static const uint8_t expand_encoding[] = {
5720 : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x01, 0x01, 0x01,
5721 : 0x81, 0x26
5722 : };
5723 0 : return expand_rtx (expand_encoding, operands);
5724 : }
5725 :
5726 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5727 : rtx
5728 33 : gen_avx10_2_reducebf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5729 : {
5730 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5731 33 : static const uint8_t expand_encoding[] = {
5732 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x1a, 0x72,
5733 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x82, 0x05, 0x01,
5734 : 0x03, 0x01, 0x04
5735 : };
5736 33 : return expand_rtx (expand_encoding, operands);
5737 : }
5738 :
5739 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5740 : rtx
5741 0 : gen_avx10_2_reducebf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
5742 : {
5743 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5744 0 : static const uint8_t expand_encoding[] = {
5745 : 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x02, 0x01, 0x01,
5746 : 0x01, 0x02, 0x82, 0x05
5747 : };
5748 0 : return expand_rtx (expand_encoding, operands);
5749 : }
5750 :
5751 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33377 */
5752 : rtx
5753 22 : gen_avx10_2_fpclassbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5754 : {
5755 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5756 22 : static const uint8_t expand_encoding[] = {
5757 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
5758 : 0x01, 0x01, 0x01, 0x02, 0x82, 0x07, 0x01, 0x03
5759 : };
5760 22 : return expand_rtx (expand_encoding, operands);
5761 : }
5762 :
5763 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5764 : rtx
5765 36 : gen_avx10_2_cvtbf162iubsv32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5766 : {
5767 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5768 36 : static const uint8_t expand_encoding[] = {
5769 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5770 : 0x01, 0x01, 0x01, 0x82, 0x09, 0x01, 0x02, 0x01,
5771 : 0x03
5772 : };
5773 36 : return expand_rtx (expand_encoding, operands);
5774 : }
5775 :
5776 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5777 : rtx
5778 0 : gen_avx10_2_cvttbf162iubsv16bf (const rtx operand0, const rtx operand1)
5779 : {
5780 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5781 0 : static const uint8_t expand_encoding[] = {
5782 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
5783 : 0x82, 0x0f
5784 : };
5785 0 : return expand_rtx (expand_encoding, operands);
5786 : }
5787 :
5788 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5789 : rtx
5790 36 : gen_avx10_2_cvttbf162iubsv8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5791 : {
5792 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5793 36 : static const uint8_t expand_encoding[] = {
5794 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5795 : 0x01, 0x01, 0x01, 0x82, 0x0f, 0x01, 0x02, 0x01,
5796 : 0x03
5797 : };
5798 36 : return expand_rtx (expand_encoding, operands);
5799 : }
5800 :
5801 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33441 */
5802 : rtx
5803 0 : gen_avx10_2_cvtph2iubsv16hf (const rtx operand0, const rtx operand1)
5804 : {
5805 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5806 0 : static const uint8_t expand_encoding[] = {
5807 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
5808 : 0x82, 0x0b
5809 : };
5810 0 : return expand_rtx (expand_encoding, operands);
5811 : }
5812 :
5813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33456 */
5814 : rtx
5815 36 : gen_avx10_2_cvttph2ibsv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5816 : {
5817 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5818 36 : static const uint8_t expand_encoding[] = {
5819 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5820 : 0x01, 0x01, 0x01, 0x82, 0x10, 0x01, 0x02, 0x01,
5821 : 0x03
5822 : };
5823 36 : return expand_rtx (expand_encoding, operands);
5824 : }
5825 :
5826 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33456 */
5827 : rtx
5828 36 : gen_avx10_2_cvttph2ibsv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5829 : {
5830 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5831 36 : static const uint8_t expand_encoding[] = {
5832 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5833 : 0x01, 0x01, 0x01, 0x82, 0x10, 0x01, 0x02, 0x01,
5834 : 0x03
5835 : };
5836 36 : return expand_rtx (expand_encoding, operands);
5837 : }
5838 :
5839 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33471 */
5840 : rtx
5841 0 : gen_avx10_2_cvtps2ibsv8sf (const rtx operand0, const rtx operand1)
5842 : {
5843 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5844 0 : static const uint8_t expand_encoding[] = {
5845 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
5846 : 0x82, 0x0c
5847 : };
5848 0 : return expand_rtx (expand_encoding, operands);
5849 : }
5850 :
5851 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33486 */
5852 : rtx
5853 0 : gen_avx10_2_cvttps2ibsv16sf_round (const rtx operand0, const rtx operand1, const rtx operand2)
5854 : {
5855 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5856 0 : static const uint8_t expand_encoding[] = {
5857 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x1a, 0x5b,
5858 : 0x01, 0x01, 0x01, 0x82, 0x12, 0x01, 0x02, 0x81,
5859 : 0x33
5860 : };
5861 0 : return expand_rtx (expand_encoding, operands);
5862 : }
5863 :
5864 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33486 */
5865 : rtx
5866 36 : gen_avx10_2_cvttps2iubsv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5867 : {
5868 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5869 36 : static const uint8_t expand_encoding[] = {
5870 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5871 : 0x01, 0x01, 0x01, 0x82, 0x13, 0x01, 0x02, 0x01,
5872 : 0x03
5873 : };
5874 36 : return expand_rtx (expand_encoding, operands);
5875 : }
5876 :
5877 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5878 : rtx
5879 36 : gen_avx10_2_vcvttps2udqsv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5880 : {
5881 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5882 36 : static const uint8_t expand_encoding[] = {
5883 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5884 : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5885 : 0x03
5886 : };
5887 36 : return expand_rtx (expand_encoding, operands);
5888 : }
5889 :
5890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5891 : rtx
5892 0 : gen_avx10_2_vcvttpd2dqsv8df_round (const rtx operand0, const rtx operand1, const rtx operand2)
5893 : {
5894 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5895 0 : static const uint8_t expand_encoding[] = {
5896 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x1a, 0x56,
5897 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x81,
5898 : 0x33
5899 : };
5900 0 : return expand_rtx (expand_encoding, operands);
5901 : }
5902 :
5903 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5904 : rtx
5905 36 : gen_avx10_2_vcvttpd2udqsv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5906 : {
5907 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5908 36 : static const uint8_t expand_encoding[] = {
5909 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5910 : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5911 : 0x03
5912 : };
5913 36 : return expand_rtx (expand_encoding, operands);
5914 : }
5915 :
5916 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33521 */
5917 : rtx
5918 36 : gen_avx10_2_vcvttpd2uqqsv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5919 : {
5920 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5921 36 : static const uint8_t expand_encoding[] = {
5922 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
5923 : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5924 : 0x03
5925 : };
5926 36 : return expand_rtx (expand_encoding, operands);
5927 : }
5928 :
5929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33532 */
5930 : rtx
5931 0 : gen_avx10_2_vcvttps2qqsv8di (const rtx operand0, const rtx operand1)
5932 : {
5933 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5934 0 : static const uint8_t expand_encoding[] = {
5935 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
5936 : 0x82, 0x14
5937 : };
5938 0 : return expand_rtx (expand_encoding, operands);
5939 : }
5940 :
5941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33532 */
5942 : rtx
5943 36 : gen_avx10_2_vcvttps2qqsv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5944 : {
5945 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5946 36 : static const uint8_t expand_encoding[] = {
5947 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5948 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5949 : 0x03
5950 : };
5951 36 : return expand_rtx (expand_encoding, operands);
5952 : }
5953 :
5954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33543 */
5955 : rtx
5956 24 : gen_avx10_2_vcvttsd2usissi_round (const rtx operand0, const rtx operand1, const rtx operand2)
5957 : {
5958 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5959 24 : static const uint8_t expand_encoding[] = {
5960 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
5961 : 0x01, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
5962 : 0x01, 0x27, 0x00, 0x82, 0x15, 0x01, 0x02, 0x81,
5963 : 0x33
5964 : };
5965 24 : return expand_rtx (expand_encoding, operands);
5966 : }
5967 :
5968 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33556 */
5969 : rtx
5970 0 : gen_avx10_2_vcvttss2usisdi (const rtx operand0, const rtx operand1)
5971 : {
5972 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5973 0 : static const uint8_t expand_encoding[] = {
5974 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
5975 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
5976 : 0x82, 0x15
5977 : };
5978 0 : return expand_rtx (expand_encoding, operands);
5979 : }
5980 :
5981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
5982 : rtx
5983 0 : gen_avx10_2_minmaxpv32hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5984 : {
5985 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5986 0 : static const uint8_t expand_encoding[] = {
5987 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
5988 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
5989 : 0x17, 0x01, 0x04, 0x81, 0x33
5990 : };
5991 0 : return expand_rtx (expand_encoding, operands);
5992 : }
5993 :
5994 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
5995 : rtx
5996 0 : gen_avx10_2_minmaxpv8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
5997 : {
5998 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
5999 0 : static const uint8_t expand_encoding[] = {
6000 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
6001 : 0x6a, 0x1a, 0x6a, 0x03, 0x01, 0x01, 0x01, 0x02,
6002 : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6003 : 0x01, 0x06, 0x81, 0x33
6004 : };
6005 0 : return expand_rtx (expand_encoding, operands);
6006 : }
6007 :
6008 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6009 : rtx
6010 0 : gen_avx10_2_minmaxpv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
6011 : {
6012 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
6013 0 : static const uint8_t expand_encoding[] = {
6014 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
6015 : 0x6b, 0x1a, 0x6b, 0x03, 0x01, 0x01, 0x01, 0x02,
6016 : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6017 : 0x01, 0x06, 0x81, 0x33
6018 : };
6019 0 : return expand_rtx (expand_encoding, operands);
6020 : }
6021 :
6022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6023 : rtx
6024 48 : gen_avx10_2_minmaxpv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
6025 : {
6026 48 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
6027 48 : static const uint8_t expand_encoding[] = {
6028 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
6029 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6030 : 0x17, 0x01, 0x04, 0x01, 0x05
6031 : };
6032 48 : return expand_rtx (expand_encoding, operands);
6033 : }
6034 :
6035 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33593 */
6036 : rtx
6037 0 : gen_avx10_2_minmaxsv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6038 : {
6039 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6040 0 : static const uint8_t expand_encoding[] = {
6041 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
6042 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6043 : 0x17, 0x01, 0x01, 0x27, 0x01
6044 : };
6045 0 : return expand_rtx (expand_encoding, operands);
6046 : }
6047 :
6048 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6049 : rtx
6050 33 : gen_avx10_2_vmovrsbv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6051 : {
6052 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6053 33 : static const uint8_t expand_encoding[] = {
6054 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
6055 : 0x01, 0x01, 0x01, 0x82, 0x1b, 0x01, 0x02, 0x01,
6056 : 0x03
6057 : };
6058 33 : return expand_rtx (expand_encoding, operands);
6059 : }
6060 :
6061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6062 : rtx
6063 0 : gen_avx10_2_vmovrsdv4si (const rtx operand0, const rtx operand1)
6064 : {
6065 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6066 0 : static const uint8_t expand_encoding[] = {
6067 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
6068 : 0x82, 0x1b
6069 : };
6070 0 : return expand_rtx (expand_encoding, operands);
6071 : }
6072 :
6073 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33623 */
6074 : rtx
6075 11 : gen_avx512bmm_vbmacor16x16x16_v16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6076 : {
6077 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6078 11 : static const uint8_t expand_encoding[] = {
6079 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x03, 0x01, 0x01,
6080 : 0x01, 0x02, 0x01, 0x03, 0x82, 0x18
6081 : };
6082 11 : return expand_rtx (expand_encoding, operands);
6083 : }
6084 :
6085 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:105 */
6086 : rtx
6087 484 : gen_mfence_nosse (const rtx operand0)
6088 : {
6089 484 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
6090 484 : static const uint8_t expand_encoding[] = {
6091 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x01,
6092 : 0x01, 0x01, 0x00, 0x82, 0x1e, 0x05, 0x02, 0x11
6093 : };
6094 484 : return expand_rtx (expand_encoding, operands);
6095 : }
6096 :
6097 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:378 */
6098 : rtx
6099 20 : gen_storedi_via_sse (const rtx operand0, const rtx operand1)
6100 : {
6101 20 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6102 20 : static const uint8_t expand_encoding[] = {
6103 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
6104 : 0x82, 0x22
6105 : };
6106 20 : return expand_rtx (expand_encoding, operands);
6107 : }
6108 :
6109 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:693 */
6110 : rtx
6111 2360 : gen_atomic_fetch_adddi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6112 : {
6113 2360 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6114 2360 : static const uint8_t expand_encoding[] = {
6115 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x12,
6116 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x6e, 0x1f, 0x01,
6117 : 0x01, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02, 0x05,
6118 : 0x02, 0x11
6119 : };
6120 2360 : return expand_rtx (expand_encoding, operands);
6121 : }
6122 :
6123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:814 */
6124 : rtx
6125 19 : gen_rao_aordi (const rtx operand0, const rtx operand1)
6126 : {
6127 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6128 19 : static const uint8_t expand_encoding[] = {
6129 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x02, 0x4a, 0x12,
6130 : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00, 0x71
6131 : };
6132 19 : return expand_rtx (expand_encoding, operands);
6133 : }
6134 :
6135 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:851 */
6136 : rtx
6137 168 : gen_atomic_subqi (const rtx operand0, const rtx operand1, const rtx operand2)
6138 : {
6139 168 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6140 168 : static const uint8_t expand_encoding[] = {
6141 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x0f,
6142 : 0x02, 0x3c, 0x0f, 0x01, 0x00, 0x01, 0x01, 0x01,
6143 : 0x02, 0x6f, 0x05, 0x02, 0x11
6144 : };
6145 168 : return expand_rtx (expand_encoding, operands);
6146 : }
6147 :
6148 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:878 */
6149 : rtx
6150 139 : gen_atomic_andsi (const rtx operand0, const rtx operand1, const rtx operand2)
6151 : {
6152 139 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6153 139 : static const uint8_t expand_encoding[] = {
6154 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x11,
6155 : 0x02, 0x49, 0x11, 0x01, 0x00, 0x01, 0x01, 0x01,
6156 : 0x02, 0x6f, 0x05, 0x02, 0x11
6157 : };
6158 139 : return expand_rtx (expand_encoding, operands);
6159 : }
6160 :
6161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:947 */
6162 : rtx
6163 72 : gen_atomic_bit_test_and_complementsi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6164 : {
6165 72 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6166 72 : static const uint8_t expand_encoding[] = {
6167 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
6168 : 0x08, 0x1b, 0x11, 0x02, 0x01, 0x00, 0x01, 0x02,
6169 : 0x6e, 0x27, 0x00, 0x1f, 0x81, 0x06, 0x11, 0x01,
6170 : 0x00, 0x27, 0x01, 0x01, 0x01, 0x4c, 0x11, 0x81,
6171 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x01, 0x01, 0x01
6172 : };
6173 72 : return expand_rtx (expand_encoding, operands);
6174 : }
6175 :
6176 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1046 */
6177 : rtx
6178 170 : gen_atomic_sub_fetch_cmp_0di_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6179 : {
6180 170 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6181 170 : static const uint8_t expand_encoding[] = {
6182 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11, 0x3a,
6183 : 0x04, 0x3c, 0x12, 0x1b, 0x12, 0x02, 0x01, 0x00,
6184 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6185 : 0x01, 0x00, 0x3c, 0x12, 0x01, 0x00, 0x01, 0x01
6186 : };
6187 170 : return expand_rtx (expand_encoding, operands);
6188 : }
6189 :
6190 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1089 */
6191 : rtx
6192 44 : gen_atomic_and_fetch_cmp_0di_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6193 : {
6194 44 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6195 44 : static const uint8_t expand_encoding[] = {
6196 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x05, 0x11, 0x3a,
6197 : 0x05, 0x49, 0x12, 0x1b, 0x12, 0x02, 0x01, 0x00,
6198 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6199 : 0x01, 0x00, 0x49, 0x12, 0x01, 0x00, 0x01, 0x01
6200 : };
6201 44 : return expand_rtx (expand_encoding, operands);
6202 : }
6203 :
6204 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1476 */
6205 : rtx
6206 0 : gen_cbranchoi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6207 : {
6208 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6209 0 : start_sequence ();
6210 0 : {
6211 : #define FAIL return (end_sequence (), nullptr)
6212 : #define DONE return end_sequence ()
6213 : #line 1486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6214 : {
6215 : ix86_expand_branch (GET_CODE (operands[0]),
6216 : operands[1], operands[2], operands[3]);
6217 : DONE;
6218 : }
6219 : #undef DONE
6220 : #undef FAIL
6221 : }
6222 : static const uint8_t expand_encoding[] = {
6223 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6224 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
6225 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
6226 : 0x00, 0x01, 0x03, 0x2f
6227 : };
6228 : return complete_seq (expand_encoding, operands);
6229 : }
6230 :
6231 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1508 */
6232 : rtx
6233 : gen_cstoreti4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6234 : {
6235 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6236 : start_sequence ();
6237 : {
6238 : #define FAIL return (end_sequence (), nullptr)
6239 : #define DONE return end_sequence ()
6240 : #line 1516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6241 : {
6242 : if (TImode == (TARGET_64BIT ? TImode : DImode))
6243 : {
6244 : if (GET_CODE (operands[1]) != EQ
6245 : && GET_CODE (operands[1]) != NE)
6246 : FAIL;
6247 : }
6248 : else if (MEM_P (operands[2]) && MEM_P (operands[3]))
6249 : operands[2] = force_reg (TImode, operands[2]);
6250 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6251 : operands[2], operands[3]);
6252 : DONE;
6253 : }
6254 : #undef DONE
6255 : #undef FAIL
6256 : }
6257 : static const uint8_t expand_encoding[] = {
6258 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6259 : 0x02, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x03, 0x00,
6260 : 0x01, 0x30, 0x02, 0x11, 0x27, 0x00
6261 : };
6262 : return complete_seq (expand_encoding, operands);
6263 : }
6264 :
6265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1860 */
6266 : rtx
6267 : gen_cstorebf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6268 : {
6269 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6270 : start_sequence ();
6271 : {
6272 : #define FAIL return (end_sequence (), nullptr)
6273 : #define DONE return end_sequence ()
6274 : #line 1869 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6275 : {
6276 : rtx op2 = operands[2], op3 = operands[3];
6277 : if (!TARGET_AVX10_2 || flag_trapping_math)
6278 : {
6279 : op2 = ix86_expand_fast_convert_bf_to_sf (operands[2]);
6280 : op3 = ix86_expand_fast_convert_bf_to_sf (operands[3]);
6281 : }
6282 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6283 : op2, op3);
6284 : DONE;
6285 : }
6286 : #undef DONE
6287 : #undef FAIL
6288 : }
6289 : static const uint8_t expand_encoding[] = {
6290 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6291 : 0x02, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x03, 0x00,
6292 : 0x01, 0x30, 0x02, 0x11, 0x27, 0x00
6293 : };
6294 : return complete_seq (expand_encoding, operands);
6295 : }
6296 :
6297 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1918 */
6298 : rtx
6299 : gen_cstorecco4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6300 : {
6301 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6302 : start_sequence ();
6303 : {
6304 : #define FAIL return (end_sequence (), nullptr)
6305 : #define DONE return end_sequence ()
6306 : #line 1924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6307 : {
6308 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6309 : operands[2], operands[3]);
6310 : DONE;
6311 : }
6312 : #undef DONE
6313 : #undef FAIL
6314 : }
6315 : static const uint8_t expand_encoding[] = {
6316 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x00, 0x01, 0x01,
6317 : 0x02, 0x01, 0x03
6318 : };
6319 : return complete_seq (expand_encoding, operands);
6320 : }
6321 :
6322 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2205 */
6323 : extern rtx_insn *gen_split_6 (rtx_insn *, rtx *);
6324 : rtx_insn *
6325 : gen_split_6 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6326 : {
6327 : if (dump_file)
6328 : fprintf (dump_file, "Splitting with gen_split_6 (i386.md:2205)\n");
6329 : start_sequence ();
6330 : #define FAIL return (end_sequence (), nullptr)
6331 : #define DONE return end_sequence ()
6332 : #line 2210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6333 : ix86_split_long_move (operands); DONE;
6334 : #undef DONE
6335 : #undef FAIL
6336 : static const uint8_t expand_encoding[] = {
6337 : 0x01, 0x27, 0x00
6338 : };
6339 : return complete_seq (expand_encoding, operands);
6340 : }
6341 :
6342 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2275 */
6343 : extern rtx_insn *gen_split_11 (rtx_insn *, rtx *);
6344 : rtx_insn *
6345 : gen_split_11 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6346 : {
6347 : if (dump_file)
6348 : fprintf (dump_file, "Splitting with gen_split_11 (i386.md:2275)\n");
6349 : start_sequence ();
6350 : #define FAIL return (end_sequence (), nullptr)
6351 : #define DONE return end_sequence ()
6352 : #line 2281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6353 : {
6354 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (SImode)));
6355 : /* Preserve memory attributes. */
6356 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6357 : }
6358 : #undef DONE
6359 : #undef FAIL
6360 : static const uint8_t expand_encoding[] = {
6361 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6362 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6363 : 0x01
6364 : };
6365 : return complete_seq (expand_encoding, operands);
6366 : }
6367 :
6368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2423 */
6369 : rtx
6370 : gen_movdi (const rtx operand0, const rtx operand1)
6371 : {
6372 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6373 : start_sequence ();
6374 : {
6375 : #define FAIL return (end_sequence (), nullptr)
6376 : #define DONE return end_sequence ()
6377 : #line 2427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6378 : ix86_expand_move (DImode, operands); DONE;
6379 : #undef DONE
6380 : #undef FAIL
6381 : }
6382 : static const uint8_t expand_encoding[] = {
6383 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6384 : };
6385 : return complete_seq (expand_encoding, operands);
6386 : }
6387 :
6388 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2798 */
6389 : extern rtx_insn *gen_split_23 (rtx_insn *, rtx *);
6390 : rtx_insn *
6391 : gen_split_23 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6392 : {
6393 : if (dump_file)
6394 : fprintf (dump_file, "Splitting with gen_split_23 (i386.md:2798)\n");
6395 : start_sequence ();
6396 : #define FAIL return (end_sequence (), nullptr)
6397 : #define DONE return end_sequence ()
6398 : #line 2803 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6399 : ix86_split_long_move (operands); DONE;
6400 : #undef DONE
6401 : #undef FAIL
6402 : static const uint8_t expand_encoding[] = {
6403 : 0x01, 0x27, 0x00
6404 : };
6405 : return complete_seq (expand_encoding, operands);
6406 : }
6407 :
6408 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3002 */
6409 : extern rtx_insn *gen_peephole2_8 (rtx_insn *, rtx *);
6410 : rtx_insn *
6411 : gen_peephole2_8 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6412 : {
6413 : if (dump_file)
6414 : fprintf (dump_file, "Splitting with gen_peephole2_8 (i386.md:3002)\n");
6415 : start_sequence ();
6416 : static const uint8_t expand_encoding[] = {
6417 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
6418 : 0x01, 0x05, 0x02, 0x11
6419 : };
6420 : return complete_seq (expand_encoding, operands);
6421 : }
6422 :
6423 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3420 */
6424 : extern rtx_insn *gen_peephole2_16 (rtx_insn *, rtx *);
6425 : rtx_insn *
6426 : gen_peephole2_16 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6427 : {
6428 : if (dump_file)
6429 : fprintf (dump_file, "Splitting with gen_peephole2_16 (i386.md:3420)\n");
6430 : start_sequence ();
6431 : static const uint8_t expand_encoding[] = {
6432 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x01,
6433 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01
6434 : };
6435 : return complete_seq (expand_encoding, operands);
6436 : }
6437 :
6438 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3444 */
6439 : extern rtx_insn *gen_peephole2_26 (rtx_insn *, rtx *);
6440 : rtx_insn *
6441 : gen_peephole2_26 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6442 : {
6443 : if (dump_file)
6444 : fprintf (dump_file, "Splitting with gen_peephole2_26 (i386.md:3444)\n");
6445 : start_sequence ();
6446 : static const uint8_t expand_encoding[] = {
6447 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6448 : };
6449 : return complete_seq (expand_encoding, operands);
6450 : }
6451 :
6452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3551 */
6453 : rtx
6454 : gen_extzvsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6455 : {
6456 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6457 : start_sequence ();
6458 : {
6459 : #define FAIL return (end_sequence (), nullptr)
6460 : #define DONE return end_sequence ()
6461 : #line 3557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6462 : {
6463 : if (ix86_expand_pextr (operands))
6464 : DONE;
6465 :
6466 : /* Handle extractions from %ah et al. */
6467 : if (INTVAL (operands[2]) != 8 || INTVAL (operands[3]) != 8)
6468 : FAIL;
6469 :
6470 : unsigned int regno = reg_or_subregno (operands[1]);
6471 :
6472 : /* Be careful to expand only with registers having upper parts. */
6473 : if (regno <= LAST_VIRTUAL_REGISTER && !QI_REGNO_P (regno))
6474 : operands[1] = copy_to_reg (operands[1]);
6475 : }
6476 : #undef DONE
6477 : #undef FAIL
6478 : }
6479 : static const uint8_t expand_encoding[] = {
6480 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x06, 0x11, 0x01,
6481 : 0x01, 0x01, 0x02, 0x01, 0x03
6482 : };
6483 : return complete_seq (expand_encoding, operands);
6484 : }
6485 :
6486 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3686 */
6487 : extern rtx_insn *gen_peephole2_36 (rtx_insn *, rtx *);
6488 : rtx_insn *
6489 : gen_peephole2_36 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6490 : {
6491 : if (dump_file)
6492 : fprintf (dump_file, "Splitting with gen_peephole2_36 (i386.md:3686)\n");
6493 : start_sequence ();
6494 : #define FAIL return (end_sequence (), nullptr)
6495 : #define DONE return end_sequence ()
6496 : #line 3696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6497 : {
6498 : HOST_WIDE_INT tmp = INTVAL (operands[1]) & ~HOST_WIDE_INT_C (0xff00);
6499 : tmp |= (INTVAL (operands[3]) & 0xff) << 8;
6500 : operands[4] = gen_int_mode (tmp, DImode);
6501 : }
6502 : #undef DONE
6503 : #undef FAIL
6504 : static const uint8_t expand_encoding[] = {
6505 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
6506 : };
6507 : return complete_seq (expand_encoding, operands);
6508 : }
6509 :
6510 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3753 */
6511 : extern rtx_insn *gen_split_33 (rtx_insn *, rtx *);
6512 : rtx_insn *
6513 : gen_split_33 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6514 : {
6515 : if (dump_file)
6516 : fprintf (dump_file, "Splitting with gen_split_33 (i386.md:3753)\n");
6517 : start_sequence ();
6518 : #define FAIL return (end_sequence (), nullptr)
6519 : #define DONE return end_sequence ()
6520 : #line 3769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6521 : {
6522 : operands[4] = gen_highpart (DImode, operands[1]);
6523 : split_double_concat (TImode, operands[0], operands[2], operands[4]);
6524 : DONE;
6525 : }
6526 : #undef DONE
6527 : #undef FAIL
6528 : static const uint8_t expand_encoding[] = {
6529 : 0x01, 0x27, 0x00
6530 : };
6531 : return complete_seq (expand_encoding, operands);
6532 : }
6533 :
6534 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4011 */
6535 : extern rtx_insn *gen_split_43 (rtx_insn *, rtx *);
6536 : rtx_insn *
6537 : gen_split_43 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6538 : {
6539 : if (dump_file)
6540 : fprintf (dump_file, "Splitting with gen_split_43 (i386.md:4011)\n");
6541 : start_sequence ();
6542 : #define FAIL return (end_sequence (), nullptr)
6543 : #define DONE return end_sequence ()
6544 : #line 4017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6545 : {
6546 : rtx op = XEXP (operands[0], 0);
6547 : if (GET_CODE (op) == PRE_DEC)
6548 : {
6549 : gcc_assert (!TARGET_64BIT);
6550 : op = GEN_INT (-4);
6551 : }
6552 : else
6553 : {
6554 : op = XEXP (XEXP (op, 1), 1);
6555 : gcc_assert (CONST_INT_P (op));
6556 : }
6557 : operands[2] = op;
6558 : /* Preserve memory attributes. */
6559 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6560 : }
6561 : #undef DONE
6562 : #undef FAIL
6563 : static const uint8_t expand_encoding[] = {
6564 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
6565 : 0x11, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6566 : 0x01
6567 : };
6568 : return complete_seq (expand_encoding, operands);
6569 : }
6570 :
6571 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4060 */
6572 : rtx
6573 : gen_movsf (const rtx operand0, const rtx operand1)
6574 : {
6575 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6576 : start_sequence ();
6577 : {
6578 : #define FAIL return (end_sequence (), nullptr)
6579 : #define DONE return end_sequence ()
6580 : #line 4064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6581 : ix86_expand_move (SFmode, operands); DONE;
6582 : #undef DONE
6583 : #undef FAIL
6584 : }
6585 : static const uint8_t expand_encoding[] = {
6586 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6587 : };
6588 : return complete_seq (expand_encoding, operands);
6589 : }
6590 :
6591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4667 */
6592 : extern rtx_insn *gen_split_57 (rtx_insn *, rtx *);
6593 : rtx_insn *
6594 : gen_split_57 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6595 : {
6596 : if (dump_file)
6597 : fprintf (dump_file, "Splitting with gen_split_57 (i386.md:4667)\n");
6598 : start_sequence ();
6599 : #define FAIL return (end_sequence (), nullptr)
6600 : #define DONE return end_sequence ()
6601 : #line 4676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6602 : {
6603 : if (real_isnegzero (CONST_DOUBLE_REAL_VALUE (operands[1])))
6604 : operands[1] = CONST0_RTX (DFmode);
6605 : else
6606 : operands[1] = CONST1_RTX (DFmode);
6607 : }
6608 : #undef DONE
6609 : #undef FAIL
6610 : static const uint8_t expand_encoding[] = {
6611 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1f, 0x01,
6612 : 0x00, 0x3d, 0x2e, 0x01, 0x00
6613 : };
6614 : return complete_seq (expand_encoding, operands);
6615 : }
6616 :
6617 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4924 */
6618 : rtx
6619 : gen_zero_extendqihi2 (const rtx operand0, const rtx operand1)
6620 : {
6621 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6622 : start_sequence ();
6623 : {
6624 : #define FAIL return (end_sequence (), nullptr)
6625 : #define DONE return end_sequence ()
6626 : #line 4928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6627 : {
6628 : if (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))
6629 : {
6630 : operands[1] = force_reg (QImode, operands[1]);
6631 : emit_insn (gen_zero_extendqihi2_and (operands[0], operands[1]));
6632 : DONE;
6633 : }
6634 : }
6635 : #undef DONE
6636 : #undef FAIL
6637 : }
6638 : static const uint8_t expand_encoding[] = {
6639 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x01, 0x01
6640 : };
6641 : return complete_seq (expand_encoding, operands);
6642 : }
6643 :
6644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5078 */
6645 : extern rtx_insn *gen_peephole2_49 (rtx_insn *, rtx *);
6646 : rtx_insn *
6647 : gen_peephole2_49 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6648 : {
6649 : if (dump_file)
6650 : fprintf (dump_file, "Splitting with gen_peephole2_49 (i386.md:5078)\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, 0x11, 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:5305 */
6662 : extern rtx_insn *gen_split_70 (rtx_insn *, rtx *);
6663 : rtx_insn *
6664 : gen_split_70 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6665 : {
6666 : if (dump_file)
6667 : fprintf (dump_file, "Splitting with gen_split_70 (i386.md:5305)\n");
6668 : start_sequence ();
6669 : static const uint8_t expand_encoding[] = {
6670 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
6671 : 0x11, 0x07, 0x27, 0x81, 0xff, 0xff, 0xff, 0xff,
6672 : 0xff, 0xff, 0xff, 0xff, 0x78, 0x1f, 0x36, 0x2e,
6673 : 0x30, 0x11, 0x07, 0x71, 0x2e, 0x01, 0x01
6674 : };
6675 : return complete_seq (expand_encoding, operands);
6676 : }
6677 :
6678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5320 */
6679 : rtx
6680 : gen_extendsfdf2 (const rtx operand0, const rtx operand1)
6681 : {
6682 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6683 : start_sequence ();
6684 : {
6685 : #define FAIL return (end_sequence (), nullptr)
6686 : #define DONE return end_sequence ()
6687 : #line 5324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6688 : {
6689 : /* ??? Needed for compress_float_constant since all fp constants
6690 : are TARGET_LEGITIMATE_CONSTANT_P. */
6691 : if (CONST_DOUBLE_P (operands[1]))
6692 : {
6693 : if ((!TARGET_SSE2 || TARGET_MIX_SSE_I387)
6694 : && standard_80387_constant_p (operands[1]) > 0)
6695 : {
6696 : operands[1] = simplify_const_unary_operation
6697 : (FLOAT_EXTEND, DFmode, operands[1], SFmode);
6698 : emit_move_insn_1 (operands[0], operands[1]);
6699 : DONE;
6700 : }
6701 : operands[1] = validize_mem (force_const_mem (SFmode, operands[1]));
6702 : }
6703 : }
6704 : #undef DONE
6705 : #undef FAIL
6706 : }
6707 : static const uint8_t expand_encoding[] = {
6708 : 0x01, 0x1f, 0x01, 0x00, 0x71, 0x2e, 0x01, 0x01
6709 : };
6710 : return complete_seq (expand_encoding, operands);
6711 : }
6712 :
6713 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5780 */
6714 : rtx
6715 : gen_fix_truncxfdi2 (const rtx operand0, const rtx operand1)
6716 : {
6717 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6718 : start_sequence ();
6719 : {
6720 : #define FAIL return (end_sequence (), nullptr)
6721 : #define DONE return end_sequence ()
6722 : #line 5785 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6723 : {
6724 : if (TARGET_FISTTP)
6725 : {
6726 : emit_insn (gen_fix_truncdi_i387_fisttp (operands[0], operands[1]));
6727 : DONE;
6728 : }
6729 : }
6730 : #undef DONE
6731 : #undef FAIL
6732 : }
6733 : static const uint8_t expand_encoding[] = {
6734 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74,
6735 : 0x12, 0x01, 0x01, 0x05, 0x02, 0x11
6736 : };
6737 : return complete_seq (expand_encoding, operands);
6738 : }
6739 :
6740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5864 */
6741 : rtx
6742 : gen_fix_truncxfhi2 (const rtx operand0, const rtx operand1)
6743 : {
6744 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6745 : start_sequence ();
6746 : {
6747 : #define FAIL return (end_sequence (), nullptr)
6748 : #define DONE return end_sequence ()
6749 : #line 5870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6750 : {
6751 : if (TARGET_FISTTP)
6752 : {
6753 : emit_insn (gen_fix_trunchi_i387_fisttp (operands[0], operands[1]));
6754 : DONE;
6755 : }
6756 : }
6757 : #undef DONE
6758 : #undef FAIL
6759 : }
6760 : static const uint8_t expand_encoding[] = {
6761 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74,
6762 : 0x10, 0x01, 0x01, 0x05, 0x02, 0x11
6763 : };
6764 : return complete_seq (expand_encoding, operands);
6765 : }
6766 :
6767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6011 */
6768 : extern rtx_insn *gen_peephole2_57 (rtx_insn *, rtx *);
6769 : rtx_insn *
6770 : gen_peephole2_57 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6771 : {
6772 : HARD_REG_SET _regs_allocated;
6773 : CLEAR_HARD_REG_SET (_regs_allocated);
6774 : if ((operands[2] = peep2_find_free_register (0, 0, "x", SFmode, &_regs_allocated)) == NULL_RTX)
6775 : return NULL;
6776 : if (dump_file)
6777 : fprintf (dump_file, "Splitting with gen_peephole2_57 (i386.md:6011)\n");
6778 : start_sequence ();
6779 : static const uint8_t expand_encoding[] = {
6780 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
6781 : 0x00, 0x74, 0x12, 0x01, 0x02
6782 : };
6783 : return complete_seq (expand_encoding, operands);
6784 : }
6785 :
6786 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6210 */
6787 : extern rtx_insn *gen_split_85 (rtx_insn *, rtx *);
6788 : rtx_insn *
6789 : gen_split_85 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6790 : {
6791 : if (dump_file)
6792 : fprintf (dump_file, "Splitting with gen_split_85 (i386.md:6210)\n");
6793 : start_sequence ();
6794 : #define FAIL return (end_sequence (), nullptr)
6795 : #define DONE return end_sequence ()
6796 : #line 6221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6797 : {
6798 : operands[3] = lowpart_subreg (V4SFmode, operands[0], SFmode);
6799 : operands[4] = lowpart_subreg (V4SImode, operands[0], SFmode);
6800 :
6801 : emit_insn (gen_sse2_loadld (operands[4],
6802 : CONST0_RTX (V4SImode), operands[1]));
6803 :
6804 : if (V4SFmode == V4SFmode)
6805 : emit_insn (gen_floatv4siv4sf2 (operands[3], operands[4]));
6806 : else
6807 : emit_insn (gen_sse2_cvtdq2pd (operands[3], operands[4]));
6808 : DONE;
6809 : }
6810 : #undef DONE
6811 : #undef FAIL
6812 : static const uint8_t expand_encoding[] = {
6813 : 0x01, 0x27, 0x00
6814 : };
6815 : return complete_seq (expand_encoding, operands);
6816 : }
6817 :
6818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6295 */
6819 : extern rtx_insn *gen_split_96 (rtx_insn *, rtx *);
6820 : rtx_insn *
6821 : gen_split_96 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6822 : {
6823 : if (dump_file)
6824 : fprintf (dump_file, "Splitting with gen_split_96 (i386.md:6295)\n");
6825 : start_sequence ();
6826 : #define FAIL return (end_sequence (), nullptr)
6827 : #define DONE return end_sequence ()
6828 : #line 6311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6829 : {
6830 : const machine_mode vmode = V2DFmode;
6831 :
6832 : operands[0] = lowpart_subreg (vmode, operands[0], DFmode);
6833 : emit_move_insn (operands[0], CONST0_RTX (vmode));
6834 : }
6835 : #undef DONE
6836 : #undef FAIL
6837 : static const uint8_t expand_encoding[] = {
6838 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81,
6839 : 0x0c, 0x6c, 0x73, 0x2e, 0x01, 0x01, 0x01, 0x00,
6840 : 0x27, 0x01
6841 : };
6842 : return complete_seq (expand_encoding, operands);
6843 : }
6844 :
6845 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6401 */
6846 : rtx
6847 : gen_floatunsdidf2 (const rtx operand0, const rtx operand1)
6848 : {
6849 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6850 : start_sequence ();
6851 : {
6852 : #define FAIL return (end_sequence (), nullptr)
6853 : #define DONE return end_sequence ()
6854 : #line 6408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6855 : {
6856 : if (!TARGET_64BIT)
6857 : {
6858 : ix86_expand_convert_uns_didf_sse (operands[0], operands[1]);
6859 : DONE;
6860 : }
6861 : if (!TARGET_AVX512F)
6862 : {
6863 : x86_emit_floatuns (operands);
6864 : DONE;
6865 : }
6866 : }
6867 : #undef DONE
6868 : #undef FAIL
6869 : }
6870 : static const uint8_t expand_encoding[] = {
6871 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x2e, 0x01, 0x01
6872 : };
6873 : return complete_seq (expand_encoding, operands);
6874 : }
6875 :
6876 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6501 */
6877 : extern rtx_insn *gen_peephole2_64 (rtx_insn *, rtx *);
6878 : rtx_insn *
6879 : gen_peephole2_64 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6880 : {
6881 : if (dump_file)
6882 : fprintf (dump_file, "Splitting with gen_peephole2_64 (i386.md:6501)\n");
6883 : start_sequence ();
6884 : static const uint8_t expand_encoding[] = {
6885 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3b, 0x11,
6886 : 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
6887 : };
6888 : return complete_seq (expand_encoding, operands);
6889 : }
6890 :
6891 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6545 */
6892 : rtx
6893 : gen_addsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
6894 : {
6895 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6896 : start_sequence ();
6897 : {
6898 : #define FAIL return (end_sequence (), nullptr)
6899 : #define DONE return end_sequence ()
6900 : #line 6550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6901 : {
6902 : ix86_expand_binary_operator (PLUS, SImode, operands, TARGET_APX_NDD);
6903 : DONE;
6904 : }
6905 : #undef DONE
6906 : #undef FAIL
6907 : }
6908 : static const uint8_t expand_encoding[] = {
6909 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01, 0x01,
6910 : 0x01, 0x02
6911 : };
6912 : return complete_seq (expand_encoding, operands);
6913 : }
6914 :
6915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6626 */
6916 : extern rtx_insn *gen_split_111 (rtx_insn *, rtx *);
6917 : rtx_insn *
6918 : gen_split_111 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6919 : {
6920 : if (dump_file)
6921 : fprintf (dump_file, "Splitting with gen_split_111 (i386.md:6626)\n");
6922 : start_sequence ();
6923 : #define FAIL return (end_sequence (), nullptr)
6924 : #define DONE return end_sequence ()
6925 : #line 6654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6926 : split_double_mode (TImode, &operands[0], 2, &operands[0], &operands[5]);
6927 : #undef DONE
6928 : #undef FAIL
6929 : static const uint8_t expand_encoding[] = {
6930 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
6931 : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x04,
6932 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01,
6933 : 0x01, 0x01, 0x04, 0x17, 0x00, 0x02, 0x1f, 0x01,
6934 : 0x05, 0x3b, 0x12, 0x3b, 0x12, 0x66, 0x12, 0x30,
6935 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x06, 0x01, 0x02,
6936 : 0x05, 0x02, 0x11
6937 : };
6938 : return complete_seq (expand_encoding, operands);
6939 : }
6940 :
6941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6656 */
6942 : extern rtx_insn *gen_split_119 (rtx_insn *, rtx *);
6943 : rtx_insn *
6944 : gen_split_119 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6945 : {
6946 : if (dump_file)
6947 : fprintf (dump_file, "Splitting with gen_split_119 (i386.md:6656)\n");
6948 : start_sequence ();
6949 : #define FAIL return (end_sequence (), nullptr)
6950 : #define DONE return end_sequence ()
6951 : #line 6687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6952 : split_double_mode (TImode, &operands[0], 1, &operands[0], &operands[5]);
6953 : #undef DONE
6954 : #undef FAIL
6955 : static const uint8_t expand_encoding[] = {
6956 : 0x04, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
6957 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
6958 : 0x12, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x1f,
6959 : 0x01, 0x00, 0x3b, 0x12, 0x01, 0x00, 0x01, 0x01,
6960 : 0x1f, 0x01, 0x05, 0x01, 0x02, 0x17, 0x00, 0x02,
6961 : 0x1f, 0x01, 0x05, 0x3b, 0x12, 0x3b, 0x12, 0x66,
6962 : 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x05,
6963 : 0x27, 0x00, 0x05, 0x02, 0x11
6964 : };
6965 : return complete_seq (expand_encoding, operands);
6966 : }
6967 :
6968 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7164 */
6969 : extern rtx_insn *gen_split_132 (rtx_insn *, rtx *);
6970 : rtx_insn *
6971 : gen_split_132 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6972 : {
6973 : if (dump_file)
6974 : fprintf (dump_file, "Splitting with gen_split_132 (i386.md:7164)\n");
6975 : start_sequence ();
6976 : #define FAIL return (end_sequence (), nullptr)
6977 : #define DONE return end_sequence ()
6978 : #line 7172 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6979 : {
6980 : if (HImode != SImode)
6981 : {
6982 : operands[0] = gen_lowpart (SImode, operands[0]);
6983 : operands[1] = gen_lowpart (SImode, operands[1]);
6984 : operands[2] = gen_lowpart (SImode, operands[2]);
6985 : }
6986 : }
6987 : #undef DONE
6988 : #undef FAIL
6989 : static const uint8_t expand_encoding[] = {
6990 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01, 0x01,
6991 : 0x01, 0x02
6992 : };
6993 : return complete_seq (expand_encoding, operands);
6994 : }
6995 :
6996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7555 */
6997 : extern rtx_insn *gen_split_142 (rtx_insn *, rtx *);
6998 : rtx_insn *
6999 : gen_split_142 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7000 : {
7001 : if (dump_file)
7002 : fprintf (dump_file, "Splitting with gen_split_142 (i386.md:7555)\n");
7003 : start_sequence ();
7004 : #define FAIL return (end_sequence (), nullptr)
7005 : #define DONE return end_sequence ()
7006 : #line 7580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7007 :
7008 : #undef DONE
7009 : #undef FAIL
7010 : static const uint8_t expand_encoding[] = {
7011 : 0x02, 0x1f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
7012 : 0x12, 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00,
7013 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x0f,
7014 : 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27,
7015 : 0x08, 0x27, 0x08, 0x00, 0x01, 0x00, 0x05, 0x02,
7016 : 0x11
7017 : };
7018 : return complete_seq (expand_encoding, operands);
7019 : }
7020 :
7021 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7701 */
7022 : rtx
7023 : gen_addvqi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7024 : {
7025 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7026 : start_sequence ();
7027 : {
7028 : #define FAIL return (end_sequence (), nullptr)
7029 : #define DONE return end_sequence ()
7030 : #line 7719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7031 : {
7032 : ix86_fixup_binary_operands_no_copy (PLUS, QImode, operands);
7033 : if (CONST_SCALAR_INT_P (operands[2]))
7034 : operands[4] = operands[2];
7035 : else
7036 : operands[4] = gen_rtx_SIGN_EXTEND (HImode, operands[2]);
7037 : }
7038 : #undef DONE
7039 : #undef FAIL
7040 : }
7041 : static const uint8_t expand_encoding[] = {
7042 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7043 : 0x5d, 0x09, 0x3b, 0x10, 0x6e, 0x10, 0x01, 0x01,
7044 : 0x01, 0x04, 0x6e, 0x10, 0x3b, 0x0f, 0x01, 0x01,
7045 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x0f, 0x01,
7046 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x5d,
7047 : 0x00, 0x30, 0x09, 0x11, 0x27, 0x00, 0x37, 0x00,
7048 : 0x01, 0x03, 0x2f
7049 : };
7050 : return complete_seq (expand_encoding, operands);
7051 : }
7052 :
7053 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7951 */
7054 : rtx
7055 : gen_uaddvhi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7056 : {
7057 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7058 : start_sequence ();
7059 : {
7060 : #define FAIL return (end_sequence (), nullptr)
7061 : #define DONE return end_sequence ()
7062 : #line 7965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7063 : ix86_fixup_binary_operands_no_copy (PLUS, HImode, operands);
7064 : #undef DONE
7065 : #undef FAIL
7066 : }
7067 : static const uint8_t expand_encoding[] = {
7068 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7069 : 0x3a, 0x08, 0x3b, 0x10, 0x01, 0x01, 0x01, 0x02,
7070 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x10, 0x01,
7071 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x66,
7072 : 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x37, 0x00,
7073 : 0x01, 0x03, 0x2f
7074 : };
7075 : return complete_seq (expand_encoding, operands);
7076 : }
7077 :
7078 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7992 */
7079 : extern rtx_insn *gen_split_158 (rtx_insn *, rtx *);
7080 : rtx_insn *
7081 : gen_split_158 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7082 : {
7083 : if (dump_file)
7084 : fprintf (dump_file, "Splitting with gen_split_158 (i386.md:7992)\n");
7085 : start_sequence ();
7086 : #define FAIL return (end_sequence (), nullptr)
7087 : #define DONE return end_sequence ()
7088 : #line 8005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7089 : {
7090 : operands[0] = gen_lowpart (SImode, operands[0]);
7091 : operands[1] = gen_lowpart (SImode, operands[1]);
7092 : operands[3] = gen_lowpart (SImode, operands[3]);
7093 : }
7094 : #undef DONE
7095 : #undef FAIL
7096 : static const uint8_t expand_encoding[] = {
7097 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3e, 0x11,
7098 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7099 : };
7100 : return complete_seq (expand_encoding, operands);
7101 : }
7102 :
7103 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8086 */
7104 : extern rtx_insn *gen_split_168 (rtx_insn *, rtx *);
7105 : rtx_insn *
7106 : gen_split_168 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7107 : {
7108 : if (dump_file)
7109 : fprintf (dump_file, "Splitting with gen_split_168 (i386.md:8086)\n");
7110 : start_sequence ();
7111 : #define FAIL return (end_sequence (), nullptr)
7112 : #define DONE return end_sequence ()
7113 : #line 8102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7114 : {
7115 : operands[0] = gen_lowpart (SImode, operands[0]);
7116 : operands[1] = gen_lowpart (SImode, operands[1]);
7117 : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
7118 : }
7119 : #undef DONE
7120 : #undef FAIL
7121 : static const uint8_t expand_encoding[] = {
7122 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3e, 0x11,
7123 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7124 : };
7125 : return complete_seq (expand_encoding, operands);
7126 : }
7127 :
7128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8141 */
7129 : extern rtx_insn *gen_split_174 (rtx_insn *, rtx *);
7130 : rtx_insn *
7131 : gen_split_174 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7132 : {
7133 : if (dump_file)
7134 : fprintf (dump_file, "Splitting with gen_split_174 (i386.md:8141)\n");
7135 : start_sequence ();
7136 : #define FAIL return (end_sequence (), nullptr)
7137 : #define DONE return end_sequence ()
7138 : #line 8161 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7139 : {
7140 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
7141 : if (operands[2] == const0_rtx)
7142 : {
7143 : if (!rtx_equal_p (operands[0], operands[1]))
7144 : emit_move_insn (operands[0], operands[1]);
7145 : ix86_expand_binary_operator (MINUS, SImode, &operands[3],
7146 : TARGET_APX_NDD);
7147 : DONE;
7148 : }
7149 : }
7150 : #undef DONE
7151 : #undef FAIL
7152 : static const uint8_t expand_encoding[] = {
7153 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7154 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7155 : 0x00, 0x3c, 0x11, 0x01, 0x01, 0x01, 0x02, 0x17,
7156 : 0x00, 0x02, 0x1f, 0x01, 0x03, 0x3c, 0x11, 0x3c,
7157 : 0x11, 0x01, 0x04, 0x66, 0x11, 0x30, 0x02, 0x11,
7158 : 0x27, 0x00, 0x01, 0x05, 0x05, 0x02, 0x11
7159 : };
7160 : return complete_seq (expand_encoding, operands);
7161 : }
7162 :
7163 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8393 */
7164 : extern rtx_insn *gen_split_187 (rtx_insn *, rtx *);
7165 : rtx_insn *
7166 : gen_split_187 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7167 : {
7168 : if (dump_file)
7169 : fprintf (dump_file, "Splitting with gen_split_187 (i386.md:8393)\n");
7170 : start_sequence ();
7171 : #define FAIL return (end_sequence (), nullptr)
7172 : #define DONE return end_sequence ()
7173 : #line 8418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7174 :
7175 : #undef DONE
7176 : #undef FAIL
7177 : static const uint8_t expand_encoding[] = {
7178 : 0x02, 0x1f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
7179 : 0x11, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
7180 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x0f,
7181 : 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01,
7182 : 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x05, 0x02,
7183 : 0x11
7184 : };
7185 : return complete_seq (expand_encoding, operands);
7186 : }
7187 :
7188 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8537 */
7189 : extern rtx_insn *gen_split_192 (rtx_insn *, rtx *);
7190 : rtx_insn *
7191 : gen_split_192 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7192 : {
7193 : if (dump_file)
7194 : fprintf (dump_file, "Splitting with gen_split_192 (i386.md:8537)\n");
7195 : start_sequence ();
7196 : #define FAIL return (end_sequence (), nullptr)
7197 : #define DONE return end_sequence ()
7198 : #line 8575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7199 : {
7200 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
7201 : }
7202 : #undef DONE
7203 : #undef FAIL
7204 : static const uint8_t expand_encoding[] = {
7205 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7206 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7207 : 0x00, 0x3c, 0x11, 0x01, 0x01, 0x01, 0x02, 0x17,
7208 : 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11, 0x5d, 0x09,
7209 : 0x3c, 0x12, 0x3c, 0x12, 0x6e, 0x12, 0x01, 0x04,
7210 : 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x6e,
7211 : 0x12, 0x01, 0x05, 0x6e, 0x12, 0x3c, 0x11, 0x3c,
7212 : 0x11, 0x01, 0x04, 0x66, 0x11, 0x30, 0x02, 0x11,
7213 : 0x27, 0x00, 0x01, 0x05, 0x1f, 0x01, 0x03, 0x3c,
7214 : 0x11, 0x3c, 0x11, 0x01, 0x04, 0x66, 0x11, 0x30,
7215 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x05
7216 : };
7217 : return complete_seq (expand_encoding, operands);
7218 : }
7219 :
7220 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8720 */
7221 : rtx
7222 : gen_subdi_3 (const rtx operand0, const rtx operand1, const rtx operand2)
7223 : {
7224 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7225 : static const uint8_t expand_encoding[] = {
7226 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a,
7227 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00,
7228 : 0x3c, 0x12, 0x01, 0x01, 0x01, 0x02
7229 : };
7230 : return expand_rtx (expand_encoding, operands);
7231 : }
7232 :
7233 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8783 */
7234 : extern rtx_insn *gen_peephole2_78 (rtx_insn *, rtx *);
7235 : rtx_insn *
7236 : gen_peephole2_78 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7237 : {
7238 : if (dump_file)
7239 : fprintf (dump_file, "Splitting with gen_peephole2_78 (i386.md:8783)\n");
7240 : start_sequence ();
7241 : static const uint8_t expand_encoding[] = {
7242 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
7243 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7244 : 0x02, 0x01, 0x00, 0x1f, 0x01, 0x02, 0x3c, 0x0f,
7245 : 0x01, 0x02, 0x01, 0x00
7246 : };
7247 : return complete_seq (expand_encoding, operands);
7248 : }
7249 :
7250 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8834 */
7251 : extern rtx_insn *gen_split_198 (rtx_insn *, rtx *);
7252 : rtx_insn *
7253 : gen_split_198 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7254 : {
7255 : if (dump_file)
7256 : fprintf (dump_file, "Splitting with gen_split_198 (i386.md:8834)\n");
7257 : start_sequence ();
7258 : #define FAIL return (end_sequence (), nullptr)
7259 : #define DONE return end_sequence ()
7260 : #line 8850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7261 : {
7262 : rtx cc = gen_rtx_REG (CCCmode, FLAGS_REG);
7263 : operands[4] = gen_rtx_fmt_ee (GET_CODE (operands[1]) == NE
7264 : ? GEU : LTU, VOIDmode, cc, const0_rtx);
7265 : }
7266 : #undef DONE
7267 : #undef FAIL
7268 : static const uint8_t expand_encoding[] = {
7269 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7270 : 0x3a, 0x02, 0x01, 0x02, 0x27, 0x01, 0x1f, 0x01,
7271 : 0x00, 0x3c, 0x12, 0x01, 0x02, 0x27, 0x01, 0x1f,
7272 : 0x01, 0x00, 0x39, 0x12, 0x01, 0x04, 0x01, 0x00,
7273 : 0x01, 0x03
7274 : };
7275 : return complete_seq (expand_encoding, operands);
7276 : }
7277 :
7278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9328 */
7279 : extern rtx_insn *gen_peephole2_98 (rtx_insn *, rtx *);
7280 : rtx_insn *
7281 : gen_peephole2_98 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7282 : {
7283 : if (dump_file)
7284 : fprintf (dump_file, "Splitting with gen_peephole2_98 (i386.md:9328)\n");
7285 : start_sequence ();
7286 : static const uint8_t expand_encoding[] = {
7287 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7288 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x6f,
7289 : 0x12, 0x3b, 0x11, 0x3b, 0x11, 0x02, 0x05, 0x01,
7290 : 0x03, 0x27, 0x00, 0x01, 0x01, 0x01, 0x00, 0x3b,
7291 : 0x12, 0x02, 0x04, 0x01, 0x03, 0x27, 0x00, 0x6f,
7292 : 0x12, 0x01, 0x00, 0x1f, 0x01, 0x01, 0x3b, 0x11,
7293 : 0x3b, 0x11, 0x02, 0x05, 0x01, 0x03, 0x27, 0x00,
7294 : 0x01, 0x01, 0x01, 0x00
7295 : };
7296 : return complete_seq (expand_encoding, operands);
7297 : }
7298 :
7299 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9562 */
7300 : extern rtx_insn *gen_peephole2_106 (rtx_insn *, rtx *);
7301 : rtx_insn *
7302 : gen_peephole2_106 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7303 : {
7304 : if (dump_file)
7305 : fprintf (dump_file, "Splitting with gen_peephole2_106 (i386.md:9562)\n");
7306 : start_sequence ();
7307 : static const uint8_t expand_encoding[] = {
7308 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7309 : 0x02, 0x1f, 0x01, 0x01, 0x3c, 0x11, 0x3c, 0x11,
7310 : 0x01, 0x01, 0x02, 0x04, 0x01, 0x03, 0x27, 0x00,
7311 : 0x01, 0x00, 0x05, 0x02, 0x11
7312 : };
7313 : return complete_seq (expand_encoding, operands);
7314 : }
7315 :
7316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10026 */
7317 : extern rtx_insn *gen_peephole2_116 (rtx_insn *, rtx *);
7318 : rtx_insn *
7319 : gen_peephole2_116 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7320 : {
7321 : if (dump_file)
7322 : fprintf (dump_file, "Splitting with gen_peephole2_116 (i386.md:10026)\n");
7323 : start_sequence ();
7324 : #define FAIL return (end_sequence (), nullptr)
7325 : #define DONE return end_sequence ()
7326 : #line 10072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7327 : {
7328 : if (!rtx_equal_p (operands[6], operands[0]))
7329 : operands[9] = operands[7];
7330 : }
7331 : #undef DONE
7332 : #undef FAIL
7333 : static const uint8_t expand_encoding[] = {
7334 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x09, 0x17, 0x00,
7335 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x6f,
7336 : 0x12, 0x01, 0x01, 0x3b, 0x12, 0x02, 0x04, 0x01,
7337 : 0x03, 0x27, 0x00, 0x6f, 0x12, 0x01, 0x00, 0x1f,
7338 : 0x01, 0x01, 0x3c, 0x11, 0x3c, 0x11, 0x01, 0x01,
7339 : 0x02, 0x05, 0x01, 0x03, 0x27, 0x00, 0x01, 0x00
7340 : };
7341 : return complete_seq (expand_encoding, operands);
7342 : }
7343 :
7344 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10268 */
7345 : extern rtx_insn *gen_split_201 (rtx_insn *, rtx *);
7346 : rtx_insn *
7347 : gen_split_201 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7348 : {
7349 : if (dump_file)
7350 : fprintf (dump_file, "Splitting with gen_split_201 (i386.md:10268)\n");
7351 : start_sequence ();
7352 : #define FAIL return (end_sequence (), nullptr)
7353 : #define DONE return end_sequence ()
7354 : #line 10275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7355 : emit_note (NOTE_INSN_DELETED); DONE;
7356 : #undef DONE
7357 : #undef FAIL
7358 : static const uint8_t expand_encoding[] = {
7359 : 0x01, 0x27, 0x00
7360 : };
7361 : return complete_seq (expand_encoding, operands);
7362 : }
7363 :
7364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10348 */
7365 : extern rtx_insn *gen_peephole2_120 (rtx_insn *, rtx *);
7366 : rtx_insn *
7367 : gen_peephole2_120 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7368 : {
7369 : if (dump_file)
7370 : fprintf (dump_file, "Splitting with gen_peephole2_120 (i386.md:10348)\n");
7371 : start_sequence ();
7372 : static const uint8_t expand_encoding[] = {
7373 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7374 : 0x3a, 0x08, 0x3b, 0x0f, 0x01, 0x01, 0x01, 0x00,
7375 : 0x01, 0x01, 0x1f, 0x01, 0x01, 0x3b, 0x0f, 0x01,
7376 : 0x01, 0x01, 0x00
7377 : };
7378 : return complete_seq (expand_encoding, operands);
7379 : }
7380 :
7381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10516 */
7382 : extern rtx_insn *gen_split_208 (rtx_insn *, rtx *);
7383 : rtx_insn *
7384 : gen_split_208 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7385 : {
7386 : if (dump_file)
7387 : fprintf (dump_file, "Splitting with gen_split_208 (i386.md:10516)\n");
7388 : start_sequence ();
7389 : static const uint8_t expand_encoding[] = {
7390 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7391 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7392 : 0x00, 0x3b, 0x0f, 0x3b, 0x0f, 0x66, 0x0f, 0x30,
7393 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x01, 0x01, 0x02,
7394 : 0x05, 0x02, 0x11
7395 : };
7396 : return complete_seq (expand_encoding, operands);
7397 : }
7398 :
7399 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10565 */
7400 : extern rtx_insn *gen_split_216 (rtx_insn *, rtx *);
7401 : rtx_insn *
7402 : gen_split_216 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7403 : {
7404 : if (dump_file)
7405 : fprintf (dump_file, "Splitting with gen_split_216 (i386.md:10565)\n");
7406 : start_sequence ();
7407 : #define FAIL return (end_sequence (), nullptr)
7408 : #define DONE return end_sequence ()
7409 : #line 10581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7410 : {
7411 : if (!nonimmediate_operand (operands[1], QImode))
7412 : operands[1] = force_reg (QImode, operands[1]);
7413 : }
7414 : #undef DONE
7415 : #undef FAIL
7416 : static const uint8_t expand_encoding[] = {
7417 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7418 : 0x02, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7419 : 0x00, 0x3b, 0x0f, 0x66, 0x0f, 0x30, 0x02, 0x11,
7420 : 0x27, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11
7421 : };
7422 : return complete_seq (expand_encoding, operands);
7423 : }
7424 :
7425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10609 */
7426 : extern rtx_insn *gen_split_226 (rtx_insn *, rtx *);
7427 : rtx_insn *
7428 : gen_split_226 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7429 : {
7430 : if (dump_file)
7431 : fprintf (dump_file, "Splitting with gen_split_226 (i386.md:10609)\n");
7432 : start_sequence ();
7433 : static const uint8_t expand_encoding[] = {
7434 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7435 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7436 : 0x00, 0x3c, 0x11, 0x3c, 0x11, 0x01, 0x01, 0x66,
7437 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7438 : 0x05, 0x02, 0x11
7439 : };
7440 : return complete_seq (expand_encoding, operands);
7441 : }
7442 :
7443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10660 */
7444 : extern rtx_insn *gen_split_232 (rtx_insn *, rtx *);
7445 : rtx_insn *
7446 : gen_split_232 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7447 : {
7448 : if (dump_file)
7449 : fprintf (dump_file, "Splitting with gen_split_232 (i386.md:10660)\n");
7450 : start_sequence ();
7451 : #define FAIL return (end_sequence (), nullptr)
7452 : #define DONE return end_sequence ()
7453 : #line 10684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7454 : {
7455 : operands[2] = gen_int_mode (-INTVAL (operands[2]),
7456 : QImode == DImode ? SImode : QImode);
7457 : }
7458 : #undef DONE
7459 : #undef FAIL
7460 : static const uint8_t expand_encoding[] = {
7461 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7462 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7463 : 0x00, 0x3c, 0x0f, 0x3c, 0x0f, 0x01, 0x01, 0x66,
7464 : 0x0f, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7465 : 0x05, 0x02, 0x11
7466 : };
7467 : return complete_seq (expand_encoding, operands);
7468 : }
7469 :
7470 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10710 */
7471 : extern rtx_insn *gen_split_242 (rtx_insn *, rtx *);
7472 : rtx_insn *
7473 : gen_split_242 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7474 : {
7475 : if (dump_file)
7476 : fprintf (dump_file, "Splitting with gen_split_242 (i386.md:10710)\n");
7477 : start_sequence ();
7478 : #define FAIL return (end_sequence (), nullptr)
7479 : #define DONE return end_sequence ()
7480 : #line 10728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7481 : {
7482 : if (!nonimmediate_operand (operands[1], SImode))
7483 : operands[1] = force_reg (SImode, operands[1]);
7484 : }
7485 : #undef DONE
7486 : #undef FAIL
7487 : static const uint8_t expand_encoding[] = {
7488 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7489 : 0x02, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7490 : 0x00, 0x3b, 0x11, 0x3b, 0x11, 0x66, 0x11, 0x30,
7491 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x01, 0x27, 0x81,
7492 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7493 : 0x7f, 0x05, 0x02, 0x11
7494 : };
7495 : return complete_seq (expand_encoding, operands);
7496 : }
7497 :
7498 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10818 */
7499 : rtx
7500 : gen_ustruncdiqi2 (const rtx operand0, const rtx operand1)
7501 : {
7502 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
7503 : start_sequence ();
7504 : {
7505 : #define FAIL return (end_sequence (), nullptr)
7506 : #define DONE return end_sequence ()
7507 : #line 10822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7508 : {
7509 : rtx op1 = force_reg (DImode, operands[1]);
7510 : rtx sat = force_reg (DImode, GEN_INT (GET_MODE_MASK (QImode)));
7511 : rtx dst;
7512 :
7513 : emit_insn (gen_cmpdi_1 (sat, op1));
7514 :
7515 : if (TARGET_CMOVE)
7516 : {
7517 : rtx cmp = gen_rtx_GEU (VOIDmode, gen_rtx_REG (CCCmode, FLAGS_REG),
7518 : const0_rtx);
7519 :
7520 : dst = force_reg (QImode, operands[0]);
7521 : emit_insn (gen_movsicc (gen_lowpart (SImode, dst), cmp,
7522 : gen_lowpart (SImode, op1),
7523 : gen_lowpart (SImode, sat)));
7524 : }
7525 : else
7526 : {
7527 : rtx msk = gen_reg_rtx (QImode);
7528 :
7529 : emit_insn (gen_x86_movqicc_0_m1_neg (msk));
7530 : dst = expand_simple_binop (QImode, IOR,
7531 : gen_lowpart (QImode, op1), msk,
7532 : operands[0], 1, OPTAB_WIDEN);
7533 : }
7534 :
7535 : if (!rtx_equal_p (dst, operands[0]))
7536 : emit_move_insn (operands[0], dst);
7537 : DONE;
7538 : }
7539 : #undef DONE
7540 : #undef FAIL
7541 : }
7542 : static const uint8_t expand_encoding[] = {
7543 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x12, 0x01,
7544 : 0x01
7545 : };
7546 : return complete_seq (expand_encoding, operands);
7547 : }
7548 :
7549 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10935 */
7550 : rtx
7551 : gen_addhf3 (const rtx operand0, const rtx operand1, const rtx operand2)
7552 : {
7553 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7554 : static const uint8_t expand_encoding[] = {
7555 : 0x1f, 0x01, 0x00, 0x3b, 0x2b, 0x01, 0x01, 0x01,
7556 : 0x02
7557 : };
7558 : return expand_rtx (expand_encoding, operands);
7559 : }
7560 :
7561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10952 */
7562 : rtx
7563 : gen_mulhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7564 : {
7565 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7566 : static const uint8_t expand_encoding[] = {
7567 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x10,
7568 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
7569 : };
7570 : return expand_rtx (expand_encoding, operands);
7571 : }
7572 :
7573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11272 */
7574 : rtx
7575 : gen_mulvqi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7576 : {
7577 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7578 : start_sequence ();
7579 : {
7580 : #define FAIL return (end_sequence (), nullptr)
7581 : #define DONE return end_sequence ()
7582 : #line 11288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7583 : {
7584 : if (MEM_P (operands[1]) && MEM_P (operands[2]))
7585 : operands[1] = force_reg (QImode, operands[1]);
7586 : }
7587 : #undef DONE
7588 : #undef FAIL
7589 : }
7590 : static const uint8_t expand_encoding[] = {
7591 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7592 : 0x5d, 0x09, 0x3e, 0x10, 0x6e, 0x10, 0x01, 0x01,
7593 : 0x6e, 0x10, 0x01, 0x02, 0x6e, 0x10, 0x3e, 0x0f,
7594 : 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3e,
7595 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39,
7596 : 0x00, 0x5d, 0x00, 0x30, 0x09, 0x11, 0x27, 0x00,
7597 : 0x37, 0x00, 0x01, 0x03, 0x2f
7598 : };
7599 : return complete_seq (expand_encoding, operands);
7600 : }
7601 :
7602 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11486 */
7603 : extern rtx_insn *gen_peephole2_132 (rtx_insn *, rtx *);
7604 : rtx_insn *
7605 : gen_peephole2_132 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7606 : {
7607 : if (dump_file)
7608 : fprintf (dump_file, "Splitting with gen_peephole2_132 (i386.md:11486)\n");
7609 : start_sequence ();
7610 : static const uint8_t expand_encoding[] = {
7611 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
7612 : 0x02, 0x1f, 0x01, 0x04, 0x3e, 0x11, 0x01, 0x02,
7613 : 0x01, 0x03, 0x1f, 0x01, 0x05, 0x42, 0x11, 0x01,
7614 : 0x02, 0x01, 0x03
7615 : };
7616 : return complete_seq (expand_encoding, operands);
7617 : }
7618 :
7619 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11645 */
7620 : extern rtx_insn *gen_peephole2_139 (rtx_insn *, rtx *);
7621 : rtx_insn *
7622 : gen_peephole2_139 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7623 : {
7624 : if (dump_file)
7625 : fprintf (dump_file, "Splitting with gen_peephole2_139 (i386.md:11645)\n");
7626 : start_sequence ();
7627 : static const uint8_t expand_encoding[] = {
7628 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
7629 : 0x03, 0x1f, 0x01, 0x04, 0x6f, 0x12, 0x42, 0x11,
7630 : 0x01, 0x02, 0x01, 0x03, 0x21, 0x00, 0x01, 0x02,
7631 : 0x05, 0x02, 0x11
7632 : };
7633 : return complete_seq (expand_encoding, operands);
7634 : }
7635 :
7636 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11761 */
7637 : extern rtx_insn *gen_split_246 (rtx_insn *, rtx *);
7638 : rtx_insn *
7639 : gen_split_246 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7640 : {
7641 : if (dump_file)
7642 : fprintf (dump_file, "Splitting with gen_split_246 (i386.md:11761)\n");
7643 : start_sequence ();
7644 : #define FAIL return (end_sequence (), nullptr)
7645 : #define DONE return end_sequence ()
7646 : #line 11773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7647 : ix86_split_idivmod (SImode, operands, false); DONE;
7648 : #undef DONE
7649 : #undef FAIL
7650 : static const uint8_t expand_encoding[] = {
7651 : 0x01, 0x27, 0x00
7652 : };
7653 : return complete_seq (expand_encoding, operands);
7654 : }
7655 :
7656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11807 */
7657 : extern rtx_insn *gen_split_254 (rtx_insn *, rtx *);
7658 : rtx_insn *
7659 : gen_split_254 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7660 : {
7661 : if (dump_file)
7662 : fprintf (dump_file, "Splitting with gen_split_254 (i386.md:11807)\n");
7663 : start_sequence ();
7664 : #define FAIL return (end_sequence (), nullptr)
7665 : #define DONE return end_sequence ()
7666 : #line 11827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7667 : {
7668 : operands[5] = GEN_INT (GET_MODE_BITSIZE (SImode)-1);
7669 :
7670 : if (optimize_function_for_size_p (cfun) || TARGET_USE_CLTD)
7671 : operands[4] = operands[2];
7672 : else
7673 : {
7674 : /* Avoid use of cltd in favor of a mov+shift. */
7675 : emit_move_insn (operands[1], operands[2]);
7676 : operands[4] = operands[1];
7677 : }
7678 : }
7679 : #undef DONE
7680 : #undef FAIL
7681 : static const uint8_t expand_encoding[] = {
7682 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x4f,
7683 : 0x11, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11,
7684 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x43, 0x11,
7685 : 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x46,
7686 : 0x11, 0x01, 0x02, 0x01, 0x03, 0x20, 0x00, 0x01,
7687 : 0x01, 0x05, 0x02, 0x11
7688 : };
7689 : return complete_seq (expand_encoding, operands);
7690 : }
7691 :
7692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12018 */
7693 : extern rtx_insn *gen_split_266 (rtx_insn *, rtx *);
7694 : rtx_insn *
7695 : gen_split_266 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7696 : {
7697 : if (dump_file)
7698 : fprintf (dump_file, "Splitting with gen_split_266 (i386.md:12018)\n");
7699 : start_sequence ();
7700 : #define FAIL return (end_sequence (), nullptr)
7701 : #define DONE return end_sequence ()
7702 : #line 12035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7703 :
7704 : #undef DONE
7705 : #undef FAIL
7706 : static const uint8_t expand_encoding[] = {
7707 : 0x02, 0x1f, 0x01, 0x01, 0x27, 0x00, 0x17, 0x00,
7708 : 0x04, 0x1f, 0x01, 0x00, 0x47, 0x11, 0x01, 0x02,
7709 : 0x01, 0x03, 0x1f, 0x01, 0x01, 0x48, 0x11, 0x01,
7710 : 0x02, 0x01, 0x03, 0x20, 0x00, 0x01, 0x01, 0x05,
7711 : 0x02, 0x11
7712 : };
7713 : return complete_seq (expand_encoding, operands);
7714 : }
7715 :
7716 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12205 */
7717 : extern rtx_insn *gen_split_275 (rtx_insn *, rtx *);
7718 : rtx_insn *
7719 : gen_split_275 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7720 : {
7721 : if (dump_file)
7722 : fprintf (dump_file, "Splitting with gen_split_275 (i386.md:12205)\n");
7723 : start_sequence ();
7724 : #define FAIL return (end_sequence (), nullptr)
7725 : #define DONE return end_sequence ()
7726 : #line 12223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7727 : {
7728 : int v = exact_log2 (UINTVAL (operands[3]));
7729 : operands[4] = GEN_INT (v);
7730 : operands[5] = GEN_INT ((HOST_WIDE_INT_1U << v) - 1);
7731 : }
7732 : #undef DONE
7733 : #undef FAIL
7734 : static const uint8_t expand_encoding[] = {
7735 : 0x03, 0x1f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
7736 : 0x02, 0x1f, 0x01, 0x00, 0x50, 0x11, 0x01, 0x02,
7737 : 0x01, 0x04, 0x05, 0x02, 0x11, 0x17, 0x00, 0x02,
7738 : 0x1f, 0x01, 0x01, 0x6f, 0x12, 0x49, 0x11, 0x01,
7739 : 0x01, 0x01, 0x05, 0x05, 0x02, 0x11
7740 : };
7741 : return complete_seq (expand_encoding, operands);
7742 : }
7743 :
7744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12698 */
7745 : extern rtx_insn *gen_split_282 (rtx_insn *, rtx *);
7746 : rtx_insn *
7747 : gen_split_282 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7748 : {
7749 : if (dump_file)
7750 : fprintf (dump_file, "Splitting with gen_split_282 (i386.md:12698)\n");
7751 : start_sequence ();
7752 : #define FAIL return (end_sequence (), nullptr)
7753 : #define DONE return end_sequence ()
7754 : #line 12713 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7755 : operands[2] = gen_reg_rtx (HImode);
7756 : #undef DONE
7757 : #undef FAIL
7758 : static const uint8_t expand_encoding[] = {
7759 : 0x02, 0x1f, 0x01, 0x02, 0x4c, 0x10, 0x01, 0x00,
7760 : 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x49, 0x10,
7761 : 0x01, 0x02, 0x01, 0x01, 0x27, 0x00
7762 : };
7763 : return complete_seq (expand_encoding, operands);
7764 : }
7765 :
7766 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12794 */
7767 : extern rtx_insn *gen_peephole2_140 (rtx_insn *, rtx *);
7768 : rtx_insn *
7769 : gen_peephole2_140 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7770 : {
7771 : if (dump_file)
7772 : fprintf (dump_file, "Splitting with gen_peephole2_140 (i386.md:12794)\n");
7773 : start_sequence ();
7774 : #define FAIL return (end_sequence (), nullptr)
7775 : #define DONE return end_sequence ()
7776 : #line 12805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7777 : {
7778 : unsigned HOST_WIDE_INT ival = UINTVAL (operands[1]);
7779 : int first_nonzero_byte, bitsize;
7780 : rtx new_addr, new_const;
7781 : machine_mode new_mode;
7782 :
7783 : if (ival == 0)
7784 : FAIL;
7785 :
7786 : /* Clear bits outside mode width. */
7787 : ival &= GET_MODE_MASK (HImode);
7788 :
7789 : first_nonzero_byte = ctz_hwi (ival) / BITS_PER_UNIT;
7790 :
7791 : ival >>= first_nonzero_byte * BITS_PER_UNIT;
7792 :
7793 : bitsize = sizeof (ival) * BITS_PER_UNIT - clz_hwi (ival);
7794 :
7795 : if (bitsize <= GET_MODE_BITSIZE (QImode))
7796 : new_mode = QImode;
7797 : else if (bitsize <= GET_MODE_BITSIZE (HImode))
7798 : new_mode = HImode;
7799 : else if (bitsize <= GET_MODE_BITSIZE (SImode))
7800 : new_mode = SImode;
7801 : else
7802 : new_mode = DImode;
7803 :
7804 : if (GET_MODE_SIZE (new_mode) >= GET_MODE_SIZE (HImode))
7805 : FAIL;
7806 :
7807 : new_addr = adjust_address (operands[0], new_mode, first_nonzero_byte);
7808 : new_const = gen_int_mode (ival, new_mode);
7809 :
7810 : operands[2] = gen_rtx_AND (new_mode, new_addr, new_const);
7811 : }
7812 : #undef DONE
7813 : #undef FAIL
7814 : static const uint8_t expand_encoding[] = {
7815 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x01,
7816 : 0x02, 0x27, 0x00
7817 : };
7818 : return complete_seq (expand_encoding, operands);
7819 : }
7820 :
7821 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12958 */
7822 : extern rtx_insn *gen_split_291 (rtx_insn *, rtx *);
7823 : rtx_insn *
7824 : gen_split_291 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7825 : {
7826 : if (dump_file)
7827 : fprintf (dump_file, "Splitting with gen_split_291 (i386.md:12958)\n");
7828 : start_sequence ();
7829 : #define FAIL return (end_sequence (), nullptr)
7830 : #define DONE return end_sequence ()
7831 : #line 12974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7832 : operands[3] = GEN_INT (exact_log2 (~INTVAL (operands[2])));
7833 : #undef DONE
7834 : #undef FAIL
7835 : static const uint8_t expand_encoding[] = {
7836 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x12,
7837 : 0x01, 0x00, 0x27, 0x01, 0x01, 0x03, 0x27, 0x00,
7838 : 0x05, 0x02, 0x11
7839 : };
7840 : return complete_seq (expand_encoding, operands);
7841 : }
7842 :
7843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13125 */
7844 : extern rtx_insn *gen_split_298 (rtx_insn *, rtx *);
7845 : rtx_insn *
7846 : gen_split_298 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7847 : {
7848 : if (dump_file)
7849 : fprintf (dump_file, "Splitting with gen_split_298 (i386.md:13125)\n");
7850 : start_sequence ();
7851 : #define FAIL return (end_sequence (), nullptr)
7852 : #define DONE return end_sequence ()
7853 : #line 13142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7854 :
7855 : #undef DONE
7856 : #undef FAIL
7857 : static const uint8_t expand_encoding[] = {
7858 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7859 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7860 : 0x4b, 0x10, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
7861 : 0x11
7862 : };
7863 : return complete_seq (expand_encoding, operands);
7864 : }
7865 :
7866 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13174 */
7867 : extern rtx_insn *gen_split_308 (rtx_insn *, rtx *);
7868 : rtx_insn *
7869 : gen_split_308 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7870 : {
7871 : if (dump_file)
7872 : fprintf (dump_file, "Splitting with gen_split_308 (i386.md:13174)\n");
7873 : start_sequence ();
7874 : #define FAIL return (end_sequence (), nullptr)
7875 : #define DONE return end_sequence ()
7876 : #line 13199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7877 :
7878 : #undef DONE
7879 : #undef FAIL
7880 : static const uint8_t expand_encoding[] = {
7881 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
7882 : 0x81, 0x06, 0x10, 0x01, 0x02, 0x27, 0x08, 0x27,
7883 : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
7884 : 0x01, 0x00, 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06,
7885 : 0x10, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
7886 : 0x01, 0x00, 0x05, 0x02, 0x11
7887 : };
7888 : return complete_seq (expand_encoding, operands);
7889 : }
7890 :
7891 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13203 */
7892 : extern rtx_insn *gen_split_318 (rtx_insn *, rtx *);
7893 : rtx_insn *
7894 : gen_split_318 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7895 : {
7896 : if (dump_file)
7897 : fprintf (dump_file, "Splitting with gen_split_318 (i386.md:13203)\n");
7898 : start_sequence ();
7899 : #define FAIL return (end_sequence (), nullptr)
7900 : #define DONE return end_sequence ()
7901 : #line 13215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7902 : {
7903 : unsigned HOST_WIDE_INT ival = UINTVAL (operands[2]);
7904 : machine_mode mode;
7905 :
7906 : if (ival == GET_MODE_MASK (SImode))
7907 : mode = SImode;
7908 : else if (ival == GET_MODE_MASK (HImode))
7909 : mode = HImode;
7910 : else if (ival == GET_MODE_MASK (QImode))
7911 : mode = QImode;
7912 : else
7913 : gcc_unreachable ();
7914 :
7915 : /* Zero extend to SImode to avoid partial register stalls. */
7916 : if (4 < GET_MODE_SIZE (SImode))
7917 : operands[0] = gen_lowpart (SImode, operands[0]);
7918 :
7919 : emit_insn (gen_extend_insn
7920 : (operands[0], gen_lowpart (mode, operands[1]),
7921 : GET_MODE (operands[0]), mode, 1));
7922 : DONE;
7923 : }
7924 : #undef DONE
7925 : #undef FAIL
7926 : static const uint8_t expand_encoding[] = {
7927 : 0x01, 0x27, 0x00
7928 : };
7929 : return complete_seq (expand_encoding, operands);
7930 : }
7931 :
7932 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13409 */
7933 : extern rtx_insn *gen_split_330 (rtx_insn *, rtx *);
7934 : rtx_insn *
7935 : gen_split_330 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7936 : {
7937 : if (dump_file)
7938 : fprintf (dump_file, "Splitting with gen_split_330 (i386.md:13409)\n");
7939 : start_sequence ();
7940 : #define FAIL return (end_sequence (), nullptr)
7941 : #define DONE return end_sequence ()
7942 : #line 13434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7943 :
7944 : #undef DONE
7945 : #undef FAIL
7946 : static const uint8_t expand_encoding[] = {
7947 : 0x02, 0x1f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
7948 : 0x10, 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00,
7949 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x0f,
7950 : 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01, 0x01, 0x27,
7951 : 0x08, 0x27, 0x08, 0x00, 0x01, 0x00, 0x05, 0x02,
7952 : 0x11
7953 : };
7954 : return complete_seq (expand_encoding, operands);
7955 : }
7956 :
7957 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13453 */
7958 : extern rtx_insn *gen_split_339 (rtx_insn *, rtx *);
7959 : rtx_insn *
7960 : gen_split_339 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7961 : {
7962 : if (dump_file)
7963 : fprintf (dump_file, "Splitting with gen_split_339 (i386.md:13453)\n");
7964 : start_sequence ();
7965 : #define FAIL return (end_sequence (), nullptr)
7966 : #define DONE return end_sequence ()
7967 : #line 13485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7968 :
7969 : #undef DONE
7970 : #undef FAIL
7971 : static const uint8_t expand_encoding[] = {
7972 : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
7973 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
7974 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7975 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
7976 : 0x08, 0x32, 0x10, 0x4b, 0x0f, 0x32, 0x0f, 0x81,
7977 : 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7978 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7979 : };
7980 : return complete_seq (expand_encoding, operands);
7981 : }
7982 :
7983 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13491 */
7984 : extern rtx_insn *gen_split_349 (rtx_insn *, rtx *);
7985 : rtx_insn *
7986 : gen_split_349 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7987 : {
7988 : if (dump_file)
7989 : fprintf (dump_file, "Splitting with gen_split_349 (i386.md:13491)\n");
7990 : start_sequence ();
7991 : #define FAIL return (end_sequence (), nullptr)
7992 : #define DONE return end_sequence ()
7993 : #line 13537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7994 :
7995 : #undef DONE
7996 : #undef FAIL
7997 : static const uint8_t expand_encoding[] = {
7998 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
7999 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8000 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8001 : 0x01, 0x04, 0x02, 0x05, 0x49, 0x0f, 0x32, 0x0f,
8002 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8003 : 0x08, 0x00, 0x01, 0x02, 0x27, 0x00, 0x1f, 0x81,
8004 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8005 : 0x32, 0x11, 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06,
8006 : 0x11, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
8007 : 0x01, 0x02, 0x00
8008 : };
8009 : return complete_seq (expand_encoding, operands);
8010 : }
8011 :
8012 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13543 */
8013 : extern rtx_insn *gen_split_359 (rtx_insn *, rtx *);
8014 : rtx_insn *
8015 : gen_split_359 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8016 : {
8017 : if (dump_file)
8018 : fprintf (dump_file, "Splitting with gen_split_359 (i386.md:13543)\n");
8019 : start_sequence ();
8020 : #define FAIL return (end_sequence (), nullptr)
8021 : #define DONE return end_sequence ()
8022 : #line 13580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8023 :
8024 : #undef DONE
8025 : #undef FAIL
8026 : static const uint8_t expand_encoding[] = {
8027 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
8028 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8029 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8030 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8031 : 0x08, 0x32, 0x11, 0x4a, 0x0f, 0x32, 0x0f, 0x81,
8032 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8033 : 0x00, 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01, 0x02,
8034 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x00, 0x05, 0x02,
8035 : 0x11
8036 : };
8037 : return complete_seq (expand_encoding, operands);
8038 : }
8039 :
8040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13585 */
8041 : extern rtx_insn *gen_split_369 (rtx_insn *, rtx *);
8042 : rtx_insn *
8043 : gen_split_369 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8044 : {
8045 : if (dump_file)
8046 : fprintf (dump_file, "Splitting with gen_split_369 (i386.md:13585)\n");
8047 : start_sequence ();
8048 : #define FAIL return (end_sequence (), nullptr)
8049 : #define DONE return end_sequence ()
8050 : #line 13613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8051 : operands[4] = gen_lowpart (GET_MODE (operands[1]), operands[0]);
8052 : #undef DONE
8053 : #undef FAIL
8054 : static const uint8_t expand_encoding[] = {
8055 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
8056 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8057 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8058 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8059 : 0x08, 0x81, 0x06, 0x11, 0x4b, 0x00, 0x01, 0x04,
8060 : 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x05, 0x02,
8061 : 0x11
8062 : };
8063 : return complete_seq (expand_encoding, operands);
8064 : }
8065 :
8066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13673 */
8067 : extern rtx_insn *gen_split_379 (rtx_insn *, rtx *);
8068 : rtx_insn *
8069 : gen_split_379 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8070 : {
8071 : if (dump_file)
8072 : fprintf (dump_file, "Splitting with gen_split_379 (i386.md:13673)\n");
8073 : start_sequence ();
8074 : #define FAIL return (end_sequence (), nullptr)
8075 : #define DONE return end_sequence ()
8076 : #line 13688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8077 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
8078 : #undef DONE
8079 : #undef FAIL
8080 : static const uint8_t expand_encoding[] = {
8081 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
8082 : 0x11, 0x4c, 0x11, 0x01, 0x01, 0x01, 0x02, 0x05,
8083 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x03,
8084 : 0x49, 0x11, 0x4c, 0x11, 0x01, 0x04, 0x01, 0x05,
8085 : 0x05, 0x02, 0x11
8086 : };
8087 : return complete_seq (expand_encoding, operands);
8088 : }
8089 :
8090 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13851 */
8091 : extern rtx_insn *gen_split_391 (rtx_insn *, rtx *);
8092 : rtx_insn *
8093 : gen_split_391 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8094 : {
8095 : if (dump_file)
8096 : fprintf (dump_file, "Splitting with gen_split_391 (i386.md:13851)\n");
8097 : start_sequence ();
8098 : #define FAIL return (end_sequence (), nullptr)
8099 : #define DONE return end_sequence ()
8100 : #line 13867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8101 : operands[4] = gen_reg_rtx (SImode);
8102 : #undef DONE
8103 : #undef FAIL
8104 : static const uint8_t expand_encoding[] = {
8105 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8106 : 0x11, 0x4c, 0x11, 0x01, 0x02, 0x01, 0x01, 0x05,
8107 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
8108 : 0x4b, 0x11, 0x01, 0x04, 0x01, 0x03, 0x05, 0x02,
8109 : 0x11
8110 : };
8111 : return complete_seq (expand_encoding, operands);
8112 : }
8113 :
8114 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13874 */
8115 : rtx
8116 : gen_iorti3 (const rtx operand0, const rtx operand1, const rtx operand2)
8117 : {
8118 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8119 : start_sequence ();
8120 : {
8121 : #define FAIL return (end_sequence (), nullptr)
8122 : #define DONE return end_sequence ()
8123 : #line 13879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8124 : {
8125 : if (GET_MODE_SIZE (TImode) > UNITS_PER_WORD
8126 : && !x86_64_hilo_general_operand (operands[2], TImode))
8127 : operands[2] = force_reg (TImode, operands[2]);
8128 :
8129 : ix86_expand_binary_operator (IOR, TImode, operands, TARGET_APX_NDD);
8130 : DONE;
8131 : }
8132 : #undef DONE
8133 : #undef FAIL
8134 : }
8135 : static const uint8_t expand_encoding[] = {
8136 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x13, 0x01, 0x01,
8137 : 0x01, 0x02
8138 : };
8139 : return complete_seq (expand_encoding, operands);
8140 : }
8141 :
8142 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14017 */
8143 : extern rtx_insn *gen_split_401 (rtx_insn *, rtx *);
8144 : rtx_insn *
8145 : gen_split_401 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8146 : {
8147 : if (dump_file)
8148 : fprintf (dump_file, "Splitting with gen_split_401 (i386.md:14017)\n");
8149 : start_sequence ();
8150 : #define FAIL return (end_sequence (), nullptr)
8151 : #define DONE return end_sequence ()
8152 : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8153 : operands[3] = GEN_INT (exact_log2 (INTVAL (operands[2])));
8154 : #undef DONE
8155 : #undef FAIL
8156 : static const uint8_t expand_encoding[] = {
8157 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x12,
8158 : 0x01, 0x00, 0x27, 0x01, 0x01, 0x03, 0x4c, 0x12,
8159 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x01, 0x01,
8160 : 0x03, 0x05, 0x02, 0x11
8161 : };
8162 : return complete_seq (expand_encoding, operands);
8163 : }
8164 :
8165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14212 */
8166 : extern rtx_insn *gen_split_406 (rtx_insn *, rtx *);
8167 : rtx_insn *
8168 : gen_split_406 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8169 : {
8170 : if (dump_file)
8171 : fprintf (dump_file, "Splitting with gen_split_406 (i386.md:14212)\n");
8172 : start_sequence ();
8173 : #define FAIL return (end_sequence (), nullptr)
8174 : #define DONE return end_sequence ()
8175 : #line 14220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8176 : operands[3] = gen_reg_rtx (HImode);
8177 : #undef DONE
8178 : #undef FAIL
8179 : static const uint8_t expand_encoding[] = {
8180 : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x10, 0x01, 0x01,
8181 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x01, 0x03, 0x01,
8182 : 0x02
8183 : };
8184 : return complete_seq (expand_encoding, operands);
8185 : }
8186 :
8187 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14212 */
8188 : extern rtx_insn *gen_split_413 (rtx_insn *, rtx *);
8189 : rtx_insn *
8190 : gen_split_413 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8191 : {
8192 : if (dump_file)
8193 : fprintf (dump_file, "Splitting with gen_split_413 (i386.md:14212)\n");
8194 : start_sequence ();
8195 : #define FAIL return (end_sequence (), nullptr)
8196 : #define DONE return end_sequence ()
8197 : #line 14220 "/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, 0x4a, 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:14232 */
8210 : extern rtx_insn *gen_split_423 (rtx_insn *, rtx *);
8211 : rtx_insn *
8212 : gen_split_423 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8213 : {
8214 : if (dump_file)
8215 : fprintf (dump_file, "Splitting with gen_split_423 (i386.md:14232)\n");
8216 : start_sequence ();
8217 : #define FAIL return (end_sequence (), nullptr)
8218 : #define DONE return end_sequence ()
8219 : #line 14240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8220 : operands[3] = gen_reg_rtx (DImode);
8221 : #undef DONE
8222 : #undef FAIL
8223 : static const uint8_t expand_encoding[] = {
8224 : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x12, 0x01, 0x01,
8225 : 0x1f, 0x01, 0x00, 0x4b, 0x12, 0x01, 0x03, 0x01,
8226 : 0x02
8227 : };
8228 : return complete_seq (expand_encoding, operands);
8229 : }
8230 :
8231 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14370 */
8232 : extern rtx_insn *gen_split_433 (rtx_insn *, rtx *);
8233 : rtx_insn *
8234 : gen_split_433 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8235 : {
8236 : if (dump_file)
8237 : fprintf (dump_file, "Splitting with gen_split_433 (i386.md:14370)\n");
8238 : start_sequence ();
8239 : #define FAIL return (end_sequence (), nullptr)
8240 : #define DONE return end_sequence ()
8241 : #line 14385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8242 : {
8243 : operands[0] = gen_lowpart (QImode, operands[0]);
8244 : operands[1] = gen_lowpart (QImode, operands[1]);
8245 : operands[2] = gen_int_mode (INTVAL (operands[2]), QImode);
8246 : }
8247 : #undef DONE
8248 : #undef FAIL
8249 : static const uint8_t expand_encoding[] = {
8250 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
8251 : 0x00, 0x4b, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05,
8252 : 0x02, 0x11
8253 : };
8254 : return complete_seq (expand_encoding, operands);
8255 : }
8256 :
8257 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14414 */
8258 : extern rtx_insn *gen_peephole2_149 (rtx_insn *, rtx *);
8259 : rtx_insn *
8260 : gen_peephole2_149 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8261 : {
8262 : if (dump_file)
8263 : fprintf (dump_file, "Splitting with gen_peephole2_149 (i386.md:14414)\n");
8264 : start_sequence ();
8265 : static const uint8_t expand_encoding[] = {
8266 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8267 : };
8268 : return complete_seq (expand_encoding, operands);
8269 : }
8270 :
8271 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14426 */
8272 : extern rtx_insn *gen_peephole2_158 (rtx_insn *, rtx *);
8273 : rtx_insn *
8274 : gen_peephole2_158 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8275 : {
8276 : if (dump_file)
8277 : fprintf (dump_file, "Splitting with gen_peephole2_158 (i386.md:14426)\n");
8278 : start_sequence ();
8279 : static const uint8_t expand_encoding[] = {
8280 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
8281 : 0x00, 0x05, 0x02, 0x11
8282 : };
8283 : return complete_seq (expand_encoding, operands);
8284 : }
8285 :
8286 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14438 */
8287 : extern rtx_insn *gen_split_437 (rtx_insn *, rtx *);
8288 : rtx_insn *
8289 : gen_split_437 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8290 : {
8291 : if (dump_file)
8292 : fprintf (dump_file, "Splitting with gen_split_437 (i386.md:14438)\n");
8293 : start_sequence ();
8294 : #define FAIL return (end_sequence (), nullptr)
8295 : #define DONE return end_sequence ()
8296 : #line 14449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8297 : {
8298 : split_double_concat (DImode, operands[0], operands[3],
8299 : gen_lowpart (SImode, operands[1]));
8300 : DONE;
8301 : }
8302 : #undef DONE
8303 : #undef FAIL
8304 : static const uint8_t expand_encoding[] = {
8305 : 0x01, 0x27, 0x00
8306 : };
8307 : return complete_seq (expand_encoding, operands);
8308 : }
8309 :
8310 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14455 */
8311 : extern rtx_insn *gen_split_447 (rtx_insn *, rtx *);
8312 : rtx_insn *
8313 : gen_split_447 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8314 : {
8315 : if (dump_file)
8316 : fprintf (dump_file, "Splitting with gen_split_447 (i386.md:14455)\n");
8317 : start_sequence ();
8318 : #define FAIL return (end_sequence (), nullptr)
8319 : #define DONE return end_sequence ()
8320 : #line 14466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8321 : {
8322 : split_double_concat (TImode, operands[0], operands[1],
8323 : gen_lowpart (DImode, operands[2]));
8324 : DONE;
8325 : }
8326 : #undef DONE
8327 : #undef FAIL
8328 : static const uint8_t expand_encoding[] = {
8329 : 0x01, 0x27, 0x00
8330 : };
8331 : return complete_seq (expand_encoding, operands);
8332 : }
8333 :
8334 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14472 */
8335 : extern rtx_insn *gen_split_457 (rtx_insn *, rtx *);
8336 : rtx_insn *
8337 : gen_split_457 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8338 : {
8339 : if (dump_file)
8340 : fprintf (dump_file, "Splitting with gen_split_457 (i386.md:14472)\n");
8341 : start_sequence ();
8342 : #define FAIL return (end_sequence (), nullptr)
8343 : #define DONE return end_sequence ()
8344 : #line 14485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8345 : {
8346 : if (SSE_REG_P (operands[0]))
8347 : {
8348 : rtx tmp = gen_rtx_REG (V2DImode, REGNO (operands[0]));
8349 : emit_insn (gen_vec_concatv2di (tmp, operands[3], operands[1]));
8350 : }
8351 : else
8352 : split_double_concat (TImode, operands[0], operands[3], operands[1]);
8353 : DONE;
8354 : }
8355 : #undef DONE
8356 : #undef FAIL
8357 : static const uint8_t expand_encoding[] = {
8358 : 0x01, 0x27, 0x00
8359 : };
8360 : return complete_seq (expand_encoding, operands);
8361 : }
8362 :
8363 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14497 */
8364 : extern rtx_insn *gen_split_467 (rtx_insn *, rtx *);
8365 : rtx_insn *
8366 : gen_split_467 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8367 : {
8368 : if (dump_file)
8369 : fprintf (dump_file, "Splitting with gen_split_467 (i386.md:14497)\n");
8370 : start_sequence ();
8371 : #define FAIL return (end_sequence (), nullptr)
8372 : #define DONE return end_sequence ()
8373 : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8374 : {
8375 : split_double_concat (TImode, operands[0], operands[1], operands[2]);
8376 : DONE;
8377 : }
8378 : #undef DONE
8379 : #undef FAIL
8380 : static const uint8_t expand_encoding[] = {
8381 : 0x01, 0x27, 0x00
8382 : };
8383 : return complete_seq (expand_encoding, operands);
8384 : }
8385 :
8386 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14516 */
8387 : extern rtx_insn *gen_split_477 (rtx_insn *, rtx *);
8388 : rtx_insn *
8389 : gen_split_477 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8390 : {
8391 : if (dump_file)
8392 : fprintf (dump_file, "Splitting with gen_split_477 (i386.md:14516)\n");
8393 : start_sequence ();
8394 : #define FAIL return (end_sequence (), nullptr)
8395 : #define DONE return end_sequence ()
8396 : #line 14538 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8397 : {
8398 : rtx op3 = simplify_subreg (DImode, operands[3], TImode, 0);
8399 : split_double_concat (TImode, operands[0], op3,
8400 : gen_lowpart (DImode, operands[1]));
8401 : DONE;
8402 : }
8403 : #undef DONE
8404 : #undef FAIL
8405 : static const uint8_t expand_encoding[] = {
8406 : 0x01, 0x27, 0x00
8407 : };
8408 : return complete_seq (expand_encoding, operands);
8409 : }
8410 :
8411 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14546 */
8412 : extern rtx_insn *gen_split_487 (rtx_insn *, rtx *);
8413 : rtx_insn *
8414 : gen_split_487 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8415 : {
8416 : if (dump_file)
8417 : fprintf (dump_file, "Splitting with gen_split_487 (i386.md:14546)\n");
8418 : start_sequence ();
8419 : #define FAIL return (end_sequence (), nullptr)
8420 : #define DONE return end_sequence ()
8421 : #line 14570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8422 : {
8423 : rtx op3 = simplify_subreg (DImode, operands[3], TImode, 0);
8424 : split_double_concat (TImode, operands[0], op3, operands[1]);
8425 : DONE;
8426 : }
8427 : #undef DONE
8428 : #undef FAIL
8429 : static const uint8_t expand_encoding[] = {
8430 : 0x01, 0x27, 0x00
8431 : };
8432 : return complete_seq (expand_encoding, operands);
8433 : }
8434 :
8435 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14609 */
8436 : rtx
8437 : gen_neghi2 (const rtx operand0, const rtx operand1)
8438 : {
8439 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8440 : start_sequence ();
8441 : {
8442 : #define FAIL return (end_sequence (), nullptr)
8443 : #define DONE return end_sequence ()
8444 : #line 14613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8445 : {
8446 : ix86_expand_unary_operator (NEG, HImode, operands, TARGET_APX_NDD);
8447 : DONE;
8448 : }
8449 : #undef DONE
8450 : #undef FAIL
8451 : }
8452 : static const uint8_t expand_encoding[] = {
8453 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x10, 0x01, 0x01
8454 : };
8455 : return complete_seq (expand_encoding, operands);
8456 : }
8457 :
8458 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14776 */
8459 : extern rtx_insn *gen_split_498 (rtx_insn *, rtx *);
8460 : rtx_insn *
8461 : gen_split_498 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8462 : {
8463 : if (dump_file)
8464 : fprintf (dump_file, "Splitting with gen_split_498 (i386.md:14776)\n");
8465 : start_sequence ();
8466 : #define FAIL return (end_sequence (), nullptr)
8467 : #define DONE return end_sequence ()
8468 : #line 14791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8469 :
8470 : #undef DONE
8471 : #undef FAIL
8472 : static const uint8_t expand_encoding[] = {
8473 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
8474 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
8475 : 0x3d, 0x0f, 0x01, 0x00, 0x05, 0x02, 0x11
8476 : };
8477 : return complete_seq (expand_encoding, operands);
8478 : }
8479 :
8480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14866 */
8481 : extern rtx_insn *gen_split_501 (rtx_insn *, rtx *);
8482 : rtx_insn *
8483 : gen_split_501 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8484 : {
8485 : if (dump_file)
8486 : fprintf (dump_file, "Splitting with gen_split_501 (i386.md:14866)\n");
8487 : start_sequence ();
8488 : #define FAIL return (end_sequence (), nullptr)
8489 : #define DONE return end_sequence ()
8490 : #line 14896 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8491 :
8492 : #undef DONE
8493 : #undef FAIL
8494 : static const uint8_t expand_encoding[] = {
8495 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
8496 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8497 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8498 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8499 : 0x08, 0x32, 0x11, 0x3d, 0x0f, 0x32, 0x0f, 0x81,
8500 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8501 : 0x00, 0x00, 0x05, 0x02, 0x11
8502 : };
8503 : return complete_seq (expand_encoding, operands);
8504 : }
8505 :
8506 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14958 */
8507 : rtx
8508 : gen_absqi2 (const rtx operand0, const rtx operand1)
8509 : {
8510 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8511 : start_sequence ();
8512 : {
8513 : #define FAIL return (end_sequence (), nullptr)
8514 : #define DONE return end_sequence ()
8515 : #line 14966 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8516 : {
8517 : if (TARGET_EXPAND_ABS)
8518 : {
8519 : machine_mode mode = QImode;
8520 : operands[1] = force_reg (mode, operands[1]);
8521 :
8522 : /* Generate rtx abs using:
8523 : abs (x) = (((signed) x >> (W-1)) ^ x) - ((signed) x >> (W-1)) */
8524 :
8525 : rtx shift_amount = gen_int_mode (GET_MODE_PRECISION (mode) - 1, QImode);
8526 : rtx shift_dst = expand_simple_binop (mode, ASHIFTRT, operands[1],
8527 : shift_amount, NULL_RTX,
8528 : 0, OPTAB_DIRECT);
8529 : rtx xor_dst = expand_simple_binop (mode, XOR, shift_dst, operands[1],
8530 : operands[0], 0, OPTAB_DIRECT);
8531 : rtx minus_dst = expand_simple_binop (mode, MINUS, xor_dst, shift_dst,
8532 : operands[0], 0, OPTAB_DIRECT);
8533 : if (!rtx_equal_p (minus_dst, operands[0]))
8534 : emit_move_insn (operands[0], minus_dst);
8535 : DONE;
8536 : }
8537 : }
8538 : #undef DONE
8539 : #undef FAIL
8540 : }
8541 : static const uint8_t expand_encoding[] = {
8542 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x7b,
8543 : 0x0f, 0x01, 0x01, 0x05, 0x02, 0x11
8544 : };
8545 : return complete_seq (expand_encoding, operands);
8546 : }
8547 :
8548 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15076 */
8549 : extern rtx_insn *gen_split_508 (rtx_insn *, rtx *);
8550 : rtx_insn *
8551 : gen_split_508 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8552 : {
8553 : if (dump_file)
8554 : fprintf (dump_file, "Splitting with gen_split_508 (i386.md:15076)\n");
8555 : start_sequence ();
8556 : #define FAIL return (end_sequence (), nullptr)
8557 : #define DONE return end_sequence ()
8558 : #line 15098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8559 : {
8560 : operands[1] = force_reg (HImode, operands[1]);
8561 : operands[2] = gen_reg_rtx (HImode);
8562 : }
8563 : #undef DONE
8564 : #undef FAIL
8565 : static const uint8_t expand_encoding[] = {
8566 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11,
8567 : 0x3a, 0x04, 0x3d, 0x10, 0x01, 0x01, 0x27, 0x00,
8568 : 0x1f, 0x01, 0x02, 0x3d, 0x10, 0x01, 0x01, 0x1f,
8569 : 0x01, 0x00, 0x39, 0x10, 0x5e, 0x00, 0x30, 0x04,
8570 : 0x11, 0x27, 0x00, 0x01, 0x02, 0x01, 0x01
8571 : };
8572 : return complete_seq (expand_encoding, operands);
8573 : }
8574 :
8575 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15137 */
8576 : extern rtx_insn *gen_split_516 (rtx_insn *, rtx *);
8577 : rtx_insn *
8578 : gen_split_516 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8579 : {
8580 : if (dump_file)
8581 : fprintf (dump_file, "Splitting with gen_split_516 (i386.md:15137)\n");
8582 : start_sequence ();
8583 : #define FAIL return (end_sequence (), nullptr)
8584 : #define DONE return end_sequence ()
8585 : #line 15147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8586 : {
8587 : if (TARGET_AVX)
8588 : {
8589 : if (MEM_P (operands[1]))
8590 : std::swap (operands[1], operands[2]);
8591 : }
8592 : else
8593 : {
8594 : if (operands_match_p (operands[0], operands[2]))
8595 : std::swap (operands[1], operands[2]);
8596 : }
8597 : }
8598 : #undef DONE
8599 : #undef FAIL
8600 : static const uint8_t expand_encoding[] = {
8601 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x30, 0x01, 0x01,
8602 : 0x01, 0x02
8603 : };
8604 : return complete_seq (expand_encoding, operands);
8605 : }
8606 :
8607 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15214 */
8608 : extern rtx_insn *gen_split_524 (rtx_insn *, rtx *);
8609 : rtx_insn *
8610 : gen_split_524 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8611 : {
8612 : if (dump_file)
8613 : fprintf (dump_file, "Splitting with gen_split_524 (i386.md:15214)\n");
8614 : start_sequence ();
8615 : #define FAIL return (end_sequence (), nullptr)
8616 : #define DONE return end_sequence ()
8617 : #line 15220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8618 : ix86_split_fp_absneg_operator (ABS, SFmode, operands); DONE;
8619 : #undef DONE
8620 : #undef FAIL
8621 : static const uint8_t expand_encoding[] = {
8622 : 0x01, 0x27, 0x00
8623 : };
8624 : return complete_seq (expand_encoding, operands);
8625 : }
8626 :
8627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15259 */
8628 : extern rtx_insn *gen_split_534 (rtx_insn *, rtx *);
8629 : rtx_insn *
8630 : gen_split_534 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8631 : {
8632 : if (dump_file)
8633 : fprintf (dump_file, "Splitting with gen_split_534 (i386.md:15259)\n");
8634 : start_sequence ();
8635 : #define FAIL return (end_sequence (), nullptr)
8636 : #define DONE return end_sequence ()
8637 : #line 15269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8638 : {
8639 : machine_mode mode = DFmode;
8640 : machine_mode vmode = V2DFmode;
8641 :
8642 : operands[0] = lowpart_subreg (vmode, operands[0], mode);
8643 : operands[1] = lowpart_subreg (vmode, operands[1], mode);
8644 :
8645 : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
8646 : std::swap (operands[1], operands[2]);
8647 : }
8648 : #undef DONE
8649 : #undef FAIL
8650 : static const uint8_t expand_encoding[] = {
8651 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6c, 0x01, 0x01,
8652 : 0x01, 0x02
8653 : };
8654 : return complete_seq (expand_encoding, operands);
8655 : }
8656 :
8657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15333 */
8658 : rtx
8659 : gen_copysigndf3 (const rtx operand0, const rtx operand1, const rtx operand2)
8660 : {
8661 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8662 : start_sequence ();
8663 : {
8664 : #define FAIL _Pragma ("GCC error \"copysigndf3 cannot FAIL\"") (void)0
8665 : #define DONE return end_sequence ()
8666 : #line 15340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8667 : ix86_expand_copysign (operands); DONE;
8668 : #undef DONE
8669 : #undef FAIL
8670 : }
8671 : static const uint8_t expand_encoding[] = {
8672 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
8673 : };
8674 : return complete_seq (expand_encoding, operands);
8675 : }
8676 :
8677 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15358 */
8678 : rtx
8679 : gen_one_cmpldi2 (const rtx operand0, const rtx operand1)
8680 : {
8681 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8682 : start_sequence ();
8683 : {
8684 : #define FAIL return (end_sequence (), nullptr)
8685 : #define DONE return end_sequence ()
8686 : #line 15362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8687 : {
8688 : ix86_expand_unary_operator (NOT, DImode, operands, TARGET_APX_NDD);
8689 : DONE;
8690 : }
8691 : #undef DONE
8692 : #undef FAIL
8693 : }
8694 : static const uint8_t expand_encoding[] = {
8695 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x12, 0x01, 0x01
8696 : };
8697 : return complete_seq (expand_encoding, operands);
8698 : }
8699 :
8700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15506 */
8701 : extern rtx_insn *gen_split_554 (rtx_insn *, rtx *);
8702 : rtx_insn *
8703 : gen_split_554 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8704 : {
8705 : if (dump_file)
8706 : fprintf (dump_file, "Splitting with gen_split_554 (i386.md:15506)\n");
8707 : start_sequence ();
8708 : static const uint8_t expand_encoding[] = {
8709 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
8710 : 0x02, 0x4b, 0x11, 0x01, 0x03, 0x27, 0x81, 0xff,
8711 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f,
8712 : 0x27, 0x00, 0x1f, 0x01, 0x01, 0x6f, 0x12, 0x4b,
8713 : 0x11, 0x01, 0x03, 0x27, 0x81, 0xff, 0xff, 0xff,
8714 : 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f
8715 : };
8716 : return complete_seq (expand_encoding, operands);
8717 : }
8718 :
8719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15581 */
8720 : extern rtx_insn *gen_split_559 (rtx_insn *, rtx *);
8721 : rtx_insn *
8722 : gen_split_559 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8723 : {
8724 : if (dump_file)
8725 : fprintf (dump_file, "Splitting with gen_split_559 (i386.md:15581)\n");
8726 : start_sequence ();
8727 : #define FAIL return (end_sequence (), nullptr)
8728 : #define DONE return end_sequence ()
8729 : #line 15609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8730 : {
8731 : if ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) != 0)
8732 : {
8733 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
8734 : operands[2] = gen_lowpart (QImode, operands[2]);
8735 : emit_insn (gen_ashlti3_doubleword (operands[0], operands[1],
8736 : operands[2]));
8737 : DONE;
8738 : }
8739 :
8740 : split_double_mode (TImode, &operands[0], 2, &operands[4], &operands[6]);
8741 :
8742 : operands[8] = GEN_INT (8 * BITS_PER_UNIT - 1);
8743 : operands[9] = GEN_INT (8 * BITS_PER_UNIT);
8744 :
8745 : if ((INTVAL (operands[3]) & ((8 * BITS_PER_UNIT) - 1))
8746 : != ((8 * BITS_PER_UNIT) - 1))
8747 : {
8748 : rtx xops[3];
8749 : xops[0] = gen_reg_rtx (GET_MODE (operands[2]));
8750 : xops[1] = operands[2];
8751 : xops[2] = GEN_INT (INTVAL (operands[3])
8752 : & ((8 * BITS_PER_UNIT) - 1));
8753 : ix86_expand_binary_operator (AND, GET_MODE (operands[2]), xops);
8754 : operands[2] = xops[0];
8755 : }
8756 :
8757 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
8758 : operands[2] = gen_lowpart (QImode, operands[2]);
8759 :
8760 : if (!rtx_equal_p (operands[6], operands[7]))
8761 : emit_move_insn (operands[6], operands[7]);
8762 : }
8763 : #undef DONE
8764 : #undef FAIL
8765 : static const uint8_t expand_encoding[] = {
8766 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x4a,
8767 : 0x12, 0x4d, 0x12, 0x01, 0x06, 0x49, 0x0f, 0x01,
8768 : 0x02, 0x01, 0x08, 0x32, 0x12, 0x50, 0x13, 0x6f,
8769 : 0x13, 0x01, 0x05, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8770 : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8771 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4d,
8772 : 0x12, 0x01, 0x05, 0x01, 0x02, 0x05, 0x02, 0x11
8773 : };
8774 : return complete_seq (expand_encoding, operands);
8775 : }
8776 :
8777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16216 */
8778 : extern rtx_insn *gen_split_575 (rtx_insn *, rtx *);
8779 : rtx_insn *
8780 : gen_split_575 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8781 : {
8782 : if (dump_file)
8783 : fprintf (dump_file, "Splitting with gen_split_575 (i386.md:16216)\n");
8784 : start_sequence ();
8785 : static const uint8_t expand_encoding[] = {
8786 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
8787 : 0x11, 0x4d, 0x11, 0x01, 0x01, 0x49, 0x0f, 0x01,
8788 : 0x03, 0x27, 0x1f, 0x32, 0x11, 0x50, 0x12, 0x6f,
8789 : 0x12, 0x01, 0x02, 0x3c, 0x0f, 0x27, 0x20, 0x49,
8790 : 0x0f, 0x01, 0x03, 0x27, 0x1f, 0x00, 0x05, 0x02,
8791 : 0x11
8792 : };
8793 : return complete_seq (expand_encoding, operands);
8794 : }
8795 :
8796 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16361 */
8797 : extern rtx_insn *gen_split_577 (rtx_insn *, rtx *);
8798 : rtx_insn *
8799 : gen_split_577 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8800 : {
8801 : if (dump_file)
8802 : fprintf (dump_file, "Splitting with gen_split_577 (i386.md:16361)\n");
8803 : start_sequence ();
8804 : #define FAIL return (end_sequence (), nullptr)
8805 : #define DONE return end_sequence ()
8806 : #line 16368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8807 : operands[2] = gen_lowpart (DImode, operands[2]);
8808 : #undef DONE
8809 : #undef FAIL
8810 : static const uint8_t expand_encoding[] = {
8811 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x12, 0x01, 0x01,
8812 : 0x01, 0x02
8813 : };
8814 : return complete_seq (expand_encoding, operands);
8815 : }
8816 :
8817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16665 */
8818 : extern rtx_insn *gen_split_583 (rtx_insn *, rtx *);
8819 : rtx_insn *
8820 : gen_split_583 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8821 : {
8822 : if (dump_file)
8823 : fprintf (dump_file, "Splitting with gen_split_583 (i386.md:16665)\n");
8824 : start_sequence ();
8825 : #define FAIL return (end_sequence (), nullptr)
8826 : #define DONE return end_sequence ()
8827 : #line 16674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8828 : {
8829 : if (QImode != SImode)
8830 : {
8831 : operands[0] = gen_lowpart (SImode, operands[0]);
8832 : operands[1] = gen_lowpart (SImode, operands[1]);
8833 : }
8834 : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
8835 : }
8836 : #undef DONE
8837 : #undef FAIL
8838 : static const uint8_t expand_encoding[] = {
8839 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x11, 0x01, 0x01,
8840 : 0x01, 0x02
8841 : };
8842 : return complete_seq (expand_encoding, operands);
8843 : }
8844 :
8845 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16881 */
8846 : extern rtx_insn *gen_split_593 (rtx_insn *, rtx *);
8847 : rtx_insn *
8848 : gen_split_593 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8849 : {
8850 : if (dump_file)
8851 : fprintf (dump_file, "Splitting with gen_split_593 (i386.md:16881)\n");
8852 : start_sequence ();
8853 : #define FAIL return (end_sequence (), nullptr)
8854 : #define DONE return end_sequence ()
8855 : #line 16928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8856 :
8857 : #undef DONE
8858 : #undef FAIL
8859 : static const uint8_t expand_encoding[] = {
8860 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
8861 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8862 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8863 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8864 : 0x08, 0x32, 0x11, 0x4d, 0x0f, 0x32, 0x0f, 0x81,
8865 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8866 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
8867 : };
8868 : return complete_seq (expand_encoding, operands);
8869 : }
8870 :
8871 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16958 */
8872 : extern rtx_insn *gen_split_596 (rtx_insn *, rtx *);
8873 : rtx_insn *
8874 : gen_split_596 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8875 : {
8876 : if (dump_file)
8877 : fprintf (dump_file, "Splitting with gen_split_596 (i386.md:16958)\n");
8878 : start_sequence ();
8879 : #define FAIL return (end_sequence (), nullptr)
8880 : #define DONE return end_sequence ()
8881 : #line 16986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8882 : {
8883 : if ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) != 0)
8884 : {
8885 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
8886 : operands[2] = gen_lowpart (QImode, operands[2]);
8887 : emit_insn (gen_ashrdi3_doubleword (operands[0], operands[1],
8888 : operands[2]));
8889 : DONE;
8890 : }
8891 :
8892 : split_double_mode (DImode, &operands[0], 2, &operands[4], &operands[6]);
8893 :
8894 : operands[8] = GEN_INT (4 * BITS_PER_UNIT - 1);
8895 : operands[9] = GEN_INT (4 * BITS_PER_UNIT);
8896 :
8897 : if ((INTVAL (operands[3]) & ((4 * BITS_PER_UNIT) - 1))
8898 : != ((4 * BITS_PER_UNIT) - 1))
8899 : {
8900 : rtx xops[3];
8901 : xops[0] = gen_reg_rtx (GET_MODE (operands[2]));
8902 : xops[1] = operands[2];
8903 : xops[2] = GEN_INT (INTVAL (operands[3])
8904 : & ((4 * BITS_PER_UNIT) - 1));
8905 : ix86_expand_binary_operator (AND, GET_MODE (operands[2]), xops);
8906 : operands[2] = xops[0];
8907 : }
8908 :
8909 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
8910 : operands[2] = gen_lowpart (QImode, operands[2]);
8911 :
8912 : if (!rtx_equal_p (operands[4], operands[5]))
8913 : emit_move_insn (operands[4], operands[5]);
8914 : }
8915 : #undef DONE
8916 : #undef FAIL
8917 : static const uint8_t expand_encoding[] = {
8918 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4a,
8919 : 0x11, 0x50, 0x11, 0x01, 0x04, 0x49, 0x0f, 0x01,
8920 : 0x02, 0x01, 0x08, 0x32, 0x11, 0x4d, 0x12, 0x6f,
8921 : 0x12, 0x01, 0x07, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8922 : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8923 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x4f,
8924 : 0x11, 0x01, 0x07, 0x01, 0x02, 0x05, 0x02, 0x11
8925 : };
8926 : return complete_seq (expand_encoding, operands);
8927 : }
8928 :
8929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17116 */
8930 : extern rtx_insn *gen_split_607 (rtx_insn *, rtx *);
8931 : rtx_insn *
8932 : gen_split_607 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8933 : {
8934 : if (dump_file)
8935 : fprintf (dump_file, "Splitting with gen_split_607 (i386.md:17116)\n");
8936 : start_sequence ();
8937 : #define FAIL return (end_sequence (), nullptr)
8938 : #define DONE return end_sequence ()
8939 : #line 17129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8940 : {
8941 : split_double_mode (DImode, &operands[1], 1, &operands[1], &operands[3]);
8942 : operands[4] = GEN_INT ((4 * BITS_PER_UNIT) - INTVAL (operands[2]));
8943 : if (!rtx_equal_p (operands[0], operands[1]))
8944 : emit_move_insn (operands[0], operands[1]);
8945 : }
8946 : #undef DONE
8947 : #undef FAIL
8948 : static const uint8_t expand_encoding[] = {
8949 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x50, 0x11,
8950 : 0x01, 0x00, 0x01, 0x02, 0x32, 0x11, 0x4d, 0x12,
8951 : 0x6f, 0x12, 0x01, 0x03, 0x01, 0x04, 0x00
8952 : };
8953 : return complete_seq (expand_encoding, operands);
8954 : }
8955 :
8956 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17293 */
8957 : extern rtx_insn *gen_split_616 (rtx_insn *, rtx *);
8958 : rtx_insn *
8959 : gen_split_616 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8960 : {
8961 : if (dump_file)
8962 : fprintf (dump_file, "Splitting with gen_split_616 (i386.md:17293)\n");
8963 : start_sequence ();
8964 : #define FAIL return (end_sequence (), nullptr)
8965 : #define DONE return end_sequence ()
8966 : #line 17307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8967 : {
8968 : if (rtx_equal_p (operands[4], operands[0]))
8969 : {
8970 : operands[1] = force_reg (DImode, operands[1]);
8971 : emit_insn (gen_x86_64_shrd_1 (operands[0], operands[1], operands[2], operands[3]));
8972 : }
8973 : else if (rtx_equal_p (operands[1], operands[0]))
8974 : {
8975 : operands[4] = force_reg (DImode, operands[4]);
8976 : emit_insn (gen_x86_64_shld_1 (operands[0], operands[4], operands[3], operands[2]));
8977 : }
8978 : else if (TARGET_APX_NDD)
8979 : {
8980 : rtx tmp = gen_reg_rtx (DImode);
8981 : if (MEM_P (operands[4]))
8982 : {
8983 : operands[1] = force_reg (DImode, operands[1]);
8984 : emit_insn (gen_x86_64_shrd_ndd_1 (tmp, operands[4], operands[1],
8985 : operands[2], operands[3]));
8986 : }
8987 : else if (MEM_P (operands[1]))
8988 : emit_insn (gen_x86_64_shld_ndd_1 (tmp, operands[1], operands[4],
8989 : operands[3], operands[2]));
8990 : else
8991 : emit_insn (gen_x86_64_shrd_ndd_1 (tmp, operands[4], operands[1],
8992 : operands[2], operands[3]));
8993 : emit_move_insn (operands[0], tmp);
8994 : }
8995 : else
8996 : {
8997 : operands[1] = force_reg (DImode, operands[1]);
8998 : rtx tmp = gen_reg_rtx (DImode);
8999 : emit_move_insn (tmp, operands[4]);
9000 : emit_insn (gen_x86_64_shrd_1 (tmp, operands[1], operands[2], operands[3]));
9001 : emit_move_insn (operands[0], tmp);
9002 : }
9003 : DONE;
9004 : }
9005 : #undef DONE
9006 : #undef FAIL
9007 : static const uint8_t expand_encoding[] = {
9008 : 0x01, 0x27, 0x00
9009 : };
9010 : return complete_seq (expand_encoding, operands);
9011 : }
9012 :
9013 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17815 */
9014 : extern rtx_insn *gen_split_630 (rtx_insn *, rtx *);
9015 : rtx_insn *
9016 : gen_split_630 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9017 : {
9018 : if (dump_file)
9019 : fprintf (dump_file, "Splitting with gen_split_630 (i386.md:17815)\n");
9020 : start_sequence ();
9021 : #define FAIL return (end_sequence (), nullptr)
9022 : #define DONE return end_sequence ()
9023 : #line 17823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9024 : operands[2] = gen_lowpart (DImode, operands[2]);
9025 : #undef DONE
9026 : #undef FAIL
9027 : static const uint8_t expand_encoding[] = {
9028 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x12, 0x01, 0x01,
9029 : 0x01, 0x02
9030 : };
9031 : return complete_seq (expand_encoding, operands);
9032 : }
9033 :
9034 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18163 */
9035 : extern rtx_insn *gen_split_640 (rtx_insn *, rtx *);
9036 : rtx_insn *
9037 : gen_split_640 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9038 : {
9039 : if (dump_file)
9040 : fprintf (dump_file, "Splitting with gen_split_640 (i386.md:18163)\n");
9041 : start_sequence ();
9042 : #define FAIL return (end_sequence (), nullptr)
9043 : #define DONE return end_sequence ()
9044 : #line 18202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9045 :
9046 : #undef DONE
9047 : #undef FAIL
9048 : static const uint8_t expand_encoding[] = {
9049 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
9050 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
9051 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
9052 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
9053 : 0x08, 0x32, 0x11, 0x50, 0x0f, 0x32, 0x0f, 0x81,
9054 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
9055 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
9056 : };
9057 : return complete_seq (expand_encoding, operands);
9058 : }
9059 :
9060 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18240 */
9061 : extern rtx_insn *gen_split_650 (rtx_insn *, rtx *);
9062 : rtx_insn *
9063 : gen_split_650 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9064 : {
9065 : if (dump_file)
9066 : fprintf (dump_file, "Splitting with gen_split_650 (i386.md:18240)\n");
9067 : start_sequence ();
9068 : #define FAIL return (end_sequence (), nullptr)
9069 : #define DONE return end_sequence ()
9070 : #line 18259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9071 :
9072 : #undef DONE
9073 : #undef FAIL
9074 : static const uint8_t expand_encoding[] = {
9075 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
9076 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9077 : };
9078 : return complete_seq (expand_encoding, operands);
9079 : }
9080 :
9081 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18262 */
9082 : extern rtx_insn *gen_split_660 (rtx_insn *, rtx *);
9083 : rtx_insn *
9084 : gen_split_660 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9085 : {
9086 : if (dump_file)
9087 : fprintf (dump_file, "Splitting with gen_split_660 (i386.md:18262)\n");
9088 : start_sequence ();
9089 : #define FAIL return (end_sequence (), nullptr)
9090 : #define DONE return end_sequence ()
9091 : #line 18281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9092 : {
9093 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9094 : operands[2] = gen_lowpart (QImode, operands[2]);
9095 : }
9096 : #undef DONE
9097 : #undef FAIL
9098 : static const uint8_t expand_encoding[] = {
9099 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9100 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9101 : };
9102 : return complete_seq (expand_encoding, operands);
9103 : }
9104 :
9105 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18342 */
9106 : extern rtx_insn *gen_split_674 (rtx_insn *, rtx *);
9107 : rtx_insn *
9108 : gen_split_674 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9109 : {
9110 : if (dump_file)
9111 : fprintf (dump_file, "Splitting with gen_split_674 (i386.md:18342)\n");
9112 : start_sequence ();
9113 : #define FAIL return (end_sequence (), nullptr)
9114 : #define DONE return end_sequence ()
9115 : #line 18362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9116 : {
9117 : HOST_WIDE_INT cnt = INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1);
9118 :
9119 : operands[4] = gen_reg_rtx (QImode);
9120 :
9121 : rtx (*insn)(rtx, rtx) = (cnt == 0) ? gen_negqi2 : gen_one_cmplqi2;
9122 : emit_insn (insn (operands[4], operands[2]));
9123 : }
9124 : #undef DONE
9125 : #undef FAIL
9126 : static const uint8_t expand_encoding[] = {
9127 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
9128 : 0x11, 0x01, 0x01, 0x01, 0x04, 0x05, 0x02, 0x11
9129 : };
9130 : return complete_seq (expand_encoding, operands);
9131 : }
9132 :
9133 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18342 */
9134 : extern rtx_insn *gen_split_678 (rtx_insn *, rtx *);
9135 : rtx_insn *
9136 : gen_split_678 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9137 : {
9138 : if (dump_file)
9139 : fprintf (dump_file, "Splitting with gen_split_678 (i386.md:18342)\n");
9140 : start_sequence ();
9141 : #define FAIL return (end_sequence (), nullptr)
9142 : #define DONE return end_sequence ()
9143 : #line 18362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9144 : {
9145 : HOST_WIDE_INT cnt = INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1);
9146 :
9147 : operands[4] = gen_reg_rtx (QImode);
9148 :
9149 : rtx (*insn)(rtx, rtx) = (cnt == 0) ? gen_negqi2 : gen_one_cmplqi2;
9150 : emit_insn (insn (operands[4], operands[2]));
9151 : }
9152 : #undef DONE
9153 : #undef FAIL
9154 : static const uint8_t expand_encoding[] = {
9155 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9156 : 0x12, 0x01, 0x01, 0x01, 0x04, 0x05, 0x02, 0x11
9157 : };
9158 : return complete_seq (expand_encoding, operands);
9159 : }
9160 :
9161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18513 */
9162 : rtx
9163 : gen_rotrhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
9164 : {
9165 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9166 : start_sequence ();
9167 : {
9168 : #define FAIL return (end_sequence (), nullptr)
9169 : #define DONE return end_sequence ()
9170 : #line 18518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9171 : {
9172 : ix86_expand_binary_operator (ROTATERT, HImode, operands, TARGET_APX_NDD);
9173 : DONE;
9174 : }
9175 : #undef DONE
9176 : #undef FAIL
9177 : }
9178 : static const uint8_t expand_encoding[] = {
9179 : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x10, 0x01, 0x01,
9180 : 0x01, 0x02
9181 : };
9182 : return complete_seq (expand_encoding, operands);
9183 : }
9184 :
9185 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18524 */
9186 : extern rtx_insn *gen_split_688 (rtx_insn *, rtx *);
9187 : rtx_insn *
9188 : gen_split_688 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9189 : {
9190 : if (dump_file)
9191 : fprintf (dump_file, "Splitting with gen_split_688 (i386.md:18524)\n");
9192 : start_sequence ();
9193 : #define FAIL return (end_sequence (), nullptr)
9194 : #define DONE return end_sequence ()
9195 : #line 18544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9196 : {
9197 : operands[2] = force_lowpart_subreg (QImode, operands[2],
9198 : GET_MODE (operands[2]));
9199 : if (TARGET_APX_NF)
9200 : {
9201 : emit_move_insn (operands[0],
9202 : gen_rtx_ROTATE (SImode, operands[1],
9203 : operands[2]));
9204 : DONE;
9205 : }
9206 : }
9207 : #undef DONE
9208 : #undef FAIL
9209 : static const uint8_t expand_encoding[] = {
9210 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9211 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9212 : };
9213 : return complete_seq (expand_encoding, operands);
9214 : }
9215 :
9216 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18556 */
9217 : extern rtx_insn *gen_split_698 (rtx_insn *, rtx *);
9218 : rtx_insn *
9219 : gen_split_698 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9220 : {
9221 : if (dump_file)
9222 : fprintf (dump_file, "Splitting with gen_split_698 (i386.md:18556)\n");
9223 : start_sequence ();
9224 : #define FAIL return (end_sequence (), nullptr)
9225 : #define DONE return end_sequence ()
9226 : #line 18571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9227 : operands[5] = gen_reg_rtx (DImode);
9228 : #undef DONE
9229 : #undef FAIL
9230 : static const uint8_t expand_encoding[] = {
9231 : 0x02, 0x1f, 0x01, 0x05, 0x01, 0x01, 0x1f, 0x01,
9232 : 0x00, 0x4e, 0x12, 0x01, 0x05, 0x32, 0x0f, 0x02,
9233 : 0x04, 0x01, 0x02, 0x01, 0x03, 0x00
9234 : };
9235 : return complete_seq (expand_encoding, operands);
9236 : }
9237 :
9238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18602 */
9239 : extern rtx_insn *gen_split_708 (rtx_insn *, rtx *);
9240 : rtx_insn *
9241 : gen_split_708 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9242 : {
9243 : if (dump_file)
9244 : fprintf (dump_file, "Splitting with gen_split_708 (i386.md:18602)\n");
9245 : start_sequence ();
9246 : #define FAIL return (end_sequence (), nullptr)
9247 : #define DONE return end_sequence ()
9248 : #line 18615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9249 : operands[4] = gen_reg_rtx (QImode);
9250 : #undef DONE
9251 : #undef FAIL
9252 : static const uint8_t expand_encoding[] = {
9253 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9254 : 0x00, 0x4e, 0x0f, 0x01, 0x04, 0x49, 0x0f, 0x01,
9255 : 0x02, 0x01, 0x03
9256 : };
9257 : return complete_seq (expand_encoding, operands);
9258 : }
9259 :
9260 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18617 */
9261 : extern rtx_insn *gen_split_716 (rtx_insn *, rtx *);
9262 : rtx_insn *
9263 : gen_split_716 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9264 : {
9265 : if (dump_file)
9266 : fprintf (dump_file, "Splitting with gen_split_716 (i386.md:18617)\n");
9267 : start_sequence ();
9268 : #define FAIL return (end_sequence (), nullptr)
9269 : #define DONE return end_sequence ()
9270 : #line 18635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9271 : {
9272 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9273 : operands[2] = gen_lowpart (QImode, operands[2]);
9274 : }
9275 : #undef DONE
9276 : #undef FAIL
9277 : static const uint8_t expand_encoding[] = {
9278 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9279 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9280 : };
9281 : return complete_seq (expand_encoding, operands);
9282 : }
9283 :
9284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18640 */
9285 : extern rtx_insn *gen_split_726 (rtx_insn *, rtx *);
9286 : rtx_insn *
9287 : gen_split_726 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9288 : {
9289 : if (dump_file)
9290 : fprintf (dump_file, "Splitting with gen_split_726 (i386.md:18640)\n");
9291 : start_sequence ();
9292 : #define FAIL return (end_sequence (), nullptr)
9293 : #define DONE return end_sequence ()
9294 : #line 18652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9295 : operands[4] = gen_reg_rtx (HImode);
9296 : #undef DONE
9297 : #undef FAIL
9298 : static const uint8_t expand_encoding[] = {
9299 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9300 : 0x00, 0x4e, 0x10, 0x01, 0x04, 0x32, 0x0f, 0x01,
9301 : 0x02, 0x00
9302 : };
9303 : return complete_seq (expand_encoding, operands);
9304 : }
9305 :
9306 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18654 */
9307 : extern rtx_insn *gen_split_736 (rtx_insn *, rtx *);
9308 : rtx_insn *
9309 : gen_split_736 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9310 : {
9311 : if (dump_file)
9312 : fprintf (dump_file, "Splitting with gen_split_736 (i386.md:18654)\n");
9313 : start_sequence ();
9314 : #define FAIL return (end_sequence (), nullptr)
9315 : #define DONE return end_sequence ()
9316 : #line 18671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9317 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9318 : #undef DONE
9319 : #undef FAIL
9320 : static const uint8_t expand_encoding[] = {
9321 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9322 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9323 : };
9324 : return complete_seq (expand_encoding, operands);
9325 : }
9326 :
9327 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18673 */
9328 : extern rtx_insn *gen_split_746 (rtx_insn *, rtx *);
9329 : rtx_insn *
9330 : gen_split_746 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9331 : {
9332 : if (dump_file)
9333 : fprintf (dump_file, "Splitting with gen_split_746 (i386.md:18673)\n");
9334 : start_sequence ();
9335 : #define FAIL return (end_sequence (), nullptr)
9336 : #define DONE return end_sequence ()
9337 : #line 18684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9338 : operands[4] = gen_reg_rtx (DImode);
9339 : #undef DONE
9340 : #undef FAIL
9341 : static const uint8_t expand_encoding[] = {
9342 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9343 : 0x00, 0x4e, 0x12, 0x01, 0x04, 0x01, 0x02
9344 : };
9345 : return complete_seq (expand_encoding, operands);
9346 : }
9347 :
9348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18709 */
9349 : extern rtx_insn *gen_split_756 (rtx_insn *, rtx *);
9350 : rtx_insn *
9351 : gen_split_756 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9352 : {
9353 : if (dump_file)
9354 : fprintf (dump_file, "Splitting with gen_split_756 (i386.md:18709)\n");
9355 : start_sequence ();
9356 : #define FAIL return (end_sequence (), nullptr)
9357 : #define DONE return end_sequence ()
9358 : #line 18721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9359 : operands[4] = gen_reg_rtx (QImode);
9360 : #undef DONE
9361 : #undef FAIL
9362 : static const uint8_t expand_encoding[] = {
9363 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9364 : 0x00, 0x51, 0x0f, 0x01, 0x04, 0x32, 0x0f, 0x01,
9365 : 0x02, 0x00
9366 : };
9367 : return complete_seq (expand_encoding, operands);
9368 : }
9369 :
9370 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18723 */
9371 : extern rtx_insn *gen_split_766 (rtx_insn *, rtx *);
9372 : rtx_insn *
9373 : gen_split_766 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9374 : {
9375 : if (dump_file)
9376 : fprintf (dump_file, "Splitting with gen_split_766 (i386.md:18723)\n");
9377 : start_sequence ();
9378 : #define FAIL return (end_sequence (), nullptr)
9379 : #define DONE return end_sequence ()
9380 : #line 18740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9381 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9382 : #undef DONE
9383 : #undef FAIL
9384 : static const uint8_t expand_encoding[] = {
9385 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9386 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9387 : };
9388 : return complete_seq (expand_encoding, operands);
9389 : }
9390 :
9391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18742 */
9392 : extern rtx_insn *gen_split_776 (rtx_insn *, rtx *);
9393 : rtx_insn *
9394 : gen_split_776 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9395 : {
9396 : if (dump_file)
9397 : fprintf (dump_file, "Splitting with gen_split_776 (i386.md:18742)\n");
9398 : start_sequence ();
9399 : #define FAIL return (end_sequence (), nullptr)
9400 : #define DONE return end_sequence ()
9401 : #line 18753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9402 : operands[4] = gen_reg_rtx (SImode);
9403 : #undef DONE
9404 : #undef FAIL
9405 : static const uint8_t expand_encoding[] = {
9406 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9407 : 0x00, 0x51, 0x11, 0x01, 0x04, 0x01, 0x02
9408 : };
9409 : return complete_seq (expand_encoding, operands);
9410 : }
9411 :
9412 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18850 */
9413 : extern rtx_insn *gen_split_786 (rtx_insn *, rtx *);
9414 : rtx_insn *
9415 : gen_split_786 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9416 : {
9417 : if (dump_file)
9418 : fprintf (dump_file, "Splitting with gen_split_786 (i386.md:18850)\n");
9419 : start_sequence ();
9420 : #define FAIL return (end_sequence (), nullptr)
9421 : #define DONE return end_sequence ()
9422 : #line 18859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9423 : {
9424 : split_double_mode (TImode, &operands[0], 2, &operands[0], &operands[2]);
9425 : if (rtx_equal_p (operands[0], operands[1]))
9426 : {
9427 : emit_insn (gen_swapdi (operands[0], operands[2]));
9428 : DONE;
9429 : }
9430 : }
9431 : #undef DONE
9432 : #undef FAIL
9433 : static const uint8_t expand_encoding[] = {
9434 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
9435 : 0x02, 0x01, 0x01
9436 : };
9437 : return complete_seq (expand_encoding, operands);
9438 : }
9439 :
9440 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19053 */
9441 : extern rtx_insn *gen_split_795 (rtx_insn *, rtx *);
9442 : rtx_insn *
9443 : gen_split_795 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9444 : {
9445 : if (dump_file)
9446 : fprintf (dump_file, "Splitting with gen_split_795 (i386.md:19053)\n");
9447 : start_sequence ();
9448 : static const uint8_t expand_encoding[] = {
9449 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x51, 0x11,
9450 : 0x01, 0x01, 0x01, 0x02
9451 : };
9452 : return complete_seq (expand_encoding, operands);
9453 : }
9454 :
9455 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19223 */
9456 : extern rtx_insn *gen_split_802 (rtx_insn *, rtx *);
9457 : rtx_insn *
9458 : gen_split_802 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9459 : {
9460 : if (dump_file)
9461 : fprintf (dump_file, "Splitting with gen_split_802 (i386.md:19223)\n");
9462 : start_sequence ();
9463 : #define FAIL return (end_sequence (), nullptr)
9464 : #define DONE return end_sequence ()
9465 : #line 19247 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9466 : {
9467 : operands[1] = force_reg (GET_MODE (operands[1]), operands[1]);
9468 : operands[1] = gen_lowpart (QImode, operands[1]);
9469 : }
9470 : #undef DONE
9471 : #undef FAIL
9472 : static const uint8_t expand_encoding[] = {
9473 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
9474 : 0x11, 0x4d, 0x11, 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:19321 */
9481 : extern rtx_insn *gen_split_813 (rtx_insn *, rtx *);
9482 : rtx_insn *
9483 : gen_split_813 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9484 : {
9485 : if (dump_file)
9486 : fprintf (dump_file, "Splitting with gen_split_813 (i386.md:19321)\n");
9487 : start_sequence ();
9488 : static const uint8_t expand_encoding[] = {
9489 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
9490 : 0x12, 0x4e, 0x12, 0x27, 0x81, 0xff, 0xff, 0xff,
9491 : 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x01, 0x01,
9492 : 0x01, 0x03, 0x05, 0x02, 0x11
9493 : };
9494 : return complete_seq (expand_encoding, operands);
9495 : }
9496 :
9497 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19569 */
9498 : extern rtx_insn *gen_split_820 (rtx_insn *, rtx *);
9499 : rtx_insn *
9500 : gen_split_820 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9501 : {
9502 : if (dump_file)
9503 : fprintf (dump_file, "Splitting with gen_split_820 (i386.md:19569)\n");
9504 : start_sequence ();
9505 : #define FAIL return (end_sequence (), nullptr)
9506 : #define DONE return end_sequence ()
9507 : #line 19590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9508 : operands[1] = gen_lowpart (QImode, operands[1]);
9509 : #undef DONE
9510 : #undef FAIL
9511 : static const uint8_t expand_encoding[] = {
9512 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9513 : 0x00, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x01,
9514 : 0x01, 0x01
9515 : };
9516 : return complete_seq (expand_encoding, operands);
9517 : }
9518 :
9519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19665 */
9520 : extern rtx_insn *gen_split_827 (rtx_insn *, rtx *);
9521 : rtx_insn *
9522 : gen_split_827 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9523 : {
9524 : if (dump_file)
9525 : fprintf (dump_file, "Splitting with gen_split_827 (i386.md:19665)\n");
9526 : start_sequence ();
9527 : #define FAIL return (end_sequence (), nullptr)
9528 : #define DONE return end_sequence ()
9529 : #line 19696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9530 : {
9531 : operands[0] = shallow_copy_rtx (operands[0]);
9532 : PUT_CODE (operands[0], GET_CODE (operands[0]) == NE ? LTU : GEU);
9533 : operands[2] = gen_lowpart (QImode, operands[2]);
9534 : }
9535 : #undef DONE
9536 : #undef FAIL
9537 : static const uint8_t expand_encoding[] = {
9538 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9539 : 0x00, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27, 0x01,
9540 : 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x02, 0x00,
9541 : 0x30, 0x08, 0x11, 0x27, 0x00, 0x37, 0x00, 0x01,
9542 : 0x04, 0x2f
9543 : };
9544 : return complete_seq (expand_encoding, operands);
9545 : }
9546 :
9547 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19749 */
9548 : extern rtx_insn *gen_split_837 (rtx_insn *, rtx *);
9549 : rtx_insn *
9550 : gen_split_837 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9551 : {
9552 : if (dump_file)
9553 : fprintf (dump_file, "Splitting with gen_split_837 (i386.md:19749)\n");
9554 : start_sequence ();
9555 : static const uint8_t expand_encoding[] = {
9556 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9557 : 0x00, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27, 0x01,
9558 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x63, 0x0f, 0x30,
9559 : 0x08, 0x11, 0x27, 0x00
9560 : };
9561 : return complete_seq (expand_encoding, operands);
9562 : }
9563 :
9564 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19839 */
9565 : extern rtx_insn *gen_split_847 (rtx_insn *, rtx *);
9566 : rtx_insn *
9567 : gen_split_847 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9568 : {
9569 : if (dump_file)
9570 : fprintf (dump_file, "Splitting with gen_split_847 (i386.md:19839)\n");
9571 : start_sequence ();
9572 : static const uint8_t expand_encoding[] = {
9573 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
9574 : 0x12, 0x01, 0x02, 0x01, 0x03, 0x01, 0x02, 0x1f,
9575 : 0x01, 0x00, 0x02, 0x01, 0x30, 0x08, 0x11, 0x27,
9576 : 0x00
9577 : };
9578 : return complete_seq (expand_encoding, operands);
9579 : }
9580 :
9581 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19975 */
9582 : extern rtx_insn *gen_split_854 (rtx_insn *, rtx *);
9583 : rtx_insn *
9584 : gen_split_854 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9585 : {
9586 : if (dump_file)
9587 : fprintf (dump_file, "Splitting with gen_split_854 (i386.md:19975)\n");
9588 : start_sequence ();
9589 : #define FAIL return (end_sequence (), nullptr)
9590 : #define DONE return end_sequence ()
9591 : #line 19986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9592 : {
9593 : operands[3] = gen_lowpart (QImode, operands[0]);
9594 : }
9595 : #undef DONE
9596 : #undef FAIL
9597 : static const uint8_t expand_encoding[] = {
9598 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x1f, 0x33,
9599 : 0x00, 0x01, 0x03, 0x01, 0x01
9600 : };
9601 : return complete_seq (expand_encoding, operands);
9602 : }
9603 :
9604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20128 */
9605 : extern rtx_insn *gen_split_862 (rtx_insn *, rtx *);
9606 : rtx_insn *
9607 : gen_split_862 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9608 : {
9609 : if (dump_file)
9610 : fprintf (dump_file, "Splitting with gen_split_862 (i386.md:20128)\n");
9611 : start_sequence ();
9612 : static const uint8_t expand_encoding[] = {
9613 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
9614 : 0x12, 0x01, 0x02, 0x01, 0x03, 0x01, 0x02, 0x1f,
9615 : 0x2f, 0x39, 0x00, 0x02, 0x01, 0x30, 0x08, 0x11,
9616 : 0x27, 0x00, 0x37, 0x00, 0x01, 0x00, 0x2f
9617 : };
9618 : return complete_seq (expand_encoding, operands);
9619 : }
9620 :
9621 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20363 */
9622 : extern rtx_insn *gen_peephole2_190 (rtx_insn *, rtx *);
9623 : rtx_insn *
9624 : gen_peephole2_190 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9625 : {
9626 : if (dump_file)
9627 : fprintf (dump_file, "Splitting with gen_peephole2_190 (i386.md:20363)\n");
9628 : start_sequence ();
9629 : #define FAIL return (end_sequence (), nullptr)
9630 : #define DONE return end_sequence ()
9631 : #line 20381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9632 : {
9633 : operands[6] = gen_lowpart (QImode, operands[3]);
9634 : ix86_expand_clear (operands[3]);
9635 : }
9636 : #undef DONE
9637 : #undef FAIL
9638 : static const uint8_t expand_encoding[] = {
9639 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05, 0x01,
9640 : 0x00, 0x01, 0x04, 0x1f, 0x33, 0x00, 0x01, 0x06,
9641 : 0x01, 0x02
9642 : };
9643 : return complete_seq (expand_encoding, operands);
9644 : }
9645 :
9646 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20601 */
9647 : extern rtx_insn *gen_peephole2_197 (rtx_insn *, rtx *);
9648 : rtx_insn *
9649 : gen_peephole2_197 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9650 : {
9651 : if (dump_file)
9652 : fprintf (dump_file, "Splitting with gen_peephole2_197 (i386.md:20601)\n");
9653 : start_sequence ();
9654 : static const uint8_t expand_encoding[] = {
9655 : 0x01, 0x17, 0x00, 0x02, 0x22, 0x00, 0x36, 0x0f,
9656 : 0x01, 0x01, 0x01, 0x03, 0x1a, 0x00, 0x01, 0x27,
9657 : 0x00, 0x26
9658 : };
9659 : return complete_seq (expand_encoding, operands);
9660 : }
9661 :
9662 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20735 */
9663 : rtx
9664 : gen_sibcall_value (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
9665 : {
9666 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
9667 : start_sequence ();
9668 : {
9669 : #define FAIL return (end_sequence (), nullptr)
9670 : #define DONE return end_sequence ()
9671 : #line 20741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9672 : {
9673 : ix86_expand_call (operands[0], operands[1], operands[2],
9674 : operands[3], NULL, true);
9675 : DONE;
9676 : }
9677 : #undef DONE
9678 : #undef FAIL
9679 : }
9680 : static const uint8_t expand_encoding[] = {
9681 : 0x02, 0x1f, 0x01, 0x00, 0x22, 0x00, 0x01, 0x01,
9682 : 0x01, 0x02, 0x20, 0x00, 0x01, 0x03
9683 : };
9684 : return complete_seq (expand_encoding, operands);
9685 : }
9686 :
9687 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21079 */
9688 : extern rtx_insn *gen_split_866 (rtx_insn *, rtx *);
9689 : rtx_insn *
9690 : gen_split_866 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
9691 : {
9692 : if (dump_file)
9693 : fprintf (dump_file, "Splitting with gen_split_866 (i386.md:21079)\n");
9694 : start_sequence ();
9695 : #define FAIL return (end_sequence (), nullptr)
9696 : #define DONE return end_sequence ()
9697 : #line 21086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9698 : ix86_split_simple_return_pop_internal (operands[0]); DONE;
9699 : #undef DONE
9700 : #undef FAIL
9701 : static const uint8_t expand_encoding[] = {
9702 : 0x01, 0x27, 0x00
9703 : };
9704 : return complete_seq (expand_encoding, operands);
9705 : }
9706 :
9707 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21301 */
9708 : rtx
9709 : gen_split_stack_prologue (void)
9710 : {
9711 : start_sequence ();
9712 : {
9713 : #define FAIL return (end_sequence (), nullptr)
9714 : #define DONE return end_sequence ()
9715 : #line 21304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9716 : {
9717 : ix86_expand_split_stack_prologue ();
9718 : DONE;
9719 : }
9720 : #undef DONE
9721 : #undef FAIL
9722 : }
9723 : static const uint8_t expand_encoding[] = {
9724 : 0x01, 0x27, 0x00
9725 : };
9726 : return complete_seq (expand_encoding, nullptr);
9727 : }
9728 :
9729 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21413 */
9730 : extern rtx_insn *gen_split_870 (rtx_insn *, rtx *);
9731 : rtx_insn *
9732 : gen_split_870 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9733 : {
9734 : if (dump_file)
9735 : fprintf (dump_file, "Splitting with gen_split_870 (i386.md:21413)\n");
9736 : start_sequence ();
9737 : #define FAIL return (end_sequence (), nullptr)
9738 : #define DONE return end_sequence ()
9739 : #line 21431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9740 : ix86_expand_clear (operands[0]);
9741 : #undef DONE
9742 : #undef FAIL
9743 : static const uint8_t expand_encoding[] = {
9744 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x30, 0x08, 0x11,
9745 : 0x3a, 0x08, 0x01, 0x01, 0x27, 0x00, 0x1f, 0x01,
9746 : 0x00, 0x81, 0x01, 0x12, 0x01, 0x01, 0x1a, 0x00,
9747 : 0x01, 0x01, 0x00, 0x27
9748 : };
9749 : return complete_seq (expand_encoding, operands);
9750 : }
9751 :
9752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21737 */
9753 : extern rtx_insn *gen_split_877 (rtx_insn *, rtx *);
9754 : rtx_insn *
9755 : gen_split_877 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9756 : {
9757 : if (dump_file)
9758 : fprintf (dump_file, "Splitting with gen_split_877 (i386.md:21737)\n");
9759 : start_sequence ();
9760 : #define FAIL return (end_sequence (), nullptr)
9761 : #define DONE return end_sequence ()
9762 : #line 21757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9763 : {
9764 : operands[2] = gen_reg_rtx (DImode);
9765 : operands[3] = lowpart_subreg (SImode, operands[2], DImode);
9766 : }
9767 : #undef DONE
9768 : #undef FAIL
9769 : static const uint8_t expand_encoding[] = {
9770 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
9771 : 0x3a, 0x0c, 0x01, 0x01, 0x27, 0x00, 0x1f, 0x01,
9772 : 0x02, 0x3c, 0x12, 0x27, 0x3f, 0x81, 0x00, 0x12,
9773 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
9774 : 0x6f, 0x12, 0x4b, 0x11, 0x01, 0x03, 0x27, 0x3f,
9775 : 0x05, 0x02, 0x11
9776 : };
9777 : return complete_seq (expand_encoding, operands);
9778 : }
9779 :
9780 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21919 */
9781 : extern rtx_insn *gen_split_887 (rtx_insn *, rtx *);
9782 : rtx_insn *
9783 : gen_split_887 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9784 : {
9785 : if (dump_file)
9786 : fprintf (dump_file, "Splitting with gen_split_887 (i386.md:21919)\n");
9787 : start_sequence ();
9788 : #define FAIL return (end_sequence (), nullptr)
9789 : #define DONE return end_sequence ()
9790 : #line 21933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9791 :
9792 : #undef DONE
9793 : #undef FAIL
9794 : static const uint8_t expand_encoding[] = {
9795 : 0x02, 0x1f, 0x01, 0x00, 0x27, 0x00, 0x17, 0x00,
9796 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x00, 0x12, 0x01,
9797 : 0x01, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
9798 : };
9799 : return complete_seq (expand_encoding, operands);
9800 : }
9801 :
9802 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22081 */
9803 : extern rtx_insn *gen_split_895 (rtx_insn *, rtx *);
9804 : rtx_insn *
9805 : gen_split_895 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9806 : {
9807 : if (dump_file)
9808 : fprintf (dump_file, "Splitting with gen_split_895 (i386.md:22081)\n");
9809 : start_sequence ();
9810 : #define FAIL return (end_sequence (), nullptr)
9811 : #define DONE return end_sequence ()
9812 : #line 22095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9813 :
9814 : #undef DONE
9815 : #undef FAIL
9816 : static const uint8_t expand_encoding[] = {
9817 : 0x02, 0x1f, 0x01, 0x00, 0x27, 0x00, 0x17, 0x00,
9818 : 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01,
9819 : 0x01, 0x61, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
9820 : };
9821 : return complete_seq (expand_encoding, operands);
9822 : }
9823 :
9824 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22295 */
9825 : extern rtx_insn *gen_split_905 (rtx_insn *, rtx *);
9826 : rtx_insn *
9827 : gen_split_905 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9828 : {
9829 : if (dump_file)
9830 : fprintf (dump_file, "Splitting with gen_split_905 (i386.md:22295)\n");
9831 : start_sequence ();
9832 : #define FAIL return (end_sequence (), nullptr)
9833 : #define DONE return end_sequence ()
9834 : #line 22316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9835 : ix86_expand_clear (operands[0]);
9836 : #undef DONE
9837 : #undef FAIL
9838 : static const uint8_t expand_encoding[] = {
9839 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x4b,
9840 : 0x12, 0x3b, 0x12, 0x01, 0x01, 0x27, 0x81, 0xff,
9841 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f,
9842 : 0x01, 0x01, 0x05, 0x02, 0x11, 0x1a, 0x00, 0x01,
9843 : 0x01, 0x00, 0x27
9844 : };
9845 : return complete_seq (expand_encoding, operands);
9846 : }
9847 :
9848 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22747 */
9849 : extern rtx_insn *gen_split_913 (rtx_insn *, rtx *);
9850 : rtx_insn *
9851 : gen_split_913 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9852 : {
9853 : if (dump_file)
9854 : fprintf (dump_file, "Splitting with gen_split_913 (i386.md:22747)\n");
9855 : start_sequence ();
9856 : #define FAIL return (end_sequence (), nullptr)
9857 : #define DONE return end_sequence ()
9858 : #line 22768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9859 : ix86_expand_clear (operands[0]);
9860 : #undef DONE
9861 : #undef FAIL
9862 : static const uint8_t expand_encoding[] = {
9863 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x81,
9864 : 0x02, 0x12, 0x01, 0x01, 0x1a, 0x00, 0x01, 0x01,
9865 : 0x00, 0x27, 0x05, 0x02, 0x11
9866 : };
9867 : return complete_seq (expand_encoding, operands);
9868 : }
9869 :
9870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23106 */
9871 : extern rtx_insn *gen_peephole2_212 (rtx_insn *, rtx *);
9872 : rtx_insn *
9873 : gen_peephole2_212 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9874 : {
9875 : if (dump_file)
9876 : fprintf (dump_file, "Splitting with gen_peephole2_212 (i386.md:23106)\n");
9877 : start_sequence ();
9878 : #define FAIL return (end_sequence (), nullptr)
9879 : #define DONE return end_sequence ()
9880 : #line 23123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9881 : {
9882 : if (!rtx_equal_p (operands[1], operands[2]))
9883 : emit_move_insn (operands[2], operands[1]);
9884 : operands[3] = gen_lowpart (HImode, operands[2]);
9885 : }
9886 : #undef DONE
9887 : #undef FAIL
9888 : static const uint8_t expand_encoding[] = {
9889 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
9890 : 0x03, 0x4e, 0x10, 0x01, 0x03, 0x27, 0x08, 0x05,
9891 : 0x02, 0x11
9892 : };
9893 : return complete_seq (expand_encoding, operands);
9894 : }
9895 :
9896 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23478 */
9897 : rtx
9898 : gen_tls_global_dynamic_64_si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
9899 : {
9900 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
9901 : start_sequence ();
9902 : {
9903 : #define FAIL return (end_sequence (), nullptr)
9904 : #define DONE return end_sequence ()
9905 : #line 23489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9906 : {
9907 : if (ix86_tls_descriptor_calls_expanded_in_cfun)
9908 : cfun->machine->tls_descriptor_call_multiple_p = true;
9909 : ix86_tls_descriptor_calls_expanded_in_cfun = true;
9910 : }
9911 : #undef DONE
9912 : #undef FAIL
9913 : }
9914 : static const uint8_t expand_encoding[] = {
9915 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x22,
9916 : 0x11, 0x36, 0x0f, 0x01, 0x02, 0x27, 0x00, 0x1a,
9917 : 0x11, 0x02, 0x01, 0x01, 0x30, 0x11, 0x07, 0x15,
9918 : 0x21, 0x00, 0x01, 0x03
9919 : };
9920 : return complete_seq (expand_encoding, operands);
9921 : }
9922 :
9923 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23634 */
9924 : extern rtx_insn *gen_split_920 (rtx_insn *, rtx *);
9925 : rtx_insn *
9926 : gen_split_920 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9927 : {
9928 : if (dump_file)
9929 : fprintf (dump_file, "Splitting with gen_split_920 (i386.md:23634)\n");
9930 : start_sequence ();
9931 : #define FAIL return (end_sequence (), nullptr)
9932 : #define DONE return end_sequence ()
9933 : #line 23642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9934 : {
9935 : operands[1] = gen_const_mem (DImode, GEN_INT (DEFAULT_TLS_SEG_OFFSET));
9936 : set_mem_addr_space (operands[1], DEFAULT_TLS_SEG_REG);
9937 : }
9938 : #undef DONE
9939 : #undef FAIL
9940 : static const uint8_t expand_encoding[] = {
9941 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
9942 : };
9943 : return complete_seq (expand_encoding, operands);
9944 : }
9945 :
9946 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23810 */
9947 : extern rtx_insn *gen_split_927 (rtx_insn *, rtx *);
9948 : rtx_insn *
9949 : gen_split_927 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9950 : {
9951 : if (dump_file)
9952 : fprintf (dump_file, "Splitting with gen_split_927 (i386.md:23810)\n");
9953 : start_sequence ();
9954 : #define FAIL return (end_sequence (), nullptr)
9955 : #define DONE return end_sequence ()
9956 : #line 23825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9957 : {
9958 : operands[4] = can_create_pseudo_p () ? gen_reg_rtx (ptr_mode) : operands[0];
9959 : emit_insn (gen_tls_dynamic_gnu2_64 (ptr_mode, operands[4], operands[1]));
9960 : }
9961 : #undef DONE
9962 : #undef FAIL
9963 : static const uint8_t expand_encoding[] = {
9964 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
9965 : };
9966 : return complete_seq (expand_encoding, operands);
9967 : }
9968 :
9969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24436 */
9970 : rtx
9971 : gen_remaindersf3 (const rtx operand0, const rtx operand1, const rtx operand2)
9972 : {
9973 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9974 : start_sequence ();
9975 : {
9976 : #define FAIL _Pragma ("GCC error \"remaindersf3 cannot FAIL\"") (void)0
9977 : #define DONE return end_sequence ()
9978 : #line 24441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9979 : {
9980 : rtx (*gen_truncxf) (rtx, rtx);
9981 :
9982 : rtx_code_label *label = gen_label_rtx ();
9983 :
9984 : rtx op1 = gen_reg_rtx (XFmode);
9985 : rtx op2 = gen_reg_rtx (XFmode);
9986 :
9987 : emit_insn (gen_extendsfxf2 (op2, operands[2]));
9988 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
9989 :
9990 : emit_label (label);
9991 :
9992 : emit_insn (gen_fprem1xf4_i387 (op1, op2, op1, op2));
9993 : ix86_emit_fp_unordered_jump (label);
9994 : LABEL_NUSES (label) = 1;
9995 :
9996 : /* Truncate the result properly for strict SSE math. */
9997 : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
9998 : && !TARGET_MIX_SSE_I387)
9999 : gen_truncxf = gen_truncxfsf2;
10000 : else
10001 : gen_truncxf = gen_truncxfsf2_i387_noop_unspec;
10002 :
10003 : emit_insn (gen_truncxf (operands[0], op1));
10004 : DONE;
10005 : }
10006 : #undef DONE
10007 : #undef FAIL
10008 : }
10009 : static const uint8_t expand_encoding[] = {
10010 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10011 : 0x01, 0x20, 0x00, 0x01, 0x02
10012 : };
10013 : return complete_seq (expand_encoding, operands);
10014 : }
10015 :
10016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24567 */
10017 : rtx
10018 : gen_tandf2 (const rtx operand0, const rtx operand1)
10019 : {
10020 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10021 : start_sequence ();
10022 : {
10023 : #define FAIL _Pragma ("GCC error \"tandf2 cannot FAIL\"") (void)0
10024 : #define DONE return end_sequence ()
10025 : #line 24574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10026 : {
10027 : rtx op0 = gen_reg_rtx (XFmode);
10028 : rtx op1 = gen_reg_rtx (XFmode);
10029 :
10030 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10031 : emit_insn (gen_tanxf2 (op0, op1));
10032 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10033 : DONE;
10034 : }
10035 : #undef DONE
10036 : #undef FAIL
10037 : }
10038 : static const uint8_t expand_encoding[] = {
10039 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10040 : 0x01
10041 : };
10042 : return complete_seq (expand_encoding, operands);
10043 : }
10044 :
10045 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24705 */
10046 : rtx
10047 : gen_acossf2 (const rtx operand0, const rtx operand1)
10048 : {
10049 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10050 : start_sequence ();
10051 : {
10052 : #define FAIL _Pragma ("GCC error \"acossf2 cannot FAIL\"") (void)0
10053 : #define DONE return end_sequence ()
10054 : #line 24712 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10055 : {
10056 : rtx op0 = gen_reg_rtx (XFmode);
10057 : rtx op1 = gen_reg_rtx (XFmode);
10058 :
10059 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10060 : emit_insn (gen_acosxf2 (op0, op1));
10061 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10062 : DONE;
10063 : }
10064 : #undef DONE
10065 : #undef FAIL
10066 : }
10067 : static const uint8_t expand_encoding[] = {
10068 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10069 : 0x01
10070 : };
10071 : return complete_seq (expand_encoding, operands);
10072 : }
10073 :
10074 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24788 */
10075 : rtx
10076 : gen_tanhsf2 (const rtx operand0, const rtx operand1)
10077 : {
10078 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10079 : start_sequence ();
10080 : {
10081 : #define FAIL _Pragma ("GCC error \"tanhsf2 cannot FAIL\"") (void)0
10082 : #define DONE return end_sequence ()
10083 : #line 24795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10084 : {
10085 : rtx op0 = gen_reg_rtx (XFmode);
10086 : rtx op1 = gen_reg_rtx (XFmode);
10087 :
10088 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10089 : emit_insn (gen_tanhxf2 (op0, op1));
10090 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10091 : DONE;
10092 : }
10093 : #undef DONE
10094 : #undef FAIL
10095 : }
10096 : static const uint8_t expand_encoding[] = {
10097 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10098 : 0x01
10099 : };
10100 : return complete_seq (expand_encoding, operands);
10101 : }
10102 :
10103 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24902 */
10104 : rtx
10105 : gen_logxf2 (const rtx operand0, const rtx operand1)
10106 : {
10107 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
10108 : start_sequence ();
10109 : {
10110 : #define FAIL _Pragma ("GCC error \"logxf2 cannot FAIL\"") (void)0
10111 : #define DONE return end_sequence ()
10112 : #line 24909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10113 : {
10114 : operands[2]
10115 : = force_reg (XFmode, standard_80387_constant_rtx (4)); /* fldln2 */
10116 : }
10117 : #undef DONE
10118 : #undef FAIL
10119 : }
10120 : static const uint8_t expand_encoding[] = {
10121 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10122 : 0x2f, 0x02, 0x01, 0x01, 0x01, 0x02, 0x44, 0x21,
10123 : 0x00, 0x31, 0x2f
10124 : };
10125 : return complete_seq (expand_encoding, operands);
10126 : }
10127 :
10128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25010 */
10129 : rtx
10130 : gen_log1psf2 (const rtx operand0, const rtx operand1)
10131 : {
10132 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10133 : start_sequence ();
10134 : {
10135 : #define FAIL _Pragma ("GCC error \"log1psf2 cannot FAIL\"") (void)0
10136 : #define DONE return end_sequence ()
10137 : #line 25017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10138 : {
10139 : rtx op0 = gen_reg_rtx (XFmode);
10140 : rtx op1 = gen_reg_rtx (XFmode);
10141 :
10142 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10143 : emit_insn (gen_log1pxf2 (op0, op1));
10144 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10145 : DONE;
10146 : }
10147 : #undef DONE
10148 : #undef FAIL
10149 : }
10150 : static const uint8_t expand_encoding[] = {
10151 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10152 : 0x01
10153 : };
10154 : return complete_seq (expand_encoding, operands);
10155 : }
10156 :
10157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25174 */
10158 : rtx
10159 : gen_expsf2 (const rtx operand0, const rtx operand1)
10160 : {
10161 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10162 : start_sequence ();
10163 : {
10164 : #define FAIL _Pragma ("GCC error \"expsf2 cannot FAIL\"") (void)0
10165 : #define DONE return end_sequence ()
10166 : #line 25181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10167 : {
10168 : rtx op0 = gen_reg_rtx (XFmode);
10169 : rtx op1 = gen_reg_rtx (XFmode);
10170 :
10171 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10172 : emit_insn (gen_expxf2 (op0, op1));
10173 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10174 : DONE;
10175 : }
10176 : #undef DONE
10177 : #undef FAIL
10178 : }
10179 : static const uint8_t expand_encoding[] = {
10180 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10181 : 0x01
10182 : };
10183 : return complete_seq (expand_encoding, operands);
10184 : }
10185 :
10186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25282 */
10187 : rtx
10188 : gen_expm1sf2 (const rtx operand0, const rtx operand1)
10189 : {
10190 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10191 : start_sequence ();
10192 : {
10193 : #define FAIL _Pragma ("GCC error \"expm1sf2 cannot FAIL\"") (void)0
10194 : #define DONE return end_sequence ()
10195 : #line 25289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10196 : {
10197 : rtx op0 = gen_reg_rtx (XFmode);
10198 : rtx op1 = gen_reg_rtx (XFmode);
10199 :
10200 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10201 : emit_insn (gen_expm1xf2 (op0, op1));
10202 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10203 : DONE;
10204 : }
10205 : #undef DONE
10206 : #undef FAIL
10207 : }
10208 : static const uint8_t expand_encoding[] = {
10209 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10210 : 0x01
10211 : };
10212 : return complete_seq (expand_encoding, operands);
10213 : }
10214 :
10215 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25399 */
10216 : rtx
10217 : gen_significandsf2 (const rtx operand0, const rtx operand1)
10218 : {
10219 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10220 : start_sequence ();
10221 : {
10222 : #define FAIL _Pragma ("GCC error \"significandsf2 cannot FAIL\"") (void)0
10223 : #define DONE return end_sequence ()
10224 : #line 25406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10225 : {
10226 : rtx op0 = gen_reg_rtx (XFmode);
10227 : rtx op1 = gen_reg_rtx (XFmode);
10228 :
10229 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10230 : emit_insn (gen_significandxf2 (op0, op1));
10231 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10232 : DONE;
10233 : }
10234 : #undef DONE
10235 : #undef FAIL
10236 : }
10237 : static const uint8_t expand_encoding[] = {
10238 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10239 : 0x01
10240 : };
10241 : return complete_seq (expand_encoding, operands);
10242 : }
10243 :
10244 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25546 */
10245 : rtx
10246 : gen_rounddf2 (const rtx operand0, const rtx operand1)
10247 : {
10248 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10249 : start_sequence ();
10250 : {
10251 : #define FAIL _Pragma ("GCC error \"rounddf2 cannot FAIL\"") (void)0
10252 : #define DONE return end_sequence ()
10253 : #line 25556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10254 : {
10255 : if (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
10256 : && !flag_trapping_math && !flag_rounding_math)
10257 : {
10258 : if (TARGET_SSE4_1)
10259 : {
10260 : operands[1] = force_reg (DFmode, operands[1]);
10261 : ix86_expand_round_sse4 (operands[0], operands[1]);
10262 : }
10263 : else if (TARGET_64BIT || (DFmode != DFmode))
10264 : ix86_expand_round (operands[0], operands[1]);
10265 : else
10266 : ix86_expand_rounddf_32 (operands[0], operands[1]);
10267 : }
10268 : else
10269 : {
10270 : operands[1] = force_reg (DFmode, operands[1]);
10271 : ix86_emit_i387_round (operands[0], operands[1]);
10272 : }
10273 : DONE;
10274 : }
10275 : #undef DONE
10276 : #undef FAIL
10277 : }
10278 : static const uint8_t expand_encoding[] = {
10279 : 0x02, 0x01, 0x00, 0x01, 0x01
10280 : };
10281 : return complete_seq (expand_encoding, operands);
10282 : }
10283 :
10284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25619 */
10285 : rtx
10286 : gen_lroundxfsi2 (const rtx operand0, const rtx operand1)
10287 : {
10288 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10289 : start_sequence ();
10290 : {
10291 : #define FAIL _Pragma ("GCC error \"lroundxfsi2 cannot FAIL\"") (void)0
10292 : #define DONE return end_sequence ()
10293 : #line 25630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10294 : {
10295 : if (SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH
10296 : && SImode != HImode
10297 : && ((SImode != DImode) || TARGET_64BIT)
10298 : && !flag_trapping_math && !flag_rounding_math)
10299 : ix86_expand_lround (operands[0], operands[1]);
10300 : else
10301 : ix86_emit_i387_round (operands[0], operands[1]);
10302 : DONE;
10303 : }
10304 : #undef DONE
10305 : #undef FAIL
10306 : }
10307 : static const uint8_t expand_encoding[] = {
10308 : 0x02, 0x01, 0x00, 0x01, 0x01
10309 : };
10310 : return complete_seq (expand_encoding, operands);
10311 : }
10312 :
10313 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25715 */
10314 : rtx
10315 : gen_ceilxf2 (const rtx operand0, const rtx operand1)
10316 : {
10317 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10318 : static const uint8_t expand_encoding[] = {
10319 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
10320 : 0x01, 0x01, 0x01, 0x4d, 0x05, 0x02, 0x11
10321 : };
10322 : return expand_rtx (expand_encoding, operands);
10323 : }
10324 :
10325 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25735 */
10326 : rtx
10327 : gen_floorsf2 (const rtx operand0, const rtx operand1)
10328 : {
10329 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10330 : start_sequence ();
10331 : {
10332 : #define FAIL _Pragma ("GCC error \"floorsf2 cannot FAIL\"") (void)0
10333 : #define DONE return end_sequence ()
10334 : #line 25748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10335 : {
10336 : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
10337 : && (TARGET_SSE4_1
10338 : || (ROUND_FLOOR != ROUND_ROUNDEVEN
10339 : && (flag_fp_int_builtin_inexact || !flag_trapping_math))))
10340 : {
10341 : if (TARGET_SSE4_1)
10342 : emit_insn (gen_sse4_1_roundsf2
10343 : (operands[0], operands[1],
10344 : GEN_INT (ROUND_FLOOR | ROUND_NO_EXC)));
10345 : else if (TARGET_64BIT || (SFmode != DFmode))
10346 : {
10347 : if (ROUND_FLOOR == ROUND_FLOOR)
10348 : ix86_expand_floorceil (operands[0], operands[1], true);
10349 : else if (ROUND_FLOOR == ROUND_CEIL)
10350 : ix86_expand_floorceil (operands[0], operands[1], false);
10351 : else if (ROUND_FLOOR == ROUND_TRUNC)
10352 : ix86_expand_trunc (operands[0], operands[1]);
10353 : else
10354 : gcc_unreachable ();
10355 : }
10356 : else
10357 : {
10358 : if (ROUND_FLOOR == ROUND_FLOOR)
10359 : ix86_expand_floorceildf_32 (operands[0], operands[1], true);
10360 : else if (ROUND_FLOOR == ROUND_CEIL)
10361 : ix86_expand_floorceildf_32 (operands[0], operands[1], false);
10362 : else if (ROUND_FLOOR == ROUND_TRUNC)
10363 : ix86_expand_truncdf_32 (operands[0], operands[1]);
10364 : else
10365 : gcc_unreachable ();
10366 : }
10367 : }
10368 : else
10369 : {
10370 : rtx op0 = gen_reg_rtx (XFmode);
10371 : rtx op1 = gen_reg_rtx (XFmode);
10372 :
10373 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10374 : emit_insn (gen_frndintxf2_floor (op0, op1));
10375 : emit_insn (gen_truncxfsf2_i387_noop_unspec (operands[0], op0));
10376 : }
10377 : DONE;
10378 : }
10379 : #undef DONE
10380 : #undef FAIL
10381 : }
10382 : static const uint8_t expand_encoding[] = {
10383 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10384 : 0x2d, 0x01, 0x01, 0x01, 0x4c, 0x05, 0x02, 0x11
10385 : };
10386 : return complete_seq (expand_encoding, operands);
10387 : }
10388 :
10389 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25794 */
10390 : extern rtx_insn *gen_split_938 (rtx_insn *, rtx *);
10391 : rtx_insn *
10392 : gen_split_938 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10393 : {
10394 : if (dump_file)
10395 : fprintf (dump_file, "Splitting with gen_split_938 (i386.md:25794)\n");
10396 : start_sequence ();
10397 : #define FAIL return (end_sequence (), nullptr)
10398 : #define DONE return end_sequence ()
10399 : #line 25805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10400 : {
10401 : ix86_optimize_mode_switching[I387_CEIL] = 1;
10402 :
10403 : operands[2] = assign_386_stack_local (HImode, SLOT_CW_STORED);
10404 : operands[3] = assign_386_stack_local (HImode, SLOT_CW_CEIL);
10405 :
10406 : emit_insn (gen_fistdi2_ceil (operands[0], operands[1],
10407 : operands[2], operands[3]));
10408 : DONE;
10409 : }
10410 : #undef DONE
10411 : #undef FAIL
10412 : static const uint8_t expand_encoding[] = {
10413 : 0x01, 0x27, 0x00
10414 : };
10415 : return complete_seq (expand_encoding, operands);
10416 : }
10417 :
10418 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25868 */
10419 : rtx
10420 : gen_lceildfsi2 (const rtx operand0, const rtx operand1)
10421 : {
10422 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10423 : start_sequence ();
10424 : {
10425 : #define FAIL _Pragma ("GCC error \"lceildfsi2 cannot FAIL\"") (void)0
10426 : #define DONE return end_sequence ()
10427 : #line 25875 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10428 : {
10429 : if (TARGET_SSE4_1)
10430 : {
10431 : rtx tmp = gen_reg_rtx (DFmode);
10432 :
10433 : emit_insn (gen_sse4_1_rounddf2
10434 : (tmp, operands[1], GEN_INT (ROUND_CEIL
10435 : | ROUND_NO_EXC)));
10436 : emit_insn (gen_fix_truncdfsi2
10437 : (operands[0], tmp));
10438 : }
10439 : else if (ROUND_CEIL == ROUND_FLOOR)
10440 : ix86_expand_lfloorceil (operands[0], operands[1], true);
10441 : else if (ROUND_CEIL == ROUND_CEIL)
10442 : ix86_expand_lfloorceil (operands[0], operands[1], false);
10443 : else
10444 : gcc_unreachable ();
10445 :
10446 : DONE;
10447 : }
10448 : #undef DONE
10449 : #undef FAIL
10450 : }
10451 : static const uint8_t expand_encoding[] = {
10452 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10453 : 0x11, 0x01, 0x01, 0x01, 0x50, 0x05, 0x02, 0x11
10454 : };
10455 : return complete_seq (expand_encoding, operands);
10456 : }
10457 :
10458 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26023 */
10459 : rtx
10460 : gen_cpymemsi (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)
10461 : {
10462 : rtx operands[9] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8 };
10463 : start_sequence ();
10464 : {
10465 : #define FAIL return (end_sequence (), nullptr)
10466 : #define DONE return end_sequence ()
10467 : #line 26034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10468 : {
10469 : if (ix86_expand_set_or_cpymem (operands[0], operands[1],
10470 : operands[2], NULL, operands[3],
10471 : operands[4], operands[5],
10472 : operands[6], operands[7],
10473 : operands[8], false))
10474 : DONE;
10475 : else
10476 : FAIL;
10477 : }
10478 : #undef DONE
10479 : #undef FAIL
10480 : }
10481 : static const uint8_t expand_encoding[] = {
10482 : 0x09, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10483 : 0x01, 0x20, 0x00, 0x01, 0x02, 0x20, 0x00, 0x01,
10484 : 0x03, 0x20, 0x00, 0x01, 0x04, 0x20, 0x00, 0x01,
10485 : 0x05, 0x20, 0x00, 0x01, 0x06, 0x20, 0x00, 0x01,
10486 : 0x07, 0x20, 0x00, 0x01, 0x08
10487 : };
10488 : return complete_seq (expand_encoding, operands);
10489 : }
10490 :
10491 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26496 */
10492 : rtx
10493 : gen_cmpmemsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
10494 : {
10495 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
10496 : start_sequence ();
10497 : {
10498 : #define FAIL return (end_sequence (), nullptr)
10499 : #define DONE return end_sequence ()
10500 : #line 26503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10501 : {
10502 : if (ix86_expand_cmpstrn_or_cmpmem (operands[0], operands[1],
10503 : operands[2], operands[3],
10504 : operands[4], false))
10505 : DONE;
10506 : else
10507 : FAIL;
10508 : }
10509 : #undef DONE
10510 : #undef FAIL
10511 : }
10512 : static const uint8_t expand_encoding[] = {
10513 : 0x03, 0x1f, 0x01, 0x00, 0x3a, 0x11, 0x01, 0x01,
10514 : 0x01, 0x02, 0x20, 0x00, 0x01, 0x03, 0x20, 0x00,
10515 : 0x01, 0x04
10516 : };
10517 : return complete_seq (expand_encoding, operands);
10518 : }
10519 :
10520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26714 */
10521 : extern rtx_insn *gen_peephole2_218 (rtx_insn *, rtx *);
10522 : rtx_insn *
10523 : gen_peephole2_218 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10524 : {
10525 : if (dump_file)
10526 : fprintf (dump_file, "Splitting with gen_peephole2_218 (i386.md:26714)\n");
10527 : start_sequence ();
10528 : static const uint8_t expand_encoding[] = {
10529 : 0x01, 0x17, 0x00, 0x05, 0x1f, 0x30, 0x02, 0x11,
10530 : 0x39, 0x02, 0x5c, 0x00, 0x01, 0x06, 0x27, 0x00,
10531 : 0x3a, 0x02, 0x36, 0x01, 0x01, 0x04, 0x36, 0x01,
10532 : 0x01, 0x05, 0x30, 0x02, 0x11, 0x20, 0x00, 0x01,
10533 : 0x03, 0x21, 0x00, 0x01, 0x00, 0x21, 0x00, 0x01,
10534 : 0x01, 0x21, 0x00, 0x01, 0x02
10535 : };
10536 : return complete_seq (expand_encoding, operands);
10537 : }
10538 :
10539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26820 */
10540 : extern rtx_insn *gen_split_940 (rtx_insn *, rtx *);
10541 : rtx_insn *
10542 : gen_split_940 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10543 : {
10544 : if (dump_file)
10545 : fprintf (dump_file, "Splitting with gen_split_940 (i386.md:26820)\n");
10546 : start_sequence ();
10547 : #define FAIL return (end_sequence (), nullptr)
10548 : #define DONE return end_sequence ()
10549 : #line 26832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10550 : operands[2] = GEN_INT (INTVAL (operands[2]) + 1);
10551 : #undef DONE
10552 : #undef FAIL
10553 : static const uint8_t expand_encoding[] = {
10554 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
10555 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3d, 0x12,
10556 : 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00
10557 : };
10558 : return complete_seq (expand_encoding, operands);
10559 : }
10560 :
10561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26943 */
10562 : extern rtx_insn *gen_split_953 (rtx_insn *, rtx *);
10563 : rtx_insn *
10564 : gen_split_953 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10565 : {
10566 : if (dump_file)
10567 : fprintf (dump_file, "Splitting with gen_split_953 (i386.md:26943)\n");
10568 : start_sequence ();
10569 : #define FAIL return (end_sequence (), nullptr)
10570 : #define DONE return end_sequence ()
10571 : #line 26953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10572 : {
10573 : operands[0] = gen_lowpart (SImode, operands[0]);
10574 : operands[2] = gen_lowpart (SImode, operands[2]);
10575 : operands[3] = gen_lowpart (SImode, operands[3]);
10576 : }
10577 : #undef DONE
10578 : #undef FAIL
10579 : static const uint8_t expand_encoding[] = {
10580 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x01,
10581 : 0x01, 0x02, 0x01, 0x03
10582 : };
10583 : return complete_seq (expand_encoding, operands);
10584 : }
10585 :
10586 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27057 */
10587 : extern rtx_insn *gen_peephole2_228 (rtx_insn *, rtx *);
10588 : rtx_insn *
10589 : gen_peephole2_228 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10590 : {
10591 : if (dump_file)
10592 : fprintf (dump_file, "Splitting with gen_peephole2_228 (i386.md:27057)\n");
10593 : start_sequence ();
10594 : #define FAIL return (end_sequence (), nullptr)
10595 : #define DONE return end_sequence ()
10596 : #line 27082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10597 : {
10598 : operands[7] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (2)), 0, 0));
10599 : operands[8]
10600 : = ix86_replace_reg_with_reg (operands[5], operands[0], operands[1]);
10601 : operands[9]
10602 : = ix86_replace_reg_with_reg (operands[6], operands[0], operands[1]);
10603 : }
10604 : #undef DONE
10605 : #undef FAIL
10606 : static const uint8_t expand_encoding[] = {
10607 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
10608 : 0x08, 0x1f, 0x01, 0x01, 0x01, 0x09, 0x1f, 0x01,
10609 : 0x00, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x39, 0x12,
10610 : 0x01, 0x04, 0x01, 0x01, 0x01, 0x00
10611 : };
10612 : return complete_seq (expand_encoding, operands);
10613 : }
10614 :
10615 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27323 */
10616 : extern rtx_insn *gen_split_958 (rtx_insn *, rtx *);
10617 : rtx_insn *
10618 : gen_split_958 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10619 : {
10620 : if (dump_file)
10621 : fprintf (dump_file, "Splitting with gen_split_958 (i386.md:27323)\n");
10622 : start_sequence ();
10623 : static const uint8_t expand_encoding[] = {
10624 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x02, 0x01,
10625 : 0x02, 0x01, 0x01, 0x40
10626 : };
10627 : return complete_seq (expand_encoding, operands);
10628 : }
10629 :
10630 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27417 */
10631 : rtx
10632 : gen_addhicc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10633 : {
10634 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10635 : start_sequence ();
10636 : {
10637 : #define FAIL return (end_sequence (), nullptr)
10638 : #define DONE return end_sequence ()
10639 : #line 27423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10640 : if (ix86_expand_int_addcc (operands)) DONE; else FAIL;
10641 : #undef DONE
10642 : #undef FAIL
10643 : }
10644 : static const uint8_t expand_encoding[] = {
10645 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
10646 : 0x03
10647 : };
10648 : return complete_seq (expand_encoding, operands);
10649 : }
10650 :
10651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10652 : rtx
10653 : gen_smaxsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
10654 : {
10655 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10656 : static const uint8_t expand_encoding[] = {
10657 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x53, 0x11,
10658 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10659 : };
10660 : return expand_rtx (expand_encoding, operands);
10661 : }
10662 :
10663 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10664 : rtx
10665 : gen_umaxti3 (const rtx operand0, const rtx operand1, const rtx operand2)
10666 : {
10667 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10668 : static const uint8_t expand_encoding[] = {
10669 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x55, 0x13,
10670 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10671 : };
10672 : return expand_rtx (expand_encoding, operands);
10673 : }
10674 :
10675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27498 */
10676 : extern rtx_insn *gen_split_969 (rtx_insn *, rtx *);
10677 : rtx_insn *
10678 : gen_split_969 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10679 : {
10680 : if (dump_file)
10681 : fprintf (dump_file, "Splitting with gen_split_969 (i386.md:27498)\n");
10682 : start_sequence ();
10683 : #define FAIL return (end_sequence (), nullptr)
10684 : #define DONE return end_sequence ()
10685 : #line 27513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10686 : {
10687 : machine_mode mode = QImode;
10688 : rtx cmp_op = operands[2];
10689 :
10690 : operands[2] = force_reg (mode, cmp_op);
10691 :
10692 : enum rtx_code code = GE;
10693 :
10694 : if (cmp_op == const1_rtx)
10695 : {
10696 : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10697 : Convert umax (x, 1) into (x != 0 ? x : 1).
10698 : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10699 : cmp_op = const0_rtx;
10700 : if (code == GE)
10701 : code = GT;
10702 : else if (code == GEU)
10703 : code = NE;
10704 : }
10705 : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10706 : else if (cmp_op == constm1_rtx && code == LE)
10707 : {
10708 : cmp_op = const0_rtx;
10709 : code = LT;
10710 : }
10711 : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10712 : else if (cmp_op == constm1_rtx && code == GE)
10713 : cmp_op = const0_rtx;
10714 : else if (cmp_op != const0_rtx)
10715 : cmp_op = operands[2];
10716 :
10717 : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10718 : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10719 :
10720 : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10721 : emit_insn (gen_rtx_SET (flags, tmp));
10722 :
10723 : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10724 : }
10725 : #undef DONE
10726 : #undef FAIL
10727 : static const uint8_t expand_encoding[] = {
10728 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x0f, 0x01, 0x03,
10729 : 0x01, 0x01, 0x01, 0x02
10730 : };
10731 : return complete_seq (expand_encoding, operands);
10732 : }
10733 :
10734 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27498 */
10735 : extern rtx_insn *gen_split_979 (rtx_insn *, rtx *);
10736 : rtx_insn *
10737 : gen_split_979 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10738 : {
10739 : if (dump_file)
10740 : fprintf (dump_file, "Splitting with gen_split_979 (i386.md:27498)\n");
10741 : start_sequence ();
10742 : #define FAIL return (end_sequence (), nullptr)
10743 : #define DONE return end_sequence ()
10744 : #line 27513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10745 : {
10746 : machine_mode mode = SImode;
10747 : rtx cmp_op = operands[2];
10748 :
10749 : operands[2] = force_reg (mode, cmp_op);
10750 :
10751 : enum rtx_code code = GEU;
10752 :
10753 : if (cmp_op == const1_rtx)
10754 : {
10755 : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10756 : Convert umax (x, 1) into (x != 0 ? x : 1).
10757 : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10758 : cmp_op = const0_rtx;
10759 : if (code == GE)
10760 : code = GT;
10761 : else if (code == GEU)
10762 : code = NE;
10763 : }
10764 : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10765 : else if (cmp_op == constm1_rtx && code == LE)
10766 : {
10767 : cmp_op = const0_rtx;
10768 : code = LT;
10769 : }
10770 : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10771 : else if (cmp_op == constm1_rtx && code == GE)
10772 : cmp_op = const0_rtx;
10773 : else if (cmp_op != const0_rtx)
10774 : cmp_op = operands[2];
10775 :
10776 : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10777 : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10778 :
10779 : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10780 : emit_insn (gen_rtx_SET (flags, tmp));
10781 :
10782 : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10783 : }
10784 : #undef DONE
10785 : #undef FAIL
10786 : static const uint8_t expand_encoding[] = {
10787 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x03,
10788 : 0x01, 0x01, 0x01, 0x02
10789 : };
10790 : return complete_seq (expand_encoding, operands);
10791 : }
10792 :
10793 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27567 */
10794 : extern rtx_insn *gen_peephole2_237 (rtx_insn *, rtx *);
10795 : rtx_insn *
10796 : gen_peephole2_237 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10797 : {
10798 : HARD_REG_SET _regs_allocated;
10799 : CLEAR_HARD_REG_SET (_regs_allocated);
10800 : if ((operands[0] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
10801 : return NULL;
10802 : if (dump_file)
10803 : fprintf (dump_file, "Splitting with gen_peephole2_237 (i386.md:27567)\n");
10804 : start_sequence ();
10805 : #define FAIL return (end_sequence (), nullptr)
10806 : #define DONE return end_sequence ()
10807 : #line 27575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10808 : {
10809 : ix86_expand_clear (operands[0]);
10810 : emit_move_insn (operands[1], operands[0]);
10811 : emit_move_insn (operands[2], operands[0]);
10812 : emit_move_insn (operands[3], operands[0]);
10813 : ix86_last_zero_store_uid
10814 : = INSN_UID (emit_move_insn (operands[4], operands[0]));
10815 : DONE;
10816 : }
10817 : #undef DONE
10818 : #undef FAIL
10819 : static const uint8_t expand_encoding[] = {
10820 : 0x01, 0x27, 0x00
10821 : };
10822 : return complete_seq (expand_encoding, operands);
10823 : }
10824 :
10825 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27611 */
10826 : extern rtx_insn *gen_peephole2_243 (rtx_insn *, rtx *);
10827 : rtx_insn *
10828 : gen_peephole2_243 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10829 : {
10830 : if (dump_file)
10831 : fprintf (dump_file, "Splitting with gen_peephole2_243 (i386.md:27611)\n");
10832 : start_sequence ();
10833 : #define FAIL return (end_sequence (), nullptr)
10834 : #define DONE return end_sequence ()
10835 : #line 27621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10836 : {
10837 : emit_move_insn (operands[5], operands[0]);
10838 : emit_move_insn (operands[1], operands[0]);
10839 : emit_move_insn (operands[2], operands[0]);
10840 : emit_move_insn (operands[3], operands[0]);
10841 : ix86_last_zero_store_uid
10842 : = INSN_UID (emit_move_insn (operands[4], operands[0]));
10843 : DONE;
10844 : }
10845 : #undef DONE
10846 : #undef FAIL
10847 : static const uint8_t expand_encoding[] = {
10848 : 0x01, 0x27, 0x00
10849 : };
10850 : return complete_seq (expand_encoding, operands);
10851 : }
10852 :
10853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27678 */
10854 : extern rtx_insn *gen_split_985 (rtx_insn *, rtx *);
10855 : rtx_insn *
10856 : gen_split_985 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10857 : {
10858 : if (dump_file)
10859 : fprintf (dump_file, "Splitting with gen_split_985 (i386.md:27678)\n");
10860 : start_sequence ();
10861 : #define FAIL return (end_sequence (), nullptr)
10862 : #define DONE return end_sequence ()
10863 : #line 27701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10864 : {
10865 : operands[1] = force_reg (HImode, operands[1]);
10866 : operands[3] = gen_reg_rtx (HImode);
10867 : }
10868 : #undef DONE
10869 : #undef FAIL
10870 : static const uint8_t expand_encoding[] = {
10871 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
10872 : 0x3a, 0x08, 0x3b, 0x10, 0x01, 0x01, 0x01, 0x02,
10873 : 0x01, 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x10, 0x01,
10874 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x10,
10875 : 0x63, 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01,
10876 : 0x03, 0x01, 0x01
10877 : };
10878 : return complete_seq (expand_encoding, operands);
10879 : }
10880 :
10881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27678 */
10882 : extern rtx_insn *gen_split_995 (rtx_insn *, rtx *);
10883 : rtx_insn *
10884 : gen_split_995 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10885 : {
10886 : if (dump_file)
10887 : fprintf (dump_file, "Splitting with gen_split_995 (i386.md:27678)\n");
10888 : start_sequence ();
10889 : #define FAIL return (end_sequence (), nullptr)
10890 : #define DONE return end_sequence ()
10891 : #line 27701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10892 : {
10893 : operands[1] = force_reg (DImode, operands[1]);
10894 : operands[3] = gen_reg_rtx (DImode);
10895 : }
10896 : #undef DONE
10897 : #undef FAIL
10898 : static const uint8_t expand_encoding[] = {
10899 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
10900 : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
10901 : 0x01, 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x12, 0x01,
10902 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x12,
10903 : 0x66, 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01,
10904 : 0x03, 0x01, 0x01
10905 : };
10906 : return complete_seq (expand_encoding, operands);
10907 : }
10908 :
10909 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27927 */
10910 : rtx
10911 : gen_builtin_setjmp_receiver (const rtx operand0)
10912 : {
10913 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
10914 : start_sequence ();
10915 : {
10916 : #define FAIL return (end_sequence (), nullptr)
10917 : #define DONE return end_sequence ()
10918 : #line 27930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10919 : {
10920 : #if TARGET_MACHO
10921 : if (TARGET_MACHO)
10922 : {
10923 : rtx xops[3];
10924 : rtx_code_label *label_rtx = gen_label_rtx ();
10925 : emit_insn (gen_set_got_labelled (pic_offset_table_rtx, label_rtx));
10926 : xops[0] = xops[1] = pic_offset_table_rtx;
10927 : xops[2] = machopic_gen_offset (gen_rtx_LABEL_REF (SImode, label_rtx));
10928 : ix86_expand_binary_operator (MINUS, SImode, xops);
10929 : }
10930 : else
10931 : #endif
10932 : emit_insn (gen_set_got (pic_offset_table_rtx));
10933 : DONE;
10934 : }
10935 : #undef DONE
10936 : #undef FAIL
10937 : }
10938 : static const uint8_t expand_encoding[] = {
10939 : 0x01, 0x37, 0x00, 0x01, 0x00
10940 : };
10941 : return complete_seq (expand_encoding, operands);
10942 : }
10943 :
10944 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28199 */
10945 : extern rtx_insn *gen_peephole2_265 (rtx_insn *, rtx *);
10946 : rtx_insn *
10947 : gen_peephole2_265 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10948 : {
10949 : if (dump_file)
10950 : fprintf (dump_file, "Splitting with gen_peephole2_265 (i386.md:28199)\n");
10951 : start_sequence ();
10952 : static const uint8_t expand_encoding[] = {
10953 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10954 : 0x11, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
10955 : 0x01, 0x04
10956 : };
10957 : return complete_seq (expand_encoding, operands);
10958 : }
10959 :
10960 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28296 */
10961 : extern rtx_insn *gen_split_1003 (rtx_insn *, rtx *);
10962 : rtx_insn *
10963 : gen_split_1003 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10964 : {
10965 : if (dump_file)
10966 : fprintf (dump_file, "Splitting with gen_split_1003 (i386.md:28296)\n");
10967 : start_sequence ();
10968 : #define FAIL return (end_sequence (), nullptr)
10969 : #define DONE return end_sequence ()
10970 : #line 28313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10971 : {
10972 : operands[0] = gen_lowpart (SImode, operands[0]);
10973 : operands[1] = gen_lowpart (SImode, operands[1]);
10974 : if (GET_CODE (operands[3]) != ASHIFT)
10975 : operands[2] = gen_lowpart (SImode, operands[2]);
10976 : operands[3] = shallow_copy_rtx (operands[3]);
10977 : PUT_MODE (operands[3], SImode);
10978 : }
10979 : #undef DONE
10980 : #undef FAIL
10981 : static const uint8_t expand_encoding[] = {
10982 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
10983 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10984 : };
10985 : return complete_seq (expand_encoding, operands);
10986 : }
10987 :
10988 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28450 */
10989 : extern rtx_insn *gen_peephole2_278 (rtx_insn *, rtx *);
10990 : rtx_insn *
10991 : gen_peephole2_278 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10992 : {
10993 : HARD_REG_SET _regs_allocated;
10994 : CLEAR_HARD_REG_SET (_regs_allocated);
10995 : if ((operands[1] = peep2_find_free_register (0, 0, "q", QImode, &_regs_allocated)) == NULL_RTX)
10996 : return NULL;
10997 : if (dump_file)
10998 : fprintf (dump_file, "Splitting with gen_peephole2_278 (i386.md:28450)\n");
10999 : start_sequence ();
11000 : #define FAIL return (end_sequence (), nullptr)
11001 : #define DONE return end_sequence ()
11002 : #line 28464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11003 : operands[2] = gen_lowpart (SImode, operands[1]);
11004 : #undef DONE
11005 : #undef FAIL
11006 : static const uint8_t expand_encoding[] = {
11007 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x02, 0x27,
11008 : 0x00, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x00, 0x01,
11009 : 0x01
11010 : };
11011 : return complete_seq (expand_encoding, operands);
11012 : }
11013 :
11014 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28558 */
11015 : extern rtx_insn *gen_peephole2_291 (rtx_insn *, rtx *);
11016 : rtx_insn *
11017 : gen_peephole2_291 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11018 : {
11019 : if (dump_file)
11020 : fprintf (dump_file, "Splitting with gen_peephole2_291 (i386.md:28558)\n");
11021 : start_sequence ();
11022 : static const uint8_t expand_encoding[] = {
11023 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
11024 : 0x01, 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x11,
11025 : 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01,
11026 : 0x03, 0x27, 0x00, 0x1f, 0x81, 0x06, 0x11, 0x01,
11027 : 0x02, 0x27, 0x08, 0x27, 0x08, 0x32, 0x11, 0x49,
11028 : 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01, 0x02,
11029 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x03, 0x00
11030 : };
11031 : return complete_seq (expand_encoding, operands);
11032 : }
11033 :
11034 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28622 */
11035 : extern rtx_insn *gen_peephole2_301 (rtx_insn *, rtx *);
11036 : rtx_insn *
11037 : gen_peephole2_301 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11038 : {
11039 : if (dump_file)
11040 : fprintf (dump_file, "Splitting with gen_peephole2_301 (i386.md:28622)\n");
11041 : start_sequence ();
11042 : #define FAIL return (end_sequence (), nullptr)
11043 : #define DONE return end_sequence ()
11044 : #line 28637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11045 : {
11046 : operands[4]
11047 : = ix86_replace_reg_with_reg (operands[2], operands[0], operands[1]);
11048 : }
11049 : #undef DONE
11050 : #undef FAIL
11051 : static const uint8_t expand_encoding[] = {
11052 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
11053 : 0x02, 0x1f, 0x01, 0x00, 0x02, 0x03, 0x01, 0x00,
11054 : 0x01, 0x01, 0x05, 0x02, 0x11
11055 : };
11056 : return complete_seq (expand_encoding, operands);
11057 : }
11058 :
11059 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28695 */
11060 : extern rtx_insn *gen_peephole2_313 (rtx_insn *, rtx *);
11061 : rtx_insn *
11062 : gen_peephole2_313 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11063 : {
11064 : HARD_REG_SET _regs_allocated;
11065 : CLEAR_HARD_REG_SET (_regs_allocated);
11066 : if ((operands[2] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11067 : return NULL;
11068 : if (dump_file)
11069 : fprintf (dump_file, "Splitting with gen_peephole2_313 (i386.md:28695)\n");
11070 : start_sequence ();
11071 : static const uint8_t expand_encoding[] = {
11072 : 0x03, 0x1f, 0x01, 0x02, 0x01, 0x00, 0x17, 0x00,
11073 : 0x02, 0x1f, 0x01, 0x02, 0x02, 0x03, 0x01, 0x01,
11074 : 0x01, 0x02, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x00,
11075 : 0x01, 0x02
11076 : };
11077 : return complete_seq (expand_encoding, operands);
11078 : }
11079 :
11080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28784 */
11081 : extern rtx_insn *gen_peephole2_323 (rtx_insn *, rtx *);
11082 : rtx_insn *
11083 : gen_peephole2_323 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11084 : {
11085 : if (dump_file)
11086 : fprintf (dump_file, "Splitting with gen_peephole2_323 (i386.md:28784)\n");
11087 : start_sequence ();
11088 : #define FAIL return (end_sequence (), nullptr)
11089 : #define DONE return end_sequence ()
11090 : #line 28802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11091 : {
11092 : operands[4] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (0)), 0, 0));
11093 : operands[5]
11094 : = gen_rtx_fmt_ee (GET_CODE (operands[2]), GET_MODE (operands[2]),
11095 : copy_rtx (operands[0]), operands[1]);
11096 : operands[6]
11097 : = gen_rtx_COMPARE (GET_MODE (operands[4]), copy_rtx (operands[5]),
11098 : const0_rtx);
11099 : }
11100 : #undef DONE
11101 : #undef FAIL
11102 : static const uint8_t expand_encoding[] = {
11103 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x01,
11104 : 0x06, 0x1f, 0x01, 0x00, 0x01, 0x05
11105 : };
11106 : return complete_seq (expand_encoding, operands);
11107 : }
11108 :
11109 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28848 */
11110 : extern rtx_insn *gen_peephole2_333 (rtx_insn *, rtx *);
11111 : rtx_insn *
11112 : gen_peephole2_333 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11113 : {
11114 : if (dump_file)
11115 : fprintf (dump_file, "Splitting with gen_peephole2_333 (i386.md:28848)\n");
11116 : start_sequence ();
11117 : #define FAIL return (end_sequence (), nullptr)
11118 : #define DONE return end_sequence ()
11119 : #line 28865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11120 : {
11121 : operands[3] = SET_DEST (PATTERN (peep2_next_insn (2)));
11122 : operands[4]
11123 : = gen_rtx_fmt_ee (GET_CODE (operands[2]), GET_MODE (operands[2]),
11124 : copy_rtx (operands[1]),
11125 : operands[0]);
11126 : operands[5]
11127 : = gen_rtx_COMPARE (GET_MODE (operands[3]),
11128 : copy_rtx (operands[4]),
11129 : const0_rtx);
11130 : }
11131 : #undef DONE
11132 : #undef FAIL
11133 : static const uint8_t expand_encoding[] = {
11134 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x03, 0x01,
11135 : 0x05, 0x1f, 0x01, 0x01, 0x01, 0x04
11136 : };
11137 : return complete_seq (expand_encoding, operands);
11138 : }
11139 :
11140 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28953 */
11141 : extern rtx_insn *gen_peephole2_343 (rtx_insn *, rtx *);
11142 : rtx_insn *
11143 : gen_peephole2_343 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11144 : {
11145 : if (dump_file)
11146 : fprintf (dump_file, "Splitting with gen_peephole2_343 (i386.md:28953)\n");
11147 : start_sequence ();
11148 : #define FAIL return (end_sequence (), nullptr)
11149 : #define DONE return end_sequence ()
11150 : #line 28977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11151 : {
11152 : operands[5] = SET_DEST (PATTERN (peep2_next_insn (3)));
11153 : operands[6]
11154 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), QImode,
11155 : copy_rtx (operands[1]),
11156 : gen_lowpart (QImode, operands[2]));
11157 : operands[7]
11158 : = gen_rtx_COMPARE (GET_MODE (operands[5]),
11159 : copy_rtx (operands[6]),
11160 : const0_rtx);
11161 : }
11162 : #undef DONE
11163 : #undef FAIL
11164 : static const uint8_t expand_encoding[] = {
11165 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05, 0x01,
11166 : 0x07, 0x1f, 0x01, 0x01, 0x01, 0x06
11167 : };
11168 : return complete_seq (expand_encoding, operands);
11169 : }
11170 :
11171 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29069 */
11172 : extern rtx_insn *gen_peephole2_353 (rtx_insn *, rtx *);
11173 : rtx_insn *
11174 : gen_peephole2_353 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11175 : {
11176 : if (dump_file)
11177 : fprintf (dump_file, "Splitting with gen_peephole2_353 (i386.md:29069)\n");
11178 : start_sequence ();
11179 : #define FAIL return (end_sequence (), nullptr)
11180 : #define DONE return end_sequence ()
11181 : #line 29092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11182 : {
11183 : operands[5] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (1)), 0, 0));
11184 : operands[6]
11185 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11186 : copy_rtx (operands[1]), operands[2]);
11187 : operands[7]
11188 : = gen_rtx_COMPARE (GET_MODE (operands[5]), copy_rtx (operands[6]),
11189 : const0_rtx);
11190 : }
11191 : #undef DONE
11192 : #undef FAIL
11193 : static const uint8_t expand_encoding[] = {
11194 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05, 0x01,
11195 : 0x07, 0x1f, 0x01, 0x01, 0x01, 0x06
11196 : };
11197 : return complete_seq (expand_encoding, operands);
11198 : }
11199 :
11200 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29250 */
11201 : extern rtx_insn *gen_peephole2_363 (rtx_insn *, rtx *);
11202 : rtx_insn *
11203 : gen_peephole2_363 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11204 : {
11205 : if (dump_file)
11206 : fprintf (dump_file, "Splitting with gen_peephole2_363 (i386.md:29250)\n");
11207 : start_sequence ();
11208 : static const uint8_t expand_encoding[] = {
11209 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11210 : };
11211 : return complete_seq (expand_encoding, operands);
11212 : }
11213 :
11214 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29280 */
11215 : extern rtx_insn *gen_peephole2_369 (rtx_insn *, rtx *);
11216 : rtx_insn *
11217 : gen_peephole2_369 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11218 : {
11219 : if (dump_file)
11220 : fprintf (dump_file, "Splitting with gen_peephole2_369 (i386.md:29280)\n");
11221 : start_sequence ();
11222 : #define FAIL return (end_sequence (), nullptr)
11223 : #define DONE return end_sequence ()
11224 : #line 29287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11225 : {
11226 : if (8 < GET_MODE_SIZE (SImode))
11227 : operands[0] = gen_lowpart (SImode, operands[0]);
11228 : }
11229 : #undef DONE
11230 : #undef FAIL
11231 : static const uint8_t expand_encoding[] = {
11232 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
11233 : 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11234 : 0xff, 0x7f, 0x05, 0x02, 0x11
11235 : };
11236 : return complete_seq (expand_encoding, operands);
11237 : }
11238 :
11239 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29397 */
11240 : extern rtx_insn *gen_peephole2_383 (rtx_insn *, rtx *);
11241 : rtx_insn *
11242 : gen_peephole2_383 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11243 : {
11244 : HARD_REG_SET _regs_allocated;
11245 : CLEAR_HARD_REG_SET (_regs_allocated);
11246 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11247 : return NULL;
11248 : if (dump_file)
11249 : fprintf (dump_file, "Splitting with gen_peephole2_383 (i386.md:29397)\n");
11250 : start_sequence ();
11251 : static const uint8_t expand_encoding[] = {
11252 : 0x03, 0x21, 0x00, 0x01, 0x01, 0x1f, 0x36, 0x11,
11253 : 0x56, 0x11, 0x30, 0x11, 0x07, 0x01, 0x01, 0x17,
11254 : 0x00, 0x02, 0x1f, 0x36, 0x11, 0x56, 0x11, 0x30,
11255 : 0x11, 0x07, 0x01, 0x01, 0x21, 0x00, 0x36, 0x01,
11256 : 0x31, 0x00
11257 : };
11258 : return complete_seq (expand_encoding, operands);
11259 : }
11260 :
11261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29425 */
11262 : extern rtx_insn *gen_peephole2_393 (rtx_insn *, rtx *);
11263 : rtx_insn *
11264 : gen_peephole2_393 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11265 : {
11266 : HARD_REG_SET _regs_allocated;
11267 : CLEAR_HARD_REG_SET (_regs_allocated);
11268 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11269 : return NULL;
11270 : if (dump_file)
11271 : fprintf (dump_file, "Splitting with gen_peephole2_393 (i386.md:29425)\n");
11272 : start_sequence ();
11273 : static const uint8_t expand_encoding[] = {
11274 : 0x03, 0x21, 0x00, 0x01, 0x01, 0x1f, 0x36, 0x11,
11275 : 0x56, 0x12, 0x30, 0x12, 0x07, 0x01, 0x01, 0x1f,
11276 : 0x36, 0x11, 0x56, 0x12, 0x30, 0x12, 0x07, 0x01,
11277 : 0x01
11278 : };
11279 : return complete_seq (expand_encoding, operands);
11280 : }
11281 :
11282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29467 */
11283 : extern rtx_insn *gen_peephole2_404 (rtx_insn *, rtx *);
11284 : rtx_insn *
11285 : gen_peephole2_404 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11286 : {
11287 : HARD_REG_SET _regs_allocated;
11288 : CLEAR_HARD_REG_SET (_regs_allocated);
11289 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11290 : return NULL;
11291 : if (dump_file)
11292 : fprintf (dump_file, "Splitting with gen_peephole2_404 (i386.md:29467)\n");
11293 : start_sequence ();
11294 : static const uint8_t expand_encoding[] = {
11295 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x36,
11296 : 0x12, 0x59, 0x11, 0x30, 0x11, 0x07, 0x21, 0x00,
11297 : 0x36, 0x01, 0x31, 0x00, 0x1f, 0x01, 0x01, 0x36,
11298 : 0x12, 0x59, 0x11, 0x30, 0x11, 0x07
11299 : };
11300 : return complete_seq (expand_encoding, operands);
11301 : }
11302 :
11303 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29492 */
11304 : extern rtx_insn *gen_peephole2_412 (rtx_insn *, rtx *);
11305 : rtx_insn *
11306 : gen_peephole2_412 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11307 : {
11308 : HARD_REG_SET _regs_allocated;
11309 : CLEAR_HARD_REG_SET (_regs_allocated);
11310 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11311 : return NULL;
11312 : if ((operands[2] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11313 : return NULL;
11314 : if (dump_file)
11315 : fprintf (dump_file, "Splitting with gen_peephole2_412 (i386.md:29492)\n");
11316 : start_sequence ();
11317 : static const uint8_t expand_encoding[] = {
11318 : 0x02, 0x1f, 0x01, 0x01, 0x36, 0x12, 0x59, 0x11,
11319 : 0x30, 0x11, 0x07, 0x1f, 0x01, 0x02, 0x36, 0x12,
11320 : 0x59, 0x11, 0x30, 0x11, 0x07
11321 : };
11322 : return complete_seq (expand_encoding, operands);
11323 : }
11324 :
11325 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29546 */
11326 : extern rtx_insn *gen_peephole2_423 (rtx_insn *, rtx *);
11327 : rtx_insn *
11328 : gen_peephole2_423 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11329 : {
11330 : if (dump_file)
11331 : fprintf (dump_file, "Splitting with gen_peephole2_423 (i386.md:29546)\n");
11332 : start_sequence ();
11333 : #define FAIL return (end_sequence (), nullptr)
11334 : #define DONE return end_sequence ()
11335 : #line 29558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11336 : operands[2] = GEN_INT (INTVAL (operands[2]) - 1);
11337 : #undef DONE
11338 : #undef FAIL
11339 : static const uint8_t expand_encoding[] = {
11340 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1f, 0x01,
11341 : 0x00, 0x3b, 0x12, 0x3e, 0x12, 0x01, 0x00, 0x01,
11342 : 0x02, 0x01, 0x00
11343 : };
11344 : return complete_seq (expand_encoding, operands);
11345 : }
11346 :
11347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29850 */
11348 : rtx
11349 : gen_crc_revsisi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11350 : {
11351 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11352 : start_sequence ();
11353 : {
11354 : #define FAIL _Pragma ("GCC error \"crc_revsisi4 cannot FAIL\"") (void)0
11355 : #define DONE return end_sequence ()
11356 : #line 29856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11357 : {
11358 : /* crc32 uses iSCSI polynomial */
11359 : if (INTVAL (operands[3]) == 0x1EDC6F41)
11360 : emit_insn (gen_sse4_2_crc32si (operands[0], operands[1], operands[2]));
11361 : else
11362 : expand_reversed_crc_table_based (operands[0], operands[1], operands[2],
11363 : operands[3], SImode,
11364 : generate_reflecting_code_standard);
11365 : DONE;
11366 : }
11367 : #undef DONE
11368 : #undef FAIL
11369 : }
11370 : static const uint8_t expand_encoding[] = {
11371 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
11372 : 0x03
11373 : };
11374 : return complete_seq (expand_encoding, operands);
11375 : }
11376 :
11377 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30766 */
11378 : rtx
11379 : gen_spaceshipxf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11380 : {
11381 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11382 : start_sequence ();
11383 : {
11384 : #define FAIL return (end_sequence (), nullptr)
11385 : #define DONE return end_sequence ()
11386 : #line 30772 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11387 : {
11388 : ix86_expand_fp_spaceship (operands[0], operands[1], operands[2],
11389 : operands[3]);
11390 : DONE;
11391 : }
11392 : #undef DONE
11393 : #undef FAIL
11394 : }
11395 : static const uint8_t expand_encoding[] = {
11396 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
11397 : 0x03
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_movv2sf (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 (V2SFmode, 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_1015 (rtx_insn *, rtx *);
11427 : rtx_insn *
11428 : gen_split_1015 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11429 : {
11430 : if (dump_file)
11431 : fprintf (dump_file, "Splitting with gen_split_1015 (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:323 */
11446 : rtx
11447 : gen_movmisalignv4hi (const rtx operand0, const rtx operand1)
11448 : {
11449 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11450 : start_sequence ();
11451 : {
11452 : #define FAIL return (end_sequence (), nullptr)
11453 : #define DONE return end_sequence ()
11454 : #line 327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11455 : {
11456 : ix86_expand_vector_move (V4HImode, operands);
11457 : DONE;
11458 : }
11459 : #undef DONE
11460 : #undef FAIL
11461 : }
11462 : static const uint8_t expand_encoding[] = {
11463 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11464 : };
11465 : return complete_seq (expand_encoding, operands);
11466 : }
11467 :
11468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:332 */
11469 : rtx
11470 : gen_movv1si (const rtx operand0, const rtx operand1)
11471 : {
11472 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11473 : start_sequence ();
11474 : {
11475 : #define FAIL return (end_sequence (), nullptr)
11476 : #define DONE return end_sequence ()
11477 : #line 336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11478 : {
11479 : ix86_expand_vector_move (V1SImode, operands);
11480 : DONE;
11481 : }
11482 : #undef DONE
11483 : #undef FAIL
11484 : }
11485 : static const uint8_t expand_encoding[] = {
11486 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11487 : };
11488 : return complete_seq (expand_encoding, operands);
11489 : }
11490 :
11491 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:423 */
11492 : extern rtx_insn *gen_split_1030 (rtx_insn *, rtx *);
11493 : rtx_insn *
11494 : gen_split_1030 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11495 : {
11496 : if (dump_file)
11497 : fprintf (dump_file, "Splitting with gen_split_1030 (mmx.md:423)\n");
11498 : start_sequence ();
11499 : #define FAIL return (end_sequence (), nullptr)
11500 : #define DONE return end_sequence ()
11501 : #line 429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11502 : {
11503 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (V1SImode)));
11504 : /* Preserve memory attributes. */
11505 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
11506 : }
11507 : #undef DONE
11508 : #undef FAIL
11509 : static const uint8_t expand_encoding[] = {
11510 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
11511 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
11512 : 0x01
11513 : };
11514 : return complete_seq (expand_encoding, operands);
11515 : }
11516 :
11517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11518 : extern rtx_insn *gen_split_1034 (rtx_insn *, rtx *);
11519 : rtx_insn *
11520 : gen_split_1034 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11521 : {
11522 : if (dump_file)
11523 : fprintf (dump_file, "Splitting with gen_split_1034 (mmx.md:577)\n");
11524 : start_sequence ();
11525 : #define FAIL return (end_sequence (), nullptr)
11526 : #define DONE return end_sequence ()
11527 : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11528 : {
11529 : rtx op1 = avoid_constant_pool_reference (operands[1]);
11530 :
11531 : if (!CONST_VECTOR_P (op1))
11532 : FAIL;
11533 :
11534 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V4QImode);
11535 :
11536 : operands[0] = lowpart_subreg (SImode, operands[0], V4QImode);
11537 : operands[1] = GEN_INT (val);
11538 : }
11539 : #undef DONE
11540 : #undef FAIL
11541 : static const uint8_t expand_encoding[] = {
11542 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11543 : };
11544 : return complete_seq (expand_encoding, operands);
11545 : }
11546 :
11547 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11548 : extern rtx_insn *gen_split_1044 (rtx_insn *, rtx *);
11549 : rtx_insn *
11550 : gen_split_1044 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11551 : {
11552 : if (dump_file)
11553 : fprintf (dump_file, "Splitting with gen_split_1044 (mmx.md:577)\n");
11554 : start_sequence ();
11555 : #define FAIL return (end_sequence (), nullptr)
11556 : #define DONE return end_sequence ()
11557 : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11558 : {
11559 : rtx op1 = avoid_constant_pool_reference (operands[1]);
11560 :
11561 : if (!CONST_VECTOR_P (op1))
11562 : FAIL;
11563 :
11564 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V2SFmode);
11565 :
11566 : operands[0] = lowpart_subreg (DImode, operands[0], V2SFmode);
11567 : operands[1] = GEN_INT (val);
11568 : }
11569 : #undef DONE
11570 : #undef FAIL
11571 : static const uint8_t expand_encoding[] = {
11572 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11573 : };
11574 : return complete_seq (expand_encoding, operands);
11575 : }
11576 :
11577 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:598 */
11578 : extern rtx_insn *gen_split_1055 (rtx_insn *, rtx *);
11579 : rtx_insn *
11580 : gen_split_1055 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11581 : {
11582 : if (dump_file)
11583 : fprintf (dump_file, "Splitting with gen_split_1055 (mmx.md:598)\n");
11584 : start_sequence ();
11585 : #define FAIL return (end_sequence (), nullptr)
11586 : #define DONE return end_sequence ()
11587 : #line 605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11588 : {
11589 : rtx op1 = operands[1];
11590 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V4BFmode);
11591 :
11592 : operands[0] = adjust_address (operands[0], DImode, 0);
11593 : operands[1] = GEN_INT (val);
11594 : }
11595 : #undef DONE
11596 : #undef FAIL
11597 : static const uint8_t expand_encoding[] = {
11598 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11599 : };
11600 : return complete_seq (expand_encoding, operands);
11601 : }
11602 :
11603 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:670 */
11604 : rtx
11605 : gen_movq_v4hi_to_sse (const rtx operand0, const rtx operand1)
11606 : {
11607 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
11608 : start_sequence ();
11609 : {
11610 : #define FAIL return (end_sequence (), nullptr)
11611 : #define DONE return end_sequence ()
11612 : #line 676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11613 : {
11614 : if (V4HImode != V2SImode
11615 : && !flag_trapping_math)
11616 : {
11617 : rtx op1 = force_reg (V4HImode, operands[1]);
11618 : emit_move_insn (operands[0], lowpart_subreg (V8HImode,
11619 : op1, V4HImode));
11620 : DONE;
11621 : }
11622 :
11623 : operands[2] = CONST0_RTX (V4HImode);
11624 : }
11625 : #undef DONE
11626 : #undef FAIL
11627 : }
11628 : static const uint8_t expand_encoding[] = {
11629 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x01,
11630 : 0x01, 0x01, 0x02
11631 : };
11632 : return complete_seq (expand_encoding, operands);
11633 : }
11634 :
11635 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:805 */
11636 : rtx
11637 : gen_mmx_mulv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11638 : {
11639 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11640 : start_sequence ();
11641 : {
11642 : #define FAIL return (end_sequence (), nullptr)
11643 : #define DONE return end_sequence ()
11644 : #line 812 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11645 : ix86_fixup_binary_operands_no_copy (MULT, V2SFmode, operands);
11646 : #undef DONE
11647 : #undef FAIL
11648 : }
11649 : static const uint8_t expand_encoding[] = {
11650 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e,
11651 : 0x67, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
11652 : 0x27, 0x00, 0x6f
11653 : };
11654 : return complete_seq (expand_encoding, operands);
11655 : }
11656 :
11657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1073 */
11658 : extern rtx_insn *gen_split_1065 (rtx_insn *, rtx *);
11659 : rtx_insn *
11660 : gen_split_1065 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11661 : {
11662 : if (dump_file)
11663 : fprintf (dump_file, "Splitting with gen_split_1065 (mmx.md:1073)\n");
11664 : start_sequence ();
11665 : #define FAIL return (end_sequence (), nullptr)
11666 : #define DONE return end_sequence ()
11667 : #line 1087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11668 : {
11669 : rtx op1 = gen_reg_rtx (V4SFmode);
11670 : rtx op0 = gen_reg_rtx (V4SFmode);
11671 :
11672 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11673 :
11674 : emit_insn (gen_sse3_hsubv4sf3 (op0, op1, op1));
11675 :
11676 : emit_move_insn (operands[0], lowpart_subreg (SFmode, op0, V4SFmode));
11677 : DONE;
11678 : }
11679 : #undef DONE
11680 : #undef FAIL
11681 : static const uint8_t expand_encoding[] = {
11682 : 0x01, 0x27, 0x00
11683 : };
11684 : return complete_seq (expand_encoding, operands);
11685 : }
11686 :
11687 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1466 */
11688 : rtx
11689 : gen_fmsv2sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11690 : {
11691 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11692 : start_sequence ();
11693 : {
11694 : #define FAIL _Pragma ("GCC error \"fmsv2sf4 cannot FAIL\"") (void)0
11695 : #define DONE return end_sequence ()
11696 : #line 1475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11697 : {
11698 : rtx op3 = gen_reg_rtx (V4SFmode);
11699 : rtx op2 = gen_reg_rtx (V4SFmode);
11700 : rtx op1 = gen_reg_rtx (V4SFmode);
11701 : rtx op0 = gen_reg_rtx (V4SFmode);
11702 :
11703 : emit_insn (gen_movq_v2sf_to_sse (op3, operands[3]));
11704 : emit_insn (gen_movq_v2sf_to_sse (op2, operands[2]));
11705 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11706 :
11707 : emit_insn (gen_fmsv4sf4 (op0, op1, op2, op3));
11708 :
11709 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11710 : DONE;
11711 : }
11712 : #undef DONE
11713 : #undef FAIL
11714 : }
11715 : static const uint8_t expand_encoding[] = {
11716 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x67, 0x01,
11717 : 0x01, 0x01, 0x02, 0x3d, 0x67, 0x01, 0x03
11718 : };
11719 : return complete_seq (expand_encoding, operands);
11720 : }
11721 :
11722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1804 */
11723 : extern rtx_insn *gen_split_1068 (rtx_insn *, rtx *);
11724 : rtx_insn *
11725 : gen_split_1068 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11726 : {
11727 : if (dump_file)
11728 : fprintf (dump_file, "Splitting with gen_split_1068 (mmx.md:1804)\n");
11729 : start_sequence ();
11730 : #define FAIL return (end_sequence (), nullptr)
11731 : #define DONE return end_sequence ()
11732 : #line 1814 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11733 : operands[1] = gen_lowpart (SFmode, operands[1]);
11734 : #undef DONE
11735 : #undef FAIL
11736 : static const uint8_t expand_encoding[] = {
11737 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11738 : };
11739 : return complete_seq (expand_encoding, operands);
11740 : }
11741 :
11742 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1967 */
11743 : rtx
11744 : gen_floorv2sf2 (const rtx operand0, const rtx operand1)
11745 : {
11746 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11747 : start_sequence ();
11748 : {
11749 : #define FAIL _Pragma ("GCC error \"floorv2sf2 cannot FAIL\"") (void)0
11750 : #define DONE return end_sequence ()
11751 : #line 1972 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11752 : {
11753 : rtx op1 = gen_reg_rtx (V4SFmode);
11754 : rtx op0 = gen_reg_rtx (V4SFmode);
11755 :
11756 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11757 :
11758 : emit_insn (gen_floorv4sf2 (op0, op1));
11759 :
11760 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11761 : DONE;
11762 : }
11763 : #undef DONE
11764 : #undef FAIL
11765 : }
11766 : static const uint8_t expand_encoding[] = {
11767 : 0x02, 0x01, 0x00, 0x01, 0x01
11768 : };
11769 : return complete_seq (expand_encoding, operands);
11770 : }
11771 :
11772 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2113 */
11773 : rtx
11774 : gen_movd_v2bf_to_sse_reg (const rtx operand0, const rtx operand1, const rtx operand2)
11775 : {
11776 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11777 : static const uint8_t expand_encoding[] = {
11778 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x0c,
11779 : 0x69, 0x01, 0x01, 0x01, 0x02, 0x27, 0x03
11780 : };
11781 : return expand_rtx (expand_encoding, operands);
11782 : }
11783 :
11784 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2122 */
11785 : rtx
11786 : gen_subv4hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11787 : {
11788 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11789 : start_sequence ();
11790 : {
11791 : #define FAIL return (end_sequence (), nullptr)
11792 : #define DONE return end_sequence ()
11793 : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11794 : {
11795 : rtx op2 = gen_reg_rtx (V8HFmode);
11796 : rtx op1 = gen_reg_rtx (V8HFmode);
11797 : rtx op0 = gen_reg_rtx (V8HFmode);
11798 :
11799 : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
11800 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
11801 : emit_insn (gen_subv8hf3 (op0, op1, op2));
11802 :
11803 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
11804 : DONE;
11805 : }
11806 : #undef DONE
11807 : #undef FAIL
11808 : }
11809 : static const uint8_t expand_encoding[] = {
11810 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x66, 0x01, 0x01,
11811 : 0x01, 0x02
11812 : };
11813 : return complete_seq (expand_encoding, operands);
11814 : }
11815 :
11816 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2161 */
11817 : rtx
11818 : gen_divv2hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11819 : {
11820 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11821 : start_sequence ();
11822 : {
11823 : #define FAIL return (end_sequence (), nullptr)
11824 : #define DONE return end_sequence ()
11825 : #line 2167 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11826 : {
11827 : rtx op2 = gen_reg_rtx (V8HFmode);
11828 : rtx op1 = gen_reg_rtx (V8HFmode);
11829 : rtx op0 = gen_reg_rtx (V8HFmode);
11830 :
11831 : emit_insn (gen_movd_v2hf_to_sse_reg (op2, operands[2],
11832 : force_reg (V8HFmode, CONST1_RTX (V8HFmode))));
11833 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
11834 : emit_insn (gen_divv8hf3 (op0, op1, op2));
11835 :
11836 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
11837 : DONE;
11838 : }
11839 : #undef DONE
11840 : #undef FAIL
11841 : }
11842 : static const uint8_t expand_encoding[] = {
11843 : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x63, 0x01, 0x01,
11844 : 0x01, 0x02
11845 : };
11846 : return complete_seq (expand_encoding, operands);
11847 : }
11848 :
11849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2235 */
11850 : rtx
11851 : gen_sqrtv4bf2 (const rtx operand0, const rtx operand1)
11852 : {
11853 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11854 : start_sequence ();
11855 : {
11856 : #define FAIL _Pragma ("GCC error \"sqrtv4bf2 cannot FAIL\"") (void)0
11857 : #define DONE return end_sequence ()
11858 : #line 2239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11859 : {
11860 : rtx op0 = gen_reg_rtx (V8BFmode);
11861 : rtx op1 = lowpart_subreg (V8BFmode,
11862 : force_reg (V4BFmode, operands[1]), V4BFmode);
11863 :
11864 : emit_insn (gen_sqrtv8bf2 (op0, op1));
11865 :
11866 : emit_move_insn (operands[0], lowpart_subreg (V4BFmode, op0, V8BFmode));
11867 : DONE;
11868 : }
11869 : #undef DONE
11870 : #undef FAIL
11871 : }
11872 : static const uint8_t expand_encoding[] = {
11873 : 0x01, 0x1f, 0x01, 0x00, 0x7c, 0x65, 0x01, 0x01
11874 : };
11875 : return complete_seq (expand_encoding, operands);
11876 : }
11877 :
11878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2261 */
11879 : extern rtx_insn *gen_split_1074 (rtx_insn *, rtx *);
11880 : rtx_insn *
11881 : gen_split_1074 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11882 : {
11883 : if (dump_file)
11884 : fprintf (dump_file, "Splitting with gen_split_1074 (mmx.md:2261)\n");
11885 : start_sequence ();
11886 : #define FAIL return (end_sequence (), nullptr)
11887 : #define DONE return end_sequence ()
11888 : #line 2271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11889 : {
11890 : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
11891 : std::swap (operands[1], operands[2]);
11892 : }
11893 : #undef DONE
11894 : #undef FAIL
11895 : static const uint8_t expand_encoding[] = {
11896 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x63, 0x01, 0x01,
11897 : 0x01, 0x02
11898 : };
11899 : return complete_seq (expand_encoding, operands);
11900 : }
11901 :
11902 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2313 */
11903 : rtx
11904 : gen_vcond_mask_v4bfv4hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11905 : {
11906 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11907 : start_sequence ();
11908 : {
11909 : #define FAIL _Pragma ("GCC error \"vcond_mask_v4bfv4hi cannot FAIL\"") (void)0
11910 : #define DONE return end_sequence ()
11911 : #line 2320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11912 : {
11913 : ix86_expand_sse_movcc (operands[0], operands[3],
11914 : operands[1], operands[2]);
11915 : DONE;
11916 : }
11917 : #undef DONE
11918 : #undef FAIL
11919 : }
11920 : static const uint8_t expand_encoding[] = {
11921 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x65, 0x01,
11922 : 0x01, 0x01, 0x02, 0x01, 0x03
11923 : };
11924 : return complete_seq (expand_encoding, operands);
11925 : }
11926 :
11927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2375 */
11928 : rtx
11929 : gen_vcond_mask_v2hiqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11930 : {
11931 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11932 : start_sequence ();
11933 : {
11934 : #define FAIL _Pragma ("GCC error \"vcond_mask_v2hiqi cannot FAIL\"") (void)0
11935 : #define DONE return end_sequence ()
11936 : #line 2382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11937 : {
11938 : rtx op0 = gen_reg_rtx (V8HImode);
11939 : operands[1] = lowpart_subreg (V8HImode, operands[1], V2HImode);
11940 : operands[2] = lowpart_subreg (V8HImode, operands[2], V2HImode);
11941 : emit_insn (gen_vcond_mask_v8hiqi (op0, operands[1],
11942 : operands[2], operands[3]));
11943 : emit_move_insn (operands[0],
11944 : lowpart_subreg (V2HImode, op0, V8HImode));
11945 : DONE;
11946 : }
11947 : #undef DONE
11948 : #undef FAIL
11949 : }
11950 : static const uint8_t expand_encoding[] = {
11951 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x46, 0x01,
11952 : 0x01, 0x01, 0x02, 0x01, 0x03
11953 : };
11954 : return complete_seq (expand_encoding, operands);
11955 : }
11956 :
11957 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2481 */
11958 : rtx
11959 : gen_floorv2hf2 (const rtx operand0, const rtx operand1)
11960 : {
11961 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11962 : start_sequence ();
11963 : {
11964 : #define FAIL _Pragma ("GCC error \"floorv2hf2 cannot FAIL\"") (void)0
11965 : #define DONE return end_sequence ()
11966 : #line 2487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11967 : {
11968 : rtx op1 = gen_reg_rtx (V8HFmode);
11969 : rtx op0 = gen_reg_rtx (V8HFmode);
11970 :
11971 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
11972 : emit_insn (gen_floorv8hf2 (op0, op1));
11973 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
11974 :
11975 : DONE;
11976 : }
11977 : #undef DONE
11978 : #undef FAIL
11979 : }
11980 : static const uint8_t expand_encoding[] = {
11981 : 0x02, 0x01, 0x00, 0x01, 0x01
11982 : };
11983 : return complete_seq (expand_encoding, operands);
11984 : }
11985 :
11986 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2549 */
11987 : rtx
11988 : gen_roundv2hf2 (const rtx operand0, const rtx operand1)
11989 : {
11990 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11991 : start_sequence ();
11992 : {
11993 : #define FAIL _Pragma ("GCC error \"roundv2hf2 cannot FAIL\"") (void)0
11994 : #define DONE return end_sequence ()
11995 : #line 2555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11996 : {
11997 : rtx op1 = gen_reg_rtx (V8HFmode);
11998 : rtx op0 = gen_reg_rtx (V8HFmode);
11999 :
12000 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12001 : emit_insn (gen_roundv8hf2 (op0, op1));
12002 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
12003 :
12004 : DONE;
12005 : }
12006 : #undef DONE
12007 : #undef FAIL
12008 : }
12009 : static const uint8_t expand_encoding[] = {
12010 : 0x02, 0x01, 0x00, 0x01, 0x01
12011 : };
12012 : return complete_seq (expand_encoding, operands);
12013 : }
12014 :
12015 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2636 */
12016 : rtx
12017 : gen_xorsignv2hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
12018 : {
12019 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12020 : start_sequence ();
12021 : {
12022 : #define FAIL _Pragma ("GCC error \"xorsignv2hf3 cannot FAIL\"") (void)0
12023 : #define DONE return end_sequence ()
12024 : #line 2644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12025 : {
12026 : operands[3] = ix86_build_signbit_mask (V2HFmode, true, false);
12027 :
12028 : operands[4] = gen_reg_rtx (V2HFmode);
12029 : }
12030 : #undef DONE
12031 : #undef FAIL
12032 : }
12033 : static const uint8_t expand_encoding[] = {
12034 : 0x02, 0x1f, 0x01, 0x04, 0x49, 0x63, 0x01, 0x03,
12035 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x63, 0x01,
12036 : 0x04, 0x01, 0x01
12037 : };
12038 : return complete_seq (expand_encoding, operands);
12039 : }
12040 :
12041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2715 */
12042 : rtx
12043 : gen_fnmav4hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12044 : {
12045 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12046 : start_sequence ();
12047 : {
12048 : #define FAIL _Pragma ("GCC error \"fnmav4hf4 cannot FAIL\"") (void)0
12049 : #define DONE return end_sequence ()
12050 : #line 2723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12051 : {
12052 : rtx op3 = gen_reg_rtx (V8HFmode);
12053 : rtx op2 = gen_reg_rtx (V8HFmode);
12054 : rtx op1 = gen_reg_rtx (V8HFmode);
12055 : rtx op0 = gen_reg_rtx (V8HFmode);
12056 :
12057 : emit_insn (gen_movq_v4hf_to_sse (op3, operands[3]));
12058 : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
12059 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12060 :
12061 : emit_insn (gen_fnmav8hf4 (op0, op1, op2, op3));
12062 :
12063 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12064 : DONE;
12065 : }
12066 : #undef DONE
12067 : #undef FAIL
12068 : }
12069 : static const uint8_t expand_encoding[] = {
12070 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x66, 0x3d,
12071 : 0x66, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
12072 : };
12073 : return complete_seq (expand_encoding, operands);
12074 : }
12075 :
12076 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2851 */
12077 : rtx
12078 : gen_fnmav4bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12079 : {
12080 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12081 : start_sequence ();
12082 : {
12083 : #define FAIL _Pragma ("GCC error \"fnmav4bf4 cannot FAIL\"") (void)0
12084 : #define DONE return end_sequence ()
12085 : #line 2859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12086 : {
12087 : rtx op0 = gen_reg_rtx (V8BFmode);
12088 : rtx op1 = lowpart_subreg (V8BFmode, force_reg (V4BFmode, operands[1]), V4BFmode);
12089 : rtx op2 = lowpart_subreg (V8BFmode, force_reg (V4BFmode, operands[2]), V4BFmode);
12090 : rtx op3 = lowpart_subreg (V8BFmode, force_reg (V4BFmode, operands[3]), V4BFmode);
12091 :
12092 : emit_insn (gen_fnmav8bf4 (op0, op1, op2, op3));
12093 :
12094 : emit_move_insn (operands[0], lowpart_subreg (V4BFmode, op0, V8BFmode));
12095 : DONE;
12096 : }
12097 : #undef DONE
12098 : #undef FAIL
12099 : }
12100 : static const uint8_t expand_encoding[] = {
12101 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x65, 0x3d,
12102 : 0x65, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
12103 : };
12104 : return complete_seq (expand_encoding, operands);
12105 : }
12106 :
12107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2988 */
12108 : rtx
12109 : gen_fixuns_truncv4hfv4hi2 (const rtx operand0, const rtx operand1)
12110 : {
12111 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12112 : start_sequence ();
12113 : {
12114 : #define FAIL return (end_sequence (), nullptr)
12115 : #define DONE return end_sequence ()
12116 : #line 2993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12117 : {
12118 : rtx op1 = gen_reg_rtx (V8HFmode);
12119 : rtx op0 = gen_reg_rtx (V8HImode);
12120 :
12121 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12122 :
12123 : emit_insn (gen_fixuns_truncv8hfv8hi2 (op0, op1));
12124 :
12125 : emit_move_insn (operands[0],
12126 : lowpart_subreg (V4HImode, op0, V8HImode));
12127 : DONE;
12128 : }
12129 : #undef DONE
12130 : #undef FAIL
12131 : }
12132 : static const uint8_t expand_encoding[] = {
12133 : 0x01, 0x1f, 0x01, 0x00, 0x76, 0x49, 0x01, 0x01
12134 : };
12135 : return complete_seq (expand_encoding, operands);
12136 : }
12137 :
12138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3080 */
12139 : rtx
12140 : gen_truncv2sfv2hf2 (const rtx operand0, const rtx operand1)
12141 : {
12142 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12143 : start_sequence ();
12144 : {
12145 : #define FAIL return (end_sequence (), nullptr)
12146 : #define DONE return end_sequence ()
12147 : #line 3086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12148 : {
12149 : rtx op1 = gen_reg_rtx (V4SFmode);
12150 : rtx op0 = gen_reg_rtx (V8HFmode);
12151 :
12152 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
12153 :
12154 : emit_insn (gen_avx512fp16_truncv4sfv4hf2 (op0, op1));
12155 :
12156 : emit_move_insn (operands[0], 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, 0x72, 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:3220 */
12169 : rtx
12170 : gen_mmx_addv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12171 : {
12172 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12173 : start_sequence ();
12174 : {
12175 : #define FAIL return (end_sequence (), nullptr)
12176 : #define DONE return end_sequence ()
12177 : #line 3226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12178 : ix86_fixup_binary_operands_no_copy (PLUS, V8QImode, operands);
12179 : #undef DONE
12180 : #undef FAIL
12181 : }
12182 : static const uint8_t expand_encoding[] = {
12183 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x48, 0x01, 0x01,
12184 : 0x01, 0x02
12185 : };
12186 : return complete_seq (expand_encoding, operands);
12187 : }
12188 :
12189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3228 */
12190 : rtx
12191 : gen_addv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12192 : {
12193 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12194 : static const uint8_t expand_encoding[] = {
12195 : 0x1f, 0x01, 0x00, 0x3b, 0x48, 0x01, 0x01, 0x01,
12196 : 0x02
12197 : };
12198 : return expand_rtx (expand_encoding, operands);
12199 : }
12200 :
12201 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3334 */
12202 : rtx
12203 : gen_mmx_ssaddv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12204 : {
12205 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12206 : start_sequence ();
12207 : {
12208 : #define FAIL return (end_sequence (), nullptr)
12209 : #define DONE return end_sequence ()
12210 : #line 3340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12211 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V8QImode, operands);
12212 : #undef DONE
12213 : #undef FAIL
12214 : }
12215 : static const uint8_t expand_encoding[] = {
12216 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x48, 0x01,
12217 : 0x01, 0x01, 0x02
12218 : };
12219 : return complete_seq (expand_encoding, operands);
12220 : }
12221 :
12222 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3334 */
12223 : rtx
12224 : gen_mmx_sssubv4hi3 (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 (SS_MINUS, V4HImode, operands);
12233 : #undef DONE
12234 : #undef FAIL
12235 : }
12236 : static const uint8_t expand_encoding[] = {
12237 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x10, 0x49, 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:3525 */
12244 : rtx
12245 : gen_smulv4hi3_highpart (const rtx operand0, const rtx operand1, const rtx operand2)
12246 : {
12247 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12248 : static const uint8_t expand_encoding[] = {
12249 : 0x1f, 0x01, 0x00, 0x70, 0x49, 0x50, 0x51, 0x3e,
12250 : 0x51, 0x6e, 0x51, 0x01, 0x01, 0x6e, 0x51, 0x01,
12251 : 0x02, 0x27, 0x10
12252 : };
12253 : return expand_rtx (expand_encoding, operands);
12254 : }
12255 :
12256 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3702 */
12257 : rtx
12258 : gen_mmx_smaxv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12259 : {
12260 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12261 : start_sequence ();
12262 : {
12263 : #define FAIL return (end_sequence (), nullptr)
12264 : #define DONE return end_sequence ()
12265 : #line 3709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12266 : ix86_fixup_binary_operands_no_copy (SMAX, V4HImode, operands);
12267 : #undef DONE
12268 : #undef FAIL
12269 : }
12270 : static const uint8_t expand_encoding[] = {
12271 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x49, 0x01, 0x01,
12272 : 0x01, 0x02
12273 : };
12274 : return complete_seq (expand_encoding, operands);
12275 : }
12276 :
12277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3900 */
12278 : extern rtx_insn *gen_split_1089 (rtx_insn *, rtx *);
12279 : rtx_insn *
12280 : gen_split_1089 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12281 : {
12282 : if (dump_file)
12283 : fprintf (dump_file, "Splitting with gen_split_1089 (mmx.md:3900)\n");
12284 : start_sequence ();
12285 : #define FAIL return (end_sequence (), nullptr)
12286 : #define DONE return end_sequence ()
12287 : #line 3909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12288 : operands[3] = gen_int_mode (32 - 1, DImode);
12289 : #undef DONE
12290 : #undef FAIL
12291 : static const uint8_t expand_encoding[] = {
12292 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x4a, 0x01, 0x01,
12293 : 0x01, 0x03
12294 : };
12295 : return complete_seq (expand_encoding, operands);
12296 : }
12297 :
12298 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4022 */
12299 : rtx
12300 : gen_ashlv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12301 : {
12302 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12303 : start_sequence ();
12304 : {
12305 : #define FAIL return (end_sequence (), nullptr)
12306 : #define DONE return end_sequence ()
12307 : #line 4027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12308 : {
12309 : ix86_expand_vecop_qihi_partial (ASHIFT, operands[0],
12310 : operands[1], operands[2]);
12311 : DONE;
12312 : }
12313 : #undef DONE
12314 : #undef FAIL
12315 : }
12316 : static const uint8_t expand_encoding[] = {
12317 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x45, 0x01, 0x01,
12318 : 0x01, 0x02
12319 : };
12320 : return complete_seq (expand_encoding, operands);
12321 : }
12322 :
12323 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4078 */
12324 : rtx
12325 : gen_vlshrv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12326 : {
12327 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12328 : start_sequence ();
12329 : {
12330 : #define FAIL return (end_sequence (), nullptr)
12331 : #define DONE return end_sequence ()
12332 : #line 4084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12333 : {
12334 : ix86_expand_vecop_qihi_partial (LSHIFTRT, operands[0],
12335 : operands[1], operands[2]);
12336 : DONE;
12337 : }
12338 : #undef DONE
12339 : #undef FAIL
12340 : }
12341 : static const uint8_t expand_encoding[] = {
12342 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x45, 0x01, 0x01,
12343 : 0x01, 0x02
12344 : };
12345 : return complete_seq (expand_encoding, operands);
12346 : }
12347 :
12348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4106 */
12349 : rtx
12350 : gen_vec_shl_v2bf (const rtx operand0, const rtx operand1, const rtx operand2)
12351 : {
12352 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12353 : start_sequence ();
12354 : {
12355 : #define FAIL return (end_sequence (), nullptr)
12356 : #define DONE return end_sequence ()
12357 : #line 4112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12358 : {
12359 : rtx op0 = gen_reg_rtx (V1SImode);
12360 : rtx op1 = force_reg (V2BFmode, operands[1]);
12361 :
12362 : emit_insn (gen_mmx_ashlv1si3
12363 : (op0, gen_lowpart (V1SImode, op1), operands[2]));
12364 : emit_move_insn (operands[0], gen_lowpart (V2BFmode, op0));
12365 : DONE;
12366 : }
12367 : #undef DONE
12368 : #undef FAIL
12369 : }
12370 : static const uint8_t expand_encoding[] = {
12371 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x47, 0x01, 0x01,
12372 : 0x01, 0x02
12373 : };
12374 : return complete_seq (expand_encoding, operands);
12375 : }
12376 :
12377 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4138 */
12378 : rtx
12379 : gen_vec_shr_v2bf (const rtx operand0, const rtx operand1, const rtx operand2)
12380 : {
12381 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12382 : start_sequence ();
12383 : {
12384 : #define FAIL return (end_sequence (), nullptr)
12385 : #define DONE return end_sequence ()
12386 : #line 4144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12387 : {
12388 : rtx op0 = gen_reg_rtx (V1SImode);
12389 : rtx op1 = force_reg (V2BFmode, operands[1]);
12390 :
12391 : emit_insn (gen_mmx_lshrv1si3
12392 : (op0, gen_lowpart (V1SImode, op1), operands[2]));
12393 : emit_move_insn (operands[0], gen_lowpart (V2BFmode, op0));
12394 : DONE;
12395 : }
12396 : #undef DONE
12397 : #undef FAIL
12398 : }
12399 : static const uint8_t expand_encoding[] = {
12400 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x47, 0x01, 0x01,
12401 : 0x01, 0x02
12402 : };
12403 : return complete_seq (expand_encoding, operands);
12404 : }
12405 :
12406 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4277 */
12407 : rtx
12408 : gen_vec_cmpv2qiv2qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12409 : {
12410 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12411 : start_sequence ();
12412 : {
12413 : #define FAIL return (end_sequence (), nullptr)
12414 : #define DONE return end_sequence ()
12415 : #line 4283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12416 : {
12417 : bool ok = ix86_expand_int_vec_cmp (operands);
12418 : gcc_assert (ok);
12419 : DONE;
12420 : }
12421 : #undef DONE
12422 : #undef FAIL
12423 : }
12424 : static const uint8_t expand_encoding[] = {
12425 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x44, 0x01, 0x01,
12426 : 0x02, 0x01, 0x03
12427 : };
12428 : return complete_seq (expand_encoding, operands);
12429 : }
12430 :
12431 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4313 */
12432 : rtx
12433 : gen_vcond_mask_v2siv2si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12434 : {
12435 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12436 : start_sequence ();
12437 : {
12438 : #define FAIL _Pragma ("GCC error \"vcond_mask_v2siv2si cannot FAIL\"") (void)0
12439 : #define DONE return end_sequence ()
12440 : #line 4320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12441 : {
12442 : ix86_expand_sse_movcc (operands[0], operands[3],
12443 : operands[1], operands[2]);
12444 : DONE;
12445 : }
12446 : #undef DONE
12447 : #undef FAIL
12448 : }
12449 : static const uint8_t expand_encoding[] = {
12450 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4a, 0x01,
12451 : 0x01, 0x01, 0x02, 0x01, 0x03
12452 : };
12453 : return complete_seq (expand_encoding, operands);
12454 : }
12455 :
12456 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4437 */
12457 : extern rtx_insn *gen_split_1103 (rtx_insn *, rtx *);
12458 : rtx_insn *
12459 : gen_split_1103 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12460 : {
12461 : if (dump_file)
12462 : fprintf (dump_file, "Splitting with gen_split_1103 (mmx.md:4437)\n");
12463 : start_sequence ();
12464 : #define FAIL return (end_sequence (), nullptr)
12465 : #define DONE return end_sequence ()
12466 : #line 4459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12467 : {
12468 : operands[6] = gen_reg_rtx (V2HImode);
12469 : operands[7] = force_reg (V2HImode, operands[4]);
12470 : }
12471 : #undef DONE
12472 : #undef FAIL
12473 : static const uint8_t expand_encoding[] = {
12474 : 0x02, 0x1f, 0x01, 0x06, 0x5d, 0x46, 0x01, 0x03,
12475 : 0x01, 0x07, 0x1f, 0x01, 0x00, 0x1a, 0x46, 0x03,
12476 : 0x01, 0x02, 0x01, 0x01, 0x01, 0x06, 0x34
12477 : };
12478 : return complete_seq (expand_encoding, operands);
12479 : }
12480 :
12481 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4614 */
12482 : rtx
12483 : gen_andnv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12484 : {
12485 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12486 : static const uint8_t expand_encoding[] = {
12487 : 0x1f, 0x01, 0x00, 0x49, 0x48, 0x4c, 0x48, 0x01,
12488 : 0x02, 0x01, 0x01
12489 : };
12490 : return expand_rtx (expand_encoding, operands);
12491 : }
12492 :
12493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4650 */
12494 : extern rtx_insn *gen_split_1112 (rtx_insn *, rtx *);
12495 : rtx_insn *
12496 : gen_split_1112 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12497 : {
12498 : if (dump_file)
12499 : fprintf (dump_file, "Splitting with gen_split_1112 (mmx.md:4650)\n");
12500 : start_sequence ();
12501 : #define FAIL return (end_sequence (), nullptr)
12502 : #define DONE return end_sequence ()
12503 : #line 4661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12504 : {
12505 : operands[2] = lowpart_subreg (SImode, operands[2], V2QImode);
12506 : operands[1] = lowpart_subreg (SImode, operands[1], V2QImode);
12507 : operands[0] = lowpart_subreg (SImode, operands[0], V2QImode);
12508 : }
12509 : #undef DONE
12510 : #undef FAIL
12511 : static const uint8_t expand_encoding[] = {
12512 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
12513 : 0x11, 0x4c, 0x11, 0x01, 0x01, 0x01, 0x02, 0x05,
12514 : 0x02, 0x11
12515 : };
12516 : return complete_seq (expand_encoding, operands);
12517 : }
12518 :
12519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4701 */
12520 : rtx
12521 : gen_mmx_xorv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12522 : {
12523 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12524 : start_sequence ();
12525 : {
12526 : #define FAIL return (end_sequence (), nullptr)
12527 : #define DONE return end_sequence ()
12528 : #line 4707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12529 : ix86_fixup_binary_operands_no_copy (XOR, V8QImode, operands);
12530 : #undef DONE
12531 : #undef FAIL
12532 : }
12533 : static const uint8_t expand_encoding[] = {
12534 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x48, 0x01, 0x01,
12535 : 0x01, 0x02
12536 : };
12537 : return complete_seq (expand_encoding, operands);
12538 : }
12539 :
12540 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4709 */
12541 : rtx
12542 : gen_andv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12543 : {
12544 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12545 : static const uint8_t expand_encoding[] = {
12546 : 0x1f, 0x01, 0x00, 0x49, 0x49, 0x01, 0x01, 0x01,
12547 : 0x02
12548 : };
12549 : return expand_rtx (expand_encoding, operands);
12550 : }
12551 :
12552 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4733 */
12553 : rtx
12554 : gen_iorv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12555 : {
12556 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12557 : start_sequence ();
12558 : {
12559 : #define FAIL return (end_sequence (), nullptr)
12560 : #define DONE return end_sequence ()
12561 : #line 4739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12562 : ix86_expand_binary_operator (IOR, V2QImode, operands); DONE;
12563 : #undef DONE
12564 : #undef FAIL
12565 : }
12566 : static const uint8_t expand_encoding[] = {
12567 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x44, 0x01, 0x01,
12568 : 0x01, 0x02
12569 : };
12570 : return complete_seq (expand_encoding, operands);
12571 : }
12572 :
12573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4753 */
12574 : extern rtx_insn *gen_split_1125 (rtx_insn *, rtx *);
12575 : rtx_insn *
12576 : gen_split_1125 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12577 : {
12578 : if (dump_file)
12579 : fprintf (dump_file, "Splitting with gen_split_1125 (mmx.md:4753)\n");
12580 : start_sequence ();
12581 : #define FAIL return (end_sequence (), nullptr)
12582 : #define DONE return end_sequence ()
12583 : #line 4764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12584 : {
12585 : if (!register_operand (operands[2], V2QImode))
12586 : {
12587 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (operands[2],
12588 : V2QImode);
12589 : operands[2] = GEN_INT (val);
12590 : }
12591 : else
12592 : operands[2] = lowpart_subreg (HImode, operands[2], V2QImode);
12593 : operands[1] = lowpart_subreg (HImode, operands[1], V2QImode);
12594 : operands[0] = lowpart_subreg (HImode, operands[0], V2QImode);
12595 : }
12596 : #undef DONE
12597 : #undef FAIL
12598 : static const uint8_t expand_encoding[] = {
12599 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
12600 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
12601 : };
12602 : return complete_seq (expand_encoding, operands);
12603 : }
12604 :
12605 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4777 */
12606 : extern rtx_insn *gen_split_1136 (rtx_insn *, rtx *);
12607 : rtx_insn *
12608 : gen_split_1136 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12609 : {
12610 : if (dump_file)
12611 : fprintf (dump_file, "Splitting with gen_split_1136 (mmx.md:4777)\n");
12612 : start_sequence ();
12613 : #define FAIL return (end_sequence (), nullptr)
12614 : #define DONE return end_sequence ()
12615 : #line 4786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12616 : {
12617 : operands[2] = lowpart_subreg (V16QImode, operands[2], V2HImode);
12618 : operands[1] = lowpart_subreg (V16QImode, operands[1], V2HImode);
12619 : operands[0] = lowpart_subreg (V16QImode, operands[0], V2HImode);
12620 : }
12621 : #undef DONE
12622 : #undef FAIL
12623 : static const uint8_t expand_encoding[] = {
12624 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x4f, 0x01, 0x01,
12625 : 0x01, 0x02
12626 : };
12627 : return complete_seq (expand_encoding, operands);
12628 : }
12629 :
12630 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4996 */
12631 : extern rtx_insn *gen_split_1148 (rtx_insn *, rtx *);
12632 : rtx_insn *
12633 : gen_split_1148 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
12634 : {
12635 : if (dump_file)
12636 : fprintf (dump_file, "Splitting with gen_split_1148 (mmx.md:4996)\n");
12637 : start_sequence ();
12638 : #define FAIL return (end_sequence (), nullptr)
12639 : #define DONE return end_sequence ()
12640 : #line 5012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12641 : ix86_split_mmx_punpck (operands, true); DONE;
12642 : #undef DONE
12643 : #undef FAIL
12644 : static const uint8_t expand_encoding[] = {
12645 : 0x01, 0x27, 0x00
12646 : };
12647 : return complete_seq (expand_encoding, operands);
12648 : }
12649 :
12650 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5165 */
12651 : rtx
12652 : gen_truncv4hiv4qi2 (const rtx operand0, const rtx operand1)
12653 : {
12654 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12655 : start_sequence ();
12656 : {
12657 : #define FAIL return (end_sequence (), nullptr)
12658 : #define DONE return end_sequence ()
12659 : #line 5170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12660 : {
12661 : if (TARGET_AVX512VL && TARGET_AVX512BW)
12662 : emit_insn (gen_avx512vl_truncv4hiv4qi2 (operands[0], operands[1]));
12663 : else
12664 : ix86_expand_trunc_with_avx2_noavx512f (operands[0], operands[1], V8QImode);
12665 : DONE;
12666 : }
12667 : #undef DONE
12668 : #undef FAIL
12669 : }
12670 : static const uint8_t expand_encoding[] = {
12671 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x45, 0x01, 0x01
12672 : };
12673 : return complete_seq (expand_encoding, operands);
12674 : }
12675 :
12676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5245 */
12677 : rtx
12678 : gen_vec_unpacks_lo_v8qi (const rtx operand0, const rtx operand1)
12679 : {
12680 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12681 : start_sequence ();
12682 : {
12683 : #define FAIL return (end_sequence (), nullptr)
12684 : #define DONE return end_sequence ()
12685 : #line 5249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12686 : ix86_expand_sse_unpack (operands[0], operands[1], false, false); DONE;
12687 : #undef DONE
12688 : #undef FAIL
12689 : }
12690 : static const uint8_t expand_encoding[] = {
12691 : 0x02, 0x01, 0x00, 0x01, 0x01
12692 : };
12693 : return complete_seq (expand_encoding, operands);
12694 : }
12695 :
12696 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5263 */
12697 : rtx
12698 : gen_vec_unpacku_hi_v8qi (const rtx operand0, const rtx operand1)
12699 : {
12700 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12701 : start_sequence ();
12702 : {
12703 : #define FAIL return (end_sequence (), nullptr)
12704 : #define DONE return end_sequence ()
12705 : #line 5267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12706 : ix86_expand_sse_unpack (operands[0], operands[1], true, true); DONE;
12707 : #undef DONE
12708 : #undef FAIL
12709 : }
12710 : static const uint8_t expand_encoding[] = {
12711 : 0x02, 0x01, 0x00, 0x01, 0x01
12712 : };
12713 : return complete_seq (expand_encoding, operands);
12714 : }
12715 :
12716 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5677 */
12717 : extern rtx_insn *gen_split_1153 (rtx_insn *, rtx *);
12718 : rtx_insn *
12719 : gen_split_1153 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12720 : {
12721 : if (dump_file)
12722 : fprintf (dump_file, "Splitting with gen_split_1153 (mmx.md:5677)\n");
12723 : start_sequence ();
12724 : #define FAIL return (end_sequence (), nullptr)
12725 : #define DONE return end_sequence ()
12726 : #line 5684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12727 : operands[0] = adjust_address (operands[0], DImode, 0);
12728 : #undef DONE
12729 : #undef FAIL
12730 : static const uint8_t expand_encoding[] = {
12731 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x12, 0x01, 0x00,
12732 : 0x27, 0x20
12733 : };
12734 : return complete_seq (expand_encoding, operands);
12735 : }
12736 :
12737 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5937 */
12738 : rtx
12739 : gen_vec_extractv4hfhf (const rtx operand0, const rtx operand1, const rtx operand2)
12740 : {
12741 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12742 : start_sequence ();
12743 : {
12744 : #define FAIL _Pragma ("GCC error \"vec_extractv4hfhf cannot FAIL\"") (void)0
12745 : #define DONE return end_sequence ()
12746 : #line 5942 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12747 : {
12748 : ix86_expand_vector_extract (TARGET_MMX_WITH_SSE, operands[0],
12749 : operands[1], INTVAL (operands[2]));
12750 : DONE;
12751 : }
12752 : #undef DONE
12753 : #undef FAIL
12754 : }
12755 : static const uint8_t expand_encoding[] = {
12756 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12757 : };
12758 : return complete_seq (expand_encoding, operands);
12759 : }
12760 :
12761 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6040 */
12762 : extern rtx_insn *gen_split_1159 (rtx_insn *, rtx *);
12763 : rtx_insn *
12764 : gen_split_1159 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12765 : {
12766 : if (dump_file)
12767 : fprintf (dump_file, "Splitting with gen_split_1159 (mmx.md:6040)\n");
12768 : start_sequence ();
12769 : #define FAIL return (end_sequence (), nullptr)
12770 : #define DONE return end_sequence ()
12771 : #line 6054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12772 : operands[3] = GEN_INT (~INTVAL (operands[3]) & 0x3);
12773 : #undef DONE
12774 : #undef FAIL
12775 : static const uint8_t expand_encoding[] = {
12776 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x64, 0x01,
12777 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x64, 0x01,
12778 : 0x01, 0x01, 0x00, 0x01, 0x03
12779 : };
12780 : return complete_seq (expand_encoding, operands);
12781 : }
12782 :
12783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6246 */
12784 : extern rtx_insn *gen_split_1161 (rtx_insn *, rtx *);
12785 : rtx_insn *
12786 : gen_split_1161 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12787 : {
12788 : if (dump_file)
12789 : fprintf (dump_file, "Splitting with gen_split_1161 (mmx.md:6246)\n");
12790 : start_sequence ();
12791 : #define FAIL return (end_sequence (), nullptr)
12792 : #define DONE return end_sequence ()
12793 : #line 6264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12794 : {
12795 : rtx dest = lowpart_subreg (V8HFmode, operands[0], V2HFmode);
12796 : rtx op1 = lowpart_subreg (V8HFmode, operands[1], V2HFmode);
12797 : rtx op2 = lowpart_subreg (V8HFmode, operands[2], V2HFmode);
12798 :
12799 : emit_insn (gen_vec_interleave_lowv8hf (dest, op1, op2));
12800 :
12801 : static const int map[4] = { 0, 2, 1, 3 };
12802 :
12803 : int sel0 = map[INTVAL (operands[3])];
12804 : int sel1 = map[INTVAL (operands[4])];
12805 :
12806 : if (sel0 == 0 && sel1 == 1)
12807 : DONE;
12808 :
12809 : operands[3] = GEN_INT (sel0);
12810 : operands[4] = GEN_INT (sel1);
12811 : operands[5] = dest;
12812 : }
12813 : #undef DONE
12814 : #undef FAIL
12815 : static const uint8_t expand_encoding[] = {
12816 : 0x01, 0x1f, 0x01, 0x05, 0x81, 0x0a, 0x6a, 0x01,
12817 : 0x05, 0x17, 0x00, 0x08, 0x01, 0x03, 0x01, 0x04,
12818 : 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05,
12819 : 0x27, 0x06, 0x27, 0x07
12820 : };
12821 : return complete_seq (expand_encoding, operands);
12822 : }
12823 :
12824 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6546 */
12825 : rtx
12826 : gen_reduc_and_scal_v4hi (const rtx operand0, const rtx operand1)
12827 : {
12828 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12829 : start_sequence ();
12830 : {
12831 : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v4hi cannot FAIL\"") (void)0
12832 : #define DONE return end_sequence ()
12833 : #line 6551 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12834 : {
12835 : rtx tmp = gen_reg_rtx (V4HImode);
12836 : ix86_expand_reduc (gen_andv4hi3, tmp, operands[1]);
12837 : emit_insn (gen_vec_extractv4hihi (operands[0],
12838 : tmp, const0_rtx));
12839 : DONE;
12840 : }
12841 : #undef DONE
12842 : #undef FAIL
12843 : }
12844 : static const uint8_t expand_encoding[] = {
12845 : 0x01, 0x49, 0x49, 0x01, 0x00, 0x01, 0x01
12846 : };
12847 : return complete_seq (expand_encoding, operands);
12848 : }
12849 :
12850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6610 */
12851 : rtx
12852 : gen_reduc_smax_scal_v4qi (const rtx operand0, const rtx operand1)
12853 : {
12854 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12855 : start_sequence ();
12856 : {
12857 : #define FAIL return (end_sequence (), nullptr)
12858 : #define DONE return end_sequence ()
12859 : #line 6615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12860 : {
12861 : rtx tmp = gen_reg_rtx (V4QImode);
12862 : ix86_expand_reduc (gen_smaxv4qi3, tmp, operands[1]);
12863 : emit_insn (gen_vec_extractv4qiqi (operands[0], tmp, const0_rtx));
12864 : DONE;
12865 : }
12866 : #undef DONE
12867 : #undef FAIL
12868 : }
12869 : static const uint8_t expand_encoding[] = {
12870 : 0x01, 0x53, 0x45, 0x01, 0x00, 0x01, 0x01
12871 : };
12872 : return complete_seq (expand_encoding, operands);
12873 : }
12874 :
12875 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6770 */
12876 : rtx
12877 : gen_udot_prodv2siv8qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12878 : {
12879 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12880 : start_sequence ();
12881 : {
12882 : #define FAIL return (end_sequence (), nullptr)
12883 : #define DONE return end_sequence ()
12884 : #line 6776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12885 : {
12886 : operands[1] = force_reg (V8QImode, operands[1]);
12887 : operands[2] = force_reg (V8QImode, operands[2]);
12888 : operands[3] = force_reg (V2SImode, operands[3]);
12889 :
12890 : if (TARGET_AVXVNNIINT8)
12891 : {
12892 : rtx op1 = lowpart_subreg (V16QImode, operands[1], V8QImode);
12893 : rtx op2 = lowpart_subreg (V16QImode, operands[2], V8QImode);
12894 : rtx op3 = lowpart_subreg (V4SImode, operands[3], V2SImode);
12895 : rtx op0 = gen_reg_rtx (V4SImode);
12896 :
12897 : emit_insn (gen_udot_prodv4siv16qi (op0, op1, op2, op3));
12898 : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
12899 : }
12900 : else
12901 : {
12902 : rtx op1 = gen_reg_rtx (V8HImode);
12903 : rtx op2 = gen_reg_rtx (V8HImode);
12904 : rtx op3 = gen_reg_rtx (V4SImode);
12905 : rtx op0 = gen_reg_rtx (V4SImode);
12906 : rtx op0_1 = gen_reg_rtx (V4SImode);
12907 :
12908 : emit_move_insn (op3, CONST0_RTX (V4SImode));
12909 : emit_insn (gen_zero_extendv8qiv8hi2 (op1, operands[1]));
12910 : emit_insn (gen_zero_extendv8qiv8hi2 (op2, operands[2]));
12911 : emit_insn (gen_sdot_prodv4siv8hi (op0, op1, op2, op3));
12912 :
12913 : /* vec_perm (op0, 2, 3, 0, 1); */
12914 : emit_insn (gen_sse2_pshufd (op0_1, op0, GEN_INT (78)));
12915 : emit_insn (gen_addv4si3 (op0, op0, op0_1));
12916 : emit_insn (gen_addv2si3 (operands[0], operands[3],
12917 : lowpart_subreg (V2SImode, op0, V4SImode)));
12918 : }
12919 : DONE;
12920 :
12921 : }
12922 : #undef DONE
12923 : #undef FAIL
12924 : }
12925 : static const uint8_t expand_encoding[] = {
12926 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
12927 : 0x03
12928 : };
12929 : return complete_seq (expand_encoding, operands);
12930 : }
12931 :
12932 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12933 : rtx
12934 : gen_movv16hf (const rtx operand0, const rtx operand1)
12935 : {
12936 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12937 : start_sequence ();
12938 : {
12939 : #define FAIL return (end_sequence (), nullptr)
12940 : #define DONE return end_sequence ()
12941 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12942 : {
12943 : ix86_expand_vector_move (V16HFmode, operands);
12944 : DONE;
12945 : }
12946 : #undef DONE
12947 : #undef FAIL
12948 : }
12949 : static const uint8_t expand_encoding[] = {
12950 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
12951 : };
12952 : return complete_seq (expand_encoding, operands);
12953 : }
12954 :
12955 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12956 : rtx
12957 : gen_movv2df (const rtx operand0, const rtx operand1)
12958 : {
12959 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12960 : start_sequence ();
12961 : {
12962 : #define FAIL return (end_sequence (), nullptr)
12963 : #define DONE return end_sequence ()
12964 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12965 : {
12966 : ix86_expand_vector_move (V2DFmode, operands);
12967 : DONE;
12968 : }
12969 : #undef DONE
12970 : #undef FAIL
12971 : }
12972 : static const uint8_t expand_encoding[] = {
12973 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
12974 : };
12975 : return complete_seq (expand_encoding, operands);
12976 : }
12977 :
12978 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
12979 : extern rtx_insn *gen_split_1174 (rtx_insn *, rtx *);
12980 : rtx_insn *
12981 : gen_split_1174 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12982 : {
12983 : if (dump_file)
12984 : fprintf (dump_file, "Splitting with gen_split_1174 (sse.md:1539)\n");
12985 : start_sequence ();
12986 : #define FAIL return (end_sequence (), nullptr)
12987 : #define DONE return end_sequence ()
12988 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12989 : operands[2] = CONST0_RTX (V8DImode);
12990 : #undef DONE
12991 : #undef FAIL
12992 : static const uint8_t expand_encoding[] = {
12993 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
12994 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
12995 : 0x01, 0x01, 0x00, 0x27
12996 : };
12997 : return complete_seq (expand_encoding, operands);
12998 : }
12999 :
13000 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13001 : extern rtx_insn *gen_split_1184 (rtx_insn *, rtx *);
13002 : rtx_insn *
13003 : gen_split_1184 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13004 : {
13005 : if (dump_file)
13006 : fprintf (dump_file, "Splitting with gen_split_1184 (sse.md:1539)\n");
13007 : start_sequence ();
13008 : #define FAIL return (end_sequence (), nullptr)
13009 : #define DONE return end_sequence ()
13010 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13011 : operands[2] = CONST0_RTX (V16BFmode);
13012 : #undef DONE
13013 : #undef FAIL
13014 : static const uint8_t expand_encoding[] = {
13015 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13016 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13017 : 0x01, 0x01, 0x00, 0x27
13018 : };
13019 : return complete_seq (expand_encoding, operands);
13020 : }
13021 :
13022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1568 */
13023 : rtx
13024 : gen_avx512vl_loadv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13025 : {
13026 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13027 : start_sequence ();
13028 : {
13029 : #define FAIL return (end_sequence (), nullptr)
13030 : #define DONE return end_sequence ()
13031 : #line 1575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13032 : {
13033 : if (CONST_INT_P (operands[3]))
13034 : {
13035 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13036 : DONE;
13037 : }
13038 : else if (MEM_P (operands[1]))
13039 : operands[1] = gen_rtx_UNSPEC (V4SImode,
13040 : gen_rtvec(1, operands[1]),
13041 : UNSPEC_MASKLOAD);
13042 : }
13043 : #undef DONE
13044 : #undef FAIL
13045 : }
13046 : static const uint8_t expand_encoding[] = {
13047 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x01,
13048 : 0x01, 0x01, 0x02, 0x01, 0x03
13049 : };
13050 : return complete_seq (expand_encoding, operands);
13051 : }
13052 :
13053 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1616 */
13054 : extern rtx_insn *gen_split_1192 (rtx_insn *, rtx *);
13055 : rtx_insn *
13056 : gen_split_1192 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13057 : {
13058 : if (dump_file)
13059 : fprintf (dump_file, "Splitting with gen_split_1192 (sse.md:1616)\n");
13060 : start_sequence ();
13061 : static const uint8_t expand_encoding[] = {
13062 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13063 : };
13064 : return complete_seq (expand_encoding, operands);
13065 : }
13066 :
13067 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1616 */
13068 : extern rtx_insn *gen_split_1195 (rtx_insn *, rtx *);
13069 : rtx_insn *
13070 : gen_split_1195 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13071 : {
13072 : if (dump_file)
13073 : fprintf (dump_file, "Splitting with gen_split_1195 (sse.md:1616)\n");
13074 : start_sequence ();
13075 : static const uint8_t expand_encoding[] = {
13076 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13077 : };
13078 : return complete_seq (expand_encoding, operands);
13079 : }
13080 :
13081 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1626 */
13082 : extern rtx_insn *gen_split_1205 (rtx_insn *, rtx *);
13083 : rtx_insn *
13084 : gen_split_1205 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13085 : {
13086 : if (dump_file)
13087 : fprintf (dump_file, "Splitting with gen_split_1205 (sse.md:1626)\n");
13088 : start_sequence ();
13089 : static const uint8_t expand_encoding[] = {
13090 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a,
13091 : 0x70, 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x02,
13092 : 0x01, 0x03
13093 : };
13094 : return complete_seq (expand_encoding, operands);
13095 : }
13096 :
13097 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1664 */
13098 : rtx
13099 : gen_avx512vl_loadv8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13100 : {
13101 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13102 : start_sequence ();
13103 : {
13104 : #define FAIL return (end_sequence (), nullptr)
13105 : #define DONE return end_sequence ()
13106 : #line 1671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13107 : {
13108 : if (CONST_INT_P (operands[3]))
13109 : {
13110 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13111 : DONE;
13112 : }
13113 : else if (MEM_P (operands[1]))
13114 : operands[1] = gen_rtx_UNSPEC (V8HImode,
13115 : gen_rtvec(1, operands[1]),
13116 : UNSPEC_MASKLOAD);
13117 :
13118 : }
13119 : #undef DONE
13120 : #undef FAIL
13121 : }
13122 : static const uint8_t expand_encoding[] = {
13123 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x01,
13124 : 0x01, 0x01, 0x02, 0x01, 0x03
13125 : };
13126 : return complete_seq (expand_encoding, operands);
13127 : }
13128 :
13129 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1723 */
13130 : rtx
13131 : gen_avx512f_loadsf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13132 : {
13133 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13134 : start_sequence ();
13135 : {
13136 : #define FAIL return (end_sequence (), nullptr)
13137 : #define DONE return end_sequence ()
13138 : #line 1734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13139 : operands[4] = CONST0_RTX (V4SFmode);
13140 : #undef DONE
13141 : #undef FAIL
13142 : }
13143 : static const uint8_t expand_encoding[] = {
13144 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
13145 : 0x09, 0x6b, 0x81, 0x0c, 0x6b, 0x01, 0x01, 0x01,
13146 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x27, 0x01
13147 : };
13148 : return complete_seq (expand_encoding, operands);
13149 : }
13150 :
13151 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13152 : rtx
13153 : gen_movmisalignv8hi (const rtx operand0, const rtx operand1)
13154 : {
13155 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13156 : start_sequence ();
13157 : {
13158 : #define FAIL return (end_sequence (), nullptr)
13159 : #define DONE return end_sequence ()
13160 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13161 : {
13162 : ix86_expand_vector_move_misalign (V8HImode, operands);
13163 : DONE;
13164 : }
13165 : #undef DONE
13166 : #undef FAIL
13167 : }
13168 : static const uint8_t expand_encoding[] = {
13169 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13170 : };
13171 : return complete_seq (expand_encoding, operands);
13172 : }
13173 :
13174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13175 : rtx
13176 : gen_movmisalignv1ti (const rtx operand0, const rtx operand1)
13177 : {
13178 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13179 : start_sequence ();
13180 : {
13181 : #define FAIL return (end_sequence (), nullptr)
13182 : #define DONE return end_sequence ()
13183 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13184 : {
13185 : ix86_expand_vector_move_misalign (V1TImode, operands);
13186 : DONE;
13187 : }
13188 : #undef DONE
13189 : #undef FAIL
13190 : }
13191 : static const uint8_t expand_encoding[] = {
13192 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13193 : };
13194 : return complete_seq (expand_encoding, operands);
13195 : }
13196 :
13197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13198 : rtx
13199 : gen_movmisalignv8df (const rtx operand0, const rtx operand1)
13200 : {
13201 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13202 : start_sequence ();
13203 : {
13204 : #define FAIL return (end_sequence (), nullptr)
13205 : #define DONE return end_sequence ()
13206 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13207 : {
13208 : ix86_expand_vector_move_misalign (V8DFmode, operands);
13209 : DONE;
13210 : }
13211 : #undef DONE
13212 : #undef FAIL
13213 : }
13214 : static const uint8_t expand_encoding[] = {
13215 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13216 : };
13217 : return complete_seq (expand_encoding, operands);
13218 : }
13219 :
13220 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2087 */
13221 : rtx
13222 : gen_storentv4di (const rtx operand0, const rtx operand1)
13223 : {
13224 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13225 : static const uint8_t expand_encoding[] = {
13226 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
13227 : 0x76
13228 : };
13229 : return expand_rtx (expand_encoding, operands);
13230 : }
13231 :
13232 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2114 */
13233 : rtx
13234 : gen_kmovd (const rtx operand0, const rtx operand1)
13235 : {
13236 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13237 : static const uint8_t expand_encoding[] = {
13238 : 0x1f, 0x01, 0x00, 0x01, 0x01
13239 : };
13240 : return expand_rtx (expand_encoding, operands);
13241 : }
13242 :
13243 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2142 */
13244 : extern rtx_insn *gen_split_1233 (rtx_insn *, rtx *);
13245 : rtx_insn *
13246 : gen_split_1233 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13247 : {
13248 : if (dump_file)
13249 : fprintf (dump_file, "Splitting with gen_split_1233 (sse.md:2142)\n");
13250 : start_sequence ();
13251 : static const uint8_t expand_encoding[] = {
13252 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
13253 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13254 : 0x27, 0x00, 0x81, 0x2f
13255 : };
13256 : return complete_seq (expand_encoding, operands);
13257 : }
13258 :
13259 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2153 */
13260 : extern rtx_insn *gen_split_1243 (rtx_insn *, rtx *);
13261 : rtx_insn *
13262 : gen_split_1243 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13263 : {
13264 : if (dump_file)
13265 : fprintf (dump_file, "Splitting with gen_split_1243 (sse.md:2153)\n");
13266 : start_sequence ();
13267 : static const uint8_t expand_encoding[] = {
13268 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
13269 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13270 : 0x27, 0x00, 0x81, 0x2f
13271 : };
13272 : return complete_seq (expand_encoding, operands);
13273 : }
13274 :
13275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2247 */
13276 : extern rtx_insn *gen_split_1253 (rtx_insn *, rtx *);
13277 : rtx_insn *
13278 : gen_split_1253 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13279 : {
13280 : if (dump_file)
13281 : fprintf (dump_file, "Splitting with gen_split_1253 (sse.md:2247)\n");
13282 : start_sequence ();
13283 : static const uint8_t expand_encoding[] = {
13284 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4c,
13285 : 0x0f, 0x01, 0x01, 0x1a, 0x00, 0x01, 0x27, 0x00,
13286 : 0x81, 0x2f
13287 : };
13288 : return complete_seq (expand_encoding, operands);
13289 : }
13290 :
13291 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2306 */
13292 : extern rtx_insn *gen_split_1262 (rtx_insn *, rtx *);
13293 : rtx_insn *
13294 : gen_split_1262 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13295 : {
13296 : if (dump_file)
13297 : fprintf (dump_file, "Splitting with gen_split_1262 (sse.md:2306)\n");
13298 : start_sequence ();
13299 : static const uint8_t expand_encoding[] = {
13300 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
13301 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13302 : 0x27, 0x00, 0x81, 0x2f
13303 : };
13304 : return complete_seq (expand_encoding, operands);
13305 : }
13306 :
13307 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2319 */
13308 : extern rtx_insn *gen_split_1272 (rtx_insn *, rtx *);
13309 : rtx_insn *
13310 : gen_split_1272 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13311 : {
13312 : if (dump_file)
13313 : fprintf (dump_file, "Splitting with gen_split_1272 (sse.md:2319)\n");
13314 : start_sequence ();
13315 : static const uint8_t expand_encoding[] = {
13316 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
13317 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13318 : 0x27, 0x00, 0x81, 0x2f
13319 : };
13320 : return complete_seq (expand_encoding, operands);
13321 : }
13322 :
13323 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2412 */
13324 : extern rtx_insn *gen_split_1278 (rtx_insn *, rtx *);
13325 : rtx_insn *
13326 : gen_split_1278 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
13327 : {
13328 : if (dump_file)
13329 : fprintf (dump_file, "Splitting with gen_split_1278 (sse.md:2412)\n");
13330 : start_sequence ();
13331 : #define FAIL return (end_sequence (), nullptr)
13332 : #define DONE return end_sequence ()
13333 : #line 2422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13334 : {
13335 : if (MASK_REGNO_P (REGNO (operands[2])))
13336 : {
13337 : emit_insn (gen_kortestdi_ccc (operands[2], operands[2]));
13338 : operands[4] = gen_rtx_REG (CCCmode, FLAGS_REG);
13339 : }
13340 : else
13341 : {
13342 : operands[4] = gen_rtx_REG (CCZmode, FLAGS_REG);
13343 : emit_insn (gen_rtx_SET (operands[4],
13344 : gen_rtx_COMPARE (CCZmode,
13345 : operands[2],
13346 : constm1_rtx)));
13347 : }
13348 : ix86_expand_setcc (operands[0],
13349 : GET_CODE (operands[1]),
13350 : operands[4],
13351 : const0_rtx);
13352 : DONE;
13353 : }
13354 : #undef DONE
13355 : #undef FAIL
13356 : static const uint8_t expand_encoding[] = {
13357 : 0x01, 0x27, 0x00
13358 : };
13359 : return complete_seq (expand_encoding, operands);
13360 : }
13361 :
13362 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2522 */
13363 : extern rtx_insn *gen_split_1288 (rtx_insn *, rtx *);
13364 : rtx_insn *
13365 : gen_split_1288 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13366 : {
13367 : if (dump_file)
13368 : fprintf (dump_file, "Splitting with gen_split_1288 (sse.md:2522)\n");
13369 : start_sequence ();
13370 : #define FAIL return (end_sequence (), nullptr)
13371 : #define DONE return end_sequence ()
13372 : #line 2541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13373 : {
13374 : rtx flag_reg;
13375 : if (MASK_REGNO_P (REGNO (operands[4])))
13376 : {
13377 : emit_insn (gen_kortestqi_ccc (operands[4], operands[4]));
13378 : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13379 : }
13380 : else
13381 : {
13382 : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13383 : emit_insn (gen_rtx_SET (flag_reg,
13384 : gen_rtx_COMPARE (CCZmode,
13385 : operands[4],
13386 : constm1_rtx)));
13387 : }
13388 : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13389 : flag_reg,const0_rtx);
13390 : }
13391 : #undef DONE
13392 : #undef FAIL
13393 : static const uint8_t expand_encoding[] = {
13394 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x05,
13395 : 0x01, 0x02, 0x01, 0x03
13396 : };
13397 : return complete_seq (expand_encoding, operands);
13398 : }
13399 :
13400 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2522 */
13401 : extern rtx_insn *gen_split_1296 (rtx_insn *, rtx *);
13402 : rtx_insn *
13403 : gen_split_1296 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13404 : {
13405 : if (dump_file)
13406 : fprintf (dump_file, "Splitting with gen_split_1296 (sse.md:2522)\n");
13407 : start_sequence ();
13408 : #define FAIL return (end_sequence (), nullptr)
13409 : #define DONE return end_sequence ()
13410 : #line 2541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13411 : {
13412 : rtx flag_reg;
13413 : if (MASK_REGNO_P (REGNO (operands[4])))
13414 : {
13415 : emit_insn (gen_kortestdi_ccc (operands[4], operands[4]));
13416 : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13417 : }
13418 : else
13419 : {
13420 : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13421 : emit_insn (gen_rtx_SET (flag_reg,
13422 : gen_rtx_COMPARE (CCZmode,
13423 : operands[4],
13424 : constm1_rtx)));
13425 : }
13426 : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13427 : flag_reg,const0_rtx);
13428 : }
13429 : #undef DONE
13430 : #undef FAIL
13431 : static const uint8_t expand_encoding[] = {
13432 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x10, 0x01, 0x05,
13433 : 0x01, 0x02, 0x01, 0x03
13434 : };
13435 : return complete_seq (expand_encoding, operands);
13436 : }
13437 :
13438 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13439 : rtx
13440 : gen_negv16sf2 (const rtx operand0, const rtx operand1)
13441 : {
13442 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13443 : start_sequence ();
13444 : {
13445 : #define FAIL return (end_sequence (), nullptr)
13446 : #define DONE return end_sequence ()
13447 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13448 : ix86_expand_fp_absneg_operator (NEG, V16SFmode, operands); DONE;
13449 : #undef DONE
13450 : #undef FAIL
13451 : }
13452 : static const uint8_t expand_encoding[] = {
13453 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x74, 0x01, 0x01
13454 : };
13455 : return complete_seq (expand_encoding, operands);
13456 : }
13457 :
13458 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13459 : rtx
13460 : gen_negv2df2 (const rtx operand0, const rtx operand1)
13461 : {
13462 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13463 : start_sequence ();
13464 : {
13465 : #define FAIL return (end_sequence (), nullptr)
13466 : #define DONE return end_sequence ()
13467 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13468 : ix86_expand_fp_absneg_operator (NEG, V2DFmode, operands); DONE;
13469 : #undef DONE
13470 : #undef FAIL
13471 : }
13472 : static const uint8_t expand_encoding[] = {
13473 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x6c, 0x01, 0x01
13474 : };
13475 : return complete_seq (expand_encoding, operands);
13476 : }
13477 :
13478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13479 : extern rtx_insn *gen_split_1308 (rtx_insn *, rtx *);
13480 : rtx_insn *
13481 : gen_split_1308 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13482 : {
13483 : if (dump_file)
13484 : fprintf (dump_file, "Splitting with gen_split_1308 (sse.md:2615)\n");
13485 : start_sequence ();
13486 : #define FAIL return (end_sequence (), nullptr)
13487 : #define DONE return end_sequence ()
13488 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13489 : {
13490 : if (TARGET_AVX)
13491 : {
13492 : if (MEM_P (operands[1]))
13493 : std::swap (operands[1], operands[2]);
13494 : }
13495 : else
13496 : {
13497 : if (operands_match_p (operands[0], operands[2]))
13498 : std::swap (operands[1], operands[2]);
13499 : }
13500 : }
13501 : #undef DONE
13502 : #undef FAIL
13503 : static const uint8_t expand_encoding[] = {
13504 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6e, 0x01, 0x01,
13505 : 0x01, 0x02
13506 : };
13507 : return complete_seq (expand_encoding, operands);
13508 : }
13509 :
13510 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13511 : extern rtx_insn *gen_split_1318 (rtx_insn *, rtx *);
13512 : rtx_insn *
13513 : gen_split_1318 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13514 : {
13515 : if (dump_file)
13516 : fprintf (dump_file, "Splitting with gen_split_1318 (sse.md:2615)\n");
13517 : start_sequence ();
13518 : #define FAIL return (end_sequence (), nullptr)
13519 : #define DONE return end_sequence ()
13520 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13521 : {
13522 : if (TARGET_AVX)
13523 : {
13524 : if (MEM_P (operands[1]))
13525 : std::swap (operands[1], operands[2]);
13526 : }
13527 : else
13528 : {
13529 : if (operands_match_p (operands[0], operands[2]))
13530 : std::swap (operands[1], operands[2]);
13531 : }
13532 : }
13533 : #undef DONE
13534 : #undef FAIL
13535 : static const uint8_t expand_encoding[] = {
13536 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x75, 0x01, 0x01,
13537 : 0x01, 0x02
13538 : };
13539 : return complete_seq (expand_encoding, operands);
13540 : }
13541 :
13542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2639 */
13543 : extern rtx_insn *gen_split_1328 (rtx_insn *, rtx *);
13544 : rtx_insn *
13545 : gen_split_1328 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13546 : {
13547 : if (dump_file)
13548 : fprintf (dump_file, "Splitting with gen_split_1328 (sse.md:2639)\n");
13549 : start_sequence ();
13550 : #define FAIL return (end_sequence (), nullptr)
13551 : #define DONE return end_sequence ()
13552 : #line 2650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13553 : {
13554 : if (TARGET_AVX)
13555 : {
13556 : if (MEM_P (operands[1]))
13557 : std::swap (operands[1], operands[2]);
13558 : }
13559 : else
13560 : {
13561 : if (operands_match_p (operands[0], operands[2]))
13562 : std::swap (operands[1], operands[2]);
13563 : }
13564 : }
13565 : #undef DONE
13566 : #undef FAIL
13567 : static const uint8_t expand_encoding[] = {
13568 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x6c, 0x01, 0x01,
13569 : 0x01, 0x02
13570 : };
13571 : return complete_seq (expand_encoding, operands);
13572 : }
13573 :
13574 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13575 : rtx
13576 : gen_cond_subv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13577 : {
13578 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13579 : start_sequence ();
13580 : {
13581 : #define FAIL _Pragma ("GCC error \"cond_subv8sf cannot FAIL\"") (void)0
13582 : #define DONE return end_sequence ()
13583 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13584 : {
13585 : emit_insn (gen_subv8sf3_mask (operands[0],
13586 : operands[2],
13587 : operands[3],
13588 : operands[4],
13589 : operands[1]));
13590 : DONE;
13591 : }
13592 : #undef DONE
13593 : #undef FAIL
13594 : }
13595 : static const uint8_t expand_encoding[] = {
13596 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x3c,
13597 : 0x6f, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13598 : 0x01
13599 : };
13600 : return complete_seq (expand_encoding, operands);
13601 : }
13602 :
13603 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13604 : rtx
13605 : gen_addv32hf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13606 : {
13607 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13608 : start_sequence ();
13609 : {
13610 : #define FAIL return (end_sequence (), nullptr)
13611 : #define DONE return end_sequence ()
13612 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13613 : ix86_fixup_binary_operands_no_copy (PLUS, V32HFmode, operands);
13614 : #undef DONE
13615 : #undef FAIL
13616 : }
13617 : static const uint8_t expand_encoding[] = {
13618 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x3b,
13619 : 0x73, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
13620 : 0x33
13621 : };
13622 : return complete_seq (expand_encoding, operands);
13623 : }
13624 :
13625 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13626 : rtx
13627 : gen_subv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13628 : {
13629 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13630 : start_sequence ();
13631 : {
13632 : #define FAIL return (end_sequence (), nullptr)
13633 : #define DONE return end_sequence ()
13634 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13635 : ix86_fixup_binary_operands_no_copy (MINUS, V16HFmode, operands);
13636 : #undef DONE
13637 : #undef FAIL
13638 : }
13639 : static const uint8_t expand_encoding[] = {
13640 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x6e, 0x01, 0x01,
13641 : 0x01, 0x02
13642 : };
13643 : return complete_seq (expand_encoding, operands);
13644 : }
13645 :
13646 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13647 : rtx
13648 : gen_addv16sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13649 : {
13650 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13651 : start_sequence ();
13652 : {
13653 : #define FAIL return (end_sequence (), nullptr)
13654 : #define DONE return end_sequence ()
13655 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13656 : ix86_fixup_binary_operands_no_copy (PLUS, V16SFmode, operands);
13657 : #undef DONE
13658 : #undef FAIL
13659 : }
13660 : static const uint8_t expand_encoding[] = {
13661 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81,
13662 : 0x09, 0x74, 0x3b, 0x74, 0x01, 0x01, 0x01, 0x02,
13663 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13664 : };
13665 : return complete_seq (expand_encoding, operands);
13666 : }
13667 :
13668 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13669 : rtx
13670 : gen_subv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13671 : {
13672 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13673 : start_sequence ();
13674 : {
13675 : #define FAIL return (end_sequence (), nullptr)
13676 : #define DONE return end_sequence ()
13677 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13678 : ix86_fixup_binary_operands_no_copy (MINUS, V4SFmode, operands);
13679 : #undef DONE
13680 : #undef FAIL
13681 : }
13682 : static const uint8_t expand_encoding[] = {
13683 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x6b, 0x01, 0x01,
13684 : 0x01, 0x02
13685 : };
13686 : return complete_seq (expand_encoding, operands);
13687 : }
13688 :
13689 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13690 : rtx
13691 : gen_addv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
13692 : {
13693 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13694 : start_sequence ();
13695 : {
13696 : #define FAIL return (end_sequence (), nullptr)
13697 : #define DONE return end_sequence ()
13698 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13699 : ix86_fixup_binary_operands_no_copy (PLUS, V4DFmode, operands);
13700 : #undef DONE
13701 : #undef FAIL
13702 : }
13703 : static const uint8_t expand_encoding[] = {
13704 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x70, 0x01, 0x01,
13705 : 0x01, 0x02
13706 : };
13707 : return complete_seq (expand_encoding, operands);
13708 : }
13709 :
13710 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13711 : rtx
13712 : gen_addv32bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13713 : {
13714 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13715 : start_sequence ();
13716 : {
13717 : #define FAIL return (end_sequence (), nullptr)
13718 : #define DONE return end_sequence ()
13719 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13720 : ix86_fixup_binary_operands_no_copy (PLUS, V32BFmode, operands);
13721 : #undef DONE
13722 : #undef FAIL
13723 : }
13724 : static const uint8_t expand_encoding[] = {
13725 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x3b,
13726 : 0x72, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13727 : 0x04
13728 : };
13729 : return complete_seq (expand_encoding, operands);
13730 : }
13731 :
13732 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13733 : rtx
13734 : gen_subv8bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13735 : {
13736 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13737 : start_sequence ();
13738 : {
13739 : #define FAIL return (end_sequence (), nullptr)
13740 : #define DONE return end_sequence ()
13741 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13742 : ix86_fixup_binary_operands_no_copy (MINUS, V8BFmode, operands);
13743 : #undef DONE
13744 : #undef FAIL
13745 : }
13746 : static const uint8_t expand_encoding[] = {
13747 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x3c,
13748 : 0x69, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13749 : 0x04
13750 : };
13751 : return complete_seq (expand_encoding, operands);
13752 : }
13753 :
13754 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13755 : rtx
13756 : gen_mulv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13757 : {
13758 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13759 : start_sequence ();
13760 : {
13761 : #define FAIL return (end_sequence (), nullptr)
13762 : #define DONE return end_sequence ()
13763 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13764 : ix86_fixup_binary_operands_no_copy (MULT, V32HFmode, operands);
13765 : #undef DONE
13766 : #undef FAIL
13767 : }
13768 : static const uint8_t expand_encoding[] = {
13769 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x73, 0x01, 0x01,
13770 : 0x01, 0x02
13771 : };
13772 : return complete_seq (expand_encoding, operands);
13773 : }
13774 :
13775 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13776 : rtx
13777 : gen_mulv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13778 : {
13779 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13780 : start_sequence ();
13781 : {
13782 : #define FAIL return (end_sequence (), nullptr)
13783 : #define DONE return end_sequence ()
13784 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13785 : ix86_fixup_binary_operands_no_copy (MULT, V8HFmode, operands);
13786 : #undef DONE
13787 : #undef FAIL
13788 : }
13789 : static const uint8_t expand_encoding[] = {
13790 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x3e,
13791 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13792 : 0x04
13793 : };
13794 : return complete_seq (expand_encoding, operands);
13795 : }
13796 :
13797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13798 : rtx
13799 : gen_mulv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13800 : {
13801 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13802 : start_sequence ();
13803 : {
13804 : #define FAIL return (end_sequence (), nullptr)
13805 : #define DONE return end_sequence ()
13806 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13807 : ix86_fixup_binary_operands_no_copy (MULT, V8DFmode, operands);
13808 : #undef DONE
13809 : #undef FAIL
13810 : }
13811 : static const uint8_t expand_encoding[] = {
13812 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x3e,
13813 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13814 : 0x04
13815 : };
13816 : return complete_seq (expand_encoding, operands);
13817 : }
13818 :
13819 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13820 : rtx
13821 : gen_mulv8bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13822 : {
13823 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13824 : start_sequence ();
13825 : {
13826 : #define FAIL return (end_sequence (), nullptr)
13827 : #define DONE return end_sequence ()
13828 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13829 : ix86_fixup_binary_operands_no_copy (MULT, V8BFmode, operands);
13830 : #undef DONE
13831 : #undef FAIL
13832 : }
13833 : static const uint8_t expand_encoding[] = {
13834 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x3e,
13835 : 0x69, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13836 : 0x04
13837 : };
13838 : return complete_seq (expand_encoding, operands);
13839 : }
13840 :
13841 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2910 */
13842 : rtx
13843 : gen_cond_divv32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13844 : {
13845 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13846 : start_sequence ();
13847 : {
13848 : #define FAIL _Pragma ("GCC error \"cond_divv32hf cannot FAIL\"") (void)0
13849 : #define DONE return end_sequence ()
13850 : #line 2919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13851 : {
13852 : emit_insn (gen_avx512fp16_divv32hf3_mask (operands[0],
13853 : operands[2],
13854 : operands[3],
13855 : operands[4],
13856 : operands[1]));
13857 : DONE;
13858 : }
13859 : #undef DONE
13860 : #undef FAIL
13861 : }
13862 : static const uint8_t expand_encoding[] = {
13863 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x43,
13864 : 0x73, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13865 : 0x01
13866 : };
13867 : return complete_seq (expand_encoding, operands);
13868 : }
13869 :
13870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2910 */
13871 : rtx
13872 : gen_cond_divv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13873 : {
13874 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13875 : start_sequence ();
13876 : {
13877 : #define FAIL _Pragma ("GCC error \"cond_divv2df cannot FAIL\"") (void)0
13878 : #define DONE return end_sequence ()
13879 : #line 2919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13880 : {
13881 : emit_insn (gen_sse2_divv2df3_mask (operands[0],
13882 : operands[2],
13883 : operands[3],
13884 : operands[4],
13885 : operands[1]));
13886 : DONE;
13887 : }
13888 : #undef DONE
13889 : #undef FAIL
13890 : }
13891 : static const uint8_t expand_encoding[] = {
13892 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x43,
13893 : 0x6c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13894 : 0x01
13895 : };
13896 : return complete_seq (expand_encoding, operands);
13897 : }
13898 :
13899 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3156 */
13900 : rtx
13901 : gen_rsqrtv4sf2 (const rtx operand0, const rtx operand1)
13902 : {
13903 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13904 : start_sequence ();
13905 : {
13906 : #define FAIL _Pragma ("GCC error \"rsqrtv4sf2 cannot FAIL\"") (void)0
13907 : #define DONE return end_sequence ()
13908 : #line 3162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13909 : {
13910 : ix86_emit_swsqrtsf (operands[0], operands[1], V4SFmode, true);
13911 : DONE;
13912 : }
13913 : #undef DONE
13914 : #undef FAIL
13915 : }
13916 : static const uint8_t expand_encoding[] = {
13917 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x01, 0x01,
13918 : 0x01, 0x38
13919 : };
13920 : return complete_seq (expand_encoding, operands);
13921 : }
13922 :
13923 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
13924 : rtx
13925 : gen_cond_smaxv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13926 : {
13927 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13928 : start_sequence ();
13929 : {
13930 : #define FAIL return (end_sequence (), nullptr)
13931 : #define DONE return end_sequence ()
13932 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13933 : {
13934 : emit_insn (gen_smaxv16sf3_mask (operands[0],
13935 : operands[2],
13936 : operands[3],
13937 : operands[4],
13938 : operands[1]));
13939 : DONE;
13940 : }
13941 : #undef DONE
13942 : #undef FAIL
13943 : }
13944 : static const uint8_t expand_encoding[] = {
13945 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x53,
13946 : 0x74, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13947 : 0x01
13948 : };
13949 : return complete_seq (expand_encoding, operands);
13950 : }
13951 :
13952 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
13953 : rtx
13954 : gen_cond_smaxv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13955 : {
13956 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13957 : start_sequence ();
13958 : {
13959 : #define FAIL return (end_sequence (), nullptr)
13960 : #define DONE return end_sequence ()
13961 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13962 : {
13963 : emit_insn (gen_smaxv2df3_mask (operands[0],
13964 : operands[2],
13965 : operands[3],
13966 : operands[4],
13967 : operands[1]));
13968 : DONE;
13969 : }
13970 : #undef DONE
13971 : #undef FAIL
13972 : }
13973 : static const uint8_t expand_encoding[] = {
13974 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x53,
13975 : 0x6c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13976 : 0x01
13977 : };
13978 : return complete_seq (expand_encoding, operands);
13979 : }
13980 :
13981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
13982 : rtx
13983 : gen_smaxv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13984 : {
13985 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13986 : start_sequence ();
13987 : {
13988 : #define FAIL return (end_sequence (), nullptr)
13989 : #define DONE return end_sequence ()
13990 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13991 : {
13992 : if (!flag_finite_math_only || flag_signed_zeros)
13993 : {
13994 : operands[1] = force_reg (V16HFmode, operands[1]);
13995 : emit_insn (gen_ieee_maxv16hf3
13996 : (operands[0], operands[1], operands[2]
13997 :
13998 : ));
13999 : DONE;
14000 : }
14001 : else
14002 : ix86_fixup_binary_operands_no_copy (SMAX, V16HFmode, operands);
14003 : }
14004 : #undef DONE
14005 : #undef FAIL
14006 : }
14007 : static const uint8_t expand_encoding[] = {
14008 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x6e, 0x01, 0x01,
14009 : 0x01, 0x02
14010 : };
14011 : return complete_seq (expand_encoding, operands);
14012 : }
14013 :
14014 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14015 : rtx
14016 : gen_smaxv16sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
14017 : {
14018 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
14019 : start_sequence ();
14020 : {
14021 : #define FAIL return (end_sequence (), nullptr)
14022 : #define DONE return end_sequence ()
14023 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14024 : {
14025 : if (!flag_finite_math_only || flag_signed_zeros)
14026 : {
14027 : operands[1] = force_reg (V16SFmode, operands[1]);
14028 : emit_insn (gen_ieee_maxv16sf3_round
14029 : (operands[0], operands[1], operands[2]
14030 :
14031 : , operands[3]));
14032 : DONE;
14033 : }
14034 : else
14035 : ix86_fixup_binary_operands_no_copy (SMAX, V16SFmode, operands);
14036 : }
14037 : #undef DONE
14038 : #undef FAIL
14039 : }
14040 : static const uint8_t expand_encoding[] = {
14041 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x53,
14042 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
14043 : 0x33
14044 : };
14045 : return complete_seq (expand_encoding, operands);
14046 : }
14047 :
14048 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14049 : rtx
14050 : gen_sminv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14051 : {
14052 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14053 : start_sequence ();
14054 : {
14055 : #define FAIL return (end_sequence (), nullptr)
14056 : #define DONE return end_sequence ()
14057 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14058 : {
14059 : if (!flag_finite_math_only || flag_signed_zeros)
14060 : {
14061 : operands[1] = force_reg (V8SFmode, operands[1]);
14062 : emit_insn (gen_ieee_minv8sf3_mask
14063 : (operands[0], operands[1], operands[2]
14064 : , operands[3], operands[4]
14065 : ));
14066 : DONE;
14067 : }
14068 : else
14069 : ix86_fixup_binary_operands_no_copy (SMIN, V8SFmode, operands);
14070 : }
14071 : #undef DONE
14072 : #undef FAIL
14073 : }
14074 : static const uint8_t expand_encoding[] = {
14075 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x52,
14076 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14077 : 0x04
14078 : };
14079 : return complete_seq (expand_encoding, operands);
14080 : }
14081 :
14082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14083 : rtx
14084 : gen_sminv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14085 : {
14086 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14087 : start_sequence ();
14088 : {
14089 : #define FAIL return (end_sequence (), nullptr)
14090 : #define DONE return end_sequence ()
14091 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14092 : {
14093 : if (!flag_finite_math_only || flag_signed_zeros)
14094 : {
14095 : operands[1] = force_reg (V8DFmode, operands[1]);
14096 : emit_insn (gen_ieee_minv8df3_mask
14097 : (operands[0], operands[1], operands[2]
14098 : , operands[3], operands[4]
14099 : ));
14100 : DONE;
14101 : }
14102 : else
14103 : ix86_fixup_binary_operands_no_copy (SMIN, V8DFmode, operands);
14104 : }
14105 : #undef DONE
14106 : #undef FAIL
14107 : }
14108 : static const uint8_t expand_encoding[] = {
14109 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x52,
14110 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14111 : 0x04
14112 : };
14113 : return complete_seq (expand_encoding, operands);
14114 : }
14115 :
14116 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3366 */
14117 : extern rtx_insn *gen_split_1329 (rtx_insn *, rtx *);
14118 : rtx_insn *
14119 : gen_split_1329 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14120 : {
14121 : if (dump_file)
14122 : fprintf (dump_file, "Splitting with gen_split_1329 (sse.md:3366)\n");
14123 : start_sequence ();
14124 : #define FAIL return (end_sequence (), nullptr)
14125 : #define DONE return end_sequence ()
14126 : #line 3385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14127 : {
14128 : int u = UNSPEC_IEEE_MIN;
14129 : rtx tmp = operands[2];
14130 : if ((INTVAL (operands[5]) == 1 && rtx_equal_p (operands[1], operands[4]))
14131 : || (INTVAL (operands[5]) == 14 && rtx_equal_p (operands[1], operands[3])))
14132 : u = UNSPEC_IEEE_MAX;
14133 :
14134 : if (MEM_P (operands[1]))
14135 : operands[1] = force_reg (V32HFmode, operands[1]);
14136 :
14137 : if (immediate_operand (operands[2], V32HFmode))
14138 : tmp = force_reg (V32HFmode, operands[2]);
14139 : rtvec v = gen_rtvec (2, operands[1], tmp);
14140 : operands[6] = gen_rtx_UNSPEC (V32HFmode, v, u);
14141 : }
14142 : #undef DONE
14143 : #undef FAIL
14144 : static const uint8_t expand_encoding[] = {
14145 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x06
14146 : };
14147 : return complete_seq (expand_encoding, operands);
14148 : }
14149 :
14150 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3401 */
14151 : extern rtx_insn *gen_split_1339 (rtx_insn *, rtx *);
14152 : rtx_insn *
14153 : gen_split_1339 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14154 : {
14155 : if (dump_file)
14156 : fprintf (dump_file, "Splitting with gen_split_1339 (sse.md:3401)\n");
14157 : start_sequence ();
14158 : #define FAIL return (end_sequence (), nullptr)
14159 : #define DONE return end_sequence ()
14160 : #line 3418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14161 : {
14162 : int u = UNSPEC_IEEE_MIN;
14163 : if (rtx_equal_p (operands[1], operands[3]))
14164 : u = UNSPEC_IEEE_MAX;
14165 :
14166 : if (MEM_P (operands[2]))
14167 : operands[2] = force_reg (V4SFmode, operands[2]);
14168 : rtvec v = gen_rtvec (2, operands[2], operands[1]);
14169 : operands[5] = gen_rtx_UNSPEC (V4SFmode, v, u);
14170 : }
14171 : #undef DONE
14172 : #undef FAIL
14173 : static const uint8_t expand_encoding[] = {
14174 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x05
14175 : };
14176 : return complete_seq (expand_encoding, operands);
14177 : }
14178 :
14179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3453 */
14180 : extern rtx_insn *gen_split_1349 (rtx_insn *, rtx *);
14181 : rtx_insn *
14182 : gen_split_1349 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14183 : {
14184 : if (dump_file)
14185 : fprintf (dump_file, "Splitting with gen_split_1349 (sse.md:3453)\n");
14186 : start_sequence ();
14187 : #define FAIL return (end_sequence (), nullptr)
14188 : #define DONE return end_sequence ()
14189 : #line 3465 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14190 : {
14191 : int u = UNSPEC_IEEE_MIN;
14192 : if (GET_CODE (operands[1]) == GT)
14193 : u = UNSPEC_IEEE_MAX;
14194 :
14195 : rtx tmp = force_reg (V2DFmode, operands[3]);
14196 : rtvec v = gen_rtvec (2, operands[2], tmp);
14197 : operands[5] = gen_rtx_UNSPEC (V2DFmode, v, u);
14198 : }
14199 : #undef DONE
14200 : #undef FAIL
14201 : static const uint8_t expand_encoding[] = {
14202 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x05
14203 : };
14204 : return complete_seq (expand_encoding, operands);
14205 : }
14206 :
14207 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14208 : rtx
14209 : gen_sse_vmsmaxv4sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
14210 : {
14211 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
14212 : start_sequence ();
14213 : {
14214 : #define FAIL return (end_sequence (), nullptr)
14215 : #define DONE return end_sequence ()
14216 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14217 : {
14218 : if (!flag_finite_math_only || flag_signed_zeros)
14219 : {
14220 : emit_insn (gen_sse_ieee_vmmaxv4sf3_round
14221 : (operands[0], operands[1], operands[2]
14222 :
14223 : , operands[3]));
14224 : DONE;
14225 : }
14226 : }
14227 : #undef DONE
14228 : #undef FAIL
14229 : }
14230 : static const uint8_t expand_encoding[] = {
14231 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81,
14232 : 0x09, 0x6b, 0x53, 0x6b, 0x01, 0x01, 0x01, 0x02,
14233 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
14234 : };
14235 : return complete_seq (expand_encoding, operands);
14236 : }
14237 :
14238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14239 : rtx
14240 : gen_sse2_vmsmaxv2df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
14241 : {
14242 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
14243 : start_sequence ();
14244 : {
14245 : #define FAIL return (end_sequence (), nullptr)
14246 : #define DONE return end_sequence ()
14247 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14248 : {
14249 : if (!flag_finite_math_only || flag_signed_zeros)
14250 : {
14251 : emit_insn (gen_sse2_ieee_vmmaxv2df3_mask_round
14252 : (operands[0], operands[1], operands[2]
14253 : , operands[3], operands[4]
14254 : , operands[5]));
14255 : DONE;
14256 : }
14257 : }
14258 : #undef DONE
14259 : #undef FAIL
14260 : }
14261 : static const uint8_t expand_encoding[] = {
14262 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81,
14263 : 0x09, 0x6c, 0x81, 0x09, 0x6c, 0x53, 0x6c, 0x01,
14264 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14265 : 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
14266 : };
14267 : return complete_seq (expand_encoding, operands);
14268 : }
14269 :
14270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3646 */
14271 : extern rtx_insn *gen_split_1356 (rtx_insn *, rtx *);
14272 : rtx_insn *
14273 : gen_split_1356 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14274 : {
14275 : if (dump_file)
14276 : fprintf (dump_file, "Splitting with gen_split_1356 (sse.md:3646)\n");
14277 : start_sequence ();
14278 : #define FAIL return (end_sequence (), nullptr)
14279 : #define DONE return end_sequence ()
14280 : #line 3667 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14281 : {
14282 : /* Negate mask bits to compensate for swapped PLUS and MINUS RTXes. */
14283 : operands[5]
14284 : = GEN_INT (~INTVAL (operands[5])
14285 : & ((HOST_WIDE_INT_1U << GET_MODE_NUNITS (V4DFmode)) - 1));
14286 : }
14287 : #undef DONE
14288 : #undef FAIL
14289 : static const uint8_t expand_encoding[] = {
14290 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x3c,
14291 : 0x70, 0x01, 0x03, 0x01, 0x04, 0x3b, 0x70, 0x01,
14292 : 0x03, 0x01, 0x04, 0x01, 0x05
14293 : };
14294 : return complete_seq (expand_encoding, operands);
14295 : }
14296 :
14297 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3771 */
14298 : rtx
14299 : gen_sse3_haddv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
14300 : {
14301 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14302 : static const uint8_t expand_encoding[] = {
14303 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6c, 0x3b, 0x2e,
14304 : 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01,
14305 : 0x27, 0x00, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17,
14306 : 0x00, 0x01, 0x27, 0x01, 0x3b, 0x2e, 0x81, 0x0a,
14307 : 0x2e, 0x01, 0x02, 0x17, 0x00, 0x01, 0x27, 0x00,
14308 : 0x81, 0x0a, 0x2e, 0x01, 0x02, 0x17, 0x00, 0x01,
14309 : 0x27, 0x01
14310 : };
14311 : return expand_rtx (expand_encoding, operands);
14312 : }
14313 :
14314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4007 */
14315 : rtx
14316 : gen_reduc_plus_scal_v4df (const rtx operand0, const rtx operand1)
14317 : {
14318 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14319 : start_sequence ();
14320 : {
14321 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v4df cannot FAIL\"") (void)0
14322 : #define DONE return end_sequence ()
14323 : #line 4012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14324 : {
14325 : rtx tmp = gen_reg_rtx (V2DFmode);
14326 : rtx tmp2 = gen_reg_rtx (V2DFmode);
14327 : rtx tmp3 = gen_reg_rtx (V2DFmode);
14328 : emit_insn (gen_vec_extract_hi_v4df (tmp, operands[1]));
14329 : emit_insn (gen_vec_extract_lo_v4df (tmp2, operands[1]));
14330 : emit_insn (gen_addv2df3 (tmp3, tmp, tmp2));
14331 : emit_insn (gen_reduc_plus_scal_v2df (operands[0], tmp3));
14332 : DONE;
14333 : }
14334 : #undef DONE
14335 : #undef FAIL
14336 : }
14337 : static const uint8_t expand_encoding[] = {
14338 : 0x01, 0x3b, 0x70, 0x01, 0x00, 0x01, 0x01
14339 : };
14340 : return complete_seq (expand_encoding, operands);
14341 : }
14342 :
14343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4007 */
14344 : rtx
14345 : gen_reduc_plus_scal_v4di (const rtx operand0, const rtx operand1)
14346 : {
14347 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14348 : start_sequence ();
14349 : {
14350 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v4di cannot FAIL\"") (void)0
14351 : #define DONE return end_sequence ()
14352 : #line 4012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14353 : {
14354 : rtx tmp = gen_reg_rtx (V2DImode);
14355 : rtx tmp2 = gen_reg_rtx (V2DImode);
14356 : rtx tmp3 = gen_reg_rtx (V2DImode);
14357 : emit_insn (gen_vec_extract_hi_v4di (tmp, operands[1]));
14358 : emit_insn (gen_vec_extract_lo_v4di (tmp2, operands[1]));
14359 : emit_insn (gen_addv2di3 (tmp3, tmp, tmp2));
14360 : emit_insn (gen_reduc_plus_scal_v2di (operands[0], tmp3));
14361 : DONE;
14362 : }
14363 : #undef DONE
14364 : #undef FAIL
14365 : }
14366 : static const uint8_t expand_encoding[] = {
14367 : 0x01, 0x3b, 0x57, 0x01, 0x00, 0x01, 0x01
14368 : };
14369 : return complete_seq (expand_encoding, operands);
14370 : }
14371 :
14372 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4030 */
14373 : rtx
14374 : gen_reduc_smin_scal_v2df (const rtx operand0, const rtx operand1)
14375 : {
14376 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14377 : start_sequence ();
14378 : {
14379 : #define FAIL return (end_sequence (), nullptr)
14380 : #define DONE return end_sequence ()
14381 : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14382 : {
14383 : rtx tmp = gen_reg_rtx (V2DFmode);
14384 : ix86_expand_reduc (gen_sminv2df3, tmp, operands[1]);
14385 : emit_insn (gen_vec_extractv2dfdf (operands[0], tmp,
14386 : const0_rtx));
14387 : DONE;
14388 : }
14389 : #undef DONE
14390 : #undef FAIL
14391 : }
14392 : static const uint8_t expand_encoding[] = {
14393 : 0x01, 0x52, 0x6c, 0x01, 0x00, 0x01, 0x01
14394 : };
14395 : return complete_seq (expand_encoding, operands);
14396 : }
14397 :
14398 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14399 : rtx
14400 : gen_reduc_smin_scal_v32qi (const rtx operand0, const rtx operand1)
14401 : {
14402 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14403 : start_sequence ();
14404 : {
14405 : #define FAIL return (end_sequence (), nullptr)
14406 : #define DONE return end_sequence ()
14407 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14408 : {
14409 : rtx tmp = gen_reg_rtx (V16QImode);
14410 : rtx tmp2 = gen_reg_rtx (V16QImode);
14411 : rtx tmp3 = gen_reg_rtx (V16QImode);
14412 : emit_insn (gen_vec_extract_hi_v32qi (tmp, operands[1]));
14413 : emit_insn (gen_vec_extract_lo_v32qi (tmp2, operands[1]));
14414 : emit_insn (gen_sminv16qi3 (tmp3, tmp, tmp2));
14415 : emit_insn (gen_reduc_smin_scal_v16qi (operands[0], tmp3));
14416 : DONE;
14417 : }
14418 : #undef DONE
14419 : #undef FAIL
14420 : }
14421 : static const uint8_t expand_encoding[] = {
14422 : 0x01, 0x52, 0x54, 0x01, 0x00, 0x01, 0x01
14423 : };
14424 : return complete_seq (expand_encoding, operands);
14425 : }
14426 :
14427 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14428 : rtx
14429 : gen_reduc_smin_scal_v8sf (const rtx operand0, const rtx operand1)
14430 : {
14431 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14432 : start_sequence ();
14433 : {
14434 : #define FAIL return (end_sequence (), nullptr)
14435 : #define DONE return end_sequence ()
14436 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14437 : {
14438 : rtx tmp = gen_reg_rtx (V4SFmode);
14439 : rtx tmp2 = gen_reg_rtx (V4SFmode);
14440 : rtx tmp3 = gen_reg_rtx (V4SFmode);
14441 : emit_insn (gen_vec_extract_hi_v8sf (tmp, operands[1]));
14442 : emit_insn (gen_vec_extract_lo_v8sf (tmp2, operands[1]));
14443 : emit_insn (gen_sminv4sf3 (tmp3, tmp, tmp2));
14444 : emit_insn (gen_reduc_smin_scal_v4sf (operands[0], tmp3));
14445 : DONE;
14446 : }
14447 : #undef DONE
14448 : #undef FAIL
14449 : }
14450 : static const uint8_t expand_encoding[] = {
14451 : 0x01, 0x52, 0x6f, 0x01, 0x00, 0x01, 0x01
14452 : };
14453 : return complete_seq (expand_encoding, operands);
14454 : }
14455 :
14456 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14457 : rtx
14458 : gen_reduc_smin_scal_v16si (const rtx operand0, const rtx operand1)
14459 : {
14460 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14461 : start_sequence ();
14462 : {
14463 : #define FAIL return (end_sequence (), nullptr)
14464 : #define DONE return end_sequence ()
14465 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14466 : {
14467 : rtx tmp = gen_reg_rtx (V8SImode);
14468 : rtx tmp2 = gen_reg_rtx (V8SImode);
14469 : rtx tmp3 = gen_reg_rtx (V8SImode);
14470 : emit_insn (gen_vec_extract_hi_v16si (tmp, operands[1]));
14471 : emit_insn (gen_vec_extract_lo_v16si (tmp2, operands[1]));
14472 : emit_insn (gen_sminv8si3 (tmp3, tmp, tmp2));
14473 : emit_insn (gen_reduc_smin_scal_v8si (operands[0], tmp3));
14474 : DONE;
14475 : }
14476 : #undef DONE
14477 : #undef FAIL
14478 : }
14479 : static const uint8_t expand_encoding[] = {
14480 : 0x01, 0x52, 0x5b, 0x01, 0x00, 0x01, 0x01
14481 : };
14482 : return complete_seq (expand_encoding, operands);
14483 : }
14484 :
14485 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4070 */
14486 : rtx
14487 : gen_reduc_umin_scal_v8di (const rtx operand0, const rtx operand1)
14488 : {
14489 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14490 : start_sequence ();
14491 : {
14492 : #define FAIL return (end_sequence (), nullptr)
14493 : #define DONE return end_sequence ()
14494 : #line 4075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14495 : {
14496 : rtx tmp = gen_reg_rtx (V4DImode);
14497 : rtx tmp2 = gen_reg_rtx (V4DImode);
14498 : rtx tmp3 = gen_reg_rtx (V4DImode);
14499 : emit_insn (gen_vec_extract_hi_v8di (tmp, operands[1]));
14500 : emit_insn (gen_vec_extract_lo_v8di (tmp2, operands[1]));
14501 : emit_insn (gen_uminv4di3 (tmp3, tmp, tmp2));
14502 : emit_insn (gen_reduc_umin_scal_v4di (operands[0], tmp3));
14503 : DONE;
14504 : }
14505 : #undef DONE
14506 : #undef FAIL
14507 : }
14508 : static const uint8_t expand_encoding[] = {
14509 : 0x01, 0x54, 0x5c, 0x01, 0x00, 0x01, 0x01
14510 : };
14511 : return complete_seq (expand_encoding, operands);
14512 : }
14513 :
14514 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4086 */
14515 : rtx
14516 : gen_reduc_umin_scal_v8si (const rtx operand0, const rtx operand1)
14517 : {
14518 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14519 : start_sequence ();
14520 : {
14521 : #define FAIL return (end_sequence (), nullptr)
14522 : #define DONE return end_sequence ()
14523 : #line 4091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14524 : {
14525 : rtx tmp = gen_reg_rtx (V4SImode);
14526 : rtx tmp2 = gen_reg_rtx (V4SImode);
14527 : rtx tmp3 = gen_reg_rtx (V4SImode);
14528 : emit_insn (gen_vec_extract_hi_v8si (tmp, operands[1]));
14529 : emit_insn (gen_vec_extract_lo_v8si (tmp2, operands[1]));
14530 : emit_insn (gen_uminv4si3 (tmp3, tmp, tmp2));
14531 : rtx tmp4 = gen_reg_rtx (V4SImode);
14532 : ix86_expand_reduc (gen_uminv4si3, tmp4, tmp3);
14533 : emit_insn (gen_vec_extractv4sisi
14534 : (operands[0], tmp4, const0_rtx));
14535 : DONE;
14536 : }
14537 : #undef DONE
14538 : #undef FAIL
14539 : }
14540 : static const uint8_t expand_encoding[] = {
14541 : 0x01, 0x54, 0x56, 0x01, 0x00, 0x01, 0x01
14542 : };
14543 : return complete_seq (expand_encoding, operands);
14544 : }
14545 :
14546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4136 */
14547 : rtx
14548 : gen_reduc_sbool_ior_scal_di (const rtx operand0, const rtx operand1, const rtx operand2)
14549 : {
14550 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14551 : start_sequence ();
14552 : {
14553 : #define FAIL _Pragma ("GCC error \"reduc_sbool_ior_scal_di cannot FAIL\"") (void)0
14554 : #define DONE return end_sequence ()
14555 : #line 4141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14556 : {
14557 : int n_elt = INTVAL (operands[2]);
14558 : rtx op1 = operands[1];
14559 : if (n_elt < 8)
14560 : {
14561 : rtx op2 = gen_int_mode ((1u << n_elt) - 1, QImode);
14562 : op1 = gen_reg_rtx (QImode);
14563 : emit_insn (gen_andqi3 (op1, operands[1], op2));
14564 : }
14565 : ix86_expand_setcc (operands[0], NE,
14566 : op1, CONST0_RTX (DImode));
14567 : DONE;
14568 : }
14569 : #undef DONE
14570 : #undef FAIL
14571 : }
14572 : static const uint8_t expand_encoding[] = {
14573 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
14574 : };
14575 : return complete_seq (expand_encoding, operands);
14576 : }
14577 :
14578 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4199 */
14579 : rtx
14580 : gen_reduc_sbool_and_scal_v4si (const rtx operand0, const rtx operand1)
14581 : {
14582 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14583 : start_sequence ();
14584 : {
14585 : #define FAIL _Pragma ("GCC error \"reduc_sbool_and_scal_v4si cannot FAIL\"") (void)0
14586 : #define DONE return end_sequence ()
14587 : #line 4203 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14588 : {
14589 : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14590 : rtx op2, tmp;
14591 : if (TARGET_AVX2 || 16 != 32)
14592 : {
14593 : op2 = force_reg (V4SImode, CONST0_RTX (V4SImode));
14594 : tmp = gen_reg_rtx (V4SImode);
14595 : rtx op1 = gen_rtx_EQ (V4SImode, operands[1], op2);
14596 : emit_insn (gen_vec_cmpv4siv4si (tmp, op1, operands[1], op2));
14597 : }
14598 : else
14599 : {
14600 : op2 = force_reg (V4SImode, CONSTM1_RTX (V4SImode));
14601 : tmp = gen_reg_rtx (V4SImode);
14602 : rtx ops[3] = { tmp, operands[1], op2 };
14603 : ix86_expand_vector_logical_operator (XOR, V4SImode, ops);
14604 : }
14605 :
14606 : tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, tmp, tmp), UNSPEC_PTEST);
14607 : emit_insn (gen_rtx_SET (flags, tmp));
14608 : rtx ret = gen_rtx_fmt_ee (EQ, VOIDmode, flags, const0_rtx);
14609 : PUT_MODE (ret, QImode);
14610 : emit_insn (gen_rtx_SET (operands[0], ret));
14611 : DONE;
14612 :
14613 : }
14614 : #undef DONE
14615 : #undef FAIL
14616 : }
14617 : static const uint8_t expand_encoding[] = {
14618 : 0x02, 0x01, 0x00, 0x01, 0x01
14619 : };
14620 : return complete_seq (expand_encoding, operands);
14621 : }
14622 :
14623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4230 */
14624 : rtx
14625 : gen_reduc_sbool_ior_scal_v2di (const rtx operand0, const rtx operand1)
14626 : {
14627 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14628 : start_sequence ();
14629 : {
14630 : #define FAIL _Pragma ("GCC error \"reduc_sbool_ior_scal_v2di cannot FAIL\"") (void)0
14631 : #define DONE return end_sequence ()
14632 : #line 4234 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14633 : {
14634 : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14635 : rtx tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, operands[1], operands[1]), UNSPEC_PTEST);
14636 : emit_insn (gen_rtx_SET (flags, tmp));
14637 : rtx ret = gen_rtx_fmt_ee (NE, VOIDmode, flags, const0_rtx);
14638 : PUT_MODE (ret, QImode);
14639 : emit_insn (gen_rtx_SET (operands[0], ret));
14640 : DONE;
14641 : }
14642 : #undef DONE
14643 : #undef FAIL
14644 : }
14645 : static const uint8_t expand_encoding[] = {
14646 : 0x02, 0x01, 0x00, 0x01, 0x01
14647 : };
14648 : return complete_seq (expand_encoding, operands);
14649 : }
14650 :
14651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4311 */
14652 : rtx
14653 : gen_reduc_and_scal_v8hi (const rtx operand0, const rtx operand1)
14654 : {
14655 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14656 : start_sequence ();
14657 : {
14658 : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v8hi cannot FAIL\"") (void)0
14659 : #define DONE return end_sequence ()
14660 : #line 4316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14661 : {
14662 : rtx tmp = gen_reg_rtx (V8HImode);
14663 : ix86_expand_reduc (gen_andv8hi3, tmp, operands[1]);
14664 : emit_insn (gen_vec_extractv8hihi (operands[0],
14665 : tmp, const0_rtx));
14666 : DONE;
14667 : }
14668 : #undef DONE
14669 : #undef FAIL
14670 : }
14671 : static const uint8_t expand_encoding[] = {
14672 : 0x01, 0x49, 0x50, 0x01, 0x00, 0x01, 0x01
14673 : };
14674 : return complete_seq (expand_encoding, operands);
14675 : }
14676 :
14677 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14678 : rtx
14679 : gen_reduc_ior_scal_v32qi (const rtx operand0, const rtx operand1)
14680 : {
14681 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14682 : start_sequence ();
14683 : {
14684 : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v32qi cannot FAIL\"") (void)0
14685 : #define DONE return end_sequence ()
14686 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14687 : {
14688 : rtx tmp = gen_reg_rtx (V16QImode);
14689 : rtx tmp2 = gen_reg_rtx (V16QImode);
14690 : rtx tmp3 = gen_reg_rtx (V16QImode);
14691 : emit_insn (gen_vec_extract_hi_v32qi (tmp, operands[1]));
14692 : emit_insn (gen_vec_extract_lo_v32qi (tmp2, operands[1]));
14693 : emit_insn (gen_iorv16qi3 (tmp3, tmp, tmp2));
14694 : emit_insn (gen_reduc_ior_scal_v16qi (operands[0], tmp3));
14695 : DONE;
14696 : }
14697 : #undef DONE
14698 : #undef FAIL
14699 : }
14700 : static const uint8_t expand_encoding[] = {
14701 : 0x01, 0x4a, 0x54, 0x01, 0x00, 0x01, 0x01
14702 : };
14703 : return complete_seq (expand_encoding, operands);
14704 : }
14705 :
14706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14707 : rtx
14708 : gen_reduc_xor_scal_v4di (const rtx operand0, const rtx operand1)
14709 : {
14710 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14711 : start_sequence ();
14712 : {
14713 : #define FAIL _Pragma ("GCC error \"reduc_xor_scal_v4di cannot FAIL\"") (void)0
14714 : #define DONE return end_sequence ()
14715 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14716 : {
14717 : rtx tmp = gen_reg_rtx (V2DImode);
14718 : rtx tmp2 = gen_reg_rtx (V2DImode);
14719 : rtx tmp3 = gen_reg_rtx (V2DImode);
14720 : emit_insn (gen_vec_extract_hi_v4di (tmp, operands[1]));
14721 : emit_insn (gen_vec_extract_lo_v4di (tmp2, operands[1]));
14722 : emit_insn (gen_xorv2di3 (tmp3, tmp, tmp2));
14723 : emit_insn (gen_reduc_xor_scal_v2di (operands[0], tmp3));
14724 : DONE;
14725 : }
14726 : #undef DONE
14727 : #undef FAIL
14728 : }
14729 : static const uint8_t expand_encoding[] = {
14730 : 0x01, 0x4b, 0x57, 0x01, 0x00, 0x01, 0x01
14731 : };
14732 : return complete_seq (expand_encoding, operands);
14733 : }
14734 :
14735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14736 : rtx
14737 : gen_reduc_and_scal_v8di (const rtx operand0, const rtx operand1)
14738 : {
14739 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14740 : start_sequence ();
14741 : {
14742 : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v8di cannot FAIL\"") (void)0
14743 : #define DONE return end_sequence ()
14744 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14745 : {
14746 : rtx tmp = gen_reg_rtx (V4DImode);
14747 : rtx tmp2 = gen_reg_rtx (V4DImode);
14748 : rtx tmp3 = gen_reg_rtx (V4DImode);
14749 : emit_insn (gen_vec_extract_hi_v8di (tmp, operands[1]));
14750 : emit_insn (gen_vec_extract_lo_v8di (tmp2, operands[1]));
14751 : emit_insn (gen_andv4di3 (tmp3, tmp, tmp2));
14752 : emit_insn (gen_reduc_and_scal_v4di (operands[0], tmp3));
14753 : DONE;
14754 : }
14755 : #undef DONE
14756 : #undef FAIL
14757 : }
14758 : static const uint8_t expand_encoding[] = {
14759 : 0x01, 0x49, 0x5c, 0x01, 0x00, 0x01, 0x01
14760 : };
14761 : return complete_seq (expand_encoding, operands);
14762 : }
14763 :
14764 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4396 */
14765 : extern rtx_insn *gen_split_1373 (rtx_insn *, rtx *);
14766 : rtx_insn *
14767 : gen_split_1373 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14768 : {
14769 : if (dump_file)
14770 : fprintf (dump_file, "Splitting with gen_split_1373 (sse.md:4396)\n");
14771 : start_sequence ();
14772 : #define FAIL return (end_sequence (), nullptr)
14773 : #define DONE return end_sequence ()
14774 : #line 4417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14775 : {
14776 : operands[5] = GEN_INT (INTVAL (operands[5]) ^ 4);
14777 : operands[6] = gen_reg_rtx (V2DFmode);
14778 : operands[7]
14779 : = lowpart_subreg (GET_MODE (operands[0]), operands[6], V2DFmode);
14780 : }
14781 : #undef DONE
14782 : #undef FAIL
14783 : static const uint8_t expand_encoding[] = {
14784 : 0x02, 0x1f, 0x01, 0x06, 0x1a, 0x6c, 0x03, 0x01,
14785 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c, 0x1f, 0x01,
14786 : 0x00, 0x01, 0x07
14787 : };
14788 : return complete_seq (expand_encoding, operands);
14789 : }
14790 :
14791 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4495 */
14792 : extern rtx_insn *gen_split_1387 (rtx_insn *, rtx *);
14793 : rtx_insn *
14794 : gen_split_1387 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14795 : {
14796 : if (dump_file)
14797 : fprintf (dump_file, "Splitting with gen_split_1387 (sse.md:4495)\n");
14798 : start_sequence ();
14799 : #define FAIL return (end_sequence (), nullptr)
14800 : #define DONE return end_sequence ()
14801 : #line 4519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14802 : {
14803 : if (INTVAL (operands[5]) == 5)
14804 : std::swap (operands[1], operands[2]);
14805 : operands[0] = gen_lowpart (V16QImode, operands[0]);
14806 : operands[1] = gen_lowpart (V16QImode, operands[1]);
14807 : operands[2] = force_reg (V16QImode,
14808 : gen_lowpart (V16QImode, operands[2]));
14809 : }
14810 : #undef DONE
14811 : #undef FAIL
14812 : static const uint8_t expand_encoding[] = {
14813 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01,
14814 : 0x02, 0x01, 0x01, 0x32, 0x4f, 0x61, 0x52, 0x01,
14815 : 0x03, 0x01, 0x04, 0x00, 0x34
14816 : };
14817 : return complete_seq (expand_encoding, operands);
14818 : }
14819 :
14820 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14821 : extern rtx_insn *gen_split_1397 (rtx_insn *, rtx *);
14822 : rtx_insn *
14823 : gen_split_1397 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14824 : {
14825 : if (dump_file)
14826 : fprintf (dump_file, "Splitting with gen_split_1397 (sse.md:4685)\n");
14827 : start_sequence ();
14828 : #define FAIL return (end_sequence (), nullptr)
14829 : #define DONE return end_sequence ()
14830 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14831 : {
14832 : operands[5] = lowpart_subreg (QImode,
14833 : operands[0], HImode);
14834 : if (SUBREG_P (operands[5]))
14835 : {
14836 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14837 : SUBREG_PROMOTED_SET (operands[5], 1);
14838 : }
14839 : }
14840 : #undef DONE
14841 : #undef FAIL
14842 : static const uint8_t expand_encoding[] = {
14843 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
14844 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14845 : 0x1f, 0x01, 0x04, 0x01, 0x05
14846 : };
14847 : return complete_seq (expand_encoding, operands);
14848 : }
14849 :
14850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14851 : extern rtx_insn *gen_split_1407 (rtx_insn *, rtx *);
14852 : rtx_insn *
14853 : gen_split_1407 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14854 : {
14855 : if (dump_file)
14856 : fprintf (dump_file, "Splitting with gen_split_1407 (sse.md:4685)\n");
14857 : start_sequence ();
14858 : #define FAIL return (end_sequence (), nullptr)
14859 : #define DONE return end_sequence ()
14860 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14861 : {
14862 : operands[5] = lowpart_subreg (QImode,
14863 : operands[0], SImode);
14864 : if (SUBREG_P (operands[5]))
14865 : {
14866 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14867 : SUBREG_PROMOTED_SET (operands[5], 1);
14868 : }
14869 : }
14870 : #undef DONE
14871 : #undef FAIL
14872 : static const uint8_t expand_encoding[] = {
14873 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x0f,
14874 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14875 : 0x1f, 0x01, 0x04, 0x01, 0x05
14876 : };
14877 : return complete_seq (expand_encoding, operands);
14878 : }
14879 :
14880 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14881 : extern rtx_insn *gen_split_1417 (rtx_insn *, rtx *);
14882 : rtx_insn *
14883 : gen_split_1417 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14884 : {
14885 : if (dump_file)
14886 : fprintf (dump_file, "Splitting with gen_split_1417 (sse.md:4685)\n");
14887 : start_sequence ();
14888 : #define FAIL return (end_sequence (), nullptr)
14889 : #define DONE return end_sequence ()
14890 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14891 : {
14892 : operands[5] = lowpart_subreg (HImode,
14893 : operands[0], DImode);
14894 : if (SUBREG_P (operands[5]))
14895 : {
14896 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14897 : SUBREG_PROMOTED_SET (operands[5], 1);
14898 : }
14899 : }
14900 : #undef DONE
14901 : #undef FAIL
14902 : static const uint8_t expand_encoding[] = {
14903 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x10,
14904 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14905 : 0x1f, 0x01, 0x04, 0x01, 0x05
14906 : };
14907 : return complete_seq (expand_encoding, operands);
14908 : }
14909 :
14910 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14911 : extern rtx_insn *gen_split_1427 (rtx_insn *, rtx *);
14912 : rtx_insn *
14913 : gen_split_1427 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14914 : {
14915 : if (dump_file)
14916 : fprintf (dump_file, "Splitting with gen_split_1427 (sse.md:4685)\n");
14917 : start_sequence ();
14918 : #define FAIL return (end_sequence (), nullptr)
14919 : #define DONE return end_sequence ()
14920 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14921 : {
14922 : operands[5] = lowpart_subreg (QImode,
14923 : operands[0], HImode);
14924 : if (SUBREG_P (operands[5]))
14925 : {
14926 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14927 : SUBREG_PROMOTED_SET (operands[5], 1);
14928 : }
14929 : }
14930 : #undef DONE
14931 : #undef FAIL
14932 : static const uint8_t expand_encoding[] = {
14933 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
14934 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14935 : 0x1f, 0x01, 0x04, 0x01, 0x05
14936 : };
14937 : return complete_seq (expand_encoding, operands);
14938 : }
14939 :
14940 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14941 : extern rtx_insn *gen_split_1437 (rtx_insn *, rtx *);
14942 : rtx_insn *
14943 : gen_split_1437 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14944 : {
14945 : if (dump_file)
14946 : fprintf (dump_file, "Splitting with gen_split_1437 (sse.md:4685)\n");
14947 : start_sequence ();
14948 : #define FAIL return (end_sequence (), nullptr)
14949 : #define DONE return end_sequence ()
14950 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14951 : {
14952 : operands[5] = lowpart_subreg (QImode,
14953 : operands[0], SImode);
14954 : if (SUBREG_P (operands[5]))
14955 : {
14956 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14957 : SUBREG_PROMOTED_SET (operands[5], 1);
14958 : }
14959 : }
14960 : #undef DONE
14961 : #undef FAIL
14962 : static const uint8_t expand_encoding[] = {
14963 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x0f,
14964 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14965 : 0x1f, 0x01, 0x04, 0x01, 0x05
14966 : };
14967 : return complete_seq (expand_encoding, operands);
14968 : }
14969 :
14970 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4724 */
14971 : extern rtx_insn *gen_split_1447 (rtx_insn *, rtx *);
14972 : rtx_insn *
14973 : gen_split_1447 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14974 : {
14975 : if (dump_file)
14976 : fprintf (dump_file, "Splitting with gen_split_1447 (sse.md:4724)\n");
14977 : start_sequence ();
14978 : #define FAIL return (end_sequence (), nullptr)
14979 : #define DONE return end_sequence ()
14980 : #line 4742 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14981 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
14982 : #undef DONE
14983 : #undef FAIL
14984 : static const uint8_t expand_encoding[] = {
14985 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
14986 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
14987 : };
14988 : return complete_seq (expand_encoding, operands);
14989 : }
14990 :
14991 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4877 */
14992 : extern rtx_insn *gen_split_1457 (rtx_insn *, rtx *);
14993 : rtx_insn *
14994 : gen_split_1457 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14995 : {
14996 : if (dump_file)
14997 : fprintf (dump_file, "Splitting with gen_split_1457 (sse.md:4877)\n");
14998 : start_sequence ();
14999 : #define FAIL return (end_sequence (), nullptr)
15000 : #define DONE return end_sequence ()
15001 : #line 4905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15002 : {
15003 : operands[5] = lowpart_subreg (HImode,
15004 : operands[0], HImode);
15005 : if (SUBREG_P (operands[5]))
15006 : {
15007 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15008 : SUBREG_PROMOTED_SET (operands[5], 1);
15009 : }
15010 : }
15011 : #undef DONE
15012 : #undef FAIL
15013 : static const uint8_t expand_encoding[] = {
15014 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x10,
15015 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15016 : 0x1f, 0x01, 0x04, 0x01, 0x05
15017 : };
15018 : return complete_seq (expand_encoding, operands);
15019 : }
15020 :
15021 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4877 */
15022 : extern rtx_insn *gen_split_1467 (rtx_insn *, rtx *);
15023 : rtx_insn *
15024 : gen_split_1467 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15025 : {
15026 : if (dump_file)
15027 : fprintf (dump_file, "Splitting with gen_split_1467 (sse.md:4877)\n");
15028 : start_sequence ();
15029 : #define FAIL return (end_sequence (), nullptr)
15030 : #define DONE return end_sequence ()
15031 : #line 4905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15032 : {
15033 : operands[5] = lowpart_subreg (HImode,
15034 : operands[0], SImode);
15035 : if (SUBREG_P (operands[5]))
15036 : {
15037 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15038 : SUBREG_PROMOTED_SET (operands[5], 1);
15039 : }
15040 : }
15041 : #undef DONE
15042 : #undef FAIL
15043 : static const uint8_t expand_encoding[] = {
15044 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x10,
15045 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15046 : 0x1f, 0x01, 0x04, 0x01, 0x05
15047 : };
15048 : return complete_seq (expand_encoding, operands);
15049 : }
15050 :
15051 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4919 */
15052 : extern rtx_insn *gen_split_1477 (rtx_insn *, rtx *);
15053 : rtx_insn *
15054 : gen_split_1477 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15055 : {
15056 : if (dump_file)
15057 : fprintf (dump_file, "Splitting with gen_split_1477 (sse.md:4919)\n");
15058 : start_sequence ();
15059 : #define FAIL return (end_sequence (), nullptr)
15060 : #define DONE return end_sequence ()
15061 : #line 4936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15062 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15063 : #undef DONE
15064 : #undef FAIL
15065 : static const uint8_t expand_encoding[] = {
15066 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01,
15067 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15068 : };
15069 : return complete_seq (expand_encoding, operands);
15070 : }
15071 :
15072 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15073 : extern rtx_insn *gen_split_1487 (rtx_insn *, rtx *);
15074 : rtx_insn *
15075 : gen_split_1487 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15076 : {
15077 : if (dump_file)
15078 : fprintf (dump_file, "Splitting with gen_split_1487 (sse.md:4938)\n");
15079 : start_sequence ();
15080 : #define FAIL return (end_sequence (), nullptr)
15081 : #define DONE return end_sequence ()
15082 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15083 : {
15084 : int cmp_imm = INTVAL (operands[3]);
15085 : rtx res = CONST0_RTX (SImode);
15086 : /* EQ/LE/NLT/TRUE. */
15087 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15088 : {
15089 : int nelts = GET_MODE_NUNITS (V32QImode);
15090 : if (nelts >= 8)
15091 : res = CONSTM1_RTX (SImode);
15092 : else
15093 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15094 : }
15095 : operands[4] = res;
15096 : }
15097 : #undef DONE
15098 : #undef FAIL
15099 : static const uint8_t expand_encoding[] = {
15100 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15101 : };
15102 : return complete_seq (expand_encoding, operands);
15103 : }
15104 :
15105 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15106 : extern rtx_insn *gen_split_1497 (rtx_insn *, rtx *);
15107 : rtx_insn *
15108 : gen_split_1497 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15109 : {
15110 : if (dump_file)
15111 : fprintf (dump_file, "Splitting with gen_split_1497 (sse.md:4938)\n");
15112 : start_sequence ();
15113 : #define FAIL return (end_sequence (), nullptr)
15114 : #define DONE return end_sequence ()
15115 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15116 : {
15117 : int cmp_imm = INTVAL (operands[3]);
15118 : rtx res = CONST0_RTX (HImode);
15119 : /* EQ/LE/NLT/TRUE. */
15120 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15121 : {
15122 : int nelts = GET_MODE_NUNITS (V16SImode);
15123 : if (nelts >= 8)
15124 : res = CONSTM1_RTX (HImode);
15125 : else
15126 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15127 : }
15128 : operands[4] = res;
15129 : }
15130 : #undef DONE
15131 : #undef FAIL
15132 : static const uint8_t expand_encoding[] = {
15133 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15134 : };
15135 : return complete_seq (expand_encoding, operands);
15136 : }
15137 :
15138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15139 : extern rtx_insn *gen_split_1507 (rtx_insn *, rtx *);
15140 : rtx_insn *
15141 : gen_split_1507 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15142 : {
15143 : if (dump_file)
15144 : fprintf (dump_file, "Splitting with gen_split_1507 (sse.md:4938)\n");
15145 : start_sequence ();
15146 : #define FAIL return (end_sequence (), nullptr)
15147 : #define DONE return end_sequence ()
15148 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15149 : {
15150 : int cmp_imm = INTVAL (operands[3]);
15151 : rtx res = CONST0_RTX (QImode);
15152 : /* EQ/LE/NLT/TRUE. */
15153 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15154 : {
15155 : int nelts = GET_MODE_NUNITS (V2DImode);
15156 : if (nelts >= 8)
15157 : res = CONSTM1_RTX (QImode);
15158 : else
15159 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15160 : }
15161 : operands[4] = res;
15162 : }
15163 : #undef DONE
15164 : #undef FAIL
15165 : static const uint8_t expand_encoding[] = {
15166 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15167 : };
15168 : return complete_seq (expand_encoding, operands);
15169 : }
15170 :
15171 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4999 */
15172 : extern rtx_insn *gen_split_1517 (rtx_insn *, rtx *);
15173 : rtx_insn *
15174 : gen_split_1517 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15175 : {
15176 : if (dump_file)
15177 : fprintf (dump_file, "Splitting with gen_split_1517 (sse.md:4999)\n");
15178 : start_sequence ();
15179 : #define FAIL return (end_sequence (), nullptr)
15180 : #define DONE return end_sequence ()
15181 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15182 : {
15183 : operands[5] = lowpart_subreg (SImode,
15184 : operands[0], HImode);
15185 : if (SUBREG_P (operands[5]))
15186 : {
15187 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15188 : SUBREG_PROMOTED_SET (operands[5], 1);
15189 : }
15190 : }
15191 : #undef DONE
15192 : #undef FAIL
15193 : static const uint8_t expand_encoding[] = {
15194 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x11,
15195 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15196 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15197 : };
15198 : return complete_seq (expand_encoding, operands);
15199 : }
15200 :
15201 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15202 : extern rtx_insn *gen_split_1527 (rtx_insn *, rtx *);
15203 : rtx_insn *
15204 : gen_split_1527 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15205 : {
15206 : if (dump_file)
15207 : fprintf (dump_file, "Splitting with gen_split_1527 (sse.md:5091)\n");
15208 : start_sequence ();
15209 : #define FAIL return (end_sequence (), nullptr)
15210 : #define DONE return end_sequence ()
15211 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15212 : {
15213 : operands[5] = lowpart_subreg (QImode,
15214 : operands[0], HImode);
15215 : if (SUBREG_P (operands[5]))
15216 : {
15217 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15218 : SUBREG_PROMOTED_SET (operands[5], 1);
15219 : }
15220 : }
15221 : #undef DONE
15222 : #undef FAIL
15223 : static const uint8_t expand_encoding[] = {
15224 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
15225 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15226 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15227 : };
15228 : return complete_seq (expand_encoding, operands);
15229 : }
15230 :
15231 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15232 : extern rtx_insn *gen_split_1537 (rtx_insn *, rtx *);
15233 : rtx_insn *
15234 : gen_split_1537 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15235 : {
15236 : if (dump_file)
15237 : fprintf (dump_file, "Splitting with gen_split_1537 (sse.md:5091)\n");
15238 : start_sequence ();
15239 : #define FAIL return (end_sequence (), nullptr)
15240 : #define DONE return end_sequence ()
15241 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15242 : {
15243 : operands[5] = lowpart_subreg (QImode,
15244 : operands[0], SImode);
15245 : if (SUBREG_P (operands[5]))
15246 : {
15247 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15248 : SUBREG_PROMOTED_SET (operands[5], 1);
15249 : }
15250 : }
15251 : #undef DONE
15252 : #undef FAIL
15253 : static const uint8_t expand_encoding[] = {
15254 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x0f,
15255 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15256 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15257 : };
15258 : return complete_seq (expand_encoding, operands);
15259 : }
15260 :
15261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5134 */
15262 : extern rtx_insn *gen_split_1547 (rtx_insn *, rtx *);
15263 : rtx_insn *
15264 : gen_split_1547 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15265 : {
15266 : if (dump_file)
15267 : fprintf (dump_file, "Splitting with gen_split_1547 (sse.md:5134)\n");
15268 : start_sequence ();
15269 : #define FAIL return (end_sequence (), nullptr)
15270 : #define DONE return end_sequence ()
15271 : #line 5152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15272 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15273 : #undef DONE
15274 : #undef FAIL
15275 : static const uint8_t expand_encoding[] = {
15276 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15277 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15278 : };
15279 : return complete_seq (expand_encoding, operands);
15280 : }
15281 :
15282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5161 */
15283 : extern rtx_insn *gen_split_1557 (rtx_insn *, rtx *);
15284 : rtx_insn *
15285 : gen_split_1557 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
15286 : {
15287 : if (dump_file)
15288 : fprintf (dump_file, "Splitting with gen_split_1557 (sse.md:5161)\n");
15289 : start_sequence ();
15290 : #define FAIL return (end_sequence (), nullptr)
15291 : #define DONE return end_sequence ()
15292 : #line 5176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15293 : {
15294 : /* LE: 2, NLT: 5, NLE: 6, LT: 1 */
15295 : int cmp_predicate = 2; /* LE */
15296 : if (MEM_P (operands[1]))
15297 : {
15298 : std::swap (operands[1], operands[2]);
15299 : cmp_predicate = 5; /* NLT (GE) */
15300 : }
15301 : if ((INTVAL (operands[4]) & 4) != 0)
15302 : cmp_predicate ^= 4; /* Invert the comparison to NLE (GT) or LT. */
15303 : emit_insn (gen_avx512bw_ucmpv32hi3 (operands[0], operands[1],operands[2],
15304 : GEN_INT (cmp_predicate)));
15305 : DONE;
15306 : }
15307 : #undef DONE
15308 : #undef FAIL
15309 : static const uint8_t expand_encoding[] = {
15310 : 0x01, 0x27, 0x00
15311 : };
15312 : return complete_seq (expand_encoding, operands);
15313 : }
15314 :
15315 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5275 */
15316 : rtx
15317 : gen_vec_cmpv2diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15318 : {
15319 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15320 : start_sequence ();
15321 : {
15322 : #define FAIL return (end_sequence (), nullptr)
15323 : #define DONE return end_sequence ()
15324 : #line 5281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15325 : {
15326 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15327 : operands[2], operands[3]);
15328 : gcc_assert (ok);
15329 : DONE;
15330 : }
15331 : #undef DONE
15332 : #undef FAIL
15333 : }
15334 : static const uint8_t expand_encoding[] = {
15335 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15336 : 0x02, 0x01, 0x03
15337 : };
15338 : return complete_seq (expand_encoding, operands);
15339 : }
15340 :
15341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5288 */
15342 : rtx
15343 : gen_vec_cmpv64qidi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15344 : {
15345 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15346 : start_sequence ();
15347 : {
15348 : #define FAIL return (end_sequence (), nullptr)
15349 : #define DONE return end_sequence ()
15350 : #line 5294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15351 : {
15352 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15353 : operands[2], operands[3]);
15354 : gcc_assert (ok);
15355 : DONE;
15356 : }
15357 : #undef DONE
15358 : #undef FAIL
15359 : }
15360 : static const uint8_t expand_encoding[] = {
15361 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x12, 0x01, 0x01,
15362 : 0x02, 0x01, 0x03
15363 : };
15364 : return complete_seq (expand_encoding, operands);
15365 : }
15366 :
15367 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5314 */
15368 : rtx
15369 : gen_vec_cmpv16hiv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15370 : {
15371 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15372 : start_sequence ();
15373 : {
15374 : #define FAIL return (end_sequence (), nullptr)
15375 : #define DONE return end_sequence ()
15376 : #line 5320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15377 : {
15378 : bool ok = ix86_expand_int_vec_cmp (operands);
15379 : gcc_assert (ok);
15380 : DONE;
15381 : }
15382 : #undef DONE
15383 : #undef FAIL
15384 : }
15385 : static const uint8_t expand_encoding[] = {
15386 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x55, 0x01, 0x01,
15387 : 0x02, 0x01, 0x03
15388 : };
15389 : return complete_seq (expand_encoding, operands);
15390 : }
15391 :
15392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5362 */
15393 : rtx
15394 : gen_vec_cmpv2dfv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15395 : {
15396 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15397 : start_sequence ();
15398 : {
15399 : #define FAIL return (end_sequence (), nullptr)
15400 : #define DONE return end_sequence ()
15401 : #line 5368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15402 : {
15403 : bool ok = ix86_expand_fp_vec_cmp (operands);
15404 : gcc_assert (ok);
15405 : DONE;
15406 : }
15407 : #undef DONE
15408 : #undef FAIL
15409 : }
15410 : static const uint8_t expand_encoding[] = {
15411 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x52, 0x01, 0x01,
15412 : 0x02, 0x01, 0x03
15413 : };
15414 : return complete_seq (expand_encoding, operands);
15415 : }
15416 :
15417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5387 */
15418 : rtx
15419 : gen_vec_cmpuv32hisi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15420 : {
15421 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15422 : start_sequence ();
15423 : {
15424 : #define FAIL return (end_sequence (), nullptr)
15425 : #define DONE return end_sequence ()
15426 : #line 5393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15427 : {
15428 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15429 : operands[2], operands[3]);
15430 : gcc_assert (ok);
15431 : DONE;
15432 : }
15433 : #undef DONE
15434 : #undef FAIL
15435 : }
15436 : static const uint8_t expand_encoding[] = {
15437 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x11, 0x01, 0x01,
15438 : 0x02, 0x01, 0x03
15439 : };
15440 : return complete_seq (expand_encoding, operands);
15441 : }
15442 :
15443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5424 */
15444 : rtx
15445 : gen_vec_cmpuv2div2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15446 : {
15447 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15448 : start_sequence ();
15449 : {
15450 : #define FAIL return (end_sequence (), nullptr)
15451 : #define DONE return end_sequence ()
15452 : #line 5430 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15453 : {
15454 : bool ok = ix86_expand_int_vec_cmp (operands);
15455 : gcc_assert (ok);
15456 : DONE;
15457 : }
15458 : #undef DONE
15459 : #undef FAIL
15460 : }
15461 : static const uint8_t expand_encoding[] = {
15462 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x52, 0x01, 0x01,
15463 : 0x02, 0x01, 0x03
15464 : };
15465 : return complete_seq (expand_encoding, operands);
15466 : }
15467 :
15468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5498 */
15469 : rtx
15470 : gen_vcond_mask_v4sfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15471 : {
15472 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15473 : static const uint8_t expand_encoding[] = {
15474 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x01, 0x01,
15475 : 0x01, 0x02, 0x01, 0x03
15476 : };
15477 : return expand_rtx (expand_encoding, operands);
15478 : }
15479 :
15480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5506 */
15481 : rtx
15482 : gen_vcond_mask_v16hihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15483 : {
15484 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15485 : static const uint8_t expand_encoding[] = {
15486 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x01, 0x01,
15487 : 0x01, 0x02, 0x01, 0x03
15488 : };
15489 : return expand_rtx (expand_encoding, operands);
15490 : }
15491 :
15492 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5520 */
15493 : rtx
15494 : gen_vcond_mask_v8siv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15495 : {
15496 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15497 : start_sequence ();
15498 : {
15499 : #define FAIL _Pragma ("GCC error \"vcond_mask_v8siv8si cannot FAIL\"") (void)0
15500 : #define DONE return end_sequence ()
15501 : #line 5527 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15502 : {
15503 : ix86_expand_sse_movcc (operands[0], operands[3],
15504 : operands[1], operands[2]);
15505 : DONE;
15506 : }
15507 : #undef DONE
15508 : #undef FAIL
15509 : }
15510 : static const uint8_t expand_encoding[] = {
15511 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x01,
15512 : 0x01, 0x01, 0x02, 0x01, 0x03
15513 : };
15514 : return complete_seq (expand_encoding, operands);
15515 : }
15516 :
15517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5572 */
15518 : rtx
15519 : gen_vcond_mask_v2dfv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15520 : {
15521 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15522 : start_sequence ();
15523 : {
15524 : #define FAIL _Pragma ("GCC error \"vcond_mask_v2dfv2di cannot FAIL\"") (void)0
15525 : #define DONE return end_sequence ()
15526 : #line 5579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15527 : {
15528 : ix86_expand_sse_movcc (operands[0], operands[3],
15529 : operands[1], operands[2]);
15530 : DONE;
15531 : }
15532 : #undef DONE
15533 : #undef FAIL
15534 : }
15535 : static const uint8_t expand_encoding[] = {
15536 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x01,
15537 : 0x01, 0x01, 0x02, 0x01, 0x03
15538 : };
15539 : return complete_seq (expand_encoding, operands);
15540 : }
15541 :
15542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15543 : rtx
15544 : gen_xorv8bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15545 : {
15546 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15547 : start_sequence ();
15548 : {
15549 : #define FAIL return (end_sequence (), nullptr)
15550 : #define DONE return end_sequence ()
15551 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15552 : ix86_fixup_binary_operands_no_copy (XOR, V8BFmode, operands);
15553 : #undef DONE
15554 : #undef FAIL
15555 : }
15556 : static const uint8_t expand_encoding[] = {
15557 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x69, 0x01, 0x01,
15558 : 0x01, 0x02
15559 : };
15560 : return complete_seq (expand_encoding, operands);
15561 : }
15562 :
15563 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15564 : rtx
15565 : gen_iorv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15566 : {
15567 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15568 : start_sequence ();
15569 : {
15570 : #define FAIL return (end_sequence (), nullptr)
15571 : #define DONE return end_sequence ()
15572 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15573 : ix86_fixup_binary_operands_no_copy (IOR, V8SFmode, operands);
15574 : #undef DONE
15575 : #undef FAIL
15576 : }
15577 : static const uint8_t expand_encoding[] = {
15578 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x4a,
15579 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15580 : 0x04
15581 : };
15582 : return complete_seq (expand_encoding, operands);
15583 : }
15584 :
15585 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15586 : rtx
15587 : gen_andv4df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15588 : {
15589 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15590 : start_sequence ();
15591 : {
15592 : #define FAIL return (end_sequence (), nullptr)
15593 : #define DONE return end_sequence ()
15594 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15595 : ix86_fixup_binary_operands_no_copy (AND, V4DFmode, operands);
15596 : #undef DONE
15597 : #undef FAIL
15598 : }
15599 : static const uint8_t expand_encoding[] = {
15600 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x49,
15601 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15602 : 0x04
15603 : };
15604 : return complete_seq (expand_encoding, operands);
15605 : }
15606 :
15607 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15608 : rtx
15609 : gen_xorv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15610 : {
15611 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15612 : start_sequence ();
15613 : {
15614 : #define FAIL return (end_sequence (), nullptr)
15615 : #define DONE return end_sequence ()
15616 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15617 : ix86_fixup_binary_operands_no_copy (XOR, V2DFmode, operands);
15618 : #undef DONE
15619 : #undef FAIL
15620 : }
15621 : static const uint8_t expand_encoding[] = {
15622 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x4b,
15623 : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15624 : 0x04
15625 : };
15626 : return complete_seq (expand_encoding, operands);
15627 : }
15628 :
15629 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15630 : rtx
15631 : gen_xorv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15632 : {
15633 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15634 : start_sequence ();
15635 : {
15636 : #define FAIL return (end_sequence (), nullptr)
15637 : #define DONE return end_sequence ()
15638 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15639 : ix86_fixup_binary_operands_no_copy (XOR, V16SFmode, operands);
15640 : #undef DONE
15641 : #undef FAIL
15642 : }
15643 : static const uint8_t expand_encoding[] = {
15644 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x74, 0x01, 0x01,
15645 : 0x01, 0x02
15646 : };
15647 : return complete_seq (expand_encoding, operands);
15648 : }
15649 :
15650 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5852 */
15651 : extern rtx_insn *gen_split_1563 (rtx_insn *, rtx *);
15652 : rtx_insn *
15653 : gen_split_1563 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15654 : {
15655 : if (dump_file)
15656 : fprintf (dump_file, "Splitting with gen_split_1563 (sse.md:5852)\n");
15657 : start_sequence ();
15658 : #define FAIL return (end_sequence (), nullptr)
15659 : #define DONE return end_sequence ()
15660 : #line 5860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15661 : operands[1] = force_reg (V16BFmode, operands[1]);
15662 : #undef DONE
15663 : #undef FAIL
15664 : static const uint8_t expand_encoding[] = {
15665 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
15666 : };
15667 : return complete_seq (expand_encoding, operands);
15668 : }
15669 :
15670 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5852 */
15671 : extern rtx_insn *gen_split_1573 (rtx_insn *, rtx *);
15672 : rtx_insn *
15673 : gen_split_1573 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15674 : {
15675 : if (dump_file)
15676 : fprintf (dump_file, "Splitting with gen_split_1573 (sse.md:5852)\n");
15677 : start_sequence ();
15678 : #define FAIL return (end_sequence (), nullptr)
15679 : #define DONE return end_sequence ()
15680 : #line 5860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15681 : operands[1] = force_reg (V2DFmode, operands[1]);
15682 : #undef DONE
15683 : #undef FAIL
15684 : static const uint8_t expand_encoding[] = {
15685 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
15686 : };
15687 : return complete_seq (expand_encoding, operands);
15688 : }
15689 :
15690 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5862 */
15691 : rtx
15692 : gen_copysignv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
15693 : {
15694 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15695 : start_sequence ();
15696 : {
15697 : #define FAIL _Pragma ("GCC error \"copysignv8df3 cannot FAIL\"") (void)0
15698 : #define DONE return end_sequence ()
15699 : #line 5873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15700 : {
15701 : operands[3] = ix86_build_signbit_mask (V8DFmode, 1, 0);
15702 :
15703 : operands[4] = gen_reg_rtx (V8DFmode);
15704 : operands[5] = gen_reg_rtx (V8DFmode);
15705 : }
15706 : #undef DONE
15707 : #undef FAIL
15708 : }
15709 : static const uint8_t expand_encoding[] = {
15710 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x75, 0x4c, 0x75,
15711 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
15712 : 0x75, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
15713 : 0x4a, 0x75, 0x01, 0x04, 0x01, 0x05
15714 : };
15715 : return complete_seq (expand_encoding, operands);
15716 : }
15717 :
15718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5880 */
15719 : rtx
15720 : gen_xorsignv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15721 : {
15722 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15723 : start_sequence ();
15724 : {
15725 : #define FAIL _Pragma ("GCC error \"xorsignv8sf3 cannot FAIL\"") (void)0
15726 : #define DONE return end_sequence ()
15727 : #line 5888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15728 : {
15729 : operands[3] = ix86_build_signbit_mask (V8SFmode, 1, 0);
15730 :
15731 : operands[4] = gen_reg_rtx (V8SFmode);
15732 : }
15733 : #undef DONE
15734 : #undef FAIL
15735 : }
15736 : static const uint8_t expand_encoding[] = {
15737 : 0x02, 0x1f, 0x01, 0x04, 0x49, 0x6f, 0x01, 0x03,
15738 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x6f, 0x01,
15739 : 0x04, 0x01, 0x01
15740 : };
15741 : return complete_seq (expand_encoding, operands);
15742 : }
15743 :
15744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6111 */
15745 : rtx
15746 : gen_xortf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15747 : {
15748 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15749 : start_sequence ();
15750 : {
15751 : #define FAIL return (end_sequence (), nullptr)
15752 : #define DONE return end_sequence ()
15753 : #line 6117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15754 : ix86_fixup_binary_operands_no_copy (XOR, TFmode, operands);
15755 : #undef DONE
15756 : #undef FAIL
15757 : }
15758 : static const uint8_t expand_encoding[] = {
15759 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x30, 0x01, 0x01,
15760 : 0x01, 0x02
15761 : };
15762 : return complete_seq (expand_encoding, operands);
15763 : }
15764 :
15765 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6204 */
15766 : rtx
15767 : gen_fmav8hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15768 : {
15769 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15770 : static const uint8_t expand_encoding[] = {
15771 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6a, 0x01, 0x01,
15772 : 0x01, 0x02, 0x01, 0x03
15773 : };
15774 : return expand_rtx (expand_encoding, operands);
15775 : }
15776 :
15777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6211 */
15778 : rtx
15779 : gen_fmsv8sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15780 : {
15781 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15782 : static const uint8_t expand_encoding[] = {
15783 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6f, 0x01, 0x01,
15784 : 0x01, 0x02, 0x3d, 0x6f, 0x01, 0x03
15785 : };
15786 : return expand_rtx (expand_encoding, operands);
15787 : }
15788 :
15789 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6211 */
15790 : rtx
15791 : gen_fmsv32bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15792 : {
15793 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15794 : static const uint8_t expand_encoding[] = {
15795 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x72, 0x01, 0x01,
15796 : 0x01, 0x02, 0x3d, 0x72, 0x01, 0x03
15797 : };
15798 : return expand_rtx (expand_encoding, operands);
15799 : }
15800 :
15801 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6218 */
15802 : rtx
15803 : gen_fnmav8hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15804 : {
15805 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15806 : static const uint8_t expand_encoding[] = {
15807 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6a, 0x3d, 0x6a,
15808 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15809 : };
15810 : return expand_rtx (expand_encoding, operands);
15811 : }
15812 :
15813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6225 */
15814 : rtx
15815 : gen_fnmsv8sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15816 : {
15817 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15818 : static const uint8_t expand_encoding[] = {
15819 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6f, 0x3d, 0x6f,
15820 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6f, 0x01, 0x03
15821 : };
15822 : return expand_rtx (expand_encoding, operands);
15823 : }
15824 :
15825 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6225 */
15826 : rtx
15827 : gen_fnmsv32bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15828 : {
15829 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15830 : static const uint8_t expand_encoding[] = {
15831 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x72, 0x3d, 0x72,
15832 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x72, 0x01, 0x03
15833 : };
15834 : return expand_rtx (expand_encoding, operands);
15835 : }
15836 :
15837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6252 */
15838 : rtx
15839 : gen_fma4i_fmsub_v2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15840 : {
15841 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15842 : static const uint8_t expand_encoding[] = {
15843 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6c, 0x01, 0x01,
15844 : 0x01, 0x02, 0x3d, 0x6c, 0x01, 0x03
15845 : };
15846 : return expand_rtx (expand_encoding, operands);
15847 : }
15848 :
15849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6260 */
15850 : rtx
15851 : gen_fma4i_fnmadd_v4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15852 : {
15853 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15854 : static const uint8_t expand_encoding[] = {
15855 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x70, 0x3d, 0x70,
15856 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15857 : };
15858 : return expand_rtx (expand_encoding, operands);
15859 : }
15860 :
15861 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6268 */
15862 : rtx
15863 : gen_fma4i_fnmsub_v8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15864 : {
15865 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15866 : static const uint8_t expand_encoding[] = {
15867 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x75, 0x3d, 0x75,
15868 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x75, 0x01, 0x03
15869 : };
15870 : return expand_rtx (expand_encoding, operands);
15871 : }
15872 :
15873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6277 */
15874 : rtx
15875 : gen_avx512vl_fmadd_v8sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15876 : {
15877 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15878 : start_sequence ();
15879 : {
15880 : #define FAIL return (end_sequence (), nullptr)
15881 : #define DONE return end_sequence ()
15882 : #line 6284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15883 : {
15884 : emit_insn (gen_fma_fmadd_v8sf_maskz_1_round (
15885 : operands[0], operands[1], operands[2], operands[3],
15886 : CONST0_RTX (V8SFmode), operands[4], operands[5]));
15887 : DONE;
15888 : }
15889 : #undef DONE
15890 : #undef FAIL
15891 : }
15892 : static const uint8_t expand_encoding[] = {
15893 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15894 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
15895 : 0x81, 0x33
15896 : };
15897 : return complete_seq (expand_encoding, operands);
15898 : }
15899 :
15900 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6332 */
15901 : rtx
15902 : gen_cond_fmav16hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15903 : {
15904 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15905 : start_sequence ();
15906 : {
15907 : #define FAIL _Pragma ("GCC error \"cond_fmav16hf cannot FAIL\"") (void)0
15908 : #define DONE return end_sequence ()
15909 : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15910 : {
15911 : rtx tmp = gen_reg_rtx (V16HFmode);
15912 : emit_insn (gen_fmav16hf4 (tmp,
15913 : operands[2],
15914 : operands[3],
15915 : operands[4]));
15916 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V16HFmode,
15917 : tmp,
15918 : operands[5],
15919 : operands[1]));
15920 : DONE;
15921 : }
15922 : #undef DONE
15923 : #undef FAIL
15924 : }
15925 : static const uint8_t expand_encoding[] = {
15926 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81,
15927 : 0x19, 0x6e, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04,
15928 : 0x01, 0x05, 0x01, 0x01
15929 : };
15930 : return complete_seq (expand_encoding, operands);
15931 : }
15932 :
15933 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
15934 : rtx
15935 : gen_avx512vl_fmsub_v16hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15936 : {
15937 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15938 : start_sequence ();
15939 : {
15940 : #define FAIL return (end_sequence (), nullptr)
15941 : #define DONE return end_sequence ()
15942 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15943 : {
15944 : emit_insn (gen_fma_fmsub_v16hf_maskz_1 (
15945 : operands[0], operands[1], operands[2], operands[3],
15946 : CONST0_RTX (V16HFmode), operands[4]));
15947 : DONE;
15948 : }
15949 : #undef DONE
15950 : #undef FAIL
15951 : }
15952 : static const uint8_t expand_encoding[] = {
15953 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15954 : 0x03, 0x01, 0x04
15955 : };
15956 : return complete_seq (expand_encoding, operands);
15957 : }
15958 :
15959 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
15960 : rtx
15961 : gen_avx512vl_fmsub_v4sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15962 : {
15963 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15964 : start_sequence ();
15965 : {
15966 : #define FAIL return (end_sequence (), nullptr)
15967 : #define DONE return end_sequence ()
15968 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15969 : {
15970 : emit_insn (gen_fma_fmsub_v4sf_maskz_1_round (
15971 : operands[0], operands[1], operands[2], operands[3],
15972 : CONST0_RTX (V4SFmode), operands[4], operands[5]));
15973 : DONE;
15974 : }
15975 : #undef DONE
15976 : #undef FAIL
15977 : }
15978 : static const uint8_t expand_encoding[] = {
15979 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15980 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
15981 : 0x81, 0x33
15982 : };
15983 : return complete_seq (expand_encoding, operands);
15984 : }
15985 :
15986 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6435 */
15987 : rtx
15988 : gen_cond_fmsv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15989 : {
15990 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15991 : start_sequence ();
15992 : {
15993 : #define FAIL _Pragma ("GCC error \"cond_fmsv8sf cannot FAIL\"") (void)0
15994 : #define DONE return end_sequence ()
15995 : #line 6446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15996 : {
15997 : rtx tmp = gen_reg_rtx (V8SFmode);
15998 : emit_insn (gen_fmsv8sf4 (tmp,
15999 : operands[2],
16000 : operands[3],
16001 : operands[4]));
16002 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8SFmode,
16003 : tmp,
16004 : operands[5],
16005 : operands[1]));
16006 : DONE;
16007 : }
16008 : #undef DONE
16009 : #undef FAIL
16010 : }
16011 : static const uint8_t expand_encoding[] = {
16012 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81,
16013 : 0x19, 0x6f, 0x01, 0x02, 0x01, 0x03, 0x3d, 0x6f,
16014 : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16015 : };
16016 : return complete_seq (expand_encoding, operands);
16017 : }
16018 :
16019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16020 : rtx
16021 : gen_avx512fp16_fnmadd_v8hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16022 : {
16023 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16024 : start_sequence ();
16025 : {
16026 : #define FAIL return (end_sequence (), nullptr)
16027 : #define DONE return end_sequence ()
16028 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16029 : {
16030 : emit_insn (gen_fma_fnmadd_v8hf_maskz_1_round (
16031 : operands[0], operands[1], operands[2], operands[3],
16032 : CONST0_RTX (V8HFmode), operands[4], operands[5]));
16033 : DONE;
16034 : }
16035 : #undef DONE
16036 : #undef FAIL
16037 : }
16038 : static const uint8_t expand_encoding[] = {
16039 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16040 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16041 : 0x81, 0x33
16042 : };
16043 : return complete_seq (expand_encoding, operands);
16044 : }
16045 :
16046 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16047 : rtx
16048 : gen_avx512vl_fnmadd_v4df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16049 : {
16050 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16051 : start_sequence ();
16052 : {
16053 : #define FAIL return (end_sequence (), nullptr)
16054 : #define DONE return end_sequence ()
16055 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16056 : {
16057 : emit_insn (gen_fma_fnmadd_v4df_maskz_1_round (
16058 : operands[0], operands[1], operands[2], operands[3],
16059 : CONST0_RTX (V4DFmode), operands[4], operands[5]));
16060 : DONE;
16061 : }
16062 : #undef DONE
16063 : #undef FAIL
16064 : }
16065 : static const uint8_t expand_encoding[] = {
16066 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16067 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16068 : 0x81, 0x33
16069 : };
16070 : return complete_seq (expand_encoding, operands);
16071 : }
16072 :
16073 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6541 */
16074 : rtx
16075 : gen_cond_fnmav4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16076 : {
16077 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16078 : start_sequence ();
16079 : {
16080 : #define FAIL _Pragma ("GCC error \"cond_fnmav4df cannot FAIL\"") (void)0
16081 : #define DONE return end_sequence ()
16082 : #line 6552 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16083 : {
16084 : rtx tmp = gen_reg_rtx (V4DFmode);
16085 : emit_insn (gen_fnmav4df4 (tmp,
16086 : operands[2],
16087 : operands[3],
16088 : operands[4]));
16089 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V4DFmode,
16090 : tmp,
16091 : operands[5],
16092 : operands[1]));
16093 : DONE;
16094 : }
16095 : #undef DONE
16096 : #undef FAIL
16097 : }
16098 : static const uint8_t expand_encoding[] = {
16099 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81,
16100 : 0x19, 0x70, 0x3d, 0x70, 0x01, 0x02, 0x01, 0x03,
16101 : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16102 : };
16103 : return complete_seq (expand_encoding, operands);
16104 : }
16105 :
16106 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16107 : rtx
16108 : gen_avx512vl_fnmsub_v8sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16109 : {
16110 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16111 : start_sequence ();
16112 : {
16113 : #define FAIL return (end_sequence (), nullptr)
16114 : #define DONE return end_sequence ()
16115 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16116 : {
16117 : emit_insn (gen_fma_fnmsub_v8sf_maskz_1 (
16118 : operands[0], operands[1], operands[2], operands[3],
16119 : CONST0_RTX (V8SFmode), operands[4]));
16120 : DONE;
16121 : }
16122 : #undef DONE
16123 : #undef FAIL
16124 : }
16125 : static const uint8_t expand_encoding[] = {
16126 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16127 : 0x03, 0x01, 0x04
16128 : };
16129 : return complete_seq (expand_encoding, operands);
16130 : }
16131 :
16132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6649 */
16133 : rtx
16134 : gen_cond_fnmsv32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16135 : {
16136 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16137 : start_sequence ();
16138 : {
16139 : #define FAIL _Pragma ("GCC error \"cond_fnmsv32hf cannot FAIL\"") (void)0
16140 : #define DONE return end_sequence ()
16141 : #line 6661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16142 : {
16143 : rtx tmp = gen_reg_rtx (V32HFmode);
16144 : emit_insn (gen_fnmsv32hf4 (tmp,
16145 : operands[2],
16146 : operands[3],
16147 : operands[4]));
16148 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V32HFmode,
16149 : tmp,
16150 : operands[5],
16151 : operands[1]));
16152 : DONE;
16153 : }
16154 : #undef DONE
16155 : #undef FAIL
16156 : }
16157 : static const uint8_t expand_encoding[] = {
16158 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81,
16159 : 0x19, 0x73, 0x3d, 0x73, 0x01, 0x02, 0x01, 0x03,
16160 : 0x3d, 0x73, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16161 : };
16162 : return complete_seq (expand_encoding, operands);
16163 : }
16164 :
16165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6721 */
16166 : rtx
16167 : gen_vec_fmaddsubv16hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16168 : {
16169 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16170 : static const uint8_t expand_encoding[] = {
16171 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
16172 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x06
16173 : };
16174 : return expand_rtx (expand_encoding, operands);
16175 : }
16176 :
16177 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6721 */
16178 : rtx
16179 : gen_vec_fmaddsubv8df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16180 : {
16181 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16182 : static const uint8_t expand_encoding[] = {
16183 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01, 0x01,
16184 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x06
16185 : };
16186 : return expand_rtx (expand_encoding, operands);
16187 : }
16188 :
16189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6730 */
16190 : rtx
16191 : gen_vec_fmsubaddv4df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16192 : {
16193 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16194 : static const uint8_t expand_encoding[] = {
16195 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
16196 : 0x01, 0x02, 0x3d, 0x70, 0x01, 0x03, 0x81, 0x06
16197 : };
16198 : return expand_rtx (expand_encoding, operands);
16199 : }
16200 :
16201 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6749 */
16202 : rtx
16203 : gen_avx512vl_fmaddsub_v16hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16204 : {
16205 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16206 : start_sequence ();
16207 : {
16208 : #define FAIL return (end_sequence (), nullptr)
16209 : #define DONE return end_sequence ()
16210 : #line 6756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16211 : {
16212 : emit_insn (gen_fma_fmaddsub_v16hf_maskz_1 (
16213 : operands[0], operands[1], operands[2], operands[3],
16214 : CONST0_RTX (V16HFmode), operands[4]));
16215 : DONE;
16216 : }
16217 : #undef DONE
16218 : #undef FAIL
16219 : }
16220 : static const uint8_t expand_encoding[] = {
16221 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16222 : 0x03, 0x01, 0x04
16223 : };
16224 : return complete_seq (expand_encoding, operands);
16225 : }
16226 :
16227 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6749 */
16228 : rtx
16229 : gen_avx512vl_fmaddsub_v4sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16230 : {
16231 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16232 : start_sequence ();
16233 : {
16234 : #define FAIL return (end_sequence (), nullptr)
16235 : #define DONE return end_sequence ()
16236 : #line 6756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16237 : {
16238 : emit_insn (gen_fma_fmaddsub_v4sf_maskz_1_round (
16239 : operands[0], operands[1], operands[2], operands[3],
16240 : CONST0_RTX (V4SFmode), operands[4], operands[5]));
16241 : DONE;
16242 : }
16243 : #undef DONE
16244 : #undef FAIL
16245 : }
16246 : static const uint8_t expand_encoding[] = {
16247 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16248 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16249 : 0x81, 0x33
16250 : };
16251 : return complete_seq (expand_encoding, operands);
16252 : }
16253 :
16254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6763 */
16255 : rtx
16256 : gen_avx512fp16_fmsubadd_v8hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16257 : {
16258 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16259 : start_sequence ();
16260 : {
16261 : #define FAIL return (end_sequence (), nullptr)
16262 : #define DONE return end_sequence ()
16263 : #line 6770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16264 : {
16265 : emit_insn (gen_fma_fmsubadd_v8hf_maskz_1 (
16266 : operands[0], operands[1], operands[2], operands[3],
16267 : CONST0_RTX (V8HFmode), operands[4]));
16268 : DONE;
16269 : }
16270 : #undef DONE
16271 : #undef FAIL
16272 : }
16273 : static const uint8_t expand_encoding[] = {
16274 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16275 : 0x03, 0x01, 0x04
16276 : };
16277 : return complete_seq (expand_encoding, operands);
16278 : }
16279 :
16280 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6763 */
16281 : rtx
16282 : gen_avx512f_fmsubadd_v8df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16283 : {
16284 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16285 : start_sequence ();
16286 : {
16287 : #define FAIL return (end_sequence (), nullptr)
16288 : #define DONE return end_sequence ()
16289 : #line 6770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16290 : {
16291 : emit_insn (gen_fma_fmsubadd_v8df_maskz_1_round (
16292 : operands[0], operands[1], operands[2], operands[3],
16293 : CONST0_RTX (V8DFmode), operands[4], operands[5]));
16294 : DONE;
16295 : }
16296 : #undef DONE
16297 : #undef FAIL
16298 : }
16299 : static const uint8_t expand_encoding[] = {
16300 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16301 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16302 : 0x81, 0x33
16303 : };
16304 : return complete_seq (expand_encoding, operands);
16305 : }
16306 :
16307 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6931 */
16308 : rtx
16309 : gen_fmai_vmfmsub_v4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16310 : {
16311 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16312 : static const uint8_t expand_encoding[] = {
16313 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
16314 : 0x6b, 0x81, 0x19, 0x6b, 0x01, 0x01, 0x01, 0x02,
16315 : 0x3d, 0x6b, 0x01, 0x03, 0x01, 0x01, 0x27, 0x01,
16316 : 0x01, 0x04, 0x81, 0x33
16317 : };
16318 : return expand_rtx (expand_encoding, operands);
16319 : }
16320 :
16321 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6955 */
16322 : rtx
16323 : gen_fmai_vmfnmsub_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16324 : {
16325 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16326 : static const uint8_t expand_encoding[] = {
16327 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
16328 : 0x6b, 0x3d, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x3d,
16329 : 0x6b, 0x01, 0x03, 0x01, 0x01, 0x27, 0x01
16330 : };
16331 : return expand_rtx (expand_encoding, operands);
16332 : }
16333 :
16334 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7078 */
16335 : rtx
16336 : gen_avx512f_vmfmadd_v2df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16337 : {
16338 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16339 : start_sequence ();
16340 : {
16341 : #define FAIL return (end_sequence (), nullptr)
16342 : #define DONE return end_sequence ()
16343 : #line 7085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16344 : {
16345 : emit_insn (gen_avx512f_vmfmadd_v2df_maskz_1_round (
16346 : operands[0], operands[1], operands[2], operands[3],
16347 : CONST0_RTX (V2DFmode), operands[4], operands[5]));
16348 : DONE;
16349 : }
16350 : #undef DONE
16351 : #undef FAIL
16352 : }
16353 : static const uint8_t expand_encoding[] = {
16354 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16355 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16356 : 0x81, 0x33
16357 : };
16358 : return complete_seq (expand_encoding, operands);
16359 : }
16360 :
16361 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7435 */
16362 : rtx
16363 : gen_avx512vl_fmaddc_v16hf_mask1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16364 : {
16365 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16366 : start_sequence ();
16367 : {
16368 : #define FAIL return (end_sequence (), nullptr)
16369 : #define DONE return end_sequence ()
16370 : #line 7442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16371 : {
16372 : rtx op0, op1, dest;
16373 : if (!(CONST_INT_P (operands[5])
16374 : && (INTVAL (operands[5])
16375 : == NO_ROUND)))
16376 : emit_insn (gen_avx512vl_fmaddc_v16hf_mask_round (
16377 : operands[0], operands[1], operands[2], operands[3],
16378 : operands[4], operands[5]));
16379 : else
16380 : emit_insn (gen_avx512vl_fmaddc_v16hf_mask (operands[0],
16381 : operands[1], operands[2], operands[3], operands[4]));
16382 :
16383 : op0 = lowpart_subreg (V8SFmode,
16384 : force_reg (V16HFmode, operands[0]),
16385 : V16HFmode);
16386 : dest = gen_reg_rtx (V8SFmode);
16387 : if (!MEM_P (operands[1]))
16388 : operands[1] = force_reg (V16HFmode, operands[1]);
16389 : op1 = lowpart_subreg (V8SFmode, operands[1], V16HFmode);
16390 : emit_insn (gen_avx512vl_loadv8sf_mask (dest, op0, op1, operands[4]));
16391 : emit_move_insn (operands[0],
16392 : lowpart_subreg (V16HFmode, dest, V8SFmode));
16393 : DONE;
16394 : }
16395 : #undef DONE
16396 : #undef FAIL
16397 : }
16398 : static const uint8_t expand_encoding[] = {
16399 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16400 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16401 : 0x81, 0x33
16402 : };
16403 : return complete_seq (expand_encoding, operands);
16404 : }
16405 :
16406 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7479 */
16407 : rtx
16408 : gen_avx512fp16_fcmaddc_v8hf_mask1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16409 : {
16410 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16411 : start_sequence ();
16412 : {
16413 : #define FAIL return (end_sequence (), nullptr)
16414 : #define DONE return end_sequence ()
16415 : #line 7486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16416 : {
16417 : rtx op0, op1, dest;
16418 : if (!(CONST_INT_P (operands[5])
16419 : && (INTVAL (operands[5])
16420 : == NO_ROUND)))
16421 : emit_insn (gen_avx512fp16_fcmaddc_v8hf_mask_round (
16422 : operands[0], operands[1], operands[2], operands[3],
16423 : operands[4], operands[5]));
16424 : else
16425 : {
16426 : emit_insn (gen_avx512fp16_fcmaddc_v8hf_mask (operands[0],
16427 : operands[1], operands[2], operands[3], operands[4]));
16428 : }
16429 :
16430 : op0 = lowpart_subreg (V4SFmode,
16431 : force_reg (V8HFmode, operands[0]),
16432 : V8HFmode);
16433 : dest = gen_reg_rtx (V4SFmode);
16434 : if (!MEM_P (operands[1]))
16435 : operands[1] = force_reg (V8HFmode, operands[1]);
16436 : op1 = lowpart_subreg (V4SFmode, operands[1], V8HFmode);
16437 : emit_insn (gen_avx512vl_loadv4sf_mask (dest, op0, op1, operands[4]));
16438 : emit_move_insn (operands[0],
16439 : lowpart_subreg (V8HFmode, dest, V4SFmode));
16440 : DONE;
16441 : }
16442 : #undef DONE
16443 : #undef FAIL
16444 : }
16445 : static const uint8_t expand_encoding[] = {
16446 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16447 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16448 : 0x81, 0x33
16449 : };
16450 : return complete_seq (expand_encoding, operands);
16451 : }
16452 :
16453 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7547 */
16454 : extern rtx_insn *gen_split_1575 (rtx_insn *, rtx *);
16455 : rtx_insn *
16456 : gen_split_1575 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16457 : {
16458 : if (dump_file)
16459 : fprintf (dump_file, "Splitting with gen_split_1575 (sse.md:7547)\n");
16460 : start_sequence ();
16461 : static const uint8_t expand_encoding[] = {
16462 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01,
16463 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a
16464 : };
16465 : return complete_seq (expand_encoding, operands);
16466 : }
16467 :
16468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7581 */
16469 : extern rtx_insn *gen_split_1585 (rtx_insn *, rtx *);
16470 : rtx_insn *
16471 : gen_split_1585 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16472 : {
16473 : if (dump_file)
16474 : fprintf (dump_file, "Splitting with gen_split_1585 (sse.md:7581)\n");
16475 : start_sequence ();
16476 : static const uint8_t expand_encoding[] = {
16477 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x03, 0x01,
16478 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x5c
16479 : };
16480 : return complete_seq (expand_encoding, operands);
16481 : }
16482 :
16483 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7685 */
16484 : rtx
16485 : gen_cmul_conjv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
16486 : {
16487 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
16488 : static const uint8_t expand_encoding[] = {
16489 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01, 0x01,
16490 : 0x01, 0x02, 0x81, 0x5f
16491 : };
16492 : return expand_rtx (expand_encoding, operands);
16493 : }
16494 :
16495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7710 */
16496 : rtx
16497 : gen_avx512fp16_fmaddcsh_v8hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16498 : {
16499 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16500 : start_sequence ();
16501 : {
16502 : #define FAIL return (end_sequence (), nullptr)
16503 : #define DONE return end_sequence ()
16504 : #line 7717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16505 : {
16506 : emit_insn (gen_avx512fp16_fma_fmaddcsh_v8hf_maskz_round (
16507 : operands[0], operands[1], operands[2], operands[3],
16508 : CONST0_RTX (V8HFmode), operands[4], operands[5]));
16509 : DONE;
16510 : }
16511 : #undef DONE
16512 : #undef FAIL
16513 : }
16514 : static const uint8_t expand_encoding[] = {
16515 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16516 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16517 : 0x81, 0x33
16518 : };
16519 : return complete_seq (expand_encoding, operands);
16520 : }
16521 :
16522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7828 */
16523 : rtx
16524 : gen_avx512fp16_fmaddcsh_v8hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16525 : {
16526 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16527 : start_sequence ();
16528 : {
16529 : #define FAIL return (end_sequence (), nullptr)
16530 : #define DONE return end_sequence ()
16531 : #line 7835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16532 : {
16533 : rtx dest, op0, op1;
16534 :
16535 : if (!(CONST_INT_P (operands[5])
16536 : && (INTVAL (operands[5])
16537 : == NO_ROUND)))
16538 : emit_insn (gen_avx512fp16_fmaddcsh_v8hf_mask_round (
16539 : operands[0], operands[1], operands[2], operands[3],
16540 : operands[4], operands[5]));
16541 : else
16542 : emit_insn (gen_avx512fp16_fmaddcsh_v8hf_mask (operands[0],
16543 : operands[1], operands[2], operands[3], operands[4]));
16544 :
16545 : dest = gen_reg_rtx (V4SFmode);
16546 : op0 = lowpart_subreg (V4SFmode,
16547 : force_reg (V8HFmode, operands[0]),
16548 : V8HFmode);
16549 : if (!MEM_P (operands[3]))
16550 : operands[3] = force_reg (V8HFmode, operands[3]);
16551 : op1 = lowpart_subreg (V4SFmode, operands[3], V8HFmode);
16552 : emit_insn (gen_sse_movss_v4sf (dest, op1, op0));
16553 : emit_move_insn (operands[0], lowpart_subreg (V8HFmode, dest, V4SFmode));
16554 : DONE;
16555 : }
16556 : #undef DONE
16557 : #undef FAIL
16558 : }
16559 : static const uint8_t expand_encoding[] = {
16560 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16561 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16562 : 0x81, 0x33
16563 : };
16564 : return complete_seq (expand_encoding, operands);
16565 : }
16566 :
16567 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8017 */
16568 : rtx
16569 : gen_floatv8siv8hf2 (const rtx operand0, const rtx operand1)
16570 : {
16571 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16572 : static const uint8_t expand_encoding[] = {
16573 : 0x1f, 0x01, 0x00, 0x73, 0x6a, 0x01, 0x01
16574 : };
16575 : return expand_rtx (expand_encoding, operands);
16576 : }
16577 :
16578 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8033 */
16579 : rtx
16580 : gen_floatunsv4siv4hf2 (const rtx operand0, const rtx operand1)
16581 : {
16582 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16583 : start_sequence ();
16584 : {
16585 : #define FAIL return (end_sequence (), nullptr)
16586 : #define DONE return end_sequence ()
16587 : #line 8038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16588 : {
16589 : rtx dest = gen_reg_rtx (V8HFmode);
16590 : emit_insn (gen_avx512fp16_floatunsv4siv4hf2 (dest,
16591 : operands[1]));
16592 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, dest, V8HFmode));
16593 : DONE;
16594 : }
16595 : #undef DONE
16596 : #undef FAIL
16597 : }
16598 : static const uint8_t expand_encoding[] = {
16599 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x66, 0x01, 0x01
16600 : };
16601 : return complete_seq (expand_encoding, operands);
16602 : }
16603 :
16604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8109 */
16605 : rtx
16606 : gen_floatv2div2hf2 (const rtx operand0, const rtx operand1)
16607 : {
16608 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16609 : start_sequence ();
16610 : {
16611 : #define FAIL return (end_sequence (), nullptr)
16612 : #define DONE return end_sequence ()
16613 : #line 8114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16614 : {
16615 : rtx dest = gen_reg_rtx (V8HFmode);
16616 : emit_insn (gen_avx512fp16_floatv2div2hf2 (dest,
16617 : operands[1]));
16618 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, dest, V8HFmode));
16619 : DONE;
16620 : }
16621 : #undef DONE
16622 : #undef FAIL
16623 : }
16624 : static const uint8_t expand_encoding[] = {
16625 : 0x01, 0x1f, 0x01, 0x00, 0x73, 0x63, 0x01, 0x01
16626 : };
16627 : return complete_seq (expand_encoding, operands);
16628 : }
16629 :
16630 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8225 */
16631 : rtx
16632 : gen_fix_truncv8hfv8si2 (const rtx operand0, const rtx operand1)
16633 : {
16634 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16635 : static const uint8_t expand_encoding[] = {
16636 : 0x1f, 0x01, 0x00, 0x74, 0x56, 0x01, 0x01
16637 : };
16638 : return expand_rtx (expand_encoding, operands);
16639 : }
16640 :
16641 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8302 */
16642 : rtx
16643 : gen_fix_truncv2hfv2di2 (const rtx operand0, const rtx operand1)
16644 : {
16645 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16646 : start_sequence ();
16647 : {
16648 : #define FAIL return (end_sequence (), nullptr)
16649 : #define DONE return end_sequence ()
16650 : #line 8307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16651 : {
16652 : if (!MEM_P (operands[1]))
16653 : {
16654 : operands[1] = lowpart_subreg (V8HFmode,
16655 : force_reg (V2HFmode, operands[1]),
16656 : V2HFmode);
16657 : emit_insn (gen_avx512fp16_fix_truncv2di2 (operands[0],
16658 : operands[1]));
16659 : DONE;
16660 : }
16661 : }
16662 : #undef DONE
16663 : #undef FAIL
16664 : }
16665 : static const uint8_t expand_encoding[] = {
16666 : 0x01, 0x1f, 0x01, 0x00, 0x74, 0x52, 0x01, 0x01
16667 : };
16668 : return complete_seq (expand_encoding, operands);
16669 : }
16670 :
16671 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8511 */
16672 : rtx
16673 : gen_avx512fp16_truncv4dfv4hf2 (const rtx operand0, const rtx operand1)
16674 : {
16675 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
16676 : start_sequence ();
16677 : {
16678 : #define FAIL return (end_sequence (), nullptr)
16679 : #define DONE return end_sequence ()
16680 : #line 8518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16681 : operands[2] = CONST0_RTX (V4HFmode);
16682 : #undef DONE
16683 : #undef FAIL
16684 : }
16685 : static const uint8_t expand_encoding[] = {
16686 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x72,
16687 : 0x66, 0x01, 0x01, 0x01, 0x02
16688 : };
16689 : return complete_seq (expand_encoding, operands);
16690 : }
16691 :
16692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8780 */
16693 : extern rtx_insn *gen_split_1593 (rtx_insn *, rtx *);
16694 : rtx_insn *
16695 : gen_split_1593 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
16696 : {
16697 : if (dump_file)
16698 : fprintf (dump_file, "Splitting with gen_split_1593 (sse.md:8780)\n");
16699 : start_sequence ();
16700 : #define FAIL return (end_sequence (), nullptr)
16701 : #define DONE return end_sequence ()
16702 : #line 8793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16703 : {
16704 : rtx op1 = lowpart_subreg (V2SFmode, operands[1],
16705 : GET_MODE (operands[1]));
16706 : rtx tmp = lowpart_subreg (V4SFmode, operands[0],
16707 : GET_MODE (operands[0]));
16708 :
16709 : op1 = gen_rtx_VEC_CONCAT (V4SFmode, op1, CONST0_RTX (V2SFmode));
16710 : emit_insn (gen_rtx_SET (tmp, op1));
16711 :
16712 : rtx dest = lowpart_subreg (V4SImode, operands[0],
16713 : GET_MODE (operands[0]));
16714 : emit_insn (gen_sse2_fix_notruncv4sfv4si (dest, tmp));
16715 : DONE;
16716 : }
16717 : #undef DONE
16718 : #undef FAIL
16719 : static const uint8_t expand_encoding[] = {
16720 : 0x01, 0x27, 0x00
16721 : };
16722 : return complete_seq (expand_encoding, operands);
16723 : }
16724 :
16725 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9579 */
16726 : rtx
16727 : gen_floatunsv2div2sf2 (const rtx operand0, const rtx operand1)
16728 : {
16729 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16730 : start_sequence ();
16731 : {
16732 : #define FAIL return (end_sequence (), nullptr)
16733 : #define DONE return end_sequence ()
16734 : #line 9583 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16735 : {
16736 : rtx op0 = gen_reg_rtx (V4SFmode);
16737 :
16738 : emit_insn (gen_avx512dq_floatunsv2div2sf2
16739 : (op0, operands[1]));
16740 :
16741 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
16742 : DONE;
16743 : }
16744 : #undef DONE
16745 : #undef FAIL
16746 : }
16747 : static const uint8_t expand_encoding[] = {
16748 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x67, 0x01, 0x01
16749 : };
16750 : return complete_seq (expand_encoding, operands);
16751 : }
16752 :
16753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9631 */
16754 : rtx
16755 : gen_vec_packu_float_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
16756 : {
16757 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
16758 : start_sequence ();
16759 : {
16760 : #define FAIL return (end_sequence (), nullptr)
16761 : #define DONE return end_sequence ()
16762 : #line 9637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16763 : {
16764 : rtx r1 = gen_reg_rtx (V8HFmode);
16765 : rtx r2 = gen_reg_rtx (V8HFmode);
16766 : rtx (*gen) (rtx, rtx);
16767 :
16768 : if (V8SImode == V4SImode)
16769 : gen = gen_avx512fp16_floatunsv4siv4hf2;
16770 : else
16771 : gen = gen_floatunsv8siv8hf2;
16772 : emit_insn (gen (r1, operands[1]));
16773 : emit_insn (gen (r2, operands[2]));
16774 : if (V8SImode == V4SImode)
16775 : emit_insn (gen_sse_movlhps_v8hf (operands[0], r1, r2));
16776 : else
16777 : emit_insn (gen_avx_vec_concatv16hf (operands[0],
16778 : r1, r2));
16779 : DONE;
16780 : }
16781 : #undef DONE
16782 : #undef FAIL
16783 : }
16784 : static const uint8_t expand_encoding[] = {
16785 : 0x03, 0x01, 0x00, 0x75, 0x6e, 0x01, 0x01, 0x01,
16786 : 0x02
16787 : };
16788 : return complete_seq (expand_encoding, operands);
16789 : }
16790 :
16791 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10160 */
16792 : rtx
16793 : gen_vec_unpack_sfix_trunc_lo_v8sf (const rtx operand0, const rtx operand1)
16794 : {
16795 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16796 : start_sequence ();
16797 : {
16798 : #define FAIL return (end_sequence (), nullptr)
16799 : #define DONE return end_sequence ()
16800 : #line 10165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16801 : {
16802 : rtx tem = operands[1];
16803 : rtx (*gen) (rtx, rtx);
16804 :
16805 : if (V8SFmode != V4SFmode)
16806 : {
16807 : tem = gen_reg_rtx (V4SFmode);
16808 : emit_insn (gen_vec_extract_lo_v8sf (tem,
16809 : operands[1]));
16810 : gen = gen_fix_truncv4sfv4di2;
16811 : }
16812 : else
16813 : gen = gen_avx512dq_fix_truncv2sfv2di2;
16814 :
16815 : emit_insn (gen (operands[0], tem));
16816 : DONE;
16817 : }
16818 : #undef DONE
16819 : #undef FAIL
16820 : }
16821 : static const uint8_t expand_encoding[] = {
16822 : 0x02, 0x01, 0x00, 0x74, 0x57, 0x01, 0x01
16823 : };
16824 : return complete_seq (expand_encoding, operands);
16825 : }
16826 :
16827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10210 */
16828 : rtx
16829 : gen_vec_unpack_sfix_trunc_lo_v32hf (const rtx operand0, const rtx operand1)
16830 : {
16831 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16832 : start_sequence ();
16833 : {
16834 : #define FAIL return (end_sequence (), nullptr)
16835 : #define DONE return end_sequence ()
16836 : #line 10215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16837 : {
16838 : rtx tem = operands[1];
16839 : rtx (*gen) (rtx, rtx);
16840 : if (V32HFmode != V8HFmode)
16841 : {
16842 : tem = gen_reg_rtx (V16HFmode);
16843 : emit_insn (gen_vec_extract_lo_v32hf (tem,
16844 : operands[1]));
16845 : gen = gen_fix_truncv16hfv16si2;
16846 : }
16847 : else
16848 : gen = gen_avx512fp16_fix_truncv16si2;
16849 :
16850 : emit_insn (gen (operands[0], tem));
16851 : DONE;
16852 : }
16853 : #undef DONE
16854 : #undef FAIL
16855 : }
16856 : static const uint8_t expand_encoding[] = {
16857 : 0x02, 0x01, 0x00, 0x74, 0x5b, 0x01, 0x01
16858 : };
16859 : return complete_seq (expand_encoding, operands);
16860 : }
16861 :
16862 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10232 */
16863 : rtx
16864 : gen_vec_unpack_ufix_trunc_hi_v16hf (const rtx operand0, const rtx operand1)
16865 : {
16866 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16867 : start_sequence ();
16868 : {
16869 : #define FAIL return (end_sequence (), nullptr)
16870 : #define DONE return end_sequence ()
16871 : #line 10237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16872 : {
16873 : rtx tem = operands[1];
16874 : rtx (*gen) (rtx, rtx);
16875 : if (V16HFmode != V8HFmode)
16876 : {
16877 : tem = gen_reg_rtx (V8HFmode);
16878 : emit_insn (gen_vec_extract_hi_v16hf (tem,
16879 : operands[1]));
16880 : gen = gen_fixuns_truncv8hfv8si2;
16881 : }
16882 : else
16883 : {
16884 : tem = gen_reg_rtx (V8HFmode);
16885 : rtvec tmp = rtvec_alloc (8);
16886 : for (int i = 0; i != 8; i++)
16887 : RTVEC_ELT (tmp, i) = GEN_INT ((i + 4) % 8);
16888 :
16889 : rtx selector = gen_rtx_PARALLEL (VOIDmode, tmp);
16890 : emit_move_insn (tem,
16891 : gen_rtx_VEC_SELECT (V8HFmode, operands[1], selector));
16892 : gen = gen_avx512fp16_fixuns_truncv8si2;
16893 : }
16894 :
16895 : emit_insn (gen (operands[0], tem));
16896 : DONE;
16897 : }
16898 : #undef DONE
16899 : #undef FAIL
16900 : }
16901 : static const uint8_t expand_encoding[] = {
16902 : 0x02, 0x01, 0x00, 0x76, 0x56, 0x01, 0x01
16903 : };
16904 : return complete_seq (expand_encoding, operands);
16905 : }
16906 :
16907 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10640 */
16908 : rtx
16909 : gen_avx512vl_cvtmask2wv8hi (const rtx operand0, const rtx operand1)
16910 : {
16911 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1 };
16912 : start_sequence ();
16913 : {
16914 : #define FAIL return (end_sequence (), nullptr)
16915 : #define DONE return end_sequence ()
16916 : #line 10647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16917 : {
16918 : operands[2] = CONSTM1_RTX (V8HImode);
16919 : operands[3] = CONST0_RTX (V8HImode);
16920 : }
16921 : #undef DONE
16922 : #undef FAIL
16923 : }
16924 : static const uint8_t expand_encoding[] = {
16925 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x01,
16926 : 0x02, 0x01, 0x03, 0x01, 0x01
16927 : };
16928 : return complete_seq (expand_encoding, operands);
16929 : }
16930 :
16931 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10675 */
16932 : extern rtx_insn *gen_split_1599 (rtx_insn *, rtx *);
16933 : rtx_insn *
16934 : gen_split_1599 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16935 : {
16936 : if (dump_file)
16937 : fprintf (dump_file, "Splitting with gen_split_1599 (sse.md:10675)\n");
16938 : start_sequence ();
16939 : #define FAIL return (end_sequence (), nullptr)
16940 : #define DONE return end_sequence ()
16941 : #line 10695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16942 : operands[4] = CONST0_RTX (V8DImode);
16943 : #undef DONE
16944 : #undef FAIL
16945 : static const uint8_t expand_encoding[] = {
16946 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
16947 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x01,
16948 : 0x02, 0x01, 0x03, 0x01, 0x01, 0x1a, 0x00, 0x01,
16949 : 0x01, 0x00, 0x27
16950 : };
16951 : return complete_seq (expand_encoding, operands);
16952 : }
16953 :
16954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10701 */
16955 : extern rtx_insn *gen_split_1610 (rtx_insn *, rtx *);
16956 : rtx_insn *
16957 : gen_split_1610 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16958 : {
16959 : if (dump_file)
16960 : fprintf (dump_file, "Splitting with gen_split_1610 (sse.md:10701)\n");
16961 : start_sequence ();
16962 : #define FAIL return (end_sequence (), nullptr)
16963 : #define DONE return end_sequence ()
16964 : #line 10717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16965 : operands[4] = gen_reg_rtx (QImode);
16966 : #undef DONE
16967 : #undef FAIL
16968 : static const uint8_t expand_encoding[] = {
16969 : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x0f, 0x01, 0x01,
16970 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x01, 0x03,
16971 : 0x01, 0x02, 0x01, 0x04
16972 : };
16973 : return complete_seq (expand_encoding, operands);
16974 : }
16975 :
16976 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10852 */
16977 : rtx
16978 : gen_vec_unpacks_float_hi_v32hi (const rtx operand0, const rtx operand1)
16979 : {
16980 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16981 : start_sequence ();
16982 : {
16983 : #define FAIL return (end_sequence (), nullptr)
16984 : #define DONE return end_sequence ()
16985 : #line 10856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16986 : {
16987 : rtx tmp = gen_reg_rtx (V16SImode);
16988 :
16989 : emit_insn (gen_vec_unpacks_hi_v32hi (tmp, operands[1]));
16990 : emit_insn (gen_rtx_SET (operands[0],
16991 : gen_rtx_FLOAT (V16SFmode, tmp)));
16992 : DONE;
16993 : }
16994 : #undef DONE
16995 : #undef FAIL
16996 : }
16997 : static const uint8_t expand_encoding[] = {
16998 : 0x02, 0x01, 0x00, 0x01, 0x01
16999 : };
17000 : return complete_seq (expand_encoding, operands);
17001 : }
17002 :
17003 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10891 */
17004 : rtx
17005 : gen_vec_unpacku_float_lo_v32hi (const rtx operand0, const rtx operand1)
17006 : {
17007 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17008 : start_sequence ();
17009 : {
17010 : #define FAIL return (end_sequence (), nullptr)
17011 : #define DONE return end_sequence ()
17012 : #line 10895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17013 : {
17014 : rtx tmp = gen_reg_rtx (V16SImode);
17015 :
17016 : emit_insn (gen_vec_unpacku_lo_v32hi (tmp, operands[1]));
17017 : emit_insn (gen_rtx_SET (operands[0],
17018 : gen_rtx_FLOAT (V16SFmode, tmp)));
17019 : DONE;
17020 : }
17021 : #undef DONE
17022 : #undef FAIL
17023 : }
17024 : static const uint8_t expand_encoding[] = {
17025 : 0x02, 0x01, 0x00, 0x01, 0x01
17026 : };
17027 : return complete_seq (expand_encoding, operands);
17028 : }
17029 :
17030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11037 */
17031 : rtx
17032 : gen_vec_unpacku_float_hi_v8si (const rtx operand0, const rtx operand1)
17033 : {
17034 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17035 : start_sequence ();
17036 : {
17037 : #define FAIL return (end_sequence (), nullptr)
17038 : #define DONE return end_sequence ()
17039 : #line 11041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17040 : {
17041 : REAL_VALUE_TYPE TWO32r;
17042 : rtx x, tmp[6];
17043 : int i;
17044 :
17045 : real_ldexp (&TWO32r, &dconst1, 32);
17046 : x = const_double_from_real_value (TWO32r, DFmode);
17047 :
17048 : tmp[0] = force_reg (V4DFmode, CONST0_RTX (V4DFmode));
17049 : tmp[1] = force_reg (V4DFmode, ix86_build_const_vector (V4DFmode, 1, x));
17050 : tmp[5] = gen_reg_rtx (V4SImode);
17051 :
17052 : for (i = 2; i < 5; i++)
17053 : tmp[i] = gen_reg_rtx (V4DFmode);
17054 : emit_insn (gen_vec_extract_hi_v8si (tmp[5], operands[1]));
17055 : emit_insn (gen_floatv4siv4df2 (tmp[2], tmp[5]));
17056 : emit_insn (gen_rtx_SET (tmp[3], gen_rtx_LT (V4DFmode, tmp[2], tmp[0])));
17057 : emit_insn (gen_andv4df3 (tmp[4], tmp[3], tmp[1]));
17058 : emit_insn (gen_addv4df3 (operands[0], tmp[2], tmp[4]));
17059 : DONE;
17060 : }
17061 : #undef DONE
17062 : #undef FAIL
17063 : }
17064 : static const uint8_t expand_encoding[] = {
17065 : 0x02, 0x01, 0x00, 0x01, 0x01
17066 : };
17067 : return complete_seq (expand_encoding, operands);
17068 : }
17069 :
17070 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11274 */
17071 : rtx
17072 : gen_vec_pack_ufix_trunc_v8df (const rtx operand0, const rtx operand1, const rtx operand2)
17073 : {
17074 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17075 : start_sequence ();
17076 : {
17077 : #define FAIL return (end_sequence (), nullptr)
17078 : #define DONE return end_sequence ()
17079 : #line 11279 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17080 : {
17081 : if (V8DFmode == V8DFmode)
17082 : {
17083 : rtx r1, r2;
17084 :
17085 : r1 = gen_reg_rtx (V8SImode);
17086 : r2 = gen_reg_rtx (V8SImode);
17087 :
17088 : emit_insn (gen_fixuns_truncv8dfv8si2 (r1, operands[1]));
17089 : emit_insn (gen_fixuns_truncv8dfv8si2 (r2, operands[2]));
17090 : emit_insn (gen_avx_vec_concatv16si (operands[0], r1, r2));
17091 : }
17092 : else
17093 : {
17094 : rtx tmp[7];
17095 : tmp[0] = ix86_expand_adjust_ufix_to_sfix_si (operands[1], &tmp[2]);
17096 : tmp[1] = ix86_expand_adjust_ufix_to_sfix_si (operands[2], &tmp[3]);
17097 : tmp[4] = gen_reg_rtx (V16SImode);
17098 : emit_insn (gen_vec_pack_sfix_trunc_v8df (tmp[4], tmp[0], tmp[1]));
17099 : if (V16SImode == V4SImode || TARGET_AVX2)
17100 : {
17101 : tmp[5] = gen_reg_rtx (V16SImode);
17102 : ix86_expand_vec_extract_even_odd (tmp[5], tmp[2], tmp[3], 0);
17103 : }
17104 : else
17105 : {
17106 : tmp[5] = gen_reg_rtx (V8SFmode);
17107 : ix86_expand_vec_extract_even_odd (tmp[5],
17108 : gen_lowpart (V8SFmode, tmp[2]),
17109 : gen_lowpart (V8SFmode, tmp[3]), 0);
17110 : tmp[5] = gen_lowpart (V8SImode, tmp[5]);
17111 : }
17112 : tmp[6] = expand_simple_binop (V16SImode, XOR, tmp[4], tmp[5],
17113 : operands[0], 0, OPTAB_DIRECT);
17114 : if (tmp[6] != operands[0])
17115 : emit_move_insn (operands[0], tmp[6]);
17116 : }
17117 :
17118 : DONE;
17119 : }
17120 : #undef DONE
17121 : #undef FAIL
17122 : }
17123 : static const uint8_t expand_encoding[] = {
17124 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17125 : };
17126 : return complete_seq (expand_encoding, operands);
17127 : }
17128 :
17129 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12013 */
17130 : rtx
17131 : gen_sse_loadlps_exp (const rtx operand0, const rtx operand1, const rtx operand2)
17132 : {
17133 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17134 : start_sequence ();
17135 : {
17136 : #define FAIL return (end_sequence (), nullptr)
17137 : #define DONE return end_sequence ()
17138 : #line 12021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17139 : {
17140 : rtx dst = ix86_fixup_binary_operands (UNKNOWN, V4SFmode, operands);
17141 :
17142 : emit_insn (gen_sse_loadlps (dst, operands[1], operands[2]));
17143 :
17144 : /* Fix up the destination if needed. */
17145 : if (dst != operands[0])
17146 : emit_move_insn (operands[0], dst);
17147 :
17148 : DONE;
17149 : }
17150 : #undef DONE
17151 : #undef FAIL
17152 : }
17153 : static const uint8_t expand_encoding[] = {
17154 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6b, 0x01,
17155 : 0x02, 0x81, 0x0a, 0x67, 0x01, 0x01, 0x17, 0x00,
17156 : 0x02, 0x27, 0x02, 0x27, 0x03
17157 : };
17158 : return complete_seq (expand_encoding, operands);
17159 : }
17160 :
17161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12467 */
17162 : extern rtx_insn *gen_split_1623 (rtx_insn *, rtx *);
17163 : rtx_insn *
17164 : gen_split_1623 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17165 : {
17166 : if (dump_file)
17167 : fprintf (dump_file, "Splitting with gen_split_1623 (sse.md:12467)\n");
17168 : start_sequence ();
17169 : #define FAIL return (end_sequence (), nullptr)
17170 : #define DONE return end_sequence ()
17171 : #line 12477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17172 : {
17173 : rtx dest = gen_reg_rtx (V8HImode);
17174 : emit_insn (gen_vec_setv8hi_0 (dest, CONST0_RTX (V8HImode), operands[1]));
17175 : emit_move_insn (operands[0],
17176 : lowpart_subreg (V2DImode, dest, V8HImode));
17177 : DONE;
17178 : }
17179 : #undef DONE
17180 : #undef FAIL
17181 : static const uint8_t expand_encoding[] = {
17182 : 0x01, 0x27, 0x00
17183 : };
17184 : return complete_seq (expand_encoding, operands);
17185 : }
17186 :
17187 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12666 */
17188 : rtx
17189 : gen_vec_setv8hf (const rtx operand0, const rtx operand1, const rtx operand2)
17190 : {
17191 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17192 : start_sequence ();
17193 : {
17194 : #define FAIL _Pragma ("GCC error \"vec_setv8hf cannot FAIL\"") (void)0
17195 : #define DONE return end_sequence ()
17196 : #line 12671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17197 : {
17198 : if (CONST_INT_P (operands[2]))
17199 : ix86_expand_vector_set (false, operands[0], operands[1],
17200 : INTVAL (operands[2]));
17201 : else
17202 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17203 : DONE;
17204 : }
17205 : #undef DONE
17206 : #undef FAIL
17207 : }
17208 : static const uint8_t expand_encoding[] = {
17209 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17210 : };
17211 : return complete_seq (expand_encoding, operands);
17212 : }
17213 :
17214 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12680 */
17215 : rtx
17216 : gen_vec_setv8si (const rtx operand0, const rtx operand1, const rtx operand2)
17217 : {
17218 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17219 : start_sequence ();
17220 : {
17221 : #define FAIL _Pragma ("GCC error \"vec_setv8si cannot FAIL\"") (void)0
17222 : #define DONE return end_sequence ()
17223 : #line 12685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17224 : {
17225 : if (CONST_INT_P (operands[2]))
17226 : ix86_expand_vector_set (false, operands[0], operands[1],
17227 : INTVAL (operands[2]));
17228 : else
17229 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17230 : DONE;
17231 : }
17232 : #undef DONE
17233 : #undef FAIL
17234 : }
17235 : static const uint8_t expand_encoding[] = {
17236 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17237 : };
17238 : return complete_seq (expand_encoding, operands);
17239 : }
17240 :
17241 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12680 */
17242 : rtx
17243 : gen_vec_setv16sf (const rtx operand0, const rtx operand1, const rtx operand2)
17244 : {
17245 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17246 : start_sequence ();
17247 : {
17248 : #define FAIL _Pragma ("GCC error \"vec_setv16sf cannot FAIL\"") (void)0
17249 : #define DONE return end_sequence ()
17250 : #line 12685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17251 : {
17252 : if (CONST_INT_P (operands[2]))
17253 : ix86_expand_vector_set (false, operands[0], operands[1],
17254 : INTVAL (operands[2]));
17255 : else
17256 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17257 : DONE;
17258 : }
17259 : #undef DONE
17260 : #undef FAIL
17261 : }
17262 : static const uint8_t expand_encoding[] = {
17263 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17264 : };
17265 : return complete_seq (expand_encoding, operands);
17266 : }
17267 :
17268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12910 */
17269 : extern rtx_insn *gen_split_1635 (rtx_insn *, rtx *);
17270 : rtx_insn *
17271 : gen_split_1635 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17272 : {
17273 : if (dump_file)
17274 : fprintf (dump_file, "Splitting with gen_split_1635 (sse.md:12910)\n");
17275 : start_sequence ();
17276 : #define FAIL return (end_sequence (), nullptr)
17277 : #define DONE return end_sequence ()
17278 : #line 12922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17279 : {
17280 : if (!TARGET_AVX512VL
17281 : && REG_P (operands[0])
17282 : && EXT_REX_SSE_REG_P (operands[1]))
17283 : operands[0]
17284 : = lowpart_subreg (V16SFmode, operands[0], V4SFmode);
17285 : else
17286 : operands[1] = gen_lowpart (V4SFmode, operands[1]);
17287 : }
17288 : #undef DONE
17289 : #undef FAIL
17290 : static const uint8_t expand_encoding[] = {
17291 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17292 : };
17293 : return complete_seq (expand_encoding, operands);
17294 : }
17295 :
17296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12973 */
17297 : extern rtx_insn *gen_split_1637 (rtx_insn *, rtx *);
17298 : rtx_insn *
17299 : gen_split_1637 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17300 : {
17301 : if (dump_file)
17302 : fprintf (dump_file, "Splitting with gen_split_1637 (sse.md:12973)\n");
17303 : start_sequence ();
17304 : #define FAIL return (end_sequence (), nullptr)
17305 : #define DONE return end_sequence ()
17306 : #line 12984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17307 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
17308 : #undef DONE
17309 : #undef FAIL
17310 : static const uint8_t expand_encoding[] = {
17311 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17312 : };
17313 : return complete_seq (expand_encoding, operands);
17314 : }
17315 :
17316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13133 */
17317 : rtx
17318 : gen_avx_vextractf128v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
17319 : {
17320 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17321 : start_sequence ();
17322 : {
17323 : #define FAIL return (end_sequence (), nullptr)
17324 : #define DONE return end_sequence ()
17325 : #line 13138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17326 : {
17327 : rtx (*insn)(rtx, rtx);
17328 :
17329 : switch (INTVAL (operands[2]))
17330 : {
17331 : case 0:
17332 : insn = gen_vec_extract_lo_v16hi;
17333 : break;
17334 : case 1:
17335 : insn = gen_vec_extract_hi_v16hi;
17336 : break;
17337 : default:
17338 : gcc_unreachable ();
17339 : }
17340 :
17341 : emit_insn (insn (operands[0], operands[1]));
17342 : DONE;
17343 : }
17344 : #undef DONE
17345 : #undef FAIL
17346 : }
17347 : static const uint8_t expand_encoding[] = {
17348 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17349 : };
17350 : return complete_seq (expand_encoding, operands);
17351 : }
17352 :
17353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13133 */
17354 : rtx
17355 : gen_avx_vextractf128v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
17356 : {
17357 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17358 : start_sequence ();
17359 : {
17360 : #define FAIL return (end_sequence (), nullptr)
17361 : #define DONE return end_sequence ()
17362 : #line 13138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17363 : {
17364 : rtx (*insn)(rtx, rtx);
17365 :
17366 : switch (INTVAL (operands[2]))
17367 : {
17368 : case 0:
17369 : insn = gen_vec_extract_lo_v16bf;
17370 : break;
17371 : case 1:
17372 : insn = gen_vec_extract_hi_v16bf;
17373 : break;
17374 : default:
17375 : gcc_unreachable ();
17376 : }
17377 :
17378 : emit_insn (insn (operands[0], operands[1]));
17379 : DONE;
17380 : }
17381 : #undef DONE
17382 : #undef FAIL
17383 : }
17384 : static const uint8_t expand_encoding[] = {
17385 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17386 : };
17387 : return complete_seq (expand_encoding, operands);
17388 : }
17389 :
17390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13446 */
17391 : extern rtx_insn *gen_split_1649 (rtx_insn *, rtx *);
17392 : rtx_insn *
17393 : gen_split_1649 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17394 : {
17395 : if (dump_file)
17396 : fprintf (dump_file, "Splitting with gen_split_1649 (sse.md:13446)\n");
17397 : start_sequence ();
17398 : #define FAIL return (end_sequence (), nullptr)
17399 : #define DONE return end_sequence ()
17400 : #line 13458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17401 : operands[1] = gen_lowpart (V8HFmode, operands[1]);
17402 : #undef DONE
17403 : #undef FAIL
17404 : static const uint8_t expand_encoding[] = {
17405 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17406 : };
17407 : return complete_seq (expand_encoding, operands);
17408 : }
17409 :
17410 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13600 */
17411 : extern rtx_insn *gen_split_1658 (rtx_insn *, rtx *);
17412 : rtx_insn *
17413 : gen_split_1658 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17414 : {
17415 : if (dump_file)
17416 : fprintf (dump_file, "Splitting with gen_split_1658 (sse.md:13600)\n");
17417 : start_sequence ();
17418 : #define FAIL return (end_sequence (), nullptr)
17419 : #define DONE return end_sequence ()
17420 : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17421 : operands[1] = gen_lowpart (BFmode, 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:13658 */
17431 : rtx
17432 : gen_vec_extractv8didi (const rtx operand0, const rtx operand1, const rtx operand2)
17433 : {
17434 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17435 : start_sequence ();
17436 : {
17437 : #define FAIL _Pragma ("GCC error \"vec_extractv8didi cannot FAIL\"") (void)0
17438 : #define DONE return end_sequence ()
17439 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17440 : {
17441 : ix86_expand_vector_extract (false, operands[0], operands[1],
17442 : INTVAL (operands[2]));
17443 : DONE;
17444 : }
17445 : #undef DONE
17446 : #undef FAIL
17447 : }
17448 : static const uint8_t expand_encoding[] = {
17449 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17450 : };
17451 : return complete_seq (expand_encoding, operands);
17452 : }
17453 :
17454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17455 : rtx
17456 : gen_vec_extractv8sfsf (const rtx operand0, const rtx operand1, const rtx operand2)
17457 : {
17458 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17459 : start_sequence ();
17460 : {
17461 : #define FAIL _Pragma ("GCC error \"vec_extractv8sfsf cannot FAIL\"") (void)0
17462 : #define DONE return end_sequence ()
17463 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17464 : {
17465 : ix86_expand_vector_extract (false, operands[0], operands[1],
17466 : INTVAL (operands[2]));
17467 : DONE;
17468 : }
17469 : #undef DONE
17470 : #undef FAIL
17471 : }
17472 : static const uint8_t expand_encoding[] = {
17473 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17474 : };
17475 : return complete_seq (expand_encoding, operands);
17476 : }
17477 :
17478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13669 */
17479 : rtx
17480 : gen_vec_extractv16bfv8bf (const rtx operand0, const rtx operand1, const rtx operand2)
17481 : {
17482 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17483 : start_sequence ();
17484 : {
17485 : #define FAIL _Pragma ("GCC error \"vec_extractv16bfv8bf cannot FAIL\"") (void)0
17486 : #define DONE return end_sequence ()
17487 : #line 13674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17488 : {
17489 : if (INTVAL (operands[2]))
17490 : emit_insn (gen_vec_extract_hi_v16bf (operands[0], operands[1]));
17491 : else
17492 : emit_insn (gen_vec_extract_lo_v16bf (operands[0], operands[1]));
17493 : DONE;
17494 : }
17495 : #undef DONE
17496 : #undef FAIL
17497 : }
17498 : static const uint8_t expand_encoding[] = {
17499 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17500 : };
17501 : return complete_seq (expand_encoding, operands);
17502 : }
17503 :
17504 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13669 */
17505 : rtx
17506 : gen_vec_extractv8div4di (const rtx operand0, const rtx operand1, const rtx operand2)
17507 : {
17508 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17509 : start_sequence ();
17510 : {
17511 : #define FAIL _Pragma ("GCC error \"vec_extractv8div4di cannot FAIL\"") (void)0
17512 : #define DONE return end_sequence ()
17513 : #line 13674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17514 : {
17515 : if (INTVAL (operands[2]))
17516 : emit_insn (gen_vec_extract_hi_v8di (operands[0], operands[1]));
17517 : else
17518 : emit_insn (gen_vec_extract_lo_v8di (operands[0], operands[1]));
17519 : DONE;
17520 : }
17521 : #undef DONE
17522 : #undef FAIL
17523 : }
17524 : static const uint8_t expand_encoding[] = {
17525 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17526 : };
17527 : return complete_seq (expand_encoding, operands);
17528 : }
17529 :
17530 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14002 */
17531 : rtx
17532 : gen_avx512vl_vternlogv8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
17533 : {
17534 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
17535 : start_sequence ();
17536 : {
17537 : #define FAIL return (end_sequence (), nullptr)
17538 : #define DONE return end_sequence ()
17539 : #line 14010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17540 : {
17541 : emit_insn (gen_avx512vl_vternlogv8si_maskz_1 (
17542 : operands[0], operands[1], operands[2], operands[3],
17543 : operands[4], CONST0_RTX (V8SImode), operands[5]));
17544 : DONE;
17545 : }
17546 : #undef DONE
17547 : #undef FAIL
17548 : }
17549 : static const uint8_t expand_encoding[] = {
17550 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17551 : 0x03, 0x01, 0x04, 0x01, 0x05
17552 : };
17553 : return complete_seq (expand_encoding, operands);
17554 : }
17555 :
17556 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17557 : extern rtx_insn *gen_split_1666 (rtx_insn *, rtx *);
17558 : rtx_insn *
17559 : gen_split_1666 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17560 : {
17561 : if (dump_file)
17562 : fprintf (dump_file, "Splitting with gen_split_1666 (sse.md:14065)\n");
17563 : start_sequence ();
17564 : static const uint8_t expand_encoding[] = {
17565 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17566 : 0x00, 0x1a, 0x50, 0x04, 0x01, 0x00, 0x01, 0x00,
17567 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17568 : };
17569 : return complete_seq (expand_encoding, operands);
17570 : }
17571 :
17572 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17573 : extern rtx_insn *gen_split_1676 (rtx_insn *, rtx *);
17574 : rtx_insn *
17575 : gen_split_1676 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17576 : {
17577 : if (dump_file)
17578 : fprintf (dump_file, "Splitting with gen_split_1676 (sse.md:14065)\n");
17579 : start_sequence ();
17580 : static const uint8_t expand_encoding[] = {
17581 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17582 : 0x00, 0x1a, 0x72, 0x04, 0x01, 0x00, 0x01, 0x00,
17583 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17584 : };
17585 : return complete_seq (expand_encoding, operands);
17586 : }
17587 :
17588 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17589 : extern rtx_insn *gen_split_1686 (rtx_insn *, rtx *);
17590 : rtx_insn *
17591 : gen_split_1686 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17592 : {
17593 : if (dump_file)
17594 : fprintf (dump_file, "Splitting with gen_split_1686 (sse.md:14086)\n");
17595 : start_sequence ();
17596 : #define FAIL return (end_sequence (), nullptr)
17597 : #define DONE return end_sequence ()
17598 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17599 : substitute_vpternlog_operands (operands);
17600 : #undef DONE
17601 : #undef FAIL
17602 : static const uint8_t expand_encoding[] = {
17603 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
17604 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17605 : 0x25
17606 : };
17607 : return complete_seq (expand_encoding, operands);
17608 : }
17609 :
17610 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17611 : extern rtx_insn *gen_split_1696 (rtx_insn *, rtx *);
17612 : rtx_insn *
17613 : gen_split_1696 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17614 : {
17615 : if (dump_file)
17616 : fprintf (dump_file, "Splitting with gen_split_1696 (sse.md:14086)\n");
17617 : start_sequence ();
17618 : #define FAIL return (end_sequence (), nullptr)
17619 : #define DONE return end_sequence ()
17620 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17621 : substitute_vpternlog_operands (operands);
17622 : #undef DONE
17623 : #undef FAIL
17624 : static const uint8_t expand_encoding[] = {
17625 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
17626 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17627 : 0x25
17628 : };
17629 : return complete_seq (expand_encoding, operands);
17630 : }
17631 :
17632 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17633 : extern rtx_insn *gen_split_1706 (rtx_insn *, rtx *);
17634 : rtx_insn *
17635 : gen_split_1706 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17636 : {
17637 : if (dump_file)
17638 : fprintf (dump_file, "Splitting with gen_split_1706 (sse.md:14086)\n");
17639 : start_sequence ();
17640 : #define FAIL return (end_sequence (), nullptr)
17641 : #define DONE return end_sequence ()
17642 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17643 : substitute_vpternlog_operands (operands);
17644 : #undef DONE
17645 : #undef FAIL
17646 : static const uint8_t expand_encoding[] = {
17647 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
17648 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17649 : 0x25
17650 : };
17651 : return complete_seq (expand_encoding, operands);
17652 : }
17653 :
17654 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17655 : extern rtx_insn *gen_split_1716 (rtx_insn *, rtx *);
17656 : rtx_insn *
17657 : gen_split_1716 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17658 : {
17659 : if (dump_file)
17660 : fprintf (dump_file, "Splitting with gen_split_1716 (sse.md:14118)\n");
17661 : start_sequence ();
17662 : #define FAIL return (end_sequence (), nullptr)
17663 : #define DONE return end_sequence ()
17664 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17665 : {
17666 : rtx args[3];
17667 : args[0] = NULL_RTX;
17668 : args[1] = NULL_RTX;
17669 : args[2] = NULL_RTX;
17670 : int idx = ix86_ternlog_idx (operands[1], args);
17671 : ix86_expand_ternlog (V8SImode, args[0], args[1], args[2], idx,
17672 : operands[0]);
17673 : DONE;
17674 : }
17675 : #undef DONE
17676 : #undef FAIL
17677 : static const uint8_t expand_encoding[] = {
17678 : 0x01, 0x27, 0x00
17679 : };
17680 : return complete_seq (expand_encoding, operands);
17681 : }
17682 :
17683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17684 : extern rtx_insn *gen_split_1726 (rtx_insn *, rtx *);
17685 : rtx_insn *
17686 : gen_split_1726 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17687 : {
17688 : if (dump_file)
17689 : fprintf (dump_file, "Splitting with gen_split_1726 (sse.md:14118)\n");
17690 : start_sequence ();
17691 : #define FAIL return (end_sequence (), nullptr)
17692 : #define DONE return end_sequence ()
17693 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17694 : {
17695 : rtx args[3];
17696 : args[0] = NULL_RTX;
17697 : args[1] = NULL_RTX;
17698 : args[2] = NULL_RTX;
17699 : int idx = ix86_ternlog_idx (operands[1], args);
17700 : ix86_expand_ternlog (V8BFmode, args[0], args[1], args[2], idx,
17701 : operands[0]);
17702 : DONE;
17703 : }
17704 : #undef DONE
17705 : #undef FAIL
17706 : static const uint8_t expand_encoding[] = {
17707 : 0x01, 0x27, 0x00
17708 : };
17709 : return complete_seq (expand_encoding, operands);
17710 : }
17711 :
17712 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17713 : extern rtx_insn *gen_split_1736 (rtx_insn *, rtx *);
17714 : rtx_insn *
17715 : gen_split_1736 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17716 : {
17717 : if (dump_file)
17718 : fprintf (dump_file, "Splitting with gen_split_1736 (sse.md:14142)\n");
17719 : start_sequence ();
17720 : #define FAIL return (end_sequence (), nullptr)
17721 : #define DONE return end_sequence ()
17722 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17723 : {
17724 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17725 : int reg6 = 0xF0;
17726 : int reg2 = 0xCC;
17727 : int reg1 = 0xAA;
17728 : int reg3 = 0;
17729 : int reg4 = 0;
17730 : int reg_mask, tmp1, tmp2;
17731 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17732 : STRIP_UNARY (operands[4])))
17733 : {
17734 : reg4 = reg1;
17735 : reg3 = reg6;
17736 : operands[6] = operands[3];
17737 : }
17738 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17739 : STRIP_UNARY (operands[4])))
17740 : {
17741 : reg4 = reg2;
17742 : reg3 = reg6;
17743 : operands[6] = operands[3];
17744 : }
17745 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17746 : STRIP_UNARY (operands[3])))
17747 : {
17748 : reg4 = reg6;
17749 : reg3 = reg1;
17750 : operands[6] = operands[4];
17751 : }
17752 : else
17753 : {
17754 : reg4 = reg6;
17755 : reg3 = reg2;
17756 : operands[6] = operands[4];
17757 : }
17758 :
17759 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17760 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17761 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17762 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17763 :
17764 : tmp1 = reg1 & reg2;
17765 : tmp2 = reg3 | reg4;
17766 : reg_mask = tmp1 & tmp2;
17767 : reg_mask &= 0xFF;
17768 :
17769 : operands[1] = STRIP_UNARY (operands[1]);
17770 : operands[2] = STRIP_UNARY (operands[2]);
17771 : operands[6] = STRIP_UNARY (operands[6]);
17772 : if (!register_operand (operands[2], V64QImode))
17773 : operands[2] = force_reg (V64QImode, operands[2]);
17774 : if (!register_operand (operands[6], V64QImode))
17775 : operands[6] = force_reg (V64QImode, operands[6]);
17776 : operands[5] = GEN_INT (reg_mask);
17777 : }
17778 : #undef DONE
17779 : #undef FAIL
17780 : static const uint8_t expand_encoding[] = {
17781 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17782 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17783 : 0x25
17784 : };
17785 : return complete_seq (expand_encoding, operands);
17786 : }
17787 :
17788 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17789 : extern rtx_insn *gen_split_1746 (rtx_insn *, rtx *);
17790 : rtx_insn *
17791 : gen_split_1746 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17792 : {
17793 : if (dump_file)
17794 : fprintf (dump_file, "Splitting with gen_split_1746 (sse.md:14142)\n");
17795 : start_sequence ();
17796 : #define FAIL return (end_sequence (), nullptr)
17797 : #define DONE return end_sequence ()
17798 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17799 : {
17800 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17801 : int reg6 = 0xF0;
17802 : int reg2 = 0xCC;
17803 : int reg1 = 0xAA;
17804 : int reg3 = 0;
17805 : int reg4 = 0;
17806 : int reg_mask, tmp1, tmp2;
17807 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17808 : STRIP_UNARY (operands[4])))
17809 : {
17810 : reg4 = reg1;
17811 : reg3 = reg6;
17812 : operands[6] = operands[3];
17813 : }
17814 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17815 : STRIP_UNARY (operands[4])))
17816 : {
17817 : reg4 = reg2;
17818 : reg3 = reg6;
17819 : operands[6] = operands[3];
17820 : }
17821 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17822 : STRIP_UNARY (operands[3])))
17823 : {
17824 : reg4 = reg6;
17825 : reg3 = reg1;
17826 : operands[6] = operands[4];
17827 : }
17828 : else
17829 : {
17830 : reg4 = reg6;
17831 : reg3 = reg2;
17832 : operands[6] = operands[4];
17833 : }
17834 :
17835 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17836 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17837 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17838 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17839 :
17840 : tmp1 = reg1 | reg2;
17841 : tmp2 = reg3 | reg4;
17842 : reg_mask = tmp1 | tmp2;
17843 : reg_mask &= 0xFF;
17844 :
17845 : operands[1] = STRIP_UNARY (operands[1]);
17846 : operands[2] = STRIP_UNARY (operands[2]);
17847 : operands[6] = STRIP_UNARY (operands[6]);
17848 : if (!register_operand (operands[2], V64QImode))
17849 : operands[2] = force_reg (V64QImode, operands[2]);
17850 : if (!register_operand (operands[6], V64QImode))
17851 : operands[6] = force_reg (V64QImode, operands[6]);
17852 : operands[5] = GEN_INT (reg_mask);
17853 : }
17854 : #undef DONE
17855 : #undef FAIL
17856 : static const uint8_t expand_encoding[] = {
17857 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17858 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17859 : 0x25
17860 : };
17861 : return complete_seq (expand_encoding, operands);
17862 : }
17863 :
17864 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17865 : extern rtx_insn *gen_split_1756 (rtx_insn *, rtx *);
17866 : rtx_insn *
17867 : gen_split_1756 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17868 : {
17869 : if (dump_file)
17870 : fprintf (dump_file, "Splitting with gen_split_1756 (sse.md:14142)\n");
17871 : start_sequence ();
17872 : #define FAIL return (end_sequence (), nullptr)
17873 : #define DONE return end_sequence ()
17874 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17875 : {
17876 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17877 : int reg6 = 0xF0;
17878 : int reg2 = 0xCC;
17879 : int reg1 = 0xAA;
17880 : int reg3 = 0;
17881 : int reg4 = 0;
17882 : int reg_mask, tmp1, tmp2;
17883 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17884 : STRIP_UNARY (operands[4])))
17885 : {
17886 : reg4 = reg1;
17887 : reg3 = reg6;
17888 : operands[6] = operands[3];
17889 : }
17890 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17891 : STRIP_UNARY (operands[4])))
17892 : {
17893 : reg4 = reg2;
17894 : reg3 = reg6;
17895 : operands[6] = operands[3];
17896 : }
17897 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17898 : STRIP_UNARY (operands[3])))
17899 : {
17900 : reg4 = reg6;
17901 : reg3 = reg1;
17902 : operands[6] = operands[4];
17903 : }
17904 : else
17905 : {
17906 : reg4 = reg6;
17907 : reg3 = reg2;
17908 : operands[6] = operands[4];
17909 : }
17910 :
17911 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17912 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17913 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17914 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17915 :
17916 : tmp1 = reg1 ^ reg2;
17917 : tmp2 = reg3 | reg4;
17918 : reg_mask = tmp1 ^ tmp2;
17919 : reg_mask &= 0xFF;
17920 :
17921 : operands[1] = STRIP_UNARY (operands[1]);
17922 : operands[2] = STRIP_UNARY (operands[2]);
17923 : operands[6] = STRIP_UNARY (operands[6]);
17924 : if (!register_operand (operands[2], V64QImode))
17925 : operands[2] = force_reg (V64QImode, operands[2]);
17926 : if (!register_operand (operands[6], V64QImode))
17927 : operands[6] = force_reg (V64QImode, operands[6]);
17928 : operands[5] = GEN_INT (reg_mask);
17929 : }
17930 : #undef DONE
17931 : #undef FAIL
17932 : static const uint8_t expand_encoding[] = {
17933 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17934 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17935 : 0x25
17936 : };
17937 : return complete_seq (expand_encoding, operands);
17938 : }
17939 :
17940 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17941 : extern rtx_insn *gen_split_1766 (rtx_insn *, rtx *);
17942 : rtx_insn *
17943 : gen_split_1766 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17944 : {
17945 : if (dump_file)
17946 : fprintf (dump_file, "Splitting with gen_split_1766 (sse.md:14142)\n");
17947 : start_sequence ();
17948 : #define FAIL return (end_sequence (), nullptr)
17949 : #define DONE return end_sequence ()
17950 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17951 : {
17952 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17953 : int reg6 = 0xF0;
17954 : int reg2 = 0xCC;
17955 : int reg1 = 0xAA;
17956 : int reg3 = 0;
17957 : int reg4 = 0;
17958 : int reg_mask, tmp1, tmp2;
17959 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17960 : STRIP_UNARY (operands[4])))
17961 : {
17962 : reg4 = reg1;
17963 : reg3 = reg6;
17964 : operands[6] = operands[3];
17965 : }
17966 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17967 : STRIP_UNARY (operands[4])))
17968 : {
17969 : reg4 = reg2;
17970 : reg3 = reg6;
17971 : operands[6] = operands[3];
17972 : }
17973 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17974 : STRIP_UNARY (operands[3])))
17975 : {
17976 : reg4 = reg6;
17977 : reg3 = reg1;
17978 : operands[6] = operands[4];
17979 : }
17980 : else
17981 : {
17982 : reg4 = reg6;
17983 : reg3 = reg2;
17984 : operands[6] = operands[4];
17985 : }
17986 :
17987 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17988 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17989 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17990 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17991 :
17992 : tmp1 = reg1 & reg2;
17993 : tmp2 = reg3 ^ reg4;
17994 : reg_mask = tmp1 & tmp2;
17995 : reg_mask &= 0xFF;
17996 :
17997 : operands[1] = STRIP_UNARY (operands[1]);
17998 : operands[2] = STRIP_UNARY (operands[2]);
17999 : operands[6] = STRIP_UNARY (operands[6]);
18000 : if (!register_operand (operands[2], V32QImode))
18001 : operands[2] = force_reg (V32QImode, operands[2]);
18002 : if (!register_operand (operands[6], V32QImode))
18003 : operands[6] = force_reg (V32QImode, operands[6]);
18004 : operands[5] = GEN_INT (reg_mask);
18005 : }
18006 : #undef DONE
18007 : #undef FAIL
18008 : static const uint8_t expand_encoding[] = {
18009 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18010 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18011 : 0x25
18012 : };
18013 : return complete_seq (expand_encoding, operands);
18014 : }
18015 :
18016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18017 : extern rtx_insn *gen_split_1776 (rtx_insn *, rtx *);
18018 : rtx_insn *
18019 : gen_split_1776 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18020 : {
18021 : if (dump_file)
18022 : fprintf (dump_file, "Splitting with gen_split_1776 (sse.md:14142)\n");
18023 : start_sequence ();
18024 : #define FAIL return (end_sequence (), nullptr)
18025 : #define DONE return end_sequence ()
18026 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18027 : {
18028 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18029 : int reg6 = 0xF0;
18030 : int reg2 = 0xCC;
18031 : int reg1 = 0xAA;
18032 : int reg3 = 0;
18033 : int reg4 = 0;
18034 : int reg_mask, tmp1, tmp2;
18035 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18036 : STRIP_UNARY (operands[4])))
18037 : {
18038 : reg4 = reg1;
18039 : reg3 = reg6;
18040 : operands[6] = operands[3];
18041 : }
18042 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18043 : STRIP_UNARY (operands[4])))
18044 : {
18045 : reg4 = reg2;
18046 : reg3 = reg6;
18047 : operands[6] = operands[3];
18048 : }
18049 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18050 : STRIP_UNARY (operands[3])))
18051 : {
18052 : reg4 = reg6;
18053 : reg3 = reg1;
18054 : operands[6] = operands[4];
18055 : }
18056 : else
18057 : {
18058 : reg4 = reg6;
18059 : reg3 = reg2;
18060 : operands[6] = operands[4];
18061 : }
18062 :
18063 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18064 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18065 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18066 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18067 :
18068 : tmp1 = reg1 | reg2;
18069 : tmp2 = reg3 ^ reg4;
18070 : reg_mask = tmp1 | tmp2;
18071 : reg_mask &= 0xFF;
18072 :
18073 : operands[1] = STRIP_UNARY (operands[1]);
18074 : operands[2] = STRIP_UNARY (operands[2]);
18075 : operands[6] = STRIP_UNARY (operands[6]);
18076 : if (!register_operand (operands[2], V32QImode))
18077 : operands[2] = force_reg (V32QImode, operands[2]);
18078 : if (!register_operand (operands[6], V32QImode))
18079 : operands[6] = force_reg (V32QImode, operands[6]);
18080 : operands[5] = GEN_INT (reg_mask);
18081 : }
18082 : #undef DONE
18083 : #undef FAIL
18084 : static const uint8_t expand_encoding[] = {
18085 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18086 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18087 : 0x25
18088 : };
18089 : return complete_seq (expand_encoding, operands);
18090 : }
18091 :
18092 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18093 : extern rtx_insn *gen_split_1786 (rtx_insn *, rtx *);
18094 : rtx_insn *
18095 : gen_split_1786 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18096 : {
18097 : if (dump_file)
18098 : fprintf (dump_file, "Splitting with gen_split_1786 (sse.md:14142)\n");
18099 : start_sequence ();
18100 : #define FAIL return (end_sequence (), nullptr)
18101 : #define DONE return end_sequence ()
18102 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18103 : {
18104 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18105 : int reg6 = 0xF0;
18106 : int reg2 = 0xCC;
18107 : int reg1 = 0xAA;
18108 : int reg3 = 0;
18109 : int reg4 = 0;
18110 : int reg_mask, tmp1, tmp2;
18111 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18112 : STRIP_UNARY (operands[4])))
18113 : {
18114 : reg4 = reg1;
18115 : reg3 = reg6;
18116 : operands[6] = operands[3];
18117 : }
18118 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18119 : STRIP_UNARY (operands[4])))
18120 : {
18121 : reg4 = reg2;
18122 : reg3 = reg6;
18123 : operands[6] = operands[3];
18124 : }
18125 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18126 : STRIP_UNARY (operands[3])))
18127 : {
18128 : reg4 = reg6;
18129 : reg3 = reg1;
18130 : operands[6] = operands[4];
18131 : }
18132 : else
18133 : {
18134 : reg4 = reg6;
18135 : reg3 = reg2;
18136 : operands[6] = operands[4];
18137 : }
18138 :
18139 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18140 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18141 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18142 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18143 :
18144 : tmp1 = reg1 ^ reg2;
18145 : tmp2 = reg3 ^ reg4;
18146 : reg_mask = tmp1 ^ tmp2;
18147 : reg_mask &= 0xFF;
18148 :
18149 : operands[1] = STRIP_UNARY (operands[1]);
18150 : operands[2] = STRIP_UNARY (operands[2]);
18151 : operands[6] = STRIP_UNARY (operands[6]);
18152 : if (!register_operand (operands[2], V32QImode))
18153 : operands[2] = force_reg (V32QImode, operands[2]);
18154 : if (!register_operand (operands[6], V32QImode))
18155 : operands[6] = force_reg (V32QImode, operands[6]);
18156 : operands[5] = GEN_INT (reg_mask);
18157 : }
18158 : #undef DONE
18159 : #undef FAIL
18160 : static const uint8_t expand_encoding[] = {
18161 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18162 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18163 : 0x25
18164 : };
18165 : return complete_seq (expand_encoding, operands);
18166 : }
18167 :
18168 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18169 : extern rtx_insn *gen_split_1796 (rtx_insn *, rtx *);
18170 : rtx_insn *
18171 : gen_split_1796 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18172 : {
18173 : if (dump_file)
18174 : fprintf (dump_file, "Splitting with gen_split_1796 (sse.md:14142)\n");
18175 : start_sequence ();
18176 : #define FAIL return (end_sequence (), nullptr)
18177 : #define DONE return end_sequence ()
18178 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18179 : {
18180 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18181 : int reg6 = 0xF0;
18182 : int reg2 = 0xCC;
18183 : int reg1 = 0xAA;
18184 : int reg3 = 0;
18185 : int reg4 = 0;
18186 : int reg_mask, tmp1, tmp2;
18187 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18188 : STRIP_UNARY (operands[4])))
18189 : {
18190 : reg4 = reg1;
18191 : reg3 = reg6;
18192 : operands[6] = operands[3];
18193 : }
18194 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18195 : STRIP_UNARY (operands[4])))
18196 : {
18197 : reg4 = reg2;
18198 : reg3 = reg6;
18199 : operands[6] = operands[3];
18200 : }
18201 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18202 : STRIP_UNARY (operands[3])))
18203 : {
18204 : reg4 = reg6;
18205 : reg3 = reg1;
18206 : operands[6] = operands[4];
18207 : }
18208 : else
18209 : {
18210 : reg4 = reg6;
18211 : reg3 = reg2;
18212 : operands[6] = operands[4];
18213 : }
18214 :
18215 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18216 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18217 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18218 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18219 :
18220 : tmp1 = reg1 | reg2;
18221 : tmp2 = reg3 & reg4;
18222 : reg_mask = tmp1 & tmp2;
18223 : reg_mask &= 0xFF;
18224 :
18225 : operands[1] = STRIP_UNARY (operands[1]);
18226 : operands[2] = STRIP_UNARY (operands[2]);
18227 : operands[6] = STRIP_UNARY (operands[6]);
18228 : if (!register_operand (operands[2], V16QImode))
18229 : operands[2] = force_reg (V16QImode, operands[2]);
18230 : if (!register_operand (operands[6], V16QImode))
18231 : operands[6] = force_reg (V16QImode, operands[6]);
18232 : operands[5] = GEN_INT (reg_mask);
18233 : }
18234 : #undef DONE
18235 : #undef FAIL
18236 : static const uint8_t expand_encoding[] = {
18237 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18238 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18239 : 0x25
18240 : };
18241 : return complete_seq (expand_encoding, operands);
18242 : }
18243 :
18244 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18245 : extern rtx_insn *gen_split_1806 (rtx_insn *, rtx *);
18246 : rtx_insn *
18247 : gen_split_1806 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18248 : {
18249 : if (dump_file)
18250 : fprintf (dump_file, "Splitting with gen_split_1806 (sse.md:14142)\n");
18251 : start_sequence ();
18252 : #define FAIL return (end_sequence (), nullptr)
18253 : #define DONE return end_sequence ()
18254 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18255 : {
18256 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18257 : int reg6 = 0xF0;
18258 : int reg2 = 0xCC;
18259 : int reg1 = 0xAA;
18260 : int reg3 = 0;
18261 : int reg4 = 0;
18262 : int reg_mask, tmp1, tmp2;
18263 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18264 : STRIP_UNARY (operands[4])))
18265 : {
18266 : reg4 = reg1;
18267 : reg3 = reg6;
18268 : operands[6] = operands[3];
18269 : }
18270 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18271 : STRIP_UNARY (operands[4])))
18272 : {
18273 : reg4 = reg2;
18274 : reg3 = reg6;
18275 : operands[6] = operands[3];
18276 : }
18277 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18278 : STRIP_UNARY (operands[3])))
18279 : {
18280 : reg4 = reg6;
18281 : reg3 = reg1;
18282 : operands[6] = operands[4];
18283 : }
18284 : else
18285 : {
18286 : reg4 = reg6;
18287 : reg3 = reg2;
18288 : operands[6] = operands[4];
18289 : }
18290 :
18291 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18292 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18293 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18294 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18295 :
18296 : tmp1 = reg1 ^ reg2;
18297 : tmp2 = reg3 & reg4;
18298 : reg_mask = tmp1 | tmp2;
18299 : reg_mask &= 0xFF;
18300 :
18301 : operands[1] = STRIP_UNARY (operands[1]);
18302 : operands[2] = STRIP_UNARY (operands[2]);
18303 : operands[6] = STRIP_UNARY (operands[6]);
18304 : if (!register_operand (operands[2], V16QImode))
18305 : operands[2] = force_reg (V16QImode, operands[2]);
18306 : if (!register_operand (operands[6], V16QImode))
18307 : operands[6] = force_reg (V16QImode, operands[6]);
18308 : operands[5] = GEN_INT (reg_mask);
18309 : }
18310 : #undef DONE
18311 : #undef FAIL
18312 : static const uint8_t expand_encoding[] = {
18313 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18314 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18315 : 0x25
18316 : };
18317 : return complete_seq (expand_encoding, operands);
18318 : }
18319 :
18320 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18321 : extern rtx_insn *gen_split_1816 (rtx_insn *, rtx *);
18322 : rtx_insn *
18323 : gen_split_1816 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18324 : {
18325 : if (dump_file)
18326 : fprintf (dump_file, "Splitting with gen_split_1816 (sse.md:14142)\n");
18327 : start_sequence ();
18328 : #define FAIL return (end_sequence (), nullptr)
18329 : #define DONE return end_sequence ()
18330 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18331 : {
18332 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18333 : int reg6 = 0xF0;
18334 : int reg2 = 0xCC;
18335 : int reg1 = 0xAA;
18336 : int reg3 = 0;
18337 : int reg4 = 0;
18338 : int reg_mask, tmp1, tmp2;
18339 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18340 : STRIP_UNARY (operands[4])))
18341 : {
18342 : reg4 = reg1;
18343 : reg3 = reg6;
18344 : operands[6] = operands[3];
18345 : }
18346 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18347 : STRIP_UNARY (operands[4])))
18348 : {
18349 : reg4 = reg2;
18350 : reg3 = reg6;
18351 : operands[6] = operands[3];
18352 : }
18353 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18354 : STRIP_UNARY (operands[3])))
18355 : {
18356 : reg4 = reg6;
18357 : reg3 = reg1;
18358 : operands[6] = operands[4];
18359 : }
18360 : else
18361 : {
18362 : reg4 = reg6;
18363 : reg3 = reg2;
18364 : operands[6] = operands[4];
18365 : }
18366 :
18367 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18368 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18369 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18370 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18371 :
18372 : tmp1 = reg1 & reg2;
18373 : tmp2 = reg3 & reg4;
18374 : reg_mask = tmp1 ^ tmp2;
18375 : reg_mask &= 0xFF;
18376 :
18377 : operands[1] = STRIP_UNARY (operands[1]);
18378 : operands[2] = STRIP_UNARY (operands[2]);
18379 : operands[6] = STRIP_UNARY (operands[6]);
18380 : if (!register_operand (operands[2], V32HImode))
18381 : operands[2] = force_reg (V32HImode, operands[2]);
18382 : if (!register_operand (operands[6], V32HImode))
18383 : operands[6] = force_reg (V32HImode, operands[6]);
18384 : operands[5] = GEN_INT (reg_mask);
18385 : }
18386 : #undef DONE
18387 : #undef FAIL
18388 : static const uint8_t expand_encoding[] = {
18389 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18390 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18391 : 0x25
18392 : };
18393 : return complete_seq (expand_encoding, operands);
18394 : }
18395 :
18396 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18397 : extern rtx_insn *gen_split_1826 (rtx_insn *, rtx *);
18398 : rtx_insn *
18399 : gen_split_1826 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18400 : {
18401 : if (dump_file)
18402 : fprintf (dump_file, "Splitting with gen_split_1826 (sse.md:14142)\n");
18403 : start_sequence ();
18404 : #define FAIL return (end_sequence (), nullptr)
18405 : #define DONE return end_sequence ()
18406 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18407 : {
18408 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18409 : int reg6 = 0xF0;
18410 : int reg2 = 0xCC;
18411 : int reg1 = 0xAA;
18412 : int reg3 = 0;
18413 : int reg4 = 0;
18414 : int reg_mask, tmp1, tmp2;
18415 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18416 : STRIP_UNARY (operands[4])))
18417 : {
18418 : reg4 = reg1;
18419 : reg3 = reg6;
18420 : operands[6] = operands[3];
18421 : }
18422 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18423 : STRIP_UNARY (operands[4])))
18424 : {
18425 : reg4 = reg2;
18426 : reg3 = reg6;
18427 : operands[6] = operands[3];
18428 : }
18429 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18430 : STRIP_UNARY (operands[3])))
18431 : {
18432 : reg4 = reg6;
18433 : reg3 = reg1;
18434 : operands[6] = operands[4];
18435 : }
18436 : else
18437 : {
18438 : reg4 = reg6;
18439 : reg3 = reg2;
18440 : operands[6] = operands[4];
18441 : }
18442 :
18443 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18444 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18445 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18446 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18447 :
18448 : tmp1 = reg1 | reg2;
18449 : tmp2 = reg3 | reg4;
18450 : reg_mask = tmp1 & tmp2;
18451 : reg_mask &= 0xFF;
18452 :
18453 : operands[1] = STRIP_UNARY (operands[1]);
18454 : operands[2] = STRIP_UNARY (operands[2]);
18455 : operands[6] = STRIP_UNARY (operands[6]);
18456 : if (!register_operand (operands[2], V32HImode))
18457 : operands[2] = force_reg (V32HImode, operands[2]);
18458 : if (!register_operand (operands[6], V32HImode))
18459 : operands[6] = force_reg (V32HImode, operands[6]);
18460 : operands[5] = GEN_INT (reg_mask);
18461 : }
18462 : #undef DONE
18463 : #undef FAIL
18464 : static const uint8_t expand_encoding[] = {
18465 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18466 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18467 : 0x25
18468 : };
18469 : return complete_seq (expand_encoding, operands);
18470 : }
18471 :
18472 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18473 : extern rtx_insn *gen_split_1836 (rtx_insn *, rtx *);
18474 : rtx_insn *
18475 : gen_split_1836 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18476 : {
18477 : if (dump_file)
18478 : fprintf (dump_file, "Splitting with gen_split_1836 (sse.md:14142)\n");
18479 : start_sequence ();
18480 : #define FAIL return (end_sequence (), nullptr)
18481 : #define DONE return end_sequence ()
18482 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18483 : {
18484 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18485 : int reg6 = 0xF0;
18486 : int reg2 = 0xCC;
18487 : int reg1 = 0xAA;
18488 : int reg3 = 0;
18489 : int reg4 = 0;
18490 : int reg_mask, tmp1, tmp2;
18491 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18492 : STRIP_UNARY (operands[4])))
18493 : {
18494 : reg4 = reg1;
18495 : reg3 = reg6;
18496 : operands[6] = operands[3];
18497 : }
18498 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18499 : STRIP_UNARY (operands[4])))
18500 : {
18501 : reg4 = reg2;
18502 : reg3 = reg6;
18503 : operands[6] = operands[3];
18504 : }
18505 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18506 : STRIP_UNARY (operands[3])))
18507 : {
18508 : reg4 = reg6;
18509 : reg3 = reg1;
18510 : operands[6] = operands[4];
18511 : }
18512 : else
18513 : {
18514 : reg4 = reg6;
18515 : reg3 = reg2;
18516 : operands[6] = operands[4];
18517 : }
18518 :
18519 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18520 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18521 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18522 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18523 :
18524 : tmp1 = reg1 ^ reg2;
18525 : tmp2 = reg3 | reg4;
18526 : reg_mask = tmp1 | tmp2;
18527 : reg_mask &= 0xFF;
18528 :
18529 : operands[1] = STRIP_UNARY (operands[1]);
18530 : operands[2] = STRIP_UNARY (operands[2]);
18531 : operands[6] = STRIP_UNARY (operands[6]);
18532 : if (!register_operand (operands[2], V32HImode))
18533 : operands[2] = force_reg (V32HImode, operands[2]);
18534 : if (!register_operand (operands[6], V32HImode))
18535 : operands[6] = force_reg (V32HImode, operands[6]);
18536 : operands[5] = GEN_INT (reg_mask);
18537 : }
18538 : #undef DONE
18539 : #undef FAIL
18540 : static const uint8_t expand_encoding[] = {
18541 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18542 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18543 : 0x25
18544 : };
18545 : return complete_seq (expand_encoding, operands);
18546 : }
18547 :
18548 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18549 : extern rtx_insn *gen_split_1846 (rtx_insn *, rtx *);
18550 : rtx_insn *
18551 : gen_split_1846 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18552 : {
18553 : if (dump_file)
18554 : fprintf (dump_file, "Splitting with gen_split_1846 (sse.md:14142)\n");
18555 : start_sequence ();
18556 : #define FAIL return (end_sequence (), nullptr)
18557 : #define DONE return end_sequence ()
18558 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18559 : {
18560 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18561 : int reg6 = 0xF0;
18562 : int reg2 = 0xCC;
18563 : int reg1 = 0xAA;
18564 : int reg3 = 0;
18565 : int reg4 = 0;
18566 : int reg_mask, tmp1, tmp2;
18567 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18568 : STRIP_UNARY (operands[4])))
18569 : {
18570 : reg4 = reg1;
18571 : reg3 = reg6;
18572 : operands[6] = operands[3];
18573 : }
18574 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18575 : STRIP_UNARY (operands[4])))
18576 : {
18577 : reg4 = reg2;
18578 : reg3 = reg6;
18579 : operands[6] = operands[3];
18580 : }
18581 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18582 : STRIP_UNARY (operands[3])))
18583 : {
18584 : reg4 = reg6;
18585 : reg3 = reg1;
18586 : operands[6] = operands[4];
18587 : }
18588 : else
18589 : {
18590 : reg4 = reg6;
18591 : reg3 = reg2;
18592 : operands[6] = operands[4];
18593 : }
18594 :
18595 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18596 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18597 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18598 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18599 :
18600 : tmp1 = reg1 & reg2;
18601 : tmp2 = reg3 | reg4;
18602 : reg_mask = tmp1 ^ tmp2;
18603 : reg_mask &= 0xFF;
18604 :
18605 : operands[1] = STRIP_UNARY (operands[1]);
18606 : operands[2] = STRIP_UNARY (operands[2]);
18607 : operands[6] = STRIP_UNARY (operands[6]);
18608 : if (!register_operand (operands[2], V16HImode))
18609 : operands[2] = force_reg (V16HImode, operands[2]);
18610 : if (!register_operand (operands[6], V16HImode))
18611 : operands[6] = force_reg (V16HImode, operands[6]);
18612 : operands[5] = GEN_INT (reg_mask);
18613 : }
18614 : #undef DONE
18615 : #undef FAIL
18616 : static const uint8_t expand_encoding[] = {
18617 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18618 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18619 : 0x25
18620 : };
18621 : return complete_seq (expand_encoding, operands);
18622 : }
18623 :
18624 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18625 : extern rtx_insn *gen_split_1856 (rtx_insn *, rtx *);
18626 : rtx_insn *
18627 : gen_split_1856 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18628 : {
18629 : if (dump_file)
18630 : fprintf (dump_file, "Splitting with gen_split_1856 (sse.md:14142)\n");
18631 : start_sequence ();
18632 : #define FAIL return (end_sequence (), nullptr)
18633 : #define DONE return end_sequence ()
18634 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18635 : {
18636 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18637 : int reg6 = 0xF0;
18638 : int reg2 = 0xCC;
18639 : int reg1 = 0xAA;
18640 : int reg3 = 0;
18641 : int reg4 = 0;
18642 : int reg_mask, tmp1, tmp2;
18643 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18644 : STRIP_UNARY (operands[4])))
18645 : {
18646 : reg4 = reg1;
18647 : reg3 = reg6;
18648 : operands[6] = operands[3];
18649 : }
18650 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18651 : STRIP_UNARY (operands[4])))
18652 : {
18653 : reg4 = reg2;
18654 : reg3 = reg6;
18655 : operands[6] = operands[3];
18656 : }
18657 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18658 : STRIP_UNARY (operands[3])))
18659 : {
18660 : reg4 = reg6;
18661 : reg3 = reg1;
18662 : operands[6] = operands[4];
18663 : }
18664 : else
18665 : {
18666 : reg4 = reg6;
18667 : reg3 = reg2;
18668 : operands[6] = operands[4];
18669 : }
18670 :
18671 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18672 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18673 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18674 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18675 :
18676 : tmp1 = reg1 | reg2;
18677 : tmp2 = reg3 ^ reg4;
18678 : reg_mask = tmp1 & tmp2;
18679 : reg_mask &= 0xFF;
18680 :
18681 : operands[1] = STRIP_UNARY (operands[1]);
18682 : operands[2] = STRIP_UNARY (operands[2]);
18683 : operands[6] = STRIP_UNARY (operands[6]);
18684 : if (!register_operand (operands[2], V16HImode))
18685 : operands[2] = force_reg (V16HImode, operands[2]);
18686 : if (!register_operand (operands[6], V16HImode))
18687 : operands[6] = force_reg (V16HImode, operands[6]);
18688 : operands[5] = GEN_INT (reg_mask);
18689 : }
18690 : #undef DONE
18691 : #undef FAIL
18692 : static const uint8_t expand_encoding[] = {
18693 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18694 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18695 : 0x25
18696 : };
18697 : return complete_seq (expand_encoding, operands);
18698 : }
18699 :
18700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18701 : extern rtx_insn *gen_split_1866 (rtx_insn *, rtx *);
18702 : rtx_insn *
18703 : gen_split_1866 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18704 : {
18705 : if (dump_file)
18706 : fprintf (dump_file, "Splitting with gen_split_1866 (sse.md:14142)\n");
18707 : start_sequence ();
18708 : #define FAIL return (end_sequence (), nullptr)
18709 : #define DONE return end_sequence ()
18710 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18711 : {
18712 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18713 : int reg6 = 0xF0;
18714 : int reg2 = 0xCC;
18715 : int reg1 = 0xAA;
18716 : int reg3 = 0;
18717 : int reg4 = 0;
18718 : int reg_mask, tmp1, tmp2;
18719 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18720 : STRIP_UNARY (operands[4])))
18721 : {
18722 : reg4 = reg1;
18723 : reg3 = reg6;
18724 : operands[6] = operands[3];
18725 : }
18726 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18727 : STRIP_UNARY (operands[4])))
18728 : {
18729 : reg4 = reg2;
18730 : reg3 = reg6;
18731 : operands[6] = operands[3];
18732 : }
18733 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18734 : STRIP_UNARY (operands[3])))
18735 : {
18736 : reg4 = reg6;
18737 : reg3 = reg1;
18738 : operands[6] = operands[4];
18739 : }
18740 : else
18741 : {
18742 : reg4 = reg6;
18743 : reg3 = reg2;
18744 : operands[6] = operands[4];
18745 : }
18746 :
18747 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18748 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18749 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18750 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18751 :
18752 : tmp1 = reg1 ^ reg2;
18753 : tmp2 = reg3 ^ reg4;
18754 : reg_mask = tmp1 | tmp2;
18755 : reg_mask &= 0xFF;
18756 :
18757 : operands[1] = STRIP_UNARY (operands[1]);
18758 : operands[2] = STRIP_UNARY (operands[2]);
18759 : operands[6] = STRIP_UNARY (operands[6]);
18760 : if (!register_operand (operands[2], V16HImode))
18761 : operands[2] = force_reg (V16HImode, operands[2]);
18762 : if (!register_operand (operands[6], V16HImode))
18763 : operands[6] = force_reg (V16HImode, operands[6]);
18764 : operands[5] = GEN_INT (reg_mask);
18765 : }
18766 : #undef DONE
18767 : #undef FAIL
18768 : static const uint8_t expand_encoding[] = {
18769 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18770 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18771 : 0x25
18772 : };
18773 : return complete_seq (expand_encoding, operands);
18774 : }
18775 :
18776 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18777 : extern rtx_insn *gen_split_1876 (rtx_insn *, rtx *);
18778 : rtx_insn *
18779 : gen_split_1876 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18780 : {
18781 : if (dump_file)
18782 : fprintf (dump_file, "Splitting with gen_split_1876 (sse.md:14142)\n");
18783 : start_sequence ();
18784 : #define FAIL return (end_sequence (), nullptr)
18785 : #define DONE return end_sequence ()
18786 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18787 : {
18788 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18789 : int reg6 = 0xF0;
18790 : int reg2 = 0xCC;
18791 : int reg1 = 0xAA;
18792 : int reg3 = 0;
18793 : int reg4 = 0;
18794 : int reg_mask, tmp1, tmp2;
18795 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18796 : STRIP_UNARY (operands[4])))
18797 : {
18798 : reg4 = reg1;
18799 : reg3 = reg6;
18800 : operands[6] = operands[3];
18801 : }
18802 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18803 : STRIP_UNARY (operands[4])))
18804 : {
18805 : reg4 = reg2;
18806 : reg3 = reg6;
18807 : operands[6] = operands[3];
18808 : }
18809 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18810 : STRIP_UNARY (operands[3])))
18811 : {
18812 : reg4 = reg6;
18813 : reg3 = reg1;
18814 : operands[6] = operands[4];
18815 : }
18816 : else
18817 : {
18818 : reg4 = reg6;
18819 : reg3 = reg2;
18820 : operands[6] = operands[4];
18821 : }
18822 :
18823 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18824 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18825 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18826 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18827 :
18828 : tmp1 = reg1 & reg2;
18829 : tmp2 = reg3 ^ reg4;
18830 : reg_mask = tmp1 ^ tmp2;
18831 : reg_mask &= 0xFF;
18832 :
18833 : operands[1] = STRIP_UNARY (operands[1]);
18834 : operands[2] = STRIP_UNARY (operands[2]);
18835 : operands[6] = STRIP_UNARY (operands[6]);
18836 : if (!register_operand (operands[2], V8HImode))
18837 : operands[2] = force_reg (V8HImode, operands[2]);
18838 : if (!register_operand (operands[6], V8HImode))
18839 : operands[6] = force_reg (V8HImode, operands[6]);
18840 : operands[5] = GEN_INT (reg_mask);
18841 : }
18842 : #undef DONE
18843 : #undef FAIL
18844 : static const uint8_t expand_encoding[] = {
18845 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18846 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18847 : 0x25
18848 : };
18849 : return complete_seq (expand_encoding, operands);
18850 : }
18851 :
18852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18853 : extern rtx_insn *gen_split_1886 (rtx_insn *, rtx *);
18854 : rtx_insn *
18855 : gen_split_1886 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18856 : {
18857 : if (dump_file)
18858 : fprintf (dump_file, "Splitting with gen_split_1886 (sse.md:14142)\n");
18859 : start_sequence ();
18860 : #define FAIL return (end_sequence (), nullptr)
18861 : #define DONE return end_sequence ()
18862 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18863 : {
18864 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18865 : int reg6 = 0xF0;
18866 : int reg2 = 0xCC;
18867 : int reg1 = 0xAA;
18868 : int reg3 = 0;
18869 : int reg4 = 0;
18870 : int reg_mask, tmp1, tmp2;
18871 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18872 : STRIP_UNARY (operands[4])))
18873 : {
18874 : reg4 = reg1;
18875 : reg3 = reg6;
18876 : operands[6] = operands[3];
18877 : }
18878 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18879 : STRIP_UNARY (operands[4])))
18880 : {
18881 : reg4 = reg2;
18882 : reg3 = reg6;
18883 : operands[6] = operands[3];
18884 : }
18885 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18886 : STRIP_UNARY (operands[3])))
18887 : {
18888 : reg4 = reg6;
18889 : reg3 = reg1;
18890 : operands[6] = operands[4];
18891 : }
18892 : else
18893 : {
18894 : reg4 = reg6;
18895 : reg3 = reg2;
18896 : operands[6] = operands[4];
18897 : }
18898 :
18899 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18900 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18901 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18902 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18903 :
18904 : tmp1 = reg1 ^ reg2;
18905 : tmp2 = reg3 & reg4;
18906 : reg_mask = tmp1 & tmp2;
18907 : reg_mask &= 0xFF;
18908 :
18909 : operands[1] = STRIP_UNARY (operands[1]);
18910 : operands[2] = STRIP_UNARY (operands[2]);
18911 : operands[6] = STRIP_UNARY (operands[6]);
18912 : if (!register_operand (operands[2], V8HImode))
18913 : operands[2] = force_reg (V8HImode, operands[2]);
18914 : if (!register_operand (operands[6], V8HImode))
18915 : operands[6] = force_reg (V8HImode, operands[6]);
18916 : operands[5] = GEN_INT (reg_mask);
18917 : }
18918 : #undef DONE
18919 : #undef FAIL
18920 : static const uint8_t expand_encoding[] = {
18921 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18922 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18923 : 0x25
18924 : };
18925 : return complete_seq (expand_encoding, operands);
18926 : }
18927 :
18928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18929 : extern rtx_insn *gen_split_1896 (rtx_insn *, rtx *);
18930 : rtx_insn *
18931 : gen_split_1896 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18932 : {
18933 : if (dump_file)
18934 : fprintf (dump_file, "Splitting with gen_split_1896 (sse.md:14142)\n");
18935 : start_sequence ();
18936 : #define FAIL return (end_sequence (), nullptr)
18937 : #define DONE return end_sequence ()
18938 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18939 : {
18940 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18941 : int reg6 = 0xF0;
18942 : int reg2 = 0xCC;
18943 : int reg1 = 0xAA;
18944 : int reg3 = 0;
18945 : int reg4 = 0;
18946 : int reg_mask, tmp1, tmp2;
18947 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18948 : STRIP_UNARY (operands[4])))
18949 : {
18950 : reg4 = reg1;
18951 : reg3 = reg6;
18952 : operands[6] = operands[3];
18953 : }
18954 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18955 : STRIP_UNARY (operands[4])))
18956 : {
18957 : reg4 = reg2;
18958 : reg3 = reg6;
18959 : operands[6] = operands[3];
18960 : }
18961 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18962 : STRIP_UNARY (operands[3])))
18963 : {
18964 : reg4 = reg6;
18965 : reg3 = reg1;
18966 : operands[6] = operands[4];
18967 : }
18968 : else
18969 : {
18970 : reg4 = reg6;
18971 : reg3 = reg2;
18972 : operands[6] = operands[4];
18973 : }
18974 :
18975 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18976 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18977 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18978 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18979 :
18980 : tmp1 = reg1 & reg2;
18981 : tmp2 = reg3 & reg4;
18982 : reg_mask = tmp1 | tmp2;
18983 : reg_mask &= 0xFF;
18984 :
18985 : operands[1] = STRIP_UNARY (operands[1]);
18986 : operands[2] = STRIP_UNARY (operands[2]);
18987 : operands[6] = STRIP_UNARY (operands[6]);
18988 : if (!register_operand (operands[2], V16SImode))
18989 : operands[2] = force_reg (V16SImode, operands[2]);
18990 : if (!register_operand (operands[6], V16SImode))
18991 : operands[6] = force_reg (V16SImode, operands[6]);
18992 : operands[5] = GEN_INT (reg_mask);
18993 : }
18994 : #undef DONE
18995 : #undef FAIL
18996 : static const uint8_t expand_encoding[] = {
18997 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
18998 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18999 : 0x25
19000 : };
19001 : return complete_seq (expand_encoding, operands);
19002 : }
19003 :
19004 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19005 : extern rtx_insn *gen_split_1906 (rtx_insn *, rtx *);
19006 : rtx_insn *
19007 : gen_split_1906 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19008 : {
19009 : if (dump_file)
19010 : fprintf (dump_file, "Splitting with gen_split_1906 (sse.md:14142)\n");
19011 : start_sequence ();
19012 : #define FAIL return (end_sequence (), nullptr)
19013 : #define DONE return end_sequence ()
19014 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19015 : {
19016 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19017 : int reg6 = 0xF0;
19018 : int reg2 = 0xCC;
19019 : int reg1 = 0xAA;
19020 : int reg3 = 0;
19021 : int reg4 = 0;
19022 : int reg_mask, tmp1, tmp2;
19023 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19024 : STRIP_UNARY (operands[4])))
19025 : {
19026 : reg4 = reg1;
19027 : reg3 = reg6;
19028 : operands[6] = operands[3];
19029 : }
19030 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19031 : STRIP_UNARY (operands[4])))
19032 : {
19033 : reg4 = reg2;
19034 : reg3 = reg6;
19035 : operands[6] = operands[3];
19036 : }
19037 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19038 : STRIP_UNARY (operands[3])))
19039 : {
19040 : reg4 = reg6;
19041 : reg3 = reg1;
19042 : operands[6] = operands[4];
19043 : }
19044 : else
19045 : {
19046 : reg4 = reg6;
19047 : reg3 = reg2;
19048 : operands[6] = operands[4];
19049 : }
19050 :
19051 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19052 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19053 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19054 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19055 :
19056 : tmp1 = reg1 | reg2;
19057 : tmp2 = reg3 & reg4;
19058 : reg_mask = tmp1 ^ tmp2;
19059 : reg_mask &= 0xFF;
19060 :
19061 : operands[1] = STRIP_UNARY (operands[1]);
19062 : operands[2] = STRIP_UNARY (operands[2]);
19063 : operands[6] = STRIP_UNARY (operands[6]);
19064 : if (!register_operand (operands[2], V16SImode))
19065 : operands[2] = force_reg (V16SImode, operands[2]);
19066 : if (!register_operand (operands[6], V16SImode))
19067 : operands[6] = force_reg (V16SImode, operands[6]);
19068 : operands[5] = GEN_INT (reg_mask);
19069 : }
19070 : #undef DONE
19071 : #undef FAIL
19072 : static const uint8_t expand_encoding[] = {
19073 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19074 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19075 : 0x25
19076 : };
19077 : return complete_seq (expand_encoding, operands);
19078 : }
19079 :
19080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19081 : extern rtx_insn *gen_split_1916 (rtx_insn *, rtx *);
19082 : rtx_insn *
19083 : gen_split_1916 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19084 : {
19085 : if (dump_file)
19086 : fprintf (dump_file, "Splitting with gen_split_1916 (sse.md:14142)\n");
19087 : start_sequence ();
19088 : #define FAIL return (end_sequence (), nullptr)
19089 : #define DONE return end_sequence ()
19090 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19091 : {
19092 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19093 : int reg6 = 0xF0;
19094 : int reg2 = 0xCC;
19095 : int reg1 = 0xAA;
19096 : int reg3 = 0;
19097 : int reg4 = 0;
19098 : int reg_mask, tmp1, tmp2;
19099 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19100 : STRIP_UNARY (operands[4])))
19101 : {
19102 : reg4 = reg1;
19103 : reg3 = reg6;
19104 : operands[6] = operands[3];
19105 : }
19106 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19107 : STRIP_UNARY (operands[4])))
19108 : {
19109 : reg4 = reg2;
19110 : reg3 = reg6;
19111 : operands[6] = operands[3];
19112 : }
19113 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19114 : STRIP_UNARY (operands[3])))
19115 : {
19116 : reg4 = reg6;
19117 : reg3 = reg1;
19118 : operands[6] = operands[4];
19119 : }
19120 : else
19121 : {
19122 : reg4 = reg6;
19123 : reg3 = reg2;
19124 : operands[6] = operands[4];
19125 : }
19126 :
19127 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19128 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19129 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19130 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19131 :
19132 : tmp1 = reg1 ^ reg2;
19133 : tmp2 = reg3 | reg4;
19134 : reg_mask = tmp1 & tmp2;
19135 : reg_mask &= 0xFF;
19136 :
19137 : operands[1] = STRIP_UNARY (operands[1]);
19138 : operands[2] = STRIP_UNARY (operands[2]);
19139 : operands[6] = STRIP_UNARY (operands[6]);
19140 : if (!register_operand (operands[2], V16SImode))
19141 : operands[2] = force_reg (V16SImode, operands[2]);
19142 : if (!register_operand (operands[6], V16SImode))
19143 : operands[6] = force_reg (V16SImode, operands[6]);
19144 : operands[5] = GEN_INT (reg_mask);
19145 : }
19146 : #undef DONE
19147 : #undef FAIL
19148 : static const uint8_t expand_encoding[] = {
19149 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19150 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19151 : 0x25
19152 : };
19153 : return complete_seq (expand_encoding, operands);
19154 : }
19155 :
19156 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19157 : extern rtx_insn *gen_split_1926 (rtx_insn *, rtx *);
19158 : rtx_insn *
19159 : gen_split_1926 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19160 : {
19161 : if (dump_file)
19162 : fprintf (dump_file, "Splitting with gen_split_1926 (sse.md:14142)\n");
19163 : start_sequence ();
19164 : #define FAIL return (end_sequence (), nullptr)
19165 : #define DONE return end_sequence ()
19166 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19167 : {
19168 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19169 : int reg6 = 0xF0;
19170 : int reg2 = 0xCC;
19171 : int reg1 = 0xAA;
19172 : int reg3 = 0;
19173 : int reg4 = 0;
19174 : int reg_mask, tmp1, tmp2;
19175 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19176 : STRIP_UNARY (operands[4])))
19177 : {
19178 : reg4 = reg1;
19179 : reg3 = reg6;
19180 : operands[6] = operands[3];
19181 : }
19182 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19183 : STRIP_UNARY (operands[4])))
19184 : {
19185 : reg4 = reg2;
19186 : reg3 = reg6;
19187 : operands[6] = operands[3];
19188 : }
19189 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19190 : STRIP_UNARY (operands[3])))
19191 : {
19192 : reg4 = reg6;
19193 : reg3 = reg1;
19194 : operands[6] = operands[4];
19195 : }
19196 : else
19197 : {
19198 : reg4 = reg6;
19199 : reg3 = reg2;
19200 : operands[6] = operands[4];
19201 : }
19202 :
19203 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19204 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19205 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19206 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19207 :
19208 : tmp1 = reg1 & reg2;
19209 : tmp2 = reg3 | reg4;
19210 : reg_mask = tmp1 | tmp2;
19211 : reg_mask &= 0xFF;
19212 :
19213 : operands[1] = STRIP_UNARY (operands[1]);
19214 : operands[2] = STRIP_UNARY (operands[2]);
19215 : operands[6] = STRIP_UNARY (operands[6]);
19216 : if (!register_operand (operands[2], V8SImode))
19217 : operands[2] = force_reg (V8SImode, operands[2]);
19218 : if (!register_operand (operands[6], V8SImode))
19219 : operands[6] = force_reg (V8SImode, operands[6]);
19220 : operands[5] = GEN_INT (reg_mask);
19221 : }
19222 : #undef DONE
19223 : #undef FAIL
19224 : static const uint8_t expand_encoding[] = {
19225 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19226 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19227 : 0x25
19228 : };
19229 : return complete_seq (expand_encoding, operands);
19230 : }
19231 :
19232 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19233 : extern rtx_insn *gen_split_1936 (rtx_insn *, rtx *);
19234 : rtx_insn *
19235 : gen_split_1936 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19236 : {
19237 : if (dump_file)
19238 : fprintf (dump_file, "Splitting with gen_split_1936 (sse.md:14142)\n");
19239 : start_sequence ();
19240 : #define FAIL return (end_sequence (), nullptr)
19241 : #define DONE return end_sequence ()
19242 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19243 : {
19244 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19245 : int reg6 = 0xF0;
19246 : int reg2 = 0xCC;
19247 : int reg1 = 0xAA;
19248 : int reg3 = 0;
19249 : int reg4 = 0;
19250 : int reg_mask, tmp1, tmp2;
19251 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19252 : STRIP_UNARY (operands[4])))
19253 : {
19254 : reg4 = reg1;
19255 : reg3 = reg6;
19256 : operands[6] = operands[3];
19257 : }
19258 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19259 : STRIP_UNARY (operands[4])))
19260 : {
19261 : reg4 = reg2;
19262 : reg3 = reg6;
19263 : operands[6] = operands[3];
19264 : }
19265 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19266 : STRIP_UNARY (operands[3])))
19267 : {
19268 : reg4 = reg6;
19269 : reg3 = reg1;
19270 : operands[6] = operands[4];
19271 : }
19272 : else
19273 : {
19274 : reg4 = reg6;
19275 : reg3 = reg2;
19276 : operands[6] = operands[4];
19277 : }
19278 :
19279 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19280 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19281 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19282 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19283 :
19284 : tmp1 = reg1 | reg2;
19285 : tmp2 = reg3 | reg4;
19286 : reg_mask = tmp1 ^ tmp2;
19287 : reg_mask &= 0xFF;
19288 :
19289 : operands[1] = STRIP_UNARY (operands[1]);
19290 : operands[2] = STRIP_UNARY (operands[2]);
19291 : operands[6] = STRIP_UNARY (operands[6]);
19292 : if (!register_operand (operands[2], V8SImode))
19293 : operands[2] = force_reg (V8SImode, operands[2]);
19294 : if (!register_operand (operands[6], V8SImode))
19295 : operands[6] = force_reg (V8SImode, operands[6]);
19296 : operands[5] = GEN_INT (reg_mask);
19297 : }
19298 : #undef DONE
19299 : #undef FAIL
19300 : static const uint8_t expand_encoding[] = {
19301 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19302 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19303 : 0x25
19304 : };
19305 : return complete_seq (expand_encoding, operands);
19306 : }
19307 :
19308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19309 : extern rtx_insn *gen_split_1946 (rtx_insn *, rtx *);
19310 : rtx_insn *
19311 : gen_split_1946 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19312 : {
19313 : if (dump_file)
19314 : fprintf (dump_file, "Splitting with gen_split_1946 (sse.md:14142)\n");
19315 : start_sequence ();
19316 : #define FAIL return (end_sequence (), nullptr)
19317 : #define DONE return end_sequence ()
19318 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19319 : {
19320 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19321 : int reg6 = 0xF0;
19322 : int reg2 = 0xCC;
19323 : int reg1 = 0xAA;
19324 : int reg3 = 0;
19325 : int reg4 = 0;
19326 : int reg_mask, tmp1, tmp2;
19327 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19328 : STRIP_UNARY (operands[4])))
19329 : {
19330 : reg4 = reg1;
19331 : reg3 = reg6;
19332 : operands[6] = operands[3];
19333 : }
19334 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19335 : STRIP_UNARY (operands[4])))
19336 : {
19337 : reg4 = reg2;
19338 : reg3 = reg6;
19339 : operands[6] = operands[3];
19340 : }
19341 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19342 : STRIP_UNARY (operands[3])))
19343 : {
19344 : reg4 = reg6;
19345 : reg3 = reg1;
19346 : operands[6] = operands[4];
19347 : }
19348 : else
19349 : {
19350 : reg4 = reg6;
19351 : reg3 = reg2;
19352 : operands[6] = operands[4];
19353 : }
19354 :
19355 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19356 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19357 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19358 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19359 :
19360 : tmp1 = reg1 ^ reg2;
19361 : tmp2 = reg3 ^ reg4;
19362 : reg_mask = tmp1 & tmp2;
19363 : reg_mask &= 0xFF;
19364 :
19365 : operands[1] = STRIP_UNARY (operands[1]);
19366 : operands[2] = STRIP_UNARY (operands[2]);
19367 : operands[6] = STRIP_UNARY (operands[6]);
19368 : if (!register_operand (operands[2], V8SImode))
19369 : operands[2] = force_reg (V8SImode, operands[2]);
19370 : if (!register_operand (operands[6], V8SImode))
19371 : operands[6] = force_reg (V8SImode, operands[6]);
19372 : operands[5] = GEN_INT (reg_mask);
19373 : }
19374 : #undef DONE
19375 : #undef FAIL
19376 : static const uint8_t expand_encoding[] = {
19377 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19378 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19379 : 0x25
19380 : };
19381 : return complete_seq (expand_encoding, operands);
19382 : }
19383 :
19384 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19385 : extern rtx_insn *gen_split_1956 (rtx_insn *, rtx *);
19386 : rtx_insn *
19387 : gen_split_1956 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19388 : {
19389 : if (dump_file)
19390 : fprintf (dump_file, "Splitting with gen_split_1956 (sse.md:14142)\n");
19391 : start_sequence ();
19392 : #define FAIL return (end_sequence (), nullptr)
19393 : #define DONE return end_sequence ()
19394 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19395 : {
19396 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19397 : int reg6 = 0xF0;
19398 : int reg2 = 0xCC;
19399 : int reg1 = 0xAA;
19400 : int reg3 = 0;
19401 : int reg4 = 0;
19402 : int reg_mask, tmp1, tmp2;
19403 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19404 : STRIP_UNARY (operands[4])))
19405 : {
19406 : reg4 = reg1;
19407 : reg3 = reg6;
19408 : operands[6] = operands[3];
19409 : }
19410 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19411 : STRIP_UNARY (operands[4])))
19412 : {
19413 : reg4 = reg2;
19414 : reg3 = reg6;
19415 : operands[6] = operands[3];
19416 : }
19417 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19418 : STRIP_UNARY (operands[3])))
19419 : {
19420 : reg4 = reg6;
19421 : reg3 = reg1;
19422 : operands[6] = operands[4];
19423 : }
19424 : else
19425 : {
19426 : reg4 = reg6;
19427 : reg3 = reg2;
19428 : operands[6] = operands[4];
19429 : }
19430 :
19431 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19432 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19433 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19434 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19435 :
19436 : tmp1 = reg1 & reg2;
19437 : tmp2 = reg3 ^ reg4;
19438 : reg_mask = tmp1 | tmp2;
19439 : reg_mask &= 0xFF;
19440 :
19441 : operands[1] = STRIP_UNARY (operands[1]);
19442 : operands[2] = STRIP_UNARY (operands[2]);
19443 : operands[6] = STRIP_UNARY (operands[6]);
19444 : if (!register_operand (operands[2], V4SImode))
19445 : operands[2] = force_reg (V4SImode, operands[2]);
19446 : if (!register_operand (operands[6], V4SImode))
19447 : operands[6] = force_reg (V4SImode, operands[6]);
19448 : operands[5] = GEN_INT (reg_mask);
19449 : }
19450 : #undef DONE
19451 : #undef FAIL
19452 : static const uint8_t expand_encoding[] = {
19453 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19454 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19455 : 0x25
19456 : };
19457 : return complete_seq (expand_encoding, operands);
19458 : }
19459 :
19460 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19461 : extern rtx_insn *gen_split_1966 (rtx_insn *, rtx *);
19462 : rtx_insn *
19463 : gen_split_1966 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19464 : {
19465 : if (dump_file)
19466 : fprintf (dump_file, "Splitting with gen_split_1966 (sse.md:14142)\n");
19467 : start_sequence ();
19468 : #define FAIL return (end_sequence (), nullptr)
19469 : #define DONE return end_sequence ()
19470 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19471 : {
19472 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19473 : int reg6 = 0xF0;
19474 : int reg2 = 0xCC;
19475 : int reg1 = 0xAA;
19476 : int reg3 = 0;
19477 : int reg4 = 0;
19478 : int reg_mask, tmp1, tmp2;
19479 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19480 : STRIP_UNARY (operands[4])))
19481 : {
19482 : reg4 = reg1;
19483 : reg3 = reg6;
19484 : operands[6] = operands[3];
19485 : }
19486 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19487 : STRIP_UNARY (operands[4])))
19488 : {
19489 : reg4 = reg2;
19490 : reg3 = reg6;
19491 : operands[6] = operands[3];
19492 : }
19493 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19494 : STRIP_UNARY (operands[3])))
19495 : {
19496 : reg4 = reg6;
19497 : reg3 = reg1;
19498 : operands[6] = operands[4];
19499 : }
19500 : else
19501 : {
19502 : reg4 = reg6;
19503 : reg3 = reg2;
19504 : operands[6] = operands[4];
19505 : }
19506 :
19507 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19508 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19509 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19510 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19511 :
19512 : tmp1 = reg1 | reg2;
19513 : tmp2 = reg3 ^ reg4;
19514 : reg_mask = tmp1 ^ tmp2;
19515 : reg_mask &= 0xFF;
19516 :
19517 : operands[1] = STRIP_UNARY (operands[1]);
19518 : operands[2] = STRIP_UNARY (operands[2]);
19519 : operands[6] = STRIP_UNARY (operands[6]);
19520 : if (!register_operand (operands[2], V4SImode))
19521 : operands[2] = force_reg (V4SImode, operands[2]);
19522 : if (!register_operand (operands[6], V4SImode))
19523 : operands[6] = force_reg (V4SImode, operands[6]);
19524 : operands[5] = GEN_INT (reg_mask);
19525 : }
19526 : #undef DONE
19527 : #undef FAIL
19528 : static const uint8_t expand_encoding[] = {
19529 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19530 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19531 : 0x25
19532 : };
19533 : return complete_seq (expand_encoding, operands);
19534 : }
19535 :
19536 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19537 : extern rtx_insn *gen_split_1976 (rtx_insn *, rtx *);
19538 : rtx_insn *
19539 : gen_split_1976 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19540 : {
19541 : if (dump_file)
19542 : fprintf (dump_file, "Splitting with gen_split_1976 (sse.md:14142)\n");
19543 : start_sequence ();
19544 : #define FAIL return (end_sequence (), nullptr)
19545 : #define DONE return end_sequence ()
19546 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19547 : {
19548 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19549 : int reg6 = 0xF0;
19550 : int reg2 = 0xCC;
19551 : int reg1 = 0xAA;
19552 : int reg3 = 0;
19553 : int reg4 = 0;
19554 : int reg_mask, tmp1, tmp2;
19555 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19556 : STRIP_UNARY (operands[4])))
19557 : {
19558 : reg4 = reg1;
19559 : reg3 = reg6;
19560 : operands[6] = operands[3];
19561 : }
19562 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19563 : STRIP_UNARY (operands[4])))
19564 : {
19565 : reg4 = reg2;
19566 : reg3 = reg6;
19567 : operands[6] = operands[3];
19568 : }
19569 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19570 : STRIP_UNARY (operands[3])))
19571 : {
19572 : reg4 = reg6;
19573 : reg3 = reg1;
19574 : operands[6] = operands[4];
19575 : }
19576 : else
19577 : {
19578 : reg4 = reg6;
19579 : reg3 = reg2;
19580 : operands[6] = operands[4];
19581 : }
19582 :
19583 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19584 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19585 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19586 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19587 :
19588 : tmp1 = reg1 & reg2;
19589 : tmp2 = reg3 & reg4;
19590 : reg_mask = tmp1 & tmp2;
19591 : reg_mask &= 0xFF;
19592 :
19593 : operands[1] = STRIP_UNARY (operands[1]);
19594 : operands[2] = STRIP_UNARY (operands[2]);
19595 : operands[6] = STRIP_UNARY (operands[6]);
19596 : if (!register_operand (operands[2], V8DImode))
19597 : operands[2] = force_reg (V8DImode, operands[2]);
19598 : if (!register_operand (operands[6], V8DImode))
19599 : operands[6] = force_reg (V8DImode, operands[6]);
19600 : operands[5] = GEN_INT (reg_mask);
19601 : }
19602 : #undef DONE
19603 : #undef FAIL
19604 : static const uint8_t expand_encoding[] = {
19605 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19606 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19607 : 0x25
19608 : };
19609 : return complete_seq (expand_encoding, operands);
19610 : }
19611 :
19612 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19613 : extern rtx_insn *gen_split_1986 (rtx_insn *, rtx *);
19614 : rtx_insn *
19615 : gen_split_1986 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19616 : {
19617 : if (dump_file)
19618 : fprintf (dump_file, "Splitting with gen_split_1986 (sse.md:14142)\n");
19619 : start_sequence ();
19620 : #define FAIL return (end_sequence (), nullptr)
19621 : #define DONE return end_sequence ()
19622 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19623 : {
19624 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19625 : int reg6 = 0xF0;
19626 : int reg2 = 0xCC;
19627 : int reg1 = 0xAA;
19628 : int reg3 = 0;
19629 : int reg4 = 0;
19630 : int reg_mask, tmp1, tmp2;
19631 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19632 : STRIP_UNARY (operands[4])))
19633 : {
19634 : reg4 = reg1;
19635 : reg3 = reg6;
19636 : operands[6] = operands[3];
19637 : }
19638 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19639 : STRIP_UNARY (operands[4])))
19640 : {
19641 : reg4 = reg2;
19642 : reg3 = reg6;
19643 : operands[6] = operands[3];
19644 : }
19645 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19646 : STRIP_UNARY (operands[3])))
19647 : {
19648 : reg4 = reg6;
19649 : reg3 = reg1;
19650 : operands[6] = operands[4];
19651 : }
19652 : else
19653 : {
19654 : reg4 = reg6;
19655 : reg3 = reg2;
19656 : operands[6] = operands[4];
19657 : }
19658 :
19659 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19660 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19661 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19662 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19663 :
19664 : tmp1 = reg1 | reg2;
19665 : tmp2 = reg3 & reg4;
19666 : reg_mask = tmp1 | tmp2;
19667 : reg_mask &= 0xFF;
19668 :
19669 : operands[1] = STRIP_UNARY (operands[1]);
19670 : operands[2] = STRIP_UNARY (operands[2]);
19671 : operands[6] = STRIP_UNARY (operands[6]);
19672 : if (!register_operand (operands[2], V8DImode))
19673 : operands[2] = force_reg (V8DImode, operands[2]);
19674 : if (!register_operand (operands[6], V8DImode))
19675 : operands[6] = force_reg (V8DImode, operands[6]);
19676 : operands[5] = GEN_INT (reg_mask);
19677 : }
19678 : #undef DONE
19679 : #undef FAIL
19680 : static const uint8_t expand_encoding[] = {
19681 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19682 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19683 : 0x25
19684 : };
19685 : return complete_seq (expand_encoding, operands);
19686 : }
19687 :
19688 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19689 : extern rtx_insn *gen_split_1996 (rtx_insn *, rtx *);
19690 : rtx_insn *
19691 : gen_split_1996 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19692 : {
19693 : if (dump_file)
19694 : fprintf (dump_file, "Splitting with gen_split_1996 (sse.md:14142)\n");
19695 : start_sequence ();
19696 : #define FAIL return (end_sequence (), nullptr)
19697 : #define DONE return end_sequence ()
19698 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19699 : {
19700 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19701 : int reg6 = 0xF0;
19702 : int reg2 = 0xCC;
19703 : int reg1 = 0xAA;
19704 : int reg3 = 0;
19705 : int reg4 = 0;
19706 : int reg_mask, tmp1, tmp2;
19707 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19708 : STRIP_UNARY (operands[4])))
19709 : {
19710 : reg4 = reg1;
19711 : reg3 = reg6;
19712 : operands[6] = operands[3];
19713 : }
19714 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19715 : STRIP_UNARY (operands[4])))
19716 : {
19717 : reg4 = reg2;
19718 : reg3 = reg6;
19719 : operands[6] = operands[3];
19720 : }
19721 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19722 : STRIP_UNARY (operands[3])))
19723 : {
19724 : reg4 = reg6;
19725 : reg3 = reg1;
19726 : operands[6] = operands[4];
19727 : }
19728 : else
19729 : {
19730 : reg4 = reg6;
19731 : reg3 = reg2;
19732 : operands[6] = operands[4];
19733 : }
19734 :
19735 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19736 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19737 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19738 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19739 :
19740 : tmp1 = reg1 ^ reg2;
19741 : tmp2 = reg3 & reg4;
19742 : reg_mask = tmp1 ^ tmp2;
19743 : reg_mask &= 0xFF;
19744 :
19745 : operands[1] = STRIP_UNARY (operands[1]);
19746 : operands[2] = STRIP_UNARY (operands[2]);
19747 : operands[6] = STRIP_UNARY (operands[6]);
19748 : if (!register_operand (operands[2], V8DImode))
19749 : operands[2] = force_reg (V8DImode, operands[2]);
19750 : if (!register_operand (operands[6], V8DImode))
19751 : operands[6] = force_reg (V8DImode, operands[6]);
19752 : operands[5] = GEN_INT (reg_mask);
19753 : }
19754 : #undef DONE
19755 : #undef FAIL
19756 : static const uint8_t expand_encoding[] = {
19757 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19758 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19759 : 0x25
19760 : };
19761 : return complete_seq (expand_encoding, operands);
19762 : }
19763 :
19764 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19765 : extern rtx_insn *gen_split_2006 (rtx_insn *, rtx *);
19766 : rtx_insn *
19767 : gen_split_2006 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19768 : {
19769 : if (dump_file)
19770 : fprintf (dump_file, "Splitting with gen_split_2006 (sse.md:14142)\n");
19771 : start_sequence ();
19772 : #define FAIL return (end_sequence (), nullptr)
19773 : #define DONE return end_sequence ()
19774 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19775 : {
19776 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19777 : int reg6 = 0xF0;
19778 : int reg2 = 0xCC;
19779 : int reg1 = 0xAA;
19780 : int reg3 = 0;
19781 : int reg4 = 0;
19782 : int reg_mask, tmp1, tmp2;
19783 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19784 : STRIP_UNARY (operands[4])))
19785 : {
19786 : reg4 = reg1;
19787 : reg3 = reg6;
19788 : operands[6] = operands[3];
19789 : }
19790 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19791 : STRIP_UNARY (operands[4])))
19792 : {
19793 : reg4 = reg2;
19794 : reg3 = reg6;
19795 : operands[6] = operands[3];
19796 : }
19797 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19798 : STRIP_UNARY (operands[3])))
19799 : {
19800 : reg4 = reg6;
19801 : reg3 = reg1;
19802 : operands[6] = operands[4];
19803 : }
19804 : else
19805 : {
19806 : reg4 = reg6;
19807 : reg3 = reg2;
19808 : operands[6] = operands[4];
19809 : }
19810 :
19811 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19812 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19813 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19814 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19815 :
19816 : tmp1 = reg1 & reg2;
19817 : tmp2 = reg3 | reg4;
19818 : reg_mask = tmp1 & tmp2;
19819 : reg_mask &= 0xFF;
19820 :
19821 : operands[1] = STRIP_UNARY (operands[1]);
19822 : operands[2] = STRIP_UNARY (operands[2]);
19823 : operands[6] = STRIP_UNARY (operands[6]);
19824 : if (!register_operand (operands[2], V4DImode))
19825 : operands[2] = force_reg (V4DImode, operands[2]);
19826 : if (!register_operand (operands[6], V4DImode))
19827 : operands[6] = force_reg (V4DImode, operands[6]);
19828 : operands[5] = GEN_INT (reg_mask);
19829 : }
19830 : #undef DONE
19831 : #undef FAIL
19832 : static const uint8_t expand_encoding[] = {
19833 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19834 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19835 : 0x25
19836 : };
19837 : return complete_seq (expand_encoding, operands);
19838 : }
19839 :
19840 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19841 : extern rtx_insn *gen_split_2016 (rtx_insn *, rtx *);
19842 : rtx_insn *
19843 : gen_split_2016 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19844 : {
19845 : if (dump_file)
19846 : fprintf (dump_file, "Splitting with gen_split_2016 (sse.md:14142)\n");
19847 : start_sequence ();
19848 : #define FAIL return (end_sequence (), nullptr)
19849 : #define DONE return end_sequence ()
19850 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19851 : {
19852 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19853 : int reg6 = 0xF0;
19854 : int reg2 = 0xCC;
19855 : int reg1 = 0xAA;
19856 : int reg3 = 0;
19857 : int reg4 = 0;
19858 : int reg_mask, tmp1, tmp2;
19859 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19860 : STRIP_UNARY (operands[4])))
19861 : {
19862 : reg4 = reg1;
19863 : reg3 = reg6;
19864 : operands[6] = operands[3];
19865 : }
19866 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19867 : STRIP_UNARY (operands[4])))
19868 : {
19869 : reg4 = reg2;
19870 : reg3 = reg6;
19871 : operands[6] = operands[3];
19872 : }
19873 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19874 : STRIP_UNARY (operands[3])))
19875 : {
19876 : reg4 = reg6;
19877 : reg3 = reg1;
19878 : operands[6] = operands[4];
19879 : }
19880 : else
19881 : {
19882 : reg4 = reg6;
19883 : reg3 = reg2;
19884 : operands[6] = operands[4];
19885 : }
19886 :
19887 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19888 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19889 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19890 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19891 :
19892 : tmp1 = reg1 | reg2;
19893 : tmp2 = reg3 | reg4;
19894 : reg_mask = tmp1 | tmp2;
19895 : reg_mask &= 0xFF;
19896 :
19897 : operands[1] = STRIP_UNARY (operands[1]);
19898 : operands[2] = STRIP_UNARY (operands[2]);
19899 : operands[6] = STRIP_UNARY (operands[6]);
19900 : if (!register_operand (operands[2], V4DImode))
19901 : operands[2] = force_reg (V4DImode, operands[2]);
19902 : if (!register_operand (operands[6], V4DImode))
19903 : operands[6] = force_reg (V4DImode, operands[6]);
19904 : operands[5] = GEN_INT (reg_mask);
19905 : }
19906 : #undef DONE
19907 : #undef FAIL
19908 : static const uint8_t expand_encoding[] = {
19909 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19910 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19911 : 0x25
19912 : };
19913 : return complete_seq (expand_encoding, operands);
19914 : }
19915 :
19916 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19917 : extern rtx_insn *gen_split_2026 (rtx_insn *, rtx *);
19918 : rtx_insn *
19919 : gen_split_2026 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19920 : {
19921 : if (dump_file)
19922 : fprintf (dump_file, "Splitting with gen_split_2026 (sse.md:14142)\n");
19923 : start_sequence ();
19924 : #define FAIL return (end_sequence (), nullptr)
19925 : #define DONE return end_sequence ()
19926 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19927 : {
19928 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19929 : int reg6 = 0xF0;
19930 : int reg2 = 0xCC;
19931 : int reg1 = 0xAA;
19932 : int reg3 = 0;
19933 : int reg4 = 0;
19934 : int reg_mask, tmp1, tmp2;
19935 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19936 : STRIP_UNARY (operands[4])))
19937 : {
19938 : reg4 = reg1;
19939 : reg3 = reg6;
19940 : operands[6] = operands[3];
19941 : }
19942 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19943 : STRIP_UNARY (operands[4])))
19944 : {
19945 : reg4 = reg2;
19946 : reg3 = reg6;
19947 : operands[6] = operands[3];
19948 : }
19949 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19950 : STRIP_UNARY (operands[3])))
19951 : {
19952 : reg4 = reg6;
19953 : reg3 = reg1;
19954 : operands[6] = operands[4];
19955 : }
19956 : else
19957 : {
19958 : reg4 = reg6;
19959 : reg3 = reg2;
19960 : operands[6] = operands[4];
19961 : }
19962 :
19963 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19964 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19965 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19966 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19967 :
19968 : tmp1 = reg1 ^ reg2;
19969 : tmp2 = reg3 | reg4;
19970 : reg_mask = tmp1 ^ tmp2;
19971 : reg_mask &= 0xFF;
19972 :
19973 : operands[1] = STRIP_UNARY (operands[1]);
19974 : operands[2] = STRIP_UNARY (operands[2]);
19975 : operands[6] = STRIP_UNARY (operands[6]);
19976 : if (!register_operand (operands[2], V4DImode))
19977 : operands[2] = force_reg (V4DImode, operands[2]);
19978 : if (!register_operand (operands[6], V4DImode))
19979 : operands[6] = force_reg (V4DImode, operands[6]);
19980 : operands[5] = GEN_INT (reg_mask);
19981 : }
19982 : #undef DONE
19983 : #undef FAIL
19984 : static const uint8_t expand_encoding[] = {
19985 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19986 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19987 : 0x25
19988 : };
19989 : return complete_seq (expand_encoding, operands);
19990 : }
19991 :
19992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19993 : extern rtx_insn *gen_split_2036 (rtx_insn *, rtx *);
19994 : rtx_insn *
19995 : gen_split_2036 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19996 : {
19997 : if (dump_file)
19998 : fprintf (dump_file, "Splitting with gen_split_2036 (sse.md:14142)\n");
19999 : start_sequence ();
20000 : #define FAIL return (end_sequence (), nullptr)
20001 : #define DONE return end_sequence ()
20002 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20003 : {
20004 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20005 : int reg6 = 0xF0;
20006 : int reg2 = 0xCC;
20007 : int reg1 = 0xAA;
20008 : int reg3 = 0;
20009 : int reg4 = 0;
20010 : int reg_mask, tmp1, tmp2;
20011 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20012 : STRIP_UNARY (operands[4])))
20013 : {
20014 : reg4 = reg1;
20015 : reg3 = reg6;
20016 : operands[6] = operands[3];
20017 : }
20018 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20019 : STRIP_UNARY (operands[4])))
20020 : {
20021 : reg4 = reg2;
20022 : reg3 = reg6;
20023 : operands[6] = operands[3];
20024 : }
20025 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20026 : STRIP_UNARY (operands[3])))
20027 : {
20028 : reg4 = reg6;
20029 : reg3 = reg1;
20030 : operands[6] = operands[4];
20031 : }
20032 : else
20033 : {
20034 : reg4 = reg6;
20035 : reg3 = reg2;
20036 : operands[6] = operands[4];
20037 : }
20038 :
20039 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20040 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20041 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20042 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20043 :
20044 : tmp1 = reg1 & reg2;
20045 : tmp2 = reg3 ^ reg4;
20046 : reg_mask = tmp1 & tmp2;
20047 : reg_mask &= 0xFF;
20048 :
20049 : operands[1] = STRIP_UNARY (operands[1]);
20050 : operands[2] = STRIP_UNARY (operands[2]);
20051 : operands[6] = STRIP_UNARY (operands[6]);
20052 : if (!register_operand (operands[2], V2DImode))
20053 : operands[2] = force_reg (V2DImode, operands[2]);
20054 : if (!register_operand (operands[6], V2DImode))
20055 : operands[6] = force_reg (V2DImode, operands[6]);
20056 : operands[5] = GEN_INT (reg_mask);
20057 : }
20058 : #undef DONE
20059 : #undef FAIL
20060 : static const uint8_t expand_encoding[] = {
20061 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20062 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20063 : 0x25
20064 : };
20065 : return complete_seq (expand_encoding, operands);
20066 : }
20067 :
20068 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20069 : extern rtx_insn *gen_split_2046 (rtx_insn *, rtx *);
20070 : rtx_insn *
20071 : gen_split_2046 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20072 : {
20073 : if (dump_file)
20074 : fprintf (dump_file, "Splitting with gen_split_2046 (sse.md:14142)\n");
20075 : start_sequence ();
20076 : #define FAIL return (end_sequence (), nullptr)
20077 : #define DONE return end_sequence ()
20078 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20079 : {
20080 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20081 : int reg6 = 0xF0;
20082 : int reg2 = 0xCC;
20083 : int reg1 = 0xAA;
20084 : int reg3 = 0;
20085 : int reg4 = 0;
20086 : int reg_mask, tmp1, tmp2;
20087 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20088 : STRIP_UNARY (operands[4])))
20089 : {
20090 : reg4 = reg1;
20091 : reg3 = reg6;
20092 : operands[6] = operands[3];
20093 : }
20094 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20095 : STRIP_UNARY (operands[4])))
20096 : {
20097 : reg4 = reg2;
20098 : reg3 = reg6;
20099 : operands[6] = operands[3];
20100 : }
20101 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20102 : STRIP_UNARY (operands[3])))
20103 : {
20104 : reg4 = reg6;
20105 : reg3 = reg1;
20106 : operands[6] = operands[4];
20107 : }
20108 : else
20109 : {
20110 : reg4 = reg6;
20111 : reg3 = reg2;
20112 : operands[6] = operands[4];
20113 : }
20114 :
20115 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20116 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20117 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20118 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20119 :
20120 : tmp1 = reg1 | reg2;
20121 : tmp2 = reg3 ^ reg4;
20122 : reg_mask = tmp1 | tmp2;
20123 : reg_mask &= 0xFF;
20124 :
20125 : operands[1] = STRIP_UNARY (operands[1]);
20126 : operands[2] = STRIP_UNARY (operands[2]);
20127 : operands[6] = STRIP_UNARY (operands[6]);
20128 : if (!register_operand (operands[2], V2DImode))
20129 : operands[2] = force_reg (V2DImode, operands[2]);
20130 : if (!register_operand (operands[6], V2DImode))
20131 : operands[6] = force_reg (V2DImode, operands[6]);
20132 : operands[5] = GEN_INT (reg_mask);
20133 : }
20134 : #undef DONE
20135 : #undef FAIL
20136 : static const uint8_t expand_encoding[] = {
20137 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20138 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20139 : 0x25
20140 : };
20141 : return complete_seq (expand_encoding, operands);
20142 : }
20143 :
20144 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20145 : extern rtx_insn *gen_split_2056 (rtx_insn *, rtx *);
20146 : rtx_insn *
20147 : gen_split_2056 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20148 : {
20149 : if (dump_file)
20150 : fprintf (dump_file, "Splitting with gen_split_2056 (sse.md:14142)\n");
20151 : start_sequence ();
20152 : #define FAIL return (end_sequence (), nullptr)
20153 : #define DONE return end_sequence ()
20154 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20155 : {
20156 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20157 : int reg6 = 0xF0;
20158 : int reg2 = 0xCC;
20159 : int reg1 = 0xAA;
20160 : int reg3 = 0;
20161 : int reg4 = 0;
20162 : int reg_mask, tmp1, tmp2;
20163 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20164 : STRIP_UNARY (operands[4])))
20165 : {
20166 : reg4 = reg1;
20167 : reg3 = reg6;
20168 : operands[6] = operands[3];
20169 : }
20170 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20171 : STRIP_UNARY (operands[4])))
20172 : {
20173 : reg4 = reg2;
20174 : reg3 = reg6;
20175 : operands[6] = operands[3];
20176 : }
20177 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20178 : STRIP_UNARY (operands[3])))
20179 : {
20180 : reg4 = reg6;
20181 : reg3 = reg1;
20182 : operands[6] = operands[4];
20183 : }
20184 : else
20185 : {
20186 : reg4 = reg6;
20187 : reg3 = reg2;
20188 : operands[6] = operands[4];
20189 : }
20190 :
20191 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20192 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20193 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20194 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20195 :
20196 : tmp1 = reg1 ^ reg2;
20197 : tmp2 = reg3 ^ reg4;
20198 : reg_mask = tmp1 ^ tmp2;
20199 : reg_mask &= 0xFF;
20200 :
20201 : operands[1] = STRIP_UNARY (operands[1]);
20202 : operands[2] = STRIP_UNARY (operands[2]);
20203 : operands[6] = STRIP_UNARY (operands[6]);
20204 : if (!register_operand (operands[2], V2DImode))
20205 : operands[2] = force_reg (V2DImode, operands[2]);
20206 : if (!register_operand (operands[6], V2DImode))
20207 : operands[6] = force_reg (V2DImode, operands[6]);
20208 : operands[5] = GEN_INT (reg_mask);
20209 : }
20210 : #undef DONE
20211 : #undef FAIL
20212 : static const uint8_t expand_encoding[] = {
20213 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20214 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20215 : 0x25
20216 : };
20217 : return complete_seq (expand_encoding, operands);
20218 : }
20219 :
20220 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20221 : extern rtx_insn *gen_split_2066 (rtx_insn *, rtx *);
20222 : rtx_insn *
20223 : gen_split_2066 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20224 : {
20225 : if (dump_file)
20226 : fprintf (dump_file, "Splitting with gen_split_2066 (sse.md:14142)\n");
20227 : start_sequence ();
20228 : #define FAIL return (end_sequence (), nullptr)
20229 : #define DONE return end_sequence ()
20230 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20231 : {
20232 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20233 : int reg6 = 0xF0;
20234 : int reg2 = 0xCC;
20235 : int reg1 = 0xAA;
20236 : int reg3 = 0;
20237 : int reg4 = 0;
20238 : int reg_mask, tmp1, tmp2;
20239 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20240 : STRIP_UNARY (operands[4])))
20241 : {
20242 : reg4 = reg1;
20243 : reg3 = reg6;
20244 : operands[6] = operands[3];
20245 : }
20246 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20247 : STRIP_UNARY (operands[4])))
20248 : {
20249 : reg4 = reg2;
20250 : reg3 = reg6;
20251 : operands[6] = operands[3];
20252 : }
20253 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20254 : STRIP_UNARY (operands[3])))
20255 : {
20256 : reg4 = reg6;
20257 : reg3 = reg1;
20258 : operands[6] = operands[4];
20259 : }
20260 : else
20261 : {
20262 : reg4 = reg6;
20263 : reg3 = reg2;
20264 : operands[6] = operands[4];
20265 : }
20266 :
20267 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20268 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20269 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20270 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20271 :
20272 : tmp1 = reg1 | reg2;
20273 : tmp2 = reg3 & reg4;
20274 : reg_mask = tmp1 & tmp2;
20275 : reg_mask &= 0xFF;
20276 :
20277 : operands[1] = STRIP_UNARY (operands[1]);
20278 : operands[2] = STRIP_UNARY (operands[2]);
20279 : operands[6] = STRIP_UNARY (operands[6]);
20280 : if (!register_operand (operands[2], V32HFmode))
20281 : operands[2] = force_reg (V32HFmode, operands[2]);
20282 : if (!register_operand (operands[6], V32HFmode))
20283 : operands[6] = force_reg (V32HFmode, operands[6]);
20284 : operands[5] = GEN_INT (reg_mask);
20285 : }
20286 : #undef DONE
20287 : #undef FAIL
20288 : static const uint8_t expand_encoding[] = {
20289 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20290 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20291 : 0x25
20292 : };
20293 : return complete_seq (expand_encoding, operands);
20294 : }
20295 :
20296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20297 : extern rtx_insn *gen_split_2076 (rtx_insn *, rtx *);
20298 : rtx_insn *
20299 : gen_split_2076 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20300 : {
20301 : if (dump_file)
20302 : fprintf (dump_file, "Splitting with gen_split_2076 (sse.md:14142)\n");
20303 : start_sequence ();
20304 : #define FAIL return (end_sequence (), nullptr)
20305 : #define DONE return end_sequence ()
20306 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20307 : {
20308 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20309 : int reg6 = 0xF0;
20310 : int reg2 = 0xCC;
20311 : int reg1 = 0xAA;
20312 : int reg3 = 0;
20313 : int reg4 = 0;
20314 : int reg_mask, tmp1, tmp2;
20315 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20316 : STRIP_UNARY (operands[4])))
20317 : {
20318 : reg4 = reg1;
20319 : reg3 = reg6;
20320 : operands[6] = operands[3];
20321 : }
20322 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20323 : STRIP_UNARY (operands[4])))
20324 : {
20325 : reg4 = reg2;
20326 : reg3 = reg6;
20327 : operands[6] = operands[3];
20328 : }
20329 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20330 : STRIP_UNARY (operands[3])))
20331 : {
20332 : reg4 = reg6;
20333 : reg3 = reg1;
20334 : operands[6] = operands[4];
20335 : }
20336 : else
20337 : {
20338 : reg4 = reg6;
20339 : reg3 = reg2;
20340 : operands[6] = operands[4];
20341 : }
20342 :
20343 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20344 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20345 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20346 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20347 :
20348 : tmp1 = reg1 ^ reg2;
20349 : tmp2 = reg3 & reg4;
20350 : reg_mask = tmp1 | tmp2;
20351 : reg_mask &= 0xFF;
20352 :
20353 : operands[1] = STRIP_UNARY (operands[1]);
20354 : operands[2] = STRIP_UNARY (operands[2]);
20355 : operands[6] = STRIP_UNARY (operands[6]);
20356 : if (!register_operand (operands[2], V32HFmode))
20357 : operands[2] = force_reg (V32HFmode, operands[2]);
20358 : if (!register_operand (operands[6], V32HFmode))
20359 : operands[6] = force_reg (V32HFmode, operands[6]);
20360 : operands[5] = GEN_INT (reg_mask);
20361 : }
20362 : #undef DONE
20363 : #undef FAIL
20364 : static const uint8_t expand_encoding[] = {
20365 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20366 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20367 : 0x25
20368 : };
20369 : return complete_seq (expand_encoding, operands);
20370 : }
20371 :
20372 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20373 : extern rtx_insn *gen_split_2086 (rtx_insn *, rtx *);
20374 : rtx_insn *
20375 : gen_split_2086 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20376 : {
20377 : if (dump_file)
20378 : fprintf (dump_file, "Splitting with gen_split_2086 (sse.md:14142)\n");
20379 : start_sequence ();
20380 : #define FAIL return (end_sequence (), nullptr)
20381 : #define DONE return end_sequence ()
20382 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20383 : {
20384 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20385 : int reg6 = 0xF0;
20386 : int reg2 = 0xCC;
20387 : int reg1 = 0xAA;
20388 : int reg3 = 0;
20389 : int reg4 = 0;
20390 : int reg_mask, tmp1, tmp2;
20391 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20392 : STRIP_UNARY (operands[4])))
20393 : {
20394 : reg4 = reg1;
20395 : reg3 = reg6;
20396 : operands[6] = operands[3];
20397 : }
20398 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20399 : STRIP_UNARY (operands[4])))
20400 : {
20401 : reg4 = reg2;
20402 : reg3 = reg6;
20403 : operands[6] = operands[3];
20404 : }
20405 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20406 : STRIP_UNARY (operands[3])))
20407 : {
20408 : reg4 = reg6;
20409 : reg3 = reg1;
20410 : operands[6] = operands[4];
20411 : }
20412 : else
20413 : {
20414 : reg4 = reg6;
20415 : reg3 = reg2;
20416 : operands[6] = operands[4];
20417 : }
20418 :
20419 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20420 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20421 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20422 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20423 :
20424 : tmp1 = reg1 & reg2;
20425 : tmp2 = reg3 & reg4;
20426 : reg_mask = tmp1 ^ tmp2;
20427 : reg_mask &= 0xFF;
20428 :
20429 : operands[1] = STRIP_UNARY (operands[1]);
20430 : operands[2] = STRIP_UNARY (operands[2]);
20431 : operands[6] = STRIP_UNARY (operands[6]);
20432 : if (!register_operand (operands[2], V16HFmode))
20433 : operands[2] = force_reg (V16HFmode, operands[2]);
20434 : if (!register_operand (operands[6], V16HFmode))
20435 : operands[6] = force_reg (V16HFmode, operands[6]);
20436 : operands[5] = GEN_INT (reg_mask);
20437 : }
20438 : #undef DONE
20439 : #undef FAIL
20440 : static const uint8_t expand_encoding[] = {
20441 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20442 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20443 : 0x25
20444 : };
20445 : return complete_seq (expand_encoding, operands);
20446 : }
20447 :
20448 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20449 : extern rtx_insn *gen_split_2096 (rtx_insn *, rtx *);
20450 : rtx_insn *
20451 : gen_split_2096 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20452 : {
20453 : if (dump_file)
20454 : fprintf (dump_file, "Splitting with gen_split_2096 (sse.md:14142)\n");
20455 : start_sequence ();
20456 : #define FAIL return (end_sequence (), nullptr)
20457 : #define DONE return end_sequence ()
20458 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20459 : {
20460 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20461 : int reg6 = 0xF0;
20462 : int reg2 = 0xCC;
20463 : int reg1 = 0xAA;
20464 : int reg3 = 0;
20465 : int reg4 = 0;
20466 : int reg_mask, tmp1, tmp2;
20467 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20468 : STRIP_UNARY (operands[4])))
20469 : {
20470 : reg4 = reg1;
20471 : reg3 = reg6;
20472 : operands[6] = operands[3];
20473 : }
20474 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20475 : STRIP_UNARY (operands[4])))
20476 : {
20477 : reg4 = reg2;
20478 : reg3 = reg6;
20479 : operands[6] = operands[3];
20480 : }
20481 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20482 : STRIP_UNARY (operands[3])))
20483 : {
20484 : reg4 = reg6;
20485 : reg3 = reg1;
20486 : operands[6] = operands[4];
20487 : }
20488 : else
20489 : {
20490 : reg4 = reg6;
20491 : reg3 = reg2;
20492 : operands[6] = operands[4];
20493 : }
20494 :
20495 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20496 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20497 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20498 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20499 :
20500 : tmp1 = reg1 | reg2;
20501 : tmp2 = reg3 | reg4;
20502 : reg_mask = tmp1 & tmp2;
20503 : reg_mask &= 0xFF;
20504 :
20505 : operands[1] = STRIP_UNARY (operands[1]);
20506 : operands[2] = STRIP_UNARY (operands[2]);
20507 : operands[6] = STRIP_UNARY (operands[6]);
20508 : if (!register_operand (operands[2], V16HFmode))
20509 : operands[2] = force_reg (V16HFmode, operands[2]);
20510 : if (!register_operand (operands[6], V16HFmode))
20511 : operands[6] = force_reg (V16HFmode, operands[6]);
20512 : operands[5] = GEN_INT (reg_mask);
20513 : }
20514 : #undef DONE
20515 : #undef FAIL
20516 : static const uint8_t expand_encoding[] = {
20517 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20518 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20519 : 0x25
20520 : };
20521 : return complete_seq (expand_encoding, operands);
20522 : }
20523 :
20524 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20525 : extern rtx_insn *gen_split_2106 (rtx_insn *, rtx *);
20526 : rtx_insn *
20527 : gen_split_2106 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20528 : {
20529 : if (dump_file)
20530 : fprintf (dump_file, "Splitting with gen_split_2106 (sse.md:14142)\n");
20531 : start_sequence ();
20532 : #define FAIL return (end_sequence (), nullptr)
20533 : #define DONE return end_sequence ()
20534 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20535 : {
20536 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20537 : int reg6 = 0xF0;
20538 : int reg2 = 0xCC;
20539 : int reg1 = 0xAA;
20540 : int reg3 = 0;
20541 : int reg4 = 0;
20542 : int reg_mask, tmp1, tmp2;
20543 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20544 : STRIP_UNARY (operands[4])))
20545 : {
20546 : reg4 = reg1;
20547 : reg3 = reg6;
20548 : operands[6] = operands[3];
20549 : }
20550 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20551 : STRIP_UNARY (operands[4])))
20552 : {
20553 : reg4 = reg2;
20554 : reg3 = reg6;
20555 : operands[6] = operands[3];
20556 : }
20557 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20558 : STRIP_UNARY (operands[3])))
20559 : {
20560 : reg4 = reg6;
20561 : reg3 = reg1;
20562 : operands[6] = operands[4];
20563 : }
20564 : else
20565 : {
20566 : reg4 = reg6;
20567 : reg3 = reg2;
20568 : operands[6] = operands[4];
20569 : }
20570 :
20571 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20572 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20573 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20574 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20575 :
20576 : tmp1 = reg1 ^ reg2;
20577 : tmp2 = reg3 | reg4;
20578 : reg_mask = tmp1 | tmp2;
20579 : reg_mask &= 0xFF;
20580 :
20581 : operands[1] = STRIP_UNARY (operands[1]);
20582 : operands[2] = STRIP_UNARY (operands[2]);
20583 : operands[6] = STRIP_UNARY (operands[6]);
20584 : if (!register_operand (operands[2], V16HFmode))
20585 : operands[2] = force_reg (V16HFmode, operands[2]);
20586 : if (!register_operand (operands[6], V16HFmode))
20587 : operands[6] = force_reg (V16HFmode, operands[6]);
20588 : operands[5] = GEN_INT (reg_mask);
20589 : }
20590 : #undef DONE
20591 : #undef FAIL
20592 : static const uint8_t expand_encoding[] = {
20593 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20594 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20595 : 0x25
20596 : };
20597 : return complete_seq (expand_encoding, operands);
20598 : }
20599 :
20600 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20601 : extern rtx_insn *gen_split_2116 (rtx_insn *, rtx *);
20602 : rtx_insn *
20603 : gen_split_2116 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20604 : {
20605 : if (dump_file)
20606 : fprintf (dump_file, "Splitting with gen_split_2116 (sse.md:14142)\n");
20607 : start_sequence ();
20608 : #define FAIL return (end_sequence (), nullptr)
20609 : #define DONE return end_sequence ()
20610 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20611 : {
20612 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20613 : int reg6 = 0xF0;
20614 : int reg2 = 0xCC;
20615 : int reg1 = 0xAA;
20616 : int reg3 = 0;
20617 : int reg4 = 0;
20618 : int reg_mask, tmp1, tmp2;
20619 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20620 : STRIP_UNARY (operands[4])))
20621 : {
20622 : reg4 = reg1;
20623 : reg3 = reg6;
20624 : operands[6] = operands[3];
20625 : }
20626 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20627 : STRIP_UNARY (operands[4])))
20628 : {
20629 : reg4 = reg2;
20630 : reg3 = reg6;
20631 : operands[6] = operands[3];
20632 : }
20633 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20634 : STRIP_UNARY (operands[3])))
20635 : {
20636 : reg4 = reg6;
20637 : reg3 = reg1;
20638 : operands[6] = operands[4];
20639 : }
20640 : else
20641 : {
20642 : reg4 = reg6;
20643 : reg3 = reg2;
20644 : operands[6] = operands[4];
20645 : }
20646 :
20647 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20648 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20649 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20650 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20651 :
20652 : tmp1 = reg1 & reg2;
20653 : tmp2 = reg3 | reg4;
20654 : reg_mask = tmp1 ^ tmp2;
20655 : reg_mask &= 0xFF;
20656 :
20657 : operands[1] = STRIP_UNARY (operands[1]);
20658 : operands[2] = STRIP_UNARY (operands[2]);
20659 : operands[6] = STRIP_UNARY (operands[6]);
20660 : if (!register_operand (operands[2], V8HFmode))
20661 : operands[2] = force_reg (V8HFmode, operands[2]);
20662 : if (!register_operand (operands[6], V8HFmode))
20663 : operands[6] = force_reg (V8HFmode, operands[6]);
20664 : operands[5] = GEN_INT (reg_mask);
20665 : }
20666 : #undef DONE
20667 : #undef FAIL
20668 : static const uint8_t expand_encoding[] = {
20669 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20670 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20671 : 0x25
20672 : };
20673 : return complete_seq (expand_encoding, operands);
20674 : }
20675 :
20676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20677 : extern rtx_insn *gen_split_2126 (rtx_insn *, rtx *);
20678 : rtx_insn *
20679 : gen_split_2126 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20680 : {
20681 : if (dump_file)
20682 : fprintf (dump_file, "Splitting with gen_split_2126 (sse.md:14142)\n");
20683 : start_sequence ();
20684 : #define FAIL return (end_sequence (), nullptr)
20685 : #define DONE return end_sequence ()
20686 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20687 : {
20688 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20689 : int reg6 = 0xF0;
20690 : int reg2 = 0xCC;
20691 : int reg1 = 0xAA;
20692 : int reg3 = 0;
20693 : int reg4 = 0;
20694 : int reg_mask, tmp1, tmp2;
20695 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20696 : STRIP_UNARY (operands[4])))
20697 : {
20698 : reg4 = reg1;
20699 : reg3 = reg6;
20700 : operands[6] = operands[3];
20701 : }
20702 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20703 : STRIP_UNARY (operands[4])))
20704 : {
20705 : reg4 = reg2;
20706 : reg3 = reg6;
20707 : operands[6] = operands[3];
20708 : }
20709 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20710 : STRIP_UNARY (operands[3])))
20711 : {
20712 : reg4 = reg6;
20713 : reg3 = reg1;
20714 : operands[6] = operands[4];
20715 : }
20716 : else
20717 : {
20718 : reg4 = reg6;
20719 : reg3 = reg2;
20720 : operands[6] = operands[4];
20721 : }
20722 :
20723 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20724 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20725 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20726 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20727 :
20728 : tmp1 = reg1 | reg2;
20729 : tmp2 = reg3 ^ reg4;
20730 : reg_mask = tmp1 & tmp2;
20731 : reg_mask &= 0xFF;
20732 :
20733 : operands[1] = STRIP_UNARY (operands[1]);
20734 : operands[2] = STRIP_UNARY (operands[2]);
20735 : operands[6] = STRIP_UNARY (operands[6]);
20736 : if (!register_operand (operands[2], V8HFmode))
20737 : operands[2] = force_reg (V8HFmode, operands[2]);
20738 : if (!register_operand (operands[6], V8HFmode))
20739 : operands[6] = force_reg (V8HFmode, operands[6]);
20740 : operands[5] = GEN_INT (reg_mask);
20741 : }
20742 : #undef DONE
20743 : #undef FAIL
20744 : static const uint8_t expand_encoding[] = {
20745 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20746 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20747 : 0x25
20748 : };
20749 : return complete_seq (expand_encoding, operands);
20750 : }
20751 :
20752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20753 : extern rtx_insn *gen_split_2136 (rtx_insn *, rtx *);
20754 : rtx_insn *
20755 : gen_split_2136 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20756 : {
20757 : if (dump_file)
20758 : fprintf (dump_file, "Splitting with gen_split_2136 (sse.md:14142)\n");
20759 : start_sequence ();
20760 : #define FAIL return (end_sequence (), nullptr)
20761 : #define DONE return end_sequence ()
20762 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20763 : {
20764 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20765 : int reg6 = 0xF0;
20766 : int reg2 = 0xCC;
20767 : int reg1 = 0xAA;
20768 : int reg3 = 0;
20769 : int reg4 = 0;
20770 : int reg_mask, tmp1, tmp2;
20771 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20772 : STRIP_UNARY (operands[4])))
20773 : {
20774 : reg4 = reg1;
20775 : reg3 = reg6;
20776 : operands[6] = operands[3];
20777 : }
20778 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20779 : STRIP_UNARY (operands[4])))
20780 : {
20781 : reg4 = reg2;
20782 : reg3 = reg6;
20783 : operands[6] = operands[3];
20784 : }
20785 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20786 : STRIP_UNARY (operands[3])))
20787 : {
20788 : reg4 = reg6;
20789 : reg3 = reg1;
20790 : operands[6] = operands[4];
20791 : }
20792 : else
20793 : {
20794 : reg4 = reg6;
20795 : reg3 = reg2;
20796 : operands[6] = operands[4];
20797 : }
20798 :
20799 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20800 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20801 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20802 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20803 :
20804 : tmp1 = reg1 ^ reg2;
20805 : tmp2 = reg3 ^ reg4;
20806 : reg_mask = tmp1 | tmp2;
20807 : reg_mask &= 0xFF;
20808 :
20809 : operands[1] = STRIP_UNARY (operands[1]);
20810 : operands[2] = STRIP_UNARY (operands[2]);
20811 : operands[6] = STRIP_UNARY (operands[6]);
20812 : if (!register_operand (operands[2], V8HFmode))
20813 : operands[2] = force_reg (V8HFmode, operands[2]);
20814 : if (!register_operand (operands[6], V8HFmode))
20815 : operands[6] = force_reg (V8HFmode, operands[6]);
20816 : operands[5] = GEN_INT (reg_mask);
20817 : }
20818 : #undef DONE
20819 : #undef FAIL
20820 : static const uint8_t expand_encoding[] = {
20821 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20822 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20823 : 0x25
20824 : };
20825 : return complete_seq (expand_encoding, operands);
20826 : }
20827 :
20828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20829 : extern rtx_insn *gen_split_2146 (rtx_insn *, rtx *);
20830 : rtx_insn *
20831 : gen_split_2146 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20832 : {
20833 : if (dump_file)
20834 : fprintf (dump_file, "Splitting with gen_split_2146 (sse.md:14142)\n");
20835 : start_sequence ();
20836 : #define FAIL return (end_sequence (), nullptr)
20837 : #define DONE return end_sequence ()
20838 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20839 : {
20840 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20841 : int reg6 = 0xF0;
20842 : int reg2 = 0xCC;
20843 : int reg1 = 0xAA;
20844 : int reg3 = 0;
20845 : int reg4 = 0;
20846 : int reg_mask, tmp1, tmp2;
20847 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20848 : STRIP_UNARY (operands[4])))
20849 : {
20850 : reg4 = reg1;
20851 : reg3 = reg6;
20852 : operands[6] = operands[3];
20853 : }
20854 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20855 : STRIP_UNARY (operands[4])))
20856 : {
20857 : reg4 = reg2;
20858 : reg3 = reg6;
20859 : operands[6] = operands[3];
20860 : }
20861 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20862 : STRIP_UNARY (operands[3])))
20863 : {
20864 : reg4 = reg6;
20865 : reg3 = reg1;
20866 : operands[6] = operands[4];
20867 : }
20868 : else
20869 : {
20870 : reg4 = reg6;
20871 : reg3 = reg2;
20872 : operands[6] = operands[4];
20873 : }
20874 :
20875 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20876 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20877 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20878 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20879 :
20880 : tmp1 = reg1 & reg2;
20881 : tmp2 = reg3 ^ reg4;
20882 : reg_mask = tmp1 ^ tmp2;
20883 : reg_mask &= 0xFF;
20884 :
20885 : operands[1] = STRIP_UNARY (operands[1]);
20886 : operands[2] = STRIP_UNARY (operands[2]);
20887 : operands[6] = STRIP_UNARY (operands[6]);
20888 : if (!register_operand (operands[2], V32BFmode))
20889 : operands[2] = force_reg (V32BFmode, operands[2]);
20890 : if (!register_operand (operands[6], V32BFmode))
20891 : operands[6] = force_reg (V32BFmode, operands[6]);
20892 : operands[5] = GEN_INT (reg_mask);
20893 : }
20894 : #undef DONE
20895 : #undef FAIL
20896 : static const uint8_t expand_encoding[] = {
20897 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20898 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20899 : 0x25
20900 : };
20901 : return complete_seq (expand_encoding, operands);
20902 : }
20903 :
20904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20905 : extern rtx_insn *gen_split_2156 (rtx_insn *, rtx *);
20906 : rtx_insn *
20907 : gen_split_2156 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20908 : {
20909 : if (dump_file)
20910 : fprintf (dump_file, "Splitting with gen_split_2156 (sse.md:14142)\n");
20911 : start_sequence ();
20912 : #define FAIL return (end_sequence (), nullptr)
20913 : #define DONE return end_sequence ()
20914 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20915 : {
20916 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20917 : int reg6 = 0xF0;
20918 : int reg2 = 0xCC;
20919 : int reg1 = 0xAA;
20920 : int reg3 = 0;
20921 : int reg4 = 0;
20922 : int reg_mask, tmp1, tmp2;
20923 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20924 : STRIP_UNARY (operands[4])))
20925 : {
20926 : reg4 = reg1;
20927 : reg3 = reg6;
20928 : operands[6] = operands[3];
20929 : }
20930 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20931 : STRIP_UNARY (operands[4])))
20932 : {
20933 : reg4 = reg2;
20934 : reg3 = reg6;
20935 : operands[6] = operands[3];
20936 : }
20937 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20938 : STRIP_UNARY (operands[3])))
20939 : {
20940 : reg4 = reg6;
20941 : reg3 = reg1;
20942 : operands[6] = operands[4];
20943 : }
20944 : else
20945 : {
20946 : reg4 = reg6;
20947 : reg3 = reg2;
20948 : operands[6] = operands[4];
20949 : }
20950 :
20951 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20952 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20953 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20954 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20955 :
20956 : tmp1 = reg1 ^ reg2;
20957 : tmp2 = reg3 & reg4;
20958 : reg_mask = tmp1 & tmp2;
20959 : reg_mask &= 0xFF;
20960 :
20961 : operands[1] = STRIP_UNARY (operands[1]);
20962 : operands[2] = STRIP_UNARY (operands[2]);
20963 : operands[6] = STRIP_UNARY (operands[6]);
20964 : if (!register_operand (operands[2], V32BFmode))
20965 : operands[2] = force_reg (V32BFmode, operands[2]);
20966 : if (!register_operand (operands[6], V32BFmode))
20967 : operands[6] = force_reg (V32BFmode, operands[6]);
20968 : operands[5] = GEN_INT (reg_mask);
20969 : }
20970 : #undef DONE
20971 : #undef FAIL
20972 : static const uint8_t expand_encoding[] = {
20973 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20974 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20975 : 0x25
20976 : };
20977 : return complete_seq (expand_encoding, operands);
20978 : }
20979 :
20980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20981 : extern rtx_insn *gen_split_2166 (rtx_insn *, rtx *);
20982 : rtx_insn *
20983 : gen_split_2166 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20984 : {
20985 : if (dump_file)
20986 : fprintf (dump_file, "Splitting with gen_split_2166 (sse.md:14142)\n");
20987 : start_sequence ();
20988 : #define FAIL return (end_sequence (), nullptr)
20989 : #define DONE return end_sequence ()
20990 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20991 : {
20992 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20993 : int reg6 = 0xF0;
20994 : int reg2 = 0xCC;
20995 : int reg1 = 0xAA;
20996 : int reg3 = 0;
20997 : int reg4 = 0;
20998 : int reg_mask, tmp1, tmp2;
20999 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21000 : STRIP_UNARY (operands[4])))
21001 : {
21002 : reg4 = reg1;
21003 : reg3 = reg6;
21004 : operands[6] = operands[3];
21005 : }
21006 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21007 : STRIP_UNARY (operands[4])))
21008 : {
21009 : reg4 = reg2;
21010 : reg3 = reg6;
21011 : operands[6] = operands[3];
21012 : }
21013 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21014 : STRIP_UNARY (operands[3])))
21015 : {
21016 : reg4 = reg6;
21017 : reg3 = reg1;
21018 : operands[6] = operands[4];
21019 : }
21020 : else
21021 : {
21022 : reg4 = reg6;
21023 : reg3 = reg2;
21024 : operands[6] = operands[4];
21025 : }
21026 :
21027 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21028 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21029 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21030 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21031 :
21032 : tmp1 = reg1 & reg2;
21033 : tmp2 = reg3 & reg4;
21034 : reg_mask = tmp1 | tmp2;
21035 : reg_mask &= 0xFF;
21036 :
21037 : operands[1] = STRIP_UNARY (operands[1]);
21038 : operands[2] = STRIP_UNARY (operands[2]);
21039 : operands[6] = STRIP_UNARY (operands[6]);
21040 : if (!register_operand (operands[2], V16BFmode))
21041 : operands[2] = force_reg (V16BFmode, operands[2]);
21042 : if (!register_operand (operands[6], V16BFmode))
21043 : operands[6] = force_reg (V16BFmode, operands[6]);
21044 : operands[5] = GEN_INT (reg_mask);
21045 : }
21046 : #undef DONE
21047 : #undef FAIL
21048 : static const uint8_t expand_encoding[] = {
21049 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21050 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21051 : 0x25
21052 : };
21053 : return complete_seq (expand_encoding, operands);
21054 : }
21055 :
21056 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21057 : extern rtx_insn *gen_split_2176 (rtx_insn *, rtx *);
21058 : rtx_insn *
21059 : gen_split_2176 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21060 : {
21061 : if (dump_file)
21062 : fprintf (dump_file, "Splitting with gen_split_2176 (sse.md:14142)\n");
21063 : start_sequence ();
21064 : #define FAIL return (end_sequence (), nullptr)
21065 : #define DONE return end_sequence ()
21066 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21067 : {
21068 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21069 : int reg6 = 0xF0;
21070 : int reg2 = 0xCC;
21071 : int reg1 = 0xAA;
21072 : int reg3 = 0;
21073 : int reg4 = 0;
21074 : int reg_mask, tmp1, tmp2;
21075 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21076 : STRIP_UNARY (operands[4])))
21077 : {
21078 : reg4 = reg1;
21079 : reg3 = reg6;
21080 : operands[6] = operands[3];
21081 : }
21082 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21083 : STRIP_UNARY (operands[4])))
21084 : {
21085 : reg4 = reg2;
21086 : reg3 = reg6;
21087 : operands[6] = operands[3];
21088 : }
21089 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21090 : STRIP_UNARY (operands[3])))
21091 : {
21092 : reg4 = reg6;
21093 : reg3 = reg1;
21094 : operands[6] = operands[4];
21095 : }
21096 : else
21097 : {
21098 : reg4 = reg6;
21099 : reg3 = reg2;
21100 : operands[6] = operands[4];
21101 : }
21102 :
21103 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21104 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21105 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21106 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21107 :
21108 : tmp1 = reg1 | reg2;
21109 : tmp2 = reg3 & reg4;
21110 : reg_mask = tmp1 ^ tmp2;
21111 : reg_mask &= 0xFF;
21112 :
21113 : operands[1] = STRIP_UNARY (operands[1]);
21114 : operands[2] = STRIP_UNARY (operands[2]);
21115 : operands[6] = STRIP_UNARY (operands[6]);
21116 : if (!register_operand (operands[2], V16BFmode))
21117 : operands[2] = force_reg (V16BFmode, operands[2]);
21118 : if (!register_operand (operands[6], V16BFmode))
21119 : operands[6] = force_reg (V16BFmode, operands[6]);
21120 : operands[5] = GEN_INT (reg_mask);
21121 : }
21122 : #undef DONE
21123 : #undef FAIL
21124 : static const uint8_t expand_encoding[] = {
21125 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21126 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21127 : 0x25
21128 : };
21129 : return complete_seq (expand_encoding, operands);
21130 : }
21131 :
21132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21133 : extern rtx_insn *gen_split_2186 (rtx_insn *, rtx *);
21134 : rtx_insn *
21135 : gen_split_2186 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21136 : {
21137 : if (dump_file)
21138 : fprintf (dump_file, "Splitting with gen_split_2186 (sse.md:14142)\n");
21139 : start_sequence ();
21140 : #define FAIL return (end_sequence (), nullptr)
21141 : #define DONE return end_sequence ()
21142 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21143 : {
21144 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21145 : int reg6 = 0xF0;
21146 : int reg2 = 0xCC;
21147 : int reg1 = 0xAA;
21148 : int reg3 = 0;
21149 : int reg4 = 0;
21150 : int reg_mask, tmp1, tmp2;
21151 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21152 : STRIP_UNARY (operands[4])))
21153 : {
21154 : reg4 = reg1;
21155 : reg3 = reg6;
21156 : operands[6] = operands[3];
21157 : }
21158 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21159 : STRIP_UNARY (operands[4])))
21160 : {
21161 : reg4 = reg2;
21162 : reg3 = reg6;
21163 : operands[6] = operands[3];
21164 : }
21165 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21166 : STRIP_UNARY (operands[3])))
21167 : {
21168 : reg4 = reg6;
21169 : reg3 = reg1;
21170 : operands[6] = operands[4];
21171 : }
21172 : else
21173 : {
21174 : reg4 = reg6;
21175 : reg3 = reg2;
21176 : operands[6] = operands[4];
21177 : }
21178 :
21179 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21180 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21181 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21182 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21183 :
21184 : tmp1 = reg1 ^ reg2;
21185 : tmp2 = reg3 | reg4;
21186 : reg_mask = tmp1 & tmp2;
21187 : reg_mask &= 0xFF;
21188 :
21189 : operands[1] = STRIP_UNARY (operands[1]);
21190 : operands[2] = STRIP_UNARY (operands[2]);
21191 : operands[6] = STRIP_UNARY (operands[6]);
21192 : if (!register_operand (operands[2], V16BFmode))
21193 : operands[2] = force_reg (V16BFmode, operands[2]);
21194 : if (!register_operand (operands[6], V16BFmode))
21195 : operands[6] = force_reg (V16BFmode, operands[6]);
21196 : operands[5] = GEN_INT (reg_mask);
21197 : }
21198 : #undef DONE
21199 : #undef FAIL
21200 : static const uint8_t expand_encoding[] = {
21201 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21202 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21203 : 0x25
21204 : };
21205 : return complete_seq (expand_encoding, operands);
21206 : }
21207 :
21208 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21209 : extern rtx_insn *gen_split_2196 (rtx_insn *, rtx *);
21210 : rtx_insn *
21211 : gen_split_2196 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21212 : {
21213 : if (dump_file)
21214 : fprintf (dump_file, "Splitting with gen_split_2196 (sse.md:14142)\n");
21215 : start_sequence ();
21216 : #define FAIL return (end_sequence (), nullptr)
21217 : #define DONE return end_sequence ()
21218 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21219 : {
21220 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21221 : int reg6 = 0xF0;
21222 : int reg2 = 0xCC;
21223 : int reg1 = 0xAA;
21224 : int reg3 = 0;
21225 : int reg4 = 0;
21226 : int reg_mask, tmp1, tmp2;
21227 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21228 : STRIP_UNARY (operands[4])))
21229 : {
21230 : reg4 = reg1;
21231 : reg3 = reg6;
21232 : operands[6] = operands[3];
21233 : }
21234 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21235 : STRIP_UNARY (operands[4])))
21236 : {
21237 : reg4 = reg2;
21238 : reg3 = reg6;
21239 : operands[6] = operands[3];
21240 : }
21241 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21242 : STRIP_UNARY (operands[3])))
21243 : {
21244 : reg4 = reg6;
21245 : reg3 = reg1;
21246 : operands[6] = operands[4];
21247 : }
21248 : else
21249 : {
21250 : reg4 = reg6;
21251 : reg3 = reg2;
21252 : operands[6] = operands[4];
21253 : }
21254 :
21255 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21256 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21257 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21258 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21259 :
21260 : tmp1 = reg1 & reg2;
21261 : tmp2 = reg3 | reg4;
21262 : reg_mask = tmp1 | tmp2;
21263 : reg_mask &= 0xFF;
21264 :
21265 : operands[1] = STRIP_UNARY (operands[1]);
21266 : operands[2] = STRIP_UNARY (operands[2]);
21267 : operands[6] = STRIP_UNARY (operands[6]);
21268 : if (!register_operand (operands[2], V8BFmode))
21269 : operands[2] = force_reg (V8BFmode, operands[2]);
21270 : if (!register_operand (operands[6], V8BFmode))
21271 : operands[6] = force_reg (V8BFmode, operands[6]);
21272 : operands[5] = GEN_INT (reg_mask);
21273 : }
21274 : #undef DONE
21275 : #undef FAIL
21276 : static const uint8_t expand_encoding[] = {
21277 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21278 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21279 : 0x25
21280 : };
21281 : return complete_seq (expand_encoding, operands);
21282 : }
21283 :
21284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21285 : extern rtx_insn *gen_split_2206 (rtx_insn *, rtx *);
21286 : rtx_insn *
21287 : gen_split_2206 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21288 : {
21289 : if (dump_file)
21290 : fprintf (dump_file, "Splitting with gen_split_2206 (sse.md:14142)\n");
21291 : start_sequence ();
21292 : #define FAIL return (end_sequence (), nullptr)
21293 : #define DONE return end_sequence ()
21294 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21295 : {
21296 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21297 : int reg6 = 0xF0;
21298 : int reg2 = 0xCC;
21299 : int reg1 = 0xAA;
21300 : int reg3 = 0;
21301 : int reg4 = 0;
21302 : int reg_mask, tmp1, tmp2;
21303 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21304 : STRIP_UNARY (operands[4])))
21305 : {
21306 : reg4 = reg1;
21307 : reg3 = reg6;
21308 : operands[6] = operands[3];
21309 : }
21310 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21311 : STRIP_UNARY (operands[4])))
21312 : {
21313 : reg4 = reg2;
21314 : reg3 = reg6;
21315 : operands[6] = operands[3];
21316 : }
21317 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21318 : STRIP_UNARY (operands[3])))
21319 : {
21320 : reg4 = reg6;
21321 : reg3 = reg1;
21322 : operands[6] = operands[4];
21323 : }
21324 : else
21325 : {
21326 : reg4 = reg6;
21327 : reg3 = reg2;
21328 : operands[6] = operands[4];
21329 : }
21330 :
21331 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21332 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21333 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21334 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21335 :
21336 : tmp1 = reg1 | reg2;
21337 : tmp2 = reg3 | reg4;
21338 : reg_mask = tmp1 ^ tmp2;
21339 : reg_mask &= 0xFF;
21340 :
21341 : operands[1] = STRIP_UNARY (operands[1]);
21342 : operands[2] = STRIP_UNARY (operands[2]);
21343 : operands[6] = STRIP_UNARY (operands[6]);
21344 : if (!register_operand (operands[2], V8BFmode))
21345 : operands[2] = force_reg (V8BFmode, operands[2]);
21346 : if (!register_operand (operands[6], V8BFmode))
21347 : operands[6] = force_reg (V8BFmode, operands[6]);
21348 : operands[5] = GEN_INT (reg_mask);
21349 : }
21350 : #undef DONE
21351 : #undef FAIL
21352 : static const uint8_t expand_encoding[] = {
21353 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21354 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21355 : 0x25
21356 : };
21357 : return complete_seq (expand_encoding, operands);
21358 : }
21359 :
21360 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21361 : extern rtx_insn *gen_split_2216 (rtx_insn *, rtx *);
21362 : rtx_insn *
21363 : gen_split_2216 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21364 : {
21365 : if (dump_file)
21366 : fprintf (dump_file, "Splitting with gen_split_2216 (sse.md:14142)\n");
21367 : start_sequence ();
21368 : #define FAIL return (end_sequence (), nullptr)
21369 : #define DONE return end_sequence ()
21370 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21371 : {
21372 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21373 : int reg6 = 0xF0;
21374 : int reg2 = 0xCC;
21375 : int reg1 = 0xAA;
21376 : int reg3 = 0;
21377 : int reg4 = 0;
21378 : int reg_mask, tmp1, tmp2;
21379 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21380 : STRIP_UNARY (operands[4])))
21381 : {
21382 : reg4 = reg1;
21383 : reg3 = reg6;
21384 : operands[6] = operands[3];
21385 : }
21386 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21387 : STRIP_UNARY (operands[4])))
21388 : {
21389 : reg4 = reg2;
21390 : reg3 = reg6;
21391 : operands[6] = operands[3];
21392 : }
21393 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21394 : STRIP_UNARY (operands[3])))
21395 : {
21396 : reg4 = reg6;
21397 : reg3 = reg1;
21398 : operands[6] = operands[4];
21399 : }
21400 : else
21401 : {
21402 : reg4 = reg6;
21403 : reg3 = reg2;
21404 : operands[6] = operands[4];
21405 : }
21406 :
21407 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21408 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21409 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21410 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21411 :
21412 : tmp1 = reg1 ^ reg2;
21413 : tmp2 = reg3 ^ reg4;
21414 : reg_mask = tmp1 & tmp2;
21415 : reg_mask &= 0xFF;
21416 :
21417 : operands[1] = STRIP_UNARY (operands[1]);
21418 : operands[2] = STRIP_UNARY (operands[2]);
21419 : operands[6] = STRIP_UNARY (operands[6]);
21420 : if (!register_operand (operands[2], V8BFmode))
21421 : operands[2] = force_reg (V8BFmode, operands[2]);
21422 : if (!register_operand (operands[6], V8BFmode))
21423 : operands[6] = force_reg (V8BFmode, operands[6]);
21424 : operands[5] = GEN_INT (reg_mask);
21425 : }
21426 : #undef DONE
21427 : #undef FAIL
21428 : static const uint8_t expand_encoding[] = {
21429 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21430 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21431 : 0x25
21432 : };
21433 : return complete_seq (expand_encoding, operands);
21434 : }
21435 :
21436 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21437 : extern rtx_insn *gen_split_2226 (rtx_insn *, rtx *);
21438 : rtx_insn *
21439 : gen_split_2226 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21440 : {
21441 : if (dump_file)
21442 : fprintf (dump_file, "Splitting with gen_split_2226 (sse.md:14142)\n");
21443 : start_sequence ();
21444 : #define FAIL return (end_sequence (), nullptr)
21445 : #define DONE return end_sequence ()
21446 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21447 : {
21448 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21449 : int reg6 = 0xF0;
21450 : int reg2 = 0xCC;
21451 : int reg1 = 0xAA;
21452 : int reg3 = 0;
21453 : int reg4 = 0;
21454 : int reg_mask, tmp1, tmp2;
21455 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21456 : STRIP_UNARY (operands[4])))
21457 : {
21458 : reg4 = reg1;
21459 : reg3 = reg6;
21460 : operands[6] = operands[3];
21461 : }
21462 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21463 : STRIP_UNARY (operands[4])))
21464 : {
21465 : reg4 = reg2;
21466 : reg3 = reg6;
21467 : operands[6] = operands[3];
21468 : }
21469 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21470 : STRIP_UNARY (operands[3])))
21471 : {
21472 : reg4 = reg6;
21473 : reg3 = reg1;
21474 : operands[6] = operands[4];
21475 : }
21476 : else
21477 : {
21478 : reg4 = reg6;
21479 : reg3 = reg2;
21480 : operands[6] = operands[4];
21481 : }
21482 :
21483 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21484 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21485 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21486 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21487 :
21488 : tmp1 = reg1 & reg2;
21489 : tmp2 = reg3 ^ reg4;
21490 : reg_mask = tmp1 | tmp2;
21491 : reg_mask &= 0xFF;
21492 :
21493 : operands[1] = STRIP_UNARY (operands[1]);
21494 : operands[2] = STRIP_UNARY (operands[2]);
21495 : operands[6] = STRIP_UNARY (operands[6]);
21496 : if (!register_operand (operands[2], V16SFmode))
21497 : operands[2] = force_reg (V16SFmode, operands[2]);
21498 : if (!register_operand (operands[6], V16SFmode))
21499 : operands[6] = force_reg (V16SFmode, operands[6]);
21500 : operands[5] = GEN_INT (reg_mask);
21501 : }
21502 : #undef DONE
21503 : #undef FAIL
21504 : static const uint8_t expand_encoding[] = {
21505 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21506 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21507 : 0x25
21508 : };
21509 : return complete_seq (expand_encoding, operands);
21510 : }
21511 :
21512 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21513 : extern rtx_insn *gen_split_2236 (rtx_insn *, rtx *);
21514 : rtx_insn *
21515 : gen_split_2236 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21516 : {
21517 : if (dump_file)
21518 : fprintf (dump_file, "Splitting with gen_split_2236 (sse.md:14142)\n");
21519 : start_sequence ();
21520 : #define FAIL return (end_sequence (), nullptr)
21521 : #define DONE return end_sequence ()
21522 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21523 : {
21524 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21525 : int reg6 = 0xF0;
21526 : int reg2 = 0xCC;
21527 : int reg1 = 0xAA;
21528 : int reg3 = 0;
21529 : int reg4 = 0;
21530 : int reg_mask, tmp1, tmp2;
21531 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21532 : STRIP_UNARY (operands[4])))
21533 : {
21534 : reg4 = reg1;
21535 : reg3 = reg6;
21536 : operands[6] = operands[3];
21537 : }
21538 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21539 : STRIP_UNARY (operands[4])))
21540 : {
21541 : reg4 = reg2;
21542 : reg3 = reg6;
21543 : operands[6] = operands[3];
21544 : }
21545 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21546 : STRIP_UNARY (operands[3])))
21547 : {
21548 : reg4 = reg6;
21549 : reg3 = reg1;
21550 : operands[6] = operands[4];
21551 : }
21552 : else
21553 : {
21554 : reg4 = reg6;
21555 : reg3 = reg2;
21556 : operands[6] = operands[4];
21557 : }
21558 :
21559 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21560 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21561 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21562 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21563 :
21564 : tmp1 = reg1 | reg2;
21565 : tmp2 = reg3 ^ reg4;
21566 : reg_mask = tmp1 ^ tmp2;
21567 : reg_mask &= 0xFF;
21568 :
21569 : operands[1] = STRIP_UNARY (operands[1]);
21570 : operands[2] = STRIP_UNARY (operands[2]);
21571 : operands[6] = STRIP_UNARY (operands[6]);
21572 : if (!register_operand (operands[2], V16SFmode))
21573 : operands[2] = force_reg (V16SFmode, operands[2]);
21574 : if (!register_operand (operands[6], V16SFmode))
21575 : operands[6] = force_reg (V16SFmode, operands[6]);
21576 : operands[5] = GEN_INT (reg_mask);
21577 : }
21578 : #undef DONE
21579 : #undef FAIL
21580 : static const uint8_t expand_encoding[] = {
21581 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21582 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21583 : 0x25
21584 : };
21585 : return complete_seq (expand_encoding, operands);
21586 : }
21587 :
21588 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21589 : extern rtx_insn *gen_split_2246 (rtx_insn *, rtx *);
21590 : rtx_insn *
21591 : gen_split_2246 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21592 : {
21593 : if (dump_file)
21594 : fprintf (dump_file, "Splitting with gen_split_2246 (sse.md:14142)\n");
21595 : start_sequence ();
21596 : #define FAIL return (end_sequence (), nullptr)
21597 : #define DONE return end_sequence ()
21598 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21599 : {
21600 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21601 : int reg6 = 0xF0;
21602 : int reg2 = 0xCC;
21603 : int reg1 = 0xAA;
21604 : int reg3 = 0;
21605 : int reg4 = 0;
21606 : int reg_mask, tmp1, tmp2;
21607 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21608 : STRIP_UNARY (operands[4])))
21609 : {
21610 : reg4 = reg1;
21611 : reg3 = reg6;
21612 : operands[6] = operands[3];
21613 : }
21614 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21615 : STRIP_UNARY (operands[4])))
21616 : {
21617 : reg4 = reg2;
21618 : reg3 = reg6;
21619 : operands[6] = operands[3];
21620 : }
21621 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21622 : STRIP_UNARY (operands[3])))
21623 : {
21624 : reg4 = reg6;
21625 : reg3 = reg1;
21626 : operands[6] = operands[4];
21627 : }
21628 : else
21629 : {
21630 : reg4 = reg6;
21631 : reg3 = reg2;
21632 : operands[6] = operands[4];
21633 : }
21634 :
21635 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21636 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21637 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21638 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21639 :
21640 : tmp1 = reg1 & reg2;
21641 : tmp2 = reg3 & reg4;
21642 : reg_mask = tmp1 & tmp2;
21643 : reg_mask &= 0xFF;
21644 :
21645 : operands[1] = STRIP_UNARY (operands[1]);
21646 : operands[2] = STRIP_UNARY (operands[2]);
21647 : operands[6] = STRIP_UNARY (operands[6]);
21648 : if (!register_operand (operands[2], V8SFmode))
21649 : operands[2] = force_reg (V8SFmode, operands[2]);
21650 : if (!register_operand (operands[6], V8SFmode))
21651 : operands[6] = force_reg (V8SFmode, operands[6]);
21652 : operands[5] = GEN_INT (reg_mask);
21653 : }
21654 : #undef DONE
21655 : #undef FAIL
21656 : static const uint8_t expand_encoding[] = {
21657 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21658 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21659 : 0x25
21660 : };
21661 : return complete_seq (expand_encoding, operands);
21662 : }
21663 :
21664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21665 : extern rtx_insn *gen_split_2256 (rtx_insn *, rtx *);
21666 : rtx_insn *
21667 : gen_split_2256 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21668 : {
21669 : if (dump_file)
21670 : fprintf (dump_file, "Splitting with gen_split_2256 (sse.md:14142)\n");
21671 : start_sequence ();
21672 : #define FAIL return (end_sequence (), nullptr)
21673 : #define DONE return end_sequence ()
21674 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21675 : {
21676 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21677 : int reg6 = 0xF0;
21678 : int reg2 = 0xCC;
21679 : int reg1 = 0xAA;
21680 : int reg3 = 0;
21681 : int reg4 = 0;
21682 : int reg_mask, tmp1, tmp2;
21683 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21684 : STRIP_UNARY (operands[4])))
21685 : {
21686 : reg4 = reg1;
21687 : reg3 = reg6;
21688 : operands[6] = operands[3];
21689 : }
21690 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21691 : STRIP_UNARY (operands[4])))
21692 : {
21693 : reg4 = reg2;
21694 : reg3 = reg6;
21695 : operands[6] = operands[3];
21696 : }
21697 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21698 : STRIP_UNARY (operands[3])))
21699 : {
21700 : reg4 = reg6;
21701 : reg3 = reg1;
21702 : operands[6] = operands[4];
21703 : }
21704 : else
21705 : {
21706 : reg4 = reg6;
21707 : reg3 = reg2;
21708 : operands[6] = operands[4];
21709 : }
21710 :
21711 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21712 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21713 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21714 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21715 :
21716 : tmp1 = reg1 | reg2;
21717 : tmp2 = reg3 & reg4;
21718 : reg_mask = tmp1 | tmp2;
21719 : reg_mask &= 0xFF;
21720 :
21721 : operands[1] = STRIP_UNARY (operands[1]);
21722 : operands[2] = STRIP_UNARY (operands[2]);
21723 : operands[6] = STRIP_UNARY (operands[6]);
21724 : if (!register_operand (operands[2], V8SFmode))
21725 : operands[2] = force_reg (V8SFmode, operands[2]);
21726 : if (!register_operand (operands[6], V8SFmode))
21727 : operands[6] = force_reg (V8SFmode, operands[6]);
21728 : operands[5] = GEN_INT (reg_mask);
21729 : }
21730 : #undef DONE
21731 : #undef FAIL
21732 : static const uint8_t expand_encoding[] = {
21733 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21734 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21735 : 0x25
21736 : };
21737 : return complete_seq (expand_encoding, operands);
21738 : }
21739 :
21740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21741 : extern rtx_insn *gen_split_2266 (rtx_insn *, rtx *);
21742 : rtx_insn *
21743 : gen_split_2266 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21744 : {
21745 : if (dump_file)
21746 : fprintf (dump_file, "Splitting with gen_split_2266 (sse.md:14142)\n");
21747 : start_sequence ();
21748 : #define FAIL return (end_sequence (), nullptr)
21749 : #define DONE return end_sequence ()
21750 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21751 : {
21752 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21753 : int reg6 = 0xF0;
21754 : int reg2 = 0xCC;
21755 : int reg1 = 0xAA;
21756 : int reg3 = 0;
21757 : int reg4 = 0;
21758 : int reg_mask, tmp1, tmp2;
21759 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21760 : STRIP_UNARY (operands[4])))
21761 : {
21762 : reg4 = reg1;
21763 : reg3 = reg6;
21764 : operands[6] = operands[3];
21765 : }
21766 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21767 : STRIP_UNARY (operands[4])))
21768 : {
21769 : reg4 = reg2;
21770 : reg3 = reg6;
21771 : operands[6] = operands[3];
21772 : }
21773 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21774 : STRIP_UNARY (operands[3])))
21775 : {
21776 : reg4 = reg6;
21777 : reg3 = reg1;
21778 : operands[6] = operands[4];
21779 : }
21780 : else
21781 : {
21782 : reg4 = reg6;
21783 : reg3 = reg2;
21784 : operands[6] = operands[4];
21785 : }
21786 :
21787 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21788 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21789 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21790 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21791 :
21792 : tmp1 = reg1 ^ reg2;
21793 : tmp2 = reg3 & reg4;
21794 : reg_mask = tmp1 ^ tmp2;
21795 : reg_mask &= 0xFF;
21796 :
21797 : operands[1] = STRIP_UNARY (operands[1]);
21798 : operands[2] = STRIP_UNARY (operands[2]);
21799 : operands[6] = STRIP_UNARY (operands[6]);
21800 : if (!register_operand (operands[2], V8SFmode))
21801 : operands[2] = force_reg (V8SFmode, operands[2]);
21802 : if (!register_operand (operands[6], V8SFmode))
21803 : operands[6] = force_reg (V8SFmode, operands[6]);
21804 : operands[5] = GEN_INT (reg_mask);
21805 : }
21806 : #undef DONE
21807 : #undef FAIL
21808 : static const uint8_t expand_encoding[] = {
21809 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21810 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21811 : 0x25
21812 : };
21813 : return complete_seq (expand_encoding, operands);
21814 : }
21815 :
21816 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21817 : extern rtx_insn *gen_split_2276 (rtx_insn *, rtx *);
21818 : rtx_insn *
21819 : gen_split_2276 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21820 : {
21821 : if (dump_file)
21822 : fprintf (dump_file, "Splitting with gen_split_2276 (sse.md:14142)\n");
21823 : start_sequence ();
21824 : #define FAIL return (end_sequence (), nullptr)
21825 : #define DONE return end_sequence ()
21826 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21827 : {
21828 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21829 : int reg6 = 0xF0;
21830 : int reg2 = 0xCC;
21831 : int reg1 = 0xAA;
21832 : int reg3 = 0;
21833 : int reg4 = 0;
21834 : int reg_mask, tmp1, tmp2;
21835 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21836 : STRIP_UNARY (operands[4])))
21837 : {
21838 : reg4 = reg1;
21839 : reg3 = reg6;
21840 : operands[6] = operands[3];
21841 : }
21842 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21843 : STRIP_UNARY (operands[4])))
21844 : {
21845 : reg4 = reg2;
21846 : reg3 = reg6;
21847 : operands[6] = operands[3];
21848 : }
21849 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21850 : STRIP_UNARY (operands[3])))
21851 : {
21852 : reg4 = reg6;
21853 : reg3 = reg1;
21854 : operands[6] = operands[4];
21855 : }
21856 : else
21857 : {
21858 : reg4 = reg6;
21859 : reg3 = reg2;
21860 : operands[6] = operands[4];
21861 : }
21862 :
21863 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21864 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21865 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21866 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21867 :
21868 : tmp1 = reg1 & reg2;
21869 : tmp2 = reg3 | reg4;
21870 : reg_mask = tmp1 & tmp2;
21871 : reg_mask &= 0xFF;
21872 :
21873 : operands[1] = STRIP_UNARY (operands[1]);
21874 : operands[2] = STRIP_UNARY (operands[2]);
21875 : operands[6] = STRIP_UNARY (operands[6]);
21876 : if (!register_operand (operands[2], V4SFmode))
21877 : operands[2] = force_reg (V4SFmode, operands[2]);
21878 : if (!register_operand (operands[6], V4SFmode))
21879 : operands[6] = force_reg (V4SFmode, operands[6]);
21880 : operands[5] = GEN_INT (reg_mask);
21881 : }
21882 : #undef DONE
21883 : #undef FAIL
21884 : static const uint8_t expand_encoding[] = {
21885 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
21886 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21887 : 0x25
21888 : };
21889 : return complete_seq (expand_encoding, operands);
21890 : }
21891 :
21892 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21893 : extern rtx_insn *gen_split_2286 (rtx_insn *, rtx *);
21894 : rtx_insn *
21895 : gen_split_2286 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21896 : {
21897 : if (dump_file)
21898 : fprintf (dump_file, "Splitting with gen_split_2286 (sse.md:14142)\n");
21899 : start_sequence ();
21900 : #define FAIL return (end_sequence (), nullptr)
21901 : #define DONE return end_sequence ()
21902 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21903 : {
21904 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21905 : int reg6 = 0xF0;
21906 : int reg2 = 0xCC;
21907 : int reg1 = 0xAA;
21908 : int reg3 = 0;
21909 : int reg4 = 0;
21910 : int reg_mask, tmp1, tmp2;
21911 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21912 : STRIP_UNARY (operands[4])))
21913 : {
21914 : reg4 = reg1;
21915 : reg3 = reg6;
21916 : operands[6] = operands[3];
21917 : }
21918 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21919 : STRIP_UNARY (operands[4])))
21920 : {
21921 : reg4 = reg2;
21922 : reg3 = reg6;
21923 : operands[6] = operands[3];
21924 : }
21925 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21926 : STRIP_UNARY (operands[3])))
21927 : {
21928 : reg4 = reg6;
21929 : reg3 = reg1;
21930 : operands[6] = operands[4];
21931 : }
21932 : else
21933 : {
21934 : reg4 = reg6;
21935 : reg3 = reg2;
21936 : operands[6] = operands[4];
21937 : }
21938 :
21939 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21940 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21941 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21942 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21943 :
21944 : tmp1 = reg1 | reg2;
21945 : tmp2 = reg3 | reg4;
21946 : reg_mask = tmp1 | tmp2;
21947 : reg_mask &= 0xFF;
21948 :
21949 : operands[1] = STRIP_UNARY (operands[1]);
21950 : operands[2] = STRIP_UNARY (operands[2]);
21951 : operands[6] = STRIP_UNARY (operands[6]);
21952 : if (!register_operand (operands[2], V4SFmode))
21953 : operands[2] = force_reg (V4SFmode, operands[2]);
21954 : if (!register_operand (operands[6], V4SFmode))
21955 : operands[6] = force_reg (V4SFmode, operands[6]);
21956 : operands[5] = GEN_INT (reg_mask);
21957 : }
21958 : #undef DONE
21959 : #undef FAIL
21960 : static const uint8_t expand_encoding[] = {
21961 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
21962 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21963 : 0x25
21964 : };
21965 : return complete_seq (expand_encoding, operands);
21966 : }
21967 :
21968 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21969 : extern rtx_insn *gen_split_2296 (rtx_insn *, rtx *);
21970 : rtx_insn *
21971 : gen_split_2296 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21972 : {
21973 : if (dump_file)
21974 : fprintf (dump_file, "Splitting with gen_split_2296 (sse.md:14142)\n");
21975 : start_sequence ();
21976 : #define FAIL return (end_sequence (), nullptr)
21977 : #define DONE return end_sequence ()
21978 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21979 : {
21980 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21981 : int reg6 = 0xF0;
21982 : int reg2 = 0xCC;
21983 : int reg1 = 0xAA;
21984 : int reg3 = 0;
21985 : int reg4 = 0;
21986 : int reg_mask, tmp1, tmp2;
21987 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21988 : STRIP_UNARY (operands[4])))
21989 : {
21990 : reg4 = reg1;
21991 : reg3 = reg6;
21992 : operands[6] = operands[3];
21993 : }
21994 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21995 : STRIP_UNARY (operands[4])))
21996 : {
21997 : reg4 = reg2;
21998 : reg3 = reg6;
21999 : operands[6] = operands[3];
22000 : }
22001 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22002 : STRIP_UNARY (operands[3])))
22003 : {
22004 : reg4 = reg6;
22005 : reg3 = reg1;
22006 : operands[6] = operands[4];
22007 : }
22008 : else
22009 : {
22010 : reg4 = reg6;
22011 : reg3 = reg2;
22012 : operands[6] = operands[4];
22013 : }
22014 :
22015 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22016 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22017 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22018 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22019 :
22020 : tmp1 = reg1 ^ reg2;
22021 : tmp2 = reg3 | reg4;
22022 : reg_mask = tmp1 ^ tmp2;
22023 : reg_mask &= 0xFF;
22024 :
22025 : operands[1] = STRIP_UNARY (operands[1]);
22026 : operands[2] = STRIP_UNARY (operands[2]);
22027 : operands[6] = STRIP_UNARY (operands[6]);
22028 : if (!register_operand (operands[2], V4SFmode))
22029 : operands[2] = force_reg (V4SFmode, operands[2]);
22030 : if (!register_operand (operands[6], V4SFmode))
22031 : operands[6] = force_reg (V4SFmode, operands[6]);
22032 : operands[5] = GEN_INT (reg_mask);
22033 : }
22034 : #undef DONE
22035 : #undef FAIL
22036 : static const uint8_t expand_encoding[] = {
22037 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
22038 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22039 : 0x25
22040 : };
22041 : return complete_seq (expand_encoding, operands);
22042 : }
22043 :
22044 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22045 : extern rtx_insn *gen_split_2306 (rtx_insn *, rtx *);
22046 : rtx_insn *
22047 : gen_split_2306 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22048 : {
22049 : if (dump_file)
22050 : fprintf (dump_file, "Splitting with gen_split_2306 (sse.md:14142)\n");
22051 : start_sequence ();
22052 : #define FAIL return (end_sequence (), nullptr)
22053 : #define DONE return end_sequence ()
22054 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22055 : {
22056 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22057 : int reg6 = 0xF0;
22058 : int reg2 = 0xCC;
22059 : int reg1 = 0xAA;
22060 : int reg3 = 0;
22061 : int reg4 = 0;
22062 : int reg_mask, tmp1, tmp2;
22063 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22064 : STRIP_UNARY (operands[4])))
22065 : {
22066 : reg4 = reg1;
22067 : reg3 = reg6;
22068 : operands[6] = operands[3];
22069 : }
22070 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22071 : STRIP_UNARY (operands[4])))
22072 : {
22073 : reg4 = reg2;
22074 : reg3 = reg6;
22075 : operands[6] = operands[3];
22076 : }
22077 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22078 : STRIP_UNARY (operands[3])))
22079 : {
22080 : reg4 = reg6;
22081 : reg3 = reg1;
22082 : operands[6] = operands[4];
22083 : }
22084 : else
22085 : {
22086 : reg4 = reg6;
22087 : reg3 = reg2;
22088 : operands[6] = operands[4];
22089 : }
22090 :
22091 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22092 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22093 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22094 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22095 :
22096 : tmp1 = reg1 & reg2;
22097 : tmp2 = reg3 ^ reg4;
22098 : reg_mask = tmp1 & tmp2;
22099 : reg_mask &= 0xFF;
22100 :
22101 : operands[1] = STRIP_UNARY (operands[1]);
22102 : operands[2] = STRIP_UNARY (operands[2]);
22103 : operands[6] = STRIP_UNARY (operands[6]);
22104 : if (!register_operand (operands[2], V8DFmode))
22105 : operands[2] = force_reg (V8DFmode, operands[2]);
22106 : if (!register_operand (operands[6], V8DFmode))
22107 : operands[6] = force_reg (V8DFmode, operands[6]);
22108 : operands[5] = GEN_INT (reg_mask);
22109 : }
22110 : #undef DONE
22111 : #undef FAIL
22112 : static const uint8_t expand_encoding[] = {
22113 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22114 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22115 : 0x25
22116 : };
22117 : return complete_seq (expand_encoding, operands);
22118 : }
22119 :
22120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22121 : extern rtx_insn *gen_split_2316 (rtx_insn *, rtx *);
22122 : rtx_insn *
22123 : gen_split_2316 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22124 : {
22125 : if (dump_file)
22126 : fprintf (dump_file, "Splitting with gen_split_2316 (sse.md:14142)\n");
22127 : start_sequence ();
22128 : #define FAIL return (end_sequence (), nullptr)
22129 : #define DONE return end_sequence ()
22130 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22131 : {
22132 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22133 : int reg6 = 0xF0;
22134 : int reg2 = 0xCC;
22135 : int reg1 = 0xAA;
22136 : int reg3 = 0;
22137 : int reg4 = 0;
22138 : int reg_mask, tmp1, tmp2;
22139 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22140 : STRIP_UNARY (operands[4])))
22141 : {
22142 : reg4 = reg1;
22143 : reg3 = reg6;
22144 : operands[6] = operands[3];
22145 : }
22146 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22147 : STRIP_UNARY (operands[4])))
22148 : {
22149 : reg4 = reg2;
22150 : reg3 = reg6;
22151 : operands[6] = operands[3];
22152 : }
22153 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22154 : STRIP_UNARY (operands[3])))
22155 : {
22156 : reg4 = reg6;
22157 : reg3 = reg1;
22158 : operands[6] = operands[4];
22159 : }
22160 : else
22161 : {
22162 : reg4 = reg6;
22163 : reg3 = reg2;
22164 : operands[6] = operands[4];
22165 : }
22166 :
22167 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22168 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22169 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22170 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22171 :
22172 : tmp1 = reg1 | reg2;
22173 : tmp2 = reg3 ^ reg4;
22174 : reg_mask = tmp1 | tmp2;
22175 : reg_mask &= 0xFF;
22176 :
22177 : operands[1] = STRIP_UNARY (operands[1]);
22178 : operands[2] = STRIP_UNARY (operands[2]);
22179 : operands[6] = STRIP_UNARY (operands[6]);
22180 : if (!register_operand (operands[2], V8DFmode))
22181 : operands[2] = force_reg (V8DFmode, operands[2]);
22182 : if (!register_operand (operands[6], V8DFmode))
22183 : operands[6] = force_reg (V8DFmode, operands[6]);
22184 : operands[5] = GEN_INT (reg_mask);
22185 : }
22186 : #undef DONE
22187 : #undef FAIL
22188 : static const uint8_t expand_encoding[] = {
22189 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22190 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22191 : 0x25
22192 : };
22193 : return complete_seq (expand_encoding, operands);
22194 : }
22195 :
22196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22197 : extern rtx_insn *gen_split_2326 (rtx_insn *, rtx *);
22198 : rtx_insn *
22199 : gen_split_2326 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22200 : {
22201 : if (dump_file)
22202 : fprintf (dump_file, "Splitting with gen_split_2326 (sse.md:14142)\n");
22203 : start_sequence ();
22204 : #define FAIL return (end_sequence (), nullptr)
22205 : #define DONE return end_sequence ()
22206 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22207 : {
22208 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22209 : int reg6 = 0xF0;
22210 : int reg2 = 0xCC;
22211 : int reg1 = 0xAA;
22212 : int reg3 = 0;
22213 : int reg4 = 0;
22214 : int reg_mask, tmp1, tmp2;
22215 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22216 : STRIP_UNARY (operands[4])))
22217 : {
22218 : reg4 = reg1;
22219 : reg3 = reg6;
22220 : operands[6] = operands[3];
22221 : }
22222 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22223 : STRIP_UNARY (operands[4])))
22224 : {
22225 : reg4 = reg2;
22226 : reg3 = reg6;
22227 : operands[6] = operands[3];
22228 : }
22229 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22230 : STRIP_UNARY (operands[3])))
22231 : {
22232 : reg4 = reg6;
22233 : reg3 = reg1;
22234 : operands[6] = operands[4];
22235 : }
22236 : else
22237 : {
22238 : reg4 = reg6;
22239 : reg3 = reg2;
22240 : operands[6] = operands[4];
22241 : }
22242 :
22243 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22244 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22245 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22246 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22247 :
22248 : tmp1 = reg1 ^ reg2;
22249 : tmp2 = reg3 ^ reg4;
22250 : reg_mask = tmp1 ^ tmp2;
22251 : reg_mask &= 0xFF;
22252 :
22253 : operands[1] = STRIP_UNARY (operands[1]);
22254 : operands[2] = STRIP_UNARY (operands[2]);
22255 : operands[6] = STRIP_UNARY (operands[6]);
22256 : if (!register_operand (operands[2], V8DFmode))
22257 : operands[2] = force_reg (V8DFmode, operands[2]);
22258 : if (!register_operand (operands[6], V8DFmode))
22259 : operands[6] = force_reg (V8DFmode, operands[6]);
22260 : operands[5] = GEN_INT (reg_mask);
22261 : }
22262 : #undef DONE
22263 : #undef FAIL
22264 : static const uint8_t expand_encoding[] = {
22265 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22266 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22267 : 0x25
22268 : };
22269 : return complete_seq (expand_encoding, operands);
22270 : }
22271 :
22272 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22273 : extern rtx_insn *gen_split_2336 (rtx_insn *, rtx *);
22274 : rtx_insn *
22275 : gen_split_2336 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22276 : {
22277 : if (dump_file)
22278 : fprintf (dump_file, "Splitting with gen_split_2336 (sse.md:14142)\n");
22279 : start_sequence ();
22280 : #define FAIL return (end_sequence (), nullptr)
22281 : #define DONE return end_sequence ()
22282 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22283 : {
22284 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22285 : int reg6 = 0xF0;
22286 : int reg2 = 0xCC;
22287 : int reg1 = 0xAA;
22288 : int reg3 = 0;
22289 : int reg4 = 0;
22290 : int reg_mask, tmp1, tmp2;
22291 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22292 : STRIP_UNARY (operands[4])))
22293 : {
22294 : reg4 = reg1;
22295 : reg3 = reg6;
22296 : operands[6] = operands[3];
22297 : }
22298 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22299 : STRIP_UNARY (operands[4])))
22300 : {
22301 : reg4 = reg2;
22302 : reg3 = reg6;
22303 : operands[6] = operands[3];
22304 : }
22305 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22306 : STRIP_UNARY (operands[3])))
22307 : {
22308 : reg4 = reg6;
22309 : reg3 = reg1;
22310 : operands[6] = operands[4];
22311 : }
22312 : else
22313 : {
22314 : reg4 = reg6;
22315 : reg3 = reg2;
22316 : operands[6] = operands[4];
22317 : }
22318 :
22319 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22320 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22321 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22322 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22323 :
22324 : tmp1 = reg1 | reg2;
22325 : tmp2 = reg3 & reg4;
22326 : reg_mask = tmp1 & tmp2;
22327 : reg_mask &= 0xFF;
22328 :
22329 : operands[1] = STRIP_UNARY (operands[1]);
22330 : operands[2] = STRIP_UNARY (operands[2]);
22331 : operands[6] = STRIP_UNARY (operands[6]);
22332 : if (!register_operand (operands[2], V4DFmode))
22333 : operands[2] = force_reg (V4DFmode, operands[2]);
22334 : if (!register_operand (operands[6], V4DFmode))
22335 : operands[6] = force_reg (V4DFmode, operands[6]);
22336 : operands[5] = GEN_INT (reg_mask);
22337 : }
22338 : #undef DONE
22339 : #undef FAIL
22340 : static const uint8_t expand_encoding[] = {
22341 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22342 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22343 : 0x25
22344 : };
22345 : return complete_seq (expand_encoding, operands);
22346 : }
22347 :
22348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22349 : extern rtx_insn *gen_split_2346 (rtx_insn *, rtx *);
22350 : rtx_insn *
22351 : gen_split_2346 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22352 : {
22353 : if (dump_file)
22354 : fprintf (dump_file, "Splitting with gen_split_2346 (sse.md:14142)\n");
22355 : start_sequence ();
22356 : #define FAIL return (end_sequence (), nullptr)
22357 : #define DONE return end_sequence ()
22358 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22359 : {
22360 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22361 : int reg6 = 0xF0;
22362 : int reg2 = 0xCC;
22363 : int reg1 = 0xAA;
22364 : int reg3 = 0;
22365 : int reg4 = 0;
22366 : int reg_mask, tmp1, tmp2;
22367 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22368 : STRIP_UNARY (operands[4])))
22369 : {
22370 : reg4 = reg1;
22371 : reg3 = reg6;
22372 : operands[6] = operands[3];
22373 : }
22374 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22375 : STRIP_UNARY (operands[4])))
22376 : {
22377 : reg4 = reg2;
22378 : reg3 = reg6;
22379 : operands[6] = operands[3];
22380 : }
22381 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22382 : STRIP_UNARY (operands[3])))
22383 : {
22384 : reg4 = reg6;
22385 : reg3 = reg1;
22386 : operands[6] = operands[4];
22387 : }
22388 : else
22389 : {
22390 : reg4 = reg6;
22391 : reg3 = reg2;
22392 : operands[6] = operands[4];
22393 : }
22394 :
22395 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22396 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22397 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22398 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22399 :
22400 : tmp1 = reg1 ^ reg2;
22401 : tmp2 = reg3 & reg4;
22402 : reg_mask = tmp1 | tmp2;
22403 : reg_mask &= 0xFF;
22404 :
22405 : operands[1] = STRIP_UNARY (operands[1]);
22406 : operands[2] = STRIP_UNARY (operands[2]);
22407 : operands[6] = STRIP_UNARY (operands[6]);
22408 : if (!register_operand (operands[2], V4DFmode))
22409 : operands[2] = force_reg (V4DFmode, operands[2]);
22410 : if (!register_operand (operands[6], V4DFmode))
22411 : operands[6] = force_reg (V4DFmode, operands[6]);
22412 : operands[5] = GEN_INT (reg_mask);
22413 : }
22414 : #undef DONE
22415 : #undef FAIL
22416 : static const uint8_t expand_encoding[] = {
22417 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22418 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22419 : 0x25
22420 : };
22421 : return complete_seq (expand_encoding, operands);
22422 : }
22423 :
22424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22425 : extern rtx_insn *gen_split_2356 (rtx_insn *, rtx *);
22426 : rtx_insn *
22427 : gen_split_2356 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22428 : {
22429 : if (dump_file)
22430 : fprintf (dump_file, "Splitting with gen_split_2356 (sse.md:14142)\n");
22431 : start_sequence ();
22432 : #define FAIL return (end_sequence (), nullptr)
22433 : #define DONE return end_sequence ()
22434 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22435 : {
22436 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22437 : int reg6 = 0xF0;
22438 : int reg2 = 0xCC;
22439 : int reg1 = 0xAA;
22440 : int reg3 = 0;
22441 : int reg4 = 0;
22442 : int reg_mask, tmp1, tmp2;
22443 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22444 : STRIP_UNARY (operands[4])))
22445 : {
22446 : reg4 = reg1;
22447 : reg3 = reg6;
22448 : operands[6] = operands[3];
22449 : }
22450 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22451 : STRIP_UNARY (operands[4])))
22452 : {
22453 : reg4 = reg2;
22454 : reg3 = reg6;
22455 : operands[6] = operands[3];
22456 : }
22457 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22458 : STRIP_UNARY (operands[3])))
22459 : {
22460 : reg4 = reg6;
22461 : reg3 = reg1;
22462 : operands[6] = operands[4];
22463 : }
22464 : else
22465 : {
22466 : reg4 = reg6;
22467 : reg3 = reg2;
22468 : operands[6] = operands[4];
22469 : }
22470 :
22471 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22472 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22473 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22474 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22475 :
22476 : tmp1 = reg1 & reg2;
22477 : tmp2 = reg3 & reg4;
22478 : reg_mask = tmp1 ^ tmp2;
22479 : reg_mask &= 0xFF;
22480 :
22481 : operands[1] = STRIP_UNARY (operands[1]);
22482 : operands[2] = STRIP_UNARY (operands[2]);
22483 : operands[6] = STRIP_UNARY (operands[6]);
22484 : if (!register_operand (operands[2], V2DFmode))
22485 : operands[2] = force_reg (V2DFmode, operands[2]);
22486 : if (!register_operand (operands[6], V2DFmode))
22487 : operands[6] = force_reg (V2DFmode, operands[6]);
22488 : operands[5] = GEN_INT (reg_mask);
22489 : }
22490 : #undef DONE
22491 : #undef FAIL
22492 : static const uint8_t expand_encoding[] = {
22493 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22494 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22495 : 0x25
22496 : };
22497 : return complete_seq (expand_encoding, operands);
22498 : }
22499 :
22500 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22501 : extern rtx_insn *gen_split_2366 (rtx_insn *, rtx *);
22502 : rtx_insn *
22503 : gen_split_2366 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22504 : {
22505 : if (dump_file)
22506 : fprintf (dump_file, "Splitting with gen_split_2366 (sse.md:14142)\n");
22507 : start_sequence ();
22508 : #define FAIL return (end_sequence (), nullptr)
22509 : #define DONE return end_sequence ()
22510 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22511 : {
22512 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22513 : int reg6 = 0xF0;
22514 : int reg2 = 0xCC;
22515 : int reg1 = 0xAA;
22516 : int reg3 = 0;
22517 : int reg4 = 0;
22518 : int reg_mask, tmp1, tmp2;
22519 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22520 : STRIP_UNARY (operands[4])))
22521 : {
22522 : reg4 = reg1;
22523 : reg3 = reg6;
22524 : operands[6] = operands[3];
22525 : }
22526 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22527 : STRIP_UNARY (operands[4])))
22528 : {
22529 : reg4 = reg2;
22530 : reg3 = reg6;
22531 : operands[6] = operands[3];
22532 : }
22533 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22534 : STRIP_UNARY (operands[3])))
22535 : {
22536 : reg4 = reg6;
22537 : reg3 = reg1;
22538 : operands[6] = operands[4];
22539 : }
22540 : else
22541 : {
22542 : reg4 = reg6;
22543 : reg3 = reg2;
22544 : operands[6] = operands[4];
22545 : }
22546 :
22547 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22548 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22549 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22550 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22551 :
22552 : tmp1 = reg1 | reg2;
22553 : tmp2 = reg3 | reg4;
22554 : reg_mask = tmp1 & tmp2;
22555 : reg_mask &= 0xFF;
22556 :
22557 : operands[1] = STRIP_UNARY (operands[1]);
22558 : operands[2] = STRIP_UNARY (operands[2]);
22559 : operands[6] = STRIP_UNARY (operands[6]);
22560 : if (!register_operand (operands[2], V2DFmode))
22561 : operands[2] = force_reg (V2DFmode, operands[2]);
22562 : if (!register_operand (operands[6], V2DFmode))
22563 : operands[6] = force_reg (V2DFmode, operands[6]);
22564 : operands[5] = GEN_INT (reg_mask);
22565 : }
22566 : #undef DONE
22567 : #undef FAIL
22568 : static const uint8_t expand_encoding[] = {
22569 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22570 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22571 : 0x25
22572 : };
22573 : return complete_seq (expand_encoding, operands);
22574 : }
22575 :
22576 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22577 : extern rtx_insn *gen_split_2376 (rtx_insn *, rtx *);
22578 : rtx_insn *
22579 : gen_split_2376 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22580 : {
22581 : if (dump_file)
22582 : fprintf (dump_file, "Splitting with gen_split_2376 (sse.md:14142)\n");
22583 : start_sequence ();
22584 : #define FAIL return (end_sequence (), nullptr)
22585 : #define DONE return end_sequence ()
22586 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22587 : {
22588 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22589 : int reg6 = 0xF0;
22590 : int reg2 = 0xCC;
22591 : int reg1 = 0xAA;
22592 : int reg3 = 0;
22593 : int reg4 = 0;
22594 : int reg_mask, tmp1, tmp2;
22595 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22596 : STRIP_UNARY (operands[4])))
22597 : {
22598 : reg4 = reg1;
22599 : reg3 = reg6;
22600 : operands[6] = operands[3];
22601 : }
22602 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22603 : STRIP_UNARY (operands[4])))
22604 : {
22605 : reg4 = reg2;
22606 : reg3 = reg6;
22607 : operands[6] = operands[3];
22608 : }
22609 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22610 : STRIP_UNARY (operands[3])))
22611 : {
22612 : reg4 = reg6;
22613 : reg3 = reg1;
22614 : operands[6] = operands[4];
22615 : }
22616 : else
22617 : {
22618 : reg4 = reg6;
22619 : reg3 = reg2;
22620 : operands[6] = operands[4];
22621 : }
22622 :
22623 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22624 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22625 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22626 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22627 :
22628 : tmp1 = reg1 ^ reg2;
22629 : tmp2 = reg3 | reg4;
22630 : reg_mask = tmp1 | tmp2;
22631 : reg_mask &= 0xFF;
22632 :
22633 : operands[1] = STRIP_UNARY (operands[1]);
22634 : operands[2] = STRIP_UNARY (operands[2]);
22635 : operands[6] = STRIP_UNARY (operands[6]);
22636 : if (!register_operand (operands[2], V2DFmode))
22637 : operands[2] = force_reg (V2DFmode, operands[2]);
22638 : if (!register_operand (operands[6], V2DFmode))
22639 : operands[6] = force_reg (V2DFmode, operands[6]);
22640 : operands[5] = GEN_INT (reg_mask);
22641 : }
22642 : #undef DONE
22643 : #undef FAIL
22644 : static const uint8_t expand_encoding[] = {
22645 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22646 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22647 : 0x25
22648 : };
22649 : return complete_seq (expand_encoding, operands);
22650 : }
22651 :
22652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22653 : extern rtx_insn *gen_split_2386 (rtx_insn *, rtx *);
22654 : rtx_insn *
22655 : gen_split_2386 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22656 : {
22657 : if (dump_file)
22658 : fprintf (dump_file, "Splitting with gen_split_2386 (sse.md:14227)\n");
22659 : start_sequence ();
22660 : #define FAIL return (end_sequence (), nullptr)
22661 : #define DONE return end_sequence ()
22662 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22663 : {
22664 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22665 : int reg6 = 0xF0;
22666 : int reg2 = 0xCC;
22667 : int reg1 = 0xAA;
22668 : int reg3 = 0;
22669 : int reg4 = 0;
22670 : int reg_mask, tmp1, tmp2;
22671 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22672 : STRIP_UNARY (operands[4])))
22673 : {
22674 : reg4 = reg1;
22675 : reg3 = reg6;
22676 : operands[6] = operands[3];
22677 : }
22678 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22679 : STRIP_UNARY (operands[4])))
22680 : {
22681 : reg4 = reg2;
22682 : reg3 = reg6;
22683 : operands[6] = operands[3];
22684 : }
22685 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22686 : STRIP_UNARY (operands[3])))
22687 : {
22688 : reg4 = reg6;
22689 : reg3 = reg1;
22690 : operands[6] = operands[4];
22691 : }
22692 : else
22693 : {
22694 : reg4 = reg6;
22695 : reg3 = reg2;
22696 : operands[6] = operands[4];
22697 : }
22698 :
22699 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22700 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22701 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22702 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22703 :
22704 : tmp1 = reg1 | reg2;
22705 : tmp2 = tmp1 & reg3;
22706 : reg_mask = tmp2 ^ reg4;
22707 : reg_mask &= 0xFF;
22708 :
22709 : operands[1] = STRIP_UNARY (operands[1]);
22710 : operands[2] = STRIP_UNARY (operands[2]);
22711 : operands[6] = STRIP_UNARY (operands[6]);
22712 : operands[5] = GEN_INT (reg_mask);
22713 : if (!register_operand (operands[2], V64QImode))
22714 : operands[2] = force_reg (V64QImode, operands[2]);
22715 : if (!register_operand (operands[6], V64QImode))
22716 : operands[6] = force_reg (V64QImode, operands[6]);
22717 :
22718 : }
22719 : #undef DONE
22720 : #undef FAIL
22721 : static const uint8_t expand_encoding[] = {
22722 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22723 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22724 : 0x25
22725 : };
22726 : return complete_seq (expand_encoding, operands);
22727 : }
22728 :
22729 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22730 : extern rtx_insn *gen_split_2396 (rtx_insn *, rtx *);
22731 : rtx_insn *
22732 : gen_split_2396 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22733 : {
22734 : if (dump_file)
22735 : fprintf (dump_file, "Splitting with gen_split_2396 (sse.md:14227)\n");
22736 : start_sequence ();
22737 : #define FAIL return (end_sequence (), nullptr)
22738 : #define DONE return end_sequence ()
22739 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22740 : {
22741 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22742 : int reg6 = 0xF0;
22743 : int reg2 = 0xCC;
22744 : int reg1 = 0xAA;
22745 : int reg3 = 0;
22746 : int reg4 = 0;
22747 : int reg_mask, tmp1, tmp2;
22748 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22749 : STRIP_UNARY (operands[4])))
22750 : {
22751 : reg4 = reg1;
22752 : reg3 = reg6;
22753 : operands[6] = operands[3];
22754 : }
22755 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22756 : STRIP_UNARY (operands[4])))
22757 : {
22758 : reg4 = reg2;
22759 : reg3 = reg6;
22760 : operands[6] = operands[3];
22761 : }
22762 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22763 : STRIP_UNARY (operands[3])))
22764 : {
22765 : reg4 = reg6;
22766 : reg3 = reg1;
22767 : operands[6] = operands[4];
22768 : }
22769 : else
22770 : {
22771 : reg4 = reg6;
22772 : reg3 = reg2;
22773 : operands[6] = operands[4];
22774 : }
22775 :
22776 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22777 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22778 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22779 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22780 :
22781 : tmp1 = reg1 ^ reg2;
22782 : tmp2 = tmp1 | reg3;
22783 : reg_mask = tmp2 & reg4;
22784 : reg_mask &= 0xFF;
22785 :
22786 : operands[1] = STRIP_UNARY (operands[1]);
22787 : operands[2] = STRIP_UNARY (operands[2]);
22788 : operands[6] = STRIP_UNARY (operands[6]);
22789 : operands[5] = GEN_INT (reg_mask);
22790 : if (!register_operand (operands[2], V64QImode))
22791 : operands[2] = force_reg (V64QImode, operands[2]);
22792 : if (!register_operand (operands[6], V64QImode))
22793 : operands[6] = force_reg (V64QImode, operands[6]);
22794 :
22795 : }
22796 : #undef DONE
22797 : #undef FAIL
22798 : static const uint8_t expand_encoding[] = {
22799 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22800 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22801 : 0x25
22802 : };
22803 : return complete_seq (expand_encoding, operands);
22804 : }
22805 :
22806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22807 : extern rtx_insn *gen_split_2406 (rtx_insn *, rtx *);
22808 : rtx_insn *
22809 : gen_split_2406 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22810 : {
22811 : if (dump_file)
22812 : fprintf (dump_file, "Splitting with gen_split_2406 (sse.md:14227)\n");
22813 : start_sequence ();
22814 : #define FAIL return (end_sequence (), nullptr)
22815 : #define DONE return end_sequence ()
22816 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22817 : {
22818 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22819 : int reg6 = 0xF0;
22820 : int reg2 = 0xCC;
22821 : int reg1 = 0xAA;
22822 : int reg3 = 0;
22823 : int reg4 = 0;
22824 : int reg_mask, tmp1, tmp2;
22825 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22826 : STRIP_UNARY (operands[4])))
22827 : {
22828 : reg4 = reg1;
22829 : reg3 = reg6;
22830 : operands[6] = operands[3];
22831 : }
22832 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22833 : STRIP_UNARY (operands[4])))
22834 : {
22835 : reg4 = reg2;
22836 : reg3 = reg6;
22837 : operands[6] = operands[3];
22838 : }
22839 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22840 : STRIP_UNARY (operands[3])))
22841 : {
22842 : reg4 = reg6;
22843 : reg3 = reg1;
22844 : operands[6] = operands[4];
22845 : }
22846 : else
22847 : {
22848 : reg4 = reg6;
22849 : reg3 = reg2;
22850 : operands[6] = operands[4];
22851 : }
22852 :
22853 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22854 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22855 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22856 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22857 :
22858 : tmp1 = reg1 ^ reg2;
22859 : tmp2 = tmp1 ^ reg3;
22860 : reg_mask = tmp2 | reg4;
22861 : reg_mask &= 0xFF;
22862 :
22863 : operands[1] = STRIP_UNARY (operands[1]);
22864 : operands[2] = STRIP_UNARY (operands[2]);
22865 : operands[6] = STRIP_UNARY (operands[6]);
22866 : operands[5] = GEN_INT (reg_mask);
22867 : if (!register_operand (operands[2], V64QImode))
22868 : operands[2] = force_reg (V64QImode, operands[2]);
22869 : if (!register_operand (operands[6], V64QImode))
22870 : operands[6] = force_reg (V64QImode, operands[6]);
22871 :
22872 : }
22873 : #undef DONE
22874 : #undef FAIL
22875 : static const uint8_t expand_encoding[] = {
22876 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22877 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22878 : 0x25
22879 : };
22880 : return complete_seq (expand_encoding, operands);
22881 : }
22882 :
22883 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22884 : extern rtx_insn *gen_split_2416 (rtx_insn *, rtx *);
22885 : rtx_insn *
22886 : gen_split_2416 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22887 : {
22888 : if (dump_file)
22889 : fprintf (dump_file, "Splitting with gen_split_2416 (sse.md:14227)\n");
22890 : start_sequence ();
22891 : #define FAIL return (end_sequence (), nullptr)
22892 : #define DONE return end_sequence ()
22893 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22894 : {
22895 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22896 : int reg6 = 0xF0;
22897 : int reg2 = 0xCC;
22898 : int reg1 = 0xAA;
22899 : int reg3 = 0;
22900 : int reg4 = 0;
22901 : int reg_mask, tmp1, tmp2;
22902 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22903 : STRIP_UNARY (operands[4])))
22904 : {
22905 : reg4 = reg1;
22906 : reg3 = reg6;
22907 : operands[6] = operands[3];
22908 : }
22909 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22910 : STRIP_UNARY (operands[4])))
22911 : {
22912 : reg4 = reg2;
22913 : reg3 = reg6;
22914 : operands[6] = operands[3];
22915 : }
22916 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22917 : STRIP_UNARY (operands[3])))
22918 : {
22919 : reg4 = reg6;
22920 : reg3 = reg1;
22921 : operands[6] = operands[4];
22922 : }
22923 : else
22924 : {
22925 : reg4 = reg6;
22926 : reg3 = reg2;
22927 : operands[6] = operands[4];
22928 : }
22929 :
22930 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22931 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22932 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22933 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22934 :
22935 : tmp1 = reg1 ^ reg2;
22936 : tmp2 = tmp1 & reg3;
22937 : reg_mask = tmp2 ^ reg4;
22938 : reg_mask &= 0xFF;
22939 :
22940 : operands[1] = STRIP_UNARY (operands[1]);
22941 : operands[2] = STRIP_UNARY (operands[2]);
22942 : operands[6] = STRIP_UNARY (operands[6]);
22943 : operands[5] = GEN_INT (reg_mask);
22944 : if (!register_operand (operands[2], V32QImode))
22945 : operands[2] = force_reg (V32QImode, operands[2]);
22946 : if (!register_operand (operands[6], V32QImode))
22947 : operands[6] = force_reg (V32QImode, operands[6]);
22948 :
22949 : }
22950 : #undef DONE
22951 : #undef FAIL
22952 : static const uint8_t expand_encoding[] = {
22953 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
22954 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22955 : 0x25
22956 : };
22957 : return complete_seq (expand_encoding, operands);
22958 : }
22959 :
22960 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22961 : extern rtx_insn *gen_split_2426 (rtx_insn *, rtx *);
22962 : rtx_insn *
22963 : gen_split_2426 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22964 : {
22965 : if (dump_file)
22966 : fprintf (dump_file, "Splitting with gen_split_2426 (sse.md:14227)\n");
22967 : start_sequence ();
22968 : #define FAIL return (end_sequence (), nullptr)
22969 : #define DONE return end_sequence ()
22970 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22971 : {
22972 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22973 : int reg6 = 0xF0;
22974 : int reg2 = 0xCC;
22975 : int reg1 = 0xAA;
22976 : int reg3 = 0;
22977 : int reg4 = 0;
22978 : int reg_mask, tmp1, tmp2;
22979 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22980 : STRIP_UNARY (operands[4])))
22981 : {
22982 : reg4 = reg1;
22983 : reg3 = reg6;
22984 : operands[6] = operands[3];
22985 : }
22986 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22987 : STRIP_UNARY (operands[4])))
22988 : {
22989 : reg4 = reg2;
22990 : reg3 = reg6;
22991 : operands[6] = operands[3];
22992 : }
22993 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22994 : STRIP_UNARY (operands[3])))
22995 : {
22996 : reg4 = reg6;
22997 : reg3 = reg1;
22998 : operands[6] = operands[4];
22999 : }
23000 : else
23001 : {
23002 : reg4 = reg6;
23003 : reg3 = reg2;
23004 : operands[6] = operands[4];
23005 : }
23006 :
23007 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23008 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23009 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23010 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23011 :
23012 : tmp1 = reg1 & reg2;
23013 : tmp2 = tmp1 ^ reg3;
23014 : reg_mask = tmp2 & reg4;
23015 : reg_mask &= 0xFF;
23016 :
23017 : operands[1] = STRIP_UNARY (operands[1]);
23018 : operands[2] = STRIP_UNARY (operands[2]);
23019 : operands[6] = STRIP_UNARY (operands[6]);
23020 : operands[5] = GEN_INT (reg_mask);
23021 : if (!register_operand (operands[2], V32QImode))
23022 : operands[2] = force_reg (V32QImode, operands[2]);
23023 : if (!register_operand (operands[6], V32QImode))
23024 : operands[6] = force_reg (V32QImode, operands[6]);
23025 :
23026 : }
23027 : #undef DONE
23028 : #undef FAIL
23029 : static const uint8_t expand_encoding[] = {
23030 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23031 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23032 : 0x25
23033 : };
23034 : return complete_seq (expand_encoding, operands);
23035 : }
23036 :
23037 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23038 : extern rtx_insn *gen_split_2436 (rtx_insn *, rtx *);
23039 : rtx_insn *
23040 : gen_split_2436 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23041 : {
23042 : if (dump_file)
23043 : fprintf (dump_file, "Splitting with gen_split_2436 (sse.md:14227)\n");
23044 : start_sequence ();
23045 : #define FAIL return (end_sequence (), nullptr)
23046 : #define DONE return end_sequence ()
23047 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23048 : {
23049 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23050 : int reg6 = 0xF0;
23051 : int reg2 = 0xCC;
23052 : int reg1 = 0xAA;
23053 : int reg3 = 0;
23054 : int reg4 = 0;
23055 : int reg_mask, tmp1, tmp2;
23056 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23057 : STRIP_UNARY (operands[4])))
23058 : {
23059 : reg4 = reg1;
23060 : reg3 = reg6;
23061 : operands[6] = operands[3];
23062 : }
23063 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23064 : STRIP_UNARY (operands[4])))
23065 : {
23066 : reg4 = reg2;
23067 : reg3 = reg6;
23068 : operands[6] = operands[3];
23069 : }
23070 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23071 : STRIP_UNARY (operands[3])))
23072 : {
23073 : reg4 = reg6;
23074 : reg3 = reg1;
23075 : operands[6] = operands[4];
23076 : }
23077 : else
23078 : {
23079 : reg4 = reg6;
23080 : reg3 = reg2;
23081 : operands[6] = operands[4];
23082 : }
23083 :
23084 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23085 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23086 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23087 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23088 :
23089 : tmp1 = reg1 & reg2;
23090 : tmp2 = tmp1 & reg3;
23091 : reg_mask = tmp2 | reg4;
23092 : reg_mask &= 0xFF;
23093 :
23094 : operands[1] = STRIP_UNARY (operands[1]);
23095 : operands[2] = STRIP_UNARY (operands[2]);
23096 : operands[6] = STRIP_UNARY (operands[6]);
23097 : operands[5] = GEN_INT (reg_mask);
23098 : if (!register_operand (operands[2], V16QImode))
23099 : operands[2] = force_reg (V16QImode, operands[2]);
23100 : if (!register_operand (operands[6], V16QImode))
23101 : operands[6] = force_reg (V16QImode, operands[6]);
23102 :
23103 : }
23104 : #undef DONE
23105 : #undef FAIL
23106 : static const uint8_t expand_encoding[] = {
23107 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23108 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23109 : 0x25
23110 : };
23111 : return complete_seq (expand_encoding, operands);
23112 : }
23113 :
23114 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23115 : extern rtx_insn *gen_split_2446 (rtx_insn *, rtx *);
23116 : rtx_insn *
23117 : gen_split_2446 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23118 : {
23119 : if (dump_file)
23120 : fprintf (dump_file, "Splitting with gen_split_2446 (sse.md:14227)\n");
23121 : start_sequence ();
23122 : #define FAIL return (end_sequence (), nullptr)
23123 : #define DONE return end_sequence ()
23124 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23125 : {
23126 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23127 : int reg6 = 0xF0;
23128 : int reg2 = 0xCC;
23129 : int reg1 = 0xAA;
23130 : int reg3 = 0;
23131 : int reg4 = 0;
23132 : int reg_mask, tmp1, tmp2;
23133 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23134 : STRIP_UNARY (operands[4])))
23135 : {
23136 : reg4 = reg1;
23137 : reg3 = reg6;
23138 : operands[6] = operands[3];
23139 : }
23140 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23141 : STRIP_UNARY (operands[4])))
23142 : {
23143 : reg4 = reg2;
23144 : reg3 = reg6;
23145 : operands[6] = operands[3];
23146 : }
23147 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23148 : STRIP_UNARY (operands[3])))
23149 : {
23150 : reg4 = reg6;
23151 : reg3 = reg1;
23152 : operands[6] = operands[4];
23153 : }
23154 : else
23155 : {
23156 : reg4 = reg6;
23157 : reg3 = reg2;
23158 : operands[6] = operands[4];
23159 : }
23160 :
23161 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23162 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23163 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23164 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23165 :
23166 : tmp1 = reg1 & reg2;
23167 : tmp2 = tmp1 | reg3;
23168 : reg_mask = tmp2 ^ reg4;
23169 : reg_mask &= 0xFF;
23170 :
23171 : operands[1] = STRIP_UNARY (operands[1]);
23172 : operands[2] = STRIP_UNARY (operands[2]);
23173 : operands[6] = STRIP_UNARY (operands[6]);
23174 : operands[5] = GEN_INT (reg_mask);
23175 : if (!register_operand (operands[2], V16QImode))
23176 : operands[2] = force_reg (V16QImode, operands[2]);
23177 : if (!register_operand (operands[6], V16QImode))
23178 : operands[6] = force_reg (V16QImode, operands[6]);
23179 :
23180 : }
23181 : #undef DONE
23182 : #undef FAIL
23183 : static const uint8_t expand_encoding[] = {
23184 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23185 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23186 : 0x25
23187 : };
23188 : return complete_seq (expand_encoding, operands);
23189 : }
23190 :
23191 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23192 : extern rtx_insn *gen_split_2456 (rtx_insn *, rtx *);
23193 : rtx_insn *
23194 : gen_split_2456 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23195 : {
23196 : if (dump_file)
23197 : fprintf (dump_file, "Splitting with gen_split_2456 (sse.md:14227)\n");
23198 : start_sequence ();
23199 : #define FAIL return (end_sequence (), nullptr)
23200 : #define DONE return end_sequence ()
23201 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23202 : {
23203 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23204 : int reg6 = 0xF0;
23205 : int reg2 = 0xCC;
23206 : int reg1 = 0xAA;
23207 : int reg3 = 0;
23208 : int reg4 = 0;
23209 : int reg_mask, tmp1, tmp2;
23210 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23211 : STRIP_UNARY (operands[4])))
23212 : {
23213 : reg4 = reg1;
23214 : reg3 = reg6;
23215 : operands[6] = operands[3];
23216 : }
23217 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23218 : STRIP_UNARY (operands[4])))
23219 : {
23220 : reg4 = reg2;
23221 : reg3 = reg6;
23222 : operands[6] = operands[3];
23223 : }
23224 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23225 : STRIP_UNARY (operands[3])))
23226 : {
23227 : reg4 = reg6;
23228 : reg3 = reg1;
23229 : operands[6] = operands[4];
23230 : }
23231 : else
23232 : {
23233 : reg4 = reg6;
23234 : reg3 = reg2;
23235 : operands[6] = operands[4];
23236 : }
23237 :
23238 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23239 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23240 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23241 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23242 :
23243 : tmp1 = reg1 | reg2;
23244 : tmp2 = tmp1 ^ reg3;
23245 : reg_mask = tmp2 & reg4;
23246 : reg_mask &= 0xFF;
23247 :
23248 : operands[1] = STRIP_UNARY (operands[1]);
23249 : operands[2] = STRIP_UNARY (operands[2]);
23250 : operands[6] = STRIP_UNARY (operands[6]);
23251 : operands[5] = GEN_INT (reg_mask);
23252 : if (!register_operand (operands[2], V16QImode))
23253 : operands[2] = force_reg (V16QImode, operands[2]);
23254 : if (!register_operand (operands[6], V16QImode))
23255 : operands[6] = force_reg (V16QImode, operands[6]);
23256 :
23257 : }
23258 : #undef DONE
23259 : #undef FAIL
23260 : static const uint8_t expand_encoding[] = {
23261 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23262 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23263 : 0x25
23264 : };
23265 : return complete_seq (expand_encoding, operands);
23266 : }
23267 :
23268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23269 : extern rtx_insn *gen_split_2466 (rtx_insn *, rtx *);
23270 : rtx_insn *
23271 : gen_split_2466 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23272 : {
23273 : if (dump_file)
23274 : fprintf (dump_file, "Splitting with gen_split_2466 (sse.md:14227)\n");
23275 : start_sequence ();
23276 : #define FAIL return (end_sequence (), nullptr)
23277 : #define DONE return end_sequence ()
23278 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23279 : {
23280 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23281 : int reg6 = 0xF0;
23282 : int reg2 = 0xCC;
23283 : int reg1 = 0xAA;
23284 : int reg3 = 0;
23285 : int reg4 = 0;
23286 : int reg_mask, tmp1, tmp2;
23287 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23288 : STRIP_UNARY (operands[4])))
23289 : {
23290 : reg4 = reg1;
23291 : reg3 = reg6;
23292 : operands[6] = operands[3];
23293 : }
23294 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23295 : STRIP_UNARY (operands[4])))
23296 : {
23297 : reg4 = reg2;
23298 : reg3 = reg6;
23299 : operands[6] = operands[3];
23300 : }
23301 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23302 : STRIP_UNARY (operands[3])))
23303 : {
23304 : reg4 = reg6;
23305 : reg3 = reg1;
23306 : operands[6] = operands[4];
23307 : }
23308 : else
23309 : {
23310 : reg4 = reg6;
23311 : reg3 = reg2;
23312 : operands[6] = operands[4];
23313 : }
23314 :
23315 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23316 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23317 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23318 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23319 :
23320 : tmp1 = reg1 | reg2;
23321 : tmp2 = tmp1 & reg3;
23322 : reg_mask = tmp2 | reg4;
23323 : reg_mask &= 0xFF;
23324 :
23325 : operands[1] = STRIP_UNARY (operands[1]);
23326 : operands[2] = STRIP_UNARY (operands[2]);
23327 : operands[6] = STRIP_UNARY (operands[6]);
23328 : operands[5] = GEN_INT (reg_mask);
23329 : if (!register_operand (operands[2], V32HImode))
23330 : operands[2] = force_reg (V32HImode, operands[2]);
23331 : if (!register_operand (operands[6], V32HImode))
23332 : operands[6] = force_reg (V32HImode, operands[6]);
23333 :
23334 : }
23335 : #undef DONE
23336 : #undef FAIL
23337 : static const uint8_t expand_encoding[] = {
23338 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23339 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23340 : 0x25
23341 : };
23342 : return complete_seq (expand_encoding, operands);
23343 : }
23344 :
23345 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23346 : extern rtx_insn *gen_split_2476 (rtx_insn *, rtx *);
23347 : rtx_insn *
23348 : gen_split_2476 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23349 : {
23350 : if (dump_file)
23351 : fprintf (dump_file, "Splitting with gen_split_2476 (sse.md:14227)\n");
23352 : start_sequence ();
23353 : #define FAIL return (end_sequence (), nullptr)
23354 : #define DONE return end_sequence ()
23355 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23356 : {
23357 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23358 : int reg6 = 0xF0;
23359 : int reg2 = 0xCC;
23360 : int reg1 = 0xAA;
23361 : int reg3 = 0;
23362 : int reg4 = 0;
23363 : int reg_mask, tmp1, tmp2;
23364 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23365 : STRIP_UNARY (operands[4])))
23366 : {
23367 : reg4 = reg1;
23368 : reg3 = reg6;
23369 : operands[6] = operands[3];
23370 : }
23371 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23372 : STRIP_UNARY (operands[4])))
23373 : {
23374 : reg4 = reg2;
23375 : reg3 = reg6;
23376 : operands[6] = operands[3];
23377 : }
23378 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23379 : STRIP_UNARY (operands[3])))
23380 : {
23381 : reg4 = reg6;
23382 : reg3 = reg1;
23383 : operands[6] = operands[4];
23384 : }
23385 : else
23386 : {
23387 : reg4 = reg6;
23388 : reg3 = reg2;
23389 : operands[6] = operands[4];
23390 : }
23391 :
23392 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23393 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23394 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23395 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23396 :
23397 : tmp1 = reg1 | reg2;
23398 : tmp2 = tmp1 | reg3;
23399 : reg_mask = tmp2 ^ reg4;
23400 : reg_mask &= 0xFF;
23401 :
23402 : operands[1] = STRIP_UNARY (operands[1]);
23403 : operands[2] = STRIP_UNARY (operands[2]);
23404 : operands[6] = STRIP_UNARY (operands[6]);
23405 : operands[5] = GEN_INT (reg_mask);
23406 : if (!register_operand (operands[2], V32HImode))
23407 : operands[2] = force_reg (V32HImode, operands[2]);
23408 : if (!register_operand (operands[6], V32HImode))
23409 : operands[6] = force_reg (V32HImode, operands[6]);
23410 :
23411 : }
23412 : #undef DONE
23413 : #undef FAIL
23414 : static const uint8_t expand_encoding[] = {
23415 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23416 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23417 : 0x25
23418 : };
23419 : return complete_seq (expand_encoding, operands);
23420 : }
23421 :
23422 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23423 : extern rtx_insn *gen_split_2486 (rtx_insn *, rtx *);
23424 : rtx_insn *
23425 : gen_split_2486 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23426 : {
23427 : if (dump_file)
23428 : fprintf (dump_file, "Splitting with gen_split_2486 (sse.md:14227)\n");
23429 : start_sequence ();
23430 : #define FAIL return (end_sequence (), nullptr)
23431 : #define DONE return end_sequence ()
23432 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23433 : {
23434 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23435 : int reg6 = 0xF0;
23436 : int reg2 = 0xCC;
23437 : int reg1 = 0xAA;
23438 : int reg3 = 0;
23439 : int reg4 = 0;
23440 : int reg_mask, tmp1, tmp2;
23441 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23442 : STRIP_UNARY (operands[4])))
23443 : {
23444 : reg4 = reg1;
23445 : reg3 = reg6;
23446 : operands[6] = operands[3];
23447 : }
23448 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23449 : STRIP_UNARY (operands[4])))
23450 : {
23451 : reg4 = reg2;
23452 : reg3 = reg6;
23453 : operands[6] = operands[3];
23454 : }
23455 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23456 : STRIP_UNARY (operands[3])))
23457 : {
23458 : reg4 = reg6;
23459 : reg3 = reg1;
23460 : operands[6] = operands[4];
23461 : }
23462 : else
23463 : {
23464 : reg4 = reg6;
23465 : reg3 = reg2;
23466 : operands[6] = operands[4];
23467 : }
23468 :
23469 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23470 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23471 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23472 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23473 :
23474 : tmp1 = reg1 ^ reg2;
23475 : tmp2 = tmp1 ^ reg3;
23476 : reg_mask = tmp2 & reg4;
23477 : reg_mask &= 0xFF;
23478 :
23479 : operands[1] = STRIP_UNARY (operands[1]);
23480 : operands[2] = STRIP_UNARY (operands[2]);
23481 : operands[6] = STRIP_UNARY (operands[6]);
23482 : operands[5] = GEN_INT (reg_mask);
23483 : if (!register_operand (operands[2], V32HImode))
23484 : operands[2] = force_reg (V32HImode, operands[2]);
23485 : if (!register_operand (operands[6], V32HImode))
23486 : operands[6] = force_reg (V32HImode, operands[6]);
23487 :
23488 : }
23489 : #undef DONE
23490 : #undef FAIL
23491 : static const uint8_t expand_encoding[] = {
23492 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23493 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23494 : 0x25
23495 : };
23496 : return complete_seq (expand_encoding, operands);
23497 : }
23498 :
23499 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23500 : extern rtx_insn *gen_split_2496 (rtx_insn *, rtx *);
23501 : rtx_insn *
23502 : gen_split_2496 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23503 : {
23504 : if (dump_file)
23505 : fprintf (dump_file, "Splitting with gen_split_2496 (sse.md:14227)\n");
23506 : start_sequence ();
23507 : #define FAIL return (end_sequence (), nullptr)
23508 : #define DONE return end_sequence ()
23509 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23510 : {
23511 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23512 : int reg6 = 0xF0;
23513 : int reg2 = 0xCC;
23514 : int reg1 = 0xAA;
23515 : int reg3 = 0;
23516 : int reg4 = 0;
23517 : int reg_mask, tmp1, tmp2;
23518 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23519 : STRIP_UNARY (operands[4])))
23520 : {
23521 : reg4 = reg1;
23522 : reg3 = reg6;
23523 : operands[6] = operands[3];
23524 : }
23525 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23526 : STRIP_UNARY (operands[4])))
23527 : {
23528 : reg4 = reg2;
23529 : reg3 = reg6;
23530 : operands[6] = operands[3];
23531 : }
23532 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23533 : STRIP_UNARY (operands[3])))
23534 : {
23535 : reg4 = reg6;
23536 : reg3 = reg1;
23537 : operands[6] = operands[4];
23538 : }
23539 : else
23540 : {
23541 : reg4 = reg6;
23542 : reg3 = reg2;
23543 : operands[6] = operands[4];
23544 : }
23545 :
23546 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23547 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23548 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23549 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23550 :
23551 : tmp1 = reg1 ^ reg2;
23552 : tmp2 = tmp1 & reg3;
23553 : reg_mask = tmp2 | reg4;
23554 : reg_mask &= 0xFF;
23555 :
23556 : operands[1] = STRIP_UNARY (operands[1]);
23557 : operands[2] = STRIP_UNARY (operands[2]);
23558 : operands[6] = STRIP_UNARY (operands[6]);
23559 : operands[5] = GEN_INT (reg_mask);
23560 : if (!register_operand (operands[2], V16HImode))
23561 : operands[2] = force_reg (V16HImode, operands[2]);
23562 : if (!register_operand (operands[6], V16HImode))
23563 : operands[6] = force_reg (V16HImode, operands[6]);
23564 :
23565 : }
23566 : #undef DONE
23567 : #undef FAIL
23568 : static const uint8_t expand_encoding[] = {
23569 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23570 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23571 : 0x25
23572 : };
23573 : return complete_seq (expand_encoding, operands);
23574 : }
23575 :
23576 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23577 : extern rtx_insn *gen_split_2506 (rtx_insn *, rtx *);
23578 : rtx_insn *
23579 : gen_split_2506 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23580 : {
23581 : if (dump_file)
23582 : fprintf (dump_file, "Splitting with gen_split_2506 (sse.md:14227)\n");
23583 : start_sequence ();
23584 : #define FAIL return (end_sequence (), nullptr)
23585 : #define DONE return end_sequence ()
23586 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23587 : {
23588 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23589 : int reg6 = 0xF0;
23590 : int reg2 = 0xCC;
23591 : int reg1 = 0xAA;
23592 : int reg3 = 0;
23593 : int reg4 = 0;
23594 : int reg_mask, tmp1, tmp2;
23595 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23596 : STRIP_UNARY (operands[4])))
23597 : {
23598 : reg4 = reg1;
23599 : reg3 = reg6;
23600 : operands[6] = operands[3];
23601 : }
23602 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23603 : STRIP_UNARY (operands[4])))
23604 : {
23605 : reg4 = reg2;
23606 : reg3 = reg6;
23607 : operands[6] = operands[3];
23608 : }
23609 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23610 : STRIP_UNARY (operands[3])))
23611 : {
23612 : reg4 = reg6;
23613 : reg3 = reg1;
23614 : operands[6] = operands[4];
23615 : }
23616 : else
23617 : {
23618 : reg4 = reg6;
23619 : reg3 = reg2;
23620 : operands[6] = operands[4];
23621 : }
23622 :
23623 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23624 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23625 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23626 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23627 :
23628 : tmp1 = reg1 ^ reg2;
23629 : tmp2 = tmp1 | reg3;
23630 : reg_mask = tmp2 ^ reg4;
23631 : reg_mask &= 0xFF;
23632 :
23633 : operands[1] = STRIP_UNARY (operands[1]);
23634 : operands[2] = STRIP_UNARY (operands[2]);
23635 : operands[6] = STRIP_UNARY (operands[6]);
23636 : operands[5] = GEN_INT (reg_mask);
23637 : if (!register_operand (operands[2], V16HImode))
23638 : operands[2] = force_reg (V16HImode, operands[2]);
23639 : if (!register_operand (operands[6], V16HImode))
23640 : operands[6] = force_reg (V16HImode, operands[6]);
23641 :
23642 : }
23643 : #undef DONE
23644 : #undef FAIL
23645 : static const uint8_t expand_encoding[] = {
23646 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23647 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23648 : 0x25
23649 : };
23650 : return complete_seq (expand_encoding, operands);
23651 : }
23652 :
23653 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23654 : extern rtx_insn *gen_split_2516 (rtx_insn *, rtx *);
23655 : rtx_insn *
23656 : gen_split_2516 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23657 : {
23658 : if (dump_file)
23659 : fprintf (dump_file, "Splitting with gen_split_2516 (sse.md:14227)\n");
23660 : start_sequence ();
23661 : #define FAIL return (end_sequence (), nullptr)
23662 : #define DONE return end_sequence ()
23663 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23664 : {
23665 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23666 : int reg6 = 0xF0;
23667 : int reg2 = 0xCC;
23668 : int reg1 = 0xAA;
23669 : int reg3 = 0;
23670 : int reg4 = 0;
23671 : int reg_mask, tmp1, tmp2;
23672 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23673 : STRIP_UNARY (operands[4])))
23674 : {
23675 : reg4 = reg1;
23676 : reg3 = reg6;
23677 : operands[6] = operands[3];
23678 : }
23679 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23680 : STRIP_UNARY (operands[4])))
23681 : {
23682 : reg4 = reg2;
23683 : reg3 = reg6;
23684 : operands[6] = operands[3];
23685 : }
23686 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23687 : STRIP_UNARY (operands[3])))
23688 : {
23689 : reg4 = reg6;
23690 : reg3 = reg1;
23691 : operands[6] = operands[4];
23692 : }
23693 : else
23694 : {
23695 : reg4 = reg6;
23696 : reg3 = reg2;
23697 : operands[6] = operands[4];
23698 : }
23699 :
23700 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23701 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23702 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23703 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23704 :
23705 : tmp1 = reg1 & reg2;
23706 : tmp2 = tmp1 & reg3;
23707 : reg_mask = tmp2 & reg4;
23708 : reg_mask &= 0xFF;
23709 :
23710 : operands[1] = STRIP_UNARY (operands[1]);
23711 : operands[2] = STRIP_UNARY (operands[2]);
23712 : operands[6] = STRIP_UNARY (operands[6]);
23713 : operands[5] = GEN_INT (reg_mask);
23714 : if (!register_operand (operands[2], V8HImode))
23715 : operands[2] = force_reg (V8HImode, operands[2]);
23716 : if (!register_operand (operands[6], V8HImode))
23717 : operands[6] = force_reg (V8HImode, operands[6]);
23718 :
23719 : }
23720 : #undef DONE
23721 : #undef FAIL
23722 : static const uint8_t expand_encoding[] = {
23723 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23724 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23725 : 0x25
23726 : };
23727 : return complete_seq (expand_encoding, operands);
23728 : }
23729 :
23730 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23731 : extern rtx_insn *gen_split_2526 (rtx_insn *, rtx *);
23732 : rtx_insn *
23733 : gen_split_2526 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23734 : {
23735 : if (dump_file)
23736 : fprintf (dump_file, "Splitting with gen_split_2526 (sse.md:14227)\n");
23737 : start_sequence ();
23738 : #define FAIL return (end_sequence (), nullptr)
23739 : #define DONE return end_sequence ()
23740 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23741 : {
23742 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23743 : int reg6 = 0xF0;
23744 : int reg2 = 0xCC;
23745 : int reg1 = 0xAA;
23746 : int reg3 = 0;
23747 : int reg4 = 0;
23748 : int reg_mask, tmp1, tmp2;
23749 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23750 : STRIP_UNARY (operands[4])))
23751 : {
23752 : reg4 = reg1;
23753 : reg3 = reg6;
23754 : operands[6] = operands[3];
23755 : }
23756 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23757 : STRIP_UNARY (operands[4])))
23758 : {
23759 : reg4 = reg2;
23760 : reg3 = reg6;
23761 : operands[6] = operands[3];
23762 : }
23763 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23764 : STRIP_UNARY (operands[3])))
23765 : {
23766 : reg4 = reg6;
23767 : reg3 = reg1;
23768 : operands[6] = operands[4];
23769 : }
23770 : else
23771 : {
23772 : reg4 = reg6;
23773 : reg3 = reg2;
23774 : operands[6] = operands[4];
23775 : }
23776 :
23777 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23778 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23779 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23780 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23781 :
23782 : tmp1 = reg1 & reg2;
23783 : tmp2 = tmp1 | reg3;
23784 : reg_mask = tmp2 | reg4;
23785 : reg_mask &= 0xFF;
23786 :
23787 : operands[1] = STRIP_UNARY (operands[1]);
23788 : operands[2] = STRIP_UNARY (operands[2]);
23789 : operands[6] = STRIP_UNARY (operands[6]);
23790 : operands[5] = GEN_INT (reg_mask);
23791 : if (!register_operand (operands[2], V8HImode))
23792 : operands[2] = force_reg (V8HImode, operands[2]);
23793 : if (!register_operand (operands[6], V8HImode))
23794 : operands[6] = force_reg (V8HImode, operands[6]);
23795 :
23796 : }
23797 : #undef DONE
23798 : #undef FAIL
23799 : static const uint8_t expand_encoding[] = {
23800 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23801 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23802 : 0x25
23803 : };
23804 : return complete_seq (expand_encoding, operands);
23805 : }
23806 :
23807 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23808 : extern rtx_insn *gen_split_2536 (rtx_insn *, rtx *);
23809 : rtx_insn *
23810 : gen_split_2536 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23811 : {
23812 : if (dump_file)
23813 : fprintf (dump_file, "Splitting with gen_split_2536 (sse.md:14227)\n");
23814 : start_sequence ();
23815 : #define FAIL return (end_sequence (), nullptr)
23816 : #define DONE return end_sequence ()
23817 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23818 : {
23819 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23820 : int reg6 = 0xF0;
23821 : int reg2 = 0xCC;
23822 : int reg1 = 0xAA;
23823 : int reg3 = 0;
23824 : int reg4 = 0;
23825 : int reg_mask, tmp1, tmp2;
23826 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23827 : STRIP_UNARY (operands[4])))
23828 : {
23829 : reg4 = reg1;
23830 : reg3 = reg6;
23831 : operands[6] = operands[3];
23832 : }
23833 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23834 : STRIP_UNARY (operands[4])))
23835 : {
23836 : reg4 = reg2;
23837 : reg3 = reg6;
23838 : operands[6] = operands[3];
23839 : }
23840 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23841 : STRIP_UNARY (operands[3])))
23842 : {
23843 : reg4 = reg6;
23844 : reg3 = reg1;
23845 : operands[6] = operands[4];
23846 : }
23847 : else
23848 : {
23849 : reg4 = reg6;
23850 : reg3 = reg2;
23851 : operands[6] = operands[4];
23852 : }
23853 :
23854 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23855 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23856 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23857 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23858 :
23859 : tmp1 = reg1 & reg2;
23860 : tmp2 = tmp1 ^ reg3;
23861 : reg_mask = tmp2 ^ reg4;
23862 : reg_mask &= 0xFF;
23863 :
23864 : operands[1] = STRIP_UNARY (operands[1]);
23865 : operands[2] = STRIP_UNARY (operands[2]);
23866 : operands[6] = STRIP_UNARY (operands[6]);
23867 : operands[5] = GEN_INT (reg_mask);
23868 : if (!register_operand (operands[2], V8HImode))
23869 : operands[2] = force_reg (V8HImode, operands[2]);
23870 : if (!register_operand (operands[6], V8HImode))
23871 : operands[6] = force_reg (V8HImode, operands[6]);
23872 :
23873 : }
23874 : #undef DONE
23875 : #undef FAIL
23876 : static const uint8_t expand_encoding[] = {
23877 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23878 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23879 : 0x25
23880 : };
23881 : return complete_seq (expand_encoding, operands);
23882 : }
23883 :
23884 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23885 : extern rtx_insn *gen_split_2546 (rtx_insn *, rtx *);
23886 : rtx_insn *
23887 : gen_split_2546 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23888 : {
23889 : if (dump_file)
23890 : fprintf (dump_file, "Splitting with gen_split_2546 (sse.md:14227)\n");
23891 : start_sequence ();
23892 : #define FAIL return (end_sequence (), nullptr)
23893 : #define DONE return end_sequence ()
23894 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23895 : {
23896 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23897 : int reg6 = 0xF0;
23898 : int reg2 = 0xCC;
23899 : int reg1 = 0xAA;
23900 : int reg3 = 0;
23901 : int reg4 = 0;
23902 : int reg_mask, tmp1, tmp2;
23903 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23904 : STRIP_UNARY (operands[4])))
23905 : {
23906 : reg4 = reg1;
23907 : reg3 = reg6;
23908 : operands[6] = operands[3];
23909 : }
23910 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23911 : STRIP_UNARY (operands[4])))
23912 : {
23913 : reg4 = reg2;
23914 : reg3 = reg6;
23915 : operands[6] = operands[3];
23916 : }
23917 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23918 : STRIP_UNARY (operands[3])))
23919 : {
23920 : reg4 = reg6;
23921 : reg3 = reg1;
23922 : operands[6] = operands[4];
23923 : }
23924 : else
23925 : {
23926 : reg4 = reg6;
23927 : reg3 = reg2;
23928 : operands[6] = operands[4];
23929 : }
23930 :
23931 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23932 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23933 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23934 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23935 :
23936 : tmp1 = reg1 | reg2;
23937 : tmp2 = tmp1 & reg3;
23938 : reg_mask = tmp2 & reg4;
23939 : reg_mask &= 0xFF;
23940 :
23941 : operands[1] = STRIP_UNARY (operands[1]);
23942 : operands[2] = STRIP_UNARY (operands[2]);
23943 : operands[6] = STRIP_UNARY (operands[6]);
23944 : operands[5] = GEN_INT (reg_mask);
23945 : if (!register_operand (operands[2], V16SImode))
23946 : operands[2] = force_reg (V16SImode, operands[2]);
23947 : if (!register_operand (operands[6], V16SImode))
23948 : operands[6] = force_reg (V16SImode, operands[6]);
23949 :
23950 : }
23951 : #undef DONE
23952 : #undef FAIL
23953 : static const uint8_t expand_encoding[] = {
23954 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
23955 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23956 : 0x25
23957 : };
23958 : return complete_seq (expand_encoding, operands);
23959 : }
23960 :
23961 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23962 : extern rtx_insn *gen_split_2556 (rtx_insn *, rtx *);
23963 : rtx_insn *
23964 : gen_split_2556 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23965 : {
23966 : if (dump_file)
23967 : fprintf (dump_file, "Splitting with gen_split_2556 (sse.md:14227)\n");
23968 : start_sequence ();
23969 : #define FAIL return (end_sequence (), nullptr)
23970 : #define DONE return end_sequence ()
23971 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23972 : {
23973 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23974 : int reg6 = 0xF0;
23975 : int reg2 = 0xCC;
23976 : int reg1 = 0xAA;
23977 : int reg3 = 0;
23978 : int reg4 = 0;
23979 : int reg_mask, tmp1, tmp2;
23980 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23981 : STRIP_UNARY (operands[4])))
23982 : {
23983 : reg4 = reg1;
23984 : reg3 = reg6;
23985 : operands[6] = operands[3];
23986 : }
23987 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23988 : STRIP_UNARY (operands[4])))
23989 : {
23990 : reg4 = reg2;
23991 : reg3 = reg6;
23992 : operands[6] = operands[3];
23993 : }
23994 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23995 : STRIP_UNARY (operands[3])))
23996 : {
23997 : reg4 = reg6;
23998 : reg3 = reg1;
23999 : operands[6] = operands[4];
24000 : }
24001 : else
24002 : {
24003 : reg4 = reg6;
24004 : reg3 = reg2;
24005 : operands[6] = operands[4];
24006 : }
24007 :
24008 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24009 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24010 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24011 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24012 :
24013 : tmp1 = reg1 | reg2;
24014 : tmp2 = tmp1 | reg3;
24015 : reg_mask = tmp2 | reg4;
24016 : reg_mask &= 0xFF;
24017 :
24018 : operands[1] = STRIP_UNARY (operands[1]);
24019 : operands[2] = STRIP_UNARY (operands[2]);
24020 : operands[6] = STRIP_UNARY (operands[6]);
24021 : operands[5] = GEN_INT (reg_mask);
24022 : if (!register_operand (operands[2], V16SImode))
24023 : operands[2] = force_reg (V16SImode, operands[2]);
24024 : if (!register_operand (operands[6], V16SImode))
24025 : operands[6] = force_reg (V16SImode, operands[6]);
24026 :
24027 : }
24028 : #undef DONE
24029 : #undef FAIL
24030 : static const uint8_t expand_encoding[] = {
24031 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24032 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24033 : 0x25
24034 : };
24035 : return complete_seq (expand_encoding, operands);
24036 : }
24037 :
24038 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24039 : extern rtx_insn *gen_split_2566 (rtx_insn *, rtx *);
24040 : rtx_insn *
24041 : gen_split_2566 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24042 : {
24043 : if (dump_file)
24044 : fprintf (dump_file, "Splitting with gen_split_2566 (sse.md:14227)\n");
24045 : start_sequence ();
24046 : #define FAIL return (end_sequence (), nullptr)
24047 : #define DONE return end_sequence ()
24048 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24049 : {
24050 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24051 : int reg6 = 0xF0;
24052 : int reg2 = 0xCC;
24053 : int reg1 = 0xAA;
24054 : int reg3 = 0;
24055 : int reg4 = 0;
24056 : int reg_mask, tmp1, tmp2;
24057 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24058 : STRIP_UNARY (operands[4])))
24059 : {
24060 : reg4 = reg1;
24061 : reg3 = reg6;
24062 : operands[6] = operands[3];
24063 : }
24064 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24065 : STRIP_UNARY (operands[4])))
24066 : {
24067 : reg4 = reg2;
24068 : reg3 = reg6;
24069 : operands[6] = operands[3];
24070 : }
24071 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24072 : STRIP_UNARY (operands[3])))
24073 : {
24074 : reg4 = reg6;
24075 : reg3 = reg1;
24076 : operands[6] = operands[4];
24077 : }
24078 : else
24079 : {
24080 : reg4 = reg6;
24081 : reg3 = reg2;
24082 : operands[6] = operands[4];
24083 : }
24084 :
24085 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24086 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24087 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24088 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24089 :
24090 : tmp1 = reg1 | reg2;
24091 : tmp2 = tmp1 ^ reg3;
24092 : reg_mask = tmp2 ^ reg4;
24093 : reg_mask &= 0xFF;
24094 :
24095 : operands[1] = STRIP_UNARY (operands[1]);
24096 : operands[2] = STRIP_UNARY (operands[2]);
24097 : operands[6] = STRIP_UNARY (operands[6]);
24098 : operands[5] = GEN_INT (reg_mask);
24099 : if (!register_operand (operands[2], V16SImode))
24100 : operands[2] = force_reg (V16SImode, operands[2]);
24101 : if (!register_operand (operands[6], V16SImode))
24102 : operands[6] = force_reg (V16SImode, operands[6]);
24103 :
24104 : }
24105 : #undef DONE
24106 : #undef FAIL
24107 : static const uint8_t expand_encoding[] = {
24108 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24109 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24110 : 0x25
24111 : };
24112 : return complete_seq (expand_encoding, operands);
24113 : }
24114 :
24115 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24116 : extern rtx_insn *gen_split_2576 (rtx_insn *, rtx *);
24117 : rtx_insn *
24118 : gen_split_2576 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24119 : {
24120 : if (dump_file)
24121 : fprintf (dump_file, "Splitting with gen_split_2576 (sse.md:14227)\n");
24122 : start_sequence ();
24123 : #define FAIL return (end_sequence (), nullptr)
24124 : #define DONE return end_sequence ()
24125 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24126 : {
24127 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24128 : int reg6 = 0xF0;
24129 : int reg2 = 0xCC;
24130 : int reg1 = 0xAA;
24131 : int reg3 = 0;
24132 : int reg4 = 0;
24133 : int reg_mask, tmp1, tmp2;
24134 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24135 : STRIP_UNARY (operands[4])))
24136 : {
24137 : reg4 = reg1;
24138 : reg3 = reg6;
24139 : operands[6] = operands[3];
24140 : }
24141 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24142 : STRIP_UNARY (operands[4])))
24143 : {
24144 : reg4 = reg2;
24145 : reg3 = reg6;
24146 : operands[6] = operands[3];
24147 : }
24148 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24149 : STRIP_UNARY (operands[3])))
24150 : {
24151 : reg4 = reg6;
24152 : reg3 = reg1;
24153 : operands[6] = operands[4];
24154 : }
24155 : else
24156 : {
24157 : reg4 = reg6;
24158 : reg3 = reg2;
24159 : operands[6] = operands[4];
24160 : }
24161 :
24162 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24163 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24164 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24165 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24166 :
24167 : tmp1 = reg1 ^ reg2;
24168 : tmp2 = tmp1 & reg3;
24169 : reg_mask = tmp2 & reg4;
24170 : reg_mask &= 0xFF;
24171 :
24172 : operands[1] = STRIP_UNARY (operands[1]);
24173 : operands[2] = STRIP_UNARY (operands[2]);
24174 : operands[6] = STRIP_UNARY (operands[6]);
24175 : operands[5] = GEN_INT (reg_mask);
24176 : if (!register_operand (operands[2], V8SImode))
24177 : operands[2] = force_reg (V8SImode, operands[2]);
24178 : if (!register_operand (operands[6], V8SImode))
24179 : operands[6] = force_reg (V8SImode, operands[6]);
24180 :
24181 : }
24182 : #undef DONE
24183 : #undef FAIL
24184 : static const uint8_t expand_encoding[] = {
24185 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24186 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24187 : 0x25
24188 : };
24189 : return complete_seq (expand_encoding, operands);
24190 : }
24191 :
24192 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24193 : extern rtx_insn *gen_split_2586 (rtx_insn *, rtx *);
24194 : rtx_insn *
24195 : gen_split_2586 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24196 : {
24197 : if (dump_file)
24198 : fprintf (dump_file, "Splitting with gen_split_2586 (sse.md:14227)\n");
24199 : start_sequence ();
24200 : #define FAIL return (end_sequence (), nullptr)
24201 : #define DONE return end_sequence ()
24202 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24203 : {
24204 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24205 : int reg6 = 0xF0;
24206 : int reg2 = 0xCC;
24207 : int reg1 = 0xAA;
24208 : int reg3 = 0;
24209 : int reg4 = 0;
24210 : int reg_mask, tmp1, tmp2;
24211 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24212 : STRIP_UNARY (operands[4])))
24213 : {
24214 : reg4 = reg1;
24215 : reg3 = reg6;
24216 : operands[6] = operands[3];
24217 : }
24218 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24219 : STRIP_UNARY (operands[4])))
24220 : {
24221 : reg4 = reg2;
24222 : reg3 = reg6;
24223 : operands[6] = operands[3];
24224 : }
24225 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24226 : STRIP_UNARY (operands[3])))
24227 : {
24228 : reg4 = reg6;
24229 : reg3 = reg1;
24230 : operands[6] = operands[4];
24231 : }
24232 : else
24233 : {
24234 : reg4 = reg6;
24235 : reg3 = reg2;
24236 : operands[6] = operands[4];
24237 : }
24238 :
24239 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24240 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24241 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24242 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24243 :
24244 : tmp1 = reg1 ^ reg2;
24245 : tmp2 = tmp1 | reg3;
24246 : reg_mask = tmp2 | reg4;
24247 : reg_mask &= 0xFF;
24248 :
24249 : operands[1] = STRIP_UNARY (operands[1]);
24250 : operands[2] = STRIP_UNARY (operands[2]);
24251 : operands[6] = STRIP_UNARY (operands[6]);
24252 : operands[5] = GEN_INT (reg_mask);
24253 : if (!register_operand (operands[2], V8SImode))
24254 : operands[2] = force_reg (V8SImode, operands[2]);
24255 : if (!register_operand (operands[6], V8SImode))
24256 : operands[6] = force_reg (V8SImode, operands[6]);
24257 :
24258 : }
24259 : #undef DONE
24260 : #undef FAIL
24261 : static const uint8_t expand_encoding[] = {
24262 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24263 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24264 : 0x25
24265 : };
24266 : return complete_seq (expand_encoding, operands);
24267 : }
24268 :
24269 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24270 : extern rtx_insn *gen_split_2596 (rtx_insn *, rtx *);
24271 : rtx_insn *
24272 : gen_split_2596 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24273 : {
24274 : if (dump_file)
24275 : fprintf (dump_file, "Splitting with gen_split_2596 (sse.md:14227)\n");
24276 : start_sequence ();
24277 : #define FAIL return (end_sequence (), nullptr)
24278 : #define DONE return end_sequence ()
24279 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24280 : {
24281 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24282 : int reg6 = 0xF0;
24283 : int reg2 = 0xCC;
24284 : int reg1 = 0xAA;
24285 : int reg3 = 0;
24286 : int reg4 = 0;
24287 : int reg_mask, tmp1, tmp2;
24288 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24289 : STRIP_UNARY (operands[4])))
24290 : {
24291 : reg4 = reg1;
24292 : reg3 = reg6;
24293 : operands[6] = operands[3];
24294 : }
24295 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24296 : STRIP_UNARY (operands[4])))
24297 : {
24298 : reg4 = reg2;
24299 : reg3 = reg6;
24300 : operands[6] = operands[3];
24301 : }
24302 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24303 : STRIP_UNARY (operands[3])))
24304 : {
24305 : reg4 = reg6;
24306 : reg3 = reg1;
24307 : operands[6] = operands[4];
24308 : }
24309 : else
24310 : {
24311 : reg4 = reg6;
24312 : reg3 = reg2;
24313 : operands[6] = operands[4];
24314 : }
24315 :
24316 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24317 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24318 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24319 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24320 :
24321 : tmp1 = reg1 ^ reg2;
24322 : tmp2 = tmp1 ^ reg3;
24323 : reg_mask = tmp2 ^ reg4;
24324 : reg_mask &= 0xFF;
24325 :
24326 : operands[1] = STRIP_UNARY (operands[1]);
24327 : operands[2] = STRIP_UNARY (operands[2]);
24328 : operands[6] = STRIP_UNARY (operands[6]);
24329 : operands[5] = GEN_INT (reg_mask);
24330 : if (!register_operand (operands[2], V8SImode))
24331 : operands[2] = force_reg (V8SImode, operands[2]);
24332 : if (!register_operand (operands[6], V8SImode))
24333 : operands[6] = force_reg (V8SImode, operands[6]);
24334 :
24335 : }
24336 : #undef DONE
24337 : #undef FAIL
24338 : static const uint8_t expand_encoding[] = {
24339 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24340 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24341 : 0x25
24342 : };
24343 : return complete_seq (expand_encoding, operands);
24344 : }
24345 :
24346 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24347 : extern rtx_insn *gen_split_2606 (rtx_insn *, rtx *);
24348 : rtx_insn *
24349 : gen_split_2606 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24350 : {
24351 : if (dump_file)
24352 : fprintf (dump_file, "Splitting with gen_split_2606 (sse.md:14227)\n");
24353 : start_sequence ();
24354 : #define FAIL return (end_sequence (), nullptr)
24355 : #define DONE return end_sequence ()
24356 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24357 : {
24358 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24359 : int reg6 = 0xF0;
24360 : int reg2 = 0xCC;
24361 : int reg1 = 0xAA;
24362 : int reg3 = 0;
24363 : int reg4 = 0;
24364 : int reg_mask, tmp1, tmp2;
24365 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24366 : STRIP_UNARY (operands[4])))
24367 : {
24368 : reg4 = reg1;
24369 : reg3 = reg6;
24370 : operands[6] = operands[3];
24371 : }
24372 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24373 : STRIP_UNARY (operands[4])))
24374 : {
24375 : reg4 = reg2;
24376 : reg3 = reg6;
24377 : operands[6] = operands[3];
24378 : }
24379 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24380 : STRIP_UNARY (operands[3])))
24381 : {
24382 : reg4 = reg6;
24383 : reg3 = reg1;
24384 : operands[6] = operands[4];
24385 : }
24386 : else
24387 : {
24388 : reg4 = reg6;
24389 : reg3 = reg2;
24390 : operands[6] = operands[4];
24391 : }
24392 :
24393 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24394 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24395 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24396 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24397 :
24398 : tmp1 = reg1 & reg2;
24399 : tmp2 = tmp1 | reg3;
24400 : reg_mask = tmp2 & reg4;
24401 : reg_mask &= 0xFF;
24402 :
24403 : operands[1] = STRIP_UNARY (operands[1]);
24404 : operands[2] = STRIP_UNARY (operands[2]);
24405 : operands[6] = STRIP_UNARY (operands[6]);
24406 : operands[5] = GEN_INT (reg_mask);
24407 : if (!register_operand (operands[2], V4SImode))
24408 : operands[2] = force_reg (V4SImode, operands[2]);
24409 : if (!register_operand (operands[6], V4SImode))
24410 : operands[6] = force_reg (V4SImode, operands[6]);
24411 :
24412 : }
24413 : #undef DONE
24414 : #undef FAIL
24415 : static const uint8_t expand_encoding[] = {
24416 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24417 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24418 : 0x25
24419 : };
24420 : return complete_seq (expand_encoding, operands);
24421 : }
24422 :
24423 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24424 : extern rtx_insn *gen_split_2616 (rtx_insn *, rtx *);
24425 : rtx_insn *
24426 : gen_split_2616 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24427 : {
24428 : if (dump_file)
24429 : fprintf (dump_file, "Splitting with gen_split_2616 (sse.md:14227)\n");
24430 : start_sequence ();
24431 : #define FAIL return (end_sequence (), nullptr)
24432 : #define DONE return end_sequence ()
24433 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24434 : {
24435 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24436 : int reg6 = 0xF0;
24437 : int reg2 = 0xCC;
24438 : int reg1 = 0xAA;
24439 : int reg3 = 0;
24440 : int reg4 = 0;
24441 : int reg_mask, tmp1, tmp2;
24442 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24443 : STRIP_UNARY (operands[4])))
24444 : {
24445 : reg4 = reg1;
24446 : reg3 = reg6;
24447 : operands[6] = operands[3];
24448 : }
24449 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24450 : STRIP_UNARY (operands[4])))
24451 : {
24452 : reg4 = reg2;
24453 : reg3 = reg6;
24454 : operands[6] = operands[3];
24455 : }
24456 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24457 : STRIP_UNARY (operands[3])))
24458 : {
24459 : reg4 = reg6;
24460 : reg3 = reg1;
24461 : operands[6] = operands[4];
24462 : }
24463 : else
24464 : {
24465 : reg4 = reg6;
24466 : reg3 = reg2;
24467 : operands[6] = operands[4];
24468 : }
24469 :
24470 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24471 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24472 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24473 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24474 :
24475 : tmp1 = reg1 & reg2;
24476 : tmp2 = tmp1 ^ reg3;
24477 : reg_mask = tmp2 | reg4;
24478 : reg_mask &= 0xFF;
24479 :
24480 : operands[1] = STRIP_UNARY (operands[1]);
24481 : operands[2] = STRIP_UNARY (operands[2]);
24482 : operands[6] = STRIP_UNARY (operands[6]);
24483 : operands[5] = GEN_INT (reg_mask);
24484 : if (!register_operand (operands[2], V4SImode))
24485 : operands[2] = force_reg (V4SImode, operands[2]);
24486 : if (!register_operand (operands[6], V4SImode))
24487 : operands[6] = force_reg (V4SImode, operands[6]);
24488 :
24489 : }
24490 : #undef DONE
24491 : #undef FAIL
24492 : static const uint8_t expand_encoding[] = {
24493 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24494 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24495 : 0x25
24496 : };
24497 : return complete_seq (expand_encoding, operands);
24498 : }
24499 :
24500 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24501 : extern rtx_insn *gen_split_2626 (rtx_insn *, rtx *);
24502 : rtx_insn *
24503 : gen_split_2626 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24504 : {
24505 : if (dump_file)
24506 : fprintf (dump_file, "Splitting with gen_split_2626 (sse.md:14227)\n");
24507 : start_sequence ();
24508 : #define FAIL return (end_sequence (), nullptr)
24509 : #define DONE return end_sequence ()
24510 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24511 : {
24512 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24513 : int reg6 = 0xF0;
24514 : int reg2 = 0xCC;
24515 : int reg1 = 0xAA;
24516 : int reg3 = 0;
24517 : int reg4 = 0;
24518 : int reg_mask, tmp1, tmp2;
24519 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24520 : STRIP_UNARY (operands[4])))
24521 : {
24522 : reg4 = reg1;
24523 : reg3 = reg6;
24524 : operands[6] = operands[3];
24525 : }
24526 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24527 : STRIP_UNARY (operands[4])))
24528 : {
24529 : reg4 = reg2;
24530 : reg3 = reg6;
24531 : operands[6] = operands[3];
24532 : }
24533 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24534 : STRIP_UNARY (operands[3])))
24535 : {
24536 : reg4 = reg6;
24537 : reg3 = reg1;
24538 : operands[6] = operands[4];
24539 : }
24540 : else
24541 : {
24542 : reg4 = reg6;
24543 : reg3 = reg2;
24544 : operands[6] = operands[4];
24545 : }
24546 :
24547 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24548 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24549 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24550 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24551 :
24552 : tmp1 = reg1 & reg2;
24553 : tmp2 = tmp1 & reg3;
24554 : reg_mask = tmp2 ^ reg4;
24555 : reg_mask &= 0xFF;
24556 :
24557 : operands[1] = STRIP_UNARY (operands[1]);
24558 : operands[2] = STRIP_UNARY (operands[2]);
24559 : operands[6] = STRIP_UNARY (operands[6]);
24560 : operands[5] = GEN_INT (reg_mask);
24561 : if (!register_operand (operands[2], V8DImode))
24562 : operands[2] = force_reg (V8DImode, operands[2]);
24563 : if (!register_operand (operands[6], V8DImode))
24564 : operands[6] = force_reg (V8DImode, operands[6]);
24565 :
24566 : }
24567 : #undef DONE
24568 : #undef FAIL
24569 : static const uint8_t expand_encoding[] = {
24570 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24571 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24572 : 0x25
24573 : };
24574 : return complete_seq (expand_encoding, operands);
24575 : }
24576 :
24577 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24578 : extern rtx_insn *gen_split_2636 (rtx_insn *, rtx *);
24579 : rtx_insn *
24580 : gen_split_2636 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24581 : {
24582 : if (dump_file)
24583 : fprintf (dump_file, "Splitting with gen_split_2636 (sse.md:14227)\n");
24584 : start_sequence ();
24585 : #define FAIL return (end_sequence (), nullptr)
24586 : #define DONE return end_sequence ()
24587 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24588 : {
24589 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24590 : int reg6 = 0xF0;
24591 : int reg2 = 0xCC;
24592 : int reg1 = 0xAA;
24593 : int reg3 = 0;
24594 : int reg4 = 0;
24595 : int reg_mask, tmp1, tmp2;
24596 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24597 : STRIP_UNARY (operands[4])))
24598 : {
24599 : reg4 = reg1;
24600 : reg3 = reg6;
24601 : operands[6] = operands[3];
24602 : }
24603 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24604 : STRIP_UNARY (operands[4])))
24605 : {
24606 : reg4 = reg2;
24607 : reg3 = reg6;
24608 : operands[6] = operands[3];
24609 : }
24610 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24611 : STRIP_UNARY (operands[3])))
24612 : {
24613 : reg4 = reg6;
24614 : reg3 = reg1;
24615 : operands[6] = operands[4];
24616 : }
24617 : else
24618 : {
24619 : reg4 = reg6;
24620 : reg3 = reg2;
24621 : operands[6] = operands[4];
24622 : }
24623 :
24624 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24625 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24626 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24627 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24628 :
24629 : tmp1 = reg1 | reg2;
24630 : tmp2 = tmp1 | reg3;
24631 : reg_mask = tmp2 & reg4;
24632 : reg_mask &= 0xFF;
24633 :
24634 : operands[1] = STRIP_UNARY (operands[1]);
24635 : operands[2] = STRIP_UNARY (operands[2]);
24636 : operands[6] = STRIP_UNARY (operands[6]);
24637 : operands[5] = GEN_INT (reg_mask);
24638 : if (!register_operand (operands[2], V8DImode))
24639 : operands[2] = force_reg (V8DImode, operands[2]);
24640 : if (!register_operand (operands[6], V8DImode))
24641 : operands[6] = force_reg (V8DImode, operands[6]);
24642 :
24643 : }
24644 : #undef DONE
24645 : #undef FAIL
24646 : static const uint8_t expand_encoding[] = {
24647 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24648 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24649 : 0x25
24650 : };
24651 : return complete_seq (expand_encoding, operands);
24652 : }
24653 :
24654 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24655 : extern rtx_insn *gen_split_2646 (rtx_insn *, rtx *);
24656 : rtx_insn *
24657 : gen_split_2646 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24658 : {
24659 : if (dump_file)
24660 : fprintf (dump_file, "Splitting with gen_split_2646 (sse.md:14227)\n");
24661 : start_sequence ();
24662 : #define FAIL return (end_sequence (), nullptr)
24663 : #define DONE return end_sequence ()
24664 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24665 : {
24666 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24667 : int reg6 = 0xF0;
24668 : int reg2 = 0xCC;
24669 : int reg1 = 0xAA;
24670 : int reg3 = 0;
24671 : int reg4 = 0;
24672 : int reg_mask, tmp1, tmp2;
24673 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24674 : STRIP_UNARY (operands[4])))
24675 : {
24676 : reg4 = reg1;
24677 : reg3 = reg6;
24678 : operands[6] = operands[3];
24679 : }
24680 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24681 : STRIP_UNARY (operands[4])))
24682 : {
24683 : reg4 = reg2;
24684 : reg3 = reg6;
24685 : operands[6] = operands[3];
24686 : }
24687 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24688 : STRIP_UNARY (operands[3])))
24689 : {
24690 : reg4 = reg6;
24691 : reg3 = reg1;
24692 : operands[6] = operands[4];
24693 : }
24694 : else
24695 : {
24696 : reg4 = reg6;
24697 : reg3 = reg2;
24698 : operands[6] = operands[4];
24699 : }
24700 :
24701 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24702 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24703 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24704 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24705 :
24706 : tmp1 = reg1 | reg2;
24707 : tmp2 = tmp1 ^ reg3;
24708 : reg_mask = tmp2 | reg4;
24709 : reg_mask &= 0xFF;
24710 :
24711 : operands[1] = STRIP_UNARY (operands[1]);
24712 : operands[2] = STRIP_UNARY (operands[2]);
24713 : operands[6] = STRIP_UNARY (operands[6]);
24714 : operands[5] = GEN_INT (reg_mask);
24715 : if (!register_operand (operands[2], V8DImode))
24716 : operands[2] = force_reg (V8DImode, operands[2]);
24717 : if (!register_operand (operands[6], V8DImode))
24718 : operands[6] = force_reg (V8DImode, operands[6]);
24719 :
24720 : }
24721 : #undef DONE
24722 : #undef FAIL
24723 : static const uint8_t expand_encoding[] = {
24724 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24725 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24726 : 0x25
24727 : };
24728 : return complete_seq (expand_encoding, operands);
24729 : }
24730 :
24731 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24732 : extern rtx_insn *gen_split_2656 (rtx_insn *, rtx *);
24733 : rtx_insn *
24734 : gen_split_2656 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24735 : {
24736 : if (dump_file)
24737 : fprintf (dump_file, "Splitting with gen_split_2656 (sse.md:14227)\n");
24738 : start_sequence ();
24739 : #define FAIL return (end_sequence (), nullptr)
24740 : #define DONE return end_sequence ()
24741 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24742 : {
24743 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24744 : int reg6 = 0xF0;
24745 : int reg2 = 0xCC;
24746 : int reg1 = 0xAA;
24747 : int reg3 = 0;
24748 : int reg4 = 0;
24749 : int reg_mask, tmp1, tmp2;
24750 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24751 : STRIP_UNARY (operands[4])))
24752 : {
24753 : reg4 = reg1;
24754 : reg3 = reg6;
24755 : operands[6] = operands[3];
24756 : }
24757 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24758 : STRIP_UNARY (operands[4])))
24759 : {
24760 : reg4 = reg2;
24761 : reg3 = reg6;
24762 : operands[6] = operands[3];
24763 : }
24764 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24765 : STRIP_UNARY (operands[3])))
24766 : {
24767 : reg4 = reg6;
24768 : reg3 = reg1;
24769 : operands[6] = operands[4];
24770 : }
24771 : else
24772 : {
24773 : reg4 = reg6;
24774 : reg3 = reg2;
24775 : operands[6] = operands[4];
24776 : }
24777 :
24778 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24779 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24780 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24781 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24782 :
24783 : tmp1 = reg1 | reg2;
24784 : tmp2 = tmp1 & reg3;
24785 : reg_mask = tmp2 ^ reg4;
24786 : reg_mask &= 0xFF;
24787 :
24788 : operands[1] = STRIP_UNARY (operands[1]);
24789 : operands[2] = STRIP_UNARY (operands[2]);
24790 : operands[6] = STRIP_UNARY (operands[6]);
24791 : operands[5] = GEN_INT (reg_mask);
24792 : if (!register_operand (operands[2], V4DImode))
24793 : operands[2] = force_reg (V4DImode, operands[2]);
24794 : if (!register_operand (operands[6], V4DImode))
24795 : operands[6] = force_reg (V4DImode, operands[6]);
24796 :
24797 : }
24798 : #undef DONE
24799 : #undef FAIL
24800 : static const uint8_t expand_encoding[] = {
24801 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24802 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24803 : 0x25
24804 : };
24805 : return complete_seq (expand_encoding, operands);
24806 : }
24807 :
24808 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24809 : extern rtx_insn *gen_split_2666 (rtx_insn *, rtx *);
24810 : rtx_insn *
24811 : gen_split_2666 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24812 : {
24813 : if (dump_file)
24814 : fprintf (dump_file, "Splitting with gen_split_2666 (sse.md:14227)\n");
24815 : start_sequence ();
24816 : #define FAIL return (end_sequence (), nullptr)
24817 : #define DONE return end_sequence ()
24818 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24819 : {
24820 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24821 : int reg6 = 0xF0;
24822 : int reg2 = 0xCC;
24823 : int reg1 = 0xAA;
24824 : int reg3 = 0;
24825 : int reg4 = 0;
24826 : int reg_mask, tmp1, tmp2;
24827 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24828 : STRIP_UNARY (operands[4])))
24829 : {
24830 : reg4 = reg1;
24831 : reg3 = reg6;
24832 : operands[6] = operands[3];
24833 : }
24834 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24835 : STRIP_UNARY (operands[4])))
24836 : {
24837 : reg4 = reg2;
24838 : reg3 = reg6;
24839 : operands[6] = operands[3];
24840 : }
24841 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24842 : STRIP_UNARY (operands[3])))
24843 : {
24844 : reg4 = reg6;
24845 : reg3 = reg1;
24846 : operands[6] = operands[4];
24847 : }
24848 : else
24849 : {
24850 : reg4 = reg6;
24851 : reg3 = reg2;
24852 : operands[6] = operands[4];
24853 : }
24854 :
24855 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24856 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24857 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24858 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24859 :
24860 : tmp1 = reg1 ^ reg2;
24861 : tmp2 = tmp1 | reg3;
24862 : reg_mask = tmp2 & reg4;
24863 : reg_mask &= 0xFF;
24864 :
24865 : operands[1] = STRIP_UNARY (operands[1]);
24866 : operands[2] = STRIP_UNARY (operands[2]);
24867 : operands[6] = STRIP_UNARY (operands[6]);
24868 : operands[5] = GEN_INT (reg_mask);
24869 : if (!register_operand (operands[2], V4DImode))
24870 : operands[2] = force_reg (V4DImode, operands[2]);
24871 : if (!register_operand (operands[6], V4DImode))
24872 : operands[6] = force_reg (V4DImode, operands[6]);
24873 :
24874 : }
24875 : #undef DONE
24876 : #undef FAIL
24877 : static const uint8_t expand_encoding[] = {
24878 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24879 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24880 : 0x25
24881 : };
24882 : return complete_seq (expand_encoding, operands);
24883 : }
24884 :
24885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24886 : extern rtx_insn *gen_split_2676 (rtx_insn *, rtx *);
24887 : rtx_insn *
24888 : gen_split_2676 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24889 : {
24890 : if (dump_file)
24891 : fprintf (dump_file, "Splitting with gen_split_2676 (sse.md:14227)\n");
24892 : start_sequence ();
24893 : #define FAIL return (end_sequence (), nullptr)
24894 : #define DONE return end_sequence ()
24895 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24896 : {
24897 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24898 : int reg6 = 0xF0;
24899 : int reg2 = 0xCC;
24900 : int reg1 = 0xAA;
24901 : int reg3 = 0;
24902 : int reg4 = 0;
24903 : int reg_mask, tmp1, tmp2;
24904 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24905 : STRIP_UNARY (operands[4])))
24906 : {
24907 : reg4 = reg1;
24908 : reg3 = reg6;
24909 : operands[6] = operands[3];
24910 : }
24911 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24912 : STRIP_UNARY (operands[4])))
24913 : {
24914 : reg4 = reg2;
24915 : reg3 = reg6;
24916 : operands[6] = operands[3];
24917 : }
24918 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24919 : STRIP_UNARY (operands[3])))
24920 : {
24921 : reg4 = reg6;
24922 : reg3 = reg1;
24923 : operands[6] = operands[4];
24924 : }
24925 : else
24926 : {
24927 : reg4 = reg6;
24928 : reg3 = reg2;
24929 : operands[6] = operands[4];
24930 : }
24931 :
24932 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24933 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24934 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24935 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24936 :
24937 : tmp1 = reg1 ^ reg2;
24938 : tmp2 = tmp1 ^ reg3;
24939 : reg_mask = tmp2 | reg4;
24940 : reg_mask &= 0xFF;
24941 :
24942 : operands[1] = STRIP_UNARY (operands[1]);
24943 : operands[2] = STRIP_UNARY (operands[2]);
24944 : operands[6] = STRIP_UNARY (operands[6]);
24945 : operands[5] = GEN_INT (reg_mask);
24946 : if (!register_operand (operands[2], V4DImode))
24947 : operands[2] = force_reg (V4DImode, operands[2]);
24948 : if (!register_operand (operands[6], V4DImode))
24949 : operands[6] = force_reg (V4DImode, operands[6]);
24950 :
24951 : }
24952 : #undef DONE
24953 : #undef FAIL
24954 : static const uint8_t expand_encoding[] = {
24955 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24956 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24957 : 0x25
24958 : };
24959 : return complete_seq (expand_encoding, operands);
24960 : }
24961 :
24962 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24963 : extern rtx_insn *gen_split_2686 (rtx_insn *, rtx *);
24964 : rtx_insn *
24965 : gen_split_2686 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24966 : {
24967 : if (dump_file)
24968 : fprintf (dump_file, "Splitting with gen_split_2686 (sse.md:14227)\n");
24969 : start_sequence ();
24970 : #define FAIL return (end_sequence (), nullptr)
24971 : #define DONE return end_sequence ()
24972 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24973 : {
24974 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24975 : int reg6 = 0xF0;
24976 : int reg2 = 0xCC;
24977 : int reg1 = 0xAA;
24978 : int reg3 = 0;
24979 : int reg4 = 0;
24980 : int reg_mask, tmp1, tmp2;
24981 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24982 : STRIP_UNARY (operands[4])))
24983 : {
24984 : reg4 = reg1;
24985 : reg3 = reg6;
24986 : operands[6] = operands[3];
24987 : }
24988 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24989 : STRIP_UNARY (operands[4])))
24990 : {
24991 : reg4 = reg2;
24992 : reg3 = reg6;
24993 : operands[6] = operands[3];
24994 : }
24995 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24996 : STRIP_UNARY (operands[3])))
24997 : {
24998 : reg4 = reg6;
24999 : reg3 = reg1;
25000 : operands[6] = operands[4];
25001 : }
25002 : else
25003 : {
25004 : reg4 = reg6;
25005 : reg3 = reg2;
25006 : operands[6] = operands[4];
25007 : }
25008 :
25009 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25010 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25011 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25012 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25013 :
25014 : tmp1 = reg1 ^ reg2;
25015 : tmp2 = tmp1 & reg3;
25016 : reg_mask = tmp2 ^ reg4;
25017 : reg_mask &= 0xFF;
25018 :
25019 : operands[1] = STRIP_UNARY (operands[1]);
25020 : operands[2] = STRIP_UNARY (operands[2]);
25021 : operands[6] = STRIP_UNARY (operands[6]);
25022 : operands[5] = GEN_INT (reg_mask);
25023 : if (!register_operand (operands[2], V2DImode))
25024 : operands[2] = force_reg (V2DImode, operands[2]);
25025 : if (!register_operand (operands[6], V2DImode))
25026 : operands[6] = force_reg (V2DImode, operands[6]);
25027 :
25028 : }
25029 : #undef DONE
25030 : #undef FAIL
25031 : static const uint8_t expand_encoding[] = {
25032 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25033 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25034 : 0x25
25035 : };
25036 : return complete_seq (expand_encoding, operands);
25037 : }
25038 :
25039 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25040 : extern rtx_insn *gen_split_2696 (rtx_insn *, rtx *);
25041 : rtx_insn *
25042 : gen_split_2696 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25043 : {
25044 : if (dump_file)
25045 : fprintf (dump_file, "Splitting with gen_split_2696 (sse.md:14227)\n");
25046 : start_sequence ();
25047 : #define FAIL return (end_sequence (), nullptr)
25048 : #define DONE return end_sequence ()
25049 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25050 : {
25051 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25052 : int reg6 = 0xF0;
25053 : int reg2 = 0xCC;
25054 : int reg1 = 0xAA;
25055 : int reg3 = 0;
25056 : int reg4 = 0;
25057 : int reg_mask, tmp1, tmp2;
25058 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25059 : STRIP_UNARY (operands[4])))
25060 : {
25061 : reg4 = reg1;
25062 : reg3 = reg6;
25063 : operands[6] = operands[3];
25064 : }
25065 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25066 : STRIP_UNARY (operands[4])))
25067 : {
25068 : reg4 = reg2;
25069 : reg3 = reg6;
25070 : operands[6] = operands[3];
25071 : }
25072 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25073 : STRIP_UNARY (operands[3])))
25074 : {
25075 : reg4 = reg6;
25076 : reg3 = reg1;
25077 : operands[6] = operands[4];
25078 : }
25079 : else
25080 : {
25081 : reg4 = reg6;
25082 : reg3 = reg2;
25083 : operands[6] = operands[4];
25084 : }
25085 :
25086 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25087 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25088 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25089 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25090 :
25091 : tmp1 = reg1 & reg2;
25092 : tmp2 = tmp1 ^ reg3;
25093 : reg_mask = tmp2 & reg4;
25094 : reg_mask &= 0xFF;
25095 :
25096 : operands[1] = STRIP_UNARY (operands[1]);
25097 : operands[2] = STRIP_UNARY (operands[2]);
25098 : operands[6] = STRIP_UNARY (operands[6]);
25099 : operands[5] = GEN_INT (reg_mask);
25100 : if (!register_operand (operands[2], V2DImode))
25101 : operands[2] = force_reg (V2DImode, operands[2]);
25102 : if (!register_operand (operands[6], V2DImode))
25103 : operands[6] = force_reg (V2DImode, operands[6]);
25104 :
25105 : }
25106 : #undef DONE
25107 : #undef FAIL
25108 : static const uint8_t expand_encoding[] = {
25109 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25110 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25111 : 0x25
25112 : };
25113 : return complete_seq (expand_encoding, operands);
25114 : }
25115 :
25116 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25117 : extern rtx_insn *gen_split_2706 (rtx_insn *, rtx *);
25118 : rtx_insn *
25119 : gen_split_2706 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25120 : {
25121 : if (dump_file)
25122 : fprintf (dump_file, "Splitting with gen_split_2706 (sse.md:14227)\n");
25123 : start_sequence ();
25124 : #define FAIL return (end_sequence (), nullptr)
25125 : #define DONE return end_sequence ()
25126 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25127 : {
25128 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25129 : int reg6 = 0xF0;
25130 : int reg2 = 0xCC;
25131 : int reg1 = 0xAA;
25132 : int reg3 = 0;
25133 : int reg4 = 0;
25134 : int reg_mask, tmp1, tmp2;
25135 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25136 : STRIP_UNARY (operands[4])))
25137 : {
25138 : reg4 = reg1;
25139 : reg3 = reg6;
25140 : operands[6] = operands[3];
25141 : }
25142 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25143 : STRIP_UNARY (operands[4])))
25144 : {
25145 : reg4 = reg2;
25146 : reg3 = reg6;
25147 : operands[6] = operands[3];
25148 : }
25149 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25150 : STRIP_UNARY (operands[3])))
25151 : {
25152 : reg4 = reg6;
25153 : reg3 = reg1;
25154 : operands[6] = operands[4];
25155 : }
25156 : else
25157 : {
25158 : reg4 = reg6;
25159 : reg3 = reg2;
25160 : operands[6] = operands[4];
25161 : }
25162 :
25163 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25164 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25165 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25166 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25167 :
25168 : tmp1 = reg1 & reg2;
25169 : tmp2 = tmp1 & reg3;
25170 : reg_mask = tmp2 | reg4;
25171 : reg_mask &= 0xFF;
25172 :
25173 : operands[1] = STRIP_UNARY (operands[1]);
25174 : operands[2] = STRIP_UNARY (operands[2]);
25175 : operands[6] = STRIP_UNARY (operands[6]);
25176 : operands[5] = GEN_INT (reg_mask);
25177 : if (!register_operand (operands[2], V32HFmode))
25178 : operands[2] = force_reg (V32HFmode, operands[2]);
25179 : if (!register_operand (operands[6], V32HFmode))
25180 : operands[6] = force_reg (V32HFmode, operands[6]);
25181 :
25182 : }
25183 : #undef DONE
25184 : #undef FAIL
25185 : static const uint8_t expand_encoding[] = {
25186 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25187 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25188 : 0x25
25189 : };
25190 : return complete_seq (expand_encoding, operands);
25191 : }
25192 :
25193 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25194 : extern rtx_insn *gen_split_2716 (rtx_insn *, rtx *);
25195 : rtx_insn *
25196 : gen_split_2716 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25197 : {
25198 : if (dump_file)
25199 : fprintf (dump_file, "Splitting with gen_split_2716 (sse.md:14227)\n");
25200 : start_sequence ();
25201 : #define FAIL return (end_sequence (), nullptr)
25202 : #define DONE return end_sequence ()
25203 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25204 : {
25205 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25206 : int reg6 = 0xF0;
25207 : int reg2 = 0xCC;
25208 : int reg1 = 0xAA;
25209 : int reg3 = 0;
25210 : int reg4 = 0;
25211 : int reg_mask, tmp1, tmp2;
25212 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25213 : STRIP_UNARY (operands[4])))
25214 : {
25215 : reg4 = reg1;
25216 : reg3 = reg6;
25217 : operands[6] = operands[3];
25218 : }
25219 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25220 : STRIP_UNARY (operands[4])))
25221 : {
25222 : reg4 = reg2;
25223 : reg3 = reg6;
25224 : operands[6] = operands[3];
25225 : }
25226 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25227 : STRIP_UNARY (operands[3])))
25228 : {
25229 : reg4 = reg6;
25230 : reg3 = reg1;
25231 : operands[6] = operands[4];
25232 : }
25233 : else
25234 : {
25235 : reg4 = reg6;
25236 : reg3 = reg2;
25237 : operands[6] = operands[4];
25238 : }
25239 :
25240 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25241 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25242 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25243 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25244 :
25245 : tmp1 = reg1 & reg2;
25246 : tmp2 = tmp1 | reg3;
25247 : reg_mask = tmp2 ^ reg4;
25248 : reg_mask &= 0xFF;
25249 :
25250 : operands[1] = STRIP_UNARY (operands[1]);
25251 : operands[2] = STRIP_UNARY (operands[2]);
25252 : operands[6] = STRIP_UNARY (operands[6]);
25253 : operands[5] = GEN_INT (reg_mask);
25254 : if (!register_operand (operands[2], V32HFmode))
25255 : operands[2] = force_reg (V32HFmode, operands[2]);
25256 : if (!register_operand (operands[6], V32HFmode))
25257 : operands[6] = force_reg (V32HFmode, operands[6]);
25258 :
25259 : }
25260 : #undef DONE
25261 : #undef FAIL
25262 : static const uint8_t expand_encoding[] = {
25263 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25264 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25265 : 0x25
25266 : };
25267 : return complete_seq (expand_encoding, operands);
25268 : }
25269 :
25270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25271 : extern rtx_insn *gen_split_2726 (rtx_insn *, rtx *);
25272 : rtx_insn *
25273 : gen_split_2726 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25274 : {
25275 : if (dump_file)
25276 : fprintf (dump_file, "Splitting with gen_split_2726 (sse.md:14227)\n");
25277 : start_sequence ();
25278 : #define FAIL return (end_sequence (), nullptr)
25279 : #define DONE return end_sequence ()
25280 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25281 : {
25282 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25283 : int reg6 = 0xF0;
25284 : int reg2 = 0xCC;
25285 : int reg1 = 0xAA;
25286 : int reg3 = 0;
25287 : int reg4 = 0;
25288 : int reg_mask, tmp1, tmp2;
25289 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25290 : STRIP_UNARY (operands[4])))
25291 : {
25292 : reg4 = reg1;
25293 : reg3 = reg6;
25294 : operands[6] = operands[3];
25295 : }
25296 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25297 : STRIP_UNARY (operands[4])))
25298 : {
25299 : reg4 = reg2;
25300 : reg3 = reg6;
25301 : operands[6] = operands[3];
25302 : }
25303 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25304 : STRIP_UNARY (operands[3])))
25305 : {
25306 : reg4 = reg6;
25307 : reg3 = reg1;
25308 : operands[6] = operands[4];
25309 : }
25310 : else
25311 : {
25312 : reg4 = reg6;
25313 : reg3 = reg2;
25314 : operands[6] = operands[4];
25315 : }
25316 :
25317 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25318 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25319 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25320 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25321 :
25322 : tmp1 = reg1 | reg2;
25323 : tmp2 = tmp1 ^ reg3;
25324 : reg_mask = tmp2 & reg4;
25325 : reg_mask &= 0xFF;
25326 :
25327 : operands[1] = STRIP_UNARY (operands[1]);
25328 : operands[2] = STRIP_UNARY (operands[2]);
25329 : operands[6] = STRIP_UNARY (operands[6]);
25330 : operands[5] = GEN_INT (reg_mask);
25331 : if (!register_operand (operands[2], V32HFmode))
25332 : operands[2] = force_reg (V32HFmode, operands[2]);
25333 : if (!register_operand (operands[6], V32HFmode))
25334 : operands[6] = force_reg (V32HFmode, operands[6]);
25335 :
25336 : }
25337 : #undef DONE
25338 : #undef FAIL
25339 : static const uint8_t expand_encoding[] = {
25340 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25341 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25342 : 0x25
25343 : };
25344 : return complete_seq (expand_encoding, operands);
25345 : }
25346 :
25347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25348 : extern rtx_insn *gen_split_2736 (rtx_insn *, rtx *);
25349 : rtx_insn *
25350 : gen_split_2736 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25351 : {
25352 : if (dump_file)
25353 : fprintf (dump_file, "Splitting with gen_split_2736 (sse.md:14227)\n");
25354 : start_sequence ();
25355 : #define FAIL return (end_sequence (), nullptr)
25356 : #define DONE return end_sequence ()
25357 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25358 : {
25359 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25360 : int reg6 = 0xF0;
25361 : int reg2 = 0xCC;
25362 : int reg1 = 0xAA;
25363 : int reg3 = 0;
25364 : int reg4 = 0;
25365 : int reg_mask, tmp1, tmp2;
25366 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25367 : STRIP_UNARY (operands[4])))
25368 : {
25369 : reg4 = reg1;
25370 : reg3 = reg6;
25371 : operands[6] = operands[3];
25372 : }
25373 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25374 : STRIP_UNARY (operands[4])))
25375 : {
25376 : reg4 = reg2;
25377 : reg3 = reg6;
25378 : operands[6] = operands[3];
25379 : }
25380 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25381 : STRIP_UNARY (operands[3])))
25382 : {
25383 : reg4 = reg6;
25384 : reg3 = reg1;
25385 : operands[6] = operands[4];
25386 : }
25387 : else
25388 : {
25389 : reg4 = reg6;
25390 : reg3 = reg2;
25391 : operands[6] = operands[4];
25392 : }
25393 :
25394 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25395 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25396 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25397 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25398 :
25399 : tmp1 = reg1 | reg2;
25400 : tmp2 = tmp1 & reg3;
25401 : reg_mask = tmp2 | reg4;
25402 : reg_mask &= 0xFF;
25403 :
25404 : operands[1] = STRIP_UNARY (operands[1]);
25405 : operands[2] = STRIP_UNARY (operands[2]);
25406 : operands[6] = STRIP_UNARY (operands[6]);
25407 : operands[5] = GEN_INT (reg_mask);
25408 : if (!register_operand (operands[2], V16HFmode))
25409 : operands[2] = force_reg (V16HFmode, operands[2]);
25410 : if (!register_operand (operands[6], V16HFmode))
25411 : operands[6] = force_reg (V16HFmode, operands[6]);
25412 :
25413 : }
25414 : #undef DONE
25415 : #undef FAIL
25416 : static const uint8_t expand_encoding[] = {
25417 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25418 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25419 : 0x25
25420 : };
25421 : return complete_seq (expand_encoding, operands);
25422 : }
25423 :
25424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25425 : extern rtx_insn *gen_split_2746 (rtx_insn *, rtx *);
25426 : rtx_insn *
25427 : gen_split_2746 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25428 : {
25429 : if (dump_file)
25430 : fprintf (dump_file, "Splitting with gen_split_2746 (sse.md:14227)\n");
25431 : start_sequence ();
25432 : #define FAIL return (end_sequence (), nullptr)
25433 : #define DONE return end_sequence ()
25434 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25435 : {
25436 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25437 : int reg6 = 0xF0;
25438 : int reg2 = 0xCC;
25439 : int reg1 = 0xAA;
25440 : int reg3 = 0;
25441 : int reg4 = 0;
25442 : int reg_mask, tmp1, tmp2;
25443 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25444 : STRIP_UNARY (operands[4])))
25445 : {
25446 : reg4 = reg1;
25447 : reg3 = reg6;
25448 : operands[6] = operands[3];
25449 : }
25450 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25451 : STRIP_UNARY (operands[4])))
25452 : {
25453 : reg4 = reg2;
25454 : reg3 = reg6;
25455 : operands[6] = operands[3];
25456 : }
25457 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25458 : STRIP_UNARY (operands[3])))
25459 : {
25460 : reg4 = reg6;
25461 : reg3 = reg1;
25462 : operands[6] = operands[4];
25463 : }
25464 : else
25465 : {
25466 : reg4 = reg6;
25467 : reg3 = reg2;
25468 : operands[6] = operands[4];
25469 : }
25470 :
25471 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25472 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25473 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25474 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25475 :
25476 : tmp1 = reg1 | reg2;
25477 : tmp2 = tmp1 | reg3;
25478 : reg_mask = tmp2 ^ reg4;
25479 : reg_mask &= 0xFF;
25480 :
25481 : operands[1] = STRIP_UNARY (operands[1]);
25482 : operands[2] = STRIP_UNARY (operands[2]);
25483 : operands[6] = STRIP_UNARY (operands[6]);
25484 : operands[5] = GEN_INT (reg_mask);
25485 : if (!register_operand (operands[2], V16HFmode))
25486 : operands[2] = force_reg (V16HFmode, operands[2]);
25487 : if (!register_operand (operands[6], V16HFmode))
25488 : operands[6] = force_reg (V16HFmode, operands[6]);
25489 :
25490 : }
25491 : #undef DONE
25492 : #undef FAIL
25493 : static const uint8_t expand_encoding[] = {
25494 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25495 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25496 : 0x25
25497 : };
25498 : return complete_seq (expand_encoding, operands);
25499 : }
25500 :
25501 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25502 : extern rtx_insn *gen_split_2756 (rtx_insn *, rtx *);
25503 : rtx_insn *
25504 : gen_split_2756 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25505 : {
25506 : if (dump_file)
25507 : fprintf (dump_file, "Splitting with gen_split_2756 (sse.md:14227)\n");
25508 : start_sequence ();
25509 : #define FAIL return (end_sequence (), nullptr)
25510 : #define DONE return end_sequence ()
25511 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25512 : {
25513 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25514 : int reg6 = 0xF0;
25515 : int reg2 = 0xCC;
25516 : int reg1 = 0xAA;
25517 : int reg3 = 0;
25518 : int reg4 = 0;
25519 : int reg_mask, tmp1, tmp2;
25520 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25521 : STRIP_UNARY (operands[4])))
25522 : {
25523 : reg4 = reg1;
25524 : reg3 = reg6;
25525 : operands[6] = operands[3];
25526 : }
25527 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25528 : STRIP_UNARY (operands[4])))
25529 : {
25530 : reg4 = reg2;
25531 : reg3 = reg6;
25532 : operands[6] = operands[3];
25533 : }
25534 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25535 : STRIP_UNARY (operands[3])))
25536 : {
25537 : reg4 = reg6;
25538 : reg3 = reg1;
25539 : operands[6] = operands[4];
25540 : }
25541 : else
25542 : {
25543 : reg4 = reg6;
25544 : reg3 = reg2;
25545 : operands[6] = operands[4];
25546 : }
25547 :
25548 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25549 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25550 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25551 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25552 :
25553 : tmp1 = reg1 ^ reg2;
25554 : tmp2 = tmp1 ^ reg3;
25555 : reg_mask = tmp2 & reg4;
25556 : reg_mask &= 0xFF;
25557 :
25558 : operands[1] = STRIP_UNARY (operands[1]);
25559 : operands[2] = STRIP_UNARY (operands[2]);
25560 : operands[6] = STRIP_UNARY (operands[6]);
25561 : operands[5] = GEN_INT (reg_mask);
25562 : if (!register_operand (operands[2], V16HFmode))
25563 : operands[2] = force_reg (V16HFmode, operands[2]);
25564 : if (!register_operand (operands[6], V16HFmode))
25565 : operands[6] = force_reg (V16HFmode, operands[6]);
25566 :
25567 : }
25568 : #undef DONE
25569 : #undef FAIL
25570 : static const uint8_t expand_encoding[] = {
25571 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25572 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25573 : 0x25
25574 : };
25575 : return complete_seq (expand_encoding, operands);
25576 : }
25577 :
25578 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25579 : extern rtx_insn *gen_split_2766 (rtx_insn *, rtx *);
25580 : rtx_insn *
25581 : gen_split_2766 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25582 : {
25583 : if (dump_file)
25584 : fprintf (dump_file, "Splitting with gen_split_2766 (sse.md:14227)\n");
25585 : start_sequence ();
25586 : #define FAIL return (end_sequence (), nullptr)
25587 : #define DONE return end_sequence ()
25588 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25589 : {
25590 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25591 : int reg6 = 0xF0;
25592 : int reg2 = 0xCC;
25593 : int reg1 = 0xAA;
25594 : int reg3 = 0;
25595 : int reg4 = 0;
25596 : int reg_mask, tmp1, tmp2;
25597 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25598 : STRIP_UNARY (operands[4])))
25599 : {
25600 : reg4 = reg1;
25601 : reg3 = reg6;
25602 : operands[6] = operands[3];
25603 : }
25604 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25605 : STRIP_UNARY (operands[4])))
25606 : {
25607 : reg4 = reg2;
25608 : reg3 = reg6;
25609 : operands[6] = operands[3];
25610 : }
25611 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25612 : STRIP_UNARY (operands[3])))
25613 : {
25614 : reg4 = reg6;
25615 : reg3 = reg1;
25616 : operands[6] = operands[4];
25617 : }
25618 : else
25619 : {
25620 : reg4 = reg6;
25621 : reg3 = reg2;
25622 : operands[6] = operands[4];
25623 : }
25624 :
25625 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25626 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25627 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25628 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25629 :
25630 : tmp1 = reg1 ^ reg2;
25631 : tmp2 = tmp1 & reg3;
25632 : reg_mask = tmp2 | reg4;
25633 : reg_mask &= 0xFF;
25634 :
25635 : operands[1] = STRIP_UNARY (operands[1]);
25636 : operands[2] = STRIP_UNARY (operands[2]);
25637 : operands[6] = STRIP_UNARY (operands[6]);
25638 : operands[5] = GEN_INT (reg_mask);
25639 : if (!register_operand (operands[2], V8HFmode))
25640 : operands[2] = force_reg (V8HFmode, operands[2]);
25641 : if (!register_operand (operands[6], V8HFmode))
25642 : operands[6] = force_reg (V8HFmode, operands[6]);
25643 :
25644 : }
25645 : #undef DONE
25646 : #undef FAIL
25647 : static const uint8_t expand_encoding[] = {
25648 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25649 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25650 : 0x25
25651 : };
25652 : return complete_seq (expand_encoding, operands);
25653 : }
25654 :
25655 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25656 : extern rtx_insn *gen_split_2776 (rtx_insn *, rtx *);
25657 : rtx_insn *
25658 : gen_split_2776 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25659 : {
25660 : if (dump_file)
25661 : fprintf (dump_file, "Splitting with gen_split_2776 (sse.md:14227)\n");
25662 : start_sequence ();
25663 : #define FAIL return (end_sequence (), nullptr)
25664 : #define DONE return end_sequence ()
25665 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25666 : {
25667 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25668 : int reg6 = 0xF0;
25669 : int reg2 = 0xCC;
25670 : int reg1 = 0xAA;
25671 : int reg3 = 0;
25672 : int reg4 = 0;
25673 : int reg_mask, tmp1, tmp2;
25674 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25675 : STRIP_UNARY (operands[4])))
25676 : {
25677 : reg4 = reg1;
25678 : reg3 = reg6;
25679 : operands[6] = operands[3];
25680 : }
25681 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25682 : STRIP_UNARY (operands[4])))
25683 : {
25684 : reg4 = reg2;
25685 : reg3 = reg6;
25686 : operands[6] = operands[3];
25687 : }
25688 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25689 : STRIP_UNARY (operands[3])))
25690 : {
25691 : reg4 = reg6;
25692 : reg3 = reg1;
25693 : operands[6] = operands[4];
25694 : }
25695 : else
25696 : {
25697 : reg4 = reg6;
25698 : reg3 = reg2;
25699 : operands[6] = operands[4];
25700 : }
25701 :
25702 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25703 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25704 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25705 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25706 :
25707 : tmp1 = reg1 ^ reg2;
25708 : tmp2 = tmp1 | reg3;
25709 : reg_mask = tmp2 ^ reg4;
25710 : reg_mask &= 0xFF;
25711 :
25712 : operands[1] = STRIP_UNARY (operands[1]);
25713 : operands[2] = STRIP_UNARY (operands[2]);
25714 : operands[6] = STRIP_UNARY (operands[6]);
25715 : operands[5] = GEN_INT (reg_mask);
25716 : if (!register_operand (operands[2], V8HFmode))
25717 : operands[2] = force_reg (V8HFmode, operands[2]);
25718 : if (!register_operand (operands[6], V8HFmode))
25719 : operands[6] = force_reg (V8HFmode, operands[6]);
25720 :
25721 : }
25722 : #undef DONE
25723 : #undef FAIL
25724 : static const uint8_t expand_encoding[] = {
25725 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25726 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25727 : 0x25
25728 : };
25729 : return complete_seq (expand_encoding, operands);
25730 : }
25731 :
25732 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25733 : extern rtx_insn *gen_split_2786 (rtx_insn *, rtx *);
25734 : rtx_insn *
25735 : gen_split_2786 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25736 : {
25737 : if (dump_file)
25738 : fprintf (dump_file, "Splitting with gen_split_2786 (sse.md:14227)\n");
25739 : start_sequence ();
25740 : #define FAIL return (end_sequence (), nullptr)
25741 : #define DONE return end_sequence ()
25742 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25743 : {
25744 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25745 : int reg6 = 0xF0;
25746 : int reg2 = 0xCC;
25747 : int reg1 = 0xAA;
25748 : int reg3 = 0;
25749 : int reg4 = 0;
25750 : int reg_mask, tmp1, tmp2;
25751 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25752 : STRIP_UNARY (operands[4])))
25753 : {
25754 : reg4 = reg1;
25755 : reg3 = reg6;
25756 : operands[6] = operands[3];
25757 : }
25758 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25759 : STRIP_UNARY (operands[4])))
25760 : {
25761 : reg4 = reg2;
25762 : reg3 = reg6;
25763 : operands[6] = operands[3];
25764 : }
25765 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25766 : STRIP_UNARY (operands[3])))
25767 : {
25768 : reg4 = reg6;
25769 : reg3 = reg1;
25770 : operands[6] = operands[4];
25771 : }
25772 : else
25773 : {
25774 : reg4 = reg6;
25775 : reg3 = reg2;
25776 : operands[6] = operands[4];
25777 : }
25778 :
25779 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25780 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25781 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25782 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25783 :
25784 : tmp1 = reg1 & reg2;
25785 : tmp2 = tmp1 & reg3;
25786 : reg_mask = tmp2 & reg4;
25787 : reg_mask &= 0xFF;
25788 :
25789 : operands[1] = STRIP_UNARY (operands[1]);
25790 : operands[2] = STRIP_UNARY (operands[2]);
25791 : operands[6] = STRIP_UNARY (operands[6]);
25792 : operands[5] = GEN_INT (reg_mask);
25793 : if (!register_operand (operands[2], V32BFmode))
25794 : operands[2] = force_reg (V32BFmode, operands[2]);
25795 : if (!register_operand (operands[6], V32BFmode))
25796 : operands[6] = force_reg (V32BFmode, operands[6]);
25797 :
25798 : }
25799 : #undef DONE
25800 : #undef FAIL
25801 : static const uint8_t expand_encoding[] = {
25802 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25803 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25804 : 0x25
25805 : };
25806 : return complete_seq (expand_encoding, operands);
25807 : }
25808 :
25809 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25810 : extern rtx_insn *gen_split_2796 (rtx_insn *, rtx *);
25811 : rtx_insn *
25812 : gen_split_2796 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25813 : {
25814 : if (dump_file)
25815 : fprintf (dump_file, "Splitting with gen_split_2796 (sse.md:14227)\n");
25816 : start_sequence ();
25817 : #define FAIL return (end_sequence (), nullptr)
25818 : #define DONE return end_sequence ()
25819 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25820 : {
25821 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25822 : int reg6 = 0xF0;
25823 : int reg2 = 0xCC;
25824 : int reg1 = 0xAA;
25825 : int reg3 = 0;
25826 : int reg4 = 0;
25827 : int reg_mask, tmp1, tmp2;
25828 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25829 : STRIP_UNARY (operands[4])))
25830 : {
25831 : reg4 = reg1;
25832 : reg3 = reg6;
25833 : operands[6] = operands[3];
25834 : }
25835 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25836 : STRIP_UNARY (operands[4])))
25837 : {
25838 : reg4 = reg2;
25839 : reg3 = reg6;
25840 : operands[6] = operands[3];
25841 : }
25842 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25843 : STRIP_UNARY (operands[3])))
25844 : {
25845 : reg4 = reg6;
25846 : reg3 = reg1;
25847 : operands[6] = operands[4];
25848 : }
25849 : else
25850 : {
25851 : reg4 = reg6;
25852 : reg3 = reg2;
25853 : operands[6] = operands[4];
25854 : }
25855 :
25856 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25857 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25858 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25859 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25860 :
25861 : tmp1 = reg1 & reg2;
25862 : tmp2 = tmp1 | reg3;
25863 : reg_mask = tmp2 | reg4;
25864 : reg_mask &= 0xFF;
25865 :
25866 : operands[1] = STRIP_UNARY (operands[1]);
25867 : operands[2] = STRIP_UNARY (operands[2]);
25868 : operands[6] = STRIP_UNARY (operands[6]);
25869 : operands[5] = GEN_INT (reg_mask);
25870 : if (!register_operand (operands[2], V32BFmode))
25871 : operands[2] = force_reg (V32BFmode, operands[2]);
25872 : if (!register_operand (operands[6], V32BFmode))
25873 : operands[6] = force_reg (V32BFmode, operands[6]);
25874 :
25875 : }
25876 : #undef DONE
25877 : #undef FAIL
25878 : static const uint8_t expand_encoding[] = {
25879 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25880 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25881 : 0x25
25882 : };
25883 : return complete_seq (expand_encoding, operands);
25884 : }
25885 :
25886 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25887 : extern rtx_insn *gen_split_2806 (rtx_insn *, rtx *);
25888 : rtx_insn *
25889 : gen_split_2806 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25890 : {
25891 : if (dump_file)
25892 : fprintf (dump_file, "Splitting with gen_split_2806 (sse.md:14227)\n");
25893 : start_sequence ();
25894 : #define FAIL return (end_sequence (), nullptr)
25895 : #define DONE return end_sequence ()
25896 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25897 : {
25898 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25899 : int reg6 = 0xF0;
25900 : int reg2 = 0xCC;
25901 : int reg1 = 0xAA;
25902 : int reg3 = 0;
25903 : int reg4 = 0;
25904 : int reg_mask, tmp1, tmp2;
25905 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25906 : STRIP_UNARY (operands[4])))
25907 : {
25908 : reg4 = reg1;
25909 : reg3 = reg6;
25910 : operands[6] = operands[3];
25911 : }
25912 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25913 : STRIP_UNARY (operands[4])))
25914 : {
25915 : reg4 = reg2;
25916 : reg3 = reg6;
25917 : operands[6] = operands[3];
25918 : }
25919 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25920 : STRIP_UNARY (operands[3])))
25921 : {
25922 : reg4 = reg6;
25923 : reg3 = reg1;
25924 : operands[6] = operands[4];
25925 : }
25926 : else
25927 : {
25928 : reg4 = reg6;
25929 : reg3 = reg2;
25930 : operands[6] = operands[4];
25931 : }
25932 :
25933 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25934 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25935 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25936 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25937 :
25938 : tmp1 = reg1 & reg2;
25939 : tmp2 = tmp1 ^ reg3;
25940 : reg_mask = tmp2 ^ reg4;
25941 : reg_mask &= 0xFF;
25942 :
25943 : operands[1] = STRIP_UNARY (operands[1]);
25944 : operands[2] = STRIP_UNARY (operands[2]);
25945 : operands[6] = STRIP_UNARY (operands[6]);
25946 : operands[5] = GEN_INT (reg_mask);
25947 : if (!register_operand (operands[2], V32BFmode))
25948 : operands[2] = force_reg (V32BFmode, operands[2]);
25949 : if (!register_operand (operands[6], V32BFmode))
25950 : operands[6] = force_reg (V32BFmode, operands[6]);
25951 :
25952 : }
25953 : #undef DONE
25954 : #undef FAIL
25955 : static const uint8_t expand_encoding[] = {
25956 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25957 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25958 : 0x25
25959 : };
25960 : return complete_seq (expand_encoding, operands);
25961 : }
25962 :
25963 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25964 : extern rtx_insn *gen_split_2816 (rtx_insn *, rtx *);
25965 : rtx_insn *
25966 : gen_split_2816 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25967 : {
25968 : if (dump_file)
25969 : fprintf (dump_file, "Splitting with gen_split_2816 (sse.md:14227)\n");
25970 : start_sequence ();
25971 : #define FAIL return (end_sequence (), nullptr)
25972 : #define DONE return end_sequence ()
25973 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25974 : {
25975 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25976 : int reg6 = 0xF0;
25977 : int reg2 = 0xCC;
25978 : int reg1 = 0xAA;
25979 : int reg3 = 0;
25980 : int reg4 = 0;
25981 : int reg_mask, tmp1, tmp2;
25982 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25983 : STRIP_UNARY (operands[4])))
25984 : {
25985 : reg4 = reg1;
25986 : reg3 = reg6;
25987 : operands[6] = operands[3];
25988 : }
25989 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25990 : STRIP_UNARY (operands[4])))
25991 : {
25992 : reg4 = reg2;
25993 : reg3 = reg6;
25994 : operands[6] = operands[3];
25995 : }
25996 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25997 : STRIP_UNARY (operands[3])))
25998 : {
25999 : reg4 = reg6;
26000 : reg3 = reg1;
26001 : operands[6] = operands[4];
26002 : }
26003 : else
26004 : {
26005 : reg4 = reg6;
26006 : reg3 = reg2;
26007 : operands[6] = operands[4];
26008 : }
26009 :
26010 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26011 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26012 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26013 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26014 :
26015 : tmp1 = reg1 | reg2;
26016 : tmp2 = tmp1 & reg3;
26017 : reg_mask = tmp2 & reg4;
26018 : reg_mask &= 0xFF;
26019 :
26020 : operands[1] = STRIP_UNARY (operands[1]);
26021 : operands[2] = STRIP_UNARY (operands[2]);
26022 : operands[6] = STRIP_UNARY (operands[6]);
26023 : operands[5] = GEN_INT (reg_mask);
26024 : if (!register_operand (operands[2], V16BFmode))
26025 : operands[2] = force_reg (V16BFmode, operands[2]);
26026 : if (!register_operand (operands[6], V16BFmode))
26027 : operands[6] = force_reg (V16BFmode, operands[6]);
26028 :
26029 : }
26030 : #undef DONE
26031 : #undef FAIL
26032 : static const uint8_t expand_encoding[] = {
26033 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26034 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26035 : 0x25
26036 : };
26037 : return complete_seq (expand_encoding, operands);
26038 : }
26039 :
26040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26041 : extern rtx_insn *gen_split_2826 (rtx_insn *, rtx *);
26042 : rtx_insn *
26043 : gen_split_2826 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26044 : {
26045 : if (dump_file)
26046 : fprintf (dump_file, "Splitting with gen_split_2826 (sse.md:14227)\n");
26047 : start_sequence ();
26048 : #define FAIL return (end_sequence (), nullptr)
26049 : #define DONE return end_sequence ()
26050 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26051 : {
26052 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26053 : int reg6 = 0xF0;
26054 : int reg2 = 0xCC;
26055 : int reg1 = 0xAA;
26056 : int reg3 = 0;
26057 : int reg4 = 0;
26058 : int reg_mask, tmp1, tmp2;
26059 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26060 : STRIP_UNARY (operands[4])))
26061 : {
26062 : reg4 = reg1;
26063 : reg3 = reg6;
26064 : operands[6] = operands[3];
26065 : }
26066 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26067 : STRIP_UNARY (operands[4])))
26068 : {
26069 : reg4 = reg2;
26070 : reg3 = reg6;
26071 : operands[6] = operands[3];
26072 : }
26073 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26074 : STRIP_UNARY (operands[3])))
26075 : {
26076 : reg4 = reg6;
26077 : reg3 = reg1;
26078 : operands[6] = operands[4];
26079 : }
26080 : else
26081 : {
26082 : reg4 = reg6;
26083 : reg3 = reg2;
26084 : operands[6] = operands[4];
26085 : }
26086 :
26087 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26088 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26089 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26090 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26091 :
26092 : tmp1 = reg1 | reg2;
26093 : tmp2 = tmp1 | reg3;
26094 : reg_mask = tmp2 | reg4;
26095 : reg_mask &= 0xFF;
26096 :
26097 : operands[1] = STRIP_UNARY (operands[1]);
26098 : operands[2] = STRIP_UNARY (operands[2]);
26099 : operands[6] = STRIP_UNARY (operands[6]);
26100 : operands[5] = GEN_INT (reg_mask);
26101 : if (!register_operand (operands[2], V16BFmode))
26102 : operands[2] = force_reg (V16BFmode, operands[2]);
26103 : if (!register_operand (operands[6], V16BFmode))
26104 : operands[6] = force_reg (V16BFmode, operands[6]);
26105 :
26106 : }
26107 : #undef DONE
26108 : #undef FAIL
26109 : static const uint8_t expand_encoding[] = {
26110 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26111 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26112 : 0x25
26113 : };
26114 : return complete_seq (expand_encoding, operands);
26115 : }
26116 :
26117 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26118 : extern rtx_insn *gen_split_2836 (rtx_insn *, rtx *);
26119 : rtx_insn *
26120 : gen_split_2836 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26121 : {
26122 : if (dump_file)
26123 : fprintf (dump_file, "Splitting with gen_split_2836 (sse.md:14227)\n");
26124 : start_sequence ();
26125 : #define FAIL return (end_sequence (), nullptr)
26126 : #define DONE return end_sequence ()
26127 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26128 : {
26129 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26130 : int reg6 = 0xF0;
26131 : int reg2 = 0xCC;
26132 : int reg1 = 0xAA;
26133 : int reg3 = 0;
26134 : int reg4 = 0;
26135 : int reg_mask, tmp1, tmp2;
26136 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26137 : STRIP_UNARY (operands[4])))
26138 : {
26139 : reg4 = reg1;
26140 : reg3 = reg6;
26141 : operands[6] = operands[3];
26142 : }
26143 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26144 : STRIP_UNARY (operands[4])))
26145 : {
26146 : reg4 = reg2;
26147 : reg3 = reg6;
26148 : operands[6] = operands[3];
26149 : }
26150 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26151 : STRIP_UNARY (operands[3])))
26152 : {
26153 : reg4 = reg6;
26154 : reg3 = reg1;
26155 : operands[6] = operands[4];
26156 : }
26157 : else
26158 : {
26159 : reg4 = reg6;
26160 : reg3 = reg2;
26161 : operands[6] = operands[4];
26162 : }
26163 :
26164 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26165 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26166 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26167 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26168 :
26169 : tmp1 = reg1 | reg2;
26170 : tmp2 = tmp1 ^ reg3;
26171 : reg_mask = tmp2 ^ reg4;
26172 : reg_mask &= 0xFF;
26173 :
26174 : operands[1] = STRIP_UNARY (operands[1]);
26175 : operands[2] = STRIP_UNARY (operands[2]);
26176 : operands[6] = STRIP_UNARY (operands[6]);
26177 : operands[5] = GEN_INT (reg_mask);
26178 : if (!register_operand (operands[2], V16BFmode))
26179 : operands[2] = force_reg (V16BFmode, operands[2]);
26180 : if (!register_operand (operands[6], V16BFmode))
26181 : operands[6] = force_reg (V16BFmode, operands[6]);
26182 :
26183 : }
26184 : #undef DONE
26185 : #undef FAIL
26186 : static const uint8_t expand_encoding[] = {
26187 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26188 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26189 : 0x25
26190 : };
26191 : return complete_seq (expand_encoding, operands);
26192 : }
26193 :
26194 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26195 : extern rtx_insn *gen_split_2846 (rtx_insn *, rtx *);
26196 : rtx_insn *
26197 : gen_split_2846 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26198 : {
26199 : if (dump_file)
26200 : fprintf (dump_file, "Splitting with gen_split_2846 (sse.md:14227)\n");
26201 : start_sequence ();
26202 : #define FAIL return (end_sequence (), nullptr)
26203 : #define DONE return end_sequence ()
26204 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26205 : {
26206 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26207 : int reg6 = 0xF0;
26208 : int reg2 = 0xCC;
26209 : int reg1 = 0xAA;
26210 : int reg3 = 0;
26211 : int reg4 = 0;
26212 : int reg_mask, tmp1, tmp2;
26213 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26214 : STRIP_UNARY (operands[4])))
26215 : {
26216 : reg4 = reg1;
26217 : reg3 = reg6;
26218 : operands[6] = operands[3];
26219 : }
26220 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26221 : STRIP_UNARY (operands[4])))
26222 : {
26223 : reg4 = reg2;
26224 : reg3 = reg6;
26225 : operands[6] = operands[3];
26226 : }
26227 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26228 : STRIP_UNARY (operands[3])))
26229 : {
26230 : reg4 = reg6;
26231 : reg3 = reg1;
26232 : operands[6] = operands[4];
26233 : }
26234 : else
26235 : {
26236 : reg4 = reg6;
26237 : reg3 = reg2;
26238 : operands[6] = operands[4];
26239 : }
26240 :
26241 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26242 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26243 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26244 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26245 :
26246 : tmp1 = reg1 ^ reg2;
26247 : tmp2 = tmp1 & reg3;
26248 : reg_mask = tmp2 & reg4;
26249 : reg_mask &= 0xFF;
26250 :
26251 : operands[1] = STRIP_UNARY (operands[1]);
26252 : operands[2] = STRIP_UNARY (operands[2]);
26253 : operands[6] = STRIP_UNARY (operands[6]);
26254 : operands[5] = GEN_INT (reg_mask);
26255 : if (!register_operand (operands[2], V8BFmode))
26256 : operands[2] = force_reg (V8BFmode, operands[2]);
26257 : if (!register_operand (operands[6], V8BFmode))
26258 : operands[6] = force_reg (V8BFmode, operands[6]);
26259 :
26260 : }
26261 : #undef DONE
26262 : #undef FAIL
26263 : static const uint8_t expand_encoding[] = {
26264 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26265 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26266 : 0x25
26267 : };
26268 : return complete_seq (expand_encoding, operands);
26269 : }
26270 :
26271 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26272 : extern rtx_insn *gen_split_2856 (rtx_insn *, rtx *);
26273 : rtx_insn *
26274 : gen_split_2856 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26275 : {
26276 : if (dump_file)
26277 : fprintf (dump_file, "Splitting with gen_split_2856 (sse.md:14227)\n");
26278 : start_sequence ();
26279 : #define FAIL return (end_sequence (), nullptr)
26280 : #define DONE return end_sequence ()
26281 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26282 : {
26283 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26284 : int reg6 = 0xF0;
26285 : int reg2 = 0xCC;
26286 : int reg1 = 0xAA;
26287 : int reg3 = 0;
26288 : int reg4 = 0;
26289 : int reg_mask, tmp1, tmp2;
26290 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26291 : STRIP_UNARY (operands[4])))
26292 : {
26293 : reg4 = reg1;
26294 : reg3 = reg6;
26295 : operands[6] = operands[3];
26296 : }
26297 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26298 : STRIP_UNARY (operands[4])))
26299 : {
26300 : reg4 = reg2;
26301 : reg3 = reg6;
26302 : operands[6] = operands[3];
26303 : }
26304 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26305 : STRIP_UNARY (operands[3])))
26306 : {
26307 : reg4 = reg6;
26308 : reg3 = reg1;
26309 : operands[6] = operands[4];
26310 : }
26311 : else
26312 : {
26313 : reg4 = reg6;
26314 : reg3 = reg2;
26315 : operands[6] = operands[4];
26316 : }
26317 :
26318 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26319 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26320 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26321 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26322 :
26323 : tmp1 = reg1 ^ reg2;
26324 : tmp2 = tmp1 | reg3;
26325 : reg_mask = tmp2 | reg4;
26326 : reg_mask &= 0xFF;
26327 :
26328 : operands[1] = STRIP_UNARY (operands[1]);
26329 : operands[2] = STRIP_UNARY (operands[2]);
26330 : operands[6] = STRIP_UNARY (operands[6]);
26331 : operands[5] = GEN_INT (reg_mask);
26332 : if (!register_operand (operands[2], V8BFmode))
26333 : operands[2] = force_reg (V8BFmode, operands[2]);
26334 : if (!register_operand (operands[6], V8BFmode))
26335 : operands[6] = force_reg (V8BFmode, operands[6]);
26336 :
26337 : }
26338 : #undef DONE
26339 : #undef FAIL
26340 : static const uint8_t expand_encoding[] = {
26341 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26342 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26343 : 0x25
26344 : };
26345 : return complete_seq (expand_encoding, operands);
26346 : }
26347 :
26348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26349 : extern rtx_insn *gen_split_2866 (rtx_insn *, rtx *);
26350 : rtx_insn *
26351 : gen_split_2866 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26352 : {
26353 : if (dump_file)
26354 : fprintf (dump_file, "Splitting with gen_split_2866 (sse.md:14227)\n");
26355 : start_sequence ();
26356 : #define FAIL return (end_sequence (), nullptr)
26357 : #define DONE return end_sequence ()
26358 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26359 : {
26360 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26361 : int reg6 = 0xF0;
26362 : int reg2 = 0xCC;
26363 : int reg1 = 0xAA;
26364 : int reg3 = 0;
26365 : int reg4 = 0;
26366 : int reg_mask, tmp1, tmp2;
26367 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26368 : STRIP_UNARY (operands[4])))
26369 : {
26370 : reg4 = reg1;
26371 : reg3 = reg6;
26372 : operands[6] = operands[3];
26373 : }
26374 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26375 : STRIP_UNARY (operands[4])))
26376 : {
26377 : reg4 = reg2;
26378 : reg3 = reg6;
26379 : operands[6] = operands[3];
26380 : }
26381 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26382 : STRIP_UNARY (operands[3])))
26383 : {
26384 : reg4 = reg6;
26385 : reg3 = reg1;
26386 : operands[6] = operands[4];
26387 : }
26388 : else
26389 : {
26390 : reg4 = reg6;
26391 : reg3 = reg2;
26392 : operands[6] = operands[4];
26393 : }
26394 :
26395 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26396 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26397 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26398 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26399 :
26400 : tmp1 = reg1 ^ reg2;
26401 : tmp2 = tmp1 ^ reg3;
26402 : reg_mask = tmp2 ^ reg4;
26403 : reg_mask &= 0xFF;
26404 :
26405 : operands[1] = STRIP_UNARY (operands[1]);
26406 : operands[2] = STRIP_UNARY (operands[2]);
26407 : operands[6] = STRIP_UNARY (operands[6]);
26408 : operands[5] = GEN_INT (reg_mask);
26409 : if (!register_operand (operands[2], V8BFmode))
26410 : operands[2] = force_reg (V8BFmode, operands[2]);
26411 : if (!register_operand (operands[6], V8BFmode))
26412 : operands[6] = force_reg (V8BFmode, operands[6]);
26413 :
26414 : }
26415 : #undef DONE
26416 : #undef FAIL
26417 : static const uint8_t expand_encoding[] = {
26418 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26419 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26420 : 0x25
26421 : };
26422 : return complete_seq (expand_encoding, operands);
26423 : }
26424 :
26425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26426 : extern rtx_insn *gen_split_2876 (rtx_insn *, rtx *);
26427 : rtx_insn *
26428 : gen_split_2876 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26429 : {
26430 : if (dump_file)
26431 : fprintf (dump_file, "Splitting with gen_split_2876 (sse.md:14227)\n");
26432 : start_sequence ();
26433 : #define FAIL return (end_sequence (), nullptr)
26434 : #define DONE return end_sequence ()
26435 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26436 : {
26437 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26438 : int reg6 = 0xF0;
26439 : int reg2 = 0xCC;
26440 : int reg1 = 0xAA;
26441 : int reg3 = 0;
26442 : int reg4 = 0;
26443 : int reg_mask, tmp1, tmp2;
26444 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26445 : STRIP_UNARY (operands[4])))
26446 : {
26447 : reg4 = reg1;
26448 : reg3 = reg6;
26449 : operands[6] = operands[3];
26450 : }
26451 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26452 : STRIP_UNARY (operands[4])))
26453 : {
26454 : reg4 = reg2;
26455 : reg3 = reg6;
26456 : operands[6] = operands[3];
26457 : }
26458 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26459 : STRIP_UNARY (operands[3])))
26460 : {
26461 : reg4 = reg6;
26462 : reg3 = reg1;
26463 : operands[6] = operands[4];
26464 : }
26465 : else
26466 : {
26467 : reg4 = reg6;
26468 : reg3 = reg2;
26469 : operands[6] = operands[4];
26470 : }
26471 :
26472 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26473 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26474 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26475 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26476 :
26477 : tmp1 = reg1 & reg2;
26478 : tmp2 = tmp1 | reg3;
26479 : reg_mask = tmp2 & reg4;
26480 : reg_mask &= 0xFF;
26481 :
26482 : operands[1] = STRIP_UNARY (operands[1]);
26483 : operands[2] = STRIP_UNARY (operands[2]);
26484 : operands[6] = STRIP_UNARY (operands[6]);
26485 : operands[5] = GEN_INT (reg_mask);
26486 : if (!register_operand (operands[2], V16SFmode))
26487 : operands[2] = force_reg (V16SFmode, operands[2]);
26488 : if (!register_operand (operands[6], V16SFmode))
26489 : operands[6] = force_reg (V16SFmode, operands[6]);
26490 :
26491 : }
26492 : #undef DONE
26493 : #undef FAIL
26494 : static const uint8_t expand_encoding[] = {
26495 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26496 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26497 : 0x25
26498 : };
26499 : return complete_seq (expand_encoding, operands);
26500 : }
26501 :
26502 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26503 : extern rtx_insn *gen_split_2886 (rtx_insn *, rtx *);
26504 : rtx_insn *
26505 : gen_split_2886 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26506 : {
26507 : if (dump_file)
26508 : fprintf (dump_file, "Splitting with gen_split_2886 (sse.md:14227)\n");
26509 : start_sequence ();
26510 : #define FAIL return (end_sequence (), nullptr)
26511 : #define DONE return end_sequence ()
26512 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26513 : {
26514 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26515 : int reg6 = 0xF0;
26516 : int reg2 = 0xCC;
26517 : int reg1 = 0xAA;
26518 : int reg3 = 0;
26519 : int reg4 = 0;
26520 : int reg_mask, tmp1, tmp2;
26521 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26522 : STRIP_UNARY (operands[4])))
26523 : {
26524 : reg4 = reg1;
26525 : reg3 = reg6;
26526 : operands[6] = operands[3];
26527 : }
26528 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26529 : STRIP_UNARY (operands[4])))
26530 : {
26531 : reg4 = reg2;
26532 : reg3 = reg6;
26533 : operands[6] = operands[3];
26534 : }
26535 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26536 : STRIP_UNARY (operands[3])))
26537 : {
26538 : reg4 = reg6;
26539 : reg3 = reg1;
26540 : operands[6] = operands[4];
26541 : }
26542 : else
26543 : {
26544 : reg4 = reg6;
26545 : reg3 = reg2;
26546 : operands[6] = operands[4];
26547 : }
26548 :
26549 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26550 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26551 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26552 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26553 :
26554 : tmp1 = reg1 & reg2;
26555 : tmp2 = tmp1 ^ reg3;
26556 : reg_mask = tmp2 | reg4;
26557 : reg_mask &= 0xFF;
26558 :
26559 : operands[1] = STRIP_UNARY (operands[1]);
26560 : operands[2] = STRIP_UNARY (operands[2]);
26561 : operands[6] = STRIP_UNARY (operands[6]);
26562 : operands[5] = GEN_INT (reg_mask);
26563 : if (!register_operand (operands[2], V16SFmode))
26564 : operands[2] = force_reg (V16SFmode, operands[2]);
26565 : if (!register_operand (operands[6], V16SFmode))
26566 : operands[6] = force_reg (V16SFmode, operands[6]);
26567 :
26568 : }
26569 : #undef DONE
26570 : #undef FAIL
26571 : static const uint8_t expand_encoding[] = {
26572 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26573 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26574 : 0x25
26575 : };
26576 : return complete_seq (expand_encoding, operands);
26577 : }
26578 :
26579 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26580 : extern rtx_insn *gen_split_2896 (rtx_insn *, rtx *);
26581 : rtx_insn *
26582 : gen_split_2896 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26583 : {
26584 : if (dump_file)
26585 : fprintf (dump_file, "Splitting with gen_split_2896 (sse.md:14227)\n");
26586 : start_sequence ();
26587 : #define FAIL return (end_sequence (), nullptr)
26588 : #define DONE return end_sequence ()
26589 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26590 : {
26591 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26592 : int reg6 = 0xF0;
26593 : int reg2 = 0xCC;
26594 : int reg1 = 0xAA;
26595 : int reg3 = 0;
26596 : int reg4 = 0;
26597 : int reg_mask, tmp1, tmp2;
26598 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26599 : STRIP_UNARY (operands[4])))
26600 : {
26601 : reg4 = reg1;
26602 : reg3 = reg6;
26603 : operands[6] = operands[3];
26604 : }
26605 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26606 : STRIP_UNARY (operands[4])))
26607 : {
26608 : reg4 = reg2;
26609 : reg3 = reg6;
26610 : operands[6] = operands[3];
26611 : }
26612 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26613 : STRIP_UNARY (operands[3])))
26614 : {
26615 : reg4 = reg6;
26616 : reg3 = reg1;
26617 : operands[6] = operands[4];
26618 : }
26619 : else
26620 : {
26621 : reg4 = reg6;
26622 : reg3 = reg2;
26623 : operands[6] = operands[4];
26624 : }
26625 :
26626 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26627 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26628 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26629 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26630 :
26631 : tmp1 = reg1 & reg2;
26632 : tmp2 = tmp1 & reg3;
26633 : reg_mask = tmp2 ^ reg4;
26634 : reg_mask &= 0xFF;
26635 :
26636 : operands[1] = STRIP_UNARY (operands[1]);
26637 : operands[2] = STRIP_UNARY (operands[2]);
26638 : operands[6] = STRIP_UNARY (operands[6]);
26639 : operands[5] = GEN_INT (reg_mask);
26640 : if (!register_operand (operands[2], V8SFmode))
26641 : operands[2] = force_reg (V8SFmode, operands[2]);
26642 : if (!register_operand (operands[6], V8SFmode))
26643 : operands[6] = force_reg (V8SFmode, operands[6]);
26644 :
26645 : }
26646 : #undef DONE
26647 : #undef FAIL
26648 : static const uint8_t expand_encoding[] = {
26649 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26650 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26651 : 0x25
26652 : };
26653 : return complete_seq (expand_encoding, operands);
26654 : }
26655 :
26656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26657 : extern rtx_insn *gen_split_2906 (rtx_insn *, rtx *);
26658 : rtx_insn *
26659 : gen_split_2906 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26660 : {
26661 : if (dump_file)
26662 : fprintf (dump_file, "Splitting with gen_split_2906 (sse.md:14227)\n");
26663 : start_sequence ();
26664 : #define FAIL return (end_sequence (), nullptr)
26665 : #define DONE return end_sequence ()
26666 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26667 : {
26668 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26669 : int reg6 = 0xF0;
26670 : int reg2 = 0xCC;
26671 : int reg1 = 0xAA;
26672 : int reg3 = 0;
26673 : int reg4 = 0;
26674 : int reg_mask, tmp1, tmp2;
26675 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26676 : STRIP_UNARY (operands[4])))
26677 : {
26678 : reg4 = reg1;
26679 : reg3 = reg6;
26680 : operands[6] = operands[3];
26681 : }
26682 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26683 : STRIP_UNARY (operands[4])))
26684 : {
26685 : reg4 = reg2;
26686 : reg3 = reg6;
26687 : operands[6] = operands[3];
26688 : }
26689 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26690 : STRIP_UNARY (operands[3])))
26691 : {
26692 : reg4 = reg6;
26693 : reg3 = reg1;
26694 : operands[6] = operands[4];
26695 : }
26696 : else
26697 : {
26698 : reg4 = reg6;
26699 : reg3 = reg2;
26700 : operands[6] = operands[4];
26701 : }
26702 :
26703 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26704 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26705 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26706 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26707 :
26708 : tmp1 = reg1 | reg2;
26709 : tmp2 = tmp1 | reg3;
26710 : reg_mask = tmp2 & reg4;
26711 : reg_mask &= 0xFF;
26712 :
26713 : operands[1] = STRIP_UNARY (operands[1]);
26714 : operands[2] = STRIP_UNARY (operands[2]);
26715 : operands[6] = STRIP_UNARY (operands[6]);
26716 : operands[5] = GEN_INT (reg_mask);
26717 : if (!register_operand (operands[2], V8SFmode))
26718 : operands[2] = force_reg (V8SFmode, operands[2]);
26719 : if (!register_operand (operands[6], V8SFmode))
26720 : operands[6] = force_reg (V8SFmode, operands[6]);
26721 :
26722 : }
26723 : #undef DONE
26724 : #undef FAIL
26725 : static const uint8_t expand_encoding[] = {
26726 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26727 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26728 : 0x25
26729 : };
26730 : return complete_seq (expand_encoding, operands);
26731 : }
26732 :
26733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26734 : extern rtx_insn *gen_split_2916 (rtx_insn *, rtx *);
26735 : rtx_insn *
26736 : gen_split_2916 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26737 : {
26738 : if (dump_file)
26739 : fprintf (dump_file, "Splitting with gen_split_2916 (sse.md:14227)\n");
26740 : start_sequence ();
26741 : #define FAIL return (end_sequence (), nullptr)
26742 : #define DONE return end_sequence ()
26743 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26744 : {
26745 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26746 : int reg6 = 0xF0;
26747 : int reg2 = 0xCC;
26748 : int reg1 = 0xAA;
26749 : int reg3 = 0;
26750 : int reg4 = 0;
26751 : int reg_mask, tmp1, tmp2;
26752 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26753 : STRIP_UNARY (operands[4])))
26754 : {
26755 : reg4 = reg1;
26756 : reg3 = reg6;
26757 : operands[6] = operands[3];
26758 : }
26759 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26760 : STRIP_UNARY (operands[4])))
26761 : {
26762 : reg4 = reg2;
26763 : reg3 = reg6;
26764 : operands[6] = operands[3];
26765 : }
26766 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26767 : STRIP_UNARY (operands[3])))
26768 : {
26769 : reg4 = reg6;
26770 : reg3 = reg1;
26771 : operands[6] = operands[4];
26772 : }
26773 : else
26774 : {
26775 : reg4 = reg6;
26776 : reg3 = reg2;
26777 : operands[6] = operands[4];
26778 : }
26779 :
26780 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26781 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26782 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26783 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26784 :
26785 : tmp1 = reg1 | reg2;
26786 : tmp2 = tmp1 ^ reg3;
26787 : reg_mask = tmp2 | reg4;
26788 : reg_mask &= 0xFF;
26789 :
26790 : operands[1] = STRIP_UNARY (operands[1]);
26791 : operands[2] = STRIP_UNARY (operands[2]);
26792 : operands[6] = STRIP_UNARY (operands[6]);
26793 : operands[5] = GEN_INT (reg_mask);
26794 : if (!register_operand (operands[2], V8SFmode))
26795 : operands[2] = force_reg (V8SFmode, operands[2]);
26796 : if (!register_operand (operands[6], V8SFmode))
26797 : operands[6] = force_reg (V8SFmode, operands[6]);
26798 :
26799 : }
26800 : #undef DONE
26801 : #undef FAIL
26802 : static const uint8_t expand_encoding[] = {
26803 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26804 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26805 : 0x25
26806 : };
26807 : return complete_seq (expand_encoding, operands);
26808 : }
26809 :
26810 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26811 : extern rtx_insn *gen_split_2926 (rtx_insn *, rtx *);
26812 : rtx_insn *
26813 : gen_split_2926 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26814 : {
26815 : if (dump_file)
26816 : fprintf (dump_file, "Splitting with gen_split_2926 (sse.md:14227)\n");
26817 : start_sequence ();
26818 : #define FAIL return (end_sequence (), nullptr)
26819 : #define DONE return end_sequence ()
26820 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26821 : {
26822 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26823 : int reg6 = 0xF0;
26824 : int reg2 = 0xCC;
26825 : int reg1 = 0xAA;
26826 : int reg3 = 0;
26827 : int reg4 = 0;
26828 : int reg_mask, tmp1, tmp2;
26829 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26830 : STRIP_UNARY (operands[4])))
26831 : {
26832 : reg4 = reg1;
26833 : reg3 = reg6;
26834 : operands[6] = operands[3];
26835 : }
26836 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26837 : STRIP_UNARY (operands[4])))
26838 : {
26839 : reg4 = reg2;
26840 : reg3 = reg6;
26841 : operands[6] = operands[3];
26842 : }
26843 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26844 : STRIP_UNARY (operands[3])))
26845 : {
26846 : reg4 = reg6;
26847 : reg3 = reg1;
26848 : operands[6] = operands[4];
26849 : }
26850 : else
26851 : {
26852 : reg4 = reg6;
26853 : reg3 = reg2;
26854 : operands[6] = operands[4];
26855 : }
26856 :
26857 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26858 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26859 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26860 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26861 :
26862 : tmp1 = reg1 | reg2;
26863 : tmp2 = tmp1 & reg3;
26864 : reg_mask = tmp2 ^ reg4;
26865 : reg_mask &= 0xFF;
26866 :
26867 : operands[1] = STRIP_UNARY (operands[1]);
26868 : operands[2] = STRIP_UNARY (operands[2]);
26869 : operands[6] = STRIP_UNARY (operands[6]);
26870 : operands[5] = GEN_INT (reg_mask);
26871 : if (!register_operand (operands[2], V4SFmode))
26872 : operands[2] = force_reg (V4SFmode, operands[2]);
26873 : if (!register_operand (operands[6], V4SFmode))
26874 : operands[6] = force_reg (V4SFmode, operands[6]);
26875 :
26876 : }
26877 : #undef DONE
26878 : #undef FAIL
26879 : static const uint8_t expand_encoding[] = {
26880 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26881 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26882 : 0x25
26883 : };
26884 : return complete_seq (expand_encoding, operands);
26885 : }
26886 :
26887 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26888 : extern rtx_insn *gen_split_2936 (rtx_insn *, rtx *);
26889 : rtx_insn *
26890 : gen_split_2936 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26891 : {
26892 : if (dump_file)
26893 : fprintf (dump_file, "Splitting with gen_split_2936 (sse.md:14227)\n");
26894 : start_sequence ();
26895 : #define FAIL return (end_sequence (), nullptr)
26896 : #define DONE return end_sequence ()
26897 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26898 : {
26899 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26900 : int reg6 = 0xF0;
26901 : int reg2 = 0xCC;
26902 : int reg1 = 0xAA;
26903 : int reg3 = 0;
26904 : int reg4 = 0;
26905 : int reg_mask, tmp1, tmp2;
26906 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26907 : STRIP_UNARY (operands[4])))
26908 : {
26909 : reg4 = reg1;
26910 : reg3 = reg6;
26911 : operands[6] = operands[3];
26912 : }
26913 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26914 : STRIP_UNARY (operands[4])))
26915 : {
26916 : reg4 = reg2;
26917 : reg3 = reg6;
26918 : operands[6] = operands[3];
26919 : }
26920 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26921 : STRIP_UNARY (operands[3])))
26922 : {
26923 : reg4 = reg6;
26924 : reg3 = reg1;
26925 : operands[6] = operands[4];
26926 : }
26927 : else
26928 : {
26929 : reg4 = reg6;
26930 : reg3 = reg2;
26931 : operands[6] = operands[4];
26932 : }
26933 :
26934 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26935 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26936 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26937 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26938 :
26939 : tmp1 = reg1 ^ reg2;
26940 : tmp2 = tmp1 | reg3;
26941 : reg_mask = tmp2 & reg4;
26942 : reg_mask &= 0xFF;
26943 :
26944 : operands[1] = STRIP_UNARY (operands[1]);
26945 : operands[2] = STRIP_UNARY (operands[2]);
26946 : operands[6] = STRIP_UNARY (operands[6]);
26947 : operands[5] = GEN_INT (reg_mask);
26948 : if (!register_operand (operands[2], V4SFmode))
26949 : operands[2] = force_reg (V4SFmode, operands[2]);
26950 : if (!register_operand (operands[6], V4SFmode))
26951 : operands[6] = force_reg (V4SFmode, operands[6]);
26952 :
26953 : }
26954 : #undef DONE
26955 : #undef FAIL
26956 : static const uint8_t expand_encoding[] = {
26957 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26958 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26959 : 0x25
26960 : };
26961 : return complete_seq (expand_encoding, operands);
26962 : }
26963 :
26964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26965 : extern rtx_insn *gen_split_2946 (rtx_insn *, rtx *);
26966 : rtx_insn *
26967 : gen_split_2946 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26968 : {
26969 : if (dump_file)
26970 : fprintf (dump_file, "Splitting with gen_split_2946 (sse.md:14227)\n");
26971 : start_sequence ();
26972 : #define FAIL return (end_sequence (), nullptr)
26973 : #define DONE return end_sequence ()
26974 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26975 : {
26976 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26977 : int reg6 = 0xF0;
26978 : int reg2 = 0xCC;
26979 : int reg1 = 0xAA;
26980 : int reg3 = 0;
26981 : int reg4 = 0;
26982 : int reg_mask, tmp1, tmp2;
26983 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26984 : STRIP_UNARY (operands[4])))
26985 : {
26986 : reg4 = reg1;
26987 : reg3 = reg6;
26988 : operands[6] = operands[3];
26989 : }
26990 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26991 : STRIP_UNARY (operands[4])))
26992 : {
26993 : reg4 = reg2;
26994 : reg3 = reg6;
26995 : operands[6] = operands[3];
26996 : }
26997 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26998 : STRIP_UNARY (operands[3])))
26999 : {
27000 : reg4 = reg6;
27001 : reg3 = reg1;
27002 : operands[6] = operands[4];
27003 : }
27004 : else
27005 : {
27006 : reg4 = reg6;
27007 : reg3 = reg2;
27008 : operands[6] = operands[4];
27009 : }
27010 :
27011 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27012 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27013 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27014 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27015 :
27016 : tmp1 = reg1 ^ reg2;
27017 : tmp2 = tmp1 ^ reg3;
27018 : reg_mask = tmp2 | reg4;
27019 : reg_mask &= 0xFF;
27020 :
27021 : operands[1] = STRIP_UNARY (operands[1]);
27022 : operands[2] = STRIP_UNARY (operands[2]);
27023 : operands[6] = STRIP_UNARY (operands[6]);
27024 : operands[5] = GEN_INT (reg_mask);
27025 : if (!register_operand (operands[2], V4SFmode))
27026 : operands[2] = force_reg (V4SFmode, operands[2]);
27027 : if (!register_operand (operands[6], V4SFmode))
27028 : operands[6] = force_reg (V4SFmode, operands[6]);
27029 :
27030 : }
27031 : #undef DONE
27032 : #undef FAIL
27033 : static const uint8_t expand_encoding[] = {
27034 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
27035 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27036 : 0x25
27037 : };
27038 : return complete_seq (expand_encoding, operands);
27039 : }
27040 :
27041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27042 : extern rtx_insn *gen_split_2956 (rtx_insn *, rtx *);
27043 : rtx_insn *
27044 : gen_split_2956 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27045 : {
27046 : if (dump_file)
27047 : fprintf (dump_file, "Splitting with gen_split_2956 (sse.md:14227)\n");
27048 : start_sequence ();
27049 : #define FAIL return (end_sequence (), nullptr)
27050 : #define DONE return end_sequence ()
27051 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27052 : {
27053 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27054 : int reg6 = 0xF0;
27055 : int reg2 = 0xCC;
27056 : int reg1 = 0xAA;
27057 : int reg3 = 0;
27058 : int reg4 = 0;
27059 : int reg_mask, tmp1, tmp2;
27060 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27061 : STRIP_UNARY (operands[4])))
27062 : {
27063 : reg4 = reg1;
27064 : reg3 = reg6;
27065 : operands[6] = operands[3];
27066 : }
27067 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27068 : STRIP_UNARY (operands[4])))
27069 : {
27070 : reg4 = reg2;
27071 : reg3 = reg6;
27072 : operands[6] = operands[3];
27073 : }
27074 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27075 : STRIP_UNARY (operands[3])))
27076 : {
27077 : reg4 = reg6;
27078 : reg3 = reg1;
27079 : operands[6] = operands[4];
27080 : }
27081 : else
27082 : {
27083 : reg4 = reg6;
27084 : reg3 = reg2;
27085 : operands[6] = operands[4];
27086 : }
27087 :
27088 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27089 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27090 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27091 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27092 :
27093 : tmp1 = reg1 ^ reg2;
27094 : tmp2 = tmp1 & reg3;
27095 : reg_mask = tmp2 ^ reg4;
27096 : reg_mask &= 0xFF;
27097 :
27098 : operands[1] = STRIP_UNARY (operands[1]);
27099 : operands[2] = STRIP_UNARY (operands[2]);
27100 : operands[6] = STRIP_UNARY (operands[6]);
27101 : operands[5] = GEN_INT (reg_mask);
27102 : if (!register_operand (operands[2], V8DFmode))
27103 : operands[2] = force_reg (V8DFmode, operands[2]);
27104 : if (!register_operand (operands[6], V8DFmode))
27105 : operands[6] = force_reg (V8DFmode, operands[6]);
27106 :
27107 : }
27108 : #undef DONE
27109 : #undef FAIL
27110 : static const uint8_t expand_encoding[] = {
27111 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27112 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27113 : 0x25
27114 : };
27115 : return complete_seq (expand_encoding, operands);
27116 : }
27117 :
27118 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27119 : extern rtx_insn *gen_split_2966 (rtx_insn *, rtx *);
27120 : rtx_insn *
27121 : gen_split_2966 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27122 : {
27123 : if (dump_file)
27124 : fprintf (dump_file, "Splitting with gen_split_2966 (sse.md:14227)\n");
27125 : start_sequence ();
27126 : #define FAIL return (end_sequence (), nullptr)
27127 : #define DONE return end_sequence ()
27128 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27129 : {
27130 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27131 : int reg6 = 0xF0;
27132 : int reg2 = 0xCC;
27133 : int reg1 = 0xAA;
27134 : int reg3 = 0;
27135 : int reg4 = 0;
27136 : int reg_mask, tmp1, tmp2;
27137 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27138 : STRIP_UNARY (operands[4])))
27139 : {
27140 : reg4 = reg1;
27141 : reg3 = reg6;
27142 : operands[6] = operands[3];
27143 : }
27144 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27145 : STRIP_UNARY (operands[4])))
27146 : {
27147 : reg4 = reg2;
27148 : reg3 = reg6;
27149 : operands[6] = operands[3];
27150 : }
27151 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27152 : STRIP_UNARY (operands[3])))
27153 : {
27154 : reg4 = reg6;
27155 : reg3 = reg1;
27156 : operands[6] = operands[4];
27157 : }
27158 : else
27159 : {
27160 : reg4 = reg6;
27161 : reg3 = reg2;
27162 : operands[6] = operands[4];
27163 : }
27164 :
27165 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27166 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27167 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27168 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27169 :
27170 : tmp1 = reg1 & reg2;
27171 : tmp2 = tmp1 ^ reg3;
27172 : reg_mask = tmp2 & reg4;
27173 : reg_mask &= 0xFF;
27174 :
27175 : operands[1] = STRIP_UNARY (operands[1]);
27176 : operands[2] = STRIP_UNARY (operands[2]);
27177 : operands[6] = STRIP_UNARY (operands[6]);
27178 : operands[5] = GEN_INT (reg_mask);
27179 : if (!register_operand (operands[2], V8DFmode))
27180 : operands[2] = force_reg (V8DFmode, operands[2]);
27181 : if (!register_operand (operands[6], V8DFmode))
27182 : operands[6] = force_reg (V8DFmode, operands[6]);
27183 :
27184 : }
27185 : #undef DONE
27186 : #undef FAIL
27187 : static const uint8_t expand_encoding[] = {
27188 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27189 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27190 : 0x25
27191 : };
27192 : return complete_seq (expand_encoding, operands);
27193 : }
27194 :
27195 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27196 : extern rtx_insn *gen_split_2976 (rtx_insn *, rtx *);
27197 : rtx_insn *
27198 : gen_split_2976 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27199 : {
27200 : if (dump_file)
27201 : fprintf (dump_file, "Splitting with gen_split_2976 (sse.md:14227)\n");
27202 : start_sequence ();
27203 : #define FAIL return (end_sequence (), nullptr)
27204 : #define DONE return end_sequence ()
27205 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27206 : {
27207 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27208 : int reg6 = 0xF0;
27209 : int reg2 = 0xCC;
27210 : int reg1 = 0xAA;
27211 : int reg3 = 0;
27212 : int reg4 = 0;
27213 : int reg_mask, tmp1, tmp2;
27214 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27215 : STRIP_UNARY (operands[4])))
27216 : {
27217 : reg4 = reg1;
27218 : reg3 = reg6;
27219 : operands[6] = operands[3];
27220 : }
27221 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27222 : STRIP_UNARY (operands[4])))
27223 : {
27224 : reg4 = reg2;
27225 : reg3 = reg6;
27226 : operands[6] = operands[3];
27227 : }
27228 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27229 : STRIP_UNARY (operands[3])))
27230 : {
27231 : reg4 = reg6;
27232 : reg3 = reg1;
27233 : operands[6] = operands[4];
27234 : }
27235 : else
27236 : {
27237 : reg4 = reg6;
27238 : reg3 = reg2;
27239 : operands[6] = operands[4];
27240 : }
27241 :
27242 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27243 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27244 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27245 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27246 :
27247 : tmp1 = reg1 & reg2;
27248 : tmp2 = tmp1 & reg3;
27249 : reg_mask = tmp2 | reg4;
27250 : reg_mask &= 0xFF;
27251 :
27252 : operands[1] = STRIP_UNARY (operands[1]);
27253 : operands[2] = STRIP_UNARY (operands[2]);
27254 : operands[6] = STRIP_UNARY (operands[6]);
27255 : operands[5] = GEN_INT (reg_mask);
27256 : if (!register_operand (operands[2], V4DFmode))
27257 : operands[2] = force_reg (V4DFmode, operands[2]);
27258 : if (!register_operand (operands[6], V4DFmode))
27259 : operands[6] = force_reg (V4DFmode, operands[6]);
27260 :
27261 : }
27262 : #undef DONE
27263 : #undef FAIL
27264 : static const uint8_t expand_encoding[] = {
27265 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27266 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27267 : 0x25
27268 : };
27269 : return complete_seq (expand_encoding, operands);
27270 : }
27271 :
27272 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27273 : extern rtx_insn *gen_split_2986 (rtx_insn *, rtx *);
27274 : rtx_insn *
27275 : gen_split_2986 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27276 : {
27277 : if (dump_file)
27278 : fprintf (dump_file, "Splitting with gen_split_2986 (sse.md:14227)\n");
27279 : start_sequence ();
27280 : #define FAIL return (end_sequence (), nullptr)
27281 : #define DONE return end_sequence ()
27282 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27283 : {
27284 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27285 : int reg6 = 0xF0;
27286 : int reg2 = 0xCC;
27287 : int reg1 = 0xAA;
27288 : int reg3 = 0;
27289 : int reg4 = 0;
27290 : int reg_mask, tmp1, tmp2;
27291 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27292 : STRIP_UNARY (operands[4])))
27293 : {
27294 : reg4 = reg1;
27295 : reg3 = reg6;
27296 : operands[6] = operands[3];
27297 : }
27298 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27299 : STRIP_UNARY (operands[4])))
27300 : {
27301 : reg4 = reg2;
27302 : reg3 = reg6;
27303 : operands[6] = operands[3];
27304 : }
27305 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27306 : STRIP_UNARY (operands[3])))
27307 : {
27308 : reg4 = reg6;
27309 : reg3 = reg1;
27310 : operands[6] = operands[4];
27311 : }
27312 : else
27313 : {
27314 : reg4 = reg6;
27315 : reg3 = reg2;
27316 : operands[6] = operands[4];
27317 : }
27318 :
27319 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27320 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27321 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27322 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27323 :
27324 : tmp1 = reg1 & reg2;
27325 : tmp2 = tmp1 | reg3;
27326 : reg_mask = tmp2 ^ reg4;
27327 : reg_mask &= 0xFF;
27328 :
27329 : operands[1] = STRIP_UNARY (operands[1]);
27330 : operands[2] = STRIP_UNARY (operands[2]);
27331 : operands[6] = STRIP_UNARY (operands[6]);
27332 : operands[5] = GEN_INT (reg_mask);
27333 : if (!register_operand (operands[2], V4DFmode))
27334 : operands[2] = force_reg (V4DFmode, operands[2]);
27335 : if (!register_operand (operands[6], V4DFmode))
27336 : operands[6] = force_reg (V4DFmode, operands[6]);
27337 :
27338 : }
27339 : #undef DONE
27340 : #undef FAIL
27341 : static const uint8_t expand_encoding[] = {
27342 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27343 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27344 : 0x25
27345 : };
27346 : return complete_seq (expand_encoding, operands);
27347 : }
27348 :
27349 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27350 : extern rtx_insn *gen_split_2996 (rtx_insn *, rtx *);
27351 : rtx_insn *
27352 : gen_split_2996 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27353 : {
27354 : if (dump_file)
27355 : fprintf (dump_file, "Splitting with gen_split_2996 (sse.md:14227)\n");
27356 : start_sequence ();
27357 : #define FAIL return (end_sequence (), nullptr)
27358 : #define DONE return end_sequence ()
27359 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27360 : {
27361 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27362 : int reg6 = 0xF0;
27363 : int reg2 = 0xCC;
27364 : int reg1 = 0xAA;
27365 : int reg3 = 0;
27366 : int reg4 = 0;
27367 : int reg_mask, tmp1, tmp2;
27368 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27369 : STRIP_UNARY (operands[4])))
27370 : {
27371 : reg4 = reg1;
27372 : reg3 = reg6;
27373 : operands[6] = operands[3];
27374 : }
27375 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27376 : STRIP_UNARY (operands[4])))
27377 : {
27378 : reg4 = reg2;
27379 : reg3 = reg6;
27380 : operands[6] = operands[3];
27381 : }
27382 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27383 : STRIP_UNARY (operands[3])))
27384 : {
27385 : reg4 = reg6;
27386 : reg3 = reg1;
27387 : operands[6] = operands[4];
27388 : }
27389 : else
27390 : {
27391 : reg4 = reg6;
27392 : reg3 = reg2;
27393 : operands[6] = operands[4];
27394 : }
27395 :
27396 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27397 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27398 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27399 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27400 :
27401 : tmp1 = reg1 | reg2;
27402 : tmp2 = tmp1 ^ reg3;
27403 : reg_mask = tmp2 & reg4;
27404 : reg_mask &= 0xFF;
27405 :
27406 : operands[1] = STRIP_UNARY (operands[1]);
27407 : operands[2] = STRIP_UNARY (operands[2]);
27408 : operands[6] = STRIP_UNARY (operands[6]);
27409 : operands[5] = GEN_INT (reg_mask);
27410 : if (!register_operand (operands[2], V4DFmode))
27411 : operands[2] = force_reg (V4DFmode, operands[2]);
27412 : if (!register_operand (operands[6], V4DFmode))
27413 : operands[6] = force_reg (V4DFmode, operands[6]);
27414 :
27415 : }
27416 : #undef DONE
27417 : #undef FAIL
27418 : static const uint8_t expand_encoding[] = {
27419 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27420 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27421 : 0x25
27422 : };
27423 : return complete_seq (expand_encoding, operands);
27424 : }
27425 :
27426 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27427 : extern rtx_insn *gen_split_3006 (rtx_insn *, rtx *);
27428 : rtx_insn *
27429 : gen_split_3006 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27430 : {
27431 : if (dump_file)
27432 : fprintf (dump_file, "Splitting with gen_split_3006 (sse.md:14227)\n");
27433 : start_sequence ();
27434 : #define FAIL return (end_sequence (), nullptr)
27435 : #define DONE return end_sequence ()
27436 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27437 : {
27438 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27439 : int reg6 = 0xF0;
27440 : int reg2 = 0xCC;
27441 : int reg1 = 0xAA;
27442 : int reg3 = 0;
27443 : int reg4 = 0;
27444 : int reg_mask, tmp1, tmp2;
27445 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27446 : STRIP_UNARY (operands[4])))
27447 : {
27448 : reg4 = reg1;
27449 : reg3 = reg6;
27450 : operands[6] = operands[3];
27451 : }
27452 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27453 : STRIP_UNARY (operands[4])))
27454 : {
27455 : reg4 = reg2;
27456 : reg3 = reg6;
27457 : operands[6] = operands[3];
27458 : }
27459 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27460 : STRIP_UNARY (operands[3])))
27461 : {
27462 : reg4 = reg6;
27463 : reg3 = reg1;
27464 : operands[6] = operands[4];
27465 : }
27466 : else
27467 : {
27468 : reg4 = reg6;
27469 : reg3 = reg2;
27470 : operands[6] = operands[4];
27471 : }
27472 :
27473 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27474 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27475 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27476 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27477 :
27478 : tmp1 = reg1 | reg2;
27479 : tmp2 = tmp1 & reg3;
27480 : reg_mask = tmp2 | reg4;
27481 : reg_mask &= 0xFF;
27482 :
27483 : operands[1] = STRIP_UNARY (operands[1]);
27484 : operands[2] = STRIP_UNARY (operands[2]);
27485 : operands[6] = STRIP_UNARY (operands[6]);
27486 : operands[5] = GEN_INT (reg_mask);
27487 : if (!register_operand (operands[2], V2DFmode))
27488 : operands[2] = force_reg (V2DFmode, operands[2]);
27489 : if (!register_operand (operands[6], V2DFmode))
27490 : operands[6] = force_reg (V2DFmode, operands[6]);
27491 :
27492 : }
27493 : #undef DONE
27494 : #undef FAIL
27495 : static const uint8_t expand_encoding[] = {
27496 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27497 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27498 : 0x25
27499 : };
27500 : return complete_seq (expand_encoding, operands);
27501 : }
27502 :
27503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27504 : extern rtx_insn *gen_split_3016 (rtx_insn *, rtx *);
27505 : rtx_insn *
27506 : gen_split_3016 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27507 : {
27508 : if (dump_file)
27509 : fprintf (dump_file, "Splitting with gen_split_3016 (sse.md:14227)\n");
27510 : start_sequence ();
27511 : #define FAIL return (end_sequence (), nullptr)
27512 : #define DONE return end_sequence ()
27513 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27514 : {
27515 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27516 : int reg6 = 0xF0;
27517 : int reg2 = 0xCC;
27518 : int reg1 = 0xAA;
27519 : int reg3 = 0;
27520 : int reg4 = 0;
27521 : int reg_mask, tmp1, tmp2;
27522 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27523 : STRIP_UNARY (operands[4])))
27524 : {
27525 : reg4 = reg1;
27526 : reg3 = reg6;
27527 : operands[6] = operands[3];
27528 : }
27529 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27530 : STRIP_UNARY (operands[4])))
27531 : {
27532 : reg4 = reg2;
27533 : reg3 = reg6;
27534 : operands[6] = operands[3];
27535 : }
27536 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27537 : STRIP_UNARY (operands[3])))
27538 : {
27539 : reg4 = reg6;
27540 : reg3 = reg1;
27541 : operands[6] = operands[4];
27542 : }
27543 : else
27544 : {
27545 : reg4 = reg6;
27546 : reg3 = reg2;
27547 : operands[6] = operands[4];
27548 : }
27549 :
27550 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27551 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27552 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27553 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27554 :
27555 : tmp1 = reg1 | reg2;
27556 : tmp2 = tmp1 | reg3;
27557 : reg_mask = tmp2 ^ reg4;
27558 : reg_mask &= 0xFF;
27559 :
27560 : operands[1] = STRIP_UNARY (operands[1]);
27561 : operands[2] = STRIP_UNARY (operands[2]);
27562 : operands[6] = STRIP_UNARY (operands[6]);
27563 : operands[5] = GEN_INT (reg_mask);
27564 : if (!register_operand (operands[2], V2DFmode))
27565 : operands[2] = force_reg (V2DFmode, operands[2]);
27566 : if (!register_operand (operands[6], V2DFmode))
27567 : operands[6] = force_reg (V2DFmode, operands[6]);
27568 :
27569 : }
27570 : #undef DONE
27571 : #undef FAIL
27572 : static const uint8_t expand_encoding[] = {
27573 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27574 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27575 : 0x25
27576 : };
27577 : return complete_seq (expand_encoding, operands);
27578 : }
27579 :
27580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27581 : extern rtx_insn *gen_split_3026 (rtx_insn *, rtx *);
27582 : rtx_insn *
27583 : gen_split_3026 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27584 : {
27585 : if (dump_file)
27586 : fprintf (dump_file, "Splitting with gen_split_3026 (sse.md:14227)\n");
27587 : start_sequence ();
27588 : #define FAIL return (end_sequence (), nullptr)
27589 : #define DONE return end_sequence ()
27590 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27591 : {
27592 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27593 : int reg6 = 0xF0;
27594 : int reg2 = 0xCC;
27595 : int reg1 = 0xAA;
27596 : int reg3 = 0;
27597 : int reg4 = 0;
27598 : int reg_mask, tmp1, tmp2;
27599 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27600 : STRIP_UNARY (operands[4])))
27601 : {
27602 : reg4 = reg1;
27603 : reg3 = reg6;
27604 : operands[6] = operands[3];
27605 : }
27606 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27607 : STRIP_UNARY (operands[4])))
27608 : {
27609 : reg4 = reg2;
27610 : reg3 = reg6;
27611 : operands[6] = operands[3];
27612 : }
27613 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27614 : STRIP_UNARY (operands[3])))
27615 : {
27616 : reg4 = reg6;
27617 : reg3 = reg1;
27618 : operands[6] = operands[4];
27619 : }
27620 : else
27621 : {
27622 : reg4 = reg6;
27623 : reg3 = reg2;
27624 : operands[6] = operands[4];
27625 : }
27626 :
27627 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27628 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27629 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27630 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27631 :
27632 : tmp1 = reg1 ^ reg2;
27633 : tmp2 = tmp1 ^ reg3;
27634 : reg_mask = tmp2 & reg4;
27635 : reg_mask &= 0xFF;
27636 :
27637 : operands[1] = STRIP_UNARY (operands[1]);
27638 : operands[2] = STRIP_UNARY (operands[2]);
27639 : operands[6] = STRIP_UNARY (operands[6]);
27640 : operands[5] = GEN_INT (reg_mask);
27641 : if (!register_operand (operands[2], V2DFmode))
27642 : operands[2] = force_reg (V2DFmode, operands[2]);
27643 : if (!register_operand (operands[6], V2DFmode))
27644 : operands[6] = force_reg (V2DFmode, operands[6]);
27645 :
27646 : }
27647 : #undef DONE
27648 : #undef FAIL
27649 : static const uint8_t expand_encoding[] = {
27650 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27651 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27652 : 0x25
27653 : };
27654 : return complete_seq (expand_encoding, operands);
27655 : }
27656 :
27657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27658 : extern rtx_insn *gen_split_3040 (rtx_insn *, rtx *);
27659 : rtx_insn *
27660 : gen_split_3040 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27661 : {
27662 : if (dump_file)
27663 : fprintf (dump_file, "Splitting with gen_split_3040 (sse.md:14313)\n");
27664 : start_sequence ();
27665 : #define FAIL return (end_sequence (), nullptr)
27666 : #define DONE return end_sequence ()
27667 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27668 : {
27669 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27670 : int reg3 = 0xF0;
27671 : int reg2 = 0xCC;
27672 : int reg1 = 0xAA;
27673 : int reg_mask, tmp1;
27674 :
27675 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27676 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27677 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27678 :
27679 : tmp1 = reg1 & reg2;
27680 : reg_mask = tmp1 ^ reg3;
27681 : reg_mask &= 0xFF;
27682 :
27683 : operands[1] = STRIP_UNARY (operands[1]);
27684 : operands[2] = STRIP_UNARY (operands[2]);
27685 : operands[3] = STRIP_UNARY (operands[3]);
27686 : operands[4] = GEN_INT (reg_mask);
27687 : if (!register_operand (operands[2], V32QImode))
27688 : operands[2] = force_reg (V32QImode, operands[2]);
27689 : if (!register_operand (operands[3], V32QImode))
27690 : operands[3] = force_reg (V32QImode, operands[3]);
27691 : }
27692 : #undef DONE
27693 : #undef FAIL
27694 : static const uint8_t expand_encoding[] = {
27695 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
27696 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27697 : 0x25
27698 : };
27699 : return complete_seq (expand_encoding, operands);
27700 : }
27701 :
27702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27703 : extern rtx_insn *gen_split_3050 (rtx_insn *, rtx *);
27704 : rtx_insn *
27705 : gen_split_3050 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27706 : {
27707 : if (dump_file)
27708 : fprintf (dump_file, "Splitting with gen_split_3050 (sse.md:14313)\n");
27709 : start_sequence ();
27710 : #define FAIL return (end_sequence (), nullptr)
27711 : #define DONE return end_sequence ()
27712 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27713 : {
27714 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27715 : int reg3 = 0xF0;
27716 : int reg2 = 0xCC;
27717 : int reg1 = 0xAA;
27718 : int reg_mask, tmp1;
27719 :
27720 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27721 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27722 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27723 :
27724 : tmp1 = reg1 | reg2;
27725 : reg_mask = tmp1 & reg3;
27726 : reg_mask &= 0xFF;
27727 :
27728 : operands[1] = STRIP_UNARY (operands[1]);
27729 : operands[2] = STRIP_UNARY (operands[2]);
27730 : operands[3] = STRIP_UNARY (operands[3]);
27731 : operands[4] = GEN_INT (reg_mask);
27732 : if (!register_operand (operands[2], V16QImode))
27733 : operands[2] = force_reg (V16QImode, operands[2]);
27734 : if (!register_operand (operands[3], V16QImode))
27735 : operands[3] = force_reg (V16QImode, operands[3]);
27736 : }
27737 : #undef DONE
27738 : #undef FAIL
27739 : static const uint8_t expand_encoding[] = {
27740 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
27741 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27742 : 0x25
27743 : };
27744 : return complete_seq (expand_encoding, operands);
27745 : }
27746 :
27747 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27748 : extern rtx_insn *gen_split_3060 (rtx_insn *, rtx *);
27749 : rtx_insn *
27750 : gen_split_3060 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27751 : {
27752 : if (dump_file)
27753 : fprintf (dump_file, "Splitting with gen_split_3060 (sse.md:14313)\n");
27754 : start_sequence ();
27755 : #define FAIL return (end_sequence (), nullptr)
27756 : #define DONE return end_sequence ()
27757 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27758 : {
27759 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27760 : int reg3 = 0xF0;
27761 : int reg2 = 0xCC;
27762 : int reg1 = 0xAA;
27763 : int reg_mask, tmp1;
27764 :
27765 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27766 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27767 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27768 :
27769 : tmp1 = reg1 | reg2;
27770 : reg_mask = tmp1 | reg3;
27771 : reg_mask &= 0xFF;
27772 :
27773 : operands[1] = STRIP_UNARY (operands[1]);
27774 : operands[2] = STRIP_UNARY (operands[2]);
27775 : operands[3] = STRIP_UNARY (operands[3]);
27776 : operands[4] = GEN_INT (reg_mask);
27777 : if (!register_operand (operands[2], V32HImode))
27778 : operands[2] = force_reg (V32HImode, operands[2]);
27779 : if (!register_operand (operands[3], V32HImode))
27780 : operands[3] = force_reg (V32HImode, operands[3]);
27781 : }
27782 : #undef DONE
27783 : #undef FAIL
27784 : static const uint8_t expand_encoding[] = {
27785 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
27786 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27787 : 0x25
27788 : };
27789 : return complete_seq (expand_encoding, operands);
27790 : }
27791 :
27792 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27793 : extern rtx_insn *gen_split_3070 (rtx_insn *, rtx *);
27794 : rtx_insn *
27795 : gen_split_3070 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27796 : {
27797 : if (dump_file)
27798 : fprintf (dump_file, "Splitting with gen_split_3070 (sse.md:14313)\n");
27799 : start_sequence ();
27800 : #define FAIL return (end_sequence (), nullptr)
27801 : #define DONE return end_sequence ()
27802 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27803 : {
27804 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27805 : int reg3 = 0xF0;
27806 : int reg2 = 0xCC;
27807 : int reg1 = 0xAA;
27808 : int reg_mask, tmp1;
27809 :
27810 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27811 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27812 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27813 :
27814 : tmp1 = reg1 | reg2;
27815 : reg_mask = tmp1 ^ reg3;
27816 : reg_mask &= 0xFF;
27817 :
27818 : operands[1] = STRIP_UNARY (operands[1]);
27819 : operands[2] = STRIP_UNARY (operands[2]);
27820 : operands[3] = STRIP_UNARY (operands[3]);
27821 : operands[4] = GEN_INT (reg_mask);
27822 : if (!register_operand (operands[2], V16HImode))
27823 : operands[2] = force_reg (V16HImode, operands[2]);
27824 : if (!register_operand (operands[3], V16HImode))
27825 : operands[3] = force_reg (V16HImode, operands[3]);
27826 : }
27827 : #undef DONE
27828 : #undef FAIL
27829 : static const uint8_t expand_encoding[] = {
27830 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
27831 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27832 : 0x25
27833 : };
27834 : return complete_seq (expand_encoding, operands);
27835 : }
27836 :
27837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27838 : extern rtx_insn *gen_split_3080 (rtx_insn *, rtx *);
27839 : rtx_insn *
27840 : gen_split_3080 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27841 : {
27842 : if (dump_file)
27843 : fprintf (dump_file, "Splitting with gen_split_3080 (sse.md:14313)\n");
27844 : start_sequence ();
27845 : #define FAIL return (end_sequence (), nullptr)
27846 : #define DONE return end_sequence ()
27847 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27848 : {
27849 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27850 : int reg3 = 0xF0;
27851 : int reg2 = 0xCC;
27852 : int reg1 = 0xAA;
27853 : int reg_mask, tmp1;
27854 :
27855 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27856 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27857 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27858 :
27859 : tmp1 = reg1 ^ reg2;
27860 : reg_mask = tmp1 & reg3;
27861 : reg_mask &= 0xFF;
27862 :
27863 : operands[1] = STRIP_UNARY (operands[1]);
27864 : operands[2] = STRIP_UNARY (operands[2]);
27865 : operands[3] = STRIP_UNARY (operands[3]);
27866 : operands[4] = GEN_INT (reg_mask);
27867 : if (!register_operand (operands[2], V8HImode))
27868 : operands[2] = force_reg (V8HImode, operands[2]);
27869 : if (!register_operand (operands[3], V8HImode))
27870 : operands[3] = force_reg (V8HImode, operands[3]);
27871 : }
27872 : #undef DONE
27873 : #undef FAIL
27874 : static const uint8_t expand_encoding[] = {
27875 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
27876 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27877 : 0x25
27878 : };
27879 : return complete_seq (expand_encoding, operands);
27880 : }
27881 :
27882 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27883 : extern rtx_insn *gen_split_3090 (rtx_insn *, rtx *);
27884 : rtx_insn *
27885 : gen_split_3090 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27886 : {
27887 : if (dump_file)
27888 : fprintf (dump_file, "Splitting with gen_split_3090 (sse.md:14313)\n");
27889 : start_sequence ();
27890 : #define FAIL return (end_sequence (), nullptr)
27891 : #define DONE return end_sequence ()
27892 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27893 : {
27894 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27895 : int reg3 = 0xF0;
27896 : int reg2 = 0xCC;
27897 : int reg1 = 0xAA;
27898 : int reg_mask, tmp1;
27899 :
27900 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27901 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27902 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27903 :
27904 : tmp1 = reg1 ^ reg2;
27905 : reg_mask = tmp1 | reg3;
27906 : reg_mask &= 0xFF;
27907 :
27908 : operands[1] = STRIP_UNARY (operands[1]);
27909 : operands[2] = STRIP_UNARY (operands[2]);
27910 : operands[3] = STRIP_UNARY (operands[3]);
27911 : operands[4] = GEN_INT (reg_mask);
27912 : if (!register_operand (operands[2], V16SImode))
27913 : operands[2] = force_reg (V16SImode, operands[2]);
27914 : if (!register_operand (operands[3], V16SImode))
27915 : operands[3] = force_reg (V16SImode, operands[3]);
27916 : }
27917 : #undef DONE
27918 : #undef FAIL
27919 : static const uint8_t expand_encoding[] = {
27920 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
27921 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27922 : 0x25
27923 : };
27924 : return complete_seq (expand_encoding, operands);
27925 : }
27926 :
27927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27928 : extern rtx_insn *gen_split_3100 (rtx_insn *, rtx *);
27929 : rtx_insn *
27930 : gen_split_3100 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27931 : {
27932 : if (dump_file)
27933 : fprintf (dump_file, "Splitting with gen_split_3100 (sse.md:14313)\n");
27934 : start_sequence ();
27935 : #define FAIL return (end_sequence (), nullptr)
27936 : #define DONE return end_sequence ()
27937 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27938 : {
27939 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27940 : int reg3 = 0xF0;
27941 : int reg2 = 0xCC;
27942 : int reg1 = 0xAA;
27943 : int reg_mask, tmp1;
27944 :
27945 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27946 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27947 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27948 :
27949 : tmp1 = reg1 ^ reg2;
27950 : reg_mask = tmp1 ^ reg3;
27951 : reg_mask &= 0xFF;
27952 :
27953 : operands[1] = STRIP_UNARY (operands[1]);
27954 : operands[2] = STRIP_UNARY (operands[2]);
27955 : operands[3] = STRIP_UNARY (operands[3]);
27956 : operands[4] = GEN_INT (reg_mask);
27957 : if (!register_operand (operands[2], V8SImode))
27958 : operands[2] = force_reg (V8SImode, operands[2]);
27959 : if (!register_operand (operands[3], V8SImode))
27960 : operands[3] = force_reg (V8SImode, operands[3]);
27961 : }
27962 : #undef DONE
27963 : #undef FAIL
27964 : static const uint8_t expand_encoding[] = {
27965 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
27966 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27967 : 0x25
27968 : };
27969 : return complete_seq (expand_encoding, operands);
27970 : }
27971 :
27972 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27973 : extern rtx_insn *gen_split_3110 (rtx_insn *, rtx *);
27974 : rtx_insn *
27975 : gen_split_3110 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27976 : {
27977 : if (dump_file)
27978 : fprintf (dump_file, "Splitting with gen_split_3110 (sse.md:14313)\n");
27979 : start_sequence ();
27980 : #define FAIL return (end_sequence (), nullptr)
27981 : #define DONE return end_sequence ()
27982 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27983 : {
27984 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27985 : int reg3 = 0xF0;
27986 : int reg2 = 0xCC;
27987 : int reg1 = 0xAA;
27988 : int reg_mask, tmp1;
27989 :
27990 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27991 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27992 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27993 :
27994 : tmp1 = reg1 & reg2;
27995 : reg_mask = tmp1 & reg3;
27996 : reg_mask &= 0xFF;
27997 :
27998 : operands[1] = STRIP_UNARY (operands[1]);
27999 : operands[2] = STRIP_UNARY (operands[2]);
28000 : operands[3] = STRIP_UNARY (operands[3]);
28001 : operands[4] = GEN_INT (reg_mask);
28002 : if (!register_operand (operands[2], V8DImode))
28003 : operands[2] = force_reg (V8DImode, operands[2]);
28004 : if (!register_operand (operands[3], V8DImode))
28005 : operands[3] = force_reg (V8DImode, operands[3]);
28006 : }
28007 : #undef DONE
28008 : #undef FAIL
28009 : static const uint8_t expand_encoding[] = {
28010 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
28011 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28012 : 0x25
28013 : };
28014 : return complete_seq (expand_encoding, operands);
28015 : }
28016 :
28017 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28018 : extern rtx_insn *gen_split_3120 (rtx_insn *, rtx *);
28019 : rtx_insn *
28020 : gen_split_3120 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28021 : {
28022 : if (dump_file)
28023 : fprintf (dump_file, "Splitting with gen_split_3120 (sse.md:14313)\n");
28024 : start_sequence ();
28025 : #define FAIL return (end_sequence (), nullptr)
28026 : #define DONE return end_sequence ()
28027 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28028 : {
28029 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28030 : int reg3 = 0xF0;
28031 : int reg2 = 0xCC;
28032 : int reg1 = 0xAA;
28033 : int reg_mask, tmp1;
28034 :
28035 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28036 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28037 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28038 :
28039 : tmp1 = reg1 & reg2;
28040 : reg_mask = tmp1 | reg3;
28041 : reg_mask &= 0xFF;
28042 :
28043 : operands[1] = STRIP_UNARY (operands[1]);
28044 : operands[2] = STRIP_UNARY (operands[2]);
28045 : operands[3] = STRIP_UNARY (operands[3]);
28046 : operands[4] = GEN_INT (reg_mask);
28047 : if (!register_operand (operands[2], V4DImode))
28048 : operands[2] = force_reg (V4DImode, operands[2]);
28049 : if (!register_operand (operands[3], V4DImode))
28050 : operands[3] = force_reg (V4DImode, operands[3]);
28051 : }
28052 : #undef DONE
28053 : #undef FAIL
28054 : static const uint8_t expand_encoding[] = {
28055 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
28056 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28057 : 0x25
28058 : };
28059 : return complete_seq (expand_encoding, operands);
28060 : }
28061 :
28062 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28063 : extern rtx_insn *gen_split_3130 (rtx_insn *, rtx *);
28064 : rtx_insn *
28065 : gen_split_3130 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28066 : {
28067 : if (dump_file)
28068 : fprintf (dump_file, "Splitting with gen_split_3130 (sse.md:14313)\n");
28069 : start_sequence ();
28070 : #define FAIL return (end_sequence (), nullptr)
28071 : #define DONE return end_sequence ()
28072 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28073 : {
28074 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28075 : int reg3 = 0xF0;
28076 : int reg2 = 0xCC;
28077 : int reg1 = 0xAA;
28078 : int reg_mask, tmp1;
28079 :
28080 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28081 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28082 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28083 :
28084 : tmp1 = reg1 & reg2;
28085 : reg_mask = tmp1 ^ reg3;
28086 : reg_mask &= 0xFF;
28087 :
28088 : operands[1] = STRIP_UNARY (operands[1]);
28089 : operands[2] = STRIP_UNARY (operands[2]);
28090 : operands[3] = STRIP_UNARY (operands[3]);
28091 : operands[4] = GEN_INT (reg_mask);
28092 : if (!register_operand (operands[2], V2DImode))
28093 : operands[2] = force_reg (V2DImode, operands[2]);
28094 : if (!register_operand (operands[3], V2DImode))
28095 : operands[3] = force_reg (V2DImode, operands[3]);
28096 : }
28097 : #undef DONE
28098 : #undef FAIL
28099 : static const uint8_t expand_encoding[] = {
28100 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
28101 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28102 : 0x25
28103 : };
28104 : return complete_seq (expand_encoding, operands);
28105 : }
28106 :
28107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28108 : extern rtx_insn *gen_split_3140 (rtx_insn *, rtx *);
28109 : rtx_insn *
28110 : gen_split_3140 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28111 : {
28112 : if (dump_file)
28113 : fprintf (dump_file, "Splitting with gen_split_3140 (sse.md:14313)\n");
28114 : start_sequence ();
28115 : #define FAIL return (end_sequence (), nullptr)
28116 : #define DONE return end_sequence ()
28117 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28118 : {
28119 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28120 : int reg3 = 0xF0;
28121 : int reg2 = 0xCC;
28122 : int reg1 = 0xAA;
28123 : int reg_mask, tmp1;
28124 :
28125 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28126 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28127 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28128 :
28129 : tmp1 = reg1 | reg2;
28130 : reg_mask = tmp1 & reg3;
28131 : reg_mask &= 0xFF;
28132 :
28133 : operands[1] = STRIP_UNARY (operands[1]);
28134 : operands[2] = STRIP_UNARY (operands[2]);
28135 : operands[3] = STRIP_UNARY (operands[3]);
28136 : operands[4] = GEN_INT (reg_mask);
28137 : if (!register_operand (operands[2], V32HFmode))
28138 : operands[2] = force_reg (V32HFmode, operands[2]);
28139 : if (!register_operand (operands[3], V32HFmode))
28140 : operands[3] = force_reg (V32HFmode, operands[3]);
28141 : }
28142 : #undef DONE
28143 : #undef FAIL
28144 : static const uint8_t expand_encoding[] = {
28145 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
28146 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28147 : 0x25
28148 : };
28149 : return complete_seq (expand_encoding, operands);
28150 : }
28151 :
28152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28153 : extern rtx_insn *gen_split_3150 (rtx_insn *, rtx *);
28154 : rtx_insn *
28155 : gen_split_3150 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28156 : {
28157 : if (dump_file)
28158 : fprintf (dump_file, "Splitting with gen_split_3150 (sse.md:14313)\n");
28159 : start_sequence ();
28160 : #define FAIL return (end_sequence (), nullptr)
28161 : #define DONE return end_sequence ()
28162 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28163 : {
28164 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28165 : int reg3 = 0xF0;
28166 : int reg2 = 0xCC;
28167 : int reg1 = 0xAA;
28168 : int reg_mask, tmp1;
28169 :
28170 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28171 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28172 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28173 :
28174 : tmp1 = reg1 | reg2;
28175 : reg_mask = tmp1 | reg3;
28176 : reg_mask &= 0xFF;
28177 :
28178 : operands[1] = STRIP_UNARY (operands[1]);
28179 : operands[2] = STRIP_UNARY (operands[2]);
28180 : operands[3] = STRIP_UNARY (operands[3]);
28181 : operands[4] = GEN_INT (reg_mask);
28182 : if (!register_operand (operands[2], V16HFmode))
28183 : operands[2] = force_reg (V16HFmode, operands[2]);
28184 : if (!register_operand (operands[3], V16HFmode))
28185 : operands[3] = force_reg (V16HFmode, operands[3]);
28186 : }
28187 : #undef DONE
28188 : #undef FAIL
28189 : static const uint8_t expand_encoding[] = {
28190 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
28191 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28192 : 0x25
28193 : };
28194 : return complete_seq (expand_encoding, operands);
28195 : }
28196 :
28197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28198 : extern rtx_insn *gen_split_3160 (rtx_insn *, rtx *);
28199 : rtx_insn *
28200 : gen_split_3160 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28201 : {
28202 : if (dump_file)
28203 : fprintf (dump_file, "Splitting with gen_split_3160 (sse.md:14313)\n");
28204 : start_sequence ();
28205 : #define FAIL return (end_sequence (), nullptr)
28206 : #define DONE return end_sequence ()
28207 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28208 : {
28209 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28210 : int reg3 = 0xF0;
28211 : int reg2 = 0xCC;
28212 : int reg1 = 0xAA;
28213 : int reg_mask, tmp1;
28214 :
28215 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28216 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28217 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28218 :
28219 : tmp1 = reg1 | reg2;
28220 : reg_mask = tmp1 ^ reg3;
28221 : reg_mask &= 0xFF;
28222 :
28223 : operands[1] = STRIP_UNARY (operands[1]);
28224 : operands[2] = STRIP_UNARY (operands[2]);
28225 : operands[3] = STRIP_UNARY (operands[3]);
28226 : operands[4] = GEN_INT (reg_mask);
28227 : if (!register_operand (operands[2], V8HFmode))
28228 : operands[2] = force_reg (V8HFmode, operands[2]);
28229 : if (!register_operand (operands[3], V8HFmode))
28230 : operands[3] = force_reg (V8HFmode, operands[3]);
28231 : }
28232 : #undef DONE
28233 : #undef FAIL
28234 : static const uint8_t expand_encoding[] = {
28235 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
28236 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28237 : 0x25
28238 : };
28239 : return complete_seq (expand_encoding, operands);
28240 : }
28241 :
28242 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28243 : extern rtx_insn *gen_split_3170 (rtx_insn *, rtx *);
28244 : rtx_insn *
28245 : gen_split_3170 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28246 : {
28247 : if (dump_file)
28248 : fprintf (dump_file, "Splitting with gen_split_3170 (sse.md:14313)\n");
28249 : start_sequence ();
28250 : #define FAIL return (end_sequence (), nullptr)
28251 : #define DONE return end_sequence ()
28252 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28253 : {
28254 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28255 : int reg3 = 0xF0;
28256 : int reg2 = 0xCC;
28257 : int reg1 = 0xAA;
28258 : int reg_mask, tmp1;
28259 :
28260 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28261 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28262 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28263 :
28264 : tmp1 = reg1 ^ reg2;
28265 : reg_mask = tmp1 & reg3;
28266 : reg_mask &= 0xFF;
28267 :
28268 : operands[1] = STRIP_UNARY (operands[1]);
28269 : operands[2] = STRIP_UNARY (operands[2]);
28270 : operands[3] = STRIP_UNARY (operands[3]);
28271 : operands[4] = GEN_INT (reg_mask);
28272 : if (!register_operand (operands[2], V32BFmode))
28273 : operands[2] = force_reg (V32BFmode, operands[2]);
28274 : if (!register_operand (operands[3], V32BFmode))
28275 : operands[3] = force_reg (V32BFmode, operands[3]);
28276 : }
28277 : #undef DONE
28278 : #undef FAIL
28279 : static const uint8_t expand_encoding[] = {
28280 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
28281 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28282 : 0x25
28283 : };
28284 : return complete_seq (expand_encoding, operands);
28285 : }
28286 :
28287 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28288 : extern rtx_insn *gen_split_3180 (rtx_insn *, rtx *);
28289 : rtx_insn *
28290 : gen_split_3180 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28291 : {
28292 : if (dump_file)
28293 : fprintf (dump_file, "Splitting with gen_split_3180 (sse.md:14313)\n");
28294 : start_sequence ();
28295 : #define FAIL return (end_sequence (), nullptr)
28296 : #define DONE return end_sequence ()
28297 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28298 : {
28299 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28300 : int reg3 = 0xF0;
28301 : int reg2 = 0xCC;
28302 : int reg1 = 0xAA;
28303 : int reg_mask, tmp1;
28304 :
28305 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28306 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28307 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28308 :
28309 : tmp1 = reg1 ^ reg2;
28310 : reg_mask = tmp1 | reg3;
28311 : reg_mask &= 0xFF;
28312 :
28313 : operands[1] = STRIP_UNARY (operands[1]);
28314 : operands[2] = STRIP_UNARY (operands[2]);
28315 : operands[3] = STRIP_UNARY (operands[3]);
28316 : operands[4] = GEN_INT (reg_mask);
28317 : if (!register_operand (operands[2], V16BFmode))
28318 : operands[2] = force_reg (V16BFmode, operands[2]);
28319 : if (!register_operand (operands[3], V16BFmode))
28320 : operands[3] = force_reg (V16BFmode, operands[3]);
28321 : }
28322 : #undef DONE
28323 : #undef FAIL
28324 : static const uint8_t expand_encoding[] = {
28325 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
28326 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28327 : 0x25
28328 : };
28329 : return complete_seq (expand_encoding, operands);
28330 : }
28331 :
28332 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28333 : extern rtx_insn *gen_split_3190 (rtx_insn *, rtx *);
28334 : rtx_insn *
28335 : gen_split_3190 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28336 : {
28337 : if (dump_file)
28338 : fprintf (dump_file, "Splitting with gen_split_3190 (sse.md:14313)\n");
28339 : start_sequence ();
28340 : #define FAIL return (end_sequence (), nullptr)
28341 : #define DONE return end_sequence ()
28342 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28343 : {
28344 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28345 : int reg3 = 0xF0;
28346 : int reg2 = 0xCC;
28347 : int reg1 = 0xAA;
28348 : int reg_mask, tmp1;
28349 :
28350 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28351 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28352 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28353 :
28354 : tmp1 = reg1 ^ reg2;
28355 : reg_mask = tmp1 ^ reg3;
28356 : reg_mask &= 0xFF;
28357 :
28358 : operands[1] = STRIP_UNARY (operands[1]);
28359 : operands[2] = STRIP_UNARY (operands[2]);
28360 : operands[3] = STRIP_UNARY (operands[3]);
28361 : operands[4] = GEN_INT (reg_mask);
28362 : if (!register_operand (operands[2], V8BFmode))
28363 : operands[2] = force_reg (V8BFmode, operands[2]);
28364 : if (!register_operand (operands[3], V8BFmode))
28365 : operands[3] = force_reg (V8BFmode, operands[3]);
28366 : }
28367 : #undef DONE
28368 : #undef FAIL
28369 : static const uint8_t expand_encoding[] = {
28370 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
28371 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28372 : 0x25
28373 : };
28374 : return complete_seq (expand_encoding, operands);
28375 : }
28376 :
28377 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28378 : extern rtx_insn *gen_split_3200 (rtx_insn *, rtx *);
28379 : rtx_insn *
28380 : gen_split_3200 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28381 : {
28382 : if (dump_file)
28383 : fprintf (dump_file, "Splitting with gen_split_3200 (sse.md:14313)\n");
28384 : start_sequence ();
28385 : #define FAIL return (end_sequence (), nullptr)
28386 : #define DONE return end_sequence ()
28387 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28388 : {
28389 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28390 : int reg3 = 0xF0;
28391 : int reg2 = 0xCC;
28392 : int reg1 = 0xAA;
28393 : int reg_mask, tmp1;
28394 :
28395 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28396 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28397 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28398 :
28399 : tmp1 = reg1 & reg2;
28400 : reg_mask = tmp1 & reg3;
28401 : reg_mask &= 0xFF;
28402 :
28403 : operands[1] = STRIP_UNARY (operands[1]);
28404 : operands[2] = STRIP_UNARY (operands[2]);
28405 : operands[3] = STRIP_UNARY (operands[3]);
28406 : operands[4] = GEN_INT (reg_mask);
28407 : if (!register_operand (operands[2], V8SFmode))
28408 : operands[2] = force_reg (V8SFmode, operands[2]);
28409 : if (!register_operand (operands[3], V8SFmode))
28410 : operands[3] = force_reg (V8SFmode, operands[3]);
28411 : }
28412 : #undef DONE
28413 : #undef FAIL
28414 : static const uint8_t expand_encoding[] = {
28415 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
28416 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28417 : 0x25
28418 : };
28419 : return complete_seq (expand_encoding, operands);
28420 : }
28421 :
28422 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28423 : extern rtx_insn *gen_split_3210 (rtx_insn *, rtx *);
28424 : rtx_insn *
28425 : gen_split_3210 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28426 : {
28427 : if (dump_file)
28428 : fprintf (dump_file, "Splitting with gen_split_3210 (sse.md:14313)\n");
28429 : start_sequence ();
28430 : #define FAIL return (end_sequence (), nullptr)
28431 : #define DONE return end_sequence ()
28432 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28433 : {
28434 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28435 : int reg3 = 0xF0;
28436 : int reg2 = 0xCC;
28437 : int reg1 = 0xAA;
28438 : int reg_mask, tmp1;
28439 :
28440 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28441 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28442 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28443 :
28444 : tmp1 = reg1 & reg2;
28445 : reg_mask = tmp1 | reg3;
28446 : reg_mask &= 0xFF;
28447 :
28448 : operands[1] = STRIP_UNARY (operands[1]);
28449 : operands[2] = STRIP_UNARY (operands[2]);
28450 : operands[3] = STRIP_UNARY (operands[3]);
28451 : operands[4] = GEN_INT (reg_mask);
28452 : if (!register_operand (operands[2], V4SFmode))
28453 : operands[2] = force_reg (V4SFmode, operands[2]);
28454 : if (!register_operand (operands[3], V4SFmode))
28455 : operands[3] = force_reg (V4SFmode, operands[3]);
28456 : }
28457 : #undef DONE
28458 : #undef FAIL
28459 : static const uint8_t expand_encoding[] = {
28460 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
28461 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28462 : 0x25
28463 : };
28464 : return complete_seq (expand_encoding, operands);
28465 : }
28466 :
28467 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28468 : extern rtx_insn *gen_split_3220 (rtx_insn *, rtx *);
28469 : rtx_insn *
28470 : gen_split_3220 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28471 : {
28472 : if (dump_file)
28473 : fprintf (dump_file, "Splitting with gen_split_3220 (sse.md:14313)\n");
28474 : start_sequence ();
28475 : #define FAIL return (end_sequence (), nullptr)
28476 : #define DONE return end_sequence ()
28477 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28478 : {
28479 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28480 : int reg3 = 0xF0;
28481 : int reg2 = 0xCC;
28482 : int reg1 = 0xAA;
28483 : int reg_mask, tmp1;
28484 :
28485 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28486 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28487 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28488 :
28489 : tmp1 = reg1 & reg2;
28490 : reg_mask = tmp1 ^ reg3;
28491 : reg_mask &= 0xFF;
28492 :
28493 : operands[1] = STRIP_UNARY (operands[1]);
28494 : operands[2] = STRIP_UNARY (operands[2]);
28495 : operands[3] = STRIP_UNARY (operands[3]);
28496 : operands[4] = GEN_INT (reg_mask);
28497 : if (!register_operand (operands[2], V8DFmode))
28498 : operands[2] = force_reg (V8DFmode, operands[2]);
28499 : if (!register_operand (operands[3], V8DFmode))
28500 : operands[3] = force_reg (V8DFmode, operands[3]);
28501 : }
28502 : #undef DONE
28503 : #undef FAIL
28504 : static const uint8_t expand_encoding[] = {
28505 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
28506 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28507 : 0x25
28508 : };
28509 : return complete_seq (expand_encoding, operands);
28510 : }
28511 :
28512 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28513 : extern rtx_insn *gen_split_3230 (rtx_insn *, rtx *);
28514 : rtx_insn *
28515 : gen_split_3230 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28516 : {
28517 : if (dump_file)
28518 : fprintf (dump_file, "Splitting with gen_split_3230 (sse.md:14313)\n");
28519 : start_sequence ();
28520 : #define FAIL return (end_sequence (), nullptr)
28521 : #define DONE return end_sequence ()
28522 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28523 : {
28524 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28525 : int reg3 = 0xF0;
28526 : int reg2 = 0xCC;
28527 : int reg1 = 0xAA;
28528 : int reg_mask, tmp1;
28529 :
28530 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28531 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28532 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28533 :
28534 : tmp1 = reg1 | reg2;
28535 : reg_mask = tmp1 & reg3;
28536 : reg_mask &= 0xFF;
28537 :
28538 : operands[1] = STRIP_UNARY (operands[1]);
28539 : operands[2] = STRIP_UNARY (operands[2]);
28540 : operands[3] = STRIP_UNARY (operands[3]);
28541 : operands[4] = GEN_INT (reg_mask);
28542 : if (!register_operand (operands[2], V4DFmode))
28543 : operands[2] = force_reg (V4DFmode, operands[2]);
28544 : if (!register_operand (operands[3], V4DFmode))
28545 : operands[3] = force_reg (V4DFmode, operands[3]);
28546 : }
28547 : #undef DONE
28548 : #undef FAIL
28549 : static const uint8_t expand_encoding[] = {
28550 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
28551 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28552 : 0x25
28553 : };
28554 : return complete_seq (expand_encoding, operands);
28555 : }
28556 :
28557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28558 : extern rtx_insn *gen_split_3240 (rtx_insn *, rtx *);
28559 : rtx_insn *
28560 : gen_split_3240 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28561 : {
28562 : if (dump_file)
28563 : fprintf (dump_file, "Splitting with gen_split_3240 (sse.md:14313)\n");
28564 : start_sequence ();
28565 : #define FAIL return (end_sequence (), nullptr)
28566 : #define DONE return end_sequence ()
28567 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28568 : {
28569 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28570 : int reg3 = 0xF0;
28571 : int reg2 = 0xCC;
28572 : int reg1 = 0xAA;
28573 : int reg_mask, tmp1;
28574 :
28575 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28576 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28577 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28578 :
28579 : tmp1 = reg1 | reg2;
28580 : reg_mask = tmp1 | reg3;
28581 : reg_mask &= 0xFF;
28582 :
28583 : operands[1] = STRIP_UNARY (operands[1]);
28584 : operands[2] = STRIP_UNARY (operands[2]);
28585 : operands[3] = STRIP_UNARY (operands[3]);
28586 : operands[4] = GEN_INT (reg_mask);
28587 : if (!register_operand (operands[2], V2DFmode))
28588 : operands[2] = force_reg (V2DFmode, operands[2]);
28589 : if (!register_operand (operands[3], V2DFmode))
28590 : operands[3] = force_reg (V2DFmode, operands[3]);
28591 : }
28592 : #undef DONE
28593 : #undef FAIL
28594 : static const uint8_t expand_encoding[] = {
28595 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
28596 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28597 : 0x25
28598 : };
28599 : return complete_seq (expand_encoding, operands);
28600 : }
28601 :
28602 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14358 */
28603 : rtx
28604 : gen_avx512vl_vternlogv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28605 : {
28606 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28607 : start_sequence ();
28608 : {
28609 : #define FAIL return (end_sequence (), nullptr)
28610 : #define DONE return end_sequence ()
28611 : #line 14370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28612 : {
28613 : unsigned HOST_WIDE_INT mode_mask = GET_MODE_MASK (QImode);
28614 : if (CONST_INT_P (operands[5])
28615 : && (UINTVAL (operands[5]) & mode_mask) == mode_mask)
28616 : {
28617 : ix86_expand_ternlog (V2DImode, operands[1], operands[2],
28618 : operands[3], INTVAL (operands[4]),
28619 : operands[0]);
28620 : DONE;
28621 : }
28622 : if (!register_operand (operands[5], QImode))
28623 : operands[5] = force_reg (QImode, operands[5]);
28624 : }
28625 : #undef DONE
28626 : #undef FAIL
28627 : }
28628 : static const uint8_t expand_encoding[] = {
28629 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a,
28630 : 0x52, 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
28631 : 0x01, 0x04, 0x81, 0x25, 0x01, 0x01, 0x01, 0x05
28632 : };
28633 : return complete_seq (expand_encoding, operands);
28634 : }
28635 :
28636 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14497 */
28637 : rtx
28638 : gen_avx512vl_fixupimmv4df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
28639 : {
28640 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
28641 : start_sequence ();
28642 : {
28643 : #define FAIL return (end_sequence (), nullptr)
28644 : #define DONE return end_sequence ()
28645 : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28646 : {
28647 : emit_insn (gen_avx512vl_fixupimmv4df_maskz_1_round (
28648 : operands[0], operands[1], operands[2], operands[3],
28649 : operands[4], CONST0_RTX (V4DFmode), operands[5]
28650 : , operands[6]));
28651 : DONE;
28652 : }
28653 : #undef DONE
28654 : #undef FAIL
28655 : }
28656 : static const uint8_t expand_encoding[] = {
28657 : 0x07, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28658 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x1a, 0x00, 0x01,
28659 : 0x01, 0x06, 0x81, 0x33
28660 : };
28661 : return complete_seq (expand_encoding, operands);
28662 : }
28663 :
28664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14789 */
28665 : rtx
28666 : gen_sse2_shufpd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
28667 : {
28668 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
28669 : start_sequence ();
28670 : {
28671 : #define FAIL return (end_sequence (), nullptr)
28672 : #define DONE return end_sequence ()
28673 : #line 14795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28674 : {
28675 : int mask = INTVAL (operands[3]);
28676 : emit_insn (gen_sse2_shufpd_v2df (operands[0], operands[1],
28677 : operands[2], GEN_INT (mask & 1),
28678 : GEN_INT (mask & 2 ? 3 : 2)
28679 : ));
28680 : DONE;
28681 : }
28682 : #undef DONE
28683 : #undef FAIL
28684 : }
28685 : static const uint8_t expand_encoding[] = {
28686 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28687 : 0x03
28688 : };
28689 : return complete_seq (expand_encoding, operands);
28690 : }
28691 :
28692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15130 */
28693 : rtx
28694 : gen_sse2_loadlpd_exp (const rtx operand0, const rtx operand1, const rtx operand2)
28695 : {
28696 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28697 : start_sequence ();
28698 : {
28699 : #define FAIL return (end_sequence (), nullptr)
28700 : #define DONE return end_sequence ()
28701 : #line 15138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28702 : {
28703 : rtx dst = ix86_fixup_binary_operands (UNKNOWN, V2DFmode, operands);
28704 :
28705 : emit_insn (gen_sse2_loadlpd (dst, operands[1], operands[2]));
28706 :
28707 : /* Fix up the destination if needed. */
28708 : if (dst != operands[0])
28709 : emit_move_insn (operands[0], dst);
28710 :
28711 : DONE;
28712 : }
28713 : #undef DONE
28714 : #undef FAIL
28715 : }
28716 : static const uint8_t expand_encoding[] = {
28717 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6c, 0x01,
28718 : 0x02, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
28719 : 0x01, 0x27, 0x01
28720 : };
28721 : return complete_seq (expand_encoding, operands);
28722 : }
28723 :
28724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15517 */
28725 : rtx
28726 : gen_avx512f_truncatev16siv16hi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28727 : {
28728 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28729 : static const uint8_t expand_encoding[] = {
28730 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x70, 0x55,
28731 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28732 : };
28733 : return expand_rtx (expand_encoding, operands);
28734 : }
28735 :
28736 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15526 */
28737 : rtx
28738 : gen_truncv32hiv32qi2 (const rtx operand0, const rtx operand1)
28739 : {
28740 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28741 : static const uint8_t expand_encoding[] = {
28742 : 0x1f, 0x01, 0x00, 0x70, 0x54, 0x01, 0x01
28743 : };
28744 : return expand_rtx (expand_encoding, operands);
28745 : }
28746 :
28747 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15657 */
28748 : extern rtx_insn *gen_split_3258 (rtx_insn *, rtx *);
28749 : rtx_insn *
28750 : gen_split_3258 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28751 : {
28752 : if (dump_file)
28753 : fprintf (dump_file, "Splitting with gen_split_3258 (sse.md:15657)\n");
28754 : start_sequence ();
28755 : #define FAIL return (end_sequence (), nullptr)
28756 : #define DONE return end_sequence ()
28757 : #line 15671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28758 : operands[1] = lowpart_subreg (V4DImode,
28759 : force_reg (V8SImode, operands[1]),
28760 : V8SImode);
28761 : #undef DONE
28762 : #undef FAIL
28763 : static const uint8_t expand_encoding[] = {
28764 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x51, 0x01, 0x01
28765 : };
28766 : return complete_seq (expand_encoding, operands);
28767 : }
28768 :
28769 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15710 */
28770 : rtx
28771 : gen_truncv8hiv8qi2 (const rtx operand0, const rtx operand1)
28772 : {
28773 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28774 : start_sequence ();
28775 : {
28776 : #define FAIL return (end_sequence (), nullptr)
28777 : #define DONE return end_sequence ()
28778 : #line 15715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28779 : {
28780 : if (TARGET_AVX512VL
28781 : && (V8HImode != V8HImode || TARGET_AVX512BW))
28782 : {
28783 : rtx op0 = gen_reg_rtx (V16QImode);
28784 :
28785 : emit_insn (gen_avx512vl_truncatev8hiv8qi2
28786 : (op0, operands[1], CONST0_RTX (V8QImode)));
28787 :
28788 : emit_move_insn (operands[0],
28789 : lowpart_subreg (V8QImode, op0, V16QImode));
28790 : }
28791 : else
28792 : {
28793 : ix86_expand_trunc_with_avx2_noavx512f (operands[0],
28794 : operands[1],
28795 : V16QImode);
28796 : }
28797 : DONE;
28798 : }
28799 : #undef DONE
28800 : #undef FAIL
28801 : }
28802 : static const uint8_t expand_encoding[] = {
28803 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x48, 0x01, 0x01
28804 : };
28805 : return complete_seq (expand_encoding, operands);
28806 : }
28807 :
28808 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15877 */
28809 : extern rtx_insn *gen_split_3266 (rtx_insn *, rtx *);
28810 : rtx_insn *
28811 : gen_split_3266 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28812 : {
28813 : if (dump_file)
28814 : fprintf (dump_file, "Splitting with gen_split_3266 (sse.md:15877)\n");
28815 : start_sequence ();
28816 : #define FAIL return (end_sequence (), nullptr)
28817 : #define DONE return end_sequence ()
28818 : #line 15887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28819 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28820 : #undef DONE
28821 : #undef FAIL
28822 : static const uint8_t expand_encoding[] = {
28823 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x17, 0x45, 0x01,
28824 : 0x01
28825 : };
28826 : return complete_seq (expand_encoding, operands);
28827 : }
28828 :
28829 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15947 */
28830 : rtx
28831 : gen_avx512vl_us_truncatev4div4qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28832 : {
28833 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28834 : start_sequence ();
28835 : {
28836 : #define FAIL return (end_sequence (), nullptr)
28837 : #define DONE return end_sequence ()
28838 : #line 15953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28839 : {
28840 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28841 : emit_insn (gen_avx512vl_us_truncatev4div4qi2_mask_store_1 (operands[0],
28842 : operands[1],
28843 : operands[2]));
28844 : DONE;
28845 : }
28846 : #undef DONE
28847 : #undef FAIL
28848 : }
28849 : static const uint8_t expand_encoding[] = {
28850 : 0x03, 0x01, 0x00, 0x81, 0x18, 0x45, 0x01, 0x01,
28851 : 0x01, 0x02
28852 : };
28853 : return complete_seq (expand_encoding, operands);
28854 : }
28855 :
28856 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16069 */
28857 : rtx
28858 : gen_truncv2div2hi2 (const rtx operand0, const rtx operand1)
28859 : {
28860 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28861 : start_sequence ();
28862 : {
28863 : #define FAIL return (end_sequence (), nullptr)
28864 : #define DONE return end_sequence ()
28865 : #line 16074 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28866 : {
28867 : if (TARGET_AVX512VL)
28868 : {
28869 : rtx op0 = gen_reg_rtx (V8HImode);
28870 :
28871 : emit_insn (gen_avx512vl_truncatev2div2hi2
28872 : (op0, operands[1], CONST0_RTX (V6HImode)));
28873 :
28874 : emit_move_insn (operands[0],
28875 : lowpart_subreg (V2HImode, op0, V8HImode));
28876 : DONE;
28877 : }
28878 : else
28879 : ix86_expand_trunc_with_avx2_noavx512f (operands[0], operands[1], V8HImode);
28880 : DONE;
28881 : }
28882 : #undef DONE
28883 : #undef FAIL
28884 : }
28885 : static const uint8_t expand_encoding[] = {
28886 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x46, 0x01, 0x01
28887 : };
28888 : return complete_seq (expand_encoding, operands);
28889 : }
28890 :
28891 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16203 */
28892 : rtx
28893 : gen_avx512vl_truncatev4siv4hi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28894 : {
28895 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28896 : start_sequence ();
28897 : {
28898 : #define FAIL return (end_sequence (), nullptr)
28899 : #define DONE return end_sequence ()
28900 : #line 16209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28901 : {
28902 : operands[0] = adjust_address_nv (operands[0], V4HImode, 0);
28903 : emit_insn (gen_avx512vl_truncatev4siv4hi2_mask_store_1 (operands[0],
28904 : operands[1],
28905 : operands[2]));
28906 : DONE;
28907 : }
28908 : #undef DONE
28909 : #undef FAIL
28910 : }
28911 : static const uint8_t expand_encoding[] = {
28912 : 0x03, 0x01, 0x00, 0x70, 0x49, 0x01, 0x01, 0x01,
28913 : 0x02
28914 : };
28915 : return complete_seq (expand_encoding, operands);
28916 : }
28917 :
28918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16290 */
28919 : rtx
28920 : gen_avx512vl_us_truncatev2div2hi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28921 : {
28922 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28923 : start_sequence ();
28924 : {
28925 : #define FAIL return (end_sequence (), nullptr)
28926 : #define DONE return end_sequence ()
28927 : #line 16296 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28928 : {
28929 : operands[0] = adjust_address_nv (operands[0], V2HImode, 0);
28930 : emit_insn (gen_avx512vl_us_truncatev2div2hi2_mask_store_1 (operands[0],
28931 : operands[1],
28932 : operands[2]));
28933 : DONE;
28934 : }
28935 : #undef DONE
28936 : #undef FAIL
28937 : }
28938 : static const uint8_t expand_encoding[] = {
28939 : 0x03, 0x01, 0x00, 0x81, 0x18, 0x46, 0x01, 0x01,
28940 : 0x01, 0x02
28941 : };
28942 : return complete_seq (expand_encoding, operands);
28943 : }
28944 :
28945 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16491 */
28946 : extern rtx_insn *gen_split_3289 (rtx_insn *, rtx *);
28947 : rtx_insn *
28948 : gen_split_3289 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28949 : {
28950 : if (dump_file)
28951 : fprintf (dump_file, "Splitting with gen_split_3289 (sse.md:16491)\n");
28952 : start_sequence ();
28953 : #define FAIL return (end_sequence (), nullptr)
28954 : #define DONE return end_sequence ()
28955 : #line 16501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28956 : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
28957 : #undef DONE
28958 : #undef FAIL
28959 : static const uint8_t expand_encoding[] = {
28960 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x17, 0x48, 0x01,
28961 : 0x01
28962 : };
28963 : return complete_seq (expand_encoding, operands);
28964 : }
28965 :
28966 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16581 */
28967 : rtx
28968 : gen_negv32hi2 (const rtx operand0, const rtx operand1)
28969 : {
28970 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
28971 : start_sequence ();
28972 : {
28973 : #define FAIL return (end_sequence (), nullptr)
28974 : #define DONE return end_sequence ()
28975 : #line 16587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28976 : operands[2] = force_reg (V32HImode, CONST0_RTX (V32HImode));
28977 : #undef DONE
28978 : #undef FAIL
28979 : }
28980 : static const uint8_t expand_encoding[] = {
28981 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x5a, 0x01, 0x02,
28982 : 0x01, 0x01
28983 : };
28984 : return complete_seq (expand_encoding, operands);
28985 : }
28986 :
28987 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
28988 : rtx
28989 : gen_subv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
28990 : {
28991 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28992 : start_sequence ();
28993 : {
28994 : #define FAIL return (end_sequence (), nullptr)
28995 : #define DONE return end_sequence ()
28996 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28997 : ix86_fixup_binary_operands_no_copy (MINUS, V64QImode, operands);
28998 : #undef DONE
28999 : #undef FAIL
29000 : }
29001 : static const uint8_t expand_encoding[] = {
29002 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x59, 0x01, 0x01,
29003 : 0x01, 0x02
29004 : };
29005 : return complete_seq (expand_encoding, operands);
29006 : }
29007 :
29008 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29009 : rtx
29010 : gen_subv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29011 : {
29012 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29013 : start_sequence ();
29014 : {
29015 : #define FAIL return (end_sequence (), nullptr)
29016 : #define DONE return end_sequence ()
29017 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29018 : ix86_fixup_binary_operands_no_copy (MINUS, V8HImode, operands);
29019 : #undef DONE
29020 : #undef FAIL
29021 : }
29022 : static const uint8_t expand_encoding[] = {
29023 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x50, 0x01, 0x01,
29024 : 0x01, 0x02
29025 : };
29026 : return complete_seq (expand_encoding, operands);
29027 : }
29028 :
29029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29030 : rtx
29031 : gen_subv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29032 : {
29033 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29034 : start_sequence ();
29035 : {
29036 : #define FAIL return (end_sequence (), nullptr)
29037 : #define DONE return end_sequence ()
29038 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29039 : ix86_fixup_binary_operands_no_copy (MINUS, V4DImode, operands);
29040 : #undef DONE
29041 : #undef FAIL
29042 : }
29043 : static const uint8_t expand_encoding[] = {
29044 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x57, 0x01, 0x01,
29045 : 0x01, 0x02
29046 : };
29047 : return complete_seq (expand_encoding, operands);
29048 : }
29049 :
29050 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29051 : rtx
29052 : gen_cond_subv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29053 : {
29054 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29055 : start_sequence ();
29056 : {
29057 : #define FAIL _Pragma ("GCC error \"cond_subv32hi cannot FAIL\"") (void)0
29058 : #define DONE return end_sequence ()
29059 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29060 : {
29061 : emit_insn (gen_subv32hi3_mask (operands[0],
29062 : operands[2],
29063 : operands[3],
29064 : operands[4],
29065 : operands[1]));
29066 : DONE;
29067 : }
29068 : #undef DONE
29069 : #undef FAIL
29070 : }
29071 : static const uint8_t expand_encoding[] = {
29072 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x3c,
29073 : 0x5a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29074 : 0x01
29075 : };
29076 : return complete_seq (expand_encoding, operands);
29077 : }
29078 :
29079 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29080 : rtx
29081 : gen_cond_subv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29082 : {
29083 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29084 : start_sequence ();
29085 : {
29086 : #define FAIL _Pragma ("GCC error \"cond_subv4si cannot FAIL\"") (void)0
29087 : #define DONE return end_sequence ()
29088 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29089 : {
29090 : emit_insn (gen_subv4si3_mask (operands[0],
29091 : operands[2],
29092 : operands[3],
29093 : operands[4],
29094 : operands[1]));
29095 : DONE;
29096 : }
29097 : #undef DONE
29098 : #undef FAIL
29099 : }
29100 : static const uint8_t expand_encoding[] = {
29101 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x3c,
29102 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29103 : 0x01
29104 : };
29105 : return complete_seq (expand_encoding, operands);
29106 : }
29107 :
29108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16615 */
29109 : rtx
29110 : gen_subv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29111 : {
29112 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29113 : start_sequence ();
29114 : {
29115 : #define FAIL return (end_sequence (), nullptr)
29116 : #define DONE return end_sequence ()
29117 : #line 16624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29118 : ix86_fixup_binary_operands_no_copy (MINUS, V8SImode, operands);
29119 : #undef DONE
29120 : #undef FAIL
29121 : }
29122 : static const uint8_t expand_encoding[] = {
29123 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x3c,
29124 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29125 : 0x04
29126 : };
29127 : return complete_seq (expand_encoding, operands);
29128 : }
29129 :
29130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16626 */
29131 : rtx
29132 : gen_addv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29133 : {
29134 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29135 : start_sequence ();
29136 : {
29137 : #define FAIL return (end_sequence (), nullptr)
29138 : #define DONE return end_sequence ()
29139 : #line 16635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29140 : ix86_fixup_binary_operands_no_copy (PLUS, V16QImode, operands);
29141 : #undef DONE
29142 : #undef FAIL
29143 : }
29144 : static const uint8_t expand_encoding[] = {
29145 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x3b,
29146 : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29147 : 0x04
29148 : };
29149 : return complete_seq (expand_encoding, operands);
29150 : }
29151 :
29152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16626 */
29153 : rtx
29154 : gen_subv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29155 : {
29156 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29157 : start_sequence ();
29158 : {
29159 : #define FAIL return (end_sequence (), nullptr)
29160 : #define DONE return end_sequence ()
29161 : #line 16635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29162 : ix86_fixup_binary_operands_no_copy (MINUS, V8HImode, operands);
29163 : #undef DONE
29164 : #undef FAIL
29165 : }
29166 : static const uint8_t expand_encoding[] = {
29167 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x3c,
29168 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29169 : 0x04
29170 : };
29171 : return complete_seq (expand_encoding, operands);
29172 : }
29173 :
29174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29175 : rtx
29176 : gen_usaddv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29177 : {
29178 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29179 : start_sequence ();
29180 : {
29181 : #define FAIL return (end_sequence (), nullptr)
29182 : #define DONE return end_sequence ()
29183 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29184 : ix86_fixup_binary_operands_no_copy (US_PLUS, V32QImode, operands);
29185 : #undef DONE
29186 : #undef FAIL
29187 : }
29188 : static const uint8_t expand_encoding[] = {
29189 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0f, 0x54, 0x01,
29190 : 0x01, 0x01, 0x02
29191 : };
29192 : return complete_seq (expand_encoding, operands);
29193 : }
29194 :
29195 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29196 : rtx
29197 : gen_usaddv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29198 : {
29199 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29200 : start_sequence ();
29201 : {
29202 : #define FAIL return (end_sequence (), nullptr)
29203 : #define DONE return end_sequence ()
29204 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29205 : ix86_fixup_binary_operands_no_copy (US_PLUS, V16QImode, operands);
29206 : #undef DONE
29207 : #undef FAIL
29208 : }
29209 : static const uint8_t expand_encoding[] = {
29210 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x81,
29211 : 0x0f, 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29212 : 0x01, 0x04
29213 : };
29214 : return complete_seq (expand_encoding, operands);
29215 : }
29216 :
29217 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29218 : rtx
29219 : gen_ussubv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29220 : {
29221 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29222 : start_sequence ();
29223 : {
29224 : #define FAIL return (end_sequence (), nullptr)
29225 : #define DONE return end_sequence ()
29226 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29227 : ix86_fixup_binary_operands_no_copy (US_MINUS, V32HImode, operands);
29228 : #undef DONE
29229 : #undef FAIL
29230 : }
29231 : static const uint8_t expand_encoding[] = {
29232 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x16, 0x5a, 0x01,
29233 : 0x01, 0x01, 0x02
29234 : };
29235 : return complete_seq (expand_encoding, operands);
29236 : }
29237 :
29238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29239 : rtx
29240 : gen_ussubv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29241 : {
29242 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29243 : start_sequence ();
29244 : {
29245 : #define FAIL return (end_sequence (), nullptr)
29246 : #define DONE return end_sequence ()
29247 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29248 : ix86_fixup_binary_operands_no_copy (US_MINUS, V16HImode, operands);
29249 : #undef DONE
29250 : #undef FAIL
29251 : }
29252 : static const uint8_t expand_encoding[] = {
29253 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81,
29254 : 0x16, 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29255 : 0x01, 0x04
29256 : };
29257 : return complete_seq (expand_encoding, operands);
29258 : }
29259 :
29260 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16705 */
29261 : extern rtx_insn *gen_split_3294 (rtx_insn *, rtx *);
29262 : rtx_insn *
29263 : gen_split_3294 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29264 : {
29265 : if (dump_file)
29266 : fprintf (dump_file, "Splitting with gen_split_3294 (sse.md:16705)\n");
29267 : start_sequence ();
29268 : #define FAIL return (end_sequence (), nullptr)
29269 : #define DONE return end_sequence ()
29270 : #line 16719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29271 : operands[4] = gen_reg_rtx (V16HImode);
29272 : #undef DONE
29273 : #undef FAIL
29274 : static const uint8_t expand_encoding[] = {
29275 : 0x02, 0x1f, 0x01, 0x04, 0x54, 0x55, 0x01, 0x01,
29276 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x5d, 0x55, 0x01,
29277 : 0x04, 0x01, 0x01
29278 : };
29279 : return complete_seq (expand_encoding, operands);
29280 : }
29281 :
29282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16749 */
29283 : rtx
29284 : gen_mulv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29285 : {
29286 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29287 : start_sequence ();
29288 : {
29289 : #define FAIL return (end_sequence (), nullptr)
29290 : #define DONE return end_sequence ()
29291 : #line 16754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29292 : ix86_fixup_binary_operands_no_copy (MULT, V16HImode, operands);
29293 : #undef DONE
29294 : #undef FAIL
29295 : }
29296 : static const uint8_t expand_encoding[] = {
29297 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x55, 0x01, 0x01,
29298 : 0x01, 0x02
29299 : };
29300 : return complete_seq (expand_encoding, operands);
29301 : }
29302 :
29303 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16771 */
29304 : rtx
29305 : gen_umulv32hi3_highpart_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29306 : {
29307 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29308 : start_sequence ();
29309 : {
29310 : #define FAIL return (end_sequence (), nullptr)
29311 : #define DONE return end_sequence ()
29312 : #line 16783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29313 : ix86_fixup_binary_operands_no_copy (MULT, V32HImode, operands);
29314 : #undef DONE
29315 : #undef FAIL
29316 : }
29317 : static const uint8_t expand_encoding[] = {
29318 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x70,
29319 : 0x5a, 0x50, 0x60, 0x3e, 0x60, 0x6f, 0x60, 0x01,
29320 : 0x01, 0x6f, 0x60, 0x01, 0x02, 0x27, 0x10, 0x01,
29321 : 0x03, 0x01, 0x04
29322 : };
29323 : return complete_seq (expand_encoding, operands);
29324 : }
29325 :
29326 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16850 */
29327 : rtx
29328 : gen_vec_widen_umult_even_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
29329 : {
29330 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29331 : start_sequence ();
29332 : {
29333 : #define FAIL return (end_sequence (), nullptr)
29334 : #define DONE return end_sequence ()
29335 : #line 16864 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29336 : ix86_fixup_binary_operands_no_copy (MULT, V8SImode, operands);
29337 : #undef DONE
29338 : #undef FAIL
29339 : }
29340 : static const uint8_t expand_encoding[] = {
29341 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x57, 0x6f, 0x57,
29342 : 0x81, 0x0a, 0x51, 0x01, 0x01, 0x17, 0x00, 0x04,
29343 : 0x27, 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06,
29344 : 0x6f, 0x57, 0x81, 0x0a, 0x51, 0x01, 0x02, 0x17,
29345 : 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
29346 : 0x27, 0x06
29347 : };
29348 : return complete_seq (expand_encoding, operands);
29349 : }
29350 :
29351 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17002 */
29352 : rtx
29353 : gen_sse4_1_mulv2siv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29354 : {
29355 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29356 : start_sequence ();
29357 : {
29358 : #define FAIL return (end_sequence (), nullptr)
29359 : #define DONE return end_sequence ()
29360 : #line 17014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29361 : ix86_fixup_binary_operands_no_copy (MULT, V4SImode, operands);
29362 : #undef DONE
29363 : #undef FAIL
29364 : }
29365 : static const uint8_t expand_encoding[] = {
29366 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x52, 0x6e, 0x52,
29367 : 0x81, 0x0a, 0x4a, 0x01, 0x01, 0x17, 0x00, 0x02,
29368 : 0x27, 0x00, 0x27, 0x02, 0x6e, 0x52, 0x81, 0x0a,
29369 : 0x4a, 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00,
29370 : 0x27, 0x02
29371 : };
29372 : return complete_seq (expand_encoding, operands);
29373 : }
29374 :
29375 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17204 */
29376 : rtx
29377 : gen_avx512dq_mulv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29378 : {
29379 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29380 : start_sequence ();
29381 : {
29382 : #define FAIL return (end_sequence (), nullptr)
29383 : #define DONE return end_sequence ()
29384 : #line 17210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29385 : ix86_fixup_binary_operands_no_copy (MULT, V4DImode, operands);
29386 : #undef DONE
29387 : #undef FAIL
29388 : }
29389 : static const uint8_t expand_encoding[] = {
29390 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x57, 0x01, 0x01,
29391 : 0x01, 0x02
29392 : };
29393 : return complete_seq (expand_encoding, operands);
29394 : }
29395 :
29396 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17249 */
29397 : rtx
29398 : gen_mulv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29399 : {
29400 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29401 : start_sequence ();
29402 : {
29403 : #define FAIL return (end_sequence (), nullptr)
29404 : #define DONE return end_sequence ()
29405 : #line 17255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29406 : {
29407 : if (TARGET_SSE4_1)
29408 : {
29409 : if (!vector_operand (operands[1], V8SImode))
29410 : operands[1] = force_reg (V8SImode, operands[1]);
29411 : if (!vector_operand (operands[2], V8SImode))
29412 : operands[2] = force_reg (V8SImode, operands[2]);
29413 : ix86_fixup_binary_operands_no_copy (MULT, V8SImode, operands);
29414 : }
29415 : else
29416 : {
29417 : ix86_expand_sse2_mulv4si3 (operands[0], operands[1], operands[2]);
29418 : DONE;
29419 : }
29420 : }
29421 : #undef DONE
29422 : #undef FAIL
29423 : }
29424 : static const uint8_t expand_encoding[] = {
29425 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x3e,
29426 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29427 : 0x04
29428 : };
29429 : return complete_seq (expand_encoding, operands);
29430 : }
29431 :
29432 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17301 */
29433 : rtx
29434 : gen_vec_widen_umult_hi_v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
29435 : {
29436 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29437 : start_sequence ();
29438 : {
29439 : #define FAIL return (end_sequence (), nullptr)
29440 : #define DONE return end_sequence ()
29441 : #line 17307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29442 : {
29443 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29444 : true, true);
29445 : DONE;
29446 : }
29447 : #undef DONE
29448 : #undef FAIL
29449 : }
29450 : static const uint8_t expand_encoding[] = {
29451 : 0x03, 0x01, 0x00, 0x6f, 0x56, 0x01, 0x01, 0x01,
29452 : 0x02
29453 : };
29454 : return complete_seq (expand_encoding, operands);
29455 : }
29456 :
29457 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17313 */
29458 : rtx
29459 : gen_vec_widen_umult_lo_v16qi (const rtx operand0, const rtx operand1, const rtx operand2)
29460 : {
29461 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29462 : start_sequence ();
29463 : {
29464 : #define FAIL return (end_sequence (), nullptr)
29465 : #define DONE return end_sequence ()
29466 : #line 17319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29467 : {
29468 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29469 : true, false);
29470 : DONE;
29471 : }
29472 : #undef DONE
29473 : #undef FAIL
29474 : }
29475 : static const uint8_t expand_encoding[] = {
29476 : 0x03, 0x01, 0x00, 0x6f, 0x50, 0x01, 0x01, 0x01,
29477 : 0x02
29478 : };
29479 : return complete_seq (expand_encoding, operands);
29480 : }
29481 :
29482 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17338 */
29483 : rtx
29484 : gen_vec_widen_smult_odd_v16si (const rtx operand0, const rtx operand1, const rtx operand2)
29485 : {
29486 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29487 : start_sequence ();
29488 : {
29489 : #define FAIL return (end_sequence (), nullptr)
29490 : #define DONE return end_sequence ()
29491 : #line 17344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29492 : {
29493 : ix86_expand_mul_widen_evenodd (operands[0], operands[1], operands[2],
29494 : false, true);
29495 : DONE;
29496 : }
29497 : #undef DONE
29498 : #undef FAIL
29499 : }
29500 : static const uint8_t expand_encoding[] = {
29501 : 0x03, 0x01, 0x00, 0x6e, 0x5c, 0x01, 0x01, 0x01,
29502 : 0x02
29503 : };
29504 : return complete_seq (expand_encoding, operands);
29505 : }
29506 :
29507 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17404 */
29508 : rtx
29509 : gen_uavgv64qi3_ceil (const rtx operand0, const rtx operand1, const rtx operand2)
29510 : {
29511 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29512 : start_sequence ();
29513 : {
29514 : #define FAIL return (end_sequence (), nullptr)
29515 : #define DONE return end_sequence ()
29516 : #line 17417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29517 : {
29518 : operands[3] = CONST1_RTX(V64HImode);
29519 : ix86_fixup_binary_operands_no_copy (PLUS, V64QImode, operands);
29520 : }
29521 : #undef DONE
29522 : #undef FAIL
29523 : }
29524 : static const uint8_t expand_encoding[] = {
29525 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x59, 0x50, 0x5f,
29526 : 0x3b, 0x5f, 0x3b, 0x5f, 0x6f, 0x5f, 0x01, 0x01,
29527 : 0x6f, 0x5f, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
29528 : };
29529 : return complete_seq (expand_encoding, operands);
29530 : }
29531 :
29532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17437 */
29533 : rtx
29534 : gen_usadv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
29535 : {
29536 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
29537 : start_sequence ();
29538 : {
29539 : #define FAIL return (end_sequence (), nullptr)
29540 : #define DONE return end_sequence ()
29541 : #line 17443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29542 : {
29543 : rtx t1 = gen_reg_rtx (V4DImode);
29544 : rtx t2 = gen_reg_rtx (V8SImode);
29545 : emit_insn (gen_avx2_psadbw (t1, operands[1], operands[2]));
29546 : convert_move (t2, t1, 0);
29547 : emit_insn (gen_addv8si3 (operands[0], t2, operands[3]));
29548 : DONE;
29549 : }
29550 : #undef DONE
29551 : #undef FAIL
29552 : }
29553 : static const uint8_t expand_encoding[] = {
29554 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
29555 : 0x03
29556 : };
29557 : return complete_seq (expand_encoding, operands);
29558 : }
29559 :
29560 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17525 */
29561 : extern rtx_insn *gen_split_3306 (rtx_insn *, rtx *);
29562 : rtx_insn *
29563 : gen_split_3306 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29564 : {
29565 : if (dump_file)
29566 : fprintf (dump_file, "Splitting with gen_split_3306 (sse.md:17525)\n");
29567 : start_sequence ();
29568 : #define FAIL return (end_sequence (), nullptr)
29569 : #define DONE return end_sequence ()
29570 : #line 17540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29571 : operands[5] = gen_int_mode (64 - 1, DImode);
29572 : #undef DONE
29573 : #undef FAIL
29574 : static const uint8_t expand_encoding[] = {
29575 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x5c, 0x01, 0x03,
29576 : 0x01, 0x05
29577 : };
29578 : return complete_seq (expand_encoding, operands);
29579 : }
29580 :
29581 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17725 */
29582 : extern rtx_insn *gen_split_3315 (rtx_insn *, rtx *);
29583 : rtx_insn *
29584 : gen_split_3315 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29585 : {
29586 : if (dump_file)
29587 : fprintf (dump_file, "Splitting with gen_split_3315 (sse.md:17725)\n");
29588 : start_sequence ();
29589 : #define FAIL return (end_sequence (), nullptr)
29590 : #define DONE return end_sequence ()
29591 : #line 17734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29592 : operands[4] = gen_int_mode (32 - 1, DImode);
29593 : #undef DONE
29594 : #undef FAIL
29595 : static const uint8_t expand_encoding[] = {
29596 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x56, 0x01, 0x01,
29597 : 0x01, 0x04
29598 : };
29599 : return complete_seq (expand_encoding, operands);
29600 : }
29601 :
29602 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17736 */
29603 : extern rtx_insn *gen_split_3324 (rtx_insn *, rtx *);
29604 : rtx_insn *
29605 : gen_split_3324 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29606 : {
29607 : if (dump_file)
29608 : fprintf (dump_file, "Splitting with gen_split_3324 (sse.md:17736)\n");
29609 : start_sequence ();
29610 : #define FAIL return (end_sequence (), nullptr)
29611 : #define DONE return end_sequence ()
29612 : #line 17749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29613 : operands[5] = gen_int_mode (32 - 1, DImode);
29614 : #undef DONE
29615 : #undef FAIL
29616 : static const uint8_t expand_encoding[] = {
29617 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x51, 0x01, 0x03,
29618 : 0x01, 0x05
29619 : };
29620 : return complete_seq (expand_encoding, operands);
29621 : }
29622 :
29623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17767 */
29624 : extern rtx_insn *gen_split_3333 (rtx_insn *, rtx *);
29625 : rtx_insn *
29626 : gen_split_3333 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29627 : {
29628 : if (dump_file)
29629 : fprintf (dump_file, "Splitting with gen_split_3333 (sse.md:17767)\n");
29630 : start_sequence ();
29631 : #define FAIL return (end_sequence (), nullptr)
29632 : #define DONE return end_sequence ()
29633 : #line 17778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29634 : operands[3] = XVECEXP (operands[2], 0, 0);
29635 : #undef DONE
29636 : #undef FAIL
29637 : static const uint8_t expand_encoding[] = {
29638 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x5b, 0x01, 0x01,
29639 : 0x01, 0x03
29640 : };
29641 : return complete_seq (expand_encoding, operands);
29642 : }
29643 :
29644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17780 */
29645 : rtx
29646 : gen_vec_shl_v2di (const rtx operand0, const rtx operand1, const rtx operand2)
29647 : {
29648 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29649 : start_sequence ();
29650 : {
29651 : #define FAIL return (end_sequence (), nullptr)
29652 : #define DONE return end_sequence ()
29653 : #line 17786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29654 : {
29655 : rtx op0 = gen_reg_rtx (V1TImode);
29656 : rtx op1 = force_reg (V2DImode, operands[1]);
29657 :
29658 : emit_insn (gen_sse2_ashlv1ti3
29659 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29660 : emit_move_insn (operands[0], gen_lowpart (V2DImode, op0));
29661 : DONE;
29662 : }
29663 : #undef DONE
29664 : #undef FAIL
29665 : }
29666 : static const uint8_t expand_encoding[] = {
29667 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x53, 0x01, 0x01,
29668 : 0x01, 0x02
29669 : };
29670 : return complete_seq (expand_encoding, operands);
29671 : }
29672 :
29673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17796 */
29674 : rtx
29675 : gen_vec_shr_v4sf (const rtx operand0, const rtx operand1, const rtx operand2)
29676 : {
29677 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29678 : start_sequence ();
29679 : {
29680 : #define FAIL return (end_sequence (), nullptr)
29681 : #define DONE return end_sequence ()
29682 : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29683 : {
29684 : rtx op0 = gen_reg_rtx (V1TImode);
29685 : rtx op1 = force_reg (V4SFmode, operands[1]);
29686 :
29687 : emit_insn (gen_sse2_lshrv1ti3
29688 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29689 : emit_move_insn (operands[0], gen_lowpart (V4SFmode, op0));
29690 : DONE;
29691 : }
29692 : #undef DONE
29693 : #undef FAIL
29694 : }
29695 : static const uint8_t expand_encoding[] = {
29696 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x53, 0x01, 0x01,
29697 : 0x01, 0x02
29698 : };
29699 : return complete_seq (expand_encoding, operands);
29700 : }
29701 :
29702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17900 */
29703 : extern rtx_insn *gen_split_3343 (rtx_insn *, rtx *);
29704 : rtx_insn *
29705 : gen_split_3343 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29706 : {
29707 : if (dump_file)
29708 : fprintf (dump_file, "Splitting with gen_split_3343 (sse.md:17900)\n");
29709 : start_sequence ();
29710 : static const uint8_t expand_encoding[] = {
29711 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x51, 0x01, 0x01,
29712 : 0x01, 0x02
29713 : };
29714 : return complete_seq (expand_encoding, operands);
29715 : }
29716 :
29717 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29718 : rtx
29719 : gen_sminv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29720 : {
29721 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29722 : start_sequence ();
29723 : {
29724 : #define FAIL return (end_sequence (), nullptr)
29725 : #define DONE return end_sequence ()
29726 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29727 : ix86_fixup_binary_operands_no_copy (SMIN, V32QImode, operands);
29728 : #undef DONE
29729 : #undef FAIL
29730 : }
29731 : static const uint8_t expand_encoding[] = {
29732 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x54, 0x01, 0x01,
29733 : 0x01, 0x02
29734 : };
29735 : return complete_seq (expand_encoding, operands);
29736 : }
29737 :
29738 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29739 : rtx
29740 : gen_sminv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29741 : {
29742 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29743 : start_sequence ();
29744 : {
29745 : #define FAIL return (end_sequence (), nullptr)
29746 : #define DONE return end_sequence ()
29747 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29748 : ix86_fixup_binary_operands_no_copy (SMIN, V8SImode, operands);
29749 : #undef DONE
29750 : #undef FAIL
29751 : }
29752 : static const uint8_t expand_encoding[] = {
29753 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x56, 0x01, 0x01,
29754 : 0x01, 0x02
29755 : };
29756 : return complete_seq (expand_encoding, operands);
29757 : }
29758 :
29759 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29760 : rtx
29761 : gen_uminv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29762 : {
29763 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29764 : start_sequence ();
29765 : {
29766 : #define FAIL return (end_sequence (), nullptr)
29767 : #define DONE return end_sequence ()
29768 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29769 : ix86_fixup_binary_operands_no_copy (UMIN, V32HImode, operands);
29770 : #undef DONE
29771 : #undef FAIL
29772 : }
29773 : static const uint8_t expand_encoding[] = {
29774 : 0x01, 0x1f, 0x01, 0x00, 0x54, 0x5a, 0x01, 0x01,
29775 : 0x01, 0x02
29776 : };
29777 : return complete_seq (expand_encoding, operands);
29778 : }
29779 :
29780 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29781 : rtx
29782 : gen_cond_sminv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29783 : {
29784 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29785 : start_sequence ();
29786 : {
29787 : #define FAIL return (end_sequence (), nullptr)
29788 : #define DONE return end_sequence ()
29789 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29790 : {
29791 : emit_insn (gen_sminv32qi3_mask (operands[0],
29792 : operands[2],
29793 : operands[3],
29794 : operands[4],
29795 : operands[1]));
29796 : DONE;
29797 : }
29798 : #undef DONE
29799 : #undef FAIL
29800 : }
29801 : static const uint8_t expand_encoding[] = {
29802 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x52,
29803 : 0x54, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29804 : 0x01
29805 : };
29806 : return complete_seq (expand_encoding, operands);
29807 : }
29808 :
29809 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29810 : rtx
29811 : gen_cond_uminv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29812 : {
29813 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29814 : start_sequence ();
29815 : {
29816 : #define FAIL return (end_sequence (), nullptr)
29817 : #define DONE return end_sequence ()
29818 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29819 : {
29820 : emit_insn (gen_uminv32hi3_mask (operands[0],
29821 : operands[2],
29822 : operands[3],
29823 : operands[4],
29824 : operands[1]));
29825 : DONE;
29826 : }
29827 : #undef DONE
29828 : #undef FAIL
29829 : }
29830 : static const uint8_t expand_encoding[] = {
29831 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x54,
29832 : 0x5a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29833 : 0x01
29834 : };
29835 : return complete_seq (expand_encoding, operands);
29836 : }
29837 :
29838 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29839 : rtx
29840 : gen_cond_sminv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29841 : {
29842 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29843 : start_sequence ();
29844 : {
29845 : #define FAIL return (end_sequence (), nullptr)
29846 : #define DONE return end_sequence ()
29847 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29848 : {
29849 : emit_insn (gen_sminv16si3_mask (operands[0],
29850 : operands[2],
29851 : operands[3],
29852 : operands[4],
29853 : operands[1]));
29854 : DONE;
29855 : }
29856 : #undef DONE
29857 : #undef FAIL
29858 : }
29859 : static const uint8_t expand_encoding[] = {
29860 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x52,
29861 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29862 : 0x01
29863 : };
29864 : return complete_seq (expand_encoding, operands);
29865 : }
29866 :
29867 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29868 : rtx
29869 : gen_cond_uminv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29870 : {
29871 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29872 : start_sequence ();
29873 : {
29874 : #define FAIL return (end_sequence (), nullptr)
29875 : #define DONE return end_sequence ()
29876 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29877 : {
29878 : emit_insn (gen_uminv4si3_mask (operands[0],
29879 : operands[2],
29880 : operands[3],
29881 : operands[4],
29882 : operands[1]));
29883 : DONE;
29884 : }
29885 : #undef DONE
29886 : #undef FAIL
29887 : }
29888 : static const uint8_t expand_encoding[] = {
29889 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x54,
29890 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29891 : 0x01
29892 : };
29893 : return complete_seq (expand_encoding, operands);
29894 : }
29895 :
29896 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29897 : rtx
29898 : gen_cond_sminv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29899 : {
29900 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29901 : start_sequence ();
29902 : {
29903 : #define FAIL return (end_sequence (), nullptr)
29904 : #define DONE return end_sequence ()
29905 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29906 : {
29907 : emit_insn (gen_sminv2di3_mask (operands[0],
29908 : operands[2],
29909 : operands[3],
29910 : operands[4],
29911 : operands[1]));
29912 : DONE;
29913 : }
29914 : #undef DONE
29915 : #undef FAIL
29916 : }
29917 : static const uint8_t expand_encoding[] = {
29918 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x52,
29919 : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29920 : 0x01
29921 : };
29922 : return complete_seq (expand_encoding, operands);
29923 : }
29924 :
29925 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29926 : rtx
29927 : gen_sminv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29928 : {
29929 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29930 : start_sequence ();
29931 : {
29932 : #define FAIL return (end_sequence (), nullptr)
29933 : #define DONE return end_sequence ()
29934 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29935 : ix86_fixup_binary_operands_no_copy (SMIN, V16QImode, operands);
29936 : #undef DONE
29937 : #undef FAIL
29938 : }
29939 : static const uint8_t expand_encoding[] = {
29940 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x52,
29941 : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29942 : 0x04
29943 : };
29944 : return complete_seq (expand_encoding, operands);
29945 : }
29946 :
29947 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29948 : rtx
29949 : gen_uminv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29950 : {
29951 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29952 : start_sequence ();
29953 : {
29954 : #define FAIL return (end_sequence (), nullptr)
29955 : #define DONE return end_sequence ()
29956 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29957 : ix86_fixup_binary_operands_no_copy (UMIN, V16HImode, operands);
29958 : #undef DONE
29959 : #undef FAIL
29960 : }
29961 : static const uint8_t expand_encoding[] = {
29962 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x54,
29963 : 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29964 : 0x04
29965 : };
29966 : return complete_seq (expand_encoding, operands);
29967 : }
29968 :
29969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29970 : rtx
29971 : gen_sminv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29972 : {
29973 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29974 : start_sequence ();
29975 : {
29976 : #define FAIL return (end_sequence (), nullptr)
29977 : #define DONE return end_sequence ()
29978 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29979 : ix86_fixup_binary_operands_no_copy (SMIN, V8SImode, operands);
29980 : #undef DONE
29981 : #undef FAIL
29982 : }
29983 : static const uint8_t expand_encoding[] = {
29984 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x52,
29985 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29986 : 0x04
29987 : };
29988 : return complete_seq (expand_encoding, operands);
29989 : }
29990 :
29991 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29992 : rtx
29993 : gen_uminv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29994 : {
29995 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29996 : start_sequence ();
29997 : {
29998 : #define FAIL return (end_sequence (), nullptr)
29999 : #define DONE return end_sequence ()
30000 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30001 : ix86_fixup_binary_operands_no_copy (UMIN, V8DImode, operands);
30002 : #undef DONE
30003 : #undef FAIL
30004 : }
30005 : static const uint8_t expand_encoding[] = {
30006 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x54,
30007 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30008 : 0x04
30009 : };
30010 : return complete_seq (expand_encoding, operands);
30011 : }
30012 :
30013 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18106 */
30014 : rtx
30015 : gen_sminv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30016 : {
30017 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30018 : start_sequence ();
30019 : {
30020 : #define FAIL return (end_sequence (), nullptr)
30021 : #define DONE return end_sequence ()
30022 : #line 18112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30023 : {
30024 : if (TARGET_AVX512F
30025 : && (V8DImode == V8DImode || TARGET_AVX512VL))
30026 : ;
30027 : else
30028 : {
30029 : enum rtx_code code;
30030 : rtx xops[6];
30031 : bool ok;
30032 :
30033 :
30034 : xops[0] = operands[0];
30035 :
30036 : if (SMIN == SMAX || SMIN == UMAX)
30037 : {
30038 : xops[1] = operands[1];
30039 : xops[2] = operands[2];
30040 : }
30041 : else
30042 : {
30043 : xops[1] = operands[2];
30044 : xops[2] = operands[1];
30045 : }
30046 :
30047 : code = (SMIN == UMAX || SMIN == UMIN) ? GTU : GT;
30048 :
30049 : xops[3] = gen_rtx_fmt_ee (code, VOIDmode, operands[1], operands[2]);
30050 : xops[4] = operands[1];
30051 : xops[5] = operands[2];
30052 :
30053 : ok = ix86_expand_int_vcond (xops);
30054 : gcc_assert (ok);
30055 : DONE;
30056 : }
30057 : }
30058 : #undef DONE
30059 : #undef FAIL
30060 : }
30061 : static const uint8_t expand_encoding[] = {
30062 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x5c, 0x01, 0x01,
30063 : 0x01, 0x02
30064 : };
30065 : return complete_seq (expand_encoding, operands);
30066 : }
30067 :
30068 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18106 */
30069 : rtx
30070 : gen_uminv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30071 : {
30072 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30073 : start_sequence ();
30074 : {
30075 : #define FAIL return (end_sequence (), nullptr)
30076 : #define DONE return end_sequence ()
30077 : #line 18112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30078 : {
30079 : if (TARGET_AVX512F
30080 : && (V2DImode == V8DImode || TARGET_AVX512VL))
30081 : ;
30082 : else
30083 : {
30084 : enum rtx_code code;
30085 : rtx xops[6];
30086 : bool ok;
30087 :
30088 :
30089 : xops[0] = operands[0];
30090 :
30091 : if (UMIN == SMAX || UMIN == UMAX)
30092 : {
30093 : xops[1] = operands[1];
30094 : xops[2] = operands[2];
30095 : }
30096 : else
30097 : {
30098 : xops[1] = operands[2];
30099 : xops[2] = operands[1];
30100 : }
30101 :
30102 : code = (UMIN == UMAX || UMIN == UMIN) ? GTU : GT;
30103 :
30104 : xops[3] = gen_rtx_fmt_ee (code, VOIDmode, operands[1], operands[2]);
30105 : xops[4] = operands[1];
30106 : xops[5] = operands[2];
30107 :
30108 : ok = ix86_expand_int_vcond (xops);
30109 : gcc_assert (ok);
30110 : DONE;
30111 : }
30112 : }
30113 : #undef DONE
30114 : #undef FAIL
30115 : }
30116 : static const uint8_t expand_encoding[] = {
30117 : 0x01, 0x1f, 0x01, 0x00, 0x54, 0x52, 0x01, 0x01,
30118 : 0x01, 0x02
30119 : };
30120 : return complete_seq (expand_encoding, operands);
30121 : }
30122 :
30123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18223 */
30124 : rtx
30125 : gen_uminv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30126 : {
30127 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30128 : start_sequence ();
30129 : {
30130 : #define FAIL return (end_sequence (), nullptr)
30131 : #define DONE return end_sequence ()
30132 : #line 18229 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30133 : {
30134 : if (TARGET_SSE4_1 || V8HImode == V16QImode)
30135 : ix86_fixup_binary_operands_no_copy (UMIN, V8HImode, operands);
30136 : else if (UMIN == UMAX && V8HImode == V8HImode)
30137 : {
30138 : rtx op0 = operands[0], op2 = operands[2], op3 = op0;
30139 : operands[1] = force_reg (V8HImode, operands[1]);
30140 : if (rtx_equal_p (op3, op2))
30141 : op3 = gen_reg_rtx (V8HImode);
30142 : emit_insn (gen_ussubv8hi3 (op3, operands[1], op2));
30143 : emit_insn (gen_addv8hi3 (op0, op3, op2));
30144 : DONE;
30145 : }
30146 : else
30147 : {
30148 : rtx xops[6];
30149 : bool ok;
30150 :
30151 : operands[1] = force_reg (V8HImode, operands[1]);
30152 : operands[2] = force_reg (V8HImode, operands[2]);
30153 :
30154 : xops[0] = operands[0];
30155 :
30156 : if (UMIN == UMAX)
30157 : {
30158 : xops[1] = operands[1];
30159 : xops[2] = operands[2];
30160 : }
30161 : else
30162 : {
30163 : xops[1] = operands[2];
30164 : xops[2] = operands[1];
30165 : }
30166 :
30167 : xops[3] = gen_rtx_GTU (VOIDmode, operands[1], operands[2]);
30168 : xops[4] = operands[1];
30169 : xops[5] = operands[2];
30170 :
30171 : ok = ix86_expand_int_vcond (xops);
30172 : gcc_assert (ok);
30173 : DONE;
30174 : }
30175 : }
30176 : #undef DONE
30177 : #undef FAIL
30178 : }
30179 : static const uint8_t expand_encoding[] = {
30180 : 0x01, 0x1f, 0x01, 0x00, 0x54, 0x50, 0x01, 0x01,
30181 : 0x01, 0x02
30182 : };
30183 : return complete_seq (expand_encoding, operands);
30184 : }
30185 :
30186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18349 */
30187 : extern rtx_insn *gen_split_3359 (rtx_insn *, rtx *);
30188 : rtx_insn *
30189 : gen_split_3359 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30190 : {
30191 : if (dump_file)
30192 : fprintf (dump_file, "Splitting with gen_split_3359 (sse.md:18349)\n");
30193 : start_sequence ();
30194 : #define FAIL return (end_sequence (), nullptr)
30195 : #define DONE return end_sequence ()
30196 : #line 18372 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30197 : {
30198 : if (INTVAL (operands[5]) == 1)
30199 : std::swap (operands[3], operands[4]);
30200 :
30201 : if (operands[3] == CONST0_RTX (V2DImode))
30202 : operands[3] = force_reg (V2DImode, operands[3]);
30203 : if (operands[4] == CONST0_RTX (V2DImode))
30204 : operands[4] = force_reg (V2DImode, operands[4]);
30205 :
30206 : enum rtx_code code = INTVAL (operands[5]) ? GT : EQ;
30207 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V2DImode,
30208 : operands[3], operands[4]));
30209 : DONE;
30210 : }
30211 : #undef DONE
30212 : #undef FAIL
30213 : static const uint8_t expand_encoding[] = {
30214 : 0x01, 0x27, 0x00
30215 : };
30216 : return complete_seq (expand_encoding, operands);
30217 : }
30218 :
30219 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18387 */
30220 : extern rtx_insn *gen_split_3369 (rtx_insn *, rtx *);
30221 : rtx_insn *
30222 : gen_split_3369 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30223 : {
30224 : if (dump_file)
30225 : fprintf (dump_file, "Splitting with gen_split_3369 (sse.md:18387)\n");
30226 : start_sequence ();
30227 : #define FAIL return (end_sequence (), nullptr)
30228 : #define DONE return end_sequence ()
30229 : #line 18411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30230 : {
30231 : if (INTVAL (operands[5]) == 5)
30232 : std::swap (operands[3], operands[4]);
30233 : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30234 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V16HImode,
30235 : operands[3], operands[4]));
30236 : DONE;
30237 : }
30238 : #undef DONE
30239 : #undef FAIL
30240 : static const uint8_t expand_encoding[] = {
30241 : 0x01, 0x27, 0x00
30242 : };
30243 : return complete_seq (expand_encoding, operands);
30244 : }
30245 :
30246 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30247 : extern rtx_insn *gen_split_3381 (rtx_insn *, rtx *);
30248 : rtx_insn *
30249 : gen_split_3381 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30250 : {
30251 : if (dump_file)
30252 : fprintf (dump_file, "Splitting with gen_split_3381 (sse.md:18513)\n");
30253 : start_sequence ();
30254 : #define FAIL return (end_sequence (), nullptr)
30255 : #define DONE return end_sequence ()
30256 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30257 : {
30258 : rtx dst_min = gen_reg_rtx (V8HImode);
30259 :
30260 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30261 : operands[3] = force_reg (V8HImode, operands[3]);
30262 : emit_insn (gen_uminv8hi3 (dst_min, operands[3], operands[4]));
30263 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30264 : emit_move_insn (operands[0], gen_rtx_EQ (V8HImode, eq_op, dst_min));
30265 : DONE;
30266 : }
30267 : #undef DONE
30268 : #undef FAIL
30269 : static const uint8_t expand_encoding[] = {
30270 : 0x01, 0x27, 0x00
30271 : };
30272 : return complete_seq (expand_encoding, operands);
30273 : }
30274 :
30275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30276 : extern rtx_insn *gen_split_3391 (rtx_insn *, rtx *);
30277 : rtx_insn *
30278 : gen_split_3391 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30279 : {
30280 : if (dump_file)
30281 : fprintf (dump_file, "Splitting with gen_split_3391 (sse.md:18513)\n");
30282 : start_sequence ();
30283 : #define FAIL return (end_sequence (), nullptr)
30284 : #define DONE return end_sequence ()
30285 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30286 : {
30287 : rtx dst_min = gen_reg_rtx (V8SImode);
30288 :
30289 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30290 : operands[3] = force_reg (V8SImode, operands[3]);
30291 : emit_insn (gen_uminv8si3 (dst_min, operands[3], operands[4]));
30292 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30293 : emit_move_insn (operands[0], gen_rtx_EQ (V8SImode, eq_op, dst_min));
30294 : DONE;
30295 : }
30296 : #undef DONE
30297 : #undef FAIL
30298 : static const uint8_t expand_encoding[] = {
30299 : 0x01, 0x27, 0x00
30300 : };
30301 : return complete_seq (expand_encoding, operands);
30302 : }
30303 :
30304 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18539 */
30305 : extern rtx_insn *gen_split_3401 (rtx_insn *, rtx *);
30306 : rtx_insn *
30307 : gen_split_3401 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30308 : {
30309 : if (dump_file)
30310 : fprintf (dump_file, "Splitting with gen_split_3401 (sse.md:18539)\n");
30311 : start_sequence ();
30312 : #define FAIL return (end_sequence (), nullptr)
30313 : #define DONE return end_sequence ()
30314 : #line 18559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30315 : {
30316 : if (INTVAL (operands[5]) == 5)
30317 : std::swap (operands[3], operands[4]);
30318 :
30319 : if (MEM_P (operands[3]))
30320 : operands[3] = force_reg (V4DImode, operands[3]);
30321 : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30322 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V4DImode,
30323 : operands[3], operands[4]));
30324 : DONE;
30325 : }
30326 : #undef DONE
30327 : #undef FAIL
30328 : static const uint8_t expand_encoding[] = {
30329 : 0x01, 0x27, 0x00
30330 : };
30331 : return complete_seq (expand_encoding, operands);
30332 : }
30333 :
30334 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18596 */
30335 : rtx
30336 : gen_avx512vl_eqv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30337 : {
30338 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30339 : start_sequence ();
30340 : {
30341 : #define FAIL return (end_sequence (), nullptr)
30342 : #define DONE return end_sequence ()
30343 : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30344 : ix86_fixup_binary_operands_no_copy (EQ, V32QImode, operands);
30345 : #undef DONE
30346 : #undef FAIL
30347 : }
30348 : static const uint8_t expand_encoding[] = {
30349 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11,
30350 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c,
30351 : 0x01, 0x03
30352 : };
30353 : return complete_seq (expand_encoding, operands);
30354 : }
30355 :
30356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18606 */
30357 : rtx
30358 : gen_avx512vl_eqv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30359 : {
30360 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30361 : start_sequence ();
30362 : {
30363 : #define FAIL return (end_sequence (), nullptr)
30364 : #define DONE return end_sequence ()
30365 : #line 18614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30366 : ix86_fixup_binary_operands_no_copy (EQ, V8SImode, operands);
30367 : #undef DONE
30368 : #undef FAIL
30369 : }
30370 : static const uint8_t expand_encoding[] = {
30371 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f,
30372 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c,
30373 : 0x01, 0x03
30374 : };
30375 : return complete_seq (expand_encoding, operands);
30376 : }
30377 :
30378 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18682 */
30379 : rtx
30380 : gen_avx512f_gtv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30381 : {
30382 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30383 : static const uint8_t expand_encoding[] = {
30384 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x03,
30385 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x06, 0x3c, 0x01,
30386 : 0x03
30387 : };
30388 : return expand_rtx (expand_encoding, operands);
30389 : }
30390 :
30391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18682 */
30392 : rtx
30393 : gen_avx512vl_gtv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30394 : {
30395 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30396 : static const uint8_t expand_encoding[] = {
30397 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
30398 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x06, 0x3c, 0x01,
30399 : 0x03
30400 : };
30401 : return expand_rtx (expand_encoding, operands);
30402 : }
30403 :
30404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18690 */
30405 : rtx
30406 : gen_avx512vl_gtv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30407 : {
30408 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30409 : static const uint8_t expand_encoding[] = {
30410 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01, 0x01,
30411 : 0x01, 0x02, 0x27, 0x06, 0x3c
30412 : };
30413 : return expand_rtx (expand_encoding, operands);
30414 : }
30415 :
30416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30417 : rtx
30418 : gen_vec_permv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30419 : {
30420 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30421 : start_sequence ();
30422 : {
30423 : #define FAIL return (end_sequence (), nullptr)
30424 : #define DONE return end_sequence ()
30425 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30426 : {
30427 : ix86_expand_vec_perm (operands);
30428 : DONE;
30429 : }
30430 : #undef DONE
30431 : #undef FAIL
30432 : }
30433 : static const uint8_t expand_encoding[] = {
30434 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30435 : 0x03
30436 : };
30437 : return complete_seq (expand_encoding, operands);
30438 : }
30439 :
30440 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30441 : rtx
30442 : gen_vec_permv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30443 : {
30444 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30445 : start_sequence ();
30446 : {
30447 : #define FAIL return (end_sequence (), nullptr)
30448 : #define DONE return end_sequence ()
30449 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30450 : {
30451 : ix86_expand_vec_perm (operands);
30452 : DONE;
30453 : }
30454 : #undef DONE
30455 : #undef FAIL
30456 : }
30457 : static const uint8_t expand_encoding[] = {
30458 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30459 : 0x03
30460 : };
30461 : return complete_seq (expand_encoding, operands);
30462 : }
30463 :
30464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18742 */
30465 : rtx
30466 : gen_one_cmplv16si2 (const rtx operand0, const rtx operand1)
30467 : {
30468 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
30469 : start_sequence ();
30470 : {
30471 : #define FAIL return (end_sequence (), nullptr)
30472 : #define DONE return end_sequence ()
30473 : #line 18747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30474 : {
30475 : operands[2] = CONSTM1_RTX (V16SImode);
30476 :
30477 : if (!TARGET_AVX512F)
30478 : operands[2] = force_reg (V16SImode, operands[2]);
30479 : }
30480 : #undef DONE
30481 : #undef FAIL
30482 : }
30483 : static const uint8_t expand_encoding[] = {
30484 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x5b, 0x01, 0x01,
30485 : 0x01, 0x02
30486 : };
30487 : return complete_seq (expand_encoding, operands);
30488 : }
30489 :
30490 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18742 */
30491 : rtx
30492 : gen_one_cmplv4di2 (const rtx operand0, const rtx operand1)
30493 : {
30494 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
30495 : start_sequence ();
30496 : {
30497 : #define FAIL return (end_sequence (), nullptr)
30498 : #define DONE return end_sequence ()
30499 : #line 18747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30500 : {
30501 : operands[2] = CONSTM1_RTX (V4DImode);
30502 :
30503 : if (!TARGET_AVX512F)
30504 : operands[2] = force_reg (V4DImode, operands[2]);
30505 : }
30506 : #undef DONE
30507 : #undef FAIL
30508 : }
30509 : static const uint8_t expand_encoding[] = {
30510 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x57, 0x01, 0x01,
30511 : 0x01, 0x02
30512 : };
30513 : return complete_seq (expand_encoding, operands);
30514 : }
30515 :
30516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18754 */
30517 : extern rtx_insn *gen_split_3418 (rtx_insn *, rtx *);
30518 : rtx_insn *
30519 : gen_split_3418 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30520 : {
30521 : if (dump_file)
30522 : fprintf (dump_file, "Splitting with gen_split_3418 (sse.md:18754)\n");
30523 : start_sequence ();
30524 : #define FAIL return (end_sequence (), nullptr)
30525 : #define DONE return end_sequence ()
30526 : #line 18775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30527 : {
30528 : if (MEM_P (operands[1]))
30529 : {
30530 : operands[3] = operands[1];
30531 : operands[1] = operands[0];
30532 : }
30533 : else
30534 : {
30535 : if (GET_MODE_SIZE (SImode) < 4)
30536 : {
30537 : if (32 == 64 ? TARGET_AVX512BW
30538 : : (TARGET_AVX512BW && TARGET_AVX512VL)
30539 : || !EXT_REX_SSE_REG_P (operands[0]))
30540 : {
30541 : operands[3] = operands[1];
30542 : operands[1] = operands[0];
30543 : }
30544 : else
30545 : operands[3] = CONST0_RTX (V8SImode);
30546 : }
30547 : else
30548 : {
30549 : if (32 == 64 || TARGET_AVX512VL
30550 : || !EXT_REX_SSE_REG_P (operands[0]))
30551 : {
30552 : operands[3] = operands[1];
30553 : operands[1] = operands[0];
30554 : }
30555 : else
30556 : operands[3] = CONST0_RTX (V8SImode);
30557 : }
30558 : }
30559 : }
30560 : #undef DONE
30561 : #undef FAIL
30562 : static const uint8_t expand_encoding[] = {
30563 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x17, 0x00,
30564 : 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x56, 0x01, 0x01,
30565 : 0x01, 0x02, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
30566 : };
30567 : return complete_seq (expand_encoding, operands);
30568 : }
30569 :
30570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18856 */
30571 : rtx
30572 : gen_avx512bw_andnotv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30573 : {
30574 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30575 : static const uint8_t expand_encoding[] = {
30576 : 0x1f, 0x01, 0x00, 0x49, 0x59, 0x4c, 0x59, 0x01,
30577 : 0x01, 0x01, 0x02
30578 : };
30579 : return expand_rtx (expand_encoding, operands);
30580 : }
30581 :
30582 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18856 */
30583 : rtx
30584 : gen_avx512f_andnotv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30585 : {
30586 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30587 : static const uint8_t expand_encoding[] = {
30588 : 0x1f, 0x01, 0x00, 0x49, 0x5b, 0x4c, 0x5b, 0x01,
30589 : 0x01, 0x01, 0x02
30590 : };
30591 : return expand_rtx (expand_encoding, operands);
30592 : }
30593 :
30594 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18863 */
30595 : rtx
30596 : gen_andnv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30597 : {
30598 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30599 : static const uint8_t expand_encoding[] = {
30600 : 0x1f, 0x01, 0x00, 0x49, 0x4f, 0x4c, 0x4f, 0x01,
30601 : 0x02, 0x01, 0x01
30602 : };
30603 : return expand_rtx (expand_encoding, operands);
30604 : }
30605 :
30606 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18870 */
30607 : rtx
30608 : gen_sse2_andnotv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30609 : {
30610 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30611 : static const uint8_t expand_encoding[] = {
30612 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x49, 0x51,
30613 : 0x4c, 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
30614 : 0x01, 0x04
30615 : };
30616 : return expand_rtx (expand_encoding, operands);
30617 : }
30618 :
30619 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19025 */
30620 : extern rtx_insn *gen_split_3434 (rtx_insn *, rtx *);
30621 : rtx_insn *
30622 : gen_split_3434 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30623 : {
30624 : if (dump_file)
30625 : fprintf (dump_file, "Splitting with gen_split_3434 (sse.md:19025)\n");
30626 : start_sequence ();
30627 : #define FAIL return (end_sequence (), nullptr)
30628 : #define DONE return end_sequence ()
30629 : #line 19038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30630 : operands[3] = gen_reg_rtx (V16HImode);
30631 : #undef DONE
30632 : #undef FAIL
30633 : static const uint8_t expand_encoding[] = {
30634 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x55, 0x01,
30635 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x55, 0x4c, 0x55,
30636 : 0x01, 0x03, 0x01, 0x02
30637 : };
30638 : return complete_seq (expand_encoding, operands);
30639 : }
30640 :
30641 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19040 */
30642 : extern rtx_insn *gen_split_3444 (rtx_insn *, rtx *);
30643 : rtx_insn *
30644 : gen_split_3444 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30645 : {
30646 : if (dump_file)
30647 : fprintf (dump_file, "Splitting with gen_split_3444 (sse.md:19040)\n");
30648 : start_sequence ();
30649 : #define FAIL return (end_sequence (), nullptr)
30650 : #define DONE return end_sequence ()
30651 : #line 19053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30652 : operands[3] = gen_reg_rtx (V64QImode);
30653 : #undef DONE
30654 : #undef FAIL
30655 : static const uint8_t expand_encoding[] = {
30656 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x59, 0x01,
30657 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x59, 0x4c, 0x59,
30658 : 0x01, 0x03, 0x01, 0x02
30659 : };
30660 : return complete_seq (expand_encoding, operands);
30661 : }
30662 :
30663 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19055 */
30664 : extern rtx_insn *gen_split_3454 (rtx_insn *, rtx *);
30665 : rtx_insn *
30666 : gen_split_3454 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30667 : {
30668 : if (dump_file)
30669 : fprintf (dump_file, "Splitting with gen_split_3454 (sse.md:19055)\n");
30670 : start_sequence ();
30671 : #define FAIL return (end_sequence (), nullptr)
30672 : #define DONE return end_sequence ()
30673 : #line 19068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30674 : operands[3] = gen_reg_rtx (V16SImode);
30675 : #undef DONE
30676 : #undef FAIL
30677 : static const uint8_t expand_encoding[] = {
30678 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x5b, 0x01,
30679 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x5b, 0x4b, 0x5b,
30680 : 0x01, 0x03, 0x01, 0x02
30681 : };
30682 : return complete_seq (expand_encoding, operands);
30683 : }
30684 :
30685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19055 */
30686 : extern rtx_insn *gen_split_3464 (rtx_insn *, rtx *);
30687 : rtx_insn *
30688 : gen_split_3464 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30689 : {
30690 : if (dump_file)
30691 : fprintf (dump_file, "Splitting with gen_split_3464 (sse.md:19055)\n");
30692 : start_sequence ();
30693 : #define FAIL return (end_sequence (), nullptr)
30694 : #define DONE return end_sequence ()
30695 : #line 19068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30696 : operands[3] = gen_reg_rtx (V4DImode);
30697 : #undef DONE
30698 : #undef FAIL
30699 : static const uint8_t expand_encoding[] = {
30700 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x57, 0x01,
30701 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x57, 0x4b, 0x57,
30702 : 0x01, 0x03, 0x01, 0x02
30703 : };
30704 : return complete_seq (expand_encoding, operands);
30705 : }
30706 :
30707 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30708 : rtx
30709 : gen_andv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30710 : {
30711 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30712 : start_sequence ();
30713 : {
30714 : #define FAIL return (end_sequence (), nullptr)
30715 : #define DONE return end_sequence ()
30716 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30717 : {
30718 : ix86_expand_vector_logical_operator (AND, V32QImode, operands);
30719 : DONE;
30720 : }
30721 : #undef DONE
30722 : #undef FAIL
30723 : }
30724 : static const uint8_t expand_encoding[] = {
30725 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x54, 0x01, 0x01,
30726 : 0x01, 0x02
30727 : };
30728 : return complete_seq (expand_encoding, operands);
30729 : }
30730 :
30731 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30732 : rtx
30733 : gen_iorv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30734 : {
30735 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30736 : start_sequence ();
30737 : {
30738 : #define FAIL return (end_sequence (), nullptr)
30739 : #define DONE return end_sequence ()
30740 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30741 : {
30742 : ix86_expand_vector_logical_operator (IOR, V16HImode, operands);
30743 : DONE;
30744 : }
30745 : #undef DONE
30746 : #undef FAIL
30747 : }
30748 : static const uint8_t expand_encoding[] = {
30749 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x55, 0x01, 0x01,
30750 : 0x01, 0x02
30751 : };
30752 : return complete_seq (expand_encoding, operands);
30753 : }
30754 :
30755 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30756 : rtx
30757 : gen_xorv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30758 : {
30759 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30760 : start_sequence ();
30761 : {
30762 : #define FAIL return (end_sequence (), nullptr)
30763 : #define DONE return end_sequence ()
30764 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30765 : {
30766 : ix86_expand_vector_logical_operator (XOR, V4SImode, operands);
30767 : DONE;
30768 : }
30769 : #undef DONE
30770 : #undef FAIL
30771 : }
30772 : static const uint8_t expand_encoding[] = {
30773 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x51, 0x01, 0x01,
30774 : 0x01, 0x02
30775 : };
30776 : return complete_seq (expand_encoding, operands);
30777 : }
30778 :
30779 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30780 : rtx
30781 : gen_cond_andv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30782 : {
30783 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30784 : start_sequence ();
30785 : {
30786 : #define FAIL _Pragma ("GCC error \"cond_andv8si cannot FAIL\"") (void)0
30787 : #define DONE return end_sequence ()
30788 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30789 : {
30790 : emit_insn (gen_andv8si3_mask (operands[0],
30791 : operands[2],
30792 : operands[3],
30793 : operands[4],
30794 : operands[1]));
30795 : DONE;
30796 : }
30797 : #undef DONE
30798 : #undef FAIL
30799 : }
30800 : static const uint8_t expand_encoding[] = {
30801 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x49,
30802 : 0x56, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30803 : 0x01
30804 : };
30805 : return complete_seq (expand_encoding, operands);
30806 : }
30807 :
30808 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30809 : rtx
30810 : gen_cond_iorv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30811 : {
30812 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30813 : start_sequence ();
30814 : {
30815 : #define FAIL _Pragma ("GCC error \"cond_iorv4di cannot FAIL\"") (void)0
30816 : #define DONE return end_sequence ()
30817 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30818 : {
30819 : emit_insn (gen_iorv4di3_mask (operands[0],
30820 : operands[2],
30821 : operands[3],
30822 : operands[4],
30823 : operands[1]));
30824 : DONE;
30825 : }
30826 : #undef DONE
30827 : #undef FAIL
30828 : }
30829 : static const uint8_t expand_encoding[] = {
30830 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x4a,
30831 : 0x57, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30832 : 0x01
30833 : };
30834 : return complete_seq (expand_encoding, operands);
30835 : }
30836 :
30837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19115 */
30838 : rtx
30839 : gen_xorv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30840 : {
30841 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30842 : start_sequence ();
30843 : {
30844 : #define FAIL return (end_sequence (), nullptr)
30845 : #define DONE return end_sequence ()
30846 : #line 19124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30847 : ix86_fixup_binary_operands_no_copy (XOR, V8SImode, operands);
30848 : #undef DONE
30849 : #undef FAIL
30850 : }
30851 : static const uint8_t expand_encoding[] = {
30852 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x4b,
30853 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30854 : 0x04
30855 : };
30856 : return complete_seq (expand_encoding, operands);
30857 : }
30858 :
30859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19115 */
30860 : rtx
30861 : gen_andv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30862 : {
30863 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30864 : start_sequence ();
30865 : {
30866 : #define FAIL return (end_sequence (), nullptr)
30867 : #define DONE return end_sequence ()
30868 : #line 19124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30869 : ix86_fixup_binary_operands_no_copy (AND, V2DImode, operands);
30870 : #undef DONE
30871 : #undef FAIL
30872 : }
30873 : static const uint8_t expand_encoding[] = {
30874 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x49,
30875 : 0x52, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30876 : 0x04
30877 : };
30878 : return complete_seq (expand_encoding, operands);
30879 : }
30880 :
30881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19537 */
30882 : rtx
30883 : gen_vec_pack_trunc_v8di (const rtx operand0, const rtx operand1, const rtx operand2)
30884 : {
30885 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30886 : start_sequence ();
30887 : {
30888 : #define FAIL return (end_sequence (), nullptr)
30889 : #define DONE return end_sequence ()
30890 : #line 19542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30891 : {
30892 : rtx op1 = gen_lowpart (V16SImode, operands[1]);
30893 : rtx op2 = gen_lowpart (V16SImode, operands[2]);
30894 : ix86_expand_vec_extract_even_odd (operands[0], op1, op2, 0);
30895 : DONE;
30896 : }
30897 : #undef DONE
30898 : #undef FAIL
30899 : }
30900 : static const uint8_t expand_encoding[] = {
30901 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
30902 : };
30903 : return complete_seq (expand_encoding, operands);
30904 : }
30905 :
30906 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20244 */
30907 : rtx
30908 : gen_vec_interleave_lowv32qi (const rtx operand0, const rtx operand1, const rtx operand2)
30909 : {
30910 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30911 : start_sequence ();
30912 : {
30913 : #define FAIL return (end_sequence (), nullptr)
30914 : #define DONE return end_sequence ()
30915 : #line 20249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30916 : {
30917 : rtx t1 = gen_reg_rtx (V32QImode);
30918 : rtx t2 = gen_reg_rtx (V32QImode);
30919 : rtx t3 = gen_reg_rtx (V4DImode);
30920 : emit_insn (gen_avx2_interleave_lowv32qi (t1, operands[1], operands[2]));
30921 : emit_insn (gen_avx2_interleave_highv32qi (t2, operands[1], operands[2]));
30922 : emit_insn (gen_avx2_permv2ti (t3, gen_lowpart (V4DImode, t1),
30923 : gen_lowpart (V4DImode, t2),
30924 : GEN_INT (0 + (2 << 4))));
30925 : emit_move_insn (operands[0], gen_lowpart (V32QImode, t3));
30926 : DONE;
30927 : }
30928 : #undef DONE
30929 : #undef FAIL
30930 : }
30931 : static const uint8_t expand_encoding[] = {
30932 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
30933 : };
30934 : return complete_seq (expand_encoding, operands);
30935 : }
30936 :
30937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20470 */
30938 : rtx
30939 : gen_avx512dq_vinsertf32x8_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
30940 : {
30941 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
30942 : start_sequence ();
30943 : {
30944 : #define FAIL return (end_sequence (), nullptr)
30945 : #define DONE return end_sequence ()
30946 : #line 20478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30947 : {
30948 : int mask = INTVAL (operands[3]);
30949 : if (mask == 0)
30950 : emit_insn (gen_vec_set_lo_v16sf_mask (operands[0], operands[1],
30951 : operands[2], operands[4],
30952 : operands[5]));
30953 : else
30954 : emit_insn (gen_vec_set_hi_v16sf_mask (operands[0], operands[1],
30955 : operands[2], operands[4],
30956 : operands[5]));
30957 : DONE;
30958 : }
30959 : #undef DONE
30960 : #undef FAIL
30961 : }
30962 : static const uint8_t expand_encoding[] = {
30963 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30964 : 0x03, 0x01, 0x04, 0x01, 0x05
30965 : };
30966 : return complete_seq (expand_encoding, operands);
30967 : }
30968 :
30969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20710 */
30970 : rtx
30971 : gen_avx512vl_shuf_i32x4_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
30972 : {
30973 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
30974 : start_sequence ();
30975 : {
30976 : #define FAIL return (end_sequence (), nullptr)
30977 : #define DONE return end_sequence ()
30978 : #line 20718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30979 : {
30980 : int mask = INTVAL (operands[3]);
30981 : emit_insn (gen_avx512vl_shuf_i32x4_1_mask
30982 : (operands[0], operands[1], operands[2],
30983 : GEN_INT (((mask >> 0) & 1) * 4 + 0),
30984 : GEN_INT (((mask >> 0) & 1) * 4 + 1),
30985 : GEN_INT (((mask >> 0) & 1) * 4 + 2),
30986 : GEN_INT (((mask >> 0) & 1) * 4 + 3),
30987 : GEN_INT (((mask >> 1) & 1) * 4 + 8),
30988 : GEN_INT (((mask >> 1) & 1) * 4 + 9),
30989 : GEN_INT (((mask >> 1) & 1) * 4 + 10),
30990 : GEN_INT (((mask >> 1) & 1) * 4 + 11),
30991 : operands[4], operands[5]));
30992 : DONE;
30993 : }
30994 : #undef DONE
30995 : #undef FAIL
30996 : }
30997 : static const uint8_t expand_encoding[] = {
30998 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30999 : 0x03, 0x01, 0x04, 0x01, 0x05
31000 : };
31001 : return complete_seq (expand_encoding, operands);
31002 : }
31003 :
31004 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21159 */
31005 : rtx
31006 : gen_avx2_pshuflwv3 (const rtx operand0, const rtx operand1, const rtx operand2)
31007 : {
31008 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31009 : start_sequence ();
31010 : {
31011 : #define FAIL return (end_sequence (), nullptr)
31012 : #define DONE return end_sequence ()
31013 : #line 21164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31014 : {
31015 : int mask = INTVAL (operands[2]);
31016 : emit_insn (gen_avx2_pshuflw_1 (operands[0], operands[1],
31017 : GEN_INT ((mask >> 0) & 3),
31018 : GEN_INT ((mask >> 2) & 3),
31019 : GEN_INT ((mask >> 4) & 3),
31020 : GEN_INT ((mask >> 6) & 3),
31021 : GEN_INT (((mask >> 0) & 3) + 8),
31022 : GEN_INT (((mask >> 2) & 3) + 8),
31023 : GEN_INT (((mask >> 4) & 3) + 8),
31024 : GEN_INT (((mask >> 6) & 3) + 8)));
31025 : DONE;
31026 : }
31027 : #undef DONE
31028 : #undef FAIL
31029 : }
31030 : static const uint8_t expand_encoding[] = {
31031 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
31032 : };
31033 : return complete_seq (expand_encoding, operands);
31034 : }
31035 :
31036 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21602 */
31037 : extern rtx_insn *gen_split_3471 (rtx_insn *, rtx *);
31038 : rtx_insn *
31039 : gen_split_3471 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31040 : {
31041 : if (dump_file)
31042 : fprintf (dump_file, "Splitting with gen_split_3471 (sse.md:21602)\n");
31043 : start_sequence ();
31044 : #define FAIL return (end_sequence (), nullptr)
31045 : #define DONE return end_sequence ()
31046 : #line 21614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31047 : {
31048 : operands[4] = gen_lowpart (SImode, operands[1]);
31049 : operands[5] = gen_lowpart (V4SImode, operands[1]);
31050 : split_double_mode (DImode, &operands[0], 1, &operands[2], &operands[3]);
31051 : }
31052 : #undef DONE
31053 : #undef FAIL
31054 : static const uint8_t expand_encoding[] = {
31055 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x04, 0x1f, 0x01,
31056 : 0x03, 0x81, 0x0a, 0x11, 0x01, 0x05, 0x17, 0x00,
31057 : 0x01, 0x27, 0x01
31058 : };
31059 : return complete_seq (expand_encoding, operands);
31060 : }
31061 :
31062 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22015 */
31063 : extern rtx_insn *gen_split_3484 (rtx_insn *, rtx *);
31064 : rtx_insn *
31065 : gen_split_3484 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31066 : {
31067 : if (dump_file)
31068 : fprintf (dump_file, "Splitting with gen_split_3484 (sse.md:22015)\n");
31069 : start_sequence ();
31070 : #define FAIL return (end_sequence (), nullptr)
31071 : #define DONE return end_sequence ()
31072 : #line 22035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31073 : {
31074 : operands[1] = lowpart_subreg (V8QImode,
31075 : force_reg (V16QImode, operands[1]),
31076 : V16QImode);
31077 : if (!MEM_P (operands[2]))
31078 : operands[2] = force_reg (V16QImode, operands[2]);
31079 : operands[2] = lowpart_subreg (V8QImode, operands[2], V16QImode);
31080 : }
31081 : #undef DONE
31082 : #undef FAIL
31083 : static const uint8_t expand_encoding[] = {
31084 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x01,
31085 : 0x01, 0x01, 0x02
31086 : };
31087 : return complete_seq (expand_encoding, operands);
31088 : }
31089 :
31090 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22207 */
31091 : rtx
31092 : gen_vec_unpacks_lo_v4si (const rtx operand0, const rtx operand1)
31093 : {
31094 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31095 : start_sequence ();
31096 : {
31097 : #define FAIL return (end_sequence (), nullptr)
31098 : #define DONE return end_sequence ()
31099 : #line 22211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31100 : ix86_expand_sse_unpack (operands[0], operands[1], false, false); DONE;
31101 : #undef DONE
31102 : #undef FAIL
31103 : }
31104 : static const uint8_t expand_encoding[] = {
31105 : 0x02, 0x01, 0x00, 0x01, 0x01
31106 : };
31107 : return complete_seq (expand_encoding, operands);
31108 : }
31109 :
31110 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22219 */
31111 : rtx
31112 : gen_vec_unpacku_lo_v64qi (const rtx operand0, const rtx operand1)
31113 : {
31114 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31115 : start_sequence ();
31116 : {
31117 : #define FAIL return (end_sequence (), nullptr)
31118 : #define DONE return end_sequence ()
31119 : #line 22223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31120 : ix86_expand_sse_unpack (operands[0], operands[1], true, false); DONE;
31121 : #undef DONE
31122 : #undef FAIL
31123 : }
31124 : static const uint8_t expand_encoding[] = {
31125 : 0x02, 0x01, 0x00, 0x01, 0x01
31126 : };
31127 : return complete_seq (expand_encoding, operands);
31128 : }
31129 :
31130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22237 */
31131 : rtx
31132 : gen_vec_unpacks_lo_hi (const rtx operand0, const rtx operand1)
31133 : {
31134 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31135 : static const uint8_t expand_encoding[] = {
31136 : 0x1f, 0x32, 0x10, 0x01, 0x00, 0x00, 0x01, 0x01
31137 : };
31138 : return expand_rtx (expand_encoding, operands);
31139 : }
31140 :
31141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22252 */
31142 : rtx
31143 : gen_vec_unpacku_hi_v32hi (const rtx operand0, const rtx operand1)
31144 : {
31145 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31146 : start_sequence ();
31147 : {
31148 : #define FAIL return (end_sequence (), nullptr)
31149 : #define DONE return end_sequence ()
31150 : #line 22256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31151 : ix86_expand_sse_unpack (operands[0], operands[1], true, true); DONE;
31152 : #undef DONE
31153 : #undef FAIL
31154 : }
31155 : static const uint8_t expand_encoding[] = {
31156 : 0x02, 0x01, 0x00, 0x01, 0x01
31157 : };
31158 : return complete_seq (expand_encoding, operands);
31159 : }
31160 :
31161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22306 */
31162 : rtx
31163 : gen_avx512bw_uavgv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31164 : {
31165 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31166 : start_sequence ();
31167 : {
31168 : #define FAIL return (end_sequence (), nullptr)
31169 : #define DONE return end_sequence ()
31170 : #line 22319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31171 : {
31172 : operands[3] = CONST1_RTX(V64HImode);
31173 : ix86_fixup_binary_operands_no_copy (PLUS, V64QImode, operands);
31174 : }
31175 : #undef DONE
31176 : #undef FAIL
31177 : }
31178 : static const uint8_t expand_encoding[] = {
31179 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x59, 0x50, 0x5f,
31180 : 0x3b, 0x5f, 0x3b, 0x5f, 0x6f, 0x5f, 0x01, 0x01,
31181 : 0x6f, 0x5f, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
31182 : };
31183 : return complete_seq (expand_encoding, operands);
31184 : }
31185 :
31186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22306 */
31187 : rtx
31188 : gen_sse2_uavgv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31189 : {
31190 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31191 : start_sequence ();
31192 : {
31193 : #define FAIL return (end_sequence (), nullptr)
31194 : #define DONE return end_sequence ()
31195 : #line 22319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31196 : {
31197 : operands[3] = CONST1_RTX(V8SImode);
31198 : ix86_fixup_binary_operands_no_copy (PLUS, V8HImode, operands);
31199 : }
31200 : #undef DONE
31201 : #undef FAIL
31202 : }
31203 : static const uint8_t expand_encoding[] = {
31204 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x50, 0x50, 0x56,
31205 : 0x3b, 0x56, 0x3b, 0x56, 0x6f, 0x56, 0x01, 0x01,
31206 : 0x6f, 0x56, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
31207 : };
31208 : return complete_seq (expand_encoding, operands);
31209 : }
31210 :
31211 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22423 */
31212 : extern rtx_insn *gen_split_3491 (rtx_insn *, rtx *);
31213 : rtx_insn *
31214 : gen_split_3491 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31215 : {
31216 : if (dump_file)
31217 : fprintf (dump_file, "Splitting with gen_split_3491 (sse.md:22423)\n");
31218 : start_sequence ();
31219 : #define FAIL return (end_sequence (), nullptr)
31220 : #define DONE return end_sequence ()
31221 : #line 22441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31222 : operands[1] = gen_lowpart (V8SFmode, operands[1]);
31223 : #undef DONE
31224 : #undef FAIL
31225 : static const uint8_t expand_encoding[] = {
31226 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
31227 : 0x01, 0x32
31228 : };
31229 : return complete_seq (expand_encoding, operands);
31230 : }
31231 :
31232 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22447 */
31233 : extern rtx_insn *gen_split_3501 (rtx_insn *, rtx *);
31234 : rtx_insn *
31235 : gen_split_3501 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31236 : {
31237 : if (dump_file)
31238 : fprintf (dump_file, "Splitting with gen_split_3501 (sse.md:22447)\n");
31239 : start_sequence ();
31240 : #define FAIL return (end_sequence (), nullptr)
31241 : #define DONE return end_sequence ()
31242 : #line 22460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31243 : operands[1] = gen_lowpart (V2DFmode, operands[1]);
31244 : #undef DONE
31245 : #undef FAIL
31246 : static const uint8_t expand_encoding[] = {
31247 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31248 : 0x01, 0x01, 0x01, 0x32
31249 : };
31250 : return complete_seq (expand_encoding, operands);
31251 : }
31252 :
31253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22491 */
31254 : extern rtx_insn *gen_split_3511 (rtx_insn *, rtx *);
31255 : rtx_insn *
31256 : gen_split_3511 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31257 : {
31258 : if (dump_file)
31259 : fprintf (dump_file, "Splitting with gen_split_3511 (sse.md:22491)\n");
31260 : start_sequence ();
31261 : #define FAIL return (end_sequence (), nullptr)
31262 : #define DONE return end_sequence ()
31263 : #line 22504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31264 : operands[1] = gen_lowpart (V8SFmode, operands[1]);
31265 : #undef DONE
31266 : #undef FAIL
31267 : static const uint8_t expand_encoding[] = {
31268 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
31269 : 0x01, 0x32
31270 : };
31271 : return complete_seq (expand_encoding, operands);
31272 : }
31273 :
31274 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22510 */
31275 : extern rtx_insn *gen_split_3521 (rtx_insn *, rtx *);
31276 : rtx_insn *
31277 : gen_split_3521 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31278 : {
31279 : if (dump_file)
31280 : fprintf (dump_file, "Splitting with gen_split_3521 (sse.md:22510)\n");
31281 : start_sequence ();
31282 : #define FAIL return (end_sequence (), nullptr)
31283 : #define DONE return end_sequence ()
31284 : #line 22524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31285 : operands[1] = gen_lowpart (V2DFmode, operands[1]);
31286 : #undef DONE
31287 : #undef FAIL
31288 : static const uint8_t expand_encoding[] = {
31289 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31290 : 0x01, 0x01, 0x01, 0x32
31291 : };
31292 : return complete_seq (expand_encoding, operands);
31293 : }
31294 :
31295 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22683 */
31296 : extern rtx_insn *gen_split_3532 (rtx_insn *, rtx *);
31297 : rtx_insn *
31298 : gen_split_3532 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31299 : {
31300 : if (dump_file)
31301 : fprintf (dump_file, "Splitting with gen_split_3532 (sse.md:22683)\n");
31302 : start_sequence ();
31303 : #define FAIL return (end_sequence (), nullptr)
31304 : #define DONE return end_sequence ()
31305 : #line 22700 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31306 :
31307 : #undef DONE
31308 : #undef FAIL
31309 : static const uint8_t expand_encoding[] = {
31310 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
31311 : 0x01, 0x32
31312 : };
31313 : return complete_seq (expand_encoding, operands);
31314 : }
31315 :
31316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22847 */
31317 : extern rtx_insn *gen_split_3542 (rtx_insn *, rtx *);
31318 : rtx_insn *
31319 : gen_split_3542 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31320 : {
31321 : if (dump_file)
31322 : fprintf (dump_file, "Splitting with gen_split_3542 (sse.md:22847)\n");
31323 : start_sequence ();
31324 : #define FAIL return (end_sequence (), nullptr)
31325 : #define DONE return end_sequence ()
31326 : #line 22860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31327 : operands[0] = force_reg (V32QImode, operands[0]);
31328 : #undef DONE
31329 : #undef FAIL
31330 : static const uint8_t expand_encoding[] = {
31331 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31332 : 0x01, 0x00, 0x01, 0x00, 0x81, 0x03
31333 : };
31334 : return complete_seq (expand_encoding, operands);
31335 : }
31336 :
31337 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23063 */
31338 : extern rtx_insn *gen_split_3551 (rtx_insn *, rtx *);
31339 : rtx_insn *
31340 : gen_split_3551 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31341 : {
31342 : if (dump_file)
31343 : fprintf (dump_file, "Splitting with gen_split_3551 (sse.md:23063)\n");
31344 : start_sequence ();
31345 : #define FAIL return (end_sequence (), nullptr)
31346 : #define DONE return end_sequence ()
31347 : #line 23084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31348 : {
31349 : /* Generate SSE version of the operation. */
31350 : rtx op0 = lowpart_subreg (V8HImode, operands[0],
31351 : GET_MODE (operands[0]));
31352 : rtx op1 = lowpart_subreg (V8HImode, operands[1],
31353 : GET_MODE (operands[1]));
31354 : rtx op2 = lowpart_subreg (V8HImode, operands[2],
31355 : GET_MODE (operands[2]));
31356 : emit_insn (gen_ssse3_phsubswv8hi3 (op0, op1, op2));
31357 : ix86_move_vector_high_sse_to_mmx (op0);
31358 : DONE;
31359 : }
31360 : #undef DONE
31361 : #undef FAIL
31362 : static const uint8_t expand_encoding[] = {
31363 : 0x01, 0x27, 0x00
31364 : };
31365 : return complete_seq (expand_encoding, operands);
31366 : }
31367 :
31368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23473 */
31369 : rtx
31370 : gen_smulhrsv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31371 : {
31372 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31373 : start_sequence ();
31374 : {
31375 : #define FAIL return (end_sequence (), nullptr)
31376 : #define DONE return end_sequence ()
31377 : #line 23488 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31378 : operands[3] = CONST1_RTX(V4HImode);
31379 : #undef DONE
31380 : #undef FAIL
31381 : }
31382 : static const uint8_t expand_encoding[] = {
31383 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x49, 0x50, 0x51,
31384 : 0x3b, 0x51, 0x50, 0x51, 0x3e, 0x51, 0x6e, 0x51,
31385 : 0x01, 0x01, 0x6e, 0x51, 0x01, 0x02, 0x27, 0x0e,
31386 : 0x01, 0x03, 0x27, 0x01
31387 : };
31388 : return complete_seq (expand_encoding, operands);
31389 : }
31390 :
31391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23860 */
31392 : rtx
31393 : gen_absv16hi2 (const rtx operand0, const rtx operand1)
31394 : {
31395 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31396 : start_sequence ();
31397 : {
31398 : #define FAIL return (end_sequence (), nullptr)
31399 : #define DONE return end_sequence ()
31400 : #line 23865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31401 : {
31402 : if (!TARGET_SSSE3
31403 : || ((V16HImode == V2DImode || V16HImode == V4DImode)
31404 : && !TARGET_AVX512VL))
31405 : {
31406 : ix86_expand_sse2_abs (operands[0], operands[1]);
31407 : DONE;
31408 : }
31409 : }
31410 : #undef DONE
31411 : #undef FAIL
31412 : }
31413 : static const uint8_t expand_encoding[] = {
31414 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x55, 0x01, 0x01
31415 : };
31416 : return complete_seq (expand_encoding, operands);
31417 : }
31418 :
31419 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24051 */
31420 : extern rtx_insn *gen_split_3557 (rtx_insn *, rtx *);
31421 : rtx_insn *
31422 : gen_split_3557 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31423 : {
31424 : if (dump_file)
31425 : fprintf (dump_file, "Splitting with gen_split_3557 (sse.md:24051)\n");
31426 : start_sequence ();
31427 : #define FAIL return (end_sequence (), nullptr)
31428 : #define DONE return end_sequence ()
31429 : #line 24066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31430 : operands[3] = gen_lowpart (V4SFmode, operands[3]);
31431 : #undef DONE
31432 : #undef FAIL
31433 : static const uint8_t expand_encoding[] = {
31434 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
31435 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31436 : };
31437 : return complete_seq (expand_encoding, operands);
31438 : }
31439 :
31440 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24103 */
31441 : extern rtx_insn *gen_split_3567 (rtx_insn *, rtx *);
31442 : rtx_insn *
31443 : gen_split_3567 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31444 : {
31445 : if (dump_file)
31446 : fprintf (dump_file, "Splitting with gen_split_3567 (sse.md:24103)\n");
31447 : start_sequence ();
31448 : #define FAIL return (end_sequence (), nullptr)
31449 : #define DONE return end_sequence ()
31450 : #line 24119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31451 : {
31452 : operands[0] = gen_lowpart (V4DFmode, operands[0]);
31453 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31454 : operands[2] = gen_lowpart (V4DFmode, operands[2]);
31455 : operands[3] = gen_lowpart (V4DFmode, operands[3]);
31456 : }
31457 : #undef DONE
31458 : #undef FAIL
31459 : static const uint8_t expand_encoding[] = {
31460 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01,
31461 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31462 : };
31463 : return complete_seq (expand_encoding, operands);
31464 : }
31465 :
31466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24194 */
31467 : extern rtx_insn *gen_split_3577 (rtx_insn *, rtx *);
31468 : rtx_insn *
31469 : gen_split_3577 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31470 : {
31471 : if (dump_file)
31472 : fprintf (dump_file, "Splitting with gen_split_3577 (sse.md:24194)\n");
31473 : start_sequence ();
31474 : #define FAIL return (end_sequence (), nullptr)
31475 : #define DONE return end_sequence ()
31476 : #line 24212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31477 : {
31478 : operands[0] = gen_lowpart (V2DFmode, operands[0]);
31479 : operands[2] = gen_lowpart (V2DFmode, operands[2]);
31480 : operands[1] = force_reg (V2DFmode,
31481 : gen_lowpart (V2DFmode, operands[1]));
31482 : operands[3] = gen_lowpart (V2DFmode, operands[3]);
31483 : }
31484 : #undef DONE
31485 : #undef FAIL
31486 : static const uint8_t expand_encoding[] = {
31487 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01,
31488 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31489 : };
31490 : return complete_seq (expand_encoding, operands);
31491 : }
31492 :
31493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24427 */
31494 : extern rtx_insn *gen_split_3589 (rtx_insn *, rtx *);
31495 : rtx_insn *
31496 : gen_split_3589 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31497 : {
31498 : if (dump_file)
31499 : fprintf (dump_file, "Splitting with gen_split_3589 (sse.md:24427)\n");
31500 : start_sequence ();
31501 : #define FAIL return (end_sequence (), nullptr)
31502 : #define DONE return end_sequence ()
31503 : #line 24447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31504 : operands[3] = gen_lowpart (V16QImode, operands[3]);
31505 : #undef DONE
31506 : #undef FAIL
31507 : static const uint8_t expand_encoding[] = {
31508 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01,
31509 : 0x01, 0x01, 0x02, 0x61, 0x4f, 0x01, 0x03, 0x01,
31510 : 0x04, 0x34
31511 : };
31512 : return complete_seq (expand_encoding, operands);
31513 : }
31514 :
31515 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24622 */
31516 : extern rtx_insn *gen_split_3593 (rtx_insn *, rtx *);
31517 : rtx_insn *
31518 : gen_split_3593 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31519 : {
31520 : if (dump_file)
31521 : fprintf (dump_file, "Splitting with gen_split_3593 (sse.md:24622)\n");
31522 : start_sequence ();
31523 : #define FAIL return (end_sequence (), nullptr)
31524 : #define DONE return end_sequence ()
31525 : #line 24637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31526 : {
31527 : operands[0] = lowpart_subreg (V16HImode, operands[0], V32QImode);
31528 : operands[1] = lowpart_subreg (V16QImode, operands[1], V8HImode);
31529 : }
31530 : #undef DONE
31531 : #undef FAIL
31532 : static const uint8_t expand_encoding[] = {
31533 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x55, 0x01, 0x01
31534 : };
31535 : return complete_seq (expand_encoding, operands);
31536 : }
31537 :
31538 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24696 */
31539 : rtx
31540 : gen_extendv32qiv32hi2 (const rtx operand0, const rtx operand1)
31541 : {
31542 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31543 : static const uint8_t expand_encoding[] = {
31544 : 0x1f, 0x01, 0x00, 0x6e, 0x5a, 0x01, 0x01
31545 : };
31546 : return expand_rtx (expand_encoding, operands);
31547 : }
31548 :
31549 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24737 */
31550 : extern rtx_insn *gen_split_3601 (rtx_insn *, rtx *);
31551 : rtx_insn *
31552 : gen_split_3601 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31553 : {
31554 : if (dump_file)
31555 : fprintf (dump_file, "Splitting with gen_split_3601 (sse.md:24737)\n");
31556 : start_sequence ();
31557 : #define FAIL return (end_sequence (), nullptr)
31558 : #define DONE return end_sequence ()
31559 : #line 24755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31560 : operands[1] = adjust_address_nv (operands[1], V8QImode, 0);
31561 : #undef DONE
31562 : #undef FAIL
31563 : static const uint8_t expand_encoding[] = {
31564 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x50, 0x01, 0x01
31565 : };
31566 : return complete_seq (expand_encoding, operands);
31567 : }
31568 :
31569 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24883 */
31570 : rtx
31571 : gen_zero_extendv16qiv16si2 (const rtx operand0, const rtx operand1)
31572 : {
31573 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31574 : static const uint8_t expand_encoding[] = {
31575 : 0x1f, 0x01, 0x00, 0x6f, 0x5b, 0x01, 0x01
31576 : };
31577 : return expand_rtx (expand_encoding, operands);
31578 : }
31579 :
31580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24938 */
31581 : extern rtx_insn *gen_split_3611 (rtx_insn *, rtx *);
31582 : rtx_insn *
31583 : gen_split_3611 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31584 : {
31585 : if (dump_file)
31586 : fprintf (dump_file, "Splitting with gen_split_3611 (sse.md:24938)\n");
31587 : start_sequence ();
31588 : #define FAIL return (end_sequence (), nullptr)
31589 : #define DONE return end_sequence ()
31590 : #line 24962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31591 : operands[1] = adjust_address_nv (operands[1], V8QImode, 0);
31592 : #undef DONE
31593 : #undef FAIL
31594 : static const uint8_t expand_encoding[] = {
31595 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x6f,
31596 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31597 : };
31598 : return complete_seq (expand_encoding, operands);
31599 : }
31600 :
31601 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25061 */
31602 : rtx
31603 : gen_zero_extendv4qiv4si2 (const rtx operand0, const rtx operand1)
31604 : {
31605 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31606 : start_sequence ();
31607 : {
31608 : #define FAIL return (end_sequence (), nullptr)
31609 : #define DONE return end_sequence ()
31610 : #line 25066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31611 : {
31612 : if (!MEM_P (operands[1]))
31613 : {
31614 : rtx op1 = force_reg (V4QImode, operands[1]);
31615 : op1 = lowpart_subreg (V16QImode, op1, V4QImode);
31616 : emit_insn (gen_sse4_1_zero_extendv4qiv4si2 (operands[0], op1));
31617 : DONE;
31618 : }
31619 : }
31620 : #undef DONE
31621 : #undef FAIL
31622 : }
31623 : static const uint8_t expand_encoding[] = {
31624 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x51, 0x01, 0x01
31625 : };
31626 : return complete_seq (expand_encoding, operands);
31627 : }
31628 :
31629 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25165 */
31630 : extern rtx_insn *gen_split_3625 (rtx_insn *, rtx *);
31631 : rtx_insn *
31632 : gen_split_3625 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31633 : {
31634 : if (dump_file)
31635 : fprintf (dump_file, "Splitting with gen_split_3625 (sse.md:25165)\n");
31636 : start_sequence ();
31637 : #define FAIL return (end_sequence (), nullptr)
31638 : #define DONE return end_sequence ()
31639 : #line 25180 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31640 : {
31641 : operands[0] = lowpart_subreg (V8SImode, operands[0], V16HImode);
31642 : operands[1] = lowpart_subreg (V8HImode, operands[1], V2DImode);
31643 : }
31644 : #undef DONE
31645 : #undef FAIL
31646 : static const uint8_t expand_encoding[] = {
31647 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x56, 0x01, 0x01
31648 : };
31649 : return complete_seq (expand_encoding, operands);
31650 : }
31651 :
31652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25371 */
31653 : extern rtx_insn *gen_split_3635 (rtx_insn *, rtx *);
31654 : rtx_insn *
31655 : gen_split_3635 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31656 : {
31657 : if (dump_file)
31658 : fprintf (dump_file, "Splitting with gen_split_3635 (sse.md:25371)\n");
31659 : start_sequence ();
31660 : #define FAIL return (end_sequence (), nullptr)
31661 : #define DONE return end_sequence ()
31662 : #line 25388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31663 : operands[1] = adjust_address_nv (operands[1], V8QImode, 0);
31664 : #undef DONE
31665 : #undef FAIL
31666 : static const uint8_t expand_encoding[] = {
31667 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x5c, 0x01, 0x01
31668 : };
31669 : return complete_seq (expand_encoding, operands);
31670 : }
31671 :
31672 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25458 */
31673 : extern rtx_insn *gen_split_3639 (rtx_insn *, rtx *);
31674 : rtx_insn *
31675 : gen_split_3639 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31676 : {
31677 : if (dump_file)
31678 : fprintf (dump_file, "Splitting with gen_split_3639 (sse.md:25458)\n");
31679 : start_sequence ();
31680 : #define FAIL return (end_sequence (), nullptr)
31681 : #define DONE return end_sequence ()
31682 : #line 25478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31683 : operands[1] = adjust_address_nv (operands[1], V4QImode, 0);
31684 : #undef DONE
31685 : #undef FAIL
31686 : static const uint8_t expand_encoding[] = {
31687 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x57, 0x01, 0x01
31688 : };
31689 : return complete_seq (expand_encoding, operands);
31690 : }
31691 :
31692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25602 */
31693 : rtx
31694 : gen_extendv8hiv8di2 (const rtx operand0, const rtx operand1)
31695 : {
31696 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31697 : static const uint8_t expand_encoding[] = {
31698 : 0x1f, 0x01, 0x00, 0x6e, 0x5c, 0x01, 0x01
31699 : };
31700 : return expand_rtx (expand_encoding, operands);
31701 : }
31702 :
31703 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25678 */
31704 : rtx
31705 : gen_extendv4hiv4di2 (const rtx operand0, const rtx operand1)
31706 : {
31707 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31708 : start_sequence ();
31709 : {
31710 : #define FAIL return (end_sequence (), nullptr)
31711 : #define DONE return end_sequence ()
31712 : #line 25683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31713 : {
31714 : if (!MEM_P (operands[1]))
31715 : {
31716 : rtx op1 = force_reg (V4HImode, operands[1]);
31717 : op1 = lowpart_subreg (V8HImode, op1, V4HImode);
31718 : emit_insn (gen_avx2_sign_extendv4hiv4di2 (operands[0], op1));
31719 : DONE;
31720 : }
31721 : }
31722 : #undef DONE
31723 : #undef FAIL
31724 : }
31725 : static const uint8_t expand_encoding[] = {
31726 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01
31727 : };
31728 : return complete_seq (expand_encoding, operands);
31729 : }
31730 :
31731 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25832 */
31732 : rtx
31733 : gen_extendv8siv8di2 (const rtx operand0, const rtx operand1)
31734 : {
31735 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31736 : static const uint8_t expand_encoding[] = {
31737 : 0x1f, 0x01, 0x00, 0x6e, 0x5c, 0x01, 0x01
31738 : };
31739 : return expand_rtx (expand_encoding, operands);
31740 : }
31741 :
31742 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25885 */
31743 : rtx
31744 : gen_extendv4siv4di2 (const rtx operand0, const rtx operand1)
31745 : {
31746 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31747 : static const uint8_t expand_encoding[] = {
31748 : 0x1f, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01
31749 : };
31750 : return expand_rtx (expand_encoding, operands);
31751 : }
31752 :
31753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25988 */
31754 : extern rtx_insn *gen_split_3662 (rtx_insn *, rtx *);
31755 : rtx_insn *
31756 : gen_split_3662 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31757 : {
31758 : if (dump_file)
31759 : fprintf (dump_file, "Splitting with gen_split_3662 (sse.md:25988)\n");
31760 : start_sequence ();
31761 : #define FAIL return (end_sequence (), nullptr)
31762 : #define DONE return end_sequence ()
31763 : #line 26005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31764 : {
31765 : operands[0] = lowpart_subreg (V2DImode, operands[0], V4SImode);
31766 : if (MEM_P (operands[1]))
31767 : {
31768 : operands[1] = gen_rtx_ZERO_EXTEND (V2DImode, operands[1]);
31769 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
31770 : DONE;
31771 : }
31772 : operands[1] = lowpart_subreg (V4SImode, operands[1], V2SImode);
31773 : }
31774 : #undef DONE
31775 : #undef FAIL
31776 : static const uint8_t expand_encoding[] = {
31777 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x52, 0x81, 0x0a,
31778 : 0x4a, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00,
31779 : 0x27, 0x01
31780 : };
31781 : return complete_seq (expand_encoding, operands);
31782 : }
31783 :
31784 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26084 */
31785 : rtx
31786 : gen_sse4_1_ptestcv4si (const rtx operand0, const rtx operand1)
31787 : {
31788 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31789 : static const uint8_t expand_encoding[] = {
31790 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31791 : 0x00, 0x01, 0x01, 0x81, 0x03
31792 : };
31793 : return expand_rtx (expand_encoding, operands);
31794 : }
31795 :
31796 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26084 */
31797 : rtx
31798 : gen_avx_ptestcv8sf (const rtx operand0, const rtx operand1)
31799 : {
31800 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31801 : static const uint8_t expand_encoding[] = {
31802 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31803 : 0x00, 0x01, 0x01, 0x81, 0x03
31804 : };
31805 : return expand_rtx (expand_encoding, operands);
31806 : }
31807 :
31808 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26092 */
31809 : rtx
31810 : gen_avx_ptestv16hi (const rtx operand0, const rtx operand1)
31811 : {
31812 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31813 : static const uint8_t expand_encoding[] = {
31814 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31815 : 0x00, 0x01, 0x01, 0x81, 0x03
31816 : };
31817 : return expand_rtx (expand_encoding, operands);
31818 : }
31819 :
31820 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26113 */
31821 : extern rtx_insn *gen_split_3667 (rtx_insn *, rtx *);
31822 : rtx_insn *
31823 : gen_split_3667 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31824 : {
31825 : if (dump_file)
31826 : fprintf (dump_file, "Splitting with gen_split_3667 (sse.md:26113)\n");
31827 : start_sequence ();
31828 : static const uint8_t expand_encoding[] = {
31829 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31830 : 0x01, 0x00, 0x01, 0x01, 0x81, 0x03
31831 : };
31832 : return complete_seq (expand_encoding, operands);
31833 : }
31834 :
31835 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26127 */
31836 : extern rtx_insn *gen_split_3677 (rtx_insn *, rtx *);
31837 : rtx_insn *
31838 : gen_split_3677 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31839 : {
31840 : if (dump_file)
31841 : fprintf (dump_file, "Splitting with gen_split_3677 (sse.md:26127)\n");
31842 : start_sequence ();
31843 : static const uint8_t expand_encoding[] = {
31844 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01,
31845 : 0x27, 0x00, 0x2a
31846 : };
31847 : return complete_seq (expand_encoding, operands);
31848 : }
31849 :
31850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26127 */
31851 : extern rtx_insn *gen_split_3687 (rtx_insn *, rtx *);
31852 : rtx_insn *
31853 : gen_split_3687 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31854 : {
31855 : if (dump_file)
31856 : fprintf (dump_file, "Splitting with gen_split_3687 (sse.md:26127)\n");
31857 : start_sequence ();
31858 : static const uint8_t expand_encoding[] = {
31859 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01,
31860 : 0x27, 0x00, 0x2a
31861 : };
31862 : return complete_seq (expand_encoding, operands);
31863 : }
31864 :
31865 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31866 : extern rtx_insn *gen_split_3697 (rtx_insn *, rtx *);
31867 : rtx_insn *
31868 : gen_split_3697 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31869 : {
31870 : if (dump_file)
31871 : fprintf (dump_file, "Splitting with gen_split_3697 (sse.md:26139)\n");
31872 : start_sequence ();
31873 : static const uint8_t expand_encoding[] = {
31874 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31875 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31876 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31877 : };
31878 : return complete_seq (expand_encoding, operands);
31879 : }
31880 :
31881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31882 : extern rtx_insn *gen_split_3707 (rtx_insn *, rtx *);
31883 : rtx_insn *
31884 : gen_split_3707 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31885 : {
31886 : if (dump_file)
31887 : fprintf (dump_file, "Splitting with gen_split_3707 (sse.md:26139)\n");
31888 : start_sequence ();
31889 : static const uint8_t expand_encoding[] = {
31890 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31891 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31892 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31893 : };
31894 : return complete_seq (expand_encoding, operands);
31895 : }
31896 :
31897 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31898 : extern rtx_insn *gen_split_3717 (rtx_insn *, rtx *);
31899 : rtx_insn *
31900 : gen_split_3717 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31901 : {
31902 : if (dump_file)
31903 : fprintf (dump_file, "Splitting with gen_split_3717 (sse.md:26139)\n");
31904 : start_sequence ();
31905 : static const uint8_t expand_encoding[] = {
31906 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31907 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31908 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31909 : };
31910 : return complete_seq (expand_encoding, operands);
31911 : }
31912 :
31913 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31914 : extern rtx_insn *gen_split_3727 (rtx_insn *, rtx *);
31915 : rtx_insn *
31916 : gen_split_3727 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31917 : {
31918 : if (dump_file)
31919 : fprintf (dump_file, "Splitting with gen_split_3727 (sse.md:26139)\n");
31920 : start_sequence ();
31921 : static const uint8_t expand_encoding[] = {
31922 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31923 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31924 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31925 : };
31926 : return complete_seq (expand_encoding, operands);
31927 : }
31928 :
31929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31930 : extern rtx_insn *gen_split_3737 (rtx_insn *, rtx *);
31931 : rtx_insn *
31932 : gen_split_3737 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31933 : {
31934 : if (dump_file)
31935 : fprintf (dump_file, "Splitting with gen_split_3737 (sse.md:26139)\n");
31936 : start_sequence ();
31937 : static const uint8_t expand_encoding[] = {
31938 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31939 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31940 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31941 : };
31942 : return complete_seq (expand_encoding, operands);
31943 : }
31944 :
31945 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26154 */
31946 : extern rtx_insn *gen_split_3747 (rtx_insn *, rtx *);
31947 : rtx_insn *
31948 : gen_split_3747 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31949 : {
31950 : if (dump_file)
31951 : fprintf (dump_file, "Splitting with gen_split_3747 (sse.md:26154)\n");
31952 : start_sequence ();
31953 : static const uint8_t expand_encoding[] = {
31954 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31955 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x33,
31956 : 0x00, 0x01, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11,
31957 : 0x27, 0x00
31958 : };
31959 : return complete_seq (expand_encoding, operands);
31960 : }
31961 :
31962 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26154 */
31963 : extern rtx_insn *gen_split_3757 (rtx_insn *, rtx *);
31964 : rtx_insn *
31965 : gen_split_3757 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31966 : {
31967 : if (dump_file)
31968 : fprintf (dump_file, "Splitting with gen_split_3757 (sse.md:26154)\n");
31969 : start_sequence ();
31970 : static const uint8_t expand_encoding[] = {
31971 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31972 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x33,
31973 : 0x00, 0x01, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11,
31974 : 0x27, 0x00
31975 : };
31976 : return complete_seq (expand_encoding, operands);
31977 : }
31978 :
31979 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26170 */
31980 : extern rtx_insn *gen_split_3767 (rtx_insn *, rtx *);
31981 : rtx_insn *
31982 : gen_split_3767 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31983 : {
31984 : if (dump_file)
31985 : fprintf (dump_file, "Splitting with gen_split_3767 (sse.md:26170)\n");
31986 : start_sequence ();
31987 : static const uint8_t expand_encoding[] = {
31988 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31989 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x2f,
31990 : 0x39, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27,
31991 : 0x00, 0x01, 0x00, 0x2f
31992 : };
31993 : return complete_seq (expand_encoding, operands);
31994 : }
31995 :
31996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26193 */
31997 : extern rtx_insn *gen_split_3777 (rtx_insn *, rtx *);
31998 : rtx_insn *
31999 : gen_split_3777 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32000 : {
32001 : if (dump_file)
32002 : fprintf (dump_file, "Splitting with gen_split_3777 (sse.md:26193)\n");
32003 : start_sequence ();
32004 : #define FAIL return (end_sequence (), nullptr)
32005 : #define DONE return end_sequence ()
32006 : #line 26213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32007 : {
32008 : if (MEM_P (operands[0]))
32009 : operands[3] = force_reg (V16HImode, operands[0]);
32010 : else
32011 : operands[3] = operands[0];
32012 : }
32013 : #undef DONE
32014 : #undef FAIL
32015 : static const uint8_t expand_encoding[] = {
32016 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
32017 : 0x01, 0x03, 0x01, 0x03, 0x81, 0x03
32018 : };
32019 : return complete_seq (expand_encoding, operands);
32020 : }
32021 :
32022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26220 */
32023 : rtx
32024 : gen_nearbyintv8sf2 (const rtx operand0, const rtx operand1)
32025 : {
32026 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32027 : start_sequence ();
32028 : {
32029 : #define FAIL _Pragma ("GCC error \"nearbyintv8sf2 cannot FAIL\"") (void)0
32030 : #define DONE return end_sequence ()
32031 : #line 26227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32032 : operands[2] = GEN_INT (ROUND_MXCSR | ROUND_NO_EXC);
32033 : #undef DONE
32034 : #undef FAIL
32035 : }
32036 : static const uint8_t expand_encoding[] = {
32037 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01,
32038 : 0x01, 0x01, 0x02, 0x5f
32039 : };
32040 : return complete_seq (expand_encoding, operands);
32041 : }
32042 :
32043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26229 */
32044 : rtx
32045 : gen_rintv4sf2 (const rtx operand0, const rtx operand1)
32046 : {
32047 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32048 : start_sequence ();
32049 : {
32050 : #define FAIL _Pragma ("GCC error \"rintv4sf2 cannot FAIL\"") (void)0
32051 : #define DONE return end_sequence ()
32052 : #line 26236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32053 : operands[2] = GEN_INT (ROUND_MXCSR);
32054 : #undef DONE
32055 : #undef FAIL
32056 : }
32057 : static const uint8_t expand_encoding[] = {
32058 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01,
32059 : 0x01, 0x01, 0x02, 0x5f
32060 : };
32061 : return complete_seq (expand_encoding, operands);
32062 : }
32063 :
32064 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26263 */
32065 : rtx
32066 : gen_avx_roundps_sfix256 (const rtx operand0, const rtx operand1, const rtx operand2)
32067 : {
32068 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32069 : start_sequence ();
32070 : {
32071 : #define FAIL return (end_sequence (), nullptr)
32072 : #define DONE return end_sequence ()
32073 : #line 26268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32074 : {
32075 : rtx tmp = gen_reg_rtx (V8SFmode);
32076 :
32077 : emit_insn
32078 : (gen_avx_roundps256 (tmp, operands[1],
32079 : operands[2]));
32080 : emit_insn
32081 : (gen_fix_truncv8sfv8si2 (operands[0], tmp));
32082 : DONE;
32083 : }
32084 : #undef DONE
32085 : #undef FAIL
32086 : }
32087 : static const uint8_t expand_encoding[] = {
32088 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32089 : };
32090 : return complete_seq (expand_encoding, operands);
32091 : }
32092 :
32093 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26414 */
32094 : rtx
32095 : gen_floorv8sf2 (const rtx operand0, const rtx operand1)
32096 : {
32097 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32098 : start_sequence ();
32099 : {
32100 : #define FAIL _Pragma ("GCC error \"floorv8sf2 cannot FAIL\"") (void)0
32101 : #define DONE return end_sequence ()
32102 : #line 26421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32103 : operands[2] = GEN_INT (ROUND_FLOOR | ROUND_NO_EXC);
32104 : #undef DONE
32105 : #undef FAIL
32106 : }
32107 : static const uint8_t expand_encoding[] = {
32108 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01,
32109 : 0x01, 0x01, 0x02, 0x5f
32110 : };
32111 : return complete_seq (expand_encoding, operands);
32112 : }
32113 :
32114 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26423 */
32115 : rtx
32116 : gen_lfloorv8hfv8hi2 (const rtx operand0, const rtx operand1)
32117 : {
32118 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32119 : start_sequence ();
32120 : {
32121 : #define FAIL _Pragma ("GCC error \"lfloorv8hfv8hi2 cannot FAIL\"") (void)0
32122 : #define DONE return end_sequence ()
32123 : #line 26427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32124 : {
32125 : rtx tmp = gen_reg_rtx (V8HFmode);
32126 : emit_insn (gen_floorv8hf2 (tmp, operands[1]));
32127 : emit_insn (gen_fix_truncv8hfv8hi2 (operands[0], tmp));
32128 : DONE;
32129 : }
32130 : #undef DONE
32131 : #undef FAIL
32132 : }
32133 : static const uint8_t expand_encoding[] = {
32134 : 0x02, 0x01, 0x00, 0x01, 0x01
32135 : };
32136 : return complete_seq (expand_encoding, operands);
32137 : }
32138 :
32139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26445 */
32140 : rtx
32141 : gen_ceilv16sf2 (const rtx operand0, const rtx operand1)
32142 : {
32143 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32144 : start_sequence ();
32145 : {
32146 : #define FAIL _Pragma ("GCC error \"ceilv16sf2 cannot FAIL\"") (void)0
32147 : #define DONE return end_sequence ()
32148 : #line 26452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32149 : operands[2] = GEN_INT (ROUND_CEIL | ROUND_NO_EXC);
32150 : #undef DONE
32151 : #undef FAIL
32152 : }
32153 : static const uint8_t expand_encoding[] = {
32154 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x01,
32155 : 0x01, 0x01, 0x02, 0x5f
32156 : };
32157 : return complete_seq (expand_encoding, operands);
32158 : }
32159 :
32160 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26465 */
32161 : rtx
32162 : gen_lceilv8sfv8si2 (const rtx operand0, const rtx operand1)
32163 : {
32164 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32165 : start_sequence ();
32166 : {
32167 : #define FAIL _Pragma ("GCC error \"lceilv8sfv8si2 cannot FAIL\"") (void)0
32168 : #define DONE return end_sequence ()
32169 : #line 26469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32170 : {
32171 : rtx tmp = gen_reg_rtx (V8SFmode);
32172 : emit_insn (gen_ceilv8sf2 (tmp, operands[1]));
32173 : emit_insn (gen_fix_truncv8sfv8si2 (operands[0], tmp));
32174 : DONE;
32175 : }
32176 : #undef DONE
32177 : #undef FAIL
32178 : }
32179 : static const uint8_t expand_encoding[] = {
32180 : 0x02, 0x01, 0x00, 0x01, 0x01
32181 : };
32182 : return complete_seq (expand_encoding, operands);
32183 : }
32184 :
32185 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26476 */
32186 : rtx
32187 : gen_btruncv4sf2 (const rtx operand0, const rtx operand1)
32188 : {
32189 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32190 : start_sequence ();
32191 : {
32192 : #define FAIL _Pragma ("GCC error \"btruncv4sf2 cannot FAIL\"") (void)0
32193 : #define DONE return end_sequence ()
32194 : #line 26483 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32195 : operands[2] = GEN_INT (ROUND_TRUNC | ROUND_NO_EXC);
32196 : #undef DONE
32197 : #undef FAIL
32198 : }
32199 : static const uint8_t expand_encoding[] = {
32200 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01,
32201 : 0x01, 0x01, 0x02, 0x5f
32202 : };
32203 : return complete_seq (expand_encoding, operands);
32204 : }
32205 :
32206 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26485 */
32207 : rtx
32208 : gen_roundv8df2 (const rtx operand0, const rtx operand1)
32209 : {
32210 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1 };
32211 : start_sequence ();
32212 : {
32213 : #define FAIL _Pragma ("GCC error \"roundv8df2 cannot FAIL\"") (void)0
32214 : #define DONE return end_sequence ()
32215 : #line 26495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32216 : {
32217 : machine_mode scalar_mode;
32218 : const struct real_format *fmt;
32219 : REAL_VALUE_TYPE pred_half, half_minus_pred_half;
32220 : rtx half, vec_half;
32221 :
32222 : scalar_mode = GET_MODE_INNER (V8DFmode);
32223 :
32224 : /* load nextafter (0.5, 0.0) */
32225 : fmt = REAL_MODE_FORMAT (scalar_mode);
32226 : real_2expN (&half_minus_pred_half, -(fmt->p) - 1, scalar_mode);
32227 : real_arithmetic (&pred_half, MINUS_EXPR, &dconsthalf, &half_minus_pred_half);
32228 : half = const_double_from_real_value (pred_half, scalar_mode);
32229 :
32230 : vec_half = ix86_build_const_vector (V8DFmode, true, half);
32231 : vec_half = force_reg (V8DFmode, vec_half);
32232 :
32233 : operands[2] = gen_reg_rtx (V8DFmode);
32234 : emit_insn (gen_copysignv8df3 (operands[2], vec_half, operands[1]));
32235 :
32236 : operands[3] = gen_reg_rtx (V8DFmode);
32237 : operands[4] = GEN_INT (ROUND_TRUNC);
32238 : }
32239 : #undef DONE
32240 : #undef FAIL
32241 : }
32242 : static const uint8_t expand_encoding[] = {
32243 : 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x75, 0x01, 0x01,
32244 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02,
32245 : 0x01, 0x03, 0x01, 0x04, 0x5f
32246 : };
32247 : return complete_seq (expand_encoding, operands);
32248 : }
32249 :
32250 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26530 */
32251 : rtx
32252 : gen_lroundv2dfv2di2 (const rtx operand0, const rtx operand1)
32253 : {
32254 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32255 : start_sequence ();
32256 : {
32257 : #define FAIL _Pragma ("GCC error \"lroundv2dfv2di2 cannot FAIL\"") (void)0
32258 : #define DONE return end_sequence ()
32259 : #line 26534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32260 : {
32261 : rtx tmp = gen_reg_rtx (V2DFmode);
32262 : emit_insn (gen_roundv2df2 (tmp, operands[1]));
32263 : emit_insn (gen_fix_truncv2dfv2di2 (operands[0], tmp));
32264 : DONE;
32265 : }
32266 : #undef DONE
32267 : #undef FAIL
32268 : }
32269 : static const uint8_t expand_encoding[] = {
32270 : 0x02, 0x01, 0x00, 0x01, 0x01
32271 : };
32272 : return complete_seq (expand_encoding, operands);
32273 : }
32274 :
32275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27001 */
32276 : extern rtx_insn *gen_split_3786 (rtx_insn *, rtx *);
32277 : rtx_insn *
32278 : gen_split_3786 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32279 : {
32280 : if (dump_file)
32281 : fprintf (dump_file, "Splitting with gen_split_3786 (sse.md:27001)\n");
32282 : start_sequence ();
32283 : static const uint8_t expand_encoding[] = {
32284 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x4f, 0x01, 0x03,
32285 : 0x01, 0x02, 0x01, 0x01
32286 : };
32287 : return complete_seq (expand_encoding, operands);
32288 : }
32289 :
32290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27001 */
32291 : extern rtx_insn *gen_split_3791 (rtx_insn *, rtx *);
32292 : rtx_insn *
32293 : gen_split_3791 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32294 : {
32295 : if (dump_file)
32296 : fprintf (dump_file, "Splitting with gen_split_3791 (sse.md:27001)\n");
32297 : start_sequence ();
32298 : static const uint8_t expand_encoding[] = {
32299 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x57, 0x01, 0x03,
32300 : 0x01, 0x02, 0x01, 0x01
32301 : };
32302 : return complete_seq (expand_encoding, operands);
32303 : }
32304 :
32305 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27001 */
32306 : extern rtx_insn *gen_split_3800 (rtx_insn *, rtx *);
32307 : rtx_insn *
32308 : gen_split_3800 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32309 : {
32310 : if (dump_file)
32311 : fprintf (dump_file, "Splitting with gen_split_3800 (sse.md:27001)\n");
32312 : start_sequence ();
32313 : static const uint8_t expand_encoding[] = {
32314 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x6c, 0x01, 0x03,
32315 : 0x01, 0x02, 0x01, 0x01
32316 : };
32317 : return complete_seq (expand_encoding, operands);
32318 : }
32319 :
32320 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27013 */
32321 : extern rtx_insn *gen_split_3810 (rtx_insn *, rtx *);
32322 : rtx_insn *
32323 : gen_split_3810 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32324 : {
32325 : if (dump_file)
32326 : fprintf (dump_file, "Splitting with gen_split_3810 (sse.md:27013)\n");
32327 : start_sequence ();
32328 : static const uint8_t expand_encoding[] = {
32329 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x53, 0x01, 0x03,
32330 : 0x01, 0x01, 0x01, 0x02
32331 : };
32332 : return complete_seq (expand_encoding, operands);
32333 : }
32334 :
32335 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27353 */
32336 : rtx
32337 : gen_rotrv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32338 : {
32339 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32340 : start_sequence ();
32341 : {
32342 : #define FAIL return (end_sequence (), nullptr)
32343 : #define DONE return end_sequence ()
32344 : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32345 : {
32346 : /* If we were given a scalar, convert it to parallel */
32347 : if (! const_0_to_15_operand (operands[2], SImode))
32348 : {
32349 : rtvec vs = rtvec_alloc (8);
32350 : rtx par = gen_rtx_PARALLEL (V8HImode, vs);
32351 : rtx neg = gen_reg_rtx (V8HImode);
32352 : rtx reg = gen_reg_rtx (V8HImode);
32353 : rtx op2 = operands[2];
32354 : int i;
32355 :
32356 : if (GET_MODE (op2) != HImode)
32357 : {
32358 : op2 = gen_reg_rtx (HImode);
32359 : convert_move (op2, operands[2], false);
32360 : }
32361 :
32362 : for (i = 0; i < 8; i++)
32363 : RTVEC_ELT (vs, i) = op2;
32364 :
32365 : emit_insn (gen_vec_initv8hihi (reg, par));
32366 : emit_insn (gen_negv8hi2 (neg, reg));
32367 : emit_insn (gen_xop_vrotlv8hi3 (operands[0], operands[1], neg));
32368 : DONE;
32369 : }
32370 : }
32371 : #undef DONE
32372 : #undef FAIL
32373 : }
32374 : static const uint8_t expand_encoding[] = {
32375 : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x50, 0x01, 0x01,
32376 : 0x01, 0x02
32377 : };
32378 : return complete_seq (expand_encoding, operands);
32379 : }
32380 :
32381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27479 */
32382 : rtx
32383 : gen_vlshrv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32384 : {
32385 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32386 : start_sequence ();
32387 : {
32388 : #define FAIL return (end_sequence (), nullptr)
32389 : #define DONE return end_sequence ()
32390 : #line 27485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32391 : {
32392 : if (!TARGET_AVX2)
32393 : {
32394 : rtx neg = gen_reg_rtx (V2DImode);
32395 : emit_insn (gen_negv2di2 (neg, operands[2]));
32396 : emit_insn (gen_xop_shlv2di3 (operands[0], operands[1], neg));
32397 : DONE;
32398 : }
32399 : }
32400 : #undef DONE
32401 : #undef FAIL
32402 : }
32403 : static const uint8_t expand_encoding[] = {
32404 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x52, 0x01, 0x01,
32405 : 0x01, 0x02
32406 : };
32407 : return complete_seq (expand_encoding, operands);
32408 : }
32409 :
32410 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27495 */
32411 : rtx
32412 : gen_vlshrv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32413 : {
32414 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32415 : start_sequence ();
32416 : {
32417 : #define FAIL return (end_sequence (), nullptr)
32418 : #define DONE return end_sequence ()
32419 : #line 27501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32420 : {
32421 : if (V16HImode == V32QImode || V16HImode == V64QImode)
32422 : {
32423 : ix86_expand_vecop_qihi (LSHIFTRT, operands[0], operands[1], operands[2]);
32424 : DONE;
32425 : }
32426 : }
32427 : #undef DONE
32428 : #undef FAIL
32429 : }
32430 : static const uint8_t expand_encoding[] = {
32431 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x55, 0x01, 0x01,
32432 : 0x01, 0x02
32433 : };
32434 : return complete_seq (expand_encoding, operands);
32435 : }
32436 :
32437 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27615 */
32438 : rtx
32439 : gen_vashrv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
32440 : {
32441 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32442 : static const uint8_t expand_encoding[] = {
32443 : 0x1f, 0x01, 0x00, 0x4f, 0x5b, 0x01, 0x01, 0x01,
32444 : 0x02
32445 : };
32446 : return expand_rtx (expand_encoding, operands);
32447 : }
32448 :
32449 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27646 */
32450 : rtx
32451 : gen_vashlv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32452 : {
32453 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32454 : start_sequence ();
32455 : {
32456 : #define FAIL return (end_sequence (), nullptr)
32457 : #define DONE return end_sequence ()
32458 : #line 27652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32459 : {
32460 : if (!TARGET_AVX2)
32461 : {
32462 : operands[2] = force_reg (V2DImode, operands[2]);
32463 : emit_insn (gen_xop_shav2di3 (operands[0], operands[1], operands[2]));
32464 : DONE;
32465 : }
32466 : }
32467 : #undef DONE
32468 : #undef FAIL
32469 : }
32470 : static const uint8_t expand_encoding[] = {
32471 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x52, 0x01, 0x01,
32472 : 0x01, 0x02
32473 : };
32474 : return complete_seq (expand_encoding, operands);
32475 : }
32476 :
32477 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27713 */
32478 : rtx
32479 : gen_ashlv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32480 : {
32481 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32482 : start_sequence ();
32483 : {
32484 : #define FAIL return (end_sequence (), nullptr)
32485 : #define DONE return end_sequence ()
32486 : #line 27719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32487 : {
32488 : if (TARGET_XOP && V16QImode == V16QImode)
32489 : {
32490 : bool negate = false;
32491 : rtx (*gen) (rtx, rtx, rtx);
32492 : rtx tmp, par;
32493 : int i;
32494 :
32495 : if (ASHIFT != ASHIFT)
32496 : {
32497 : if (CONST_INT_P (operands[2]))
32498 : operands[2] = GEN_INT (-INTVAL (operands[2]));
32499 : else
32500 : negate = true;
32501 : }
32502 : par = gen_rtx_PARALLEL (V16QImode, rtvec_alloc (16));
32503 : tmp = lowpart_subreg (QImode, operands[2], SImode);
32504 : for (i = 0; i < 16; i++)
32505 : XVECEXP (par, 0, i) = tmp;
32506 :
32507 : tmp = gen_reg_rtx (V16QImode);
32508 : emit_insn (gen_vec_initv16qiqi (tmp, par));
32509 :
32510 : if (negate)
32511 : emit_insn (gen_negv16qi2 (tmp, tmp));
32512 :
32513 : gen = (ASHIFT == LSHIFTRT ? gen_xop_shlv16qi3 : gen_xop_shav16qi3);
32514 : emit_insn (gen (operands[0], operands[1], tmp));
32515 : }
32516 : else if (TARGET_GFNI && CONST_INT_P (operands[2])
32517 : && (16 == 64
32518 : || !(INTVAL (operands[2]) == 7 && ASHIFT == ASHIFTRT)))
32519 : {
32520 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2],
32521 : ASHIFT);
32522 : emit_insn (gen_vgf2p8affineqb_v16qi (operands[0], operands[1], matrix,
32523 : const0_rtx));
32524 : }
32525 : else
32526 : ix86_expand_vecop_qihi (ASHIFT, operands[0], operands[1], operands[2]);
32527 : DONE;
32528 : }
32529 : #undef DONE
32530 : #undef FAIL
32531 : }
32532 : static const uint8_t expand_encoding[] = {
32533 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x4f, 0x01, 0x01,
32534 : 0x01, 0x02
32535 : };
32536 : return complete_seq (expand_encoding, operands);
32537 : }
32538 :
32539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27864 */
32540 : rtx
32541 : gen_xop_vmfrczv4sf2 (const rtx operand0, const rtx operand1)
32542 : {
32543 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32544 : start_sequence ();
32545 : {
32546 : #define FAIL return (end_sequence (), nullptr)
32547 : #define DONE return end_sequence ()
32548 : #line 27873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32549 : operands[2] = CONST0_RTX (V4SFmode);
32550 : #undef DONE
32551 : #undef FAIL
32552 : }
32553 : static const uint8_t expand_encoding[] = {
32554 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a,
32555 : 0x6b, 0x01, 0x01, 0x01, 0x81, 0x09, 0x01, 0x02,
32556 : 0x27, 0x01
32557 : };
32558 : return complete_seq (expand_encoding, operands);
32559 : }
32560 :
32561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28319 */
32562 : rtx
32563 : gen_avx_vpermilv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32564 : {
32565 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32566 : start_sequence ();
32567 : {
32568 : #define FAIL return (end_sequence (), nullptr)
32569 : #define DONE return end_sequence ()
32570 : #line 28325 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32571 : {
32572 : int mask = INTVAL (operands[2]);
32573 : rtx perm[4];
32574 :
32575 : int i;
32576 : for (i = 0; i < 4; i = i + 2)
32577 : {
32578 : perm[i] = GEN_INT (((mask >> i) & 1) + i);
32579 : perm[i + 1] = GEN_INT (((mask >> (i + 1)) & 1) + i);
32580 : }
32581 :
32582 : operands[2]
32583 : = gen_rtx_PARALLEL (VOIDmode, gen_rtvec_v (4, perm));
32584 : }
32585 : #undef DONE
32586 : #undef FAIL
32587 : }
32588 : static const uint8_t expand_encoding[] = {
32589 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81,
32590 : 0x0a, 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
32591 : 0x01, 0x04
32592 : };
32593 : return complete_seq (expand_encoding, operands);
32594 : }
32595 :
32596 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28340 */
32597 : rtx
32598 : gen_avx_vpermilv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32599 : {
32600 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32601 : start_sequence ();
32602 : {
32603 : #define FAIL return (end_sequence (), nullptr)
32604 : #define DONE return end_sequence ()
32605 : #line 28346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32606 : {
32607 : int mask = INTVAL (operands[2]);
32608 : rtx perm[4];
32609 :
32610 : int i;
32611 : for (i = 0; i < 4; i = i + 4)
32612 : {
32613 : perm[i] = GEN_INT (((mask >> 0) & 3) + i);
32614 : perm[i + 1] = GEN_INT (((mask >> 2) & 3) + i);
32615 : perm[i + 2] = GEN_INT (((mask >> 4) & 3) + i);
32616 : perm[i + 3] = GEN_INT (((mask >> 6) & 3) + i);
32617 : }
32618 :
32619 : operands[2]
32620 : = gen_rtx_PARALLEL (VOIDmode, gen_rtvec_v (4, perm));
32621 : }
32622 : #undef DONE
32623 : #undef FAIL
32624 : }
32625 : static const uint8_t expand_encoding[] = {
32626 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
32627 : 0x0a, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
32628 : 0x01, 0x04
32629 : };
32630 : return complete_seq (expand_encoding, operands);
32631 : }
32632 :
32633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28841 */
32634 : extern rtx_insn *gen_split_3823 (rtx_insn *, rtx *);
32635 : rtx_insn *
32636 : gen_split_3823 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32637 : {
32638 : if (dump_file)
32639 : fprintf (dump_file, "Splitting with gen_split_3823 (sse.md:28841)\n");
32640 : start_sequence ();
32641 : #define FAIL return (end_sequence (), nullptr)
32642 : #define DONE return end_sequence ()
32643 : #line 28854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32644 : {
32645 : emit_insn (gen_vec_setv4si_0 (gen_lowpart (V4SImode, operands[0]),
32646 : CONST0_RTX (V4SImode),
32647 : gen_lowpart (SImode, operands[1])));
32648 : emit_insn (gen_avx2_pbroadcastv16hi (operands[0],
32649 : gen_lowpart (V8HImode,
32650 : operands[0])));
32651 : DONE;
32652 : }
32653 : #undef DONE
32654 : #undef FAIL
32655 : static const uint8_t expand_encoding[] = {
32656 : 0x01, 0x27, 0x00
32657 : };
32658 : return complete_seq (expand_encoding, operands);
32659 : }
32660 :
32661 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28864 */
32662 : extern rtx_insn *gen_split_3831 (rtx_insn *, rtx *);
32663 : rtx_insn *
32664 : gen_split_3831 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32665 : {
32666 : if (dump_file)
32667 : fprintf (dump_file, "Splitting with gen_split_3831 (sse.md:28864)\n");
32668 : start_sequence ();
32669 : #define FAIL return (end_sequence (), nullptr)
32670 : #define DONE return end_sequence ()
32671 : #line 28873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32672 : operands[2] = gen_lowpart (V4SImode, operands[0]);
32673 : #undef DONE
32674 : #undef FAIL
32675 : static const uint8_t expand_encoding[] = {
32676 : 0x02, 0x1f, 0x01, 0x02, 0x81, 0x0c, 0x51, 0x01,
32677 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x01,
32678 : 0x02, 0x01, 0x02
32679 : };
32680 : return complete_seq (expand_encoding, operands);
32681 : }
32682 :
32683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28902 */
32684 : extern rtx_insn *gen_split_3839 (rtx_insn *, rtx *);
32685 : rtx_insn *
32686 : gen_split_3839 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32687 : {
32688 : if (dump_file)
32689 : fprintf (dump_file, "Splitting with gen_split_3839 (sse.md:28902)\n");
32690 : start_sequence ();
32691 : static const uint8_t expand_encoding[] = {
32692 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6f, 0x01,
32693 : 0x01, 0x01, 0x01
32694 : };
32695 : return complete_seq (expand_encoding, operands);
32696 : }
32697 :
32698 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32699 : rtx
32700 : gen_avx512vl_vpermi2varv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32701 : {
32702 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32703 : start_sequence ();
32704 : {
32705 : #define FAIL return (end_sequence (), nullptr)
32706 : #define DONE return end_sequence ()
32707 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32708 : {
32709 : operands[2] = force_reg (V8SImode, operands[2]);
32710 : operands[5] = gen_lowpart (V8SFmode, operands[2]);
32711 : }
32712 : #undef DONE
32713 : #undef FAIL
32714 : }
32715 : static const uint8_t expand_encoding[] = {
32716 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a,
32717 : 0x6f, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32718 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32719 : };
32720 : return complete_seq (expand_encoding, operands);
32721 : }
32722 :
32723 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32724 : rtx
32725 : gen_avx512bw_vpermi2varv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32726 : {
32727 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32728 : start_sequence ();
32729 : {
32730 : #define FAIL return (end_sequence (), nullptr)
32731 : #define DONE return end_sequence ()
32732 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32733 : {
32734 : operands[2] = force_reg (V64QImode, operands[2]);
32735 : operands[5] = gen_lowpart (V64QImode, operands[2]);
32736 : }
32737 : #undef DONE
32738 : #undef FAIL
32739 : }
32740 : static const uint8_t expand_encoding[] = {
32741 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a,
32742 : 0x59, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32743 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32744 : };
32745 : return complete_seq (expand_encoding, operands);
32746 : }
32747 :
32748 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32749 : rtx
32750 : gen_avx512vl_vpermt2varv4df3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32751 : {
32752 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32753 : start_sequence ();
32754 : {
32755 : #define FAIL return (end_sequence (), nullptr)
32756 : #define DONE return end_sequence ()
32757 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32758 : {
32759 : emit_insn (gen_avx512vl_vpermt2varv4df3_maskz_1 (
32760 : operands[0], operands[1], operands[2], operands[3],
32761 : CONST0_RTX (V4DFmode), operands[4]));
32762 : DONE;
32763 : }
32764 : #undef DONE
32765 : #undef FAIL
32766 : }
32767 : static const uint8_t expand_encoding[] = {
32768 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32769 : 0x03, 0x01, 0x04
32770 : };
32771 : return complete_seq (expand_encoding, operands);
32772 : }
32773 :
32774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32775 : rtx
32776 : gen_avx512vl_vpermt2varv16qi3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32777 : {
32778 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32779 : start_sequence ();
32780 : {
32781 : #define FAIL return (end_sequence (), nullptr)
32782 : #define DONE return end_sequence ()
32783 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32784 : {
32785 : emit_insn (gen_avx512vl_vpermt2varv16qi3_maskz_1 (
32786 : operands[0], operands[1], operands[2], operands[3],
32787 : CONST0_RTX (V16QImode), operands[4]));
32788 : DONE;
32789 : }
32790 : #undef DONE
32791 : #undef FAIL
32792 : }
32793 : static const uint8_t expand_encoding[] = {
32794 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32795 : 0x03, 0x01, 0x04
32796 : };
32797 : return complete_seq (expand_encoding, operands);
32798 : }
32799 :
32800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29302 */
32801 : rtx
32802 : gen_avx_vinsertf128v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32803 : {
32804 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32805 : start_sequence ();
32806 : {
32807 : #define FAIL return (end_sequence (), nullptr)
32808 : #define DONE return end_sequence ()
32809 : #line 29308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32810 : {
32811 : rtx (*insn)(rtx, rtx, rtx);
32812 :
32813 : switch (INTVAL (operands[3]))
32814 : {
32815 : case 0:
32816 : insn = gen_vec_set_lo_v8si;
32817 : break;
32818 : case 1:
32819 : insn = gen_vec_set_hi_v8si;
32820 : break;
32821 : default:
32822 : gcc_unreachable ();
32823 : }
32824 :
32825 : emit_insn (insn (operands[0], operands[1], operands[2]));
32826 : DONE;
32827 : }
32828 : #undef DONE
32829 : #undef FAIL
32830 : }
32831 : static const uint8_t expand_encoding[] = {
32832 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32833 : 0x03
32834 : };
32835 : return complete_seq (expand_encoding, operands);
32836 : }
32837 :
32838 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29568 */
32839 : rtx
32840 : gen_maskloadv8sfv8si_1 (const rtx operand0, const rtx operand1, const rtx operand2)
32841 : {
32842 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32843 : static const uint8_t expand_encoding[] = {
32844 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01, 0x02,
32845 : 0x01, 0x01, 0x30
32846 : };
32847 : return expand_rtx (expand_encoding, operands);
32848 : }
32849 :
32850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29576 */
32851 : rtx
32852 : gen_maskloadv4div4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32853 : {
32854 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32855 : start_sequence ();
32856 : {
32857 : #define FAIL _Pragma ("GCC error \"maskloadv4div4di cannot FAIL\"") (void)0
32858 : #define DONE return end_sequence ()
32859 : #line 29584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32860 : {
32861 : emit_insn (gen_maskloadv4div4di_1 (operands[0],
32862 : operands[1],
32863 : operands[2]));
32864 : DONE;
32865 : }
32866 : #undef DONE
32867 : #undef FAIL
32868 : }
32869 : static const uint8_t expand_encoding[] = {
32870 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01,
32871 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x30
32872 : };
32873 : return complete_seq (expand_encoding, operands);
32874 : }
32875 :
32876 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29591 */
32877 : rtx
32878 : gen_maskloadv2diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32879 : {
32880 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32881 : static const uint8_t expand_encoding[] = {
32882 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
32883 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32884 : 0x02
32885 : };
32886 : return expand_rtx (expand_encoding, operands);
32887 : }
32888 :
32889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29601 */
32890 : rtx
32891 : gen_maskloadv32hisi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32892 : {
32893 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32894 : static const uint8_t expand_encoding[] = {
32895 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
32896 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32897 : 0x02
32898 : };
32899 : return expand_rtx (expand_encoding, operands);
32900 : }
32901 :
32902 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29611 */
32903 : rtx
32904 : gen_maskstorev2dfv2di (const rtx operand0, const rtx operand1, const rtx operand2)
32905 : {
32906 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32907 : static const uint8_t expand_encoding[] = {
32908 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x02,
32909 : 0x01, 0x01, 0x01, 0x00, 0x30
32910 : };
32911 : return expand_rtx (expand_encoding, operands);
32912 : }
32913 :
32914 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29620 */
32915 : rtx
32916 : gen_maskstorev8siqi (const rtx operand0, const rtx operand1, const rtx operand2)
32917 : {
32918 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32919 : static const uint8_t expand_encoding[] = {
32920 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
32921 : 0x01, 0x00, 0x01, 0x02, 0x30
32922 : };
32923 : return expand_rtx (expand_encoding, operands);
32924 : }
32925 :
32926 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29620 */
32927 : rtx
32928 : gen_maskstorev2dfqi (const rtx operand0, const rtx operand1, const rtx operand2)
32929 : {
32930 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32931 : static const uint8_t expand_encoding[] = {
32932 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
32933 : 0x01, 0x00, 0x01, 0x02, 0x30
32934 : };
32935 : return expand_rtx (expand_encoding, operands);
32936 : }
32937 :
32938 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29629 */
32939 : rtx
32940 : gen_maskstorev32bfsi (const rtx operand0, const rtx operand1, const rtx operand2)
32941 : {
32942 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32943 : static const uint8_t expand_encoding[] = {
32944 : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x03, 0x01, 0x01,
32945 : 0x01, 0x00, 0x01, 0x02, 0x30
32946 : };
32947 : return expand_rtx (expand_encoding, operands);
32948 : }
32949 :
32950 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
32951 : extern rtx_insn *gen_split_3850 (rtx_insn *, rtx *);
32952 : rtx_insn *
32953 : gen_split_3850 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32954 : {
32955 : if (dump_file)
32956 : fprintf (dump_file, "Splitting with gen_split_3850 (sse.md:29681)\n");
32957 : start_sequence ();
32958 : #define FAIL return (end_sequence (), nullptr)
32959 : #define DONE return end_sequence ()
32960 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32961 : {
32962 : if (constm1_operand (operands[2], V8SImode))
32963 : emit_move_insn (operands[0], operands[1]);
32964 : else
32965 : emit_note (NOTE_INSN_DELETED);
32966 :
32967 : DONE;
32968 : }
32969 : #undef DONE
32970 : #undef FAIL
32971 : static const uint8_t expand_encoding[] = {
32972 : 0x01, 0x27, 0x00
32973 : };
32974 : return complete_seq (expand_encoding, operands);
32975 : }
32976 :
32977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
32978 : extern rtx_insn *gen_split_3860 (rtx_insn *, rtx *);
32979 : rtx_insn *
32980 : gen_split_3860 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32981 : {
32982 : if (dump_file)
32983 : fprintf (dump_file, "Splitting with gen_split_3860 (sse.md:29681)\n");
32984 : start_sequence ();
32985 : #define FAIL return (end_sequence (), nullptr)
32986 : #define DONE return end_sequence ()
32987 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32988 : {
32989 : if (constm1_operand (operands[2], V8BFmode))
32990 : emit_move_insn (operands[0], operands[1]);
32991 : else
32992 : emit_note (NOTE_INSN_DELETED);
32993 :
32994 : DONE;
32995 : }
32996 : #undef DONE
32997 : #undef FAIL
32998 : static const uint8_t expand_encoding[] = {
32999 : 0x01, 0x27, 0x00
33000 : };
33001 : return complete_seq (expand_encoding, operands);
33002 : }
33003 :
33004 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29701 */
33005 : rtx
33006 : gen_cbranchv32hi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33007 : {
33008 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33009 : start_sequence ();
33010 : {
33011 : #define FAIL return (end_sequence (), nullptr)
33012 : #define DONE return end_sequence ()
33013 : #line 29711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33014 : {
33015 : ix86_expand_branch (GET_CODE (operands[0]),
33016 : operands[1], operands[2], operands[3]);
33017 : DONE;
33018 : }
33019 : #undef DONE
33020 : #undef FAIL
33021 : }
33022 : static const uint8_t expand_encoding[] = {
33023 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
33024 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
33025 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
33026 : 0x00, 0x01, 0x03, 0x2f
33027 : };
33028 : return complete_seq (expand_encoding, operands);
33029 : }
33030 :
33031 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29718 */
33032 : extern rtx_insn *gen_split_3868 (rtx_insn *, rtx *);
33033 : rtx_insn *
33034 : gen_split_3868 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33035 : {
33036 : if (dump_file)
33037 : fprintf (dump_file, "Splitting with gen_split_3868 (sse.md:29718)\n");
33038 : start_sequence ();
33039 : #define FAIL return (end_sequence (), nullptr)
33040 : #define DONE return end_sequence ()
33041 : #line 29727 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33042 : {
33043 : if (REG_P (operands[0]))
33044 : operands[0] = gen_lowpart (V4SFmode, operands[0]);
33045 : else
33046 : operands[1] = lowpart_subreg (V8SFmode, operands[1],
33047 : V4SFmode);
33048 : }
33049 : #undef DONE
33050 : #undef FAIL
33051 : static const uint8_t expand_encoding[] = {
33052 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
33053 : };
33054 : return complete_seq (expand_encoding, operands);
33055 : }
33056 :
33057 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33058 : rtx
33059 : gen_vec_initv8didi (const rtx operand0, const rtx operand1)
33060 : {
33061 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33062 : start_sequence ();
33063 : {
33064 : #define FAIL return (end_sequence (), nullptr)
33065 : #define DONE return end_sequence ()
33066 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33067 : {
33068 : ix86_expand_vector_init (false, operands[0], operands[1]);
33069 : DONE;
33070 : }
33071 : #undef DONE
33072 : #undef FAIL
33073 : }
33074 : static const uint8_t expand_encoding[] = {
33075 : 0x02, 0x01, 0x00, 0x01, 0x01
33076 : };
33077 : return complete_seq (expand_encoding, operands);
33078 : }
33079 :
33080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33081 : rtx
33082 : gen_vec_initv8sfsf (const rtx operand0, const rtx operand1)
33083 : {
33084 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33085 : start_sequence ();
33086 : {
33087 : #define FAIL return (end_sequence (), nullptr)
33088 : #define DONE return end_sequence ()
33089 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33090 : {
33091 : ix86_expand_vector_init (false, operands[0], operands[1]);
33092 : DONE;
33093 : }
33094 : #undef DONE
33095 : #undef FAIL
33096 : }
33097 : static const uint8_t expand_encoding[] = {
33098 : 0x02, 0x01, 0x00, 0x01, 0x01
33099 : };
33100 : return complete_seq (expand_encoding, operands);
33101 : }
33102 :
33103 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33104 : rtx
33105 : gen_vec_initv32hiv16hi (const rtx operand0, const rtx operand1)
33106 : {
33107 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33108 : start_sequence ();
33109 : {
33110 : #define FAIL return (end_sequence (), nullptr)
33111 : #define DONE return end_sequence ()
33112 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33113 : {
33114 : ix86_expand_vector_init (false, operands[0], operands[1]);
33115 : DONE;
33116 : }
33117 : #undef DONE
33118 : #undef FAIL
33119 : }
33120 : static const uint8_t expand_encoding[] = {
33121 : 0x02, 0x01, 0x00, 0x01, 0x01
33122 : };
33123 : return complete_seq (expand_encoding, operands);
33124 : }
33125 :
33126 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33127 : rtx
33128 : gen_vec_initv8hfv4hf (const rtx operand0, const rtx operand1)
33129 : {
33130 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33131 : start_sequence ();
33132 : {
33133 : #define FAIL return (end_sequence (), nullptr)
33134 : #define DONE return end_sequence ()
33135 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33136 : {
33137 : ix86_expand_vector_init (false, operands[0], operands[1]);
33138 : DONE;
33139 : }
33140 : #undef DONE
33141 : #undef FAIL
33142 : }
33143 : static const uint8_t expand_encoding[] = {
33144 : 0x02, 0x01, 0x00, 0x01, 0x01
33145 : };
33146 : return complete_seq (expand_encoding, operands);
33147 : }
33148 :
33149 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33150 : rtx
33151 : gen_cond_ashlv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33152 : {
33153 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33154 : start_sequence ();
33155 : {
33156 : #define FAIL _Pragma ("GCC error \"cond_ashlv32hi cannot FAIL\"") (void)0
33157 : #define DONE return end_sequence ()
33158 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33159 : {
33160 : if (const_vec_duplicate_p (operands[3]))
33161 : {
33162 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33163 : operands[3] = lowpart_subreg (DImode, operands[3], HImode);
33164 : emit_insn (gen_ashlv32hi3_mask (operands[0],
33165 : operands[2],
33166 : operands[3],
33167 : operands[4],
33168 : operands[1]));
33169 : }
33170 : else
33171 : emit_insn (gen_avx512bw_ashlvv32hi_mask (operands[0],
33172 : operands[2],
33173 : operands[3],
33174 : operands[4],
33175 : operands[1]));
33176 : DONE;
33177 : }
33178 : #undef DONE
33179 : #undef FAIL
33180 : }
33181 : static const uint8_t expand_encoding[] = {
33182 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x4d,
33183 : 0x5a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33184 : 0x01
33185 : };
33186 : return complete_seq (expand_encoding, operands);
33187 : }
33188 :
33189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33190 : rtx
33191 : gen_cond_lshrv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33192 : {
33193 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33194 : start_sequence ();
33195 : {
33196 : #define FAIL return (end_sequence (), nullptr)
33197 : #define DONE return end_sequence ()
33198 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33199 : {
33200 : if (const_vec_duplicate_p (operands[3]))
33201 : {
33202 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33203 : operands[3] = lowpart_subreg (DImode, operands[3], SImode);
33204 : emit_insn (gen_lshrv16si3_mask (operands[0],
33205 : operands[2],
33206 : operands[3],
33207 : operands[4],
33208 : operands[1]));
33209 : }
33210 : else
33211 : emit_insn (gen_avx512f_lshrvv16si_mask (operands[0],
33212 : operands[2],
33213 : operands[3],
33214 : operands[4],
33215 : operands[1]));
33216 : DONE;
33217 : }
33218 : #undef DONE
33219 : #undef FAIL
33220 : }
33221 : static const uint8_t expand_encoding[] = {
33222 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x50,
33223 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33224 : 0x01
33225 : };
33226 : return complete_seq (expand_encoding, operands);
33227 : }
33228 :
33229 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33230 : rtx
33231 : gen_cond_ashrv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33232 : {
33233 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33234 : start_sequence ();
33235 : {
33236 : #define FAIL return (end_sequence (), nullptr)
33237 : #define DONE return end_sequence ()
33238 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33239 : {
33240 : if (const_vec_duplicate_p (operands[3]))
33241 : {
33242 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33243 : operands[3] = lowpart_subreg (DImode, operands[3], DImode);
33244 : emit_insn (gen_ashrv8di3_mask (operands[0],
33245 : operands[2],
33246 : operands[3],
33247 : operands[4],
33248 : operands[1]));
33249 : }
33250 : else
33251 : emit_insn (gen_avx512f_ashrvv8di_mask (operands[0],
33252 : operands[2],
33253 : operands[3],
33254 : operands[4],
33255 : operands[1]));
33256 : DONE;
33257 : }
33258 : #undef DONE
33259 : #undef FAIL
33260 : }
33261 : static const uint8_t expand_encoding[] = {
33262 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4f,
33263 : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33264 : 0x01
33265 : };
33266 : return complete_seq (expand_encoding, operands);
33267 : }
33268 :
33269 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33270 : extern rtx_insn *gen_split_3873 (rtx_insn *, rtx *);
33271 : rtx_insn *
33272 : gen_split_3873 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33273 : {
33274 : if (dump_file)
33275 : fprintf (dump_file, "Splitting with gen_split_3873 (sse.md:29963)\n");
33276 : start_sequence ();
33277 : #define FAIL return (end_sequence (), nullptr)
33278 : #define DONE return end_sequence ()
33279 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33280 : {
33281 : operands[1] = gen_lowpart (V16HImode, operands[1]);
33282 : operands[5] = CONST0_RTX (V16HImode);
33283 : }
33284 : #undef DONE
33285 : #undef FAIL
33286 : static const uint8_t expand_encoding[] = {
33287 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x5a, 0x01,
33288 : 0x01, 0x01, 0x05
33289 : };
33290 : return complete_seq (expand_encoding, operands);
33291 : }
33292 :
33293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33294 : extern rtx_insn *gen_split_3883 (rtx_insn *, rtx *);
33295 : rtx_insn *
33296 : gen_split_3883 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33297 : {
33298 : if (dump_file)
33299 : fprintf (dump_file, "Splitting with gen_split_3883 (sse.md:29963)\n");
33300 : start_sequence ();
33301 : #define FAIL return (end_sequence (), nullptr)
33302 : #define DONE return end_sequence ()
33303 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33304 : {
33305 : operands[1] = gen_lowpart (V8HFmode, operands[1]);
33306 : operands[5] = CONST0_RTX (V8HFmode);
33307 : }
33308 : #undef DONE
33309 : #undef FAIL
33310 : static const uint8_t expand_encoding[] = {
33311 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6e, 0x01,
33312 : 0x01, 0x01, 0x05
33313 : };
33314 : return complete_seq (expand_encoding, operands);
33315 : }
33316 :
33317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33318 : extern rtx_insn *gen_split_3893 (rtx_insn *, rtx *);
33319 : rtx_insn *
33320 : gen_split_3893 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33321 : {
33322 : if (dump_file)
33323 : fprintf (dump_file, "Splitting with gen_split_3893 (sse.md:29963)\n");
33324 : start_sequence ();
33325 : #define FAIL return (end_sequence (), nullptr)
33326 : #define DONE return end_sequence ()
33327 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33328 : {
33329 : operands[1] = gen_lowpart (DFmode, operands[1]);
33330 : operands[5] = CONST0_RTX (DFmode);
33331 : }
33332 : #undef DONE
33333 : #undef FAIL
33334 : static const uint8_t expand_encoding[] = {
33335 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6c, 0x01,
33336 : 0x01, 0x01, 0x05
33337 : };
33338 : return complete_seq (expand_encoding, operands);
33339 : }
33340 :
33341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30168 */
33342 : rtx
33343 : gen_avx2_gathersiv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33344 : {
33345 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33346 : start_sequence ();
33347 : {
33348 : #define FAIL return (end_sequence (), nullptr)
33349 : #define DONE return end_sequence ()
33350 : #line 30183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33351 : {
33352 : operands[6]
33353 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33354 : operands[5]), UNSPEC_VSIBADDR);
33355 : }
33356 : #undef DONE
33357 : #undef FAIL
33358 : }
33359 : static const uint8_t expand_encoding[] = {
33360 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33361 : 0x56, 0x04, 0x01, 0x01, 0x36, 0x11, 0x04, 0x06,
33362 : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33363 : 0x21, 0x00, 0x31, 0x56
33364 : };
33365 : return complete_seq (expand_encoding, operands);
33366 : }
33367 :
33368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30346 */
33369 : rtx
33370 : gen_avx512f_gathersiv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33371 : {
33372 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33373 : start_sequence ();
33374 : {
33375 : #define FAIL return (end_sequence (), nullptr)
33376 : #define DONE return end_sequence ()
33377 : #line 30359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33378 : {
33379 : operands[6]
33380 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33381 : operands[5]), UNSPEC_VSIBADDR);
33382 : }
33383 : #undef DONE
33384 : #undef FAIL
33385 : }
33386 : static const uint8_t expand_encoding[] = {
33387 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33388 : 0x5b, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x11,
33389 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x10
33390 : };
33391 : return complete_seq (expand_encoding, operands);
33392 : }
33393 :
33394 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30346 */
33395 : rtx
33396 : gen_avx512vl_gathersiv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33397 : {
33398 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33399 : start_sequence ();
33400 : {
33401 : #define FAIL return (end_sequence (), nullptr)
33402 : #define DONE return end_sequence ()
33403 : #line 30359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33404 : {
33405 : operands[6]
33406 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33407 : operands[5]), UNSPEC_VSIBADDR);
33408 : }
33409 : #undef DONE
33410 : #undef FAIL
33411 : }
33412 : static const uint8_t expand_encoding[] = {
33413 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33414 : 0x52, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x12,
33415 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33416 : };
33417 : return complete_seq (expand_encoding, operands);
33418 : }
33419 :
33420 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30408 */
33421 : rtx
33422 : gen_avx512vl_gatherdiv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33423 : {
33424 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33425 : start_sequence ();
33426 : {
33427 : #define FAIL return (end_sequence (), nullptr)
33428 : #define DONE return end_sequence ()
33429 : #line 30421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33430 : {
33431 : operands[6]
33432 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33433 : operands[5]), UNSPEC_VSIBADDR);
33434 : }
33435 : #undef DONE
33436 : #undef FAIL
33437 : }
33438 : static const uint8_t expand_encoding[] = {
33439 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33440 : 0x51, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x11,
33441 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33442 : };
33443 : return complete_seq (expand_encoding, operands);
33444 : }
33445 :
33446 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30478 */
33447 : rtx
33448 : gen_avx512vl_scattersiv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33449 : {
33450 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33451 : start_sequence ();
33452 : {
33453 : #define FAIL return (end_sequence (), nullptr)
33454 : #define DONE return end_sequence ()
33455 : #line 30490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33456 : {
33457 : operands[5]
33458 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33459 : operands[4], operands[1]),
33460 : UNSPEC_VSIBADDR);
33461 : }
33462 : #undef DONE
33463 : #undef FAIL
33464 : }
33465 : static const uint8_t expand_encoding[] = {
33466 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x57, 0x04,
33467 : 0x05, 0x1a, 0x57, 0x02, 0x01, 0x01, 0x01, 0x03,
33468 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33469 : };
33470 : return complete_seq (expand_encoding, operands);
33471 : }
33472 :
33473 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30518 */
33474 : rtx
33475 : gen_avx512vl_scatterdiv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33476 : {
33477 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33478 : start_sequence ();
33479 : {
33480 : #define FAIL return (end_sequence (), nullptr)
33481 : #define DONE return end_sequence ()
33482 : #line 30530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33483 : {
33484 : operands[5]
33485 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33486 : operands[4], operands[1]),
33487 : UNSPEC_VSIBADDR);
33488 : }
33489 : #undef DONE
33490 : #undef FAIL
33491 : }
33492 : static const uint8_t expand_encoding[] = {
33493 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x56, 0x04,
33494 : 0x05, 0x1a, 0x56, 0x02, 0x01, 0x01, 0x01, 0x03,
33495 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33496 : };
33497 : return complete_seq (expand_encoding, operands);
33498 : }
33499 :
33500 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30616 */
33501 : rtx
33502 : gen_avx512f_expandv8di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33503 : {
33504 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33505 : start_sequence ();
33506 : {
33507 : #define FAIL return (end_sequence (), nullptr)
33508 : #define DONE return end_sequence ()
33509 : #line 30624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33510 : operands[2] = CONST0_RTX (V8DImode);
33511 : #undef DONE
33512 : #undef FAIL
33513 : }
33514 : static const uint8_t expand_encoding[] = {
33515 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01,
33516 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33517 : };
33518 : return complete_seq (expand_encoding, operands);
33519 : }
33520 :
33521 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33522 : extern rtx_insn *gen_split_3894 (rtx_insn *, rtx *);
33523 : rtx_insn *
33524 : gen_split_3894 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33525 : {
33526 : if (dump_file)
33527 : fprintf (dump_file, "Splitting with gen_split_3894 (sse.md:30656)\n");
33528 : start_sequence ();
33529 : #define FAIL return (end_sequence (), nullptr)
33530 : #define DONE return end_sequence ()
33531 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33532 : {
33533 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33534 : bool has_zero = false;
33535 : unsigned n = GET_MODE_NUNITS (V16SImode), i;
33536 : unsigned ones = 0;
33537 :
33538 : /* If all ones bits is in mask's lower part,
33539 : get number of ones and assign it to ONES. */
33540 : for (i = 0; i != n; i++)
33541 : {
33542 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33543 : break;
33544 :
33545 : /* Record first zero bit. */
33546 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33547 : {
33548 : has_zero = true;
33549 : ones = i;
33550 : }
33551 : }
33552 :
33553 : if (!has_zero)
33554 : ones = n;
33555 :
33556 : if (i != n || (ones != 0 && ones != n))
33557 : {
33558 : rtx reg = gen_reg_rtx (HImode);
33559 : emit_move_insn (reg, operands[3]);
33560 : enum insn_code icode;
33561 : if (i == n)
33562 : /* For masks with all one bits in it's lower part,
33563 : we can transform v{,p}expand* to vmovdq* with
33564 : mask operand. */
33565 : icode = CODE_FOR_avx512f_loadv16si_mask;
33566 : else
33567 : icode = CODE_FOR_expandv16si_mask;
33568 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33569 : }
33570 : else
33571 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33572 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33573 : DONE;
33574 : }
33575 : #undef DONE
33576 : #undef FAIL
33577 : static const uint8_t expand_encoding[] = {
33578 : 0x01, 0x27, 0x00
33579 : };
33580 : return complete_seq (expand_encoding, operands);
33581 : }
33582 :
33583 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33584 : extern rtx_insn *gen_split_3904 (rtx_insn *, rtx *);
33585 : rtx_insn *
33586 : gen_split_3904 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33587 : {
33588 : if (dump_file)
33589 : fprintf (dump_file, "Splitting with gen_split_3904 (sse.md:30656)\n");
33590 : start_sequence ();
33591 : #define FAIL return (end_sequence (), nullptr)
33592 : #define DONE return end_sequence ()
33593 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33594 : {
33595 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33596 : bool has_zero = false;
33597 : unsigned n = GET_MODE_NUNITS (V2DImode), i;
33598 : unsigned ones = 0;
33599 :
33600 : /* If all ones bits is in mask's lower part,
33601 : get number of ones and assign it to ONES. */
33602 : for (i = 0; i != n; i++)
33603 : {
33604 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33605 : break;
33606 :
33607 : /* Record first zero bit. */
33608 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33609 : {
33610 : has_zero = true;
33611 : ones = i;
33612 : }
33613 : }
33614 :
33615 : if (!has_zero)
33616 : ones = n;
33617 :
33618 : if (i != n || (ones != 0 && ones != n))
33619 : {
33620 : rtx reg = gen_reg_rtx (QImode);
33621 : emit_move_insn (reg, operands[3]);
33622 : enum insn_code icode;
33623 : if (i == n)
33624 : /* For masks with all one bits in it's lower part,
33625 : we can transform v{,p}expand* to vmovdq* with
33626 : mask operand. */
33627 : icode = CODE_FOR_avx512vl_loadv2di_mask;
33628 : else
33629 : icode = CODE_FOR_expandv2di_mask;
33630 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33631 : }
33632 : else
33633 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33634 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33635 : DONE;
33636 : }
33637 : #undef DONE
33638 : #undef FAIL
33639 : static const uint8_t expand_encoding[] = {
33640 : 0x01, 0x27, 0x00
33641 : };
33642 : return complete_seq (expand_encoding, operands);
33643 : }
33644 :
33645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30712 */
33646 : rtx
33647 : gen_expandv16hi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33648 : {
33649 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33650 : start_sequence ();
33651 : {
33652 : #define FAIL return (end_sequence (), nullptr)
33653 : #define DONE return end_sequence ()
33654 : #line 30720 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33655 : operands[2] = CONST0_RTX (V16HImode);
33656 : #undef DONE
33657 : #undef FAIL
33658 : }
33659 : static const uint8_t expand_encoding[] = {
33660 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x03, 0x01,
33661 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33662 : };
33663 : return complete_seq (expand_encoding, operands);
33664 : }
33665 :
33666 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31094 */
33667 : rtx
33668 : gen_vpmadd52huqv2di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33669 : {
33670 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33671 : start_sequence ();
33672 : {
33673 : #define FAIL return (end_sequence (), nullptr)
33674 : #define DONE return end_sequence ()
33675 : #line 31101 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33676 : {
33677 : emit_insn (gen_vpmadd52huqv2di_maskz_1 (
33678 : operands[0], operands[1], operands[2], operands[3],
33679 : CONST0_RTX (V2DImode), operands[4]));
33680 : DONE;
33681 : }
33682 : #undef DONE
33683 : #undef FAIL
33684 : }
33685 : static const uint8_t expand_encoding[] = {
33686 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33687 : 0x03, 0x01, 0x04
33688 : };
33689 : return complete_seq (expand_encoding, operands);
33690 : }
33691 :
33692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31250 */
33693 : rtx
33694 : gen_popcountv16hi2 (const rtx operand0, const rtx operand1)
33695 : {
33696 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33697 : static const uint8_t expand_encoding[] = {
33698 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x55, 0x01, 0x01
33699 : };
33700 : return expand_rtx (expand_encoding, operands);
33701 : }
33702 :
33703 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31362 */
33704 : rtx
33705 : gen_vpshrdv_v2di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33706 : {
33707 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33708 : start_sequence ();
33709 : {
33710 : #define FAIL return (end_sequence (), nullptr)
33711 : #define DONE return end_sequence ()
33712 : #line 31369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33713 : {
33714 : emit_insn (gen_vpshrdv_v2di_maskz_1 (operands[0], operands[1],
33715 : operands[2], operands[3],
33716 : CONST0_RTX (V2DImode),
33717 : operands[4]));
33718 : DONE;
33719 : }
33720 : #undef DONE
33721 : #undef FAIL
33722 : }
33723 : static const uint8_t expand_encoding[] = {
33724 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33725 : 0x03, 0x01, 0x04
33726 : };
33727 : return complete_seq (expand_encoding, operands);
33728 : }
33729 :
33730 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31449 */
33731 : rtx
33732 : gen_usdot_prodv16siv64qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33733 : {
33734 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33735 : start_sequence ();
33736 : {
33737 : #define FAIL return (end_sequence (), nullptr)
33738 : #define DONE return end_sequence ()
33739 : #line 31455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33740 : {
33741 : if (64 == 64
33742 : ? TARGET_AVX512VNNI
33743 : : ((TARGET_AVX512VNNI && TARGET_AVX512VL) || TARGET_AVXVNNI))
33744 : {
33745 : operands[1] = lowpart_subreg (V16SImode,
33746 : force_reg (V64QImode, operands[1]),
33747 : V64QImode);
33748 : operands[2] = lowpart_subreg (V16SImode,
33749 : force_reg (V64QImode, operands[2]),
33750 : V64QImode);
33751 : emit_insn (gen_vpdpbusd_v16si (operands[0], operands[3],
33752 : operands[1], operands[2]));
33753 : }
33754 : else
33755 : {
33756 : /* Emulate with vpdpwssd. */
33757 : rtx op1_lo = gen_reg_rtx (V32HImode);
33758 : rtx op1_hi = gen_reg_rtx (V32HImode);
33759 : rtx op2_lo = gen_reg_rtx (V32HImode);
33760 : rtx op2_hi = gen_reg_rtx (V32HImode);
33761 :
33762 : emit_insn (gen_vec_unpacku_lo_v64qi (op1_lo, operands[1]));
33763 : emit_insn (gen_vec_unpacks_lo_v64qi (op2_lo, operands[2]));
33764 : emit_insn (gen_vec_unpacku_hi_v64qi (op1_hi, operands[1]));
33765 : emit_insn (gen_vec_unpacks_hi_v64qi (op2_hi, operands[2]));
33766 :
33767 : rtx res1 = gen_reg_rtx (V16SImode);
33768 : rtx res2 = gen_reg_rtx (V16SImode);
33769 : rtx sum = gen_reg_rtx (V16SImode);
33770 :
33771 : emit_move_insn (sum, CONST0_RTX (V16SImode));
33772 : emit_insn (gen_sdot_prodv16siv32hi (res1,
33773 : op1_lo, op2_lo, sum));
33774 : emit_insn (gen_sdot_prodv16siv32hi (res2,
33775 : op1_hi, op2_hi,
33776 : operands[3]));
33777 : emit_insn (gen_addv16si3 (operands[0], res1, res2));
33778 : }
33779 : DONE;
33780 : }
33781 : #undef DONE
33782 : #undef FAIL
33783 : }
33784 : static const uint8_t expand_encoding[] = {
33785 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33786 : 0x03
33787 : };
33788 : return complete_seq (expand_encoding, operands);
33789 : }
33790 :
33791 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31885 */
33792 : extern rtx_insn *gen_split_3919 (rtx_insn *, rtx *);
33793 : rtx_insn *
33794 : gen_split_3919 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33795 : {
33796 : if (dump_file)
33797 : fprintf (dump_file, "Splitting with gen_split_3919 (sse.md:31885)\n");
33798 : start_sequence ();
33799 : #define FAIL return (end_sequence (), nullptr)
33800 : #define DONE return end_sequence ()
33801 : #line 31894 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33802 : {
33803 : split_double_mode (P2HImode, &operands[0], 2, &operands[0], &operands[2]);
33804 : }
33805 : #undef DONE
33806 : #undef FAIL
33807 : static const uint8_t expand_encoding[] = {
33808 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1f, 0x01,
33809 : 0x02, 0x01, 0x03
33810 : };
33811 : return complete_seq (expand_encoding, operands);
33812 : }
33813 :
33814 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32051 */
33815 : rtx
33816 : gen_truncv8sfv8bf2 (const rtx operand0, const rtx operand1)
33817 : {
33818 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33819 : start_sequence ();
33820 : {
33821 : #define FAIL return (end_sequence (), nullptr)
33822 : #define DONE return end_sequence ()
33823 : #line 32059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33824 : {
33825 : if (!TARGET_AVXNECONVERT
33826 : && !(TARGET_AVX512BF16 && TARGET_AVX512VL))
33827 : {
33828 : ix86_expand_vector_sf2bf_with_vec_perm (operands[0], operands[1]);
33829 : DONE;
33830 : }
33831 : }
33832 : #undef DONE
33833 : #undef FAIL
33834 : }
33835 : static const uint8_t expand_encoding[] = {
33836 : 0x01, 0x1f, 0x01, 0x00, 0x72, 0x69, 0x01, 0x01
33837 : };
33838 : return complete_seq (expand_encoding, operands);
33839 : }
33840 :
33841 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32312 */
33842 : rtx
33843 : gen_aesdecwide128klu8 (const rtx operand0)
33844 : {
33845 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0 };
33846 : start_sequence ();
33847 : {
33848 : #define FAIL return (end_sequence (), nullptr)
33849 : #define DONE return end_sequence ()
33850 : #line 32319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33851 : {
33852 : rtx tmp_unspec;
33853 : unsigned i;
33854 :
33855 : /* parallel rtx for widekl predicate */
33856 : operands[1] = gen_rtx_PARALLEL (VOIDmode, rtvec_alloc (9));
33857 :
33858 : tmp_unspec
33859 : = gen_rtx_UNSPEC_VOLATILE (CCZmode,
33860 : gen_rtvec (1, operands[0]),
33861 : UNSPECV_AESDECWIDE128KLU8);
33862 :
33863 : XVECEXP (operands[1], 0, 0)
33864 : = gen_rtx_SET (gen_rtx_REG (CCZmode, FLAGS_REG),
33865 : tmp_unspec);
33866 :
33867 : for (i = 0; i < 8; i++)
33868 : {
33869 : rtx xmm_reg = gen_rtx_REG (V2DImode, GET_SSE_REGNO (i));
33870 :
33871 : tmp_unspec
33872 : = gen_rtx_UNSPEC_VOLATILE (V2DImode,
33873 : gen_rtvec (1, xmm_reg),
33874 : UNSPECV_AESDECWIDE128KLU8);
33875 : XVECEXP (operands[1], 0, i + 1)
33876 : = gen_rtx_SET (xmm_reg, tmp_unspec);
33877 : }
33878 : }
33879 : #undef DONE
33880 : #undef FAIL
33881 : }
33882 : static const uint8_t expand_encoding[] = {
33883 : 0x01, 0x04, 0x01
33884 : };
33885 : return complete_seq (expand_encoding, operands);
33886 : }
33887 :
33888 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32376 */
33889 : rtx
33890 : gen_vec_duplicatev8hi (const rtx operand0, const rtx operand1)
33891 : {
33892 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33893 : start_sequence ();
33894 : {
33895 : #define FAIL return (end_sequence (), nullptr)
33896 : #define DONE return end_sequence ()
33897 : #line 32381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33898 : {
33899 : if (!ix86_expand_vector_init_duplicate (false,
33900 : GET_MODE (operands[0]),
33901 : operands[0],
33902 : operands[1]))
33903 : gcc_unreachable ();
33904 : DONE;
33905 : }
33906 : #undef DONE
33907 : #undef FAIL
33908 : }
33909 : static const uint8_t expand_encoding[] = {
33910 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x50, 0x01,
33911 : 0x01
33912 : };
33913 : return complete_seq (expand_encoding, operands);
33914 : }
33915 :
33916 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32451 */
33917 : rtx
33918 : gen_udot_prodv16siv64qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33919 : {
33920 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33921 : start_sequence ();
33922 : {
33923 : #define FAIL return (end_sequence (), nullptr)
33924 : #define DONE return end_sequence ()
33925 : #line 32457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33926 : {
33927 : if ((64 == 64 && TARGET_AVX10_2)
33928 : || (64 < 64 && (TARGET_AVXVNNIINT8 || TARGET_AVX10_2)))
33929 : {
33930 : operands[1] = lowpart_subreg (V16SImode,
33931 : force_reg (V64QImode, operands[1]),
33932 : V64QImode);
33933 : operands[2] = lowpart_subreg (V16SImode,
33934 : force_reg (V64QImode, operands[2]),
33935 : V64QImode);
33936 : emit_insn (gen_vpdpbuud_v16si (operands[0], operands[3],
33937 : operands[1], operands[2]));
33938 : }
33939 : else
33940 : {
33941 : /* Emulate with vpdpwssd. */
33942 : rtx op1_lo = gen_reg_rtx (V32HImode);
33943 : rtx op1_hi = gen_reg_rtx (V32HImode);
33944 : rtx op2_lo = gen_reg_rtx (V32HImode);
33945 : rtx op2_hi = gen_reg_rtx (V32HImode);
33946 :
33947 : emit_insn (gen_vec_unpacku_lo_v64qi (op1_lo, operands[1]));
33948 : emit_insn (gen_vec_unpacku_lo_v64qi (op2_lo, operands[2]));
33949 : emit_insn (gen_vec_unpacku_hi_v64qi (op1_hi, operands[1]));
33950 : emit_insn (gen_vec_unpacku_hi_v64qi (op2_hi, operands[2]));
33951 :
33952 : rtx res1 = gen_reg_rtx (V16SImode);
33953 : rtx res2 = gen_reg_rtx (V16SImode);
33954 : rtx sum = gen_reg_rtx (V16SImode);
33955 :
33956 : emit_move_insn (sum, CONST0_RTX (V16SImode));
33957 : emit_insn (gen_sdot_prodv16siv32hi (res1,
33958 : op1_lo, op2_lo, sum));
33959 : emit_insn (gen_sdot_prodv16siv32hi (res2,
33960 : op1_hi, op2_hi,
33961 : operands[3]));
33962 : emit_insn (gen_addv16si3 (operands[0], res1, res2));
33963 : }
33964 :
33965 : DONE;
33966 : }
33967 : #undef DONE
33968 : #undef FAIL
33969 : }
33970 : static const uint8_t expand_encoding[] = {
33971 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33972 : 0x03
33973 : };
33974 : return complete_seq (expand_encoding, operands);
33975 : }
33976 :
33977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32535 */
33978 : rtx
33979 : gen_vpdpbsuds_v4si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33980 : {
33981 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33982 : start_sequence ();
33983 : {
33984 : #define FAIL return (end_sequence (), nullptr)
33985 : #define DONE return end_sequence ()
33986 : #line 32546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33987 : operands[5] = CONST0_RTX (V4SImode);
33988 : #undef DONE
33989 : #undef FAIL
33990 : }
33991 : static const uint8_t expand_encoding[] = {
33992 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a,
33993 : 0x51, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
33994 : 0x81, 0x67, 0x01, 0x05, 0x01, 0x04
33995 : };
33996 : return complete_seq (expand_encoding, operands);
33997 : }
33998 :
33999 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32717 */
34000 : rtx
34001 : gen_vcvtbiasph2hf8sv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34002 : {
34003 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34004 : start_sequence ();
34005 : {
34006 : #define FAIL return (end_sequence (), nullptr)
34007 : #define DONE return end_sequence ()
34008 : #line 32734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34009 : operands[5] = CONST0_RTX (V8QImode);
34010 : #undef DONE
34011 : #undef FAIL
34012 : }
34013 : static const uint8_t expand_encoding[] = {
34014 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81,
34015 : 0x09, 0x48, 0x1a, 0x48, 0x02, 0x01, 0x01, 0x01,
34016 : 0x02, 0x81, 0x79, 0x81, 0x0a, 0x48, 0x01, 0x03,
34017 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x01, 0x27,
34018 : 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05, 0x27,
34019 : 0x06, 0x27, 0x07, 0x01, 0x04, 0x01, 0x05
34020 : };
34021 : return complete_seq (expand_encoding, operands);
34022 : }
34023 :
34024 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32893 */
34025 : rtx
34026 : gen_udot_prodv4siv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34027 : {
34028 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34029 : start_sequence ();
34030 : {
34031 : #define FAIL return (end_sequence (), nullptr)
34032 : #define DONE return end_sequence ()
34033 : #line 32899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34034 : {
34035 : operands[1] = lowpart_subreg (V4SImode,
34036 : force_reg (V8HImode, operands[1]),
34037 : V8HImode);
34038 : operands[2] = lowpart_subreg (V4SImode,
34039 : force_reg (V8HImode, operands[2]),
34040 : V8HImode);
34041 : emit_insn (gen_vpdpwuud_v4si (operands[0], operands[3],
34042 : operands[1], operands[2]));
34043 : DONE;
34044 : }
34045 : #undef DONE
34046 : #undef FAIL
34047 : }
34048 : static const uint8_t expand_encoding[] = {
34049 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34050 : 0x03
34051 : };
34052 : return complete_seq (expand_encoding, operands);
34053 : }
34054 :
34055 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32947 */
34056 : rtx
34057 : gen_vpdpwsuds_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34058 : {
34059 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34060 : start_sequence ();
34061 : {
34062 : #define FAIL return (end_sequence (), nullptr)
34063 : #define DONE return end_sequence ()
34064 : #line 32958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34065 : operands[5] = CONST0_RTX (V8SImode);
34066 : #undef DONE
34067 : #undef FAIL
34068 : }
34069 : static const uint8_t expand_encoding[] = {
34070 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
34071 : 0x56, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34072 : 0x81, 0x6d, 0x01, 0x05, 0x01, 0x04
34073 : };
34074 : return complete_seq (expand_encoding, operands);
34075 : }
34076 :
34077 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32999 */
34078 : rtx
34079 : gen_vdpphps_v8sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34080 : {
34081 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34082 : start_sequence ();
34083 : {
34084 : #define FAIL return (end_sequence (), nullptr)
34085 : #define DONE return end_sequence ()
34086 : #line 33006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34087 : {
34088 : emit_insn (gen_vdpphps_v8sf_maskz_1 (operands[0], operands[1],
34089 : operands[2], operands[3], CONST0_RTX(V8SFmode), operands[4]));
34090 : DONE;
34091 : }
34092 : #undef DONE
34093 : #undef FAIL
34094 : }
34095 : static const uint8_t expand_encoding[] = {
34096 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34097 : 0x03, 0x01, 0x04
34098 : };
34099 : return complete_seq (expand_encoding, operands);
34100 : }
34101 :
34102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33124 */
34103 : rtx
34104 : gen_avx10_2_fnmaddbf16_v8bf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34105 : {
34106 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34107 : start_sequence ();
34108 : {
34109 : #define FAIL return (end_sequence (), nullptr)
34110 : #define DONE return end_sequence ()
34111 : #line 33131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34112 : {
34113 : emit_insn (gen_avx10_2_fnmaddbf16_v8bf_maskz_1 (operands[0], operands[1],
34114 : operands[2], operands[3],
34115 : CONST0_RTX (V8BFmode),
34116 : operands[4]));
34117 : DONE;
34118 : }
34119 : #undef DONE
34120 : #undef FAIL
34121 : }
34122 : static const uint8_t expand_encoding[] = {
34123 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34124 : 0x03, 0x01, 0x04
34125 : };
34126 : return complete_seq (expand_encoding, operands);
34127 : }
34128 :
34129 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:118 */
34130 : rtx
34131 : gen_mem_thread_fence (const rtx operand0)
34132 : {
34133 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
34134 : start_sequence ();
34135 : {
34136 : #define FAIL return (end_sequence (), nullptr)
34137 : #define DONE return end_sequence ()
34138 : #line 121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34139 : {
34140 : enum memmodel model = memmodel_from_int (INTVAL (operands[0]));
34141 :
34142 : /* Unless this is a SEQ_CST fence, the i386 memory model is strong
34143 : enough not to require barriers of any kind. */
34144 : if (is_mm_seq_cst (model))
34145 : {
34146 : rtx (*mfence_insn)(rtx);
34147 : rtx mem;
34148 :
34149 : if ((TARGET_64BIT || TARGET_SSE2)
34150 : && (optimize_function_for_size_p (cfun)
34151 : || !TARGET_AVOID_MFENCE))
34152 : mfence_insn = gen_mfence_sse2;
34153 : else
34154 : mfence_insn = gen_mfence_nosse;
34155 :
34156 : mem = gen_rtx_MEM (BLKmode, gen_rtx_SCRATCH (Pmode));
34157 : MEM_VOLATILE_P (mem) = 1;
34158 :
34159 : emit_insn (mfence_insn (mem));
34160 : }
34161 : DONE;
34162 : }
34163 : #undef DONE
34164 : #undef FAIL
34165 : }
34166 : static const uint8_t expand_encoding[] = {
34167 : 0x01, 0x01, 0x00
34168 : };
34169 : return complete_seq (expand_encoding, operands);
34170 : }
34171 :
34172 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:289 */
34173 : extern rtx_insn *gen_split_3921 (rtx_insn *, rtx *);
34174 : rtx_insn *
34175 : gen_split_3921 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
34176 : {
34177 : if (dump_file)
34178 : fprintf (dump_file, "Splitting with gen_split_3921 (sync.md:289)\n");
34179 : start_sequence ();
34180 : #define FAIL return (end_sequence (), nullptr)
34181 : #define DONE return end_sequence ()
34182 : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34183 : {
34184 : rtx dst = operands[0], src = operands[1];
34185 : rtx mem = operands[2], tmp = operands[3];
34186 :
34187 : if (SSE_REG_P (src))
34188 : emit_move_insn (dst, src);
34189 : else
34190 : {
34191 : if (STACK_REG_P (tmp))
34192 : {
34193 : if (GENERAL_REG_P (src))
34194 : {
34195 : emit_move_insn (mem, src);
34196 : src = mem;
34197 : }
34198 :
34199 : emit_insn (gen_loaddi_via_fpu (tmp, src));
34200 : emit_insn (gen_storedi_via_fpu (dst, tmp));
34201 : }
34202 : else
34203 : {
34204 : rtx tmpdi = gen_lowpart (DImode, tmp);
34205 :
34206 : if (GENERAL_REG_P (src)
34207 : && !(TARGET_SSE4_1 && TARGET_INTER_UNIT_MOVES_TO_VEC))
34208 : {
34209 : emit_move_insn (mem, src);
34210 : src = mem;
34211 : }
34212 :
34213 : emit_move_insn (tmpdi, src);
34214 :
34215 : emit_insn (gen_storedi_via_sse (dst, tmp));
34216 : }
34217 : }
34218 : DONE;
34219 : }
34220 : #undef DONE
34221 : #undef FAIL
34222 : static const uint8_t expand_encoding[] = {
34223 : 0x01, 0x27, 0x00
34224 : };
34225 : return complete_seq (expand_encoding, operands);
34226 : }
34227 :
34228 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:504 */
34229 : extern rtx_insn *gen_peephole2_438 (rtx_insn *, rtx *);
34230 : rtx_insn *
34231 : gen_peephole2_438 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34232 : {
34233 : if (dump_file)
34234 : fprintf (dump_file, "Splitting with gen_peephole2_438 (sync.md:504)\n");
34235 : start_sequence ();
34236 : static const uint8_t expand_encoding[] = {
34237 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
34238 : 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x04, 0x01,
34239 : 0x02, 0x01, 0x00, 0x01, 0x03, 0x01, 0x04, 0x6d,
34240 : 0x1f, 0x01, 0x02, 0x1b, 0x12, 0x01, 0x27, 0x00,
34241 : 0x6d, 0x1f, 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01,
34242 : 0x27, 0x00, 0x6d
34243 : };
34244 : return complete_seq (expand_encoding, operands);
34245 : }
34246 :
34247 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:573 */
34248 : rtx
34249 : gen_atomic_fetch_andqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34250 : {
34251 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34252 : start_sequence ();
34253 : {
34254 : #define FAIL return (end_sequence (), nullptr)
34255 : #define DONE return end_sequence ()
34256 : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34257 : {
34258 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34259 : operands[2], AND, false,
34260 : false);
34261 : DONE;
34262 : }
34263 : #undef DONE
34264 : #undef FAIL
34265 : }
34266 : static const uint8_t expand_encoding[] = {
34267 : 0x03, 0x01, 0x00, 0x49, 0x0f, 0x01, 0x01, 0x01,
34268 : 0x02, 0x01, 0x03
34269 : };
34270 : return complete_seq (expand_encoding, operands);
34271 : }
34272 :
34273 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:587 */
34274 : rtx
34275 : gen_atomic_or_fetchqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34276 : {
34277 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34278 : start_sequence ();
34279 : {
34280 : #define FAIL return (end_sequence (), nullptr)
34281 : #define DONE return end_sequence ()
34282 : #line 594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34283 : {
34284 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34285 : operands[2], IOR, true,
34286 : false);
34287 : DONE;
34288 : }
34289 : #undef DONE
34290 : #undef FAIL
34291 : }
34292 : static const uint8_t expand_encoding[] = {
34293 : 0x03, 0x01, 0x00, 0x4a, 0x0f, 0x01, 0x01, 0x01,
34294 : 0x02, 0x01, 0x03
34295 : };
34296 : return complete_seq (expand_encoding, operands);
34297 : }
34298 :
34299 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:601 */
34300 : rtx
34301 : gen_atomic_fetch_nandsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34302 : {
34303 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34304 : start_sequence ();
34305 : {
34306 : #define FAIL return (end_sequence (), nullptr)
34307 : #define DONE return end_sequence ()
34308 : #line 607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34309 : {
34310 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34311 : operands[2], NOT, false,
34312 : false);
34313 : DONE;
34314 : }
34315 : #undef DONE
34316 : #undef FAIL
34317 : }
34318 : static const uint8_t expand_encoding[] = {
34319 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34320 : 0x03
34321 : };
34322 : return complete_seq (expand_encoding, operands);
34323 : }
34324 :
34325 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:643 */
34326 : rtx
34327 : gen_atomic_and_fetchdi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34328 : {
34329 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34330 : start_sequence ();
34331 : {
34332 : #define FAIL return (end_sequence (), nullptr)
34333 : #define DONE return end_sequence ()
34334 : #line 650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34335 : {
34336 : bool doubleword = (DImode == DImode && !TARGET_64BIT)
34337 : || (DImode == TImode);
34338 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34339 : operands[2], AND, true,
34340 : doubleword);
34341 : DONE;
34342 : }
34343 : #undef DONE
34344 : #undef FAIL
34345 : }
34346 : static const uint8_t expand_encoding[] = {
34347 : 0x03, 0x01, 0x00, 0x49, 0x12, 0x01, 0x01, 0x01,
34348 : 0x02, 0x01, 0x03
34349 : };
34350 : return complete_seq (expand_encoding, operands);
34351 : }
34352 :
34353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:709 */
34354 : extern rtx_insn *gen_peephole2_447 (rtx_insn *, rtx *);
34355 : rtx_insn *
34356 : gen_peephole2_447 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34357 : {
34358 : if (dump_file)
34359 : fprintf (dump_file, "Splitting with gen_peephole2_447 (sync.md:709)\n");
34360 : start_sequence ();
34361 : static const uint8_t expand_encoding[] = {
34362 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
34363 : 0x3a, 0x0c, 0x1b, 0x0f, 0x02, 0x01, 0x01, 0x01,
34364 : 0x04, 0x6e, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x3b,
34365 : 0x0f, 0x01, 0x01, 0x01, 0x02
34366 : };
34367 : return complete_seq (expand_encoding, operands);
34368 : }
34369 :
34370 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:738 */
34371 : extern rtx_insn *gen_peephole2_454 (rtx_insn *, rtx *);
34372 : rtx_insn *
34373 : gen_peephole2_454 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34374 : {
34375 : if (dump_file)
34376 : fprintf (dump_file, "Splitting with gen_peephole2_454 (sync.md:738)\n");
34377 : start_sequence ();
34378 : static const uint8_t expand_encoding[] = {
34379 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
34380 : 0x3a, 0x0c, 0x1b, 0x12, 0x02, 0x01, 0x01, 0x01,
34381 : 0x04, 0x6e, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x3b,
34382 : 0x12, 0x01, 0x01, 0x01, 0x02
34383 : };
34384 : return complete_seq (expand_encoding, operands);
34385 : }
34386 :
34387 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1000 */
34388 : rtx
34389 : gen_atomic_add_fetch_cmp_0qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34390 : {
34391 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34392 : start_sequence ();
34393 : {
34394 : #define FAIL return (end_sequence (), nullptr)
34395 : #define DONE return end_sequence ()
34396 : #line 1007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34397 : {
34398 : if (INTVAL (operands[4]) == GT || INTVAL (operands[4]) == LE)
34399 : FAIL;
34400 : emit_insn (gen_atomic_add_fetch_cmp_0qi_1 (operands[1],
34401 : operands[2],
34402 : operands[3]));
34403 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34404 : gen_rtx_REG (CCGOCmode, FLAGS_REG), const0_rtx);
34405 : DONE;
34406 : }
34407 : #undef DONE
34408 : #undef FAIL
34409 : }
34410 : static const uint8_t expand_encoding[] = {
34411 : 0x04, 0x01, 0x00, 0x3b, 0x0f, 0x01, 0x01, 0x01,
34412 : 0x02, 0x01, 0x03, 0x01, 0x04
34413 : };
34414 : return complete_seq (expand_encoding, operands);
34415 : }
34416 :
34417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1074 */
34418 : rtx
34419 : gen_atomic_or_fetch_cmp_0qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34420 : {
34421 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34422 : start_sequence ();
34423 : {
34424 : #define FAIL return (end_sequence (), nullptr)
34425 : #define DONE return end_sequence ()
34426 : #line 1081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34427 : {
34428 : emit_insn (gen_atomic_or_fetch_cmp_0qi_1 (operands[1], operands[2],
34429 : operands[3]));
34430 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34431 : gen_rtx_REG (CCNOmode, FLAGS_REG), const0_rtx);
34432 : DONE;
34433 : }
34434 : #undef DONE
34435 : #undef FAIL
34436 : }
34437 : static const uint8_t expand_encoding[] = {
34438 : 0x04, 0x01, 0x00, 0x4a, 0x0f, 0x01, 0x01, 0x01,
34439 : 0x02, 0x01, 0x03, 0x01, 0x04
34440 : };
34441 : return complete_seq (expand_encoding, operands);
34442 : }
34443 :
34444 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1074 */
34445 : rtx
34446 : gen_atomic_xor_fetch_cmp_0di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34447 : {
34448 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34449 : start_sequence ();
34450 : {
34451 : #define FAIL return (end_sequence (), nullptr)
34452 : #define DONE return end_sequence ()
34453 : #line 1081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34454 : {
34455 : emit_insn (gen_atomic_xor_fetch_cmp_0di_1 (operands[1], operands[2],
34456 : operands[3]));
34457 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34458 : gen_rtx_REG (CCNOmode, FLAGS_REG), const0_rtx);
34459 : DONE;
34460 : }
34461 : #undef DONE
34462 : #undef FAIL
34463 : }
34464 : static const uint8_t expand_encoding[] = {
34465 : 0x04, 0x01, 0x00, 0x4b, 0x12, 0x01, 0x01, 0x01,
34466 : 0x02, 0x01, 0x03, 0x01, 0x04
34467 : };
34468 : return complete_seq (expand_encoding, operands);
34469 : }
34470 :
|