Branch data 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:2333 */
41 : : rtx
42 : 21 : gen_popfldi1 (const rtx operand0, const rtx operand1)
43 : : {
44 : 21 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
45 : 21 : static const uint8_t expand_encoding[] = {
46 : : 0x1f, 0x01, 0x00, 0x1a, 0x02, 0x01, 0x01, 0x01,
47 : : 0x2c
48 : : };
49 : 21 : return expand_rtx (expand_encoding, operands);
50 : : }
51 : :
52 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3618 */
53 : : rtx
54 : 196 : gen_insvsi_1 (const rtx operand0, const rtx operand1)
55 : : {
56 : 196 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
57 : 196 : static const uint8_t expand_encoding[] = {
58 : : 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08,
59 : : 0x27, 0x08, 0x01, 0x01
60 : : };
61 : 196 : return expand_rtx (expand_encoding, operands);
62 : : }
63 : :
64 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4819 */
65 : : rtx
66 : 33809 : gen_zero_extendhidi2 (const rtx operand0, const rtx operand1)
67 : : {
68 : 33809 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
69 : 33809 : static const uint8_t expand_encoding[] = {
70 : : 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x01, 0x01
71 : : };
72 : 33809 : return expand_rtx (expand_encoding, operands);
73 : : }
74 : :
75 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5204 */
76 : : rtx
77 : 151401 : gen_extendqisi2 (const rtx operand0, const rtx operand1)
78 : : {
79 : 151401 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
80 : 151401 : static const uint8_t expand_encoding[] = {
81 : : 0x1f, 0x01, 0x00, 0x6e, 0x11, 0x01, 0x01
82 : : };
83 : 151401 : return expand_rtx (expand_encoding, operands);
84 : : }
85 : :
86 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5774 */
87 : : rtx
88 : 2 : gen_fix_trunchfdi2 (const rtx operand0, const rtx operand1)
89 : : {
90 : 2 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
91 : 2 : static const uint8_t expand_encoding[] = {
92 : : 0x1f, 0x01, 0x00, 0x74, 0x12, 0x01, 0x01
93 : : };
94 : 2 : return expand_rtx (expand_encoding, operands);
95 : : }
96 : :
97 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5951 */
98 : : rtx
99 : 18219 : gen_fix_truncdfdi_sse (const rtx operand0, const rtx operand1)
100 : : {
101 : 18219 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
102 : 18219 : static const uint8_t expand_encoding[] = {
103 : : 0x1f, 0x01, 0x00, 0x74, 0x12, 0x01, 0x01
104 : : };
105 : 18219 : return expand_rtx (expand_encoding, operands);
106 : : }
107 : :
108 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6068 */
109 : : rtx
110 : 1312 : gen_floathixf2 (const rtx operand0, const rtx operand1)
111 : : {
112 : 1312 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
113 : 1312 : static const uint8_t expand_encoding[] = {
114 : : 0x1f, 0x01, 0x00, 0x73, 0x2f, 0x01, 0x01
115 : : };
116 : 1312 : return expand_rtx (expand_encoding, operands);
117 : : }
118 : :
119 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6208 */
120 : : rtx
121 : 432 : gen_floatdixf2_i387_with_xmm (const rtx operand0, const rtx operand1, const rtx operand2)
122 : : {
123 : 432 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
124 : 432 : static const uint8_t expand_encoding[] = {
125 : : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x73, 0x2f,
126 : : 0x01, 0x01, 0x21, 0x00, 0x01, 0x02, 0x21, 0x00,
127 : : 0x31, 0x51, 0x21, 0x00, 0x31, 0x51
128 : : };
129 : 432 : return expand_rtx (expand_encoding, operands);
130 : : }
131 : :
132 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8464 */
133 : : rtx
134 : 0 : gen_subvhi4_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
135 : : {
136 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
137 : 0 : static const uint8_t expand_encoding[] = {
138 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11, 0x5d,
139 : : 0x09, 0x3c, 0x11, 0x6e, 0x11, 0x01, 0x01, 0x01,
140 : : 0x03, 0x6e, 0x11, 0x3c, 0x10, 0x01, 0x01, 0x01,
141 : : 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x10, 0x01, 0x01,
142 : : 0x01, 0x02
143 : : };
144 : 0 : return expand_rtx (expand_encoding, operands);
145 : : }
146 : :
147 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9496 */
148 : : rtx
149 : 0 : gen_subhi3_carry (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
150 : : {
151 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
152 : 0 : static const uint8_t expand_encoding[] = {
153 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x10,
154 : : 0x3c, 0x10, 0x01, 0x01, 0x03, 0x10, 0x04, 0x01,
155 : : 0x03, 0x27, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
156 : : };
157 : 0 : return expand_rtx (expand_encoding, operands);
158 : : }
159 : :
160 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9871 */
161 : : rtx
162 : 5118 : gen_subborrowdi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
163 : : {
164 : 5118 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
165 : 5118 : static const uint8_t expand_encoding[] = {
166 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
167 : : 0x08, 0x6f, 0x13, 0x01, 0x01, 0x3b, 0x13, 0x03,
168 : : 0x13, 0x04, 0x01, 0x03, 0x27, 0x00, 0x6f, 0x13,
169 : : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x12, 0x3c,
170 : : 0x12, 0x01, 0x01, 0x03, 0x12, 0x05, 0x01, 0x03,
171 : : 0x27, 0x00, 0x01, 0x02
172 : : };
173 : 5118 : return expand_rtx (expand_encoding, operands);
174 : : }
175 : :
176 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11915 */
177 : : rtx
178 : 1 : gen_udivmodsi4_zext_2 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
179 : : {
180 : 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
181 : 1 : static const uint8_t expand_encoding[] = {
182 : : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x01, 0x6f, 0x12,
183 : : 0x48, 0x11, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01,
184 : : 0x00, 0x47, 0x11, 0x01, 0x02, 0x01, 0x03, 0x1a,
185 : : 0x00, 0x01, 0x27, 0x00, 0x21, 0x05, 0x02, 0x11
186 : : };
187 : 1 : return expand_rtx (expand_encoding, operands);
188 : : }
189 : :
190 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15766 */
191 : : rtx
192 : 0 : gen_x86_64_shld_1_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
193 : : {
194 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
195 : 0 : static const uint8_t expand_encoding[] = {
196 : : 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x4d, 0x12, 0x01,
197 : : 0x00, 0x01, 0x02, 0x32, 0x12, 0x50, 0x13, 0x6f,
198 : : 0x13, 0x01, 0x01, 0x01, 0x03, 0x00
199 : : };
200 : 0 : return expand_rtx (expand_encoding, operands);
201 : : }
202 : :
203 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15980 */
204 : : rtx
205 : 0 : gen_x86_shld_ndd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
206 : : {
207 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
208 : 0 : static const uint8_t expand_encoding[] = {
209 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x11,
210 : : 0x4d, 0x11, 0x01, 0x01, 0x49, 0x0f, 0x01, 0x03,
211 : : 0x27, 0x1f, 0x32, 0x11, 0x50, 0x12, 0x6f, 0x12,
212 : : 0x01, 0x02, 0x3c, 0x0f, 0x27, 0x20, 0x49, 0x0f,
213 : : 0x01, 0x03, 0x27, 0x1f, 0x00, 0x05, 0x02, 0x11
214 : : };
215 : 0 : return expand_rtx (expand_encoding, operands);
216 : : }
217 : :
218 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17087 */
219 : : rtx
220 : 0 : gen_lshrdi3_doubleword_lowpart (const rtx operand0, const rtx operand1, const rtx operand2)
221 : : {
222 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
223 : 0 : static const uint8_t expand_encoding[] = {
224 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x32, 0x11,
225 : : 0x50, 0x12, 0x01, 0x01, 0x01, 0x02, 0x00, 0x05,
226 : : 0x02, 0x11
227 : : };
228 : 0 : return expand_rtx (expand_encoding, operands);
229 : : }
230 : :
231 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17171 */
232 : : rtx
233 : 0 : gen_x86_64_shrd_ndd_1_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
234 : : {
235 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
236 : 0 : static const uint8_t expand_encoding[] = {
237 : : 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x50, 0x12, 0x01,
238 : : 0x01, 0x01, 0x03, 0x32, 0x12, 0x4d, 0x13, 0x6f,
239 : : 0x13, 0x01, 0x02, 0x01, 0x04, 0x00
240 : : };
241 : 0 : return expand_rtx (expand_encoding, operands);
242 : : }
243 : :
244 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17575 */
245 : : rtx
246 : 0 : gen_ashrsi3_cvt_nf (const rtx operand0, const rtx operand1, const rtx operand2)
247 : : {
248 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
249 : 0 : static const uint8_t expand_encoding[] = {
250 : : 0x1f, 0x01, 0x00, 0x4f, 0x11, 0x01, 0x01, 0x01,
251 : : 0x02
252 : : };
253 : 0 : return expand_rtx (expand_encoding, operands);
254 : : }
255 : :
256 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18738 */
257 : : rtx
258 : 48 : gen_ix86_rotrdi3_doubleword (const rtx operand0, const rtx operand1, const rtx operand2)
259 : : {
260 : 48 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
261 : 48 : static const uint8_t expand_encoding[] = {
262 : : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x51, 0x12,
263 : : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11, 0x21,
264 : : 0x00, 0x31, 0x11
265 : : };
266 : 48 : return expand_rtx (expand_encoding, operands);
267 : : }
268 : :
269 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20023 */
270 : : rtx
271 : 199 : gen_setcc_sf_sse (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
272 : : {
273 : 199 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
274 : 199 : static const uint8_t expand_encoding[] = {
275 : : 0x1f, 0x01, 0x00, 0x03, 0x2d, 0x03, 0x01, 0x01,
276 : : 0x01, 0x02
277 : : };
278 : 199 : return expand_rtx (expand_encoding, operands);
279 : : }
280 : :
281 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21006 */
282 : : rtx
283 : 25886 : gen_simple_return_pop_internal (const rtx operand0)
284 : : {
285 : 25886 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
286 : 25886 : static const uint8_t expand_encoding[] = {
287 : : 0x17, 0x00, 0x02, 0x24, 0x20, 0x00, 0x01, 0x00
288 : : };
289 : 25886 : return expand_rtx (expand_encoding, operands);
290 : : }
291 : :
292 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21568 */
293 : : rtx
294 : 18 : gen_bsr_rex64 (const rtx operand0, const rtx operand1)
295 : : {
296 : 18 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
297 : 18 : static const uint8_t expand_encoding[] = {
298 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11, 0x3a,
299 : : 0x0c, 0x01, 0x01, 0x27, 0x00, 0x1f, 0x01, 0x00,
300 : : 0x3c, 0x12, 0x27, 0x3f, 0x81, 0x00, 0x12, 0x01,
301 : : 0x01
302 : : };
303 : 18 : return expand_rtx (expand_encoding, operands);
304 : : }
305 : :
306 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21995 */
307 : : rtx
308 : 0 : gen_tzcnt_si_nf (const rtx operand0, const rtx operand1)
309 : : {
310 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
311 : 0 : static const uint8_t expand_encoding[] = {
312 : : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
313 : : 0x62
314 : : };
315 : 0 : return expand_rtx (expand_encoding, operands);
316 : : }
317 : :
318 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22067 */
319 : : rtx
320 : 0 : gen_lzcnt_hi_nf (const rtx operand0, const rtx operand1)
321 : : {
322 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
323 : 0 : static const uint8_t expand_encoding[] = {
324 : : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x01, 0x01, 0x01,
325 : : 0x61
326 : : };
327 : 0 : return expand_rtx (expand_encoding, operands);
328 : : }
329 : :
330 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22635 */
331 : : rtx
332 : 0 : gen_popcountsi2_nf (const rtx operand0, const rtx operand1)
333 : : {
334 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
335 : 0 : static const uint8_t expand_encoding[] = {
336 : : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x11, 0x01, 0x01
337 : : };
338 : 0 : return expand_rtx (expand_encoding, operands);
339 : : }
340 : :
341 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23151 */
342 : : rtx
343 : 6 : gen_parityqi2_cmp (const rtx operand0)
344 : : {
345 : 6 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
346 : 6 : static const uint8_t expand_encoding[] = {
347 : : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x01, 0x01,
348 : : 0x00, 0x1c
349 : : };
350 : 6 : return expand_rtx (expand_encoding, operands);
351 : : }
352 : :
353 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24383 */
354 : : rtx
355 : 2 : gen_sinxf2 (const rtx operand0, const rtx operand1)
356 : : {
357 : 2 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
358 : 2 : static const uint8_t expand_encoding[] = {
359 : : 0x1f, 0x01, 0x00, 0x1a, 0x2f, 0x01, 0x01, 0x01,
360 : : 0x41
361 : : };
362 : 2 : return expand_rtx (expand_encoding, operands);
363 : : }
364 : :
365 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25020 */
366 : : rtx
367 : 17 : gen_fscalexf4_i387 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
368 : : {
369 : 17 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
370 : 17 : static const uint8_t expand_encoding[] = {
371 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
372 : : 0x02, 0x01, 0x02, 0x01, 0x03, 0x55, 0x1f, 0x01,
373 : : 0x01, 0x1a, 0x2f, 0x02, 0x01, 0x02, 0x01, 0x03,
374 : : 0x56
375 : : };
376 : 17 : return expand_rtx (expand_encoding, operands);
377 : : }
378 : :
379 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25573 */
380 : : rtx
381 : 57 : gen_frndintxf2_floor (const rtx operand0, const rtx operand1)
382 : : {
383 : 57 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
384 : 57 : static const uint8_t expand_encoding[] = {
385 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
386 : : 0x01, 0x01, 0x01, 0x4c, 0x05, 0x02, 0x11
387 : : };
388 : 57 : return expand_rtx (expand_encoding, operands);
389 : : }
390 : :
391 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25729 */
392 : : rtx
393 : 0 : gen_fisthi2_ceil (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
394 : : {
395 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
396 : 0 : static const uint8_t expand_encoding[] = {
397 : : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x10,
398 : : 0x01, 0x01, 0x01, 0x50, 0x20, 0x00, 0x01, 0x02,
399 : : 0x20, 0x00, 0x01, 0x03
400 : : };
401 : 0 : return expand_rtx (expand_encoding, operands);
402 : : }
403 : :
404 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27158 */
405 : : rtx
406 : 149 : gen_smaxdf3 (const rtx operand0, const rtx operand1, const rtx operand2)
407 : : {
408 : 149 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
409 : 149 : static const uint8_t expand_encoding[] = {
410 : : 0x1f, 0x01, 0x00, 0x53, 0x2e, 0x01, 0x01, 0x01,
411 : : 0x02
412 : : };
413 : 149 : return expand_rtx (expand_encoding, operands);
414 : : }
415 : :
416 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27737 */
417 : : rtx
418 : 0 : gen_allocate_stack_worker_probe_si (const rtx operand0, const rtx operand1)
419 : : {
420 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
421 : 0 : static const uint8_t expand_encoding[] = {
422 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x11,
423 : : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
424 : : };
425 : 0 : return expand_rtx (expand_encoding, operands);
426 : : }
427 : :
428 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27952 */
429 : : rtx
430 : 0 : gen_stack_protect_set_1_di_si (const rtx operand0, const rtx operand1, const rtx operand2)
431 : : {
432 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
433 : 0 : static const uint8_t expand_encoding[] = {
434 : : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x12,
435 : : 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x02, 0x27,
436 : : 0x00, 0x05, 0x02, 0x11
437 : : };
438 : 0 : return expand_rtx (expand_encoding, operands);
439 : : }
440 : :
441 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29730 */
442 : : rtx
443 : 35 : gen_sse4_2_crc32di (const rtx operand0, const rtx operand1, const rtx operand2)
444 : : {
445 : 35 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
446 : 35 : static const uint8_t expand_encoding[] = {
447 : : 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11, 0x02,
448 : : 0x01, 0x01, 0x01, 0x02, 0x60
449 : : };
450 : 35 : return expand_rtx (expand_encoding, operands);
451 : : }
452 : :
453 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29905 */
454 : : rtx
455 : 0 : gen_xsaveopt (const rtx operand0, const rtx operand1)
456 : : {
457 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
458 : 0 : static const uint8_t expand_encoding[] = {
459 : : 0x1f, 0x01, 0x00, 0x1b, 0x01, 0x01, 0x01, 0x01,
460 : : 0x1c
461 : : };
462 : 0 : return expand_rtx (expand_encoding, operands);
463 : : }
464 : :
465 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29931 */
466 : : rtx
467 : 19 : gen_xsaves64 (const rtx operand0, const rtx operand1, const rtx operand2)
468 : : {
469 : 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
470 : 19 : static const uint8_t expand_encoding[] = {
471 : : 0x1f, 0x01, 0x00, 0x1b, 0x01, 0x02, 0x01, 0x01,
472 : : 0x01, 0x02, 0x20
473 : : };
474 : 19 : return expand_rtx (expand_encoding, operands);
475 : : }
476 : :
477 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30012 */
478 : : rtx
479 : 22 : gen_xgetbv_rex64 (const rtx operand0, const rtx operand1, const rtx operand2)
480 : : {
481 : 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
482 : 22 : static const uint8_t expand_encoding[] = {
483 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
484 : : 0x01, 0x01, 0x02, 0x24, 0x1f, 0x01, 0x01, 0x1b,
485 : : 0x12, 0x01, 0x01, 0x02, 0x24
486 : : };
487 : 22 : return expand_rtx (expand_encoding, operands);
488 : : }
489 : :
490 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30120 */
491 : : rtx
492 : 12 : gen_lwp_lwpinssi (const rtx operand0, const rtx operand1, const rtx operand2)
493 : : {
494 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
495 : 12 : static const uint8_t expand_encoding[] = {
496 : : 0x1f, 0x30, 0x08, 0x11, 0x1b, 0x08, 0x03, 0x01,
497 : : 0x00, 0x01, 0x01, 0x01, 0x02, 0x0f
498 : : };
499 : 12 : return expand_rtx (expand_encoding, operands);
500 : : }
501 : :
502 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30174 */
503 : : rtx
504 : 21 : gen_rdrandhi (const rtx operand0)
505 : : {
506 : 21 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
507 : 21 : static const uint8_t expand_encoding[] = {
508 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x10,
509 : : 0x01, 0x27, 0x00, 0x2c, 0x1f, 0x30, 0x08, 0x11,
510 : : 0x1b, 0x08, 0x01, 0x27, 0x00, 0x2c
511 : : };
512 : 21 : return expand_rtx (expand_encoding, operands);
513 : : }
514 : :
515 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30231 */
516 : : rtx
517 : 19 : gen_saveprevssp (void)
518 : : {
519 : 19 : static const uint8_t expand_encoding[] = {
520 : : 0x1b, 0x00, 0x01, 0x27, 0x00, 0x3d
521 : : };
522 : 19 : return expand_rtx (expand_encoding, nullptr);
523 : : }
524 : :
525 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30325 */
526 : : rtx
527 : 29 : gen_xend (void)
528 : : {
529 : 29 : static const uint8_t expand_encoding[] = {
530 : : 0x1b, 0x00, 0x01, 0x27, 0x00, 0x2f
531 : : };
532 : 29 : return expand_rtx (expand_encoding, nullptr);
533 : : }
534 : :
535 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30405 */
536 : : rtx
537 : 19 : gen_clzero_di (const rtx operand0)
538 : : {
539 : 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
540 : 19 : static const uint8_t expand_encoding[] = {
541 : : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x37
542 : : };
543 : 19 : return expand_rtx (expand_encoding, operands);
544 : : }
545 : :
546 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30493 */
547 : : rtx
548 : 1 : gen_movdir64b_si (const rtx operand0, const rtx operand1)
549 : : {
550 : 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
551 : 1 : static const uint8_t expand_encoding[] = {
552 : : 0x1f, 0x36, 0x15, 0x01, 0x00, 0x1a, 0x15, 0x01,
553 : : 0x01, 0x01, 0x68
554 : : };
555 : 1 : return expand_rtx (expand_encoding, operands);
556 : : }
557 : :
558 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30556 */
559 : : rtx
560 : 0 : gen_umwait (const rtx operand0, const rtx operand1)
561 : : {
562 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
563 : 0 : static const uint8_t expand_encoding[] = {
564 : : 0x1f, 0x30, 0x08, 0x11, 0x1b, 0x08, 0x02, 0x01,
565 : : 0x00, 0x01, 0x01, 0x45
566 : : };
567 : 0 : return expand_rtx (expand_encoding, operands);
568 : : }
569 : :
570 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30638 */
571 : : rtx
572 : 20 : gen_hreset (const rtx operand0)
573 : : {
574 : 20 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
575 : 20 : static const uint8_t expand_encoding[] = {
576 : : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x53
577 : : };
578 : 20 : return expand_rtx (expand_encoding, operands);
579 : : }
580 : :
581 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:906 */
582 : : rtx
583 : 14 : gen_mmx_ieee_maxv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
584 : : {
585 : 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
586 : 14 : static const uint8_t expand_encoding[] = {
587 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x67,
588 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x1a, 0x00,
589 : : 0x01, 0x27, 0x00, 0x6f
590 : : };
591 : 14 : return expand_rtx (expand_encoding, operands);
592 : : }
593 : :
594 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1277 */
595 : : rtx
596 : 0 : gen_sse4_1_insertps_v2si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
597 : : {
598 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
599 : 0 : static const uint8_t expand_encoding[] = {
600 : : 0x1f, 0x01, 0x00, 0x1a, 0x4a, 0x03, 0x01, 0x02,
601 : : 0x01, 0x01, 0x01, 0x03, 0x33
602 : : };
603 : 0 : return expand_rtx (expand_encoding, operands);
604 : : }
605 : :
606 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2600 */
607 : : rtx
608 : 0 : gen_xorv2bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
609 : : {
610 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
611 : 0 : static const uint8_t expand_encoding[] = {
612 : : 0x1f, 0x01, 0x00, 0x4b, 0x64, 0x01, 0x01, 0x01,
613 : : 0x02
614 : : };
615 : 0 : return expand_rtx (expand_encoding, operands);
616 : : }
617 : :
618 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3152 */
619 : : rtx
620 : 1 : gen_negv2qi2 (const rtx operand0, const rtx operand1)
621 : : {
622 : 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
623 : 1 : static const uint8_t expand_encoding[] = {
624 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3d, 0x44,
625 : : 0x01, 0x01, 0x05, 0x02, 0x11
626 : : };
627 : 1 : return expand_rtx (expand_encoding, operands);
628 : : }
629 : :
630 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3357 */
631 : : rtx
632 : 0 : gen_ussubv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
633 : : {
634 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
635 : 0 : static const uint8_t expand_encoding[] = {
636 : : 0x1f, 0x01, 0x00, 0x81, 0x16, 0x45, 0x01, 0x01,
637 : : 0x01, 0x02
638 : : };
639 : 0 : return expand_rtx (expand_encoding, operands);
640 : : }
641 : :
642 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3415 */
643 : : rtx
644 : 661 : gen_mulv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
645 : : {
646 : 661 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
647 : 661 : static const uint8_t expand_encoding[] = {
648 : : 0x1f, 0x01, 0x00, 0x3e, 0x46, 0x01, 0x01, 0x01,
649 : : 0x02
650 : : };
651 : 661 : return expand_rtx (expand_encoding, operands);
652 : : }
653 : :
654 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3726 */
655 : : rtx
656 : 1 : gen_sminv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
657 : : {
658 : 1 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
659 : 1 : static const uint8_t expand_encoding[] = {
660 : : 0x1f, 0x01, 0x00, 0x52, 0x44, 0x01, 0x01, 0x01,
661 : : 0x02
662 : : };
663 : 1 : return expand_rtx (expand_encoding, operands);
664 : : }
665 : :
666 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3804 */
667 : : rtx
668 : 3 : gen_uminv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
669 : : {
670 : 3 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
671 : 3 : static const uint8_t expand_encoding[] = {
672 : : 0x1f, 0x01, 0x00, 0x54, 0x44, 0x01, 0x01, 0x01,
673 : : 0x02
674 : : };
675 : 3 : return expand_rtx (expand_encoding, operands);
676 : : }
677 : :
678 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3872 */
679 : : rtx
680 : 103 : gen_mmx_ashrv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
681 : : {
682 : 103 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
683 : 103 : static const uint8_t expand_encoding[] = {
684 : : 0x1f, 0x01, 0x00, 0x4f, 0x4a, 0x01, 0x01, 0x01,
685 : : 0x02
686 : : };
687 : 103 : return expand_rtx (expand_encoding, operands);
688 : : }
689 : :
690 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3963 */
691 : : rtx
692 : 44 : gen_lshrv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
693 : : {
694 : 44 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
695 : 44 : static const uint8_t expand_encoding[] = {
696 : : 0x1f, 0x01, 0x00, 0x50, 0x46, 0x01, 0x01, 0x01,
697 : : 0x02
698 : : };
699 : 44 : return expand_rtx (expand_encoding, operands);
700 : : }
701 : :
702 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4406 */
703 : : rtx
704 : 24 : gen_mmx_pblendvb_v2qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
705 : : {
706 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
707 : 24 : static const uint8_t expand_encoding[] = {
708 : : 0x1f, 0x01, 0x00, 0x1a, 0x44, 0x03, 0x01, 0x01,
709 : : 0x01, 0x02, 0x01, 0x03, 0x34
710 : : };
711 : 24 : return expand_rtx (expand_encoding, operands);
712 : : }
713 : :
714 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4787 */
715 : : rtx
716 : 46 : gen_mmx_packsswb (const rtx operand0, const rtx operand1, const rtx operand2)
717 : : {
718 : 46 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
719 : 46 : static const uint8_t expand_encoding[] = {
720 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x48, 0x81, 0x17,
721 : : 0x45, 0x01, 0x01, 0x81, 0x17, 0x45, 0x01, 0x02
722 : : };
723 : 46 : return expand_rtx (expand_encoding, operands);
724 : : }
725 : :
726 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4985 */
727 : : rtx
728 : 41 : gen_mmx_punpckhdq (const rtx operand0, const rtx operand1, const rtx operand2)
729 : : {
730 : 41 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
731 : 41 : static const uint8_t expand_encoding[] = {
732 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x4a, 0x81, 0x0b,
733 : : 0x51, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x02,
734 : : 0x27, 0x01, 0x27, 0x03
735 : : };
736 : 41 : return expand_rtx (expand_encoding, operands);
737 : : }
738 : :
739 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5163 */
740 : : rtx
741 : 13 : gen_avx512vl_truncv4hiv4qi2 (const rtx operand0, const rtx operand1)
742 : : {
743 : 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
744 : 13 : static const uint8_t expand_encoding[] = {
745 : : 0x1f, 0x01, 0x00, 0x70, 0x45, 0x01, 0x01
746 : : };
747 : 13 : return expand_rtx (expand_encoding, operands);
748 : : }
749 : :
750 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5558 */
751 : : rtx
752 : 75 : gen_mmx_pshufwv4hi_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
753 : : {
754 : 75 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
755 : 75 : static const uint8_t expand_encoding[] = {
756 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x49, 0x01, 0x01,
757 : : 0x17, 0x00, 0x04, 0x01, 0x02, 0x01, 0x03, 0x01,
758 : : 0x04, 0x01, 0x05
759 : : };
760 : 75 : return expand_rtx (expand_encoding, operands);
761 : : }
762 : :
763 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1481 */
764 : : rtx
765 : 0 : gen_movv64qi_internal (const rtx operand0, const rtx operand1)
766 : : {
767 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
768 : 0 : static const uint8_t expand_encoding[] = {
769 : : 0x1f, 0x01, 0x00, 0x01, 0x01
770 : : };
771 : 0 : return expand_rtx (expand_encoding, operands);
772 : : }
773 : :
774 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1481 */
775 : : rtx
776 : 0 : gen_movv4di_internal (const rtx operand0, const rtx operand1)
777 : : {
778 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
779 : 0 : static const uint8_t expand_encoding[] = {
780 : : 0x1f, 0x01, 0x00, 0x01, 0x01
781 : : };
782 : 0 : return expand_rtx (expand_encoding, operands);
783 : : }
784 : :
785 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1481 */
786 : : rtx
787 : 0 : gen_movv8bf_internal (const rtx operand0, const rtx operand1)
788 : : {
789 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
790 : 0 : static const uint8_t expand_encoding[] = {
791 : : 0x1f, 0x01, 0x00, 0x01, 0x01
792 : : };
793 : 0 : return expand_rtx (expand_encoding, operands);
794 : : }
795 : :
796 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1748 */
797 : : rtx
798 : 12 : gen_avx512f_storehf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
799 : : {
800 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
801 : 12 : static const uint8_t expand_encoding[] = {
802 : : 0x1f, 0x01, 0x00, 0x39, 0x2b, 0x49, 0x0f, 0x01,
803 : : 0x02, 0x27, 0x01, 0x81, 0x0a, 0x2b, 0x01, 0x01,
804 : : 0x17, 0x00, 0x01, 0x27, 0x00, 0x01, 0x00
805 : : };
806 : 12 : return expand_rtx (expand_encoding, operands);
807 : : }
808 : :
809 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1764 */
810 : : rtx
811 : 20 : gen_avx512f_blendmv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
812 : : {
813 : 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
814 : 20 : static const uint8_t expand_encoding[] = {
815 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x01, 0x02,
816 : : 0x01, 0x01, 0x01, 0x03
817 : : };
818 : 20 : return expand_rtx (expand_encoding, operands);
819 : : }
820 : :
821 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1795 */
822 : : rtx
823 : 0 : gen_avx512vl_blendmv16hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
824 : : {
825 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
826 : 0 : static const uint8_t expand_encoding[] = {
827 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x01, 0x02,
828 : : 0x01, 0x01, 0x01, 0x03
829 : : };
830 : 0 : return expand_rtx (expand_encoding, operands);
831 : : }
832 : :
833 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2035 */
834 : : rtx
835 : 12 : gen_avx512f_movntv16sf (const rtx operand0, const rtx operand1)
836 : : {
837 : 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
838 : 12 : static const uint8_t expand_encoding[] = {
839 : : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x01, 0x01, 0x01,
840 : : 0x76
841 : : };
842 : 12 : return expand_rtx (expand_encoding, operands);
843 : : }
844 : :
845 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2106 */
846 : : rtx
847 : 11 : gen_kxorqi (const rtx operand0, const rtx operand1, const rtx operand2)
848 : : {
849 : 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
850 : 11 : static const uint8_t expand_encoding[] = {
851 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x0f,
852 : : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
853 : : 0x00, 0x81, 0x2f
854 : : };
855 : 11 : return expand_rtx (expand_encoding, operands);
856 : : }
857 : :
858 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2151 */
859 : : rtx
860 : 11 : gen_kandnqi (const rtx operand0, const rtx operand1, const rtx operand2)
861 : : {
862 : 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
863 : 11 : static const uint8_t expand_encoding[] = {
864 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x0f,
865 : : 0x4c, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00,
866 : : 0x01, 0x27, 0x00, 0x81, 0x2f
867 : : };
868 : 11 : return expand_rtx (expand_encoding, operands);
869 : : }
870 : :
871 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2212 */
872 : : rtx
873 : 11 : gen_knotsi (const rtx operand0, const rtx operand1)
874 : : {
875 : 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
876 : 11 : static const uint8_t expand_encoding[] = {
877 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x11,
878 : : 0x01, 0x01, 0x1a, 0x00, 0x01, 0x27, 0x00, 0x81,
879 : : 0x2f
880 : : };
881 : 11 : return expand_rtx (expand_encoding, operands);
882 : : }
883 : :
884 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2280 */
885 : : rtx
886 : 13 : gen_kashiftsi (const rtx operand0, const rtx operand1, const rtx operand2)
887 : : {
888 : 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
889 : 13 : static const uint8_t expand_encoding[] = {
890 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d, 0x11,
891 : : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
892 : : 0x00, 0x81, 0x2f
893 : : };
894 : 13 : return expand_rtx (expand_encoding, operands);
895 : : }
896 : :
897 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2371 */
898 : : rtx
899 : 18 : gen_kortestsi_ccc (const rtx operand0, const rtx operand1)
900 : : {
901 : 18 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
902 : 18 : static const uint8_t expand_encoding[] = {
903 : : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
904 : : 0x00, 0x01, 0x01, 0x81, 0x30
905 : : };
906 : 18 : return expand_rtx (expand_encoding, operands);
907 : : }
908 : :
909 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2720 */
910 : : rtx
911 : 0 : gen_avx512fp16_vmaddv8hf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
912 : : {
913 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
914 : 0 : static const uint8_t expand_encoding[] = {
915 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
916 : : 0x6a, 0x3b, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
917 : : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
918 : : };
919 : 0 : return expand_rtx (expand_encoding, operands);
920 : : }
921 : :
922 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2720 */
923 : : rtx
924 : 46 : gen_sse_vmaddv4sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
925 : : {
926 : 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
927 : 46 : static const uint8_t expand_encoding[] = {
928 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
929 : : 0x6b, 0x81, 0x09, 0x6b, 0x3b, 0x6b, 0x01, 0x01,
930 : : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01,
931 : : 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
932 : : };
933 : 46 : return expand_rtx (expand_encoding, operands);
934 : : }
935 : :
936 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2720 */
937 : : rtx
938 : 0 : gen_sse2_vmsubv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
939 : : {
940 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
941 : 0 : static const uint8_t expand_encoding[] = {
942 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
943 : : 0x6c, 0x3c, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
944 : : 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
945 : : };
946 : 0 : return expand_rtx (expand_encoding, operands);
947 : : }
948 : :
949 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2811 */
950 : : rtx
951 : 9 : gen_sse_vmmulv4sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
952 : : {
953 : 9 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
954 : 9 : static const uint8_t expand_encoding[] = {
955 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
956 : : 0x6b, 0x3e, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01,
957 : : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
958 : : };
959 : 9 : return expand_rtx (expand_encoding, operands);
960 : : }
961 : :
962 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2811 */
963 : : rtx
964 : 0 : gen_sse2_vmmulv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
965 : : {
966 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
967 : 0 : static const uint8_t expand_encoding[] = {
968 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
969 : : 0x6c, 0x3e, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
970 : : 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
971 : : };
972 : 0 : return expand_rtx (expand_encoding, operands);
973 : : }
974 : :
975 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2912 */
976 : : rtx
977 : 0 : gen_avx512fp16_divv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
978 : : {
979 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
980 : 0 : static const uint8_t expand_encoding[] = {
981 : : 0x1f, 0x01, 0x00, 0x43, 0x6e, 0x01, 0x01, 0x01,
982 : : 0x02
983 : : };
984 : 0 : return expand_rtx (expand_encoding, operands);
985 : : }
986 : :
987 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2912 */
988 : : rtx
989 : 28 : gen_avx_divv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
990 : : {
991 : 28 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
992 : 28 : static const uint8_t expand_encoding[] = {
993 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x43, 0x6f,
994 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
995 : : };
996 : 28 : return expand_rtx (expand_encoding, operands);
997 : : }
998 : :
999 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2912 */
1000 : : rtx
1001 : 0 : gen_sse2_divv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1002 : : {
1003 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1004 : 0 : static const uint8_t expand_encoding[] = {
1005 : : 0x1f, 0x01, 0x00, 0x43, 0x6c, 0x01, 0x01, 0x01,
1006 : : 0x02
1007 : : };
1008 : 0 : return expand_rtx (expand_encoding, operands);
1009 : : }
1010 : :
1011 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2979 */
1012 : : rtx
1013 : 36 : gen_avx512fp16_rcpv8hf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1014 : : {
1015 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1016 : 36 : static const uint8_t expand_encoding[] = {
1017 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1018 : : 0x01, 0x01, 0x01, 0x37, 0x01, 0x02, 0x01, 0x03
1019 : : };
1020 : 36 : return expand_rtx (expand_encoding, operands);
1021 : : }
1022 : :
1023 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3042 */
1024 : : rtx
1025 : 24 : gen_srcp14v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1026 : : {
1027 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1028 : 24 : static const uint8_t expand_encoding[] = {
1029 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1030 : : 0x6b, 0x1a, 0x6b, 0x01, 0x01, 0x01, 0x81, 0x22,
1031 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
1032 : : };
1033 : 24 : return expand_rtx (expand_encoding, operands);
1034 : : }
1035 : :
1036 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3080 */
1037 : : rtx
1038 : 0 : gen_avx512f_sqrtv16sf2_round (const rtx operand0, const rtx operand1, const rtx operand2)
1039 : : {
1040 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1041 : 0 : static const uint8_t expand_encoding[] = {
1042 : : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x7c, 0x74,
1043 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
1044 : : };
1045 : 0 : return expand_rtx (expand_encoding, operands);
1046 : : }
1047 : :
1048 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3080 */
1049 : : rtx
1050 : 66 : gen_avx512f_sqrtv8df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1051 : : {
1052 : 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1053 : 66 : static const uint8_t expand_encoding[] = {
1054 : : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1055 : : 0x75, 0x7c, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
1056 : : 0x03, 0x01, 0x04, 0x81, 0x33
1057 : : };
1058 : 66 : return expand_rtx (expand_encoding, operands);
1059 : : }
1060 : :
1061 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3094 */
1062 : : rtx
1063 : 14 : gen_sse2_vmsqrtv2df2 (const rtx operand0, const rtx operand1, const rtx operand2)
1064 : : {
1065 : 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1066 : 14 : static const uint8_t expand_encoding[] = {
1067 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x7c, 0x6c,
1068 : : 0x01, 0x01, 0x01, 0x02, 0x27, 0x01
1069 : : };
1070 : 14 : return expand_rtx (expand_encoding, operands);
1071 : : }
1072 : :
1073 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3161 */
1074 : : rtx
1075 : 0 : gen_avx512fp16_rsqrtv16hf2 (const rtx operand0, const rtx operand1)
1076 : : {
1077 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1078 : 0 : static const uint8_t expand_encoding[] = {
1079 : : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x01, 0x01, 0x01,
1080 : : 0x38
1081 : : };
1082 : 0 : return expand_rtx (expand_encoding, operands);
1083 : : }
1084 : :
1085 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3171 */
1086 : : rtx
1087 : 36 : gen_rsqrt14v2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1088 : : {
1089 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1090 : 36 : static const uint8_t expand_encoding[] = {
1091 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
1092 : : 0x01, 0x01, 0x01, 0x81, 0x23, 0x01, 0x02, 0x01,
1093 : : 0x03
1094 : : };
1095 : 36 : return expand_rtx (expand_encoding, operands);
1096 : : }
1097 : :
1098 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3452 */
1099 : : rtx
1100 : 33 : gen_ieee_maxv32hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1101 : : {
1102 : 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1103 : 33 : static const uint8_t expand_encoding[] = {
1104 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1105 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x03,
1106 : : 0x01, 0x04
1107 : : };
1108 : 33 : return expand_rtx (expand_encoding, operands);
1109 : : }
1110 : :
1111 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3452 */
1112 : : rtx
1113 : 68 : gen_ieee_maxv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1114 : : {
1115 : 68 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1116 : 68 : static const uint8_t expand_encoding[] = {
1117 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1118 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x03,
1119 : : 0x01, 0x04
1120 : : };
1121 : 68 : return expand_rtx (expand_encoding, operands);
1122 : : }
1123 : :
1124 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3452 */
1125 : : rtx
1126 : 59 : gen_ieee_maxv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1127 : : {
1128 : 59 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1129 : 59 : static const uint8_t expand_encoding[] = {
1130 : : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01, 0x01,
1131 : : 0x01, 0x02, 0x40
1132 : : };
1133 : 59 : return expand_rtx (expand_encoding, operands);
1134 : : }
1135 : :
1136 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3452 */
1137 : : rtx
1138 : 22 : gen_ieee_minv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1139 : : {
1140 : 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1141 : 22 : static const uint8_t expand_encoding[] = {
1142 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1143 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3f, 0x01, 0x03,
1144 : : 0x01, 0x04
1145 : : };
1146 : 22 : return expand_rtx (expand_encoding, operands);
1147 : : }
1148 : :
1149 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3452 */
1150 : : rtx
1151 : 13 : gen_ieee_minv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1152 : : {
1153 : 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1154 : 13 : static const uint8_t expand_encoding[] = {
1155 : : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01, 0x01,
1156 : : 0x01, 0x02, 0x3f
1157 : : };
1158 : 13 : return expand_rtx (expand_encoding, operands);
1159 : : }
1160 : :
1161 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3541 */
1162 : : rtx
1163 : 0 : gen_avx512fp16_ieee_vmmaxv8hf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1164 : : {
1165 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1166 : 0 : static const uint8_t expand_encoding[] = {
1167 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1168 : : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
1169 : : 0x40, 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81,
1170 : : 0x33
1171 : : };
1172 : 0 : return expand_rtx (expand_encoding, operands);
1173 : : }
1174 : :
1175 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3541 */
1176 : : rtx
1177 : 0 : gen_sse_ieee_vmminv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1178 : : {
1179 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1180 : 0 : static const uint8_t expand_encoding[] = {
1181 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1182 : : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
1183 : : 0x3f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27,
1184 : : 0x01
1185 : : };
1186 : 0 : return expand_rtx (expand_encoding, operands);
1187 : : }
1188 : :
1189 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3541 */
1190 : : rtx
1191 : 8 : gen_sse2_ieee_vmminv2df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1192 : : {
1193 : 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1194 : 8 : static const uint8_t expand_encoding[] = {
1195 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1196 : : 0x6c, 0x1a, 0x6c, 0x02, 0x01, 0x01, 0x01, 0x02,
1197 : : 0x3f, 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81,
1198 : : 0x33
1199 : : };
1200 : 8 : return expand_rtx (expand_encoding, operands);
1201 : : }
1202 : :
1203 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3886 */
1204 : : rtx
1205 : 13 : gen_sse3_haddv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1206 : : {
1207 : 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1208 : 13 : static const uint8_t expand_encoding[] = {
1209 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6b, 0x81, 0x0b,
1210 : : 0x67, 0x3b, 0x2d, 0x81, 0x0a, 0x2d, 0x01, 0x01,
1211 : : 0x17, 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2d,
1212 : : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x01, 0x3b,
1213 : : 0x2d, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
1214 : : 0x01, 0x27, 0x02, 0x81, 0x0a, 0x2d, 0x01, 0x01,
1215 : : 0x17, 0x00, 0x01, 0x27, 0x03, 0x81, 0x0b, 0x67,
1216 : : 0x3b, 0x2d, 0x81, 0x0a, 0x2d, 0x01, 0x02, 0x17,
1217 : : 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2d, 0x01,
1218 : : 0x02, 0x17, 0x00, 0x01, 0x27, 0x01, 0x3b, 0x2d,
1219 : : 0x81, 0x0a, 0x2d, 0x01, 0x02, 0x17, 0x00, 0x01,
1220 : : 0x27, 0x02, 0x81, 0x0a, 0x2d, 0x01, 0x02, 0x17,
1221 : : 0x00, 0x01, 0x27, 0x03
1222 : : };
1223 : 13 : return expand_rtx (expand_encoding, operands);
1224 : : }
1225 : :
1226 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4242 */
1227 : : rtx
1228 : 0 : gen_reducepv8sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1229 : : {
1230 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1231 : 0 : static const uint8_t expand_encoding[] = {
1232 : : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
1233 : : 0x6f, 0x1a, 0x6f, 0x02, 0x01, 0x01, 0x01, 0x02,
1234 : : 0x81, 0x41, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1235 : : 0x81, 0x33
1236 : : };
1237 : 0 : return expand_rtx (expand_encoding, operands);
1238 : : }
1239 : :
1240 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4254 */
1241 : : rtx
1242 : 0 : gen_reducesv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1243 : : {
1244 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1245 : 0 : static const uint8_t expand_encoding[] = {
1246 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1247 : : 0x6a, 0x1a, 0x6a, 0x03, 0x01, 0x01, 0x01, 0x02,
1248 : : 0x01, 0x03, 0x81, 0x41, 0x01, 0x04, 0x01, 0x05,
1249 : : 0x01, 0x01, 0x27, 0x01
1250 : : };
1251 : 0 : return expand_rtx (expand_encoding, operands);
1252 : : }
1253 : :
1254 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4311 */
1255 : : rtx
1256 : 55 : gen_avx_cmpv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1257 : : {
1258 : 55 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1259 : 55 : static const uint8_t expand_encoding[] = {
1260 : : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
1261 : : 0x01, 0x02, 0x01, 0x03, 0x3c
1262 : : };
1263 : 55 : return expand_rtx (expand_encoding, operands);
1264 : : }
1265 : :
1266 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4563 */
1267 : : rtx
1268 : 165 : gen_sse_maskcmpv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1269 : : {
1270 : 165 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1271 : 165 : static const uint8_t expand_encoding[] = {
1272 : : 0x1f, 0x01, 0x00, 0x03, 0x6b, 0x03, 0x01, 0x01,
1273 : : 0x01, 0x02
1274 : : };
1275 : 165 : return expand_rtx (expand_encoding, operands);
1276 : : }
1277 : :
1278 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4609 */
1279 : : rtx
1280 : 135 : gen_avx512vl_cmpv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1281 : : {
1282 : 135 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1283 : 135 : static const uint8_t expand_encoding[] = {
1284 : : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1285 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1286 : : 0x04
1287 : : };
1288 : 135 : return expand_rtx (expand_encoding, operands);
1289 : : }
1290 : :
1291 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4609 */
1292 : : rtx
1293 : 0 : gen_avx512bw_cmpv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1294 : : {
1295 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1296 : 0 : static const uint8_t expand_encoding[] = {
1297 : : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01, 0x01,
1298 : : 0x01, 0x02, 0x01, 0x03, 0x3c
1299 : : };
1300 : 0 : return expand_rtx (expand_encoding, operands);
1301 : : }
1302 : :
1303 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4609 */
1304 : : rtx
1305 : 0 : gen_avx512f_cmpv16sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1306 : : {
1307 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1308 : 0 : static const uint8_t expand_encoding[] = {
1309 : : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x1a, 0x10,
1310 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
1311 : : 0x01, 0x04, 0x81, 0x33
1312 : : };
1313 : 0 : return expand_rtx (expand_encoding, operands);
1314 : : }
1315 : :
1316 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4609 */
1317 : : rtx
1318 : 0 : gen_avx512vl_cmpv4df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1319 : : {
1320 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1321 : 0 : static const uint8_t expand_encoding[] = {
1322 : : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1323 : : 0x01, 0x02, 0x01, 0x03, 0x3c
1324 : : };
1325 : 0 : return expand_rtx (expand_encoding, operands);
1326 : : }
1327 : :
1328 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4803 */
1329 : : rtx
1330 : 129 : gen_avx512vl_cmpv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1331 : : {
1332 : 129 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1333 : 129 : static const uint8_t expand_encoding[] = {
1334 : : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x03,
1335 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1336 : : 0x04
1337 : : };
1338 : 129 : return expand_rtx (expand_encoding, operands);
1339 : : }
1340 : :
1341 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
1342 : : rtx
1343 : 184 : gen_avx512vl_ucmpv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1344 : : {
1345 : 184 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1346 : 184 : static const uint8_t expand_encoding[] = {
1347 : : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x03,
1348 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e,
1349 : : 0x01, 0x04
1350 : : };
1351 : 184 : return expand_rtx (expand_encoding, operands);
1352 : : }
1353 : :
1354 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5027 */
1355 : : rtx
1356 : 0 : gen_avx512vl_ucmpv8si3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1357 : : {
1358 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1359 : 0 : static const uint8_t expand_encoding[] = {
1360 : : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1361 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e
1362 : : };
1363 : 0 : return expand_rtx (expand_encoding, operands);
1364 : : }
1365 : :
1366 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5027 */
1367 : : rtx
1368 : 195 : gen_avx512vl_ucmpv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1369 : : {
1370 : 195 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1371 : 195 : static const uint8_t expand_encoding[] = {
1372 : : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1373 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e,
1374 : : 0x01, 0x04
1375 : : };
1376 : 195 : return expand_rtx (expand_encoding, operands);
1377 : : }
1378 : :
1379 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5175 */
1380 : : rtx
1381 : 132 : gen_avx512f_vmcmpv4sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1382 : : {
1383 : 132 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1384 : 132 : static const uint8_t expand_encoding[] = {
1385 : : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x49, 0x0f,
1386 : : 0x1a, 0x0f, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01,
1387 : : 0x03, 0x3c, 0x49, 0x0f, 0x01, 0x04, 0x27, 0x01,
1388 : : 0x01, 0x05, 0x81, 0x33
1389 : : };
1390 : 132 : return expand_rtx (expand_encoding, operands);
1391 : : }
1392 : :
1393 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5193 */
1394 : : rtx
1395 : 14 : gen_avx10_2_comxdf (const rtx operand0, const rtx operand1)
1396 : : {
1397 : 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1398 : 14 : static const uint8_t expand_encoding[] = {
1399 : : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x81,
1400 : : 0x0a, 0x2e, 0x01, 0x00, 0x17, 0x00, 0x01, 0x27,
1401 : : 0x00, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
1402 : : 0x01, 0x27, 0x00, 0x3e
1403 : : };
1404 : 14 : return expand_rtx (expand_encoding, operands);
1405 : : }
1406 : :
1407 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5209 */
1408 : : rtx
1409 : 32 : gen_sse_comi_round (const rtx operand0, const rtx operand1, const rtx operand2)
1410 : : {
1411 : 32 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1412 : 32 : static const uint8_t expand_encoding[] = {
1413 : : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x3a,
1414 : : 0x0d, 0x81, 0x0a, 0x2d, 0x01, 0x00, 0x17, 0x00,
1415 : : 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2d, 0x01, 0x01,
1416 : : 0x17, 0x00, 0x01, 0x27, 0x00, 0x01, 0x02, 0x81,
1417 : : 0x33
1418 : : };
1419 : 32 : return expand_rtx (expand_encoding, operands);
1420 : : }
1421 : :
1422 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5579 */
1423 : : rtx
1424 : 0 : gen_avx512fp16_andnotv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1425 : : {
1426 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1427 : 0 : static const uint8_t expand_encoding[] = {
1428 : : 0x1f, 0x01, 0x00, 0x49, 0x6a, 0x4c, 0x6a, 0x01,
1429 : : 0x01, 0x01, 0x02
1430 : : };
1431 : 0 : return expand_rtx (expand_encoding, operands);
1432 : : }
1433 : :
1434 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5654 */
1435 : : rtx
1436 : 0 : gen_avx512fp16_andnotv32hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1437 : : {
1438 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1439 : 0 : static const uint8_t expand_encoding[] = {
1440 : : 0x1f, 0x01, 0x00, 0x49, 0x73, 0x4c, 0x73, 0x01,
1441 : : 0x01, 0x01, 0x02
1442 : : };
1443 : 0 : return expand_rtx (expand_encoding, operands);
1444 : : }
1445 : :
1446 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6007 */
1447 : : rtx
1448 : 0 : gen_iorhf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1449 : : {
1450 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1451 : 0 : static const uint8_t expand_encoding[] = {
1452 : : 0x1f, 0x01, 0x00, 0x4a, 0x2b, 0x01, 0x01, 0x01,
1453 : : 0x02
1454 : : };
1455 : 0 : return expand_rtx (expand_encoding, operands);
1456 : : }
1457 : :
1458 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6278 */
1459 : : rtx
1460 : 12 : gen_fma_fmadd_v16hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1461 : : {
1462 : 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1463 : 12 : static const uint8_t expand_encoding[] = {
1464 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x19,
1465 : : 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1466 : : 0x04, 0x01, 0x05
1467 : : };
1468 : 12 : return expand_rtx (expand_encoding, operands);
1469 : : }
1470 : :
1471 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6278 */
1472 : : rtx
1473 : 13 : gen_fma_fmadd_v2df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1474 : : {
1475 : 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1476 : 13 : static const uint8_t expand_encoding[] = {
1477 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x19,
1478 : : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1479 : : 0x04, 0x01, 0x05
1480 : : };
1481 : 13 : return expand_rtx (expand_encoding, operands);
1482 : : }
1483 : :
1484 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6316 */
1485 : : rtx
1486 : 12 : gen_avx512vl_fmadd_v4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1487 : : {
1488 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1489 : 12 : static const uint8_t expand_encoding[] = {
1490 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1491 : : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1492 : : 0x01, 0x01, 0x04
1493 : : };
1494 : 12 : return expand_rtx (expand_encoding, operands);
1495 : : }
1496 : :
1497 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6333 */
1498 : : rtx
1499 : 23 : gen_avx512f_fmadd_v16sf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1500 : : {
1501 : 23 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1502 : 23 : static const uint8_t expand_encoding[] = {
1503 : : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1504 : : 0x74, 0x81, 0x19, 0x74, 0x01, 0x01, 0x01, 0x02,
1505 : : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1506 : : 0x81, 0x33
1507 : : };
1508 : 23 : return expand_rtx (expand_encoding, operands);
1509 : : }
1510 : :
1511 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6380 */
1512 : : rtx
1513 : 0 : gen_fma_fmsub_v32hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1514 : : {
1515 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1516 : 0 : static const uint8_t expand_encoding[] = {
1517 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x19,
1518 : : 0x73, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x73, 0x01,
1519 : : 0x03, 0x01, 0x04, 0x01, 0x05
1520 : : };
1521 : 0 : return expand_rtx (expand_encoding, operands);
1522 : : }
1523 : :
1524 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6380 */
1525 : : rtx
1526 : 13 : gen_fma_fmsub_v4df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1527 : : {
1528 : 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1529 : 13 : static const uint8_t expand_encoding[] = {
1530 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1531 : : 0x70, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x70, 0x01,
1532 : : 0x03, 0x01, 0x04, 0x01, 0x05
1533 : : };
1534 : 13 : return expand_rtx (expand_encoding, operands);
1535 : : }
1536 : :
1537 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6420 */
1538 : : rtx
1539 : 52 : gen_avx512f_fmsub_v16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1540 : : {
1541 : 52 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1542 : 52 : static const uint8_t expand_encoding[] = {
1543 : : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1544 : : 0x74, 0x81, 0x19, 0x74, 0x01, 0x01, 0x01, 0x02,
1545 : : 0x3d, 0x74, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1546 : : 0x01, 0x05, 0x81, 0x33
1547 : : };
1548 : 52 : return expand_rtx (expand_encoding, operands);
1549 : : }
1550 : :
1551 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6438 */
1552 : : rtx
1553 : 23 : gen_avx512bw_fmsub_v32hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1554 : : {
1555 : 23 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1556 : 23 : static const uint8_t expand_encoding[] = {
1557 : : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1558 : : 0x73, 0x81, 0x19, 0x73, 0x01, 0x01, 0x01, 0x02,
1559 : : 0x3d, 0x73, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1560 : : 0x01, 0x05, 0x81, 0x33
1561 : : };
1562 : 23 : return expand_rtx (expand_encoding, operands);
1563 : : }
1564 : :
1565 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6486 */
1566 : : rtx
1567 : 0 : gen_fma_fnmadd_v32hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1568 : : {
1569 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1570 : 0 : static const uint8_t expand_encoding[] = {
1571 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x19,
1572 : : 0x73, 0x3d, 0x73, 0x01, 0x01, 0x01, 0x02, 0x01,
1573 : : 0x03, 0x01, 0x04, 0x01, 0x05
1574 : : };
1575 : 0 : return expand_rtx (expand_encoding, operands);
1576 : : }
1577 : :
1578 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6486 */
1579 : : rtx
1580 : 13 : gen_fma_fnmadd_v4df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1581 : : {
1582 : 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1583 : 13 : static const uint8_t expand_encoding[] = {
1584 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1585 : : 0x70, 0x3d, 0x70, 0x01, 0x01, 0x01, 0x02, 0x01,
1586 : : 0x03, 0x01, 0x04, 0x01, 0x05
1587 : : };
1588 : 13 : return expand_rtx (expand_encoding, operands);
1589 : : }
1590 : :
1591 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6526 */
1592 : : rtx
1593 : 12 : gen_avx512vl_fnmadd_v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1594 : : {
1595 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1596 : 12 : static const uint8_t expand_encoding[] = {
1597 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
1598 : : 0x6b, 0x3d, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01,
1599 : : 0x03, 0x01, 0x01, 0x01, 0x04
1600 : : };
1601 : 12 : return expand_rtx (expand_encoding, operands);
1602 : : }
1603 : :
1604 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6544 */
1605 : : rtx
1606 : 0 : gen_avx512f_fnmadd_v16sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1607 : : {
1608 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1609 : 0 : static const uint8_t expand_encoding[] = {
1610 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x19,
1611 : : 0x74, 0x3d, 0x74, 0x01, 0x01, 0x01, 0x02, 0x01,
1612 : : 0x03, 0x01, 0x03, 0x01, 0x04
1613 : : };
1614 : 0 : return expand_rtx (expand_encoding, operands);
1615 : : }
1616 : :
1617 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6593 */
1618 : : rtx
1619 : 12 : gen_fma_fnmsub_v16hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1620 : : {
1621 : 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1622 : 12 : static const uint8_t expand_encoding[] = {
1623 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x19,
1624 : : 0x6e, 0x3d, 0x6e, 0x01, 0x01, 0x01, 0x02, 0x3d,
1625 : : 0x6e, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1626 : : };
1627 : 12 : return expand_rtx (expand_encoding, operands);
1628 : : }
1629 : :
1630 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6593 */
1631 : : rtx
1632 : 13 : gen_fma_fnmsub_v2df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1633 : : {
1634 : 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1635 : 13 : static const uint8_t expand_encoding[] = {
1636 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x19,
1637 : : 0x6c, 0x3d, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x3d,
1638 : : 0x6c, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1639 : : };
1640 : 13 : return expand_rtx (expand_encoding, operands);
1641 : : }
1642 : :
1643 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6635 */
1644 : : rtx
1645 : 45 : gen_avx512f_fnmsub_v8df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1646 : : {
1647 : 45 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1648 : 45 : static const uint8_t expand_encoding[] = {
1649 : : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1650 : : 0x75, 0x81, 0x19, 0x75, 0x3d, 0x75, 0x01, 0x01,
1651 : : 0x01, 0x02, 0x3d, 0x75, 0x01, 0x03, 0x01, 0x01,
1652 : : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1653 : : };
1654 : 45 : return expand_rtx (expand_encoding, operands);
1655 : : }
1656 : :
1657 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6654 */
1658 : : rtx
1659 : 12 : gen_avx512vl_fnmsub_v8sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1660 : : {
1661 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1662 : 12 : static const uint8_t expand_encoding[] = {
1663 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x19,
1664 : : 0x6f, 0x3d, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x3d,
1665 : : 0x6f, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04
1666 : : };
1667 : 12 : return expand_rtx (expand_encoding, operands);
1668 : : }
1669 : :
1670 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6654 */
1671 : : rtx
1672 : 0 : gen_avx512vl_fnmsub_v2df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1673 : : {
1674 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1675 : 0 : static const uint8_t expand_encoding[] = {
1676 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1677 : : 0x6c, 0x81, 0x19, 0x6c, 0x3d, 0x6c, 0x01, 0x01,
1678 : : 0x01, 0x02, 0x3d, 0x6c, 0x01, 0x03, 0x01, 0x03,
1679 : : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1680 : : };
1681 : 0 : return expand_rtx (expand_encoding, operands);
1682 : : }
1683 : :
1684 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6756 */
1685 : : rtx
1686 : 24 : gen_fma_fmaddsub_v4df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1687 : : {
1688 : 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1689 : 24 : static const uint8_t expand_encoding[] = {
1690 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
1691 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1692 : : 0x06, 0x01, 0x04, 0x01, 0x05
1693 : : };
1694 : 24 : return expand_rtx (expand_encoding, operands);
1695 : : }
1696 : :
1697 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6772 */
1698 : : rtx
1699 : 88 : gen_avx512f_fmaddsub_v16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1700 : : {
1701 : 88 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1702 : 88 : static const uint8_t expand_encoding[] = {
1703 : : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1704 : : 0x74, 0x1a, 0x74, 0x03, 0x01, 0x01, 0x01, 0x02,
1705 : : 0x01, 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04,
1706 : : 0x01, 0x05, 0x81, 0x33
1707 : : };
1708 : 88 : return expand_rtx (expand_encoding, operands);
1709 : : }
1710 : :
1711 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6790 */
1712 : : rtx
1713 : 23 : gen_avx512bw_fmaddsub_v32hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1714 : : {
1715 : 23 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1716 : 23 : static const uint8_t expand_encoding[] = {
1717 : : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1718 : : 0x73, 0x1a, 0x73, 0x03, 0x01, 0x01, 0x01, 0x02,
1719 : : 0x01, 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04,
1720 : : 0x01, 0x05, 0x81, 0x33
1721 : : };
1722 : 23 : return expand_rtx (expand_encoding, operands);
1723 : : }
1724 : :
1725 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6790 */
1726 : : rtx
1727 : 0 : gen_avx512f_fmaddsub_v8df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1728 : : {
1729 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1730 : 0 : static const uint8_t expand_encoding[] = {
1731 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1732 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1733 : : 0x06, 0x01, 0x03, 0x01, 0x04
1734 : : };
1735 : 0 : return expand_rtx (expand_encoding, operands);
1736 : : }
1737 : :
1738 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6825 */
1739 : : rtx
1740 : 12 : gen_fma_fmsubadd_v8hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1741 : : {
1742 : 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1743 : 12 : static const uint8_t expand_encoding[] = {
1744 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1745 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6a, 0x01,
1746 : : 0x03, 0x81, 0x06, 0x01, 0x04, 0x01, 0x05
1747 : : };
1748 : 12 : return expand_rtx (expand_encoding, operands);
1749 : : }
1750 : :
1751 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6842 */
1752 : : rtx
1753 : 0 : gen_avx512bw_fmsubadd_v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1754 : : {
1755 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1756 : 0 : static const uint8_t expand_encoding[] = {
1757 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1758 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x73, 0x01,
1759 : : 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04
1760 : : };
1761 : 0 : return expand_rtx (expand_encoding, operands);
1762 : : }
1763 : :
1764 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6842 */
1765 : : rtx
1766 : 0 : gen_avx512vl_fmsubadd_v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1767 : : {
1768 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1769 : 0 : static const uint8_t expand_encoding[] = {
1770 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1771 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6b, 0x01,
1772 : : 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04
1773 : : };
1774 : 0 : return expand_rtx (expand_encoding, operands);
1775 : : }
1776 : :
1777 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6861 */
1778 : : rtx
1779 : 23 : gen_avx512bw_fmsubadd_v32hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1780 : : {
1781 : 23 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1782 : 23 : static const uint8_t expand_encoding[] = {
1783 : : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1784 : : 0x73, 0x1a, 0x73, 0x03, 0x01, 0x01, 0x01, 0x02,
1785 : : 0x3d, 0x73, 0x01, 0x03, 0x81, 0x06, 0x01, 0x03,
1786 : : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1787 : : };
1788 : 23 : return expand_rtx (expand_encoding, operands);
1789 : : }
1790 : :
1791 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6861 */
1792 : : rtx
1793 : 0 : gen_avx512f_fmsubadd_v8df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1794 : : {
1795 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1796 : 0 : static const uint8_t expand_encoding[] = {
1797 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1798 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x75, 0x01,
1799 : : 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04
1800 : : };
1801 : 0 : return expand_rtx (expand_encoding, operands);
1802 : : }
1803 : :
1804 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7001 */
1805 : : rtx
1806 : 100 : gen_avx512f_vmfmadd_v4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1807 : : {
1808 : 100 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1809 : 100 : static const uint8_t expand_encoding[] = {
1810 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1811 : : 0x6b, 0x81, 0x09, 0x6b, 0x81, 0x19, 0x6b, 0x01,
1812 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x01,
1813 : : 0x04, 0x01, 0x01, 0x27, 0x01, 0x01, 0x05, 0x81,
1814 : : 0x33
1815 : : };
1816 : 100 : return expand_rtx (expand_encoding, operands);
1817 : : }
1818 : :
1819 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7053 */
1820 : : rtx
1821 : 0 : gen_avx512f_vmfmadd_v4sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1822 : : {
1823 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1824 : 0 : static const uint8_t expand_encoding[] = {
1825 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1826 : : 0x6b, 0x81, 0x19, 0x6b, 0x01, 0x01, 0x01, 0x02,
1827 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01,
1828 : : 0x27, 0x01
1829 : : };
1830 : 0 : return expand_rtx (expand_encoding, operands);
1831 : : }
1832 : :
1833 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7094 */
1834 : : rtx
1835 : 50 : gen_avx512f_vmfmsub_v2df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1836 : : {
1837 : 50 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1838 : 50 : static const uint8_t expand_encoding[] = {
1839 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1840 : : 0x6c, 0x81, 0x09, 0x6c, 0x81, 0x19, 0x6c, 0x01,
1841 : : 0x01, 0x01, 0x02, 0x3d, 0x6c, 0x01, 0x03, 0x01,
1842 : : 0x03, 0x01, 0x04, 0x01, 0x03, 0x27, 0x01, 0x01,
1843 : : 0x05, 0x81, 0x33
1844 : : };
1845 : 50 : return expand_rtx (expand_encoding, operands);
1846 : : }
1847 : :
1848 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7155 */
1849 : : rtx
1850 : 0 : gen_avx512f_vmfnmadd_v2df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1851 : : {
1852 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1853 : 0 : static const uint8_t expand_encoding[] = {
1854 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
1855 : : 0x6c, 0x81, 0x19, 0x6c, 0x3d, 0x6c, 0x01, 0x02,
1856 : : 0x01, 0x01, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1857 : : 0x01, 0x03, 0x27, 0x01
1858 : : };
1859 : 0 : return expand_rtx (expand_encoding, operands);
1860 : : }
1861 : :
1862 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7495 */
1863 : : rtx
1864 : 26 : gen_fma_fmaddc_v32hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1865 : : {
1866 : 26 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1867 : 26 : static const uint8_t expand_encoding[] = {
1868 : : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
1869 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1870 : : 0x5a, 0x01, 0x04, 0x81, 0x33
1871 : : };
1872 : 26 : return expand_rtx (expand_encoding, operands);
1873 : : }
1874 : :
1875 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7495 */
1876 : : rtx
1877 : 13 : gen_fma_fcmaddc_v16hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1878 : : {
1879 : 13 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1880 : 13 : static const uint8_t expand_encoding[] = {
1881 : : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
1882 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5c
1883 : : };
1884 : 13 : return expand_rtx (expand_encoding, operands);
1885 : : }
1886 : :
1887 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7508 */
1888 : : rtx
1889 : 0 : gen_fma_v8hf_fadd_fmul (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1890 : : {
1891 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1892 : 0 : static const uint8_t expand_encoding[] = {
1893 : : 0x1f, 0x01, 0x00, 0x3b, 0x6a, 0x1a, 0x6a, 0x02,
1894 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x5e, 0x01, 0x03
1895 : : };
1896 : 0 : return expand_rtx (expand_encoding, operands);
1897 : : }
1898 : :
1899 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7560 */
1900 : : rtx
1901 : 1 : gen_fma_fmaddc_v16sf_pair (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1902 : : {
1903 : 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1904 : 1 : static const uint8_t expand_encoding[] = {
1905 : : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
1906 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5b
1907 : : };
1908 : 1 : return expand_rtx (expand_encoding, operands);
1909 : : }
1910 : :
1911 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7600 */
1912 : : rtx
1913 : 0 : gen_fma_v16hf_fcmaddc_bcst (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1914 : : {
1915 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1916 : 0 : static const uint8_t expand_encoding[] = {
1917 : : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
1918 : : 0x32, 0x6e, 0x01, 0x02, 0x00, 0x01, 0x03, 0x81,
1919 : : 0x5c
1920 : : };
1921 : 0 : return expand_rtx (expand_encoding, operands);
1922 : : }
1923 : :
1924 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7654 */
1925 : : rtx
1926 : 0 : gen_avx512bw_fmulc_v32hf (const rtx operand0, const rtx operand1, const rtx operand2)
1927 : : {
1928 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1929 : 0 : static const uint8_t expand_encoding[] = {
1930 : : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01, 0x01,
1931 : : 0x01, 0x02, 0x81, 0x5e
1932 : : };
1933 : 0 : return expand_rtx (expand_encoding, operands);
1934 : : }
1935 : :
1936 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7654 */
1937 : : rtx
1938 : 0 : gen_avx512bw_fcmulc_v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1939 : : {
1940 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1941 : 0 : static const uint8_t expand_encoding[] = {
1942 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1943 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x5f, 0x01,
1944 : : 0x03, 0x1a, 0x11, 0x01, 0x01, 0x04, 0x81, 0x60
1945 : : };
1946 : 0 : return expand_rtx (expand_encoding, operands);
1947 : : }
1948 : :
1949 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7819 */
1950 : : rtx
1951 : 0 : gen_avx512fp16_fma_fmaddcsh_v8hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1952 : : {
1953 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1954 : 0 : static const uint8_t expand_encoding[] = {
1955 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1956 : : 0x6a, 0x1a, 0x6a, 0x03, 0x01, 0x01, 0x01, 0x02,
1957 : : 0x01, 0x03, 0x81, 0x5a, 0x01, 0x04, 0x1a, 0x0f,
1958 : : 0x01, 0x01, 0x05, 0x81, 0x60, 0x01, 0x02, 0x27,
1959 : : 0x03
1960 : : };
1961 : 0 : return expand_rtx (expand_encoding, operands);
1962 : : }
1963 : :
1964 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7855 */
1965 : : rtx
1966 : 27 : gen_avx512fp16_fmulcsh_v8hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1967 : : {
1968 : 27 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1969 : 27 : static const uint8_t expand_encoding[] = {
1970 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1971 : : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
1972 : : 0x81, 0x5e, 0x01, 0x01, 0x27, 0x03, 0x01, 0x03,
1973 : : 0x81, 0x33
1974 : : };
1975 : 27 : return expand_rtx (expand_encoding, operands);
1976 : : }
1977 : :
1978 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7967 */
1979 : : rtx
1980 : 0 : gen_avx512fp16_vcvtph2uw_v32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1981 : : {
1982 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1983 : 0 : static const uint8_t expand_encoding[] = {
1984 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
1985 : : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
1986 : : 0x03
1987 : : };
1988 : 0 : return expand_rtx (expand_encoding, operands);
1989 : : }
1990 : :
1991 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7967 */
1992 : : rtx
1993 : 0 : gen_avx512fp16_vcvtph2dq_v16si (const rtx operand0, const rtx operand1)
1994 : : {
1995 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1996 : 0 : static const uint8_t expand_encoding[] = {
1997 : : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x01, 0x01, 0x01,
1998 : : 0x2f
1999 : : };
2000 : 0 : return expand_rtx (expand_encoding, operands);
2001 : : }
2002 : :
2003 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7967 */
2004 : : rtx
2005 : 69 : gen_avx512fp16_vcvtph2uqq_v8di_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2006 : : {
2007 : 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2008 : 69 : static const uint8_t expand_encoding[] = {
2009 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2010 : : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x81, 0x1d,
2011 : : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2012 : : };
2013 : 69 : return expand_rtx (expand_encoding, operands);
2014 : : }
2015 : :
2016 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7967 */
2017 : : rtx
2018 : 0 : gen_avx512fp16_vcvtph2udq_v8si (const rtx operand0, const rtx operand1)
2019 : : {
2020 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2021 : 0 : static const uint8_t expand_encoding[] = {
2022 : : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
2023 : : 0x81, 0x1d
2024 : : };
2025 : 0 : return expand_rtx (expand_encoding, operands);
2026 : : }
2027 : :
2028 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7967 */
2029 : : rtx
2030 : 0 : gen_avx512fp16_vcvtph2uqq_v4di (const rtx operand0, const rtx operand1)
2031 : : {
2032 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2033 : 0 : static const uint8_t expand_encoding[] = {
2034 : : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
2035 : : 0x81, 0x1d
2036 : : };
2037 : 0 : return expand_rtx (expand_encoding, operands);
2038 : : }
2039 : :
2040 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7967 */
2041 : : rtx
2042 : 0 : gen_avx512fp16_vcvtph2uw_v8hi (const rtx operand0, const rtx operand1)
2043 : : {
2044 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2045 : 0 : static const uint8_t expand_encoding[] = {
2046 : : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
2047 : : 0x81, 0x1d
2048 : : };
2049 : 0 : return expand_rtx (expand_encoding, operands);
2050 : : }
2051 : :
2052 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7967 */
2053 : : rtx
2054 : 0 : gen_avx512fp16_vcvtph2udq_v4si (const rtx operand0, const rtx operand1)
2055 : : {
2056 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2057 : 0 : static const uint8_t expand_encoding[] = {
2058 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2059 : : 0x81, 0x1d
2060 : : };
2061 : 0 : return expand_rtx (expand_encoding, operands);
2062 : : }
2063 : :
2064 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7967 */
2065 : : rtx
2066 : 0 : gen_avx512fp16_vcvtph2uqq_v2di (const rtx operand0, const rtx operand1)
2067 : : {
2068 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2069 : 0 : static const uint8_t expand_encoding[] = {
2070 : : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
2071 : : 0x81, 0x1d
2072 : : };
2073 : 0 : return expand_rtx (expand_encoding, operands);
2074 : : }
2075 : :
2076 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7984 */
2077 : : rtx
2078 : 0 : gen_avx512fp16_vcvtw2ph_v8hi (const rtx operand0, const rtx operand1)
2079 : : {
2080 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2081 : 0 : static const uint8_t expand_encoding[] = {
2082 : : 0x1f, 0x01, 0x00, 0x73, 0x6a, 0x01, 0x01
2083 : : };
2084 : 0 : return expand_rtx (expand_encoding, operands);
2085 : : }
2086 : :
2087 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7984 */
2088 : : rtx
2089 : 0 : gen_avx512fp16_vcvtw2ph_v16hi (const rtx operand0, const rtx operand1)
2090 : : {
2091 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2092 : 0 : static const uint8_t expand_encoding[] = {
2093 : : 0x1f, 0x01, 0x00, 0x73, 0x6e, 0x01, 0x01
2094 : : };
2095 : 0 : return expand_rtx (expand_encoding, operands);
2096 : : }
2097 : :
2098 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7984 */
2099 : : rtx
2100 : 0 : gen_avx512fp16_vcvtw2ph_v32hi (const rtx operand0, const rtx operand1)
2101 : : {
2102 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2103 : 0 : static const uint8_t expand_encoding[] = {
2104 : : 0x1f, 0x01, 0x00, 0x73, 0x73, 0x01, 0x01
2105 : : };
2106 : 0 : return expand_rtx (expand_encoding, operands);
2107 : : }
2108 : :
2109 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7984 */
2110 : : rtx
2111 : 0 : gen_avx512fp16_vcvtdq2ph_v8si (const rtx operand0, const rtx operand1)
2112 : : {
2113 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2114 : 0 : static const uint8_t expand_encoding[] = {
2115 : : 0x1f, 0x01, 0x00, 0x73, 0x6a, 0x01, 0x01
2116 : : };
2117 : 0 : return expand_rtx (expand_encoding, operands);
2118 : : }
2119 : :
2120 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7984 */
2121 : : rtx
2122 : 0 : gen_avx512fp16_vcvtudq2ph_v8si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2123 : : {
2124 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2125 : 0 : static const uint8_t expand_encoding[] = {
2126 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2127 : : 0x6a, 0x75, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
2128 : : 0x03, 0x01, 0x04, 0x81, 0x33
2129 : : };
2130 : 0 : return expand_rtx (expand_encoding, operands);
2131 : : }
2132 : :
2133 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7984 */
2134 : : rtx
2135 : 0 : gen_avx512fp16_vcvtuqq2ph_v8di (const rtx operand0, const rtx operand1)
2136 : : {
2137 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2138 : 0 : static const uint8_t expand_encoding[] = {
2139 : : 0x1f, 0x01, 0x00, 0x75, 0x6a, 0x01, 0x01
2140 : : };
2141 : 0 : return expand_rtx (expand_encoding, operands);
2142 : : }
2143 : :
2144 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8146 */
2145 : : rtx
2146 : 0 : gen_avx512fp16_vcvtsh2usiq (const rtx operand0, const rtx operand1)
2147 : : {
2148 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2149 : 0 : static const uint8_t expand_encoding[] = {
2150 : : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
2151 : : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2152 : : 0x81, 0x1d
2153 : : };
2154 : 0 : return expand_rtx (expand_encoding, operands);
2155 : : }
2156 : :
2157 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8172 */
2158 : : rtx
2159 : 22 : gen_avx512fp16_vcvtsi2sh_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2160 : : {
2161 : 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2162 : 22 : static const uint8_t expand_encoding[] = {
2163 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2164 : : 0x6a, 0x81, 0x0c, 0x6a, 0x73, 0x2b, 0x01, 0x02,
2165 : : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2166 : : };
2167 : 22 : return expand_rtx (expand_encoding, operands);
2168 : : }
2169 : :
2170 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8192 */
2171 : : rtx
2172 : 0 : gen_unspec_avx512fp16_fixuns_truncv8hi2 (const rtx operand0, const rtx operand1)
2173 : : {
2174 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2175 : 0 : static const uint8_t expand_encoding[] = {
2176 : : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
2177 : : 0x81, 0x2e
2178 : : };
2179 : 0 : return expand_rtx (expand_encoding, operands);
2180 : : }
2181 : :
2182 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8192 */
2183 : : rtx
2184 : 0 : gen_unspec_avx512fp16_fixuns_truncv16hi2 (const rtx operand0, const rtx operand1)
2185 : : {
2186 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2187 : 0 : static const uint8_t expand_encoding[] = {
2188 : : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
2189 : : 0x81, 0x2e
2190 : : };
2191 : 0 : return expand_rtx (expand_encoding, operands);
2192 : : }
2193 : :
2194 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8192 */
2195 : : rtx
2196 : 0 : gen_unspec_avx512fp16_fixuns_truncv32hi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2197 : : {
2198 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2199 : 0 : static const uint8_t expand_encoding[] = {
2200 : : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x1a, 0x5a,
2201 : : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2202 : : 0x33
2203 : : };
2204 : 0 : return expand_rtx (expand_encoding, operands);
2205 : : }
2206 : :
2207 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8192 */
2208 : : rtx
2209 : 36 : gen_unspec_avx512fp16_fixuns_truncv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2210 : : {
2211 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2212 : 36 : static const uint8_t expand_encoding[] = {
2213 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
2214 : : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2215 : : 0x03
2216 : : };
2217 : 36 : return expand_rtx (expand_encoding, operands);
2218 : : }
2219 : :
2220 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8192 */
2221 : : rtx
2222 : 0 : gen_unspec_avx512fp16_fix_truncv8di2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2223 : : {
2224 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2225 : 0 : static const uint8_t expand_encoding[] = {
2226 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x1a, 0x5c,
2227 : : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2228 : : 0x33
2229 : : };
2230 : 0 : return expand_rtx (expand_encoding, operands);
2231 : : }
2232 : :
2233 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8203 */
2234 : : rtx
2235 : 0 : gen_avx512fp16_fix_truncv8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2236 : : {
2237 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2238 : 0 : static const uint8_t expand_encoding[] = {
2239 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x74, 0x50,
2240 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2241 : : };
2242 : 0 : return expand_rtx (expand_encoding, operands);
2243 : : }
2244 : :
2245 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8203 */
2246 : : rtx
2247 : 0 : gen_avx512fp16_fixuns_truncv16hi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2248 : : {
2249 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2250 : 0 : static const uint8_t expand_encoding[] = {
2251 : : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x76, 0x55,
2252 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2253 : : };
2254 : 0 : return expand_rtx (expand_encoding, operands);
2255 : : }
2256 : :
2257 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8203 */
2258 : : rtx
2259 : 0 : gen_avx512fp16_fixuns_truncv32hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2260 : : {
2261 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2262 : 0 : static const uint8_t expand_encoding[] = {
2263 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x76, 0x5a,
2264 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2265 : : };
2266 : 0 : return expand_rtx (expand_encoding, operands);
2267 : : }
2268 : :
2269 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8203 */
2270 : : rtx
2271 : 0 : gen_avx512fp16_fix_truncv16si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2272 : : {
2273 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2274 : 0 : static const uint8_t expand_encoding[] = {
2275 : : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x74, 0x5b,
2276 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2277 : : };
2278 : 0 : return expand_rtx (expand_encoding, operands);
2279 : : }
2280 : :
2281 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8203 */
2282 : : rtx
2283 : 0 : gen_avx512fp16_fix_truncv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2284 : : {
2285 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2286 : 0 : static const uint8_t expand_encoding[] = {
2287 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x74, 0x5c,
2288 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2289 : : };
2290 : 0 : return expand_rtx (expand_encoding, operands);
2291 : : }
2292 : :
2293 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8230 */
2294 : : rtx
2295 : 36 : gen_unspec_avx512fp16_fix_truncv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2296 : : {
2297 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2298 : 36 : static const uint8_t expand_encoding[] = {
2299 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
2300 : : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2301 : : 0x03
2302 : : };
2303 : 36 : return expand_rtx (expand_encoding, operands);
2304 : : }
2305 : :
2306 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8280 */
2307 : : rtx
2308 : 0 : gen_unspec_avx512fp16_fix_truncv2di2 (const rtx operand0, const rtx operand1)
2309 : : {
2310 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2311 : 0 : static const uint8_t expand_encoding[] = {
2312 : : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
2313 : : 0x81, 0x2d
2314 : : };
2315 : 0 : return expand_rtx (expand_encoding, operands);
2316 : : }
2317 : :
2318 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8291 */
2319 : : rtx
2320 : 1 : gen_avx512fp16_fixuns_truncv2di2 (const rtx operand0, const rtx operand1)
2321 : : {
2322 : 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2323 : 1 : static const uint8_t expand_encoding[] = {
2324 : : 0x1f, 0x01, 0x00, 0x76, 0x52, 0x81, 0x0a, 0x63,
2325 : : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
2326 : : 0x01
2327 : : };
2328 : 1 : return expand_rtx (expand_encoding, operands);
2329 : : }
2330 : :
2331 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8324 */
2332 : : rtx
2333 : 0 : gen_avx512fp16_fix_truncsi2 (const rtx operand0, const rtx operand1)
2334 : : {
2335 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2336 : 0 : static const uint8_t expand_encoding[] = {
2337 : : 0x1f, 0x01, 0x00, 0x74, 0x11, 0x81, 0x0a, 0x2b,
2338 : : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2339 : : };
2340 : 0 : return expand_rtx (expand_encoding, operands);
2341 : : }
2342 : :
2343 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8336 */
2344 : : rtx
2345 : 0 : gen_avx512fp16_fixuns_truncsi2_mem (const rtx operand0, const rtx operand1)
2346 : : {
2347 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2348 : 0 : static const uint8_t expand_encoding[] = {
2349 : : 0x1f, 0x01, 0x00, 0x76, 0x11, 0x01, 0x01
2350 : : };
2351 : 0 : return expand_rtx (expand_encoding, operands);
2352 : : }
2353 : :
2354 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8356 */
2355 : : rtx
2356 : 0 : gen_avx512fp16_float_extend_phv16sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2357 : : {
2358 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2359 : 0 : static const uint8_t expand_encoding[] = {
2360 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x71, 0x74,
2361 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2362 : : };
2363 : 0 : return expand_rtx (expand_encoding, operands);
2364 : : }
2365 : :
2366 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8422 */
2367 : : rtx
2368 : 36 : gen_avx512fp16_float_extend_phv2df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2369 : : {
2370 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2371 : 36 : static const uint8_t expand_encoding[] = {
2372 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x71, 0x6c,
2373 : : 0x81, 0x0a, 0x63, 0x01, 0x01, 0x17, 0x00, 0x02,
2374 : : 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01, 0x03
2375 : : };
2376 : 36 : return expand_rtx (expand_encoding, operands);
2377 : : }
2378 : :
2379 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8450 */
2380 : : rtx
2381 : 0 : gen_avx512fp16_vcvtps2ph_v8sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2382 : : {
2383 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2384 : 0 : static const uint8_t expand_encoding[] = {
2385 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2386 : : 0x6a, 0x72, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
2387 : : 0x03, 0x01, 0x04, 0x81, 0x33
2388 : : };
2389 : 0 : return expand_rtx (expand_encoding, operands);
2390 : : }
2391 : :
2392 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8633 */
2393 : : rtx
2394 : 0 : gen_avx512fp16_vcvtsh2ss_mem (const rtx operand0, const rtx operand1, const rtx operand2)
2395 : : {
2396 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2397 : 0 : static const uint8_t expand_encoding[] = {
2398 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0c,
2399 : : 0x6b, 0x71, 0x2d, 0x01, 0x01, 0x01, 0x02, 0x27,
2400 : : 0x01
2401 : : };
2402 : 0 : return expand_rtx (expand_encoding, operands);
2403 : : }
2404 : :
2405 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8647 */
2406 : : rtx
2407 : 0 : gen_avx512fp16_vcvtss2sh_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2408 : : {
2409 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2410 : 0 : static const uint8_t expand_encoding[] = {
2411 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
2412 : : 0x6a, 0x81, 0x0c, 0x6a, 0x72, 0x2b, 0x81, 0x0a,
2413 : : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2414 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
2415 : : };
2416 : 0 : return expand_rtx (expand_encoding, operands);
2417 : : }
2418 : :
2419 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8839 */
2420 : : rtx
2421 : 18 : gen_sse_cvtsi2ss_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2422 : : {
2423 : 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2424 : 18 : static const uint8_t expand_encoding[] = {
2425 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
2426 : : 0x6b, 0x81, 0x0c, 0x6b, 0x73, 0x2d, 0x01, 0x02,
2427 : : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2428 : : };
2429 : 18 : return expand_rtx (expand_encoding, operands);
2430 : : }
2431 : :
2432 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8903 */
2433 : : rtx
2434 : 28 : gen_unspec_sse_cvttss2si_round (const rtx operand0, const rtx operand1, const rtx operand2)
2435 : : {
2436 : 28 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2437 : 28 : static const uint8_t expand_encoding[] = {
2438 : : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2439 : : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2440 : : 0x33
2441 : : };
2442 : 28 : return expand_rtx (expand_encoding, operands);
2443 : : }
2444 : :
2445 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8948 */
2446 : : rtx
2447 : 24 : gen_cvtusi2ss64_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2448 : : {
2449 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2450 : 24 : static const uint8_t expand_encoding[] = {
2451 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
2452 : : 0x6b, 0x81, 0x0c, 0x6b, 0x75, 0x2d, 0x01, 0x02,
2453 : : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2454 : : };
2455 : 24 : return expand_rtx (expand_encoding, operands);
2456 : : }
2457 : :
2458 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8975 */
2459 : : rtx
2460 : 0 : gen_floatunsv16siv16sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2461 : : {
2462 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2463 : 0 : static const uint8_t expand_encoding[] = {
2464 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x75, 0x74,
2465 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2466 : : };
2467 : 0 : return expand_rtx (expand_encoding, operands);
2468 : : }
2469 : :
2470 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9019 */
2471 : : rtx
2472 : 0 : gen_avx512f_fix_notruncv16sfv16si (const rtx operand0, const rtx operand1)
2473 : : {
2474 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2475 : 0 : static const uint8_t expand_encoding[] = {
2476 : : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x01, 0x01, 0x01,
2477 : : 0x2f
2478 : : };
2479 : 0 : return expand_rtx (expand_encoding, operands);
2480 : : }
2481 : :
2482 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9030 */
2483 : : rtx
2484 : 0 : gen_avx512vl_fixuns_notruncv4sfv4si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2485 : : {
2486 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2487 : 0 : static const uint8_t expand_encoding[] = {
2488 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x81, 0x09,
2489 : : 0x51, 0x1a, 0x51, 0x01, 0x01, 0x01, 0x81, 0x1d,
2490 : : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2491 : : };
2492 : 0 : return expand_rtx (expand_encoding, operands);
2493 : : }
2494 : :
2495 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9087 */
2496 : : rtx
2497 : 0 : gen_unspec_fix_truncv16sfv16si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2498 : : {
2499 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2500 : 0 : static const uint8_t expand_encoding[] = {
2501 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
2502 : : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2503 : : 0x03
2504 : : };
2505 : 0 : return expand_rtx (expand_encoding, operands);
2506 : : }
2507 : :
2508 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9098 */
2509 : : rtx
2510 : 0 : gen_fixuns_truncv16sfv16si2 (const rtx operand0, const rtx operand1)
2511 : : {
2512 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2513 : 0 : static const uint8_t expand_encoding[] = {
2514 : : 0x1f, 0x01, 0x00, 0x76, 0x5b, 0x01, 0x01
2515 : : };
2516 : 0 : return expand_rtx (expand_encoding, operands);
2517 : : }
2518 : :
2519 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9127 */
2520 : : rtx
2521 : 36 : gen_unspec_fix_truncv4sfv4si2 (const rtx operand0, const rtx operand1)
2522 : : {
2523 : 36 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2524 : 36 : static const uint8_t expand_encoding[] = {
2525 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2526 : : 0x81, 0x2d
2527 : : };
2528 : 36 : return expand_rtx (expand_encoding, operands);
2529 : : }
2530 : :
2531 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9279 */
2532 : : rtx
2533 : 0 : gen_unspec_fixuns_truncv2dfv2si2 (const rtx operand0, const rtx operand1)
2534 : : {
2535 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2536 : 0 : static const uint8_t expand_encoding[] = {
2537 : : 0x1f, 0x01, 0x00, 0x1a, 0x4a, 0x01, 0x01, 0x01,
2538 : : 0x81, 0x2e
2539 : : };
2540 : 0 : return expand_rtx (expand_encoding, operands);
2541 : : }
2542 : :
2543 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9357 */
2544 : : rtx
2545 : 22 : gen_unspec_avx512f_vcvttss2usi_round (const rtx operand0, const rtx operand1, const rtx operand2)
2546 : : {
2547 : 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2548 : 22 : static const uint8_t expand_encoding[] = {
2549 : : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2550 : : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2551 : : 0x33
2552 : : };
2553 : 22 : return expand_rtx (expand_encoding, operands);
2554 : : }
2555 : :
2556 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9380 */
2557 : : rtx
2558 : 19 : gen_avx512f_vcvtsd2usiq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2559 : : {
2560 : 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2561 : 19 : static const uint8_t expand_encoding[] = {
2562 : : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2563 : : 0x01, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
2564 : : 0x01, 0x27, 0x00, 0x81, 0x1d, 0x01, 0x02, 0x81,
2565 : : 0x33
2566 : : };
2567 : 19 : return expand_rtx (expand_encoding, operands);
2568 : : }
2569 : :
2570 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9416 */
2571 : : rtx
2572 : 33 : gen_sse2_cvtsd2siq (const rtx operand0, const rtx operand1)
2573 : : {
2574 : 33 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2575 : 33 : static const uint8_t expand_encoding[] = {
2576 : : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
2577 : : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2578 : : 0x2f
2579 : : };
2580 : 33 : return expand_rtx (expand_encoding, operands);
2581 : : }
2582 : :
2583 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9463 */
2584 : : rtx
2585 : 0 : gen_sse2_cvttsd2siq (const rtx operand0, const rtx operand1)
2586 : : {
2587 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2588 : 0 : static const uint8_t expand_encoding[] = {
2589 : : 0x1f, 0x01, 0x00, 0x74, 0x12, 0x81, 0x0a, 0x2e,
2590 : : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2591 : : };
2592 : 0 : return expand_rtx (expand_encoding, operands);
2593 : : }
2594 : :
2595 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9495 */
2596 : : rtx
2597 : 57 : gen_floatv8div8df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2598 : : {
2599 : 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2600 : 57 : static const uint8_t expand_encoding[] = {
2601 : : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
2602 : : 0x75, 0x73, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
2603 : : 0x03, 0x01, 0x04, 0x81, 0x33
2604 : : };
2605 : 57 : return expand_rtx (expand_encoding, operands);
2606 : : }
2607 : :
2608 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9495 */
2609 : : rtx
2610 : 1 : gen_floatv2div2df2 (const rtx operand0, const rtx operand1)
2611 : : {
2612 : 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2613 : 1 : static const uint8_t expand_encoding[] = {
2614 : : 0x1f, 0x01, 0x00, 0x73, 0x6c, 0x01, 0x01
2615 : : };
2616 : 1 : return expand_rtx (expand_encoding, operands);
2617 : : }
2618 : :
2619 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9495 */
2620 : : rtx
2621 : 0 : gen_floatunsv2div2df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2622 : : {
2623 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2624 : 0 : static const uint8_t expand_encoding[] = {
2625 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
2626 : : 0x6c, 0x75, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
2627 : : 0x03, 0x01, 0x04, 0x81, 0x33
2628 : : };
2629 : 0 : return expand_rtx (expand_encoding, operands);
2630 : : }
2631 : :
2632 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9509 */
2633 : : rtx
2634 : 36 : gen_floatunsv4div4sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2635 : : {
2636 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2637 : 36 : static const uint8_t expand_encoding[] = {
2638 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x75, 0x6b,
2639 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2640 : : };
2641 : 36 : return expand_rtx (expand_encoding, operands);
2642 : : }
2643 : :
2644 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9721 */
2645 : : rtx
2646 : 0 : gen_avx512f_cvtpd2dq512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2647 : : {
2648 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2649 : 0 : static const uint8_t expand_encoding[] = {
2650 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
2651 : : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x01, 0x03
2652 : : };
2653 : 0 : return expand_rtx (expand_encoding, operands);
2654 : : }
2655 : :
2656 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9822 */
2657 : : rtx
2658 : 0 : gen_fixuns_notruncv4dfv4si2 (const rtx operand0, const rtx operand1)
2659 : : {
2660 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2661 : 0 : static const uint8_t expand_encoding[] = {
2662 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2663 : : 0x81, 0x1d
2664 : : };
2665 : 0 : return expand_rtx (expand_encoding, operands);
2666 : : }
2667 : :
2668 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9880 */
2669 : : rtx
2670 : 0 : gen_unspec_fix_truncv8dfv8si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2671 : : {
2672 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2673 : 0 : static const uint8_t expand_encoding[] = {
2674 : : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x1a, 0x56,
2675 : : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2676 : : 0x33
2677 : : };
2678 : 0 : return expand_rtx (expand_encoding, operands);
2679 : : }
2680 : :
2681 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9891 */
2682 : : rtx
2683 : 0 : gen_fix_truncv8dfv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2684 : : {
2685 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2686 : 0 : static const uint8_t expand_encoding[] = {
2687 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x74, 0x56,
2688 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2689 : : };
2690 : 0 : return expand_rtx (expand_encoding, operands);
2691 : : }
2692 : :
2693 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9981 */
2694 : : rtx
2695 : 0 : gen_fix_truncv4dfv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2696 : : {
2697 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2698 : 0 : static const uint8_t expand_encoding[] = {
2699 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x74, 0x51,
2700 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2701 : : };
2702 : 0 : return expand_rtx (expand_encoding, operands);
2703 : : }
2704 : :
2705 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10009 */
2706 : : rtx
2707 : 0 : gen_unspec_fixuns_truncv8dfv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2708 : : {
2709 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2710 : 0 : static const uint8_t expand_encoding[] = {
2711 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
2712 : : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2713 : : 0x03
2714 : : };
2715 : 0 : return expand_rtx (expand_encoding, operands);
2716 : : }
2717 : :
2718 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10020 */
2719 : : rtx
2720 : 8 : gen_fix_truncv8dfv8di2 (const rtx operand0, const rtx operand1)
2721 : : {
2722 : 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2723 : 8 : static const uint8_t expand_encoding[] = {
2724 : : 0x1f, 0x01, 0x00, 0x74, 0x5c, 0x01, 0x01
2725 : : };
2726 : 8 : return expand_rtx (expand_encoding, operands);
2727 : : }
2728 : :
2729 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10020 */
2730 : : rtx
2731 : 4 : gen_fix_truncv4dfv4di2 (const rtx operand0, const rtx operand1)
2732 : : {
2733 : 4 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2734 : 4 : static const uint8_t expand_encoding[] = {
2735 : : 0x1f, 0x01, 0x00, 0x74, 0x57, 0x01, 0x01
2736 : : };
2737 : 4 : return expand_rtx (expand_encoding, operands);
2738 : : }
2739 : :
2740 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10030 */
2741 : : rtx
2742 : 0 : gen_fix_notruncv8dfv8di2 (const rtx operand0, const rtx operand1)
2743 : : {
2744 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2745 : 0 : static const uint8_t expand_encoding[] = {
2746 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
2747 : : 0x2f
2748 : : };
2749 : 0 : return expand_rtx (expand_encoding, operands);
2750 : : }
2751 : :
2752 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10041 */
2753 : : rtx
2754 : 0 : gen_fixuns_notruncv8dfv8di2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2755 : : {
2756 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2757 : 0 : static const uint8_t expand_encoding[] = {
2758 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x1a, 0x5c,
2759 : : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x81,
2760 : : 0x33
2761 : : };
2762 : 0 : return expand_rtx (expand_encoding, operands);
2763 : : }
2764 : :
2765 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10052 */
2766 : : rtx
2767 : 57 : gen_unspec_fix_truncv8sfv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2768 : : {
2769 : 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2770 : 57 : static const uint8_t expand_encoding[] = {
2771 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2772 : : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x81, 0x2d,
2773 : : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2774 : : };
2775 : 57 : return expand_rtx (expand_encoding, operands);
2776 : : }
2777 : :
2778 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10063 */
2779 : : rtx
2780 : 0 : gen_fix_truncv8sfv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2781 : : {
2782 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2783 : 0 : static const uint8_t expand_encoding[] = {
2784 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2785 : : 0x5c, 0x74, 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01,
2786 : : 0x03, 0x01, 0x04, 0x81, 0x33
2787 : : };
2788 : 0 : return expand_rtx (expand_encoding, operands);
2789 : : }
2790 : :
2791 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10073 */
2792 : : rtx
2793 : 36 : gen_unspec_avx512dq_fixuns_truncv2sfv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2794 : : {
2795 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2796 : 36 : static const uint8_t expand_encoding[] = {
2797 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
2798 : : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2799 : : 0x03
2800 : : };
2801 : 36 : return expand_rtx (expand_encoding, operands);
2802 : : }
2803 : :
2804 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10290 */
2805 : : rtx
2806 : 0 : gen_sse2_cvttpd2dq_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2807 : : {
2808 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2809 : 0 : static const uint8_t expand_encoding[] = {
2810 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x81, 0x09,
2811 : : 0x4a, 0x74, 0x4a, 0x01, 0x01, 0x81, 0x0a, 0x4a,
2812 : : 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
2813 : : 0x01, 0x01, 0x03, 0x2c, 0x4a, 0x02, 0x27, 0x00,
2814 : : 0x27, 0x00
2815 : : };
2816 : 0 : return expand_rtx (expand_encoding, operands);
2817 : : }
2818 : :
2819 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10417 */
2820 : : rtx
2821 : 138 : gen_avx_cvtpd2ps256 (const rtx operand0, const rtx operand1)
2822 : : {
2823 : 138 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2824 : 138 : static const uint8_t expand_encoding[] = {
2825 : : 0x1f, 0x01, 0x00, 0x72, 0x6b, 0x01, 0x01
2826 : : };
2827 : 138 : return expand_rtx (expand_encoding, operands);
2828 : : }
2829 : :
2830 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10541 */
2831 : : rtx
2832 : 24 : gen_avx_cvtps2pd256_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2833 : : {
2834 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2835 : 24 : static const uint8_t expand_encoding[] = {
2836 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x71, 0x70,
2837 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2838 : : };
2839 : 24 : return expand_rtx (expand_encoding, operands);
2840 : : }
2841 : :
2842 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10589 */
2843 : : rtx
2844 : 12 : gen_avx512vl_cvtd2maskv8si (const rtx operand0, const rtx operand1)
2845 : : {
2846 : 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2847 : 12 : static const uint8_t expand_encoding[] = {
2848 : : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x01, 0x01, 0x01,
2849 : : 0x81, 0x40
2850 : : };
2851 : 12 : return expand_rtx (expand_encoding, operands);
2852 : : }
2853 : :
2854 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11419 */
2855 : : rtx
2856 : 1282 : gen_sse_movlhps (const rtx operand0, const rtx operand1, const rtx operand2)
2857 : : {
2858 : 1282 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2859 : 1282 : static const uint8_t expand_encoding[] = {
2860 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x81, 0x0b,
2861 : : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
2862 : : 0x27, 0x00, 0x27, 0x01, 0x27, 0x04, 0x27, 0x05
2863 : : };
2864 : 1282 : return expand_rtx (expand_encoding, operands);
2865 : : }
2866 : :
2867 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11571 */
2868 : : rtx
2869 : 13 : gen_avx_unpcklps256 (const rtx operand0, const rtx operand1, const rtx operand2)
2870 : : {
2871 : 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2872 : 13 : static const uint8_t expand_encoding[] = {
2873 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6f, 0x81, 0x0b,
2874 : : 0x74, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
2875 : : 0x27, 0x00, 0x27, 0x08, 0x27, 0x01, 0x27, 0x09,
2876 : : 0x27, 0x04, 0x27, 0x0c, 0x27, 0x05, 0x27, 0x0d
2877 : : };
2878 : 13 : return expand_rtx (expand_encoding, operands);
2879 : : }
2880 : :
2881 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11710 */
2882 : : rtx
2883 : 12 : gen_avx_movsldup256 (const rtx operand0, const rtx operand1)
2884 : : {
2885 : 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2886 : 12 : static const uint8_t expand_encoding[] = {
2887 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6f, 0x81, 0x0b,
2888 : : 0x74, 0x01, 0x01, 0x01, 0x01, 0x17, 0x00, 0x08,
2889 : : 0x27, 0x00, 0x27, 0x00, 0x27, 0x02, 0x27, 0x02,
2890 : : 0x27, 0x04, 0x27, 0x04, 0x27, 0x06, 0x27, 0x06
2891 : : };
2892 : 12 : return expand_rtx (expand_encoding, operands);
2893 : : }
2894 : :
2895 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11870 */
2896 : : rtx
2897 : 4875 : gen_sse_shufps_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
2898 : : {
2899 : 4875 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
2900 : 4875 : static const uint8_t expand_encoding[] = {
2901 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x81, 0x0b,
2902 : : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
2903 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06
2904 : : };
2905 : 4875 : return expand_rtx (expand_encoding, operands);
2906 : : }
2907 : :
2908 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12055 */
2909 : : rtx
2910 : 0 : gen_avx512f_vec_dupv8df_1 (const rtx operand0, const rtx operand1)
2911 : : {
2912 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2913 : 0 : static const uint8_t expand_encoding[] = {
2914 : : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x75, 0x81, 0x0a,
2915 : : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2916 : : };
2917 : 0 : return expand_rtx (expand_encoding, operands);
2918 : : }
2919 : :
2920 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12376 */
2921 : : rtx
2922 : 6 : gen_vec_setv32hf_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2923 : : {
2924 : 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2925 : 6 : static const uint8_t expand_encoding[] = {
2926 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x0c,
2927 : : 0x73, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2928 : : };
2929 : 6 : return expand_rtx (expand_encoding, operands);
2930 : : }
2931 : :
2932 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12547 */
2933 : : rtx
2934 : 51 : gen_sse4_1_insertps_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2935 : : {
2936 : 51 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2937 : 51 : static const uint8_t expand_encoding[] = {
2938 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x02,
2939 : : 0x01, 0x01, 0x01, 0x03, 0x33
2940 : : };
2941 : 51 : return expand_rtx (expand_encoding, operands);
2942 : : }
2943 : :
2944 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12970 */
2945 : : rtx
2946 : 436 : gen_vec_extract_hi_v8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2947 : : {
2948 : 436 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2949 : 436 : static const uint8_t expand_encoding[] = {
2950 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
2951 : : 0x70, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x04,
2952 : : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x02,
2953 : : 0x01, 0x03
2954 : : };
2955 : 436 : return expand_rtx (expand_encoding, operands);
2956 : : }
2957 : :
2958 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13124 */
2959 : : rtx
2960 : 724 : gen_vec_extract_lo_v16sf (const rtx operand0, const rtx operand1)
2961 : : {
2962 : 724 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2963 : 724 : static const uint8_t expand_encoding[] = {
2964 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6f, 0x01, 0x01,
2965 : : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x01, 0x27,
2966 : : 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05, 0x27,
2967 : : 0x06, 0x27, 0x07
2968 : : };
2969 : 724 : return expand_rtx (expand_encoding, operands);
2970 : : }
2971 : :
2972 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13231 */
2973 : : rtx
2974 : 4140 : gen_vec_extract_hi_v4df (const rtx operand0, const rtx operand1)
2975 : : {
2976 : 4140 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2977 : 4140 : static const uint8_t expand_encoding[] = {
2978 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6c, 0x01, 0x01,
2979 : : 0x17, 0x00, 0x02, 0x27, 0x02, 0x27, 0x03
2980 : : };
2981 : 4140 : return expand_rtx (expand_encoding, operands);
2982 : : }
2983 : :
2984 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13316 */
2985 : : rtx
2986 : 2244 : gen_vec_extract_hi_v8sf (const rtx operand0, const rtx operand1)
2987 : : {
2988 : 2244 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2989 : 2244 : static const uint8_t expand_encoding[] = {
2990 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x01, 0x01,
2991 : : 0x17, 0x00, 0x04, 0x27, 0x04, 0x27, 0x05, 0x27,
2992 : : 0x06, 0x27, 0x07
2993 : : };
2994 : 2244 : return expand_rtx (expand_encoding, operands);
2995 : : }
2996 : :
2997 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13407 */
2998 : : rtx
2999 : 989 : gen_vec_extract_hi_v16hi (const rtx operand0, const rtx operand1)
3000 : : {
3001 : 989 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3002 : 989 : static const uint8_t expand_encoding[] = {
3003 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x50, 0x01, 0x01,
3004 : : 0x17, 0x00, 0x08, 0x27, 0x08, 0x27, 0x09, 0x27,
3005 : : 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d, 0x27,
3006 : : 0x0e, 0x27, 0x0f
3007 : : };
3008 : 989 : return expand_rtx (expand_encoding, operands);
3009 : : }
3010 : :
3011 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13694 */
3012 : : rtx
3013 : 24 : gen_avx512vl_unpckhpd128_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3014 : : {
3015 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3016 : 24 : static const uint8_t expand_encoding[] = {
3017 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0a,
3018 : : 0x6c, 0x81, 0x0b, 0x70, 0x01, 0x01, 0x01, 0x02,
3019 : : 0x17, 0x00, 0x02, 0x27, 0x01, 0x27, 0x03, 0x01,
3020 : : 0x03, 0x01, 0x04
3021 : : };
3022 : 24 : return expand_rtx (expand_encoding, operands);
3023 : : }
3024 : :
3025 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13781 */
3026 : : rtx
3027 : 24 : gen_avx_movddup256_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3028 : : {
3029 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3030 : 24 : static const uint8_t expand_encoding[] = {
3031 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
3032 : : 0x70, 0x81, 0x0b, 0x75, 0x01, 0x01, 0x01, 0x01,
3033 : : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x04, 0x27,
3034 : : 0x02, 0x27, 0x06, 0x01, 0x02, 0x01, 0x03
3035 : : };
3036 : 24 : return expand_rtx (expand_encoding, operands);
3037 : : }
3038 : :
3039 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13923 */
3040 : : rtx
3041 : 0 : gen_avx512f_vmscalefv2df (const rtx operand0, const rtx operand1, const rtx operand2)
3042 : : {
3043 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3044 : 0 : static const uint8_t expand_encoding[] = {
3045 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3046 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x01,
3047 : : 0x27, 0x01
3048 : : };
3049 : 0 : return expand_rtx (expand_encoding, operands);
3050 : : }
3051 : :
3052 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13937 */
3053 : : rtx
3054 : 69 : gen_avx512bw_scalefv32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3055 : : {
3056 : 69 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3057 : 69 : static const uint8_t expand_encoding[] = {
3058 : : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
3059 : : 0x73, 0x1a, 0x73, 0x02, 0x01, 0x01, 0x01, 0x02,
3060 : : 0x3b, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3061 : : 0x33
3062 : : };
3063 : 69 : return expand_rtx (expand_encoding, operands);
3064 : : }
3065 : :
3066 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13937 */
3067 : : rtx
3068 : 0 : gen_avx512vl_scalefv8sf (const rtx operand0, const rtx operand1, const rtx operand2)
3069 : : {
3070 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3071 : 0 : static const uint8_t expand_encoding[] = {
3072 : : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01, 0x01,
3073 : : 0x01, 0x02, 0x3b
3074 : : };
3075 : 0 : return expand_rtx (expand_encoding, operands);
3076 : : }
3077 : :
3078 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13937 */
3079 : : rtx
3080 : 0 : gen_avx512f_scalefv8df (const rtx operand0, const rtx operand1, const rtx operand2)
3081 : : {
3082 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3083 : 0 : static const uint8_t expand_encoding[] = {
3084 : : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x01, 0x01,
3085 : : 0x01, 0x02, 0x3b
3086 : : };
3087 : 0 : return expand_rtx (expand_encoding, operands);
3088 : : }
3089 : :
3090 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13937 */
3091 : : rtx
3092 : 0 : gen_avx512vl_scalefv2df (const rtx operand0, const rtx operand1, const rtx operand2)
3093 : : {
3094 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3095 : 0 : static const uint8_t expand_encoding[] = {
3096 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01, 0x01,
3097 : : 0x01, 0x02, 0x3b
3098 : : };
3099 : 0 : return expand_rtx (expand_encoding, operands);
3100 : : }
3101 : :
3102 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13963 */
3103 : : rtx
3104 : 0 : gen_avx512vl_vternlogv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3105 : : {
3106 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3107 : 0 : static const uint8_t expand_encoding[] = {
3108 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01, 0x01,
3109 : : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x25
3110 : : };
3111 : 0 : return expand_rtx (expand_encoding, operands);
3112 : : }
3113 : :
3114 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14347 */
3115 : : rtx
3116 : 0 : gen_avx512bw_getexpv32hf_round (const rtx operand0, const rtx operand1, const rtx operand2)
3117 : : {
3118 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3119 : 0 : static const uint8_t expand_encoding[] = {
3120 : : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
3121 : : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x81,
3122 : : 0x33
3123 : : };
3124 : 0 : return expand_rtx (expand_encoding, operands);
3125 : : }
3126 : :
3127 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14347 */
3128 : : rtx
3129 : 36 : gen_avx512fp16_getexpv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3130 : : {
3131 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3132 : 36 : static const uint8_t expand_encoding[] = {
3133 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
3134 : : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
3135 : : 0x03
3136 : : };
3137 : 36 : return expand_rtx (expand_encoding, operands);
3138 : : }
3139 : :
3140 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14347 */
3141 : : rtx
3142 : 0 : gen_avx512vl_getexpv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2)
3143 : : {
3144 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3145 : 0 : static const uint8_t expand_encoding[] = {
3146 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x1a, 0x6b,
3147 : : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x81,
3148 : : 0x33
3149 : : };
3150 : 0 : return expand_rtx (expand_encoding, operands);
3151 : : }
3152 : :
3153 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14347 */
3154 : : rtx
3155 : 36 : gen_avx512vl_getexpv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3156 : : {
3157 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3158 : 36 : static const uint8_t expand_encoding[] = {
3159 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
3160 : : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
3161 : : 0x03
3162 : : };
3163 : 36 : return expand_rtx (expand_encoding, operands);
3164 : : }
3165 : :
3166 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14356 */
3167 : : rtx
3168 : 0 : gen_avx512f_sgetexpv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3169 : : {
3170 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3171 : 0 : static const uint8_t expand_encoding[] = {
3172 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
3173 : : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
3174 : : 0x81, 0x26, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01,
3175 : : 0x27, 0x01
3176 : : };
3177 : 0 : return expand_rtx (expand_encoding, operands);
3178 : : }
3179 : :
3180 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14370 */
3181 : : rtx
3182 : 24 : gen_avx512vl_alignv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3183 : : {
3184 : 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3185 : 24 : static const uint8_t expand_encoding[] = {
3186 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
3187 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
3188 : : 0x28, 0x01, 0x04, 0x01, 0x05
3189 : : };
3190 : 24 : return expand_rtx (expand_encoding, operands);
3191 : : }
3192 : :
3193 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14458 */
3194 : : rtx
3195 : 8 : gen_avx512vl_fixupimmv8sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3196 : : {
3197 : 8 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3198 : 8 : static const uint8_t expand_encoding[] = {
3199 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
3200 : : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3201 : : 0x04, 0x81, 0x24, 0x01, 0x05, 0x01, 0x06
3202 : : };
3203 : 8 : return expand_rtx (expand_encoding, operands);
3204 : : }
3205 : :
3206 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14458 */
3207 : : rtx
3208 : 0 : gen_avx512vl_fixupimmv4df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3209 : : {
3210 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3211 : 0 : static const uint8_t expand_encoding[] = {
3212 : : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x1a, 0x70,
3213 : : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3214 : : 0x04, 0x81, 0x24, 0x01, 0x05, 0x81, 0x33
3215 : : };
3216 : 0 : return expand_rtx (expand_encoding, operands);
3217 : : }
3218 : :
3219 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14471 */
3220 : : rtx
3221 : 16 : gen_avx512vl_fixupimmv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3222 : : {
3223 : 16 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3224 : 16 : static const uint8_t expand_encoding[] = {
3225 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
3226 : : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3227 : : 0x04, 0x81, 0x24, 0x01, 0x01, 0x01, 0x05
3228 : : };
3229 : 16 : return expand_rtx (expand_encoding, operands);
3230 : : }
3231 : :
3232 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14503 */
3233 : : rtx
3234 : 0 : gen_avx512f_sfixupimmv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3235 : : {
3236 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3237 : 0 : static const uint8_t expand_encoding[] = {
3238 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
3239 : : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3240 : : 0x04, 0x81, 0x24, 0x01, 0x02, 0x27, 0x01
3241 : : };
3242 : 0 : return expand_rtx (expand_encoding, operands);
3243 : : }
3244 : :
3245 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14519 */
3246 : : rtx
3247 : 38 : gen_avx512f_sfixupimmv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3248 : : {
3249 : 38 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3250 : 38 : static const uint8_t expand_encoding[] = {
3251 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3252 : : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x04, 0x01,
3253 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
3254 : : 0x24, 0x01, 0x02, 0x27, 0x01, 0x01, 0x01, 0x01,
3255 : : 0x05, 0x01, 0x06, 0x81, 0x33
3256 : : };
3257 : 38 : return expand_rtx (expand_encoding, operands);
3258 : : }
3259 : :
3260 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14538 */
3261 : : rtx
3262 : 0 : gen_avx512fp16_rndscalev8hf (const rtx operand0, const rtx operand1, const rtx operand2)
3263 : : {
3264 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3265 : 0 : static const uint8_t expand_encoding[] = {
3266 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x01, 0x01,
3267 : : 0x01, 0x02, 0x5f
3268 : : };
3269 : 0 : return expand_rtx (expand_encoding, operands);
3270 : : }
3271 : :
3272 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14538 */
3273 : : rtx
3274 : 0 : gen_avx512vl_rndscalev8sf (const rtx operand0, const rtx operand1, const rtx operand2)
3275 : : {
3276 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3277 : 0 : static const uint8_t expand_encoding[] = {
3278 : : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01, 0x01,
3279 : : 0x01, 0x02, 0x5f
3280 : : };
3281 : 0 : return expand_rtx (expand_encoding, operands);
3282 : : }
3283 : :
3284 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14538 */
3285 : : rtx
3286 : 0 : gen_avx512f_rndscalev8df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3287 : : {
3288 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3289 : 0 : static const uint8_t expand_encoding[] = {
3290 : : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x1a, 0x75,
3291 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3292 : : 0x81, 0x33
3293 : : };
3294 : 0 : return expand_rtx (expand_encoding, operands);
3295 : : }
3296 : :
3297 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14538 */
3298 : : rtx
3299 : 24 : gen_avx512vl_rndscalev2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3300 : : {
3301 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3302 : 24 : static const uint8_t expand_encoding[] = {
3303 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3304 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3305 : : 0x01, 0x04
3306 : : };
3307 : 24 : return expand_rtx (expand_encoding, operands);
3308 : : }
3309 : :
3310 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14550 */
3311 : : rtx
3312 : 0 : gen_avx512f_rndscalev2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3313 : : {
3314 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3315 : 0 : static const uint8_t expand_encoding[] = {
3316 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3317 : : 0x02, 0x01, 0x02, 0x01, 0x03, 0x5f, 0x01, 0x01,
3318 : : 0x27, 0x01
3319 : : };
3320 : 0 : return expand_rtx (expand_encoding, operands);
3321 : : }
3322 : :
3323 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14708 */
3324 : : rtx
3325 : 16 : gen_avx_shufpd256_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7, const rtx operand8)
3326 : : {
3327 : 16 : rtx operands[9] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8 };
3328 : 16 : static const uint8_t expand_encoding[] = {
3329 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
3330 : : 0x70, 0x81, 0x0b, 0x75, 0x01, 0x01, 0x01, 0x02,
3331 : : 0x17, 0x00, 0x04, 0x01, 0x03, 0x01, 0x04, 0x01,
3332 : : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08
3333 : : };
3334 : 16 : return expand_rtx (expand_encoding, operands);
3335 : : }
3336 : :
3337 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14825 */
3338 : : rtx
3339 : 24 : gen_avx2_interleave_lowv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3340 : : {
3341 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3342 : 24 : static const uint8_t expand_encoding[] = {
3343 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x0a,
3344 : : 0x57, 0x81, 0x0b, 0x5c, 0x01, 0x01, 0x01, 0x02,
3345 : : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x04, 0x27,
3346 : : 0x02, 0x27, 0x06, 0x01, 0x03, 0x01, 0x04
3347 : : };
3348 : 24 : return expand_rtx (expand_encoding, operands);
3349 : : }
3350 : :
3351 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15160 */
3352 : : rtx
3353 : 77 : gen_sse2_movsd_v2df (const rtx operand0, const rtx operand1, const rtx operand2)
3354 : : {
3355 : 77 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3356 : 77 : static const uint8_t expand_encoding[] = {
3357 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x01, 0x02,
3358 : : 0x01, 0x01, 0x27, 0x01
3359 : : };
3360 : 77 : return expand_rtx (expand_encoding, operands);
3361 : : }
3362 : :
3363 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15448 */
3364 : : rtx
3365 : 36 : gen_avx512f_truncatev16siv16hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3366 : : {
3367 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3368 : 36 : static const uint8_t expand_encoding[] = {
3369 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x70, 0x55,
3370 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3371 : : };
3372 : 36 : return expand_rtx (expand_encoding, operands);
3373 : : }
3374 : :
3375 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15477 */
3376 : : rtx
3377 : 0 : gen_avx512bw_us_truncatev32hiv32qi2 (const rtx operand0, const rtx operand1)
3378 : : {
3379 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3380 : 0 : static const uint8_t expand_encoding[] = {
3381 : : 0x1f, 0x01, 0x00, 0x81, 0x18, 0x54, 0x01, 0x01
3382 : : };
3383 : 0 : return expand_rtx (expand_encoding, operands);
3384 : : }
3385 : :
3386 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15620 */
3387 : : rtx
3388 : 36 : gen_avx512vl_ss_truncatev16hiv16qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3389 : : {
3390 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3391 : 36 : static const uint8_t expand_encoding[] = {
3392 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x81, 0x17,
3393 : : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3394 : : };
3395 : 36 : return expand_rtx (expand_encoding, operands);
3396 : : }
3397 : :
3398 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15681 */
3399 : : rtx
3400 : 7 : gen_avx512vl_truncatev8siv8qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3401 : : {
3402 : 7 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3403 : 7 : static const uint8_t expand_encoding[] = {
3404 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x70, 0x48,
3405 : : 0x01, 0x01, 0x01, 0x02
3406 : : };
3407 : 7 : return expand_rtx (expand_encoding, operands);
3408 : : }
3409 : :
3410 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15739 */
3411 : : rtx
3412 : 36 : gen_avx512vl_us_truncatev2div2qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3413 : : {
3414 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3415 : 36 : static const uint8_t expand_encoding[] = {
3416 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x09,
3417 : : 0x44, 0x81, 0x18, 0x44, 0x01, 0x01, 0x81, 0x0a,
3418 : : 0x44, 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00,
3419 : : 0x27, 0x01, 0x01, 0x03, 0x2c, 0x4e, 0x0e, 0x27,
3420 : : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3421 : : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3422 : : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3423 : : 0x00, 0x27, 0x00
3424 : : };
3425 : 36 : return expand_rtx (expand_encoding, operands);
3426 : : }
3427 : :
3428 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15878 */
3429 : : rtx
3430 : 11 : gen_avx512vl_ss_truncatev4div4qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3431 : : {
3432 : 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3433 : 11 : static const uint8_t expand_encoding[] = {
3434 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x45, 0x81, 0x17,
3435 : : 0x45, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3436 : : };
3437 : 11 : return expand_rtx (expand_encoding, operands);
3438 : : }
3439 : :
3440 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15932 */
3441 : : rtx
3442 : 36 : gen_avx512vl_us_truncatev8siv8qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3443 : : {
3444 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3445 : 36 : static const uint8_t expand_encoding[] = {
3446 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x09,
3447 : : 0x48, 0x81, 0x18, 0x48, 0x01, 0x01, 0x81, 0x0a,
3448 : : 0x48, 0x01, 0x02, 0x17, 0x00, 0x08, 0x27, 0x00,
3449 : : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
3450 : : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x03,
3451 : : 0x2c, 0x48, 0x08, 0x27, 0x00, 0x27, 0x00, 0x27,
3452 : : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3453 : : 0x00, 0x27, 0x00
3454 : : };
3455 : 36 : return expand_rtx (expand_encoding, operands);
3456 : : }
3457 : :
3458 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16036 */
3459 : : rtx
3460 : 5 : gen_avx512vl_truncatev4siv4hi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3461 : : {
3462 : 5 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3463 : 5 : static const uint8_t expand_encoding[] = {
3464 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x70, 0x49,
3465 : : 0x01, 0x01, 0x01, 0x02
3466 : : };
3467 : 5 : return expand_rtx (expand_encoding, operands);
3468 : : }
3469 : :
3470 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16130 */
3471 : : rtx
3472 : 11 : gen_avx512vl_us_truncatev4siv4hi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3473 : : {
3474 : 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3475 : 11 : static const uint8_t expand_encoding[] = {
3476 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x49, 0x81, 0x18,
3477 : : 0x49, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3478 : : };
3479 : 11 : return expand_rtx (expand_encoding, operands);
3480 : : }
3481 : :
3482 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16185 */
3483 : : rtx
3484 : 36 : gen_avx512vl_ss_truncatev2div2hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3485 : : {
3486 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3487 : 36 : static const uint8_t expand_encoding[] = {
3488 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x81, 0x09,
3489 : : 0x46, 0x81, 0x17, 0x46, 0x01, 0x01, 0x81, 0x0a,
3490 : : 0x46, 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00,
3491 : : 0x27, 0x01, 0x01, 0x03, 0x2c, 0x4d, 0x06, 0x27,
3492 : : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3493 : : 0x00, 0x27, 0x00
3494 : : };
3495 : 36 : return expand_rtx (expand_encoding, operands);
3496 : : }
3497 : :
3498 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16367 */
3499 : : rtx
3500 : 11 : gen_avx512vl_us_truncatev2div2si2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3501 : : {
3502 : 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3503 : 11 : static const uint8_t expand_encoding[] = {
3504 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4a, 0x81, 0x18,
3505 : : 0x4a, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3506 : : };
3507 : 11 : return expand_rtx (expand_encoding, operands);
3508 : : }
3509 : :
3510 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16492 */
3511 : : rtx
3512 : 12 : gen_avx512f_truncatev8div16qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3513 : : {
3514 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3515 : 12 : static const uint8_t expand_encoding[] = {
3516 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x70, 0x48,
3517 : : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3518 : : };
3519 : 12 : return expand_rtx (expand_encoding, operands);
3520 : : }
3521 : :
3522 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16985 */
3523 : : rtx
3524 : 24 : gen_avx512bw_pmaddwd512v8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3525 : : {
3526 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3527 : 24 : static const uint8_t expand_encoding[] = {
3528 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
3529 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x3d, 0x01,
3530 : : 0x03, 0x01, 0x04
3531 : : };
3532 : 24 : return expand_rtx (expand_encoding, operands);
3533 : : }
3534 : :
3535 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17453 */
3536 : : rtx
3537 : 73 : gen_ashrv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3538 : : {
3539 : 73 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3540 : 73 : static const uint8_t expand_encoding[] = {
3541 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4f, 0x5b,
3542 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3543 : : };
3544 : 73 : return expand_rtx (expand_encoding, operands);
3545 : : }
3546 : :
3547 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17605 */
3548 : : rtx
3549 : 44 : gen_ashlv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3550 : : {
3551 : 44 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3552 : 44 : static const uint8_t expand_encoding[] = {
3553 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x4d, 0x57,
3554 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3555 : : };
3556 : 44 : return expand_rtx (expand_encoding, operands);
3557 : : }
3558 : :
3559 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17619 */
3560 : : rtx
3561 : 247 : gen_ashlv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3562 : : {
3563 : 247 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3564 : 247 : static const uint8_t expand_encoding[] = {
3565 : : 0x1f, 0x01, 0x00, 0x4d, 0x57, 0x01, 0x01, 0x01,
3566 : : 0x02
3567 : : };
3568 : 247 : return expand_rtx (expand_encoding, operands);
3569 : : }
3570 : :
3571 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17693 */
3572 : : rtx
3573 : 1022 : gen_lshrv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3574 : : {
3575 : 1022 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3576 : 1022 : static const uint8_t expand_encoding[] = {
3577 : : 0x1f, 0x01, 0x00, 0x50, 0x5b, 0x01, 0x01, 0x01,
3578 : : 0x02
3579 : : };
3580 : 1022 : return expand_rtx (expand_encoding, operands);
3581 : : }
3582 : :
3583 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17912 */
3584 : : rtx
3585 : 0 : gen_avx512bw_ashlv2ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
3586 : : {
3587 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3588 : 0 : static const uint8_t expand_encoding[] = {
3589 : : 0x1f, 0x01, 0x00, 0x4d, 0x58, 0x01, 0x01, 0x01,
3590 : : 0x02
3591 : : };
3592 : 0 : return expand_rtx (expand_encoding, operands);
3593 : : }
3594 : :
3595 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17954 */
3596 : : rtx
3597 : 0 : gen_avx512f_rorvv16si (const rtx operand0, const rtx operand1, const rtx operand2)
3598 : : {
3599 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3600 : 0 : static const uint8_t expand_encoding[] = {
3601 : : 0x1f, 0x01, 0x00, 0x51, 0x5b, 0x01, 0x01, 0x01,
3602 : : 0x02
3603 : : };
3604 : 0 : return expand_rtx (expand_encoding, operands);
3605 : : }
3606 : :
3607 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17954 */
3608 : : rtx
3609 : 36 : gen_avx512vl_rorvv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3610 : : {
3611 : 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3612 : 36 : static const uint8_t expand_encoding[] = {
3613 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x51, 0x51,
3614 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3615 : : };
3616 : 36 : return expand_rtx (expand_encoding, operands);
3617 : : }
3618 : :
3619 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17954 */
3620 : : rtx
3621 : 36 : gen_avx512vl_rorvv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3622 : : {
3623 : 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3624 : 36 : static const uint8_t expand_encoding[] = {
3625 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x51, 0x52,
3626 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3627 : : };
3628 : 36 : return expand_rtx (expand_encoding, operands);
3629 : : }
3630 : :
3631 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17964 */
3632 : : rtx
3633 : 0 : gen_avx512vl_rorv4si (const rtx operand0, const rtx operand1, const rtx operand2)
3634 : : {
3635 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3636 : 0 : static const uint8_t expand_encoding[] = {
3637 : : 0x1f, 0x01, 0x00, 0x51, 0x51, 0x01, 0x01, 0x01,
3638 : : 0x02
3639 : : };
3640 : 0 : return expand_rtx (expand_encoding, operands);
3641 : : }
3642 : :
3643 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17964 */
3644 : : rtx
3645 : 24 : gen_avx512vl_rorv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3646 : : {
3647 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3648 : 24 : static const uint8_t expand_encoding[] = {
3649 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x51, 0x57,
3650 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3651 : : };
3652 : 24 : return expand_rtx (expand_encoding, operands);
3653 : : }
3654 : :
3655 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18689 */
3656 : : rtx
3657 : 0 : gen_one_cmplv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3658 : : {
3659 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3660 : 0 : static const uint8_t expand_encoding[] = {
3661 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4b, 0x5c,
3662 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3663 : : };
3664 : 0 : return expand_rtx (expand_encoding, operands);
3665 : : }
3666 : :
3667 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19379 */
3668 : : rtx
3669 : 0 : gen_avx512vl_testmv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3670 : : {
3671 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3672 : 0 : static const uint8_t expand_encoding[] = {
3673 : : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x01, 0x01,
3674 : : 0x01, 0x02, 0x81, 0x1f
3675 : : };
3676 : 0 : return expand_rtx (expand_encoding, operands);
3677 : : }
3678 : :
3679 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19379 */
3680 : : rtx
3681 : 24 : gen_avx512vl_testmv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3682 : : {
3683 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3684 : 24 : static const uint8_t expand_encoding[] = {
3685 : : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3686 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x1f, 0x01, 0x03
3687 : : };
3688 : 24 : return expand_rtx (expand_encoding, operands);
3689 : : }
3690 : :
3691 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19379 */
3692 : : rtx
3693 : 0 : gen_avx512vl_testmv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3694 : : {
3695 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3696 : 0 : static const uint8_t expand_encoding[] = {
3697 : : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
3698 : : 0x01, 0x02, 0x81, 0x1f
3699 : : };
3700 : 0 : return expand_rtx (expand_encoding, operands);
3701 : : }
3702 : :
3703 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19390 */
3704 : : rtx
3705 : 24 : gen_avx512bw_testnmv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3706 : : {
3707 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3708 : 24 : static const uint8_t expand_encoding[] = {
3709 : : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x02,
3710 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x20, 0x01, 0x03
3711 : : };
3712 : 24 : return expand_rtx (expand_encoding, operands);
3713 : : }
3714 : :
3715 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19390 */
3716 : : rtx
3717 : 0 : gen_avx512f_testnmv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3718 : : {
3719 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3720 : 0 : static const uint8_t expand_encoding[] = {
3721 : : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
3722 : : 0x01, 0x02, 0x81, 0x20
3723 : : };
3724 : 0 : return expand_rtx (expand_encoding, operands);
3725 : : }
3726 : :
3727 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19555 */
3728 : : rtx
3729 : 24 : gen_avx2_packsswb_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3730 : : {
3731 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3732 : 24 : static const uint8_t expand_encoding[] = {
3733 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81, 0x0a,
3734 : : 0x54, 0x81, 0x0b, 0x54, 0x81, 0x17, 0x4f, 0x01,
3735 : : 0x01, 0x81, 0x17, 0x4f, 0x01, 0x02, 0x17, 0x00,
3736 : : 0x20, 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27,
3737 : : 0x03, 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27,
3738 : : 0x07, 0x27, 0x10, 0x27, 0x11, 0x27, 0x12, 0x27,
3739 : : 0x13, 0x27, 0x14, 0x27, 0x15, 0x27, 0x16, 0x27,
3740 : : 0x17, 0x27, 0x08, 0x27, 0x09, 0x27, 0x0a, 0x27,
3741 : : 0x0b, 0x27, 0x0c, 0x27, 0x0d, 0x27, 0x0e, 0x27,
3742 : : 0x0f, 0x27, 0x18, 0x27, 0x19, 0x27, 0x1a, 0x27,
3743 : : 0x1b, 0x27, 0x1c, 0x27, 0x1d, 0x27, 0x1e, 0x27,
3744 : : 0x1f, 0x01, 0x03, 0x01, 0x04
3745 : : };
3746 : 24 : return expand_rtx (expand_encoding, operands);
3747 : : }
3748 : :
3749 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19719 */
3750 : : rtx
3751 : 64 : gen_avx512bw_interleave_highv64qi (const rtx operand0, const rtx operand1, const rtx operand2)
3752 : : {
3753 : 64 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3754 : 64 : static const uint8_t expand_encoding[] = {
3755 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x59, 0x81, 0x0b,
3756 : : 0x5e, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x40,
3757 : : 0x27, 0x08, 0x27, 0x48, 0x27, 0x09, 0x27, 0x49,
3758 : : 0x27, 0x0a, 0x27, 0x4a, 0x27, 0x0b, 0x27, 0x4b,
3759 : : 0x27, 0x0c, 0x27, 0x4c, 0x27, 0x0d, 0x27, 0x4d,
3760 : : 0x27, 0x0e, 0x27, 0x4e, 0x27, 0x0f, 0x27, 0x4f,
3761 : : 0x27, 0x18, 0x27, 0x58, 0x27, 0x19, 0x27, 0x59,
3762 : : 0x27, 0x1a, 0x27, 0x5a, 0x27, 0x1b, 0x27, 0x5b,
3763 : : 0x27, 0x1c, 0x27, 0x5c, 0x27, 0x1d, 0x27, 0x5d,
3764 : : 0x27, 0x1e, 0x27, 0x5e, 0x27, 0x1f, 0x27, 0x5f,
3765 : : 0x27, 0x28, 0x27, 0x68, 0x27, 0x29, 0x27, 0x69,
3766 : : 0x27, 0x2a, 0x27, 0x6a, 0x27, 0x2b, 0x27, 0x6b,
3767 : : 0x27, 0x2c, 0x27, 0x6c, 0x27, 0x2d, 0x27, 0x6d,
3768 : : 0x27, 0x2e, 0x27, 0x6e, 0x27, 0x2f, 0x27, 0x6f,
3769 : : 0x27, 0x38, 0x27, 0x78, 0x27, 0x39, 0x27, 0x79,
3770 : : 0x27, 0x3a, 0x27, 0x7a, 0x27, 0x3b, 0x27, 0x7b,
3771 : : 0x27, 0x3c, 0x27, 0x7c, 0x27, 0x3d, 0x27, 0x7d,
3772 : : 0x27, 0x3e, 0x27, 0x7e, 0x27, 0x3f, 0x27, 0x7f
3773 : : };
3774 : 64 : return expand_rtx (expand_encoding, operands);
3775 : : }
3776 : :
3777 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19911 */
3778 : : rtx
3779 : 0 : gen_avx512bw_interleave_highv32hf (const rtx operand0, const rtx operand1, const rtx operand2)
3780 : : {
3781 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3782 : 0 : static const uint8_t expand_encoding[] = {
3783 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x73, 0x81, 0x0b,
3784 : : 0x78, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x20,
3785 : : 0x27, 0x04, 0x27, 0x24, 0x27, 0x05, 0x27, 0x25,
3786 : : 0x27, 0x06, 0x27, 0x26, 0x27, 0x07, 0x27, 0x27,
3787 : : 0x27, 0x0c, 0x27, 0x2c, 0x27, 0x0d, 0x27, 0x2d,
3788 : : 0x27, 0x0e, 0x27, 0x2e, 0x27, 0x0f, 0x27, 0x2f,
3789 : : 0x27, 0x14, 0x27, 0x34, 0x27, 0x15, 0x27, 0x35,
3790 : : 0x27, 0x16, 0x27, 0x36, 0x27, 0x17, 0x27, 0x37,
3791 : : 0x27, 0x1c, 0x27, 0x3c, 0x27, 0x1d, 0x27, 0x3d,
3792 : : 0x27, 0x1e, 0x27, 0x3e, 0x27, 0x1f, 0x27, 0x3f
3793 : : };
3794 : 0 : return expand_rtx (expand_encoding, operands);
3795 : : }
3796 : :
3797 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19959 */
3798 : : rtx
3799 : 7828 : gen_vec_interleave_highv8hi (const rtx operand0, const rtx operand1, const rtx operand2)
3800 : : {
3801 : 7828 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3802 : 7828 : static const uint8_t expand_encoding[] = {
3803 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x50, 0x81, 0x0b,
3804 : : 0x55, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3805 : : 0x27, 0x04, 0x27, 0x0c, 0x27, 0x05, 0x27, 0x0d,
3806 : : 0x27, 0x06, 0x27, 0x0e, 0x27, 0x07, 0x27, 0x0f
3807 : : };
3808 : 7828 : return expand_rtx (expand_encoding, operands);
3809 : : }
3810 : :
3811 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20007 */
3812 : : rtx
3813 : 32 : gen_avx2_interleave_lowv16hi (const rtx operand0, const rtx operand1, const rtx operand2)
3814 : : {
3815 : 32 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3816 : 32 : static const uint8_t expand_encoding[] = {
3817 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x55, 0x81, 0x0b,
3818 : : 0x5a, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10,
3819 : : 0x27, 0x00, 0x27, 0x10, 0x27, 0x01, 0x27, 0x11,
3820 : : 0x27, 0x02, 0x27, 0x12, 0x27, 0x03, 0x27, 0x13,
3821 : : 0x27, 0x08, 0x27, 0x18, 0x27, 0x09, 0x27, 0x19,
3822 : : 0x27, 0x0a, 0x27, 0x1a, 0x27, 0x0b, 0x27, 0x1b
3823 : : };
3824 : 32 : return expand_rtx (expand_encoding, operands);
3825 : : }
3826 : :
3827 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20027 */
3828 : : rtx
3829 : 24 : gen_vec_interleave_lowv8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3830 : : {
3831 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3832 : 24 : static const uint8_t expand_encoding[] = {
3833 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0a,
3834 : : 0x50, 0x81, 0x0b, 0x55, 0x01, 0x01, 0x01, 0x02,
3835 : : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x08, 0x27,
3836 : : 0x01, 0x27, 0x09, 0x27, 0x02, 0x27, 0x0a, 0x27,
3837 : : 0x03, 0x27, 0x0b, 0x01, 0x03, 0x01, 0x04
3838 : : };
3839 : 24 : return expand_rtx (expand_encoding, operands);
3840 : : }
3841 : :
3842 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20102 */
3843 : : rtx
3844 : 24 : gen_avx2_interleave_lowv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3845 : : {
3846 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3847 : 24 : static const uint8_t expand_encoding[] = {
3848 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x0a,
3849 : : 0x56, 0x81, 0x0b, 0x5b, 0x01, 0x01, 0x01, 0x02,
3850 : : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x08, 0x27,
3851 : : 0x01, 0x27, 0x09, 0x27, 0x04, 0x27, 0x0c, 0x27,
3852 : : 0x05, 0x27, 0x0d, 0x01, 0x03, 0x01, 0x04
3853 : : };
3854 : 24 : return expand_rtx (expand_encoding, operands);
3855 : : }
3856 : :
3857 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20365 */
3858 : : rtx
3859 : 73 : gen_avx512f_vinsertf32x4_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3860 : : {
3861 : 73 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3862 : 73 : static const uint8_t expand_encoding[] = {
3863 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x09,
3864 : : 0x74, 0x01, 0x01, 0x81, 0x0c, 0x74, 0x01, 0x02,
3865 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
3866 : : };
3867 : 73 : return expand_rtx (expand_encoding, operands);
3868 : : }
3869 : :
3870 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20452 */
3871 : : rtx
3872 : 20 : gen_vec_set_lo_v8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3873 : : {
3874 : 20 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3875 : 20 : static const uint8_t expand_encoding[] = {
3876 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x0b,
3877 : : 0x75, 0x01, 0x02, 0x81, 0x0a, 0x70, 0x01, 0x01,
3878 : : 0x17, 0x00, 0x04, 0x27, 0x04, 0x27, 0x05, 0x27,
3879 : : 0x06, 0x27, 0x07, 0x01, 0x03, 0x01, 0x04
3880 : : };
3881 : 20 : return expand_rtx (expand_encoding, operands);
3882 : : }
3883 : :
3884 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20556 */
3885 : : rtx
3886 : 33 : gen_avx512f_shuf_f64x2_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7, const rtx operand8, const rtx operand9, const rtx operand10, const rtx operand11, const rtx operand12)
3887 : : {
3888 : 33 : rtx operands[13] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10, operand11, operand12 };
3889 : 33 : static const uint8_t expand_encoding[] = {
3890 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x0a,
3891 : : 0x75, 0x81, 0x0b, 0x7a, 0x01, 0x01, 0x01, 0x02,
3892 : : 0x17, 0x00, 0x08, 0x01, 0x03, 0x01, 0x04, 0x01,
3893 : : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08, 0x01,
3894 : : 0x09, 0x01, 0x0a, 0x01, 0x0b, 0x01, 0x0c
3895 : : };
3896 : 33 : return expand_rtx (expand_encoding, operands);
3897 : : }
3898 : :
3899 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20862 */
3900 : : rtx
3901 : 33 : gen_avx512f_pshufd_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7, const rtx operand8, const rtx operand9, const rtx operand10, const rtx operand11, const rtx operand12, const rtx operand13, const rtx operand14, const rtx operand15, const rtx operand16, const rtx operand17, const rtx operand18, const rtx operand19)
3902 : : {
3903 : 33 : rtx operands[20] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10, operand11, operand12, operand13, operand14, operand15, operand16, operand17, operand18, operand19 };
3904 : 33 : static const uint8_t expand_encoding[] = {
3905 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0a,
3906 : : 0x5b, 0x01, 0x01, 0x17, 0x00, 0x10, 0x01, 0x02,
3907 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
3908 : : 0x01, 0x07, 0x01, 0x08, 0x01, 0x09, 0x01, 0x0a,
3909 : : 0x01, 0x0b, 0x01, 0x0c, 0x01, 0x0d, 0x01, 0x0e,
3910 : : 0x01, 0x0f, 0x01, 0x10, 0x01, 0x11, 0x01, 0x12,
3911 : : 0x01, 0x13
3912 : : };
3913 : 33 : return expand_rtx (expand_encoding, operands);
3914 : : }
3915 : :
3916 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21326 */
3917 : : rtx
3918 : 16 : gen_sse2_pshufhw_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)
3919 : : {
3920 : 16 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
3921 : 16 : static const uint8_t expand_encoding[] = {
3922 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0a,
3923 : : 0x50, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00,
3924 : : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x02,
3925 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
3926 : : 0x01, 0x07
3927 : : };
3928 : 16 : return expand_rtx (expand_encoding, operands);
3929 : : }
3930 : :
3931 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22830 */
3932 : : rtx
3933 : 22008 : gen_sse_ldmxcsr (const rtx operand0)
3934 : : {
3935 : 22008 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
3936 : 22008 : static const uint8_t expand_encoding[] = {
3937 : : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x5c
3938 : : };
3939 : 22008 : return expand_rtx (expand_encoding, operands);
3940 : : }
3941 : :
3942 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22898 */
3943 : : rtx
3944 : 14 : gen_avx2_phsubwv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3945 : : {
3946 : 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3947 : 14 : static const uint8_t expand_encoding[] = {
3948 : : 0x1f, 0x01, 0x00, 0x3c, 0x55, 0x81, 0x0a, 0x55,
3949 : : 0x81, 0x0b, 0x5a, 0x01, 0x01, 0x01, 0x02, 0x17,
3950 : : 0x00, 0x10, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
3951 : : 0x27, 0x06, 0x27, 0x10, 0x27, 0x12, 0x27, 0x14,
3952 : : 0x27, 0x16, 0x27, 0x08, 0x27, 0x0a, 0x27, 0x0c,
3953 : : 0x27, 0x0e, 0x27, 0x18, 0x27, 0x1a, 0x27, 0x1c,
3954 : : 0x27, 0x1e, 0x81, 0x0a, 0x55, 0x81, 0x0b, 0x5a,
3955 : : 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10, 0x27,
3956 : : 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07, 0x27,
3957 : : 0x11, 0x27, 0x13, 0x27, 0x15, 0x27, 0x17, 0x27,
3958 : : 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27, 0x0f, 0x27,
3959 : : 0x19, 0x27, 0x1b, 0x27, 0x1d, 0x27, 0x1f
3960 : : };
3961 : 14 : return expand_rtx (expand_encoding, operands);
3962 : : }
3963 : :
3964 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23080 */
3965 : : rtx
3966 : 15 : gen_avx2_pmaddubsw256 (const rtx operand0, const rtx operand1, const rtx operand2)
3967 : : {
3968 : 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3969 : 15 : static const uint8_t expand_encoding[] = {
3970 : : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x55, 0x3e, 0x55,
3971 : : 0x6f, 0x55, 0x81, 0x0a, 0x4f, 0x01, 0x01, 0x17,
3972 : : 0x00, 0x10, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
3973 : : 0x27, 0x06, 0x27, 0x08, 0x27, 0x0a, 0x27, 0x0c,
3974 : : 0x27, 0x0e, 0x27, 0x10, 0x27, 0x12, 0x27, 0x14,
3975 : : 0x27, 0x16, 0x27, 0x18, 0x27, 0x1a, 0x27, 0x1c,
3976 : : 0x27, 0x1e, 0x6e, 0x55, 0x81, 0x0a, 0x4f, 0x01,
3977 : : 0x02, 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x02,
3978 : : 0x27, 0x04, 0x27, 0x06, 0x27, 0x08, 0x27, 0x0a,
3979 : : 0x27, 0x0c, 0x27, 0x0e, 0x27, 0x10, 0x27, 0x12,
3980 : : 0x27, 0x14, 0x27, 0x16, 0x27, 0x18, 0x27, 0x1a,
3981 : : 0x27, 0x1c, 0x27, 0x1e, 0x3e, 0x55, 0x6f, 0x55,
3982 : : 0x81, 0x0a, 0x4f, 0x01, 0x01, 0x17, 0x00, 0x10,
3983 : : 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07,
3984 : : 0x27, 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27, 0x0f,
3985 : : 0x27, 0x11, 0x27, 0x13, 0x27, 0x15, 0x27, 0x17,
3986 : : 0x27, 0x19, 0x27, 0x1b, 0x27, 0x1d, 0x27, 0x1f,
3987 : : 0x6e, 0x55, 0x81, 0x0a, 0x4f, 0x01, 0x02, 0x17,
3988 : : 0x00, 0x10, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05,
3989 : : 0x27, 0x07, 0x27, 0x09, 0x27, 0x0b, 0x27, 0x0d,
3990 : : 0x27, 0x0f, 0x27, 0x11, 0x27, 0x13, 0x27, 0x15,
3991 : : 0x27, 0x17, 0x27, 0x19, 0x27, 0x1b, 0x27, 0x1d,
3992 : : 0x27, 0x1f
3993 : : };
3994 : 15 : return expand_rtx (expand_encoding, operands);
3995 : : }
3996 : :
3997 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23528 */
3998 : : rtx
3999 : 15 : gen_ssse3_psignv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
4000 : : {
4001 : 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4002 : 15 : static const uint8_t expand_encoding[] = {
4003 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x01, 0x01,
4004 : : 0x01, 0x02, 0x79
4005 : : };
4006 : 15 : return expand_rtx (expand_encoding, operands);
4007 : : }
4008 : :
4009 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23614 */
4010 : : rtx
4011 : 48 : gen_ssse3_palignrdi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4012 : : {
4013 : 48 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4014 : 48 : static const uint8_t expand_encoding[] = {
4015 : : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x03, 0x01, 0x01,
4016 : : 0x01, 0x02, 0x01, 0x03, 0x7a
4017 : : };
4018 : 48 : return expand_rtx (expand_encoding, operands);
4019 : : }
4020 : :
4021 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23723 */
4022 : : rtx
4023 : 24 : gen_absv16qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4024 : : {
4025 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4026 : 24 : static const uint8_t expand_encoding[] = {
4027 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x7b, 0x4f,
4028 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4029 : : };
4030 : 24 : return expand_rtx (expand_encoding, operands);
4031 : : }
4032 : :
4033 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23792 */
4034 : : rtx
4035 : 10 : gen_sse4a_extrq (const rtx operand0, const rtx operand1, const rtx operand2)
4036 : : {
4037 : 10 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4038 : 10 : static const uint8_t expand_encoding[] = {
4039 : : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x01,
4040 : : 0x01, 0x02, 0x7c
4041 : : };
4042 : 10 : return expand_rtx (expand_encoding, operands);
4043 : : }
4044 : :
4045 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23860 */
4046 : : rtx
4047 : 79 : gen_avx_blendvps256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4048 : : {
4049 : 79 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4050 : 79 : static const uint8_t expand_encoding[] = {
4051 : : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
4052 : : 0x01, 0x02, 0x01, 0x03, 0x34
4053 : : };
4054 : 79 : return expand_rtx (expand_encoding, operands);
4055 : : }
4056 : :
4057 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24118 */
4058 : : rtx
4059 : 13 : gen_avx512f_movntdqa (const rtx operand0, const rtx operand1)
4060 : : {
4061 : 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4062 : 13 : static const uint8_t expand_encoding[] = {
4063 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
4064 : : 0x81, 0x00
4065 : : };
4066 : 13 : return expand_rtx (expand_encoding, operands);
4067 : : }
4068 : :
4069 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24178 */
4070 : : rtx
4071 : 39 : gen_avx512bw_packusdw_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4072 : : {
4073 : 39 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4074 : 39 : static const uint8_t expand_encoding[] = {
4075 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
4076 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3a, 0x01, 0x03,
4077 : : 0x01, 0x04
4078 : : };
4079 : 39 : return expand_rtx (expand_encoding, operands);
4080 : : }
4081 : :
4082 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24429 */
4083 : : rtx
4084 : 23 : gen_avx2_pblenddv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4085 : : {
4086 : 23 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4087 : 23 : static const uint8_t expand_encoding[] = {
4088 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x01, 0x02,
4089 : : 0x01, 0x01, 0x01, 0x03
4090 : : };
4091 : 23 : return expand_rtx (expand_encoding, operands);
4092 : : }
4093 : :
4094 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24564 */
4095 : : rtx
4096 : 2325 : gen_sse4_1_zero_extendv8qiv8hi2 (const rtx operand0, const rtx operand1)
4097 : : {
4098 : 2325 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4099 : 2325 : static const uint8_t expand_encoding[] = {
4100 : : 0x1f, 0x01, 0x00, 0x6f, 0x50, 0x81, 0x0a, 0x48,
4101 : : 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00, 0x27,
4102 : : 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27,
4103 : : 0x05, 0x27, 0x06, 0x27, 0x07
4104 : : };
4105 : 2325 : return expand_rtx (expand_encoding, operands);
4106 : : }
4107 : :
4108 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24784 */
4109 : : rtx
4110 : 24 : gen_sse4_1_sign_extendv4qiv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4111 : : {
4112 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4113 : 24 : static const uint8_t expand_encoding[] = {
4114 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x6e, 0x51,
4115 : : 0x81, 0x0a, 0x45, 0x01, 0x01, 0x17, 0x00, 0x04,
4116 : : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4117 : : 0x01, 0x02, 0x01, 0x03
4118 : : };
4119 : 24 : return expand_rtx (expand_encoding, operands);
4120 : : }
4121 : :
4122 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24919 */
4123 : : rtx
4124 : 0 : gen_avx2_zero_extendv8hiv8si2_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4125 : : {
4126 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4127 : 0 : static const uint8_t expand_encoding[] = {
4128 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x55, 0x81, 0x0b,
4129 : : 0x5a, 0x01, 0x01, 0x01, 0x02, 0x04, 0x03
4130 : : };
4131 : 0 : return expand_rtx (expand_encoding, operands);
4132 : : }
4133 : :
4134 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25147 */
4135 : : rtx
4136 : 15 : gen_avx2_zero_extendv4qiv4di2 (const rtx operand0, const rtx operand1)
4137 : : {
4138 : 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4139 : 15 : static const uint8_t expand_encoding[] = {
4140 : : 0x1f, 0x01, 0x00, 0x6f, 0x57, 0x81, 0x0a, 0x45,
4141 : : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
4142 : : 0x01, 0x27, 0x02, 0x27, 0x03
4143 : : };
4144 : 15 : return expand_rtx (expand_encoding, operands);
4145 : : }
4146 : :
4147 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25274 */
4148 : : rtx
4149 : 0 : gen_avx512f_zero_extendv8hiv8di2 (const rtx operand0, const rtx operand1)
4150 : : {
4151 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4152 : 0 : static const uint8_t expand_encoding[] = {
4153 : : 0x1f, 0x01, 0x00, 0x6f, 0x5c, 0x01, 0x01
4154 : : };
4155 : 0 : return expand_rtx (expand_encoding, operands);
4156 : : }
4157 : :
4158 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25348 */
4159 : : rtx
4160 : 15 : gen_sse4_1_zero_extendv2hiv2di2 (const rtx operand0, const rtx operand1)
4161 : : {
4162 : 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4163 : 15 : static const uint8_t expand_encoding[] = {
4164 : : 0x1f, 0x01, 0x00, 0x6f, 0x52, 0x81, 0x0a, 0x46,
4165 : : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
4166 : : 0x01
4167 : : };
4168 : 15 : return expand_rtx (expand_encoding, operands);
4169 : : }
4170 : :
4171 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25462 */
4172 : : rtx
4173 : 24 : gen_avx2_zero_extendv4siv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4174 : : {
4175 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4176 : 24 : static const uint8_t expand_encoding[] = {
4177 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6f, 0x57,
4178 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4179 : : };
4180 : 24 : return expand_rtx (expand_encoding, operands);
4181 : : }
4182 : :
4183 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25844 */
4184 : : rtx
4185 : 24 : gen_sse4_1_roundps (const rtx operand0, const rtx operand1, const rtx operand2)
4186 : : {
4187 : 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4188 : 24 : static const uint8_t expand_encoding[] = {
4189 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01, 0x01,
4190 : : 0x01, 0x02, 0x5f
4191 : : };
4192 : 24 : return expand_rtx (expand_encoding, operands);
4193 : : }
4194 : :
4195 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26334 */
4196 : : rtx
4197 : 254 : gen_sse4_2_pcmpistr (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4198 : : {
4199 : 254 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4200 : 254 : static const uint8_t expand_encoding[] = {
4201 : : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x11,
4202 : : 0x03, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
4203 : : 0x05, 0x1f, 0x01, 0x01, 0x1a, 0x4f, 0x03, 0x01,
4204 : : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x05, 0x1f,
4205 : : 0x30, 0x02, 0x11, 0x1a, 0x02, 0x03, 0x01, 0x02,
4206 : : 0x01, 0x03, 0x01, 0x04, 0x81, 0x05
4207 : : };
4208 : 254 : return expand_rtx (expand_encoding, operands);
4209 : : }
4210 : :
4211 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26524 */
4212 : : rtx
4213 : 8 : gen_xop_pmacsswd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4214 : : {
4215 : 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4216 : 8 : static const uint8_t expand_encoding[] = {
4217 : : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x51, 0x3e, 0x51,
4218 : : 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17,
4219 : : 0x00, 0x04, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05,
4220 : : 0x27, 0x07, 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01,
4221 : : 0x02, 0x17, 0x00, 0x04, 0x27, 0x01, 0x27, 0x03,
4222 : : 0x27, 0x05, 0x27, 0x07, 0x01, 0x03
4223 : : };
4224 : 8 : return expand_rtx (expand_encoding, operands);
4225 : : }
4226 : :
4227 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26579 */
4228 : : rtx
4229 : 8 : gen_xop_pcmov_v2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4230 : : {
4231 : 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4232 : 8 : static const uint8_t expand_encoding[] = {
4233 : : 0x1f, 0x01, 0x00, 0x39, 0x52, 0x01, 0x03, 0x01,
4234 : : 0x01, 0x01, 0x02
4235 : : };
4236 : 8 : return expand_rtx (expand_encoding, operands);
4237 : : }
4238 : :
4239 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26617 */
4240 : : rtx
4241 : 9 : gen_xop_phaddubw (const rtx operand0, const rtx operand1)
4242 : : {
4243 : 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4244 : 9 : static const uint8_t expand_encoding[] = {
4245 : : 0x1f, 0x01, 0x00, 0x3b, 0x50, 0x6f, 0x50, 0x81,
4246 : : 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27,
4247 : : 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06, 0x27,
4248 : : 0x08, 0x27, 0x0a, 0x27, 0x0c, 0x27, 0x0e, 0x6f,
4249 : : 0x50, 0x81, 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00,
4250 : : 0x08, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27,
4251 : : 0x07, 0x27, 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27,
4252 : : 0x0f
4253 : : };
4254 : 9 : return expand_rtx (expand_encoding, operands);
4255 : : }
4256 : :
4257 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26769 */
4258 : : rtx
4259 : 9 : gen_xop_phaddudq (const rtx operand0, const rtx operand1)
4260 : : {
4261 : 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4262 : 9 : static const uint8_t expand_encoding[] = {
4263 : : 0x1f, 0x01, 0x00, 0x3b, 0x52, 0x6f, 0x52, 0x81,
4264 : : 0x0a, 0x4a, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27,
4265 : : 0x00, 0x27, 0x02, 0x6f, 0x52, 0x81, 0x0a, 0x4a,
4266 : : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x01, 0x27,
4267 : : 0x03
4268 : : };
4269 : 9 : return expand_rtx (expand_encoding, operands);
4270 : : }
4271 : :
4272 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26967 */
4273 : : rtx
4274 : 12 : gen_xop_rotlv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
4275 : : {
4276 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4277 : 12 : static const uint8_t expand_encoding[] = {
4278 : : 0x1f, 0x01, 0x00, 0x4e, 0x4f, 0x01, 0x01, 0x01,
4279 : : 0x02
4280 : : };
4281 : 12 : return expand_rtx (expand_encoding, operands);
4282 : : }
4283 : :
4284 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26980 */
4285 : : rtx
4286 : 0 : gen_xop_rotrv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
4287 : : {
4288 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4289 : 0 : static const uint8_t expand_encoding[] = {
4290 : : 0x1f, 0x01, 0x00, 0x51, 0x52, 0x01, 0x01, 0x01,
4291 : : 0x02
4292 : : };
4293 : 0 : return expand_rtx (expand_encoding, operands);
4294 : : }
4295 : :
4296 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27275 */
4297 : : rtx
4298 : 8 : gen_xop_shlv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
4299 : : {
4300 : 8 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4301 : 8 : static const uint8_t expand_encoding[] = {
4302 : : 0x1f, 0x01, 0x00, 0x39, 0x50, 0x5e, 0x50, 0x01,
4303 : : 0x02, 0x27, 0x00, 0x4d, 0x50, 0x01, 0x01, 0x01,
4304 : : 0x02, 0x50, 0x50, 0x01, 0x01, 0x3d, 0x50, 0x01,
4305 : : 0x02
4306 : : };
4307 : 8 : return expand_rtx (expand_encoding, operands);
4308 : : }
4309 : :
4310 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27471 */
4311 : : rtx
4312 : 48 : gen_xop_maskcmpv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4313 : : {
4314 : 48 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4315 : 48 : static const uint8_t expand_encoding[] = {
4316 : : 0x1f, 0x01, 0x00, 0x03, 0x50, 0x01, 0x01, 0x02,
4317 : : 0x01, 0x03
4318 : : };
4319 : 48 : return expand_rtx (expand_encoding, operands);
4320 : : }
4321 : :
4322 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27494 */
4323 : : rtx
4324 : 16 : gen_xop_maskcmp_uns2v2di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4325 : : {
4326 : 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4327 : 16 : static const uint8_t expand_encoding[] = {
4328 : : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x03, 0x52,
4329 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x07
4330 : : };
4331 : 16 : return expand_rtx (expand_encoding, operands);
4332 : : }
4333 : :
4334 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27557 */
4335 : : rtx
4336 : 35 : gen_aesenclast (const rtx operand0, const rtx operand1, const rtx operand2)
4337 : : {
4338 : 35 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4339 : 35 : static const uint8_t expand_encoding[] = {
4340 : : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x01,
4341 : : 0x01, 0x02, 0x81, 0x0b
4342 : : };
4343 : 35 : return expand_rtx (expand_encoding, operands);
4344 : : }
4345 : :
4346 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27723 */
4347 : : rtx
4348 : 64 : gen_avx2_pbroadcastv32qi (const rtx operand0, const rtx operand1)
4349 : : {
4350 : 64 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4351 : 64 : static const uint8_t expand_encoding[] = {
4352 : : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x54, 0x81, 0x0a,
4353 : : 0x0f, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4354 : : };
4355 : 64 : return expand_rtx (expand_encoding, operands);
4356 : : }
4357 : :
4358 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27723 */
4359 : : rtx
4360 : 0 : gen_avx2_pbroadcastv16hf (const rtx operand0, const rtx operand1)
4361 : : {
4362 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4363 : 0 : static const uint8_t expand_encoding[] = {
4364 : : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6e, 0x81, 0x0a,
4365 : : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4366 : : };
4367 : 0 : return expand_rtx (expand_encoding, operands);
4368 : : }
4369 : :
4370 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27737 */
4371 : : rtx
4372 : 0 : gen_avx2_pbroadcastv16bf_1 (const rtx operand0, const rtx operand1)
4373 : : {
4374 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4375 : 0 : static const uint8_t expand_encoding[] = {
4376 : : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6d, 0x81, 0x0a,
4377 : : 0x2c, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4378 : : };
4379 : 0 : return expand_rtx (expand_encoding, operands);
4380 : : }
4381 : :
4382 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27755 */
4383 : : rtx
4384 : 39 : gen_avx512f_permvarv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4385 : : {
4386 : 39 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4387 : 39 : static const uint8_t expand_encoding[] = {
4388 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
4389 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4390 : : 0x03, 0x01, 0x04
4391 : : };
4392 : 39 : return expand_rtx (expand_encoding, operands);
4393 : : }
4394 : :
4395 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27774 */
4396 : : rtx
4397 : 2 : gen_avx512vl_permvarv32qi (const rtx operand0, const rtx operand1, const rtx operand2)
4398 : : {
4399 : 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4400 : 2 : static const uint8_t expand_encoding[] = {
4401 : : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
4402 : : 0x01, 0x02, 0x81, 0x18
4403 : : };
4404 : 2 : return expand_rtx (expand_encoding, operands);
4405 : : }
4406 : :
4407 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27786 */
4408 : : rtx
4409 : 0 : gen_avx512fp16_permvarv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4410 : : {
4411 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4412 : 0 : static const uint8_t expand_encoding[] = {
4413 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
4414 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4415 : : 0x03, 0x01, 0x04
4416 : : };
4417 : 0 : return expand_rtx (expand_encoding, operands);
4418 : : }
4419 : :
4420 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27990 */
4421 : : rtx
4422 : 654 : gen_avx2_permv4di_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4423 : : {
4424 : 654 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4425 : 654 : static const uint8_t expand_encoding[] = {
4426 : : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x57, 0x01, 0x01,
4427 : : 0x17, 0x00, 0x04, 0x01, 0x02, 0x01, 0x03, 0x01,
4428 : : 0x04, 0x01, 0x05
4429 : : };
4430 : 654 : return expand_rtx (expand_encoding, operands);
4431 : : }
4432 : :
4433 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28140 */
4434 : : rtx
4435 : 1 : gen_avx512f_vec_dupv16si_1 (const rtx operand0, const rtx operand1)
4436 : : {
4437 : 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4438 : 1 : static const uint8_t expand_encoding[] = {
4439 : : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x5b, 0x81, 0x0a,
4440 : : 0x11, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4441 : : };
4442 : 1 : return expand_rtx (expand_encoding, operands);
4443 : : }
4444 : :
4445 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28154 */
4446 : : rtx
4447 : 36 : gen_avx512f_vec_dupv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4448 : : {
4449 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4450 : 36 : static const uint8_t expand_encoding[] = {
4451 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0c,
4452 : : 0x5b, 0x81, 0x0a, 0x11, 0x01, 0x01, 0x17, 0x00,
4453 : : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4454 : : };
4455 : 36 : return expand_rtx (expand_encoding, operands);
4456 : : }
4457 : :
4458 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28154 */
4459 : : rtx
4460 : 0 : gen_avx512f_vec_dupv16sf (const rtx operand0, const rtx operand1)
4461 : : {
4462 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4463 : 0 : static const uint8_t expand_encoding[] = {
4464 : : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x74, 0x81, 0x0a,
4465 : : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4466 : : };
4467 : 0 : return expand_rtx (expand_encoding, operands);
4468 : : }
4469 : :
4470 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28154 */
4471 : : rtx
4472 : 24 : gen_avx512vl_vec_dupv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4473 : : {
4474 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4475 : 24 : static const uint8_t expand_encoding[] = {
4476 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0c,
4477 : : 0x70, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
4478 : : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4479 : : };
4480 : 24 : return expand_rtx (expand_encoding, operands);
4481 : : }
4482 : :
4483 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28173 */
4484 : : rtx
4485 : 0 : gen_avx512vl_vec_dupv16hi (const rtx operand0, const rtx operand1)
4486 : : {
4487 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4488 : 0 : static const uint8_t expand_encoding[] = {
4489 : : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x55, 0x81, 0x0a,
4490 : : 0x10, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4491 : : };
4492 : 0 : return expand_rtx (expand_encoding, operands);
4493 : : }
4494 : :
4495 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28173 */
4496 : : rtx
4497 : 0 : gen_avx512fp16_vec_dupv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4498 : : {
4499 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4500 : 0 : static const uint8_t expand_encoding[] = {
4501 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x0c,
4502 : : 0x6a, 0x81, 0x0a, 0x2b, 0x01, 0x01, 0x17, 0x00,
4503 : : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4504 : : };
4505 : 0 : return expand_rtx (expand_encoding, operands);
4506 : : }
4507 : :
4508 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28209 */
4509 : : rtx
4510 : 24 : gen_avx512bw_vec_dup_gprv64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4511 : : {
4512 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4513 : 24 : static const uint8_t expand_encoding[] = {
4514 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x81, 0x0c,
4515 : : 0x59, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4516 : : };
4517 : 24 : return expand_rtx (expand_encoding, operands);
4518 : : }
4519 : :
4520 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28209 */
4521 : : rtx
4522 : 0 : gen_avx512vl_vec_dup_gprv16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4523 : : {
4524 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4525 : 0 : static const uint8_t expand_encoding[] = {
4526 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x0c,
4527 : : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4528 : : };
4529 : 0 : return expand_rtx (expand_encoding, operands);
4530 : : }
4531 : :
4532 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28221 */
4533 : : rtx
4534 : 0 : gen_avx512vl_vec_dup_gprv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4535 : : {
4536 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4537 : 0 : static const uint8_t expand_encoding[] = {
4538 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0c,
4539 : : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4540 : : };
4541 : 0 : return expand_rtx (expand_encoding, operands);
4542 : : }
4543 : :
4544 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28390 */
4545 : : rtx
4546 : 0 : gen_vec_dupv8si (const rtx operand0, const rtx operand1)
4547 : : {
4548 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4549 : 0 : static const uint8_t expand_encoding[] = {
4550 : : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x56, 0x01, 0x01
4551 : : };
4552 : 0 : return expand_rtx (expand_encoding, operands);
4553 : : }
4554 : :
4555 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28441 */
4556 : : rtx
4557 : 13 : gen_avx_vbroadcastf128_v4df (const rtx operand0, const rtx operand1)
4558 : : {
4559 : 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4560 : 13 : static const uint8_t expand_encoding[] = {
4561 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x70, 0x01, 0x01,
4562 : : 0x01, 0x01
4563 : : };
4564 : 13 : return expand_rtx (expand_encoding, operands);
4565 : : }
4566 : :
4567 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28519 */
4568 : : rtx
4569 : 36 : gen_avx512dq_broadcastv16sf_mask_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4570 : : {
4571 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4572 : 36 : static const uint8_t expand_encoding[] = {
4573 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x0c,
4574 : : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4575 : : };
4576 : 36 : return expand_rtx (expand_encoding, operands);
4577 : : }
4578 : :
4579 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28563 */
4580 : : rtx
4581 : 11 : gen_avx512cd_maskw_vec_dupv8si (const rtx operand0, const rtx operand1)
4582 : : {
4583 : 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4584 : 11 : static const uint8_t expand_encoding[] = {
4585 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c,
4586 : : 0x56, 0x6f, 0x11, 0x01, 0x01, 0x1a, 0x00, 0x01,
4587 : : 0x27, 0x00, 0x81, 0x2f
4588 : : };
4589 : 11 : return expand_rtx (expand_encoding, operands);
4590 : : }
4591 : :
4592 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28575 */
4593 : : rtx
4594 : 12 : gen_avx_vpermilvarv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
4595 : : {
4596 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4597 : 12 : static const uint8_t expand_encoding[] = {
4598 : : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01, 0x01,
4599 : : 0x01, 0x02, 0x81, 0x11
4600 : : };
4601 : 12 : return expand_rtx (expand_encoding, operands);
4602 : : }
4603 : :
4604 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28675 */
4605 : : rtx
4606 : 202 : gen_avx512f_vpermt2varv8df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4607 : : {
4608 : 202 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4609 : 202 : static const uint8_t expand_encoding[] = {
4610 : : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01, 0x01,
4611 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4612 : : };
4613 : 202 : return expand_rtx (expand_encoding, operands);
4614 : : }
4615 : :
4616 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28675 */
4617 : : rtx
4618 : 1 : gen_avx512vl_vpermt2varv4df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4619 : : {
4620 : 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4621 : 1 : static const uint8_t expand_encoding[] = {
4622 : : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
4623 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4624 : : };
4625 : 1 : return expand_rtx (expand_encoding, operands);
4626 : : }
4627 : :
4628 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28675 */
4629 : : rtx
4630 : 0 : gen_avx512vl_vpermt2varv2df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4631 : : {
4632 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4633 : 0 : static const uint8_t expand_encoding[] = {
4634 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
4635 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4636 : : };
4637 : 0 : return expand_rtx (expand_encoding, operands);
4638 : : }
4639 : :
4640 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28675 */
4641 : : rtx
4642 : 12 : gen_avx512bw_vpermt2varv64qi3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4643 : : {
4644 : 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4645 : 12 : static const uint8_t expand_encoding[] = {
4646 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
4647 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4648 : : 0x1c, 0x01, 0x04, 0x01, 0x05
4649 : : };
4650 : 12 : return expand_rtx (expand_encoding, operands);
4651 : : }
4652 : :
4653 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28690 */
4654 : : rtx
4655 : 0 : gen_avx512bw_vpermt2varv32bf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4656 : : {
4657 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4658 : 0 : static const uint8_t expand_encoding[] = {
4659 : : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x03, 0x01, 0x01,
4660 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4661 : : };
4662 : 0 : return expand_rtx (expand_encoding, operands);
4663 : : }
4664 : :
4665 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28705 */
4666 : : rtx
4667 : 24 : gen_avx512f_vpermt2varv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4668 : : {
4669 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4670 : 24 : static const uint8_t expand_encoding[] = {
4671 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
4672 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4673 : : 0x1c, 0x01, 0x02, 0x01, 0x04
4674 : : };
4675 : 24 : return expand_rtx (expand_encoding, operands);
4676 : : }
4677 : :
4678 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28705 */
4679 : : rtx
4680 : 24 : gen_avx512vl_vpermt2varv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4681 : : {
4682 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4683 : 24 : static const uint8_t expand_encoding[] = {
4684 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
4685 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4686 : : 0x1c, 0x01, 0x02, 0x01, 0x04
4687 : : };
4688 : 24 : return expand_rtx (expand_encoding, operands);
4689 : : }
4690 : :
4691 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28908 */
4692 : : rtx
4693 : 24 : gen_vec_set_hi_v4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4694 : : {
4695 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4696 : 24 : static const uint8_t expand_encoding[] = {
4697 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x0b,
4698 : : 0x57, 0x81, 0x0a, 0x52, 0x01, 0x01, 0x17, 0x00,
4699 : : 0x02, 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01,
4700 : : 0x03, 0x01, 0x04
4701 : : };
4702 : 24 : return expand_rtx (expand_encoding, operands);
4703 : : }
4704 : :
4705 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28978 */
4706 : : rtx
4707 : 3 : gen_vec_set_lo_v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
4708 : : {
4709 : 3 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4710 : 3 : static const uint8_t expand_encoding[] = {
4711 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x55, 0x01, 0x02,
4712 : : 0x81, 0x0a, 0x50, 0x01, 0x01, 0x17, 0x00, 0x08,
4713 : : 0x27, 0x08, 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b,
4714 : : 0x27, 0x0c, 0x27, 0x0d, 0x27, 0x0e, 0x27, 0x0f
4715 : : };
4716 : 3 : return expand_rtx (expand_encoding, operands);
4717 : : }
4718 : :
4719 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29074 */
4720 : : rtx
4721 : 11 : gen_avx_maskloadpd (const rtx operand0, const rtx operand1, const rtx operand2)
4722 : : {
4723 : 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4724 : 11 : static const uint8_t expand_encoding[] = {
4725 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01, 0x02,
4726 : : 0x01, 0x01, 0x30
4727 : : };
4728 : 11 : return expand_rtx (expand_encoding, operands);
4729 : : }
4730 : :
4731 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29094 */
4732 : : rtx
4733 : 12 : gen_avx2_maskstoreq256 (const rtx operand0, const rtx operand1, const rtx operand2)
4734 : : {
4735 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4736 : 12 : static const uint8_t expand_encoding[] = {
4737 : : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
4738 : : 0x01, 0x02, 0x01, 0x00, 0x30
4739 : : };
4740 : 12 : return expand_rtx (expand_encoding, operands);
4741 : : }
4742 : :
4743 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29185 */
4744 : : rtx
4745 : 24 : gen_avx512vl_storev4di_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4746 : : {
4747 : 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4748 : 24 : static const uint8_t expand_encoding[] = {
4749 : : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
4750 : : 0x01, 0x00, 0x01, 0x02, 0x30
4751 : : };
4752 : 24 : return expand_rtx (expand_encoding, operands);
4753 : : }
4754 : :
4755 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29214 */
4756 : : rtx
4757 : 13 : gen_avx512vl_storev32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4758 : : {
4759 : 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4760 : 13 : static const uint8_t expand_encoding[] = {
4761 : : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01, 0x01,
4762 : : 0x01, 0x00, 0x01, 0x02, 0x30
4763 : : };
4764 : 13 : return expand_rtx (expand_encoding, operands);
4765 : : }
4766 : :
4767 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29265 */
4768 : : rtx
4769 : 51 : gen_avx_si256_si (const rtx operand0, const rtx operand1)
4770 : : {
4771 : 51 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4772 : 51 : static const uint8_t expand_encoding[] = {
4773 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x01, 0x01,
4774 : : 0x1a, 0x51, 0x01, 0x27, 0x00, 0x81, 0x14
4775 : : };
4776 : 51 : return expand_rtx (expand_encoding, operands);
4777 : : }
4778 : :
4779 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29354 */
4780 : : rtx
4781 : 0 : gen_avx2_ashrvv2di (const rtx operand0, const rtx operand1, const rtx operand2)
4782 : : {
4783 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4784 : 0 : static const uint8_t expand_encoding[] = {
4785 : : 0x1f, 0x01, 0x00, 0x4f, 0x52, 0x01, 0x01, 0x01,
4786 : : 0x02
4787 : : };
4788 : 0 : return expand_rtx (expand_encoding, operands);
4789 : : }
4790 : :
4791 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29365 */
4792 : : rtx
4793 : 33 : gen_avx512vl_ashrvv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4794 : : {
4795 : 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4796 : 33 : static const uint8_t expand_encoding[] = {
4797 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x4f, 0x55,
4798 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4799 : : };
4800 : 33 : return expand_rtx (expand_encoding, operands);
4801 : : }
4802 : :
4803 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29376 */
4804 : : rtx
4805 : 23 : gen_avx2_ashlvv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4806 : : {
4807 : 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4808 : 23 : static const uint8_t expand_encoding[] = {
4809 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4d, 0x51,
4810 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4811 : : };
4812 : 23 : return expand_rtx (expand_encoding, operands);
4813 : : }
4814 : :
4815 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29376 */
4816 : : rtx
4817 : 12 : gen_avx2_ashlvv2di (const rtx operand0, const rtx operand1, const rtx operand2)
4818 : : {
4819 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4820 : 12 : static const uint8_t expand_encoding[] = {
4821 : : 0x1f, 0x01, 0x00, 0x4d, 0x52, 0x01, 0x01, 0x01,
4822 : : 0x02
4823 : : };
4824 : 12 : return expand_rtx (expand_encoding, operands);
4825 : : }
4826 : :
4827 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29387 */
4828 : : rtx
4829 : 37 : gen_avx512vl_ashlvv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4830 : : {
4831 : 37 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4832 : 37 : static const uint8_t expand_encoding[] = {
4833 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x4d, 0x55,
4834 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4835 : : };
4836 : 37 : return expand_rtx (expand_encoding, operands);
4837 : : }
4838 : :
4839 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29398 */
4840 : : rtx
4841 : 43 : gen_avx_vec_concatv8si (const rtx operand0, const rtx operand1, const rtx operand2)
4842 : : {
4843 : 43 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4844 : 43 : static const uint8_t expand_encoding[] = {
4845 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x01, 0x01,
4846 : : 0x01, 0x02
4847 : : };
4848 : 43 : return expand_rtx (expand_encoding, operands);
4849 : : }
4850 : :
4851 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29398 */
4852 : : rtx
4853 : 6 : gen_avx_vec_concatv16sf (const rtx operand0, const rtx operand1, const rtx operand2)
4854 : : {
4855 : 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4856 : 6 : static const uint8_t expand_encoding[] = {
4857 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x74, 0x01, 0x01,
4858 : : 0x01, 0x02
4859 : : };
4860 : 6 : return expand_rtx (expand_encoding, operands);
4861 : : }
4862 : :
4863 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29669 */
4864 : : rtx
4865 : 0 : gen_avx512f_vcvtps2ph512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4866 : : {
4867 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4868 : 0 : static const uint8_t expand_encoding[] = {
4869 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
4870 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x17, 0x01,
4871 : : 0x03, 0x01, 0x04
4872 : : };
4873 : 0 : return expand_rtx (expand_encoding, operands);
4874 : : }
4875 : :
4876 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30104 */
4877 : : rtx
4878 : 24 : gen_avx512vl_compressv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4879 : : {
4880 : 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4881 : 24 : static const uint8_t expand_encoding[] = {
4882 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
4883 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4884 : : };
4885 : 24 : return expand_rtx (expand_encoding, operands);
4886 : : }
4887 : :
4888 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30130 */
4889 : : rtx
4890 : 12 : gen_avx512f_compressstorev16si_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4891 : : {
4892 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4893 : 12 : static const uint8_t expand_encoding[] = {
4894 : : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
4895 : : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4896 : : };
4897 : 12 : return expand_rtx (expand_encoding, operands);
4898 : : }
4899 : :
4900 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30130 */
4901 : : rtx
4902 : 12 : gen_avx512vl_compressstorev2di_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4903 : : {
4904 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4905 : 12 : static const uint8_t expand_encoding[] = {
4906 : : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
4907 : : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4908 : : };
4909 : 12 : return expand_rtx (expand_encoding, operands);
4910 : : }
4911 : :
4912 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30168 */
4913 : : rtx
4914 : 44 : gen_expandv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4915 : : {
4916 : 44 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4917 : 44 : static const uint8_t expand_encoding[] = {
4918 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
4919 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4920 : : };
4921 : 44 : return expand_rtx (expand_encoding, operands);
4922 : : }
4923 : :
4924 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30182 */
4925 : : rtx
4926 : 40 : gen_expandv64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4927 : : {
4928 : 40 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4929 : 40 : static const uint8_t expand_encoding[] = {
4930 : : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01, 0x01,
4931 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4932 : : };
4933 : 40 : return expand_rtx (expand_encoding, operands);
4934 : : }
4935 : :
4936 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30262 */
4937 : : rtx
4938 : 0 : gen_avx512dq_rangepv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4939 : : {
4940 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4941 : 0 : static const uint8_t expand_encoding[] = {
4942 : : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
4943 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x43
4944 : : };
4945 : 0 : return expand_rtx (expand_encoding, operands);
4946 : : }
4947 : :
4948 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30262 */
4949 : : rtx
4950 : 0 : gen_avx512dq_rangepv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4951 : : {
4952 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4953 : 0 : static const uint8_t expand_encoding[] = {
4954 : : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
4955 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x43
4956 : : };
4957 : 0 : return expand_rtx (expand_encoding, operands);
4958 : : }
4959 : :
4960 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30282 */
4961 : : rtx
4962 : 0 : gen_avx512dq_rangesv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4963 : : {
4964 : 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4965 : 0 : static const uint8_t expand_encoding[] = {
4966 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
4967 : : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
4968 : : 0x01, 0x03, 0x81, 0x43, 0x01, 0x04, 0x01, 0x05,
4969 : : 0x01, 0x01, 0x27, 0x01
4970 : : };
4971 : 0 : return expand_rtx (expand_encoding, operands);
4972 : : }
4973 : :
4974 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30305 */
4975 : : rtx
4976 : 0 : gen_avx512dq_fpclassv8sf (const rtx operand0, const rtx operand1, const rtx operand2)
4977 : : {
4978 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4979 : 0 : static const uint8_t expand_encoding[] = {
4980 : : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
4981 : : 0x01, 0x02, 0x81, 0x42
4982 : : };
4983 : 0 : return expand_rtx (expand_encoding, operands);
4984 : : }
4985 : :
4986 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30305 */
4987 : : rtx
4988 : 16 : gen_avx512dq_fpclassv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4989 : : {
4990 : 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4991 : 16 : static const uint8_t expand_encoding[] = {
4992 : : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
4993 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x42, 0x01, 0x03
4994 : : };
4995 : 16 : return expand_rtx (expand_encoding, operands);
4996 : : }
4997 : :
4998 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30333 */
4999 : : rtx
5000 : 0 : gen_avx512vl_getmantv16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5001 : : {
5002 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5003 : 0 : static const uint8_t expand_encoding[] = {
5004 : : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01, 0x01,
5005 : : 0x01, 0x02, 0x81, 0x27
5006 : : };
5007 : 0 : return expand_rtx (expand_encoding, operands);
5008 : : }
5009 : :
5010 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30333 */
5011 : : rtx
5012 : 0 : gen_avx512f_getmantv16sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5013 : : {
5014 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5015 : 0 : static const uint8_t expand_encoding[] = {
5016 : : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x1a, 0x74,
5017 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5018 : : 0x03, 0x81, 0x33
5019 : : };
5020 : 0 : return expand_rtx (expand_encoding, operands);
5021 : : }
5022 : :
5023 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30333 */
5024 : : rtx
5025 : 109 : gen_avx512vl_getmantv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5026 : : {
5027 : 109 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5028 : 109 : static const uint8_t expand_encoding[] = {
5029 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
5030 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5031 : : 0x03, 0x01, 0x04
5032 : : };
5033 : 109 : return expand_rtx (expand_encoding, operands);
5034 : : }
5035 : :
5036 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30333 */
5037 : : rtx
5038 : 0 : gen_avx512vl_getmantv2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5039 : : {
5040 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5041 : 0 : static const uint8_t expand_encoding[] = {
5042 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x1a, 0x6c,
5043 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5044 : : 0x03, 0x81, 0x33
5045 : : };
5046 : 0 : return expand_rtx (expand_encoding, operands);
5047 : : }
5048 : :
5049 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30350 */
5050 : : rtx
5051 : 42 : gen_avx512f_vgetmantv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
5052 : : {
5053 : 42 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
5054 : 42 : static const uint8_t expand_encoding[] = {
5055 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
5056 : : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x03, 0x01,
5057 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x27, 0x01,
5058 : : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
5059 : : 0x06, 0x81, 0x33
5060 : : };
5061 : 42 : return expand_rtx (expand_encoding, operands);
5062 : : }
5063 : :
5064 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30388 */
5065 : : rtx
5066 : 33 : gen_clzv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5067 : : {
5068 : 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5069 : 33 : static const uint8_t expand_encoding[] = {
5070 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x00,
5071 : : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5072 : : };
5073 : 33 : return expand_rtx (expand_encoding, operands);
5074 : : }
5075 : :
5076 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30398 */
5077 : : rtx
5078 : 33 : gen_conflictv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5079 : : {
5080 : 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5081 : 33 : static const uint8_t expand_encoding[] = {
5082 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5083 : : 0x01, 0x01, 0x01, 0x81, 0x29, 0x01, 0x02, 0x01,
5084 : : 0x03
5085 : : };
5086 : 33 : return expand_rtx (expand_encoding, operands);
5087 : : }
5088 : :
5089 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30477 */
5090 : : rtx
5091 : 12 : gen_sha256rnds2 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5092 : : {
5093 : 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5094 : 12 : static const uint8_t expand_encoding[] = {
5095 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5096 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x3a
5097 : : };
5098 : 12 : return expand_rtx (expand_encoding, operands);
5099 : : }
5100 : :
5101 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30575 */
5102 : : rtx
5103 : 12 : gen_vsm4rnds4_v16si (const rtx operand0, const rtx operand1, const rtx operand2)
5104 : : {
5105 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5106 : 12 : static const uint8_t expand_encoding[] = {
5107 : : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x01, 0x01,
5108 : : 0x01, 0x02, 0x81, 0x74
5109 : : };
5110 : 12 : return expand_rtx (expand_encoding, operands);
5111 : : }
5112 : :
5113 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30659 */
5114 : : rtx
5115 : 0 : gen_vpmadd52huqv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5116 : : {
5117 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5118 : 0 : static const uint8_t expand_encoding[] = {
5119 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
5120 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x45
5121 : : };
5122 : 0 : return expand_rtx (expand_encoding, operands);
5123 : : }
5124 : :
5125 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30689 */
5126 : : rtx
5127 : 13 : gen_vpmadd52huqv2di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5128 : : {
5129 : 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5130 : 13 : static const uint8_t expand_encoding[] = {
5131 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5132 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5133 : : 0x45, 0x01, 0x04, 0x01, 0x05
5134 : : };
5135 : 13 : return expand_rtx (expand_encoding, operands);
5136 : : }
5137 : :
5138 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30721 */
5139 : : rtx
5140 : 36 : gen_vpmultishiftqbv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5141 : : {
5142 : 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5143 : 36 : static const uint8_t expand_encoding[] = {
5144 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5145 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x46, 0x01,
5146 : : 0x03, 0x01, 0x04
5147 : : };
5148 : 36 : return expand_rtx (expand_encoding, operands);
5149 : : }
5150 : :
5151 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30739 */
5152 : : rtx
5153 : 26 : gen_vpopcountv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5154 : : {
5155 : 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5156 : 26 : static const uint8_t expand_encoding[] = {
5157 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x02,
5158 : : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5159 : : };
5160 : 26 : return expand_rtx (expand_encoding, operands);
5161 : : }
5162 : :
5163 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30789 */
5164 : : rtx
5165 : 26 : gen_vpopcountv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5166 : : {
5167 : 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5168 : 26 : static const uint8_t expand_encoding[] = {
5169 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81, 0x02,
5170 : : 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5171 : : };
5172 : 26 : return expand_rtx (expand_encoding, operands);
5173 : : }
5174 : :
5175 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30813 */
5176 : : rtx
5177 : 83 : gen_vgf2p8affineqb_v32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5178 : : {
5179 : 83 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5180 : 83 : static const uint8_t expand_encoding[] = {
5181 : : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01, 0x01,
5182 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x48
5183 : : };
5184 : 83 : return expand_rtx (expand_encoding, operands);
5185 : : }
5186 : :
5187 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30830 */
5188 : : rtx
5189 : 24 : gen_vgf2p8mulb_v16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5190 : : {
5191 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5192 : 24 : static const uint8_t expand_encoding[] = {
5193 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5194 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x49, 0x01,
5195 : : 0x03, 0x01, 0x04
5196 : : };
5197 : 24 : return expand_rtx (expand_encoding, operands);
5198 : : }
5199 : :
5200 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30846 */
5201 : : rtx
5202 : 11 : gen_vpshrd_v4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5203 : : {
5204 : 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5205 : 11 : static const uint8_t expand_encoding[] = {
5206 : : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
5207 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4b
5208 : : };
5209 : 11 : return expand_rtx (expand_encoding, operands);
5210 : : }
5211 : :
5212 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30857 */
5213 : : rtx
5214 : 22 : gen_vpshld_v32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5215 : : {
5216 : 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5217 : 22 : static const uint8_t expand_encoding[] = {
5218 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5219 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5220 : : 0x4a, 0x01, 0x04, 0x01, 0x05
5221 : : };
5222 : 22 : return expand_rtx (expand_encoding, operands);
5223 : : }
5224 : :
5225 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30857 */
5226 : : rtx
5227 : 10 : gen_vpshld_v8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5228 : : {
5229 : 10 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5230 : 10 : static const uint8_t expand_encoding[] = {
5231 : : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x03, 0x01, 0x01,
5232 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4a
5233 : : };
5234 : 10 : return expand_rtx (expand_encoding, operands);
5235 : : }
5236 : :
5237 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30868 */
5238 : : rtx
5239 : 12 : gen_vpshrdv_v16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5240 : : {
5241 : 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5242 : 12 : static const uint8_t expand_encoding[] = {
5243 : : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x03, 0x01, 0x01,
5244 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4c
5245 : : };
5246 : 12 : return expand_rtx (expand_encoding, operands);
5247 : : }
5248 : :
5249 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30880 */
5250 : : rtx
5251 : 12 : gen_vpshrdv_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5252 : : {
5253 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5254 : 12 : static const uint8_t expand_encoding[] = {
5255 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5256 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5257 : : 0x4c, 0x01, 0x01, 0x01, 0x04
5258 : : };
5259 : 12 : return expand_rtx (expand_encoding, operands);
5260 : : }
5261 : :
5262 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30910 */
5263 : : rtx
5264 : 12 : gen_vpshrdv_v4di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5265 : : {
5266 : 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5267 : 12 : static const uint8_t expand_encoding[] = {
5268 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5269 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5270 : : 0x4c, 0x01, 0x04, 0x01, 0x05
5271 : : };
5272 : 12 : return expand_rtx (expand_encoding, operands);
5273 : : }
5274 : :
5275 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30925 */
5276 : : rtx
5277 : 12 : gen_vpshldv_v8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5278 : : {
5279 : 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5280 : 12 : static const uint8_t expand_encoding[] = {
5281 : : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x03, 0x01, 0x01,
5282 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4d
5283 : : };
5284 : 12 : return expand_rtx (expand_encoding, operands);
5285 : : }
5286 : :
5287 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30937 */
5288 : : rtx
5289 : 12 : gen_vpshldv_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5290 : : {
5291 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5292 : 12 : static const uint8_t expand_encoding[] = {
5293 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5294 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5295 : : 0x4d, 0x01, 0x01, 0x01, 0x04
5296 : : };
5297 : 12 : return expand_rtx (expand_encoding, operands);
5298 : : }
5299 : :
5300 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30967 */
5301 : : rtx
5302 : 12 : gen_vpshldv_v2di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5303 : : {
5304 : 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5305 : 12 : static const uint8_t expand_encoding[] = {
5306 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5307 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5308 : : 0x4d, 0x01, 0x04, 0x01, 0x05
5309 : : };
5310 : 12 : return expand_rtx (expand_encoding, operands);
5311 : : }
5312 : :
5313 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31110 */
5314 : : rtx
5315 : 20 : gen_vpdpbusds_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5316 : : {
5317 : 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5318 : 20 : static const uint8_t expand_encoding[] = {
5319 : : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5320 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4f
5321 : : };
5322 : 20 : return expand_rtx (expand_encoding, operands);
5323 : : }
5324 : :
5325 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31154 */
5326 : : rtx
5327 : 13 : gen_vpdpbusds_v8si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5328 : : {
5329 : 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5330 : 13 : static const uint8_t expand_encoding[] = {
5331 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5332 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5333 : : 0x4f, 0x01, 0x04, 0x01, 0x05
5334 : : };
5335 : 13 : return expand_rtx (expand_encoding, operands);
5336 : : }
5337 : :
5338 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31248 */
5339 : : rtx
5340 : 20 : gen_vpdpwssds_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5341 : : {
5342 : 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5343 : 20 : static const uint8_t expand_encoding[] = {
5344 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5345 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x51
5346 : : };
5347 : 20 : return expand_rtx (expand_encoding, operands);
5348 : : }
5349 : :
5350 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31306 */
5351 : : rtx
5352 : 12 : gen_vaesdec_v32qi (const rtx operand0, const rtx operand1, const rtx operand2)
5353 : : {
5354 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5355 : 12 : static const uint8_t expand_encoding[] = {
5356 : : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
5357 : : 0x01, 0x02, 0x81, 0x52
5358 : : };
5359 : 12 : return expand_rtx (expand_encoding, operands);
5360 : : }
5361 : :
5362 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31342 */
5363 : : rtx
5364 : 0 : gen_vaesenc_v16qi (const rtx operand0, const rtx operand1, const rtx operand2)
5365 : : {
5366 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5367 : 0 : static const uint8_t expand_encoding[] = {
5368 : : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5369 : : 0x01, 0x02, 0x81, 0x54
5370 : : };
5371 : 0 : return expand_rtx (expand_encoding, operands);
5372 : : }
5373 : :
5374 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31388 */
5375 : : rtx
5376 : 0 : gen_avx512vl_vpshufbitqmbv16qi (const rtx operand0, const rtx operand1, const rtx operand2)
5377 : : {
5378 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5379 : 0 : static const uint8_t expand_encoding[] = {
5380 : : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x02, 0x01, 0x01,
5381 : : 0x01, 0x02, 0x81, 0x57
5382 : : };
5383 : 0 : return expand_rtx (expand_encoding, operands);
5384 : : }
5385 : :
5386 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31474 */
5387 : : rtx
5388 : 11 : gen_avx512f_cvtne2ps2bf16_v32bf (const rtx operand0, const rtx operand1, const rtx operand2)
5389 : : {
5390 : 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5391 : 11 : static const uint8_t expand_encoding[] = {
5392 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x72, 0x72, 0x6d,
5393 : : 0x01, 0x02, 0x72, 0x6d, 0x01, 0x01
5394 : : };
5395 : 11 : return expand_rtx (expand_encoding, operands);
5396 : : }
5397 : :
5398 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31635 */
5399 : : rtx
5400 : 0 : gen_avx512f_cvtneps2bf16_v8sf (const rtx operand0, const rtx operand1)
5401 : : {
5402 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5403 : 0 : static const uint8_t expand_encoding[] = {
5404 : : 0x1f, 0x01, 0x00, 0x72, 0x69, 0x01, 0x01
5405 : : };
5406 : 0 : return expand_rtx (expand_encoding, operands);
5407 : : }
5408 : :
5409 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31665 */
5410 : : rtx
5411 : 12 : gen_avx512f_dpbf16ps_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5412 : : {
5413 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5414 : 12 : static const uint8_t expand_encoding[] = {
5415 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
5416 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5417 : : 0x59, 0x01, 0x01, 0x01, 0x04
5418 : : };
5419 : 12 : return expand_rtx (expand_encoding, operands);
5420 : : }
5421 : :
5422 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32028 */
5423 : : rtx
5424 : 14 : gen_vpdpbsuds_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5425 : : {
5426 : 14 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5427 : 14 : static const uint8_t expand_encoding[] = {
5428 : : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5429 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x67
5430 : : };
5431 : 14 : return expand_rtx (expand_encoding, operands);
5432 : : }
5433 : :
5434 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32039 */
5435 : : rtx
5436 : 12 : gen_vpdpbssds_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5437 : : {
5438 : 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5439 : 12 : static const uint8_t expand_encoding[] = {
5440 : : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5441 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x65
5442 : : };
5443 : 12 : return expand_rtx (expand_encoding, operands);
5444 : : }
5445 : :
5446 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32050 */
5447 : : rtx
5448 : 12 : gen_vpdpbuuds_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5449 : : {
5450 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5451 : 12 : static const uint8_t expand_encoding[] = {
5452 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5453 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5454 : : 0x69, 0x01, 0x01, 0x01, 0x04
5455 : : };
5456 : 12 : return expand_rtx (expand_encoding, operands);
5457 : : }
5458 : :
5459 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32050 */
5460 : : rtx
5461 : 12 : gen_vpdpbsuds_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5462 : : {
5463 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5464 : 12 : static const uint8_t expand_encoding[] = {
5465 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5466 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5467 : : 0x67, 0x01, 0x01, 0x01, 0x04
5468 : : };
5469 : 12 : return expand_rtx (expand_encoding, operands);
5470 : : }
5471 : :
5472 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32145 */
5473 : : rtx
5474 : 12 : gen_vcvtneoph2ps_v8hf (const rtx operand0, const rtx operand1)
5475 : : {
5476 : 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5477 : 12 : static const uint8_t expand_encoding[] = {
5478 : : 0x1f, 0x01, 0x00, 0x71, 0x6b, 0x81, 0x0a, 0x66,
5479 : : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x01, 0x27,
5480 : : 0x03, 0x27, 0x05, 0x27, 0x07
5481 : : };
5482 : 12 : return expand_rtx (expand_encoding, operands);
5483 : : }
5484 : :
5485 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32173 */
5486 : : rtx
5487 : 0 : gen_avx10_2_cvt2ps2phx_v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5488 : : {
5489 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5490 : 0 : static const uint8_t expand_encoding[] = {
5491 : : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6e, 0x72, 0x6a,
5492 : : 0x01, 0x02, 0x72, 0x6a, 0x01, 0x01
5493 : : };
5494 : 0 : return expand_rtx (expand_encoding, operands);
5495 : : }
5496 : :
5497 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32196 */
5498 : : rtx
5499 : 36 : gen_vcvt2ph2hf8v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5500 : : {
5501 : 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5502 : 36 : static const uint8_t expand_encoding[] = {
5503 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
5504 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x7c, 0x01,
5505 : : 0x03, 0x01, 0x04
5506 : : };
5507 : 36 : return expand_rtx (expand_encoding, operands);
5508 : : }
5509 : :
5510 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32196 */
5511 : : rtx
5512 : 0 : gen_vcvt2ph2bf8v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
5513 : : {
5514 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5515 : 0 : static const uint8_t expand_encoding[] = {
5516 : : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5517 : : 0x01, 0x02, 0x81, 0x7a
5518 : : };
5519 : 0 : return expand_rtx (expand_encoding, operands);
5520 : : }
5521 : :
5522 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32285 */
5523 : : rtx
5524 : 36 : gen_vcvtbiasph2bf8v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5525 : : {
5526 : 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5527 : 36 : static const uint8_t expand_encoding[] = {
5528 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
5529 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x76, 0x01,
5530 : : 0x03, 0x01, 0x04
5531 : : };
5532 : 36 : return expand_rtx (expand_encoding, operands);
5533 : : }
5534 : :
5535 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32285 */
5536 : : rtx
5537 : 0 : gen_vcvtbiasph2hf8v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5538 : : {
5539 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5540 : 0 : static const uint8_t expand_encoding[] = {
5541 : : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5542 : : 0x01, 0x02, 0x81, 0x78
5543 : : };
5544 : 0 : return expand_rtx (expand_encoding, operands);
5545 : : }
5546 : :
5547 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32370 */
5548 : : rtx
5549 : 36 : gen_vcvtph2hf8v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5550 : : {
5551 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5552 : 36 : static const uint8_t expand_encoding[] = {
5553 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5554 : : 0x01, 0x01, 0x01, 0x82, 0x00, 0x01, 0x02, 0x01,
5555 : : 0x03
5556 : : };
5557 : 36 : return expand_rtx (expand_encoding, operands);
5558 : : }
5559 : :
5560 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32379 */
5561 : : rtx
5562 : 36 : gen_vcvthf82phv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5563 : : {
5564 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5565 : 36 : static const uint8_t expand_encoding[] = {
5566 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
5567 : : 0x01, 0x01, 0x01, 0x82, 0x02, 0x01, 0x02, 0x01,
5568 : : 0x03
5569 : : };
5570 : 36 : return expand_rtx (expand_encoding, operands);
5571 : : }
5572 : :
5573 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32437 */
5574 : : rtx
5575 : 15 : gen_vpdpwusds_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5576 : : {
5577 : 15 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5578 : 15 : static const uint8_t expand_encoding[] = {
5579 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5580 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6b
5581 : : };
5582 : 15 : return expand_rtx (expand_encoding, operands);
5583 : : }
5584 : :
5585 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32448 */
5586 : : rtx
5587 : 12 : gen_vpdpwuuds_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5588 : : {
5589 : 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5590 : 12 : static const uint8_t expand_encoding[] = {
5591 : : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5592 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6f
5593 : : };
5594 : 12 : return expand_rtx (expand_encoding, operands);
5595 : : }
5596 : :
5597 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32459 */
5598 : : rtx
5599 : 12 : gen_vpdpwsuds_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5600 : : {
5601 : 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5602 : 12 : static const uint8_t expand_encoding[] = {
5603 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5604 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5605 : : 0x6d, 0x01, 0x01, 0x01, 0x04
5606 : : };
5607 : 12 : return expand_rtx (expand_encoding, operands);
5608 : : }
5609 : :
5610 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32500 */
5611 : : rtx
5612 : 0 : gen_vdpphps_v8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5613 : : {
5614 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5615 : 0 : static const uint8_t expand_encoding[] = {
5616 : : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
5617 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x75
5618 : : };
5619 : 0 : return expand_rtx (expand_encoding, operands);
5620 : : }
5621 : :
5622 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32552 */
5623 : : rtx
5624 : 12 : gen_avx10_2_scalefbf16_v32bf (const rtx operand0, const rtx operand1, const rtx operand2)
5625 : : {
5626 : 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5627 : 12 : static const uint8_t expand_encoding[] = {
5628 : : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x02, 0x01, 0x01,
5629 : : 0x01, 0x02, 0x82, 0x03
5630 : : };
5631 : 12 : return expand_rtx (expand_encoding, operands);
5632 : : }
5633 : :
5634 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32569 */
5635 : : rtx
5636 : 24 : gen_avx10_2_smaxbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5637 : : {
5638 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5639 : 24 : static const uint8_t expand_encoding[] = {
5640 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x53, 0x72,
5641 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5642 : : };
5643 : 24 : return expand_rtx (expand_encoding, operands);
5644 : : }
5645 : :
5646 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32579 */
5647 : : rtx
5648 : 24 : gen_avx10_2_addbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5649 : : {
5650 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5651 : 24 : static const uint8_t expand_encoding[] = {
5652 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x3b, 0x72,
5653 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5654 : : };
5655 : 24 : return expand_rtx (expand_encoding, operands);
5656 : : }
5657 : :
5658 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32579 */
5659 : : rtx
5660 : 13 : gen_avx10_2_mulbf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
5661 : : {
5662 : 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5663 : 13 : static const uint8_t expand_encoding[] = {
5664 : : 0x1f, 0x01, 0x00, 0x3e, 0x6d, 0x01, 0x01, 0x01,
5665 : : 0x02
5666 : : };
5667 : 13 : return expand_rtx (expand_encoding, operands);
5668 : : }
5669 : :
5670 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32579 */
5671 : : rtx
5672 : 24 : gen_avx10_2_mulbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5673 : : {
5674 : 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5675 : 24 : static const uint8_t expand_encoding[] = {
5676 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x3e, 0x69,
5677 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5678 : : };
5679 : 24 : return expand_rtx (expand_encoding, operands);
5680 : : }
5681 : :
5682 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32618 */
5683 : : rtx
5684 : 23 : gen_avx10_2_fmaddbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5685 : : {
5686 : 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5687 : 23 : static const uint8_t expand_encoding[] = {
5688 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5689 : : 0x69, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
5690 : : 0x01, 0x01, 0x04
5691 : : };
5692 : 23 : return expand_rtx (expand_encoding, operands);
5693 : : }
5694 : :
5695 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32681 */
5696 : : rtx
5697 : 23 : gen_avx10_2_fnmaddbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5698 : : {
5699 : 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5700 : 23 : static const uint8_t expand_encoding[] = {
5701 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x19,
5702 : : 0x72, 0x3d, 0x72, 0x01, 0x01, 0x01, 0x02, 0x01,
5703 : : 0x03, 0x01, 0x01, 0x01, 0x04
5704 : : };
5705 : 23 : return expand_rtx (expand_encoding, operands);
5706 : : }
5707 : :
5708 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32730 */
5709 : : rtx
5710 : 0 : gen_avx10_2_fmsubbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5711 : : {
5712 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5713 : 0 : static const uint8_t expand_encoding[] = {
5714 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x69, 0x01, 0x01,
5715 : : 0x01, 0x02, 0x3d, 0x69, 0x01, 0x03
5716 : : };
5717 : 0 : return expand_rtx (expand_encoding, operands);
5718 : : }
5719 : :
5720 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32795 */
5721 : : rtx
5722 : 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)
5723 : : {
5724 : 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5725 : 11 : static const uint8_t expand_encoding[] = {
5726 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x19,
5727 : : 0x72, 0x3d, 0x72, 0x01, 0x01, 0x01, 0x02, 0x3d,
5728 : : 0x72, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
5729 : : };
5730 : 11 : return expand_rtx (expand_encoding, operands);
5731 : : }
5732 : :
5733 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32848 */
5734 : : rtx
5735 : 0 : gen_avx10_2_rsqrtbf16_v32bf (const rtx operand0, const rtx operand1)
5736 : : {
5737 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5738 : 0 : static const uint8_t expand_encoding[] = {
5739 : : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x01, 0x01, 0x01,
5740 : : 0x38
5741 : : };
5742 : 0 : return expand_rtx (expand_encoding, operands);
5743 : : }
5744 : :
5745 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32857 */
5746 : : rtx
5747 : 36 : gen_avx10_2_sqrtbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5748 : : {
5749 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5750 : 36 : static const uint8_t expand_encoding[] = {
5751 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x7c, 0x72,
5752 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5753 : : };
5754 : 36 : return expand_rtx (expand_encoding, operands);
5755 : : }
5756 : :
5757 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32874 */
5758 : : rtx
5759 : 0 : gen_avx10_2_getexpbf16_v32bf (const rtx operand0, const rtx operand1)
5760 : : {
5761 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5762 : 0 : static const uint8_t expand_encoding[] = {
5763 : : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x01, 0x01, 0x01,
5764 : : 0x81, 0x26
5765 : : };
5766 : 0 : return expand_rtx (expand_encoding, operands);
5767 : : }
5768 : :
5769 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32893 */
5770 : : rtx
5771 : 33 : gen_avx10_2_reducebf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5772 : : {
5773 : 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5774 : 33 : static const uint8_t expand_encoding[] = {
5775 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x1a, 0x72,
5776 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x82, 0x05, 0x01,
5777 : : 0x03, 0x01, 0x04
5778 : : };
5779 : 33 : return expand_rtx (expand_encoding, operands);
5780 : : }
5781 : :
5782 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32893 */
5783 : : rtx
5784 : 0 : gen_avx10_2_reducebf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
5785 : : {
5786 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5787 : 0 : static const uint8_t expand_encoding[] = {
5788 : : 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x02, 0x01, 0x01,
5789 : : 0x01, 0x02, 0x82, 0x05
5790 : : };
5791 : 0 : return expand_rtx (expand_encoding, operands);
5792 : : }
5793 : :
5794 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32903 */
5795 : : rtx
5796 : 22 : gen_avx10_2_fpclassbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5797 : : {
5798 : 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5799 : 22 : static const uint8_t expand_encoding[] = {
5800 : : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
5801 : : 0x01, 0x01, 0x01, 0x02, 0x82, 0x07, 0x01, 0x03
5802 : : };
5803 : 22 : return expand_rtx (expand_encoding, operands);
5804 : : }
5805 : :
5806 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32952 */
5807 : : rtx
5808 : 36 : gen_avx10_2_cvtbf162iubsv32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5809 : : {
5810 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5811 : 36 : static const uint8_t expand_encoding[] = {
5812 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5813 : : 0x01, 0x01, 0x01, 0x82, 0x09, 0x01, 0x02, 0x01,
5814 : : 0x03
5815 : : };
5816 : 36 : return expand_rtx (expand_encoding, operands);
5817 : : }
5818 : :
5819 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32952 */
5820 : : rtx
5821 : 0 : gen_avx10_2_cvttbf162iubsv16bf (const rtx operand0, const rtx operand1)
5822 : : {
5823 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5824 : 0 : static const uint8_t expand_encoding[] = {
5825 : : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
5826 : : 0x82, 0x0f
5827 : : };
5828 : 0 : return expand_rtx (expand_encoding, operands);
5829 : : }
5830 : :
5831 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32952 */
5832 : : rtx
5833 : 36 : gen_avx10_2_cvttbf162iubsv8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5834 : : {
5835 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5836 : 36 : static const uint8_t expand_encoding[] = {
5837 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5838 : : 0x01, 0x01, 0x01, 0x82, 0x0f, 0x01, 0x02, 0x01,
5839 : : 0x03
5840 : : };
5841 : 36 : return expand_rtx (expand_encoding, operands);
5842 : : }
5843 : :
5844 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32967 */
5845 : : rtx
5846 : 0 : gen_avx10_2_cvtph2iubsv16hf (const rtx operand0, const rtx operand1)
5847 : : {
5848 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5849 : 0 : static const uint8_t expand_encoding[] = {
5850 : : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
5851 : : 0x82, 0x0b
5852 : : };
5853 : 0 : return expand_rtx (expand_encoding, operands);
5854 : : }
5855 : :
5856 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32982 */
5857 : : rtx
5858 : 36 : gen_avx10_2_cvttph2ibsv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5859 : : {
5860 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5861 : 36 : static const uint8_t expand_encoding[] = {
5862 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5863 : : 0x01, 0x01, 0x01, 0x82, 0x10, 0x01, 0x02, 0x01,
5864 : : 0x03
5865 : : };
5866 : 36 : return expand_rtx (expand_encoding, operands);
5867 : : }
5868 : :
5869 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32982 */
5870 : : rtx
5871 : 36 : gen_avx10_2_cvttph2ibsv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5872 : : {
5873 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5874 : 36 : static const uint8_t expand_encoding[] = {
5875 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5876 : : 0x01, 0x01, 0x01, 0x82, 0x10, 0x01, 0x02, 0x01,
5877 : : 0x03
5878 : : };
5879 : 36 : return expand_rtx (expand_encoding, operands);
5880 : : }
5881 : :
5882 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32997 */
5883 : : rtx
5884 : 0 : gen_avx10_2_cvtps2ibsv8sf (const rtx operand0, const rtx operand1)
5885 : : {
5886 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5887 : 0 : static const uint8_t expand_encoding[] = {
5888 : : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
5889 : : 0x82, 0x0c
5890 : : };
5891 : 0 : return expand_rtx (expand_encoding, operands);
5892 : : }
5893 : :
5894 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33012 */
5895 : : rtx
5896 : 0 : gen_avx10_2_cvttps2ibsv16sf_round (const rtx operand0, const rtx operand1, const rtx operand2)
5897 : : {
5898 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5899 : 0 : static const uint8_t expand_encoding[] = {
5900 : : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x1a, 0x5b,
5901 : : 0x01, 0x01, 0x01, 0x82, 0x12, 0x01, 0x02, 0x81,
5902 : : 0x33
5903 : : };
5904 : 0 : return expand_rtx (expand_encoding, operands);
5905 : : }
5906 : :
5907 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33012 */
5908 : : rtx
5909 : 36 : gen_avx10_2_cvttps2iubsv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5910 : : {
5911 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5912 : 36 : static const uint8_t expand_encoding[] = {
5913 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5914 : : 0x01, 0x01, 0x01, 0x82, 0x13, 0x01, 0x02, 0x01,
5915 : : 0x03
5916 : : };
5917 : 36 : return expand_rtx (expand_encoding, operands);
5918 : : }
5919 : :
5920 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33031 */
5921 : : rtx
5922 : 36 : gen_avx10_2_vcvttps2udqsv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5923 : : {
5924 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5925 : 36 : static const uint8_t expand_encoding[] = {
5926 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5927 : : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5928 : : 0x03
5929 : : };
5930 : 36 : return expand_rtx (expand_encoding, operands);
5931 : : }
5932 : :
5933 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33031 */
5934 : : rtx
5935 : 0 : gen_avx10_2_vcvttpd2dqsv8df_round (const rtx operand0, const rtx operand1, const rtx operand2)
5936 : : {
5937 : 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5938 : 0 : static const uint8_t expand_encoding[] = {
5939 : : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x1a, 0x56,
5940 : : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x81,
5941 : : 0x33
5942 : : };
5943 : 0 : return expand_rtx (expand_encoding, operands);
5944 : : }
5945 : :
5946 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33031 */
5947 : : rtx
5948 : 36 : gen_avx10_2_vcvttpd2udqsv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5949 : : {
5950 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5951 : 36 : static const uint8_t expand_encoding[] = {
5952 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5953 : : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5954 : : 0x03
5955 : : };
5956 : 36 : return expand_rtx (expand_encoding, operands);
5957 : : }
5958 : :
5959 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33042 */
5960 : : rtx
5961 : 36 : gen_avx10_2_vcvttpd2uqqsv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5962 : : {
5963 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5964 : 36 : static const uint8_t expand_encoding[] = {
5965 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
5966 : : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5967 : : 0x03
5968 : : };
5969 : 36 : return expand_rtx (expand_encoding, operands);
5970 : : }
5971 : :
5972 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5973 : : rtx
5974 : 0 : gen_avx10_2_vcvttps2qqsv8di (const rtx operand0, const rtx operand1)
5975 : : {
5976 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5977 : 0 : static const uint8_t expand_encoding[] = {
5978 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
5979 : : 0x82, 0x14
5980 : : };
5981 : 0 : return expand_rtx (expand_encoding, operands);
5982 : : }
5983 : :
5984 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5985 : : rtx
5986 : 36 : gen_avx10_2_vcvttps2qqsv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5987 : : {
5988 : 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5989 : 36 : static const uint8_t expand_encoding[] = {
5990 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5991 : : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5992 : : 0x03
5993 : : };
5994 : 36 : return expand_rtx (expand_encoding, operands);
5995 : : }
5996 : :
5997 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33064 */
5998 : : rtx
5999 : 23 : gen_avx10_2_vcvttsd2usissi_round (const rtx operand0, const rtx operand1, const rtx operand2)
6000 : : {
6001 : 23 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6002 : 23 : static const uint8_t expand_encoding[] = {
6003 : : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
6004 : : 0x01, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
6005 : : 0x01, 0x27, 0x00, 0x82, 0x15, 0x01, 0x02, 0x81,
6006 : : 0x33
6007 : : };
6008 : 23 : return expand_rtx (expand_encoding, operands);
6009 : : }
6010 : :
6011 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33077 */
6012 : : rtx
6013 : 0 : gen_avx10_2_vcvttss2usisdi (const rtx operand0, const rtx operand1)
6014 : : {
6015 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6016 : 0 : static const uint8_t expand_encoding[] = {
6017 : : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
6018 : : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
6019 : : 0x82, 0x15
6020 : : };
6021 : 0 : return expand_rtx (expand_encoding, operands);
6022 : : }
6023 : :
6024 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33102 */
6025 : : rtx
6026 : 0 : gen_avx10_2_minmaxpv32hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
6027 : : {
6028 : 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
6029 : 0 : static const uint8_t expand_encoding[] = {
6030 : : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
6031 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6032 : : 0x17, 0x01, 0x04, 0x81, 0x33
6033 : : };
6034 : 0 : return expand_rtx (expand_encoding, operands);
6035 : : }
6036 : :
6037 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33102 */
6038 : : rtx
6039 : 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)
6040 : : {
6041 : 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
6042 : 0 : static const uint8_t expand_encoding[] = {
6043 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
6044 : : 0x6a, 0x1a, 0x6a, 0x03, 0x01, 0x01, 0x01, 0x02,
6045 : : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6046 : : 0x01, 0x06, 0x81, 0x33
6047 : : };
6048 : 0 : return expand_rtx (expand_encoding, operands);
6049 : : }
6050 : :
6051 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33102 */
6052 : : rtx
6053 : 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)
6054 : : {
6055 : 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
6056 : 0 : static const uint8_t expand_encoding[] = {
6057 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
6058 : : 0x6b, 0x1a, 0x6b, 0x03, 0x01, 0x01, 0x01, 0x02,
6059 : : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6060 : : 0x01, 0x06, 0x81, 0x33
6061 : : };
6062 : 0 : return expand_rtx (expand_encoding, operands);
6063 : : }
6064 : :
6065 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33102 */
6066 : : rtx
6067 : 48 : gen_avx10_2_minmaxpv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
6068 : : {
6069 : 48 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
6070 : 48 : static const uint8_t expand_encoding[] = {
6071 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
6072 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6073 : : 0x17, 0x01, 0x04, 0x01, 0x05
6074 : : };
6075 : 48 : return expand_rtx (expand_encoding, operands);
6076 : : }
6077 : :
6078 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33114 */
6079 : : rtx
6080 : 0 : gen_avx10_2_minmaxsv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6081 : : {
6082 : 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6083 : 0 : static const uint8_t expand_encoding[] = {
6084 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
6085 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6086 : : 0x17, 0x01, 0x01, 0x27, 0x01
6087 : : };
6088 : 0 : return expand_rtx (expand_encoding, operands);
6089 : : }
6090 : :
6091 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33129 */
6092 : : rtx
6093 : 33 : gen_avx10_2_vmovrsbv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6094 : : {
6095 : 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6096 : 33 : static const uint8_t expand_encoding[] = {
6097 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
6098 : : 0x01, 0x01, 0x01, 0x82, 0x18, 0x01, 0x02, 0x01,
6099 : : 0x03
6100 : : };
6101 : 33 : return expand_rtx (expand_encoding, operands);
6102 : : }
6103 : :
6104 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33129 */
6105 : : rtx
6106 : 0 : gen_avx10_2_vmovrsdv4si (const rtx operand0, const rtx operand1)
6107 : : {
6108 : 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6109 : 0 : static const uint8_t expand_encoding[] = {
6110 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
6111 : : 0x82, 0x18
6112 : : };
6113 : 0 : return expand_rtx (expand_encoding, operands);
6114 : : }
6115 : :
6116 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:105 */
6117 : : rtx
6118 : 484 : gen_mfence_nosse (const rtx operand0)
6119 : : {
6120 : 484 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
6121 : 484 : static const uint8_t expand_encoding[] = {
6122 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x01,
6123 : : 0x01, 0x01, 0x00, 0x82, 0x1b, 0x05, 0x02, 0x11
6124 : : };
6125 : 484 : return expand_rtx (expand_encoding, operands);
6126 : : }
6127 : :
6128 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:378 */
6129 : : rtx
6130 : 20 : gen_storedi_via_sse (const rtx operand0, const rtx operand1)
6131 : : {
6132 : 20 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6133 : 20 : static const uint8_t expand_encoding[] = {
6134 : : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
6135 : : 0x82, 0x1f
6136 : : };
6137 : 20 : return expand_rtx (expand_encoding, operands);
6138 : : }
6139 : :
6140 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:693 */
6141 : : rtx
6142 : 2376 : gen_atomic_fetch_adddi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6143 : : {
6144 : 2376 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6145 : 2376 : static const uint8_t expand_encoding[] = {
6146 : : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x12,
6147 : : 0x02, 0x01, 0x01, 0x01, 0x03, 0x6e, 0x1f, 0x01,
6148 : : 0x01, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02, 0x05,
6149 : : 0x02, 0x11
6150 : : };
6151 : 2376 : return expand_rtx (expand_encoding, operands);
6152 : : }
6153 : :
6154 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:814 */
6155 : : rtx
6156 : 19 : gen_rao_aanddi (const rtx operand0, const rtx operand1)
6157 : : {
6158 : 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6159 : 19 : static const uint8_t expand_encoding[] = {
6160 : : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x02, 0x49, 0x12,
6161 : : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00, 0x71
6162 : : };
6163 : 19 : return expand_rtx (expand_encoding, operands);
6164 : : }
6165 : :
6166 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:824 */
6167 : : rtx
6168 : 7830 : gen_atomic_addsi (const rtx operand0, const rtx operand1, const rtx operand2)
6169 : : {
6170 : 7830 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6171 : 7830 : static const uint8_t expand_encoding[] = {
6172 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x11,
6173 : : 0x02, 0x3b, 0x11, 0x01, 0x00, 0x01, 0x01, 0x01,
6174 : : 0x02, 0x6f, 0x05, 0x02, 0x11
6175 : : };
6176 : 7830 : return expand_rtx (expand_encoding, operands);
6177 : : }
6178 : :
6179 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:878 */
6180 : : rtx
6181 : 88 : gen_atomic_orhi (const rtx operand0, const rtx operand1, const rtx operand2)
6182 : : {
6183 : 88 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6184 : 88 : static const uint8_t expand_encoding[] = {
6185 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x10,
6186 : : 0x02, 0x4a, 0x10, 0x01, 0x00, 0x01, 0x01, 0x01,
6187 : : 0x02, 0x6f, 0x05, 0x02, 0x11
6188 : : };
6189 : 88 : return expand_rtx (expand_encoding, operands);
6190 : : }
6191 : :
6192 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:910 */
6193 : : rtx
6194 : 23 : gen_atomic_bit_test_and_setdi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6195 : : {
6196 : 23 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6197 : 23 : static const uint8_t expand_encoding[] = {
6198 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
6199 : : 0x08, 0x1b, 0x12, 0x02, 0x01, 0x00, 0x01, 0x02,
6200 : : 0x6e, 0x27, 0x00, 0x1f, 0x81, 0x06, 0x12, 0x01,
6201 : : 0x00, 0x27, 0x01, 0x01, 0x01, 0x27, 0x01
6202 : : };
6203 : 23 : return expand_rtx (expand_encoding, operands);
6204 : : }
6205 : :
6206 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1018 */
6207 : : rtx
6208 : 104 : gen_atomic_add_fetch_cmp_0di_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6209 : : {
6210 : 104 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6211 : 104 : static const uint8_t expand_encoding[] = {
6212 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11, 0x3a,
6213 : : 0x04, 0x3b, 0x12, 0x1b, 0x12, 0x02, 0x01, 0x00,
6214 : : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6215 : : 0x01, 0x00, 0x3b, 0x12, 0x01, 0x00, 0x01, 0x01
6216 : : };
6217 : 104 : return expand_rtx (expand_encoding, operands);
6218 : : }
6219 : :
6220 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1089 */
6221 : : rtx
6222 : 44 : gen_atomic_xor_fetch_cmp_0hi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6223 : : {
6224 : 44 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6225 : 44 : static const uint8_t expand_encoding[] = {
6226 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x05, 0x11, 0x3a,
6227 : : 0x05, 0x4b, 0x10, 0x1b, 0x10, 0x02, 0x01, 0x00,
6228 : : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6229 : : 0x01, 0x00, 0x4b, 0x10, 0x01, 0x00, 0x01, 0x01
6230 : : };
6231 : 44 : return expand_rtx (expand_encoding, operands);
6232 : : }
6233 : :
6234 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1440 */
6235 : : rtx
6236 : 133262 : gen_cbranchhi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6237 : : {
6238 : 133262 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6239 : 133262 : start_sequence ();
6240 : 133262 : {
6241 : : #define FAIL return (end_sequence (), nullptr)
6242 : : #define DONE return end_sequence ()
6243 : : #line 1450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6244 : : {
6245 : : if (MEM_P (operands[1]) && MEM_P (operands[2]))
6246 : : operands[1] = force_reg (HImode, operands[1]);
6247 : : ix86_expand_branch (GET_CODE (operands[0]),
6248 : : operands[1], operands[2], operands[3]);
6249 : : DONE;
6250 : : }
6251 : : #undef DONE
6252 : : #undef FAIL
6253 : : }
6254 : : static const uint8_t expand_encoding[] = {
6255 : : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6256 : : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
6257 : : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
6258 : : 0x00, 0x01, 0x03, 0x2f
6259 : : };
6260 : : return complete_seq (expand_encoding, operands);
6261 : : }
6262 : :
6263 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1550 */
6264 : : rtx
6265 : : gen_cmphi_1 (const rtx operand0, const rtx operand1)
6266 : : {
6267 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6268 : : static const uint8_t expand_encoding[] = {
6269 : : 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01, 0x00,
6270 : : 0x01, 0x01
6271 : : };
6272 : : return expand_rtx (expand_encoding, operands);
6273 : : }
6274 : :
6275 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1683 */
6276 : : extern rtx_insn *gen_split_2 (rtx_insn *, rtx *);
6277 : : rtx_insn *
6278 : : gen_split_2 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6279 : : {
6280 : : if (dump_file)
6281 : : fprintf (dump_file, "Splitting with gen_split_2 (i386.md:1683)\n");
6282 : : start_sequence ();
6283 : : #define FAIL return (end_sequence (), nullptr)
6284 : : #define DONE return end_sequence ()
6285 : : #line 1694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6286 : : {
6287 : : split_double_mode (TImode, &operands[0], 2, &operands[0], &operands[2]);
6288 : :
6289 : : operands[4] = gen_reg_rtx (DImode);
6290 : :
6291 : : /* Special case comparisons against -1. */
6292 : : if (operands[1] == constm1_rtx && operands[3] == constm1_rtx)
6293 : : {
6294 : : emit_insn (gen_anddi3 (operands[4], operands[0], operands[2]));
6295 : : emit_insn (gen_cmp_1 (DImode, operands[4], constm1_rtx));
6296 : : DONE;
6297 : : }
6298 : :
6299 : : if (operands[1] == const0_rtx)
6300 : : emit_move_insn (operands[4], operands[0]);
6301 : : else if (operands[0] == const0_rtx)
6302 : : emit_move_insn (operands[4], operands[1]);
6303 : : else if (operands[1] == constm1_rtx)
6304 : : emit_insn (gen_one_cmpldi2 (operands[4], operands[0]));
6305 : : else if (operands[0] == constm1_rtx)
6306 : : emit_insn (gen_one_cmpldi2 (operands[4], operands[1]));
6307 : : else
6308 : : {
6309 : : if (CONST_SCALAR_INT_P (operands[1])
6310 : : && !x86_64_immediate_operand (operands[1], DImode))
6311 : : operands[1] = force_reg (DImode, operands[1]);
6312 : : emit_insn (gen_xordi3 (operands[4], operands[0], operands[1]));
6313 : : }
6314 : :
6315 : : if (operands[3] == const0_rtx)
6316 : : operands[5] = operands[2];
6317 : : else if (operands[2] == const0_rtx)
6318 : : operands[5] = operands[3];
6319 : : else
6320 : : {
6321 : : operands[5] = gen_reg_rtx (DImode);
6322 : : if (operands[3] == constm1_rtx)
6323 : : emit_insn (gen_one_cmpldi2 (operands[5], operands[2]));
6324 : : else if (operands[2] == constm1_rtx)
6325 : : emit_insn (gen_one_cmpldi2 (operands[5], operands[3]));
6326 : : else
6327 : : {
6328 : : if (CONST_SCALAR_INT_P (operands[3])
6329 : : && !x86_64_immediate_operand (operands[3], DImode))
6330 : : operands[3] = force_reg (DImode, operands[3]);
6331 : : emit_insn (gen_xordi3 (operands[5], operands[2], operands[3]));
6332 : : }
6333 : : }
6334 : : }
6335 : : #undef DONE
6336 : : #undef FAIL
6337 : : static const uint8_t expand_encoding[] = {
6338 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
6339 : : 0x3a, 0x0c, 0x4a, 0x12, 0x01, 0x04, 0x01, 0x05,
6340 : : 0x27, 0x00, 0x1f, 0x01, 0x04, 0x4a, 0x12, 0x01,
6341 : : 0x04, 0x01, 0x05
6342 : : };
6343 : : return complete_seq (expand_encoding, operands);
6344 : : }
6345 : :
6346 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2162 */
6347 : : extern rtx_insn *gen_peephole2_2 (rtx_insn *, rtx *);
6348 : : rtx_insn *
6349 : : gen_peephole2_2 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6350 : : {
6351 : : HARD_REG_SET _regs_allocated;
6352 : : CLEAR_HARD_REG_SET (_regs_allocated);
6353 : : if ((operands[0] = peep2_find_free_register (0, 0, "r", QImode, &_regs_allocated)) == NULL_RTX)
6354 : : return NULL;
6355 : : if (dump_file)
6356 : : fprintf (dump_file, "Splitting with gen_peephole2_2 (i386.md:2162)\n");
6357 : : start_sequence ();
6358 : : static const uint8_t expand_encoding[] = {
6359 : : 0x02, 0x1f, 0x01, 0x00, 0x5c, 0x0f, 0x30, 0x08,
6360 : : 0x11, 0x27, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x30,
6361 : : 0x08, 0x11, 0x3a, 0x08, 0x3b, 0x0f, 0x01, 0x00,
6362 : : 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
6363 : : 0xff, 0xff, 0x7f, 0x01, 0x00, 0x1f, 0x01, 0x00,
6364 : : 0x3b, 0x0f, 0x01, 0x00, 0x27, 0x81, 0xff, 0xff,
6365 : : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f
6366 : : };
6367 : : return complete_seq (expand_encoding, operands);
6368 : : }
6369 : :
6370 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2379 */
6371 : : rtx
6372 : : gen_movxi (const rtx operand0, const rtx operand1)
6373 : : {
6374 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6375 : : start_sequence ();
6376 : : {
6377 : : #define FAIL return (end_sequence (), nullptr)
6378 : : #define DONE return end_sequence ()
6379 : : #line 2383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6380 : : ix86_expand_vector_move (XImode, operands); DONE;
6381 : : #undef DONE
6382 : : #undef FAIL
6383 : : }
6384 : : static const uint8_t expand_encoding[] = {
6385 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6386 : : };
6387 : : return complete_seq (expand_encoding, operands);
6388 : : }
6389 : :
6390 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2419 */
6391 : : rtx
6392 : : gen_movqi (const rtx operand0, const rtx operand1)
6393 : : {
6394 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6395 : : start_sequence ();
6396 : : {
6397 : : #define FAIL return (end_sequence (), nullptr)
6398 : : #define DONE return end_sequence ()
6399 : : #line 2423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6400 : : ix86_expand_move (QImode, operands); DONE;
6401 : : #undef DONE
6402 : : #undef FAIL
6403 : : }
6404 : : static const uint8_t expand_encoding[] = {
6405 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6406 : : };
6407 : : return complete_seq (expand_encoding, operands);
6408 : : }
6409 : :
6410 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2452 */
6411 : : extern rtx_insn *gen_split_19 (rtx_insn *, rtx *);
6412 : : rtx_insn *
6413 : : gen_split_19 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6414 : : {
6415 : : if (dump_file)
6416 : : fprintf (dump_file, "Splitting with gen_split_19 (i386.md:2452)\n");
6417 : : start_sequence ();
6418 : : #define FAIL return (end_sequence (), nullptr)
6419 : : #define DONE return end_sequence ()
6420 : : #line 2460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6421 : :
6422 : : #undef DONE
6423 : : #undef FAIL
6424 : : static const uint8_t expand_encoding[] = {
6425 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6426 : : };
6427 : : return complete_seq (expand_encoding, operands);
6428 : : }
6429 : :
6430 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2960 */
6431 : : extern rtx_insn *gen_peephole2_7 (rtx_insn *, rtx *);
6432 : : rtx_insn *
6433 : : gen_peephole2_7 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6434 : : {
6435 : : if (dump_file)
6436 : : fprintf (dump_file, "Splitting with gen_peephole2_7 (i386.md:2960)\n");
6437 : : start_sequence ();
6438 : : #define FAIL return (end_sequence (), nullptr)
6439 : : #define DONE return end_sequence ()
6440 : : #line 2972 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6441 : : {
6442 : : if (GET_MODE (operands[0]) != word_mode)
6443 : : operands[0] = gen_rtx_REG (word_mode, REGNO (operands[0]));
6444 : :
6445 : : operands[2] = gen_rtx_MEM (word_mode,
6446 : : gen_rtx_PRE_DEC (Pmode, stack_pointer_rtx));
6447 : : operands[3] = gen_rtx_MEM (word_mode,
6448 : : gen_rtx_POST_INC (Pmode, stack_pointer_rtx));
6449 : : }
6450 : : #undef DONE
6451 : : #undef FAIL
6452 : : static const uint8_t expand_encoding[] = {
6453 : : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
6454 : : 0x00, 0x01, 0x03
6455 : : };
6456 : : return complete_seq (expand_encoding, operands);
6457 : : }
6458 : :
6459 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3420 */
6460 : : extern rtx_insn *gen_peephole2_23 (rtx_insn *, rtx *);
6461 : : rtx_insn *
6462 : : gen_peephole2_23 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6463 : : {
6464 : : if (dump_file)
6465 : : fprintf (dump_file, "Splitting with gen_peephole2_23 (i386.md:3420)\n");
6466 : : start_sequence ();
6467 : : static const uint8_t expand_encoding[] = {
6468 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6469 : : };
6470 : : return complete_seq (expand_encoding, operands);
6471 : : }
6472 : :
6473 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3513 */
6474 : : extern rtx_insn *gen_split_26 (rtx_insn *, rtx *);
6475 : : rtx_insn *
6476 : : gen_split_26 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6477 : : {
6478 : : if (dump_file)
6479 : : fprintf (dump_file, "Splitting with gen_split_26 (i386.md:3513)\n");
6480 : : start_sequence ();
6481 : : static const uint8_t expand_encoding[] = {
6482 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
6483 : : 0x11, 0x01, 0x01, 0x27, 0x01, 0x05, 0x02, 0x11,
6484 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3d, 0x11,
6485 : : 0x01, 0x00, 0x05, 0x02, 0x11
6486 : : };
6487 : : return complete_seq (expand_encoding, operands);
6488 : : }
6489 : :
6490 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3648 */
6491 : : extern rtx_insn *gen_peephole2_29 (rtx_insn *, rtx *);
6492 : : rtx_insn *
6493 : : gen_peephole2_29 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6494 : : {
6495 : : if (dump_file)
6496 : : fprintf (dump_file, "Splitting with gen_peephole2_29 (i386.md:3648)\n");
6497 : : start_sequence ();
6498 : : static const uint8_t expand_encoding[] = {
6499 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
6500 : : 0x00, 0x05, 0x02, 0x11
6501 : : };
6502 : : return complete_seq (expand_encoding, operands);
6503 : : }
6504 : :
6505 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3648 */
6506 : : extern rtx_insn *gen_peephole2_33 (rtx_insn *, rtx *);
6507 : : rtx_insn *
6508 : : gen_peephole2_33 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6509 : : {
6510 : : if (dump_file)
6511 : : fprintf (dump_file, "Splitting with gen_peephole2_33 (i386.md:3648)\n");
6512 : : start_sequence ();
6513 : : static const uint8_t expand_encoding[] = {
6514 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
6515 : : 0x00, 0x05, 0x02, 0x11
6516 : : };
6517 : : return complete_seq (expand_encoding, operands);
6518 : : }
6519 : :
6520 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3705 */
6521 : : extern rtx_insn *gen_split_28 (rtx_insn *, rtx *);
6522 : : rtx_insn *
6523 : : gen_split_28 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6524 : : {
6525 : : if (dump_file)
6526 : : fprintf (dump_file, "Splitting with gen_split_28 (i386.md:3705)\n");
6527 : : start_sequence ();
6528 : : #define FAIL return (end_sequence (), nullptr)
6529 : : #define DONE return end_sequence ()
6530 : : #line 3723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6531 : : {
6532 : : operands[4] = gen_lowpart (DImode, operands[1]);
6533 : : split_double_concat (TImode, operands[0], operands[4], operands[2]);
6534 : : DONE;
6535 : : }
6536 : : #undef DONE
6537 : : #undef FAIL
6538 : : static const uint8_t expand_encoding[] = {
6539 : : 0x01, 0x27, 0x00
6540 : : };
6541 : : return complete_seq (expand_encoding, operands);
6542 : : }
6543 : :
6544 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3787 */
6545 : : extern rtx_insn *gen_split_38 (rtx_insn *, rtx *);
6546 : : rtx_insn *
6547 : : gen_split_38 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6548 : : {
6549 : : if (dump_file)
6550 : : fprintf (dump_file, "Splitting with gen_split_38 (i386.md:3787)\n");
6551 : : start_sequence ();
6552 : : #define FAIL return (end_sequence (), nullptr)
6553 : : #define DONE return end_sequence ()
6554 : : #line 3793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6555 : : {
6556 : : /* Preserve memory attributes. */
6557 : : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6558 : : }
6559 : : #undef DONE
6560 : : #undef FAIL
6561 : : static const uint8_t expand_encoding[] = {
6562 : : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6563 : : 0x12, 0x07, 0x27, 0x81, 0xff, 0xff, 0xff, 0xff,
6564 : : 0xff, 0xff, 0xff, 0xff, 0x70, 0x1f, 0x01, 0x00,
6565 : : 0x01, 0x01
6566 : : };
6567 : : return complete_seq (expand_encoding, operands);
6568 : : }
6569 : :
6570 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3987 */
6571 : : extern rtx_insn *gen_split_48 (rtx_insn *, rtx *);
6572 : : rtx_insn *
6573 : : gen_split_48 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6574 : : {
6575 : : if (dump_file)
6576 : : fprintf (dump_file, "Splitting with gen_split_48 (i386.md:3987)\n");
6577 : : start_sequence ();
6578 : : #define FAIL return (end_sequence (), nullptr)
6579 : : #define DONE return end_sequence ()
6580 : : #line 3993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6581 : : {
6582 : : rtx op = XEXP (operands[0], 0);
6583 : : if (GET_CODE (op) == PRE_DEC)
6584 : : {
6585 : : gcc_assert (!TARGET_64BIT);
6586 : : op = GEN_INT (-4);
6587 : : }
6588 : : else
6589 : : {
6590 : : op = XEXP (XEXP (op, 1), 1);
6591 : : gcc_assert (CONST_INT_P (op));
6592 : : }
6593 : : operands[2] = op;
6594 : : /* Preserve memory attributes. */
6595 : : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6596 : : }
6597 : : #undef DONE
6598 : : #undef FAIL
6599 : : static const uint8_t expand_encoding[] = {
6600 : : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6601 : : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6602 : : 0x01
6603 : : };
6604 : : return complete_seq (expand_encoding, operands);
6605 : : }
6606 : :
6607 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4634 */
6608 : : extern rtx_insn *gen_split_56 (rtx_insn *, rtx *);
6609 : : rtx_insn *
6610 : : gen_split_56 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6611 : : {
6612 : : if (dump_file)
6613 : : fprintf (dump_file, "Splitting with gen_split_56 (i386.md:4634)\n");
6614 : : start_sequence ();
6615 : : #define FAIL return (end_sequence (), nullptr)
6616 : : #define DONE return end_sequence ()
6617 : : #line 4643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6618 : : {
6619 : : if (real_isnegzero (CONST_DOUBLE_REAL_VALUE (operands[1])))
6620 : : operands[1] = CONST0_RTX (SFmode);
6621 : : else
6622 : : operands[1] = CONST1_RTX (SFmode);
6623 : : }
6624 : : #undef DONE
6625 : : #undef FAIL
6626 : : static const uint8_t expand_encoding[] = {
6627 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1f, 0x01,
6628 : : 0x00, 0x3d, 0x2d, 0x01, 0x00
6629 : : };
6630 : : return complete_seq (expand_encoding, operands);
6631 : : }
6632 : :
6633 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4845 */
6634 : : extern rtx_insn *gen_split_64 (rtx_insn *, rtx *);
6635 : : rtx_insn *
6636 : : gen_split_64 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6637 : : {
6638 : : if (dump_file)
6639 : : fprintf (dump_file, "Splitting with gen_split_64 (i386.md:4845)\n");
6640 : : start_sequence ();
6641 : : #define FAIL return (end_sequence (), nullptr)
6642 : : #define DONE return end_sequence ()
6643 : : #line 4855 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6644 : : {
6645 : : if (!REG_P (operands[1])
6646 : : || REGNO (operands[0]) != REGNO (operands[1]))
6647 : : {
6648 : : ix86_expand_clear (operands[0]);
6649 : :
6650 : : gcc_assert (!TARGET_PARTIAL_REG_STALL);
6651 : : emit_insn (gen_rtx_SET
6652 : : (gen_rtx_STRICT_LOW_PART
6653 : : (VOIDmode, gen_lowpart (HImode, operands[0])),
6654 : : operands[1]));
6655 : : DONE;
6656 : : }
6657 : :
6658 : : operands[2] = GEN_INT (GET_MODE_MASK (HImode));
6659 : : }
6660 : : #undef DONE
6661 : : #undef FAIL
6662 : : static const uint8_t expand_encoding[] = {
6663 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
6664 : : 0x11, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
6665 : : };
6666 : : return complete_seq (expand_encoding, operands);
6667 : : }
6668 : :
6669 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5060 */
6670 : : extern rtx_insn *gen_peephole2_52 (rtx_insn *, rtx *);
6671 : : rtx_insn *
6672 : : gen_peephole2_52 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6673 : : {
6674 : : if (dump_file)
6675 : : fprintf (dump_file, "Splitting with gen_peephole2_52 (i386.md:5060)\n");
6676 : : start_sequence ();
6677 : : static const uint8_t expand_encoding[] = {
6678 : : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
6679 : : 0x02, 0x1f, 0x01, 0x01, 0x4f, 0x12, 0x01, 0x01,
6680 : : 0x01, 0x04, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x03,
6681 : : 0x01, 0x01
6682 : : };
6683 : : return complete_seq (expand_encoding, operands);
6684 : : }
6685 : :
6686 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5271 */
6687 : : extern rtx_insn *gen_split_74 (rtx_insn *, rtx *);
6688 : : rtx_insn *
6689 : : gen_split_74 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6690 : : {
6691 : : if (dump_file)
6692 : : fprintf (dump_file, "Splitting with gen_split_74 (i386.md:5271)\n");
6693 : : start_sequence ();
6694 : : #define FAIL return (end_sequence (), nullptr)
6695 : : #define DONE return end_sequence ()
6696 : : #line 5277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6697 : : operands[2] = GEN_INT (-GET_MODE_SIZE (XFmode));
6698 : : #undef DONE
6699 : : #undef FAIL
6700 : : static const uint8_t expand_encoding[] = {
6701 : : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
6702 : : 0x11, 0x07, 0x01, 0x02, 0x1f, 0x36, 0x2f, 0x30,
6703 : : 0x11, 0x07, 0x71, 0x2f, 0x01, 0x01
6704 : : };
6705 : : return complete_seq (expand_encoding, operands);
6706 : : }
6707 : :
6708 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5466 */
6709 : : rtx
6710 : : gen_extendbfsf2 (const rtx operand0, const rtx operand1)
6711 : : {
6712 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6713 : : static const uint8_t expand_encoding[] = {
6714 : : 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x01, 0x01, 0x01,
6715 : : 0x3d
6716 : : };
6717 : : return expand_rtx (expand_encoding, operands);
6718 : : }
6719 : :
6720 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5637 */
6721 : : extern rtx_insn *gen_split_79 (rtx_insn *, rtx *);
6722 : : rtx_insn *
6723 : : gen_split_79 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6724 : : {
6725 : : if (dump_file)
6726 : : fprintf (dump_file, "Splitting with gen_split_79 (i386.md:5637)\n");
6727 : : start_sequence ();
6728 : : #define FAIL return (end_sequence (), nullptr)
6729 : : #define DONE return end_sequence ()
6730 : : #line 5656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6731 : : {
6732 : : operands[0] = lowpart_subreg (V4SFmode, operands[0], SFmode);
6733 : : emit_move_insn (operands[0], CONST0_RTX (V4SFmode));
6734 : : }
6735 : : #undef DONE
6736 : : #undef FAIL
6737 : : static const uint8_t expand_encoding[] = {
6738 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
6739 : : 0x0c, 0x6b, 0x72, 0x2d, 0x01, 0x01, 0x01, 0x00,
6740 : : 0x27, 0x01
6741 : : };
6742 : : return complete_seq (expand_encoding, operands);
6743 : : }
6744 : :
6745 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5823 */
6746 : : rtx
6747 : : gen_fix_truncsfhi2 (const rtx operand0, const rtx operand1)
6748 : : {
6749 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6750 : : start_sequence ();
6751 : : {
6752 : : #define FAIL return (end_sequence (), nullptr)
6753 : : #define DONE return end_sequence ()
6754 : : #line 5829 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6755 : : {
6756 : : if (TARGET_FISTTP)
6757 : : {
6758 : : emit_insn (gen_fix_trunchi_i387_fisttp (operands[0], operands[1]));
6759 : : DONE;
6760 : : }
6761 : : }
6762 : : #undef DONE
6763 : : #undef FAIL
6764 : : }
6765 : : static const uint8_t expand_encoding[] = {
6766 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74,
6767 : : 0x10, 0x01, 0x01, 0x05, 0x02, 0x11
6768 : : };
6769 : : return complete_seq (expand_encoding, operands);
6770 : : }
6771 : :
6772 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5913 */
6773 : : extern rtx_insn *gen_split_81 (rtx_insn *, rtx *);
6774 : : rtx_insn *
6775 : : gen_split_81 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6776 : : {
6777 : : if (dump_file)
6778 : : fprintf (dump_file, "Splitting with gen_split_81 (i386.md:5913)\n");
6779 : : start_sequence ();
6780 : : #define FAIL return (end_sequence (), nullptr)
6781 : : #define DONE return end_sequence ()
6782 : : #line 5925 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6783 : : {
6784 : : ix86_split_convert_uns_si_sse (operands);
6785 : : DONE;
6786 : : }
6787 : : #undef DONE
6788 : : #undef FAIL
6789 : : static const uint8_t expand_encoding[] = {
6790 : : 0x01, 0x27, 0x00
6791 : : };
6792 : : return complete_seq (expand_encoding, operands);
6793 : : }
6794 : :
6795 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5998 */
6796 : : extern rtx_insn *gen_split_84 (rtx_insn *, rtx *);
6797 : : rtx_insn *
6798 : : gen_split_84 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6799 : : {
6800 : : if (dump_file)
6801 : : fprintf (dump_file, "Splitting with gen_split_84 (i386.md:5998)\n");
6802 : : start_sequence ();
6803 : : #define FAIL return (end_sequence (), nullptr)
6804 : : #define DONE return end_sequence ()
6805 : : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6806 : : {
6807 : : ix86_optimize_mode_switching[I387_TRUNC] = 1;
6808 : :
6809 : : operands[2] = assign_386_stack_local (HImode, SLOT_CW_STORED);
6810 : : operands[3] = assign_386_stack_local (HImode, SLOT_CW_TRUNC);
6811 : :
6812 : : emit_insn (gen_fix_truncdi_i387 (operands[0], operands[1],
6813 : : operands[2], operands[3]));
6814 : : DONE;
6815 : : }
6816 : : #undef DONE
6817 : : #undef FAIL
6818 : : static const uint8_t expand_encoding[] = {
6819 : : 0x01, 0x27, 0x00
6820 : : };
6821 : : return complete_seq (expand_encoding, operands);
6822 : : }
6823 : :
6824 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6250 */
6825 : : extern rtx_insn *gen_split_94 (rtx_insn *, rtx *);
6826 : : rtx_insn *
6827 : : gen_split_94 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6828 : : {
6829 : : if (dump_file)
6830 : : fprintf (dump_file, "Splitting with gen_split_94 (i386.md:6250)\n");
6831 : : start_sequence ();
6832 : : #define FAIL return (end_sequence (), nullptr)
6833 : : #define DONE return end_sequence ()
6834 : : #line 6266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6835 : : {
6836 : : const machine_mode vmode = V4SFmode;
6837 : :
6838 : : operands[0] = lowpart_subreg (vmode, operands[0], SFmode);
6839 : : emit_move_insn (operands[0], CONST0_RTX (vmode));
6840 : : }
6841 : : #undef DONE
6842 : : #undef FAIL
6843 : : static const uint8_t expand_encoding[] = {
6844 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
6845 : : 0x0c, 0x6b, 0x73, 0x2d, 0x01, 0x01, 0x01, 0x00,
6846 : : 0x27, 0x01
6847 : : };
6848 : : return complete_seq (expand_encoding, operands);
6849 : : }
6850 : :
6851 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6300 */
6852 : : extern rtx_insn *gen_split_97 (rtx_insn *, rtx *);
6853 : : rtx_insn *
6854 : : gen_split_97 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6855 : : {
6856 : : if (dump_file)
6857 : : fprintf (dump_file, "Splitting with gen_split_97 (i386.md:6300)\n");
6858 : : start_sequence ();
6859 : : #define FAIL return (end_sequence (), nullptr)
6860 : : #define DONE return end_sequence ()
6861 : : #line 6315 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6862 : :
6863 : : #undef DONE
6864 : : #undef FAIL
6865 : : static const uint8_t expand_encoding[] = {
6866 : : 0x03, 0x1f, 0x01, 0x03, 0x6f, 0x12, 0x01, 0x01,
6867 : : 0x1f, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x00,
6868 : : 0x73, 0x2d, 0x01, 0x02
6869 : : };
6870 : : return complete_seq (expand_encoding, operands);
6871 : : }
6872 : :
6873 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6425 */
6874 : : extern rtx_insn *gen_split_100 (rtx_insn *, rtx *);
6875 : : rtx_insn *
6876 : : gen_split_100 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6877 : : {
6878 : : if (dump_file)
6879 : : fprintf (dump_file, "Splitting with gen_split_100 (i386.md:6425)\n");
6880 : : start_sequence ();
6881 : : #define FAIL return (end_sequence (), nullptr)
6882 : : #define DONE return end_sequence ()
6883 : : #line 6432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6884 : : operands[1] = GEN_INT (exact_log2 (INTVAL (operands[1])));
6885 : : #undef DONE
6886 : : #undef FAIL
6887 : : static const uint8_t expand_encoding[] = {
6888 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
6889 : : 0x11, 0x01, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11
6890 : : };
6891 : : return complete_seq (expand_encoding, operands);
6892 : : }
6893 : :
6894 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6469 */
6895 : : extern rtx_insn *gen_peephole2_66 (rtx_insn *, rtx *);
6896 : : rtx_insn *
6897 : : gen_peephole2_66 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6898 : : {
6899 : : if (dump_file)
6900 : : fprintf (dump_file, "Splitting with gen_peephole2_66 (i386.md:6469)\n");
6901 : : start_sequence ();
6902 : : static const uint8_t expand_encoding[] = {
6903 : : 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x3b, 0x11,
6904 : : 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
6905 : : };
6906 : : return complete_seq (expand_encoding, operands);
6907 : : }
6908 : :
6909 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6510 */
6910 : : extern rtx_insn *gen_split_105 (rtx_insn *, rtx *);
6911 : : rtx_insn *
6912 : : gen_split_105 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6913 : : {
6914 : : if (dump_file)
6915 : : fprintf (dump_file, "Splitting with gen_split_105 (i386.md:6510)\n");
6916 : : start_sequence ();
6917 : : #define FAIL return (end_sequence (), nullptr)
6918 : : #define DONE return end_sequence ()
6919 : : #line 6532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6920 : : {
6921 : : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
6922 : : if (operands[2] == const0_rtx)
6923 : : {
6924 : : /* Under NDD op0 and op1 may not equal, do not delete insn then. */
6925 : : bool emit_insn_deleted_note_p = true;
6926 : : if (!rtx_equal_p (operands[0], operands[1]))
6927 : : {
6928 : : emit_move_insn (operands[0], operands[1]);
6929 : : emit_insn_deleted_note_p = false;
6930 : : }
6931 : : if (operands[5] != const0_rtx)
6932 : : ix86_expand_binary_operator (PLUS, DImode, &operands[3],
6933 : : TARGET_APX_NDD);
6934 : : else if (!rtx_equal_p (operands[3], operands[4]))
6935 : : emit_move_insn (operands[3], operands[4]);
6936 : : else if (emit_insn_deleted_note_p)
6937 : : emit_note (NOTE_INSN_DELETED);
6938 : : DONE;
6939 : : }
6940 : : }
6941 : : #undef DONE
6942 : : #undef FAIL
6943 : : static const uint8_t expand_encoding[] = {
6944 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
6945 : : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
6946 : : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01,
6947 : : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01,
6948 : : 0x03, 0x3b, 0x12, 0x3b, 0x12, 0x66, 0x12, 0x30,
6949 : : 0x02, 0x11, 0x27, 0x00, 0x01, 0x04, 0x01, 0x05,
6950 : : 0x05, 0x02, 0x11
6951 : : };
6952 : : return complete_seq (expand_encoding, operands);
6953 : : }
6954 : :
6955 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7036 */
6956 : : extern rtx_insn *gen_split_123 (rtx_insn *, rtx *);
6957 : : rtx_insn *
6958 : : gen_split_123 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6959 : : {
6960 : : if (dump_file)
6961 : : fprintf (dump_file, "Splitting with gen_split_123 (i386.md:7036)\n");
6962 : : start_sequence ();
6963 : : #define FAIL return (end_sequence (), nullptr)
6964 : : #define DONE return end_sequence ()
6965 : : #line 7059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6966 : :
6967 : : #undef DONE
6968 : : #undef FAIL
6969 : : static const uint8_t expand_encoding[] = {
6970 : : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
6971 : : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
6972 : : 0x3b, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01,
6973 : : 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x00,
6974 : : 0x05, 0x02, 0x11
6975 : : };
6976 : : return complete_seq (expand_encoding, operands);
6977 : : }
6978 : :
6979 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7119 */
6980 : : extern rtx_insn *gen_split_133 (rtx_insn *, rtx *);
6981 : : rtx_insn *
6982 : : gen_split_133 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6983 : : {
6984 : : if (dump_file)
6985 : : fprintf (dump_file, "Splitting with gen_split_133 (i386.md:7119)\n");
6986 : : start_sequence ();
6987 : : #define FAIL return (end_sequence (), nullptr)
6988 : : #define DONE return end_sequence ()
6989 : : #line 7127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6990 : : {
6991 : : if (SImode != SImode)
6992 : : {
6993 : : operands[0] = gen_lowpart (SImode, operands[0]);
6994 : : operands[1] = gen_lowpart (SImode, operands[1]);
6995 : : operands[2] = gen_lowpart (SImode, operands[2]);
6996 : : }
6997 : : }
6998 : : #undef DONE
6999 : : #undef FAIL
7000 : : static const uint8_t expand_encoding[] = {
7001 : : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01, 0x01,
7002 : : 0x01, 0x02
7003 : : };
7004 : : return complete_seq (expand_encoding, operands);
7005 : : }
7006 : :
7007 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7539 */
7008 : : rtx
7009 : : gen_addqi_ext_1 (const rtx operand0, const rtx operand1, const rtx operand2)
7010 : : {
7011 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7012 : : static const uint8_t expand_encoding[] = {
7013 : : 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01,
7014 : : 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10, 0x3b,
7015 : : 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01, 0x01,
7016 : : 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02, 0x00,
7017 : : 0x05, 0x02, 0x11
7018 : : };
7019 : : return expand_rtx (expand_encoding, operands);
7020 : : }
7021 : :
7022 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7611 */
7023 : : extern rtx_insn *gen_split_147 (rtx_insn *, rtx *);
7024 : : rtx_insn *
7025 : : gen_split_147 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7026 : : {
7027 : : if (dump_file)
7028 : : fprintf (dump_file, "Splitting with gen_split_147 (i386.md:7611)\n");
7029 : : start_sequence ();
7030 : : #define FAIL return (end_sequence (), nullptr)
7031 : : #define DONE return end_sequence ()
7032 : : #line 7648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7033 : :
7034 : : #undef DONE
7035 : : #undef FAIL
7036 : : static const uint8_t expand_encoding[] = {
7037 : : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
7038 : : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
7039 : : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7040 : : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
7041 : : 0x08, 0x32, 0x10, 0x3c, 0x0f, 0x32, 0x0f, 0x81,
7042 : : 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7043 : : 0x00, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01, 0x02,
7044 : : 0x27, 0x08, 0x27, 0x08, 0x00, 0x00, 0x05, 0x02,
7045 : : 0x11
7046 : : };
7047 : : return complete_seq (expand_encoding, operands);
7048 : : }
7049 : :
7050 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7734 */
7051 : : extern rtx_insn *gen_split_152 (rtx_insn *, rtx *);
7052 : : rtx_insn *
7053 : : gen_split_152 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7054 : : {
7055 : : if (dump_file)
7056 : : fprintf (dump_file, "Splitting with gen_split_152 (i386.md:7734)\n");
7057 : : start_sequence ();
7058 : : #define FAIL return (end_sequence (), nullptr)
7059 : : #define DONE return end_sequence ()
7060 : : #line 7774 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7061 : : {
7062 : : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
7063 : : }
7064 : : #undef DONE
7065 : : #undef FAIL
7066 : : static const uint8_t expand_encoding[] = {
7067 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7068 : : 0x3a, 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02,
7069 : : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01,
7070 : : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30,
7071 : : 0x09, 0x11, 0x5d, 0x09, 0x3b, 0x12, 0x3b, 0x12,
7072 : : 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x6e,
7073 : : 0x12, 0x01, 0x04, 0x6e, 0x12, 0x01, 0x05, 0x6e,
7074 : : 0x12, 0x3b, 0x11, 0x3b, 0x11, 0x66, 0x11, 0x30,
7075 : : 0x02, 0x11, 0x27, 0x00, 0x01, 0x04, 0x01, 0x05,
7076 : : 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x3b, 0x11, 0x66,
7077 : : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x04,
7078 : : 0x01, 0x05
7079 : : };
7080 : : return complete_seq (expand_encoding, operands);
7081 : : }
7082 : :
7083 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7947 */
7084 : : extern rtx_insn *gen_split_159 (rtx_insn *, rtx *);
7085 : : rtx_insn *
7086 : : gen_split_159 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7087 : : {
7088 : : if (dump_file)
7089 : : fprintf (dump_file, "Splitting with gen_split_159 (i386.md:7947)\n");
7090 : : start_sequence ();
7091 : : #define FAIL return (end_sequence (), nullptr)
7092 : : #define DONE return end_sequence ()
7093 : : #line 7960 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7094 : : {
7095 : : operands[0] = gen_lowpart (SImode, operands[0]);
7096 : : operands[1] = gen_lowpart (SImode, operands[1]);
7097 : : operands[3] = gen_lowpart (SImode, operands[3]);
7098 : : }
7099 : : #undef DONE
7100 : : #undef FAIL
7101 : : static const uint8_t expand_encoding[] = {
7102 : : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3e, 0x11,
7103 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7104 : : };
7105 : : return complete_seq (expand_encoding, operands);
7106 : : }
7107 : :
7108 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8041 */
7109 : : extern rtx_insn *gen_split_169 (rtx_insn *, rtx *);
7110 : : rtx_insn *
7111 : : gen_split_169 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7112 : : {
7113 : : if (dump_file)
7114 : : fprintf (dump_file, "Splitting with gen_split_169 (i386.md:8041)\n");
7115 : : start_sequence ();
7116 : : #define FAIL return (end_sequence (), nullptr)
7117 : : #define DONE return end_sequence ()
7118 : : #line 8057 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7119 : : {
7120 : : operands[0] = gen_lowpart (SImode, operands[0]);
7121 : : operands[1] = gen_lowpart (SImode, operands[1]);
7122 : : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
7123 : : }
7124 : : #undef DONE
7125 : : #undef FAIL
7126 : : static const uint8_t expand_encoding[] = {
7127 : : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3e, 0x11,
7128 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7129 : : };
7130 : : return complete_seq (expand_encoding, operands);
7131 : : }
7132 : :
7133 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8096 */
7134 : : extern rtx_insn *gen_split_175 (rtx_insn *, rtx *);
7135 : : rtx_insn *
7136 : : gen_split_175 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7137 : : {
7138 : : if (dump_file)
7139 : : fprintf (dump_file, "Splitting with gen_split_175 (i386.md:8096)\n");
7140 : : start_sequence ();
7141 : : #define FAIL return (end_sequence (), nullptr)
7142 : : #define DONE return end_sequence ()
7143 : : #line 8116 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7144 : : {
7145 : : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
7146 : : if (operands[2] == const0_rtx)
7147 : : {
7148 : : if (!rtx_equal_p (operands[0], operands[1]))
7149 : : emit_move_insn (operands[0], operands[1]);
7150 : : ix86_expand_binary_operator (MINUS, DImode, &operands[3],
7151 : : TARGET_APX_NDD);
7152 : : DONE;
7153 : : }
7154 : : }
7155 : : #undef DONE
7156 : : #undef FAIL
7157 : : static const uint8_t expand_encoding[] = {
7158 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7159 : : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7160 : : 0x00, 0x3c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x17,
7161 : : 0x00, 0x02, 0x1f, 0x01, 0x03, 0x3c, 0x12, 0x3c,
7162 : : 0x12, 0x01, 0x04, 0x66, 0x12, 0x30, 0x02, 0x11,
7163 : : 0x27, 0x00, 0x01, 0x05, 0x05, 0x02, 0x11
7164 : : };
7165 : : return complete_seq (expand_encoding, operands);
7166 : : }
7167 : :
7168 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8378 */
7169 : : extern rtx_insn *gen_split_189 (rtx_insn *, rtx *);
7170 : : rtx_insn *
7171 : : gen_split_189 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7172 : : {
7173 : : if (dump_file)
7174 : : fprintf (dump_file, "Splitting with gen_split_189 (i386.md:8378)\n");
7175 : : start_sequence ();
7176 : : #define FAIL return (end_sequence (), nullptr)
7177 : : #define DONE return end_sequence ()
7178 : : #line 8410 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7179 : :
7180 : : #undef DONE
7181 : : #undef FAIL
7182 : : static const uint8_t expand_encoding[] = {
7183 : : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
7184 : : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
7185 : : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7186 : : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
7187 : : 0x08, 0x32, 0x10, 0x3c, 0x0f, 0x32, 0x0f, 0x81,
7188 : : 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7189 : : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7190 : : };
7191 : : return complete_seq (expand_encoding, operands);
7192 : : }
7193 : :
7194 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8535 */
7195 : : extern rtx_insn *gen_split_194 (rtx_insn *, rtx *);
7196 : : rtx_insn *
7197 : : gen_split_194 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7198 : : {
7199 : : if (dump_file)
7200 : : fprintf (dump_file, "Splitting with gen_split_194 (i386.md:8535)\n");
7201 : : start_sequence ();
7202 : : #define FAIL return (end_sequence (), nullptr)
7203 : : #define DONE return end_sequence ()
7204 : : #line 8576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7205 : : {
7206 : : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
7207 : : if (operands[2] == const0_rtx)
7208 : : {
7209 : : if (!rtx_equal_p (operands[0], operands[1]))
7210 : : emit_move_insn (operands[0], operands[1]);
7211 : : emit_insn (gen_subvsi4_1 (operands[3], operands[4], operands[5],
7212 : : operands[5]));
7213 : : DONE;
7214 : : }
7215 : : }
7216 : : #undef DONE
7217 : : #undef FAIL
7218 : : static const uint8_t expand_encoding[] = {
7219 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7220 : : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7221 : : 0x00, 0x3c, 0x11, 0x01, 0x01, 0x01, 0x02, 0x17,
7222 : : 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11, 0x5d, 0x09,
7223 : : 0x3c, 0x12, 0x3c, 0x12, 0x6e, 0x12, 0x01, 0x04,
7224 : : 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01,
7225 : : 0x05, 0x6e, 0x12, 0x3c, 0x11, 0x3c, 0x11, 0x01,
7226 : : 0x04, 0x66, 0x11, 0x30, 0x02, 0x11, 0x27, 0x00,
7227 : : 0x01, 0x05, 0x1f, 0x01, 0x03, 0x3c, 0x11, 0x3c,
7228 : : 0x11, 0x01, 0x04, 0x66, 0x11, 0x30, 0x02, 0x11,
7229 : : 0x27, 0x00, 0x01, 0x05
7230 : : };
7231 : : return complete_seq (expand_encoding, operands);
7232 : : }
7233 : :
7234 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8711 */
7235 : : extern rtx_insn *gen_peephole2_75 (rtx_insn *, rtx *);
7236 : : rtx_insn *
7237 : : gen_peephole2_75 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7238 : : {
7239 : : if (dump_file)
7240 : : fprintf (dump_file, "Splitting with gen_peephole2_75 (i386.md:8711)\n");
7241 : : start_sequence ();
7242 : : static const uint8_t expand_encoding[] = {
7243 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7244 : : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7245 : : 0x01, 0x01, 0x00, 0x1f, 0x01, 0x01, 0x3c, 0x10,
7246 : : 0x01, 0x01, 0x01, 0x00
7247 : : };
7248 : : return complete_seq (expand_encoding, operands);
7249 : : }
7250 : :
7251 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8760 */
7252 : : extern rtx_insn *gen_peephole2_85 (rtx_insn *, rtx *);
7253 : : rtx_insn *
7254 : : gen_peephole2_85 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7255 : : {
7256 : : if (dump_file)
7257 : : fprintf (dump_file, "Splitting with gen_peephole2_85 (i386.md:8760)\n");
7258 : : start_sequence ();
7259 : : #define FAIL return (end_sequence (), nullptr)
7260 : : #define DONE return end_sequence ()
7261 : : #line 8782 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7262 : : {
7263 : : rtx cc = gen_rtx_REG (CCmode, FLAGS_REG);
7264 : : operands[3] = gen_rtx_fmt_ee (GET_CODE (operands[1]) == NE
7265 : : ? GEU : LTU, VOIDmode, cc, const0_rtx);
7266 : : }
7267 : : #undef DONE
7268 : : #undef FAIL
7269 : : static const uint8_t expand_encoding[] = {
7270 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7271 : : 0x3a, 0x02, 0x01, 0x00, 0x27, 0x01, 0x1f, 0x01,
7272 : : 0x00, 0x3c, 0x12, 0x01, 0x00, 0x27, 0x01, 0x1f,
7273 : : 0x2f, 0x39, 0x00, 0x01, 0x03, 0x01, 0x02, 0x2f
7274 : : };
7275 : : return complete_seq (expand_encoding, operands);
7276 : : }
7277 : :
7278 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9184 */
7279 : : extern rtx_insn *gen_peephole2_94 (rtx_insn *, rtx *);
7280 : : rtx_insn *
7281 : : gen_peephole2_94 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7282 : : {
7283 : : if (dump_file)
7284 : : fprintf (dump_file, "Splitting with gen_peephole2_94 (i386.md:9184)\n");
7285 : : start_sequence ();
7286 : : static const uint8_t expand_encoding[] = {
7287 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7288 : : 0x3a, 0x08, 0x6f, 0x12, 0x3b, 0x11, 0x3b, 0x11,
7289 : : 0x02, 0x04, 0x01, 0x02, 0x27, 0x00, 0x01, 0x01,
7290 : : 0x01, 0x00, 0x3b, 0x12, 0x02, 0x03, 0x01, 0x02,
7291 : : 0x27, 0x00, 0x6f, 0x12, 0x01, 0x00, 0x1f, 0x01,
7292 : : 0x01, 0x3b, 0x11, 0x3b, 0x11, 0x02, 0x04, 0x01,
7293 : : 0x02, 0x27, 0x00, 0x01, 0x01, 0x01, 0x00
7294 : : };
7295 : : return complete_seq (expand_encoding, operands);
7296 : : }
7297 : :
7298 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9439 */
7299 : : rtx
7300 : : gen_addcarrysi_0 (const rtx operand0, const rtx operand1, const rtx operand2)
7301 : : {
7302 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7303 : : static const uint8_t expand_encoding[] = {
7304 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
7305 : : 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02, 0x01,
7306 : : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01, 0x01,
7307 : : 0x01, 0x02
7308 : : };
7309 : : return expand_rtx (expand_encoding, operands);
7310 : : }
7311 : :
7312 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9542 */
7313 : : extern rtx_insn *gen_peephole2_110 (rtx_insn *, rtx *);
7314 : : rtx_insn *
7315 : : gen_peephole2_110 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7316 : : {
7317 : : if (dump_file)
7318 : : fprintf (dump_file, "Splitting with gen_peephole2_110 (i386.md:9542)\n");
7319 : : start_sequence ();
7320 : : static const uint8_t expand_encoding[] = {
7321 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7322 : : 0x02, 0x1f, 0x01, 0x01, 0x3c, 0x11, 0x3c, 0x11,
7323 : : 0x01, 0x01, 0x02, 0x04, 0x01, 0x03, 0x27, 0x00,
7324 : : 0x01, 0x00, 0x05, 0x02, 0x11
7325 : : };
7326 : : return complete_seq (expand_encoding, operands);
7327 : : }
7328 : :
7329 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10093 */
7330 : : rtx
7331 : : gen_subborrowsi_0 (const rtx operand0, const rtx operand1, const rtx operand2)
7332 : : {
7333 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7334 : : static const uint8_t expand_encoding[] = {
7335 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a,
7336 : : 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00,
7337 : : 0x3c, 0x11, 0x01, 0x01, 0x01, 0x02
7338 : : };
7339 : : return expand_rtx (expand_encoding, operands);
7340 : : }
7341 : :
7342 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10212 */
7343 : : extern rtx_insn *gen_split_199 (rtx_insn *, rtx *);
7344 : : rtx_insn *
7345 : : gen_split_199 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7346 : : {
7347 : : if (dump_file)
7348 : : fprintf (dump_file, "Splitting with gen_split_199 (i386.md:10212)\n");
7349 : : start_sequence ();
7350 : : #define FAIL return (end_sequence (), nullptr)
7351 : : #define DONE return end_sequence ()
7352 : : #line 10220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7353 : : emit_note (NOTE_INSN_DELETED); DONE;
7354 : : #undef DONE
7355 : : #undef FAIL
7356 : : static const uint8_t expand_encoding[] = {
7357 : : 0x01, 0x27, 0x00
7358 : : };
7359 : : return complete_seq (expand_encoding, operands);
7360 : : }
7361 : :
7362 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10243 */
7363 : : extern rtx_insn *gen_split_205 (rtx_insn *, rtx *);
7364 : : rtx_insn *
7365 : : gen_split_205 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7366 : : {
7367 : : if (dump_file)
7368 : : fprintf (dump_file, "Splitting with gen_split_205 (i386.md:10243)\n");
7369 : : start_sequence ();
7370 : : #define FAIL return (end_sequence (), nullptr)
7371 : : #define DONE return end_sequence ()
7372 : : #line 10251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7373 : : emit_note (NOTE_INSN_DELETED); DONE;
7374 : : #undef DONE
7375 : : #undef FAIL
7376 : : static const uint8_t expand_encoding[] = {
7377 : : 0x01, 0x27, 0x00
7378 : : };
7379 : : return complete_seq (expand_encoding, operands);
7380 : : }
7381 : :
7382 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10415 */
7383 : : extern rtx_insn *gen_split_207 (rtx_insn *, rtx *);
7384 : : rtx_insn *
7385 : : gen_split_207 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7386 : : {
7387 : : if (dump_file)
7388 : : fprintf (dump_file, "Splitting with gen_split_207 (i386.md:10415)\n");
7389 : : start_sequence ();
7390 : : #define FAIL return (end_sequence (), nullptr)
7391 : : #define DONE return end_sequence ()
7392 : : #line 10449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7393 : : {
7394 : : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
7395 : : if (operands[2] == const0_rtx)
7396 : : {
7397 : : if (!rtx_equal_p (operands[0], operands[1]))
7398 : : emit_move_insn (operands[0], operands[1]);
7399 : : emit_insn (gen_addcarrydi_0 (operands[3], operands[4], operands[5]));
7400 : : DONE;
7401 : : }
7402 : : if (CONST_INT_P (operands[5]))
7403 : : operands[6] = simplify_unary_operation (ZERO_EXTEND, TImode,
7404 : : operands[5], DImode);
7405 : : else
7406 : : operands[6] = gen_rtx_ZERO_EXTEND (TImode, operands[5]);
7407 : : }
7408 : : #undef DONE
7409 : : #undef FAIL
7410 : : static const uint8_t expand_encoding[] = {
7411 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7412 : : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
7413 : : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01,
7414 : : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30,
7415 : : 0x08, 0x11, 0x3a, 0x08, 0x6f, 0x13, 0x3b, 0x12,
7416 : : 0x3b, 0x12, 0x66, 0x12, 0x30, 0x02, 0x11, 0x27,
7417 : : 0x00, 0x01, 0x04, 0x01, 0x05, 0x3b, 0x13, 0x66,
7418 : : 0x13, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x06,
7419 : : 0x1f, 0x01, 0x03, 0x3b, 0x12, 0x3b, 0x12, 0x66,
7420 : : 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x04,
7421 : : 0x01, 0x05
7422 : : };
7423 : : return complete_seq (expand_encoding, operands);
7424 : : }
7425 : :
7426 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10564 */
7427 : : extern rtx_insn *gen_split_225 (rtx_insn *, rtx *);
7428 : : rtx_insn *
7429 : : gen_split_225 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7430 : : {
7431 : : if (dump_file)
7432 : : fprintf (dump_file, "Splitting with gen_split_225 (i386.md:10564)\n");
7433 : : start_sequence ();
7434 : : static const uint8_t expand_encoding[] = {
7435 : : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7436 : : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7437 : : 0x00, 0x3c, 0x10, 0x3c, 0x10, 0x01, 0x01, 0x66,
7438 : : 0x10, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7439 : : 0x05, 0x02, 0x11
7440 : : };
7441 : : return complete_seq (expand_encoding, operands);
7442 : : }
7443 : :
7444 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10586 */
7445 : : extern rtx_insn *gen_split_231 (rtx_insn *, rtx *);
7446 : : rtx_insn *
7447 : : gen_split_231 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7448 : : {
7449 : : if (dump_file)
7450 : : fprintf (dump_file, "Splitting with gen_split_231 (i386.md:10586)\n");
7451 : : start_sequence ();
7452 : : #define FAIL return (end_sequence (), nullptr)
7453 : : #define DONE return end_sequence ()
7454 : : #line 10610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7455 : : {
7456 : : operands[2] = gen_int_mode (INTVAL (operands[2]) - 1,
7457 : : DImode == DImode ? SImode : DImode);
7458 : : }
7459 : : #undef DONE
7460 : : #undef FAIL
7461 : : static const uint8_t expand_encoding[] = {
7462 : : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7463 : : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7464 : : 0x00, 0x3b, 0x12, 0x3b, 0x12, 0x66, 0x12, 0x30,
7465 : : 0x02, 0x11, 0x27, 0x00, 0x01, 0x01, 0x01, 0x02,
7466 : : 0x05, 0x02, 0x11
7467 : : };
7468 : : return complete_seq (expand_encoding, operands);
7469 : : }
7470 : :
7471 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10665 */
7472 : : extern rtx_insn *gen_split_241 (rtx_insn *, rtx *);
7473 : : rtx_insn *
7474 : : gen_split_241 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7475 : : {
7476 : : if (dump_file)
7477 : : fprintf (dump_file, "Splitting with gen_split_241 (i386.md:10665)\n");
7478 : : start_sequence ();
7479 : : #define FAIL return (end_sequence (), nullptr)
7480 : : #define DONE return end_sequence ()
7481 : : #line 10683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7482 : : {
7483 : : if (!nonimmediate_operand (operands[1], HImode))
7484 : : operands[1] = force_reg (HImode, operands[1]);
7485 : : }
7486 : : #undef DONE
7487 : : #undef FAIL
7488 : : static const uint8_t expand_encoding[] = {
7489 : : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7490 : : 0x02, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7491 : : 0x00, 0x3b, 0x10, 0x3b, 0x10, 0x66, 0x10, 0x30,
7492 : : 0x02, 0x11, 0x27, 0x00, 0x01, 0x01, 0x27, 0x81,
7493 : : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7494 : : 0x7f, 0x05, 0x02, 0x11
7495 : : };
7496 : : return complete_seq (expand_encoding, operands);
7497 : : }
7498 : :
7499 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10730 */
7500 : : rtx
7501 : : gen_ussubdi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7502 : : {
7503 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7504 : : start_sequence ();
7505 : : {
7506 : : #define FAIL return (end_sequence (), nullptr)
7507 : : #define DONE return end_sequence ()
7508 : : #line 10735 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7509 : : {
7510 : : rtx res = gen_reg_rtx (DImode);
7511 : : rtx dst;
7512 : :
7513 : : emit_insn (gen_subdi_3 (res, operands[1], operands[2]));
7514 : :
7515 : : if (TARGET_CMOVE)
7516 : : {
7517 : : rtx cmp = gen_rtx_GEU (VOIDmode, gen_rtx_REG (CCCmode, FLAGS_REG),
7518 : : const0_rtx);
7519 : :
7520 : : if (8 < GET_MODE_SIZE (SImode))
7521 : : {
7522 : : dst = force_reg (DImode, operands[0]);
7523 : : emit_insn (gen_movsicc (gen_lowpart (SImode, dst), cmp,
7524 : : gen_lowpart (SImode, res), const0_rtx));
7525 : : }
7526 : : else
7527 : : {
7528 : : dst = operands[0];
7529 : : emit_insn (gen_movdicc (dst, cmp, res, const0_rtx));
7530 : : }
7531 : : }
7532 : : else
7533 : : {
7534 : : rtx msk = gen_reg_rtx (DImode);
7535 : :
7536 : : emit_insn (gen_x86_movdicc_0_m1_neg (msk));
7537 : : msk = expand_simple_unop (DImode, NOT, msk, NULL, 1);
7538 : : dst = expand_simple_binop (DImode, AND, res, msk,
7539 : : operands[0], 1, OPTAB_WIDEN);
7540 : : }
7541 : :
7542 : : if (!rtx_equal_p (dst, operands[0]))
7543 : : emit_move_insn (operands[0], dst);
7544 : : DONE;
7545 : : }
7546 : : #undef DONE
7547 : : #undef FAIL
7548 : : }
7549 : : static const uint8_t expand_encoding[] = {
7550 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x16, 0x12, 0x01,
7551 : : 0x01, 0x01, 0x02
7552 : : };
7553 : : return complete_seq (expand_encoding, operands);
7554 : : }
7555 : :
7556 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10897 */
7557 : : rtx
7558 : : gen_subdf3 (const rtx operand0, const rtx operand1, const rtx operand2)
7559 : : {
7560 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7561 : : static const uint8_t expand_encoding[] = {
7562 : : 0x1f, 0x01, 0x00, 0x3c, 0x2e, 0x01, 0x01, 0x01,
7563 : : 0x02
7564 : : };
7565 : : return expand_rtx (expand_encoding, operands);
7566 : : }
7567 : :
7568 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11050 */
7569 : : rtx
7570 : : gen_mulvsi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7571 : : {
7572 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7573 : : start_sequence ();
7574 : : {
7575 : : #define FAIL return (end_sequence (), nullptr)
7576 : : #define DONE return end_sequence ()
7577 : : #line 11067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7578 : : {
7579 : : if (CONST_INT_P (operands[2]))
7580 : : operands[4] = operands[2];
7581 : : else
7582 : : operands[4] = gen_rtx_SIGN_EXTEND (DImode, operands[2]);
7583 : : }
7584 : : #undef DONE
7585 : : #undef FAIL
7586 : : }
7587 : : static const uint8_t expand_encoding[] = {
7588 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7589 : : 0x5d, 0x09, 0x3e, 0x12, 0x6e, 0x12, 0x01, 0x01,
7590 : : 0x01, 0x04, 0x6e, 0x12, 0x3e, 0x11, 0x01, 0x01,
7591 : : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x11, 0x01,
7592 : : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x5d,
7593 : : 0x00, 0x30, 0x09, 0x11, 0x27, 0x00, 0x37, 0x00,
7594 : : 0x01, 0x03, 0x2f
7595 : : };
7596 : : return complete_seq (expand_encoding, operands);
7597 : : }
7598 : :
7599 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11281 */
7600 : : rtx
7601 : : gen_umulqihi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7602 : : {
7603 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7604 : : static const uint8_t expand_encoding[] = {
7605 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x10,
7606 : : 0x6f, 0x10, 0x01, 0x01, 0x6f, 0x10, 0x01, 0x02,
7607 : : 0x05, 0x02, 0x11
7608 : : };
7609 : : return expand_rtx (expand_encoding, operands);
7610 : : }
7611 : :
7612 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11580 */
7613 : : extern rtx_insn *gen_peephole2_135 (rtx_insn *, rtx *);
7614 : : rtx_insn *
7615 : : gen_peephole2_135 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7616 : : {
7617 : : if (dump_file)
7618 : : fprintf (dump_file, "Splitting with gen_peephole2_135 (i386.md:11580)\n");
7619 : : start_sequence ();
7620 : : static const uint8_t expand_encoding[] = {
7621 : : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
7622 : : 0x03, 0x1f, 0x01, 0x04, 0x42, 0x11, 0x01, 0x02,
7623 : : 0x01, 0x03, 0x21, 0x00, 0x01, 0x02, 0x05, 0x02,
7624 : : 0x11
7625 : : };
7626 : : return complete_seq (expand_encoding, operands);
7627 : : }
7628 : :
7629 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11658 */
7630 : : rtx
7631 : : gen_divhf3 (const rtx operand0, const rtx operand1, const rtx operand2)
7632 : : {
7633 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7634 : : start_sequence ();
7635 : : {
7636 : : #define FAIL return (end_sequence (), nullptr)
7637 : : #define DONE return end_sequence ()
7638 : : #line 11663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7639 : : {
7640 : : if (TARGET_RECIP_DIV
7641 : : && optimize_insn_for_speed_p ()
7642 : : && flag_finite_math_only && !flag_trapping_math
7643 : : && flag_unsafe_math_optimizations)
7644 : : {
7645 : : rtx op = gen_reg_rtx (HFmode);
7646 : : operands[2] = force_reg (HFmode, operands[2]);
7647 : : emit_insn (gen_rcphf2 (op, operands[2]));
7648 : : emit_insn (gen_mulhf3 (operands[0], operands[1], op));
7649 : : DONE;
7650 : : }
7651 : : }
7652 : : #undef DONE
7653 : : #undef FAIL
7654 : : }
7655 : : static const uint8_t expand_encoding[] = {
7656 : : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x2b, 0x01, 0x01,
7657 : : 0x01, 0x02
7658 : : };
7659 : : return complete_seq (expand_encoding, operands);
7660 : : }
7661 : :
7662 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11746 */
7663 : : extern rtx_insn *gen_split_252 (rtx_insn *, rtx *);
7664 : : rtx_insn *
7665 : : gen_split_252 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7666 : : {
7667 : : if (dump_file)
7668 : : fprintf (dump_file, "Splitting with gen_split_252 (i386.md:11746)\n");
7669 : : start_sequence ();
7670 : : #define FAIL return (end_sequence (), nullptr)
7671 : : #define DONE return end_sequence ()
7672 : : #line 11760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7673 : : ix86_split_idivmod (SImode, operands, false); DONE;
7674 : : #undef DONE
7675 : : #undef FAIL
7676 : : static const uint8_t expand_encoding[] = {
7677 : : 0x01, 0x27, 0x00
7678 : : };
7679 : : return complete_seq (expand_encoding, operands);
7680 : : }
7681 : :
7682 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11938 */
7683 : : extern rtx_insn *gen_split_262 (rtx_insn *, rtx *);
7684 : : rtx_insn *
7685 : : gen_split_262 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7686 : : {
7687 : : if (dump_file)
7688 : : fprintf (dump_file, "Splitting with gen_split_262 (i386.md:11938)\n");
7689 : : start_sequence ();
7690 : : #define FAIL return (end_sequence (), nullptr)
7691 : : #define DONE return end_sequence ()
7692 : : #line 11957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7693 : : {
7694 : : operands[5] = GEN_INT (GET_MODE_BITSIZE (HImode)-1);
7695 : :
7696 : : if (HImode != HImode
7697 : : && (optimize_function_for_size_p (cfun) || TARGET_USE_CLTD))
7698 : : operands[4] = operands[2];
7699 : : else
7700 : : {
7701 : : /* Avoid use of cltd in favor of a mov+shift. */
7702 : : emit_move_insn (operands[1], operands[2]);
7703 : : operands[4] = operands[1];
7704 : : }
7705 : : }
7706 : : #undef DONE
7707 : : #undef FAIL
7708 : : static const uint8_t expand_encoding[] = {
7709 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x4f,
7710 : : 0x10, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11,
7711 : : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x43, 0x10,
7712 : : 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x46,
7713 : : 0x10, 0x01, 0x02, 0x01, 0x03, 0x20, 0x00, 0x01,
7714 : : 0x01, 0x05, 0x02, 0x11
7715 : : };
7716 : : return complete_seq (expand_encoding, operands);
7717 : : }
7718 : :
7719 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12076 */
7720 : : extern rtx_insn *gen_split_272 (rtx_insn *, rtx *);
7721 : : rtx_insn *
7722 : : gen_split_272 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7723 : : {
7724 : : if (dump_file)
7725 : : fprintf (dump_file, "Splitting with gen_split_272 (i386.md:12076)\n");
7726 : : start_sequence ();
7727 : : #define FAIL return (end_sequence (), nullptr)
7728 : : #define DONE return end_sequence ()
7729 : : #line 12094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7730 : : {
7731 : : int v = exact_log2 (UINTVAL (operands[3]));
7732 : : operands[4] = GEN_INT (v);
7733 : : operands[5] = GEN_INT ((HOST_WIDE_INT_1U << v) - 1);
7734 : : }
7735 : : #undef DONE
7736 : : #undef FAIL
7737 : : static const uint8_t expand_encoding[] = {
7738 : : 0x03, 0x1f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
7739 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x50, 0x11,
7740 : : 0x01, 0x02, 0x01, 0x04, 0x05, 0x02, 0x11, 0x17,
7741 : : 0x00, 0x02, 0x1f, 0x01, 0x01, 0x49, 0x11, 0x01,
7742 : : 0x01, 0x01, 0x05, 0x05, 0x02, 0x11
7743 : : };
7744 : : return complete_seq (expand_encoding, operands);
7745 : : }
7746 : :
7747 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12479 */
7748 : : rtx
7749 : : gen_testqi_ext_1_ccno (const rtx operand0, const rtx operand1)
7750 : : {
7751 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
7752 : : static const uint8_t expand_encoding[] = {
7753 : : 0x1f, 0x30, 0x05, 0x11, 0x3a, 0x05, 0x49, 0x0f,
7754 : : 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
7755 : : 0x08, 0x27, 0x08, 0x00, 0x01, 0x01, 0x27, 0x00
7756 : : };
7757 : : return expand_rtx (expand_encoding, operands);
7758 : : }
7759 : :
7760 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12653 */
7761 : : extern rtx_insn *gen_split_284 (rtx_insn *, rtx *);
7762 : : rtx_insn *
7763 : : gen_split_284 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7764 : : {
7765 : : if (dump_file)
7766 : : fprintf (dump_file, "Splitting with gen_split_284 (i386.md:12653)\n");
7767 : : start_sequence ();
7768 : : #define FAIL return (end_sequence (), nullptr)
7769 : : #define DONE return end_sequence ()
7770 : : #line 12668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7771 : : operands[2] = gen_reg_rtx (DImode);
7772 : : #undef DONE
7773 : : #undef FAIL
7774 : : static const uint8_t expand_encoding[] = {
7775 : : 0x02, 0x1f, 0x01, 0x02, 0x4c, 0x12, 0x01, 0x00,
7776 : : 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x49, 0x12,
7777 : : 0x01, 0x02, 0x01, 0x01, 0x27, 0x00
7778 : : };
7779 : : return complete_seq (expand_encoding, operands);
7780 : : }
7781 : :
7782 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12748 */
7783 : : extern rtx_insn *gen_peephole2_142 (rtx_insn *, rtx *);
7784 : : rtx_insn *
7785 : : gen_peephole2_142 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7786 : : {
7787 : : if (dump_file)
7788 : : fprintf (dump_file, "Splitting with gen_peephole2_142 (i386.md:12748)\n");
7789 : : start_sequence ();
7790 : : #define FAIL return (end_sequence (), nullptr)
7791 : : #define DONE return end_sequence ()
7792 : : #line 12759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7793 : : {
7794 : : unsigned HOST_WIDE_INT ival = UINTVAL (operands[1]);
7795 : : int first_nonzero_byte, bitsize;
7796 : : rtx new_addr, new_const;
7797 : : machine_mode new_mode;
7798 : :
7799 : : if (ival == 0)
7800 : : FAIL;
7801 : :
7802 : : /* Clear bits outside mode width. */
7803 : : ival &= GET_MODE_MASK (DImode);
7804 : :
7805 : : first_nonzero_byte = ctz_hwi (ival) / BITS_PER_UNIT;
7806 : :
7807 : : ival >>= first_nonzero_byte * BITS_PER_UNIT;
7808 : :
7809 : : bitsize = sizeof (ival) * BITS_PER_UNIT - clz_hwi (ival);
7810 : :
7811 : : if (bitsize <= GET_MODE_BITSIZE (QImode))
7812 : : new_mode = QImode;
7813 : : else if (bitsize <= GET_MODE_BITSIZE (HImode))
7814 : : new_mode = HImode;
7815 : : else if (bitsize <= GET_MODE_BITSIZE (SImode))
7816 : : new_mode = SImode;
7817 : : else
7818 : : new_mode = DImode;
7819 : :
7820 : : if (GET_MODE_SIZE (new_mode) >= GET_MODE_SIZE (DImode))
7821 : : FAIL;
7822 : :
7823 : : new_addr = adjust_address (operands[0], new_mode, first_nonzero_byte);
7824 : : new_const = gen_int_mode (ival, new_mode);
7825 : :
7826 : : operands[2] = gen_rtx_AND (new_mode, new_addr, new_const);
7827 : : }
7828 : : #undef DONE
7829 : : #undef FAIL
7830 : : static const uint8_t expand_encoding[] = {
7831 : : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x01,
7832 : : 0x02, 0x27, 0x00
7833 : : };
7834 : : return complete_seq (expand_encoding, operands);
7835 : : }
7836 : :
7837 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13078 */
7838 : : extern rtx_insn *gen_split_293 (rtx_insn *, rtx *);
7839 : : rtx_insn *
7840 : : gen_split_293 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7841 : : {
7842 : : if (dump_file)
7843 : : fprintf (dump_file, "Splitting with gen_split_293 (i386.md:13078)\n");
7844 : : start_sequence ();
7845 : : #define FAIL return (end_sequence (), nullptr)
7846 : : #define DONE return end_sequence ()
7847 : : #line 13095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7848 : :
7849 : : #undef DONE
7850 : : #undef FAIL
7851 : : static const uint8_t expand_encoding[] = {
7852 : : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7853 : : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7854 : : 0x49, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
7855 : : 0x11
7856 : : };
7857 : : return complete_seq (expand_encoding, operands);
7858 : : }
7859 : :
7860 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13100 */
7861 : : extern rtx_insn *gen_split_299 (rtx_insn *, rtx *);
7862 : : rtx_insn *
7863 : : gen_split_299 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7864 : : {
7865 : : if (dump_file)
7866 : : fprintf (dump_file, "Splitting with gen_split_299 (i386.md:13100)\n");
7867 : : start_sequence ();
7868 : : #define FAIL return (end_sequence (), nullptr)
7869 : : #define DONE return end_sequence ()
7870 : : #line 13123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7871 : :
7872 : : #undef DONE
7873 : : #undef FAIL
7874 : : static const uint8_t expand_encoding[] = {
7875 : : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7876 : : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7877 : : 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
7878 : : 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x00,
7879 : : 0x05, 0x02, 0x11
7880 : : };
7881 : : return complete_seq (expand_encoding, operands);
7882 : : }
7883 : :
7884 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13127 */
7885 : : extern rtx_insn *gen_split_309 (rtx_insn *, rtx *);
7886 : : rtx_insn *
7887 : : gen_split_309 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7888 : : {
7889 : : if (dump_file)
7890 : : fprintf (dump_file, "Splitting with gen_split_309 (i386.md:13127)\n");
7891 : : start_sequence ();
7892 : : #define FAIL return (end_sequence (), nullptr)
7893 : : #define DONE return end_sequence ()
7894 : : #line 13152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7895 : :
7896 : : #undef DONE
7897 : : #undef FAIL
7898 : : static const uint8_t expand_encoding[] = {
7899 : : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
7900 : : 0x81, 0x06, 0x10, 0x01, 0x02, 0x27, 0x08, 0x27,
7901 : : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
7902 : : 0x01, 0x00, 0x4a, 0x0f, 0x32, 0x0f, 0x81, 0x06,
7903 : : 0x10, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
7904 : : 0x01, 0x00, 0x05, 0x02, 0x11
7905 : : };
7906 : : return complete_seq (expand_encoding, operands);
7907 : : }
7908 : :
7909 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13156 */
7910 : : extern rtx_insn *gen_split_319 (rtx_insn *, rtx *);
7911 : : rtx_insn *
7912 : : gen_split_319 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7913 : : {
7914 : : if (dump_file)
7915 : : fprintf (dump_file, "Splitting with gen_split_319 (i386.md:13156)\n");
7916 : : start_sequence ();
7917 : : #define FAIL return (end_sequence (), nullptr)
7918 : : #define DONE return end_sequence ()
7919 : : #line 13168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7920 : : {
7921 : : unsigned HOST_WIDE_INT ival = UINTVAL (operands[2]);
7922 : : machine_mode mode;
7923 : :
7924 : : if (ival == GET_MODE_MASK (SImode))
7925 : : mode = SImode;
7926 : : else if (ival == GET_MODE_MASK (HImode))
7927 : : mode = HImode;
7928 : : else if (ival == GET_MODE_MASK (QImode))
7929 : : mode = QImode;
7930 : : else
7931 : : gcc_unreachable ();
7932 : :
7933 : : /* Zero extend to SImode to avoid partial register stalls. */
7934 : : if (8 < GET_MODE_SIZE (SImode))
7935 : : operands[0] = gen_lowpart (SImode, operands[0]);
7936 : :
7937 : : emit_insn (gen_extend_insn
7938 : : (operands[0], gen_lowpart (mode, operands[1]),
7939 : : GET_MODE (operands[0]), mode, 1));
7940 : : DONE;
7941 : : }
7942 : : #undef DONE
7943 : : #undef FAIL
7944 : : static const uint8_t expand_encoding[] = {
7945 : : 0x01, 0x27, 0x00
7946 : : };
7947 : : return complete_seq (expand_encoding, operands);
7948 : : }
7949 : :
7950 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13362 */
7951 : : extern rtx_insn *gen_split_334 (rtx_insn *, rtx *);
7952 : : rtx_insn *
7953 : : gen_split_334 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7954 : : {
7955 : : if (dump_file)
7956 : : fprintf (dump_file, "Splitting with gen_split_334 (i386.md:13362)\n");
7957 : : start_sequence ();
7958 : : #define FAIL return (end_sequence (), nullptr)
7959 : : #define DONE return end_sequence ()
7960 : : #line 13387 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7961 : :
7962 : : #undef DONE
7963 : : #undef FAIL
7964 : : static const uint8_t expand_encoding[] = {
7965 : : 0x02, 0x1f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
7966 : : 0x12, 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00,
7967 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x0f,
7968 : : 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27,
7969 : : 0x08, 0x27, 0x08, 0x00, 0x01, 0x00, 0x05, 0x02,
7970 : : 0x11
7971 : : };
7972 : : return complete_seq (expand_encoding, operands);
7973 : : }
7974 : :
7975 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13406 */
7976 : : extern rtx_insn *gen_split_343 (rtx_insn *, rtx *);
7977 : : rtx_insn *
7978 : : gen_split_343 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7979 : : {
7980 : : if (dump_file)
7981 : : fprintf (dump_file, "Splitting with gen_split_343 (i386.md:13406)\n");
7982 : : start_sequence ();
7983 : : #define FAIL return (end_sequence (), nullptr)
7984 : : #define DONE return end_sequence ()
7985 : : #line 13438 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7986 : :
7987 : : #undef DONE
7988 : : #undef FAIL
7989 : : static const uint8_t expand_encoding[] = {
7990 : : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
7991 : : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
7992 : : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7993 : : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
7994 : : 0x08, 0x32, 0x12, 0x49, 0x0f, 0x32, 0x0f, 0x81,
7995 : : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7996 : : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7997 : : };
7998 : : return complete_seq (expand_encoding, operands);
7999 : : }
8000 : :
8001 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13444 */
8002 : : extern rtx_insn *gen_split_353 (rtx_insn *, rtx *);
8003 : : rtx_insn *
8004 : : gen_split_353 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8005 : : {
8006 : : if (dump_file)
8007 : : fprintf (dump_file, "Splitting with gen_split_353 (i386.md:13444)\n");
8008 : : start_sequence ();
8009 : : #define FAIL return (end_sequence (), nullptr)
8010 : : #define DONE return end_sequence ()
8011 : : #line 13490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8012 : :
8013 : : #undef DONE
8014 : : #undef FAIL
8015 : : static const uint8_t expand_encoding[] = {
8016 : : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8017 : : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8018 : : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8019 : : 0x01, 0x04, 0x02, 0x05, 0x4a, 0x0f, 0x32, 0x0f,
8020 : : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8021 : : 0x08, 0x00, 0x01, 0x02, 0x27, 0x00, 0x1f, 0x81,
8022 : : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8023 : : 0x32, 0x12, 0x4a, 0x0f, 0x32, 0x0f, 0x81, 0x06,
8024 : : 0x12, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
8025 : : 0x01, 0x02, 0x00
8026 : : };
8027 : : return complete_seq (expand_encoding, operands);
8028 : : }
8029 : :
8030 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13496 */
8031 : : extern rtx_insn *gen_split_363 (rtx_insn *, rtx *);
8032 : : rtx_insn *
8033 : : gen_split_363 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8034 : : {
8035 : : if (dump_file)
8036 : : fprintf (dump_file, "Splitting with gen_split_363 (i386.md:13496)\n");
8037 : : start_sequence ();
8038 : : #define FAIL return (end_sequence (), nullptr)
8039 : : #define DONE return end_sequence ()
8040 : : #line 13533 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8041 : :
8042 : : #undef DONE
8043 : : #undef FAIL
8044 : : static const uint8_t expand_encoding[] = {
8045 : : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8046 : : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8047 : : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8048 : : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8049 : : 0x08, 0x32, 0x12, 0x4b, 0x0f, 0x32, 0x0f, 0x81,
8050 : : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8051 : : 0x00, 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x02,
8052 : : 0x27, 0x08, 0x27, 0x08, 0x00, 0x00, 0x05, 0x02,
8053 : : 0x11
8054 : : };
8055 : : return complete_seq (expand_encoding, operands);
8056 : : }
8057 : :
8058 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13576 */
8059 : : extern rtx_insn *gen_split_373 (rtx_insn *, rtx *);
8060 : : rtx_insn *
8061 : : gen_split_373 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8062 : : {
8063 : : if (dump_file)
8064 : : fprintf (dump_file, "Splitting with gen_split_373 (i386.md:13576)\n");
8065 : : start_sequence ();
8066 : : #define FAIL return (end_sequence (), nullptr)
8067 : : #define DONE return end_sequence ()
8068 : : #line 13597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8069 : : {
8070 : : operands[0] = gen_lowpart (HImode, operands[0]);
8071 : : operands[1] = gen_lowpart (HImode, operands[1]);
8072 : : operands[2] = gen_int_mode (INTVAL (operands[2]) >> 8, QImode);
8073 : : }
8074 : : #undef DONE
8075 : : #undef FAIL
8076 : : static const uint8_t expand_encoding[] = {
8077 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
8078 : : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
8079 : : 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
8080 : : 0x01, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02,
8081 : : 0x00, 0x05, 0x02, 0x11
8082 : : };
8083 : : return complete_seq (expand_encoding, operands);
8084 : : }
8085 : :
8086 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13713 */
8087 : : extern rtx_insn *gen_split_383 (rtx_insn *, rtx *);
8088 : : rtx_insn *
8089 : : gen_split_383 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8090 : : {
8091 : : if (dump_file)
8092 : : fprintf (dump_file, "Splitting with gen_split_383 (i386.md:13713)\n");
8093 : : start_sequence ();
8094 : : static const uint8_t expand_encoding[] = {
8095 : : 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x11, 0x01, 0x01,
8096 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x11,
8097 : : 0x01, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
8098 : : };
8099 : : return complete_seq (expand_encoding, operands);
8100 : : }
8101 : :
8102 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13766 */
8103 : : extern rtx_insn *gen_split_387 (rtx_insn *, rtx *);
8104 : : rtx_insn *
8105 : : gen_split_387 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8106 : : {
8107 : : if (dump_file)
8108 : : fprintf (dump_file, "Splitting with gen_split_387 (i386.md:13766)\n");
8109 : : start_sequence ();
8110 : : #define FAIL return (end_sequence (), nullptr)
8111 : : #define DONE return end_sequence ()
8112 : : #line 13782 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8113 : : operands[4] = gen_reg_rtx (SImode);
8114 : : #undef DONE
8115 : : #undef FAIL
8116 : : static const uint8_t expand_encoding[] = {
8117 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8118 : : 0x11, 0x4c, 0x11, 0x01, 0x02, 0x01, 0x01, 0x05,
8119 : : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
8120 : : 0x4b, 0x11, 0x01, 0x04, 0x01, 0x03, 0x05, 0x02,
8121 : : 0x11
8122 : : };
8123 : : return complete_seq (expand_encoding, operands);
8124 : : }
8125 : :
8126 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13827 */
8127 : : rtx
8128 : : gen_iorsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8129 : : {
8130 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8131 : : start_sequence ();
8132 : : {
8133 : : #define FAIL return (end_sequence (), nullptr)
8134 : : #define DONE return end_sequence ()
8135 : : #line 13832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8136 : : {
8137 : : if (GET_MODE_SIZE (SImode) > UNITS_PER_WORD
8138 : : && !x86_64_hilo_general_operand (operands[2], SImode))
8139 : : operands[2] = force_reg (SImode, operands[2]);
8140 : :
8141 : : ix86_expand_binary_operator (IOR, SImode, operands, TARGET_APX_NDD);
8142 : : DONE;
8143 : : }
8144 : : #undef DONE
8145 : : #undef FAIL
8146 : : }
8147 : : static const uint8_t expand_encoding[] = {
8148 : : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x01, 0x01,
8149 : : 0x01, 0x02
8150 : : };
8151 : : return complete_seq (expand_encoding, operands);
8152 : : }
8153 : :
8154 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13920 */
8155 : : extern rtx_insn *gen_split_397 (rtx_insn *, rtx *);
8156 : : rtx_insn *
8157 : : gen_split_397 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8158 : : {
8159 : : if (dump_file)
8160 : : fprintf (dump_file, "Splitting with gen_split_397 (i386.md:13920)\n");
8161 : : start_sequence ();
8162 : : #define FAIL return (end_sequence (), nullptr)
8163 : : #define DONE return end_sequence ()
8164 : : #line 13936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8165 : : {
8166 : : if (MASK_REG_P (operands[0]))
8167 : : {
8168 : : emit_insn (gen_kxnorhi (operands[0], operands[1], operands[2]));
8169 : : DONE;
8170 : : }
8171 : : }
8172 : : #undef DONE
8173 : : #undef FAIL
8174 : : static const uint8_t expand_encoding[] = {
8175 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
8176 : : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11,
8177 : : 0x1f, 0x01, 0x00, 0x4c, 0x10, 0x01, 0x00
8178 : : };
8179 : : return complete_seq (expand_encoding, operands);
8180 : : }
8181 : :
8182 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13994 */
8183 : : extern rtx_insn *gen_split_403 (rtx_insn *, rtx *);
8184 : : rtx_insn *
8185 : : gen_split_403 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8186 : : {
8187 : : if (dump_file)
8188 : : fprintf (dump_file, "Splitting with gen_split_403 (i386.md:13994)\n");
8189 : : start_sequence ();
8190 : : #define FAIL return (end_sequence (), nullptr)
8191 : : #define DONE return end_sequence ()
8192 : : #line 14023 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8193 : : {
8194 : : operands[1] = force_reg (SImode, operands[1]);
8195 : : operands[3] = force_reg (SImode, operands[3]);
8196 : : operands[4] = gen_reg_rtx (SImode);
8197 : : operands[5] = gen_reg_rtx (SImode);
8198 : : }
8199 : : #undef DONE
8200 : : #undef FAIL
8201 : : static const uint8_t expand_encoding[] = {
8202 : : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8203 : : 0x11, 0x4c, 0x11, 0x01, 0x03, 0x01, 0x01, 0x05,
8204 : : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05,
8205 : : 0x49, 0x11, 0x01, 0x03, 0x01, 0x02, 0x05, 0x02,
8206 : : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
8207 : : 0x11, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11
8208 : : };
8209 : : return complete_seq (expand_encoding, operands);
8210 : : }
8211 : :
8212 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14173 */
8213 : : extern rtx_insn *gen_split_416 (rtx_insn *, rtx *);
8214 : : rtx_insn *
8215 : : gen_split_416 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8216 : : {
8217 : : if (dump_file)
8218 : : fprintf (dump_file, "Splitting with gen_split_416 (i386.md:14173)\n");
8219 : : start_sequence ();
8220 : : #define FAIL return (end_sequence (), nullptr)
8221 : : #define DONE return end_sequence ()
8222 : : #line 14181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8223 : : operands[3] = gen_reg_rtx (SImode);
8224 : : #undef DONE
8225 : : #undef FAIL
8226 : : static const uint8_t expand_encoding[] = {
8227 : : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x11, 0x01, 0x01,
8228 : : 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x01, 0x03, 0x01,
8229 : : 0x02
8230 : : };
8231 : : return complete_seq (expand_encoding, operands);
8232 : : }
8233 : :
8234 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14283 */
8235 : : extern rtx_insn *gen_split_426 (rtx_insn *, rtx *);
8236 : : rtx_insn *
8237 : : gen_split_426 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8238 : : {
8239 : : if (dump_file)
8240 : : fprintf (dump_file, "Splitting with gen_split_426 (i386.md:14283)\n");
8241 : : start_sequence ();
8242 : : #define FAIL return (end_sequence (), nullptr)
8243 : : #define DONE return end_sequence ()
8244 : : #line 14304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8245 : : {
8246 : : /* Handle the case where INTVAL (operands[2]) == 0. */
8247 : : if (operands[2] == const0_rtx)
8248 : : {
8249 : : if (!rtx_equal_p (operands[0], operands[1]))
8250 : : emit_move_insn (operands[0], operands[1]);
8251 : : else
8252 : : emit_note (NOTE_INSN_DELETED);
8253 : : DONE;
8254 : : }
8255 : : operands[0] = gen_lowpart (HImode, operands[0]);
8256 : : operands[1] = gen_lowpart (HImode, operands[1]);
8257 : : operands[2] = gen_int_mode (INTVAL (operands[2]) >> 8, QImode);
8258 : : }
8259 : : #undef DONE
8260 : : #undef FAIL
8261 : : static const uint8_t expand_encoding[] = {
8262 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
8263 : : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
8264 : : 0x4a, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
8265 : : 0x01, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02,
8266 : : 0x00, 0x05, 0x02, 0x11
8267 : : };
8268 : : return complete_seq (expand_encoding, operands);
8269 : : }
8270 : :
8271 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14365 */
8272 : : extern rtx_insn *gen_peephole2_145 (rtx_insn *, rtx *);
8273 : : rtx_insn *
8274 : : gen_peephole2_145 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8275 : : {
8276 : : if (dump_file)
8277 : : fprintf (dump_file, "Splitting with gen_peephole2_145 (i386.md:14365)\n");
8278 : : start_sequence ();
8279 : : static const uint8_t expand_encoding[] = {
8280 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8281 : : };
8282 : : return complete_seq (expand_encoding, operands);
8283 : : }
8284 : :
8285 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14365 */
8286 : : extern rtx_insn *gen_peephole2_152 (rtx_insn *, rtx *);
8287 : : rtx_insn *
8288 : : gen_peephole2_152 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8289 : : {
8290 : : if (dump_file)
8291 : : fprintf (dump_file, "Splitting with gen_peephole2_152 (i386.md:14365)\n");
8292 : : start_sequence ();
8293 : : static const uint8_t expand_encoding[] = {
8294 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8295 : : };
8296 : : return complete_seq (expand_encoding, operands);
8297 : : }
8298 : :
8299 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14377 */
8300 : : extern rtx_insn *gen_peephole2_162 (rtx_insn *, rtx *);
8301 : : rtx_insn *
8302 : : gen_peephole2_162 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8303 : : {
8304 : : if (dump_file)
8305 : : fprintf (dump_file, "Splitting with gen_peephole2_162 (i386.md:14377)\n");
8306 : : start_sequence ();
8307 : : static const uint8_t expand_encoding[] = {
8308 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
8309 : : 0x00, 0x05, 0x02, 0x11
8310 : : };
8311 : : return complete_seq (expand_encoding, operands);
8312 : : }
8313 : :
8314 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14389 */
8315 : : extern rtx_insn *gen_split_441 (rtx_insn *, rtx *);
8316 : : rtx_insn *
8317 : : gen_split_441 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8318 : : {
8319 : : if (dump_file)
8320 : : fprintf (dump_file, "Splitting with gen_split_441 (i386.md:14389)\n");
8321 : : start_sequence ();
8322 : : #define FAIL return (end_sequence (), nullptr)
8323 : : #define DONE return end_sequence ()
8324 : : #line 14400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8325 : : {
8326 : : split_double_concat (TImode, operands[0], operands[3],
8327 : : gen_lowpart (DImode, operands[1]));
8328 : : DONE;
8329 : : }
8330 : : #undef DONE
8331 : : #undef FAIL
8332 : : static const uint8_t expand_encoding[] = {
8333 : : 0x01, 0x27, 0x00
8334 : : };
8335 : : return complete_seq (expand_encoding, operands);
8336 : : }
8337 : :
8338 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14423 */
8339 : : extern rtx_insn *gen_split_451 (rtx_insn *, rtx *);
8340 : : rtx_insn *
8341 : : gen_split_451 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8342 : : {
8343 : : if (dump_file)
8344 : : fprintf (dump_file, "Splitting with gen_split_451 (i386.md:14423)\n");
8345 : : start_sequence ();
8346 : : #define FAIL return (end_sequence (), nullptr)
8347 : : #define DONE return end_sequence ()
8348 : : #line 14436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8349 : : {
8350 : : if (SSE_REG_P (operands[0]))
8351 : : {
8352 : : rtx tmp = gen_rtx_REG (V2DImode, REGNO (operands[0]));
8353 : : emit_insn (gen_vec_concatv2di (tmp, operands[3], operands[1]));
8354 : : }
8355 : : else
8356 : : split_double_concat (DImode, operands[0], operands[3], operands[1]);
8357 : : DONE;
8358 : : }
8359 : : #undef DONE
8360 : : #undef FAIL
8361 : : static const uint8_t expand_encoding[] = {
8362 : : 0x01, 0x27, 0x00
8363 : : };
8364 : : return complete_seq (expand_encoding, operands);
8365 : : }
8366 : :
8367 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14448 */
8368 : : extern rtx_insn *gen_split_461 (rtx_insn *, rtx *);
8369 : : rtx_insn *
8370 : : gen_split_461 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8371 : : {
8372 : : if (dump_file)
8373 : : fprintf (dump_file, "Splitting with gen_split_461 (i386.md:14448)\n");
8374 : : start_sequence ();
8375 : : #define FAIL return (end_sequence (), nullptr)
8376 : : #define DONE return end_sequence ()
8377 : : #line 14461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8378 : : {
8379 : : split_double_concat (DImode, operands[0], operands[1], operands[2]);
8380 : : DONE;
8381 : : }
8382 : : #undef DONE
8383 : : #undef FAIL
8384 : : static const uint8_t expand_encoding[] = {
8385 : : 0x01, 0x27, 0x00
8386 : : };
8387 : : return complete_seq (expand_encoding, operands);
8388 : : }
8389 : :
8390 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14448 */
8391 : : extern rtx_insn *gen_split_470 (rtx_insn *, rtx *);
8392 : : rtx_insn *
8393 : : gen_split_470 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8394 : : {
8395 : : if (dump_file)
8396 : : fprintf (dump_file, "Splitting with gen_split_470 (i386.md:14448)\n");
8397 : : start_sequence ();
8398 : : #define FAIL return (end_sequence (), nullptr)
8399 : : #define DONE return end_sequence ()
8400 : : #line 14461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8401 : : {
8402 : : split_double_concat (TImode, operands[0], operands[1], operands[2]);
8403 : : DONE;
8404 : : }
8405 : : #undef DONE
8406 : : #undef FAIL
8407 : : static const uint8_t expand_encoding[] = {
8408 : : 0x01, 0x27, 0x00
8409 : : };
8410 : : return complete_seq (expand_encoding, operands);
8411 : : }
8412 : :
8413 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14497 */
8414 : : extern rtx_insn *gen_split_480 (rtx_insn *, rtx *);
8415 : : rtx_insn *
8416 : : gen_split_480 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8417 : : {
8418 : : if (dump_file)
8419 : : fprintf (dump_file, "Splitting with gen_split_480 (i386.md:14497)\n");
8420 : : start_sequence ();
8421 : : #define FAIL return (end_sequence (), nullptr)
8422 : : #define DONE return end_sequence ()
8423 : : #line 14521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8424 : : {
8425 : : rtx op3 = simplify_subreg (SImode, operands[3], DImode, 0);
8426 : : split_double_concat (DImode, operands[0], op3, operands[1]);
8427 : : DONE;
8428 : : }
8429 : : #undef DONE
8430 : : #undef FAIL
8431 : : static const uint8_t expand_encoding[] = {
8432 : : 0x01, 0x27, 0x00
8433 : : };
8434 : : return complete_seq (expand_encoding, operands);
8435 : : }
8436 : :
8437 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14528 */
8438 : : extern rtx_insn *gen_split_490 (rtx_insn *, rtx *);
8439 : : rtx_insn *
8440 : : gen_split_490 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8441 : : {
8442 : : if (dump_file)
8443 : : fprintf (dump_file, "Splitting with gen_split_490 (i386.md:14528)\n");
8444 : : start_sequence ();
8445 : : #define FAIL return (end_sequence (), nullptr)
8446 : : #define DONE return end_sequence ()
8447 : : #line 14547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8448 : : {
8449 : : rtx op2;
8450 : : if (DImode == DImode)
8451 : : op2 = gen_int_mode (INTVAL (operands[2]) >> 32, SImode);
8452 : : else
8453 : : op2 = gen_int_mode (CONST_WIDE_INT_ELT (operands[2], 1), SImode);
8454 : : split_double_concat (DImode, operands[0], operands[1], op2);
8455 : : DONE;
8456 : : }
8457 : : #undef DONE
8458 : : #undef FAIL
8459 : : static const uint8_t expand_encoding[] = {
8460 : : 0x01, 0x27, 0x00
8461 : : };
8462 : : return complete_seq (expand_encoding, operands);
8463 : : }
8464 : :
8465 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14560 */
8466 : : rtx
8467 : : gen_negti2 (const rtx operand0, const rtx operand1)
8468 : : {
8469 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8470 : : start_sequence ();
8471 : : {
8472 : : #define FAIL return (end_sequence (), nullptr)
8473 : : #define DONE return end_sequence ()
8474 : : #line 14564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8475 : : {
8476 : : ix86_expand_unary_operator (NEG, TImode, operands, TARGET_APX_NDD);
8477 : : DONE;
8478 : : }
8479 : : #undef DONE
8480 : : #undef FAIL
8481 : : }
8482 : : static const uint8_t expand_encoding[] = {
8483 : : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x13, 0x01, 0x01
8484 : : };
8485 : : return complete_seq (expand_encoding, operands);
8486 : : }
8487 : :
8488 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14808 */
8489 : : rtx
8490 : : gen_x86_negdi_ccc (const rtx operand0, const rtx operand1)
8491 : : {
8492 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8493 : : static const uint8_t expand_encoding[] = {
8494 : : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a,
8495 : : 0x08, 0x02, 0x01, 0x01, 0x27, 0x00, 0x29, 0x1f,
8496 : : 0x01, 0x00, 0x3d, 0x12, 0x01, 0x01
8497 : : };
8498 : : return expand_rtx (expand_encoding, operands);
8499 : : }
8500 : :
8501 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14852 */
8502 : : rtx
8503 : : gen_negvdi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8504 : : {
8505 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8506 : : start_sequence ();
8507 : : {
8508 : : #define FAIL return (end_sequence (), nullptr)
8509 : : #define DONE return end_sequence ()
8510 : : #line 14864 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8511 : : {
8512 : : operands[3]
8513 : : = gen_int_mode (HOST_WIDE_INT_1U << (GET_MODE_BITSIZE (DImode) - 1),
8514 : : DImode);
8515 : : }
8516 : : #undef DONE
8517 : : #undef FAIL
8518 : : }
8519 : : static const uint8_t expand_encoding[] = {
8520 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
8521 : : 0x1a, 0x09, 0x02, 0x01, 0x01, 0x01, 0x03, 0x29,
8522 : : 0x1f, 0x01, 0x00, 0x3d, 0x12, 0x01, 0x01, 0x1f,
8523 : : 0x2f, 0x39, 0x00, 0x5d, 0x00, 0x30, 0x09, 0x11,
8524 : : 0x27, 0x00, 0x37, 0x00, 0x01, 0x02, 0x2f
8525 : : };
8526 : : return complete_seq (expand_encoding, operands);
8527 : : }
8528 : :
8529 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14909 */
8530 : : rtx
8531 : : gen_absti2 (const rtx operand0, const rtx operand1)
8532 : : {
8533 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8534 : : start_sequence ();
8535 : : {
8536 : : #define FAIL return (end_sequence (), nullptr)
8537 : : #define DONE return end_sequence ()
8538 : : #line 14917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8539 : : {
8540 : : if (TARGET_EXPAND_ABS)
8541 : : {
8542 : : machine_mode mode = TImode;
8543 : : operands[1] = force_reg (mode, operands[1]);
8544 : :
8545 : : /* Generate rtx abs using:
8546 : : abs (x) = (((signed) x >> (W-1)) ^ x) - ((signed) x >> (W-1)) */
8547 : :
8548 : : rtx shift_amount = gen_int_mode (GET_MODE_PRECISION (mode) - 1, QImode);
8549 : : rtx shift_dst = expand_simple_binop (mode, ASHIFTRT, operands[1],
8550 : : shift_amount, NULL_RTX,
8551 : : 0, OPTAB_DIRECT);
8552 : : rtx xor_dst = expand_simple_binop (mode, XOR, shift_dst, operands[1],
8553 : : operands[0], 0, OPTAB_DIRECT);
8554 : : rtx minus_dst = expand_simple_binop (mode, MINUS, xor_dst, shift_dst,
8555 : : operands[0], 0, OPTAB_DIRECT);
8556 : : if (!rtx_equal_p (minus_dst, operands[0]))
8557 : : emit_move_insn (operands[0], minus_dst);
8558 : : DONE;
8559 : : }
8560 : : }
8561 : : #undef DONE
8562 : : #undef FAIL
8563 : : }
8564 : : static const uint8_t expand_encoding[] = {
8565 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x7b,
8566 : : 0x13, 0x01, 0x01, 0x05, 0x02, 0x11
8567 : : };
8568 : : return complete_seq (expand_encoding, operands);
8569 : : }
8570 : :
8571 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15054 */
8572 : : extern rtx_insn *gen_split_512 (rtx_insn *, rtx *);
8573 : : rtx_insn *
8574 : : gen_split_512 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8575 : : {
8576 : : if (dump_file)
8577 : : fprintf (dump_file, "Splitting with gen_split_512 (i386.md:15054)\n");
8578 : : start_sequence ();
8579 : : #define FAIL return (end_sequence (), nullptr)
8580 : : #define DONE return end_sequence ()
8581 : : #line 15077 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8582 : : {
8583 : : operands[1] = force_reg (HImode, operands[1]);
8584 : : operands[2] = gen_reg_rtx (HImode);
8585 : : }
8586 : : #undef DONE
8587 : : #undef FAIL
8588 : : static const uint8_t expand_encoding[] = {
8589 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11,
8590 : : 0x3a, 0x04, 0x3d, 0x10, 0x01, 0x01, 0x27, 0x00,
8591 : : 0x1f, 0x01, 0x02, 0x3d, 0x10, 0x01, 0x01, 0x1f,
8592 : : 0x01, 0x00, 0x39, 0x10, 0x61, 0x00, 0x30, 0x04,
8593 : : 0x11, 0x27, 0x00, 0x01, 0x02, 0x01, 0x01
8594 : : };
8595 : : return complete_seq (expand_encoding, operands);
8596 : : }
8597 : :
8598 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15143 */
8599 : : rtx
8600 : : gen_abssf2 (const rtx operand0, const rtx operand1)
8601 : : {
8602 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8603 : : start_sequence ();
8604 : : {
8605 : : #define FAIL return (end_sequence (), nullptr)
8606 : : #define DONE return end_sequence ()
8607 : : #line 15147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8608 : : ix86_expand_fp_absneg_operator (ABS, SFmode, operands); DONE;
8609 : : #undef DONE
8610 : : #undef FAIL
8611 : : }
8612 : : static const uint8_t expand_encoding[] = {
8613 : : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x2d, 0x01, 0x01
8614 : : };
8615 : : return complete_seq (expand_encoding, operands);
8616 : : }
8617 : :
8618 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15158 */
8619 : : extern rtx_insn *gen_split_520 (rtx_insn *, rtx *);
8620 : : rtx_insn *
8621 : : gen_split_520 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8622 : : {
8623 : : if (dump_file)
8624 : : fprintf (dump_file, "Splitting with gen_split_520 (i386.md:15158)\n");
8625 : : start_sequence ();
8626 : : static const uint8_t expand_encoding[] = {
8627 : : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x2e, 0x01, 0x01
8628 : : };
8629 : : return complete_seq (expand_encoding, operands);
8630 : : }
8631 : :
8632 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15165 */
8633 : : extern rtx_insn *gen_split_529 (rtx_insn *, rtx *);
8634 : : rtx_insn *
8635 : : gen_split_529 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8636 : : {
8637 : : if (dump_file)
8638 : : fprintf (dump_file, "Splitting with gen_split_529 (i386.md:15165)\n");
8639 : : start_sequence ();
8640 : : #define FAIL return (end_sequence (), nullptr)
8641 : : #define DONE return end_sequence ()
8642 : : #line 15171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8643 : : ix86_split_fp_absneg_operator (NEG, XFmode, operands); DONE;
8644 : : #undef DONE
8645 : : #undef FAIL
8646 : : static const uint8_t expand_encoding[] = {
8647 : : 0x01, 0x27, 0x00
8648 : : };
8649 : : return complete_seq (expand_encoding, operands);
8650 : : }
8651 : :
8652 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15231 */
8653 : : extern rtx_insn *gen_split_539 (rtx_insn *, rtx *);
8654 : : rtx_insn *
8655 : : gen_split_539 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8656 : : {
8657 : : if (dump_file)
8658 : : fprintf (dump_file, "Splitting with gen_split_539 (i386.md:15231)\n");
8659 : : start_sequence ();
8660 : : static const uint8_t expand_encoding[] = {
8661 : : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x2e, 0x01, 0x01
8662 : : };
8663 : : return complete_seq (expand_encoding, operands);
8664 : : }
8665 : :
8666 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15284 */
8667 : : rtx
8668 : : gen_copysignsf3 (const rtx operand0, const rtx operand1, const rtx operand2)
8669 : : {
8670 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8671 : : start_sequence ();
8672 : : {
8673 : : #define FAIL _Pragma ("GCC error \"copysignsf3 cannot FAIL\"") (void)0
8674 : : #define DONE return end_sequence ()
8675 : : #line 15291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8676 : : ix86_expand_copysign (operands); DONE;
8677 : : #undef DONE
8678 : : #undef FAIL
8679 : : }
8680 : : static const uint8_t expand_encoding[] = {
8681 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
8682 : : };
8683 : : return complete_seq (expand_encoding, operands);
8684 : : }
8685 : :
8686 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15309 */
8687 : : rtx
8688 : : gen_one_cmplsi2 (const rtx operand0, const rtx operand1)
8689 : : {
8690 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8691 : : start_sequence ();
8692 : : {
8693 : : #define FAIL return (end_sequence (), nullptr)
8694 : : #define DONE return end_sequence ()
8695 : : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8696 : : {
8697 : : ix86_expand_unary_operator (NOT, SImode, operands, TARGET_APX_NDD);
8698 : : DONE;
8699 : : }
8700 : : #undef DONE
8701 : : #undef FAIL
8702 : : }
8703 : : static const uint8_t expand_encoding[] = {
8704 : : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x11, 0x01, 0x01
8705 : : };
8706 : : return complete_seq (expand_encoding, operands);
8707 : : }
8708 : :
8709 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15430 */
8710 : : extern rtx_insn *gen_split_552 (rtx_insn *, rtx *);
8711 : : rtx_insn *
8712 : : gen_split_552 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8713 : : {
8714 : : if (dump_file)
8715 : : fprintf (dump_file, "Splitting with gen_split_552 (i386.md:15430)\n");
8716 : : start_sequence ();
8717 : : static const uint8_t expand_encoding[] = {
8718 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
8719 : : 0x02, 0x4b, 0x11, 0x01, 0x03, 0x27, 0x81, 0xff,
8720 : : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f,
8721 : : 0x27, 0x00, 0x1f, 0x01, 0x01, 0x4b, 0x11, 0x01,
8722 : : 0x03, 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff,
8723 : : 0xff, 0xff, 0xff, 0x7f
8724 : : };
8725 : : return complete_seq (expand_encoding, operands);
8726 : : }
8727 : :
8728 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15522 */
8729 : : rtx
8730 : : gen_ashlti3 (const rtx operand0, const rtx operand1, const rtx operand2)
8731 : : {
8732 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8733 : : start_sequence ();
8734 : : {
8735 : : #define FAIL return (end_sequence (), nullptr)
8736 : : #define DONE return end_sequence ()
8737 : : #line 15527 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8738 : : {
8739 : : ix86_expand_binary_operator (ASHIFT, TImode, operands, TARGET_APX_NDD);
8740 : : DONE;
8741 : : }
8742 : : #undef DONE
8743 : : #undef FAIL
8744 : : }
8745 : : static const uint8_t expand_encoding[] = {
8746 : : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x13, 0x01, 0x01,
8747 : : 0x01, 0x02
8748 : : };
8749 : : return complete_seq (expand_encoding, operands);
8750 : : }
8751 : :
8752 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15697 */
8753 : : extern rtx_insn *gen_split_565 (rtx_insn *, rtx *);
8754 : : rtx_insn *
8755 : : gen_split_565 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8756 : : {
8757 : : if (dump_file)
8758 : : fprintf (dump_file, "Splitting with gen_split_565 (i386.md:15697)\n");
8759 : : start_sequence ();
8760 : : #define FAIL return (end_sequence (), nullptr)
8761 : : #define DONE return end_sequence ()
8762 : : #line 15708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8763 : : {
8764 : : split_double_mode (DImode, &operands[0], 1, &operands[0], &operands[3]);
8765 : : int bits = INTVAL (operands[2]) - (4 * BITS_PER_UNIT);
8766 : : bool op_equal_p = rtx_equal_p (operands[3], operands[1]);
8767 : : if (bits == 0)
8768 : : {
8769 : : if (!op_equal_p)
8770 : : emit_move_insn (operands[3], operands[1]);
8771 : : }
8772 : : else
8773 : : {
8774 : : if (!op_equal_p && !TARGET_APX_NDD)
8775 : : emit_move_insn (operands[3], operands[1]);
8776 : : rtx op_tmp = TARGET_APX_NDD ? operands[1] : operands[3];
8777 : : emit_insn (gen_ashlsi3 (operands[3], op_tmp, GEN_INT (bits)));
8778 : : }
8779 : : ix86_expand_clear (operands[0]);
8780 : : DONE;
8781 : : }
8782 : : #undef DONE
8783 : : #undef FAIL
8784 : : static const uint8_t expand_encoding[] = {
8785 : : 0x01, 0x27, 0x00
8786 : : };
8787 : : return complete_seq (expand_encoding, operands);
8788 : : }
8789 : :
8790 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15936 */
8791 : : extern rtx_insn *gen_split_571 (rtx_insn *, rtx *);
8792 : : rtx_insn *
8793 : : gen_split_571 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8794 : : {
8795 : : if (dump_file)
8796 : : fprintf (dump_file, "Splitting with gen_split_571 (i386.md:15936)\n");
8797 : : start_sequence ();
8798 : : static const uint8_t expand_encoding[] = {
8799 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
8800 : : 0x12, 0x4d, 0x12, 0x01, 0x01, 0x49, 0x0f, 0x01,
8801 : : 0x03, 0x27, 0x3f, 0x32, 0x12, 0x50, 0x13, 0x6f,
8802 : : 0x13, 0x01, 0x02, 0x3c, 0x0f, 0x27, 0x40, 0x49,
8803 : : 0x0f, 0x01, 0x03, 0x27, 0x3f, 0x00, 0x05, 0x02,
8804 : : 0x11
8805 : : };
8806 : : return complete_seq (expand_encoding, operands);
8807 : : }
8808 : :
8809 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16189 */
8810 : : rtx
8811 : : gen_x86_shiftdi_adj_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
8812 : : {
8813 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
8814 : : start_sequence ();
8815 : : {
8816 : : #define FAIL return (end_sequence (), nullptr)
8817 : : #define DONE return end_sequence ()
8818 : : #line 16203 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8819 : : operands[4] = GEN_INT (GET_MODE_BITSIZE (DImode));
8820 : : #undef DONE
8821 : : #undef FAIL
8822 : : }
8823 : : static const uint8_t expand_encoding[] = {
8824 : : 0x03, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x49,
8825 : : 0x0f, 0x01, 0x02, 0x01, 0x04, 0x27, 0x00, 0x1f,
8826 : : 0x01, 0x00, 0x39, 0x12, 0x5c, 0x00, 0x30, 0x0c,
8827 : : 0x11, 0x27, 0x00, 0x01, 0x01, 0x01, 0x00, 0x1f,
8828 : : 0x01, 0x01, 0x39, 0x12, 0x5c, 0x00, 0x30, 0x0c,
8829 : : 0x11, 0x27, 0x00, 0x01, 0x03, 0x01, 0x01
8830 : : };
8831 : : return complete_seq (expand_encoding, operands);
8832 : : }
8833 : :
8834 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16321 */
8835 : : extern rtx_insn *gen_split_579 (rtx_insn *, rtx *);
8836 : : rtx_insn *
8837 : : gen_split_579 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8838 : : {
8839 : : if (dump_file)
8840 : : fprintf (dump_file, "Splitting with gen_split_579 (i386.md:16321)\n");
8841 : : start_sequence ();
8842 : : #define FAIL return (end_sequence (), nullptr)
8843 : : #define DONE return end_sequence ()
8844 : : #line 16329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8845 : : operands[2] = gen_lowpart (DImode, operands[2]);
8846 : : #undef DONE
8847 : : #undef FAIL
8848 : : static const uint8_t expand_encoding[] = {
8849 : : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x12, 0x01, 0x01,
8850 : : 0x01, 0x02
8851 : : };
8852 : : return complete_seq (expand_encoding, operands);
8853 : : }
8854 : :
8855 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16634 */
8856 : : extern rtx_insn *gen_split_589 (rtx_insn *, rtx *);
8857 : : rtx_insn *
8858 : : gen_split_589 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8859 : : {
8860 : : if (dump_file)
8861 : : fprintf (dump_file, "Splitting with gen_split_589 (i386.md:16634)\n");
8862 : : start_sequence ();
8863 : : #define FAIL return (end_sequence (), nullptr)
8864 : : #define DONE return end_sequence ()
8865 : : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8866 : : {
8867 : : if (SImode != SImode)
8868 : : {
8869 : : operands[0] = gen_lowpart (SImode, operands[0]);
8870 : : operands[1] = gen_lowpart (SImode, operands[1]);
8871 : : }
8872 : : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
8873 : : }
8874 : : #undef DONE
8875 : : #undef FAIL
8876 : : static const uint8_t expand_encoding[] = {
8877 : : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x11, 0x01, 0x01,
8878 : : 0x01, 0x02
8879 : : };
8880 : : return complete_seq (expand_encoding, operands);
8881 : : }
8882 : :
8883 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16899 */
8884 : : rtx
8885 : : gen_lshrsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8886 : : {
8887 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8888 : : start_sequence ();
8889 : : {
8890 : : #define FAIL return (end_sequence (), nullptr)
8891 : : #define DONE return end_sequence ()
8892 : : #line 16904 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8893 : : {
8894 : : ix86_expand_binary_operator (LSHIFTRT, SImode, operands, TARGET_APX_NDD);
8895 : : DONE;
8896 : : }
8897 : : #undef DONE
8898 : : #undef FAIL
8899 : : }
8900 : : static const uint8_t expand_encoding[] = {
8901 : : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x11, 0x01, 0x01,
8902 : : 0x01, 0x02
8903 : : };
8904 : : return complete_seq (expand_encoding, operands);
8905 : : }
8906 : :
8907 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16971 */
8908 : : extern rtx_insn *gen_split_599 (rtx_insn *, rtx *);
8909 : : rtx_insn *
8910 : : gen_split_599 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8911 : : {
8912 : : if (dump_file)
8913 : : fprintf (dump_file, "Splitting with gen_split_599 (i386.md:16971)\n");
8914 : : start_sequence ();
8915 : : #define FAIL return (end_sequence (), nullptr)
8916 : : #define DONE return end_sequence ()
8917 : : #line 16998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8918 : : {
8919 : : if ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) != 0)
8920 : : {
8921 : : emit_insn (gen_lshrdi3_doubleword (operands[0], operands[1],
8922 : : operands[2]));
8923 : : DONE;
8924 : : }
8925 : :
8926 : : split_double_mode (DImode, &operands[0], 2, &operands[4], &operands[6]);
8927 : :
8928 : : operands[8] = GEN_INT (4 * BITS_PER_UNIT - 1);
8929 : : operands[9] = GEN_INT (4 * BITS_PER_UNIT);
8930 : :
8931 : : if ((INTVAL (operands[3]) & ((4 * BITS_PER_UNIT) - 1))
8932 : : != ((4 * BITS_PER_UNIT) - 1))
8933 : : {
8934 : : rtx tem = gen_reg_rtx (QImode);
8935 : : emit_insn (gen_andqi3 (tem, operands[2], operands[3]));
8936 : : operands[2] = tem;
8937 : : }
8938 : :
8939 : : if (!rtx_equal_p (operands[4], operands[5]))
8940 : : emit_move_insn (operands[4], operands[5]);
8941 : : }
8942 : : #undef DONE
8943 : : #undef FAIL
8944 : : static const uint8_t expand_encoding[] = {
8945 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4a,
8946 : : 0x11, 0x50, 0x11, 0x01, 0x04, 0x49, 0x0f, 0x01,
8947 : : 0x02, 0x01, 0x08, 0x32, 0x11, 0x4d, 0x12, 0x6f,
8948 : : 0x12, 0x01, 0x07, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8949 : : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8950 : : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x50,
8951 : : 0x11, 0x01, 0x07, 0x01, 0x02, 0x05, 0x02, 0x11
8952 : : };
8953 : : return complete_seq (expand_encoding, operands);
8954 : : }
8955 : :
8956 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17047 */
8957 : : extern rtx_insn *gen_peephole2_181 (rtx_insn *, rtx *);
8958 : : rtx_insn *
8959 : : gen_peephole2_181 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8960 : : {
8961 : : HARD_REG_SET _regs_allocated;
8962 : : CLEAR_HARD_REG_SET (_regs_allocated);
8963 : : if ((operands[3] = peep2_find_free_register (0, 1, "r", SImode, &_regs_allocated)) == NULL_RTX)
8964 : : return NULL;
8965 : : if (dump_file)
8966 : : fprintf (dump_file, "Splitting with gen_peephole2_181 (i386.md:17047)\n");
8967 : : start_sequence ();
8968 : : #define FAIL return (end_sequence (), nullptr)
8969 : : #define DONE return end_sequence ()
8970 : : #line 17057 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8971 : : {
8972 : : if (TARGET_APX_NDD
8973 : : && !rtx_equal_p (operands[0], operands[1]))
8974 : : ix86_split_rshift_ndd (LSHIFTRT, operands, operands[3]);
8975 : : else
8976 : : ix86_split_lshr (operands, operands[3], DImode);
8977 : : DONE;
8978 : : }
8979 : : #undef DONE
8980 : : #undef FAIL
8981 : : static const uint8_t expand_encoding[] = {
8982 : : 0x01, 0x27, 0x00
8983 : : };
8984 : : return complete_seq (expand_encoding, operands);
8985 : : }
8986 : :
8987 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17087 */
8988 : : extern rtx_insn *gen_split_613 (rtx_insn *, rtx *);
8989 : : rtx_insn *
8990 : : gen_split_613 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8991 : : {
8992 : : if (dump_file)
8993 : : fprintf (dump_file, "Splitting with gen_split_613 (i386.md:17087)\n");
8994 : : start_sequence ();
8995 : : #define FAIL return (end_sequence (), nullptr)
8996 : : #define DONE return end_sequence ()
8997 : : #line 17103 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8998 : : {
8999 : : split_double_mode (TImode, &operands[1], 1, &operands[1], &operands[3]);
9000 : : operands[4] = GEN_INT ((8 * BITS_PER_UNIT) - INTVAL (operands[2]));
9001 : : if (!rtx_equal_p (operands[0], operands[1]))
9002 : : emit_move_insn (operands[0], operands[1]);
9003 : : }
9004 : : #undef DONE
9005 : : #undef FAIL
9006 : : static const uint8_t expand_encoding[] = {
9007 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
9008 : : 0x12, 0x50, 0x12, 0x01, 0x00, 0x01, 0x02, 0x32,
9009 : : 0x12, 0x4d, 0x13, 0x6f, 0x13, 0x01, 0x03, 0x01,
9010 : : 0x04, 0x00, 0x05, 0x02, 0x11
9011 : : };
9012 : : return complete_seq (expand_encoding, operands);
9013 : : }
9014 : :
9015 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17692 */
9016 : : extern rtx_insn *gen_split_623 (rtx_insn *, rtx *);
9017 : : rtx_insn *
9018 : : gen_split_623 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9019 : : {
9020 : : if (dump_file)
9021 : : fprintf (dump_file, "Splitting with gen_split_623 (i386.md:17692)\n");
9022 : : start_sequence ();
9023 : : #define FAIL return (end_sequence (), nullptr)
9024 : : #define DONE return end_sequence ()
9025 : : #line 17703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9026 : : {
9027 : : if (SSE_REG_P (operands[0]))
9028 : : {
9029 : : rtx tmp = gen_rtx_REG (V4SImode, REGNO (operands[0]));
9030 : : emit_insn (gen_sse_shufps_v4si (tmp, tmp, tmp,
9031 : : const1_rtx, const1_rtx,
9032 : : GEN_INT (5), GEN_INT (5)));
9033 : : DONE;
9034 : : }
9035 : : operands[0] = gen_rtx_REG (DImode, REGNO (operands[0]));
9036 : : }
9037 : : #undef DONE
9038 : : #undef FAIL
9039 : : static const uint8_t expand_encoding[] = {
9040 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9041 : : 0x12, 0x01, 0x01, 0x27, 0x20, 0x05, 0x02, 0x11
9042 : : };
9043 : : return complete_seq (expand_encoding, operands);
9044 : : }
9045 : :
9046 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17852 */
9047 : : extern rtx_insn *gen_split_632 (rtx_insn *, rtx *);
9048 : : rtx_insn *
9049 : : gen_split_632 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9050 : : {
9051 : : if (dump_file)
9052 : : fprintf (dump_file, "Splitting with gen_split_632 (i386.md:17852)\n");
9053 : : start_sequence ();
9054 : : #define FAIL return (end_sequence (), nullptr)
9055 : : #define DONE return end_sequence ()
9056 : : #line 17861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9057 : : operands[2] = gen_lowpart (SImode, operands[2]);
9058 : : #undef DONE
9059 : : #undef FAIL
9060 : : static const uint8_t expand_encoding[] = {
9061 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x50, 0x11,
9062 : : 0x01, 0x01, 0x01, 0x02
9063 : : };
9064 : : return complete_seq (expand_encoding, operands);
9065 : : }
9066 : :
9067 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18114 */
9068 : : extern rtx_insn *gen_split_642 (rtx_insn *, rtx *);
9069 : : rtx_insn *
9070 : : gen_split_642 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9071 : : {
9072 : : if (dump_file)
9073 : : fprintf (dump_file, "Splitting with gen_split_642 (i386.md:18114)\n");
9074 : : start_sequence ();
9075 : : #define FAIL return (end_sequence (), nullptr)
9076 : : #define DONE return end_sequence ()
9077 : : #line 18153 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9078 : :
9079 : : #undef DONE
9080 : : #undef FAIL
9081 : : static const uint8_t expand_encoding[] = {
9082 : : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
9083 : : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
9084 : : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
9085 : : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
9086 : : 0x08, 0x32, 0x12, 0x50, 0x0f, 0x32, 0x0f, 0x81,
9087 : : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
9088 : : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
9089 : : };
9090 : : return complete_seq (expand_encoding, operands);
9091 : : }
9092 : :
9093 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18191 */
9094 : : extern rtx_insn *gen_split_654 (rtx_insn *, rtx *);
9095 : : rtx_insn *
9096 : : gen_split_654 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9097 : : {
9098 : : if (dump_file)
9099 : : fprintf (dump_file, "Splitting with gen_split_654 (i386.md:18191)\n");
9100 : : start_sequence ();
9101 : : #define FAIL return (end_sequence (), nullptr)
9102 : : #define DONE return end_sequence ()
9103 : : #line 18210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9104 : :
9105 : : #undef DONE
9106 : : #undef FAIL
9107 : : static const uint8_t expand_encoding[] = {
9108 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9109 : : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9110 : : };
9111 : : return complete_seq (expand_encoding, operands);
9112 : : }
9113 : :
9114 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18238 */
9115 : : extern rtx_insn *gen_split_664 (rtx_insn *, rtx *);
9116 : : rtx_insn *
9117 : : gen_split_664 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9118 : : {
9119 : : if (dump_file)
9120 : : fprintf (dump_file, "Splitting with gen_split_664 (i386.md:18238)\n");
9121 : : start_sequence ();
9122 : : #define FAIL return (end_sequence (), nullptr)
9123 : : #define DONE return end_sequence ()
9124 : : #line 18256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9125 : :
9126 : : #undef DONE
9127 : : #undef FAIL
9128 : : static const uint8_t expand_encoding[] = {
9129 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4f,
9130 : : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9131 : : };
9132 : : return complete_seq (expand_encoding, operands);
9133 : : }
9134 : :
9135 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18259 */
9136 : : extern rtx_insn *gen_split_671 (rtx_insn *, rtx *);
9137 : : rtx_insn *
9138 : : gen_split_671 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9139 : : {
9140 : : if (dump_file)
9141 : : fprintf (dump_file, "Splitting with gen_split_671 (i386.md:18259)\n");
9142 : : start_sequence ();
9143 : : #define FAIL return (end_sequence (), nullptr)
9144 : : #define DONE return end_sequence ()
9145 : : #line 18282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9146 : : {
9147 : : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9148 : : operands[2] = gen_lowpart (QImode, operands[2]);
9149 : :
9150 : : operands[4] = gen_reg_rtx (QImode);
9151 : : }
9152 : : #undef DONE
9153 : : #undef FAIL
9154 : : static const uint8_t expand_encoding[] = {
9155 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x3d,
9156 : : 0x0f, 0x01, 0x02, 0x05, 0x02, 0x11, 0x17, 0x00,
9157 : : 0x02, 0x1f, 0x01, 0x00, 0x4d, 0x12, 0x01, 0x01,
9158 : : 0x01, 0x04, 0x05, 0x02, 0x11
9159 : : };
9160 : : return complete_seq (expand_encoding, operands);
9161 : : }
9162 : :
9163 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18351 */
9164 : : extern rtx_insn *gen_split_683 (rtx_insn *, rtx *);
9165 : : rtx_insn *
9166 : : gen_split_683 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9167 : : {
9168 : : if (dump_file)
9169 : : fprintf (dump_file, "Splitting with gen_split_683 (i386.md:18351)\n");
9170 : : start_sequence ();
9171 : : #define FAIL return (end_sequence (), nullptr)
9172 : : #define DONE return end_sequence ()
9173 : : #line 18367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9174 : : {
9175 : : if (!TARGET_XOP)
9176 : : {
9177 : : rtx op0 = operands[0];
9178 : : rtx op2 = operands[2];
9179 : : rtx tmp1 = gen_reg_rtx (V4SImode);
9180 : : rtx tmp2 = gen_reg_rtx (V4SImode);
9181 : : rtx tmp3 = gen_reg_rtx (V4SImode);
9182 : : rtx tmp4 = gen_reg_rtx (V4SImode);
9183 : : emit_move_insn (tmp1, lowpart_subreg (V4SImode, operands[1], V2DImode));
9184 : : emit_insn (gen_ashlv4si3 (tmp2, tmp1, op2));
9185 : : emit_insn (gen_ashrv4si3 (tmp3, tmp2, op2));
9186 : : vec_perm_builder sel (4, 4, 1);
9187 : : sel.quick_grow (4);
9188 : : sel[0] = 0;
9189 : : sel[1] = 5;
9190 : : sel[2] = 2;
9191 : : sel[3] = 7;
9192 : : vec_perm_indices indices(sel, 2, 4);
9193 : : bool ok = targetm.vectorize.vec_perm_const (V4SImode, V4SImode, tmp4,
9194 : : tmp1, tmp3, indices);
9195 : : gcc_assert (ok);
9196 : : emit_move_insn (op0, lowpart_subreg (V2DImode, tmp4, V4SImode));
9197 : : DONE;
9198 : : }
9199 : : else
9200 : : operands[4] = gen_reg_rtx (V2DImode);
9201 : : }
9202 : : #undef DONE
9203 : : #undef FAIL
9204 : : static const uint8_t expand_encoding[] = {
9205 : : 0x02, 0x1f, 0x01, 0x04, 0x4d, 0x52, 0x01, 0x01,
9206 : : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4f, 0x52, 0x01,
9207 : : 0x04, 0x01, 0x02
9208 : : };
9209 : : return complete_seq (expand_encoding, operands);
9210 : : }
9211 : :
9212 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18467 */
9213 : : extern rtx_insn *gen_split_690 (rtx_insn *, rtx *);
9214 : : rtx_insn *
9215 : : gen_split_690 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9216 : : {
9217 : : if (dump_file)
9218 : : fprintf (dump_file, "Splitting with gen_split_690 (i386.md:18467)\n");
9219 : : start_sequence ();
9220 : : #define FAIL return (end_sequence (), nullptr)
9221 : : #define DONE return end_sequence ()
9222 : : #line 18487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9223 : : {
9224 : : operands[2] = force_lowpart_subreg (QImode, operands[2],
9225 : : GET_MODE (operands[2]));
9226 : : if (TARGET_APX_NF)
9227 : : {
9228 : : emit_move_insn (operands[0],
9229 : : gen_rtx_ROTATE (DImode, operands[1],
9230 : : operands[2]));
9231 : : DONE;
9232 : : }
9233 : : }
9234 : : #undef DONE
9235 : : #undef FAIL
9236 : : static const uint8_t expand_encoding[] = {
9237 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9238 : : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9239 : : };
9240 : : return complete_seq (expand_encoding, operands);
9241 : : }
9242 : :
9243 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18516 */
9244 : : extern rtx_insn *gen_split_700 (rtx_insn *, rtx *);
9245 : : rtx_insn *
9246 : : gen_split_700 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9247 : : {
9248 : : if (dump_file)
9249 : : fprintf (dump_file, "Splitting with gen_split_700 (i386.md:18516)\n");
9250 : : start_sequence ();
9251 : : #define FAIL return (end_sequence (), nullptr)
9252 : : #define DONE return end_sequence ()
9253 : : #line 18535 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9254 : : {
9255 : : if (TARGET_APX_NF)
9256 : : {
9257 : : emit_move_insn (operands[0],
9258 : : gen_rtx_ROTATE (QImode, operands[1],
9259 : : operands[2]));
9260 : : DONE;
9261 : : }
9262 : : }
9263 : : #undef DONE
9264 : : #undef FAIL
9265 : : static const uint8_t expand_encoding[] = {
9266 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9267 : : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9268 : : };
9269 : : return complete_seq (expand_encoding, operands);
9270 : : }
9271 : :
9272 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18545 */
9273 : : extern rtx_insn *gen_split_710 (rtx_insn *, rtx *);
9274 : : rtx_insn *
9275 : : gen_split_710 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9276 : : {
9277 : : if (dump_file)
9278 : : fprintf (dump_file, "Splitting with gen_split_710 (i386.md:18545)\n");
9279 : : start_sequence ();
9280 : : #define FAIL return (end_sequence (), nullptr)
9281 : : #define DONE return end_sequence ()
9282 : : #line 18558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9283 : : operands[4] = gen_reg_rtx (HImode);
9284 : : #undef DONE
9285 : : #undef FAIL
9286 : : static const uint8_t expand_encoding[] = {
9287 : : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9288 : : 0x00, 0x4e, 0x10, 0x01, 0x04, 0x49, 0x0f, 0x01,
9289 : : 0x02, 0x01, 0x03
9290 : : };
9291 : : return complete_seq (expand_encoding, operands);
9292 : : }
9293 : :
9294 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18560 */
9295 : : extern rtx_insn *gen_split_720 (rtx_insn *, rtx *);
9296 : : rtx_insn *
9297 : : gen_split_720 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9298 : : {
9299 : : if (dump_file)
9300 : : fprintf (dump_file, "Splitting with gen_split_720 (i386.md:18560)\n");
9301 : : start_sequence ();
9302 : : #define FAIL return (end_sequence (), nullptr)
9303 : : #define DONE return end_sequence ()
9304 : : #line 18578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9305 : : {
9306 : : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9307 : : operands[2] = gen_lowpart (QImode, operands[2]);
9308 : : }
9309 : : #undef DONE
9310 : : #undef FAIL
9311 : : static const uint8_t expand_encoding[] = {
9312 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9313 : : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9314 : : };
9315 : : return complete_seq (expand_encoding, operands);
9316 : : }
9317 : :
9318 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18583 */
9319 : : extern rtx_insn *gen_split_730 (rtx_insn *, rtx *);
9320 : : rtx_insn *
9321 : : gen_split_730 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9322 : : {
9323 : : if (dump_file)
9324 : : fprintf (dump_file, "Splitting with gen_split_730 (i386.md:18583)\n");
9325 : : start_sequence ();
9326 : : #define FAIL return (end_sequence (), nullptr)
9327 : : #define DONE return end_sequence ()
9328 : : #line 18595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9329 : : operands[4] = gen_reg_rtx (DImode);
9330 : : #undef DONE
9331 : : #undef FAIL
9332 : : static const uint8_t expand_encoding[] = {
9333 : : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9334 : : 0x00, 0x4e, 0x12, 0x01, 0x04, 0x32, 0x0f, 0x01,
9335 : : 0x02, 0x00
9336 : : };
9337 : : return complete_seq (expand_encoding, operands);
9338 : : }
9339 : :
9340 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18616 */
9341 : : extern rtx_insn *gen_split_740 (rtx_insn *, rtx *);
9342 : : rtx_insn *
9343 : : gen_split_740 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9344 : : {
9345 : : if (dump_file)
9346 : : fprintf (dump_file, "Splitting with gen_split_740 (i386.md:18616)\n");
9347 : : start_sequence ();
9348 : : #define FAIL return (end_sequence (), nullptr)
9349 : : #define DONE return end_sequence ()
9350 : : #line 18627 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9351 : : operands[4] = gen_reg_rtx (QImode);
9352 : : #undef DONE
9353 : : #undef FAIL
9354 : : static const uint8_t expand_encoding[] = {
9355 : : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9356 : : 0x00, 0x4e, 0x0f, 0x01, 0x04, 0x01, 0x02
9357 : : };
9358 : : return complete_seq (expand_encoding, operands);
9359 : : }
9360 : :
9361 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18629 */
9362 : : extern rtx_insn *gen_split_750 (rtx_insn *, rtx *);
9363 : : rtx_insn *
9364 : : gen_split_750 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9365 : : {
9366 : : if (dump_file)
9367 : : fprintf (dump_file, "Splitting with gen_split_750 (i386.md:18629)\n");
9368 : : start_sequence ();
9369 : : #define FAIL return (end_sequence (), nullptr)
9370 : : #define DONE return end_sequence ()
9371 : : #line 18647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9372 : : {
9373 : : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9374 : : operands[2] = gen_lowpart (QImode, operands[2]);
9375 : : }
9376 : : #undef DONE
9377 : : #undef FAIL
9378 : : static const uint8_t expand_encoding[] = {
9379 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9380 : : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9381 : : };
9382 : : return complete_seq (expand_encoding, operands);
9383 : : }
9384 : :
9385 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18652 */
9386 : : extern rtx_insn *gen_split_760 (rtx_insn *, rtx *);
9387 : : rtx_insn *
9388 : : gen_split_760 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9389 : : {
9390 : : if (dump_file)
9391 : : fprintf (dump_file, "Splitting with gen_split_760 (i386.md:18652)\n");
9392 : : start_sequence ();
9393 : : #define FAIL return (end_sequence (), nullptr)
9394 : : #define DONE return end_sequence ()
9395 : : #line 18664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9396 : : operands[4] = gen_reg_rtx (SImode);
9397 : : #undef DONE
9398 : : #undef FAIL
9399 : : static const uint8_t expand_encoding[] = {
9400 : : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9401 : : 0x00, 0x51, 0x11, 0x01, 0x04, 0x32, 0x0f, 0x01,
9402 : : 0x02, 0x00
9403 : : };
9404 : : return complete_seq (expand_encoding, operands);
9405 : : }
9406 : :
9407 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18666 */
9408 : : extern rtx_insn *gen_split_770 (rtx_insn *, rtx *);
9409 : : rtx_insn *
9410 : : gen_split_770 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9411 : : {
9412 : : if (dump_file)
9413 : : fprintf (dump_file, "Splitting with gen_split_770 (i386.md:18666)\n");
9414 : : start_sequence ();
9415 : : #define FAIL return (end_sequence (), nullptr)
9416 : : #define DONE return end_sequence ()
9417 : : #line 18683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9418 : : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9419 : : #undef DONE
9420 : : #undef FAIL
9421 : : static const uint8_t expand_encoding[] = {
9422 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9423 : : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9424 : : };
9425 : : return complete_seq (expand_encoding, operands);
9426 : : }
9427 : :
9428 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18701 */
9429 : : extern rtx_insn *gen_split_780 (rtx_insn *, rtx *);
9430 : : rtx_insn *
9431 : : gen_split_780 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9432 : : {
9433 : : if (dump_file)
9434 : : fprintf (dump_file, "Splitting with gen_split_780 (i386.md:18701)\n");
9435 : : start_sequence ();
9436 : : #define FAIL return (end_sequence (), nullptr)
9437 : : #define DONE return end_sequence ()
9438 : : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9439 : : {
9440 : : operands[6] = GEN_INT (GET_MODE_BITSIZE (SImode) - 1);
9441 : : operands[7] = GEN_INT (GET_MODE_BITSIZE (SImode));
9442 : :
9443 : : split_double_mode (DImode, &operands[0], 1, &operands[4], &operands[5]);
9444 : : }
9445 : : #undef DONE
9446 : : #undef FAIL
9447 : : static const uint8_t expand_encoding[] = {
9448 : : 0x03, 0x1f, 0x01, 0x03, 0x01, 0x04, 0x17, 0x00,
9449 : : 0x02, 0x1f, 0x01, 0x04, 0x4a, 0x11, 0x4d, 0x11,
9450 : : 0x01, 0x04, 0x49, 0x0f, 0x01, 0x02, 0x01, 0x06,
9451 : : 0x32, 0x11, 0x50, 0x12, 0x6f, 0x12, 0x01, 0x05,
9452 : : 0x3c, 0x0f, 0x01, 0x07, 0x49, 0x0f, 0x01, 0x02,
9453 : : 0x01, 0x06, 0x00, 0x05, 0x02, 0x11, 0x17, 0x00,
9454 : : 0x02, 0x1f, 0x01, 0x05, 0x4a, 0x11, 0x4d, 0x11,
9455 : : 0x01, 0x05, 0x49, 0x0f, 0x01, 0x02, 0x01, 0x06,
9456 : : 0x32, 0x11, 0x50, 0x12, 0x6f, 0x12, 0x01, 0x03,
9457 : : 0x3c, 0x0f, 0x01, 0x07, 0x49, 0x0f, 0x01, 0x02,
9458 : : 0x01, 0x06, 0x00, 0x05, 0x02, 0x11
9459 : : };
9460 : : return complete_seq (expand_encoding, operands);
9461 : : }
9462 : :
9463 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18884 */
9464 : : extern rtx_insn *gen_split_791 (rtx_insn *, rtx *);
9465 : : rtx_insn *
9466 : : gen_split_791 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9467 : : {
9468 : : if (dump_file)
9469 : : fprintf (dump_file, "Splitting with gen_split_791 (i386.md:18884)\n");
9470 : : start_sequence ();
9471 : : #define FAIL return (end_sequence (), nullptr)
9472 : : #define DONE return end_sequence ()
9473 : : #line 18892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9474 : : {
9475 : : int bitsize = GET_MODE_BITSIZE (DImode);
9476 : :
9477 : : operands[2] = GEN_INT ((bitsize - INTVAL (operands[2])) % bitsize);
9478 : : }
9479 : : #undef DONE
9480 : : #undef FAIL
9481 : : static const uint8_t expand_encoding[] = {
9482 : : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x12, 0x01, 0x01,
9483 : : 0x01, 0x02
9484 : : };
9485 : : return complete_seq (expand_encoding, operands);
9486 : : }
9487 : :
9488 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19165 */
9489 : : extern rtx_insn *gen_split_804 (rtx_insn *, rtx *);
9490 : : rtx_insn *
9491 : : gen_split_804 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9492 : : {
9493 : : if (dump_file)
9494 : : fprintf (dump_file, "Splitting with gen_split_804 (i386.md:19165)\n");
9495 : : start_sequence ();
9496 : : #define FAIL return (end_sequence (), nullptr)
9497 : : #define DONE return end_sequence ()
9498 : : #line 19189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9499 : : {
9500 : : operands[1] = force_reg (GET_MODE (operands[1]), operands[1]);
9501 : : operands[1] = gen_lowpart (QImode, operands[1]);
9502 : : }
9503 : : #undef DONE
9504 : : #undef FAIL
9505 : : static const uint8_t expand_encoding[] = {
9506 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
9507 : : 0x12, 0x4d, 0x12, 0x27, 0x01, 0x01, 0x01, 0x01,
9508 : : 0x03, 0x05, 0x02, 0x11
9509 : : };
9510 : : return complete_seq (expand_encoding, operands);
9511 : : }
9512 : :
9513 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19332 */
9514 : : extern rtx_insn *gen_split_818 (rtx_insn *, rtx *);
9515 : : rtx_insn *
9516 : : gen_split_818 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9517 : : {
9518 : : if (dump_file)
9519 : : fprintf (dump_file, "Splitting with gen_split_818 (i386.md:19332)\n");
9520 : : start_sequence ();
9521 : : #define FAIL return (end_sequence (), nullptr)
9522 : : #define DONE return end_sequence ()
9523 : : #line 19345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9524 : : {
9525 : : operands[2] = lowpart_subreg (SImode, operands[0], QImode);
9526 : : operands[0] = lowpart_subreg (SImode, operands[0], QImode);
9527 : : }
9528 : : #undef DONE
9529 : : #undef FAIL
9530 : : static const uint8_t expand_encoding[] = {
9531 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
9532 : : 0x11, 0x4e, 0x11, 0x27, 0x81, 0xff, 0xff, 0xff,
9533 : : 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x01, 0x01,
9534 : : 0x01, 0x02, 0x05, 0x02, 0x11
9535 : : };
9536 : : return complete_seq (expand_encoding, operands);
9537 : : }
9538 : :
9539 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19507 */
9540 : : extern rtx_insn *gen_split_824 (rtx_insn *, rtx *);
9541 : : rtx_insn *
9542 : : gen_split_824 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9543 : : {
9544 : : if (dump_file)
9545 : : fprintf (dump_file, "Splitting with gen_split_824 (i386.md:19507)\n");
9546 : : start_sequence ();
9547 : : #define FAIL return (end_sequence (), nullptr)
9548 : : #define DONE return end_sequence ()
9549 : : #line 19528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9550 : : operands[1] = gen_lowpart (QImode, operands[1]);
9551 : : #undef DONE
9552 : : #undef FAIL
9553 : : static const uint8_t expand_encoding[] = {
9554 : : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9555 : : 0x00, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x01,
9556 : : 0x01, 0x01
9557 : : };
9558 : : return complete_seq (expand_encoding, operands);
9559 : : }
9560 : :
9561 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19603 */
9562 : : extern rtx_insn *gen_split_834 (rtx_insn *, rtx *);
9563 : : rtx_insn *
9564 : : gen_split_834 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9565 : : {
9566 : : if (dump_file)
9567 : : fprintf (dump_file, "Splitting with gen_split_834 (i386.md:19603)\n");
9568 : : start_sequence ();
9569 : : #define FAIL return (end_sequence (), nullptr)
9570 : : #define DONE return end_sequence ()
9571 : : #line 19634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9572 : : {
9573 : : operands[0] = shallow_copy_rtx (operands[0]);
9574 : : PUT_CODE (operands[0], GET_CODE (operands[0]) == NE ? LTU : GEU);
9575 : : operands[2] = gen_lowpart (QImode, operands[2]);
9576 : : }
9577 : : #undef DONE
9578 : : #undef FAIL
9579 : : static const uint8_t expand_encoding[] = {
9580 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9581 : : 0x00, 0x81, 0x06, 0x11, 0x01, 0x01, 0x27, 0x01,
9582 : : 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x02, 0x00,
9583 : : 0x30, 0x08, 0x11, 0x27, 0x00, 0x37, 0x00, 0x01,
9584 : : 0x04, 0x2f
9585 : : };
9586 : : return complete_seq (expand_encoding, operands);
9587 : : }
9588 : :
9589 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19687 */
9590 : : extern rtx_insn *gen_split_844 (rtx_insn *, rtx *);
9591 : : rtx_insn *
9592 : : gen_split_844 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9593 : : {
9594 : : if (dump_file)
9595 : : fprintf (dump_file, "Splitting with gen_split_844 (i386.md:19687)\n");
9596 : : start_sequence ();
9597 : : static const uint8_t expand_encoding[] = {
9598 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9599 : : 0x00, 0x81, 0x06, 0x11, 0x01, 0x01, 0x27, 0x01,
9600 : : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x63, 0x0f, 0x30,
9601 : : 0x08, 0x11, 0x27, 0x00
9602 : : };
9603 : : return complete_seq (expand_encoding, operands);
9604 : : }
9605 : :
9606 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19777 */
9607 : : extern rtx_insn *gen_split_852 (rtx_insn *, rtx *);
9608 : : rtx_insn *
9609 : : gen_split_852 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9610 : : {
9611 : : if (dump_file)
9612 : : fprintf (dump_file, "Splitting with gen_split_852 (i386.md:19777)\n");
9613 : : start_sequence ();
9614 : : static const uint8_t expand_encoding[] = {
9615 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
9616 : : 0x0f, 0x01, 0x02, 0x01, 0x03, 0x01, 0x02, 0x1f,
9617 : : 0x01, 0x00, 0x02, 0x01, 0x30, 0x08, 0x11, 0x27,
9618 : : 0x00
9619 : : };
9620 : : return complete_seq (expand_encoding, operands);
9621 : : }
9622 : :
9623 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19844 */
9624 : : extern rtx_insn *gen_split_859 (rtx_insn *, rtx *);
9625 : : rtx_insn *
9626 : : gen_split_859 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9627 : : {
9628 : : if (dump_file)
9629 : : fprintf (dump_file, "Splitting with gen_split_859 (i386.md:19844)\n");
9630 : : start_sequence ();
9631 : : #define FAIL return (end_sequence (), nullptr)
9632 : : #define DONE return end_sequence ()
9633 : : #line 19856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9634 : : {
9635 : : operands[1] = shallow_copy_rtx (operands[1]);
9636 : : PUT_MODE (operands[1], QImode);
9637 : : operands[2] = gen_lowpart (QImode, operands[0]);
9638 : : }
9639 : : #undef DONE
9640 : : #undef FAIL
9641 : : static const uint8_t expand_encoding[] = {
9642 : : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
9643 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x01, 0x02,
9644 : : 0x05, 0x02, 0x11
9645 : : };
9646 : : return complete_seq (expand_encoding, operands);
9647 : : }
9648 : :
9649 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20055 */
9650 : : extern rtx_insn *gen_split_869 (rtx_insn *, rtx *);
9651 : : rtx_insn *
9652 : : gen_split_869 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9653 : : {
9654 : : if (dump_file)
9655 : : fprintf (dump_file, "Splitting with gen_split_869 (i386.md:20055)\n");
9656 : : start_sequence ();
9657 : : static const uint8_t expand_encoding[] = {
9658 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
9659 : : 0x11, 0x01, 0x02, 0x01, 0x03, 0x01, 0x02, 0x1f,
9660 : : 0x2f, 0x39, 0x00, 0x02, 0x01, 0x30, 0x08, 0x11,
9661 : : 0x27, 0x00, 0x37, 0x00, 0x01, 0x00, 0x2f
9662 : : };
9663 : : return complete_seq (expand_encoding, operands);
9664 : : }
9665 : :
9666 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20271 */
9667 : : extern rtx_insn *gen_peephole2_189 (rtx_insn *, rtx *);
9668 : : rtx_insn *
9669 : : gen_peephole2_189 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9670 : : {
9671 : : if (dump_file)
9672 : : fprintf (dump_file, "Splitting with gen_peephole2_189 (i386.md:20271)\n");
9673 : : start_sequence ();
9674 : : #define FAIL return (end_sequence (), nullptr)
9675 : : #define DONE return end_sequence ()
9676 : : #line 20285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9677 : : {
9678 : : operands[5] = gen_lowpart (QImode, operands[3]);
9679 : : ix86_expand_clear (operands[3]);
9680 : : }
9681 : : #undef DONE
9682 : : #undef FAIL
9683 : : static const uint8_t expand_encoding[] = {
9684 : : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x00, 0x1f, 0x33,
9685 : : 0x00, 0x01, 0x05, 0x01, 0x02
9686 : : };
9687 : : return complete_seq (expand_encoding, operands);
9688 : : }
9689 : :
9690 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20528 */
9691 : : extern rtx_insn *gen_peephole2_196 (rtx_insn *, rtx *);
9692 : : rtx_insn *
9693 : : gen_peephole2_196 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9694 : : {
9695 : : if (dump_file)
9696 : : fprintf (dump_file, "Splitting with gen_peephole2_196 (i386.md:20528)\n");
9697 : : start_sequence ();
9698 : : static const uint8_t expand_encoding[] = {
9699 : : 0x01, 0x17, 0x00, 0x02, 0x22, 0x00, 0x36, 0x0f,
9700 : : 0x01, 0x01, 0x01, 0x03, 0x1a, 0x00, 0x01, 0x27,
9701 : : 0x00, 0x26
9702 : : };
9703 : : return complete_seq (expand_encoding, operands);
9704 : : }
9705 : :
9706 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20618 */
9707 : : extern rtx_insn *gen_peephole2_201 (rtx_insn *, rtx *);
9708 : : rtx_insn *
9709 : : gen_peephole2_201 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9710 : : {
9711 : : if (dump_file)
9712 : : fprintf (dump_file, "Splitting with gen_peephole2_201 (i386.md:20618)\n");
9713 : : start_sequence ();
9714 : : static const uint8_t expand_encoding[] = {
9715 : : 0x02, 0x1b, 0x00, 0x01, 0x27, 0x00, 0x01, 0x17,
9716 : : 0x00, 0x03, 0x22, 0x00, 0x36, 0x0f, 0x01, 0x01,
9717 : : 0x01, 0x03, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11,
9718 : : 0x30, 0x11, 0x07, 0x01, 0x04, 0x1a, 0x00, 0x01,
9719 : : 0x27, 0x00, 0x26
9720 : : };
9721 : : return complete_seq (expand_encoding, operands);
9722 : : }
9723 : :
9724 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20856 */
9725 : : rtx
9726 : : gen_untyped_call (const rtx operand0, const rtx operand1, const rtx operand2)
9727 : : {
9728 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9729 : : start_sequence ();
9730 : : {
9731 : : #define FAIL return (end_sequence (), nullptr)
9732 : : #define DONE return end_sequence ()
9733 : : #line 20862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9734 : : {
9735 : : int i;
9736 : :
9737 : : /* In order to give reg-stack an easier job in validating two
9738 : : coprocessor registers as containing a possible return value,
9739 : : simply pretend the untyped call returns a complex long double
9740 : : value.
9741 : :
9742 : : We can't use SSE_REGPARM_MAX here since callee is unprototyped
9743 : : and should have the default ABI. */
9744 : :
9745 : : ix86_expand_call ((TARGET_FLOAT_RETURNS_IN_80387
9746 : : ? gen_rtx_REG (XCmode, FIRST_FLOAT_REG) : NULL),
9747 : : operands[0], const0_rtx,
9748 : : GEN_INT ((TARGET_64BIT
9749 : : ? (ix86_abi == SYSV_ABI
9750 : : ? X86_64_SSE_REGPARM_MAX
9751 : : : X86_64_MS_SSE_REGPARM_MAX)
9752 : : : X86_32_SSE_REGPARM_MAX)
9753 : : - 1),
9754 : : NULL, false);
9755 : :
9756 : : for (i = 0; i < XVECLEN (operands[2], 0); i++)
9757 : : {
9758 : : rtx set = XVECEXP (operands[2], 0, i);
9759 : : emit_move_insn (SET_DEST (set), SET_SRC (set));
9760 : : }
9761 : :
9762 : : /* The optimizer does not know that the call sets the function value
9763 : : registers we stored in the result block. We avoid problems by
9764 : : claiming that all hard registers are used and clobbered at this
9765 : : point. */
9766 : : emit_insn (gen_blockage ());
9767 : :
9768 : : DONE;
9769 : : }
9770 : : #undef DONE
9771 : : #undef FAIL
9772 : : }
9773 : : static const uint8_t expand_encoding[] = {
9774 : : 0x01, 0x17, 0x00, 0x03, 0x22, 0x00, 0x01, 0x00,
9775 : : 0x27, 0x00, 0x01, 0x01, 0x01, 0x02
9776 : : };
9777 : : return complete_seq (expand_encoding, operands);
9778 : : }
9779 : :
9780 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21462 */
9781 : : extern rtx_insn *gen_split_881 (rtx_insn *, rtx *);
9782 : : rtx_insn *
9783 : : gen_split_881 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9784 : : {
9785 : : if (dump_file)
9786 : : fprintf (dump_file, "Splitting with gen_split_881 (i386.md:21462)\n");
9787 : : start_sequence ();
9788 : : #define FAIL return (end_sequence (), nullptr)
9789 : : #define DONE return end_sequence ()
9790 : : #line 21481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9791 : : ix86_expand_clear (operands[0]);
9792 : : #undef DONE
9793 : : #undef FAIL
9794 : : static const uint8_t expand_encoding[] = {
9795 : : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x49,
9796 : : 0x12, 0x32, 0x12, 0x81, 0x01, 0x11, 0x01, 0x01,
9797 : : 0x00, 0x27, 0x3f, 0x1a, 0x00, 0x01, 0x01, 0x00,
9798 : : 0x27, 0x05, 0x02, 0x11
9799 : : };
9800 : : return complete_seq (expand_encoding, operands);
9801 : : }
9802 : :
9803 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21751 */
9804 : : extern rtx_insn *gen_split_890 (rtx_insn *, rtx *);
9805 : : rtx_insn *
9806 : : gen_split_890 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9807 : : {
9808 : : if (dump_file)
9809 : : fprintf (dump_file, "Splitting with gen_split_890 (i386.md:21751)\n");
9810 : : start_sequence ();
9811 : : #define FAIL return (end_sequence (), nullptr)
9812 : : #define DONE return end_sequence ()
9813 : : #line 21772 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9814 : : {
9815 : : if (INTVAL (operands[2]) == 63)
9816 : : {
9817 : : emit_insn (gen_bsr_rex64_1 (operands[0], operands[1]));
9818 : : DONE;
9819 : : }
9820 : : operands[3] = gen_reg_rtx (DImode);
9821 : : operands[4] = GEN_INT (UINTVAL (operands[2]) - 63);
9822 : : }
9823 : : #undef DONE
9824 : : #undef FAIL
9825 : : static const uint8_t expand_encoding[] = {
9826 : : 0x02, 0x1f, 0x01, 0x03, 0x3c, 0x12, 0x27, 0x3f,
9827 : : 0x81, 0x00, 0x12, 0x01, 0x01, 0x1f, 0x01, 0x00,
9828 : : 0x3b, 0x12, 0x01, 0x03, 0x01, 0x04
9829 : : };
9830 : : return complete_seq (expand_encoding, operands);
9831 : : }
9832 : :
9833 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21852 */
9834 : : extern rtx_insn *gen_split_897 (rtx_insn *, rtx *);
9835 : : rtx_insn *
9836 : : gen_split_897 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9837 : : {
9838 : : if (dump_file)
9839 : : fprintf (dump_file, "Splitting with gen_split_897 (i386.md:21852)\n");
9840 : : start_sequence ();
9841 : : #define FAIL return (end_sequence (), nullptr)
9842 : : #define DONE return end_sequence ()
9843 : : #line 21867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9844 : : ix86_expand_clear (operands[0]);
9845 : : #undef DONE
9846 : : #undef FAIL
9847 : : static const uint8_t expand_encoding[] = {
9848 : : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x81,
9849 : : 0x00, 0x12, 0x01, 0x01, 0x1a, 0x00, 0x01, 0x01,
9850 : : 0x00, 0x27, 0x05, 0x02, 0x11
9851 : : };
9852 : : return complete_seq (expand_encoding, operands);
9853 : : }
9854 : :
9855 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22014 */
9856 : : extern rtx_insn *gen_split_907 (rtx_insn *, rtx *);
9857 : : rtx_insn *
9858 : : gen_split_907 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9859 : : {
9860 : : if (dump_file)
9861 : : fprintf (dump_file, "Splitting with gen_split_907 (i386.md:22014)\n");
9862 : : start_sequence ();
9863 : : #define FAIL return (end_sequence (), nullptr)
9864 : : #define DONE return end_sequence ()
9865 : : #line 22029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9866 : : ix86_expand_clear (operands[0]);
9867 : : #undef DONE
9868 : : #undef FAIL
9869 : : static const uint8_t expand_encoding[] = {
9870 : : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a,
9871 : : 0x12, 0x01, 0x01, 0x01, 0x61, 0x1a, 0x00, 0x01,
9872 : : 0x01, 0x00, 0x27, 0x05, 0x02, 0x11
9873 : : };
9874 : : return complete_seq (expand_encoding, operands);
9875 : : }
9876 : :
9877 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22280 */
9878 : : extern rtx_insn *gen_split_917 (rtx_insn *, rtx *);
9879 : : rtx_insn *
9880 : : gen_split_917 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9881 : : {
9882 : : if (dump_file)
9883 : : fprintf (dump_file, "Splitting with gen_split_917 (i386.md:22280)\n");
9884 : : start_sequence ();
9885 : : #define FAIL return (end_sequence (), nullptr)
9886 : : #define DONE return end_sequence ()
9887 : : #line 22311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9888 : : ix86_expand_clear (operands[0]);
9889 : : #undef DONE
9890 : : #undef FAIL
9891 : : static const uint8_t expand_encoding[] = {
9892 : : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x30, 0x0c, 0x11,
9893 : : 0x3a, 0x0c, 0x49, 0x12, 0x3b, 0x12, 0x01, 0x01,
9894 : : 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9895 : : 0xff, 0xff, 0x7f, 0x01, 0x01, 0x27, 0x00, 0x1f,
9896 : : 0x01, 0x00, 0x49, 0x12, 0x3b, 0x12, 0x01, 0x01,
9897 : : 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9898 : : 0xff, 0xff, 0x7f, 0x01, 0x01, 0x1a, 0x00, 0x01,
9899 : : 0x01, 0x00, 0x27
9900 : : };
9901 : : return complete_seq (expand_encoding, operands);
9902 : : }
9903 : :
9904 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22882 */
9905 : : rtx
9906 : : gen_bswapdi2 (const rtx operand0, const rtx operand1)
9907 : : {
9908 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
9909 : : start_sequence ();
9910 : : {
9911 : : #define FAIL return (end_sequence (), nullptr)
9912 : : #define DONE return end_sequence ()
9913 : : #line 22886 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9914 : : {
9915 : : if (!TARGET_MOVBE)
9916 : : operands[1] = force_reg (DImode, operands[1]);
9917 : : }
9918 : : #undef DONE
9919 : : #undef FAIL
9920 : : }
9921 : : static const uint8_t expand_encoding[] = {
9922 : : 0x01, 0x1f, 0x01, 0x00, 0x7d, 0x12, 0x01, 0x01
9923 : : };
9924 : : return complete_seq (expand_encoding, operands);
9925 : : }
9926 : :
9927 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23086 */
9928 : : rtx
9929 : : gen_paritysi2 (const rtx operand0, const rtx operand1)
9930 : : {
9931 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
9932 : : start_sequence ();
9933 : : {
9934 : : #define FAIL _Pragma ("GCC error \"paritysi2 cannot FAIL\"") (void)0
9935 : : #define DONE return end_sequence ()
9936 : : #line 23090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9937 : : {
9938 : : rtx scratch = gen_reg_rtx (QImode);
9939 : : rtx shift = gen_reg_rtx (SImode);
9940 : : rtx hipart = gen_reg_rtx (HImode);
9941 : : rtx lopart = gen_reg_rtx (HImode);
9942 : : rtx tmp = gen_reg_rtx (HImode);
9943 : :
9944 : : emit_insn (gen_lshrsi3 (shift, operands[1], GEN_INT (16)));
9945 : : emit_move_insn (hipart, gen_lowpart (HImode, shift));
9946 : : emit_move_insn (lopart, gen_lowpart (HImode, operands[1]));
9947 : : emit_insn (gen_xorhi3 (tmp, hipart, lopart));
9948 : :
9949 : : emit_insn (gen_parityhi2_cmp (tmp));
9950 : :
9951 : : ix86_expand_setcc (scratch, ORDERED,
9952 : : gen_rtx_REG (CCmode, FLAGS_REG), const0_rtx);
9953 : :
9954 : : emit_insn (gen_zero_extendqisi2 (operands[0], scratch));
9955 : : DONE;
9956 : : }
9957 : : #undef DONE
9958 : : #undef FAIL
9959 : : }
9960 : : static const uint8_t expand_encoding[] = {
9961 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x03, 0x11, 0x01,
9962 : : 0x01
9963 : : };
9964 : : return complete_seq (expand_encoding, operands);
9965 : : }
9966 : :
9967 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23507 */
9968 : : extern rtx_insn *gen_split_926 (rtx_insn *, rtx *);
9969 : : rtx_insn *
9970 : : gen_split_926 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9971 : : {
9972 : : if (dump_file)
9973 : : fprintf (dump_file, "Splitting with gen_split_926 (i386.md:23507)\n");
9974 : : start_sequence ();
9975 : : static const uint8_t expand_encoding[] = {
9976 : : 0x01, 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x1a,
9977 : : 0x11, 0x04, 0x01, 0x01, 0x01, 0x03, 0x01, 0x02,
9978 : : 0x30, 0x11, 0x07, 0x15, 0x21, 0x00, 0x01, 0x04,
9979 : : 0x21, 0x00, 0x01, 0x05, 0x05, 0x02, 0x11
9980 : : };
9981 : : return complete_seq (expand_encoding, operands);
9982 : : }
9983 : :
9984 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23609 */
9985 : : rtx
9986 : : gen_tls_dynamic_gnu2_32 (const rtx operand0, const rtx operand1, const rtx operand2)
9987 : : {
9988 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9989 : : start_sequence ();
9990 : : {
9991 : : #define FAIL return (end_sequence (), nullptr)
9992 : : #define DONE return end_sequence ()
9993 : : #line 23622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9994 : : {
9995 : : operands[3] = can_create_pseudo_p () ? gen_reg_rtx (Pmode) : operands[0];
9996 : : ix86_tls_descriptor_calls_expanded_in_cfun = true;
9997 : : }
9998 : : #undef DONE
9999 : : #undef FAIL
10000 : : }
10001 : : static const uint8_t expand_encoding[] = {
10002 : : 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x01, 0x02,
10003 : : 0x2e, 0x11, 0x1a, 0x11, 0x01, 0x01, 0x01, 0x17,
10004 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x11,
10005 : : 0x04, 0x01, 0x01, 0x01, 0x03, 0x01, 0x02, 0x30,
10006 : : 0x11, 0x07, 0x17, 0x05, 0x02, 0x11
10007 : : };
10008 : : return complete_seq (expand_encoding, operands);
10009 : : }
10010 : :
10011 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24195 */
10012 : : rtx
10013 : : gen_hypotdf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10014 : : {
10015 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10016 : : start_sequence ();
10017 : : {
10018 : : #define FAIL _Pragma ("GCC error \"hypotdf3 cannot FAIL\"") (void)0
10019 : : #define DONE return end_sequence ()
10020 : : #line 24204 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10021 : : {
10022 : : rtx op0 = gen_reg_rtx (XFmode);
10023 : : rtx op1 = gen_reg_rtx (XFmode);
10024 : : rtx op2 = gen_reg_rtx (XFmode);
10025 : :
10026 : : emit_insn (gen_extenddfxf2 (op2, operands[2]));
10027 : : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10028 : :
10029 : : emit_insn (gen_mulxf3 (op1, op1, op1));
10030 : : emit_insn (gen_mulxf3 (op2, op2, op2));
10031 : : emit_insn (gen_addxf3 (op0, op2, op1));
10032 : : emit_insn (gen_sqrtxf2 (op0, op0));
10033 : :
10034 : : emit_insn (gen_truncxfdf2 (operands[0], op0));
10035 : : DONE;
10036 : : }
10037 : : #undef DONE
10038 : : #undef FAIL
10039 : : }
10040 : : static const uint8_t expand_encoding[] = {
10041 : : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10042 : : 0x01, 0x20, 0x00, 0x01, 0x02
10043 : : };
10044 : : return complete_seq (expand_encoding, operands);
10045 : : }
10046 : :
10047 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24394 */
10048 : : rtx
10049 : : gen_cossf2 (const rtx operand0, const rtx operand1)
10050 : : {
10051 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10052 : : start_sequence ();
10053 : : {
10054 : : #define FAIL _Pragma ("GCC error \"cossf2 cannot FAIL\"") (void)0
10055 : : #define DONE return end_sequence ()
10056 : : #line 24402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10057 : : {
10058 : : rtx op0 = gen_reg_rtx (XFmode);
10059 : : rtx op1 = gen_reg_rtx (XFmode);
10060 : :
10061 : : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10062 : : emit_insn (gen_cosxf2 (op0, op1));
10063 : : emit_insn (gen_truncxfsf2 (operands[0], op0));
10064 : : DONE;
10065 : : }
10066 : : #undef DONE
10067 : : #undef FAIL
10068 : : }
10069 : : static const uint8_t expand_encoding[] = {
10070 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x01, 0x01,
10071 : : 0x01, 0x42
10072 : : };
10073 : : return complete_seq (expand_encoding, operands);
10074 : : }
10075 : :
10076 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24521 */
10077 : : rtx
10078 : : gen_atanxf2 (const rtx operand0, const rtx operand1)
10079 : : {
10080 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
10081 : : start_sequence ();
10082 : : {
10083 : : #define FAIL _Pragma ("GCC error \"atanxf2 cannot FAIL\"") (void)0
10084 : : #define DONE return end_sequence ()
10085 : : #line 24529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10086 : : operands[2] = force_reg (XFmode, CONST1_RTX (XFmode));
10087 : : #undef DONE
10088 : : #undef FAIL
10089 : : }
10090 : : static const uint8_t expand_encoding[] = {
10091 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10092 : : 0x2f, 0x02, 0x01, 0x02, 0x01, 0x01, 0x43, 0x21,
10093 : : 0x00, 0x31, 0x2f
10094 : : };
10095 : : return complete_seq (expand_encoding, operands);
10096 : : }
10097 : :
10098 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24607 */
10099 : : rtx
10100 : : gen_acosdf2 (const rtx operand0, const rtx operand1)
10101 : : {
10102 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10103 : : start_sequence ();
10104 : : {
10105 : : #define FAIL _Pragma ("GCC error \"acosdf2 cannot FAIL\"") (void)0
10106 : : #define DONE return end_sequence ()
10107 : : #line 24614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10108 : : {
10109 : : rtx op0 = gen_reg_rtx (XFmode);
10110 : : rtx op1 = gen_reg_rtx (XFmode);
10111 : :
10112 : : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10113 : : emit_insn (gen_acosxf2 (op0, op1));
10114 : : emit_insn (gen_truncxfdf2 (operands[0], op0));
10115 : : DONE;
10116 : : }
10117 : : #undef DONE
10118 : : #undef FAIL
10119 : : }
10120 : : static const uint8_t expand_encoding[] = {
10121 : : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10122 : : 0x01
10123 : : };
10124 : : return complete_seq (expand_encoding, operands);
10125 : : }
10126 : :
10127 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24718 */
10128 : : rtx
10129 : : gen_asinhsf2 (const rtx operand0, const rtx operand1)
10130 : : {
10131 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10132 : : start_sequence ();
10133 : : {
10134 : : #define FAIL _Pragma ("GCC error \"asinhsf2 cannot FAIL\"") (void)0
10135 : : #define DONE return end_sequence ()
10136 : : #line 24726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10137 : : {
10138 : : rtx op0 = gen_reg_rtx (XFmode);
10139 : : rtx op1 = gen_reg_rtx (XFmode);
10140 : :
10141 : : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10142 : : emit_insn (gen_asinhxf2 (op0, op1));
10143 : : emit_insn (gen_truncxfsf2 (operands[0], op0));
10144 : : DONE;
10145 : : }
10146 : : #undef DONE
10147 : : #undef FAIL
10148 : : }
10149 : : static const uint8_t expand_encoding[] = {
10150 : : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10151 : : 0x01
10152 : : };
10153 : : return complete_seq (expand_encoding, operands);
10154 : : }
10155 : :
10156 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24832 */
10157 : : rtx
10158 : : gen_log10xf2 (const rtx operand0, const rtx operand1)
10159 : : {
10160 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
10161 : : start_sequence ();
10162 : : {
10163 : : #define FAIL _Pragma ("GCC error \"log10xf2 cannot FAIL\"") (void)0
10164 : : #define DONE return end_sequence ()
10165 : : #line 24839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10166 : : {
10167 : : operands[2]
10168 : : = force_reg (XFmode, standard_80387_constant_rtx (3)); /* fldlg2 */
10169 : : }
10170 : : #undef DONE
10171 : : #undef FAIL
10172 : : }
10173 : : static const uint8_t expand_encoding[] = {
10174 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10175 : : 0x2f, 0x02, 0x01, 0x01, 0x01, 0x02, 0x44, 0x21,
10176 : : 0x00, 0x31, 0x2f
10177 : : };
10178 : : return complete_seq (expand_encoding, operands);
10179 : : }
10180 : :
10181 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24940 */
10182 : : rtx
10183 : : gen_logbxf2 (const rtx operand0, const rtx operand1)
10184 : : {
10185 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
10186 : : start_sequence ();
10187 : : {
10188 : : #define FAIL _Pragma ("GCC error \"logbxf2 cannot FAIL\"") (void)0
10189 : : #define DONE return end_sequence ()
10190 : : #line 24948 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10191 : : operands[2] = gen_reg_rtx (XFmode);
10192 : : #undef DONE
10193 : : #undef FAIL
10194 : : }
10195 : : static const uint8_t expand_encoding[] = {
10196 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x02, 0x1a,
10197 : : 0x2f, 0x01, 0x01, 0x01, 0x53, 0x1f, 0x01, 0x00,
10198 : : 0x1a, 0x2f, 0x01, 0x01, 0x01, 0x54
10199 : : };
10200 : : return complete_seq (expand_encoding, operands);
10201 : : }
10202 : :
10203 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25071 */
10204 : : rtx
10205 : : gen_expdf2 (const rtx operand0, const rtx operand1)
10206 : : {
10207 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10208 : : start_sequence ();
10209 : : {
10210 : : #define FAIL _Pragma ("GCC error \"expdf2 cannot FAIL\"") (void)0
10211 : : #define DONE return end_sequence ()
10212 : : #line 25078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10213 : : {
10214 : : rtx op0 = gen_reg_rtx (XFmode);
10215 : : rtx op1 = gen_reg_rtx (XFmode);
10216 : :
10217 : : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10218 : : emit_insn (gen_expxf2 (op0, op1));
10219 : : emit_insn (gen_truncxfdf2 (operands[0], op0));
10220 : : DONE;
10221 : : }
10222 : : #undef DONE
10223 : : #undef FAIL
10224 : : }
10225 : : static const uint8_t expand_encoding[] = {
10226 : : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10227 : : 0x01
10228 : : };
10229 : : return complete_seq (expand_encoding, operands);
10230 : : }
10231 : :
10232 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25207 */
10233 : : rtx
10234 : : gen_ldexpxf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10235 : : {
10236 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10237 : : start_sequence ();
10238 : : {
10239 : : #define FAIL _Pragma ("GCC error \"ldexpxf3 cannot FAIL\"") (void)0
10240 : : #define DONE return end_sequence ()
10241 : : #line 25213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10242 : : {
10243 : : rtx tmp1 = gen_reg_rtx (XFmode);
10244 : : rtx tmp2 = gen_reg_rtx (XFmode);
10245 : :
10246 : : emit_insn (gen_floatsixf2 (tmp1, operands[2]));
10247 : : emit_insn (gen_fscalexf4_i387 (operands[0], tmp2,
10248 : : operands[1], tmp1));
10249 : : DONE;
10250 : : }
10251 : : #undef DONE
10252 : : #undef FAIL
10253 : : }
10254 : : static const uint8_t expand_encoding[] = {
10255 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
10256 : : };
10257 : : return complete_seq (expand_encoding, operands);
10258 : : }
10259 : :
10260 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25353 */
10261 : : rtx
10262 : : gen_rinthf2 (const rtx operand0, const rtx operand1)
10263 : : {
10264 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10265 : : start_sequence ();
10266 : : {
10267 : : #define FAIL _Pragma ("GCC error \"rinthf2 cannot FAIL\"") (void)0
10268 : : #define DONE return end_sequence ()
10269 : : #line 25357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10270 : : {
10271 : : emit_insn (gen_sse4_1_roundhf2 (operands[0],
10272 : : operands[1],
10273 : : GEN_INT (ROUND_MXCSR)));
10274 : : DONE;
10275 : : }
10276 : : #undef DONE
10277 : : #undef FAIL
10278 : : }
10279 : : static const uint8_t expand_encoding[] = {
10280 : : 0x02, 0x01, 0x00, 0x01, 0x01
10281 : : };
10282 : : return complete_seq (expand_encoding, operands);
10283 : : }
10284 : :
10285 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25442 */
10286 : : rtx
10287 : : gen_roundsf2 (const rtx operand0, const rtx operand1)
10288 : : {
10289 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10290 : : start_sequence ();
10291 : : {
10292 : : #define FAIL _Pragma ("GCC error \"roundsf2 cannot FAIL\"") (void)0
10293 : : #define DONE return end_sequence ()
10294 : : #line 25452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10295 : : {
10296 : : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
10297 : : && !flag_trapping_math && !flag_rounding_math)
10298 : : {
10299 : : if (TARGET_SSE4_1)
10300 : : {
10301 : : operands[1] = force_reg (SFmode, operands[1]);
10302 : : ix86_expand_round_sse4 (operands[0], operands[1]);
10303 : : }
10304 : : else if (TARGET_64BIT || (SFmode != DFmode))
10305 : : ix86_expand_round (operands[0], operands[1]);
10306 : : else
10307 : : ix86_expand_rounddf_32 (operands[0], operands[1]);
10308 : : }
10309 : : else
10310 : : {
10311 : : operands[1] = force_reg (SFmode, operands[1]);
10312 : : ix86_emit_i387_round (operands[0], operands[1]);
10313 : : }
10314 : : DONE;
10315 : : }
10316 : : #undef DONE
10317 : : #undef FAIL
10318 : : }
10319 : : static const uint8_t expand_encoding[] = {
10320 : : 0x02, 0x01, 0x00, 0x01, 0x01
10321 : : };
10322 : : return complete_seq (expand_encoding, operands);
10323 : : }
10324 : :
10325 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25515 */
10326 : : rtx
10327 : : gen_lroundsfhi2 (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 \"lroundsfhi2 cannot FAIL\"") (void)0
10333 : : #define DONE return end_sequence ()
10334 : : #line 25526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10335 : : {
10336 : : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
10337 : : && HImode != HImode
10338 : : && ((HImode != DImode) || TARGET_64BIT)
10339 : : && !flag_trapping_math && !flag_rounding_math)
10340 : : ix86_expand_lround (operands[0], operands[1]);
10341 : : else
10342 : : ix86_emit_i387_round (operands[0], operands[1]);
10343 : : DONE;
10344 : : }
10345 : : #undef DONE
10346 : : #undef FAIL
10347 : : }
10348 : : static const uint8_t expand_encoding[] = {
10349 : : 0x02, 0x01, 0x00, 0x01, 0x01
10350 : : };
10351 : : return complete_seq (expand_encoding, operands);
10352 : : }
10353 : :
10354 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25573 */
10355 : : extern rtx_insn *gen_split_938 (rtx_insn *, rtx *);
10356 : : rtx_insn *
10357 : : gen_split_938 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10358 : : {
10359 : : if (dump_file)
10360 : : fprintf (dump_file, "Splitting with gen_split_938 (i386.md:25573)\n");
10361 : : start_sequence ();
10362 : : #define FAIL return (end_sequence (), nullptr)
10363 : : #define DONE return end_sequence ()
10364 : : #line 25584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10365 : : {
10366 : : ix86_optimize_mode_switching[I387_FLOOR] = 1;
10367 : :
10368 : : operands[2] = assign_386_stack_local (HImode, SLOT_CW_STORED);
10369 : : operands[3] = assign_386_stack_local (HImode, SLOT_CW_FLOOR);
10370 : :
10371 : : emit_insn (gen_frndintxf2_floor_i387 (operands[0], operands[1],
10372 : : operands[2], operands[3]));
10373 : : DONE;
10374 : : }
10375 : : #undef DONE
10376 : : #undef FAIL
10377 : : static const uint8_t expand_encoding[] = {
10378 : : 0x01, 0x27, 0x00
10379 : : };
10380 : : return complete_seq (expand_encoding, operands);
10381 : : }
10382 : :
10383 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25631 */
10384 : : rtx
10385 : : gen_floordf2 (const rtx operand0, const rtx operand1)
10386 : : {
10387 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10388 : : start_sequence ();
10389 : : {
10390 : : #define FAIL _Pragma ("GCC error \"floordf2 cannot FAIL\"") (void)0
10391 : : #define DONE return end_sequence ()
10392 : : #line 25644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10393 : : {
10394 : : if (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
10395 : : && (TARGET_SSE4_1
10396 : : || (ROUND_FLOOR != ROUND_ROUNDEVEN
10397 : : && (flag_fp_int_builtin_inexact || !flag_trapping_math))))
10398 : : {
10399 : : if (TARGET_SSE4_1)
10400 : : emit_insn (gen_sse4_1_rounddf2
10401 : : (operands[0], operands[1],
10402 : : GEN_INT (ROUND_FLOOR | ROUND_NO_EXC)));
10403 : : else if (TARGET_64BIT || (DFmode != DFmode))
10404 : : {
10405 : : if (ROUND_FLOOR == ROUND_FLOOR)
10406 : : ix86_expand_floorceil (operands[0], operands[1], true);
10407 : : else if (ROUND_FLOOR == ROUND_CEIL)
10408 : : ix86_expand_floorceil (operands[0], operands[1], false);
10409 : : else if (ROUND_FLOOR == ROUND_TRUNC)
10410 : : ix86_expand_trunc (operands[0], operands[1]);
10411 : : else
10412 : : gcc_unreachable ();
10413 : : }
10414 : : else
10415 : : {
10416 : : if (ROUND_FLOOR == ROUND_FLOOR)
10417 : : ix86_expand_floorceildf_32 (operands[0], operands[1], true);
10418 : : else if (ROUND_FLOOR == ROUND_CEIL)
10419 : : ix86_expand_floorceildf_32 (operands[0], operands[1], false);
10420 : : else if (ROUND_FLOOR == ROUND_TRUNC)
10421 : : ix86_expand_truncdf_32 (operands[0], operands[1]);
10422 : : else
10423 : : gcc_unreachable ();
10424 : : }
10425 : : }
10426 : : else
10427 : : {
10428 : : rtx op0 = gen_reg_rtx (XFmode);
10429 : : rtx op1 = gen_reg_rtx (XFmode);
10430 : :
10431 : : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10432 : : emit_insn (gen_frndintxf2_floor (op0, op1));
10433 : : emit_insn (gen_truncxfdf2_i387_noop_unspec (operands[0], op0));
10434 : : }
10435 : : DONE;
10436 : : }
10437 : : #undef DONE
10438 : : #undef FAIL
10439 : : }
10440 : : static const uint8_t expand_encoding[] = {
10441 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10442 : : 0x2e, 0x01, 0x01, 0x01, 0x4c, 0x05, 0x02, 0x11
10443 : : };
10444 : : return complete_seq (expand_encoding, operands);
10445 : : }
10446 : :
10447 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25751 */
10448 : : rtx
10449 : : gen_lfloorhfsi2 (const rtx operand0, const rtx operand1)
10450 : : {
10451 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10452 : : start_sequence ();
10453 : : {
10454 : : #define FAIL _Pragma ("GCC error \"lfloorhfsi2 cannot FAIL\"") (void)0
10455 : : #define DONE return end_sequence ()
10456 : : #line 25756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10457 : : {
10458 : : rtx tmp = gen_reg_rtx (HFmode);
10459 : : emit_insn (gen_sse4_1_roundhf2 (tmp, operands[1],
10460 : : GEN_INT (ROUND_FLOOR | ROUND_NO_EXC)));
10461 : : emit_insn (gen_fix_trunchfsi2 (operands[0], tmp));
10462 : : DONE;
10463 : : }
10464 : : #undef DONE
10465 : : #undef FAIL
10466 : : }
10467 : : static const uint8_t expand_encoding[] = {
10468 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
10469 : : 0x01, 0x4f
10470 : : };
10471 : : return complete_seq (expand_encoding, operands);
10472 : : }
10473 : :
10474 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25764 */
10475 : : rtx
10476 : : gen_lfloordfdi2 (const rtx operand0, const rtx operand1)
10477 : : {
10478 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10479 : : start_sequence ();
10480 : : {
10481 : : #define FAIL _Pragma ("GCC error \"lfloordfdi2 cannot FAIL\"") (void)0
10482 : : #define DONE return end_sequence ()
10483 : : #line 25771 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10484 : : {
10485 : : if (TARGET_SSE4_1)
10486 : : {
10487 : : rtx tmp = gen_reg_rtx (DFmode);
10488 : :
10489 : : emit_insn (gen_sse4_1_rounddf2
10490 : : (tmp, operands[1], GEN_INT (ROUND_FLOOR
10491 : : | ROUND_NO_EXC)));
10492 : : emit_insn (gen_fix_truncdfdi2
10493 : : (operands[0], tmp));
10494 : : }
10495 : : else if (ROUND_FLOOR == ROUND_FLOOR)
10496 : : ix86_expand_lfloorceil (operands[0], operands[1], true);
10497 : : else if (ROUND_FLOOR == ROUND_CEIL)
10498 : : ix86_expand_lfloorceil (operands[0], operands[1], false);
10499 : : else
10500 : : gcc_unreachable ();
10501 : :
10502 : : DONE;
10503 : : }
10504 : : #undef DONE
10505 : : #undef FAIL
10506 : : }
10507 : : static const uint8_t expand_encoding[] = {
10508 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10509 : : 0x12, 0x01, 0x01, 0x01, 0x4f, 0x05, 0x02, 0x11
10510 : : };
10511 : : return complete_seq (expand_encoding, operands);
10512 : : }
10513 : :
10514 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25978 */
10515 : : rtx
10516 : : gen_strmov_singleop (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
10517 : : {
10518 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
10519 : : start_sequence ();
10520 : : {
10521 : : #define FAIL return (end_sequence (), nullptr)
10522 : : #define DONE return end_sequence ()
10523 : : #line 25986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10524 : : {
10525 : : if (TARGET_CLD)
10526 : : ix86_optimize_mode_switching[X86_DIRFLAG] = 1;
10527 : : }
10528 : : #undef DONE
10529 : : #undef FAIL
10530 : : }
10531 : : static const uint8_t expand_encoding[] = {
10532 : : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x01, 0x01,
10533 : : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x1f, 0x01,
10534 : : 0x02, 0x01, 0x05
10535 : : };
10536 : : return complete_seq (expand_encoding, operands);
10537 : : }
10538 : :
10539 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26426 */
10540 : : rtx
10541 : : gen_cmpintqi (const rtx operand0)
10542 : : {
10543 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0 };
10544 : : start_sequence ();
10545 : : {
10546 : : #define FAIL return (end_sequence (), nullptr)
10547 : : #define DONE return end_sequence ()
10548 : : #line 26436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10549 : : {
10550 : : operands[1] = gen_reg_rtx (QImode);
10551 : : operands[2] = gen_reg_rtx (QImode);
10552 : : }
10553 : : #undef DONE
10554 : : #undef FAIL
10555 : : }
10556 : : static const uint8_t expand_encoding[] = {
10557 : : 0x03, 0x1f, 0x01, 0x01, 0x64, 0x0f, 0x30, 0x02,
10558 : : 0x11, 0x27, 0x00, 0x1f, 0x01, 0x02, 0x66, 0x0f,
10559 : : 0x30, 0x02, 0x11, 0x27, 0x00, 0x17, 0x00, 0x02,
10560 : : 0x1f, 0x01, 0x00, 0x3c, 0x0f, 0x01, 0x01, 0x01,
10561 : : 0x02, 0x05, 0x02, 0x11
10562 : : };
10563 : : return complete_seq (expand_encoding, operands);
10564 : : }
10565 : :
10566 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26581 */
10567 : : extern rtx_insn *gen_peephole2_217 (rtx_insn *, rtx *);
10568 : : rtx_insn *
10569 : : gen_peephole2_217 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10570 : : {
10571 : : if (dump_file)
10572 : : fprintf (dump_file, "Splitting with gen_peephole2_217 (i386.md:26581)\n");
10573 : : start_sequence ();
10574 : : static const uint8_t expand_encoding[] = {
10575 : : 0x01, 0x17, 0x00, 0x06, 0x1f, 0x30, 0x02, 0x11,
10576 : : 0x3a, 0x02, 0x36, 0x01, 0x01, 0x04, 0x36, 0x01,
10577 : : 0x01, 0x05, 0x20, 0x00, 0x01, 0x06, 0x20, 0x00,
10578 : : 0x01, 0x03, 0x21, 0x00, 0x01, 0x00, 0x21, 0x00,
10579 : : 0x01, 0x01, 0x21, 0x00, 0x01, 0x02
10580 : : };
10581 : : return complete_seq (expand_encoding, operands);
10582 : : }
10583 : :
10584 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26710 */
10585 : : rtx
10586 : : gen_x86_movsicc_0_m1_neg (const rtx operand0)
10587 : : {
10588 : : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
10589 : : static const uint8_t expand_encoding[] = {
10590 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3d, 0x11,
10591 : : 0x66, 0x11, 0x30, 0x08, 0x11, 0x27, 0x00, 0x05,
10592 : : 0x02, 0x11
10593 : : };
10594 : : return expand_rtx (expand_encoding, operands);
10595 : : }
10596 : :
10597 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26741 */
10598 : : extern rtx_insn *gen_split_954 (rtx_insn *, rtx *);
10599 : : rtx_insn *
10600 : : gen_split_954 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10601 : : {
10602 : : if (dump_file)
10603 : : fprintf (dump_file, "Splitting with gen_split_954 (i386.md:26741)\n");
10604 : : start_sequence ();
10605 : : static const uint8_t expand_encoding[] = {
10606 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
10607 : : 0x01, 0x01, 0x27, 0x00, 0x29, 0x1f, 0x01, 0x00,
10608 : : 0x3d, 0x10, 0x66, 0x10, 0x30, 0x08, 0x11, 0x27,
10609 : : 0x00
10610 : : };
10611 : : return complete_seq (expand_encoding, operands);
10612 : : }
10613 : :
10614 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26856 */
10615 : : extern rtx_insn *gen_peephole2_221 (rtx_insn *, rtx *);
10616 : : rtx_insn *
10617 : : gen_peephole2_221 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10618 : : {
10619 : : HARD_REG_SET _regs_allocated;
10620 : : CLEAR_HARD_REG_SET (_regs_allocated);
10621 : : if ((operands[4] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
10622 : : return NULL;
10623 : : if (dump_file)
10624 : : fprintf (dump_file, "Splitting with gen_peephole2_221 (i386.md:26856)\n");
10625 : : start_sequence ();
10626 : : #define FAIL return (end_sequence (), nullptr)
10627 : : #define DONE return end_sequence ()
10628 : : #line 26869 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10629 : : {
10630 : : if (MEM_P (operands[2]))
10631 : : {
10632 : : operands[5] = operands[2];
10633 : : operands[2] = operands[4];
10634 : : }
10635 : : else if (MEM_P (operands[3]))
10636 : : {
10637 : : operands[5] = operands[3];
10638 : : operands[3] = operands[4];
10639 : : }
10640 : : else
10641 : : gcc_unreachable ();
10642 : : }
10643 : : #undef DONE
10644 : : #undef FAIL
10645 : : static const uint8_t expand_encoding[] = {
10646 : : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x05, 0x1f, 0x01,
10647 : : 0x00, 0x39, 0x12, 0x01, 0x01, 0x01, 0x02, 0x01,
10648 : : 0x03
10649 : : };
10650 : : return complete_seq (expand_encoding, operands);
10651 : : }
10652 : :
10653 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27011 */
10654 : : rtx
10655 : : gen_movxfcc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10656 : : {
10657 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10658 : : start_sequence ();
10659 : : {
10660 : : #define FAIL return (end_sequence (), nullptr)
10661 : : #define DONE return end_sequence ()
10662 : : #line 27019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10663 : : if (ix86_expand_fp_movcc (operands)) DONE; else FAIL;
10664 : : #undef DONE
10665 : : #undef FAIL
10666 : : }
10667 : : static const uint8_t expand_encoding[] = {
10668 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x2f, 0x01, 0x01,
10669 : : 0x01, 0x02, 0x01, 0x03
10670 : : };
10671 : : return complete_seq (expand_encoding, operands);
10672 : : }
10673 : :
10674 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27266 */
10675 : : extern rtx_insn *gen_peephole2_231 (rtx_insn *, rtx *);
10676 : : rtx_insn *
10677 : : gen_peephole2_231 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10678 : : {
10679 : : if (dump_file)
10680 : : fprintf (dump_file, "Splitting with gen_peephole2_231 (i386.md:27266)\n");
10681 : : start_sequence ();
10682 : : #define FAIL return (end_sequence (), nullptr)
10683 : : #define DONE return end_sequence ()
10684 : : #line 27278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10685 : : {
10686 : : operands[4] = operands[0];
10687 : : operands[5] = operands[1];
10688 : :
10689 : : /* The % modifier is not operational anymore in peephole2's, so we have to
10690 : : swap the operands manually in the case of addition and multiplication. */
10691 : : if (COMMUTATIVE_ARITH_P (operands[2]))
10692 : : std::swap (operands[4], operands[5]);
10693 : : }
10694 : : #undef DONE
10695 : : #undef FAIL
10696 : : static const uint8_t expand_encoding[] = {
10697 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
10698 : : 0x00, 0x02, 0x02, 0x01, 0x05, 0x01, 0x04
10699 : : };
10700 : : return complete_seq (expand_encoding, operands);
10701 : : }
10702 : :
10703 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27324 */
10704 : : rtx
10705 : : gen_umaxqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
10706 : : {
10707 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10708 : : static const uint8_t expand_encoding[] = {
10709 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x55, 0x0f,
10710 : : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10711 : : };
10712 : : return expand_rtx (expand_encoding, operands);
10713 : : }
10714 : :
10715 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27324 */
10716 : : rtx
10717 : : gen_smaxdi3 (const rtx operand0, const rtx operand1, const rtx operand2)
10718 : : {
10719 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10720 : : static const uint8_t expand_encoding[] = {
10721 : : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x53, 0x12,
10722 : : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10723 : : };
10724 : : return expand_rtx (expand_encoding, operands);
10725 : : }
10726 : :
10727 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27334 */
10728 : : extern rtx_insn *gen_split_971 (rtx_insn *, rtx *);
10729 : : rtx_insn *
10730 : : gen_split_971 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10731 : : {
10732 : : if (dump_file)
10733 : : fprintf (dump_file, "Splitting with gen_split_971 (i386.md:27334)\n");
10734 : : start_sequence ();
10735 : : #define FAIL return (end_sequence (), nullptr)
10736 : : #define DONE return end_sequence ()
10737 : : #line 27352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10738 : : {
10739 : : operands[2] = force_reg (DImode, operands[2]);
10740 : :
10741 : : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
10742 : :
10743 : : rtx cmplo[2] = { operands[1], operands[2] };
10744 : : rtx cmphi[2] = { operands[4], operands[5] };
10745 : :
10746 : : enum rtx_code code = GEU;
10747 : :
10748 : : switch (code)
10749 : : {
10750 : : case LE: case LEU:
10751 : : std::swap (cmplo[0], cmplo[1]);
10752 : : std::swap (cmphi[0], cmphi[1]);
10753 : : code = swap_condition (code);
10754 : : /* FALLTHRU */
10755 : :
10756 : : case GE: case GEU:
10757 : : {
10758 : : bool uns = (code == GEU);
10759 : : rtx (*sbb_insn) (machine_mode, rtx, rtx, rtx)
10760 : : = uns ? gen_sub3_carry_ccc : gen_sub3_carry_ccgz;
10761 : :
10762 : : emit_insn (gen_cmp_1 (SImode, cmplo[0], cmplo[1]));
10763 : :
10764 : : rtx tmp = gen_rtx_SCRATCH (SImode);
10765 : : emit_insn (sbb_insn (SImode, tmp, cmphi[0], cmphi[1]));
10766 : :
10767 : : rtx flags = gen_rtx_REG (uns ? CCCmode : CCGZmode, FLAGS_REG);
10768 : : operands[6] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10769 : :
10770 : : break;
10771 : : }
10772 : :
10773 : : default:
10774 : : gcc_unreachable ();
10775 : : }
10776 : : }
10777 : : #undef DONE
10778 : : #undef FAIL
10779 : : static const uint8_t expand_encoding[] = {
10780 : : 0x02, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x06,
10781 : : 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x03, 0x39,
10782 : : 0x11, 0x01, 0x06, 0x01, 0x04, 0x01, 0x05
10783 : : };
10784 : : return complete_seq (expand_encoding, operands);
10785 : : }
10786 : :
10787 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27392 */
10788 : : extern rtx_insn *gen_split_981 (rtx_insn *, rtx *);
10789 : : rtx_insn *
10790 : : gen_split_981 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10791 : : {
10792 : : if (dump_file)
10793 : : fprintf (dump_file, "Splitting with gen_split_981 (i386.md:27392)\n");
10794 : : start_sequence ();
10795 : : #define FAIL return (end_sequence (), nullptr)
10796 : : #define DONE return end_sequence ()
10797 : : #line 27407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10798 : : {
10799 : : machine_mode mode = HImode;
10800 : : rtx cmp_op = operands[2];
10801 : :
10802 : : operands[2] = force_reg (mode, cmp_op);
10803 : :
10804 : : enum rtx_code code = GE;
10805 : :
10806 : : if (cmp_op == const1_rtx)
10807 : : {
10808 : : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10809 : : Convert umax (x, 1) into (x != 0 ? x : 1).
10810 : : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10811 : : cmp_op = const0_rtx;
10812 : : if (code == GE)
10813 : : code = GT;
10814 : : else if (code == GEU)
10815 : : code = NE;
10816 : : }
10817 : : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10818 : : else if (cmp_op == constm1_rtx && code == LE)
10819 : : {
10820 : : cmp_op = const0_rtx;
10821 : : code = LT;
10822 : : }
10823 : : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10824 : : else if (cmp_op == constm1_rtx && code == GE)
10825 : : cmp_op = const0_rtx;
10826 : : else if (cmp_op != const0_rtx)
10827 : : cmp_op = operands[2];
10828 : :
10829 : : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10830 : : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10831 : :
10832 : : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10833 : : emit_insn (gen_rtx_SET (flags, tmp));
10834 : :
10835 : : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10836 : : }
10837 : : #undef DONE
10838 : : #undef FAIL
10839 : : static const uint8_t expand_encoding[] = {
10840 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x10, 0x01, 0x03,
10841 : : 0x01, 0x01, 0x01, 0x02
10842 : : };
10843 : : return complete_seq (expand_encoding, operands);
10844 : : }
10845 : :
10846 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27392 */
10847 : : extern rtx_insn *gen_split_991 (rtx_insn *, rtx *);
10848 : : rtx_insn *
10849 : : gen_split_991 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10850 : : {
10851 : : if (dump_file)
10852 : : fprintf (dump_file, "Splitting with gen_split_991 (i386.md:27392)\n");
10853 : : start_sequence ();
10854 : : #define FAIL return (end_sequence (), nullptr)
10855 : : #define DONE return end_sequence ()
10856 : : #line 27407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10857 : : {
10858 : : machine_mode mode = DImode;
10859 : : rtx cmp_op = operands[2];
10860 : :
10861 : : operands[2] = force_reg (mode, cmp_op);
10862 : :
10863 : : enum rtx_code code = GEU;
10864 : :
10865 : : if (cmp_op == const1_rtx)
10866 : : {
10867 : : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10868 : : Convert umax (x, 1) into (x != 0 ? x : 1).
10869 : : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10870 : : cmp_op = const0_rtx;
10871 : : if (code == GE)
10872 : : code = GT;
10873 : : else if (code == GEU)
10874 : : code = NE;
10875 : : }
10876 : : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10877 : : else if (cmp_op == constm1_rtx && code == LE)
10878 : : {
10879 : : cmp_op = const0_rtx;
10880 : : code = LT;
10881 : : }
10882 : : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10883 : : else if (cmp_op == constm1_rtx && code == GE)
10884 : : cmp_op = const0_rtx;
10885 : : else if (cmp_op != const0_rtx)
10886 : : cmp_op = operands[2];
10887 : :
10888 : : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10889 : : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10890 : :
10891 : : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10892 : : emit_insn (gen_rtx_SET (flags, tmp));
10893 : :
10894 : : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10895 : : }
10896 : : #undef DONE
10897 : : #undef FAIL
10898 : : static const uint8_t expand_encoding[] = {
10899 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x01, 0x03,
10900 : : 0x01, 0x01, 0x01, 0x02
10901 : : };
10902 : : return complete_seq (expand_encoding, operands);
10903 : : }
10904 : :
10905 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27541 */
10906 : : extern rtx_insn *gen_peephole2_247 (rtx_insn *, rtx *);
10907 : : rtx_insn *
10908 : : gen_peephole2_247 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10909 : : {
10910 : : if (dump_file)
10911 : : fprintf (dump_file, "Splitting with gen_peephole2_247 (i386.md:27541)\n");
10912 : : start_sequence ();
10913 : : #define FAIL return (end_sequence (), nullptr)
10914 : : #define DONE return end_sequence ()
10915 : : #line 27548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10916 : : {
10917 : : emit_move_insn (operands[2], operands[0]);
10918 : : ix86_last_zero_store_uid
10919 : : = INSN_UID (emit_move_insn (operands[1], operands[0]));
10920 : : DONE;
10921 : : }
10922 : : #undef DONE
10923 : : #undef FAIL
10924 : : static const uint8_t expand_encoding[] = {
10925 : : 0x01, 0x27, 0x00
10926 : : };
10927 : : return complete_seq (expand_encoding, operands);
10928 : : }
10929 : :
10930 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27572 */
10931 : : extern rtx_insn *gen_split_1001 (rtx_insn *, rtx *);
10932 : : rtx_insn *
10933 : : gen_split_1001 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10934 : : {
10935 : : if (dump_file)
10936 : : fprintf (dump_file, "Splitting with gen_split_1001 (i386.md:27572)\n");
10937 : : start_sequence ();
10938 : : #define FAIL return (end_sequence (), nullptr)
10939 : : #define DONE return end_sequence ()
10940 : : #line 27595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10941 : : {
10942 : : operands[1] = force_reg (DImode, operands[1]);
10943 : : operands[3] = gen_reg_rtx (DImode);
10944 : : }
10945 : : #undef DONE
10946 : : #undef FAIL
10947 : : static const uint8_t expand_encoding[] = {
10948 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
10949 : : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
10950 : : 0x01, 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x12, 0x01,
10951 : : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x12,
10952 : : 0x63, 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01,
10953 : : 0x03, 0x01, 0x01
10954 : : };
10955 : : return complete_seq (expand_encoding, operands);
10956 : : }
10957 : :
10958 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27713 */
10959 : : extern rtx_insn *gen_peephole2_253 (rtx_insn *, rtx *);
10960 : : rtx_insn *
10961 : : gen_peephole2_253 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10962 : : {
10963 : : if (dump_file)
10964 : : fprintf (dump_file, "Splitting with gen_peephole2_253 (i386.md:27713)\n");
10965 : : start_sequence ();
10966 : : static const uint8_t expand_encoding[] = {
10967 : : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x3b,
10968 : : 0x11, 0x01, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11,
10969 : : 0x21, 0x00, 0x36, 0x01, 0x31, 0x00
10970 : : };
10971 : : return complete_seq (expand_encoding, operands);
10972 : : }
10973 : :
10974 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27747 */
10975 : : rtx
10976 : : gen_allocate_stack (const rtx operand0, const rtx operand1)
10977 : : {
10978 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10979 : : start_sequence ();
10980 : : {
10981 : : #define FAIL return (end_sequence (), nullptr)
10982 : : #define DONE return end_sequence ()
10983 : : #line 27751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10984 : : {
10985 : : rtx x;
10986 : :
10987 : : #ifndef CHECK_STACK_LIMIT
10988 : : #define CHECK_STACK_LIMIT 0
10989 : : #endif
10990 : :
10991 : : if (CHECK_STACK_LIMIT && CONST_INT_P (operands[1])
10992 : : && INTVAL (operands[1]) < CHECK_STACK_LIMIT)
10993 : : x = operands[1];
10994 : : else
10995 : : {
10996 : : x = copy_to_mode_reg (Pmode, operands[1]);
10997 : :
10998 : : emit_insn (gen_allocate_stack_worker_probe (Pmode, x, x));
10999 : : }
11000 : :
11001 : : x = expand_simple_binop (Pmode, MINUS, stack_pointer_rtx, x,
11002 : : stack_pointer_rtx, 0, OPTAB_DIRECT);
11003 : :
11004 : : if (x != stack_pointer_rtx)
11005 : : emit_move_insn (stack_pointer_rtx, x);
11006 : :
11007 : : emit_move_insn (operands[0], virtual_stack_dynamic_rtx);
11008 : : DONE;
11009 : : }
11010 : : #undef DONE
11011 : : #undef FAIL
11012 : : }
11013 : : static const uint8_t expand_encoding[] = {
11014 : : 0x02, 0x01, 0x00, 0x01, 0x01
11015 : : };
11016 : : return complete_seq (expand_encoding, operands);
11017 : : }
11018 : :
11019 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28093 */
11020 : : extern rtx_insn *gen_peephole2_266 (rtx_insn *, rtx *);
11021 : : rtx_insn *
11022 : : gen_peephole2_266 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11023 : : {
11024 : : if (dump_file)
11025 : : fprintf (dump_file, "Splitting with gen_peephole2_266 (i386.md:28093)\n");
11026 : : start_sequence ();
11027 : : static const uint8_t expand_encoding[] = {
11028 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
11029 : : 0x11, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
11030 : : 0x01, 0x04
11031 : : };
11032 : : return complete_seq (expand_encoding, operands);
11033 : : }
11034 : :
11035 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28220 */
11036 : : extern rtx_insn *gen_split_1012 (rtx_insn *, rtx *);
11037 : : rtx_insn *
11038 : : gen_split_1012 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11039 : : {
11040 : : if (dump_file)
11041 : : fprintf (dump_file, "Splitting with gen_split_1012 (i386.md:28220)\n");
11042 : : start_sequence ();
11043 : : #define FAIL return (end_sequence (), nullptr)
11044 : : #define DONE return end_sequence ()
11045 : : #line 28239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11046 : : {
11047 : : operands[4]
11048 : : = gen_int_mode (INTVAL (operands[4])
11049 : : & GET_MODE_MASK (GET_MODE (operands[1])), SImode);
11050 : : operands[1] = gen_lowpart (SImode, operands[1]);
11051 : : operands[3] = gen_lowpart (SImode, operands[3]);
11052 : : }
11053 : : #undef DONE
11054 : : #undef FAIL
11055 : : static const uint8_t expand_encoding[] = {
11056 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
11057 : : 0x02, 0x49, 0x11, 0x01, 0x03, 0x01, 0x04, 0x27,
11058 : : 0x00, 0x1f, 0x01, 0x01, 0x49, 0x11, 0x01, 0x03,
11059 : : 0x01, 0x04
11060 : : };
11061 : : return complete_seq (expand_encoding, operands);
11062 : : }
11063 : :
11064 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28360 */
11065 : : extern rtx_insn *gen_peephole2_281 (rtx_insn *, rtx *);
11066 : : rtx_insn *
11067 : : gen_peephole2_281 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11068 : : {
11069 : : HARD_REG_SET _regs_allocated;
11070 : : CLEAR_HARD_REG_SET (_regs_allocated);
11071 : : if ((operands[2] = peep2_find_free_register (0, 0, "q", QImode, &_regs_allocated)) == NULL_RTX)
11072 : : return NULL;
11073 : : if (dump_file)
11074 : : fprintf (dump_file, "Splitting with gen_peephole2_281 (i386.md:28360)\n");
11075 : : start_sequence ();
11076 : : static const uint8_t expand_encoding[] = {
11077 : : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
11078 : : 0x00, 0x01, 0x02
11079 : : };
11080 : : return complete_seq (expand_encoding, operands);
11081 : : }
11082 : :
11083 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28415 */
11084 : : extern rtx_insn *gen_peephole2_288 (rtx_insn *, rtx *);
11085 : : rtx_insn *
11086 : : gen_peephole2_288 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11087 : : {
11088 : : if (dump_file)
11089 : : fprintf (dump_file, "Splitting with gen_peephole2_288 (i386.md:28415)\n");
11090 : : start_sequence ();
11091 : : static const uint8_t expand_encoding[] = {
11092 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
11093 : : 0x01, 0x49, 0x11, 0x01, 0x02, 0x01, 0x03, 0x27,
11094 : : 0x00, 0x1f, 0x01, 0x02, 0x49, 0x11, 0x01, 0x02,
11095 : : 0x01, 0x03
11096 : : };
11097 : : return complete_seq (expand_encoding, operands);
11098 : : }
11099 : :
11100 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28500 */
11101 : : extern rtx_insn *gen_peephole2_298 (rtx_insn *, rtx *);
11102 : : rtx_insn *
11103 : : gen_peephole2_298 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11104 : : {
11105 : : HARD_REG_SET _regs_allocated;
11106 : : CLEAR_HARD_REG_SET (_regs_allocated);
11107 : : if ((operands[2] = peep2_find_free_register (0, 0, "r", HImode, &_regs_allocated)) == NULL_RTX)
11108 : : return NULL;
11109 : : if (dump_file)
11110 : : fprintf (dump_file, "Splitting with gen_peephole2_298 (i386.md:28500)\n");
11111 : : start_sequence ();
11112 : : static const uint8_t expand_encoding[] = {
11113 : : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
11114 : : 0x02, 0x1f, 0x01, 0x00, 0x02, 0x03, 0x01, 0x02,
11115 : : 0x01, 0x00, 0x05, 0x02, 0x11
11116 : : };
11117 : : return complete_seq (expand_encoding, operands);
11118 : : }
11119 : :
11120 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28575 */
11121 : : extern rtx_insn *gen_peephole2_308 (rtx_insn *, rtx *);
11122 : : rtx_insn *
11123 : : gen_peephole2_308 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11124 : : {
11125 : : HARD_REG_SET _regs_allocated;
11126 : : CLEAR_HARD_REG_SET (_regs_allocated);
11127 : : if ((operands[2] = peep2_find_free_register (0, 0, "r", HImode, &_regs_allocated)) == NULL_RTX)
11128 : : return NULL;
11129 : : if (dump_file)
11130 : : fprintf (dump_file, "Splitting with gen_peephole2_308 (i386.md:28575)\n");
11131 : : start_sequence ();
11132 : : static const uint8_t expand_encoding[] = {
11133 : : 0x03, 0x1f, 0x01, 0x02, 0x01, 0x00, 0x17, 0x00,
11134 : : 0x02, 0x1f, 0x01, 0x02, 0x02, 0x03, 0x01, 0x02,
11135 : : 0x01, 0x01, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x00,
11136 : : 0x01, 0x02
11137 : : };
11138 : : return complete_seq (expand_encoding, operands);
11139 : : }
11140 : :
11141 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28605 */
11142 : : extern rtx_insn *gen_peephole2_318 (rtx_insn *, rtx *);
11143 : : rtx_insn *
11144 : : gen_peephole2_318 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11145 : : {
11146 : : if (dump_file)
11147 : : fprintf (dump_file, "Splitting with gen_peephole2_318 (i386.md:28605)\n");
11148 : : start_sequence ();
11149 : : #define FAIL return (end_sequence (), nullptr)
11150 : : #define DONE return end_sequence ()
11151 : : #line 28628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11152 : : {
11153 : : operands[4] = SET_DEST (PATTERN (peep2_next_insn (3)));
11154 : : operands[5]
11155 : : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11156 : : copy_rtx (operands[1]),
11157 : : operands[2]);
11158 : : operands[6]
11159 : : = gen_rtx_COMPARE (GET_MODE (operands[4]),
11160 : : copy_rtx (operands[5]),
11161 : : const0_rtx);
11162 : : }
11163 : : #undef DONE
11164 : : #undef FAIL
11165 : : static const uint8_t expand_encoding[] = {
11166 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x01,
11167 : : 0x06, 0x1f, 0x01, 0x01, 0x01, 0x05
11168 : : };
11169 : : return complete_seq (expand_encoding, operands);
11170 : : }
11171 : :
11172 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28707 */
11173 : : extern rtx_insn *gen_peephole2_328 (rtx_insn *, rtx *);
11174 : : rtx_insn *
11175 : : gen_peephole2_328 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11176 : : {
11177 : : if (dump_file)
11178 : : fprintf (dump_file, "Splitting with gen_peephole2_328 (i386.md:28707)\n");
11179 : : start_sequence ();
11180 : : #define FAIL return (end_sequence (), nullptr)
11181 : : #define DONE return end_sequence ()
11182 : : #line 28730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11183 : : {
11184 : : operands[6] = SET_DEST (PATTERN (peep2_next_insn (3)));
11185 : : operands[7]
11186 : : = gen_rtx_PLUS (HImode,
11187 : : copy_rtx (operands[1]),
11188 : : gen_lowpart (HImode, operands[2]));
11189 : : operands[8]
11190 : : = gen_rtx_COMPARE (GET_MODE (operands[6]),
11191 : : copy_rtx (operands[7]),
11192 : : const0_rtx);
11193 : : }
11194 : : #undef DONE
11195 : : #undef FAIL
11196 : : static const uint8_t expand_encoding[] = {
11197 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x01,
11198 : : 0x08, 0x1f, 0x01, 0x01, 0x01, 0x07
11199 : : };
11200 : : return complete_seq (expand_encoding, operands);
11201 : : }
11202 : :
11203 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28772 */
11204 : : extern rtx_insn *gen_peephole2_338 (rtx_insn *, rtx *);
11205 : : rtx_insn *
11206 : : gen_peephole2_338 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11207 : : {
11208 : : if (dump_file)
11209 : : fprintf (dump_file, "Splitting with gen_peephole2_338 (i386.md:28772)\n");
11210 : : start_sequence ();
11211 : : #define FAIL return (end_sequence (), nullptr)
11212 : : #define DONE return end_sequence ()
11213 : : #line 28789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11214 : : {
11215 : : operands[3] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (0)), 0, 0));
11216 : : operands[4]
11217 : : = gen_rtx_fmt_ee (GET_CODE (operands[2]), GET_MODE (operands[2]),
11218 : : copy_rtx (operands[1]), operands[0]);
11219 : : operands[5]
11220 : : = gen_rtx_COMPARE (GET_MODE (operands[3]), copy_rtx (operands[4]),
11221 : : const0_rtx);
11222 : : }
11223 : : #undef DONE
11224 : : #undef FAIL
11225 : : static const uint8_t expand_encoding[] = {
11226 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x03, 0x01,
11227 : : 0x05, 0x1f, 0x01, 0x01, 0x01, 0x04
11228 : : };
11229 : : return complete_seq (expand_encoding, operands);
11230 : : }
11231 : :
11232 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28885 */
11233 : : extern rtx_insn *gen_peephole2_348 (rtx_insn *, rtx *);
11234 : : rtx_insn *
11235 : : gen_peephole2_348 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11236 : : {
11237 : : if (dump_file)
11238 : : fprintf (dump_file, "Splitting with gen_peephole2_348 (i386.md:28885)\n");
11239 : : start_sequence ();
11240 : : #define FAIL return (end_sequence (), nullptr)
11241 : : #define DONE return end_sequence ()
11242 : : #line 28911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11243 : : {
11244 : : operands[5] = SET_DEST (PATTERN (peep2_next_insn (4)));
11245 : : operands[6]
11246 : : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11247 : : copy_rtx (operands[1]),
11248 : : operands[2]);
11249 : : operands[7]
11250 : : = gen_rtx_COMPARE (GET_MODE (operands[5]),
11251 : : copy_rtx (operands[6]),
11252 : : const0_rtx);
11253 : : }
11254 : : #undef DONE
11255 : : #undef FAIL
11256 : : static const uint8_t expand_encoding[] = {
11257 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05, 0x01,
11258 : : 0x07, 0x1f, 0x01, 0x01, 0x01, 0x06
11259 : : };
11260 : : return complete_seq (expand_encoding, operands);
11261 : : }
11262 : :
11263 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28998 */
11264 : : extern rtx_insn *gen_peephole2_358 (rtx_insn *, rtx *);
11265 : : rtx_insn *
11266 : : gen_peephole2_358 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11267 : : {
11268 : : if (dump_file)
11269 : : fprintf (dump_file, "Splitting with gen_peephole2_358 (i386.md:28998)\n");
11270 : : start_sequence ();
11271 : : #define FAIL return (end_sequence (), nullptr)
11272 : : #define DONE return end_sequence ()
11273 : : #line 29032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11274 : : {
11275 : : operands[7] = SET_DEST (PATTERN (peep2_next_insn (4)));
11276 : : operands[8] = gen_rtx_XOR (DImode, copy_rtx (operands[1]),
11277 : : operands[2]);
11278 : : operands[9]
11279 : : = gen_rtx_COMPARE (GET_MODE (operands[7]),
11280 : : copy_rtx (operands[8]),
11281 : : const0_rtx);
11282 : : }
11283 : : #undef DONE
11284 : : #undef FAIL
11285 : : static const uint8_t expand_encoding[] = {
11286 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
11287 : : 0x09, 0x1f, 0x01, 0x01, 0x01, 0x08
11288 : : };
11289 : : return complete_seq (expand_encoding, operands);
11290 : : }
11291 : :
11292 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29174 */
11293 : : extern rtx_insn *gen_peephole2_368 (rtx_insn *, rtx *);
11294 : : rtx_insn *
11295 : : gen_peephole2_368 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11296 : : {
11297 : : if (dump_file)
11298 : : fprintf (dump_file, "Splitting with gen_peephole2_368 (i386.md:29174)\n");
11299 : : start_sequence ();
11300 : : #define FAIL return (end_sequence (), nullptr)
11301 : : #define DONE return end_sequence ()
11302 : : #line 29181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11303 : : {
11304 : : if (4 < GET_MODE_SIZE (SImode))
11305 : : operands[0] = gen_lowpart (SImode, operands[0]);
11306 : : }
11307 : : #undef DONE
11308 : : #undef FAIL
11309 : : static const uint8_t expand_encoding[] = {
11310 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
11311 : : 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11312 : : 0xff, 0x7f, 0x05, 0x02, 0x11
11313 : : };
11314 : : return complete_seq (expand_encoding, operands);
11315 : : }
11316 : :
11317 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29277 */
11318 : : extern rtx_insn *gen_peephole2_381 (rtx_insn *, rtx *);
11319 : : rtx_insn *
11320 : : gen_peephole2_381 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11321 : : {
11322 : : HARD_REG_SET _regs_allocated;
11323 : : CLEAR_HARD_REG_SET (_regs_allocated);
11324 : : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11325 : : return NULL;
11326 : : if (dump_file)
11327 : : fprintf (dump_file, "Splitting with gen_peephole2_381 (i386.md:29277)\n");
11328 : : start_sequence ();
11329 : : static const uint8_t expand_encoding[] = {
11330 : : 0x02, 0x21, 0x00, 0x01, 0x01, 0x17, 0x00, 0x02,
11331 : : 0x1f, 0x36, 0x11, 0x56, 0x12, 0x30, 0x12, 0x07,
11332 : : 0x01, 0x01, 0x21, 0x00, 0x36, 0x01, 0x31, 0x00
11333 : : };
11334 : : return complete_seq (expand_encoding, operands);
11335 : : }
11336 : :
11337 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29319 */
11338 : : extern rtx_insn *gen_peephole2_391 (rtx_insn *, rtx *);
11339 : : rtx_insn *
11340 : : gen_peephole2_391 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11341 : : {
11342 : : HARD_REG_SET _regs_allocated;
11343 : : CLEAR_HARD_REG_SET (_regs_allocated);
11344 : : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11345 : : return NULL;
11346 : : if (dump_file)
11347 : : fprintf (dump_file, "Splitting with gen_peephole2_391 (i386.md:29319)\n");
11348 : : start_sequence ();
11349 : : static const uint8_t expand_encoding[] = {
11350 : : 0x03, 0x21, 0x00, 0x01, 0x01, 0x1f, 0x36, 0x11,
11351 : : 0x56, 0x11, 0x30, 0x11, 0x07, 0x01, 0x01, 0x1f,
11352 : : 0x36, 0x11, 0x56, 0x11, 0x30, 0x11, 0x07, 0x01,
11353 : : 0x01
11354 : : };
11355 : : return complete_seq (expand_encoding, operands);
11356 : : }
11357 : :
11358 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29347 */
11359 : : extern rtx_insn *gen_peephole2_401 (rtx_insn *, rtx *);
11360 : : rtx_insn *
11361 : : gen_peephole2_401 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11362 : : {
11363 : : HARD_REG_SET _regs_allocated;
11364 : : CLEAR_HARD_REG_SET (_regs_allocated);
11365 : : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11366 : : return NULL;
11367 : : if ((operands[2] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11368 : : return NULL;
11369 : : if (dump_file)
11370 : : fprintf (dump_file, "Splitting with gen_peephole2_401 (i386.md:29347)\n");
11371 : : start_sequence ();
11372 : : static const uint8_t expand_encoding[] = {
11373 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x36,
11374 : : 0x11, 0x59, 0x12, 0x30, 0x12, 0x07, 0x21, 0x00,
11375 : : 0x36, 0x01, 0x31, 0x00, 0x1f, 0x01, 0x02, 0x36,
11376 : : 0x11, 0x59, 0x12, 0x30, 0x12, 0x07
11377 : : };
11378 : : return complete_seq (expand_encoding, operands);
11379 : : }
11380 : :
11381 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29386 */
11382 : : extern rtx_insn *gen_peephole2_412 (rtx_insn *, rtx *);
11383 : : rtx_insn *
11384 : : gen_peephole2_412 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11385 : : {
11386 : : HARD_REG_SET _regs_allocated;
11387 : : CLEAR_HARD_REG_SET (_regs_allocated);
11388 : : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11389 : : return NULL;
11390 : : if ((operands[2] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11391 : : return NULL;
11392 : : if (dump_file)
11393 : : fprintf (dump_file, "Splitting with gen_peephole2_412 (i386.md:29386)\n");
11394 : : start_sequence ();
11395 : : static const uint8_t expand_encoding[] = {
11396 : : 0x02, 0x1f, 0x01, 0x01, 0x36, 0x12, 0x59, 0x11,
11397 : : 0x30, 0x11, 0x07, 0x1f, 0x01, 0x02, 0x36, 0x12,
11398 : : 0x59, 0x11, 0x30, 0x11, 0x07
11399 : : };
11400 : : return complete_seq (expand_encoding, operands);
11401 : : }
11402 : :
11403 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29440 */
11404 : : extern rtx_insn *gen_peephole2_423 (rtx_insn *, rtx *);
11405 : : rtx_insn *
11406 : : gen_peephole2_423 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11407 : : {
11408 : : if (dump_file)
11409 : : fprintf (dump_file, "Splitting with gen_peephole2_423 (i386.md:29440)\n");
11410 : : start_sequence ();
11411 : : #define FAIL return (end_sequence (), nullptr)
11412 : : #define DONE return end_sequence ()
11413 : : #line 29452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11414 : : operands[2] = GEN_INT (INTVAL (operands[2]) - 1);
11415 : : #undef DONE
11416 : : #undef FAIL
11417 : : static const uint8_t expand_encoding[] = {
11418 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1f, 0x01,
11419 : : 0x00, 0x3b, 0x12, 0x3e, 0x12, 0x01, 0x00, 0x01,
11420 : : 0x02, 0x01, 0x00
11421 : : };
11422 : : return complete_seq (expand_encoding, operands);
11423 : : }
11424 : :
11425 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29744 */
11426 : : rtx
11427 : : gen_crc_revsisi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11428 : : {
11429 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11430 : : start_sequence ();
11431 : : {
11432 : : #define FAIL _Pragma ("GCC error \"crc_revsisi4 cannot FAIL\"") (void)0
11433 : : #define DONE return end_sequence ()
11434 : : #line 29750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11435 : : {
11436 : : /* crc32 uses iSCSI polynomial */
11437 : : if (INTVAL (operands[3]) == 0x1EDC6F41)
11438 : : emit_insn (gen_sse4_2_crc32si (operands[0], operands[1], operands[2]));
11439 : : else
11440 : : expand_reversed_crc_table_based (operands[0], operands[1], operands[2],
11441 : : operands[3], SImode,
11442 : : generate_reflecting_code_standard);
11443 : : DONE;
11444 : : }
11445 : : #undef DONE
11446 : : #undef FAIL
11447 : : }
11448 : : static const uint8_t expand_encoding[] = {
11449 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
11450 : : 0x03
11451 : : };
11452 : : return complete_seq (expand_encoding, operands);
11453 : : }
11454 : :
11455 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30660 */
11456 : : rtx
11457 : : gen_spaceshipxf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11458 : : {
11459 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11460 : : start_sequence ();
11461 : : {
11462 : : #define FAIL return (end_sequence (), nullptr)
11463 : : #define DONE return end_sequence ()
11464 : : #line 30666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11465 : : {
11466 : : ix86_expand_fp_spaceship (operands[0], operands[1], operands[2],
11467 : : operands[3]);
11468 : : DONE;
11469 : : }
11470 : : #undef DONE
11471 : : #undef FAIL
11472 : : }
11473 : : static const uint8_t expand_encoding[] = {
11474 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
11475 : : 0x03
11476 : : };
11477 : : return complete_seq (expand_encoding, operands);
11478 : : }
11479 : :
11480 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:177 */
11481 : : rtx
11482 : : gen_movv2sf (const rtx operand0, const rtx operand1)
11483 : : {
11484 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11485 : : start_sequence ();
11486 : : {
11487 : : #define FAIL return (end_sequence (), nullptr)
11488 : : #define DONE return end_sequence ()
11489 : : #line 181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11490 : : {
11491 : : ix86_expand_vector_move (V2SFmode, operands);
11492 : : DONE;
11493 : : }
11494 : : #undef DONE
11495 : : #undef FAIL
11496 : : }
11497 : : static const uint8_t expand_encoding[] = {
11498 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11499 : : };
11500 : : return complete_seq (expand_encoding, operands);
11501 : : }
11502 : :
11503 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:309 */
11504 : : extern rtx_insn *gen_split_1023 (rtx_insn *, rtx *);
11505 : : rtx_insn *
11506 : : gen_split_1023 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11507 : : {
11508 : : if (dump_file)
11509 : : fprintf (dump_file, "Splitting with gen_split_1023 (mmx.md:309)\n");
11510 : : start_sequence ();
11511 : : #define FAIL return (end_sequence (), nullptr)
11512 : : #define DONE return end_sequence ()
11513 : : #line 314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11514 : : ix86_split_long_move (operands); DONE;
11515 : : #undef DONE
11516 : : #undef FAIL
11517 : : static const uint8_t expand_encoding[] = {
11518 : : 0x01, 0x27, 0x00
11519 : : };
11520 : : return complete_seq (expand_encoding, operands);
11521 : : }
11522 : :
11523 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:323 */
11524 : : rtx
11525 : : gen_movmisalignv4hi (const rtx operand0, const rtx operand1)
11526 : : {
11527 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11528 : : start_sequence ();
11529 : : {
11530 : : #define FAIL return (end_sequence (), nullptr)
11531 : : #define DONE return end_sequence ()
11532 : : #line 327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11533 : : {
11534 : : ix86_expand_vector_move (V4HImode, operands);
11535 : : DONE;
11536 : : }
11537 : : #undef DONE
11538 : : #undef FAIL
11539 : : }
11540 : : static const uint8_t expand_encoding[] = {
11541 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11542 : : };
11543 : : return complete_seq (expand_encoding, operands);
11544 : : }
11545 : :
11546 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:332 */
11547 : : rtx
11548 : : gen_movv1si (const rtx operand0, const rtx operand1)
11549 : : {
11550 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11551 : : start_sequence ();
11552 : : {
11553 : : #define FAIL return (end_sequence (), nullptr)
11554 : : #define DONE return end_sequence ()
11555 : : #line 336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11556 : : {
11557 : : ix86_expand_vector_move (V1SImode, operands);
11558 : : DONE;
11559 : : }
11560 : : #undef DONE
11561 : : #undef FAIL
11562 : : }
11563 : : static const uint8_t expand_encoding[] = {
11564 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11565 : : };
11566 : : return complete_seq (expand_encoding, operands);
11567 : : }
11568 : :
11569 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:423 */
11570 : : extern rtx_insn *gen_split_1038 (rtx_insn *, rtx *);
11571 : : rtx_insn *
11572 : : gen_split_1038 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11573 : : {
11574 : : if (dump_file)
11575 : : fprintf (dump_file, "Splitting with gen_split_1038 (mmx.md:423)\n");
11576 : : start_sequence ();
11577 : : #define FAIL return (end_sequence (), nullptr)
11578 : : #define DONE return end_sequence ()
11579 : : #line 429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11580 : : {
11581 : : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (V1SImode)));
11582 : : /* Preserve memory attributes. */
11583 : : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
11584 : : }
11585 : : #undef DONE
11586 : : #undef FAIL
11587 : : static const uint8_t expand_encoding[] = {
11588 : : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
11589 : : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
11590 : : 0x01
11591 : : };
11592 : : return complete_seq (expand_encoding, operands);
11593 : : }
11594 : :
11595 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11596 : : extern rtx_insn *gen_split_1042 (rtx_insn *, rtx *);
11597 : : rtx_insn *
11598 : : gen_split_1042 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11599 : : {
11600 : : if (dump_file)
11601 : : fprintf (dump_file, "Splitting with gen_split_1042 (mmx.md:577)\n");
11602 : : start_sequence ();
11603 : : #define FAIL return (end_sequence (), nullptr)
11604 : : #define DONE return end_sequence ()
11605 : : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11606 : : {
11607 : : rtx op1 = avoid_constant_pool_reference (operands[1]);
11608 : :
11609 : : if (!CONST_VECTOR_P (op1))
11610 : : FAIL;
11611 : :
11612 : : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V4QImode);
11613 : :
11614 : : operands[0] = lowpart_subreg (SImode, operands[0], V4QImode);
11615 : : operands[1] = GEN_INT (val);
11616 : : }
11617 : : #undef DONE
11618 : : #undef FAIL
11619 : : static const uint8_t expand_encoding[] = {
11620 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11621 : : };
11622 : : return complete_seq (expand_encoding, operands);
11623 : : }
11624 : :
11625 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11626 : : extern rtx_insn *gen_split_1052 (rtx_insn *, rtx *);
11627 : : rtx_insn *
11628 : : gen_split_1052 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11629 : : {
11630 : : if (dump_file)
11631 : : fprintf (dump_file, "Splitting with gen_split_1052 (mmx.md:577)\n");
11632 : : start_sequence ();
11633 : : #define FAIL return (end_sequence (), nullptr)
11634 : : #define DONE return end_sequence ()
11635 : : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11636 : : {
11637 : : rtx op1 = avoid_constant_pool_reference (operands[1]);
11638 : :
11639 : : if (!CONST_VECTOR_P (op1))
11640 : : FAIL;
11641 : :
11642 : : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V2SFmode);
11643 : :
11644 : : operands[0] = lowpart_subreg (DImode, operands[0], V2SFmode);
11645 : : operands[1] = GEN_INT (val);
11646 : : }
11647 : : #undef DONE
11648 : : #undef FAIL
11649 : : static const uint8_t expand_encoding[] = {
11650 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11651 : : };
11652 : : return complete_seq (expand_encoding, operands);
11653 : : }
11654 : :
11655 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:598 */
11656 : : extern rtx_insn *gen_split_1063 (rtx_insn *, rtx *);
11657 : : rtx_insn *
11658 : : gen_split_1063 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11659 : : {
11660 : : if (dump_file)
11661 : : fprintf (dump_file, "Splitting with gen_split_1063 (mmx.md:598)\n");
11662 : : start_sequence ();
11663 : : #define FAIL return (end_sequence (), nullptr)
11664 : : #define DONE return end_sequence ()
11665 : : #line 605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11666 : : {
11667 : : rtx op1 = operands[1];
11668 : : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V4BFmode);
11669 : :
11670 : : operands[0] = adjust_address (operands[0], DImode, 0);
11671 : : operands[1] = GEN_INT (val);
11672 : : }
11673 : : #undef DONE
11674 : : #undef FAIL
11675 : : static const uint8_t expand_encoding[] = {
11676 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11677 : : };
11678 : : return complete_seq (expand_encoding, operands);
11679 : : }
11680 : :
11681 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:669 */
11682 : : rtx
11683 : : gen_movq_v4hi_to_sse (const rtx operand0, const rtx operand1)
11684 : : {
11685 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
11686 : : start_sequence ();
11687 : : {
11688 : : #define FAIL return (end_sequence (), nullptr)
11689 : : #define DONE return end_sequence ()
11690 : : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11691 : : {
11692 : : if (V4HImode != V2SImode
11693 : : && !flag_trapping_math)
11694 : : {
11695 : : rtx op1 = force_reg (V4HImode, operands[1]);
11696 : : emit_move_insn (operands[0], lowpart_subreg (V8HImode,
11697 : : op1, V4HImode));
11698 : : DONE;
11699 : : }
11700 : :
11701 : : operands[2] = CONST0_RTX (V4HImode);
11702 : : }
11703 : : #undef DONE
11704 : : #undef FAIL
11705 : : }
11706 : : static const uint8_t expand_encoding[] = {
11707 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x01,
11708 : : 0x01, 0x01, 0x02
11709 : : };
11710 : : return complete_seq (expand_encoding, operands);
11711 : : }
11712 : :
11713 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:804 */
11714 : : rtx
11715 : : gen_mmx_mulv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11716 : : {
11717 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11718 : : start_sequence ();
11719 : : {
11720 : : #define FAIL return (end_sequence (), nullptr)
11721 : : #define DONE return end_sequence ()
11722 : : #line 811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11723 : : ix86_fixup_binary_operands_no_copy (MULT, V2SFmode, operands);
11724 : : #undef DONE
11725 : : #undef FAIL
11726 : : }
11727 : : static const uint8_t expand_encoding[] = {
11728 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e,
11729 : : 0x67, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
11730 : : 0x27, 0x00, 0x6f
11731 : : };
11732 : : return complete_seq (expand_encoding, operands);
11733 : : }
11734 : :
11735 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1072 */
11736 : : extern rtx_insn *gen_split_1073 (rtx_insn *, rtx *);
11737 : : rtx_insn *
11738 : : gen_split_1073 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11739 : : {
11740 : : if (dump_file)
11741 : : fprintf (dump_file, "Splitting with gen_split_1073 (mmx.md:1072)\n");
11742 : : start_sequence ();
11743 : : #define FAIL return (end_sequence (), nullptr)
11744 : : #define DONE return end_sequence ()
11745 : : #line 1086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11746 : : {
11747 : : rtx op1 = gen_reg_rtx (V4SFmode);
11748 : : rtx op0 = gen_reg_rtx (V4SFmode);
11749 : :
11750 : : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11751 : :
11752 : : emit_insn (gen_sse3_hsubv4sf3 (op0, op1, op1));
11753 : :
11754 : : emit_move_insn (operands[0], lowpart_subreg (SFmode, op0, V4SFmode));
11755 : : DONE;
11756 : : }
11757 : : #undef DONE
11758 : : #undef FAIL
11759 : : static const uint8_t expand_encoding[] = {
11760 : : 0x01, 0x27, 0x00
11761 : : };
11762 : : return complete_seq (expand_encoding, operands);
11763 : : }
11764 : :
11765 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1463 */
11766 : : rtx
11767 : : gen_fmsv2sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11768 : : {
11769 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11770 : : start_sequence ();
11771 : : {
11772 : : #define FAIL _Pragma ("GCC error \"fmsv2sf4 cannot FAIL\"") (void)0
11773 : : #define DONE return end_sequence ()
11774 : : #line 1472 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11775 : : {
11776 : : rtx op3 = gen_reg_rtx (V4SFmode);
11777 : : rtx op2 = gen_reg_rtx (V4SFmode);
11778 : : rtx op1 = gen_reg_rtx (V4SFmode);
11779 : : rtx op0 = gen_reg_rtx (V4SFmode);
11780 : :
11781 : : emit_insn (gen_movq_v2sf_to_sse (op3, operands[3]));
11782 : : emit_insn (gen_movq_v2sf_to_sse (op2, operands[2]));
11783 : : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11784 : :
11785 : : emit_insn (gen_fmsv4sf4 (op0, op1, op2, op3));
11786 : :
11787 : : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11788 : : DONE;
11789 : : }
11790 : : #undef DONE
11791 : : #undef FAIL
11792 : : }
11793 : : static const uint8_t expand_encoding[] = {
11794 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x67, 0x01,
11795 : : 0x01, 0x01, 0x02, 0x3d, 0x67, 0x01, 0x03
11796 : : };
11797 : : return complete_seq (expand_encoding, operands);
11798 : : }
11799 : :
11800 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1801 */
11801 : : extern rtx_insn *gen_split_1076 (rtx_insn *, rtx *);
11802 : : rtx_insn *
11803 : : gen_split_1076 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11804 : : {
11805 : : if (dump_file)
11806 : : fprintf (dump_file, "Splitting with gen_split_1076 (mmx.md:1801)\n");
11807 : : start_sequence ();
11808 : : #define FAIL return (end_sequence (), nullptr)
11809 : : #define DONE return end_sequence ()
11810 : : #line 1811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11811 : : operands[1] = gen_lowpart (SFmode, operands[1]);
11812 : : #undef DONE
11813 : : #undef FAIL
11814 : : static const uint8_t expand_encoding[] = {
11815 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11816 : : };
11817 : : return complete_seq (expand_encoding, operands);
11818 : : }
11819 : :
11820 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1964 */
11821 : : rtx
11822 : : gen_floorv2sf2 (const rtx operand0, const rtx operand1)
11823 : : {
11824 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11825 : : start_sequence ();
11826 : : {
11827 : : #define FAIL _Pragma ("GCC error \"floorv2sf2 cannot FAIL\"") (void)0
11828 : : #define DONE return end_sequence ()
11829 : : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11830 : : {
11831 : : rtx op1 = gen_reg_rtx (V4SFmode);
11832 : : rtx op0 = gen_reg_rtx (V4SFmode);
11833 : :
11834 : : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11835 : :
11836 : : emit_insn (gen_floorv4sf2 (op0, op1));
11837 : :
11838 : : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11839 : : DONE;
11840 : : }
11841 : : #undef DONE
11842 : : #undef FAIL
11843 : : }
11844 : : static const uint8_t expand_encoding[] = {
11845 : : 0x02, 0x01, 0x00, 0x01, 0x01
11846 : : };
11847 : : return complete_seq (expand_encoding, operands);
11848 : : }
11849 : :
11850 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2109 */
11851 : : rtx
11852 : : gen_movd_v2bf_to_sse_reg (const rtx operand0, const rtx operand1, const rtx operand2)
11853 : : {
11854 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11855 : : static const uint8_t expand_encoding[] = {
11856 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x0c,
11857 : : 0x69, 0x01, 0x01, 0x01, 0x02, 0x27, 0x03
11858 : : };
11859 : : return expand_rtx (expand_encoding, operands);
11860 : : }
11861 : :
11862 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2118 */
11863 : : rtx
11864 : : gen_subv4hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11865 : : {
11866 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11867 : : start_sequence ();
11868 : : {
11869 : : #define FAIL return (end_sequence (), nullptr)
11870 : : #define DONE return end_sequence ()
11871 : : #line 2124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11872 : : {
11873 : : rtx op2 = gen_reg_rtx (V8HFmode);
11874 : : rtx op1 = gen_reg_rtx (V8HFmode);
11875 : : rtx op0 = gen_reg_rtx (V8HFmode);
11876 : :
11877 : : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
11878 : : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
11879 : : emit_insn (gen_subv8hf3 (op0, op1, op2));
11880 : :
11881 : : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
11882 : : DONE;
11883 : : }
11884 : : #undef DONE
11885 : : #undef FAIL
11886 : : }
11887 : : static const uint8_t expand_encoding[] = {
11888 : : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x66, 0x01, 0x01,
11889 : : 0x01, 0x02
11890 : : };
11891 : : return complete_seq (expand_encoding, operands);
11892 : : }
11893 : :
11894 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2157 */
11895 : : rtx
11896 : : gen_divv2hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11897 : : {
11898 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11899 : : start_sequence ();
11900 : : {
11901 : : #define FAIL return (end_sequence (), nullptr)
11902 : : #define DONE return end_sequence ()
11903 : : #line 2163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11904 : : {
11905 : : rtx op2 = gen_reg_rtx (V8HFmode);
11906 : : rtx op1 = gen_reg_rtx (V8HFmode);
11907 : : rtx op0 = gen_reg_rtx (V8HFmode);
11908 : :
11909 : : emit_insn (gen_movd_v2hf_to_sse_reg (op2, operands[2],
11910 : : force_reg (V8HFmode, CONST1_RTX (V8HFmode))));
11911 : : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
11912 : : emit_insn (gen_divv8hf3 (op0, op1, op2));
11913 : :
11914 : : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
11915 : : DONE;
11916 : : }
11917 : : #undef DONE
11918 : : #undef FAIL
11919 : : }
11920 : : static const uint8_t expand_encoding[] = {
11921 : : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x63, 0x01, 0x01,
11922 : : 0x01, 0x02
11923 : : };
11924 : : return complete_seq (expand_encoding, operands);
11925 : : }
11926 : :
11927 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2250 */
11928 : : rtx
11929 : : gen_absv2bf2 (const rtx operand0, const rtx operand1)
11930 : : {
11931 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11932 : : start_sequence ();
11933 : : {
11934 : : #define FAIL return (end_sequence (), nullptr)
11935 : : #define DONE return end_sequence ()
11936 : : #line 2255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11937 : : ix86_expand_fp_absneg_operator (ABS, V2BFmode, operands); DONE;
11938 : : #undef DONE
11939 : : #undef FAIL
11940 : : }
11941 : : static const uint8_t expand_encoding[] = {
11942 : : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x64, 0x01, 0x01
11943 : : };
11944 : : return complete_seq (expand_encoding, operands);
11945 : : }
11946 : :
11947 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2250 */
11948 : : rtx
11949 : : gen_negv4bf2 (const rtx operand0, const rtx operand1)
11950 : : {
11951 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11952 : : start_sequence ();
11953 : : {
11954 : : #define FAIL return (end_sequence (), nullptr)
11955 : : #define DONE return end_sequence ()
11956 : : #line 2255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11957 : : ix86_expand_fp_absneg_operator (NEG, V4BFmode, operands); DONE;
11958 : : #undef DONE
11959 : : #undef FAIL
11960 : : }
11961 : : static const uint8_t expand_encoding[] = {
11962 : : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x65, 0x01, 0x01
11963 : : };
11964 : : return complete_seq (expand_encoding, operands);
11965 : : }
11966 : :
11967 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2257 */
11968 : : extern rtx_insn *gen_split_1083 (rtx_insn *, rtx *);
11969 : : rtx_insn *
11970 : : gen_split_1083 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11971 : : {
11972 : : if (dump_file)
11973 : : fprintf (dump_file, "Splitting with gen_split_1083 (mmx.md:2257)\n");
11974 : : start_sequence ();
11975 : : #define FAIL return (end_sequence (), nullptr)
11976 : : #define DONE return end_sequence ()
11977 : : #line 2267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11978 : : {
11979 : : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
11980 : : std::swap (operands[1], operands[2]);
11981 : : }
11982 : : #undef DONE
11983 : : #undef FAIL
11984 : : static const uint8_t expand_encoding[] = {
11985 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x63, 0x01, 0x01,
11986 : : 0x01, 0x02
11987 : : };
11988 : : return complete_seq (expand_encoding, operands);
11989 : : }
11990 : :
11991 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2340 */
11992 : : rtx
11993 : : gen_vec_cmpv2hfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11994 : : {
11995 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11996 : : start_sequence ();
11997 : : {
11998 : : #define FAIL return (end_sequence (), nullptr)
11999 : : #define DONE return end_sequence ()
12000 : : #line 2347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12001 : : {
12002 : : rtx ops[4];
12003 : : ops[3] = gen_reg_rtx (V8HFmode);
12004 : : ops[2] = gen_reg_rtx (V8HFmode);
12005 : :
12006 : : emit_insn (gen_movd_v2hf_to_sse (ops[3], operands[3]));
12007 : : emit_insn (gen_movd_v2hf_to_sse (ops[2], operands[2]));
12008 : : emit_insn (gen_vec_cmpv8hfqi (operands[0], operands[1], ops[2], ops[3]));
12009 : : DONE;
12010 : : }
12011 : : #undef DONE
12012 : : #undef FAIL
12013 : : }
12014 : : static const uint8_t expand_encoding[] = {
12015 : : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
12016 : : 0x02, 0x01, 0x03
12017 : : };
12018 : : return complete_seq (expand_encoding, operands);
12019 : : }
12020 : :
12021 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2429 */
12022 : : rtx
12023 : : gen_nearbyintv4hf2 (const rtx operand0, const rtx operand1)
12024 : : {
12025 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12026 : : start_sequence ();
12027 : : {
12028 : : #define FAIL _Pragma ("GCC error \"nearbyintv4hf2 cannot FAIL\"") (void)0
12029 : : #define DONE return end_sequence ()
12030 : : #line 2434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12031 : : {
12032 : : rtx op1 = gen_reg_rtx (V8HFmode);
12033 : : rtx op0 = gen_reg_rtx (V8HFmode);
12034 : :
12035 : : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12036 : : emit_insn (gen_nearbyintv8hf2 (op0, op1));
12037 : : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12038 : :
12039 : : DONE;
12040 : : }
12041 : : #undef DONE
12042 : : #undef FAIL
12043 : : }
12044 : : static const uint8_t expand_encoding[] = {
12045 : : 0x02, 0x01, 0x00, 0x01, 0x01
12046 : : };
12047 : : return complete_seq (expand_encoding, operands);
12048 : : }
12049 : :
12050 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2511 */
12051 : : rtx
12052 : : gen_ceilv4hf2 (const rtx operand0, const rtx operand1)
12053 : : {
12054 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12055 : : start_sequence ();
12056 : : {
12057 : : #define FAIL _Pragma ("GCC error \"ceilv4hf2 cannot FAIL\"") (void)0
12058 : : #define DONE return end_sequence ()
12059 : : #line 2517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12060 : : {
12061 : : rtx op1 = gen_reg_rtx (V8HFmode);
12062 : : rtx op0 = gen_reg_rtx (V8HFmode);
12063 : :
12064 : : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12065 : : emit_insn (gen_ceilv8hf2 (op0, op1));
12066 : : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12067 : :
12068 : : DONE;
12069 : : }
12070 : : #undef DONE
12071 : : #undef FAIL
12072 : : }
12073 : : static const uint8_t expand_encoding[] = {
12074 : : 0x02, 0x01, 0x00, 0x01, 0x01
12075 : : };
12076 : : return complete_seq (expand_encoding, operands);
12077 : : }
12078 : :
12079 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2614 */
12080 : : rtx
12081 : : gen_copysignv4hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
12082 : : {
12083 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12084 : : start_sequence ();
12085 : : {
12086 : : #define FAIL _Pragma ("GCC error \"copysignv4hf3 cannot FAIL\"") (void)0
12087 : : #define DONE return end_sequence ()
12088 : : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12089 : : {
12090 : : operands[3] = ix86_build_signbit_mask (V4HFmode, true, false);
12091 : :
12092 : : operands[4] = gen_reg_rtx (V4HFmode);
12093 : : operands[5] = gen_reg_rtx (V4HFmode);
12094 : : }
12095 : : #undef DONE
12096 : : #undef FAIL
12097 : : }
12098 : : static const uint8_t expand_encoding[] = {
12099 : : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x66, 0x4c, 0x66,
12100 : : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
12101 : : 0x66, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
12102 : : 0x4a, 0x66, 0x01, 0x04, 0x01, 0x05
12103 : : };
12104 : : return complete_seq (expand_encoding, operands);
12105 : : }
12106 : :
12107 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2687 */
12108 : : rtx
12109 : : gen_fmsv2hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12110 : : {
12111 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12112 : : start_sequence ();
12113 : : {
12114 : : #define FAIL _Pragma ("GCC error \"fmsv2hf4 cannot FAIL\"") (void)0
12115 : : #define DONE return end_sequence ()
12116 : : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12117 : : {
12118 : : rtx op3 = gen_reg_rtx (V8HFmode);
12119 : : rtx op2 = gen_reg_rtx (V8HFmode);
12120 : : rtx op1 = gen_reg_rtx (V8HFmode);
12121 : : rtx op0 = gen_reg_rtx (V8HFmode);
12122 : :
12123 : : emit_insn (gen_movd_v2hf_to_sse (op3, operands[3]));
12124 : : emit_insn (gen_movd_v2hf_to_sse (op2, operands[2]));
12125 : : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12126 : :
12127 : : emit_insn (gen_fmsv8hf4 (op0, op1, op2, op3));
12128 : :
12129 : : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
12130 : : DONE;
12131 : : }
12132 : : #undef DONE
12133 : : #undef FAIL
12134 : : }
12135 : : static const uint8_t expand_encoding[] = {
12136 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x63, 0x01,
12137 : : 0x01, 0x01, 0x02, 0x3d, 0x63, 0x01, 0x03
12138 : : };
12139 : : return complete_seq (expand_encoding, operands);
12140 : : }
12141 : :
12142 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2827 */
12143 : : rtx
12144 : : gen_fmsv2bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12145 : : {
12146 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12147 : : start_sequence ();
12148 : : {
12149 : : #define FAIL _Pragma ("GCC error \"fmsv2bf4 cannot FAIL\"") (void)0
12150 : : #define DONE return end_sequence ()
12151 : : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12152 : : {
12153 : : rtx op0 = gen_reg_rtx (V8BFmode);
12154 : : rtx op1 = lowpart_subreg (V8BFmode, force_reg (V2BFmode, operands[1]), V2BFmode);
12155 : : rtx op2 = lowpart_subreg (V8BFmode, force_reg (V2BFmode, operands[2]), V2BFmode);
12156 : : rtx op3 = lowpart_subreg (V8BFmode, force_reg (V2BFmode, operands[3]), V2BFmode);
12157 : :
12158 : : emit_insn (gen_fmsv8bf4 (op0, op1, op2, op3));
12159 : :
12160 : : emit_move_insn (operands[0], lowpart_subreg (V2BFmode, op0, V8BFmode));
12161 : : DONE;
12162 : : }
12163 : : #undef DONE
12164 : : #undef FAIL
12165 : : }
12166 : : static const uint8_t expand_encoding[] = {
12167 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x64, 0x01,
12168 : : 0x01, 0x01, 0x02, 0x3d, 0x64, 0x01, 0x03
12169 : : };
12170 : : return complete_seq (expand_encoding, operands);
12171 : : }
12172 : :
12173 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2980 */
12174 : : rtx
12175 : : gen_fix_truncv2hfv2hi2 (const rtx operand0, const rtx operand1)
12176 : : {
12177 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12178 : : start_sequence ();
12179 : : {
12180 : : #define FAIL return (end_sequence (), nullptr)
12181 : : #define DONE return end_sequence ()
12182 : : #line 2985 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12183 : : {
12184 : : rtx op1 = gen_reg_rtx (V8HFmode);
12185 : : rtx op0 = gen_reg_rtx (V8HImode);
12186 : :
12187 : : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12188 : :
12189 : : emit_insn (gen_fix_truncv8hfv8hi2 (op0, op1));
12190 : :
12191 : : emit_move_insn (operands[0],
12192 : : lowpart_subreg (V2HImode, op0, V8HImode));
12193 : : DONE;
12194 : : }
12195 : : #undef DONE
12196 : : #undef FAIL
12197 : : }
12198 : : static const uint8_t expand_encoding[] = {
12199 : : 0x01, 0x1f, 0x01, 0x00, 0x74, 0x46, 0x01, 0x01
12200 : : };
12201 : : return complete_seq (expand_encoding, operands);
12202 : : }
12203 : :
12204 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3016 */
12205 : : rtx
12206 : : gen_floatv4hiv4hf2 (const rtx operand0, const rtx operand1)
12207 : : {
12208 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12209 : : start_sequence ();
12210 : : {
12211 : : #define FAIL return (end_sequence (), nullptr)
12212 : : #define DONE return end_sequence ()
12213 : : #line 3021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12214 : : {
12215 : : rtx op1 = gen_reg_rtx (V8HImode);
12216 : : rtx op0 = gen_reg_rtx (V8HFmode);
12217 : :
12218 : : rtx (*gen_movd_sse) (rtx, rtx)
12219 : : = gen_movq_v4hi_to_sse;
12220 : : emit_insn (gen_movd_sse (op1, operands[1]));
12221 : :
12222 : : emit_insn (gen_floatv8hiv8hf2 (op0, op1));
12223 : :
12224 : : emit_move_insn (operands[0],
12225 : : lowpart_subreg (V4HFmode, op0, V8HFmode));
12226 : : DONE;
12227 : : }
12228 : : #undef DONE
12229 : : #undef FAIL
12230 : : }
12231 : : static const uint8_t expand_encoding[] = {
12232 : : 0x01, 0x1f, 0x01, 0x00, 0x73, 0x66, 0x01, 0x01
12233 : : };
12234 : : return complete_seq (expand_encoding, operands);
12235 : : }
12236 : :
12237 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3144 */
12238 : : rtx
12239 : : gen_negv4qi2 (const rtx operand0, const rtx operand1)
12240 : : {
12241 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
12242 : : start_sequence ();
12243 : : {
12244 : : #define FAIL return (end_sequence (), nullptr)
12245 : : #define DONE return end_sequence ()
12246 : : #line 3150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12247 : : operands[2] = force_reg (V4QImode, CONST0_RTX (V4QImode));
12248 : : #undef DONE
12249 : : #undef FAIL
12250 : : }
12251 : : static const uint8_t expand_encoding[] = {
12252 : : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x45, 0x01, 0x02,
12253 : : 0x01, 0x01
12254 : : };
12255 : : return complete_seq (expand_encoding, operands);
12256 : : }
12257 : :
12258 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3212 */
12259 : : rtx
12260 : : gen_mmx_addv1di3 (const rtx operand0, const rtx operand1, const rtx operand2)
12261 : : {
12262 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12263 : : start_sequence ();
12264 : : {
12265 : : #define FAIL return (end_sequence (), nullptr)
12266 : : #define DONE return end_sequence ()
12267 : : #line 3218 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12268 : : ix86_fixup_binary_operands_no_copy (PLUS, V1DImode, operands);
12269 : : #undef DONE
12270 : : #undef FAIL
12271 : : }
12272 : : static const uint8_t expand_encoding[] = {
12273 : : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x4b, 0x01, 0x01,
12274 : : 0x01, 0x02
12275 : : };
12276 : : return complete_seq (expand_encoding, operands);
12277 : : }
12278 : :
12279 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3311 */
12280 : : extern rtx_insn *gen_split_1094 (rtx_insn *, rtx *);
12281 : : rtx_insn *
12282 : : gen_split_1094 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12283 : : {
12284 : : if (dump_file)
12285 : : fprintf (dump_file, "Splitting with gen_split_1094 (mmx.md:3311)\n");
12286 : : start_sequence ();
12287 : : #define FAIL return (end_sequence (), nullptr)
12288 : : #define DONE return end_sequence ()
12289 : : #line 3320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12290 : : {
12291 : : operands[2] = lowpart_subreg (V16QImode, operands[2], V2QImode);
12292 : : operands[1] = lowpart_subreg (V16QImode, operands[1], V2QImode);
12293 : : operands[0] = lowpart_subreg (V16QImode, operands[0], V2QImode);
12294 : : }
12295 : : #undef DONE
12296 : : #undef FAIL
12297 : : static const uint8_t expand_encoding[] = {
12298 : : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x4f, 0x01, 0x01,
12299 : : 0x01, 0x02
12300 : : };
12301 : : return complete_seq (expand_encoding, operands);
12302 : : }
12303 : :
12304 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3334 */
12305 : : rtx
12306 : : gen_usaddv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12307 : : {
12308 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12309 : : static const uint8_t expand_encoding[] = {
12310 : : 0x1f, 0x01, 0x00, 0x81, 0x0f, 0x48, 0x01, 0x01,
12311 : : 0x01, 0x02
12312 : : };
12313 : : return expand_rtx (expand_encoding, operands);
12314 : : }
12315 : :
12316 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3334 */
12317 : : rtx
12318 : : gen_ussubv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12319 : : {
12320 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12321 : : static const uint8_t expand_encoding[] = {
12322 : : 0x1f, 0x01, 0x00, 0x81, 0x16, 0x49, 0x01, 0x01,
12323 : : 0x01, 0x02
12324 : : };
12325 : : return expand_rtx (expand_encoding, operands);
12326 : : }
12327 : :
12328 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3599 */
12329 : : rtx
12330 : : gen_mmx_pmulhrwv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12331 : : {
12332 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12333 : : start_sequence ();
12334 : : {
12335 : : #define FAIL return (end_sequence (), nullptr)
12336 : : #define DONE return end_sequence ()
12337 : : #line 3613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12338 : : ix86_fixup_binary_operands_no_copy (MULT, V4HImode, operands);
12339 : : #undef DONE
12340 : : #undef FAIL
12341 : : }
12342 : : static const uint8_t expand_encoding[] = {
12343 : : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x49, 0x50, 0x51,
12344 : : 0x3b, 0x51, 0x3e, 0x51, 0x6e, 0x51, 0x01, 0x01,
12345 : : 0x6e, 0x51, 0x01, 0x02, 0x2c, 0x51, 0x04, 0x27,
12346 : : 0x82, 0x80, 0x00, 0x27, 0x82, 0x80, 0x00, 0x27,
12347 : : 0x82, 0x80, 0x00, 0x27, 0x82, 0x80, 0x00, 0x27,
12348 : : 0x10
12349 : : };
12350 : : return complete_seq (expand_encoding, operands);
12351 : : }
12352 : :
12353 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3891 */
12354 : : extern rtx_insn *gen_split_1096 (rtx_insn *, rtx *);
12355 : : rtx_insn *
12356 : : gen_split_1096 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12357 : : {
12358 : : if (dump_file)
12359 : : fprintf (dump_file, "Splitting with gen_split_1096 (mmx.md:3891)\n");
12360 : : start_sequence ();
12361 : : #define FAIL return (end_sequence (), nullptr)
12362 : : #define DONE return end_sequence ()
12363 : : #line 3900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12364 : : operands[3] = gen_int_mode (16 - 1, DImode);
12365 : : #undef DONE
12366 : : #undef FAIL
12367 : : static const uint8_t expand_encoding[] = {
12368 : : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x49, 0x01, 0x01,
12369 : : 0x01, 0x03
12370 : : };
12371 : : return complete_seq (expand_encoding, operands);
12372 : : }
12373 : :
12374 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4002 */
12375 : : rtx
12376 : : gen_ashrv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12377 : : {
12378 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12379 : : start_sequence ();
12380 : : {
12381 : : #define FAIL return (end_sequence (), nullptr)
12382 : : #define DONE return end_sequence ()
12383 : : #line 4007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12384 : : {
12385 : : ix86_expand_vecop_qihi_partial (ASHIFTRT, operands[0],
12386 : : operands[1], operands[2]);
12387 : : DONE;
12388 : : }
12389 : : #undef DONE
12390 : : #undef FAIL
12391 : : }
12392 : : static const uint8_t expand_encoding[] = {
12393 : : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x48, 0x01, 0x01,
12394 : : 0x01, 0x02
12395 : : };
12396 : : return complete_seq (expand_encoding, operands);
12397 : : }
12398 : :
12399 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4069 */
12400 : : rtx
12401 : : gen_vashlv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12402 : : {
12403 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12404 : : start_sequence ();
12405 : : {
12406 : : #define FAIL return (end_sequence (), nullptr)
12407 : : #define DONE return end_sequence ()
12408 : : #line 4075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12409 : : {
12410 : : ix86_expand_vecop_qihi_partial (ASHIFT, operands[0],
12411 : : operands[1], operands[2]);
12412 : : DONE;
12413 : : }
12414 : : #undef DONE
12415 : : #undef FAIL
12416 : : }
12417 : : static const uint8_t expand_encoding[] = {
12418 : : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x45, 0x01, 0x01,
12419 : : 0x01, 0x02
12420 : : };
12421 : : return complete_seq (expand_encoding, operands);
12422 : : }
12423 : :
12424 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4081 */
12425 : : rtx
12426 : : gen_vec_shl_v8qi (const rtx operand0, const rtx operand1, const rtx operand2)
12427 : : {
12428 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12429 : : start_sequence ();
12430 : : {
12431 : : #define FAIL return (end_sequence (), nullptr)
12432 : : #define DONE return end_sequence ()
12433 : : #line 4087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12434 : : {
12435 : : rtx op0 = gen_reg_rtx (V1DImode);
12436 : : rtx op1 = force_reg (V8QImode, operands[1]);
12437 : :
12438 : : emit_insn (gen_mmx_ashlv1di3
12439 : : (op0, gen_lowpart (V1DImode, op1), operands[2]));
12440 : : emit_move_insn (operands[0], gen_lowpart (V8QImode, op0));
12441 : : DONE;
12442 : : }
12443 : : #undef DONE
12444 : : #undef FAIL
12445 : : }
12446 : : static const uint8_t expand_encoding[] = {
12447 : : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x4b, 0x01, 0x01,
12448 : : 0x01, 0x02
12449 : : };
12450 : : return complete_seq (expand_encoding, operands);
12451 : : }
12452 : :
12453 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4113 */
12454 : : rtx
12455 : : gen_vec_shr_v8qi (const rtx operand0, const rtx operand1, const rtx operand2)
12456 : : {
12457 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12458 : : start_sequence ();
12459 : : {
12460 : : #define FAIL return (end_sequence (), nullptr)
12461 : : #define DONE return end_sequence ()
12462 : : #line 4119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12463 : : {
12464 : : rtx op0 = gen_reg_rtx (V1DImode);
12465 : : rtx op1 = force_reg (V8QImode, operands[1]);
12466 : :
12467 : : emit_insn (gen_mmx_lshrv1di3
12468 : : (op0, gen_lowpart (V1DImode, op1), operands[2]));
12469 : : emit_move_insn (operands[0], gen_lowpart (V8QImode, op0));
12470 : : DONE;
12471 : : }
12472 : : #undef DONE
12473 : : #undef FAIL
12474 : : }
12475 : : static const uint8_t expand_encoding[] = {
12476 : : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x4b, 0x01, 0x01,
12477 : : 0x01, 0x02
12478 : : };
12479 : : return complete_seq (expand_encoding, operands);
12480 : : }
12481 : :
12482 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4256 */
12483 : : rtx
12484 : : gen_vec_cmpv2siv2si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12485 : : {
12486 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12487 : : start_sequence ();
12488 : : {
12489 : : #define FAIL return (end_sequence (), nullptr)
12490 : : #define DONE return end_sequence ()
12491 : : #line 4262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12492 : : {
12493 : : bool ok = ix86_expand_int_vec_cmp (operands);
12494 : : gcc_assert (ok);
12495 : : DONE;
12496 : : }
12497 : : #undef DONE
12498 : : #undef FAIL
12499 : : }
12500 : : static const uint8_t expand_encoding[] = {
12501 : : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x4a, 0x01, 0x01,
12502 : : 0x02, 0x01, 0x03
12503 : : };
12504 : : return complete_seq (expand_encoding, operands);
12505 : : }
12506 : :
12507 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4304 */
12508 : : rtx
12509 : : gen_vcond_mask_v8qiv8qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12510 : : {
12511 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12512 : : start_sequence ();
12513 : : {
12514 : : #define FAIL _Pragma ("GCC error \"vcond_mask_v8qiv8qi cannot FAIL\"") (void)0
12515 : : #define DONE return end_sequence ()
12516 : : #line 4311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12517 : : {
12518 : : ix86_expand_sse_movcc (operands[0], operands[3],
12519 : : operands[1], operands[2]);
12520 : : DONE;
12521 : : }
12522 : : #undef DONE
12523 : : #undef FAIL
12524 : : }
12525 : : static const uint8_t expand_encoding[] = {
12526 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x01,
12527 : : 0x01, 0x01, 0x02, 0x01, 0x03
12528 : : };
12529 : : return complete_seq (expand_encoding, operands);
12530 : : }
12531 : :
12532 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4426 */
12533 : : extern rtx_insn *gen_split_1109 (rtx_insn *, rtx *);
12534 : : rtx_insn *
12535 : : gen_split_1109 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12536 : : {
12537 : : if (dump_file)
12538 : : fprintf (dump_file, "Splitting with gen_split_1109 (mmx.md:4426)\n");
12539 : : start_sequence ();
12540 : : #define FAIL return (end_sequence (), nullptr)
12541 : : #define DONE return end_sequence ()
12542 : : #line 4448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12543 : : {
12544 : : operands[6] = gen_reg_rtx (V4QImode);
12545 : : operands[7] = force_reg (V4QImode, operands[4]);
12546 : : }
12547 : : #undef DONE
12548 : : #undef FAIL
12549 : : static const uint8_t expand_encoding[] = {
12550 : : 0x02, 0x1f, 0x01, 0x06, 0x5d, 0x45, 0x01, 0x03,
12551 : : 0x01, 0x07, 0x1f, 0x01, 0x00, 0x1a, 0x45, 0x03,
12552 : : 0x01, 0x02, 0x01, 0x01, 0x01, 0x06, 0x34
12553 : : };
12554 : : return complete_seq (expand_encoding, operands);
12555 : : }
12556 : :
12557 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4588 */
12558 : : extern rtx_insn *gen_split_1117 (rtx_insn *, rtx *);
12559 : : rtx_insn *
12560 : : gen_split_1117 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12561 : : {
12562 : : if (dump_file)
12563 : : fprintf (dump_file, "Splitting with gen_split_1117 (mmx.md:4588)\n");
12564 : : start_sequence ();
12565 : : #define FAIL return (end_sequence (), nullptr)
12566 : : #define DONE return end_sequence ()
12567 : : #line 4597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12568 : : {
12569 : : operands[2] = CONSTM1_RTX (V16QImode);
12570 : : operands[1] = lowpart_subreg (V16QImode, operands[1], V2QImode);
12571 : : operands[0] = lowpart_subreg (V16QImode, operands[0], V2QImode);
12572 : : }
12573 : : #undef DONE
12574 : : #undef FAIL
12575 : : static const uint8_t expand_encoding[] = {
12576 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x1f, 0x01,
12577 : : 0x00, 0x4b, 0x4f, 0x01, 0x00, 0x01, 0x01
12578 : : };
12579 : : return complete_seq (expand_encoding, operands);
12580 : : }
12581 : :
12582 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4675 */
12583 : : extern rtx_insn *gen_split_1127 (rtx_insn *, rtx *);
12584 : : rtx_insn *
12585 : : gen_split_1127 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12586 : : {
12587 : : if (dump_file)
12588 : : fprintf (dump_file, "Splitting with gen_split_1127 (mmx.md:4675)\n");
12589 : : start_sequence ();
12590 : : #define FAIL return (end_sequence (), nullptr)
12591 : : #define DONE return end_sequence ()
12592 : : #line 4684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12593 : : {
12594 : : operands[2] = lowpart_subreg (V16QImode, operands[2], V2HImode);
12595 : : operands[1] = lowpart_subreg (V16QImode, operands[1], V2HImode);
12596 : : operands[0] = lowpart_subreg (V16QImode, operands[0], V2HImode);
12597 : : }
12598 : : #undef DONE
12599 : : #undef FAIL
12600 : : static const uint8_t expand_encoding[] = {
12601 : : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x4f, 0x4c, 0x4f,
12602 : : 0x01, 0x01, 0x01, 0x02
12603 : : };
12604 : : return complete_seq (expand_encoding, operands);
12605 : : }
12606 : :
12607 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4698 */
12608 : : rtx
12609 : : gen_iorv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12610 : : {
12611 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12612 : : static const uint8_t expand_encoding[] = {
12613 : : 0x1f, 0x01, 0x00, 0x4a, 0x48, 0x01, 0x01, 0x01,
12614 : : 0x02
12615 : : };
12616 : : return expand_rtx (expand_encoding, operands);
12617 : : }
12618 : :
12619 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4698 */
12620 : : rtx
12621 : : gen_andv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12622 : : {
12623 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12624 : : static const uint8_t expand_encoding[] = {
12625 : : 0x1f, 0x01, 0x00, 0x49, 0x4a, 0x01, 0x01, 0x01,
12626 : : 0x02
12627 : : };
12628 : : return expand_rtx (expand_encoding, operands);
12629 : : }
12630 : :
12631 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4722 */
12632 : : rtx
12633 : : gen_iorv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12634 : : {
12635 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12636 : : start_sequence ();
12637 : : {
12638 : : #define FAIL return (end_sequence (), nullptr)
12639 : : #define DONE return end_sequence ()
12640 : : #line 4728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12641 : : ix86_expand_binary_operator (IOR, V2HImode, operands); DONE;
12642 : : #undef DONE
12643 : : #undef FAIL
12644 : : }
12645 : : static const uint8_t expand_encoding[] = {
12646 : : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x46, 0x01, 0x01,
12647 : : 0x01, 0x02
12648 : : };
12649 : : return complete_seq (expand_encoding, operands);
12650 : : }
12651 : :
12652 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4742 */
12653 : : extern rtx_insn *gen_split_1136 (rtx_insn *, rtx *);
12654 : : rtx_insn *
12655 : : gen_split_1136 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12656 : : {
12657 : : if (dump_file)
12658 : : fprintf (dump_file, "Splitting with gen_split_1136 (mmx.md:4742)\n");
12659 : : start_sequence ();
12660 : : #define FAIL return (end_sequence (), nullptr)
12661 : : #define DONE return end_sequence ()
12662 : : #line 4753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12663 : : {
12664 : : if (!register_operand (operands[2], V2HImode))
12665 : : {
12666 : : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (operands[2],
12667 : : V2HImode);
12668 : : operands[2] = GEN_INT (val);
12669 : : }
12670 : : else
12671 : : operands[2] = lowpart_subreg (SImode, operands[2], V2HImode);
12672 : : operands[1] = lowpart_subreg (SImode, operands[1], V2HImode);
12673 : : operands[0] = lowpart_subreg (SImode, operands[0], V2HImode);
12674 : : }
12675 : : #undef DONE
12676 : : #undef FAIL
12677 : : static const uint8_t expand_encoding[] = {
12678 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
12679 : : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
12680 : : };
12681 : : return complete_seq (expand_encoding, operands);
12682 : : }
12683 : :
12684 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4809 */
12685 : : extern rtx_insn *gen_split_1147 (rtx_insn *, rtx *);
12686 : : rtx_insn *
12687 : : gen_split_1147 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
12688 : : {
12689 : : if (dump_file)
12690 : : fprintf (dump_file, "Splitting with gen_split_1147 (mmx.md:4809)\n");
12691 : : start_sequence ();
12692 : : #define FAIL return (end_sequence (), nullptr)
12693 : : #define DONE return end_sequence ()
12694 : : #line 4823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12695 : : ix86_split_mmx_pack (operands, US_TRUNCATE); DONE;
12696 : : #undef DONE
12697 : : #undef FAIL
12698 : : static const uint8_t expand_encoding[] = {
12699 : : 0x01, 0x27, 0x00
12700 : : };
12701 : : return complete_seq (expand_encoding, operands);
12702 : : }
12703 : :
12704 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4926 */
12705 : : extern rtx_insn *gen_split_1153 (rtx_insn *, rtx *);
12706 : : rtx_insn *
12707 : : gen_split_1153 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
12708 : : {
12709 : : if (dump_file)
12710 : : fprintf (dump_file, "Splitting with gen_split_1153 (mmx.md:4926)\n");
12711 : : start_sequence ();
12712 : : #define FAIL return (end_sequence (), nullptr)
12713 : : #define DONE return end_sequence ()
12714 : : #line 4938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12715 : : ix86_split_mmx_punpck (operands, false); DONE;
12716 : : #undef DONE
12717 : : #undef FAIL
12718 : : static const uint8_t expand_encoding[] = {
12719 : : 0x01, 0x27, 0x00
12720 : : };
12721 : : return complete_seq (expand_encoding, operands);
12722 : : }
12723 : :
12724 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5106 */
12725 : : rtx
12726 : : gen_zero_extendv2qiv2si2 (const rtx operand0, const rtx operand1)
12727 : : {
12728 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12729 : : start_sequence ();
12730 : : {
12731 : : #define FAIL return (end_sequence (), nullptr)
12732 : : #define DONE return end_sequence ()
12733 : : #line 5111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12734 : : {
12735 : : rtx op1 = force_reg (V2QImode, operands[1]);
12736 : : op1 = lowpart_subreg (V4QImode, op1, V2QImode);
12737 : : emit_insn (gen_sse4_1_zero_extendv2qiv2si2 (operands[0], op1));
12738 : : DONE;
12739 : : }
12740 : : #undef DONE
12741 : : #undef FAIL
12742 : : }
12743 : : static const uint8_t expand_encoding[] = {
12744 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x4a, 0x01, 0x01
12745 : : };
12746 : : return complete_seq (expand_encoding, operands);
12747 : : }
12748 : :
12749 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5203 */
12750 : : rtx
12751 : : gen_vec_pack_trunc_v2si (const rtx operand0, const rtx operand1, const rtx operand2)
12752 : : {
12753 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12754 : : start_sequence ();
12755 : : {
12756 : : #define FAIL return (end_sequence (), nullptr)
12757 : : #define DONE return end_sequence ()
12758 : : #line 5208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12759 : : {
12760 : : rtx op1 = gen_lowpart (V4HImode, operands[1]);
12761 : : rtx op2 = gen_lowpart (V4HImode, operands[2]);
12762 : : ix86_expand_vec_extract_even_odd (operands[0], op1, op2, 0);
12763 : : DONE;
12764 : : }
12765 : : #undef DONE
12766 : : #undef FAIL
12767 : : }
12768 : : static const uint8_t expand_encoding[] = {
12769 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12770 : : };
12771 : : return complete_seq (expand_encoding, operands);
12772 : : }
12773 : :
12774 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5347 */
12775 : : extern rtx_insn *gen_split_1158 (rtx_insn *, rtx *);
12776 : : rtx_insn *
12777 : : gen_split_1158 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12778 : : {
12779 : : if (dump_file)
12780 : : fprintf (dump_file, "Splitting with gen_split_1158 (mmx.md:5347)\n");
12781 : : start_sequence ();
12782 : : #define FAIL return (end_sequence (), nullptr)
12783 : : #define DONE return end_sequence ()
12784 : : #line 5361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12785 : : operands[3] = GEN_INT (~INTVAL (operands[3]) & 0xf);
12786 : : #undef DONE
12787 : : #undef FAIL
12788 : : static const uint8_t expand_encoding[] = {
12789 : : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x66, 0x01,
12790 : : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x66, 0x01,
12791 : : 0x01, 0x01, 0x00, 0x01, 0x03
12792 : : };
12793 : : return complete_seq (expand_encoding, operands);
12794 : : }
12795 : :
12796 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5875 */
12797 : : rtx
12798 : : gen_vec_extractv2sisi (const rtx operand0, const rtx operand1, const rtx operand2)
12799 : : {
12800 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12801 : : start_sequence ();
12802 : : {
12803 : : #define FAIL _Pragma ("GCC error \"vec_extractv2sisi cannot FAIL\"") (void)0
12804 : : #define DONE return end_sequence ()
12805 : : #line 5880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12806 : : {
12807 : : ix86_expand_vector_extract (TARGET_MMX_WITH_SSE, operands[0],
12808 : : operands[1], INTVAL (operands[2]));
12809 : : DONE;
12810 : : }
12811 : : #undef DONE
12812 : : #undef FAIL
12813 : : }
12814 : : static const uint8_t expand_encoding[] = {
12815 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12816 : : };
12817 : : return complete_seq (expand_encoding, operands);
12818 : : }
12819 : :
12820 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5941 */
12821 : : rtx
12822 : : gen_vec_setv8qi (const rtx operand0, const rtx operand1, const rtx operand2)
12823 : : {
12824 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12825 : : start_sequence ();
12826 : : {
12827 : : #define FAIL _Pragma ("GCC error \"vec_setv8qi cannot FAIL\"") (void)0
12828 : : #define DONE return end_sequence ()
12829 : : #line 5946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12830 : : {
12831 : : if (CONST_INT_P (operands[2]))
12832 : : ix86_expand_vector_set (TARGET_MMX_WITH_SSE, operands[0], operands[1],
12833 : : INTVAL (operands[2]));
12834 : : else
12835 : : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
12836 : : DONE;
12837 : : }
12838 : : #undef DONE
12839 : : #undef FAIL
12840 : : }
12841 : : static const uint8_t expand_encoding[] = {
12842 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12843 : : };
12844 : : return complete_seq (expand_encoding, operands);
12845 : : }
12846 : :
12847 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6176 */
12848 : : rtx
12849 : : gen_vec_extractv2bfbf (const rtx operand0, const rtx operand1, const rtx operand2)
12850 : : {
12851 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12852 : : start_sequence ();
12853 : : {
12854 : : #define FAIL _Pragma ("GCC error \"vec_extractv2bfbf cannot FAIL\"") (void)0
12855 : : #define DONE return end_sequence ()
12856 : : #line 6181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12857 : : {
12858 : : ix86_expand_vector_extract (false, operands[0],
12859 : : operands[1], INTVAL (operands[2]));
12860 : : DONE;
12861 : : }
12862 : : #undef DONE
12863 : : #undef FAIL
12864 : : }
12865 : : static const uint8_t expand_encoding[] = {
12866 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12867 : : };
12868 : : return complete_seq (expand_encoding, operands);
12869 : : }
12870 : :
12871 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6305 */
12872 : : rtx
12873 : : gen_vec_initv4qiqi (const rtx operand0, const rtx operand1)
12874 : : {
12875 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12876 : : start_sequence ();
12877 : : {
12878 : : #define FAIL return (end_sequence (), nullptr)
12879 : : #define DONE return end_sequence ()
12880 : : #line 6309 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12881 : : {
12882 : : ix86_expand_vector_init (TARGET_MMX_WITH_SSE, operands[0],
12883 : : operands[1]);
12884 : : DONE;
12885 : : }
12886 : : #undef DONE
12887 : : #undef FAIL
12888 : : }
12889 : : static const uint8_t expand_encoding[] = {
12890 : : 0x02, 0x01, 0x00, 0x01, 0x01
12891 : : };
12892 : : return complete_seq (expand_encoding, operands);
12893 : : }
12894 : :
12895 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6511 */
12896 : : rtx
12897 : : gen_reduc_ior_scal_v8qi (const rtx operand0, const rtx operand1)
12898 : : {
12899 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12900 : : start_sequence ();
12901 : : {
12902 : : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v8qi cannot FAIL\"") (void)0
12903 : : #define DONE return end_sequence ()
12904 : : #line 6516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12905 : : {
12906 : : rtx tmp = gen_reg_rtx (V8QImode);
12907 : : ix86_expand_reduc (gen_iorv8qi3, tmp, operands[1]);
12908 : : emit_insn (gen_vec_extractv8qiqi (operands[0],
12909 : : tmp, const0_rtx));
12910 : : DONE;
12911 : : }
12912 : : #undef DONE
12913 : : #undef FAIL
12914 : : }
12915 : : static const uint8_t expand_encoding[] = {
12916 : : 0x01, 0x4a, 0x48, 0x01, 0x00, 0x01, 0x01
12917 : : };
12918 : : return complete_seq (expand_encoding, operands);
12919 : : }
12920 : :
12921 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6563 */
12922 : : rtx
12923 : : gen_reduc_smax_scal_v4hi (const rtx operand0, const rtx operand1)
12924 : : {
12925 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12926 : : start_sequence ();
12927 : : {
12928 : : #define FAIL return (end_sequence (), nullptr)
12929 : : #define DONE return end_sequence ()
12930 : : #line 6568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12931 : : {
12932 : : rtx tmp = gen_reg_rtx (V4HImode);
12933 : : ix86_expand_reduc (gen_smaxv4hi3, tmp, operands[1]);
12934 : : emit_insn (gen_vec_extractv4hihi (operands[0], tmp, const0_rtx));
12935 : : DONE;
12936 : : }
12937 : : #undef DONE
12938 : : #undef FAIL
12939 : : }
12940 : : static const uint8_t expand_encoding[] = {
12941 : : 0x01, 0x53, 0x49, 0x01, 0x00, 0x01, 0x01
12942 : : };
12943 : : return complete_seq (expand_encoding, operands);
12944 : : }
12945 : :
12946 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6647 */
12947 : : rtx
12948 : : gen_usdot_prodv2siv8qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12949 : : {
12950 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12951 : : start_sequence ();
12952 : : {
12953 : : #define FAIL return (end_sequence (), nullptr)
12954 : : #define DONE return end_sequence ()
12955 : : #line 6653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12956 : : {
12957 : : operands[1] = force_reg (V8QImode, operands[1]);
12958 : : operands[2] = force_reg (V8QImode, operands[2]);
12959 : : operands[3] = force_reg (V2SImode, operands[3]);
12960 : :
12961 : : if ((TARGET_AVX512VNNI && TARGET_AVX512VL)
12962 : : || TARGET_AVXVNNI)
12963 : : {
12964 : : rtx op1 = lowpart_subreg (V16QImode, operands[1], V8QImode);
12965 : : rtx op2 = lowpart_subreg (V16QImode, operands[2], V8QImode);
12966 : : rtx op3 = lowpart_subreg (V4SImode, operands[3], V2SImode);
12967 : : rtx op0 = gen_reg_rtx (V4SImode);
12968 : :
12969 : : emit_insn (gen_usdot_prodv4siv16qi (op0, op1, op2, op3));
12970 : : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
12971 : : }
12972 : : else
12973 : : {
12974 : : rtx op1 = gen_reg_rtx (V8HImode);
12975 : : rtx op2 = gen_reg_rtx (V8HImode);
12976 : : rtx op3 = gen_reg_rtx (V4SImode);
12977 : : rtx op0 = gen_reg_rtx (V4SImode);
12978 : : rtx op0_1 = gen_reg_rtx (V4SImode);
12979 : :
12980 : : emit_move_insn (op3, CONST0_RTX (V4SImode));
12981 : : emit_insn (gen_zero_extendv8qiv8hi2 (op1, operands[1]));
12982 : : emit_insn (gen_extendv8qiv8hi2 (op2, operands[2]));
12983 : : emit_insn (gen_sdot_prodv4siv8hi (op0, op1, op2, op3));
12984 : :
12985 : : /* vec_perm (op0, 2, 3, 0, 1); */
12986 : : emit_insn (gen_sse2_pshufd (op0_1, op0, GEN_INT (78)));
12987 : : emit_insn (gen_addv4si3 (op0, op0, op0_1));
12988 : : emit_insn (gen_addv2si3 (operands[0], operands[3],
12989 : : lowpart_subreg (V2SImode, op0, V4SImode)));
12990 : : }
12991 : : DONE;
12992 : : }
12993 : : #undef DONE
12994 : : #undef FAIL
12995 : : }
12996 : : static const uint8_t expand_encoding[] = {
12997 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
12998 : : 0x03
12999 : : };
13000 : : return complete_seq (expand_encoding, operands);
13001 : : }
13002 : :
13003 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1472 */
13004 : : rtx
13005 : : gen_movv4si (const rtx operand0, const rtx operand1)
13006 : : {
13007 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13008 : : start_sequence ();
13009 : : {
13010 : : #define FAIL return (end_sequence (), nullptr)
13011 : : #define DONE return end_sequence ()
13012 : : #line 1476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13013 : : {
13014 : : ix86_expand_vector_move (V4SImode, operands);
13015 : : DONE;
13016 : : }
13017 : : #undef DONE
13018 : : #undef FAIL
13019 : : }
13020 : : static const uint8_t expand_encoding[] = {
13021 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13022 : : };
13023 : : return complete_seq (expand_encoding, operands);
13024 : : }
13025 : :
13026 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1472 */
13027 : : rtx
13028 : : gen_movv32bf (const rtx operand0, const rtx operand1)
13029 : : {
13030 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13031 : : start_sequence ();
13032 : : {
13033 : : #define FAIL return (end_sequence (), nullptr)
13034 : : #define DONE return end_sequence ()
13035 : : #line 1476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13036 : : {
13037 : : ix86_expand_vector_move (V32BFmode, operands);
13038 : : DONE;
13039 : : }
13040 : : #undef DONE
13041 : : #undef FAIL
13042 : : }
13043 : : static const uint8_t expand_encoding[] = {
13044 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13045 : : };
13046 : : return complete_seq (expand_encoding, operands);
13047 : : }
13048 : :
13049 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1534 */
13050 : : extern rtx_insn *gen_split_1174 (rtx_insn *, rtx *);
13051 : : rtx_insn *
13052 : : gen_split_1174 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13053 : : {
13054 : : if (dump_file)
13055 : : fprintf (dump_file, "Splitting with gen_split_1174 (sse.md:1534)\n");
13056 : : start_sequence ();
13057 : : #define FAIL return (end_sequence (), nullptr)
13058 : : #define DONE return end_sequence ()
13059 : : #line 1544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13060 : : operands[2] = CONST0_RTX (V32QImode);
13061 : : #undef DONE
13062 : : #undef FAIL
13063 : : static const uint8_t expand_encoding[] = {
13064 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13065 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13066 : : 0x01, 0x01, 0x00, 0x27
13067 : : };
13068 : : return complete_seq (expand_encoding, operands);
13069 : : }
13070 : :
13071 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1534 */
13072 : : extern rtx_insn *gen_split_1184 (rtx_insn *, rtx *);
13073 : : rtx_insn *
13074 : : gen_split_1184 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13075 : : {
13076 : : if (dump_file)
13077 : : fprintf (dump_file, "Splitting with gen_split_1184 (sse.md:1534)\n");
13078 : : start_sequence ();
13079 : : #define FAIL return (end_sequence (), nullptr)
13080 : : #define DONE return end_sequence ()
13081 : : #line 1544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13082 : : operands[2] = CONST0_RTX (V2DImode);
13083 : : #undef DONE
13084 : : #undef FAIL
13085 : : static const uint8_t expand_encoding[] = {
13086 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13087 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13088 : : 0x01, 0x01, 0x00, 0x27
13089 : : };
13090 : : return complete_seq (expand_encoding, operands);
13091 : : }
13092 : :
13093 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1534 */
13094 : : extern rtx_insn *gen_split_1194 (rtx_insn *, rtx *);
13095 : : rtx_insn *
13096 : : gen_split_1194 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13097 : : {
13098 : : if (dump_file)
13099 : : fprintf (dump_file, "Splitting with gen_split_1194 (sse.md:1534)\n");
13100 : : start_sequence ();
13101 : : #define FAIL return (end_sequence (), nullptr)
13102 : : #define DONE return end_sequence ()
13103 : : #line 1544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13104 : : operands[2] = CONST0_RTX (V16SFmode);
13105 : : #undef DONE
13106 : : #undef FAIL
13107 : : static const uint8_t expand_encoding[] = {
13108 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13109 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13110 : : 0x01, 0x01, 0x00, 0x27
13111 : : };
13112 : : return complete_seq (expand_encoding, operands);
13113 : : }
13114 : :
13115 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1563 */
13116 : : rtx
13117 : : gen_avx512vl_loadv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13118 : : {
13119 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13120 : : start_sequence ();
13121 : : {
13122 : : #define FAIL return (end_sequence (), nullptr)
13123 : : #define DONE return end_sequence ()
13124 : : #line 1570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13125 : : {
13126 : : if (CONST_INT_P (operands[3]))
13127 : : {
13128 : : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13129 : : DONE;
13130 : : }
13131 : : else if (MEM_P (operands[1]))
13132 : : operands[1] = gen_rtx_UNSPEC (V4DImode,
13133 : : gen_rtvec(1, operands[1]),
13134 : : UNSPEC_MASKLOAD);
13135 : : }
13136 : : #undef DONE
13137 : : #undef FAIL
13138 : : }
13139 : : static const uint8_t expand_encoding[] = {
13140 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x01,
13141 : : 0x01, 0x01, 0x02, 0x01, 0x03
13142 : : };
13143 : : return complete_seq (expand_encoding, operands);
13144 : : }
13145 : :
13146 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1611 */
13147 : : extern rtx_insn *gen_split_1202 (rtx_insn *, rtx *);
13148 : : rtx_insn *
13149 : : gen_split_1202 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13150 : : {
13151 : : if (dump_file)
13152 : : fprintf (dump_file, "Splitting with gen_split_1202 (sse.md:1611)\n");
13153 : : start_sequence ();
13154 : : static const uint8_t expand_encoding[] = {
13155 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13156 : : };
13157 : : return complete_seq (expand_encoding, operands);
13158 : : }
13159 : :
13160 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1621 */
13161 : : extern rtx_insn *gen_split_1212 (rtx_insn *, rtx *);
13162 : : rtx_insn *
13163 : : gen_split_1212 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13164 : : {
13165 : : if (dump_file)
13166 : : fprintf (dump_file, "Splitting with gen_split_1212 (sse.md:1621)\n");
13167 : : start_sequence ();
13168 : : static const uint8_t expand_encoding[] = {
13169 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a,
13170 : : 0x6b, 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x02,
13171 : : 0x01, 0x03
13172 : : };
13173 : : return complete_seq (expand_encoding, operands);
13174 : : }
13175 : :
13176 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1659 */
13177 : : rtx
13178 : : gen_avx512vl_loadv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13179 : : {
13180 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13181 : : start_sequence ();
13182 : : {
13183 : : #define FAIL return (end_sequence (), nullptr)
13184 : : #define DONE return end_sequence ()
13185 : : #line 1666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13186 : : {
13187 : : if (CONST_INT_P (operands[3]))
13188 : : {
13189 : : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13190 : : DONE;
13191 : : }
13192 : : else if (MEM_P (operands[1]))
13193 : : operands[1] = gen_rtx_UNSPEC (V16HImode,
13194 : : gen_rtvec(1, operands[1]),
13195 : : UNSPEC_MASKLOAD);
13196 : :
13197 : : }
13198 : : #undef DONE
13199 : : #undef FAIL
13200 : : }
13201 : : static const uint8_t expand_encoding[] = {
13202 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x01,
13203 : : 0x01, 0x01, 0x02, 0x01, 0x03
13204 : : };
13205 : : return complete_seq (expand_encoding, operands);
13206 : : }
13207 : :
13208 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1718 */
13209 : : rtx
13210 : : gen_avx512f_loadhf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13211 : : {
13212 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13213 : : start_sequence ();
13214 : : {
13215 : : #define FAIL return (end_sequence (), nullptr)
13216 : : #define DONE return end_sequence ()
13217 : : #line 1729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13218 : : operands[4] = CONST0_RTX (V8HFmode);
13219 : : #undef DONE
13220 : : #undef FAIL
13221 : : }
13222 : : static const uint8_t expand_encoding[] = {
13223 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81,
13224 : : 0x09, 0x6a, 0x81, 0x0c, 0x6a, 0x01, 0x01, 0x01,
13225 : : 0x02, 0x01, 0x03, 0x01, 0x04, 0x27, 0x01
13226 : : };
13227 : : return complete_seq (expand_encoding, operands);
13228 : : }
13229 : :
13230 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1954 */
13231 : : rtx
13232 : : gen_movmisalignv16hi (const rtx operand0, const rtx operand1)
13233 : : {
13234 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13235 : : start_sequence ();
13236 : : {
13237 : : #define FAIL return (end_sequence (), nullptr)
13238 : : #define DONE return end_sequence ()
13239 : : #line 1958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13240 : : {
13241 : : ix86_expand_vector_move_misalign (V16HImode, operands);
13242 : : DONE;
13243 : : }
13244 : : #undef DONE
13245 : : #undef FAIL
13246 : : }
13247 : : static const uint8_t expand_encoding[] = {
13248 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13249 : : };
13250 : : return complete_seq (expand_encoding, operands);
13251 : : }
13252 : :
13253 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1954 */
13254 : : rtx
13255 : : gen_movmisalignv2ti (const rtx operand0, const rtx operand1)
13256 : : {
13257 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13258 : : start_sequence ();
13259 : : {
13260 : : #define FAIL return (end_sequence (), nullptr)
13261 : : #define DONE return end_sequence ()
13262 : : #line 1958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13263 : : {
13264 : : ix86_expand_vector_move_misalign (V2TImode, operands);
13265 : : DONE;
13266 : : }
13267 : : #undef DONE
13268 : : #undef FAIL
13269 : : }
13270 : : static const uint8_t expand_encoding[] = {
13271 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13272 : : };
13273 : : return complete_seq (expand_encoding, operands);
13274 : : }
13275 : :
13276 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1954 */
13277 : : rtx
13278 : : gen_movmisalignv4sf (const rtx operand0, const rtx operand1)
13279 : : {
13280 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13281 : : start_sequence ();
13282 : : {
13283 : : #define FAIL return (end_sequence (), nullptr)
13284 : : #define DONE return end_sequence ()
13285 : : #line 1958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13286 : : {
13287 : : ix86_expand_vector_move_misalign (V4SFmode, operands);
13288 : : DONE;
13289 : : }
13290 : : #undef DONE
13291 : : #undef FAIL
13292 : : }
13293 : : static const uint8_t expand_encoding[] = {
13294 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13295 : : };
13296 : : return complete_seq (expand_encoding, operands);
13297 : : }
13298 : :
13299 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2073 */
13300 : : rtx
13301 : : gen_storentv8di (const rtx operand0, const rtx operand1)
13302 : : {
13303 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13304 : : static const uint8_t expand_encoding[] = {
13305 : : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
13306 : : 0x76
13307 : : };
13308 : : return expand_rtx (expand_encoding, operands);
13309 : : }
13310 : :
13311 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2100 */
13312 : : rtx
13313 : : gen_kmovw (const rtx operand0, const rtx operand1)
13314 : : {
13315 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13316 : : static const uint8_t expand_encoding[] = {
13317 : : 0x1f, 0x01, 0x00, 0x01, 0x01
13318 : : };
13319 : : return expand_rtx (expand_encoding, operands);
13320 : : }
13321 : :
13322 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2128 */
13323 : : extern rtx_insn *gen_split_1240 (rtx_insn *, rtx *);
13324 : : rtx_insn *
13325 : : gen_split_1240 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13326 : : {
13327 : : if (dump_file)
13328 : : fprintf (dump_file, "Splitting with gen_split_1240 (sse.md:2128)\n");
13329 : : start_sequence ();
13330 : : static const uint8_t expand_encoding[] = {
13331 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
13332 : : 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13333 : : 0x27, 0x00, 0x81, 0x2f
13334 : : };
13335 : : return complete_seq (expand_encoding, operands);
13336 : : }
13337 : :
13338 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2139 */
13339 : : extern rtx_insn *gen_split_1250 (rtx_insn *, rtx *);
13340 : : rtx_insn *
13341 : : gen_split_1250 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13342 : : {
13343 : : if (dump_file)
13344 : : fprintf (dump_file, "Splitting with gen_split_1250 (sse.md:2139)\n");
13345 : : start_sequence ();
13346 : : static const uint8_t expand_encoding[] = {
13347 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
13348 : : 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13349 : : 0x27, 0x00, 0x81, 0x2f
13350 : : };
13351 : : return complete_seq (expand_encoding, operands);
13352 : : }
13353 : :
13354 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2174 */
13355 : : extern rtx_insn *gen_split_1260 (rtx_insn *, rtx *);
13356 : : rtx_insn *
13357 : : gen_split_1260 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13358 : : {
13359 : : if (dump_file)
13360 : : fprintf (dump_file, "Splitting with gen_split_1260 (sse.md:2174)\n");
13361 : : start_sequence ();
13362 : : static const uint8_t expand_encoding[] = {
13363 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
13364 : : 0x12, 0x4c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x1a,
13365 : : 0x00, 0x01, 0x27, 0x00, 0x81, 0x2f
13366 : : };
13367 : : return complete_seq (expand_encoding, operands);
13368 : : }
13369 : :
13370 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2292 */
13371 : : extern rtx_insn *gen_split_1272 (rtx_insn *, rtx *);
13372 : : rtx_insn *
13373 : : gen_split_1272 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13374 : : {
13375 : : if (dump_file)
13376 : : fprintf (dump_file, "Splitting with gen_split_1272 (sse.md:2292)\n");
13377 : : start_sequence ();
13378 : : static const uint8_t expand_encoding[] = {
13379 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
13380 : : 0x12, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13381 : : 0x27, 0x00, 0x81, 0x2f
13382 : : };
13383 : : return complete_seq (expand_encoding, operands);
13384 : : }
13385 : :
13386 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2331 */
13387 : : extern rtx_insn *gen_split_1282 (rtx_insn *, rtx *);
13388 : : rtx_insn *
13389 : : gen_split_1282 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13390 : : {
13391 : : if (dump_file)
13392 : : fprintf (dump_file, "Splitting with gen_split_1282 (sse.md:2331)\n");
13393 : : start_sequence ();
13394 : : static const uint8_t expand_encoding[] = {
13395 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x6f,
13396 : : 0x12, 0x50, 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a,
13397 : : 0x00, 0x01, 0x27, 0x00, 0x81, 0x2f
13398 : : };
13399 : : return complete_seq (expand_encoding, operands);
13400 : : }
13401 : :
13402 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2428 */
13403 : : extern rtx_insn *gen_split_1288 (rtx_insn *, rtx *);
13404 : : rtx_insn *
13405 : : gen_split_1288 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
13406 : : {
13407 : : if (dump_file)
13408 : : fprintf (dump_file, "Splitting with gen_split_1288 (sse.md:2428)\n");
13409 : : start_sequence ();
13410 : : #define FAIL return (end_sequence (), nullptr)
13411 : : #define DONE return end_sequence ()
13412 : : #line 2441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13413 : : {
13414 : : if (MASK_REGNO_P (REGNO (operands[1])))
13415 : : {
13416 : : emit_insn (gen_kortesthi_ccc (operands[1], operands[1]));
13417 : : operands[4] = gen_rtx_REG (CCCmode, FLAGS_REG);
13418 : : }
13419 : : else
13420 : : {
13421 : : operands[4] = gen_rtx_REG (CCZmode, FLAGS_REG);
13422 : : emit_insn (gen_rtx_SET (operands[4],
13423 : : gen_rtx_COMPARE (CCZmode,
13424 : : operands[1],
13425 : : constm1_rtx)));
13426 : : }
13427 : : ix86_expand_branch (GET_CODE (operands[0]),
13428 : : operands[4],
13429 : : const0_rtx,
13430 : : operands[2]);
13431 : : DONE;
13432 : : }
13433 : : #undef DONE
13434 : : #undef FAIL
13435 : : static const uint8_t expand_encoding[] = {
13436 : : 0x01, 0x27, 0x00
13437 : : };
13438 : : return complete_seq (expand_encoding, operands);
13439 : : }
13440 : :
13441 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2506 */
13442 : : extern rtx_insn *gen_split_1298 (rtx_insn *, rtx *);
13443 : : rtx_insn *
13444 : : gen_split_1298 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13445 : : {
13446 : : if (dump_file)
13447 : : fprintf (dump_file, "Splitting with gen_split_1298 (sse.md:2506)\n");
13448 : : start_sequence ();
13449 : : #define FAIL return (end_sequence (), nullptr)
13450 : : #define DONE return end_sequence ()
13451 : : #line 2525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13452 : : {
13453 : : rtx flag_reg;
13454 : : if (MASK_REGNO_P (REGNO (operands[4])))
13455 : : {
13456 : : emit_insn (gen_kortesthi_ccc (operands[4], operands[4]));
13457 : : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13458 : : }
13459 : : else
13460 : : {
13461 : : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13462 : : emit_insn (gen_rtx_SET (flag_reg,
13463 : : gen_rtx_COMPARE (CCZmode,
13464 : : operands[4],
13465 : : constm1_rtx)));
13466 : : }
13467 : : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13468 : : flag_reg,const0_rtx);
13469 : : }
13470 : : #undef DONE
13471 : : #undef FAIL
13472 : : static const uint8_t expand_encoding[] = {
13473 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x10, 0x01, 0x05,
13474 : : 0x01, 0x02, 0x01, 0x03
13475 : : };
13476 : : return complete_seq (expand_encoding, operands);
13477 : : }
13478 : :
13479 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2506 */
13480 : : extern rtx_insn *gen_split_1306 (rtx_insn *, rtx *);
13481 : : rtx_insn *
13482 : : gen_split_1306 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13483 : : {
13484 : : if (dump_file)
13485 : : fprintf (dump_file, "Splitting with gen_split_1306 (sse.md:2506)\n");
13486 : : start_sequence ();
13487 : : #define FAIL return (end_sequence (), nullptr)
13488 : : #define DONE return end_sequence ()
13489 : : #line 2525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13490 : : {
13491 : : rtx flag_reg;
13492 : : if (MASK_REGNO_P (REGNO (operands[4])))
13493 : : {
13494 : : emit_insn (gen_kortestdi_ccc (operands[4], operands[4]));
13495 : : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13496 : : }
13497 : : else
13498 : : {
13499 : : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13500 : : emit_insn (gen_rtx_SET (flag_reg,
13501 : : gen_rtx_COMPARE (CCZmode,
13502 : : operands[4],
13503 : : constm1_rtx)));
13504 : : }
13505 : : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13506 : : flag_reg,const0_rtx);
13507 : : }
13508 : : #undef DONE
13509 : : #undef FAIL
13510 : : static const uint8_t expand_encoding[] = {
13511 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x01, 0x05,
13512 : : 0x01, 0x02, 0x01, 0x03
13513 : : };
13514 : : return complete_seq (expand_encoding, operands);
13515 : : }
13516 : :
13517 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2592 */
13518 : : rtx
13519 : : gen_negv8sf2 (const rtx operand0, const rtx operand1)
13520 : : {
13521 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13522 : : start_sequence ();
13523 : : {
13524 : : #define FAIL return (end_sequence (), nullptr)
13525 : : #define DONE return end_sequence ()
13526 : : #line 2597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13527 : : ix86_expand_fp_absneg_operator (NEG, V8SFmode, operands); DONE;
13528 : : #undef DONE
13529 : : #undef FAIL
13530 : : }
13531 : : static const uint8_t expand_encoding[] = {
13532 : : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x6f, 0x01, 0x01
13533 : : };
13534 : : return complete_seq (expand_encoding, operands);
13535 : : }
13536 : :
13537 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2599 */
13538 : : extern rtx_insn *gen_split_1308 (rtx_insn *, rtx *);
13539 : : rtx_insn *
13540 : : gen_split_1308 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13541 : : {
13542 : : if (dump_file)
13543 : : fprintf (dump_file, "Splitting with gen_split_1308 (sse.md:2599)\n");
13544 : : start_sequence ();
13545 : : #define FAIL return (end_sequence (), nullptr)
13546 : : #define DONE return end_sequence ()
13547 : : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13548 : : {
13549 : : if (TARGET_AVX)
13550 : : {
13551 : : if (MEM_P (operands[1]))
13552 : : std::swap (operands[1], operands[2]);
13553 : : }
13554 : : else
13555 : : {
13556 : : if (operands_match_p (operands[0], operands[2]))
13557 : : std::swap (operands[1], operands[2]);
13558 : : }
13559 : : }
13560 : : #undef DONE
13561 : : #undef FAIL
13562 : : static const uint8_t expand_encoding[] = {
13563 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x72, 0x01, 0x01,
13564 : : 0x01, 0x02
13565 : : };
13566 : : return complete_seq (expand_encoding, operands);
13567 : : }
13568 : :
13569 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2599 */
13570 : : extern rtx_insn *gen_split_1318 (rtx_insn *, rtx *);
13571 : : rtx_insn *
13572 : : gen_split_1318 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13573 : : {
13574 : : if (dump_file)
13575 : : fprintf (dump_file, "Splitting with gen_split_1318 (sse.md:2599)\n");
13576 : : start_sequence ();
13577 : : #define FAIL return (end_sequence (), nullptr)
13578 : : #define DONE return end_sequence ()
13579 : : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13580 : : {
13581 : : if (TARGET_AVX)
13582 : : {
13583 : : if (MEM_P (operands[1]))
13584 : : std::swap (operands[1], operands[2]);
13585 : : }
13586 : : else
13587 : : {
13588 : : if (operands_match_p (operands[0], operands[2]))
13589 : : std::swap (operands[1], operands[2]);
13590 : : }
13591 : : }
13592 : : #undef DONE
13593 : : #undef FAIL
13594 : : static const uint8_t expand_encoding[] = {
13595 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6a, 0x01, 0x01,
13596 : : 0x01, 0x02
13597 : : };
13598 : : return complete_seq (expand_encoding, operands);
13599 : : }
13600 : :
13601 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2599 */
13602 : : extern rtx_insn *gen_split_1328 (rtx_insn *, rtx *);
13603 : : rtx_insn *
13604 : : gen_split_1328 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13605 : : {
13606 : : if (dump_file)
13607 : : fprintf (dump_file, "Splitting with gen_split_1328 (sse.md:2599)\n");
13608 : : start_sequence ();
13609 : : #define FAIL return (end_sequence (), nullptr)
13610 : : #define DONE return end_sequence ()
13611 : : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13612 : : {
13613 : : if (TARGET_AVX)
13614 : : {
13615 : : if (MEM_P (operands[1]))
13616 : : std::swap (operands[1], operands[2]);
13617 : : }
13618 : : else
13619 : : {
13620 : : if (operands_match_p (operands[0], operands[2]))
13621 : : std::swap (operands[1], operands[2]);
13622 : : }
13623 : : }
13624 : : #undef DONE
13625 : : #undef FAIL
13626 : : static const uint8_t expand_encoding[] = {
13627 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x70, 0x01, 0x01,
13628 : : 0x01, 0x02
13629 : : };
13630 : : return complete_seq (expand_encoding, operands);
13631 : : }
13632 : :
13633 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2648 */
13634 : : rtx
13635 : : gen_cond_subv32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13636 : : {
13637 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13638 : : start_sequence ();
13639 : : {
13640 : : #define FAIL _Pragma ("GCC error \"cond_subv32hf cannot FAIL\"") (void)0
13641 : : #define DONE return end_sequence ()
13642 : : #line 2657 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13643 : : {
13644 : : emit_insn (gen_subv32hf3_mask (operands[0],
13645 : : operands[2],
13646 : : operands[3],
13647 : : operands[4],
13648 : : operands[1]));
13649 : : DONE;
13650 : : }
13651 : : #undef DONE
13652 : : #undef FAIL
13653 : : }
13654 : : static const uint8_t expand_encoding[] = {
13655 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x3c,
13656 : : 0x73, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13657 : : 0x01
13658 : : };
13659 : : return complete_seq (expand_encoding, operands);
13660 : : }
13661 : :
13662 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2648 */
13663 : : rtx
13664 : : gen_cond_subv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13665 : : {
13666 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13667 : : start_sequence ();
13668 : : {
13669 : : #define FAIL _Pragma ("GCC error \"cond_subv4sf cannot FAIL\"") (void)0
13670 : : #define DONE return end_sequence ()
13671 : : #line 2657 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13672 : : {
13673 : : emit_insn (gen_subv4sf3_mask (operands[0],
13674 : : operands[2],
13675 : : operands[3],
13676 : : operands[4],
13677 : : operands[1]));
13678 : : DONE;
13679 : : }
13680 : : #undef DONE
13681 : : #undef FAIL
13682 : : }
13683 : : static const uint8_t expand_encoding[] = {
13684 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x3c,
13685 : : 0x6b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13686 : : 0x01
13687 : : };
13688 : : return complete_seq (expand_encoding, operands);
13689 : : }
13690 : :
13691 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2666 */
13692 : : rtx
13693 : : gen_addv32hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13694 : : {
13695 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13696 : : start_sequence ();
13697 : : {
13698 : : #define FAIL return (end_sequence (), nullptr)
13699 : : #define DONE return end_sequence ()
13700 : : #line 2672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13701 : : ix86_fixup_binary_operands_no_copy (PLUS, V32HFmode, operands);
13702 : : #undef DONE
13703 : : #undef FAIL
13704 : : }
13705 : : static const uint8_t expand_encoding[] = {
13706 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81,
13707 : : 0x09, 0x73, 0x3b, 0x73, 0x01, 0x01, 0x01, 0x02,
13708 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13709 : : };
13710 : : return complete_seq (expand_encoding, operands);
13711 : : }
13712 : :
13713 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2666 */
13714 : : rtx
13715 : : gen_subv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13716 : : {
13717 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13718 : : start_sequence ();
13719 : : {
13720 : : #define FAIL return (end_sequence (), nullptr)
13721 : : #define DONE return end_sequence ()
13722 : : #line 2672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13723 : : ix86_fixup_binary_operands_no_copy (MINUS, V8HFmode, operands);
13724 : : #undef DONE
13725 : : #undef FAIL
13726 : : }
13727 : : static const uint8_t expand_encoding[] = {
13728 : : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x6a, 0x01, 0x01,
13729 : : 0x01, 0x02
13730 : : };
13731 : : return complete_seq (expand_encoding, operands);
13732 : : }
13733 : :
13734 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2666 */
13735 : : rtx
13736 : : gen_subv16sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13737 : : {
13738 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13739 : : start_sequence ();
13740 : : {
13741 : : #define FAIL return (end_sequence (), nullptr)
13742 : : #define DONE return end_sequence ()
13743 : : #line 2672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13744 : : ix86_fixup_binary_operands_no_copy (MINUS, V16SFmode, operands);
13745 : : #undef DONE
13746 : : #undef FAIL
13747 : : }
13748 : : static const uint8_t expand_encoding[] = {
13749 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81,
13750 : : 0x09, 0x74, 0x3c, 0x74, 0x01, 0x01, 0x01, 0x02,
13751 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13752 : : };
13753 : : return complete_seq (expand_encoding, operands);
13754 : : }
13755 : :
13756 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2666 */
13757 : : rtx
13758 : : gen_addv8df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13759 : : {
13760 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13761 : : start_sequence ();
13762 : : {
13763 : : #define FAIL return (end_sequence (), nullptr)
13764 : : #define DONE return end_sequence ()
13765 : : #line 2672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13766 : : ix86_fixup_binary_operands_no_copy (PLUS, V8DFmode, operands);
13767 : : #undef DONE
13768 : : #undef FAIL
13769 : : }
13770 : : static const uint8_t expand_encoding[] = {
13771 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81,
13772 : : 0x09, 0x75, 0x3b, 0x75, 0x01, 0x01, 0x01, 0x02,
13773 : : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13774 : : };
13775 : : return complete_seq (expand_encoding, operands);
13776 : : }
13777 : :
13778 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2666 */
13779 : : rtx
13780 : : gen_subv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
13781 : : {
13782 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13783 : : start_sequence ();
13784 : : {
13785 : : #define FAIL return (end_sequence (), nullptr)
13786 : : #define DONE return end_sequence ()
13787 : : #line 2672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13788 : : ix86_fixup_binary_operands_no_copy (MINUS, V2DFmode, operands);
13789 : : #undef DONE
13790 : : #undef FAIL
13791 : : }
13792 : : static const uint8_t expand_encoding[] = {
13793 : : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x6c, 0x01, 0x01,
13794 : : 0x01, 0x02
13795 : : };
13796 : : return complete_seq (expand_encoding, operands);
13797 : : }
13798 : :
13799 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2666 */
13800 : : rtx
13801 : : gen_subv16bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13802 : : {
13803 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13804 : : start_sequence ();
13805 : : {
13806 : : #define FAIL return (end_sequence (), nullptr)
13807 : : #define DONE return end_sequence ()
13808 : : #line 2672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13809 : : ix86_fixup_binary_operands_no_copy (MINUS, V16BFmode, operands);
13810 : : #undef DONE
13811 : : #undef FAIL
13812 : : }
13813 : : static const uint8_t expand_encoding[] = {
13814 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x3c,
13815 : : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13816 : : 0x04
13817 : : };
13818 : : return complete_seq (expand_encoding, operands);
13819 : : }
13820 : :
13821 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2737 */
13822 : : rtx
13823 : : gen_cond_mulv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13824 : : {
13825 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13826 : : start_sequence ();
13827 : : {
13828 : : #define FAIL _Pragma ("GCC error \"cond_mulv8df cannot FAIL\"") (void)0
13829 : : #define DONE return end_sequence ()
13830 : : #line 2746 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13831 : : {
13832 : : emit_insn (gen_mulv8df3_mask (operands[0],
13833 : : operands[2],
13834 : : operands[3],
13835 : : operands[4],
13836 : : operands[1]));
13837 : : DONE;
13838 : : }
13839 : : #undef DONE
13840 : : #undef FAIL
13841 : : }
13842 : : static const uint8_t expand_encoding[] = {
13843 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x3e,
13844 : : 0x75, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13845 : : 0x01
13846 : : };
13847 : : return complete_seq (expand_encoding, operands);
13848 : : }
13849 : :
13850 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2755 */
13851 : : rtx
13852 : : gen_mulv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13853 : : {
13854 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13855 : : start_sequence ();
13856 : : {
13857 : : #define FAIL return (end_sequence (), nullptr)
13858 : : #define DONE return end_sequence ()
13859 : : #line 2761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13860 : : ix86_fixup_binary_operands_no_copy (MULT, V16SFmode, operands);
13861 : : #undef DONE
13862 : : #undef FAIL
13863 : : }
13864 : : static const uint8_t expand_encoding[] = {
13865 : : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x74, 0x01, 0x01,
13866 : : 0x01, 0x02
13867 : : };
13868 : : return complete_seq (expand_encoding, operands);
13869 : : }
13870 : :
13871 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2755 */
13872 : : rtx
13873 : : gen_mulv8df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13874 : : {
13875 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13876 : : start_sequence ();
13877 : : {
13878 : : #define FAIL return (end_sequence (), nullptr)
13879 : : #define DONE return end_sequence ()
13880 : : #line 2761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13881 : : ix86_fixup_binary_operands_no_copy (MULT, V8DFmode, operands);
13882 : : #undef DONE
13883 : : #undef FAIL
13884 : : }
13885 : : static const uint8_t expand_encoding[] = {
13886 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x3e,
13887 : : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
13888 : : 0x33
13889 : : };
13890 : : return complete_seq (expand_encoding, operands);
13891 : : }
13892 : :
13893 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2755 */
13894 : : rtx
13895 : : gen_mulv16bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13896 : : {
13897 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13898 : : start_sequence ();
13899 : : {
13900 : : #define FAIL return (end_sequence (), nullptr)
13901 : : #define DONE return end_sequence ()
13902 : : #line 2761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13903 : : ix86_fixup_binary_operands_no_copy (MULT, V16BFmode, operands);
13904 : : #undef DONE
13905 : : #undef FAIL
13906 : : }
13907 : : static const uint8_t expand_encoding[] = {
13908 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x3e,
13909 : : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13910 : : 0x04
13911 : : };
13912 : : return complete_seq (expand_encoding, operands);
13913 : : }
13914 : :
13915 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2874 */
13916 : : rtx
13917 : : gen_divv16bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13918 : : {
13919 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13920 : : start_sequence ();
13921 : : {
13922 : : #define FAIL return (end_sequence (), nullptr)
13923 : : #define DONE return end_sequence ()
13924 : : #line 2880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13925 : : {
13926 : : if (TARGET_RECIP_VEC_DIV
13927 : : && optimize_insn_for_speed_p ()
13928 : : && flag_finite_math_only
13929 : : && flag_unsafe_math_optimizations)
13930 : : {
13931 : : rtx op = gen_reg_rtx (V16BFmode);
13932 : : operands[2] = force_reg (V16BFmode, operands[2]);
13933 : : emit_insn (gen_avx10_2_rcpbf16_v16bf (op, operands[2]));
13934 : : emit_insn (gen_avx10_2_mulbf16_v16bf (operands[0], operands[1], op));
13935 : : DONE;
13936 : : }
13937 : : }
13938 : : #undef DONE
13939 : : #undef FAIL
13940 : : }
13941 : : static const uint8_t expand_encoding[] = {
13942 : : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x6d, 0x01, 0x01,
13943 : : 0x01, 0x02
13944 : : };
13945 : : return complete_seq (expand_encoding, operands);
13946 : : }
13947 : :
13948 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3059 */
13949 : : rtx
13950 : : gen_sqrtv32bf2 (const rtx operand0, const rtx operand1)
13951 : : {
13952 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13953 : : static const uint8_t expand_encoding[] = {
13954 : : 0x1f, 0x01, 0x00, 0x7c, 0x72, 0x01, 0x01
13955 : : };
13956 : : return expand_rtx (expand_encoding, operands);
13957 : : }
13958 : :
13959 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3059 */
13960 : : rtx
13961 : : gen_sqrtv8bf2 (const rtx operand0, const rtx operand1)
13962 : : {
13963 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13964 : : static const uint8_t expand_encoding[] = {
13965 : : 0x1f, 0x01, 0x00, 0x7c, 0x69, 0x01, 0x01
13966 : : };
13967 : : return expand_rtx (expand_encoding, operands);
13968 : : }
13969 : :
13970 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3059 */
13971 : : rtx
13972 : : gen_sqrtv8df2 (const rtx operand0, const rtx operand1)
13973 : : {
13974 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13975 : : static const uint8_t expand_encoding[] = {
13976 : : 0x1f, 0x01, 0x00, 0x7c, 0x75, 0x01, 0x01
13977 : : };
13978 : : return expand_rtx (expand_encoding, operands);
13979 : : }
13980 : :
13981 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3142 */
13982 : : rtx
13983 : : gen_rsqrtv8hf2 (const rtx operand0, const rtx operand1)
13984 : : {
13985 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13986 : : static const uint8_t expand_encoding[] = {
13987 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x01, 0x01, 0x01,
13988 : : 0x38
13989 : : };
13990 : : return expand_rtx (expand_encoding, operands);
13991 : : }
13992 : :
13993 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3275 */
13994 : : rtx
13995 : : gen_cond_smaxv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13996 : : {
13997 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13998 : : start_sequence ();
13999 : : {
14000 : : #define FAIL return (end_sequence (), nullptr)
14001 : : #define DONE return end_sequence ()
14002 : : #line 3284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14003 : : {
14004 : : emit_insn (gen_smaxv8hf3_mask (operands[0],
14005 : : operands[2],
14006 : : operands[3],
14007 : : operands[4],
14008 : : operands[1]));
14009 : : DONE;
14010 : : }
14011 : : #undef DONE
14012 : : #undef FAIL
14013 : : }
14014 : : static const uint8_t expand_encoding[] = {
14015 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x53,
14016 : : 0x6a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14017 : : 0x01
14018 : : };
14019 : : return complete_seq (expand_encoding, operands);
14020 : : }
14021 : :
14022 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3275 */
14023 : : rtx
14024 : : gen_cond_smaxv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14025 : : {
14026 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14027 : : start_sequence ();
14028 : : {
14029 : : #define FAIL return (end_sequence (), nullptr)
14030 : : #define DONE return end_sequence ()
14031 : : #line 3284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14032 : : {
14033 : : emit_insn (gen_smaxv4df3_mask (operands[0],
14034 : : operands[2],
14035 : : operands[3],
14036 : : operands[4],
14037 : : operands[1]));
14038 : : DONE;
14039 : : }
14040 : : #undef DONE
14041 : : #undef FAIL
14042 : : }
14043 : : static const uint8_t expand_encoding[] = {
14044 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x53,
14045 : : 0x70, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14046 : : 0x01
14047 : : };
14048 : : return complete_seq (expand_encoding, operands);
14049 : : }
14050 : :
14051 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3293 */
14052 : : rtx
14053 : : gen_sminv32hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14054 : : {
14055 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14056 : : start_sequence ();
14057 : : {
14058 : : #define FAIL return (end_sequence (), nullptr)
14059 : : #define DONE return end_sequence ()
14060 : : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14061 : : {
14062 : : if (!flag_finite_math_only || flag_signed_zeros)
14063 : : {
14064 : : operands[1] = force_reg (V32HFmode, operands[1]);
14065 : : emit_insn (gen_ieee_minv32hf3_mask
14066 : : (operands[0], operands[1], operands[2]
14067 : : , operands[3], operands[4]
14068 : : ));
14069 : : DONE;
14070 : : }
14071 : : else
14072 : : ix86_fixup_binary_operands_no_copy (SMIN, V32HFmode, operands);
14073 : : }
14074 : : #undef DONE
14075 : : #undef FAIL
14076 : : }
14077 : : static const uint8_t expand_encoding[] = {
14078 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x52,
14079 : : 0x73, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14080 : : 0x04
14081 : : };
14082 : : return complete_seq (expand_encoding, operands);
14083 : : }
14084 : :
14085 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3293 */
14086 : : rtx
14087 : : gen_smaxv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
14088 : : {
14089 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14090 : : start_sequence ();
14091 : : {
14092 : : #define FAIL return (end_sequence (), nullptr)
14093 : : #define DONE return end_sequence ()
14094 : : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14095 : : {
14096 : : if (!flag_finite_math_only || flag_signed_zeros)
14097 : : {
14098 : : operands[1] = force_reg (V16SFmode, operands[1]);
14099 : : emit_insn (gen_ieee_maxv16sf3
14100 : : (operands[0], operands[1], operands[2]
14101 : :
14102 : : ));
14103 : : DONE;
14104 : : }
14105 : : else
14106 : : ix86_fixup_binary_operands_no_copy (SMAX, V16SFmode, operands);
14107 : : }
14108 : : #undef DONE
14109 : : #undef FAIL
14110 : : }
14111 : : static const uint8_t expand_encoding[] = {
14112 : : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x74, 0x01, 0x01,
14113 : : 0x01, 0x02
14114 : : };
14115 : : return complete_seq (expand_encoding, operands);
14116 : : }
14117 : :
14118 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3293 */
14119 : : rtx
14120 : : gen_smaxv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14121 : : {
14122 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14123 : : start_sequence ();
14124 : : {
14125 : : #define FAIL return (end_sequence (), nullptr)
14126 : : #define DONE return end_sequence ()
14127 : : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14128 : : {
14129 : : if (!flag_finite_math_only || flag_signed_zeros)
14130 : : {
14131 : : operands[1] = force_reg (V8SFmode, operands[1]);
14132 : : emit_insn (gen_ieee_maxv8sf3_mask
14133 : : (operands[0], operands[1], operands[2]
14134 : : , operands[3], operands[4]
14135 : : ));
14136 : : DONE;
14137 : : }
14138 : : else
14139 : : ix86_fixup_binary_operands_no_copy (SMAX, V8SFmode, operands);
14140 : : }
14141 : : #undef DONE
14142 : : #undef FAIL
14143 : : }
14144 : : static const uint8_t expand_encoding[] = {
14145 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x53,
14146 : : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14147 : : 0x04
14148 : : };
14149 : : return complete_seq (expand_encoding, operands);
14150 : : }
14151 : :
14152 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3293 */
14153 : : rtx
14154 : : gen_sminv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
14155 : : {
14156 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14157 : : start_sequence ();
14158 : : {
14159 : : #define FAIL return (end_sequence (), nullptr)
14160 : : #define DONE return end_sequence ()
14161 : : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14162 : : {
14163 : : if (!flag_finite_math_only || flag_signed_zeros)
14164 : : {
14165 : : operands[1] = force_reg (V8DFmode, operands[1]);
14166 : : emit_insn (gen_ieee_minv8df3
14167 : : (operands[0], operands[1], operands[2]
14168 : :
14169 : : ));
14170 : : DONE;
14171 : : }
14172 : : else
14173 : : ix86_fixup_binary_operands_no_copy (SMIN, V8DFmode, operands);
14174 : : }
14175 : : #undef DONE
14176 : : #undef FAIL
14177 : : }
14178 : : static const uint8_t expand_encoding[] = {
14179 : : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x75, 0x01, 0x01,
14180 : : 0x01, 0x02
14181 : : };
14182 : : return complete_seq (expand_encoding, operands);
14183 : : }
14184 : :
14185 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3293 */
14186 : : rtx
14187 : : gen_smaxv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14188 : : {
14189 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14190 : : start_sequence ();
14191 : : {
14192 : : #define FAIL return (end_sequence (), nullptr)
14193 : : #define DONE return end_sequence ()
14194 : : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14195 : : {
14196 : : if (!flag_finite_math_only || flag_signed_zeros)
14197 : : {
14198 : : operands[1] = force_reg (V2DFmode, operands[1]);
14199 : : emit_insn (gen_ieee_maxv2df3_mask
14200 : : (operands[0], operands[1], operands[2]
14201 : : , operands[3], operands[4]
14202 : : ));
14203 : : DONE;
14204 : : }
14205 : : else
14206 : : ix86_fixup_binary_operands_no_copy (SMAX, V2DFmode, operands);
14207 : : }
14208 : : #undef DONE
14209 : : #undef FAIL
14210 : : }
14211 : : static const uint8_t expand_encoding[] = {
14212 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x53,
14213 : : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14214 : : 0x04
14215 : : };
14216 : : return complete_seq (expand_encoding, operands);
14217 : : }
14218 : :
14219 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3337 */
14220 : : extern rtx_insn *gen_split_1345 (rtx_insn *, rtx *);
14221 : : rtx_insn *
14222 : : gen_split_1345 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14223 : : {
14224 : : if (dump_file)
14225 : : fprintf (dump_file, "Splitting with gen_split_1345 (sse.md:3337)\n");
14226 : : start_sequence ();
14227 : : #define FAIL return (end_sequence (), nullptr)
14228 : : #define DONE return end_sequence ()
14229 : : #line 3356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14230 : : {
14231 : : int u = UNSPEC_IEEE_MIN;
14232 : : rtx tmp = operands[2];
14233 : : if ((INTVAL (operands[5]) == 1 && rtx_equal_p (operands[1], operands[4]))
14234 : : || (INTVAL (operands[5]) == 14 && rtx_equal_p (operands[1], operands[3])))
14235 : : u = UNSPEC_IEEE_MAX;
14236 : :
14237 : : if (MEM_P (operands[1]))
14238 : : operands[1] = force_reg (V2DFmode, operands[1]);
14239 : :
14240 : : if (immediate_operand (operands[2], V2DFmode))
14241 : : tmp = force_reg (V2DFmode, operands[2]);
14242 : : rtvec v = gen_rtvec (2, operands[1], tmp);
14243 : : operands[6] = gen_rtx_UNSPEC (V2DFmode, v, u);
14244 : : }
14245 : : #undef DONE
14246 : : #undef FAIL
14247 : : static const uint8_t expand_encoding[] = {
14248 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x06
14249 : : };
14250 : : return complete_seq (expand_encoding, operands);
14251 : : }
14252 : :
14253 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3424 */
14254 : : extern rtx_insn *gen_split_1356 (rtx_insn *, rtx *);
14255 : : rtx_insn *
14256 : : gen_split_1356 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14257 : : {
14258 : : if (dump_file)
14259 : : fprintf (dump_file, "Splitting with gen_split_1356 (sse.md:3424)\n");
14260 : : start_sequence ();
14261 : : #define FAIL return (end_sequence (), nullptr)
14262 : : #define DONE return end_sequence ()
14263 : : #line 3436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14264 : : {
14265 : : int u = UNSPEC_IEEE_MIN;
14266 : : if (GET_CODE (operands[1]) == GT)
14267 : : u = UNSPEC_IEEE_MAX;
14268 : :
14269 : : rtx tmp = force_reg (V4DFmode, operands[3]);
14270 : : rtvec v = gen_rtvec (2, operands[2], tmp);
14271 : : operands[5] = gen_rtx_UNSPEC (V4DFmode, v, u);
14272 : : }
14273 : : #undef DONE
14274 : : #undef FAIL
14275 : : static const uint8_t expand_encoding[] = {
14276 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x05
14277 : : };
14278 : : return complete_seq (expand_encoding, operands);
14279 : : }
14280 : :
14281 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3503 */
14282 : : rtx
14283 : : gen_sse_vmsmaxv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
14284 : : {
14285 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14286 : : start_sequence ();
14287 : : {
14288 : : #define FAIL return (end_sequence (), nullptr)
14289 : : #define DONE return end_sequence ()
14290 : : #line 3512 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14291 : : {
14292 : : if (!flag_finite_math_only || flag_signed_zeros)
14293 : : {
14294 : : emit_insn (gen_sse_ieee_vmmaxv4sf3
14295 : : (operands[0], operands[1], operands[2]
14296 : :
14297 : : ));
14298 : : DONE;
14299 : : }
14300 : : }
14301 : : #undef DONE
14302 : : #undef FAIL
14303 : : }
14304 : : static const uint8_t expand_encoding[] = {
14305 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x53,
14306 : : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27,
14307 : : 0x01
14308 : : };
14309 : : return complete_seq (expand_encoding, operands);
14310 : : }
14311 : :
14312 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3503 */
14313 : : rtx
14314 : : gen_sse_vmsminv4sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
14315 : : {
14316 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
14317 : : start_sequence ();
14318 : : {
14319 : : #define FAIL return (end_sequence (), nullptr)
14320 : : #define DONE return end_sequence ()
14321 : : #line 3512 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14322 : : {
14323 : : if (!flag_finite_math_only || flag_signed_zeros)
14324 : : {
14325 : : emit_insn (gen_sse_ieee_vmminv4sf3_mask_round
14326 : : (operands[0], operands[1], operands[2]
14327 : : , operands[3], operands[4]
14328 : : , operands[5]));
14329 : : DONE;
14330 : : }
14331 : : }
14332 : : #undef DONE
14333 : : #undef FAIL
14334 : : }
14335 : : static const uint8_t expand_encoding[] = {
14336 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81,
14337 : : 0x09, 0x6b, 0x81, 0x09, 0x6b, 0x52, 0x6b, 0x01,
14338 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14339 : : 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
14340 : : };
14341 : : return complete_seq (expand_encoding, operands);
14342 : : }
14343 : :
14344 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3592 */
14345 : : extern rtx_insn *gen_split_1361 (rtx_insn *, rtx *);
14346 : : rtx_insn *
14347 : : gen_split_1361 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14348 : : {
14349 : : if (dump_file)
14350 : : fprintf (dump_file, "Splitting with gen_split_1361 (sse.md:3592)\n");
14351 : : start_sequence ();
14352 : : static const uint8_t expand_encoding[] = {
14353 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x3c,
14354 : : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x6c, 0x01,
14355 : : 0x01, 0x01, 0x02, 0x01, 0x05
14356 : : };
14357 : : return complete_seq (expand_encoding, operands);
14358 : : }
14359 : :
14360 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3676 */
14361 : : extern rtx_insn *gen_split_1370 (rtx_insn *, rtx *);
14362 : : rtx_insn *
14363 : : gen_split_1370 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14364 : : {
14365 : : if (dump_file)
14366 : : fprintf (dump_file, "Splitting with gen_split_1370 (sse.md:3676)\n");
14367 : : start_sequence ();
14368 : : #define FAIL return (end_sequence (), nullptr)
14369 : : #define DONE return end_sequence ()
14370 : : #line 3699 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14371 : : {
14372 : : int i, nelt = XVECLEN (operands[5], 0);
14373 : : HOST_WIDE_INT ival = 0;
14374 : :
14375 : : for (i = 0; i < nelt; i++)
14376 : : if (INTVAL (XVECEXP (operands[5], 0, i)) >= GET_MODE_NUNITS (V8SFmode))
14377 : : ival |= HOST_WIDE_INT_1 << i;
14378 : :
14379 : : operands[5] = GEN_INT (ival);
14380 : : }
14381 : : #undef DONE
14382 : : #undef FAIL
14383 : : static const uint8_t expand_encoding[] = {
14384 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x3c,
14385 : : 0x6f, 0x01, 0x03, 0x01, 0x04, 0x3b, 0x6f, 0x01,
14386 : : 0x03, 0x01, 0x04, 0x01, 0x05
14387 : : };
14388 : : return complete_seq (expand_encoding, operands);
14389 : : }
14390 : :
14391 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3925 */
14392 : : rtx
14393 : : gen_reduc_plus_scal_v2di (const rtx operand0, const rtx operand1)
14394 : : {
14395 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14396 : : start_sequence ();
14397 : : {
14398 : : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v2di cannot FAIL\"") (void)0
14399 : : #define DONE return end_sequence ()
14400 : : #line 3930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14401 : : {
14402 : : rtx tmp = gen_reg_rtx (V2DImode);
14403 : : ix86_expand_reduc (gen_addv2di3, tmp, operands[1]);
14404 : : emit_insn (gen_vec_extractv2didi (operands[0], tmp,
14405 : : const0_rtx));
14406 : : DONE;
14407 : : }
14408 : : #undef DONE
14409 : : #undef FAIL
14410 : : }
14411 : : static const uint8_t expand_encoding[] = {
14412 : : 0x01, 0x3b, 0x52, 0x01, 0x00, 0x01, 0x01
14413 : : };
14414 : : return complete_seq (expand_encoding, operands);
14415 : : }
14416 : :
14417 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3968 */
14418 : : rtx
14419 : : gen_reduc_plus_scal_v8si (const rtx operand0, const rtx operand1)
14420 : : {
14421 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14422 : : start_sequence ();
14423 : : {
14424 : : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v8si cannot FAIL\"") (void)0
14425 : : #define DONE return end_sequence ()
14426 : : #line 3973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14427 : : {
14428 : : rtx tmp = gen_reg_rtx (V4SImode);
14429 : : rtx tmp2 = gen_reg_rtx (V4SImode);
14430 : : rtx tmp3 = gen_reg_rtx (V4SImode);
14431 : : emit_insn (gen_vec_extract_hi_v8si (tmp, operands[1]));
14432 : : emit_insn (gen_vec_extract_lo_v8si (tmp2, operands[1]));
14433 : : emit_insn (gen_addv4si3 (tmp3, tmp, tmp2));
14434 : : emit_insn (gen_reduc_plus_scal_v4si (operands[0], tmp3));
14435 : : DONE;
14436 : : }
14437 : : #undef DONE
14438 : : #undef FAIL
14439 : : }
14440 : : static const uint8_t expand_encoding[] = {
14441 : : 0x01, 0x3b, 0x56, 0x01, 0x00, 0x01, 0x01
14442 : : };
14443 : : return complete_seq (expand_encoding, operands);
14444 : : }
14445 : :
14446 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3991 */
14447 : : rtx
14448 : : gen_reduc_smin_scal_v4sf (const rtx operand0, const rtx operand1)
14449 : : {
14450 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14451 : : start_sequence ();
14452 : : {
14453 : : #define FAIL return (end_sequence (), nullptr)
14454 : : #define DONE return end_sequence ()
14455 : : #line 3996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14456 : : {
14457 : : rtx tmp = gen_reg_rtx (V4SFmode);
14458 : : ix86_expand_reduc (gen_sminv4sf3, tmp, operands[1]);
14459 : : emit_insn (gen_vec_extractv4sfsf (operands[0], tmp,
14460 : : const0_rtx));
14461 : : DONE;
14462 : : }
14463 : : #undef DONE
14464 : : #undef FAIL
14465 : : }
14466 : : static const uint8_t expand_encoding[] = {
14467 : : 0x01, 0x52, 0x6b, 0x01, 0x00, 0x01, 0x01
14468 : : };
14469 : : return complete_seq (expand_encoding, operands);
14470 : : }
14471 : :
14472 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3991 */
14473 : : rtx
14474 : : gen_reduc_smin_scal_v2di (const rtx operand0, const rtx operand1)
14475 : : {
14476 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14477 : : start_sequence ();
14478 : : {
14479 : : #define FAIL return (end_sequence (), nullptr)
14480 : : #define DONE return end_sequence ()
14481 : : #line 3996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14482 : : {
14483 : : rtx tmp = gen_reg_rtx (V2DImode);
14484 : : ix86_expand_reduc (gen_sminv2di3, tmp, operands[1]);
14485 : : emit_insn (gen_vec_extractv2didi (operands[0], tmp,
14486 : : const0_rtx));
14487 : : DONE;
14488 : : }
14489 : : #undef DONE
14490 : : #undef FAIL
14491 : : }
14492 : : static const uint8_t expand_encoding[] = {
14493 : : 0x01, 0x52, 0x52, 0x01, 0x00, 0x01, 0x01
14494 : : };
14495 : : return complete_seq (expand_encoding, operands);
14496 : : }
14497 : :
14498 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4015 */
14499 : : rtx
14500 : : gen_reduc_smin_scal_v4di (const rtx operand0, const rtx operand1)
14501 : : {
14502 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14503 : : start_sequence ();
14504 : : {
14505 : : #define FAIL return (end_sequence (), nullptr)
14506 : : #define DONE return end_sequence ()
14507 : : #line 4020 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14508 : : {
14509 : : rtx tmp = gen_reg_rtx (V2DImode);
14510 : : rtx tmp2 = gen_reg_rtx (V2DImode);
14511 : : rtx tmp3 = gen_reg_rtx (V2DImode);
14512 : : emit_insn (gen_vec_extract_hi_v4di (tmp, operands[1]));
14513 : : emit_insn (gen_vec_extract_lo_v4di (tmp2, operands[1]));
14514 : : emit_insn (gen_sminv2di3 (tmp3, tmp, tmp2));
14515 : : emit_insn (gen_reduc_smin_scal_v2di (operands[0], tmp3));
14516 : : DONE;
14517 : : }
14518 : : #undef DONE
14519 : : #undef FAIL
14520 : : }
14521 : : static const uint8_t expand_encoding[] = {
14522 : : 0x01, 0x52, 0x57, 0x01, 0x00, 0x01, 0x01
14523 : : };
14524 : : return complete_seq (expand_encoding, operands);
14525 : : }
14526 : :
14527 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4015 */
14528 : : rtx
14529 : : gen_reduc_smin_scal_v32hi (const rtx operand0, const rtx operand1)
14530 : : {
14531 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14532 : : start_sequence ();
14533 : : {
14534 : : #define FAIL return (end_sequence (), nullptr)
14535 : : #define DONE return end_sequence ()
14536 : : #line 4020 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14537 : : {
14538 : : rtx tmp = gen_reg_rtx (V16HImode);
14539 : : rtx tmp2 = gen_reg_rtx (V16HImode);
14540 : : rtx tmp3 = gen_reg_rtx (V16HImode);
14541 : : emit_insn (gen_vec_extract_hi_v32hi (tmp, operands[1]));
14542 : : emit_insn (gen_vec_extract_lo_v32hi (tmp2, operands[1]));
14543 : : emit_insn (gen_sminv16hi3 (tmp3, tmp, tmp2));
14544 : : emit_insn (gen_reduc_smin_scal_v16hi (operands[0], tmp3));
14545 : : DONE;
14546 : : }
14547 : : #undef DONE
14548 : : #undef FAIL
14549 : : }
14550 : : static const uint8_t expand_encoding[] = {
14551 : : 0x01, 0x52, 0x5a, 0x01, 0x00, 0x01, 0x01
14552 : : };
14553 : : return complete_seq (expand_encoding, operands);
14554 : : }
14555 : :
14556 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4031 */
14557 : : rtx
14558 : : gen_reduc_umin_scal_v16si (const rtx operand0, const rtx operand1)
14559 : : {
14560 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14561 : : start_sequence ();
14562 : : {
14563 : : #define FAIL return (end_sequence (), nullptr)
14564 : : #define DONE return end_sequence ()
14565 : : #line 4036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14566 : : {
14567 : : rtx tmp = gen_reg_rtx (V8SImode);
14568 : : rtx tmp2 = gen_reg_rtx (V8SImode);
14569 : : rtx tmp3 = gen_reg_rtx (V8SImode);
14570 : : emit_insn (gen_vec_extract_hi_v16si (tmp, operands[1]));
14571 : : emit_insn (gen_vec_extract_lo_v16si (tmp2, operands[1]));
14572 : : emit_insn (gen_uminv8si3 (tmp3, tmp, tmp2));
14573 : : emit_insn (gen_reduc_umin_scal_v8si (operands[0], tmp3));
14574 : : DONE;
14575 : : }
14576 : : #undef DONE
14577 : : #undef FAIL
14578 : : }
14579 : : static const uint8_t expand_encoding[] = {
14580 : : 0x01, 0x54, 0x5b, 0x01, 0x00, 0x01, 0x01
14581 : : };
14582 : : return complete_seq (expand_encoding, operands);
14583 : : }
14584 : :
14585 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4047 */
14586 : : rtx
14587 : : gen_reduc_umin_scal_v16hi (const rtx operand0, const rtx operand1)
14588 : : {
14589 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14590 : : start_sequence ();
14591 : : {
14592 : : #define FAIL return (end_sequence (), nullptr)
14593 : : #define DONE return end_sequence ()
14594 : : #line 4052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14595 : : {
14596 : : rtx tmp = gen_reg_rtx (V8HImode);
14597 : : rtx tmp2 = gen_reg_rtx (V8HImode);
14598 : : rtx tmp3 = gen_reg_rtx (V8HImode);
14599 : : emit_insn (gen_vec_extract_hi_v16hi (tmp, operands[1]));
14600 : : emit_insn (gen_vec_extract_lo_v16hi (tmp2, operands[1]));
14601 : : emit_insn (gen_uminv8hi3 (tmp3, tmp, tmp2));
14602 : : rtx tmp4 = gen_reg_rtx (V8HImode);
14603 : : ix86_expand_reduc (gen_uminv8hi3, tmp4, tmp3);
14604 : : emit_insn (gen_vec_extractv8hihi
14605 : : (operands[0], tmp4, const0_rtx));
14606 : : DONE;
14607 : : }
14608 : : #undef DONE
14609 : : #undef FAIL
14610 : : }
14611 : : static const uint8_t expand_encoding[] = {
14612 : : 0x01, 0x54, 0x55, 0x01, 0x00, 0x01, 0x01
14613 : : };
14614 : : return complete_seq (expand_encoding, operands);
14615 : : }
14616 : :
14617 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4097 */
14618 : : rtx
14619 : : gen_reduc_sbool_ior_scal_qi (const rtx operand0, const rtx operand1, const rtx operand2)
14620 : : {
14621 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14622 : : start_sequence ();
14623 : : {
14624 : : #define FAIL _Pragma ("GCC error \"reduc_sbool_ior_scal_qi cannot FAIL\"") (void)0
14625 : : #define DONE return end_sequence ()
14626 : : #line 4102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14627 : : {
14628 : : int n_elt = INTVAL (operands[2]);
14629 : : rtx op1 = operands[1];
14630 : : if (n_elt < 8)
14631 : : {
14632 : : rtx op2 = gen_int_mode ((1u << n_elt) - 1, QImode);
14633 : : op1 = gen_reg_rtx (QImode);
14634 : : emit_insn (gen_andqi3 (op1, operands[1], op2));
14635 : : }
14636 : : ix86_expand_setcc (operands[0], NE,
14637 : : op1, CONST0_RTX (QImode));
14638 : : DONE;
14639 : : }
14640 : : #undef DONE
14641 : : #undef FAIL
14642 : : }
14643 : : static const uint8_t expand_encoding[] = {
14644 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
14645 : : };
14646 : : return complete_seq (expand_encoding, operands);
14647 : : }
14648 : :
14649 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4160 */
14650 : : rtx
14651 : : gen_reduc_sbool_and_scal_v16qi (const rtx operand0, const rtx operand1)
14652 : : {
14653 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14654 : : start_sequence ();
14655 : : {
14656 : : #define FAIL _Pragma ("GCC error \"reduc_sbool_and_scal_v16qi cannot FAIL\"") (void)0
14657 : : #define DONE return end_sequence ()
14658 : : #line 4164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14659 : : {
14660 : : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14661 : : rtx op2, tmp;
14662 : : if (TARGET_AVX2 || 16 != 32)
14663 : : {
14664 : : op2 = force_reg (V16QImode, CONST0_RTX (V16QImode));
14665 : : tmp = gen_reg_rtx (V16QImode);
14666 : : rtx op1 = gen_rtx_EQ (V16QImode, operands[1], op2);
14667 : : emit_insn (gen_vec_cmpv16qiv16qi (tmp, op1, operands[1], op2));
14668 : : }
14669 : : else
14670 : : {
14671 : : op2 = force_reg (V16QImode, CONSTM1_RTX (V16QImode));
14672 : : tmp = gen_reg_rtx (V16QImode);
14673 : : rtx ops[3] = { tmp, operands[1], op2 };
14674 : : ix86_expand_vector_logical_operator (XOR, V16QImode, ops);
14675 : : }
14676 : :
14677 : : tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, tmp, tmp), UNSPEC_PTEST);
14678 : : emit_insn (gen_rtx_SET (flags, tmp));
14679 : : rtx ret = gen_rtx_fmt_ee (EQ, VOIDmode, flags, const0_rtx);
14680 : : PUT_MODE (ret, QImode);
14681 : : emit_insn (gen_rtx_SET (operands[0], ret));
14682 : : DONE;
14683 : :
14684 : : }
14685 : : #undef DONE
14686 : : #undef FAIL
14687 : : }
14688 : : static const uint8_t expand_encoding[] = {
14689 : : 0x02, 0x01, 0x00, 0x01, 0x01
14690 : : };
14691 : : return complete_seq (expand_encoding, operands);
14692 : : }
14693 : :
14694 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4191 */
14695 : : rtx
14696 : : gen_reduc_sbool_ior_scal_v8hi (const rtx operand0, const rtx operand1)
14697 : : {
14698 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14699 : : start_sequence ();
14700 : : {
14701 : : #define FAIL _Pragma ("GCC error \"reduc_sbool_ior_scal_v8hi cannot FAIL\"") (void)0
14702 : : #define DONE return end_sequence ()
14703 : : #line 4195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14704 : : {
14705 : : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14706 : : rtx tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, operands[1], operands[1]), UNSPEC_PTEST);
14707 : : emit_insn (gen_rtx_SET (flags, tmp));
14708 : : rtx ret = gen_rtx_fmt_ee (NE, VOIDmode, flags, const0_rtx);
14709 : : PUT_MODE (ret, QImode);
14710 : : emit_insn (gen_rtx_SET (operands[0], ret));
14711 : : DONE;
14712 : : }
14713 : : #undef DONE
14714 : : #undef FAIL
14715 : : }
14716 : : static const uint8_t expand_encoding[] = {
14717 : : 0x02, 0x01, 0x00, 0x01, 0x01
14718 : : };
14719 : : return complete_seq (expand_encoding, operands);
14720 : : }
14721 : :
14722 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4223 */
14723 : : rtx
14724 : : gen_reduc_sbool_xor_scal_v2di (const rtx operand0, const rtx operand1)
14725 : : {
14726 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14727 : : start_sequence ();
14728 : : {
14729 : : #define FAIL _Pragma ("GCC error \"reduc_sbool_xor_scal_v2di cannot FAIL\"") (void)0
14730 : : #define DONE return end_sequence ()
14731 : : #line 4227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14732 : : {
14733 : : rtx popcnt1 = gen_reg_rtx (SImode);
14734 : : rtx tmp = gen_rtx_UNSPEC (SImode, gen_rtvec(1,
14735 : : gen_lowpart (V2DFmode,
14736 : : operands[1])),
14737 : : UNSPEC_MOVMSK);
14738 : : emit_insn (gen_rtx_SET (popcnt1, tmp));
14739 : :
14740 : : emit_insn (gen_popcountsi2 (popcnt1, popcnt1));
14741 : : emit_insn (gen_andsi3 (popcnt1, popcnt1, GEN_INT (0x1)));
14742 : :
14743 : : emit_move_insn (operands[0], gen_lowpart (QImode, popcnt1));
14744 : : DONE;
14745 : : }
14746 : : #undef DONE
14747 : : #undef FAIL
14748 : : }
14749 : : static const uint8_t expand_encoding[] = {
14750 : : 0x02, 0x01, 0x00, 0x01, 0x01
14751 : : };
14752 : : return complete_seq (expand_encoding, operands);
14753 : : }
14754 : :
14755 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4270 */
14756 : : rtx
14757 : : gen_reduc_ior_scal_v4si (const rtx operand0, const rtx operand1)
14758 : : {
14759 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14760 : : start_sequence ();
14761 : : {
14762 : : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v4si cannot FAIL\"") (void)0
14763 : : #define DONE return end_sequence ()
14764 : : #line 4275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14765 : : {
14766 : : rtx tmp = gen_reg_rtx (V4SImode);
14767 : : ix86_expand_reduc (gen_iorv4si3, tmp, operands[1]);
14768 : : emit_insn (gen_vec_extractv4sisi (operands[0],
14769 : : tmp, const0_rtx));
14770 : : DONE;
14771 : : }
14772 : : #undef DONE
14773 : : #undef FAIL
14774 : : }
14775 : : static const uint8_t expand_encoding[] = {
14776 : : 0x01, 0x4a, 0x51, 0x01, 0x00, 0x01, 0x01
14777 : : };
14778 : : return complete_seq (expand_encoding, operands);
14779 : : }
14780 : :
14781 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4289 */
14782 : : rtx
14783 : : gen_reduc_xor_scal_v16hi (const rtx operand0, const rtx operand1)
14784 : : {
14785 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14786 : : start_sequence ();
14787 : : {
14788 : : #define FAIL _Pragma ("GCC error \"reduc_xor_scal_v16hi cannot FAIL\"") (void)0
14789 : : #define DONE return end_sequence ()
14790 : : #line 4294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14791 : : {
14792 : : rtx tmp = gen_reg_rtx (V8HImode);
14793 : : rtx tmp2 = gen_reg_rtx (V8HImode);
14794 : : rtx tmp3 = gen_reg_rtx (V8HImode);
14795 : : emit_insn (gen_vec_extract_hi_v16hi (tmp, operands[1]));
14796 : : emit_insn (gen_vec_extract_lo_v16hi (tmp2, operands[1]));
14797 : : emit_insn (gen_xorv8hi3 (tmp3, tmp, tmp2));
14798 : : emit_insn (gen_reduc_xor_scal_v8hi (operands[0], tmp3));
14799 : : DONE;
14800 : : }
14801 : : #undef DONE
14802 : : #undef FAIL
14803 : : }
14804 : : static const uint8_t expand_encoding[] = {
14805 : : 0x01, 0x4b, 0x55, 0x01, 0x00, 0x01, 0x01
14806 : : };
14807 : : return complete_seq (expand_encoding, operands);
14808 : : }
14809 : :
14810 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4289 */
14811 : : rtx
14812 : : gen_reduc_and_scal_v32hi (const rtx operand0, const rtx operand1)
14813 : : {
14814 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14815 : : start_sequence ();
14816 : : {
14817 : : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v32hi cannot FAIL\"") (void)0
14818 : : #define DONE return end_sequence ()
14819 : : #line 4294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14820 : : {
14821 : : rtx tmp = gen_reg_rtx (V16HImode);
14822 : : rtx tmp2 = gen_reg_rtx (V16HImode);
14823 : : rtx tmp3 = gen_reg_rtx (V16HImode);
14824 : : emit_insn (gen_vec_extract_hi_v32hi (tmp, operands[1]));
14825 : : emit_insn (gen_vec_extract_lo_v32hi (tmp2, operands[1]));
14826 : : emit_insn (gen_andv16hi3 (tmp3, tmp, tmp2));
14827 : : emit_insn (gen_reduc_and_scal_v16hi (operands[0], tmp3));
14828 : : DONE;
14829 : : }
14830 : : #undef DONE
14831 : : #undef FAIL
14832 : : }
14833 : : static const uint8_t expand_encoding[] = {
14834 : : 0x01, 0x49, 0x5a, 0x01, 0x00, 0x01, 0x01
14835 : : };
14836 : : return complete_seq (expand_encoding, operands);
14837 : : }
14838 : :
14839 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4329 */
14840 : : extern rtx_insn *gen_split_1375 (rtx_insn *, rtx *);
14841 : : rtx_insn *
14842 : : gen_split_1375 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14843 : : {
14844 : : if (dump_file)
14845 : : fprintf (dump_file, "Splitting with gen_split_1375 (sse.md:4329)\n");
14846 : : start_sequence ();
14847 : : #define FAIL return (end_sequence (), nullptr)
14848 : : #define DONE return end_sequence ()
14849 : : #line 4349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14850 : : {
14851 : : operands[6] = gen_reg_rtx (V4SFmode);
14852 : : operands[7]
14853 : : = lowpart_subreg (GET_MODE (operands[0]), operands[6], V4SFmode);
14854 : : }
14855 : : #undef DONE
14856 : : #undef FAIL
14857 : : static const uint8_t expand_encoding[] = {
14858 : : 0x02, 0x1f, 0x01, 0x06, 0x1a, 0x6b, 0x03, 0x01,
14859 : : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c, 0x1f, 0x01,
14860 : : 0x00, 0x01, 0x07
14861 : : };
14862 : : return complete_seq (expand_encoding, operands);
14863 : : }
14864 : :
14865 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4383 */
14866 : : extern rtx_insn *gen_split_1385 (rtx_insn *, rtx *);
14867 : : rtx_insn *
14868 : : gen_split_1385 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14869 : : {
14870 : : if (dump_file)
14871 : : fprintf (dump_file, "Splitting with gen_split_1385 (sse.md:4383)\n");
14872 : : start_sequence ();
14873 : : static const uint8_t expand_encoding[] = {
14874 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01,
14875 : : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c
14876 : : };
14877 : : return complete_seq (expand_encoding, operands);
14878 : : }
14879 : :
14880 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4454 */
14881 : : extern rtx_insn *gen_split_1394 (rtx_insn *, rtx *);
14882 : : rtx_insn *
14883 : : gen_split_1394 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14884 : : {
14885 : : if (dump_file)
14886 : : fprintf (dump_file, "Splitting with gen_split_1394 (sse.md:4454)\n");
14887 : : start_sequence ();
14888 : : #define FAIL return (end_sequence (), nullptr)
14889 : : #define DONE return end_sequence ()
14890 : : #line 4478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14891 : : {
14892 : : if (INTVAL (operands[5]) == 5)
14893 : : std::swap (operands[1], operands[2]);
14894 : : operands[0] = gen_lowpart (V16QImode, operands[0]);
14895 : : operands[1] = gen_lowpart (V16QImode, operands[1]);
14896 : : operands[2] = force_reg (V16QImode,
14897 : : gen_lowpart (V16QImode, operands[2]));
14898 : : }
14899 : : #undef DONE
14900 : : #undef FAIL
14901 : : static const uint8_t expand_encoding[] = {
14902 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01,
14903 : : 0x02, 0x01, 0x01, 0x32, 0x4f, 0x61, 0x51, 0x01,
14904 : : 0x03, 0x01, 0x04, 0x00, 0x34
14905 : : };
14906 : : return complete_seq (expand_encoding, operands);
14907 : : }
14908 : :
14909 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4643 */
14910 : : extern rtx_insn *gen_split_1404 (rtx_insn *, rtx *);
14911 : : rtx_insn *
14912 : : gen_split_1404 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14913 : : {
14914 : : if (dump_file)
14915 : : fprintf (dump_file, "Splitting with gen_split_1404 (sse.md:4643)\n");
14916 : : start_sequence ();
14917 : : #define FAIL return (end_sequence (), nullptr)
14918 : : #define DONE return end_sequence ()
14919 : : #line 4672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14920 : : {
14921 : : operands[5] = lowpart_subreg (HImode,
14922 : : operands[0], DImode);
14923 : : if (SUBREG_P (operands[5]))
14924 : : {
14925 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14926 : : SUBREG_PROMOTED_SET (operands[5], 1);
14927 : : }
14928 : : }
14929 : : #undef DONE
14930 : : #undef FAIL
14931 : : static const uint8_t expand_encoding[] = {
14932 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x10,
14933 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14934 : : 0x1f, 0x01, 0x04, 0x01, 0x05
14935 : : };
14936 : : return complete_seq (expand_encoding, operands);
14937 : : }
14938 : :
14939 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4643 */
14940 : : extern rtx_insn *gen_split_1414 (rtx_insn *, rtx *);
14941 : : rtx_insn *
14942 : : gen_split_1414 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14943 : : {
14944 : : if (dump_file)
14945 : : fprintf (dump_file, "Splitting with gen_split_1414 (sse.md:4643)\n");
14946 : : start_sequence ();
14947 : : #define FAIL return (end_sequence (), nullptr)
14948 : : #define DONE return end_sequence ()
14949 : : #line 4672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14950 : : {
14951 : : operands[5] = lowpart_subreg (QImode,
14952 : : operands[0], HImode);
14953 : : if (SUBREG_P (operands[5]))
14954 : : {
14955 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14956 : : SUBREG_PROMOTED_SET (operands[5], 1);
14957 : : }
14958 : : }
14959 : : #undef DONE
14960 : : #undef FAIL
14961 : : static const uint8_t expand_encoding[] = {
14962 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
14963 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14964 : : 0x1f, 0x01, 0x04, 0x01, 0x05
14965 : : };
14966 : : return complete_seq (expand_encoding, operands);
14967 : : }
14968 : :
14969 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4643 */
14970 : : extern rtx_insn *gen_split_1424 (rtx_insn *, rtx *);
14971 : : rtx_insn *
14972 : : gen_split_1424 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14973 : : {
14974 : : if (dump_file)
14975 : : fprintf (dump_file, "Splitting with gen_split_1424 (sse.md:4643)\n");
14976 : : start_sequence ();
14977 : : #define FAIL return (end_sequence (), nullptr)
14978 : : #define DONE return end_sequence ()
14979 : : #line 4672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14980 : : {
14981 : : operands[5] = lowpart_subreg (HImode,
14982 : : operands[0], SImode);
14983 : : if (SUBREG_P (operands[5]))
14984 : : {
14985 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14986 : : SUBREG_PROMOTED_SET (operands[5], 1);
14987 : : }
14988 : : }
14989 : : #undef DONE
14990 : : #undef FAIL
14991 : : static const uint8_t expand_encoding[] = {
14992 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x10,
14993 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14994 : : 0x1f, 0x01, 0x04, 0x01, 0x05
14995 : : };
14996 : : return complete_seq (expand_encoding, operands);
14997 : : }
14998 : :
14999 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4643 */
15000 : : extern rtx_insn *gen_split_1434 (rtx_insn *, rtx *);
15001 : : rtx_insn *
15002 : : gen_split_1434 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15003 : : {
15004 : : if (dump_file)
15005 : : fprintf (dump_file, "Splitting with gen_split_1434 (sse.md:4643)\n");
15006 : : start_sequence ();
15007 : : #define FAIL return (end_sequence (), nullptr)
15008 : : #define DONE return end_sequence ()
15009 : : #line 4672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15010 : : {
15011 : : operands[5] = lowpart_subreg (QImode,
15012 : : operands[0], DImode);
15013 : : if (SUBREG_P (operands[5]))
15014 : : {
15015 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15016 : : SUBREG_PROMOTED_SET (operands[5], 1);
15017 : : }
15018 : : }
15019 : : #undef DONE
15020 : : #undef FAIL
15021 : : static const uint8_t expand_encoding[] = {
15022 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
15023 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15024 : : 0x1f, 0x01, 0x04, 0x01, 0x05
15025 : : };
15026 : : return complete_seq (expand_encoding, operands);
15027 : : }
15028 : :
15029 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4643 */
15030 : : extern rtx_insn *gen_split_1444 (rtx_insn *, rtx *);
15031 : : rtx_insn *
15032 : : gen_split_1444 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15033 : : {
15034 : : if (dump_file)
15035 : : fprintf (dump_file, "Splitting with gen_split_1444 (sse.md:4643)\n");
15036 : : start_sequence ();
15037 : : #define FAIL return (end_sequence (), nullptr)
15038 : : #define DONE return end_sequence ()
15039 : : #line 4672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15040 : : {
15041 : : operands[5] = lowpart_subreg (QImode,
15042 : : operands[0], HImode);
15043 : : if (SUBREG_P (operands[5]))
15044 : : {
15045 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15046 : : SUBREG_PROMOTED_SET (operands[5], 1);
15047 : : }
15048 : : }
15049 : : #undef DONE
15050 : : #undef FAIL
15051 : : static const uint8_t expand_encoding[] = {
15052 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
15053 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15054 : : 0x1f, 0x01, 0x04, 0x01, 0x05
15055 : : };
15056 : : return complete_seq (expand_encoding, operands);
15057 : : }
15058 : :
15059 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4682 */
15060 : : extern rtx_insn *gen_split_1454 (rtx_insn *, rtx *);
15061 : : rtx_insn *
15062 : : gen_split_1454 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15063 : : {
15064 : : if (dump_file)
15065 : : fprintf (dump_file, "Splitting with gen_split_1454 (sse.md:4682)\n");
15066 : : start_sequence ();
15067 : : #define FAIL return (end_sequence (), nullptr)
15068 : : #define DONE return end_sequence ()
15069 : : #line 4700 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15070 : : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15071 : : #undef DONE
15072 : : #undef FAIL
15073 : : static const uint8_t expand_encoding[] = {
15074 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01,
15075 : : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
15076 : : };
15077 : : return complete_seq (expand_encoding, operands);
15078 : : }
15079 : :
15080 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4834 */
15081 : : extern rtx_insn *gen_split_1464 (rtx_insn *, rtx *);
15082 : : rtx_insn *
15083 : : gen_split_1464 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15084 : : {
15085 : : if (dump_file)
15086 : : fprintf (dump_file, "Splitting with gen_split_1464 (sse.md:4834)\n");
15087 : : start_sequence ();
15088 : : #define FAIL return (end_sequence (), nullptr)
15089 : : #define DONE return end_sequence ()
15090 : : #line 4862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15091 : : {
15092 : : operands[5] = lowpart_subreg (DImode,
15093 : : operands[0], DImode);
15094 : : if (SUBREG_P (operands[5]))
15095 : : {
15096 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15097 : : SUBREG_PROMOTED_SET (operands[5], 1);
15098 : : }
15099 : : }
15100 : : #undef DONE
15101 : : #undef FAIL
15102 : : static const uint8_t expand_encoding[] = {
15103 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x12,
15104 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15105 : : 0x1f, 0x01, 0x04, 0x01, 0x05
15106 : : };
15107 : : return complete_seq (expand_encoding, operands);
15108 : : }
15109 : :
15110 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4834 */
15111 : : extern rtx_insn *gen_split_1474 (rtx_insn *, rtx *);
15112 : : rtx_insn *
15113 : : gen_split_1474 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15114 : : {
15115 : : if (dump_file)
15116 : : fprintf (dump_file, "Splitting with gen_split_1474 (sse.md:4834)\n");
15117 : : start_sequence ();
15118 : : #define FAIL return (end_sequence (), nullptr)
15119 : : #define DONE return end_sequence ()
15120 : : #line 4862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15121 : : {
15122 : : operands[5] = lowpart_subreg (HImode,
15123 : : operands[0], HImode);
15124 : : if (SUBREG_P (operands[5]))
15125 : : {
15126 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15127 : : SUBREG_PROMOTED_SET (operands[5], 1);
15128 : : }
15129 : : }
15130 : : #undef DONE
15131 : : #undef FAIL
15132 : : static const uint8_t expand_encoding[] = {
15133 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x10,
15134 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15135 : : 0x1f, 0x01, 0x04, 0x01, 0x05
15136 : : };
15137 : : return complete_seq (expand_encoding, operands);
15138 : : }
15139 : :
15140 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4876 */
15141 : : extern rtx_insn *gen_split_1484 (rtx_insn *, rtx *);
15142 : : rtx_insn *
15143 : : gen_split_1484 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15144 : : {
15145 : : if (dump_file)
15146 : : fprintf (dump_file, "Splitting with gen_split_1484 (sse.md:4876)\n");
15147 : : start_sequence ();
15148 : : #define FAIL return (end_sequence (), nullptr)
15149 : : #define DONE return end_sequence ()
15150 : : #line 4893 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15151 : : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15152 : : #undef DONE
15153 : : #undef FAIL
15154 : : static const uint8_t expand_encoding[] = {
15155 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01,
15156 : : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
15157 : : };
15158 : : return complete_seq (expand_encoding, operands);
15159 : : }
15160 : :
15161 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4895 */
15162 : : extern rtx_insn *gen_split_1494 (rtx_insn *, rtx *);
15163 : : rtx_insn *
15164 : : gen_split_1494 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15165 : : {
15166 : : if (dump_file)
15167 : : fprintf (dump_file, "Splitting with gen_split_1494 (sse.md:4895)\n");
15168 : : start_sequence ();
15169 : : #define FAIL return (end_sequence (), nullptr)
15170 : : #define DONE return end_sequence ()
15171 : : #line 4908 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15172 : : {
15173 : : int cmp_imm = INTVAL (operands[3]);
15174 : : rtx res = CONST0_RTX (SImode);
15175 : : /* EQ/LE/NLT. */
15176 : : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5)
15177 : : {
15178 : : int nelts = GET_MODE_NUNITS (V32QImode);
15179 : : if (nelts >= 8)
15180 : : res = CONSTM1_RTX (SImode);
15181 : : else
15182 : : res = gen_int_mode ((1u << nelts) - 1, QImode);
15183 : : }
15184 : : operands[4] = res;
15185 : : }
15186 : : #undef DONE
15187 : : #undef FAIL
15188 : : static const uint8_t expand_encoding[] = {
15189 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15190 : : };
15191 : : return complete_seq (expand_encoding, operands);
15192 : : }
15193 : :
15194 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4895 */
15195 : : extern rtx_insn *gen_split_1504 (rtx_insn *, rtx *);
15196 : : rtx_insn *
15197 : : gen_split_1504 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15198 : : {
15199 : : if (dump_file)
15200 : : fprintf (dump_file, "Splitting with gen_split_1504 (sse.md:4895)\n");
15201 : : start_sequence ();
15202 : : #define FAIL return (end_sequence (), nullptr)
15203 : : #define DONE return end_sequence ()
15204 : : #line 4908 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15205 : : {
15206 : : int cmp_imm = INTVAL (operands[3]);
15207 : : rtx res = CONST0_RTX (HImode);
15208 : : /* EQ/LE/NLT. */
15209 : : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5)
15210 : : {
15211 : : int nelts = GET_MODE_NUNITS (V16SImode);
15212 : : if (nelts >= 8)
15213 : : res = CONSTM1_RTX (HImode);
15214 : : else
15215 : : res = gen_int_mode ((1u << nelts) - 1, QImode);
15216 : : }
15217 : : operands[4] = res;
15218 : : }
15219 : : #undef DONE
15220 : : #undef FAIL
15221 : : static const uint8_t expand_encoding[] = {
15222 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15223 : : };
15224 : : return complete_seq (expand_encoding, operands);
15225 : : }
15226 : :
15227 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4895 */
15228 : : extern rtx_insn *gen_split_1514 (rtx_insn *, rtx *);
15229 : : rtx_insn *
15230 : : gen_split_1514 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15231 : : {
15232 : : if (dump_file)
15233 : : fprintf (dump_file, "Splitting with gen_split_1514 (sse.md:4895)\n");
15234 : : start_sequence ();
15235 : : #define FAIL return (end_sequence (), nullptr)
15236 : : #define DONE return end_sequence ()
15237 : : #line 4908 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15238 : : {
15239 : : int cmp_imm = INTVAL (operands[3]);
15240 : : rtx res = CONST0_RTX (QImode);
15241 : : /* EQ/LE/NLT. */
15242 : : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5)
15243 : : {
15244 : : int nelts = GET_MODE_NUNITS (V2DImode);
15245 : : if (nelts >= 8)
15246 : : res = CONSTM1_RTX (QImode);
15247 : : else
15248 : : res = gen_int_mode ((1u << nelts) - 1, QImode);
15249 : : }
15250 : : operands[4] = res;
15251 : : }
15252 : : #undef DONE
15253 : : #undef FAIL
15254 : : static const uint8_t expand_encoding[] = {
15255 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15256 : : };
15257 : : return complete_seq (expand_encoding, operands);
15258 : : }
15259 : :
15260 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4969 */
15261 : : extern rtx_insn *gen_split_1524 (rtx_insn *, rtx *);
15262 : : rtx_insn *
15263 : : gen_split_1524 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15264 : : {
15265 : : if (dump_file)
15266 : : fprintf (dump_file, "Splitting with gen_split_1524 (sse.md:4969)\n");
15267 : : start_sequence ();
15268 : : #define FAIL return (end_sequence (), nullptr)
15269 : : #define DONE return end_sequence ()
15270 : : #line 4998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15271 : : {
15272 : : operands[5] = lowpart_subreg (SImode,
15273 : : operands[0], DImode);
15274 : : if (SUBREG_P (operands[5]))
15275 : : {
15276 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15277 : : SUBREG_PROMOTED_SET (operands[5], 1);
15278 : : }
15279 : : }
15280 : : #undef DONE
15281 : : #undef FAIL
15282 : : static const uint8_t expand_encoding[] = {
15283 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
15284 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15285 : : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15286 : : };
15287 : : return complete_seq (expand_encoding, operands);
15288 : : }
15289 : :
15290 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
15291 : : extern rtx_insn *gen_split_1534 (rtx_insn *, rtx *);
15292 : : rtx_insn *
15293 : : gen_split_1534 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15294 : : {
15295 : : if (dump_file)
15296 : : fprintf (dump_file, "Splitting with gen_split_1534 (sse.md:5059)\n");
15297 : : start_sequence ();
15298 : : #define FAIL return (end_sequence (), nullptr)
15299 : : #define DONE return end_sequence ()
15300 : : #line 5088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15301 : : {
15302 : : operands[5] = lowpart_subreg (HImode,
15303 : : operands[0], HImode);
15304 : : if (SUBREG_P (operands[5]))
15305 : : {
15306 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15307 : : SUBREG_PROMOTED_SET (operands[5], 1);
15308 : : }
15309 : : }
15310 : : #undef DONE
15311 : : #undef FAIL
15312 : : static const uint8_t expand_encoding[] = {
15313 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x10,
15314 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15315 : : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15316 : : };
15317 : : return complete_seq (expand_encoding, operands);
15318 : : }
15319 : :
15320 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
15321 : : extern rtx_insn *gen_split_1544 (rtx_insn *, rtx *);
15322 : : rtx_insn *
15323 : : gen_split_1544 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15324 : : {
15325 : : if (dump_file)
15326 : : fprintf (dump_file, "Splitting with gen_split_1544 (sse.md:5059)\n");
15327 : : start_sequence ();
15328 : : #define FAIL return (end_sequence (), nullptr)
15329 : : #define DONE return end_sequence ()
15330 : : #line 5088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15331 : : {
15332 : : operands[5] = lowpart_subreg (QImode,
15333 : : operands[0], SImode);
15334 : : if (SUBREG_P (operands[5]))
15335 : : {
15336 : : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15337 : : SUBREG_PROMOTED_SET (operands[5], 1);
15338 : : }
15339 : : }
15340 : : #undef DONE
15341 : : #undef FAIL
15342 : : static const uint8_t expand_encoding[] = {
15343 : : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x0f,
15344 : : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15345 : : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15346 : : };
15347 : : return complete_seq (expand_encoding, operands);
15348 : : }
15349 : :
15350 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5102 */
15351 : : extern rtx_insn *gen_split_1554 (rtx_insn *, rtx *);
15352 : : rtx_insn *
15353 : : gen_split_1554 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15354 : : {
15355 : : if (dump_file)
15356 : : fprintf (dump_file, "Splitting with gen_split_1554 (sse.md:5102)\n");
15357 : : start_sequence ();
15358 : : #define FAIL return (end_sequence (), nullptr)
15359 : : #define DONE return end_sequence ()
15360 : : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15361 : : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15362 : : #undef DONE
15363 : : #undef FAIL
15364 : : static const uint8_t expand_encoding[] = {
15365 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15366 : : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15367 : : };
15368 : : return complete_seq (expand_encoding, operands);
15369 : : }
15370 : :
15371 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5129 */
15372 : : extern rtx_insn *gen_split_1564 (rtx_insn *, rtx *);
15373 : : rtx_insn *
15374 : : gen_split_1564 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
15375 : : {
15376 : : if (dump_file)
15377 : : fprintf (dump_file, "Splitting with gen_split_1564 (sse.md:5129)\n");
15378 : : start_sequence ();
15379 : : #define FAIL return (end_sequence (), nullptr)
15380 : : #define DONE return end_sequence ()
15381 : : #line 5144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15382 : : {
15383 : : /* LE: 2, NLT: 5, NLE: 6, LT: 1 */
15384 : : int cmp_predicate = 2; /* LE */
15385 : : if (MEM_P (operands[1]))
15386 : : {
15387 : : std::swap (operands[1], operands[2]);
15388 : : cmp_predicate = 5; /* NLT (GE) */
15389 : : }
15390 : : if ((INTVAL (operands[4]) & 4) != 0)
15391 : : cmp_predicate ^= 4; /* Invert the comparison to NLE (GT) or LT. */
15392 : : emit_insn (gen_avx512bw_ucmpv32hi3 (operands[0], operands[1],operands[2],
15393 : : GEN_INT (cmp_predicate)));
15394 : : DONE;
15395 : : }
15396 : : #undef DONE
15397 : : #undef FAIL
15398 : : static const uint8_t expand_encoding[] = {
15399 : : 0x01, 0x27, 0x00
15400 : : };
15401 : : return complete_seq (expand_encoding, operands);
15402 : : }
15403 : :
15404 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5243 */
15405 : : rtx
15406 : : gen_vec_cmpv4diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15407 : : {
15408 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15409 : : start_sequence ();
15410 : : {
15411 : : #define FAIL return (end_sequence (), nullptr)
15412 : : #define DONE return end_sequence ()
15413 : : #line 5249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15414 : : {
15415 : : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15416 : : operands[2], operands[3]);
15417 : : gcc_assert (ok);
15418 : : DONE;
15419 : : }
15420 : : #undef DONE
15421 : : #undef FAIL
15422 : : }
15423 : : static const uint8_t expand_encoding[] = {
15424 : : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15425 : : 0x02, 0x01, 0x03
15426 : : };
15427 : : return complete_seq (expand_encoding, operands);
15428 : : }
15429 : :
15430 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5243 */
15431 : : rtx
15432 : : gen_vec_cmpv2dfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15433 : : {
15434 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15435 : : start_sequence ();
15436 : : {
15437 : : #define FAIL return (end_sequence (), nullptr)
15438 : : #define DONE return end_sequence ()
15439 : : #line 5249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15440 : : {
15441 : : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15442 : : operands[2], operands[3]);
15443 : : gcc_assert (ok);
15444 : : DONE;
15445 : : }
15446 : : #undef DONE
15447 : : #undef FAIL
15448 : : }
15449 : : static const uint8_t expand_encoding[] = {
15450 : : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15451 : : 0x02, 0x01, 0x03
15452 : : };
15453 : : return complete_seq (expand_encoding, operands);
15454 : : }
15455 : :
15456 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5282 */
15457 : : rtx
15458 : : gen_vec_cmpv32qiv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15459 : : {
15460 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15461 : : start_sequence ();
15462 : : {
15463 : : #define FAIL return (end_sequence (), nullptr)
15464 : : #define DONE return end_sequence ()
15465 : : #line 5288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15466 : : {
15467 : : bool ok = ix86_expand_int_vec_cmp (operands);
15468 : : gcc_assert (ok);
15469 : : DONE;
15470 : : }
15471 : : #undef DONE
15472 : : #undef FAIL
15473 : : }
15474 : : static const uint8_t expand_encoding[] = {
15475 : : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x54, 0x01, 0x01,
15476 : : 0x02, 0x01, 0x03
15477 : : };
15478 : : return complete_seq (expand_encoding, operands);
15479 : : }
15480 : :
15481 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5330 */
15482 : : rtx
15483 : : gen_vec_cmpv4sfv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15484 : : {
15485 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15486 : : start_sequence ();
15487 : : {
15488 : : #define FAIL return (end_sequence (), nullptr)
15489 : : #define DONE return end_sequence ()
15490 : : #line 5336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15491 : : {
15492 : : bool ok = ix86_expand_fp_vec_cmp (operands);
15493 : : gcc_assert (ok);
15494 : : DONE;
15495 : : }
15496 : : #undef DONE
15497 : : #undef FAIL
15498 : : }
15499 : : static const uint8_t expand_encoding[] = {
15500 : : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x51, 0x01, 0x01,
15501 : : 0x02, 0x01, 0x03
15502 : : };
15503 : : return complete_seq (expand_encoding, operands);
15504 : : }
15505 : :
15506 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5355 */
15507 : : rtx
15508 : : gen_vec_cmpuv32qisi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15509 : : {
15510 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15511 : : start_sequence ();
15512 : : {
15513 : : #define FAIL return (end_sequence (), nullptr)
15514 : : #define DONE return end_sequence ()
15515 : : #line 5361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15516 : : {
15517 : : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15518 : : operands[2], operands[3]);
15519 : : gcc_assert (ok);
15520 : : DONE;
15521 : : }
15522 : : #undef DONE
15523 : : #undef FAIL
15524 : : }
15525 : : static const uint8_t expand_encoding[] = {
15526 : : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x11, 0x01, 0x01,
15527 : : 0x02, 0x01, 0x03
15528 : : };
15529 : : return complete_seq (expand_encoding, operands);
15530 : : }
15531 : :
15532 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5380 */
15533 : : rtx
15534 : : gen_vec_cmpuv4siv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15535 : : {
15536 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15537 : : start_sequence ();
15538 : : {
15539 : : #define FAIL return (end_sequence (), nullptr)
15540 : : #define DONE return end_sequence ()
15541 : : #line 5386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15542 : : {
15543 : : bool ok = ix86_expand_int_vec_cmp (operands);
15544 : : gcc_assert (ok);
15545 : : DONE;
15546 : : }
15547 : : #undef DONE
15548 : : #undef FAIL
15549 : : }
15550 : : static const uint8_t expand_encoding[] = {
15551 : : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x51, 0x01, 0x01,
15552 : : 0x02, 0x01, 0x03
15553 : : };
15554 : : return complete_seq (expand_encoding, operands);
15555 : : }
15556 : :
15557 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5466 */
15558 : : rtx
15559 : : gen_vcond_mask_v16sfhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15560 : : {
15561 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15562 : : static const uint8_t expand_encoding[] = {
15563 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x01, 0x01,
15564 : : 0x01, 0x02, 0x01, 0x03
15565 : : };
15566 : : return expand_rtx (expand_encoding, operands);
15567 : : }
15568 : :
15569 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5474 */
15570 : : rtx
15571 : : gen_vcond_mask_v32qisi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15572 : : {
15573 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15574 : : static const uint8_t expand_encoding[] = {
15575 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x01, 0x01,
15576 : : 0x01, 0x02, 0x01, 0x03
15577 : : };
15578 : : return expand_rtx (expand_encoding, operands);
15579 : : }
15580 : :
15581 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5474 */
15582 : : rtx
15583 : : gen_vcond_mask_v16bfhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15584 : : {
15585 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15586 : : static const uint8_t expand_encoding[] = {
15587 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x01, 0x01,
15588 : : 0x01, 0x02, 0x01, 0x03
15589 : : };
15590 : : return expand_rtx (expand_encoding, operands);
15591 : : }
15592 : :
15593 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5527 */
15594 : : rtx
15595 : : gen_vcond_mask_v8sfv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15596 : : {
15597 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15598 : : start_sequence ();
15599 : : {
15600 : : #define FAIL _Pragma ("GCC error \"vcond_mask_v8sfv8si cannot FAIL\"") (void)0
15601 : : #define DONE return end_sequence ()
15602 : : #line 5534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15603 : : {
15604 : : ix86_expand_sse_movcc (operands[0], operands[3],
15605 : : operands[1], operands[2]);
15606 : : DONE;
15607 : : }
15608 : : #undef DONE
15609 : : #undef FAIL
15610 : : }
15611 : : static const uint8_t expand_encoding[] = {
15612 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x01,
15613 : : 0x01, 0x01, 0x02, 0x01, 0x03
15614 : : };
15615 : : return complete_seq (expand_encoding, operands);
15616 : : }
15617 : :
15618 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5690 */
15619 : : rtx
15620 : : gen_xorv16bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15621 : : {
15622 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15623 : : start_sequence ();
15624 : : {
15625 : : #define FAIL return (end_sequence (), nullptr)
15626 : : #define DONE return end_sequence ()
15627 : : #line 5697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15628 : : ix86_fixup_binary_operands_no_copy (XOR, V16BFmode, operands);
15629 : : #undef DONE
15630 : : #undef FAIL
15631 : : }
15632 : : static const uint8_t expand_encoding[] = {
15633 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6d, 0x01, 0x01,
15634 : : 0x01, 0x02
15635 : : };
15636 : : return complete_seq (expand_encoding, operands);
15637 : : }
15638 : :
15639 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5690 */
15640 : : rtx
15641 : : gen_xorv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15642 : : {
15643 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15644 : : start_sequence ();
15645 : : {
15646 : : #define FAIL return (end_sequence (), nullptr)
15647 : : #define DONE return end_sequence ()
15648 : : #line 5697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15649 : : ix86_fixup_binary_operands_no_copy (XOR, V16HFmode, operands);
15650 : : #undef DONE
15651 : : #undef FAIL
15652 : : }
15653 : : static const uint8_t expand_encoding[] = {
15654 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6e, 0x01, 0x01,
15655 : : 0x01, 0x02
15656 : : };
15657 : : return complete_seq (expand_encoding, operands);
15658 : : }
15659 : :
15660 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5690 */
15661 : : rtx
15662 : : gen_andv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15663 : : {
15664 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15665 : : start_sequence ();
15666 : : {
15667 : : #define FAIL return (end_sequence (), nullptr)
15668 : : #define DONE return end_sequence ()
15669 : : #line 5697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15670 : : ix86_fixup_binary_operands_no_copy (AND, V4SFmode, operands);
15671 : : #undef DONE
15672 : : #undef FAIL
15673 : : }
15674 : : static const uint8_t expand_encoding[] = {
15675 : : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6b, 0x01, 0x01,
15676 : : 0x01, 0x02
15677 : : };
15678 : : return complete_seq (expand_encoding, operands);
15679 : : }
15680 : :
15681 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5690 */
15682 : : rtx
15683 : : gen_iorv4df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15684 : : {
15685 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15686 : : start_sequence ();
15687 : : {
15688 : : #define FAIL return (end_sequence (), nullptr)
15689 : : #define DONE return end_sequence ()
15690 : : #line 5697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15691 : : ix86_fixup_binary_operands_no_copy (IOR, V4DFmode, operands);
15692 : : #undef DONE
15693 : : #undef FAIL
15694 : : }
15695 : : static const uint8_t expand_encoding[] = {
15696 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x4a,
15697 : : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15698 : : 0x04
15699 : : };
15700 : : return complete_seq (expand_encoding, operands);
15701 : : }
15702 : :
15703 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5699 */
15704 : : rtx
15705 : : gen_xorv32bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15706 : : {
15707 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15708 : : start_sequence ();
15709 : : {
15710 : : #define FAIL return (end_sequence (), nullptr)
15711 : : #define DONE return end_sequence ()
15712 : : #line 5705 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15713 : : ix86_fixup_binary_operands_no_copy (XOR, V32BFmode, operands);
15714 : : #undef DONE
15715 : : #undef FAIL
15716 : : }
15717 : : static const uint8_t expand_encoding[] = {
15718 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x72, 0x01, 0x01,
15719 : : 0x01, 0x02
15720 : : };
15721 : : return complete_seq (expand_encoding, operands);
15722 : : }
15723 : :
15724 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5699 */
15725 : : rtx
15726 : : gen_andv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
15727 : : {
15728 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15729 : : start_sequence ();
15730 : : {
15731 : : #define FAIL return (end_sequence (), nullptr)
15732 : : #define DONE return end_sequence ()
15733 : : #line 5705 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15734 : : ix86_fixup_binary_operands_no_copy (AND, V8DFmode, operands);
15735 : : #undef DONE
15736 : : #undef FAIL
15737 : : }
15738 : : static const uint8_t expand_encoding[] = {
15739 : : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x75, 0x01, 0x01,
15740 : : 0x01, 0x02
15741 : : };
15742 : : return complete_seq (expand_encoding, operands);
15743 : : }
15744 : :
15745 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5816 */
15746 : : extern rtx_insn *gen_split_1573 (rtx_insn *, rtx *);
15747 : : rtx_insn *
15748 : : gen_split_1573 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15749 : : {
15750 : : if (dump_file)
15751 : : fprintf (dump_file, "Splitting with gen_split_1573 (sse.md:5816)\n");
15752 : : start_sequence ();
15753 : : #define FAIL return (end_sequence (), nullptr)
15754 : : #define DONE return end_sequence ()
15755 : : #line 5824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15756 : : operands[1] = force_reg (V32HFmode, operands[1]);
15757 : : #undef DONE
15758 : : #undef FAIL
15759 : : static const uint8_t expand_encoding[] = {
15760 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
15761 : : };
15762 : : return complete_seq (expand_encoding, operands);
15763 : : }
15764 : :
15765 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5826 */
15766 : : rtx
15767 : : gen_copysignv16bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15768 : : {
15769 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15770 : : start_sequence ();
15771 : : {
15772 : : #define FAIL _Pragma ("GCC error \"copysignv16bf3 cannot FAIL\"") (void)0
15773 : : #define DONE return end_sequence ()
15774 : : #line 5837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15775 : : {
15776 : : operands[3] = ix86_build_signbit_mask (V16BFmode, 1, 0);
15777 : :
15778 : : operands[4] = gen_reg_rtx (V16BFmode);
15779 : : operands[5] = gen_reg_rtx (V16BFmode);
15780 : : }
15781 : : #undef DONE
15782 : : #undef FAIL
15783 : : }
15784 : : static const uint8_t expand_encoding[] = {
15785 : : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x6d, 0x4c, 0x6d,
15786 : : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
15787 : : 0x6d, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
15788 : : 0x4a, 0x6d, 0x01, 0x04, 0x01, 0x05
15789 : : };
15790 : : return complete_seq (expand_encoding, operands);
15791 : : }
15792 : :
15793 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5826 */
15794 : : rtx
15795 : : gen_copysignv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
15796 : : {
15797 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15798 : : start_sequence ();
15799 : : {
15800 : : #define FAIL _Pragma ("GCC error \"copysignv2df3 cannot FAIL\"") (void)0
15801 : : #define DONE return end_sequence ()
15802 : : #line 5837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15803 : : {
15804 : : operands[3] = ix86_build_signbit_mask (V2DFmode, 1, 0);
15805 : :
15806 : : operands[4] = gen_reg_rtx (V2DFmode);
15807 : : operands[5] = gen_reg_rtx (V2DFmode);
15808 : : }
15809 : : #undef DONE
15810 : : #undef FAIL
15811 : : }
15812 : : static const uint8_t expand_encoding[] = {
15813 : : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x6c, 0x4c, 0x6c,
15814 : : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
15815 : : 0x6c, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
15816 : : 0x4a, 0x6c, 0x01, 0x04, 0x01, 0x05
15817 : : };
15818 : : return complete_seq (expand_encoding, operands);
15819 : : }
15820 : :
15821 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5844 */
15822 : : rtx
15823 : : gen_xorsignv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
15824 : : {
15825 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15826 : : start_sequence ();
15827 : : {
15828 : : #define FAIL _Pragma ("GCC error \"xorsignv4df3 cannot FAIL\"") (void)0
15829 : : #define DONE return end_sequence ()
15830 : : #line 5852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15831 : : {
15832 : : operands[3] = ix86_build_signbit_mask (V4DFmode, 1, 0);
15833 : :
15834 : : operands[4] = gen_reg_rtx (V4DFmode);
15835 : : }
15836 : : #undef DONE
15837 : : #undef FAIL
15838 : : }
15839 : : static const uint8_t expand_encoding[] = {
15840 : : 0x02, 0x1f, 0x01, 0x04, 0x49, 0x70, 0x01, 0x03,
15841 : : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x70, 0x01,
15842 : : 0x04, 0x01, 0x01
15843 : : };
15844 : : return complete_seq (expand_encoding, operands);
15845 : : }
15846 : :
15847 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6165 */
15848 : : rtx
15849 : : gen_fmav4sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15850 : : {
15851 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15852 : : static const uint8_t expand_encoding[] = {
15853 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6b, 0x01, 0x01,
15854 : : 0x01, 0x02, 0x01, 0x03
15855 : : };
15856 : : return expand_rtx (expand_encoding, operands);
15857 : : }
15858 : :
15859 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6165 */
15860 : : rtx
15861 : : gen_fmav8bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15862 : : {
15863 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15864 : : static const uint8_t expand_encoding[] = {
15865 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x69, 0x01, 0x01,
15866 : : 0x01, 0x02, 0x01, 0x03
15867 : : };
15868 : : return expand_rtx (expand_encoding, operands);
15869 : : }
15870 : :
15871 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6172 */
15872 : : rtx
15873 : : gen_fmsv8df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15874 : : {
15875 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15876 : : static const uint8_t expand_encoding[] = {
15877 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x75, 0x01, 0x01,
15878 : : 0x01, 0x02, 0x3d, 0x75, 0x01, 0x03
15879 : : };
15880 : : return expand_rtx (expand_encoding, operands);
15881 : : }
15882 : :
15883 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6179 */
15884 : : rtx
15885 : : gen_fnmav4sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15886 : : {
15887 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15888 : : static const uint8_t expand_encoding[] = {
15889 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6b, 0x3d, 0x6b,
15890 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15891 : : };
15892 : : return expand_rtx (expand_encoding, operands);
15893 : : }
15894 : :
15895 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6179 */
15896 : : rtx
15897 : : gen_fnmav8bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15898 : : {
15899 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15900 : : static const uint8_t expand_encoding[] = {
15901 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x69, 0x3d, 0x69,
15902 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15903 : : };
15904 : : return expand_rtx (expand_encoding, operands);
15905 : : }
15906 : :
15907 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6186 */
15908 : : rtx
15909 : : gen_fnmsv8df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15910 : : {
15911 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15912 : : static const uint8_t expand_encoding[] = {
15913 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x75, 0x3d, 0x75,
15914 : : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x75, 0x01, 0x03
15915 : : };
15916 : : return expand_rtx (expand_encoding, operands);
15917 : : }
15918 : :
15919 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6206 */
15920 : : rtx
15921 : : gen_fma4i_fmadd_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15922 : : {
15923 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15924 : : static const uint8_t expand_encoding[] = {
15925 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6b, 0x01, 0x01,
15926 : : 0x01, 0x02, 0x01, 0x03
15927 : : };
15928 : : return expand_rtx (expand_encoding, operands);
15929 : : }
15930 : :
15931 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6213 */
15932 : : rtx
15933 : : gen_fma4i_fmsub_v8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15934 : : {
15935 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15936 : : static const uint8_t expand_encoding[] = {
15937 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6f, 0x01, 0x01,
15938 : : 0x01, 0x02, 0x3d, 0x6f, 0x01, 0x03
15939 : : };
15940 : : return expand_rtx (expand_encoding, operands);
15941 : : }
15942 : :
15943 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6221 */
15944 : : rtx
15945 : : gen_fma4i_fnmadd_v16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15946 : : {
15947 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15948 : : static const uint8_t expand_encoding[] = {
15949 : : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x74, 0x3d, 0x74,
15950 : : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15951 : : };
15952 : : return expand_rtx (expand_encoding, operands);
15953 : : }
15954 : :
15955 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6238 */
15956 : : rtx
15957 : : gen_avx512bw_fmadd_v32hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15958 : : {
15959 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15960 : : start_sequence ();
15961 : : {
15962 : : #define FAIL return (end_sequence (), nullptr)
15963 : : #define DONE return end_sequence ()
15964 : : #line 6245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15965 : : {
15966 : : emit_insn (gen_fma_fmadd_v32hf_maskz_1 (
15967 : : operands[0], operands[1], operands[2], operands[3],
15968 : : CONST0_RTX (V32HFmode), operands[4]));
15969 : : DONE;
15970 : : }
15971 : : #undef DONE
15972 : : #undef FAIL
15973 : : }
15974 : : static const uint8_t expand_encoding[] = {
15975 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15976 : : 0x03, 0x01, 0x04
15977 : : };
15978 : : return complete_seq (expand_encoding, operands);
15979 : : }
15980 : :
15981 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6238 */
15982 : : rtx
15983 : : gen_avx512vl_fmadd_v4sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15984 : : {
15985 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15986 : : start_sequence ();
15987 : : {
15988 : : #define FAIL return (end_sequence (), nullptr)
15989 : : #define DONE return end_sequence ()
15990 : : #line 6245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15991 : : {
15992 : : emit_insn (gen_fma_fmadd_v4sf_maskz_1 (
15993 : : operands[0], operands[1], operands[2], operands[3],
15994 : : CONST0_RTX (V4SFmode), operands[4]));
15995 : : DONE;
15996 : : }
15997 : : #undef DONE
15998 : : #undef FAIL
15999 : : }
16000 : : static const uint8_t expand_encoding[] = {
16001 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16002 : : 0x03, 0x01, 0x04
16003 : : };
16004 : : return complete_seq (expand_encoding, operands);
16005 : : }
16006 : :
16007 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6293 */
16008 : : rtx
16009 : : gen_cond_fmav8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16010 : : {
16011 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16012 : : start_sequence ();
16013 : : {
16014 : : #define FAIL _Pragma ("GCC error \"cond_fmav8hf cannot FAIL\"") (void)0
16015 : : #define DONE return end_sequence ()
16016 : : #line 6303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16017 : : {
16018 : : rtx tmp = gen_reg_rtx (V8HFmode);
16019 : : emit_insn (gen_fmav8hf4 (tmp,
16020 : : operands[2],
16021 : : operands[3],
16022 : : operands[4]));
16023 : : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8HFmode,
16024 : : tmp,
16025 : : operands[5],
16026 : : operands[1]));
16027 : : DONE;
16028 : : }
16029 : : #undef DONE
16030 : : #undef FAIL
16031 : : }
16032 : : static const uint8_t expand_encoding[] = {
16033 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81,
16034 : : 0x19, 0x6a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04,
16035 : : 0x01, 0x05, 0x01, 0x01
16036 : : };
16037 : : return complete_seq (expand_encoding, operands);
16038 : : }
16039 : :
16040 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6366 */
16041 : : rtx
16042 : : gen_avx512vl_fmsub_v16hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16043 : : {
16044 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16045 : : start_sequence ();
16046 : : {
16047 : : #define FAIL return (end_sequence (), nullptr)
16048 : : #define DONE return end_sequence ()
16049 : : #line 6373 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16050 : : {
16051 : : emit_insn (gen_fma_fmsub_v16hf_maskz_1_round (
16052 : : operands[0], operands[1], operands[2], operands[3],
16053 : : CONST0_RTX (V16HFmode), operands[4], operands[5]));
16054 : : DONE;
16055 : : }
16056 : : #undef DONE
16057 : : #undef FAIL
16058 : : }
16059 : : static const uint8_t expand_encoding[] = {
16060 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16061 : : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16062 : : 0x81, 0x33
16063 : : };
16064 : : return complete_seq (expand_encoding, operands);
16065 : : }
16066 : :
16067 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6366 */
16068 : : rtx
16069 : : gen_avx512f_fmsub_v8df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16070 : : {
16071 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16072 : : start_sequence ();
16073 : : {
16074 : : #define FAIL return (end_sequence (), nullptr)
16075 : : #define DONE return end_sequence ()
16076 : : #line 6373 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16077 : : {
16078 : : emit_insn (gen_fma_fmsub_v8df_maskz_1_round (
16079 : : operands[0], operands[1], operands[2], operands[3],
16080 : : CONST0_RTX (V8DFmode), operands[4], operands[5]));
16081 : : DONE;
16082 : : }
16083 : : #undef DONE
16084 : : #undef FAIL
16085 : : }
16086 : : static const uint8_t expand_encoding[] = {
16087 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16088 : : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16089 : : 0x81, 0x33
16090 : : };
16091 : : return complete_seq (expand_encoding, operands);
16092 : : }
16093 : :
16094 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6396 */
16095 : : rtx
16096 : : gen_cond_fmsv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16097 : : {
16098 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16099 : : start_sequence ();
16100 : : {
16101 : : #define FAIL _Pragma ("GCC error \"cond_fmsv8df cannot FAIL\"") (void)0
16102 : : #define DONE return end_sequence ()
16103 : : #line 6407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16104 : : {
16105 : : rtx tmp = gen_reg_rtx (V8DFmode);
16106 : : emit_insn (gen_fmsv8df4 (tmp,
16107 : : operands[2],
16108 : : operands[3],
16109 : : operands[4]));
16110 : : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8DFmode,
16111 : : tmp,
16112 : : operands[5],
16113 : : operands[1]));
16114 : : DONE;
16115 : : }
16116 : : #undef DONE
16117 : : #undef FAIL
16118 : : }
16119 : : static const uint8_t expand_encoding[] = {
16120 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81,
16121 : : 0x19, 0x75, 0x01, 0x02, 0x01, 0x03, 0x3d, 0x75,
16122 : : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16123 : : };
16124 : : return complete_seq (expand_encoding, operands);
16125 : : }
16126 : :
16127 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6472 */
16128 : : rtx
16129 : : gen_avx512f_fnmadd_v16sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16130 : : {
16131 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16132 : : start_sequence ();
16133 : : {
16134 : : #define FAIL return (end_sequence (), nullptr)
16135 : : #define DONE return end_sequence ()
16136 : : #line 6479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16137 : : {
16138 : : emit_insn (gen_fma_fnmadd_v16sf_maskz_1_round (
16139 : : operands[0], operands[1], operands[2], operands[3],
16140 : : CONST0_RTX (V16SFmode), operands[4], operands[5]));
16141 : : DONE;
16142 : : }
16143 : : #undef DONE
16144 : : #undef FAIL
16145 : : }
16146 : : static const uint8_t expand_encoding[] = {
16147 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16148 : : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16149 : : 0x81, 0x33
16150 : : };
16151 : : return complete_seq (expand_encoding, operands);
16152 : : }
16153 : :
16154 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6502 */
16155 : : rtx
16156 : : gen_cond_fnmav32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16157 : : {
16158 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16159 : : start_sequence ();
16160 : : {
16161 : : #define FAIL _Pragma ("GCC error \"cond_fnmav32hf cannot FAIL\"") (void)0
16162 : : #define DONE return end_sequence ()
16163 : : #line 6513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16164 : : {
16165 : : rtx tmp = gen_reg_rtx (V32HFmode);
16166 : : emit_insn (gen_fnmav32hf4 (tmp,
16167 : : operands[2],
16168 : : operands[3],
16169 : : operands[4]));
16170 : : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V32HFmode,
16171 : : tmp,
16172 : : operands[5],
16173 : : operands[1]));
16174 : : DONE;
16175 : : }
16176 : : #undef DONE
16177 : : #undef FAIL
16178 : : }
16179 : : static const uint8_t expand_encoding[] = {
16180 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81,
16181 : : 0x19, 0x73, 0x3d, 0x73, 0x01, 0x02, 0x01, 0x03,
16182 : : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16183 : : };
16184 : : return complete_seq (expand_encoding, operands);
16185 : : }
16186 : :
16187 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6579 */
16188 : : rtx
16189 : : gen_avx512bw_fnmsub_v32hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16190 : : {
16191 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16192 : : start_sequence ();
16193 : : {
16194 : : #define FAIL return (end_sequence (), nullptr)
16195 : : #define DONE return end_sequence ()
16196 : : #line 6586 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16197 : : {
16198 : : emit_insn (gen_fma_fnmsub_v32hf_maskz_1_round (
16199 : : operands[0], operands[1], operands[2], operands[3],
16200 : : CONST0_RTX (V32HFmode), operands[4], operands[5]));
16201 : : DONE;
16202 : : }
16203 : : #undef DONE
16204 : : #undef FAIL
16205 : : }
16206 : : static const uint8_t expand_encoding[] = {
16207 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16208 : : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16209 : : 0x81, 0x33
16210 : : };
16211 : : return complete_seq (expand_encoding, operands);
16212 : : }
16213 : :
16214 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6579 */
16215 : : rtx
16216 : : gen_avx512f_fnmsub_v8df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16217 : : {
16218 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16219 : : start_sequence ();
16220 : : {
16221 : : #define FAIL return (end_sequence (), nullptr)
16222 : : #define DONE return end_sequence ()
16223 : : #line 6586 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16224 : : {
16225 : : emit_insn (gen_fma_fnmsub_v8df_maskz_1 (
16226 : : operands[0], operands[1], operands[2], operands[3],
16227 : : CONST0_RTX (V8DFmode), operands[4]));
16228 : : DONE;
16229 : : }
16230 : : #undef DONE
16231 : : #undef FAIL
16232 : : }
16233 : : static const uint8_t expand_encoding[] = {
16234 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16235 : : 0x03, 0x01, 0x04
16236 : : };
16237 : : return complete_seq (expand_encoding, operands);
16238 : : }
16239 : :
16240 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6610 */
16241 : : rtx
16242 : : gen_cond_fnmsv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16243 : : {
16244 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16245 : : start_sequence ();
16246 : : {
16247 : : #define FAIL _Pragma ("GCC error \"cond_fnmsv16sf cannot FAIL\"") (void)0
16248 : : #define DONE return end_sequence ()
16249 : : #line 6622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16250 : : {
16251 : : rtx tmp = gen_reg_rtx (V16SFmode);
16252 : : emit_insn (gen_fnmsv16sf4 (tmp,
16253 : : operands[2],
16254 : : operands[3],
16255 : : operands[4]));
16256 : : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V16SFmode,
16257 : : tmp,
16258 : : operands[5],
16259 : : operands[1]));
16260 : : DONE;
16261 : : }
16262 : : #undef DONE
16263 : : #undef FAIL
16264 : : }
16265 : : static const uint8_t expand_encoding[] = {
16266 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81,
16267 : : 0x19, 0x74, 0x3d, 0x74, 0x01, 0x02, 0x01, 0x03,
16268 : : 0x3d, 0x74, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16269 : : };
16270 : : return complete_seq (expand_encoding, operands);
16271 : : }
16272 : :
16273 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6682 */
16274 : : rtx
16275 : : gen_vec_fmaddsubv4sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16276 : : {
16277 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16278 : : static const uint8_t expand_encoding[] = {
16279 : : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
16280 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x06
16281 : : };
16282 : : return expand_rtx (expand_encoding, operands);
16283 : : }
16284 : :
16285 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6691 */
16286 : : rtx
16287 : : gen_vec_fmsubaddv8df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16288 : : {
16289 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16290 : : static const uint8_t expand_encoding[] = {
16291 : : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01, 0x01,
16292 : : 0x01, 0x02, 0x3d, 0x75, 0x01, 0x03, 0x81, 0x06
16293 : : };
16294 : : return expand_rtx (expand_encoding, operands);
16295 : : }
16296 : :
16297 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6710 */
16298 : : rtx
16299 : : gen_avx512bw_fmaddsub_v32hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16300 : : {
16301 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16302 : : start_sequence ();
16303 : : {
16304 : : #define FAIL return (end_sequence (), nullptr)
16305 : : #define DONE return end_sequence ()
16306 : : #line 6717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16307 : : {
16308 : : emit_insn (gen_fma_fmaddsub_v32hf_maskz_1_round (
16309 : : operands[0], operands[1], operands[2], operands[3],
16310 : : CONST0_RTX (V32HFmode), operands[4], operands[5]));
16311 : : DONE;
16312 : : }
16313 : : #undef DONE
16314 : : #undef FAIL
16315 : : }
16316 : : static const uint8_t expand_encoding[] = {
16317 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16318 : : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16319 : : 0x81, 0x33
16320 : : };
16321 : : return complete_seq (expand_encoding, operands);
16322 : : }
16323 : :
16324 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6710 */
16325 : : rtx
16326 : : gen_avx512f_fmaddsub_v8df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16327 : : {
16328 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16329 : : start_sequence ();
16330 : : {
16331 : : #define FAIL return (end_sequence (), nullptr)
16332 : : #define DONE return end_sequence ()
16333 : : #line 6717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16334 : : {
16335 : : emit_insn (gen_fma_fmaddsub_v8df_maskz_1 (
16336 : : operands[0], operands[1], operands[2], operands[3],
16337 : : CONST0_RTX (V8DFmode), operands[4]));
16338 : : DONE;
16339 : : }
16340 : : #undef DONE
16341 : : #undef FAIL
16342 : : }
16343 : : static const uint8_t expand_encoding[] = {
16344 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16345 : : 0x03, 0x01, 0x04
16346 : : };
16347 : : return complete_seq (expand_encoding, operands);
16348 : : }
16349 : :
16350 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6724 */
16351 : : rtx
16352 : : gen_avx512vl_fmsubadd_v16hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16353 : : {
16354 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16355 : : start_sequence ();
16356 : : {
16357 : : #define FAIL return (end_sequence (), nullptr)
16358 : : #define DONE return end_sequence ()
16359 : : #line 6731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16360 : : {
16361 : : emit_insn (gen_fma_fmsubadd_v16hf_maskz_1_round (
16362 : : operands[0], operands[1], operands[2], operands[3],
16363 : : CONST0_RTX (V16HFmode), operands[4], operands[5]));
16364 : : DONE;
16365 : : }
16366 : : #undef DONE
16367 : : #undef FAIL
16368 : : }
16369 : : static const uint8_t expand_encoding[] = {
16370 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16371 : : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16372 : : 0x81, 0x33
16373 : : };
16374 : : return complete_seq (expand_encoding, operands);
16375 : : }
16376 : :
16377 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6724 */
16378 : : rtx
16379 : : gen_avx512vl_fmsubadd_v4df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16380 : : {
16381 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16382 : : start_sequence ();
16383 : : {
16384 : : #define FAIL return (end_sequence (), nullptr)
16385 : : #define DONE return end_sequence ()
16386 : : #line 6731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16387 : : {
16388 : : emit_insn (gen_fma_fmsubadd_v4df_maskz_1 (
16389 : : operands[0], operands[1], operands[2], operands[3],
16390 : : CONST0_RTX (V4DFmode), operands[4]));
16391 : : DONE;
16392 : : }
16393 : : #undef DONE
16394 : : #undef FAIL
16395 : : }
16396 : : static const uint8_t expand_encoding[] = {
16397 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16398 : : 0x03, 0x01, 0x04
16399 : : };
16400 : : return complete_seq (expand_encoding, operands);
16401 : : }
16402 : :
16403 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6892 */
16404 : : rtx
16405 : : gen_fmai_vmfmsub_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16406 : : {
16407 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16408 : : static const uint8_t expand_encoding[] = {
16409 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
16410 : : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6b, 0x01,
16411 : : 0x03, 0x01, 0x01, 0x27, 0x01
16412 : : };
16413 : : return expand_rtx (expand_encoding, operands);
16414 : : }
16415 : :
16416 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6904 */
16417 : : rtx
16418 : : gen_fmai_vmfnmadd_v2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16419 : : {
16420 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16421 : : static const uint8_t expand_encoding[] = {
16422 : : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
16423 : : 0x6c, 0x81, 0x19, 0x6c, 0x3d, 0x6c, 0x01, 0x01,
16424 : : 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x27, 0x01,
16425 : : 0x01, 0x04, 0x81, 0x33
16426 : : };
16427 : : return expand_rtx (expand_encoding, operands);
16428 : : }
16429 : :
16430 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7039 */
16431 : : rtx
16432 : : gen_avx512f_vmfmadd_v2df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16433 : : {
16434 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16435 : : start_sequence ();
16436 : : {
16437 : : #define FAIL return (end_sequence (), nullptr)
16438 : : #define DONE return end_sequence ()
16439 : : #line 7046 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16440 : : {
16441 : : emit_insn (gen_avx512f_vmfmadd_v2df_maskz_1 (
16442 : : operands[0], operands[1], operands[2], operands[3],
16443 : : CONST0_RTX (V2DFmode), operands[4]));
16444 : : DONE;
16445 : : }
16446 : : #undef DONE
16447 : : #undef FAIL
16448 : : }
16449 : : static const uint8_t expand_encoding[] = {
16450 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16451 : : 0x03, 0x01, 0x04
16452 : : };
16453 : : return complete_seq (expand_encoding, operands);
16454 : : }
16455 : :
16456 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7276 */
16457 : : rtx
16458 : : gen_fma4i_vmfmadd_v2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16459 : : {
16460 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16461 : : start_sequence ();
16462 : : {
16463 : : #define FAIL return (end_sequence (), nullptr)
16464 : : #define DONE return end_sequence ()
16465 : : #line 7286 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16466 : : operands[4] = CONST0_RTX (V2DFmode);
16467 : : #undef DONE
16468 : : #undef FAIL
16469 : : }
16470 : : static const uint8_t expand_encoding[] = {
16471 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81,
16472 : : 0x19, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
16473 : : 0x01, 0x04, 0x27, 0x01
16474 : : };
16475 : : return complete_seq (expand_encoding, operands);
16476 : : }
16477 : :
16478 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7426 */
16479 : : rtx
16480 : : gen_avx512vl_fmaddc_v16hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16481 : : {
16482 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16483 : : start_sequence ();
16484 : : {
16485 : : #define FAIL return (end_sequence (), nullptr)
16486 : : #define DONE return end_sequence ()
16487 : : #line 7433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16488 : : {
16489 : : emit_insn (gen_fma_fmaddc_v16hf_maskz_1 (
16490 : : operands[0], operands[1], operands[2], operands[3],
16491 : : CONST0_RTX (V16HFmode), operands[4]));
16492 : : DONE;
16493 : : }
16494 : : #undef DONE
16495 : : #undef FAIL
16496 : : }
16497 : : static const uint8_t expand_encoding[] = {
16498 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16499 : : 0x03, 0x01, 0x04
16500 : : };
16501 : : return complete_seq (expand_encoding, operands);
16502 : : }
16503 : :
16504 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7440 */
16505 : : rtx
16506 : : gen_avx512bw_fcmaddc_v32hf_mask1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16507 : : {
16508 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16509 : : start_sequence ();
16510 : : {
16511 : : #define FAIL return (end_sequence (), nullptr)
16512 : : #define DONE return end_sequence ()
16513 : : #line 7447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16514 : : {
16515 : : rtx op0, op1, dest;
16516 : : if (!(CONST_INT_P (operands[5])
16517 : : && (INTVAL (operands[5])
16518 : : == NO_ROUND)))
16519 : : emit_insn (gen_avx512bw_fcmaddc_v32hf_mask_round (
16520 : : operands[0], operands[1], operands[2], operands[3],
16521 : : operands[4], operands[5]));
16522 : : else
16523 : : {
16524 : : emit_insn (gen_avx512bw_fcmaddc_v32hf_mask (operands[0],
16525 : : operands[1], operands[2], operands[3], operands[4]));
16526 : : }
16527 : :
16528 : : op0 = lowpart_subreg (V16SFmode,
16529 : : force_reg (V32HFmode, operands[0]),
16530 : : V32HFmode);
16531 : : dest = gen_reg_rtx (V16SFmode);
16532 : : if (!MEM_P (operands[1]))
16533 : : operands[1] = force_reg (V32HFmode, operands[1]);
16534 : : op1 = lowpart_subreg (V16SFmode, operands[1], V32HFmode);
16535 : : emit_insn (gen_avx512f_loadv16sf_mask (dest, op0, op1, operands[4]));
16536 : : emit_move_insn (operands[0],
16537 : : lowpart_subreg (V32HFmode, dest, V16SFmode));
16538 : : DONE;
16539 : : }
16540 : : #undef DONE
16541 : : #undef FAIL
16542 : : }
16543 : : static const uint8_t expand_encoding[] = {
16544 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16545 : : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16546 : : 0x81, 0x33
16547 : : };
16548 : : return complete_seq (expand_encoding, operands);
16549 : : }
16550 : :
16551 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7486 */
16552 : : rtx
16553 : : gen_cmlav8hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16554 : : {
16555 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16556 : : static const uint8_t expand_encoding[] = {
16557 : : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x03, 0x01, 0x01,
16558 : : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a
16559 : : };
16560 : : return expand_rtx (expand_encoding, operands);
16561 : : }
16562 : :
16563 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7542 */
16564 : : extern rtx_insn *gen_split_1589 (rtx_insn *, rtx *);
16565 : : rtx_insn *
16566 : : gen_split_1589 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16567 : : {
16568 : : if (dump_file)
16569 : : fprintf (dump_file, "Splitting with gen_split_1589 (sse.md:7542)\n");
16570 : : start_sequence ();
16571 : : static const uint8_t expand_encoding[] = {
16572 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01,
16573 : : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x5c
16574 : : };
16575 : : return complete_seq (expand_encoding, operands);
16576 : : }
16577 : :
16578 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7600 */
16579 : : extern rtx_insn *gen_split_1599 (rtx_insn *, rtx *);
16580 : : rtx_insn *
16581 : : gen_split_1599 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
16582 : : {
16583 : : if (dump_file)
16584 : : fprintf (dump_file, "Splitting with gen_split_1599 (sse.md:7600)\n");
16585 : : start_sequence ();
16586 : : #define FAIL return (end_sequence (), nullptr)
16587 : : #define DONE return end_sequence ()
16588 : : #line 7612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16589 : : {
16590 : : if (!MEM_P (operands[1]))
16591 : : operands[1] = force_reg (V8HFmode, operands[1]);
16592 : : if (!MEM_P (operands[3]))
16593 : : operands[3] = force_reg (V8HFmode, operands[3]);
16594 : : operands[1] = lowpart_subreg (V4SFmode, operands[1], V8HFmode);
16595 : : operands[3] = lowpart_subreg (V4SFmode, operands[3], V8HFmode);
16596 : : rtx dest = gen_reg_rtx (V4SFmode);
16597 : : emit_insn (gen_fma_fcmaddc_v4sf_pair (dest, operands[1],
16598 : : operands[2],
16599 : : operands[3]));
16600 : : emit_move_insn (operands[0],
16601 : : lowpart_subreg (V8HFmode, dest, V4SFmode));
16602 : : DONE;
16603 : : }
16604 : : #undef DONE
16605 : : #undef FAIL
16606 : : static const uint8_t expand_encoding[] = {
16607 : : 0x01, 0x27, 0x00
16608 : : };
16609 : : return complete_seq (expand_encoding, operands);
16610 : : }
16611 : :
16612 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7759 */
16613 : : rtx
16614 : : gen_avx512fp16_fcmaddcsh_v8hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16615 : : {
16616 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16617 : : start_sequence ();
16618 : : {
16619 : : #define FAIL return (end_sequence (), nullptr)
16620 : : #define DONE return end_sequence ()
16621 : : #line 7766 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16622 : : {
16623 : : rtx dest, op0, op1;
16624 : :
16625 : : if (!(CONST_INT_P (operands[5])
16626 : : && (INTVAL (operands[5])
16627 : : == NO_ROUND)))
16628 : : emit_insn (gen_avx512fp16_fcmaddcsh_v8hf_mask_round (
16629 : : operands[0], operands[1], operands[2], operands[3],
16630 : : operands[4], operands[5]));
16631 : : else
16632 : : emit_insn (gen_avx512fp16_fcmaddcsh_v8hf_mask (operands[0],
16633 : : operands[1], operands[2], operands[3], operands[4]));
16634 : :
16635 : : dest = gen_reg_rtx (V4SFmode);
16636 : : op0 = lowpart_subreg (V4SFmode,
16637 : : force_reg (V8HFmode, operands[0]),
16638 : : V8HFmode);
16639 : : if (!MEM_P (operands[3]))
16640 : : operands[3] = force_reg (V8HFmode, operands[3]);
16641 : : op1 = lowpart_subreg (V4SFmode, operands[3], V8HFmode);
16642 : : emit_insn (gen_sse_movss_v4sf (dest, op1, op0));
16643 : : emit_move_insn (operands[0], lowpart_subreg (V8HFmode, dest, V4SFmode));
16644 : : DONE;
16645 : : }
16646 : : #undef DONE
16647 : : #undef FAIL
16648 : : }
16649 : : static const uint8_t expand_encoding[] = {
16650 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16651 : : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16652 : : 0x81, 0x33
16653 : : };
16654 : : return complete_seq (expand_encoding, operands);
16655 : : }
16656 : :
16657 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7950 */
16658 : : rtx
16659 : : gen_lrintv8hfv8hi2 (const rtx operand0, const rtx operand1)
16660 : : {
16661 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16662 : : static const uint8_t expand_encoding[] = {
16663 : : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
16664 : : 0x2f
16665 : : };
16666 : : return expand_rtx (expand_encoding, operands);
16667 : : }
16668 : :
16669 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7978 */
16670 : : rtx
16671 : : gen_floatv32hiv32hf2 (const rtx operand0, const rtx operand1)
16672 : : {
16673 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16674 : : static const uint8_t expand_encoding[] = {
16675 : : 0x1f, 0x01, 0x00, 0x73, 0x73, 0x01, 0x01
16676 : : };
16677 : : return expand_rtx (expand_encoding, operands);
16678 : : }
16679 : :
16680 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7978 */
16681 : : rtx
16682 : : gen_floatunsv8div8hf2 (const rtx operand0, const rtx operand1)
16683 : : {
16684 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16685 : : static const uint8_t expand_encoding[] = {
16686 : : 0x1f, 0x01, 0x00, 0x75, 0x6a, 0x01, 0x01
16687 : : };
16688 : : return expand_rtx (expand_encoding, operands);
16689 : : }
16690 : :
16691 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8026 */
16692 : : rtx
16693 : : gen_avx512fp16_vcvtudq2ph_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16694 : : {
16695 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16696 : : start_sequence ();
16697 : : {
16698 : : #define FAIL return (end_sequence (), nullptr)
16699 : : #define DONE return end_sequence ()
16700 : : #line 8037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16701 : : operands[4] = CONST0_RTX (V4HFmode);
16702 : : #undef DONE
16703 : : #undef FAIL
16704 : : }
16705 : : static const uint8_t expand_encoding[] = {
16706 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x81,
16707 : : 0x09, 0x66, 0x75, 0x66, 0x01, 0x01, 0x81, 0x0a,
16708 : : 0x66, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
16709 : : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
16710 : : 0x01, 0x04
16711 : : };
16712 : : return complete_seq (expand_encoding, operands);
16713 : : }
16714 : :
16715 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8186 */
16716 : : rtx
16717 : : gen_fixuns_truncv8hfv8hi2 (const rtx operand0, const rtx operand1)
16718 : : {
16719 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16720 : : static const uint8_t expand_encoding[] = {
16721 : : 0x1f, 0x01, 0x00, 0x76, 0x50, 0x01, 0x01
16722 : : };
16723 : : return expand_rtx (expand_encoding, operands);
16724 : : }
16725 : :
16726 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8186 */
16727 : : rtx
16728 : : gen_fixuns_truncv32hfv32hi2 (const rtx operand0, const rtx operand1)
16729 : : {
16730 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16731 : : static const uint8_t expand_encoding[] = {
16732 : : 0x1f, 0x01, 0x00, 0x76, 0x5a, 0x01, 0x01
16733 : : };
16734 : : return expand_rtx (expand_encoding, operands);
16735 : : }
16736 : :
16737 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8213 */
16738 : : rtx
16739 : : gen_fixuns_truncv4hfv4di2 (const rtx operand0, const rtx operand1)
16740 : : {
16741 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16742 : : start_sequence ();
16743 : : {
16744 : : #define FAIL return (end_sequence (), nullptr)
16745 : : #define DONE return end_sequence ()
16746 : : #line 8218 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16747 : : {
16748 : : if (!MEM_P (operands[1]))
16749 : : {
16750 : : operands[1] = lowpart_subreg (V8HFmode,
16751 : : force_reg (V4HFmode, operands[1]),
16752 : : V4HFmode);
16753 : : emit_insn (gen_avx512fp16_fixuns_truncv4di2 (operands[0],
16754 : : operands[1]));
16755 : : DONE;
16756 : : }
16757 : : }
16758 : : #undef DONE
16759 : : #undef FAIL
16760 : : }
16761 : : static const uint8_t expand_encoding[] = {
16762 : : 0x01, 0x1f, 0x01, 0x00, 0x76, 0x57, 0x01, 0x01
16763 : : };
16764 : : return complete_seq (expand_encoding, operands);
16765 : : }
16766 : :
16767 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8460 */
16768 : : rtx
16769 : : gen_truncv4sfv4hf2 (const rtx operand0, const rtx operand1)
16770 : : {
16771 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16772 : : start_sequence ();
16773 : : {
16774 : : #define FAIL return (end_sequence (), nullptr)
16775 : : #define DONE return end_sequence ()
16776 : : #line 8464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16777 : : {
16778 : : rtx dest = gen_reg_rtx (V8HFmode);
16779 : :
16780 : : emit_insn (gen_avx512fp16_truncv4sfv4hf2 (dest, operands[1]));
16781 : : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, dest, V8HFmode));
16782 : : DONE;
16783 : : }
16784 : : #undef DONE
16785 : : #undef FAIL
16786 : : }
16787 : : static const uint8_t expand_encoding[] = {
16788 : : 0x01, 0x1f, 0x01, 0x00, 0x72, 0x66, 0x01, 0x01
16789 : : };
16790 : : return complete_seq (expand_encoding, operands);
16791 : : }
16792 : :
16793 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8985 */
16794 : : rtx
16795 : : gen_floatunsv16siv16sf2 (const rtx operand0, const rtx operand1)
16796 : : {
16797 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16798 : : start_sequence ();
16799 : : {
16800 : : #define FAIL return (end_sequence (), nullptr)
16801 : : #define DONE return end_sequence ()
16802 : : #line 8990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16803 : : {
16804 : : if (V16SFmode != V16SFmode && !TARGET_AVX512VL)
16805 : : {
16806 : : ix86_expand_vector_convert_uns_vsivsf (operands[0], operands[1]);
16807 : : DONE;
16808 : : }
16809 : : }
16810 : : #undef DONE
16811 : : #undef FAIL
16812 : : }
16813 : : static const uint8_t expand_encoding[] = {
16814 : : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x74, 0x01, 0x01
16815 : : };
16816 : : return complete_seq (expand_encoding, operands);
16817 : : }
16818 : :
16819 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9274 */
16820 : : rtx
16821 : : gen_fix_truncv2dfv2si2 (const rtx operand0, const rtx operand1)
16822 : : {
16823 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16824 : : static const uint8_t expand_encoding[] = {
16825 : : 0x1f, 0x01, 0x00, 0x74, 0x4a, 0x01, 0x01
16826 : : };
16827 : : return expand_rtx (expand_encoding, operands);
16828 : : }
16829 : :
16830 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9565 */
16831 : : rtx
16832 : : gen_vec_packs_float_v4di (const rtx operand0, const rtx operand1, const rtx operand2)
16833 : : {
16834 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
16835 : : start_sequence ();
16836 : : {
16837 : : #define FAIL return (end_sequence (), nullptr)
16838 : : #define DONE return end_sequence ()
16839 : : #line 9571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16840 : : {
16841 : : rtx r1 = gen_reg_rtx (V4SFmode);
16842 : : rtx r2 = gen_reg_rtx (V4SFmode);
16843 : : rtx (*gen) (rtx, rtx);
16844 : :
16845 : : if (V4DImode == V2DImode)
16846 : : gen = gen_avx512dq_floatv2div2sf2;
16847 : : else
16848 : : gen = gen_floatv4div4sf2;
16849 : : emit_insn (gen (r1, operands[1]));
16850 : : emit_insn (gen (r2, operands[2]));
16851 : : if (V4DImode == V2DImode)
16852 : : emit_insn (gen_sse_movlhps (operands[0], r1, r2));
16853 : : else
16854 : : emit_insn (gen_avx_vec_concatv8sf (operands[0],
16855 : : r1, r2));
16856 : : DONE;
16857 : : }
16858 : : #undef DONE
16859 : : #undef FAIL
16860 : : }
16861 : : static const uint8_t expand_encoding[] = {
16862 : : 0x03, 0x01, 0x00, 0x73, 0x6f, 0x01, 0x01, 0x01,
16863 : : 0x02
16864 : : };
16865 : : return complete_seq (expand_encoding, operands);
16866 : : }
16867 : :
16868 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9615 */
16869 : : rtx
16870 : : gen_floatv2div2sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16871 : : {
16872 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16873 : : start_sequence ();
16874 : : {
16875 : : #define FAIL return (end_sequence (), nullptr)
16876 : : #define DONE return end_sequence ()
16877 : : #line 9626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16878 : : operands[4] = CONST0_RTX (V2SFmode);
16879 : : #undef DONE
16880 : : #undef FAIL
16881 : : }
16882 : : static const uint8_t expand_encoding[] = {
16883 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6b, 0x81,
16884 : : 0x09, 0x67, 0x73, 0x67, 0x01, 0x01, 0x81, 0x0a,
16885 : : 0x67, 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00,
16886 : : 0x27, 0x01, 0x01, 0x03, 0x01, 0x04
16887 : : };
16888 : : return complete_seq (expand_encoding, operands);
16889 : : }
16890 : :
16891 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10119 */
16892 : : rtx
16893 : : gen_vec_unpack_ufix_trunc_lo_v8sf (const rtx operand0, const rtx operand1)
16894 : : {
16895 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16896 : : start_sequence ();
16897 : : {
16898 : : #define FAIL return (end_sequence (), nullptr)
16899 : : #define DONE return end_sequence ()
16900 : : #line 10124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16901 : : {
16902 : : rtx tem = operands[1];
16903 : : rtx (*gen) (rtx, rtx);
16904 : :
16905 : : if (V8SFmode != V4SFmode)
16906 : : {
16907 : : tem = gen_reg_rtx (V4SFmode);
16908 : : emit_insn (gen_vec_extract_lo_v8sf (tem,
16909 : : operands[1]));
16910 : : gen = gen_fixuns_truncv4sfv4di2;
16911 : : }
16912 : : else
16913 : : gen = gen_avx512dq_fixuns_truncv2sfv2di2;
16914 : :
16915 : : emit_insn (gen (operands[0], tem));
16916 : : DONE;
16917 : : }
16918 : : #undef DONE
16919 : : #undef FAIL
16920 : : }
16921 : : static const uint8_t expand_encoding[] = {
16922 : : 0x02, 0x01, 0x00, 0x76, 0x57, 0x01, 0x01
16923 : : };
16924 : : return complete_seq (expand_encoding, operands);
16925 : : }
16926 : :
16927 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10169 */
16928 : : rtx
16929 : : gen_vec_unpack_ufix_trunc_lo_v32hf (const rtx operand0, const rtx operand1)
16930 : : {
16931 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16932 : : start_sequence ();
16933 : : {
16934 : : #define FAIL return (end_sequence (), nullptr)
16935 : : #define DONE return end_sequence ()
16936 : : #line 10174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16937 : : {
16938 : : rtx tem = operands[1];
16939 : : rtx (*gen) (rtx, rtx);
16940 : : if (V32HFmode != V8HFmode)
16941 : : {
16942 : : tem = gen_reg_rtx (V16HFmode);
16943 : : emit_insn (gen_vec_extract_lo_v32hf (tem,
16944 : : operands[1]));
16945 : : gen = gen_fixuns_truncv16hfv16si2;
16946 : : }
16947 : : else
16948 : : gen = gen_avx512fp16_fixuns_truncv16si2;
16949 : :
16950 : : emit_insn (gen (operands[0], tem));
16951 : : DONE;
16952 : : }
16953 : : #undef DONE
16954 : : #undef FAIL
16955 : : }
16956 : : static const uint8_t expand_encoding[] = {
16957 : : 0x02, 0x01, 0x00, 0x76, 0x5b, 0x01, 0x01
16958 : : };
16959 : : return complete_seq (expand_encoding, operands);
16960 : : }
16961 : :
16962 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10191 */
16963 : : rtx
16964 : : gen_vec_unpack_ufix_trunc_hi_v8hf (const rtx operand0, const rtx operand1)
16965 : : {
16966 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16967 : : start_sequence ();
16968 : : {
16969 : : #define FAIL return (end_sequence (), nullptr)
16970 : : #define DONE return end_sequence ()
16971 : : #line 10196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16972 : : {
16973 : : rtx tem = operands[1];
16974 : : rtx (*gen) (rtx, rtx);
16975 : : if (V8HFmode != V8HFmode)
16976 : : {
16977 : : tem = gen_reg_rtx (V4HFmode);
16978 : : emit_insn (gen_vec_extract_hi_v16hf (tem,
16979 : : operands[1]));
16980 : : gen = gen_fixuns_truncv4hfv4si2;
16981 : : }
16982 : : else
16983 : : {
16984 : : tem = gen_reg_rtx (V8HFmode);
16985 : : rtvec tmp = rtvec_alloc (8);
16986 : : for (int i = 0; i != 8; i++)
16987 : : RTVEC_ELT (tmp, i) = GEN_INT ((i + 4) % 8);
16988 : :
16989 : : rtx selector = gen_rtx_PARALLEL (VOIDmode, tmp);
16990 : : emit_move_insn (tem,
16991 : : gen_rtx_VEC_SELECT (V8HFmode, operands[1], selector));
16992 : : gen = gen_avx512fp16_fixuns_truncv4si2;
16993 : : }
16994 : :
16995 : : emit_insn (gen (operands[0], tem));
16996 : : DONE;
16997 : : }
16998 : : #undef DONE
16999 : : #undef FAIL
17000 : : }
17001 : : static const uint8_t expand_encoding[] = {
17002 : : 0x02, 0x01, 0x00, 0x76, 0x51, 0x01, 0x01
17003 : : };
17004 : : return complete_seq (expand_encoding, operands);
17005 : : }
17006 : :
17007 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10622 */
17008 : : rtx
17009 : : gen_avx512f_cvtmask2qv8di (const rtx operand0, const rtx operand1)
17010 : : {
17011 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1 };
17012 : : start_sequence ();
17013 : : {
17014 : : #define FAIL return (end_sequence (), nullptr)
17015 : : #define DONE return end_sequence ()
17016 : : #line 10629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17017 : : {
17018 : : operands[2] = CONSTM1_RTX (V8DImode);
17019 : : operands[3] = CONST0_RTX (V8DImode);
17020 : : }
17021 : : #undef DONE
17022 : : #undef FAIL
17023 : : }
17024 : : static const uint8_t expand_encoding[] = {
17025 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x01,
17026 : : 0x02, 0x01, 0x03, 0x01, 0x01
17027 : : };
17028 : : return complete_seq (expand_encoding, operands);
17029 : : }
17030 : :
17031 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10660 */
17032 : : extern rtx_insn *gen_split_1611 (rtx_insn *, rtx *);
17033 : : rtx_insn *
17034 : : gen_split_1611 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17035 : : {
17036 : : if (dump_file)
17037 : : fprintf (dump_file, "Splitting with gen_split_1611 (sse.md:10660)\n");
17038 : : start_sequence ();
17039 : : #define FAIL return (end_sequence (), nullptr)
17040 : : #define DONE return end_sequence ()
17041 : : #line 10676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17042 : : operands[4] = gen_reg_rtx (SImode);
17043 : : #undef DONE
17044 : : #undef FAIL
17045 : : static const uint8_t expand_encoding[] = {
17046 : : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x11, 0x01, 0x01,
17047 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x01, 0x03,
17048 : : 0x01, 0x02, 0x01, 0x04
17049 : : };
17050 : : return complete_seq (expand_encoding, operands);
17051 : : }
17052 : :
17053 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10660 */
17054 : : extern rtx_insn *gen_split_1621 (rtx_insn *, rtx *);
17055 : : rtx_insn *
17056 : : gen_split_1621 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17057 : : {
17058 : : if (dump_file)
17059 : : fprintf (dump_file, "Splitting with gen_split_1621 (sse.md:10660)\n");
17060 : : start_sequence ();
17061 : : #define FAIL return (end_sequence (), nullptr)
17062 : : #define DONE return end_sequence ()
17063 : : #line 10676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17064 : : operands[4] = gen_reg_rtx (QImode);
17065 : : #undef DONE
17066 : : #undef FAIL
17067 : : static const uint8_t expand_encoding[] = {
17068 : : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x0f, 0x01, 0x01,
17069 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x01, 0x03,
17070 : : 0x01, 0x02, 0x01, 0x04
17071 : : };
17072 : : return complete_seq (expand_encoding, operands);
17073 : : }
17074 : :
17075 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10824 */
17076 : : rtx
17077 : : gen_vec_unpacks_float_lo_v32hi (const rtx operand0, const rtx operand1)
17078 : : {
17079 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17080 : : start_sequence ();
17081 : : {
17082 : : #define FAIL return (end_sequence (), nullptr)
17083 : : #define DONE return end_sequence ()
17084 : : #line 10828 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17085 : : {
17086 : : rtx tmp = gen_reg_rtx (V16SImode);
17087 : :
17088 : : emit_insn (gen_vec_unpacks_lo_v32hi (tmp, operands[1]));
17089 : : emit_insn (gen_rtx_SET (operands[0],
17090 : : gen_rtx_FLOAT (V16SFmode, tmp)));
17091 : : DONE;
17092 : : }
17093 : : #undef DONE
17094 : : #undef FAIL
17095 : : }
17096 : : static const uint8_t expand_encoding[] = {
17097 : : 0x02, 0x01, 0x00, 0x01, 0x01
17098 : : };
17099 : : return complete_seq (expand_encoding, operands);
17100 : : }
17101 : :
17102 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10877 */
17103 : : rtx
17104 : : gen_vec_unpacks_float_lo_v4si (const rtx operand0, const rtx operand1)
17105 : : {
17106 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17107 : : static const uint8_t expand_encoding[] = {
17108 : : 0x1f, 0x01, 0x00, 0x73, 0x6c, 0x81, 0x0a, 0x4a,
17109 : : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
17110 : : 0x01
17111 : : };
17112 : : return expand_rtx (expand_encoding, operands);
17113 : : }
17114 : :
17115 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10906 */
17116 : : rtx
17117 : : gen_vec_unpacks_float_hi_v16si (const rtx operand0, const rtx operand1)
17118 : : {
17119 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
17120 : : start_sequence ();
17121 : : {
17122 : : #define FAIL return (end_sequence (), nullptr)
17123 : : #define DONE return end_sequence ()
17124 : : #line 10918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17125 : : operands[2] = gen_reg_rtx (V8SImode);
17126 : : #undef DONE
17127 : : #undef FAIL
17128 : : }
17129 : : static const uint8_t expand_encoding[] = {
17130 : : 0x02, 0x1f, 0x01, 0x02, 0x81, 0x0a, 0x56, 0x01,
17131 : : 0x01, 0x17, 0x00, 0x08, 0x27, 0x08, 0x27, 0x09,
17132 : : 0x27, 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d,
17133 : : 0x27, 0x0e, 0x27, 0x0f, 0x1f, 0x01, 0x00, 0x73,
17134 : : 0x75, 0x01, 0x02
17135 : : };
17136 : : return complete_seq (expand_encoding, operands);
17137 : : }
17138 : :
17139 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11111 */
17140 : : rtx
17141 : : gen_vec_pack_trunc_v8sf (const rtx operand0, const rtx operand1, const rtx operand2)
17142 : : {
17143 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17144 : : start_sequence ();
17145 : : {
17146 : : #define FAIL return (end_sequence (), nullptr)
17147 : : #define DONE return end_sequence ()
17148 : : #line 11116 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17149 : : {
17150 : : rtx r1 = gen_reg_rtx (V8HFmode);
17151 : : rtx r2 = gen_reg_rtx (V8HFmode);
17152 : : rtx (*gen) (rtx, rtx);
17153 : :
17154 : : if (V8SFmode == V4SFmode)
17155 : : gen = gen_avx512fp16_truncv4sfv4hf2;
17156 : : else
17157 : : gen = gen_truncv8sfv8hf2;
17158 : : emit_insn (gen (r1, operands[1]));
17159 : : emit_insn (gen (r2, operands[2]));
17160 : : if (V8SFmode == V4SFmode)
17161 : : emit_insn (gen_sse_movlhps_v8hf (operands[0], r1, r2));
17162 : : else
17163 : : emit_insn (gen_avx_vec_concatv16hf (operands[0],
17164 : : r1, r2));
17165 : : DONE;
17166 : :
17167 : : }
17168 : : #undef DONE
17169 : : #undef FAIL
17170 : : }
17171 : : static const uint8_t expand_encoding[] = {
17172 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17173 : : };
17174 : : return complete_seq (expand_encoding, operands);
17175 : : }
17176 : :
17177 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11296 */
17178 : : rtx
17179 : : gen_vec_pack_sfix_v4df (const rtx operand0, const rtx operand1, const rtx operand2)
17180 : : {
17181 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17182 : : start_sequence ();
17183 : : {
17184 : : #define FAIL return (end_sequence (), nullptr)
17185 : : #define DONE return end_sequence ()
17186 : : #line 11301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17187 : : {
17188 : : rtx r1, r2;
17189 : :
17190 : : r1 = gen_reg_rtx (V4SImode);
17191 : : r2 = gen_reg_rtx (V4SImode);
17192 : :
17193 : : emit_insn (gen_avx_cvtpd2dq256 (r1, operands[1]));
17194 : : emit_insn (gen_avx_cvtpd2dq256 (r2, operands[2]));
17195 : : emit_insn (gen_avx_vec_concatv8si (operands[0], r1, r2));
17196 : : DONE;
17197 : : }
17198 : : #undef DONE
17199 : : #undef FAIL
17200 : : }
17201 : : static const uint8_t expand_encoding[] = {
17202 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17203 : : };
17204 : : return complete_seq (expand_encoding, operands);
17205 : : }
17206 : :
17207 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11763 */
17208 : : rtx
17209 : : gen_avx_shufps256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
17210 : : {
17211 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
17212 : : start_sequence ();
17213 : : {
17214 : : #define FAIL return (end_sequence (), nullptr)
17215 : : #define DONE return end_sequence ()
17216 : : #line 11769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17217 : : {
17218 : : int mask = INTVAL (operands[3]);
17219 : : emit_insn (gen_avx_shufps256_1 (operands[0],
17220 : : operands[1],
17221 : : operands[2],
17222 : : GEN_INT ((mask >> 0) & 3),
17223 : : GEN_INT ((mask >> 2) & 3),
17224 : : GEN_INT (((mask >> 4) & 3) + 8),
17225 : : GEN_INT (((mask >> 6) & 3) + 8),
17226 : : GEN_INT (((mask >> 0) & 3) + 4),
17227 : : GEN_INT (((mask >> 2) & 3) + 4),
17228 : : GEN_INT (((mask >> 4) & 3) + 12),
17229 : : GEN_INT (((mask >> 6) & 3) + 12)
17230 : : ));
17231 : : DONE;
17232 : : }
17233 : : #undef DONE
17234 : : #undef FAIL
17235 : : }
17236 : : static const uint8_t expand_encoding[] = {
17237 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17238 : : 0x03
17239 : : };
17240 : : return complete_seq (expand_encoding, operands);
17241 : : }
17242 : :
17243 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12393 */
17244 : : extern rtx_insn *gen_split_1626 (rtx_insn *, rtx *);
17245 : : rtx_insn *
17246 : : gen_split_1626 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17247 : : {
17248 : : if (dump_file)
17249 : : fprintf (dump_file, "Splitting with gen_split_1626 (sse.md:12393)\n");
17250 : : start_sequence ();
17251 : : #define FAIL return (end_sequence (), nullptr)
17252 : : #define DONE return end_sequence ()
17253 : : #line 12405 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17254 : : {
17255 : : rtx dest = gen_reg_rtx (V16HImode);
17256 : : emit_insn (gen_vec_setv16hi_0 (dest,
17257 : : CONST0_RTX (V16HImode),
17258 : : operands[1]));
17259 : : emit_move_insn (operands[0],
17260 : : lowpart_subreg (V8SImode, dest, V16HImode));
17261 : : DONE;
17262 : : }
17263 : : #undef DONE
17264 : : #undef FAIL
17265 : : static const uint8_t expand_encoding[] = {
17266 : : 0x01, 0x27, 0x00
17267 : : };
17268 : : return complete_seq (expand_encoding, operands);
17269 : : }
17270 : :
17271 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12584 */
17272 : : extern rtx_insn *gen_split_1636 (rtx_insn *, rtx *);
17273 : : rtx_insn *
17274 : : gen_split_1636 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17275 : : {
17276 : : if (dump_file)
17277 : : fprintf (dump_file, "Splitting with gen_split_1636 (sse.md:12584)\n");
17278 : : start_sequence ();
17279 : : #define FAIL return (end_sequence (), nullptr)
17280 : : #define DONE return end_sequence ()
17281 : : #line 12593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17282 : : operands[0] = adjust_address (operands[0], SImode, 0);
17283 : : #undef DONE
17284 : : #undef FAIL
17285 : : static const uint8_t expand_encoding[] = {
17286 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17287 : : };
17288 : : return complete_seq (expand_encoding, operands);
17289 : : }
17290 : :
17291 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12614 */
17292 : : rtx
17293 : : gen_vec_setv4sf (const rtx operand0, const rtx operand1, const rtx operand2)
17294 : : {
17295 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17296 : : start_sequence ();
17297 : : {
17298 : : #define FAIL _Pragma ("GCC error \"vec_setv4sf cannot FAIL\"") (void)0
17299 : : #define DONE return end_sequence ()
17300 : : #line 12619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17301 : : {
17302 : : if (CONST_INT_P (operands[2]))
17303 : : ix86_expand_vector_set (false, operands[0], operands[1],
17304 : : INTVAL (operands[2]));
17305 : : else
17306 : : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17307 : : DONE;
17308 : : }
17309 : : #undef DONE
17310 : : #undef FAIL
17311 : : }
17312 : : static const uint8_t expand_encoding[] = {
17313 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17314 : : };
17315 : : return complete_seq (expand_encoding, operands);
17316 : : }
17317 : :
17318 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12628 */
17319 : : rtx
17320 : : gen_vec_setv64qi (const rtx operand0, const rtx operand1, const rtx operand2)
17321 : : {
17322 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17323 : : start_sequence ();
17324 : : {
17325 : : #define FAIL _Pragma ("GCC error \"vec_setv64qi cannot FAIL\"") (void)0
17326 : : #define DONE return end_sequence ()
17327 : : #line 12633 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17328 : : {
17329 : : if (CONST_INT_P (operands[2]))
17330 : : ix86_expand_vector_set (false, operands[0], operands[1],
17331 : : INTVAL (operands[2]));
17332 : : else
17333 : : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17334 : : DONE;
17335 : : }
17336 : : #undef DONE
17337 : : #undef FAIL
17338 : : }
17339 : : static const uint8_t expand_encoding[] = {
17340 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17341 : : };
17342 : : return complete_seq (expand_encoding, operands);
17343 : : }
17344 : :
17345 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12696 */
17346 : : extern rtx_insn *gen_split_1640 (rtx_insn *, rtx *);
17347 : : rtx_insn *
17348 : : gen_split_1640 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17349 : : {
17350 : : if (dump_file)
17351 : : fprintf (dump_file, "Splitting with gen_split_1640 (sse.md:12696)\n");
17352 : : start_sequence ();
17353 : : #define FAIL return (end_sequence (), nullptr)
17354 : : #define DONE return end_sequence ()
17355 : : #line 12705 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17356 : : {
17357 : : operands[1] = adjust_address (operands[1], SFmode, INTVAL (operands[2]) * 4);
17358 : : }
17359 : : #undef DONE
17360 : : #undef FAIL
17361 : : static const uint8_t expand_encoding[] = {
17362 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17363 : : };
17364 : : return complete_seq (expand_encoding, operands);
17365 : : }
17366 : :
17367 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12888 */
17368 : : rtx
17369 : : gen_avx512dq_vextractf32x8_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
17370 : : {
17371 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
17372 : : start_sequence ();
17373 : : {
17374 : : #define FAIL return (end_sequence (), nullptr)
17375 : : #define DONE return end_sequence ()
17376 : : #line 12895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17377 : : {
17378 : : rtx (*insn)(rtx, rtx, rtx, rtx);
17379 : : rtx dest = operands[0];
17380 : :
17381 : : if (MEM_P (dest) && !rtx_equal_p (dest, operands[3]))
17382 : : dest = gen_reg_rtx (V8SFmode);
17383 : :
17384 : : switch (INTVAL (operands[2]))
17385 : : {
17386 : : case 0:
17387 : : insn = gen_vec_extract_lo_v16sf_mask;
17388 : : break;
17389 : : case 1:
17390 : : insn = gen_vec_extract_hi_v16sf_mask;
17391 : : break;
17392 : : default:
17393 : : gcc_unreachable ();
17394 : : }
17395 : :
17396 : : emit_insn (insn (dest, operands[1], operands[3], operands[4]));
17397 : : if (dest != operands[0])
17398 : : emit_move_insn (operands[0], dest);
17399 : : DONE;
17400 : : }
17401 : : #undef DONE
17402 : : #undef FAIL
17403 : : }
17404 : : static const uint8_t expand_encoding[] = {
17405 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17406 : : 0x03, 0x01, 0x04
17407 : : };
17408 : : return complete_seq (expand_encoding, operands);
17409 : : }
17410 : :
17411 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13080 */
17412 : : rtx
17413 : : gen_avx_vextractf128v32qi (const rtx operand0, const rtx operand1, const rtx operand2)
17414 : : {
17415 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17416 : : start_sequence ();
17417 : : {
17418 : : #define FAIL return (end_sequence (), nullptr)
17419 : : #define DONE return end_sequence ()
17420 : : #line 13085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17421 : : {
17422 : : rtx (*insn)(rtx, rtx);
17423 : :
17424 : : switch (INTVAL (operands[2]))
17425 : : {
17426 : : case 0:
17427 : : insn = gen_vec_extract_lo_v32qi;
17428 : : break;
17429 : : case 1:
17430 : : insn = gen_vec_extract_hi_v32qi;
17431 : : break;
17432 : : default:
17433 : : gcc_unreachable ();
17434 : : }
17435 : :
17436 : : emit_insn (insn (operands[0], operands[1]));
17437 : : DONE;
17438 : : }
17439 : : #undef DONE
17440 : : #undef FAIL
17441 : : }
17442 : : static const uint8_t expand_encoding[] = {
17443 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17444 : : };
17445 : : return complete_seq (expand_encoding, operands);
17446 : : }
17447 : :
17448 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13080 */
17449 : : rtx
17450 : : gen_avx_vextractf128v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
17451 : : {
17452 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17453 : : start_sequence ();
17454 : : {
17455 : : #define FAIL return (end_sequence (), nullptr)
17456 : : #define DONE return end_sequence ()
17457 : : #line 13085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17458 : : {
17459 : : rtx (*insn)(rtx, rtx);
17460 : :
17461 : : switch (INTVAL (operands[2]))
17462 : : {
17463 : : case 0:
17464 : : insn = gen_vec_extract_lo_v16hf;
17465 : : break;
17466 : : case 1:
17467 : : insn = gen_vec_extract_hi_v16hf;
17468 : : break;
17469 : : default:
17470 : : gcc_unreachable ();
17471 : : }
17472 : :
17473 : : emit_insn (insn (operands[0], operands[1]));
17474 : : DONE;
17475 : : }
17476 : : #undef DONE
17477 : : #undef FAIL
17478 : : }
17479 : : static const uint8_t expand_encoding[] = {
17480 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17481 : : };
17482 : : return complete_seq (expand_encoding, operands);
17483 : : }
17484 : :
17485 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13333 */
17486 : : extern rtx_insn *gen_split_1655 (rtx_insn *, rtx *);
17487 : : rtx_insn *
17488 : : gen_split_1655 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17489 : : {
17490 : : if (dump_file)
17491 : : fprintf (dump_file, "Splitting with gen_split_1655 (sse.md:13333)\n");
17492 : : start_sequence ();
17493 : : #define FAIL return (end_sequence (), nullptr)
17494 : : #define DONE return end_sequence ()
17495 : : #line 13359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17496 : : {
17497 : : if (!TARGET_AVX512VL
17498 : : && REG_P (operands[0])
17499 : : && EXT_REX_SSE_REG_P (operands[1]))
17500 : : operands[0] = lowpart_subreg (V32BFmode, operands[0],
17501 : : V16BFmode);
17502 : : else
17503 : : operands[1] = gen_lowpart (V16BFmode, operands[1]);
17504 : : }
17505 : : #undef DONE
17506 : : #undef FAIL
17507 : : static const uint8_t expand_encoding[] = {
17508 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17509 : : };
17510 : : return complete_seq (expand_encoding, operands);
17511 : : }
17512 : :
17513 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13604 */
17514 : : rtx
17515 : : gen_vec_extractv16qiqi (const rtx operand0, const rtx operand1, const rtx operand2)
17516 : : {
17517 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17518 : : start_sequence ();
17519 : : {
17520 : : #define FAIL _Pragma ("GCC error \"vec_extractv16qiqi cannot FAIL\"") (void)0
17521 : : #define DONE return end_sequence ()
17522 : : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17523 : : {
17524 : : ix86_expand_vector_extract (false, operands[0], operands[1],
17525 : : INTVAL (operands[2]));
17526 : : DONE;
17527 : : }
17528 : : #undef DONE
17529 : : #undef FAIL
17530 : : }
17531 : : static const uint8_t expand_encoding[] = {
17532 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17533 : : };
17534 : : return complete_seq (expand_encoding, operands);
17535 : : }
17536 : :
17537 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13604 */
17538 : : rtx
17539 : : gen_vec_extractv32hfhf (const rtx operand0, const rtx operand1, const rtx operand2)
17540 : : {
17541 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17542 : : start_sequence ();
17543 : : {
17544 : : #define FAIL _Pragma ("GCC error \"vec_extractv32hfhf cannot FAIL\"") (void)0
17545 : : #define DONE return end_sequence ()
17546 : : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17547 : : {
17548 : : ix86_expand_vector_extract (false, operands[0], operands[1],
17549 : : INTVAL (operands[2]));
17550 : : DONE;
17551 : : }
17552 : : #undef DONE
17553 : : #undef FAIL
17554 : : }
17555 : : static const uint8_t expand_encoding[] = {
17556 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17557 : : };
17558 : : return complete_seq (expand_encoding, operands);
17559 : : }
17560 : :
17561 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13604 */
17562 : : rtx
17563 : : gen_vec_extractv4dfdf (const rtx operand0, const rtx operand1, const rtx operand2)
17564 : : {
17565 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17566 : : start_sequence ();
17567 : : {
17568 : : #define FAIL _Pragma ("GCC error \"vec_extractv4dfdf cannot FAIL\"") (void)0
17569 : : #define DONE return end_sequence ()
17570 : : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17571 : : {
17572 : : ix86_expand_vector_extract (false, operands[0], operands[1],
17573 : : INTVAL (operands[2]));
17574 : : DONE;
17575 : : }
17576 : : #undef DONE
17577 : : #undef FAIL
17578 : : }
17579 : : static const uint8_t expand_encoding[] = {
17580 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17581 : : };
17582 : : return complete_seq (expand_encoding, operands);
17583 : : }
17584 : :
17585 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13615 */
17586 : : rtx
17587 : : gen_vec_extractv8sfv4sf (const rtx operand0, const rtx operand1, const rtx operand2)
17588 : : {
17589 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17590 : : start_sequence ();
17591 : : {
17592 : : #define FAIL _Pragma ("GCC error \"vec_extractv8sfv4sf cannot FAIL\"") (void)0
17593 : : #define DONE return end_sequence ()
17594 : : #line 13620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17595 : : {
17596 : : if (INTVAL (operands[2]))
17597 : : emit_insn (gen_vec_extract_hi_v8sf (operands[0], operands[1]));
17598 : : else
17599 : : emit_insn (gen_vec_extract_lo_v8sf (operands[0], operands[1]));
17600 : : DONE;
17601 : : }
17602 : : #undef DONE
17603 : : #undef FAIL
17604 : : }
17605 : : static const uint8_t expand_encoding[] = {
17606 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17607 : : };
17608 : : return complete_seq (expand_encoding, operands);
17609 : : }
17610 : :
17611 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13665 */
17612 : : rtx
17613 : : gen_vec_interleave_highv4df (const rtx operand0, const rtx operand1, const rtx operand2)
17614 : : {
17615 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17616 : : start_sequence ();
17617 : : {
17618 : : #define FAIL return (end_sequence (), nullptr)
17619 : : #define DONE return end_sequence ()
17620 : : #line 13688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17621 : : {
17622 : : operands[3] = gen_reg_rtx (V4DFmode);
17623 : : operands[4] = gen_reg_rtx (V4DFmode);
17624 : : }
17625 : : #undef DONE
17626 : : #undef FAIL
17627 : : }
17628 : : static const uint8_t expand_encoding[] = {
17629 : : 0x03, 0x1f, 0x01, 0x03, 0x81, 0x0a, 0x70, 0x81,
17630 : : 0x0b, 0x75, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
17631 : : 0x04, 0x27, 0x00, 0x27, 0x04, 0x27, 0x02, 0x27,
17632 : : 0x06, 0x1f, 0x01, 0x04, 0x81, 0x0a, 0x70, 0x81,
17633 : : 0x0b, 0x75, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
17634 : : 0x04, 0x27, 0x01, 0x27, 0x05, 0x27, 0x03, 0x27,
17635 : : 0x07, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x70, 0x81,
17636 : : 0x0b, 0x75, 0x01, 0x03, 0x01, 0x04, 0x17, 0x00,
17637 : : 0x04, 0x27, 0x02, 0x27, 0x03, 0x27, 0x06, 0x27,
17638 : : 0x07
17639 : : };
17640 : : return complete_seq (expand_encoding, operands);
17641 : : }
17642 : :
17643 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14011 */
17644 : : extern rtx_insn *gen_split_1669 (rtx_insn *, rtx *);
17645 : : rtx_insn *
17646 : : gen_split_1669 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17647 : : {
17648 : : if (dump_file)
17649 : : fprintf (dump_file, "Splitting with gen_split_1669 (sse.md:14011)\n");
17650 : : start_sequence ();
17651 : : static const uint8_t expand_encoding[] = {
17652 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17653 : : 0x00, 0x1a, 0x59, 0x04, 0x01, 0x00, 0x01, 0x00,
17654 : : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17655 : : };
17656 : : return complete_seq (expand_encoding, operands);
17657 : : }
17658 : :
17659 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14011 */
17660 : : extern rtx_insn *gen_split_1676 (rtx_insn *, rtx *);
17661 : : rtx_insn *
17662 : : gen_split_1676 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17663 : : {
17664 : : if (dump_file)
17665 : : fprintf (dump_file, "Splitting with gen_split_1676 (sse.md:14011)\n");
17666 : : start_sequence ();
17667 : : static const uint8_t expand_encoding[] = {
17668 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17669 : : 0x00, 0x1a, 0x56, 0x04, 0x01, 0x00, 0x01, 0x00,
17670 : : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17671 : : };
17672 : : return complete_seq (expand_encoding, operands);
17673 : : }
17674 : :
17675 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14011 */
17676 : : extern rtx_insn *gen_split_1686 (rtx_insn *, rtx *);
17677 : : rtx_insn *
17678 : : gen_split_1686 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17679 : : {
17680 : : if (dump_file)
17681 : : fprintf (dump_file, "Splitting with gen_split_1686 (sse.md:14011)\n");
17682 : : start_sequence ();
17683 : : static const uint8_t expand_encoding[] = {
17684 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17685 : : 0x00, 0x1a, 0x69, 0x04, 0x01, 0x00, 0x01, 0x00,
17686 : : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17687 : : };
17688 : : return complete_seq (expand_encoding, operands);
17689 : : }
17690 : :
17691 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14032 */
17692 : : extern rtx_insn *gen_split_1696 (rtx_insn *, rtx *);
17693 : : rtx_insn *
17694 : : gen_split_1696 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17695 : : {
17696 : : if (dump_file)
17697 : : fprintf (dump_file, "Splitting with gen_split_1696 (sse.md:14032)\n");
17698 : : start_sequence ();
17699 : : #define FAIL return (end_sequence (), nullptr)
17700 : : #define DONE return end_sequence ()
17701 : : #line 14048 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17702 : : substitute_vpternlog_operands (operands);
17703 : : #undef DONE
17704 : : #undef FAIL
17705 : : static const uint8_t expand_encoding[] = {
17706 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
17707 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17708 : : 0x25
17709 : : };
17710 : : return complete_seq (expand_encoding, operands);
17711 : : }
17712 : :
17713 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14032 */
17714 : : extern rtx_insn *gen_split_1706 (rtx_insn *, rtx *);
17715 : : rtx_insn *
17716 : : gen_split_1706 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17717 : : {
17718 : : if (dump_file)
17719 : : fprintf (dump_file, "Splitting with gen_split_1706 (sse.md:14032)\n");
17720 : : start_sequence ();
17721 : : #define FAIL return (end_sequence (), nullptr)
17722 : : #define DONE return end_sequence ()
17723 : : #line 14048 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17724 : : substitute_vpternlog_operands (operands);
17725 : : #undef DONE
17726 : : #undef FAIL
17727 : : static const uint8_t expand_encoding[] = {
17728 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
17729 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17730 : : 0x25
17731 : : };
17732 : : return complete_seq (expand_encoding, operands);
17733 : : }
17734 : :
17735 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14032 */
17736 : : extern rtx_insn *gen_split_1716 (rtx_insn *, rtx *);
17737 : : rtx_insn *
17738 : : gen_split_1716 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17739 : : {
17740 : : if (dump_file)
17741 : : fprintf (dump_file, "Splitting with gen_split_1716 (sse.md:14032)\n");
17742 : : start_sequence ();
17743 : : #define FAIL return (end_sequence (), nullptr)
17744 : : #define DONE return end_sequence ()
17745 : : #line 14048 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17746 : : substitute_vpternlog_operands (operands);
17747 : : #undef DONE
17748 : : #undef FAIL
17749 : : static const uint8_t expand_encoding[] = {
17750 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
17751 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17752 : : 0x25
17753 : : };
17754 : : return complete_seq (expand_encoding, operands);
17755 : : }
17756 : :
17757 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14064 */
17758 : : extern rtx_insn *gen_split_1726 (rtx_insn *, rtx *);
17759 : : rtx_insn *
17760 : : gen_split_1726 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17761 : : {
17762 : : if (dump_file)
17763 : : fprintf (dump_file, "Splitting with gen_split_1726 (sse.md:14064)\n");
17764 : : start_sequence ();
17765 : : #define FAIL return (end_sequence (), nullptr)
17766 : : #define DONE return end_sequence ()
17767 : : #line 14073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17768 : : {
17769 : : rtx args[3];
17770 : : args[0] = NULL_RTX;
17771 : : args[1] = NULL_RTX;
17772 : : args[2] = NULL_RTX;
17773 : : int idx = ix86_ternlog_idx (operands[1], args);
17774 : : ix86_expand_ternlog (V8DImode, args[0], args[1], args[2], idx,
17775 : : operands[0]);
17776 : : DONE;
17777 : : }
17778 : : #undef DONE
17779 : : #undef FAIL
17780 : : static const uint8_t expand_encoding[] = {
17781 : : 0x01, 0x27, 0x00
17782 : : };
17783 : : return complete_seq (expand_encoding, operands);
17784 : : }
17785 : :
17786 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14064 */
17787 : : extern rtx_insn *gen_split_1736 (rtx_insn *, rtx *);
17788 : : rtx_insn *
17789 : : gen_split_1736 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17790 : : {
17791 : : if (dump_file)
17792 : : fprintf (dump_file, "Splitting with gen_split_1736 (sse.md:14064)\n");
17793 : : start_sequence ();
17794 : : #define FAIL return (end_sequence (), nullptr)
17795 : : #define DONE return end_sequence ()
17796 : : #line 14073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17797 : : {
17798 : : rtx args[3];
17799 : : args[0] = NULL_RTX;
17800 : : args[1] = NULL_RTX;
17801 : : args[2] = NULL_RTX;
17802 : : int idx = ix86_ternlog_idx (operands[1], args);
17803 : : ix86_expand_ternlog (V8SFmode, args[0], args[1], args[2], idx,
17804 : : operands[0]);
17805 : : DONE;
17806 : : }
17807 : : #undef DONE
17808 : : #undef FAIL
17809 : : static const uint8_t expand_encoding[] = {
17810 : : 0x01, 0x27, 0x00
17811 : : };
17812 : : return complete_seq (expand_encoding, operands);
17813 : : }
17814 : :
17815 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
17816 : : extern rtx_insn *gen_split_1746 (rtx_insn *, rtx *);
17817 : : rtx_insn *
17818 : : gen_split_1746 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17819 : : {
17820 : : if (dump_file)
17821 : : fprintf (dump_file, "Splitting with gen_split_1746 (sse.md:14088)\n");
17822 : : start_sequence ();
17823 : : #define FAIL return (end_sequence (), nullptr)
17824 : : #define DONE return end_sequence ()
17825 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17826 : : {
17827 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17828 : : int reg6 = 0xF0;
17829 : : int reg2 = 0xCC;
17830 : : int reg1 = 0xAA;
17831 : : int reg3 = 0;
17832 : : int reg4 = 0;
17833 : : int reg_mask, tmp1, tmp2;
17834 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17835 : : STRIP_UNARY (operands[4])))
17836 : : {
17837 : : reg4 = reg1;
17838 : : reg3 = reg6;
17839 : : operands[6] = operands[3];
17840 : : }
17841 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17842 : : STRIP_UNARY (operands[4])))
17843 : : {
17844 : : reg4 = reg2;
17845 : : reg3 = reg6;
17846 : : operands[6] = operands[3];
17847 : : }
17848 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17849 : : STRIP_UNARY (operands[3])))
17850 : : {
17851 : : reg4 = reg6;
17852 : : reg3 = reg1;
17853 : : operands[6] = operands[4];
17854 : : }
17855 : : else
17856 : : {
17857 : : reg4 = reg6;
17858 : : reg3 = reg2;
17859 : : operands[6] = operands[4];
17860 : : }
17861 : :
17862 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17863 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17864 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17865 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17866 : :
17867 : : tmp1 = reg1 & reg2;
17868 : : tmp2 = reg3 | reg4;
17869 : : reg_mask = tmp1 ^ tmp2;
17870 : : reg_mask &= 0xFF;
17871 : :
17872 : : operands[1] = STRIP_UNARY (operands[1]);
17873 : : operands[2] = STRIP_UNARY (operands[2]);
17874 : : operands[6] = STRIP_UNARY (operands[6]);
17875 : : if (!register_operand (operands[2], V64QImode))
17876 : : operands[2] = force_reg (V64QImode, operands[2]);
17877 : : if (!register_operand (operands[6], V64QImode))
17878 : : operands[6] = force_reg (V64QImode, operands[6]);
17879 : : operands[5] = GEN_INT (reg_mask);
17880 : : }
17881 : : #undef DONE
17882 : : #undef FAIL
17883 : : static const uint8_t expand_encoding[] = {
17884 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17885 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17886 : : 0x25
17887 : : };
17888 : : return complete_seq (expand_encoding, operands);
17889 : : }
17890 : :
17891 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
17892 : : extern rtx_insn *gen_split_1756 (rtx_insn *, rtx *);
17893 : : rtx_insn *
17894 : : gen_split_1756 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17895 : : {
17896 : : if (dump_file)
17897 : : fprintf (dump_file, "Splitting with gen_split_1756 (sse.md:14088)\n");
17898 : : start_sequence ();
17899 : : #define FAIL return (end_sequence (), nullptr)
17900 : : #define DONE return end_sequence ()
17901 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17902 : : {
17903 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17904 : : int reg6 = 0xF0;
17905 : : int reg2 = 0xCC;
17906 : : int reg1 = 0xAA;
17907 : : int reg3 = 0;
17908 : : int reg4 = 0;
17909 : : int reg_mask, tmp1, tmp2;
17910 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17911 : : STRIP_UNARY (operands[4])))
17912 : : {
17913 : : reg4 = reg1;
17914 : : reg3 = reg6;
17915 : : operands[6] = operands[3];
17916 : : }
17917 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17918 : : STRIP_UNARY (operands[4])))
17919 : : {
17920 : : reg4 = reg2;
17921 : : reg3 = reg6;
17922 : : operands[6] = operands[3];
17923 : : }
17924 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17925 : : STRIP_UNARY (operands[3])))
17926 : : {
17927 : : reg4 = reg6;
17928 : : reg3 = reg1;
17929 : : operands[6] = operands[4];
17930 : : }
17931 : : else
17932 : : {
17933 : : reg4 = reg6;
17934 : : reg3 = reg2;
17935 : : operands[6] = operands[4];
17936 : : }
17937 : :
17938 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17939 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17940 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17941 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17942 : :
17943 : : tmp1 = reg1 | reg2;
17944 : : tmp2 = reg3 ^ reg4;
17945 : : reg_mask = tmp1 & tmp2;
17946 : : reg_mask &= 0xFF;
17947 : :
17948 : : operands[1] = STRIP_UNARY (operands[1]);
17949 : : operands[2] = STRIP_UNARY (operands[2]);
17950 : : operands[6] = STRIP_UNARY (operands[6]);
17951 : : if (!register_operand (operands[2], V64QImode))
17952 : : operands[2] = force_reg (V64QImode, operands[2]);
17953 : : if (!register_operand (operands[6], V64QImode))
17954 : : operands[6] = force_reg (V64QImode, operands[6]);
17955 : : operands[5] = GEN_INT (reg_mask);
17956 : : }
17957 : : #undef DONE
17958 : : #undef FAIL
17959 : : static const uint8_t expand_encoding[] = {
17960 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17961 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17962 : : 0x25
17963 : : };
17964 : : return complete_seq (expand_encoding, operands);
17965 : : }
17966 : :
17967 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
17968 : : extern rtx_insn *gen_split_1766 (rtx_insn *, rtx *);
17969 : : rtx_insn *
17970 : : gen_split_1766 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17971 : : {
17972 : : if (dump_file)
17973 : : fprintf (dump_file, "Splitting with gen_split_1766 (sse.md:14088)\n");
17974 : : start_sequence ();
17975 : : #define FAIL return (end_sequence (), nullptr)
17976 : : #define DONE return end_sequence ()
17977 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17978 : : {
17979 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17980 : : int reg6 = 0xF0;
17981 : : int reg2 = 0xCC;
17982 : : int reg1 = 0xAA;
17983 : : int reg3 = 0;
17984 : : int reg4 = 0;
17985 : : int reg_mask, tmp1, tmp2;
17986 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17987 : : STRIP_UNARY (operands[4])))
17988 : : {
17989 : : reg4 = reg1;
17990 : : reg3 = reg6;
17991 : : operands[6] = operands[3];
17992 : : }
17993 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17994 : : STRIP_UNARY (operands[4])))
17995 : : {
17996 : : reg4 = reg2;
17997 : : reg3 = reg6;
17998 : : operands[6] = operands[3];
17999 : : }
18000 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18001 : : STRIP_UNARY (operands[3])))
18002 : : {
18003 : : reg4 = reg6;
18004 : : reg3 = reg1;
18005 : : operands[6] = operands[4];
18006 : : }
18007 : : else
18008 : : {
18009 : : reg4 = reg6;
18010 : : reg3 = reg2;
18011 : : operands[6] = operands[4];
18012 : : }
18013 : :
18014 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18015 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18016 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18017 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18018 : :
18019 : : tmp1 = reg1 ^ reg2;
18020 : : tmp2 = reg3 ^ reg4;
18021 : : reg_mask = tmp1 | tmp2;
18022 : : reg_mask &= 0xFF;
18023 : :
18024 : : operands[1] = STRIP_UNARY (operands[1]);
18025 : : operands[2] = STRIP_UNARY (operands[2]);
18026 : : operands[6] = STRIP_UNARY (operands[6]);
18027 : : if (!register_operand (operands[2], V64QImode))
18028 : : operands[2] = force_reg (V64QImode, operands[2]);
18029 : : if (!register_operand (operands[6], V64QImode))
18030 : : operands[6] = force_reg (V64QImode, operands[6]);
18031 : : operands[5] = GEN_INT (reg_mask);
18032 : : }
18033 : : #undef DONE
18034 : : #undef FAIL
18035 : : static const uint8_t expand_encoding[] = {
18036 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
18037 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18038 : : 0x25
18039 : : };
18040 : : return complete_seq (expand_encoding, operands);
18041 : : }
18042 : :
18043 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18044 : : extern rtx_insn *gen_split_1776 (rtx_insn *, rtx *);
18045 : : rtx_insn *
18046 : : gen_split_1776 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18047 : : {
18048 : : if (dump_file)
18049 : : fprintf (dump_file, "Splitting with gen_split_1776 (sse.md:14088)\n");
18050 : : start_sequence ();
18051 : : #define FAIL return (end_sequence (), nullptr)
18052 : : #define DONE return end_sequence ()
18053 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18054 : : {
18055 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18056 : : int reg6 = 0xF0;
18057 : : int reg2 = 0xCC;
18058 : : int reg1 = 0xAA;
18059 : : int reg3 = 0;
18060 : : int reg4 = 0;
18061 : : int reg_mask, tmp1, tmp2;
18062 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18063 : : STRIP_UNARY (operands[4])))
18064 : : {
18065 : : reg4 = reg1;
18066 : : reg3 = reg6;
18067 : : operands[6] = operands[3];
18068 : : }
18069 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18070 : : STRIP_UNARY (operands[4])))
18071 : : {
18072 : : reg4 = reg2;
18073 : : reg3 = reg6;
18074 : : operands[6] = operands[3];
18075 : : }
18076 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18077 : : STRIP_UNARY (operands[3])))
18078 : : {
18079 : : reg4 = reg6;
18080 : : reg3 = reg1;
18081 : : operands[6] = operands[4];
18082 : : }
18083 : : else
18084 : : {
18085 : : reg4 = reg6;
18086 : : reg3 = reg2;
18087 : : operands[6] = operands[4];
18088 : : }
18089 : :
18090 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18091 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18092 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18093 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18094 : :
18095 : : tmp1 = reg1 & reg2;
18096 : : tmp2 = reg3 ^ reg4;
18097 : : reg_mask = tmp1 ^ tmp2;
18098 : : reg_mask &= 0xFF;
18099 : :
18100 : : operands[1] = STRIP_UNARY (operands[1]);
18101 : : operands[2] = STRIP_UNARY (operands[2]);
18102 : : operands[6] = STRIP_UNARY (operands[6]);
18103 : : if (!register_operand (operands[2], V32QImode))
18104 : : operands[2] = force_reg (V32QImode, operands[2]);
18105 : : if (!register_operand (operands[6], V32QImode))
18106 : : operands[6] = force_reg (V32QImode, operands[6]);
18107 : : operands[5] = GEN_INT (reg_mask);
18108 : : }
18109 : : #undef DONE
18110 : : #undef FAIL
18111 : : static const uint8_t expand_encoding[] = {
18112 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18113 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18114 : : 0x25
18115 : : };
18116 : : return complete_seq (expand_encoding, operands);
18117 : : }
18118 : :
18119 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18120 : : extern rtx_insn *gen_split_1786 (rtx_insn *, rtx *);
18121 : : rtx_insn *
18122 : : gen_split_1786 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18123 : : {
18124 : : if (dump_file)
18125 : : fprintf (dump_file, "Splitting with gen_split_1786 (sse.md:14088)\n");
18126 : : start_sequence ();
18127 : : #define FAIL return (end_sequence (), nullptr)
18128 : : #define DONE return end_sequence ()
18129 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18130 : : {
18131 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18132 : : int reg6 = 0xF0;
18133 : : int reg2 = 0xCC;
18134 : : int reg1 = 0xAA;
18135 : : int reg3 = 0;
18136 : : int reg4 = 0;
18137 : : int reg_mask, tmp1, tmp2;
18138 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18139 : : STRIP_UNARY (operands[4])))
18140 : : {
18141 : : reg4 = reg1;
18142 : : reg3 = reg6;
18143 : : operands[6] = operands[3];
18144 : : }
18145 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18146 : : STRIP_UNARY (operands[4])))
18147 : : {
18148 : : reg4 = reg2;
18149 : : reg3 = reg6;
18150 : : operands[6] = operands[3];
18151 : : }
18152 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18153 : : STRIP_UNARY (operands[3])))
18154 : : {
18155 : : reg4 = reg6;
18156 : : reg3 = reg1;
18157 : : operands[6] = operands[4];
18158 : : }
18159 : : else
18160 : : {
18161 : : reg4 = reg6;
18162 : : reg3 = reg2;
18163 : : operands[6] = operands[4];
18164 : : }
18165 : :
18166 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18167 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18168 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18169 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18170 : :
18171 : : tmp1 = reg1 ^ reg2;
18172 : : tmp2 = reg3 & reg4;
18173 : : reg_mask = tmp1 & tmp2;
18174 : : reg_mask &= 0xFF;
18175 : :
18176 : : operands[1] = STRIP_UNARY (operands[1]);
18177 : : operands[2] = STRIP_UNARY (operands[2]);
18178 : : operands[6] = STRIP_UNARY (operands[6]);
18179 : : if (!register_operand (operands[2], V32QImode))
18180 : : operands[2] = force_reg (V32QImode, operands[2]);
18181 : : if (!register_operand (operands[6], V32QImode))
18182 : : operands[6] = force_reg (V32QImode, operands[6]);
18183 : : operands[5] = GEN_INT (reg_mask);
18184 : : }
18185 : : #undef DONE
18186 : : #undef FAIL
18187 : : static const uint8_t expand_encoding[] = {
18188 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18189 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18190 : : 0x25
18191 : : };
18192 : : return complete_seq (expand_encoding, operands);
18193 : : }
18194 : :
18195 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18196 : : extern rtx_insn *gen_split_1796 (rtx_insn *, rtx *);
18197 : : rtx_insn *
18198 : : gen_split_1796 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18199 : : {
18200 : : if (dump_file)
18201 : : fprintf (dump_file, "Splitting with gen_split_1796 (sse.md:14088)\n");
18202 : : start_sequence ();
18203 : : #define FAIL return (end_sequence (), nullptr)
18204 : : #define DONE return end_sequence ()
18205 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18206 : : {
18207 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18208 : : int reg6 = 0xF0;
18209 : : int reg2 = 0xCC;
18210 : : int reg1 = 0xAA;
18211 : : int reg3 = 0;
18212 : : int reg4 = 0;
18213 : : int reg_mask, tmp1, tmp2;
18214 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18215 : : STRIP_UNARY (operands[4])))
18216 : : {
18217 : : reg4 = reg1;
18218 : : reg3 = reg6;
18219 : : operands[6] = operands[3];
18220 : : }
18221 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18222 : : STRIP_UNARY (operands[4])))
18223 : : {
18224 : : reg4 = reg2;
18225 : : reg3 = reg6;
18226 : : operands[6] = operands[3];
18227 : : }
18228 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18229 : : STRIP_UNARY (operands[3])))
18230 : : {
18231 : : reg4 = reg6;
18232 : : reg3 = reg1;
18233 : : operands[6] = operands[4];
18234 : : }
18235 : : else
18236 : : {
18237 : : reg4 = reg6;
18238 : : reg3 = reg2;
18239 : : operands[6] = operands[4];
18240 : : }
18241 : :
18242 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18243 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18244 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18245 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18246 : :
18247 : : tmp1 = reg1 & reg2;
18248 : : tmp2 = reg3 & reg4;
18249 : : reg_mask = tmp1 | tmp2;
18250 : : reg_mask &= 0xFF;
18251 : :
18252 : : operands[1] = STRIP_UNARY (operands[1]);
18253 : : operands[2] = STRIP_UNARY (operands[2]);
18254 : : operands[6] = STRIP_UNARY (operands[6]);
18255 : : if (!register_operand (operands[2], V16QImode))
18256 : : operands[2] = force_reg (V16QImode, operands[2]);
18257 : : if (!register_operand (operands[6], V16QImode))
18258 : : operands[6] = force_reg (V16QImode, operands[6]);
18259 : : operands[5] = GEN_INT (reg_mask);
18260 : : }
18261 : : #undef DONE
18262 : : #undef FAIL
18263 : : static const uint8_t expand_encoding[] = {
18264 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18265 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18266 : : 0x25
18267 : : };
18268 : : return complete_seq (expand_encoding, operands);
18269 : : }
18270 : :
18271 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18272 : : extern rtx_insn *gen_split_1806 (rtx_insn *, rtx *);
18273 : : rtx_insn *
18274 : : gen_split_1806 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18275 : : {
18276 : : if (dump_file)
18277 : : fprintf (dump_file, "Splitting with gen_split_1806 (sse.md:14088)\n");
18278 : : start_sequence ();
18279 : : #define FAIL return (end_sequence (), nullptr)
18280 : : #define DONE return end_sequence ()
18281 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18282 : : {
18283 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18284 : : int reg6 = 0xF0;
18285 : : int reg2 = 0xCC;
18286 : : int reg1 = 0xAA;
18287 : : int reg3 = 0;
18288 : : int reg4 = 0;
18289 : : int reg_mask, tmp1, tmp2;
18290 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18291 : : STRIP_UNARY (operands[4])))
18292 : : {
18293 : : reg4 = reg1;
18294 : : reg3 = reg6;
18295 : : operands[6] = operands[3];
18296 : : }
18297 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18298 : : STRIP_UNARY (operands[4])))
18299 : : {
18300 : : reg4 = reg2;
18301 : : reg3 = reg6;
18302 : : operands[6] = operands[3];
18303 : : }
18304 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18305 : : STRIP_UNARY (operands[3])))
18306 : : {
18307 : : reg4 = reg6;
18308 : : reg3 = reg1;
18309 : : operands[6] = operands[4];
18310 : : }
18311 : : else
18312 : : {
18313 : : reg4 = reg6;
18314 : : reg3 = reg2;
18315 : : operands[6] = operands[4];
18316 : : }
18317 : :
18318 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18319 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18320 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18321 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18322 : :
18323 : : tmp1 = reg1 | reg2;
18324 : : tmp2 = reg3 & reg4;
18325 : : reg_mask = tmp1 ^ tmp2;
18326 : : reg_mask &= 0xFF;
18327 : :
18328 : : operands[1] = STRIP_UNARY (operands[1]);
18329 : : operands[2] = STRIP_UNARY (operands[2]);
18330 : : operands[6] = STRIP_UNARY (operands[6]);
18331 : : if (!register_operand (operands[2], V16QImode))
18332 : : operands[2] = force_reg (V16QImode, operands[2]);
18333 : : if (!register_operand (operands[6], V16QImode))
18334 : : operands[6] = force_reg (V16QImode, operands[6]);
18335 : : operands[5] = GEN_INT (reg_mask);
18336 : : }
18337 : : #undef DONE
18338 : : #undef FAIL
18339 : : static const uint8_t expand_encoding[] = {
18340 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18341 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18342 : : 0x25
18343 : : };
18344 : : return complete_seq (expand_encoding, operands);
18345 : : }
18346 : :
18347 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18348 : : extern rtx_insn *gen_split_1816 (rtx_insn *, rtx *);
18349 : : rtx_insn *
18350 : : gen_split_1816 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18351 : : {
18352 : : if (dump_file)
18353 : : fprintf (dump_file, "Splitting with gen_split_1816 (sse.md:14088)\n");
18354 : : start_sequence ();
18355 : : #define FAIL return (end_sequence (), nullptr)
18356 : : #define DONE return end_sequence ()
18357 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18358 : : {
18359 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18360 : : int reg6 = 0xF0;
18361 : : int reg2 = 0xCC;
18362 : : int reg1 = 0xAA;
18363 : : int reg3 = 0;
18364 : : int reg4 = 0;
18365 : : int reg_mask, tmp1, tmp2;
18366 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18367 : : STRIP_UNARY (operands[4])))
18368 : : {
18369 : : reg4 = reg1;
18370 : : reg3 = reg6;
18371 : : operands[6] = operands[3];
18372 : : }
18373 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18374 : : STRIP_UNARY (operands[4])))
18375 : : {
18376 : : reg4 = reg2;
18377 : : reg3 = reg6;
18378 : : operands[6] = operands[3];
18379 : : }
18380 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18381 : : STRIP_UNARY (operands[3])))
18382 : : {
18383 : : reg4 = reg6;
18384 : : reg3 = reg1;
18385 : : operands[6] = operands[4];
18386 : : }
18387 : : else
18388 : : {
18389 : : reg4 = reg6;
18390 : : reg3 = reg2;
18391 : : operands[6] = operands[4];
18392 : : }
18393 : :
18394 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18395 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18396 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18397 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18398 : :
18399 : : tmp1 = reg1 ^ reg2;
18400 : : tmp2 = reg3 | reg4;
18401 : : reg_mask = tmp1 & tmp2;
18402 : : reg_mask &= 0xFF;
18403 : :
18404 : : operands[1] = STRIP_UNARY (operands[1]);
18405 : : operands[2] = STRIP_UNARY (operands[2]);
18406 : : operands[6] = STRIP_UNARY (operands[6]);
18407 : : if (!register_operand (operands[2], V16QImode))
18408 : : operands[2] = force_reg (V16QImode, operands[2]);
18409 : : if (!register_operand (operands[6], V16QImode))
18410 : : operands[6] = force_reg (V16QImode, operands[6]);
18411 : : operands[5] = GEN_INT (reg_mask);
18412 : : }
18413 : : #undef DONE
18414 : : #undef FAIL
18415 : : static const uint8_t expand_encoding[] = {
18416 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18417 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18418 : : 0x25
18419 : : };
18420 : : return complete_seq (expand_encoding, operands);
18421 : : }
18422 : :
18423 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18424 : : extern rtx_insn *gen_split_1826 (rtx_insn *, rtx *);
18425 : : rtx_insn *
18426 : : gen_split_1826 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18427 : : {
18428 : : if (dump_file)
18429 : : fprintf (dump_file, "Splitting with gen_split_1826 (sse.md:14088)\n");
18430 : : start_sequence ();
18431 : : #define FAIL return (end_sequence (), nullptr)
18432 : : #define DONE return end_sequence ()
18433 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18434 : : {
18435 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18436 : : int reg6 = 0xF0;
18437 : : int reg2 = 0xCC;
18438 : : int reg1 = 0xAA;
18439 : : int reg3 = 0;
18440 : : int reg4 = 0;
18441 : : int reg_mask, tmp1, tmp2;
18442 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18443 : : STRIP_UNARY (operands[4])))
18444 : : {
18445 : : reg4 = reg1;
18446 : : reg3 = reg6;
18447 : : operands[6] = operands[3];
18448 : : }
18449 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18450 : : STRIP_UNARY (operands[4])))
18451 : : {
18452 : : reg4 = reg2;
18453 : : reg3 = reg6;
18454 : : operands[6] = operands[3];
18455 : : }
18456 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18457 : : STRIP_UNARY (operands[3])))
18458 : : {
18459 : : reg4 = reg6;
18460 : : reg3 = reg1;
18461 : : operands[6] = operands[4];
18462 : : }
18463 : : else
18464 : : {
18465 : : reg4 = reg6;
18466 : : reg3 = reg2;
18467 : : operands[6] = operands[4];
18468 : : }
18469 : :
18470 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18471 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18472 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18473 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18474 : :
18475 : : tmp1 = reg1 & reg2;
18476 : : tmp2 = reg3 | reg4;
18477 : : reg_mask = tmp1 | tmp2;
18478 : : reg_mask &= 0xFF;
18479 : :
18480 : : operands[1] = STRIP_UNARY (operands[1]);
18481 : : operands[2] = STRIP_UNARY (operands[2]);
18482 : : operands[6] = STRIP_UNARY (operands[6]);
18483 : : if (!register_operand (operands[2], V32HImode))
18484 : : operands[2] = force_reg (V32HImode, operands[2]);
18485 : : if (!register_operand (operands[6], V32HImode))
18486 : : operands[6] = force_reg (V32HImode, operands[6]);
18487 : : operands[5] = GEN_INT (reg_mask);
18488 : : }
18489 : : #undef DONE
18490 : : #undef FAIL
18491 : : static const uint8_t expand_encoding[] = {
18492 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18493 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18494 : : 0x25
18495 : : };
18496 : : return complete_seq (expand_encoding, operands);
18497 : : }
18498 : :
18499 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18500 : : extern rtx_insn *gen_split_1836 (rtx_insn *, rtx *);
18501 : : rtx_insn *
18502 : : gen_split_1836 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18503 : : {
18504 : : if (dump_file)
18505 : : fprintf (dump_file, "Splitting with gen_split_1836 (sse.md:14088)\n");
18506 : : start_sequence ();
18507 : : #define FAIL return (end_sequence (), nullptr)
18508 : : #define DONE return end_sequence ()
18509 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18510 : : {
18511 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18512 : : int reg6 = 0xF0;
18513 : : int reg2 = 0xCC;
18514 : : int reg1 = 0xAA;
18515 : : int reg3 = 0;
18516 : : int reg4 = 0;
18517 : : int reg_mask, tmp1, tmp2;
18518 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18519 : : STRIP_UNARY (operands[4])))
18520 : : {
18521 : : reg4 = reg1;
18522 : : reg3 = reg6;
18523 : : operands[6] = operands[3];
18524 : : }
18525 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18526 : : STRIP_UNARY (operands[4])))
18527 : : {
18528 : : reg4 = reg2;
18529 : : reg3 = reg6;
18530 : : operands[6] = operands[3];
18531 : : }
18532 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18533 : : STRIP_UNARY (operands[3])))
18534 : : {
18535 : : reg4 = reg6;
18536 : : reg3 = reg1;
18537 : : operands[6] = operands[4];
18538 : : }
18539 : : else
18540 : : {
18541 : : reg4 = reg6;
18542 : : reg3 = reg2;
18543 : : operands[6] = operands[4];
18544 : : }
18545 : :
18546 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18547 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18548 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18549 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18550 : :
18551 : : tmp1 = reg1 | reg2;
18552 : : tmp2 = reg3 | reg4;
18553 : : reg_mask = tmp1 ^ tmp2;
18554 : : reg_mask &= 0xFF;
18555 : :
18556 : : operands[1] = STRIP_UNARY (operands[1]);
18557 : : operands[2] = STRIP_UNARY (operands[2]);
18558 : : operands[6] = STRIP_UNARY (operands[6]);
18559 : : if (!register_operand (operands[2], V32HImode))
18560 : : operands[2] = force_reg (V32HImode, operands[2]);
18561 : : if (!register_operand (operands[6], V32HImode))
18562 : : operands[6] = force_reg (V32HImode, operands[6]);
18563 : : operands[5] = GEN_INT (reg_mask);
18564 : : }
18565 : : #undef DONE
18566 : : #undef FAIL
18567 : : static const uint8_t expand_encoding[] = {
18568 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18569 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18570 : : 0x25
18571 : : };
18572 : : return complete_seq (expand_encoding, operands);
18573 : : }
18574 : :
18575 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18576 : : extern rtx_insn *gen_split_1846 (rtx_insn *, rtx *);
18577 : : rtx_insn *
18578 : : gen_split_1846 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18579 : : {
18580 : : if (dump_file)
18581 : : fprintf (dump_file, "Splitting with gen_split_1846 (sse.md:14088)\n");
18582 : : start_sequence ();
18583 : : #define FAIL return (end_sequence (), nullptr)
18584 : : #define DONE return end_sequence ()
18585 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18586 : : {
18587 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18588 : : int reg6 = 0xF0;
18589 : : int reg2 = 0xCC;
18590 : : int reg1 = 0xAA;
18591 : : int reg3 = 0;
18592 : : int reg4 = 0;
18593 : : int reg_mask, tmp1, tmp2;
18594 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18595 : : STRIP_UNARY (operands[4])))
18596 : : {
18597 : : reg4 = reg1;
18598 : : reg3 = reg6;
18599 : : operands[6] = operands[3];
18600 : : }
18601 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18602 : : STRIP_UNARY (operands[4])))
18603 : : {
18604 : : reg4 = reg2;
18605 : : reg3 = reg6;
18606 : : operands[6] = operands[3];
18607 : : }
18608 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18609 : : STRIP_UNARY (operands[3])))
18610 : : {
18611 : : reg4 = reg6;
18612 : : reg3 = reg1;
18613 : : operands[6] = operands[4];
18614 : : }
18615 : : else
18616 : : {
18617 : : reg4 = reg6;
18618 : : reg3 = reg2;
18619 : : operands[6] = operands[4];
18620 : : }
18621 : :
18622 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18623 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18624 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18625 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18626 : :
18627 : : tmp1 = reg1 ^ reg2;
18628 : : tmp2 = reg3 ^ reg4;
18629 : : reg_mask = tmp1 & tmp2;
18630 : : reg_mask &= 0xFF;
18631 : :
18632 : : operands[1] = STRIP_UNARY (operands[1]);
18633 : : operands[2] = STRIP_UNARY (operands[2]);
18634 : : operands[6] = STRIP_UNARY (operands[6]);
18635 : : if (!register_operand (operands[2], V32HImode))
18636 : : operands[2] = force_reg (V32HImode, operands[2]);
18637 : : if (!register_operand (operands[6], V32HImode))
18638 : : operands[6] = force_reg (V32HImode, operands[6]);
18639 : : operands[5] = GEN_INT (reg_mask);
18640 : : }
18641 : : #undef DONE
18642 : : #undef FAIL
18643 : : static const uint8_t expand_encoding[] = {
18644 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18645 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18646 : : 0x25
18647 : : };
18648 : : return complete_seq (expand_encoding, operands);
18649 : : }
18650 : :
18651 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18652 : : extern rtx_insn *gen_split_1856 (rtx_insn *, rtx *);
18653 : : rtx_insn *
18654 : : gen_split_1856 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18655 : : {
18656 : : if (dump_file)
18657 : : fprintf (dump_file, "Splitting with gen_split_1856 (sse.md:14088)\n");
18658 : : start_sequence ();
18659 : : #define FAIL return (end_sequence (), nullptr)
18660 : : #define DONE return end_sequence ()
18661 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18662 : : {
18663 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18664 : : int reg6 = 0xF0;
18665 : : int reg2 = 0xCC;
18666 : : int reg1 = 0xAA;
18667 : : int reg3 = 0;
18668 : : int reg4 = 0;
18669 : : int reg_mask, tmp1, tmp2;
18670 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18671 : : STRIP_UNARY (operands[4])))
18672 : : {
18673 : : reg4 = reg1;
18674 : : reg3 = reg6;
18675 : : operands[6] = operands[3];
18676 : : }
18677 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18678 : : STRIP_UNARY (operands[4])))
18679 : : {
18680 : : reg4 = reg2;
18681 : : reg3 = reg6;
18682 : : operands[6] = operands[3];
18683 : : }
18684 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18685 : : STRIP_UNARY (operands[3])))
18686 : : {
18687 : : reg4 = reg6;
18688 : : reg3 = reg1;
18689 : : operands[6] = operands[4];
18690 : : }
18691 : : else
18692 : : {
18693 : : reg4 = reg6;
18694 : : reg3 = reg2;
18695 : : operands[6] = operands[4];
18696 : : }
18697 : :
18698 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18699 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18700 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18701 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18702 : :
18703 : : tmp1 = reg1 & reg2;
18704 : : tmp2 = reg3 ^ reg4;
18705 : : reg_mask = tmp1 | tmp2;
18706 : : reg_mask &= 0xFF;
18707 : :
18708 : : operands[1] = STRIP_UNARY (operands[1]);
18709 : : operands[2] = STRIP_UNARY (operands[2]);
18710 : : operands[6] = STRIP_UNARY (operands[6]);
18711 : : if (!register_operand (operands[2], V16HImode))
18712 : : operands[2] = force_reg (V16HImode, operands[2]);
18713 : : if (!register_operand (operands[6], V16HImode))
18714 : : operands[6] = force_reg (V16HImode, operands[6]);
18715 : : operands[5] = GEN_INT (reg_mask);
18716 : : }
18717 : : #undef DONE
18718 : : #undef FAIL
18719 : : static const uint8_t expand_encoding[] = {
18720 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18721 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18722 : : 0x25
18723 : : };
18724 : : return complete_seq (expand_encoding, operands);
18725 : : }
18726 : :
18727 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18728 : : extern rtx_insn *gen_split_1866 (rtx_insn *, rtx *);
18729 : : rtx_insn *
18730 : : gen_split_1866 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18731 : : {
18732 : : if (dump_file)
18733 : : fprintf (dump_file, "Splitting with gen_split_1866 (sse.md:14088)\n");
18734 : : start_sequence ();
18735 : : #define FAIL return (end_sequence (), nullptr)
18736 : : #define DONE return end_sequence ()
18737 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18738 : : {
18739 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18740 : : int reg6 = 0xF0;
18741 : : int reg2 = 0xCC;
18742 : : int reg1 = 0xAA;
18743 : : int reg3 = 0;
18744 : : int reg4 = 0;
18745 : : int reg_mask, tmp1, tmp2;
18746 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18747 : : STRIP_UNARY (operands[4])))
18748 : : {
18749 : : reg4 = reg1;
18750 : : reg3 = reg6;
18751 : : operands[6] = operands[3];
18752 : : }
18753 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18754 : : STRIP_UNARY (operands[4])))
18755 : : {
18756 : : reg4 = reg2;
18757 : : reg3 = reg6;
18758 : : operands[6] = operands[3];
18759 : : }
18760 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18761 : : STRIP_UNARY (operands[3])))
18762 : : {
18763 : : reg4 = reg6;
18764 : : reg3 = reg1;
18765 : : operands[6] = operands[4];
18766 : : }
18767 : : else
18768 : : {
18769 : : reg4 = reg6;
18770 : : reg3 = reg2;
18771 : : operands[6] = operands[4];
18772 : : }
18773 : :
18774 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18775 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18776 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18777 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18778 : :
18779 : : tmp1 = reg1 | reg2;
18780 : : tmp2 = reg3 ^ reg4;
18781 : : reg_mask = tmp1 ^ tmp2;
18782 : : reg_mask &= 0xFF;
18783 : :
18784 : : operands[1] = STRIP_UNARY (operands[1]);
18785 : : operands[2] = STRIP_UNARY (operands[2]);
18786 : : operands[6] = STRIP_UNARY (operands[6]);
18787 : : if (!register_operand (operands[2], V16HImode))
18788 : : operands[2] = force_reg (V16HImode, operands[2]);
18789 : : if (!register_operand (operands[6], V16HImode))
18790 : : operands[6] = force_reg (V16HImode, operands[6]);
18791 : : operands[5] = GEN_INT (reg_mask);
18792 : : }
18793 : : #undef DONE
18794 : : #undef FAIL
18795 : : static const uint8_t expand_encoding[] = {
18796 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18797 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18798 : : 0x25
18799 : : };
18800 : : return complete_seq (expand_encoding, operands);
18801 : : }
18802 : :
18803 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18804 : : extern rtx_insn *gen_split_1876 (rtx_insn *, rtx *);
18805 : : rtx_insn *
18806 : : gen_split_1876 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18807 : : {
18808 : : if (dump_file)
18809 : : fprintf (dump_file, "Splitting with gen_split_1876 (sse.md:14088)\n");
18810 : : start_sequence ();
18811 : : #define FAIL return (end_sequence (), nullptr)
18812 : : #define DONE return end_sequence ()
18813 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18814 : : {
18815 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18816 : : int reg6 = 0xF0;
18817 : : int reg2 = 0xCC;
18818 : : int reg1 = 0xAA;
18819 : : int reg3 = 0;
18820 : : int reg4 = 0;
18821 : : int reg_mask, tmp1, tmp2;
18822 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18823 : : STRIP_UNARY (operands[4])))
18824 : : {
18825 : : reg4 = reg1;
18826 : : reg3 = reg6;
18827 : : operands[6] = operands[3];
18828 : : }
18829 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18830 : : STRIP_UNARY (operands[4])))
18831 : : {
18832 : : reg4 = reg2;
18833 : : reg3 = reg6;
18834 : : operands[6] = operands[3];
18835 : : }
18836 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18837 : : STRIP_UNARY (operands[3])))
18838 : : {
18839 : : reg4 = reg6;
18840 : : reg3 = reg1;
18841 : : operands[6] = operands[4];
18842 : : }
18843 : : else
18844 : : {
18845 : : reg4 = reg6;
18846 : : reg3 = reg2;
18847 : : operands[6] = operands[4];
18848 : : }
18849 : :
18850 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18851 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18852 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18853 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18854 : :
18855 : : tmp1 = reg1 & reg2;
18856 : : tmp2 = reg3 & reg4;
18857 : : reg_mask = tmp1 & tmp2;
18858 : : reg_mask &= 0xFF;
18859 : :
18860 : : operands[1] = STRIP_UNARY (operands[1]);
18861 : : operands[2] = STRIP_UNARY (operands[2]);
18862 : : operands[6] = STRIP_UNARY (operands[6]);
18863 : : if (!register_operand (operands[2], V8HImode))
18864 : : operands[2] = force_reg (V8HImode, operands[2]);
18865 : : if (!register_operand (operands[6], V8HImode))
18866 : : operands[6] = force_reg (V8HImode, operands[6]);
18867 : : operands[5] = GEN_INT (reg_mask);
18868 : : }
18869 : : #undef DONE
18870 : : #undef FAIL
18871 : : static const uint8_t expand_encoding[] = {
18872 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18873 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18874 : : 0x25
18875 : : };
18876 : : return complete_seq (expand_encoding, operands);
18877 : : }
18878 : :
18879 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18880 : : extern rtx_insn *gen_split_1886 (rtx_insn *, rtx *);
18881 : : rtx_insn *
18882 : : gen_split_1886 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18883 : : {
18884 : : if (dump_file)
18885 : : fprintf (dump_file, "Splitting with gen_split_1886 (sse.md:14088)\n");
18886 : : start_sequence ();
18887 : : #define FAIL return (end_sequence (), nullptr)
18888 : : #define DONE return end_sequence ()
18889 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18890 : : {
18891 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18892 : : int reg6 = 0xF0;
18893 : : int reg2 = 0xCC;
18894 : : int reg1 = 0xAA;
18895 : : int reg3 = 0;
18896 : : int reg4 = 0;
18897 : : int reg_mask, tmp1, tmp2;
18898 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18899 : : STRIP_UNARY (operands[4])))
18900 : : {
18901 : : reg4 = reg1;
18902 : : reg3 = reg6;
18903 : : operands[6] = operands[3];
18904 : : }
18905 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18906 : : STRIP_UNARY (operands[4])))
18907 : : {
18908 : : reg4 = reg2;
18909 : : reg3 = reg6;
18910 : : operands[6] = operands[3];
18911 : : }
18912 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18913 : : STRIP_UNARY (operands[3])))
18914 : : {
18915 : : reg4 = reg6;
18916 : : reg3 = reg1;
18917 : : operands[6] = operands[4];
18918 : : }
18919 : : else
18920 : : {
18921 : : reg4 = reg6;
18922 : : reg3 = reg2;
18923 : : operands[6] = operands[4];
18924 : : }
18925 : :
18926 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18927 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18928 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18929 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18930 : :
18931 : : tmp1 = reg1 | reg2;
18932 : : tmp2 = reg3 & reg4;
18933 : : reg_mask = tmp1 | tmp2;
18934 : : reg_mask &= 0xFF;
18935 : :
18936 : : operands[1] = STRIP_UNARY (operands[1]);
18937 : : operands[2] = STRIP_UNARY (operands[2]);
18938 : : operands[6] = STRIP_UNARY (operands[6]);
18939 : : if (!register_operand (operands[2], V8HImode))
18940 : : operands[2] = force_reg (V8HImode, operands[2]);
18941 : : if (!register_operand (operands[6], V8HImode))
18942 : : operands[6] = force_reg (V8HImode, operands[6]);
18943 : : operands[5] = GEN_INT (reg_mask);
18944 : : }
18945 : : #undef DONE
18946 : : #undef FAIL
18947 : : static const uint8_t expand_encoding[] = {
18948 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18949 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18950 : : 0x25
18951 : : };
18952 : : return complete_seq (expand_encoding, operands);
18953 : : }
18954 : :
18955 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
18956 : : extern rtx_insn *gen_split_1896 (rtx_insn *, rtx *);
18957 : : rtx_insn *
18958 : : gen_split_1896 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18959 : : {
18960 : : if (dump_file)
18961 : : fprintf (dump_file, "Splitting with gen_split_1896 (sse.md:14088)\n");
18962 : : start_sequence ();
18963 : : #define FAIL return (end_sequence (), nullptr)
18964 : : #define DONE return end_sequence ()
18965 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18966 : : {
18967 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18968 : : int reg6 = 0xF0;
18969 : : int reg2 = 0xCC;
18970 : : int reg1 = 0xAA;
18971 : : int reg3 = 0;
18972 : : int reg4 = 0;
18973 : : int reg_mask, tmp1, tmp2;
18974 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18975 : : STRIP_UNARY (operands[4])))
18976 : : {
18977 : : reg4 = reg1;
18978 : : reg3 = reg6;
18979 : : operands[6] = operands[3];
18980 : : }
18981 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18982 : : STRIP_UNARY (operands[4])))
18983 : : {
18984 : : reg4 = reg2;
18985 : : reg3 = reg6;
18986 : : operands[6] = operands[3];
18987 : : }
18988 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18989 : : STRIP_UNARY (operands[3])))
18990 : : {
18991 : : reg4 = reg6;
18992 : : reg3 = reg1;
18993 : : operands[6] = operands[4];
18994 : : }
18995 : : else
18996 : : {
18997 : : reg4 = reg6;
18998 : : reg3 = reg2;
18999 : : operands[6] = operands[4];
19000 : : }
19001 : :
19002 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19003 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19004 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19005 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19006 : :
19007 : : tmp1 = reg1 ^ reg2;
19008 : : tmp2 = reg3 & reg4;
19009 : : reg_mask = tmp1 ^ tmp2;
19010 : : reg_mask &= 0xFF;
19011 : :
19012 : : operands[1] = STRIP_UNARY (operands[1]);
19013 : : operands[2] = STRIP_UNARY (operands[2]);
19014 : : operands[6] = STRIP_UNARY (operands[6]);
19015 : : if (!register_operand (operands[2], V8HImode))
19016 : : operands[2] = force_reg (V8HImode, operands[2]);
19017 : : if (!register_operand (operands[6], V8HImode))
19018 : : operands[6] = force_reg (V8HImode, operands[6]);
19019 : : operands[5] = GEN_INT (reg_mask);
19020 : : }
19021 : : #undef DONE
19022 : : #undef FAIL
19023 : : static const uint8_t expand_encoding[] = {
19024 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
19025 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19026 : : 0x25
19027 : : };
19028 : : return complete_seq (expand_encoding, operands);
19029 : : }
19030 : :
19031 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19032 : : extern rtx_insn *gen_split_1906 (rtx_insn *, rtx *);
19033 : : rtx_insn *
19034 : : gen_split_1906 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19035 : : {
19036 : : if (dump_file)
19037 : : fprintf (dump_file, "Splitting with gen_split_1906 (sse.md:14088)\n");
19038 : : start_sequence ();
19039 : : #define FAIL return (end_sequence (), nullptr)
19040 : : #define DONE return end_sequence ()
19041 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19042 : : {
19043 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19044 : : int reg6 = 0xF0;
19045 : : int reg2 = 0xCC;
19046 : : int reg1 = 0xAA;
19047 : : int reg3 = 0;
19048 : : int reg4 = 0;
19049 : : int reg_mask, tmp1, tmp2;
19050 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19051 : : STRIP_UNARY (operands[4])))
19052 : : {
19053 : : reg4 = reg1;
19054 : : reg3 = reg6;
19055 : : operands[6] = operands[3];
19056 : : }
19057 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19058 : : STRIP_UNARY (operands[4])))
19059 : : {
19060 : : reg4 = reg2;
19061 : : reg3 = reg6;
19062 : : operands[6] = operands[3];
19063 : : }
19064 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19065 : : STRIP_UNARY (operands[3])))
19066 : : {
19067 : : reg4 = reg6;
19068 : : reg3 = reg1;
19069 : : operands[6] = operands[4];
19070 : : }
19071 : : else
19072 : : {
19073 : : reg4 = reg6;
19074 : : reg3 = reg2;
19075 : : operands[6] = operands[4];
19076 : : }
19077 : :
19078 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19079 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19080 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19081 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19082 : :
19083 : : tmp1 = reg1 & reg2;
19084 : : tmp2 = reg3 | reg4;
19085 : : reg_mask = tmp1 & tmp2;
19086 : : reg_mask &= 0xFF;
19087 : :
19088 : : operands[1] = STRIP_UNARY (operands[1]);
19089 : : operands[2] = STRIP_UNARY (operands[2]);
19090 : : operands[6] = STRIP_UNARY (operands[6]);
19091 : : if (!register_operand (operands[2], V16SImode))
19092 : : operands[2] = force_reg (V16SImode, operands[2]);
19093 : : if (!register_operand (operands[6], V16SImode))
19094 : : operands[6] = force_reg (V16SImode, operands[6]);
19095 : : operands[5] = GEN_INT (reg_mask);
19096 : : }
19097 : : #undef DONE
19098 : : #undef FAIL
19099 : : static const uint8_t expand_encoding[] = {
19100 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19101 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19102 : : 0x25
19103 : : };
19104 : : return complete_seq (expand_encoding, operands);
19105 : : }
19106 : :
19107 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19108 : : extern rtx_insn *gen_split_1916 (rtx_insn *, rtx *);
19109 : : rtx_insn *
19110 : : gen_split_1916 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19111 : : {
19112 : : if (dump_file)
19113 : : fprintf (dump_file, "Splitting with gen_split_1916 (sse.md:14088)\n");
19114 : : start_sequence ();
19115 : : #define FAIL return (end_sequence (), nullptr)
19116 : : #define DONE return end_sequence ()
19117 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19118 : : {
19119 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19120 : : int reg6 = 0xF0;
19121 : : int reg2 = 0xCC;
19122 : : int reg1 = 0xAA;
19123 : : int reg3 = 0;
19124 : : int reg4 = 0;
19125 : : int reg_mask, tmp1, tmp2;
19126 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19127 : : STRIP_UNARY (operands[4])))
19128 : : {
19129 : : reg4 = reg1;
19130 : : reg3 = reg6;
19131 : : operands[6] = operands[3];
19132 : : }
19133 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19134 : : STRIP_UNARY (operands[4])))
19135 : : {
19136 : : reg4 = reg2;
19137 : : reg3 = reg6;
19138 : : operands[6] = operands[3];
19139 : : }
19140 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19141 : : STRIP_UNARY (operands[3])))
19142 : : {
19143 : : reg4 = reg6;
19144 : : reg3 = reg1;
19145 : : operands[6] = operands[4];
19146 : : }
19147 : : else
19148 : : {
19149 : : reg4 = reg6;
19150 : : reg3 = reg2;
19151 : : operands[6] = operands[4];
19152 : : }
19153 : :
19154 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19155 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19156 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19157 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19158 : :
19159 : : tmp1 = reg1 | reg2;
19160 : : tmp2 = reg3 | reg4;
19161 : : reg_mask = tmp1 | tmp2;
19162 : : reg_mask &= 0xFF;
19163 : :
19164 : : operands[1] = STRIP_UNARY (operands[1]);
19165 : : operands[2] = STRIP_UNARY (operands[2]);
19166 : : operands[6] = STRIP_UNARY (operands[6]);
19167 : : if (!register_operand (operands[2], V16SImode))
19168 : : operands[2] = force_reg (V16SImode, operands[2]);
19169 : : if (!register_operand (operands[6], V16SImode))
19170 : : operands[6] = force_reg (V16SImode, operands[6]);
19171 : : operands[5] = GEN_INT (reg_mask);
19172 : : }
19173 : : #undef DONE
19174 : : #undef FAIL
19175 : : static const uint8_t expand_encoding[] = {
19176 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19177 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19178 : : 0x25
19179 : : };
19180 : : return complete_seq (expand_encoding, operands);
19181 : : }
19182 : :
19183 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19184 : : extern rtx_insn *gen_split_1926 (rtx_insn *, rtx *);
19185 : : rtx_insn *
19186 : : gen_split_1926 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19187 : : {
19188 : : if (dump_file)
19189 : : fprintf (dump_file, "Splitting with gen_split_1926 (sse.md:14088)\n");
19190 : : start_sequence ();
19191 : : #define FAIL return (end_sequence (), nullptr)
19192 : : #define DONE return end_sequence ()
19193 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19194 : : {
19195 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19196 : : int reg6 = 0xF0;
19197 : : int reg2 = 0xCC;
19198 : : int reg1 = 0xAA;
19199 : : int reg3 = 0;
19200 : : int reg4 = 0;
19201 : : int reg_mask, tmp1, tmp2;
19202 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19203 : : STRIP_UNARY (operands[4])))
19204 : : {
19205 : : reg4 = reg1;
19206 : : reg3 = reg6;
19207 : : operands[6] = operands[3];
19208 : : }
19209 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19210 : : STRIP_UNARY (operands[4])))
19211 : : {
19212 : : reg4 = reg2;
19213 : : reg3 = reg6;
19214 : : operands[6] = operands[3];
19215 : : }
19216 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19217 : : STRIP_UNARY (operands[3])))
19218 : : {
19219 : : reg4 = reg6;
19220 : : reg3 = reg1;
19221 : : operands[6] = operands[4];
19222 : : }
19223 : : else
19224 : : {
19225 : : reg4 = reg6;
19226 : : reg3 = reg2;
19227 : : operands[6] = operands[4];
19228 : : }
19229 : :
19230 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19231 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19232 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19233 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19234 : :
19235 : : tmp1 = reg1 ^ reg2;
19236 : : tmp2 = reg3 | reg4;
19237 : : reg_mask = tmp1 ^ tmp2;
19238 : : reg_mask &= 0xFF;
19239 : :
19240 : : operands[1] = STRIP_UNARY (operands[1]);
19241 : : operands[2] = STRIP_UNARY (operands[2]);
19242 : : operands[6] = STRIP_UNARY (operands[6]);
19243 : : if (!register_operand (operands[2], V16SImode))
19244 : : operands[2] = force_reg (V16SImode, operands[2]);
19245 : : if (!register_operand (operands[6], V16SImode))
19246 : : operands[6] = force_reg (V16SImode, operands[6]);
19247 : : operands[5] = GEN_INT (reg_mask);
19248 : : }
19249 : : #undef DONE
19250 : : #undef FAIL
19251 : : static const uint8_t expand_encoding[] = {
19252 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19253 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19254 : : 0x25
19255 : : };
19256 : : return complete_seq (expand_encoding, operands);
19257 : : }
19258 : :
19259 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19260 : : extern rtx_insn *gen_split_1936 (rtx_insn *, rtx *);
19261 : : rtx_insn *
19262 : : gen_split_1936 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19263 : : {
19264 : : if (dump_file)
19265 : : fprintf (dump_file, "Splitting with gen_split_1936 (sse.md:14088)\n");
19266 : : start_sequence ();
19267 : : #define FAIL return (end_sequence (), nullptr)
19268 : : #define DONE return end_sequence ()
19269 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19270 : : {
19271 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19272 : : int reg6 = 0xF0;
19273 : : int reg2 = 0xCC;
19274 : : int reg1 = 0xAA;
19275 : : int reg3 = 0;
19276 : : int reg4 = 0;
19277 : : int reg_mask, tmp1, tmp2;
19278 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19279 : : STRIP_UNARY (operands[4])))
19280 : : {
19281 : : reg4 = reg1;
19282 : : reg3 = reg6;
19283 : : operands[6] = operands[3];
19284 : : }
19285 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19286 : : STRIP_UNARY (operands[4])))
19287 : : {
19288 : : reg4 = reg2;
19289 : : reg3 = reg6;
19290 : : operands[6] = operands[3];
19291 : : }
19292 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19293 : : STRIP_UNARY (operands[3])))
19294 : : {
19295 : : reg4 = reg6;
19296 : : reg3 = reg1;
19297 : : operands[6] = operands[4];
19298 : : }
19299 : : else
19300 : : {
19301 : : reg4 = reg6;
19302 : : reg3 = reg2;
19303 : : operands[6] = operands[4];
19304 : : }
19305 : :
19306 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19307 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19308 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19309 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19310 : :
19311 : : tmp1 = reg1 & reg2;
19312 : : tmp2 = reg3 ^ reg4;
19313 : : reg_mask = tmp1 & tmp2;
19314 : : reg_mask &= 0xFF;
19315 : :
19316 : : operands[1] = STRIP_UNARY (operands[1]);
19317 : : operands[2] = STRIP_UNARY (operands[2]);
19318 : : operands[6] = STRIP_UNARY (operands[6]);
19319 : : if (!register_operand (operands[2], V8SImode))
19320 : : operands[2] = force_reg (V8SImode, operands[2]);
19321 : : if (!register_operand (operands[6], V8SImode))
19322 : : operands[6] = force_reg (V8SImode, operands[6]);
19323 : : operands[5] = GEN_INT (reg_mask);
19324 : : }
19325 : : #undef DONE
19326 : : #undef FAIL
19327 : : static const uint8_t expand_encoding[] = {
19328 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19329 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19330 : : 0x25
19331 : : };
19332 : : return complete_seq (expand_encoding, operands);
19333 : : }
19334 : :
19335 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19336 : : extern rtx_insn *gen_split_1946 (rtx_insn *, rtx *);
19337 : : rtx_insn *
19338 : : gen_split_1946 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19339 : : {
19340 : : if (dump_file)
19341 : : fprintf (dump_file, "Splitting with gen_split_1946 (sse.md:14088)\n");
19342 : : start_sequence ();
19343 : : #define FAIL return (end_sequence (), nullptr)
19344 : : #define DONE return end_sequence ()
19345 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19346 : : {
19347 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19348 : : int reg6 = 0xF0;
19349 : : int reg2 = 0xCC;
19350 : : int reg1 = 0xAA;
19351 : : int reg3 = 0;
19352 : : int reg4 = 0;
19353 : : int reg_mask, tmp1, tmp2;
19354 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19355 : : STRIP_UNARY (operands[4])))
19356 : : {
19357 : : reg4 = reg1;
19358 : : reg3 = reg6;
19359 : : operands[6] = operands[3];
19360 : : }
19361 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19362 : : STRIP_UNARY (operands[4])))
19363 : : {
19364 : : reg4 = reg2;
19365 : : reg3 = reg6;
19366 : : operands[6] = operands[3];
19367 : : }
19368 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19369 : : STRIP_UNARY (operands[3])))
19370 : : {
19371 : : reg4 = reg6;
19372 : : reg3 = reg1;
19373 : : operands[6] = operands[4];
19374 : : }
19375 : : else
19376 : : {
19377 : : reg4 = reg6;
19378 : : reg3 = reg2;
19379 : : operands[6] = operands[4];
19380 : : }
19381 : :
19382 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19383 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19384 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19385 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19386 : :
19387 : : tmp1 = reg1 | reg2;
19388 : : tmp2 = reg3 ^ reg4;
19389 : : reg_mask = tmp1 | tmp2;
19390 : : reg_mask &= 0xFF;
19391 : :
19392 : : operands[1] = STRIP_UNARY (operands[1]);
19393 : : operands[2] = STRIP_UNARY (operands[2]);
19394 : : operands[6] = STRIP_UNARY (operands[6]);
19395 : : if (!register_operand (operands[2], V8SImode))
19396 : : operands[2] = force_reg (V8SImode, operands[2]);
19397 : : if (!register_operand (operands[6], V8SImode))
19398 : : operands[6] = force_reg (V8SImode, operands[6]);
19399 : : operands[5] = GEN_INT (reg_mask);
19400 : : }
19401 : : #undef DONE
19402 : : #undef FAIL
19403 : : static const uint8_t expand_encoding[] = {
19404 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19405 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19406 : : 0x25
19407 : : };
19408 : : return complete_seq (expand_encoding, operands);
19409 : : }
19410 : :
19411 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19412 : : extern rtx_insn *gen_split_1956 (rtx_insn *, rtx *);
19413 : : rtx_insn *
19414 : : gen_split_1956 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19415 : : {
19416 : : if (dump_file)
19417 : : fprintf (dump_file, "Splitting with gen_split_1956 (sse.md:14088)\n");
19418 : : start_sequence ();
19419 : : #define FAIL return (end_sequence (), nullptr)
19420 : : #define DONE return end_sequence ()
19421 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19422 : : {
19423 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19424 : : int reg6 = 0xF0;
19425 : : int reg2 = 0xCC;
19426 : : int reg1 = 0xAA;
19427 : : int reg3 = 0;
19428 : : int reg4 = 0;
19429 : : int reg_mask, tmp1, tmp2;
19430 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19431 : : STRIP_UNARY (operands[4])))
19432 : : {
19433 : : reg4 = reg1;
19434 : : reg3 = reg6;
19435 : : operands[6] = operands[3];
19436 : : }
19437 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19438 : : STRIP_UNARY (operands[4])))
19439 : : {
19440 : : reg4 = reg2;
19441 : : reg3 = reg6;
19442 : : operands[6] = operands[3];
19443 : : }
19444 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19445 : : STRIP_UNARY (operands[3])))
19446 : : {
19447 : : reg4 = reg6;
19448 : : reg3 = reg1;
19449 : : operands[6] = operands[4];
19450 : : }
19451 : : else
19452 : : {
19453 : : reg4 = reg6;
19454 : : reg3 = reg2;
19455 : : operands[6] = operands[4];
19456 : : }
19457 : :
19458 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19459 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19460 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19461 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19462 : :
19463 : : tmp1 = reg1 ^ reg2;
19464 : : tmp2 = reg3 ^ reg4;
19465 : : reg_mask = tmp1 ^ tmp2;
19466 : : reg_mask &= 0xFF;
19467 : :
19468 : : operands[1] = STRIP_UNARY (operands[1]);
19469 : : operands[2] = STRIP_UNARY (operands[2]);
19470 : : operands[6] = STRIP_UNARY (operands[6]);
19471 : : if (!register_operand (operands[2], V8SImode))
19472 : : operands[2] = force_reg (V8SImode, operands[2]);
19473 : : if (!register_operand (operands[6], V8SImode))
19474 : : operands[6] = force_reg (V8SImode, operands[6]);
19475 : : operands[5] = GEN_INT (reg_mask);
19476 : : }
19477 : : #undef DONE
19478 : : #undef FAIL
19479 : : static const uint8_t expand_encoding[] = {
19480 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19481 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19482 : : 0x25
19483 : : };
19484 : : return complete_seq (expand_encoding, operands);
19485 : : }
19486 : :
19487 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19488 : : extern rtx_insn *gen_split_1966 (rtx_insn *, rtx *);
19489 : : rtx_insn *
19490 : : gen_split_1966 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19491 : : {
19492 : : if (dump_file)
19493 : : fprintf (dump_file, "Splitting with gen_split_1966 (sse.md:14088)\n");
19494 : : start_sequence ();
19495 : : #define FAIL return (end_sequence (), nullptr)
19496 : : #define DONE return end_sequence ()
19497 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19498 : : {
19499 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19500 : : int reg6 = 0xF0;
19501 : : int reg2 = 0xCC;
19502 : : int reg1 = 0xAA;
19503 : : int reg3 = 0;
19504 : : int reg4 = 0;
19505 : : int reg_mask, tmp1, tmp2;
19506 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19507 : : STRIP_UNARY (operands[4])))
19508 : : {
19509 : : reg4 = reg1;
19510 : : reg3 = reg6;
19511 : : operands[6] = operands[3];
19512 : : }
19513 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19514 : : STRIP_UNARY (operands[4])))
19515 : : {
19516 : : reg4 = reg2;
19517 : : reg3 = reg6;
19518 : : operands[6] = operands[3];
19519 : : }
19520 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19521 : : STRIP_UNARY (operands[3])))
19522 : : {
19523 : : reg4 = reg6;
19524 : : reg3 = reg1;
19525 : : operands[6] = operands[4];
19526 : : }
19527 : : else
19528 : : {
19529 : : reg4 = reg6;
19530 : : reg3 = reg2;
19531 : : operands[6] = operands[4];
19532 : : }
19533 : :
19534 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19535 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19536 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19537 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19538 : :
19539 : : tmp1 = reg1 | reg2;
19540 : : tmp2 = reg3 & reg4;
19541 : : reg_mask = tmp1 & tmp2;
19542 : : reg_mask &= 0xFF;
19543 : :
19544 : : operands[1] = STRIP_UNARY (operands[1]);
19545 : : operands[2] = STRIP_UNARY (operands[2]);
19546 : : operands[6] = STRIP_UNARY (operands[6]);
19547 : : if (!register_operand (operands[2], V4SImode))
19548 : : operands[2] = force_reg (V4SImode, operands[2]);
19549 : : if (!register_operand (operands[6], V4SImode))
19550 : : operands[6] = force_reg (V4SImode, operands[6]);
19551 : : operands[5] = GEN_INT (reg_mask);
19552 : : }
19553 : : #undef DONE
19554 : : #undef FAIL
19555 : : static const uint8_t expand_encoding[] = {
19556 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19557 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19558 : : 0x25
19559 : : };
19560 : : return complete_seq (expand_encoding, operands);
19561 : : }
19562 : :
19563 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19564 : : extern rtx_insn *gen_split_1976 (rtx_insn *, rtx *);
19565 : : rtx_insn *
19566 : : gen_split_1976 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19567 : : {
19568 : : if (dump_file)
19569 : : fprintf (dump_file, "Splitting with gen_split_1976 (sse.md:14088)\n");
19570 : : start_sequence ();
19571 : : #define FAIL return (end_sequence (), nullptr)
19572 : : #define DONE return end_sequence ()
19573 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19574 : : {
19575 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19576 : : int reg6 = 0xF0;
19577 : : int reg2 = 0xCC;
19578 : : int reg1 = 0xAA;
19579 : : int reg3 = 0;
19580 : : int reg4 = 0;
19581 : : int reg_mask, tmp1, tmp2;
19582 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19583 : : STRIP_UNARY (operands[4])))
19584 : : {
19585 : : reg4 = reg1;
19586 : : reg3 = reg6;
19587 : : operands[6] = operands[3];
19588 : : }
19589 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19590 : : STRIP_UNARY (operands[4])))
19591 : : {
19592 : : reg4 = reg2;
19593 : : reg3 = reg6;
19594 : : operands[6] = operands[3];
19595 : : }
19596 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19597 : : STRIP_UNARY (operands[3])))
19598 : : {
19599 : : reg4 = reg6;
19600 : : reg3 = reg1;
19601 : : operands[6] = operands[4];
19602 : : }
19603 : : else
19604 : : {
19605 : : reg4 = reg6;
19606 : : reg3 = reg2;
19607 : : operands[6] = operands[4];
19608 : : }
19609 : :
19610 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19611 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19612 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19613 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19614 : :
19615 : : tmp1 = reg1 ^ reg2;
19616 : : tmp2 = reg3 & reg4;
19617 : : reg_mask = tmp1 | tmp2;
19618 : : reg_mask &= 0xFF;
19619 : :
19620 : : operands[1] = STRIP_UNARY (operands[1]);
19621 : : operands[2] = STRIP_UNARY (operands[2]);
19622 : : operands[6] = STRIP_UNARY (operands[6]);
19623 : : if (!register_operand (operands[2], V4SImode))
19624 : : operands[2] = force_reg (V4SImode, operands[2]);
19625 : : if (!register_operand (operands[6], V4SImode))
19626 : : operands[6] = force_reg (V4SImode, operands[6]);
19627 : : operands[5] = GEN_INT (reg_mask);
19628 : : }
19629 : : #undef DONE
19630 : : #undef FAIL
19631 : : static const uint8_t expand_encoding[] = {
19632 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19633 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19634 : : 0x25
19635 : : };
19636 : : return complete_seq (expand_encoding, operands);
19637 : : }
19638 : :
19639 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19640 : : extern rtx_insn *gen_split_1986 (rtx_insn *, rtx *);
19641 : : rtx_insn *
19642 : : gen_split_1986 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19643 : : {
19644 : : if (dump_file)
19645 : : fprintf (dump_file, "Splitting with gen_split_1986 (sse.md:14088)\n");
19646 : : start_sequence ();
19647 : : #define FAIL return (end_sequence (), nullptr)
19648 : : #define DONE return end_sequence ()
19649 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19650 : : {
19651 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19652 : : int reg6 = 0xF0;
19653 : : int reg2 = 0xCC;
19654 : : int reg1 = 0xAA;
19655 : : int reg3 = 0;
19656 : : int reg4 = 0;
19657 : : int reg_mask, tmp1, tmp2;
19658 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19659 : : STRIP_UNARY (operands[4])))
19660 : : {
19661 : : reg4 = reg1;
19662 : : reg3 = reg6;
19663 : : operands[6] = operands[3];
19664 : : }
19665 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19666 : : STRIP_UNARY (operands[4])))
19667 : : {
19668 : : reg4 = reg2;
19669 : : reg3 = reg6;
19670 : : operands[6] = operands[3];
19671 : : }
19672 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19673 : : STRIP_UNARY (operands[3])))
19674 : : {
19675 : : reg4 = reg6;
19676 : : reg3 = reg1;
19677 : : operands[6] = operands[4];
19678 : : }
19679 : : else
19680 : : {
19681 : : reg4 = reg6;
19682 : : reg3 = reg2;
19683 : : operands[6] = operands[4];
19684 : : }
19685 : :
19686 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19687 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19688 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19689 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19690 : :
19691 : : tmp1 = reg1 & reg2;
19692 : : tmp2 = reg3 & reg4;
19693 : : reg_mask = tmp1 ^ tmp2;
19694 : : reg_mask &= 0xFF;
19695 : :
19696 : : operands[1] = STRIP_UNARY (operands[1]);
19697 : : operands[2] = STRIP_UNARY (operands[2]);
19698 : : operands[6] = STRIP_UNARY (operands[6]);
19699 : : if (!register_operand (operands[2], V8DImode))
19700 : : operands[2] = force_reg (V8DImode, operands[2]);
19701 : : if (!register_operand (operands[6], V8DImode))
19702 : : operands[6] = force_reg (V8DImode, operands[6]);
19703 : : operands[5] = GEN_INT (reg_mask);
19704 : : }
19705 : : #undef DONE
19706 : : #undef FAIL
19707 : : static const uint8_t expand_encoding[] = {
19708 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19709 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19710 : : 0x25
19711 : : };
19712 : : return complete_seq (expand_encoding, operands);
19713 : : }
19714 : :
19715 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19716 : : extern rtx_insn *gen_split_1996 (rtx_insn *, rtx *);
19717 : : rtx_insn *
19718 : : gen_split_1996 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19719 : : {
19720 : : if (dump_file)
19721 : : fprintf (dump_file, "Splitting with gen_split_1996 (sse.md:14088)\n");
19722 : : start_sequence ();
19723 : : #define FAIL return (end_sequence (), nullptr)
19724 : : #define DONE return end_sequence ()
19725 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19726 : : {
19727 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19728 : : int reg6 = 0xF0;
19729 : : int reg2 = 0xCC;
19730 : : int reg1 = 0xAA;
19731 : : int reg3 = 0;
19732 : : int reg4 = 0;
19733 : : int reg_mask, tmp1, tmp2;
19734 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19735 : : STRIP_UNARY (operands[4])))
19736 : : {
19737 : : reg4 = reg1;
19738 : : reg3 = reg6;
19739 : : operands[6] = operands[3];
19740 : : }
19741 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19742 : : STRIP_UNARY (operands[4])))
19743 : : {
19744 : : reg4 = reg2;
19745 : : reg3 = reg6;
19746 : : operands[6] = operands[3];
19747 : : }
19748 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19749 : : STRIP_UNARY (operands[3])))
19750 : : {
19751 : : reg4 = reg6;
19752 : : reg3 = reg1;
19753 : : operands[6] = operands[4];
19754 : : }
19755 : : else
19756 : : {
19757 : : reg4 = reg6;
19758 : : reg3 = reg2;
19759 : : operands[6] = operands[4];
19760 : : }
19761 : :
19762 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19763 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19764 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19765 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19766 : :
19767 : : tmp1 = reg1 | reg2;
19768 : : tmp2 = reg3 | reg4;
19769 : : reg_mask = tmp1 & tmp2;
19770 : : reg_mask &= 0xFF;
19771 : :
19772 : : operands[1] = STRIP_UNARY (operands[1]);
19773 : : operands[2] = STRIP_UNARY (operands[2]);
19774 : : operands[6] = STRIP_UNARY (operands[6]);
19775 : : if (!register_operand (operands[2], V8DImode))
19776 : : operands[2] = force_reg (V8DImode, operands[2]);
19777 : : if (!register_operand (operands[6], V8DImode))
19778 : : operands[6] = force_reg (V8DImode, operands[6]);
19779 : : operands[5] = GEN_INT (reg_mask);
19780 : : }
19781 : : #undef DONE
19782 : : #undef FAIL
19783 : : static const uint8_t expand_encoding[] = {
19784 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19785 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19786 : : 0x25
19787 : : };
19788 : : return complete_seq (expand_encoding, operands);
19789 : : }
19790 : :
19791 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19792 : : extern rtx_insn *gen_split_2006 (rtx_insn *, rtx *);
19793 : : rtx_insn *
19794 : : gen_split_2006 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19795 : : {
19796 : : if (dump_file)
19797 : : fprintf (dump_file, "Splitting with gen_split_2006 (sse.md:14088)\n");
19798 : : start_sequence ();
19799 : : #define FAIL return (end_sequence (), nullptr)
19800 : : #define DONE return end_sequence ()
19801 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19802 : : {
19803 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19804 : : int reg6 = 0xF0;
19805 : : int reg2 = 0xCC;
19806 : : int reg1 = 0xAA;
19807 : : int reg3 = 0;
19808 : : int reg4 = 0;
19809 : : int reg_mask, tmp1, tmp2;
19810 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19811 : : STRIP_UNARY (operands[4])))
19812 : : {
19813 : : reg4 = reg1;
19814 : : reg3 = reg6;
19815 : : operands[6] = operands[3];
19816 : : }
19817 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19818 : : STRIP_UNARY (operands[4])))
19819 : : {
19820 : : reg4 = reg2;
19821 : : reg3 = reg6;
19822 : : operands[6] = operands[3];
19823 : : }
19824 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19825 : : STRIP_UNARY (operands[3])))
19826 : : {
19827 : : reg4 = reg6;
19828 : : reg3 = reg1;
19829 : : operands[6] = operands[4];
19830 : : }
19831 : : else
19832 : : {
19833 : : reg4 = reg6;
19834 : : reg3 = reg2;
19835 : : operands[6] = operands[4];
19836 : : }
19837 : :
19838 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19839 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19840 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19841 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19842 : :
19843 : : tmp1 = reg1 ^ reg2;
19844 : : tmp2 = reg3 | reg4;
19845 : : reg_mask = tmp1 | tmp2;
19846 : : reg_mask &= 0xFF;
19847 : :
19848 : : operands[1] = STRIP_UNARY (operands[1]);
19849 : : operands[2] = STRIP_UNARY (operands[2]);
19850 : : operands[6] = STRIP_UNARY (operands[6]);
19851 : : if (!register_operand (operands[2], V8DImode))
19852 : : operands[2] = force_reg (V8DImode, operands[2]);
19853 : : if (!register_operand (operands[6], V8DImode))
19854 : : operands[6] = force_reg (V8DImode, operands[6]);
19855 : : operands[5] = GEN_INT (reg_mask);
19856 : : }
19857 : : #undef DONE
19858 : : #undef FAIL
19859 : : static const uint8_t expand_encoding[] = {
19860 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19861 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19862 : : 0x25
19863 : : };
19864 : : return complete_seq (expand_encoding, operands);
19865 : : }
19866 : :
19867 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19868 : : extern rtx_insn *gen_split_2016 (rtx_insn *, rtx *);
19869 : : rtx_insn *
19870 : : gen_split_2016 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19871 : : {
19872 : : if (dump_file)
19873 : : fprintf (dump_file, "Splitting with gen_split_2016 (sse.md:14088)\n");
19874 : : start_sequence ();
19875 : : #define FAIL return (end_sequence (), nullptr)
19876 : : #define DONE return end_sequence ()
19877 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19878 : : {
19879 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19880 : : int reg6 = 0xF0;
19881 : : int reg2 = 0xCC;
19882 : : int reg1 = 0xAA;
19883 : : int reg3 = 0;
19884 : : int reg4 = 0;
19885 : : int reg_mask, tmp1, tmp2;
19886 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19887 : : STRIP_UNARY (operands[4])))
19888 : : {
19889 : : reg4 = reg1;
19890 : : reg3 = reg6;
19891 : : operands[6] = operands[3];
19892 : : }
19893 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19894 : : STRIP_UNARY (operands[4])))
19895 : : {
19896 : : reg4 = reg2;
19897 : : reg3 = reg6;
19898 : : operands[6] = operands[3];
19899 : : }
19900 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19901 : : STRIP_UNARY (operands[3])))
19902 : : {
19903 : : reg4 = reg6;
19904 : : reg3 = reg1;
19905 : : operands[6] = operands[4];
19906 : : }
19907 : : else
19908 : : {
19909 : : reg4 = reg6;
19910 : : reg3 = reg2;
19911 : : operands[6] = operands[4];
19912 : : }
19913 : :
19914 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19915 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19916 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19917 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19918 : :
19919 : : tmp1 = reg1 & reg2;
19920 : : tmp2 = reg3 | reg4;
19921 : : reg_mask = tmp1 ^ tmp2;
19922 : : reg_mask &= 0xFF;
19923 : :
19924 : : operands[1] = STRIP_UNARY (operands[1]);
19925 : : operands[2] = STRIP_UNARY (operands[2]);
19926 : : operands[6] = STRIP_UNARY (operands[6]);
19927 : : if (!register_operand (operands[2], V4DImode))
19928 : : operands[2] = force_reg (V4DImode, operands[2]);
19929 : : if (!register_operand (operands[6], V4DImode))
19930 : : operands[6] = force_reg (V4DImode, operands[6]);
19931 : : operands[5] = GEN_INT (reg_mask);
19932 : : }
19933 : : #undef DONE
19934 : : #undef FAIL
19935 : : static const uint8_t expand_encoding[] = {
19936 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19937 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19938 : : 0x25
19939 : : };
19940 : : return complete_seq (expand_encoding, operands);
19941 : : }
19942 : :
19943 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
19944 : : extern rtx_insn *gen_split_2026 (rtx_insn *, rtx *);
19945 : : rtx_insn *
19946 : : gen_split_2026 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19947 : : {
19948 : : if (dump_file)
19949 : : fprintf (dump_file, "Splitting with gen_split_2026 (sse.md:14088)\n");
19950 : : start_sequence ();
19951 : : #define FAIL return (end_sequence (), nullptr)
19952 : : #define DONE return end_sequence ()
19953 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19954 : : {
19955 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19956 : : int reg6 = 0xF0;
19957 : : int reg2 = 0xCC;
19958 : : int reg1 = 0xAA;
19959 : : int reg3 = 0;
19960 : : int reg4 = 0;
19961 : : int reg_mask, tmp1, tmp2;
19962 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19963 : : STRIP_UNARY (operands[4])))
19964 : : {
19965 : : reg4 = reg1;
19966 : : reg3 = reg6;
19967 : : operands[6] = operands[3];
19968 : : }
19969 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19970 : : STRIP_UNARY (operands[4])))
19971 : : {
19972 : : reg4 = reg2;
19973 : : reg3 = reg6;
19974 : : operands[6] = operands[3];
19975 : : }
19976 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19977 : : STRIP_UNARY (operands[3])))
19978 : : {
19979 : : reg4 = reg6;
19980 : : reg3 = reg1;
19981 : : operands[6] = operands[4];
19982 : : }
19983 : : else
19984 : : {
19985 : : reg4 = reg6;
19986 : : reg3 = reg2;
19987 : : operands[6] = operands[4];
19988 : : }
19989 : :
19990 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19991 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19992 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19993 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19994 : :
19995 : : tmp1 = reg1 | reg2;
19996 : : tmp2 = reg3 ^ reg4;
19997 : : reg_mask = tmp1 & tmp2;
19998 : : reg_mask &= 0xFF;
19999 : :
20000 : : operands[1] = STRIP_UNARY (operands[1]);
20001 : : operands[2] = STRIP_UNARY (operands[2]);
20002 : : operands[6] = STRIP_UNARY (operands[6]);
20003 : : if (!register_operand (operands[2], V4DImode))
20004 : : operands[2] = force_reg (V4DImode, operands[2]);
20005 : : if (!register_operand (operands[6], V4DImode))
20006 : : operands[6] = force_reg (V4DImode, operands[6]);
20007 : : operands[5] = GEN_INT (reg_mask);
20008 : : }
20009 : : #undef DONE
20010 : : #undef FAIL
20011 : : static const uint8_t expand_encoding[] = {
20012 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
20013 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20014 : : 0x25
20015 : : };
20016 : : return complete_seq (expand_encoding, operands);
20017 : : }
20018 : :
20019 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20020 : : extern rtx_insn *gen_split_2036 (rtx_insn *, rtx *);
20021 : : rtx_insn *
20022 : : gen_split_2036 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20023 : : {
20024 : : if (dump_file)
20025 : : fprintf (dump_file, "Splitting with gen_split_2036 (sse.md:14088)\n");
20026 : : start_sequence ();
20027 : : #define FAIL return (end_sequence (), nullptr)
20028 : : #define DONE return end_sequence ()
20029 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20030 : : {
20031 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20032 : : int reg6 = 0xF0;
20033 : : int reg2 = 0xCC;
20034 : : int reg1 = 0xAA;
20035 : : int reg3 = 0;
20036 : : int reg4 = 0;
20037 : : int reg_mask, tmp1, tmp2;
20038 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20039 : : STRIP_UNARY (operands[4])))
20040 : : {
20041 : : reg4 = reg1;
20042 : : reg3 = reg6;
20043 : : operands[6] = operands[3];
20044 : : }
20045 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20046 : : STRIP_UNARY (operands[4])))
20047 : : {
20048 : : reg4 = reg2;
20049 : : reg3 = reg6;
20050 : : operands[6] = operands[3];
20051 : : }
20052 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20053 : : STRIP_UNARY (operands[3])))
20054 : : {
20055 : : reg4 = reg6;
20056 : : reg3 = reg1;
20057 : : operands[6] = operands[4];
20058 : : }
20059 : : else
20060 : : {
20061 : : reg4 = reg6;
20062 : : reg3 = reg2;
20063 : : operands[6] = operands[4];
20064 : : }
20065 : :
20066 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20067 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20068 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20069 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20070 : :
20071 : : tmp1 = reg1 ^ reg2;
20072 : : tmp2 = reg3 ^ reg4;
20073 : : reg_mask = tmp1 | tmp2;
20074 : : reg_mask &= 0xFF;
20075 : :
20076 : : operands[1] = STRIP_UNARY (operands[1]);
20077 : : operands[2] = STRIP_UNARY (operands[2]);
20078 : : operands[6] = STRIP_UNARY (operands[6]);
20079 : : if (!register_operand (operands[2], V4DImode))
20080 : : operands[2] = force_reg (V4DImode, operands[2]);
20081 : : if (!register_operand (operands[6], V4DImode))
20082 : : operands[6] = force_reg (V4DImode, operands[6]);
20083 : : operands[5] = GEN_INT (reg_mask);
20084 : : }
20085 : : #undef DONE
20086 : : #undef FAIL
20087 : : static const uint8_t expand_encoding[] = {
20088 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
20089 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20090 : : 0x25
20091 : : };
20092 : : return complete_seq (expand_encoding, operands);
20093 : : }
20094 : :
20095 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20096 : : extern rtx_insn *gen_split_2046 (rtx_insn *, rtx *);
20097 : : rtx_insn *
20098 : : gen_split_2046 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20099 : : {
20100 : : if (dump_file)
20101 : : fprintf (dump_file, "Splitting with gen_split_2046 (sse.md:14088)\n");
20102 : : start_sequence ();
20103 : : #define FAIL return (end_sequence (), nullptr)
20104 : : #define DONE return end_sequence ()
20105 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20106 : : {
20107 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20108 : : int reg6 = 0xF0;
20109 : : int reg2 = 0xCC;
20110 : : int reg1 = 0xAA;
20111 : : int reg3 = 0;
20112 : : int reg4 = 0;
20113 : : int reg_mask, tmp1, tmp2;
20114 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20115 : : STRIP_UNARY (operands[4])))
20116 : : {
20117 : : reg4 = reg1;
20118 : : reg3 = reg6;
20119 : : operands[6] = operands[3];
20120 : : }
20121 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20122 : : STRIP_UNARY (operands[4])))
20123 : : {
20124 : : reg4 = reg2;
20125 : : reg3 = reg6;
20126 : : operands[6] = operands[3];
20127 : : }
20128 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20129 : : STRIP_UNARY (operands[3])))
20130 : : {
20131 : : reg4 = reg6;
20132 : : reg3 = reg1;
20133 : : operands[6] = operands[4];
20134 : : }
20135 : : else
20136 : : {
20137 : : reg4 = reg6;
20138 : : reg3 = reg2;
20139 : : operands[6] = operands[4];
20140 : : }
20141 : :
20142 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20143 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20144 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20145 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20146 : :
20147 : : tmp1 = reg1 & reg2;
20148 : : tmp2 = reg3 ^ reg4;
20149 : : reg_mask = tmp1 ^ tmp2;
20150 : : reg_mask &= 0xFF;
20151 : :
20152 : : operands[1] = STRIP_UNARY (operands[1]);
20153 : : operands[2] = STRIP_UNARY (operands[2]);
20154 : : operands[6] = STRIP_UNARY (operands[6]);
20155 : : if (!register_operand (operands[2], V2DImode))
20156 : : operands[2] = force_reg (V2DImode, operands[2]);
20157 : : if (!register_operand (operands[6], V2DImode))
20158 : : operands[6] = force_reg (V2DImode, operands[6]);
20159 : : operands[5] = GEN_INT (reg_mask);
20160 : : }
20161 : : #undef DONE
20162 : : #undef FAIL
20163 : : static const uint8_t expand_encoding[] = {
20164 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20165 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20166 : : 0x25
20167 : : };
20168 : : return complete_seq (expand_encoding, operands);
20169 : : }
20170 : :
20171 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20172 : : extern rtx_insn *gen_split_2056 (rtx_insn *, rtx *);
20173 : : rtx_insn *
20174 : : gen_split_2056 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20175 : : {
20176 : : if (dump_file)
20177 : : fprintf (dump_file, "Splitting with gen_split_2056 (sse.md:14088)\n");
20178 : : start_sequence ();
20179 : : #define FAIL return (end_sequence (), nullptr)
20180 : : #define DONE return end_sequence ()
20181 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20182 : : {
20183 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20184 : : int reg6 = 0xF0;
20185 : : int reg2 = 0xCC;
20186 : : int reg1 = 0xAA;
20187 : : int reg3 = 0;
20188 : : int reg4 = 0;
20189 : : int reg_mask, tmp1, tmp2;
20190 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20191 : : STRIP_UNARY (operands[4])))
20192 : : {
20193 : : reg4 = reg1;
20194 : : reg3 = reg6;
20195 : : operands[6] = operands[3];
20196 : : }
20197 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20198 : : STRIP_UNARY (operands[4])))
20199 : : {
20200 : : reg4 = reg2;
20201 : : reg3 = reg6;
20202 : : operands[6] = operands[3];
20203 : : }
20204 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20205 : : STRIP_UNARY (operands[3])))
20206 : : {
20207 : : reg4 = reg6;
20208 : : reg3 = reg1;
20209 : : operands[6] = operands[4];
20210 : : }
20211 : : else
20212 : : {
20213 : : reg4 = reg6;
20214 : : reg3 = reg2;
20215 : : operands[6] = operands[4];
20216 : : }
20217 : :
20218 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20219 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20220 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20221 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20222 : :
20223 : : tmp1 = reg1 ^ reg2;
20224 : : tmp2 = reg3 & reg4;
20225 : : reg_mask = tmp1 & tmp2;
20226 : : reg_mask &= 0xFF;
20227 : :
20228 : : operands[1] = STRIP_UNARY (operands[1]);
20229 : : operands[2] = STRIP_UNARY (operands[2]);
20230 : : operands[6] = STRIP_UNARY (operands[6]);
20231 : : if (!register_operand (operands[2], V2DImode))
20232 : : operands[2] = force_reg (V2DImode, operands[2]);
20233 : : if (!register_operand (operands[6], V2DImode))
20234 : : operands[6] = force_reg (V2DImode, operands[6]);
20235 : : operands[5] = GEN_INT (reg_mask);
20236 : : }
20237 : : #undef DONE
20238 : : #undef FAIL
20239 : : static const uint8_t expand_encoding[] = {
20240 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20241 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20242 : : 0x25
20243 : : };
20244 : : return complete_seq (expand_encoding, operands);
20245 : : }
20246 : :
20247 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20248 : : extern rtx_insn *gen_split_2066 (rtx_insn *, rtx *);
20249 : : rtx_insn *
20250 : : gen_split_2066 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20251 : : {
20252 : : if (dump_file)
20253 : : fprintf (dump_file, "Splitting with gen_split_2066 (sse.md:14088)\n");
20254 : : start_sequence ();
20255 : : #define FAIL return (end_sequence (), nullptr)
20256 : : #define DONE return end_sequence ()
20257 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20258 : : {
20259 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20260 : : int reg6 = 0xF0;
20261 : : int reg2 = 0xCC;
20262 : : int reg1 = 0xAA;
20263 : : int reg3 = 0;
20264 : : int reg4 = 0;
20265 : : int reg_mask, tmp1, tmp2;
20266 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20267 : : STRIP_UNARY (operands[4])))
20268 : : {
20269 : : reg4 = reg1;
20270 : : reg3 = reg6;
20271 : : operands[6] = operands[3];
20272 : : }
20273 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20274 : : STRIP_UNARY (operands[4])))
20275 : : {
20276 : : reg4 = reg2;
20277 : : reg3 = reg6;
20278 : : operands[6] = operands[3];
20279 : : }
20280 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20281 : : STRIP_UNARY (operands[3])))
20282 : : {
20283 : : reg4 = reg6;
20284 : : reg3 = reg1;
20285 : : operands[6] = operands[4];
20286 : : }
20287 : : else
20288 : : {
20289 : : reg4 = reg6;
20290 : : reg3 = reg2;
20291 : : operands[6] = operands[4];
20292 : : }
20293 : :
20294 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20295 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20296 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20297 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20298 : :
20299 : : tmp1 = reg1 & reg2;
20300 : : tmp2 = reg3 & reg4;
20301 : : reg_mask = tmp1 | tmp2;
20302 : : reg_mask &= 0xFF;
20303 : :
20304 : : operands[1] = STRIP_UNARY (operands[1]);
20305 : : operands[2] = STRIP_UNARY (operands[2]);
20306 : : operands[6] = STRIP_UNARY (operands[6]);
20307 : : if (!register_operand (operands[2], V32HFmode))
20308 : : operands[2] = force_reg (V32HFmode, operands[2]);
20309 : : if (!register_operand (operands[6], V32HFmode))
20310 : : operands[6] = force_reg (V32HFmode, operands[6]);
20311 : : operands[5] = GEN_INT (reg_mask);
20312 : : }
20313 : : #undef DONE
20314 : : #undef FAIL
20315 : : static const uint8_t expand_encoding[] = {
20316 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20317 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20318 : : 0x25
20319 : : };
20320 : : return complete_seq (expand_encoding, operands);
20321 : : }
20322 : :
20323 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20324 : : extern rtx_insn *gen_split_2076 (rtx_insn *, rtx *);
20325 : : rtx_insn *
20326 : : gen_split_2076 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20327 : : {
20328 : : if (dump_file)
20329 : : fprintf (dump_file, "Splitting with gen_split_2076 (sse.md:14088)\n");
20330 : : start_sequence ();
20331 : : #define FAIL return (end_sequence (), nullptr)
20332 : : #define DONE return end_sequence ()
20333 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20334 : : {
20335 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20336 : : int reg6 = 0xF0;
20337 : : int reg2 = 0xCC;
20338 : : int reg1 = 0xAA;
20339 : : int reg3 = 0;
20340 : : int reg4 = 0;
20341 : : int reg_mask, tmp1, tmp2;
20342 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20343 : : STRIP_UNARY (operands[4])))
20344 : : {
20345 : : reg4 = reg1;
20346 : : reg3 = reg6;
20347 : : operands[6] = operands[3];
20348 : : }
20349 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20350 : : STRIP_UNARY (operands[4])))
20351 : : {
20352 : : reg4 = reg2;
20353 : : reg3 = reg6;
20354 : : operands[6] = operands[3];
20355 : : }
20356 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20357 : : STRIP_UNARY (operands[3])))
20358 : : {
20359 : : reg4 = reg6;
20360 : : reg3 = reg1;
20361 : : operands[6] = operands[4];
20362 : : }
20363 : : else
20364 : : {
20365 : : reg4 = reg6;
20366 : : reg3 = reg2;
20367 : : operands[6] = operands[4];
20368 : : }
20369 : :
20370 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20371 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20372 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20373 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20374 : :
20375 : : tmp1 = reg1 | reg2;
20376 : : tmp2 = reg3 & reg4;
20377 : : reg_mask = tmp1 ^ tmp2;
20378 : : reg_mask &= 0xFF;
20379 : :
20380 : : operands[1] = STRIP_UNARY (operands[1]);
20381 : : operands[2] = STRIP_UNARY (operands[2]);
20382 : : operands[6] = STRIP_UNARY (operands[6]);
20383 : : if (!register_operand (operands[2], V32HFmode))
20384 : : operands[2] = force_reg (V32HFmode, operands[2]);
20385 : : if (!register_operand (operands[6], V32HFmode))
20386 : : operands[6] = force_reg (V32HFmode, operands[6]);
20387 : : operands[5] = GEN_INT (reg_mask);
20388 : : }
20389 : : #undef DONE
20390 : : #undef FAIL
20391 : : static const uint8_t expand_encoding[] = {
20392 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20393 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20394 : : 0x25
20395 : : };
20396 : : return complete_seq (expand_encoding, operands);
20397 : : }
20398 : :
20399 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20400 : : extern rtx_insn *gen_split_2086 (rtx_insn *, rtx *);
20401 : : rtx_insn *
20402 : : gen_split_2086 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20403 : : {
20404 : : if (dump_file)
20405 : : fprintf (dump_file, "Splitting with gen_split_2086 (sse.md:14088)\n");
20406 : : start_sequence ();
20407 : : #define FAIL return (end_sequence (), nullptr)
20408 : : #define DONE return end_sequence ()
20409 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20410 : : {
20411 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20412 : : int reg6 = 0xF0;
20413 : : int reg2 = 0xCC;
20414 : : int reg1 = 0xAA;
20415 : : int reg3 = 0;
20416 : : int reg4 = 0;
20417 : : int reg_mask, tmp1, tmp2;
20418 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20419 : : STRIP_UNARY (operands[4])))
20420 : : {
20421 : : reg4 = reg1;
20422 : : reg3 = reg6;
20423 : : operands[6] = operands[3];
20424 : : }
20425 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20426 : : STRIP_UNARY (operands[4])))
20427 : : {
20428 : : reg4 = reg2;
20429 : : reg3 = reg6;
20430 : : operands[6] = operands[3];
20431 : : }
20432 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20433 : : STRIP_UNARY (operands[3])))
20434 : : {
20435 : : reg4 = reg6;
20436 : : reg3 = reg1;
20437 : : operands[6] = operands[4];
20438 : : }
20439 : : else
20440 : : {
20441 : : reg4 = reg6;
20442 : : reg3 = reg2;
20443 : : operands[6] = operands[4];
20444 : : }
20445 : :
20446 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20447 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20448 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20449 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20450 : :
20451 : : tmp1 = reg1 ^ reg2;
20452 : : tmp2 = reg3 | reg4;
20453 : : reg_mask = tmp1 & tmp2;
20454 : : reg_mask &= 0xFF;
20455 : :
20456 : : operands[1] = STRIP_UNARY (operands[1]);
20457 : : operands[2] = STRIP_UNARY (operands[2]);
20458 : : operands[6] = STRIP_UNARY (operands[6]);
20459 : : if (!register_operand (operands[2], V32HFmode))
20460 : : operands[2] = force_reg (V32HFmode, operands[2]);
20461 : : if (!register_operand (operands[6], V32HFmode))
20462 : : operands[6] = force_reg (V32HFmode, operands[6]);
20463 : : operands[5] = GEN_INT (reg_mask);
20464 : : }
20465 : : #undef DONE
20466 : : #undef FAIL
20467 : : static const uint8_t expand_encoding[] = {
20468 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20469 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20470 : : 0x25
20471 : : };
20472 : : return complete_seq (expand_encoding, operands);
20473 : : }
20474 : :
20475 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20476 : : extern rtx_insn *gen_split_2096 (rtx_insn *, rtx *);
20477 : : rtx_insn *
20478 : : gen_split_2096 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20479 : : {
20480 : : if (dump_file)
20481 : : fprintf (dump_file, "Splitting with gen_split_2096 (sse.md:14088)\n");
20482 : : start_sequence ();
20483 : : #define FAIL return (end_sequence (), nullptr)
20484 : : #define DONE return end_sequence ()
20485 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20486 : : {
20487 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20488 : : int reg6 = 0xF0;
20489 : : int reg2 = 0xCC;
20490 : : int reg1 = 0xAA;
20491 : : int reg3 = 0;
20492 : : int reg4 = 0;
20493 : : int reg_mask, tmp1, tmp2;
20494 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20495 : : STRIP_UNARY (operands[4])))
20496 : : {
20497 : : reg4 = reg1;
20498 : : reg3 = reg6;
20499 : : operands[6] = operands[3];
20500 : : }
20501 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20502 : : STRIP_UNARY (operands[4])))
20503 : : {
20504 : : reg4 = reg2;
20505 : : reg3 = reg6;
20506 : : operands[6] = operands[3];
20507 : : }
20508 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20509 : : STRIP_UNARY (operands[3])))
20510 : : {
20511 : : reg4 = reg6;
20512 : : reg3 = reg1;
20513 : : operands[6] = operands[4];
20514 : : }
20515 : : else
20516 : : {
20517 : : reg4 = reg6;
20518 : : reg3 = reg2;
20519 : : operands[6] = operands[4];
20520 : : }
20521 : :
20522 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20523 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20524 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20525 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20526 : :
20527 : : tmp1 = reg1 & reg2;
20528 : : tmp2 = reg3 | reg4;
20529 : : reg_mask = tmp1 | tmp2;
20530 : : reg_mask &= 0xFF;
20531 : :
20532 : : operands[1] = STRIP_UNARY (operands[1]);
20533 : : operands[2] = STRIP_UNARY (operands[2]);
20534 : : operands[6] = STRIP_UNARY (operands[6]);
20535 : : if (!register_operand (operands[2], V16HFmode))
20536 : : operands[2] = force_reg (V16HFmode, operands[2]);
20537 : : if (!register_operand (operands[6], V16HFmode))
20538 : : operands[6] = force_reg (V16HFmode, operands[6]);
20539 : : operands[5] = GEN_INT (reg_mask);
20540 : : }
20541 : : #undef DONE
20542 : : #undef FAIL
20543 : : static const uint8_t expand_encoding[] = {
20544 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20545 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20546 : : 0x25
20547 : : };
20548 : : return complete_seq (expand_encoding, operands);
20549 : : }
20550 : :
20551 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20552 : : extern rtx_insn *gen_split_2106 (rtx_insn *, rtx *);
20553 : : rtx_insn *
20554 : : gen_split_2106 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20555 : : {
20556 : : if (dump_file)
20557 : : fprintf (dump_file, "Splitting with gen_split_2106 (sse.md:14088)\n");
20558 : : start_sequence ();
20559 : : #define FAIL return (end_sequence (), nullptr)
20560 : : #define DONE return end_sequence ()
20561 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20562 : : {
20563 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20564 : : int reg6 = 0xF0;
20565 : : int reg2 = 0xCC;
20566 : : int reg1 = 0xAA;
20567 : : int reg3 = 0;
20568 : : int reg4 = 0;
20569 : : int reg_mask, tmp1, tmp2;
20570 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20571 : : STRIP_UNARY (operands[4])))
20572 : : {
20573 : : reg4 = reg1;
20574 : : reg3 = reg6;
20575 : : operands[6] = operands[3];
20576 : : }
20577 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20578 : : STRIP_UNARY (operands[4])))
20579 : : {
20580 : : reg4 = reg2;
20581 : : reg3 = reg6;
20582 : : operands[6] = operands[3];
20583 : : }
20584 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20585 : : STRIP_UNARY (operands[3])))
20586 : : {
20587 : : reg4 = reg6;
20588 : : reg3 = reg1;
20589 : : operands[6] = operands[4];
20590 : : }
20591 : : else
20592 : : {
20593 : : reg4 = reg6;
20594 : : reg3 = reg2;
20595 : : operands[6] = operands[4];
20596 : : }
20597 : :
20598 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20599 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20600 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20601 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20602 : :
20603 : : tmp1 = reg1 | reg2;
20604 : : tmp2 = reg3 | reg4;
20605 : : reg_mask = tmp1 ^ tmp2;
20606 : : reg_mask &= 0xFF;
20607 : :
20608 : : operands[1] = STRIP_UNARY (operands[1]);
20609 : : operands[2] = STRIP_UNARY (operands[2]);
20610 : : operands[6] = STRIP_UNARY (operands[6]);
20611 : : if (!register_operand (operands[2], V16HFmode))
20612 : : operands[2] = force_reg (V16HFmode, operands[2]);
20613 : : if (!register_operand (operands[6], V16HFmode))
20614 : : operands[6] = force_reg (V16HFmode, operands[6]);
20615 : : operands[5] = GEN_INT (reg_mask);
20616 : : }
20617 : : #undef DONE
20618 : : #undef FAIL
20619 : : static const uint8_t expand_encoding[] = {
20620 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20621 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20622 : : 0x25
20623 : : };
20624 : : return complete_seq (expand_encoding, operands);
20625 : : }
20626 : :
20627 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20628 : : extern rtx_insn *gen_split_2116 (rtx_insn *, rtx *);
20629 : : rtx_insn *
20630 : : gen_split_2116 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20631 : : {
20632 : : if (dump_file)
20633 : : fprintf (dump_file, "Splitting with gen_split_2116 (sse.md:14088)\n");
20634 : : start_sequence ();
20635 : : #define FAIL return (end_sequence (), nullptr)
20636 : : #define DONE return end_sequence ()
20637 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20638 : : {
20639 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20640 : : int reg6 = 0xF0;
20641 : : int reg2 = 0xCC;
20642 : : int reg1 = 0xAA;
20643 : : int reg3 = 0;
20644 : : int reg4 = 0;
20645 : : int reg_mask, tmp1, tmp2;
20646 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20647 : : STRIP_UNARY (operands[4])))
20648 : : {
20649 : : reg4 = reg1;
20650 : : reg3 = reg6;
20651 : : operands[6] = operands[3];
20652 : : }
20653 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20654 : : STRIP_UNARY (operands[4])))
20655 : : {
20656 : : reg4 = reg2;
20657 : : reg3 = reg6;
20658 : : operands[6] = operands[3];
20659 : : }
20660 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20661 : : STRIP_UNARY (operands[3])))
20662 : : {
20663 : : reg4 = reg6;
20664 : : reg3 = reg1;
20665 : : operands[6] = operands[4];
20666 : : }
20667 : : else
20668 : : {
20669 : : reg4 = reg6;
20670 : : reg3 = reg2;
20671 : : operands[6] = operands[4];
20672 : : }
20673 : :
20674 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20675 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20676 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20677 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20678 : :
20679 : : tmp1 = reg1 ^ reg2;
20680 : : tmp2 = reg3 ^ reg4;
20681 : : reg_mask = tmp1 & tmp2;
20682 : : reg_mask &= 0xFF;
20683 : :
20684 : : operands[1] = STRIP_UNARY (operands[1]);
20685 : : operands[2] = STRIP_UNARY (operands[2]);
20686 : : operands[6] = STRIP_UNARY (operands[6]);
20687 : : if (!register_operand (operands[2], V16HFmode))
20688 : : operands[2] = force_reg (V16HFmode, operands[2]);
20689 : : if (!register_operand (operands[6], V16HFmode))
20690 : : operands[6] = force_reg (V16HFmode, operands[6]);
20691 : : operands[5] = GEN_INT (reg_mask);
20692 : : }
20693 : : #undef DONE
20694 : : #undef FAIL
20695 : : static const uint8_t expand_encoding[] = {
20696 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20697 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20698 : : 0x25
20699 : : };
20700 : : return complete_seq (expand_encoding, operands);
20701 : : }
20702 : :
20703 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20704 : : extern rtx_insn *gen_split_2126 (rtx_insn *, rtx *);
20705 : : rtx_insn *
20706 : : gen_split_2126 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20707 : : {
20708 : : if (dump_file)
20709 : : fprintf (dump_file, "Splitting with gen_split_2126 (sse.md:14088)\n");
20710 : : start_sequence ();
20711 : : #define FAIL return (end_sequence (), nullptr)
20712 : : #define DONE return end_sequence ()
20713 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20714 : : {
20715 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20716 : : int reg6 = 0xF0;
20717 : : int reg2 = 0xCC;
20718 : : int reg1 = 0xAA;
20719 : : int reg3 = 0;
20720 : : int reg4 = 0;
20721 : : int reg_mask, tmp1, tmp2;
20722 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20723 : : STRIP_UNARY (operands[4])))
20724 : : {
20725 : : reg4 = reg1;
20726 : : reg3 = reg6;
20727 : : operands[6] = operands[3];
20728 : : }
20729 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20730 : : STRIP_UNARY (operands[4])))
20731 : : {
20732 : : reg4 = reg2;
20733 : : reg3 = reg6;
20734 : : operands[6] = operands[3];
20735 : : }
20736 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20737 : : STRIP_UNARY (operands[3])))
20738 : : {
20739 : : reg4 = reg6;
20740 : : reg3 = reg1;
20741 : : operands[6] = operands[4];
20742 : : }
20743 : : else
20744 : : {
20745 : : reg4 = reg6;
20746 : : reg3 = reg2;
20747 : : operands[6] = operands[4];
20748 : : }
20749 : :
20750 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20751 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20752 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20753 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20754 : :
20755 : : tmp1 = reg1 & reg2;
20756 : : tmp2 = reg3 ^ reg4;
20757 : : reg_mask = tmp1 | tmp2;
20758 : : reg_mask &= 0xFF;
20759 : :
20760 : : operands[1] = STRIP_UNARY (operands[1]);
20761 : : operands[2] = STRIP_UNARY (operands[2]);
20762 : : operands[6] = STRIP_UNARY (operands[6]);
20763 : : if (!register_operand (operands[2], V8HFmode))
20764 : : operands[2] = force_reg (V8HFmode, operands[2]);
20765 : : if (!register_operand (operands[6], V8HFmode))
20766 : : operands[6] = force_reg (V8HFmode, operands[6]);
20767 : : operands[5] = GEN_INT (reg_mask);
20768 : : }
20769 : : #undef DONE
20770 : : #undef FAIL
20771 : : static const uint8_t expand_encoding[] = {
20772 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20773 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20774 : : 0x25
20775 : : };
20776 : : return complete_seq (expand_encoding, operands);
20777 : : }
20778 : :
20779 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20780 : : extern rtx_insn *gen_split_2136 (rtx_insn *, rtx *);
20781 : : rtx_insn *
20782 : : gen_split_2136 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20783 : : {
20784 : : if (dump_file)
20785 : : fprintf (dump_file, "Splitting with gen_split_2136 (sse.md:14088)\n");
20786 : : start_sequence ();
20787 : : #define FAIL return (end_sequence (), nullptr)
20788 : : #define DONE return end_sequence ()
20789 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20790 : : {
20791 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20792 : : int reg6 = 0xF0;
20793 : : int reg2 = 0xCC;
20794 : : int reg1 = 0xAA;
20795 : : int reg3 = 0;
20796 : : int reg4 = 0;
20797 : : int reg_mask, tmp1, tmp2;
20798 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20799 : : STRIP_UNARY (operands[4])))
20800 : : {
20801 : : reg4 = reg1;
20802 : : reg3 = reg6;
20803 : : operands[6] = operands[3];
20804 : : }
20805 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20806 : : STRIP_UNARY (operands[4])))
20807 : : {
20808 : : reg4 = reg2;
20809 : : reg3 = reg6;
20810 : : operands[6] = operands[3];
20811 : : }
20812 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20813 : : STRIP_UNARY (operands[3])))
20814 : : {
20815 : : reg4 = reg6;
20816 : : reg3 = reg1;
20817 : : operands[6] = operands[4];
20818 : : }
20819 : : else
20820 : : {
20821 : : reg4 = reg6;
20822 : : reg3 = reg2;
20823 : : operands[6] = operands[4];
20824 : : }
20825 : :
20826 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20827 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20828 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20829 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20830 : :
20831 : : tmp1 = reg1 | reg2;
20832 : : tmp2 = reg3 ^ reg4;
20833 : : reg_mask = tmp1 ^ tmp2;
20834 : : reg_mask &= 0xFF;
20835 : :
20836 : : operands[1] = STRIP_UNARY (operands[1]);
20837 : : operands[2] = STRIP_UNARY (operands[2]);
20838 : : operands[6] = STRIP_UNARY (operands[6]);
20839 : : if (!register_operand (operands[2], V8HFmode))
20840 : : operands[2] = force_reg (V8HFmode, operands[2]);
20841 : : if (!register_operand (operands[6], V8HFmode))
20842 : : operands[6] = force_reg (V8HFmode, operands[6]);
20843 : : operands[5] = GEN_INT (reg_mask);
20844 : : }
20845 : : #undef DONE
20846 : : #undef FAIL
20847 : : static const uint8_t expand_encoding[] = {
20848 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20849 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20850 : : 0x25
20851 : : };
20852 : : return complete_seq (expand_encoding, operands);
20853 : : }
20854 : :
20855 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20856 : : extern rtx_insn *gen_split_2146 (rtx_insn *, rtx *);
20857 : : rtx_insn *
20858 : : gen_split_2146 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20859 : : {
20860 : : if (dump_file)
20861 : : fprintf (dump_file, "Splitting with gen_split_2146 (sse.md:14088)\n");
20862 : : start_sequence ();
20863 : : #define FAIL return (end_sequence (), nullptr)
20864 : : #define DONE return end_sequence ()
20865 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20866 : : {
20867 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20868 : : int reg6 = 0xF0;
20869 : : int reg2 = 0xCC;
20870 : : int reg1 = 0xAA;
20871 : : int reg3 = 0;
20872 : : int reg4 = 0;
20873 : : int reg_mask, tmp1, tmp2;
20874 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20875 : : STRIP_UNARY (operands[4])))
20876 : : {
20877 : : reg4 = reg1;
20878 : : reg3 = reg6;
20879 : : operands[6] = operands[3];
20880 : : }
20881 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20882 : : STRIP_UNARY (operands[4])))
20883 : : {
20884 : : reg4 = reg2;
20885 : : reg3 = reg6;
20886 : : operands[6] = operands[3];
20887 : : }
20888 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20889 : : STRIP_UNARY (operands[3])))
20890 : : {
20891 : : reg4 = reg6;
20892 : : reg3 = reg1;
20893 : : operands[6] = operands[4];
20894 : : }
20895 : : else
20896 : : {
20897 : : reg4 = reg6;
20898 : : reg3 = reg2;
20899 : : operands[6] = operands[4];
20900 : : }
20901 : :
20902 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20903 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20904 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20905 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20906 : :
20907 : : tmp1 = reg1 & reg2;
20908 : : tmp2 = reg3 & reg4;
20909 : : reg_mask = tmp1 & tmp2;
20910 : : reg_mask &= 0xFF;
20911 : :
20912 : : operands[1] = STRIP_UNARY (operands[1]);
20913 : : operands[2] = STRIP_UNARY (operands[2]);
20914 : : operands[6] = STRIP_UNARY (operands[6]);
20915 : : if (!register_operand (operands[2], V32BFmode))
20916 : : operands[2] = force_reg (V32BFmode, operands[2]);
20917 : : if (!register_operand (operands[6], V32BFmode))
20918 : : operands[6] = force_reg (V32BFmode, operands[6]);
20919 : : operands[5] = GEN_INT (reg_mask);
20920 : : }
20921 : : #undef DONE
20922 : : #undef FAIL
20923 : : static const uint8_t expand_encoding[] = {
20924 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20925 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20926 : : 0x25
20927 : : };
20928 : : return complete_seq (expand_encoding, operands);
20929 : : }
20930 : :
20931 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
20932 : : extern rtx_insn *gen_split_2156 (rtx_insn *, rtx *);
20933 : : rtx_insn *
20934 : : gen_split_2156 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20935 : : {
20936 : : if (dump_file)
20937 : : fprintf (dump_file, "Splitting with gen_split_2156 (sse.md:14088)\n");
20938 : : start_sequence ();
20939 : : #define FAIL return (end_sequence (), nullptr)
20940 : : #define DONE return end_sequence ()
20941 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20942 : : {
20943 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20944 : : int reg6 = 0xF0;
20945 : : int reg2 = 0xCC;
20946 : : int reg1 = 0xAA;
20947 : : int reg3 = 0;
20948 : : int reg4 = 0;
20949 : : int reg_mask, tmp1, tmp2;
20950 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20951 : : STRIP_UNARY (operands[4])))
20952 : : {
20953 : : reg4 = reg1;
20954 : : reg3 = reg6;
20955 : : operands[6] = operands[3];
20956 : : }
20957 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20958 : : STRIP_UNARY (operands[4])))
20959 : : {
20960 : : reg4 = reg2;
20961 : : reg3 = reg6;
20962 : : operands[6] = operands[3];
20963 : : }
20964 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20965 : : STRIP_UNARY (operands[3])))
20966 : : {
20967 : : reg4 = reg6;
20968 : : reg3 = reg1;
20969 : : operands[6] = operands[4];
20970 : : }
20971 : : else
20972 : : {
20973 : : reg4 = reg6;
20974 : : reg3 = reg2;
20975 : : operands[6] = operands[4];
20976 : : }
20977 : :
20978 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20979 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20980 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20981 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20982 : :
20983 : : tmp1 = reg1 | reg2;
20984 : : tmp2 = reg3 & reg4;
20985 : : reg_mask = tmp1 | tmp2;
20986 : : reg_mask &= 0xFF;
20987 : :
20988 : : operands[1] = STRIP_UNARY (operands[1]);
20989 : : operands[2] = STRIP_UNARY (operands[2]);
20990 : : operands[6] = STRIP_UNARY (operands[6]);
20991 : : if (!register_operand (operands[2], V32BFmode))
20992 : : operands[2] = force_reg (V32BFmode, operands[2]);
20993 : : if (!register_operand (operands[6], V32BFmode))
20994 : : operands[6] = force_reg (V32BFmode, operands[6]);
20995 : : operands[5] = GEN_INT (reg_mask);
20996 : : }
20997 : : #undef DONE
20998 : : #undef FAIL
20999 : : static const uint8_t expand_encoding[] = {
21000 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
21001 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21002 : : 0x25
21003 : : };
21004 : : return complete_seq (expand_encoding, operands);
21005 : : }
21006 : :
21007 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21008 : : extern rtx_insn *gen_split_2166 (rtx_insn *, rtx *);
21009 : : rtx_insn *
21010 : : gen_split_2166 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21011 : : {
21012 : : if (dump_file)
21013 : : fprintf (dump_file, "Splitting with gen_split_2166 (sse.md:14088)\n");
21014 : : start_sequence ();
21015 : : #define FAIL return (end_sequence (), nullptr)
21016 : : #define DONE return end_sequence ()
21017 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21018 : : {
21019 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21020 : : int reg6 = 0xF0;
21021 : : int reg2 = 0xCC;
21022 : : int reg1 = 0xAA;
21023 : : int reg3 = 0;
21024 : : int reg4 = 0;
21025 : : int reg_mask, tmp1, tmp2;
21026 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21027 : : STRIP_UNARY (operands[4])))
21028 : : {
21029 : : reg4 = reg1;
21030 : : reg3 = reg6;
21031 : : operands[6] = operands[3];
21032 : : }
21033 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21034 : : STRIP_UNARY (operands[4])))
21035 : : {
21036 : : reg4 = reg2;
21037 : : reg3 = reg6;
21038 : : operands[6] = operands[3];
21039 : : }
21040 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21041 : : STRIP_UNARY (operands[3])))
21042 : : {
21043 : : reg4 = reg6;
21044 : : reg3 = reg1;
21045 : : operands[6] = operands[4];
21046 : : }
21047 : : else
21048 : : {
21049 : : reg4 = reg6;
21050 : : reg3 = reg2;
21051 : : operands[6] = operands[4];
21052 : : }
21053 : :
21054 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21055 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21056 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21057 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21058 : :
21059 : : tmp1 = reg1 ^ reg2;
21060 : : tmp2 = reg3 & reg4;
21061 : : reg_mask = tmp1 ^ tmp2;
21062 : : reg_mask &= 0xFF;
21063 : :
21064 : : operands[1] = STRIP_UNARY (operands[1]);
21065 : : operands[2] = STRIP_UNARY (operands[2]);
21066 : : operands[6] = STRIP_UNARY (operands[6]);
21067 : : if (!register_operand (operands[2], V32BFmode))
21068 : : operands[2] = force_reg (V32BFmode, operands[2]);
21069 : : if (!register_operand (operands[6], V32BFmode))
21070 : : operands[6] = force_reg (V32BFmode, operands[6]);
21071 : : operands[5] = GEN_INT (reg_mask);
21072 : : }
21073 : : #undef DONE
21074 : : #undef FAIL
21075 : : static const uint8_t expand_encoding[] = {
21076 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
21077 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21078 : : 0x25
21079 : : };
21080 : : return complete_seq (expand_encoding, operands);
21081 : : }
21082 : :
21083 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21084 : : extern rtx_insn *gen_split_2176 (rtx_insn *, rtx *);
21085 : : rtx_insn *
21086 : : gen_split_2176 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21087 : : {
21088 : : if (dump_file)
21089 : : fprintf (dump_file, "Splitting with gen_split_2176 (sse.md:14088)\n");
21090 : : start_sequence ();
21091 : : #define FAIL return (end_sequence (), nullptr)
21092 : : #define DONE return end_sequence ()
21093 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21094 : : {
21095 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21096 : : int reg6 = 0xF0;
21097 : : int reg2 = 0xCC;
21098 : : int reg1 = 0xAA;
21099 : : int reg3 = 0;
21100 : : int reg4 = 0;
21101 : : int reg_mask, tmp1, tmp2;
21102 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21103 : : STRIP_UNARY (operands[4])))
21104 : : {
21105 : : reg4 = reg1;
21106 : : reg3 = reg6;
21107 : : operands[6] = operands[3];
21108 : : }
21109 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21110 : : STRIP_UNARY (operands[4])))
21111 : : {
21112 : : reg4 = reg2;
21113 : : reg3 = reg6;
21114 : : operands[6] = operands[3];
21115 : : }
21116 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21117 : : STRIP_UNARY (operands[3])))
21118 : : {
21119 : : reg4 = reg6;
21120 : : reg3 = reg1;
21121 : : operands[6] = operands[4];
21122 : : }
21123 : : else
21124 : : {
21125 : : reg4 = reg6;
21126 : : reg3 = reg2;
21127 : : operands[6] = operands[4];
21128 : : }
21129 : :
21130 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21131 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21132 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21133 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21134 : :
21135 : : tmp1 = reg1 & reg2;
21136 : : tmp2 = reg3 | reg4;
21137 : : reg_mask = tmp1 & tmp2;
21138 : : reg_mask &= 0xFF;
21139 : :
21140 : : operands[1] = STRIP_UNARY (operands[1]);
21141 : : operands[2] = STRIP_UNARY (operands[2]);
21142 : : operands[6] = STRIP_UNARY (operands[6]);
21143 : : if (!register_operand (operands[2], V16BFmode))
21144 : : operands[2] = force_reg (V16BFmode, operands[2]);
21145 : : if (!register_operand (operands[6], V16BFmode))
21146 : : operands[6] = force_reg (V16BFmode, operands[6]);
21147 : : operands[5] = GEN_INT (reg_mask);
21148 : : }
21149 : : #undef DONE
21150 : : #undef FAIL
21151 : : static const uint8_t expand_encoding[] = {
21152 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21153 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21154 : : 0x25
21155 : : };
21156 : : return complete_seq (expand_encoding, operands);
21157 : : }
21158 : :
21159 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21160 : : extern rtx_insn *gen_split_2186 (rtx_insn *, rtx *);
21161 : : rtx_insn *
21162 : : gen_split_2186 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21163 : : {
21164 : : if (dump_file)
21165 : : fprintf (dump_file, "Splitting with gen_split_2186 (sse.md:14088)\n");
21166 : : start_sequence ();
21167 : : #define FAIL return (end_sequence (), nullptr)
21168 : : #define DONE return end_sequence ()
21169 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21170 : : {
21171 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21172 : : int reg6 = 0xF0;
21173 : : int reg2 = 0xCC;
21174 : : int reg1 = 0xAA;
21175 : : int reg3 = 0;
21176 : : int reg4 = 0;
21177 : : int reg_mask, tmp1, tmp2;
21178 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21179 : : STRIP_UNARY (operands[4])))
21180 : : {
21181 : : reg4 = reg1;
21182 : : reg3 = reg6;
21183 : : operands[6] = operands[3];
21184 : : }
21185 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21186 : : STRIP_UNARY (operands[4])))
21187 : : {
21188 : : reg4 = reg2;
21189 : : reg3 = reg6;
21190 : : operands[6] = operands[3];
21191 : : }
21192 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21193 : : STRIP_UNARY (operands[3])))
21194 : : {
21195 : : reg4 = reg6;
21196 : : reg3 = reg1;
21197 : : operands[6] = operands[4];
21198 : : }
21199 : : else
21200 : : {
21201 : : reg4 = reg6;
21202 : : reg3 = reg2;
21203 : : operands[6] = operands[4];
21204 : : }
21205 : :
21206 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21207 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21208 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21209 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21210 : :
21211 : : tmp1 = reg1 | reg2;
21212 : : tmp2 = reg3 | reg4;
21213 : : reg_mask = tmp1 | tmp2;
21214 : : reg_mask &= 0xFF;
21215 : :
21216 : : operands[1] = STRIP_UNARY (operands[1]);
21217 : : operands[2] = STRIP_UNARY (operands[2]);
21218 : : operands[6] = STRIP_UNARY (operands[6]);
21219 : : if (!register_operand (operands[2], V16BFmode))
21220 : : operands[2] = force_reg (V16BFmode, operands[2]);
21221 : : if (!register_operand (operands[6], V16BFmode))
21222 : : operands[6] = force_reg (V16BFmode, operands[6]);
21223 : : operands[5] = GEN_INT (reg_mask);
21224 : : }
21225 : : #undef DONE
21226 : : #undef FAIL
21227 : : static const uint8_t expand_encoding[] = {
21228 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21229 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21230 : : 0x25
21231 : : };
21232 : : return complete_seq (expand_encoding, operands);
21233 : : }
21234 : :
21235 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21236 : : extern rtx_insn *gen_split_2196 (rtx_insn *, rtx *);
21237 : : rtx_insn *
21238 : : gen_split_2196 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21239 : : {
21240 : : if (dump_file)
21241 : : fprintf (dump_file, "Splitting with gen_split_2196 (sse.md:14088)\n");
21242 : : start_sequence ();
21243 : : #define FAIL return (end_sequence (), nullptr)
21244 : : #define DONE return end_sequence ()
21245 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21246 : : {
21247 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21248 : : int reg6 = 0xF0;
21249 : : int reg2 = 0xCC;
21250 : : int reg1 = 0xAA;
21251 : : int reg3 = 0;
21252 : : int reg4 = 0;
21253 : : int reg_mask, tmp1, tmp2;
21254 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21255 : : STRIP_UNARY (operands[4])))
21256 : : {
21257 : : reg4 = reg1;
21258 : : reg3 = reg6;
21259 : : operands[6] = operands[3];
21260 : : }
21261 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21262 : : STRIP_UNARY (operands[4])))
21263 : : {
21264 : : reg4 = reg2;
21265 : : reg3 = reg6;
21266 : : operands[6] = operands[3];
21267 : : }
21268 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21269 : : STRIP_UNARY (operands[3])))
21270 : : {
21271 : : reg4 = reg6;
21272 : : reg3 = reg1;
21273 : : operands[6] = operands[4];
21274 : : }
21275 : : else
21276 : : {
21277 : : reg4 = reg6;
21278 : : reg3 = reg2;
21279 : : operands[6] = operands[4];
21280 : : }
21281 : :
21282 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21283 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21284 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21285 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21286 : :
21287 : : tmp1 = reg1 ^ reg2;
21288 : : tmp2 = reg3 | reg4;
21289 : : reg_mask = tmp1 ^ tmp2;
21290 : : reg_mask &= 0xFF;
21291 : :
21292 : : operands[1] = STRIP_UNARY (operands[1]);
21293 : : operands[2] = STRIP_UNARY (operands[2]);
21294 : : operands[6] = STRIP_UNARY (operands[6]);
21295 : : if (!register_operand (operands[2], V16BFmode))
21296 : : operands[2] = force_reg (V16BFmode, operands[2]);
21297 : : if (!register_operand (operands[6], V16BFmode))
21298 : : operands[6] = force_reg (V16BFmode, operands[6]);
21299 : : operands[5] = GEN_INT (reg_mask);
21300 : : }
21301 : : #undef DONE
21302 : : #undef FAIL
21303 : : static const uint8_t expand_encoding[] = {
21304 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21305 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21306 : : 0x25
21307 : : };
21308 : : return complete_seq (expand_encoding, operands);
21309 : : }
21310 : :
21311 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21312 : : extern rtx_insn *gen_split_2206 (rtx_insn *, rtx *);
21313 : : rtx_insn *
21314 : : gen_split_2206 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21315 : : {
21316 : : if (dump_file)
21317 : : fprintf (dump_file, "Splitting with gen_split_2206 (sse.md:14088)\n");
21318 : : start_sequence ();
21319 : : #define FAIL return (end_sequence (), nullptr)
21320 : : #define DONE return end_sequence ()
21321 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21322 : : {
21323 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21324 : : int reg6 = 0xF0;
21325 : : int reg2 = 0xCC;
21326 : : int reg1 = 0xAA;
21327 : : int reg3 = 0;
21328 : : int reg4 = 0;
21329 : : int reg_mask, tmp1, tmp2;
21330 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21331 : : STRIP_UNARY (operands[4])))
21332 : : {
21333 : : reg4 = reg1;
21334 : : reg3 = reg6;
21335 : : operands[6] = operands[3];
21336 : : }
21337 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21338 : : STRIP_UNARY (operands[4])))
21339 : : {
21340 : : reg4 = reg2;
21341 : : reg3 = reg6;
21342 : : operands[6] = operands[3];
21343 : : }
21344 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21345 : : STRIP_UNARY (operands[3])))
21346 : : {
21347 : : reg4 = reg6;
21348 : : reg3 = reg1;
21349 : : operands[6] = operands[4];
21350 : : }
21351 : : else
21352 : : {
21353 : : reg4 = reg6;
21354 : : reg3 = reg2;
21355 : : operands[6] = operands[4];
21356 : : }
21357 : :
21358 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21359 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21360 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21361 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21362 : :
21363 : : tmp1 = reg1 & reg2;
21364 : : tmp2 = reg3 ^ reg4;
21365 : : reg_mask = tmp1 & tmp2;
21366 : : reg_mask &= 0xFF;
21367 : :
21368 : : operands[1] = STRIP_UNARY (operands[1]);
21369 : : operands[2] = STRIP_UNARY (operands[2]);
21370 : : operands[6] = STRIP_UNARY (operands[6]);
21371 : : if (!register_operand (operands[2], V8BFmode))
21372 : : operands[2] = force_reg (V8BFmode, operands[2]);
21373 : : if (!register_operand (operands[6], V8BFmode))
21374 : : operands[6] = force_reg (V8BFmode, operands[6]);
21375 : : operands[5] = GEN_INT (reg_mask);
21376 : : }
21377 : : #undef DONE
21378 : : #undef FAIL
21379 : : static const uint8_t expand_encoding[] = {
21380 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21381 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21382 : : 0x25
21383 : : };
21384 : : return complete_seq (expand_encoding, operands);
21385 : : }
21386 : :
21387 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21388 : : extern rtx_insn *gen_split_2216 (rtx_insn *, rtx *);
21389 : : rtx_insn *
21390 : : gen_split_2216 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21391 : : {
21392 : : if (dump_file)
21393 : : fprintf (dump_file, "Splitting with gen_split_2216 (sse.md:14088)\n");
21394 : : start_sequence ();
21395 : : #define FAIL return (end_sequence (), nullptr)
21396 : : #define DONE return end_sequence ()
21397 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21398 : : {
21399 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21400 : : int reg6 = 0xF0;
21401 : : int reg2 = 0xCC;
21402 : : int reg1 = 0xAA;
21403 : : int reg3 = 0;
21404 : : int reg4 = 0;
21405 : : int reg_mask, tmp1, tmp2;
21406 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21407 : : STRIP_UNARY (operands[4])))
21408 : : {
21409 : : reg4 = reg1;
21410 : : reg3 = reg6;
21411 : : operands[6] = operands[3];
21412 : : }
21413 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21414 : : STRIP_UNARY (operands[4])))
21415 : : {
21416 : : reg4 = reg2;
21417 : : reg3 = reg6;
21418 : : operands[6] = operands[3];
21419 : : }
21420 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21421 : : STRIP_UNARY (operands[3])))
21422 : : {
21423 : : reg4 = reg6;
21424 : : reg3 = reg1;
21425 : : operands[6] = operands[4];
21426 : : }
21427 : : else
21428 : : {
21429 : : reg4 = reg6;
21430 : : reg3 = reg2;
21431 : : operands[6] = operands[4];
21432 : : }
21433 : :
21434 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21435 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21436 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21437 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21438 : :
21439 : : tmp1 = reg1 | reg2;
21440 : : tmp2 = reg3 ^ reg4;
21441 : : reg_mask = tmp1 | tmp2;
21442 : : reg_mask &= 0xFF;
21443 : :
21444 : : operands[1] = STRIP_UNARY (operands[1]);
21445 : : operands[2] = STRIP_UNARY (operands[2]);
21446 : : operands[6] = STRIP_UNARY (operands[6]);
21447 : : if (!register_operand (operands[2], V8BFmode))
21448 : : operands[2] = force_reg (V8BFmode, operands[2]);
21449 : : if (!register_operand (operands[6], V8BFmode))
21450 : : operands[6] = force_reg (V8BFmode, operands[6]);
21451 : : operands[5] = GEN_INT (reg_mask);
21452 : : }
21453 : : #undef DONE
21454 : : #undef FAIL
21455 : : static const uint8_t expand_encoding[] = {
21456 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21457 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21458 : : 0x25
21459 : : };
21460 : : return complete_seq (expand_encoding, operands);
21461 : : }
21462 : :
21463 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21464 : : extern rtx_insn *gen_split_2226 (rtx_insn *, rtx *);
21465 : : rtx_insn *
21466 : : gen_split_2226 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21467 : : {
21468 : : if (dump_file)
21469 : : fprintf (dump_file, "Splitting with gen_split_2226 (sse.md:14088)\n");
21470 : : start_sequence ();
21471 : : #define FAIL return (end_sequence (), nullptr)
21472 : : #define DONE return end_sequence ()
21473 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21474 : : {
21475 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21476 : : int reg6 = 0xF0;
21477 : : int reg2 = 0xCC;
21478 : : int reg1 = 0xAA;
21479 : : int reg3 = 0;
21480 : : int reg4 = 0;
21481 : : int reg_mask, tmp1, tmp2;
21482 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21483 : : STRIP_UNARY (operands[4])))
21484 : : {
21485 : : reg4 = reg1;
21486 : : reg3 = reg6;
21487 : : operands[6] = operands[3];
21488 : : }
21489 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21490 : : STRIP_UNARY (operands[4])))
21491 : : {
21492 : : reg4 = reg2;
21493 : : reg3 = reg6;
21494 : : operands[6] = operands[3];
21495 : : }
21496 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21497 : : STRIP_UNARY (operands[3])))
21498 : : {
21499 : : reg4 = reg6;
21500 : : reg3 = reg1;
21501 : : operands[6] = operands[4];
21502 : : }
21503 : : else
21504 : : {
21505 : : reg4 = reg6;
21506 : : reg3 = reg2;
21507 : : operands[6] = operands[4];
21508 : : }
21509 : :
21510 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21511 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21512 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21513 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21514 : :
21515 : : tmp1 = reg1 ^ reg2;
21516 : : tmp2 = reg3 ^ reg4;
21517 : : reg_mask = tmp1 ^ tmp2;
21518 : : reg_mask &= 0xFF;
21519 : :
21520 : : operands[1] = STRIP_UNARY (operands[1]);
21521 : : operands[2] = STRIP_UNARY (operands[2]);
21522 : : operands[6] = STRIP_UNARY (operands[6]);
21523 : : if (!register_operand (operands[2], V8BFmode))
21524 : : operands[2] = force_reg (V8BFmode, operands[2]);
21525 : : if (!register_operand (operands[6], V8BFmode))
21526 : : operands[6] = force_reg (V8BFmode, operands[6]);
21527 : : operands[5] = GEN_INT (reg_mask);
21528 : : }
21529 : : #undef DONE
21530 : : #undef FAIL
21531 : : static const uint8_t expand_encoding[] = {
21532 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21533 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21534 : : 0x25
21535 : : };
21536 : : return complete_seq (expand_encoding, operands);
21537 : : }
21538 : :
21539 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21540 : : extern rtx_insn *gen_split_2236 (rtx_insn *, rtx *);
21541 : : rtx_insn *
21542 : : gen_split_2236 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21543 : : {
21544 : : if (dump_file)
21545 : : fprintf (dump_file, "Splitting with gen_split_2236 (sse.md:14088)\n");
21546 : : start_sequence ();
21547 : : #define FAIL return (end_sequence (), nullptr)
21548 : : #define DONE return end_sequence ()
21549 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21550 : : {
21551 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21552 : : int reg6 = 0xF0;
21553 : : int reg2 = 0xCC;
21554 : : int reg1 = 0xAA;
21555 : : int reg3 = 0;
21556 : : int reg4 = 0;
21557 : : int reg_mask, tmp1, tmp2;
21558 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21559 : : STRIP_UNARY (operands[4])))
21560 : : {
21561 : : reg4 = reg1;
21562 : : reg3 = reg6;
21563 : : operands[6] = operands[3];
21564 : : }
21565 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21566 : : STRIP_UNARY (operands[4])))
21567 : : {
21568 : : reg4 = reg2;
21569 : : reg3 = reg6;
21570 : : operands[6] = operands[3];
21571 : : }
21572 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21573 : : STRIP_UNARY (operands[3])))
21574 : : {
21575 : : reg4 = reg6;
21576 : : reg3 = reg1;
21577 : : operands[6] = operands[4];
21578 : : }
21579 : : else
21580 : : {
21581 : : reg4 = reg6;
21582 : : reg3 = reg2;
21583 : : operands[6] = operands[4];
21584 : : }
21585 : :
21586 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21587 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21588 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21589 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21590 : :
21591 : : tmp1 = reg1 | reg2;
21592 : : tmp2 = reg3 & reg4;
21593 : : reg_mask = tmp1 & tmp2;
21594 : : reg_mask &= 0xFF;
21595 : :
21596 : : operands[1] = STRIP_UNARY (operands[1]);
21597 : : operands[2] = STRIP_UNARY (operands[2]);
21598 : : operands[6] = STRIP_UNARY (operands[6]);
21599 : : if (!register_operand (operands[2], V16SFmode))
21600 : : operands[2] = force_reg (V16SFmode, operands[2]);
21601 : : if (!register_operand (operands[6], V16SFmode))
21602 : : operands[6] = force_reg (V16SFmode, operands[6]);
21603 : : operands[5] = GEN_INT (reg_mask);
21604 : : }
21605 : : #undef DONE
21606 : : #undef FAIL
21607 : : static const uint8_t expand_encoding[] = {
21608 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21609 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21610 : : 0x25
21611 : : };
21612 : : return complete_seq (expand_encoding, operands);
21613 : : }
21614 : :
21615 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21616 : : extern rtx_insn *gen_split_2246 (rtx_insn *, rtx *);
21617 : : rtx_insn *
21618 : : gen_split_2246 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21619 : : {
21620 : : if (dump_file)
21621 : : fprintf (dump_file, "Splitting with gen_split_2246 (sse.md:14088)\n");
21622 : : start_sequence ();
21623 : : #define FAIL return (end_sequence (), nullptr)
21624 : : #define DONE return end_sequence ()
21625 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21626 : : {
21627 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21628 : : int reg6 = 0xF0;
21629 : : int reg2 = 0xCC;
21630 : : int reg1 = 0xAA;
21631 : : int reg3 = 0;
21632 : : int reg4 = 0;
21633 : : int reg_mask, tmp1, tmp2;
21634 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21635 : : STRIP_UNARY (operands[4])))
21636 : : {
21637 : : reg4 = reg1;
21638 : : reg3 = reg6;
21639 : : operands[6] = operands[3];
21640 : : }
21641 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21642 : : STRIP_UNARY (operands[4])))
21643 : : {
21644 : : reg4 = reg2;
21645 : : reg3 = reg6;
21646 : : operands[6] = operands[3];
21647 : : }
21648 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21649 : : STRIP_UNARY (operands[3])))
21650 : : {
21651 : : reg4 = reg6;
21652 : : reg3 = reg1;
21653 : : operands[6] = operands[4];
21654 : : }
21655 : : else
21656 : : {
21657 : : reg4 = reg6;
21658 : : reg3 = reg2;
21659 : : operands[6] = operands[4];
21660 : : }
21661 : :
21662 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21663 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21664 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21665 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21666 : :
21667 : : tmp1 = reg1 ^ reg2;
21668 : : tmp2 = reg3 & reg4;
21669 : : reg_mask = tmp1 | tmp2;
21670 : : reg_mask &= 0xFF;
21671 : :
21672 : : operands[1] = STRIP_UNARY (operands[1]);
21673 : : operands[2] = STRIP_UNARY (operands[2]);
21674 : : operands[6] = STRIP_UNARY (operands[6]);
21675 : : if (!register_operand (operands[2], V16SFmode))
21676 : : operands[2] = force_reg (V16SFmode, operands[2]);
21677 : : if (!register_operand (operands[6], V16SFmode))
21678 : : operands[6] = force_reg (V16SFmode, operands[6]);
21679 : : operands[5] = GEN_INT (reg_mask);
21680 : : }
21681 : : #undef DONE
21682 : : #undef FAIL
21683 : : static const uint8_t expand_encoding[] = {
21684 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21685 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21686 : : 0x25
21687 : : };
21688 : : return complete_seq (expand_encoding, operands);
21689 : : }
21690 : :
21691 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21692 : : extern rtx_insn *gen_split_2256 (rtx_insn *, rtx *);
21693 : : rtx_insn *
21694 : : gen_split_2256 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21695 : : {
21696 : : if (dump_file)
21697 : : fprintf (dump_file, "Splitting with gen_split_2256 (sse.md:14088)\n");
21698 : : start_sequence ();
21699 : : #define FAIL return (end_sequence (), nullptr)
21700 : : #define DONE return end_sequence ()
21701 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21702 : : {
21703 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21704 : : int reg6 = 0xF0;
21705 : : int reg2 = 0xCC;
21706 : : int reg1 = 0xAA;
21707 : : int reg3 = 0;
21708 : : int reg4 = 0;
21709 : : int reg_mask, tmp1, tmp2;
21710 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21711 : : STRIP_UNARY (operands[4])))
21712 : : {
21713 : : reg4 = reg1;
21714 : : reg3 = reg6;
21715 : : operands[6] = operands[3];
21716 : : }
21717 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21718 : : STRIP_UNARY (operands[4])))
21719 : : {
21720 : : reg4 = reg2;
21721 : : reg3 = reg6;
21722 : : operands[6] = operands[3];
21723 : : }
21724 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21725 : : STRIP_UNARY (operands[3])))
21726 : : {
21727 : : reg4 = reg6;
21728 : : reg3 = reg1;
21729 : : operands[6] = operands[4];
21730 : : }
21731 : : else
21732 : : {
21733 : : reg4 = reg6;
21734 : : reg3 = reg2;
21735 : : operands[6] = operands[4];
21736 : : }
21737 : :
21738 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21739 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21740 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21741 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21742 : :
21743 : : tmp1 = reg1 & reg2;
21744 : : tmp2 = reg3 & reg4;
21745 : : reg_mask = tmp1 ^ tmp2;
21746 : : reg_mask &= 0xFF;
21747 : :
21748 : : operands[1] = STRIP_UNARY (operands[1]);
21749 : : operands[2] = STRIP_UNARY (operands[2]);
21750 : : operands[6] = STRIP_UNARY (operands[6]);
21751 : : if (!register_operand (operands[2], V8SFmode))
21752 : : operands[2] = force_reg (V8SFmode, operands[2]);
21753 : : if (!register_operand (operands[6], V8SFmode))
21754 : : operands[6] = force_reg (V8SFmode, operands[6]);
21755 : : operands[5] = GEN_INT (reg_mask);
21756 : : }
21757 : : #undef DONE
21758 : : #undef FAIL
21759 : : static const uint8_t expand_encoding[] = {
21760 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21761 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21762 : : 0x25
21763 : : };
21764 : : return complete_seq (expand_encoding, operands);
21765 : : }
21766 : :
21767 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21768 : : extern rtx_insn *gen_split_2266 (rtx_insn *, rtx *);
21769 : : rtx_insn *
21770 : : gen_split_2266 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21771 : : {
21772 : : if (dump_file)
21773 : : fprintf (dump_file, "Splitting with gen_split_2266 (sse.md:14088)\n");
21774 : : start_sequence ();
21775 : : #define FAIL return (end_sequence (), nullptr)
21776 : : #define DONE return end_sequence ()
21777 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21778 : : {
21779 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21780 : : int reg6 = 0xF0;
21781 : : int reg2 = 0xCC;
21782 : : int reg1 = 0xAA;
21783 : : int reg3 = 0;
21784 : : int reg4 = 0;
21785 : : int reg_mask, tmp1, tmp2;
21786 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21787 : : STRIP_UNARY (operands[4])))
21788 : : {
21789 : : reg4 = reg1;
21790 : : reg3 = reg6;
21791 : : operands[6] = operands[3];
21792 : : }
21793 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21794 : : STRIP_UNARY (operands[4])))
21795 : : {
21796 : : reg4 = reg2;
21797 : : reg3 = reg6;
21798 : : operands[6] = operands[3];
21799 : : }
21800 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21801 : : STRIP_UNARY (operands[3])))
21802 : : {
21803 : : reg4 = reg6;
21804 : : reg3 = reg1;
21805 : : operands[6] = operands[4];
21806 : : }
21807 : : else
21808 : : {
21809 : : reg4 = reg6;
21810 : : reg3 = reg2;
21811 : : operands[6] = operands[4];
21812 : : }
21813 : :
21814 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21815 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21816 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21817 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21818 : :
21819 : : tmp1 = reg1 | reg2;
21820 : : tmp2 = reg3 | reg4;
21821 : : reg_mask = tmp1 & tmp2;
21822 : : reg_mask &= 0xFF;
21823 : :
21824 : : operands[1] = STRIP_UNARY (operands[1]);
21825 : : operands[2] = STRIP_UNARY (operands[2]);
21826 : : operands[6] = STRIP_UNARY (operands[6]);
21827 : : if (!register_operand (operands[2], V8SFmode))
21828 : : operands[2] = force_reg (V8SFmode, operands[2]);
21829 : : if (!register_operand (operands[6], V8SFmode))
21830 : : operands[6] = force_reg (V8SFmode, operands[6]);
21831 : : operands[5] = GEN_INT (reg_mask);
21832 : : }
21833 : : #undef DONE
21834 : : #undef FAIL
21835 : : static const uint8_t expand_encoding[] = {
21836 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21837 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21838 : : 0x25
21839 : : };
21840 : : return complete_seq (expand_encoding, operands);
21841 : : }
21842 : :
21843 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21844 : : extern rtx_insn *gen_split_2276 (rtx_insn *, rtx *);
21845 : : rtx_insn *
21846 : : gen_split_2276 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21847 : : {
21848 : : if (dump_file)
21849 : : fprintf (dump_file, "Splitting with gen_split_2276 (sse.md:14088)\n");
21850 : : start_sequence ();
21851 : : #define FAIL return (end_sequence (), nullptr)
21852 : : #define DONE return end_sequence ()
21853 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21854 : : {
21855 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21856 : : int reg6 = 0xF0;
21857 : : int reg2 = 0xCC;
21858 : : int reg1 = 0xAA;
21859 : : int reg3 = 0;
21860 : : int reg4 = 0;
21861 : : int reg_mask, tmp1, tmp2;
21862 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21863 : : STRIP_UNARY (operands[4])))
21864 : : {
21865 : : reg4 = reg1;
21866 : : reg3 = reg6;
21867 : : operands[6] = operands[3];
21868 : : }
21869 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21870 : : STRIP_UNARY (operands[4])))
21871 : : {
21872 : : reg4 = reg2;
21873 : : reg3 = reg6;
21874 : : operands[6] = operands[3];
21875 : : }
21876 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21877 : : STRIP_UNARY (operands[3])))
21878 : : {
21879 : : reg4 = reg6;
21880 : : reg3 = reg1;
21881 : : operands[6] = operands[4];
21882 : : }
21883 : : else
21884 : : {
21885 : : reg4 = reg6;
21886 : : reg3 = reg2;
21887 : : operands[6] = operands[4];
21888 : : }
21889 : :
21890 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21891 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21892 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21893 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21894 : :
21895 : : tmp1 = reg1 ^ reg2;
21896 : : tmp2 = reg3 | reg4;
21897 : : reg_mask = tmp1 | tmp2;
21898 : : reg_mask &= 0xFF;
21899 : :
21900 : : operands[1] = STRIP_UNARY (operands[1]);
21901 : : operands[2] = STRIP_UNARY (operands[2]);
21902 : : operands[6] = STRIP_UNARY (operands[6]);
21903 : : if (!register_operand (operands[2], V8SFmode))
21904 : : operands[2] = force_reg (V8SFmode, operands[2]);
21905 : : if (!register_operand (operands[6], V8SFmode))
21906 : : operands[6] = force_reg (V8SFmode, operands[6]);
21907 : : operands[5] = GEN_INT (reg_mask);
21908 : : }
21909 : : #undef DONE
21910 : : #undef FAIL
21911 : : static const uint8_t expand_encoding[] = {
21912 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21913 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21914 : : 0x25
21915 : : };
21916 : : return complete_seq (expand_encoding, operands);
21917 : : }
21918 : :
21919 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21920 : : extern rtx_insn *gen_split_2286 (rtx_insn *, rtx *);
21921 : : rtx_insn *
21922 : : gen_split_2286 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21923 : : {
21924 : : if (dump_file)
21925 : : fprintf (dump_file, "Splitting with gen_split_2286 (sse.md:14088)\n");
21926 : : start_sequence ();
21927 : : #define FAIL return (end_sequence (), nullptr)
21928 : : #define DONE return end_sequence ()
21929 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21930 : : {
21931 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21932 : : int reg6 = 0xF0;
21933 : : int reg2 = 0xCC;
21934 : : int reg1 = 0xAA;
21935 : : int reg3 = 0;
21936 : : int reg4 = 0;
21937 : : int reg_mask, tmp1, tmp2;
21938 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21939 : : STRIP_UNARY (operands[4])))
21940 : : {
21941 : : reg4 = reg1;
21942 : : reg3 = reg6;
21943 : : operands[6] = operands[3];
21944 : : }
21945 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21946 : : STRIP_UNARY (operands[4])))
21947 : : {
21948 : : reg4 = reg2;
21949 : : reg3 = reg6;
21950 : : operands[6] = operands[3];
21951 : : }
21952 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21953 : : STRIP_UNARY (operands[3])))
21954 : : {
21955 : : reg4 = reg6;
21956 : : reg3 = reg1;
21957 : : operands[6] = operands[4];
21958 : : }
21959 : : else
21960 : : {
21961 : : reg4 = reg6;
21962 : : reg3 = reg2;
21963 : : operands[6] = operands[4];
21964 : : }
21965 : :
21966 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21967 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21968 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21969 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21970 : :
21971 : : tmp1 = reg1 & reg2;
21972 : : tmp2 = reg3 | reg4;
21973 : : reg_mask = tmp1 ^ tmp2;
21974 : : reg_mask &= 0xFF;
21975 : :
21976 : : operands[1] = STRIP_UNARY (operands[1]);
21977 : : operands[2] = STRIP_UNARY (operands[2]);
21978 : : operands[6] = STRIP_UNARY (operands[6]);
21979 : : if (!register_operand (operands[2], V4SFmode))
21980 : : operands[2] = force_reg (V4SFmode, operands[2]);
21981 : : if (!register_operand (operands[6], V4SFmode))
21982 : : operands[6] = force_reg (V4SFmode, operands[6]);
21983 : : operands[5] = GEN_INT (reg_mask);
21984 : : }
21985 : : #undef DONE
21986 : : #undef FAIL
21987 : : static const uint8_t expand_encoding[] = {
21988 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
21989 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21990 : : 0x25
21991 : : };
21992 : : return complete_seq (expand_encoding, operands);
21993 : : }
21994 : :
21995 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
21996 : : extern rtx_insn *gen_split_2296 (rtx_insn *, rtx *);
21997 : : rtx_insn *
21998 : : gen_split_2296 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21999 : : {
22000 : : if (dump_file)
22001 : : fprintf (dump_file, "Splitting with gen_split_2296 (sse.md:14088)\n");
22002 : : start_sequence ();
22003 : : #define FAIL return (end_sequence (), nullptr)
22004 : : #define DONE return end_sequence ()
22005 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22006 : : {
22007 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22008 : : int reg6 = 0xF0;
22009 : : int reg2 = 0xCC;
22010 : : int reg1 = 0xAA;
22011 : : int reg3 = 0;
22012 : : int reg4 = 0;
22013 : : int reg_mask, tmp1, tmp2;
22014 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22015 : : STRIP_UNARY (operands[4])))
22016 : : {
22017 : : reg4 = reg1;
22018 : : reg3 = reg6;
22019 : : operands[6] = operands[3];
22020 : : }
22021 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22022 : : STRIP_UNARY (operands[4])))
22023 : : {
22024 : : reg4 = reg2;
22025 : : reg3 = reg6;
22026 : : operands[6] = operands[3];
22027 : : }
22028 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22029 : : STRIP_UNARY (operands[3])))
22030 : : {
22031 : : reg4 = reg6;
22032 : : reg3 = reg1;
22033 : : operands[6] = operands[4];
22034 : : }
22035 : : else
22036 : : {
22037 : : reg4 = reg6;
22038 : : reg3 = reg2;
22039 : : operands[6] = operands[4];
22040 : : }
22041 : :
22042 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22043 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22044 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22045 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22046 : :
22047 : : tmp1 = reg1 | reg2;
22048 : : tmp2 = reg3 ^ reg4;
22049 : : reg_mask = tmp1 & tmp2;
22050 : : reg_mask &= 0xFF;
22051 : :
22052 : : operands[1] = STRIP_UNARY (operands[1]);
22053 : : operands[2] = STRIP_UNARY (operands[2]);
22054 : : operands[6] = STRIP_UNARY (operands[6]);
22055 : : if (!register_operand (operands[2], V4SFmode))
22056 : : operands[2] = force_reg (V4SFmode, operands[2]);
22057 : : if (!register_operand (operands[6], V4SFmode))
22058 : : operands[6] = force_reg (V4SFmode, operands[6]);
22059 : : operands[5] = GEN_INT (reg_mask);
22060 : : }
22061 : : #undef DONE
22062 : : #undef FAIL
22063 : : static const uint8_t expand_encoding[] = {
22064 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
22065 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22066 : : 0x25
22067 : : };
22068 : : return complete_seq (expand_encoding, operands);
22069 : : }
22070 : :
22071 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22072 : : extern rtx_insn *gen_split_2306 (rtx_insn *, rtx *);
22073 : : rtx_insn *
22074 : : gen_split_2306 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22075 : : {
22076 : : if (dump_file)
22077 : : fprintf (dump_file, "Splitting with gen_split_2306 (sse.md:14088)\n");
22078 : : start_sequence ();
22079 : : #define FAIL return (end_sequence (), nullptr)
22080 : : #define DONE return end_sequence ()
22081 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22082 : : {
22083 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22084 : : int reg6 = 0xF0;
22085 : : int reg2 = 0xCC;
22086 : : int reg1 = 0xAA;
22087 : : int reg3 = 0;
22088 : : int reg4 = 0;
22089 : : int reg_mask, tmp1, tmp2;
22090 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22091 : : STRIP_UNARY (operands[4])))
22092 : : {
22093 : : reg4 = reg1;
22094 : : reg3 = reg6;
22095 : : operands[6] = operands[3];
22096 : : }
22097 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22098 : : STRIP_UNARY (operands[4])))
22099 : : {
22100 : : reg4 = reg2;
22101 : : reg3 = reg6;
22102 : : operands[6] = operands[3];
22103 : : }
22104 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22105 : : STRIP_UNARY (operands[3])))
22106 : : {
22107 : : reg4 = reg6;
22108 : : reg3 = reg1;
22109 : : operands[6] = operands[4];
22110 : : }
22111 : : else
22112 : : {
22113 : : reg4 = reg6;
22114 : : reg3 = reg2;
22115 : : operands[6] = operands[4];
22116 : : }
22117 : :
22118 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22119 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22120 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22121 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22122 : :
22123 : : tmp1 = reg1 ^ reg2;
22124 : : tmp2 = reg3 ^ reg4;
22125 : : reg_mask = tmp1 | tmp2;
22126 : : reg_mask &= 0xFF;
22127 : :
22128 : : operands[1] = STRIP_UNARY (operands[1]);
22129 : : operands[2] = STRIP_UNARY (operands[2]);
22130 : : operands[6] = STRIP_UNARY (operands[6]);
22131 : : if (!register_operand (operands[2], V4SFmode))
22132 : : operands[2] = force_reg (V4SFmode, operands[2]);
22133 : : if (!register_operand (operands[6], V4SFmode))
22134 : : operands[6] = force_reg (V4SFmode, operands[6]);
22135 : : operands[5] = GEN_INT (reg_mask);
22136 : : }
22137 : : #undef DONE
22138 : : #undef FAIL
22139 : : static const uint8_t expand_encoding[] = {
22140 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
22141 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22142 : : 0x25
22143 : : };
22144 : : return complete_seq (expand_encoding, operands);
22145 : : }
22146 : :
22147 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22148 : : extern rtx_insn *gen_split_2316 (rtx_insn *, rtx *);
22149 : : rtx_insn *
22150 : : gen_split_2316 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22151 : : {
22152 : : if (dump_file)
22153 : : fprintf (dump_file, "Splitting with gen_split_2316 (sse.md:14088)\n");
22154 : : start_sequence ();
22155 : : #define FAIL return (end_sequence (), nullptr)
22156 : : #define DONE return end_sequence ()
22157 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22158 : : {
22159 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22160 : : int reg6 = 0xF0;
22161 : : int reg2 = 0xCC;
22162 : : int reg1 = 0xAA;
22163 : : int reg3 = 0;
22164 : : int reg4 = 0;
22165 : : int reg_mask, tmp1, tmp2;
22166 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22167 : : STRIP_UNARY (operands[4])))
22168 : : {
22169 : : reg4 = reg1;
22170 : : reg3 = reg6;
22171 : : operands[6] = operands[3];
22172 : : }
22173 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22174 : : STRIP_UNARY (operands[4])))
22175 : : {
22176 : : reg4 = reg2;
22177 : : reg3 = reg6;
22178 : : operands[6] = operands[3];
22179 : : }
22180 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22181 : : STRIP_UNARY (operands[3])))
22182 : : {
22183 : : reg4 = reg6;
22184 : : reg3 = reg1;
22185 : : operands[6] = operands[4];
22186 : : }
22187 : : else
22188 : : {
22189 : : reg4 = reg6;
22190 : : reg3 = reg2;
22191 : : operands[6] = operands[4];
22192 : : }
22193 : :
22194 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22195 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22196 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22197 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22198 : :
22199 : : tmp1 = reg1 & reg2;
22200 : : tmp2 = reg3 ^ reg4;
22201 : : reg_mask = tmp1 ^ tmp2;
22202 : : reg_mask &= 0xFF;
22203 : :
22204 : : operands[1] = STRIP_UNARY (operands[1]);
22205 : : operands[2] = STRIP_UNARY (operands[2]);
22206 : : operands[6] = STRIP_UNARY (operands[6]);
22207 : : if (!register_operand (operands[2], V8DFmode))
22208 : : operands[2] = force_reg (V8DFmode, operands[2]);
22209 : : if (!register_operand (operands[6], V8DFmode))
22210 : : operands[6] = force_reg (V8DFmode, operands[6]);
22211 : : operands[5] = GEN_INT (reg_mask);
22212 : : }
22213 : : #undef DONE
22214 : : #undef FAIL
22215 : : static const uint8_t expand_encoding[] = {
22216 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22217 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22218 : : 0x25
22219 : : };
22220 : : return complete_seq (expand_encoding, operands);
22221 : : }
22222 : :
22223 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22224 : : extern rtx_insn *gen_split_2326 (rtx_insn *, rtx *);
22225 : : rtx_insn *
22226 : : gen_split_2326 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22227 : : {
22228 : : if (dump_file)
22229 : : fprintf (dump_file, "Splitting with gen_split_2326 (sse.md:14088)\n");
22230 : : start_sequence ();
22231 : : #define FAIL return (end_sequence (), nullptr)
22232 : : #define DONE return end_sequence ()
22233 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22234 : : {
22235 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22236 : : int reg6 = 0xF0;
22237 : : int reg2 = 0xCC;
22238 : : int reg1 = 0xAA;
22239 : : int reg3 = 0;
22240 : : int reg4 = 0;
22241 : : int reg_mask, tmp1, tmp2;
22242 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22243 : : STRIP_UNARY (operands[4])))
22244 : : {
22245 : : reg4 = reg1;
22246 : : reg3 = reg6;
22247 : : operands[6] = operands[3];
22248 : : }
22249 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22250 : : STRIP_UNARY (operands[4])))
22251 : : {
22252 : : reg4 = reg2;
22253 : : reg3 = reg6;
22254 : : operands[6] = operands[3];
22255 : : }
22256 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22257 : : STRIP_UNARY (operands[3])))
22258 : : {
22259 : : reg4 = reg6;
22260 : : reg3 = reg1;
22261 : : operands[6] = operands[4];
22262 : : }
22263 : : else
22264 : : {
22265 : : reg4 = reg6;
22266 : : reg3 = reg2;
22267 : : operands[6] = operands[4];
22268 : : }
22269 : :
22270 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22271 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22272 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22273 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22274 : :
22275 : : tmp1 = reg1 ^ reg2;
22276 : : tmp2 = reg3 & reg4;
22277 : : reg_mask = tmp1 & tmp2;
22278 : : reg_mask &= 0xFF;
22279 : :
22280 : : operands[1] = STRIP_UNARY (operands[1]);
22281 : : operands[2] = STRIP_UNARY (operands[2]);
22282 : : operands[6] = STRIP_UNARY (operands[6]);
22283 : : if (!register_operand (operands[2], V8DFmode))
22284 : : operands[2] = force_reg (V8DFmode, operands[2]);
22285 : : if (!register_operand (operands[6], V8DFmode))
22286 : : operands[6] = force_reg (V8DFmode, operands[6]);
22287 : : operands[5] = GEN_INT (reg_mask);
22288 : : }
22289 : : #undef DONE
22290 : : #undef FAIL
22291 : : static const uint8_t expand_encoding[] = {
22292 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22293 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22294 : : 0x25
22295 : : };
22296 : : return complete_seq (expand_encoding, operands);
22297 : : }
22298 : :
22299 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22300 : : extern rtx_insn *gen_split_2336 (rtx_insn *, rtx *);
22301 : : rtx_insn *
22302 : : gen_split_2336 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22303 : : {
22304 : : if (dump_file)
22305 : : fprintf (dump_file, "Splitting with gen_split_2336 (sse.md:14088)\n");
22306 : : start_sequence ();
22307 : : #define FAIL return (end_sequence (), nullptr)
22308 : : #define DONE return end_sequence ()
22309 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22310 : : {
22311 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22312 : : int reg6 = 0xF0;
22313 : : int reg2 = 0xCC;
22314 : : int reg1 = 0xAA;
22315 : : int reg3 = 0;
22316 : : int reg4 = 0;
22317 : : int reg_mask, tmp1, tmp2;
22318 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22319 : : STRIP_UNARY (operands[4])))
22320 : : {
22321 : : reg4 = reg1;
22322 : : reg3 = reg6;
22323 : : operands[6] = operands[3];
22324 : : }
22325 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22326 : : STRIP_UNARY (operands[4])))
22327 : : {
22328 : : reg4 = reg2;
22329 : : reg3 = reg6;
22330 : : operands[6] = operands[3];
22331 : : }
22332 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22333 : : STRIP_UNARY (operands[3])))
22334 : : {
22335 : : reg4 = reg6;
22336 : : reg3 = reg1;
22337 : : operands[6] = operands[4];
22338 : : }
22339 : : else
22340 : : {
22341 : : reg4 = reg6;
22342 : : reg3 = reg2;
22343 : : operands[6] = operands[4];
22344 : : }
22345 : :
22346 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22347 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22348 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22349 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22350 : :
22351 : : tmp1 = reg1 & reg2;
22352 : : tmp2 = reg3 & reg4;
22353 : : reg_mask = tmp1 | tmp2;
22354 : : reg_mask &= 0xFF;
22355 : :
22356 : : operands[1] = STRIP_UNARY (operands[1]);
22357 : : operands[2] = STRIP_UNARY (operands[2]);
22358 : : operands[6] = STRIP_UNARY (operands[6]);
22359 : : if (!register_operand (operands[2], V4DFmode))
22360 : : operands[2] = force_reg (V4DFmode, operands[2]);
22361 : : if (!register_operand (operands[6], V4DFmode))
22362 : : operands[6] = force_reg (V4DFmode, operands[6]);
22363 : : operands[5] = GEN_INT (reg_mask);
22364 : : }
22365 : : #undef DONE
22366 : : #undef FAIL
22367 : : static const uint8_t expand_encoding[] = {
22368 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22369 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22370 : : 0x25
22371 : : };
22372 : : return complete_seq (expand_encoding, operands);
22373 : : }
22374 : :
22375 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22376 : : extern rtx_insn *gen_split_2346 (rtx_insn *, rtx *);
22377 : : rtx_insn *
22378 : : gen_split_2346 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22379 : : {
22380 : : if (dump_file)
22381 : : fprintf (dump_file, "Splitting with gen_split_2346 (sse.md:14088)\n");
22382 : : start_sequence ();
22383 : : #define FAIL return (end_sequence (), nullptr)
22384 : : #define DONE return end_sequence ()
22385 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22386 : : {
22387 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22388 : : int reg6 = 0xF0;
22389 : : int reg2 = 0xCC;
22390 : : int reg1 = 0xAA;
22391 : : int reg3 = 0;
22392 : : int reg4 = 0;
22393 : : int reg_mask, tmp1, tmp2;
22394 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22395 : : STRIP_UNARY (operands[4])))
22396 : : {
22397 : : reg4 = reg1;
22398 : : reg3 = reg6;
22399 : : operands[6] = operands[3];
22400 : : }
22401 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22402 : : STRIP_UNARY (operands[4])))
22403 : : {
22404 : : reg4 = reg2;
22405 : : reg3 = reg6;
22406 : : operands[6] = operands[3];
22407 : : }
22408 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22409 : : STRIP_UNARY (operands[3])))
22410 : : {
22411 : : reg4 = reg6;
22412 : : reg3 = reg1;
22413 : : operands[6] = operands[4];
22414 : : }
22415 : : else
22416 : : {
22417 : : reg4 = reg6;
22418 : : reg3 = reg2;
22419 : : operands[6] = operands[4];
22420 : : }
22421 : :
22422 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22423 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22424 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22425 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22426 : :
22427 : : tmp1 = reg1 | reg2;
22428 : : tmp2 = reg3 & reg4;
22429 : : reg_mask = tmp1 ^ tmp2;
22430 : : reg_mask &= 0xFF;
22431 : :
22432 : : operands[1] = STRIP_UNARY (operands[1]);
22433 : : operands[2] = STRIP_UNARY (operands[2]);
22434 : : operands[6] = STRIP_UNARY (operands[6]);
22435 : : if (!register_operand (operands[2], V4DFmode))
22436 : : operands[2] = force_reg (V4DFmode, operands[2]);
22437 : : if (!register_operand (operands[6], V4DFmode))
22438 : : operands[6] = force_reg (V4DFmode, operands[6]);
22439 : : operands[5] = GEN_INT (reg_mask);
22440 : : }
22441 : : #undef DONE
22442 : : #undef FAIL
22443 : : static const uint8_t expand_encoding[] = {
22444 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22445 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22446 : : 0x25
22447 : : };
22448 : : return complete_seq (expand_encoding, operands);
22449 : : }
22450 : :
22451 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22452 : : extern rtx_insn *gen_split_2356 (rtx_insn *, rtx *);
22453 : : rtx_insn *
22454 : : gen_split_2356 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22455 : : {
22456 : : if (dump_file)
22457 : : fprintf (dump_file, "Splitting with gen_split_2356 (sse.md:14088)\n");
22458 : : start_sequence ();
22459 : : #define FAIL return (end_sequence (), nullptr)
22460 : : #define DONE return end_sequence ()
22461 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22462 : : {
22463 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22464 : : int reg6 = 0xF0;
22465 : : int reg2 = 0xCC;
22466 : : int reg1 = 0xAA;
22467 : : int reg3 = 0;
22468 : : int reg4 = 0;
22469 : : int reg_mask, tmp1, tmp2;
22470 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22471 : : STRIP_UNARY (operands[4])))
22472 : : {
22473 : : reg4 = reg1;
22474 : : reg3 = reg6;
22475 : : operands[6] = operands[3];
22476 : : }
22477 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22478 : : STRIP_UNARY (operands[4])))
22479 : : {
22480 : : reg4 = reg2;
22481 : : reg3 = reg6;
22482 : : operands[6] = operands[3];
22483 : : }
22484 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22485 : : STRIP_UNARY (operands[3])))
22486 : : {
22487 : : reg4 = reg6;
22488 : : reg3 = reg1;
22489 : : operands[6] = operands[4];
22490 : : }
22491 : : else
22492 : : {
22493 : : reg4 = reg6;
22494 : : reg3 = reg2;
22495 : : operands[6] = operands[4];
22496 : : }
22497 : :
22498 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22499 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22500 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22501 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22502 : :
22503 : : tmp1 = reg1 ^ reg2;
22504 : : tmp2 = reg3 | reg4;
22505 : : reg_mask = tmp1 & tmp2;
22506 : : reg_mask &= 0xFF;
22507 : :
22508 : : operands[1] = STRIP_UNARY (operands[1]);
22509 : : operands[2] = STRIP_UNARY (operands[2]);
22510 : : operands[6] = STRIP_UNARY (operands[6]);
22511 : : if (!register_operand (operands[2], V4DFmode))
22512 : : operands[2] = force_reg (V4DFmode, operands[2]);
22513 : : if (!register_operand (operands[6], V4DFmode))
22514 : : operands[6] = force_reg (V4DFmode, operands[6]);
22515 : : operands[5] = GEN_INT (reg_mask);
22516 : : }
22517 : : #undef DONE
22518 : : #undef FAIL
22519 : : static const uint8_t expand_encoding[] = {
22520 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22521 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22522 : : 0x25
22523 : : };
22524 : : return complete_seq (expand_encoding, operands);
22525 : : }
22526 : :
22527 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22528 : : extern rtx_insn *gen_split_2366 (rtx_insn *, rtx *);
22529 : : rtx_insn *
22530 : : gen_split_2366 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22531 : : {
22532 : : if (dump_file)
22533 : : fprintf (dump_file, "Splitting with gen_split_2366 (sse.md:14088)\n");
22534 : : start_sequence ();
22535 : : #define FAIL return (end_sequence (), nullptr)
22536 : : #define DONE return end_sequence ()
22537 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22538 : : {
22539 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22540 : : int reg6 = 0xF0;
22541 : : int reg2 = 0xCC;
22542 : : int reg1 = 0xAA;
22543 : : int reg3 = 0;
22544 : : int reg4 = 0;
22545 : : int reg_mask, tmp1, tmp2;
22546 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22547 : : STRIP_UNARY (operands[4])))
22548 : : {
22549 : : reg4 = reg1;
22550 : : reg3 = reg6;
22551 : : operands[6] = operands[3];
22552 : : }
22553 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22554 : : STRIP_UNARY (operands[4])))
22555 : : {
22556 : : reg4 = reg2;
22557 : : reg3 = reg6;
22558 : : operands[6] = operands[3];
22559 : : }
22560 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22561 : : STRIP_UNARY (operands[3])))
22562 : : {
22563 : : reg4 = reg6;
22564 : : reg3 = reg1;
22565 : : operands[6] = operands[4];
22566 : : }
22567 : : else
22568 : : {
22569 : : reg4 = reg6;
22570 : : reg3 = reg2;
22571 : : operands[6] = operands[4];
22572 : : }
22573 : :
22574 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22575 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22576 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22577 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22578 : :
22579 : : tmp1 = reg1 & reg2;
22580 : : tmp2 = reg3 | reg4;
22581 : : reg_mask = tmp1 | tmp2;
22582 : : reg_mask &= 0xFF;
22583 : :
22584 : : operands[1] = STRIP_UNARY (operands[1]);
22585 : : operands[2] = STRIP_UNARY (operands[2]);
22586 : : operands[6] = STRIP_UNARY (operands[6]);
22587 : : if (!register_operand (operands[2], V2DFmode))
22588 : : operands[2] = force_reg (V2DFmode, operands[2]);
22589 : : if (!register_operand (operands[6], V2DFmode))
22590 : : operands[6] = force_reg (V2DFmode, operands[6]);
22591 : : operands[5] = GEN_INT (reg_mask);
22592 : : }
22593 : : #undef DONE
22594 : : #undef FAIL
22595 : : static const uint8_t expand_encoding[] = {
22596 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22597 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22598 : : 0x25
22599 : : };
22600 : : return complete_seq (expand_encoding, operands);
22601 : : }
22602 : :
22603 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22604 : : extern rtx_insn *gen_split_2376 (rtx_insn *, rtx *);
22605 : : rtx_insn *
22606 : : gen_split_2376 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22607 : : {
22608 : : if (dump_file)
22609 : : fprintf (dump_file, "Splitting with gen_split_2376 (sse.md:14088)\n");
22610 : : start_sequence ();
22611 : : #define FAIL return (end_sequence (), nullptr)
22612 : : #define DONE return end_sequence ()
22613 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22614 : : {
22615 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22616 : : int reg6 = 0xF0;
22617 : : int reg2 = 0xCC;
22618 : : int reg1 = 0xAA;
22619 : : int reg3 = 0;
22620 : : int reg4 = 0;
22621 : : int reg_mask, tmp1, tmp2;
22622 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22623 : : STRIP_UNARY (operands[4])))
22624 : : {
22625 : : reg4 = reg1;
22626 : : reg3 = reg6;
22627 : : operands[6] = operands[3];
22628 : : }
22629 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22630 : : STRIP_UNARY (operands[4])))
22631 : : {
22632 : : reg4 = reg2;
22633 : : reg3 = reg6;
22634 : : operands[6] = operands[3];
22635 : : }
22636 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22637 : : STRIP_UNARY (operands[3])))
22638 : : {
22639 : : reg4 = reg6;
22640 : : reg3 = reg1;
22641 : : operands[6] = operands[4];
22642 : : }
22643 : : else
22644 : : {
22645 : : reg4 = reg6;
22646 : : reg3 = reg2;
22647 : : operands[6] = operands[4];
22648 : : }
22649 : :
22650 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22651 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22652 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22653 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22654 : :
22655 : : tmp1 = reg1 | reg2;
22656 : : tmp2 = reg3 | reg4;
22657 : : reg_mask = tmp1 ^ tmp2;
22658 : : reg_mask &= 0xFF;
22659 : :
22660 : : operands[1] = STRIP_UNARY (operands[1]);
22661 : : operands[2] = STRIP_UNARY (operands[2]);
22662 : : operands[6] = STRIP_UNARY (operands[6]);
22663 : : if (!register_operand (operands[2], V2DFmode))
22664 : : operands[2] = force_reg (V2DFmode, operands[2]);
22665 : : if (!register_operand (operands[6], V2DFmode))
22666 : : operands[6] = force_reg (V2DFmode, operands[6]);
22667 : : operands[5] = GEN_INT (reg_mask);
22668 : : }
22669 : : #undef DONE
22670 : : #undef FAIL
22671 : : static const uint8_t expand_encoding[] = {
22672 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22673 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22674 : : 0x25
22675 : : };
22676 : : return complete_seq (expand_encoding, operands);
22677 : : }
22678 : :
22679 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14088 */
22680 : : extern rtx_insn *gen_split_2386 (rtx_insn *, rtx *);
22681 : : rtx_insn *
22682 : : gen_split_2386 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22683 : : {
22684 : : if (dump_file)
22685 : : fprintf (dump_file, "Splitting with gen_split_2386 (sse.md:14088)\n");
22686 : : start_sequence ();
22687 : : #define FAIL return (end_sequence (), nullptr)
22688 : : #define DONE return end_sequence ()
22689 : : #line 14117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22690 : : {
22691 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22692 : : int reg6 = 0xF0;
22693 : : int reg2 = 0xCC;
22694 : : int reg1 = 0xAA;
22695 : : int reg3 = 0;
22696 : : int reg4 = 0;
22697 : : int reg_mask, tmp1, tmp2;
22698 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22699 : : STRIP_UNARY (operands[4])))
22700 : : {
22701 : : reg4 = reg1;
22702 : : reg3 = reg6;
22703 : : operands[6] = operands[3];
22704 : : }
22705 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22706 : : STRIP_UNARY (operands[4])))
22707 : : {
22708 : : reg4 = reg2;
22709 : : reg3 = reg6;
22710 : : operands[6] = operands[3];
22711 : : }
22712 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22713 : : STRIP_UNARY (operands[3])))
22714 : : {
22715 : : reg4 = reg6;
22716 : : reg3 = reg1;
22717 : : operands[6] = operands[4];
22718 : : }
22719 : : else
22720 : : {
22721 : : reg4 = reg6;
22722 : : reg3 = reg2;
22723 : : operands[6] = operands[4];
22724 : : }
22725 : :
22726 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22727 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22728 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22729 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22730 : :
22731 : : tmp1 = reg1 ^ reg2;
22732 : : tmp2 = reg3 ^ reg4;
22733 : : reg_mask = tmp1 & tmp2;
22734 : : reg_mask &= 0xFF;
22735 : :
22736 : : operands[1] = STRIP_UNARY (operands[1]);
22737 : : operands[2] = STRIP_UNARY (operands[2]);
22738 : : operands[6] = STRIP_UNARY (operands[6]);
22739 : : if (!register_operand (operands[2], V2DFmode))
22740 : : operands[2] = force_reg (V2DFmode, operands[2]);
22741 : : if (!register_operand (operands[6], V2DFmode))
22742 : : operands[6] = force_reg (V2DFmode, operands[6]);
22743 : : operands[5] = GEN_INT (reg_mask);
22744 : : }
22745 : : #undef DONE
22746 : : #undef FAIL
22747 : : static const uint8_t expand_encoding[] = {
22748 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22749 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22750 : : 0x25
22751 : : };
22752 : : return complete_seq (expand_encoding, operands);
22753 : : }
22754 : :
22755 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
22756 : : extern rtx_insn *gen_split_2396 (rtx_insn *, rtx *);
22757 : : rtx_insn *
22758 : : gen_split_2396 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22759 : : {
22760 : : if (dump_file)
22761 : : fprintf (dump_file, "Splitting with gen_split_2396 (sse.md:14173)\n");
22762 : : start_sequence ();
22763 : : #define FAIL return (end_sequence (), nullptr)
22764 : : #define DONE return end_sequence ()
22765 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22766 : : {
22767 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22768 : : int reg6 = 0xF0;
22769 : : int reg2 = 0xCC;
22770 : : int reg1 = 0xAA;
22771 : : int reg3 = 0;
22772 : : int reg4 = 0;
22773 : : int reg_mask, tmp1, tmp2;
22774 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22775 : : STRIP_UNARY (operands[4])))
22776 : : {
22777 : : reg4 = reg1;
22778 : : reg3 = reg6;
22779 : : operands[6] = operands[3];
22780 : : }
22781 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22782 : : STRIP_UNARY (operands[4])))
22783 : : {
22784 : : reg4 = reg2;
22785 : : reg3 = reg6;
22786 : : operands[6] = operands[3];
22787 : : }
22788 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22789 : : STRIP_UNARY (operands[3])))
22790 : : {
22791 : : reg4 = reg6;
22792 : : reg3 = reg1;
22793 : : operands[6] = operands[4];
22794 : : }
22795 : : else
22796 : : {
22797 : : reg4 = reg6;
22798 : : reg3 = reg2;
22799 : : operands[6] = operands[4];
22800 : : }
22801 : :
22802 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22803 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22804 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22805 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22806 : :
22807 : : tmp1 = reg1 ^ reg2;
22808 : : tmp2 = tmp1 & reg3;
22809 : : reg_mask = tmp2 | reg4;
22810 : : reg_mask &= 0xFF;
22811 : :
22812 : : operands[1] = STRIP_UNARY (operands[1]);
22813 : : operands[2] = STRIP_UNARY (operands[2]);
22814 : : operands[6] = STRIP_UNARY (operands[6]);
22815 : : operands[5] = GEN_INT (reg_mask);
22816 : : if (!register_operand (operands[2], V64QImode))
22817 : : operands[2] = force_reg (V64QImode, operands[2]);
22818 : : if (!register_operand (operands[6], V64QImode))
22819 : : operands[6] = force_reg (V64QImode, operands[6]);
22820 : :
22821 : : }
22822 : : #undef DONE
22823 : : #undef FAIL
22824 : : static const uint8_t expand_encoding[] = {
22825 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22826 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22827 : : 0x25
22828 : : };
22829 : : return complete_seq (expand_encoding, operands);
22830 : : }
22831 : :
22832 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
22833 : : extern rtx_insn *gen_split_2406 (rtx_insn *, rtx *);
22834 : : rtx_insn *
22835 : : gen_split_2406 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22836 : : {
22837 : : if (dump_file)
22838 : : fprintf (dump_file, "Splitting with gen_split_2406 (sse.md:14173)\n");
22839 : : start_sequence ();
22840 : : #define FAIL return (end_sequence (), nullptr)
22841 : : #define DONE return end_sequence ()
22842 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22843 : : {
22844 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22845 : : int reg6 = 0xF0;
22846 : : int reg2 = 0xCC;
22847 : : int reg1 = 0xAA;
22848 : : int reg3 = 0;
22849 : : int reg4 = 0;
22850 : : int reg_mask, tmp1, tmp2;
22851 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22852 : : STRIP_UNARY (operands[4])))
22853 : : {
22854 : : reg4 = reg1;
22855 : : reg3 = reg6;
22856 : : operands[6] = operands[3];
22857 : : }
22858 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22859 : : STRIP_UNARY (operands[4])))
22860 : : {
22861 : : reg4 = reg2;
22862 : : reg3 = reg6;
22863 : : operands[6] = operands[3];
22864 : : }
22865 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22866 : : STRIP_UNARY (operands[3])))
22867 : : {
22868 : : reg4 = reg6;
22869 : : reg3 = reg1;
22870 : : operands[6] = operands[4];
22871 : : }
22872 : : else
22873 : : {
22874 : : reg4 = reg6;
22875 : : reg3 = reg2;
22876 : : operands[6] = operands[4];
22877 : : }
22878 : :
22879 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22880 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22881 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22882 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22883 : :
22884 : : tmp1 = reg1 ^ reg2;
22885 : : tmp2 = tmp1 | reg3;
22886 : : reg_mask = tmp2 ^ reg4;
22887 : : reg_mask &= 0xFF;
22888 : :
22889 : : operands[1] = STRIP_UNARY (operands[1]);
22890 : : operands[2] = STRIP_UNARY (operands[2]);
22891 : : operands[6] = STRIP_UNARY (operands[6]);
22892 : : operands[5] = GEN_INT (reg_mask);
22893 : : if (!register_operand (operands[2], V64QImode))
22894 : : operands[2] = force_reg (V64QImode, operands[2]);
22895 : : if (!register_operand (operands[6], V64QImode))
22896 : : operands[6] = force_reg (V64QImode, operands[6]);
22897 : :
22898 : : }
22899 : : #undef DONE
22900 : : #undef FAIL
22901 : : static const uint8_t expand_encoding[] = {
22902 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22903 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22904 : : 0x25
22905 : : };
22906 : : return complete_seq (expand_encoding, operands);
22907 : : }
22908 : :
22909 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
22910 : : extern rtx_insn *gen_split_2416 (rtx_insn *, rtx *);
22911 : : rtx_insn *
22912 : : gen_split_2416 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22913 : : {
22914 : : if (dump_file)
22915 : : fprintf (dump_file, "Splitting with gen_split_2416 (sse.md:14173)\n");
22916 : : start_sequence ();
22917 : : #define FAIL return (end_sequence (), nullptr)
22918 : : #define DONE return end_sequence ()
22919 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22920 : : {
22921 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22922 : : int reg6 = 0xF0;
22923 : : int reg2 = 0xCC;
22924 : : int reg1 = 0xAA;
22925 : : int reg3 = 0;
22926 : : int reg4 = 0;
22927 : : int reg_mask, tmp1, tmp2;
22928 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22929 : : STRIP_UNARY (operands[4])))
22930 : : {
22931 : : reg4 = reg1;
22932 : : reg3 = reg6;
22933 : : operands[6] = operands[3];
22934 : : }
22935 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22936 : : STRIP_UNARY (operands[4])))
22937 : : {
22938 : : reg4 = reg2;
22939 : : reg3 = reg6;
22940 : : operands[6] = operands[3];
22941 : : }
22942 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22943 : : STRIP_UNARY (operands[3])))
22944 : : {
22945 : : reg4 = reg6;
22946 : : reg3 = reg1;
22947 : : operands[6] = operands[4];
22948 : : }
22949 : : else
22950 : : {
22951 : : reg4 = reg6;
22952 : : reg3 = reg2;
22953 : : operands[6] = operands[4];
22954 : : }
22955 : :
22956 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22957 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22958 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22959 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22960 : :
22961 : : tmp1 = reg1 & reg2;
22962 : : tmp2 = tmp1 & reg3;
22963 : : reg_mask = tmp2 & reg4;
22964 : : reg_mask &= 0xFF;
22965 : :
22966 : : operands[1] = STRIP_UNARY (operands[1]);
22967 : : operands[2] = STRIP_UNARY (operands[2]);
22968 : : operands[6] = STRIP_UNARY (operands[6]);
22969 : : operands[5] = GEN_INT (reg_mask);
22970 : : if (!register_operand (operands[2], V32QImode))
22971 : : operands[2] = force_reg (V32QImode, operands[2]);
22972 : : if (!register_operand (operands[6], V32QImode))
22973 : : operands[6] = force_reg (V32QImode, operands[6]);
22974 : :
22975 : : }
22976 : : #undef DONE
22977 : : #undef FAIL
22978 : : static const uint8_t expand_encoding[] = {
22979 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
22980 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22981 : : 0x25
22982 : : };
22983 : : return complete_seq (expand_encoding, operands);
22984 : : }
22985 : :
22986 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
22987 : : extern rtx_insn *gen_split_2426 (rtx_insn *, rtx *);
22988 : : rtx_insn *
22989 : : gen_split_2426 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22990 : : {
22991 : : if (dump_file)
22992 : : fprintf (dump_file, "Splitting with gen_split_2426 (sse.md:14173)\n");
22993 : : start_sequence ();
22994 : : #define FAIL return (end_sequence (), nullptr)
22995 : : #define DONE return end_sequence ()
22996 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22997 : : {
22998 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22999 : : int reg6 = 0xF0;
23000 : : int reg2 = 0xCC;
23001 : : int reg1 = 0xAA;
23002 : : int reg3 = 0;
23003 : : int reg4 = 0;
23004 : : int reg_mask, tmp1, tmp2;
23005 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23006 : : STRIP_UNARY (operands[4])))
23007 : : {
23008 : : reg4 = reg1;
23009 : : reg3 = reg6;
23010 : : operands[6] = operands[3];
23011 : : }
23012 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23013 : : STRIP_UNARY (operands[4])))
23014 : : {
23015 : : reg4 = reg2;
23016 : : reg3 = reg6;
23017 : : operands[6] = operands[3];
23018 : : }
23019 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23020 : : STRIP_UNARY (operands[3])))
23021 : : {
23022 : : reg4 = reg6;
23023 : : reg3 = reg1;
23024 : : operands[6] = operands[4];
23025 : : }
23026 : : else
23027 : : {
23028 : : reg4 = reg6;
23029 : : reg3 = reg2;
23030 : : operands[6] = operands[4];
23031 : : }
23032 : :
23033 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23034 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23035 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23036 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23037 : :
23038 : : tmp1 = reg1 & reg2;
23039 : : tmp2 = tmp1 | reg3;
23040 : : reg_mask = tmp2 | reg4;
23041 : : reg_mask &= 0xFF;
23042 : :
23043 : : operands[1] = STRIP_UNARY (operands[1]);
23044 : : operands[2] = STRIP_UNARY (operands[2]);
23045 : : operands[6] = STRIP_UNARY (operands[6]);
23046 : : operands[5] = GEN_INT (reg_mask);
23047 : : if (!register_operand (operands[2], V32QImode))
23048 : : operands[2] = force_reg (V32QImode, operands[2]);
23049 : : if (!register_operand (operands[6], V32QImode))
23050 : : operands[6] = force_reg (V32QImode, operands[6]);
23051 : :
23052 : : }
23053 : : #undef DONE
23054 : : #undef FAIL
23055 : : static const uint8_t expand_encoding[] = {
23056 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23057 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23058 : : 0x25
23059 : : };
23060 : : return complete_seq (expand_encoding, operands);
23061 : : }
23062 : :
23063 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23064 : : extern rtx_insn *gen_split_2436 (rtx_insn *, rtx *);
23065 : : rtx_insn *
23066 : : gen_split_2436 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23067 : : {
23068 : : if (dump_file)
23069 : : fprintf (dump_file, "Splitting with gen_split_2436 (sse.md:14173)\n");
23070 : : start_sequence ();
23071 : : #define FAIL return (end_sequence (), nullptr)
23072 : : #define DONE return end_sequence ()
23073 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23074 : : {
23075 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23076 : : int reg6 = 0xF0;
23077 : : int reg2 = 0xCC;
23078 : : int reg1 = 0xAA;
23079 : : int reg3 = 0;
23080 : : int reg4 = 0;
23081 : : int reg_mask, tmp1, tmp2;
23082 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23083 : : STRIP_UNARY (operands[4])))
23084 : : {
23085 : : reg4 = reg1;
23086 : : reg3 = reg6;
23087 : : operands[6] = operands[3];
23088 : : }
23089 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23090 : : STRIP_UNARY (operands[4])))
23091 : : {
23092 : : reg4 = reg2;
23093 : : reg3 = reg6;
23094 : : operands[6] = operands[3];
23095 : : }
23096 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23097 : : STRIP_UNARY (operands[3])))
23098 : : {
23099 : : reg4 = reg6;
23100 : : reg3 = reg1;
23101 : : operands[6] = operands[4];
23102 : : }
23103 : : else
23104 : : {
23105 : : reg4 = reg6;
23106 : : reg3 = reg2;
23107 : : operands[6] = operands[4];
23108 : : }
23109 : :
23110 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23111 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23112 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23113 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23114 : :
23115 : : tmp1 = reg1 & reg2;
23116 : : tmp2 = tmp1 ^ reg3;
23117 : : reg_mask = tmp2 ^ reg4;
23118 : : reg_mask &= 0xFF;
23119 : :
23120 : : operands[1] = STRIP_UNARY (operands[1]);
23121 : : operands[2] = STRIP_UNARY (operands[2]);
23122 : : operands[6] = STRIP_UNARY (operands[6]);
23123 : : operands[5] = GEN_INT (reg_mask);
23124 : : if (!register_operand (operands[2], V32QImode))
23125 : : operands[2] = force_reg (V32QImode, operands[2]);
23126 : : if (!register_operand (operands[6], V32QImode))
23127 : : operands[6] = force_reg (V32QImode, operands[6]);
23128 : :
23129 : : }
23130 : : #undef DONE
23131 : : #undef FAIL
23132 : : static const uint8_t expand_encoding[] = {
23133 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23134 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23135 : : 0x25
23136 : : };
23137 : : return complete_seq (expand_encoding, operands);
23138 : : }
23139 : :
23140 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23141 : : extern rtx_insn *gen_split_2446 (rtx_insn *, rtx *);
23142 : : rtx_insn *
23143 : : gen_split_2446 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23144 : : {
23145 : : if (dump_file)
23146 : : fprintf (dump_file, "Splitting with gen_split_2446 (sse.md:14173)\n");
23147 : : start_sequence ();
23148 : : #define FAIL return (end_sequence (), nullptr)
23149 : : #define DONE return end_sequence ()
23150 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23151 : : {
23152 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23153 : : int reg6 = 0xF0;
23154 : : int reg2 = 0xCC;
23155 : : int reg1 = 0xAA;
23156 : : int reg3 = 0;
23157 : : int reg4 = 0;
23158 : : int reg_mask, tmp1, tmp2;
23159 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23160 : : STRIP_UNARY (operands[4])))
23161 : : {
23162 : : reg4 = reg1;
23163 : : reg3 = reg6;
23164 : : operands[6] = operands[3];
23165 : : }
23166 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23167 : : STRIP_UNARY (operands[4])))
23168 : : {
23169 : : reg4 = reg2;
23170 : : reg3 = reg6;
23171 : : operands[6] = operands[3];
23172 : : }
23173 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23174 : : STRIP_UNARY (operands[3])))
23175 : : {
23176 : : reg4 = reg6;
23177 : : reg3 = reg1;
23178 : : operands[6] = operands[4];
23179 : : }
23180 : : else
23181 : : {
23182 : : reg4 = reg6;
23183 : : reg3 = reg2;
23184 : : operands[6] = operands[4];
23185 : : }
23186 : :
23187 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23188 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23189 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23190 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23191 : :
23192 : : tmp1 = reg1 | reg2;
23193 : : tmp2 = tmp1 & reg3;
23194 : : reg_mask = tmp2 & reg4;
23195 : : reg_mask &= 0xFF;
23196 : :
23197 : : operands[1] = STRIP_UNARY (operands[1]);
23198 : : operands[2] = STRIP_UNARY (operands[2]);
23199 : : operands[6] = STRIP_UNARY (operands[6]);
23200 : : operands[5] = GEN_INT (reg_mask);
23201 : : if (!register_operand (operands[2], V16QImode))
23202 : : operands[2] = force_reg (V16QImode, operands[2]);
23203 : : if (!register_operand (operands[6], V16QImode))
23204 : : operands[6] = force_reg (V16QImode, operands[6]);
23205 : :
23206 : : }
23207 : : #undef DONE
23208 : : #undef FAIL
23209 : : static const uint8_t expand_encoding[] = {
23210 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23211 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23212 : : 0x25
23213 : : };
23214 : : return complete_seq (expand_encoding, operands);
23215 : : }
23216 : :
23217 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23218 : : extern rtx_insn *gen_split_2456 (rtx_insn *, rtx *);
23219 : : rtx_insn *
23220 : : gen_split_2456 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23221 : : {
23222 : : if (dump_file)
23223 : : fprintf (dump_file, "Splitting with gen_split_2456 (sse.md:14173)\n");
23224 : : start_sequence ();
23225 : : #define FAIL return (end_sequence (), nullptr)
23226 : : #define DONE return end_sequence ()
23227 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23228 : : {
23229 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23230 : : int reg6 = 0xF0;
23231 : : int reg2 = 0xCC;
23232 : : int reg1 = 0xAA;
23233 : : int reg3 = 0;
23234 : : int reg4 = 0;
23235 : : int reg_mask, tmp1, tmp2;
23236 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23237 : : STRIP_UNARY (operands[4])))
23238 : : {
23239 : : reg4 = reg1;
23240 : : reg3 = reg6;
23241 : : operands[6] = operands[3];
23242 : : }
23243 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23244 : : STRIP_UNARY (operands[4])))
23245 : : {
23246 : : reg4 = reg2;
23247 : : reg3 = reg6;
23248 : : operands[6] = operands[3];
23249 : : }
23250 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23251 : : STRIP_UNARY (operands[3])))
23252 : : {
23253 : : reg4 = reg6;
23254 : : reg3 = reg1;
23255 : : operands[6] = operands[4];
23256 : : }
23257 : : else
23258 : : {
23259 : : reg4 = reg6;
23260 : : reg3 = reg2;
23261 : : operands[6] = operands[4];
23262 : : }
23263 : :
23264 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23265 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23266 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23267 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23268 : :
23269 : : tmp1 = reg1 | reg2;
23270 : : tmp2 = tmp1 | reg3;
23271 : : reg_mask = tmp2 | reg4;
23272 : : reg_mask &= 0xFF;
23273 : :
23274 : : operands[1] = STRIP_UNARY (operands[1]);
23275 : : operands[2] = STRIP_UNARY (operands[2]);
23276 : : operands[6] = STRIP_UNARY (operands[6]);
23277 : : operands[5] = GEN_INT (reg_mask);
23278 : : if (!register_operand (operands[2], V16QImode))
23279 : : operands[2] = force_reg (V16QImode, operands[2]);
23280 : : if (!register_operand (operands[6], V16QImode))
23281 : : operands[6] = force_reg (V16QImode, operands[6]);
23282 : :
23283 : : }
23284 : : #undef DONE
23285 : : #undef FAIL
23286 : : static const uint8_t expand_encoding[] = {
23287 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23288 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23289 : : 0x25
23290 : : };
23291 : : return complete_seq (expand_encoding, operands);
23292 : : }
23293 : :
23294 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23295 : : extern rtx_insn *gen_split_2466 (rtx_insn *, rtx *);
23296 : : rtx_insn *
23297 : : gen_split_2466 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23298 : : {
23299 : : if (dump_file)
23300 : : fprintf (dump_file, "Splitting with gen_split_2466 (sse.md:14173)\n");
23301 : : start_sequence ();
23302 : : #define FAIL return (end_sequence (), nullptr)
23303 : : #define DONE return end_sequence ()
23304 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23305 : : {
23306 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23307 : : int reg6 = 0xF0;
23308 : : int reg2 = 0xCC;
23309 : : int reg1 = 0xAA;
23310 : : int reg3 = 0;
23311 : : int reg4 = 0;
23312 : : int reg_mask, tmp1, tmp2;
23313 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23314 : : STRIP_UNARY (operands[4])))
23315 : : {
23316 : : reg4 = reg1;
23317 : : reg3 = reg6;
23318 : : operands[6] = operands[3];
23319 : : }
23320 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23321 : : STRIP_UNARY (operands[4])))
23322 : : {
23323 : : reg4 = reg2;
23324 : : reg3 = reg6;
23325 : : operands[6] = operands[3];
23326 : : }
23327 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23328 : : STRIP_UNARY (operands[3])))
23329 : : {
23330 : : reg4 = reg6;
23331 : : reg3 = reg1;
23332 : : operands[6] = operands[4];
23333 : : }
23334 : : else
23335 : : {
23336 : : reg4 = reg6;
23337 : : reg3 = reg2;
23338 : : operands[6] = operands[4];
23339 : : }
23340 : :
23341 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23342 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23343 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23344 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23345 : :
23346 : : tmp1 = reg1 | reg2;
23347 : : tmp2 = tmp1 ^ reg3;
23348 : : reg_mask = tmp2 ^ reg4;
23349 : : reg_mask &= 0xFF;
23350 : :
23351 : : operands[1] = STRIP_UNARY (operands[1]);
23352 : : operands[2] = STRIP_UNARY (operands[2]);
23353 : : operands[6] = STRIP_UNARY (operands[6]);
23354 : : operands[5] = GEN_INT (reg_mask);
23355 : : if (!register_operand (operands[2], V16QImode))
23356 : : operands[2] = force_reg (V16QImode, operands[2]);
23357 : : if (!register_operand (operands[6], V16QImode))
23358 : : operands[6] = force_reg (V16QImode, operands[6]);
23359 : :
23360 : : }
23361 : : #undef DONE
23362 : : #undef FAIL
23363 : : static const uint8_t expand_encoding[] = {
23364 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23365 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23366 : : 0x25
23367 : : };
23368 : : return complete_seq (expand_encoding, operands);
23369 : : }
23370 : :
23371 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23372 : : extern rtx_insn *gen_split_2476 (rtx_insn *, rtx *);
23373 : : rtx_insn *
23374 : : gen_split_2476 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23375 : : {
23376 : : if (dump_file)
23377 : : fprintf (dump_file, "Splitting with gen_split_2476 (sse.md:14173)\n");
23378 : : start_sequence ();
23379 : : #define FAIL return (end_sequence (), nullptr)
23380 : : #define DONE return end_sequence ()
23381 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23382 : : {
23383 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23384 : : int reg6 = 0xF0;
23385 : : int reg2 = 0xCC;
23386 : : int reg1 = 0xAA;
23387 : : int reg3 = 0;
23388 : : int reg4 = 0;
23389 : : int reg_mask, tmp1, tmp2;
23390 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23391 : : STRIP_UNARY (operands[4])))
23392 : : {
23393 : : reg4 = reg1;
23394 : : reg3 = reg6;
23395 : : operands[6] = operands[3];
23396 : : }
23397 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23398 : : STRIP_UNARY (operands[4])))
23399 : : {
23400 : : reg4 = reg2;
23401 : : reg3 = reg6;
23402 : : operands[6] = operands[3];
23403 : : }
23404 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23405 : : STRIP_UNARY (operands[3])))
23406 : : {
23407 : : reg4 = reg6;
23408 : : reg3 = reg1;
23409 : : operands[6] = operands[4];
23410 : : }
23411 : : else
23412 : : {
23413 : : reg4 = reg6;
23414 : : reg3 = reg2;
23415 : : operands[6] = operands[4];
23416 : : }
23417 : :
23418 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23419 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23420 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23421 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23422 : :
23423 : : tmp1 = reg1 ^ reg2;
23424 : : tmp2 = tmp1 & reg3;
23425 : : reg_mask = tmp2 & reg4;
23426 : : reg_mask &= 0xFF;
23427 : :
23428 : : operands[1] = STRIP_UNARY (operands[1]);
23429 : : operands[2] = STRIP_UNARY (operands[2]);
23430 : : operands[6] = STRIP_UNARY (operands[6]);
23431 : : operands[5] = GEN_INT (reg_mask);
23432 : : if (!register_operand (operands[2], V32HImode))
23433 : : operands[2] = force_reg (V32HImode, operands[2]);
23434 : : if (!register_operand (operands[6], V32HImode))
23435 : : operands[6] = force_reg (V32HImode, operands[6]);
23436 : :
23437 : : }
23438 : : #undef DONE
23439 : : #undef FAIL
23440 : : static const uint8_t expand_encoding[] = {
23441 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23442 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23443 : : 0x25
23444 : : };
23445 : : return complete_seq (expand_encoding, operands);
23446 : : }
23447 : :
23448 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23449 : : extern rtx_insn *gen_split_2486 (rtx_insn *, rtx *);
23450 : : rtx_insn *
23451 : : gen_split_2486 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23452 : : {
23453 : : if (dump_file)
23454 : : fprintf (dump_file, "Splitting with gen_split_2486 (sse.md:14173)\n");
23455 : : start_sequence ();
23456 : : #define FAIL return (end_sequence (), nullptr)
23457 : : #define DONE return end_sequence ()
23458 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23459 : : {
23460 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23461 : : int reg6 = 0xF0;
23462 : : int reg2 = 0xCC;
23463 : : int reg1 = 0xAA;
23464 : : int reg3 = 0;
23465 : : int reg4 = 0;
23466 : : int reg_mask, tmp1, tmp2;
23467 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23468 : : STRIP_UNARY (operands[4])))
23469 : : {
23470 : : reg4 = reg1;
23471 : : reg3 = reg6;
23472 : : operands[6] = operands[3];
23473 : : }
23474 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23475 : : STRIP_UNARY (operands[4])))
23476 : : {
23477 : : reg4 = reg2;
23478 : : reg3 = reg6;
23479 : : operands[6] = operands[3];
23480 : : }
23481 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23482 : : STRIP_UNARY (operands[3])))
23483 : : {
23484 : : reg4 = reg6;
23485 : : reg3 = reg1;
23486 : : operands[6] = operands[4];
23487 : : }
23488 : : else
23489 : : {
23490 : : reg4 = reg6;
23491 : : reg3 = reg2;
23492 : : operands[6] = operands[4];
23493 : : }
23494 : :
23495 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23496 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23497 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23498 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23499 : :
23500 : : tmp1 = reg1 ^ reg2;
23501 : : tmp2 = tmp1 | reg3;
23502 : : reg_mask = tmp2 | reg4;
23503 : : reg_mask &= 0xFF;
23504 : :
23505 : : operands[1] = STRIP_UNARY (operands[1]);
23506 : : operands[2] = STRIP_UNARY (operands[2]);
23507 : : operands[6] = STRIP_UNARY (operands[6]);
23508 : : operands[5] = GEN_INT (reg_mask);
23509 : : if (!register_operand (operands[2], V32HImode))
23510 : : operands[2] = force_reg (V32HImode, operands[2]);
23511 : : if (!register_operand (operands[6], V32HImode))
23512 : : operands[6] = force_reg (V32HImode, operands[6]);
23513 : :
23514 : : }
23515 : : #undef DONE
23516 : : #undef FAIL
23517 : : static const uint8_t expand_encoding[] = {
23518 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23519 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23520 : : 0x25
23521 : : };
23522 : : return complete_seq (expand_encoding, operands);
23523 : : }
23524 : :
23525 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23526 : : extern rtx_insn *gen_split_2496 (rtx_insn *, rtx *);
23527 : : rtx_insn *
23528 : : gen_split_2496 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23529 : : {
23530 : : if (dump_file)
23531 : : fprintf (dump_file, "Splitting with gen_split_2496 (sse.md:14173)\n");
23532 : : start_sequence ();
23533 : : #define FAIL return (end_sequence (), nullptr)
23534 : : #define DONE return end_sequence ()
23535 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23536 : : {
23537 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23538 : : int reg6 = 0xF0;
23539 : : int reg2 = 0xCC;
23540 : : int reg1 = 0xAA;
23541 : : int reg3 = 0;
23542 : : int reg4 = 0;
23543 : : int reg_mask, tmp1, tmp2;
23544 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23545 : : STRIP_UNARY (operands[4])))
23546 : : {
23547 : : reg4 = reg1;
23548 : : reg3 = reg6;
23549 : : operands[6] = operands[3];
23550 : : }
23551 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23552 : : STRIP_UNARY (operands[4])))
23553 : : {
23554 : : reg4 = reg2;
23555 : : reg3 = reg6;
23556 : : operands[6] = operands[3];
23557 : : }
23558 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23559 : : STRIP_UNARY (operands[3])))
23560 : : {
23561 : : reg4 = reg6;
23562 : : reg3 = reg1;
23563 : : operands[6] = operands[4];
23564 : : }
23565 : : else
23566 : : {
23567 : : reg4 = reg6;
23568 : : reg3 = reg2;
23569 : : operands[6] = operands[4];
23570 : : }
23571 : :
23572 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23573 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23574 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23575 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23576 : :
23577 : : tmp1 = reg1 ^ reg2;
23578 : : tmp2 = tmp1 ^ reg3;
23579 : : reg_mask = tmp2 ^ reg4;
23580 : : reg_mask &= 0xFF;
23581 : :
23582 : : operands[1] = STRIP_UNARY (operands[1]);
23583 : : operands[2] = STRIP_UNARY (operands[2]);
23584 : : operands[6] = STRIP_UNARY (operands[6]);
23585 : : operands[5] = GEN_INT (reg_mask);
23586 : : if (!register_operand (operands[2], V32HImode))
23587 : : operands[2] = force_reg (V32HImode, operands[2]);
23588 : : if (!register_operand (operands[6], V32HImode))
23589 : : operands[6] = force_reg (V32HImode, operands[6]);
23590 : :
23591 : : }
23592 : : #undef DONE
23593 : : #undef FAIL
23594 : : static const uint8_t expand_encoding[] = {
23595 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23596 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23597 : : 0x25
23598 : : };
23599 : : return complete_seq (expand_encoding, operands);
23600 : : }
23601 : :
23602 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23603 : : extern rtx_insn *gen_split_2506 (rtx_insn *, rtx *);
23604 : : rtx_insn *
23605 : : gen_split_2506 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23606 : : {
23607 : : if (dump_file)
23608 : : fprintf (dump_file, "Splitting with gen_split_2506 (sse.md:14173)\n");
23609 : : start_sequence ();
23610 : : #define FAIL return (end_sequence (), nullptr)
23611 : : #define DONE return end_sequence ()
23612 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23613 : : {
23614 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23615 : : int reg6 = 0xF0;
23616 : : int reg2 = 0xCC;
23617 : : int reg1 = 0xAA;
23618 : : int reg3 = 0;
23619 : : int reg4 = 0;
23620 : : int reg_mask, tmp1, tmp2;
23621 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23622 : : STRIP_UNARY (operands[4])))
23623 : : {
23624 : : reg4 = reg1;
23625 : : reg3 = reg6;
23626 : : operands[6] = operands[3];
23627 : : }
23628 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23629 : : STRIP_UNARY (operands[4])))
23630 : : {
23631 : : reg4 = reg2;
23632 : : reg3 = reg6;
23633 : : operands[6] = operands[3];
23634 : : }
23635 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23636 : : STRIP_UNARY (operands[3])))
23637 : : {
23638 : : reg4 = reg6;
23639 : : reg3 = reg1;
23640 : : operands[6] = operands[4];
23641 : : }
23642 : : else
23643 : : {
23644 : : reg4 = reg6;
23645 : : reg3 = reg2;
23646 : : operands[6] = operands[4];
23647 : : }
23648 : :
23649 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23650 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23651 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23652 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23653 : :
23654 : : tmp1 = reg1 & reg2;
23655 : : tmp2 = tmp1 | reg3;
23656 : : reg_mask = tmp2 & reg4;
23657 : : reg_mask &= 0xFF;
23658 : :
23659 : : operands[1] = STRIP_UNARY (operands[1]);
23660 : : operands[2] = STRIP_UNARY (operands[2]);
23661 : : operands[6] = STRIP_UNARY (operands[6]);
23662 : : operands[5] = GEN_INT (reg_mask);
23663 : : if (!register_operand (operands[2], V16HImode))
23664 : : operands[2] = force_reg (V16HImode, operands[2]);
23665 : : if (!register_operand (operands[6], V16HImode))
23666 : : operands[6] = force_reg (V16HImode, operands[6]);
23667 : :
23668 : : }
23669 : : #undef DONE
23670 : : #undef FAIL
23671 : : static const uint8_t expand_encoding[] = {
23672 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23673 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23674 : : 0x25
23675 : : };
23676 : : return complete_seq (expand_encoding, operands);
23677 : : }
23678 : :
23679 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23680 : : extern rtx_insn *gen_split_2516 (rtx_insn *, rtx *);
23681 : : rtx_insn *
23682 : : gen_split_2516 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23683 : : {
23684 : : if (dump_file)
23685 : : fprintf (dump_file, "Splitting with gen_split_2516 (sse.md:14173)\n");
23686 : : start_sequence ();
23687 : : #define FAIL return (end_sequence (), nullptr)
23688 : : #define DONE return end_sequence ()
23689 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23690 : : {
23691 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23692 : : int reg6 = 0xF0;
23693 : : int reg2 = 0xCC;
23694 : : int reg1 = 0xAA;
23695 : : int reg3 = 0;
23696 : : int reg4 = 0;
23697 : : int reg_mask, tmp1, tmp2;
23698 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23699 : : STRIP_UNARY (operands[4])))
23700 : : {
23701 : : reg4 = reg1;
23702 : : reg3 = reg6;
23703 : : operands[6] = operands[3];
23704 : : }
23705 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23706 : : STRIP_UNARY (operands[4])))
23707 : : {
23708 : : reg4 = reg2;
23709 : : reg3 = reg6;
23710 : : operands[6] = operands[3];
23711 : : }
23712 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23713 : : STRIP_UNARY (operands[3])))
23714 : : {
23715 : : reg4 = reg6;
23716 : : reg3 = reg1;
23717 : : operands[6] = operands[4];
23718 : : }
23719 : : else
23720 : : {
23721 : : reg4 = reg6;
23722 : : reg3 = reg2;
23723 : : operands[6] = operands[4];
23724 : : }
23725 : :
23726 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23727 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23728 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23729 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23730 : :
23731 : : tmp1 = reg1 & reg2;
23732 : : tmp2 = tmp1 ^ reg3;
23733 : : reg_mask = tmp2 | reg4;
23734 : : reg_mask &= 0xFF;
23735 : :
23736 : : operands[1] = STRIP_UNARY (operands[1]);
23737 : : operands[2] = STRIP_UNARY (operands[2]);
23738 : : operands[6] = STRIP_UNARY (operands[6]);
23739 : : operands[5] = GEN_INT (reg_mask);
23740 : : if (!register_operand (operands[2], V16HImode))
23741 : : operands[2] = force_reg (V16HImode, operands[2]);
23742 : : if (!register_operand (operands[6], V16HImode))
23743 : : operands[6] = force_reg (V16HImode, operands[6]);
23744 : :
23745 : : }
23746 : : #undef DONE
23747 : : #undef FAIL
23748 : : static const uint8_t expand_encoding[] = {
23749 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23750 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23751 : : 0x25
23752 : : };
23753 : : return complete_seq (expand_encoding, operands);
23754 : : }
23755 : :
23756 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23757 : : extern rtx_insn *gen_split_2526 (rtx_insn *, rtx *);
23758 : : rtx_insn *
23759 : : gen_split_2526 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23760 : : {
23761 : : if (dump_file)
23762 : : fprintf (dump_file, "Splitting with gen_split_2526 (sse.md:14173)\n");
23763 : : start_sequence ();
23764 : : #define FAIL return (end_sequence (), nullptr)
23765 : : #define DONE return end_sequence ()
23766 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23767 : : {
23768 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23769 : : int reg6 = 0xF0;
23770 : : int reg2 = 0xCC;
23771 : : int reg1 = 0xAA;
23772 : : int reg3 = 0;
23773 : : int reg4 = 0;
23774 : : int reg_mask, tmp1, tmp2;
23775 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23776 : : STRIP_UNARY (operands[4])))
23777 : : {
23778 : : reg4 = reg1;
23779 : : reg3 = reg6;
23780 : : operands[6] = operands[3];
23781 : : }
23782 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23783 : : STRIP_UNARY (operands[4])))
23784 : : {
23785 : : reg4 = reg2;
23786 : : reg3 = reg6;
23787 : : operands[6] = operands[3];
23788 : : }
23789 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23790 : : STRIP_UNARY (operands[3])))
23791 : : {
23792 : : reg4 = reg6;
23793 : : reg3 = reg1;
23794 : : operands[6] = operands[4];
23795 : : }
23796 : : else
23797 : : {
23798 : : reg4 = reg6;
23799 : : reg3 = reg2;
23800 : : operands[6] = operands[4];
23801 : : }
23802 : :
23803 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23804 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23805 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23806 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23807 : :
23808 : : tmp1 = reg1 & reg2;
23809 : : tmp2 = tmp1 & reg3;
23810 : : reg_mask = tmp2 ^ reg4;
23811 : : reg_mask &= 0xFF;
23812 : :
23813 : : operands[1] = STRIP_UNARY (operands[1]);
23814 : : operands[2] = STRIP_UNARY (operands[2]);
23815 : : operands[6] = STRIP_UNARY (operands[6]);
23816 : : operands[5] = GEN_INT (reg_mask);
23817 : : if (!register_operand (operands[2], V8HImode))
23818 : : operands[2] = force_reg (V8HImode, operands[2]);
23819 : : if (!register_operand (operands[6], V8HImode))
23820 : : operands[6] = force_reg (V8HImode, operands[6]);
23821 : :
23822 : : }
23823 : : #undef DONE
23824 : : #undef FAIL
23825 : : static const uint8_t expand_encoding[] = {
23826 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23827 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23828 : : 0x25
23829 : : };
23830 : : return complete_seq (expand_encoding, operands);
23831 : : }
23832 : :
23833 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23834 : : extern rtx_insn *gen_split_2536 (rtx_insn *, rtx *);
23835 : : rtx_insn *
23836 : : gen_split_2536 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23837 : : {
23838 : : if (dump_file)
23839 : : fprintf (dump_file, "Splitting with gen_split_2536 (sse.md:14173)\n");
23840 : : start_sequence ();
23841 : : #define FAIL return (end_sequence (), nullptr)
23842 : : #define DONE return end_sequence ()
23843 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23844 : : {
23845 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23846 : : int reg6 = 0xF0;
23847 : : int reg2 = 0xCC;
23848 : : int reg1 = 0xAA;
23849 : : int reg3 = 0;
23850 : : int reg4 = 0;
23851 : : int reg_mask, tmp1, tmp2;
23852 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23853 : : STRIP_UNARY (operands[4])))
23854 : : {
23855 : : reg4 = reg1;
23856 : : reg3 = reg6;
23857 : : operands[6] = operands[3];
23858 : : }
23859 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23860 : : STRIP_UNARY (operands[4])))
23861 : : {
23862 : : reg4 = reg2;
23863 : : reg3 = reg6;
23864 : : operands[6] = operands[3];
23865 : : }
23866 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23867 : : STRIP_UNARY (operands[3])))
23868 : : {
23869 : : reg4 = reg6;
23870 : : reg3 = reg1;
23871 : : operands[6] = operands[4];
23872 : : }
23873 : : else
23874 : : {
23875 : : reg4 = reg6;
23876 : : reg3 = reg2;
23877 : : operands[6] = operands[4];
23878 : : }
23879 : :
23880 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23881 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23882 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23883 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23884 : :
23885 : : tmp1 = reg1 | reg2;
23886 : : tmp2 = tmp1 | reg3;
23887 : : reg_mask = tmp2 & reg4;
23888 : : reg_mask &= 0xFF;
23889 : :
23890 : : operands[1] = STRIP_UNARY (operands[1]);
23891 : : operands[2] = STRIP_UNARY (operands[2]);
23892 : : operands[6] = STRIP_UNARY (operands[6]);
23893 : : operands[5] = GEN_INT (reg_mask);
23894 : : if (!register_operand (operands[2], V8HImode))
23895 : : operands[2] = force_reg (V8HImode, operands[2]);
23896 : : if (!register_operand (operands[6], V8HImode))
23897 : : operands[6] = force_reg (V8HImode, operands[6]);
23898 : :
23899 : : }
23900 : : #undef DONE
23901 : : #undef FAIL
23902 : : static const uint8_t expand_encoding[] = {
23903 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23904 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23905 : : 0x25
23906 : : };
23907 : : return complete_seq (expand_encoding, operands);
23908 : : }
23909 : :
23910 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23911 : : extern rtx_insn *gen_split_2546 (rtx_insn *, rtx *);
23912 : : rtx_insn *
23913 : : gen_split_2546 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23914 : : {
23915 : : if (dump_file)
23916 : : fprintf (dump_file, "Splitting with gen_split_2546 (sse.md:14173)\n");
23917 : : start_sequence ();
23918 : : #define FAIL return (end_sequence (), nullptr)
23919 : : #define DONE return end_sequence ()
23920 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23921 : : {
23922 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23923 : : int reg6 = 0xF0;
23924 : : int reg2 = 0xCC;
23925 : : int reg1 = 0xAA;
23926 : : int reg3 = 0;
23927 : : int reg4 = 0;
23928 : : int reg_mask, tmp1, tmp2;
23929 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23930 : : STRIP_UNARY (operands[4])))
23931 : : {
23932 : : reg4 = reg1;
23933 : : reg3 = reg6;
23934 : : operands[6] = operands[3];
23935 : : }
23936 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23937 : : STRIP_UNARY (operands[4])))
23938 : : {
23939 : : reg4 = reg2;
23940 : : reg3 = reg6;
23941 : : operands[6] = operands[3];
23942 : : }
23943 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23944 : : STRIP_UNARY (operands[3])))
23945 : : {
23946 : : reg4 = reg6;
23947 : : reg3 = reg1;
23948 : : operands[6] = operands[4];
23949 : : }
23950 : : else
23951 : : {
23952 : : reg4 = reg6;
23953 : : reg3 = reg2;
23954 : : operands[6] = operands[4];
23955 : : }
23956 : :
23957 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23958 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23959 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23960 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23961 : :
23962 : : tmp1 = reg1 | reg2;
23963 : : tmp2 = tmp1 ^ reg3;
23964 : : reg_mask = tmp2 | reg4;
23965 : : reg_mask &= 0xFF;
23966 : :
23967 : : operands[1] = STRIP_UNARY (operands[1]);
23968 : : operands[2] = STRIP_UNARY (operands[2]);
23969 : : operands[6] = STRIP_UNARY (operands[6]);
23970 : : operands[5] = GEN_INT (reg_mask);
23971 : : if (!register_operand (operands[2], V8HImode))
23972 : : operands[2] = force_reg (V8HImode, operands[2]);
23973 : : if (!register_operand (operands[6], V8HImode))
23974 : : operands[6] = force_reg (V8HImode, operands[6]);
23975 : :
23976 : : }
23977 : : #undef DONE
23978 : : #undef FAIL
23979 : : static const uint8_t expand_encoding[] = {
23980 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23981 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23982 : : 0x25
23983 : : };
23984 : : return complete_seq (expand_encoding, operands);
23985 : : }
23986 : :
23987 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
23988 : : extern rtx_insn *gen_split_2556 (rtx_insn *, rtx *);
23989 : : rtx_insn *
23990 : : gen_split_2556 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23991 : : {
23992 : : if (dump_file)
23993 : : fprintf (dump_file, "Splitting with gen_split_2556 (sse.md:14173)\n");
23994 : : start_sequence ();
23995 : : #define FAIL return (end_sequence (), nullptr)
23996 : : #define DONE return end_sequence ()
23997 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23998 : : {
23999 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24000 : : int reg6 = 0xF0;
24001 : : int reg2 = 0xCC;
24002 : : int reg1 = 0xAA;
24003 : : int reg3 = 0;
24004 : : int reg4 = 0;
24005 : : int reg_mask, tmp1, tmp2;
24006 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24007 : : STRIP_UNARY (operands[4])))
24008 : : {
24009 : : reg4 = reg1;
24010 : : reg3 = reg6;
24011 : : operands[6] = operands[3];
24012 : : }
24013 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24014 : : STRIP_UNARY (operands[4])))
24015 : : {
24016 : : reg4 = reg2;
24017 : : reg3 = reg6;
24018 : : operands[6] = operands[3];
24019 : : }
24020 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24021 : : STRIP_UNARY (operands[3])))
24022 : : {
24023 : : reg4 = reg6;
24024 : : reg3 = reg1;
24025 : : operands[6] = operands[4];
24026 : : }
24027 : : else
24028 : : {
24029 : : reg4 = reg6;
24030 : : reg3 = reg2;
24031 : : operands[6] = operands[4];
24032 : : }
24033 : :
24034 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24035 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24036 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24037 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24038 : :
24039 : : tmp1 = reg1 | reg2;
24040 : : tmp2 = tmp1 & reg3;
24041 : : reg_mask = tmp2 ^ reg4;
24042 : : reg_mask &= 0xFF;
24043 : :
24044 : : operands[1] = STRIP_UNARY (operands[1]);
24045 : : operands[2] = STRIP_UNARY (operands[2]);
24046 : : operands[6] = STRIP_UNARY (operands[6]);
24047 : : operands[5] = GEN_INT (reg_mask);
24048 : : if (!register_operand (operands[2], V16SImode))
24049 : : operands[2] = force_reg (V16SImode, operands[2]);
24050 : : if (!register_operand (operands[6], V16SImode))
24051 : : operands[6] = force_reg (V16SImode, operands[6]);
24052 : :
24053 : : }
24054 : : #undef DONE
24055 : : #undef FAIL
24056 : : static const uint8_t expand_encoding[] = {
24057 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24058 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24059 : : 0x25
24060 : : };
24061 : : return complete_seq (expand_encoding, operands);
24062 : : }
24063 : :
24064 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24065 : : extern rtx_insn *gen_split_2566 (rtx_insn *, rtx *);
24066 : : rtx_insn *
24067 : : gen_split_2566 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24068 : : {
24069 : : if (dump_file)
24070 : : fprintf (dump_file, "Splitting with gen_split_2566 (sse.md:14173)\n");
24071 : : start_sequence ();
24072 : : #define FAIL return (end_sequence (), nullptr)
24073 : : #define DONE return end_sequence ()
24074 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24075 : : {
24076 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24077 : : int reg6 = 0xF0;
24078 : : int reg2 = 0xCC;
24079 : : int reg1 = 0xAA;
24080 : : int reg3 = 0;
24081 : : int reg4 = 0;
24082 : : int reg_mask, tmp1, tmp2;
24083 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24084 : : STRIP_UNARY (operands[4])))
24085 : : {
24086 : : reg4 = reg1;
24087 : : reg3 = reg6;
24088 : : operands[6] = operands[3];
24089 : : }
24090 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24091 : : STRIP_UNARY (operands[4])))
24092 : : {
24093 : : reg4 = reg2;
24094 : : reg3 = reg6;
24095 : : operands[6] = operands[3];
24096 : : }
24097 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24098 : : STRIP_UNARY (operands[3])))
24099 : : {
24100 : : reg4 = reg6;
24101 : : reg3 = reg1;
24102 : : operands[6] = operands[4];
24103 : : }
24104 : : else
24105 : : {
24106 : : reg4 = reg6;
24107 : : reg3 = reg2;
24108 : : operands[6] = operands[4];
24109 : : }
24110 : :
24111 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24112 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24113 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24114 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24115 : :
24116 : : tmp1 = reg1 ^ reg2;
24117 : : tmp2 = tmp1 | reg3;
24118 : : reg_mask = tmp2 & reg4;
24119 : : reg_mask &= 0xFF;
24120 : :
24121 : : operands[1] = STRIP_UNARY (operands[1]);
24122 : : operands[2] = STRIP_UNARY (operands[2]);
24123 : : operands[6] = STRIP_UNARY (operands[6]);
24124 : : operands[5] = GEN_INT (reg_mask);
24125 : : if (!register_operand (operands[2], V16SImode))
24126 : : operands[2] = force_reg (V16SImode, operands[2]);
24127 : : if (!register_operand (operands[6], V16SImode))
24128 : : operands[6] = force_reg (V16SImode, operands[6]);
24129 : :
24130 : : }
24131 : : #undef DONE
24132 : : #undef FAIL
24133 : : static const uint8_t expand_encoding[] = {
24134 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24135 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24136 : : 0x25
24137 : : };
24138 : : return complete_seq (expand_encoding, operands);
24139 : : }
24140 : :
24141 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24142 : : extern rtx_insn *gen_split_2576 (rtx_insn *, rtx *);
24143 : : rtx_insn *
24144 : : gen_split_2576 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24145 : : {
24146 : : if (dump_file)
24147 : : fprintf (dump_file, "Splitting with gen_split_2576 (sse.md:14173)\n");
24148 : : start_sequence ();
24149 : : #define FAIL return (end_sequence (), nullptr)
24150 : : #define DONE return end_sequence ()
24151 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24152 : : {
24153 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24154 : : int reg6 = 0xF0;
24155 : : int reg2 = 0xCC;
24156 : : int reg1 = 0xAA;
24157 : : int reg3 = 0;
24158 : : int reg4 = 0;
24159 : : int reg_mask, tmp1, tmp2;
24160 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24161 : : STRIP_UNARY (operands[4])))
24162 : : {
24163 : : reg4 = reg1;
24164 : : reg3 = reg6;
24165 : : operands[6] = operands[3];
24166 : : }
24167 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24168 : : STRIP_UNARY (operands[4])))
24169 : : {
24170 : : reg4 = reg2;
24171 : : reg3 = reg6;
24172 : : operands[6] = operands[3];
24173 : : }
24174 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24175 : : STRIP_UNARY (operands[3])))
24176 : : {
24177 : : reg4 = reg6;
24178 : : reg3 = reg1;
24179 : : operands[6] = operands[4];
24180 : : }
24181 : : else
24182 : : {
24183 : : reg4 = reg6;
24184 : : reg3 = reg2;
24185 : : operands[6] = operands[4];
24186 : : }
24187 : :
24188 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24189 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24190 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24191 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24192 : :
24193 : : tmp1 = reg1 ^ reg2;
24194 : : tmp2 = tmp1 ^ reg3;
24195 : : reg_mask = tmp2 | reg4;
24196 : : reg_mask &= 0xFF;
24197 : :
24198 : : operands[1] = STRIP_UNARY (operands[1]);
24199 : : operands[2] = STRIP_UNARY (operands[2]);
24200 : : operands[6] = STRIP_UNARY (operands[6]);
24201 : : operands[5] = GEN_INT (reg_mask);
24202 : : if (!register_operand (operands[2], V16SImode))
24203 : : operands[2] = force_reg (V16SImode, operands[2]);
24204 : : if (!register_operand (operands[6], V16SImode))
24205 : : operands[6] = force_reg (V16SImode, operands[6]);
24206 : :
24207 : : }
24208 : : #undef DONE
24209 : : #undef FAIL
24210 : : static const uint8_t expand_encoding[] = {
24211 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24212 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24213 : : 0x25
24214 : : };
24215 : : return complete_seq (expand_encoding, operands);
24216 : : }
24217 : :
24218 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24219 : : extern rtx_insn *gen_split_2586 (rtx_insn *, rtx *);
24220 : : rtx_insn *
24221 : : gen_split_2586 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24222 : : {
24223 : : if (dump_file)
24224 : : fprintf (dump_file, "Splitting with gen_split_2586 (sse.md:14173)\n");
24225 : : start_sequence ();
24226 : : #define FAIL return (end_sequence (), nullptr)
24227 : : #define DONE return end_sequence ()
24228 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24229 : : {
24230 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24231 : : int reg6 = 0xF0;
24232 : : int reg2 = 0xCC;
24233 : : int reg1 = 0xAA;
24234 : : int reg3 = 0;
24235 : : int reg4 = 0;
24236 : : int reg_mask, tmp1, tmp2;
24237 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24238 : : STRIP_UNARY (operands[4])))
24239 : : {
24240 : : reg4 = reg1;
24241 : : reg3 = reg6;
24242 : : operands[6] = operands[3];
24243 : : }
24244 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24245 : : STRIP_UNARY (operands[4])))
24246 : : {
24247 : : reg4 = reg2;
24248 : : reg3 = reg6;
24249 : : operands[6] = operands[3];
24250 : : }
24251 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24252 : : STRIP_UNARY (operands[3])))
24253 : : {
24254 : : reg4 = reg6;
24255 : : reg3 = reg1;
24256 : : operands[6] = operands[4];
24257 : : }
24258 : : else
24259 : : {
24260 : : reg4 = reg6;
24261 : : reg3 = reg2;
24262 : : operands[6] = operands[4];
24263 : : }
24264 : :
24265 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24266 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24267 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24268 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24269 : :
24270 : : tmp1 = reg1 ^ reg2;
24271 : : tmp2 = tmp1 & reg3;
24272 : : reg_mask = tmp2 ^ reg4;
24273 : : reg_mask &= 0xFF;
24274 : :
24275 : : operands[1] = STRIP_UNARY (operands[1]);
24276 : : operands[2] = STRIP_UNARY (operands[2]);
24277 : : operands[6] = STRIP_UNARY (operands[6]);
24278 : : operands[5] = GEN_INT (reg_mask);
24279 : : if (!register_operand (operands[2], V8SImode))
24280 : : operands[2] = force_reg (V8SImode, operands[2]);
24281 : : if (!register_operand (operands[6], V8SImode))
24282 : : operands[6] = force_reg (V8SImode, operands[6]);
24283 : :
24284 : : }
24285 : : #undef DONE
24286 : : #undef FAIL
24287 : : static const uint8_t expand_encoding[] = {
24288 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24289 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24290 : : 0x25
24291 : : };
24292 : : return complete_seq (expand_encoding, operands);
24293 : : }
24294 : :
24295 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24296 : : extern rtx_insn *gen_split_2596 (rtx_insn *, rtx *);
24297 : : rtx_insn *
24298 : : gen_split_2596 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24299 : : {
24300 : : if (dump_file)
24301 : : fprintf (dump_file, "Splitting with gen_split_2596 (sse.md:14173)\n");
24302 : : start_sequence ();
24303 : : #define FAIL return (end_sequence (), nullptr)
24304 : : #define DONE return end_sequence ()
24305 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24306 : : {
24307 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24308 : : int reg6 = 0xF0;
24309 : : int reg2 = 0xCC;
24310 : : int reg1 = 0xAA;
24311 : : int reg3 = 0;
24312 : : int reg4 = 0;
24313 : : int reg_mask, tmp1, tmp2;
24314 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24315 : : STRIP_UNARY (operands[4])))
24316 : : {
24317 : : reg4 = reg1;
24318 : : reg3 = reg6;
24319 : : operands[6] = operands[3];
24320 : : }
24321 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24322 : : STRIP_UNARY (operands[4])))
24323 : : {
24324 : : reg4 = reg2;
24325 : : reg3 = reg6;
24326 : : operands[6] = operands[3];
24327 : : }
24328 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24329 : : STRIP_UNARY (operands[3])))
24330 : : {
24331 : : reg4 = reg6;
24332 : : reg3 = reg1;
24333 : : operands[6] = operands[4];
24334 : : }
24335 : : else
24336 : : {
24337 : : reg4 = reg6;
24338 : : reg3 = reg2;
24339 : : operands[6] = operands[4];
24340 : : }
24341 : :
24342 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24343 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24344 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24345 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24346 : :
24347 : : tmp1 = reg1 & reg2;
24348 : : tmp2 = tmp1 ^ reg3;
24349 : : reg_mask = tmp2 & reg4;
24350 : : reg_mask &= 0xFF;
24351 : :
24352 : : operands[1] = STRIP_UNARY (operands[1]);
24353 : : operands[2] = STRIP_UNARY (operands[2]);
24354 : : operands[6] = STRIP_UNARY (operands[6]);
24355 : : operands[5] = GEN_INT (reg_mask);
24356 : : if (!register_operand (operands[2], V8SImode))
24357 : : operands[2] = force_reg (V8SImode, operands[2]);
24358 : : if (!register_operand (operands[6], V8SImode))
24359 : : operands[6] = force_reg (V8SImode, operands[6]);
24360 : :
24361 : : }
24362 : : #undef DONE
24363 : : #undef FAIL
24364 : : static const uint8_t expand_encoding[] = {
24365 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24366 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24367 : : 0x25
24368 : : };
24369 : : return complete_seq (expand_encoding, operands);
24370 : : }
24371 : :
24372 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24373 : : extern rtx_insn *gen_split_2606 (rtx_insn *, rtx *);
24374 : : rtx_insn *
24375 : : gen_split_2606 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24376 : : {
24377 : : if (dump_file)
24378 : : fprintf (dump_file, "Splitting with gen_split_2606 (sse.md:14173)\n");
24379 : : start_sequence ();
24380 : : #define FAIL return (end_sequence (), nullptr)
24381 : : #define DONE return end_sequence ()
24382 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24383 : : {
24384 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24385 : : int reg6 = 0xF0;
24386 : : int reg2 = 0xCC;
24387 : : int reg1 = 0xAA;
24388 : : int reg3 = 0;
24389 : : int reg4 = 0;
24390 : : int reg_mask, tmp1, tmp2;
24391 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24392 : : STRIP_UNARY (operands[4])))
24393 : : {
24394 : : reg4 = reg1;
24395 : : reg3 = reg6;
24396 : : operands[6] = operands[3];
24397 : : }
24398 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24399 : : STRIP_UNARY (operands[4])))
24400 : : {
24401 : : reg4 = reg2;
24402 : : reg3 = reg6;
24403 : : operands[6] = operands[3];
24404 : : }
24405 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24406 : : STRIP_UNARY (operands[3])))
24407 : : {
24408 : : reg4 = reg6;
24409 : : reg3 = reg1;
24410 : : operands[6] = operands[4];
24411 : : }
24412 : : else
24413 : : {
24414 : : reg4 = reg6;
24415 : : reg3 = reg2;
24416 : : operands[6] = operands[4];
24417 : : }
24418 : :
24419 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24420 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24421 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24422 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24423 : :
24424 : : tmp1 = reg1 & reg2;
24425 : : tmp2 = tmp1 & reg3;
24426 : : reg_mask = tmp2 | reg4;
24427 : : reg_mask &= 0xFF;
24428 : :
24429 : : operands[1] = STRIP_UNARY (operands[1]);
24430 : : operands[2] = STRIP_UNARY (operands[2]);
24431 : : operands[6] = STRIP_UNARY (operands[6]);
24432 : : operands[5] = GEN_INT (reg_mask);
24433 : : if (!register_operand (operands[2], V4SImode))
24434 : : operands[2] = force_reg (V4SImode, operands[2]);
24435 : : if (!register_operand (operands[6], V4SImode))
24436 : : operands[6] = force_reg (V4SImode, operands[6]);
24437 : :
24438 : : }
24439 : : #undef DONE
24440 : : #undef FAIL
24441 : : static const uint8_t expand_encoding[] = {
24442 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24443 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24444 : : 0x25
24445 : : };
24446 : : return complete_seq (expand_encoding, operands);
24447 : : }
24448 : :
24449 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24450 : : extern rtx_insn *gen_split_2616 (rtx_insn *, rtx *);
24451 : : rtx_insn *
24452 : : gen_split_2616 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24453 : : {
24454 : : if (dump_file)
24455 : : fprintf (dump_file, "Splitting with gen_split_2616 (sse.md:14173)\n");
24456 : : start_sequence ();
24457 : : #define FAIL return (end_sequence (), nullptr)
24458 : : #define DONE return end_sequence ()
24459 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24460 : : {
24461 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24462 : : int reg6 = 0xF0;
24463 : : int reg2 = 0xCC;
24464 : : int reg1 = 0xAA;
24465 : : int reg3 = 0;
24466 : : int reg4 = 0;
24467 : : int reg_mask, tmp1, tmp2;
24468 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24469 : : STRIP_UNARY (operands[4])))
24470 : : {
24471 : : reg4 = reg1;
24472 : : reg3 = reg6;
24473 : : operands[6] = operands[3];
24474 : : }
24475 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24476 : : STRIP_UNARY (operands[4])))
24477 : : {
24478 : : reg4 = reg2;
24479 : : reg3 = reg6;
24480 : : operands[6] = operands[3];
24481 : : }
24482 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24483 : : STRIP_UNARY (operands[3])))
24484 : : {
24485 : : reg4 = reg6;
24486 : : reg3 = reg1;
24487 : : operands[6] = operands[4];
24488 : : }
24489 : : else
24490 : : {
24491 : : reg4 = reg6;
24492 : : reg3 = reg2;
24493 : : operands[6] = operands[4];
24494 : : }
24495 : :
24496 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24497 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24498 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24499 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24500 : :
24501 : : tmp1 = reg1 & reg2;
24502 : : tmp2 = tmp1 | reg3;
24503 : : reg_mask = tmp2 ^ reg4;
24504 : : reg_mask &= 0xFF;
24505 : :
24506 : : operands[1] = STRIP_UNARY (operands[1]);
24507 : : operands[2] = STRIP_UNARY (operands[2]);
24508 : : operands[6] = STRIP_UNARY (operands[6]);
24509 : : operands[5] = GEN_INT (reg_mask);
24510 : : if (!register_operand (operands[2], V4SImode))
24511 : : operands[2] = force_reg (V4SImode, operands[2]);
24512 : : if (!register_operand (operands[6], V4SImode))
24513 : : operands[6] = force_reg (V4SImode, operands[6]);
24514 : :
24515 : : }
24516 : : #undef DONE
24517 : : #undef FAIL
24518 : : static const uint8_t expand_encoding[] = {
24519 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24520 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24521 : : 0x25
24522 : : };
24523 : : return complete_seq (expand_encoding, operands);
24524 : : }
24525 : :
24526 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24527 : : extern rtx_insn *gen_split_2626 (rtx_insn *, rtx *);
24528 : : rtx_insn *
24529 : : gen_split_2626 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24530 : : {
24531 : : if (dump_file)
24532 : : fprintf (dump_file, "Splitting with gen_split_2626 (sse.md:14173)\n");
24533 : : start_sequence ();
24534 : : #define FAIL return (end_sequence (), nullptr)
24535 : : #define DONE return end_sequence ()
24536 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24537 : : {
24538 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24539 : : int reg6 = 0xF0;
24540 : : int reg2 = 0xCC;
24541 : : int reg1 = 0xAA;
24542 : : int reg3 = 0;
24543 : : int reg4 = 0;
24544 : : int reg_mask, tmp1, tmp2;
24545 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24546 : : STRIP_UNARY (operands[4])))
24547 : : {
24548 : : reg4 = reg1;
24549 : : reg3 = reg6;
24550 : : operands[6] = operands[3];
24551 : : }
24552 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24553 : : STRIP_UNARY (operands[4])))
24554 : : {
24555 : : reg4 = reg2;
24556 : : reg3 = reg6;
24557 : : operands[6] = operands[3];
24558 : : }
24559 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24560 : : STRIP_UNARY (operands[3])))
24561 : : {
24562 : : reg4 = reg6;
24563 : : reg3 = reg1;
24564 : : operands[6] = operands[4];
24565 : : }
24566 : : else
24567 : : {
24568 : : reg4 = reg6;
24569 : : reg3 = reg2;
24570 : : operands[6] = operands[4];
24571 : : }
24572 : :
24573 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24574 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24575 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24576 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24577 : :
24578 : : tmp1 = reg1 | reg2;
24579 : : tmp2 = tmp1 ^ reg3;
24580 : : reg_mask = tmp2 & reg4;
24581 : : reg_mask &= 0xFF;
24582 : :
24583 : : operands[1] = STRIP_UNARY (operands[1]);
24584 : : operands[2] = STRIP_UNARY (operands[2]);
24585 : : operands[6] = STRIP_UNARY (operands[6]);
24586 : : operands[5] = GEN_INT (reg_mask);
24587 : : if (!register_operand (operands[2], V4SImode))
24588 : : operands[2] = force_reg (V4SImode, operands[2]);
24589 : : if (!register_operand (operands[6], V4SImode))
24590 : : operands[6] = force_reg (V4SImode, operands[6]);
24591 : :
24592 : : }
24593 : : #undef DONE
24594 : : #undef FAIL
24595 : : static const uint8_t expand_encoding[] = {
24596 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24597 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24598 : : 0x25
24599 : : };
24600 : : return complete_seq (expand_encoding, operands);
24601 : : }
24602 : :
24603 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24604 : : extern rtx_insn *gen_split_2636 (rtx_insn *, rtx *);
24605 : : rtx_insn *
24606 : : gen_split_2636 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24607 : : {
24608 : : if (dump_file)
24609 : : fprintf (dump_file, "Splitting with gen_split_2636 (sse.md:14173)\n");
24610 : : start_sequence ();
24611 : : #define FAIL return (end_sequence (), nullptr)
24612 : : #define DONE return end_sequence ()
24613 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24614 : : {
24615 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24616 : : int reg6 = 0xF0;
24617 : : int reg2 = 0xCC;
24618 : : int reg1 = 0xAA;
24619 : : int reg3 = 0;
24620 : : int reg4 = 0;
24621 : : int reg_mask, tmp1, tmp2;
24622 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24623 : : STRIP_UNARY (operands[4])))
24624 : : {
24625 : : reg4 = reg1;
24626 : : reg3 = reg6;
24627 : : operands[6] = operands[3];
24628 : : }
24629 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24630 : : STRIP_UNARY (operands[4])))
24631 : : {
24632 : : reg4 = reg2;
24633 : : reg3 = reg6;
24634 : : operands[6] = operands[3];
24635 : : }
24636 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24637 : : STRIP_UNARY (operands[3])))
24638 : : {
24639 : : reg4 = reg6;
24640 : : reg3 = reg1;
24641 : : operands[6] = operands[4];
24642 : : }
24643 : : else
24644 : : {
24645 : : reg4 = reg6;
24646 : : reg3 = reg2;
24647 : : operands[6] = operands[4];
24648 : : }
24649 : :
24650 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24651 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24652 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24653 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24654 : :
24655 : : tmp1 = reg1 | reg2;
24656 : : tmp2 = tmp1 & reg3;
24657 : : reg_mask = tmp2 | reg4;
24658 : : reg_mask &= 0xFF;
24659 : :
24660 : : operands[1] = STRIP_UNARY (operands[1]);
24661 : : operands[2] = STRIP_UNARY (operands[2]);
24662 : : operands[6] = STRIP_UNARY (operands[6]);
24663 : : operands[5] = GEN_INT (reg_mask);
24664 : : if (!register_operand (operands[2], V8DImode))
24665 : : operands[2] = force_reg (V8DImode, operands[2]);
24666 : : if (!register_operand (operands[6], V8DImode))
24667 : : operands[6] = force_reg (V8DImode, operands[6]);
24668 : :
24669 : : }
24670 : : #undef DONE
24671 : : #undef FAIL
24672 : : static const uint8_t expand_encoding[] = {
24673 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24674 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24675 : : 0x25
24676 : : };
24677 : : return complete_seq (expand_encoding, operands);
24678 : : }
24679 : :
24680 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24681 : : extern rtx_insn *gen_split_2646 (rtx_insn *, rtx *);
24682 : : rtx_insn *
24683 : : gen_split_2646 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24684 : : {
24685 : : if (dump_file)
24686 : : fprintf (dump_file, "Splitting with gen_split_2646 (sse.md:14173)\n");
24687 : : start_sequence ();
24688 : : #define FAIL return (end_sequence (), nullptr)
24689 : : #define DONE return end_sequence ()
24690 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24691 : : {
24692 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24693 : : int reg6 = 0xF0;
24694 : : int reg2 = 0xCC;
24695 : : int reg1 = 0xAA;
24696 : : int reg3 = 0;
24697 : : int reg4 = 0;
24698 : : int reg_mask, tmp1, tmp2;
24699 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24700 : : STRIP_UNARY (operands[4])))
24701 : : {
24702 : : reg4 = reg1;
24703 : : reg3 = reg6;
24704 : : operands[6] = operands[3];
24705 : : }
24706 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24707 : : STRIP_UNARY (operands[4])))
24708 : : {
24709 : : reg4 = reg2;
24710 : : reg3 = reg6;
24711 : : operands[6] = operands[3];
24712 : : }
24713 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24714 : : STRIP_UNARY (operands[3])))
24715 : : {
24716 : : reg4 = reg6;
24717 : : reg3 = reg1;
24718 : : operands[6] = operands[4];
24719 : : }
24720 : : else
24721 : : {
24722 : : reg4 = reg6;
24723 : : reg3 = reg2;
24724 : : operands[6] = operands[4];
24725 : : }
24726 : :
24727 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24728 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24729 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24730 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24731 : :
24732 : : tmp1 = reg1 | reg2;
24733 : : tmp2 = tmp1 | reg3;
24734 : : reg_mask = tmp2 ^ reg4;
24735 : : reg_mask &= 0xFF;
24736 : :
24737 : : operands[1] = STRIP_UNARY (operands[1]);
24738 : : operands[2] = STRIP_UNARY (operands[2]);
24739 : : operands[6] = STRIP_UNARY (operands[6]);
24740 : : operands[5] = GEN_INT (reg_mask);
24741 : : if (!register_operand (operands[2], V8DImode))
24742 : : operands[2] = force_reg (V8DImode, operands[2]);
24743 : : if (!register_operand (operands[6], V8DImode))
24744 : : operands[6] = force_reg (V8DImode, operands[6]);
24745 : :
24746 : : }
24747 : : #undef DONE
24748 : : #undef FAIL
24749 : : static const uint8_t expand_encoding[] = {
24750 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24751 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24752 : : 0x25
24753 : : };
24754 : : return complete_seq (expand_encoding, operands);
24755 : : }
24756 : :
24757 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24758 : : extern rtx_insn *gen_split_2656 (rtx_insn *, rtx *);
24759 : : rtx_insn *
24760 : : gen_split_2656 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24761 : : {
24762 : : if (dump_file)
24763 : : fprintf (dump_file, "Splitting with gen_split_2656 (sse.md:14173)\n");
24764 : : start_sequence ();
24765 : : #define FAIL return (end_sequence (), nullptr)
24766 : : #define DONE return end_sequence ()
24767 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24768 : : {
24769 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24770 : : int reg6 = 0xF0;
24771 : : int reg2 = 0xCC;
24772 : : int reg1 = 0xAA;
24773 : : int reg3 = 0;
24774 : : int reg4 = 0;
24775 : : int reg_mask, tmp1, tmp2;
24776 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24777 : : STRIP_UNARY (operands[4])))
24778 : : {
24779 : : reg4 = reg1;
24780 : : reg3 = reg6;
24781 : : operands[6] = operands[3];
24782 : : }
24783 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24784 : : STRIP_UNARY (operands[4])))
24785 : : {
24786 : : reg4 = reg2;
24787 : : reg3 = reg6;
24788 : : operands[6] = operands[3];
24789 : : }
24790 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24791 : : STRIP_UNARY (operands[3])))
24792 : : {
24793 : : reg4 = reg6;
24794 : : reg3 = reg1;
24795 : : operands[6] = operands[4];
24796 : : }
24797 : : else
24798 : : {
24799 : : reg4 = reg6;
24800 : : reg3 = reg2;
24801 : : operands[6] = operands[4];
24802 : : }
24803 : :
24804 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24805 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24806 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24807 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24808 : :
24809 : : tmp1 = reg1 ^ reg2;
24810 : : tmp2 = tmp1 ^ reg3;
24811 : : reg_mask = tmp2 & reg4;
24812 : : reg_mask &= 0xFF;
24813 : :
24814 : : operands[1] = STRIP_UNARY (operands[1]);
24815 : : operands[2] = STRIP_UNARY (operands[2]);
24816 : : operands[6] = STRIP_UNARY (operands[6]);
24817 : : operands[5] = GEN_INT (reg_mask);
24818 : : if (!register_operand (operands[2], V8DImode))
24819 : : operands[2] = force_reg (V8DImode, operands[2]);
24820 : : if (!register_operand (operands[6], V8DImode))
24821 : : operands[6] = force_reg (V8DImode, operands[6]);
24822 : :
24823 : : }
24824 : : #undef DONE
24825 : : #undef FAIL
24826 : : static const uint8_t expand_encoding[] = {
24827 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24828 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24829 : : 0x25
24830 : : };
24831 : : return complete_seq (expand_encoding, operands);
24832 : : }
24833 : :
24834 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24835 : : extern rtx_insn *gen_split_2666 (rtx_insn *, rtx *);
24836 : : rtx_insn *
24837 : : gen_split_2666 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24838 : : {
24839 : : if (dump_file)
24840 : : fprintf (dump_file, "Splitting with gen_split_2666 (sse.md:14173)\n");
24841 : : start_sequence ();
24842 : : #define FAIL return (end_sequence (), nullptr)
24843 : : #define DONE return end_sequence ()
24844 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24845 : : {
24846 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24847 : : int reg6 = 0xF0;
24848 : : int reg2 = 0xCC;
24849 : : int reg1 = 0xAA;
24850 : : int reg3 = 0;
24851 : : int reg4 = 0;
24852 : : int reg_mask, tmp1, tmp2;
24853 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24854 : : STRIP_UNARY (operands[4])))
24855 : : {
24856 : : reg4 = reg1;
24857 : : reg3 = reg6;
24858 : : operands[6] = operands[3];
24859 : : }
24860 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24861 : : STRIP_UNARY (operands[4])))
24862 : : {
24863 : : reg4 = reg2;
24864 : : reg3 = reg6;
24865 : : operands[6] = operands[3];
24866 : : }
24867 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24868 : : STRIP_UNARY (operands[3])))
24869 : : {
24870 : : reg4 = reg6;
24871 : : reg3 = reg1;
24872 : : operands[6] = operands[4];
24873 : : }
24874 : : else
24875 : : {
24876 : : reg4 = reg6;
24877 : : reg3 = reg2;
24878 : : operands[6] = operands[4];
24879 : : }
24880 : :
24881 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24882 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24883 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24884 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24885 : :
24886 : : tmp1 = reg1 ^ reg2;
24887 : : tmp2 = tmp1 & reg3;
24888 : : reg_mask = tmp2 | reg4;
24889 : : reg_mask &= 0xFF;
24890 : :
24891 : : operands[1] = STRIP_UNARY (operands[1]);
24892 : : operands[2] = STRIP_UNARY (operands[2]);
24893 : : operands[6] = STRIP_UNARY (operands[6]);
24894 : : operands[5] = GEN_INT (reg_mask);
24895 : : if (!register_operand (operands[2], V4DImode))
24896 : : operands[2] = force_reg (V4DImode, operands[2]);
24897 : : if (!register_operand (operands[6], V4DImode))
24898 : : operands[6] = force_reg (V4DImode, operands[6]);
24899 : :
24900 : : }
24901 : : #undef DONE
24902 : : #undef FAIL
24903 : : static const uint8_t expand_encoding[] = {
24904 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24905 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24906 : : 0x25
24907 : : };
24908 : : return complete_seq (expand_encoding, operands);
24909 : : }
24910 : :
24911 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24912 : : extern rtx_insn *gen_split_2676 (rtx_insn *, rtx *);
24913 : : rtx_insn *
24914 : : gen_split_2676 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24915 : : {
24916 : : if (dump_file)
24917 : : fprintf (dump_file, "Splitting with gen_split_2676 (sse.md:14173)\n");
24918 : : start_sequence ();
24919 : : #define FAIL return (end_sequence (), nullptr)
24920 : : #define DONE return end_sequence ()
24921 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24922 : : {
24923 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24924 : : int reg6 = 0xF0;
24925 : : int reg2 = 0xCC;
24926 : : int reg1 = 0xAA;
24927 : : int reg3 = 0;
24928 : : int reg4 = 0;
24929 : : int reg_mask, tmp1, tmp2;
24930 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24931 : : STRIP_UNARY (operands[4])))
24932 : : {
24933 : : reg4 = reg1;
24934 : : reg3 = reg6;
24935 : : operands[6] = operands[3];
24936 : : }
24937 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24938 : : STRIP_UNARY (operands[4])))
24939 : : {
24940 : : reg4 = reg2;
24941 : : reg3 = reg6;
24942 : : operands[6] = operands[3];
24943 : : }
24944 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24945 : : STRIP_UNARY (operands[3])))
24946 : : {
24947 : : reg4 = reg6;
24948 : : reg3 = reg1;
24949 : : operands[6] = operands[4];
24950 : : }
24951 : : else
24952 : : {
24953 : : reg4 = reg6;
24954 : : reg3 = reg2;
24955 : : operands[6] = operands[4];
24956 : : }
24957 : :
24958 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24959 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24960 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24961 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24962 : :
24963 : : tmp1 = reg1 ^ reg2;
24964 : : tmp2 = tmp1 | reg3;
24965 : : reg_mask = tmp2 ^ reg4;
24966 : : reg_mask &= 0xFF;
24967 : :
24968 : : operands[1] = STRIP_UNARY (operands[1]);
24969 : : operands[2] = STRIP_UNARY (operands[2]);
24970 : : operands[6] = STRIP_UNARY (operands[6]);
24971 : : operands[5] = GEN_INT (reg_mask);
24972 : : if (!register_operand (operands[2], V4DImode))
24973 : : operands[2] = force_reg (V4DImode, operands[2]);
24974 : : if (!register_operand (operands[6], V4DImode))
24975 : : operands[6] = force_reg (V4DImode, operands[6]);
24976 : :
24977 : : }
24978 : : #undef DONE
24979 : : #undef FAIL
24980 : : static const uint8_t expand_encoding[] = {
24981 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24982 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24983 : : 0x25
24984 : : };
24985 : : return complete_seq (expand_encoding, operands);
24986 : : }
24987 : :
24988 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
24989 : : extern rtx_insn *gen_split_2686 (rtx_insn *, rtx *);
24990 : : rtx_insn *
24991 : : gen_split_2686 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24992 : : {
24993 : : if (dump_file)
24994 : : fprintf (dump_file, "Splitting with gen_split_2686 (sse.md:14173)\n");
24995 : : start_sequence ();
24996 : : #define FAIL return (end_sequence (), nullptr)
24997 : : #define DONE return end_sequence ()
24998 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24999 : : {
25000 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25001 : : int reg6 = 0xF0;
25002 : : int reg2 = 0xCC;
25003 : : int reg1 = 0xAA;
25004 : : int reg3 = 0;
25005 : : int reg4 = 0;
25006 : : int reg_mask, tmp1, tmp2;
25007 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25008 : : STRIP_UNARY (operands[4])))
25009 : : {
25010 : : reg4 = reg1;
25011 : : reg3 = reg6;
25012 : : operands[6] = operands[3];
25013 : : }
25014 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25015 : : STRIP_UNARY (operands[4])))
25016 : : {
25017 : : reg4 = reg2;
25018 : : reg3 = reg6;
25019 : : operands[6] = operands[3];
25020 : : }
25021 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25022 : : STRIP_UNARY (operands[3])))
25023 : : {
25024 : : reg4 = reg6;
25025 : : reg3 = reg1;
25026 : : operands[6] = operands[4];
25027 : : }
25028 : : else
25029 : : {
25030 : : reg4 = reg6;
25031 : : reg3 = reg2;
25032 : : operands[6] = operands[4];
25033 : : }
25034 : :
25035 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25036 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25037 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25038 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25039 : :
25040 : : tmp1 = reg1 & reg2;
25041 : : tmp2 = tmp1 & reg3;
25042 : : reg_mask = tmp2 & reg4;
25043 : : reg_mask &= 0xFF;
25044 : :
25045 : : operands[1] = STRIP_UNARY (operands[1]);
25046 : : operands[2] = STRIP_UNARY (operands[2]);
25047 : : operands[6] = STRIP_UNARY (operands[6]);
25048 : : operands[5] = GEN_INT (reg_mask);
25049 : : if (!register_operand (operands[2], V2DImode))
25050 : : operands[2] = force_reg (V2DImode, operands[2]);
25051 : : if (!register_operand (operands[6], V2DImode))
25052 : : operands[6] = force_reg (V2DImode, operands[6]);
25053 : :
25054 : : }
25055 : : #undef DONE
25056 : : #undef FAIL
25057 : : static const uint8_t expand_encoding[] = {
25058 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25059 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25060 : : 0x25
25061 : : };
25062 : : return complete_seq (expand_encoding, operands);
25063 : : }
25064 : :
25065 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25066 : : extern rtx_insn *gen_split_2696 (rtx_insn *, rtx *);
25067 : : rtx_insn *
25068 : : gen_split_2696 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25069 : : {
25070 : : if (dump_file)
25071 : : fprintf (dump_file, "Splitting with gen_split_2696 (sse.md:14173)\n");
25072 : : start_sequence ();
25073 : : #define FAIL return (end_sequence (), nullptr)
25074 : : #define DONE return end_sequence ()
25075 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25076 : : {
25077 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25078 : : int reg6 = 0xF0;
25079 : : int reg2 = 0xCC;
25080 : : int reg1 = 0xAA;
25081 : : int reg3 = 0;
25082 : : int reg4 = 0;
25083 : : int reg_mask, tmp1, tmp2;
25084 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25085 : : STRIP_UNARY (operands[4])))
25086 : : {
25087 : : reg4 = reg1;
25088 : : reg3 = reg6;
25089 : : operands[6] = operands[3];
25090 : : }
25091 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25092 : : STRIP_UNARY (operands[4])))
25093 : : {
25094 : : reg4 = reg2;
25095 : : reg3 = reg6;
25096 : : operands[6] = operands[3];
25097 : : }
25098 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25099 : : STRIP_UNARY (operands[3])))
25100 : : {
25101 : : reg4 = reg6;
25102 : : reg3 = reg1;
25103 : : operands[6] = operands[4];
25104 : : }
25105 : : else
25106 : : {
25107 : : reg4 = reg6;
25108 : : reg3 = reg2;
25109 : : operands[6] = operands[4];
25110 : : }
25111 : :
25112 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25113 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25114 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25115 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25116 : :
25117 : : tmp1 = reg1 & reg2;
25118 : : tmp2 = tmp1 | reg3;
25119 : : reg_mask = tmp2 | reg4;
25120 : : reg_mask &= 0xFF;
25121 : :
25122 : : operands[1] = STRIP_UNARY (operands[1]);
25123 : : operands[2] = STRIP_UNARY (operands[2]);
25124 : : operands[6] = STRIP_UNARY (operands[6]);
25125 : : operands[5] = GEN_INT (reg_mask);
25126 : : if (!register_operand (operands[2], V2DImode))
25127 : : operands[2] = force_reg (V2DImode, operands[2]);
25128 : : if (!register_operand (operands[6], V2DImode))
25129 : : operands[6] = force_reg (V2DImode, operands[6]);
25130 : :
25131 : : }
25132 : : #undef DONE
25133 : : #undef FAIL
25134 : : static const uint8_t expand_encoding[] = {
25135 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25136 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25137 : : 0x25
25138 : : };
25139 : : return complete_seq (expand_encoding, operands);
25140 : : }
25141 : :
25142 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25143 : : extern rtx_insn *gen_split_2706 (rtx_insn *, rtx *);
25144 : : rtx_insn *
25145 : : gen_split_2706 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25146 : : {
25147 : : if (dump_file)
25148 : : fprintf (dump_file, "Splitting with gen_split_2706 (sse.md:14173)\n");
25149 : : start_sequence ();
25150 : : #define FAIL return (end_sequence (), nullptr)
25151 : : #define DONE return end_sequence ()
25152 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25153 : : {
25154 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25155 : : int reg6 = 0xF0;
25156 : : int reg2 = 0xCC;
25157 : : int reg1 = 0xAA;
25158 : : int reg3 = 0;
25159 : : int reg4 = 0;
25160 : : int reg_mask, tmp1, tmp2;
25161 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25162 : : STRIP_UNARY (operands[4])))
25163 : : {
25164 : : reg4 = reg1;
25165 : : reg3 = reg6;
25166 : : operands[6] = operands[3];
25167 : : }
25168 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25169 : : STRIP_UNARY (operands[4])))
25170 : : {
25171 : : reg4 = reg2;
25172 : : reg3 = reg6;
25173 : : operands[6] = operands[3];
25174 : : }
25175 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25176 : : STRIP_UNARY (operands[3])))
25177 : : {
25178 : : reg4 = reg6;
25179 : : reg3 = reg1;
25180 : : operands[6] = operands[4];
25181 : : }
25182 : : else
25183 : : {
25184 : : reg4 = reg6;
25185 : : reg3 = reg2;
25186 : : operands[6] = operands[4];
25187 : : }
25188 : :
25189 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25190 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25191 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25192 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25193 : :
25194 : : tmp1 = reg1 & reg2;
25195 : : tmp2 = tmp1 ^ reg3;
25196 : : reg_mask = tmp2 ^ reg4;
25197 : : reg_mask &= 0xFF;
25198 : :
25199 : : operands[1] = STRIP_UNARY (operands[1]);
25200 : : operands[2] = STRIP_UNARY (operands[2]);
25201 : : operands[6] = STRIP_UNARY (operands[6]);
25202 : : operands[5] = GEN_INT (reg_mask);
25203 : : if (!register_operand (operands[2], V2DImode))
25204 : : operands[2] = force_reg (V2DImode, operands[2]);
25205 : : if (!register_operand (operands[6], V2DImode))
25206 : : operands[6] = force_reg (V2DImode, operands[6]);
25207 : :
25208 : : }
25209 : : #undef DONE
25210 : : #undef FAIL
25211 : : static const uint8_t expand_encoding[] = {
25212 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25213 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25214 : : 0x25
25215 : : };
25216 : : return complete_seq (expand_encoding, operands);
25217 : : }
25218 : :
25219 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25220 : : extern rtx_insn *gen_split_2716 (rtx_insn *, rtx *);
25221 : : rtx_insn *
25222 : : gen_split_2716 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25223 : : {
25224 : : if (dump_file)
25225 : : fprintf (dump_file, "Splitting with gen_split_2716 (sse.md:14173)\n");
25226 : : start_sequence ();
25227 : : #define FAIL return (end_sequence (), nullptr)
25228 : : #define DONE return end_sequence ()
25229 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25230 : : {
25231 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25232 : : int reg6 = 0xF0;
25233 : : int reg2 = 0xCC;
25234 : : int reg1 = 0xAA;
25235 : : int reg3 = 0;
25236 : : int reg4 = 0;
25237 : : int reg_mask, tmp1, tmp2;
25238 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25239 : : STRIP_UNARY (operands[4])))
25240 : : {
25241 : : reg4 = reg1;
25242 : : reg3 = reg6;
25243 : : operands[6] = operands[3];
25244 : : }
25245 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25246 : : STRIP_UNARY (operands[4])))
25247 : : {
25248 : : reg4 = reg2;
25249 : : reg3 = reg6;
25250 : : operands[6] = operands[3];
25251 : : }
25252 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25253 : : STRIP_UNARY (operands[3])))
25254 : : {
25255 : : reg4 = reg6;
25256 : : reg3 = reg1;
25257 : : operands[6] = operands[4];
25258 : : }
25259 : : else
25260 : : {
25261 : : reg4 = reg6;
25262 : : reg3 = reg2;
25263 : : operands[6] = operands[4];
25264 : : }
25265 : :
25266 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25267 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25268 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25269 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25270 : :
25271 : : tmp1 = reg1 | reg2;
25272 : : tmp2 = tmp1 & reg3;
25273 : : reg_mask = tmp2 & reg4;
25274 : : reg_mask &= 0xFF;
25275 : :
25276 : : operands[1] = STRIP_UNARY (operands[1]);
25277 : : operands[2] = STRIP_UNARY (operands[2]);
25278 : : operands[6] = STRIP_UNARY (operands[6]);
25279 : : operands[5] = GEN_INT (reg_mask);
25280 : : if (!register_operand (operands[2], V32HFmode))
25281 : : operands[2] = force_reg (V32HFmode, operands[2]);
25282 : : if (!register_operand (operands[6], V32HFmode))
25283 : : operands[6] = force_reg (V32HFmode, operands[6]);
25284 : :
25285 : : }
25286 : : #undef DONE
25287 : : #undef FAIL
25288 : : static const uint8_t expand_encoding[] = {
25289 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25290 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25291 : : 0x25
25292 : : };
25293 : : return complete_seq (expand_encoding, operands);
25294 : : }
25295 : :
25296 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25297 : : extern rtx_insn *gen_split_2726 (rtx_insn *, rtx *);
25298 : : rtx_insn *
25299 : : gen_split_2726 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25300 : : {
25301 : : if (dump_file)
25302 : : fprintf (dump_file, "Splitting with gen_split_2726 (sse.md:14173)\n");
25303 : : start_sequence ();
25304 : : #define FAIL return (end_sequence (), nullptr)
25305 : : #define DONE return end_sequence ()
25306 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25307 : : {
25308 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25309 : : int reg6 = 0xF0;
25310 : : int reg2 = 0xCC;
25311 : : int reg1 = 0xAA;
25312 : : int reg3 = 0;
25313 : : int reg4 = 0;
25314 : : int reg_mask, tmp1, tmp2;
25315 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25316 : : STRIP_UNARY (operands[4])))
25317 : : {
25318 : : reg4 = reg1;
25319 : : reg3 = reg6;
25320 : : operands[6] = operands[3];
25321 : : }
25322 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25323 : : STRIP_UNARY (operands[4])))
25324 : : {
25325 : : reg4 = reg2;
25326 : : reg3 = reg6;
25327 : : operands[6] = operands[3];
25328 : : }
25329 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25330 : : STRIP_UNARY (operands[3])))
25331 : : {
25332 : : reg4 = reg6;
25333 : : reg3 = reg1;
25334 : : operands[6] = operands[4];
25335 : : }
25336 : : else
25337 : : {
25338 : : reg4 = reg6;
25339 : : reg3 = reg2;
25340 : : operands[6] = operands[4];
25341 : : }
25342 : :
25343 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25344 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25345 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25346 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25347 : :
25348 : : tmp1 = reg1 | reg2;
25349 : : tmp2 = tmp1 | reg3;
25350 : : reg_mask = tmp2 | reg4;
25351 : : reg_mask &= 0xFF;
25352 : :
25353 : : operands[1] = STRIP_UNARY (operands[1]);
25354 : : operands[2] = STRIP_UNARY (operands[2]);
25355 : : operands[6] = STRIP_UNARY (operands[6]);
25356 : : operands[5] = GEN_INT (reg_mask);
25357 : : if (!register_operand (operands[2], V32HFmode))
25358 : : operands[2] = force_reg (V32HFmode, operands[2]);
25359 : : if (!register_operand (operands[6], V32HFmode))
25360 : : operands[6] = force_reg (V32HFmode, operands[6]);
25361 : :
25362 : : }
25363 : : #undef DONE
25364 : : #undef FAIL
25365 : : static const uint8_t expand_encoding[] = {
25366 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25367 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25368 : : 0x25
25369 : : };
25370 : : return complete_seq (expand_encoding, operands);
25371 : : }
25372 : :
25373 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25374 : : extern rtx_insn *gen_split_2736 (rtx_insn *, rtx *);
25375 : : rtx_insn *
25376 : : gen_split_2736 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25377 : : {
25378 : : if (dump_file)
25379 : : fprintf (dump_file, "Splitting with gen_split_2736 (sse.md:14173)\n");
25380 : : start_sequence ();
25381 : : #define FAIL return (end_sequence (), nullptr)
25382 : : #define DONE return end_sequence ()
25383 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25384 : : {
25385 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25386 : : int reg6 = 0xF0;
25387 : : int reg2 = 0xCC;
25388 : : int reg1 = 0xAA;
25389 : : int reg3 = 0;
25390 : : int reg4 = 0;
25391 : : int reg_mask, tmp1, tmp2;
25392 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25393 : : STRIP_UNARY (operands[4])))
25394 : : {
25395 : : reg4 = reg1;
25396 : : reg3 = reg6;
25397 : : operands[6] = operands[3];
25398 : : }
25399 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25400 : : STRIP_UNARY (operands[4])))
25401 : : {
25402 : : reg4 = reg2;
25403 : : reg3 = reg6;
25404 : : operands[6] = operands[3];
25405 : : }
25406 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25407 : : STRIP_UNARY (operands[3])))
25408 : : {
25409 : : reg4 = reg6;
25410 : : reg3 = reg1;
25411 : : operands[6] = operands[4];
25412 : : }
25413 : : else
25414 : : {
25415 : : reg4 = reg6;
25416 : : reg3 = reg2;
25417 : : operands[6] = operands[4];
25418 : : }
25419 : :
25420 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25421 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25422 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25423 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25424 : :
25425 : : tmp1 = reg1 | reg2;
25426 : : tmp2 = tmp1 ^ reg3;
25427 : : reg_mask = tmp2 ^ reg4;
25428 : : reg_mask &= 0xFF;
25429 : :
25430 : : operands[1] = STRIP_UNARY (operands[1]);
25431 : : operands[2] = STRIP_UNARY (operands[2]);
25432 : : operands[6] = STRIP_UNARY (operands[6]);
25433 : : operands[5] = GEN_INT (reg_mask);
25434 : : if (!register_operand (operands[2], V32HFmode))
25435 : : operands[2] = force_reg (V32HFmode, operands[2]);
25436 : : if (!register_operand (operands[6], V32HFmode))
25437 : : operands[6] = force_reg (V32HFmode, operands[6]);
25438 : :
25439 : : }
25440 : : #undef DONE
25441 : : #undef FAIL
25442 : : static const uint8_t expand_encoding[] = {
25443 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25444 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25445 : : 0x25
25446 : : };
25447 : : return complete_seq (expand_encoding, operands);
25448 : : }
25449 : :
25450 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25451 : : extern rtx_insn *gen_split_2746 (rtx_insn *, rtx *);
25452 : : rtx_insn *
25453 : : gen_split_2746 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25454 : : {
25455 : : if (dump_file)
25456 : : fprintf (dump_file, "Splitting with gen_split_2746 (sse.md:14173)\n");
25457 : : start_sequence ();
25458 : : #define FAIL return (end_sequence (), nullptr)
25459 : : #define DONE return end_sequence ()
25460 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25461 : : {
25462 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25463 : : int reg6 = 0xF0;
25464 : : int reg2 = 0xCC;
25465 : : int reg1 = 0xAA;
25466 : : int reg3 = 0;
25467 : : int reg4 = 0;
25468 : : int reg_mask, tmp1, tmp2;
25469 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25470 : : STRIP_UNARY (operands[4])))
25471 : : {
25472 : : reg4 = reg1;
25473 : : reg3 = reg6;
25474 : : operands[6] = operands[3];
25475 : : }
25476 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25477 : : STRIP_UNARY (operands[4])))
25478 : : {
25479 : : reg4 = reg2;
25480 : : reg3 = reg6;
25481 : : operands[6] = operands[3];
25482 : : }
25483 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25484 : : STRIP_UNARY (operands[3])))
25485 : : {
25486 : : reg4 = reg6;
25487 : : reg3 = reg1;
25488 : : operands[6] = operands[4];
25489 : : }
25490 : : else
25491 : : {
25492 : : reg4 = reg6;
25493 : : reg3 = reg2;
25494 : : operands[6] = operands[4];
25495 : : }
25496 : :
25497 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25498 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25499 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25500 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25501 : :
25502 : : tmp1 = reg1 ^ reg2;
25503 : : tmp2 = tmp1 & reg3;
25504 : : reg_mask = tmp2 & reg4;
25505 : : reg_mask &= 0xFF;
25506 : :
25507 : : operands[1] = STRIP_UNARY (operands[1]);
25508 : : operands[2] = STRIP_UNARY (operands[2]);
25509 : : operands[6] = STRIP_UNARY (operands[6]);
25510 : : operands[5] = GEN_INT (reg_mask);
25511 : : if (!register_operand (operands[2], V16HFmode))
25512 : : operands[2] = force_reg (V16HFmode, operands[2]);
25513 : : if (!register_operand (operands[6], V16HFmode))
25514 : : operands[6] = force_reg (V16HFmode, operands[6]);
25515 : :
25516 : : }
25517 : : #undef DONE
25518 : : #undef FAIL
25519 : : static const uint8_t expand_encoding[] = {
25520 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25521 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25522 : : 0x25
25523 : : };
25524 : : return complete_seq (expand_encoding, operands);
25525 : : }
25526 : :
25527 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25528 : : extern rtx_insn *gen_split_2756 (rtx_insn *, rtx *);
25529 : : rtx_insn *
25530 : : gen_split_2756 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25531 : : {
25532 : : if (dump_file)
25533 : : fprintf (dump_file, "Splitting with gen_split_2756 (sse.md:14173)\n");
25534 : : start_sequence ();
25535 : : #define FAIL return (end_sequence (), nullptr)
25536 : : #define DONE return end_sequence ()
25537 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25538 : : {
25539 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25540 : : int reg6 = 0xF0;
25541 : : int reg2 = 0xCC;
25542 : : int reg1 = 0xAA;
25543 : : int reg3 = 0;
25544 : : int reg4 = 0;
25545 : : int reg_mask, tmp1, tmp2;
25546 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25547 : : STRIP_UNARY (operands[4])))
25548 : : {
25549 : : reg4 = reg1;
25550 : : reg3 = reg6;
25551 : : operands[6] = operands[3];
25552 : : }
25553 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25554 : : STRIP_UNARY (operands[4])))
25555 : : {
25556 : : reg4 = reg2;
25557 : : reg3 = reg6;
25558 : : operands[6] = operands[3];
25559 : : }
25560 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25561 : : STRIP_UNARY (operands[3])))
25562 : : {
25563 : : reg4 = reg6;
25564 : : reg3 = reg1;
25565 : : operands[6] = operands[4];
25566 : : }
25567 : : else
25568 : : {
25569 : : reg4 = reg6;
25570 : : reg3 = reg2;
25571 : : operands[6] = operands[4];
25572 : : }
25573 : :
25574 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25575 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25576 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25577 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25578 : :
25579 : : tmp1 = reg1 ^ reg2;
25580 : : tmp2 = tmp1 | reg3;
25581 : : reg_mask = tmp2 | reg4;
25582 : : reg_mask &= 0xFF;
25583 : :
25584 : : operands[1] = STRIP_UNARY (operands[1]);
25585 : : operands[2] = STRIP_UNARY (operands[2]);
25586 : : operands[6] = STRIP_UNARY (operands[6]);
25587 : : operands[5] = GEN_INT (reg_mask);
25588 : : if (!register_operand (operands[2], V16HFmode))
25589 : : operands[2] = force_reg (V16HFmode, operands[2]);
25590 : : if (!register_operand (operands[6], V16HFmode))
25591 : : operands[6] = force_reg (V16HFmode, operands[6]);
25592 : :
25593 : : }
25594 : : #undef DONE
25595 : : #undef FAIL
25596 : : static const uint8_t expand_encoding[] = {
25597 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25598 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25599 : : 0x25
25600 : : };
25601 : : return complete_seq (expand_encoding, operands);
25602 : : }
25603 : :
25604 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25605 : : extern rtx_insn *gen_split_2766 (rtx_insn *, rtx *);
25606 : : rtx_insn *
25607 : : gen_split_2766 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25608 : : {
25609 : : if (dump_file)
25610 : : fprintf (dump_file, "Splitting with gen_split_2766 (sse.md:14173)\n");
25611 : : start_sequence ();
25612 : : #define FAIL return (end_sequence (), nullptr)
25613 : : #define DONE return end_sequence ()
25614 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25615 : : {
25616 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25617 : : int reg6 = 0xF0;
25618 : : int reg2 = 0xCC;
25619 : : int reg1 = 0xAA;
25620 : : int reg3 = 0;
25621 : : int reg4 = 0;
25622 : : int reg_mask, tmp1, tmp2;
25623 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25624 : : STRIP_UNARY (operands[4])))
25625 : : {
25626 : : reg4 = reg1;
25627 : : reg3 = reg6;
25628 : : operands[6] = operands[3];
25629 : : }
25630 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25631 : : STRIP_UNARY (operands[4])))
25632 : : {
25633 : : reg4 = reg2;
25634 : : reg3 = reg6;
25635 : : operands[6] = operands[3];
25636 : : }
25637 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25638 : : STRIP_UNARY (operands[3])))
25639 : : {
25640 : : reg4 = reg6;
25641 : : reg3 = reg1;
25642 : : operands[6] = operands[4];
25643 : : }
25644 : : else
25645 : : {
25646 : : reg4 = reg6;
25647 : : reg3 = reg2;
25648 : : operands[6] = operands[4];
25649 : : }
25650 : :
25651 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25652 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25653 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25654 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25655 : :
25656 : : tmp1 = reg1 ^ reg2;
25657 : : tmp2 = tmp1 ^ reg3;
25658 : : reg_mask = tmp2 ^ reg4;
25659 : : reg_mask &= 0xFF;
25660 : :
25661 : : operands[1] = STRIP_UNARY (operands[1]);
25662 : : operands[2] = STRIP_UNARY (operands[2]);
25663 : : operands[6] = STRIP_UNARY (operands[6]);
25664 : : operands[5] = GEN_INT (reg_mask);
25665 : : if (!register_operand (operands[2], V16HFmode))
25666 : : operands[2] = force_reg (V16HFmode, operands[2]);
25667 : : if (!register_operand (operands[6], V16HFmode))
25668 : : operands[6] = force_reg (V16HFmode, operands[6]);
25669 : :
25670 : : }
25671 : : #undef DONE
25672 : : #undef FAIL
25673 : : static const uint8_t expand_encoding[] = {
25674 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25675 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25676 : : 0x25
25677 : : };
25678 : : return complete_seq (expand_encoding, operands);
25679 : : }
25680 : :
25681 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25682 : : extern rtx_insn *gen_split_2776 (rtx_insn *, rtx *);
25683 : : rtx_insn *
25684 : : gen_split_2776 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25685 : : {
25686 : : if (dump_file)
25687 : : fprintf (dump_file, "Splitting with gen_split_2776 (sse.md:14173)\n");
25688 : : start_sequence ();
25689 : : #define FAIL return (end_sequence (), nullptr)
25690 : : #define DONE return end_sequence ()
25691 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25692 : : {
25693 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25694 : : int reg6 = 0xF0;
25695 : : int reg2 = 0xCC;
25696 : : int reg1 = 0xAA;
25697 : : int reg3 = 0;
25698 : : int reg4 = 0;
25699 : : int reg_mask, tmp1, tmp2;
25700 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25701 : : STRIP_UNARY (operands[4])))
25702 : : {
25703 : : reg4 = reg1;
25704 : : reg3 = reg6;
25705 : : operands[6] = operands[3];
25706 : : }
25707 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25708 : : STRIP_UNARY (operands[4])))
25709 : : {
25710 : : reg4 = reg2;
25711 : : reg3 = reg6;
25712 : : operands[6] = operands[3];
25713 : : }
25714 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25715 : : STRIP_UNARY (operands[3])))
25716 : : {
25717 : : reg4 = reg6;
25718 : : reg3 = reg1;
25719 : : operands[6] = operands[4];
25720 : : }
25721 : : else
25722 : : {
25723 : : reg4 = reg6;
25724 : : reg3 = reg2;
25725 : : operands[6] = operands[4];
25726 : : }
25727 : :
25728 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25729 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25730 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25731 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25732 : :
25733 : : tmp1 = reg1 & reg2;
25734 : : tmp2 = tmp1 | reg3;
25735 : : reg_mask = tmp2 & reg4;
25736 : : reg_mask &= 0xFF;
25737 : :
25738 : : operands[1] = STRIP_UNARY (operands[1]);
25739 : : operands[2] = STRIP_UNARY (operands[2]);
25740 : : operands[6] = STRIP_UNARY (operands[6]);
25741 : : operands[5] = GEN_INT (reg_mask);
25742 : : if (!register_operand (operands[2], V8HFmode))
25743 : : operands[2] = force_reg (V8HFmode, operands[2]);
25744 : : if (!register_operand (operands[6], V8HFmode))
25745 : : operands[6] = force_reg (V8HFmode, operands[6]);
25746 : :
25747 : : }
25748 : : #undef DONE
25749 : : #undef FAIL
25750 : : static const uint8_t expand_encoding[] = {
25751 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25752 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25753 : : 0x25
25754 : : };
25755 : : return complete_seq (expand_encoding, operands);
25756 : : }
25757 : :
25758 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25759 : : extern rtx_insn *gen_split_2786 (rtx_insn *, rtx *);
25760 : : rtx_insn *
25761 : : gen_split_2786 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25762 : : {
25763 : : if (dump_file)
25764 : : fprintf (dump_file, "Splitting with gen_split_2786 (sse.md:14173)\n");
25765 : : start_sequence ();
25766 : : #define FAIL return (end_sequence (), nullptr)
25767 : : #define DONE return end_sequence ()
25768 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25769 : : {
25770 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25771 : : int reg6 = 0xF0;
25772 : : int reg2 = 0xCC;
25773 : : int reg1 = 0xAA;
25774 : : int reg3 = 0;
25775 : : int reg4 = 0;
25776 : : int reg_mask, tmp1, tmp2;
25777 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25778 : : STRIP_UNARY (operands[4])))
25779 : : {
25780 : : reg4 = reg1;
25781 : : reg3 = reg6;
25782 : : operands[6] = operands[3];
25783 : : }
25784 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25785 : : STRIP_UNARY (operands[4])))
25786 : : {
25787 : : reg4 = reg2;
25788 : : reg3 = reg6;
25789 : : operands[6] = operands[3];
25790 : : }
25791 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25792 : : STRIP_UNARY (operands[3])))
25793 : : {
25794 : : reg4 = reg6;
25795 : : reg3 = reg1;
25796 : : operands[6] = operands[4];
25797 : : }
25798 : : else
25799 : : {
25800 : : reg4 = reg6;
25801 : : reg3 = reg2;
25802 : : operands[6] = operands[4];
25803 : : }
25804 : :
25805 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25806 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25807 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25808 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25809 : :
25810 : : tmp1 = reg1 & reg2;
25811 : : tmp2 = tmp1 ^ reg3;
25812 : : reg_mask = tmp2 | reg4;
25813 : : reg_mask &= 0xFF;
25814 : :
25815 : : operands[1] = STRIP_UNARY (operands[1]);
25816 : : operands[2] = STRIP_UNARY (operands[2]);
25817 : : operands[6] = STRIP_UNARY (operands[6]);
25818 : : operands[5] = GEN_INT (reg_mask);
25819 : : if (!register_operand (operands[2], V8HFmode))
25820 : : operands[2] = force_reg (V8HFmode, operands[2]);
25821 : : if (!register_operand (operands[6], V8HFmode))
25822 : : operands[6] = force_reg (V8HFmode, operands[6]);
25823 : :
25824 : : }
25825 : : #undef DONE
25826 : : #undef FAIL
25827 : : static const uint8_t expand_encoding[] = {
25828 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25829 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25830 : : 0x25
25831 : : };
25832 : : return complete_seq (expand_encoding, operands);
25833 : : }
25834 : :
25835 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25836 : : extern rtx_insn *gen_split_2796 (rtx_insn *, rtx *);
25837 : : rtx_insn *
25838 : : gen_split_2796 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25839 : : {
25840 : : if (dump_file)
25841 : : fprintf (dump_file, "Splitting with gen_split_2796 (sse.md:14173)\n");
25842 : : start_sequence ();
25843 : : #define FAIL return (end_sequence (), nullptr)
25844 : : #define DONE return end_sequence ()
25845 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25846 : : {
25847 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25848 : : int reg6 = 0xF0;
25849 : : int reg2 = 0xCC;
25850 : : int reg1 = 0xAA;
25851 : : int reg3 = 0;
25852 : : int reg4 = 0;
25853 : : int reg_mask, tmp1, tmp2;
25854 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25855 : : STRIP_UNARY (operands[4])))
25856 : : {
25857 : : reg4 = reg1;
25858 : : reg3 = reg6;
25859 : : operands[6] = operands[3];
25860 : : }
25861 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25862 : : STRIP_UNARY (operands[4])))
25863 : : {
25864 : : reg4 = reg2;
25865 : : reg3 = reg6;
25866 : : operands[6] = operands[3];
25867 : : }
25868 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25869 : : STRIP_UNARY (operands[3])))
25870 : : {
25871 : : reg4 = reg6;
25872 : : reg3 = reg1;
25873 : : operands[6] = operands[4];
25874 : : }
25875 : : else
25876 : : {
25877 : : reg4 = reg6;
25878 : : reg3 = reg2;
25879 : : operands[6] = operands[4];
25880 : : }
25881 : :
25882 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25883 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25884 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25885 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25886 : :
25887 : : tmp1 = reg1 & reg2;
25888 : : tmp2 = tmp1 & reg3;
25889 : : reg_mask = tmp2 ^ reg4;
25890 : : reg_mask &= 0xFF;
25891 : :
25892 : : operands[1] = STRIP_UNARY (operands[1]);
25893 : : operands[2] = STRIP_UNARY (operands[2]);
25894 : : operands[6] = STRIP_UNARY (operands[6]);
25895 : : operands[5] = GEN_INT (reg_mask);
25896 : : if (!register_operand (operands[2], V32BFmode))
25897 : : operands[2] = force_reg (V32BFmode, operands[2]);
25898 : : if (!register_operand (operands[6], V32BFmode))
25899 : : operands[6] = force_reg (V32BFmode, operands[6]);
25900 : :
25901 : : }
25902 : : #undef DONE
25903 : : #undef FAIL
25904 : : static const uint8_t expand_encoding[] = {
25905 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25906 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25907 : : 0x25
25908 : : };
25909 : : return complete_seq (expand_encoding, operands);
25910 : : }
25911 : :
25912 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25913 : : extern rtx_insn *gen_split_2806 (rtx_insn *, rtx *);
25914 : : rtx_insn *
25915 : : gen_split_2806 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25916 : : {
25917 : : if (dump_file)
25918 : : fprintf (dump_file, "Splitting with gen_split_2806 (sse.md:14173)\n");
25919 : : start_sequence ();
25920 : : #define FAIL return (end_sequence (), nullptr)
25921 : : #define DONE return end_sequence ()
25922 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25923 : : {
25924 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25925 : : int reg6 = 0xF0;
25926 : : int reg2 = 0xCC;
25927 : : int reg1 = 0xAA;
25928 : : int reg3 = 0;
25929 : : int reg4 = 0;
25930 : : int reg_mask, tmp1, tmp2;
25931 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25932 : : STRIP_UNARY (operands[4])))
25933 : : {
25934 : : reg4 = reg1;
25935 : : reg3 = reg6;
25936 : : operands[6] = operands[3];
25937 : : }
25938 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25939 : : STRIP_UNARY (operands[4])))
25940 : : {
25941 : : reg4 = reg2;
25942 : : reg3 = reg6;
25943 : : operands[6] = operands[3];
25944 : : }
25945 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25946 : : STRIP_UNARY (operands[3])))
25947 : : {
25948 : : reg4 = reg6;
25949 : : reg3 = reg1;
25950 : : operands[6] = operands[4];
25951 : : }
25952 : : else
25953 : : {
25954 : : reg4 = reg6;
25955 : : reg3 = reg2;
25956 : : operands[6] = operands[4];
25957 : : }
25958 : :
25959 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25960 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25961 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25962 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25963 : :
25964 : : tmp1 = reg1 | reg2;
25965 : : tmp2 = tmp1 | reg3;
25966 : : reg_mask = tmp2 & reg4;
25967 : : reg_mask &= 0xFF;
25968 : :
25969 : : operands[1] = STRIP_UNARY (operands[1]);
25970 : : operands[2] = STRIP_UNARY (operands[2]);
25971 : : operands[6] = STRIP_UNARY (operands[6]);
25972 : : operands[5] = GEN_INT (reg_mask);
25973 : : if (!register_operand (operands[2], V32BFmode))
25974 : : operands[2] = force_reg (V32BFmode, operands[2]);
25975 : : if (!register_operand (operands[6], V32BFmode))
25976 : : operands[6] = force_reg (V32BFmode, operands[6]);
25977 : :
25978 : : }
25979 : : #undef DONE
25980 : : #undef FAIL
25981 : : static const uint8_t expand_encoding[] = {
25982 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25983 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25984 : : 0x25
25985 : : };
25986 : : return complete_seq (expand_encoding, operands);
25987 : : }
25988 : :
25989 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
25990 : : extern rtx_insn *gen_split_2816 (rtx_insn *, rtx *);
25991 : : rtx_insn *
25992 : : gen_split_2816 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25993 : : {
25994 : : if (dump_file)
25995 : : fprintf (dump_file, "Splitting with gen_split_2816 (sse.md:14173)\n");
25996 : : start_sequence ();
25997 : : #define FAIL return (end_sequence (), nullptr)
25998 : : #define DONE return end_sequence ()
25999 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26000 : : {
26001 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26002 : : int reg6 = 0xF0;
26003 : : int reg2 = 0xCC;
26004 : : int reg1 = 0xAA;
26005 : : int reg3 = 0;
26006 : : int reg4 = 0;
26007 : : int reg_mask, tmp1, tmp2;
26008 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26009 : : STRIP_UNARY (operands[4])))
26010 : : {
26011 : : reg4 = reg1;
26012 : : reg3 = reg6;
26013 : : operands[6] = operands[3];
26014 : : }
26015 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26016 : : STRIP_UNARY (operands[4])))
26017 : : {
26018 : : reg4 = reg2;
26019 : : reg3 = reg6;
26020 : : operands[6] = operands[3];
26021 : : }
26022 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26023 : : STRIP_UNARY (operands[3])))
26024 : : {
26025 : : reg4 = reg6;
26026 : : reg3 = reg1;
26027 : : operands[6] = operands[4];
26028 : : }
26029 : : else
26030 : : {
26031 : : reg4 = reg6;
26032 : : reg3 = reg2;
26033 : : operands[6] = operands[4];
26034 : : }
26035 : :
26036 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26037 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26038 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26039 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26040 : :
26041 : : tmp1 = reg1 | reg2;
26042 : : tmp2 = tmp1 ^ reg3;
26043 : : reg_mask = tmp2 | reg4;
26044 : : reg_mask &= 0xFF;
26045 : :
26046 : : operands[1] = STRIP_UNARY (operands[1]);
26047 : : operands[2] = STRIP_UNARY (operands[2]);
26048 : : operands[6] = STRIP_UNARY (operands[6]);
26049 : : operands[5] = GEN_INT (reg_mask);
26050 : : if (!register_operand (operands[2], V32BFmode))
26051 : : operands[2] = force_reg (V32BFmode, operands[2]);
26052 : : if (!register_operand (operands[6], V32BFmode))
26053 : : operands[6] = force_reg (V32BFmode, operands[6]);
26054 : :
26055 : : }
26056 : : #undef DONE
26057 : : #undef FAIL
26058 : : static const uint8_t expand_encoding[] = {
26059 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
26060 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26061 : : 0x25
26062 : : };
26063 : : return complete_seq (expand_encoding, operands);
26064 : : }
26065 : :
26066 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26067 : : extern rtx_insn *gen_split_2826 (rtx_insn *, rtx *);
26068 : : rtx_insn *
26069 : : gen_split_2826 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26070 : : {
26071 : : if (dump_file)
26072 : : fprintf (dump_file, "Splitting with gen_split_2826 (sse.md:14173)\n");
26073 : : start_sequence ();
26074 : : #define FAIL return (end_sequence (), nullptr)
26075 : : #define DONE return end_sequence ()
26076 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26077 : : {
26078 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26079 : : int reg6 = 0xF0;
26080 : : int reg2 = 0xCC;
26081 : : int reg1 = 0xAA;
26082 : : int reg3 = 0;
26083 : : int reg4 = 0;
26084 : : int reg_mask, tmp1, tmp2;
26085 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26086 : : STRIP_UNARY (operands[4])))
26087 : : {
26088 : : reg4 = reg1;
26089 : : reg3 = reg6;
26090 : : operands[6] = operands[3];
26091 : : }
26092 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26093 : : STRIP_UNARY (operands[4])))
26094 : : {
26095 : : reg4 = reg2;
26096 : : reg3 = reg6;
26097 : : operands[6] = operands[3];
26098 : : }
26099 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26100 : : STRIP_UNARY (operands[3])))
26101 : : {
26102 : : reg4 = reg6;
26103 : : reg3 = reg1;
26104 : : operands[6] = operands[4];
26105 : : }
26106 : : else
26107 : : {
26108 : : reg4 = reg6;
26109 : : reg3 = reg2;
26110 : : operands[6] = operands[4];
26111 : : }
26112 : :
26113 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26114 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26115 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26116 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26117 : :
26118 : : tmp1 = reg1 | reg2;
26119 : : tmp2 = tmp1 & reg3;
26120 : : reg_mask = tmp2 ^ reg4;
26121 : : reg_mask &= 0xFF;
26122 : :
26123 : : operands[1] = STRIP_UNARY (operands[1]);
26124 : : operands[2] = STRIP_UNARY (operands[2]);
26125 : : operands[6] = STRIP_UNARY (operands[6]);
26126 : : operands[5] = GEN_INT (reg_mask);
26127 : : if (!register_operand (operands[2], V16BFmode))
26128 : : operands[2] = force_reg (V16BFmode, operands[2]);
26129 : : if (!register_operand (operands[6], V16BFmode))
26130 : : operands[6] = force_reg (V16BFmode, operands[6]);
26131 : :
26132 : : }
26133 : : #undef DONE
26134 : : #undef FAIL
26135 : : static const uint8_t expand_encoding[] = {
26136 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26137 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26138 : : 0x25
26139 : : };
26140 : : return complete_seq (expand_encoding, operands);
26141 : : }
26142 : :
26143 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26144 : : extern rtx_insn *gen_split_2836 (rtx_insn *, rtx *);
26145 : : rtx_insn *
26146 : : gen_split_2836 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26147 : : {
26148 : : if (dump_file)
26149 : : fprintf (dump_file, "Splitting with gen_split_2836 (sse.md:14173)\n");
26150 : : start_sequence ();
26151 : : #define FAIL return (end_sequence (), nullptr)
26152 : : #define DONE return end_sequence ()
26153 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26154 : : {
26155 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26156 : : int reg6 = 0xF0;
26157 : : int reg2 = 0xCC;
26158 : : int reg1 = 0xAA;
26159 : : int reg3 = 0;
26160 : : int reg4 = 0;
26161 : : int reg_mask, tmp1, tmp2;
26162 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26163 : : STRIP_UNARY (operands[4])))
26164 : : {
26165 : : reg4 = reg1;
26166 : : reg3 = reg6;
26167 : : operands[6] = operands[3];
26168 : : }
26169 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26170 : : STRIP_UNARY (operands[4])))
26171 : : {
26172 : : reg4 = reg2;
26173 : : reg3 = reg6;
26174 : : operands[6] = operands[3];
26175 : : }
26176 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26177 : : STRIP_UNARY (operands[3])))
26178 : : {
26179 : : reg4 = reg6;
26180 : : reg3 = reg1;
26181 : : operands[6] = operands[4];
26182 : : }
26183 : : else
26184 : : {
26185 : : reg4 = reg6;
26186 : : reg3 = reg2;
26187 : : operands[6] = operands[4];
26188 : : }
26189 : :
26190 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26191 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26192 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26193 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26194 : :
26195 : : tmp1 = reg1 ^ reg2;
26196 : : tmp2 = tmp1 | reg3;
26197 : : reg_mask = tmp2 & reg4;
26198 : : reg_mask &= 0xFF;
26199 : :
26200 : : operands[1] = STRIP_UNARY (operands[1]);
26201 : : operands[2] = STRIP_UNARY (operands[2]);
26202 : : operands[6] = STRIP_UNARY (operands[6]);
26203 : : operands[5] = GEN_INT (reg_mask);
26204 : : if (!register_operand (operands[2], V16BFmode))
26205 : : operands[2] = force_reg (V16BFmode, operands[2]);
26206 : : if (!register_operand (operands[6], V16BFmode))
26207 : : operands[6] = force_reg (V16BFmode, operands[6]);
26208 : :
26209 : : }
26210 : : #undef DONE
26211 : : #undef FAIL
26212 : : static const uint8_t expand_encoding[] = {
26213 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26214 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26215 : : 0x25
26216 : : };
26217 : : return complete_seq (expand_encoding, operands);
26218 : : }
26219 : :
26220 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26221 : : extern rtx_insn *gen_split_2846 (rtx_insn *, rtx *);
26222 : : rtx_insn *
26223 : : gen_split_2846 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26224 : : {
26225 : : if (dump_file)
26226 : : fprintf (dump_file, "Splitting with gen_split_2846 (sse.md:14173)\n");
26227 : : start_sequence ();
26228 : : #define FAIL return (end_sequence (), nullptr)
26229 : : #define DONE return end_sequence ()
26230 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26231 : : {
26232 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26233 : : int reg6 = 0xF0;
26234 : : int reg2 = 0xCC;
26235 : : int reg1 = 0xAA;
26236 : : int reg3 = 0;
26237 : : int reg4 = 0;
26238 : : int reg_mask, tmp1, tmp2;
26239 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26240 : : STRIP_UNARY (operands[4])))
26241 : : {
26242 : : reg4 = reg1;
26243 : : reg3 = reg6;
26244 : : operands[6] = operands[3];
26245 : : }
26246 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26247 : : STRIP_UNARY (operands[4])))
26248 : : {
26249 : : reg4 = reg2;
26250 : : reg3 = reg6;
26251 : : operands[6] = operands[3];
26252 : : }
26253 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26254 : : STRIP_UNARY (operands[3])))
26255 : : {
26256 : : reg4 = reg6;
26257 : : reg3 = reg1;
26258 : : operands[6] = operands[4];
26259 : : }
26260 : : else
26261 : : {
26262 : : reg4 = reg6;
26263 : : reg3 = reg2;
26264 : : operands[6] = operands[4];
26265 : : }
26266 : :
26267 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26268 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26269 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26270 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26271 : :
26272 : : tmp1 = reg1 ^ reg2;
26273 : : tmp2 = tmp1 ^ reg3;
26274 : : reg_mask = tmp2 | reg4;
26275 : : reg_mask &= 0xFF;
26276 : :
26277 : : operands[1] = STRIP_UNARY (operands[1]);
26278 : : operands[2] = STRIP_UNARY (operands[2]);
26279 : : operands[6] = STRIP_UNARY (operands[6]);
26280 : : operands[5] = GEN_INT (reg_mask);
26281 : : if (!register_operand (operands[2], V16BFmode))
26282 : : operands[2] = force_reg (V16BFmode, operands[2]);
26283 : : if (!register_operand (operands[6], V16BFmode))
26284 : : operands[6] = force_reg (V16BFmode, operands[6]);
26285 : :
26286 : : }
26287 : : #undef DONE
26288 : : #undef FAIL
26289 : : static const uint8_t expand_encoding[] = {
26290 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26291 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26292 : : 0x25
26293 : : };
26294 : : return complete_seq (expand_encoding, operands);
26295 : : }
26296 : :
26297 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26298 : : extern rtx_insn *gen_split_2856 (rtx_insn *, rtx *);
26299 : : rtx_insn *
26300 : : gen_split_2856 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26301 : : {
26302 : : if (dump_file)
26303 : : fprintf (dump_file, "Splitting with gen_split_2856 (sse.md:14173)\n");
26304 : : start_sequence ();
26305 : : #define FAIL return (end_sequence (), nullptr)
26306 : : #define DONE return end_sequence ()
26307 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26308 : : {
26309 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26310 : : int reg6 = 0xF0;
26311 : : int reg2 = 0xCC;
26312 : : int reg1 = 0xAA;
26313 : : int reg3 = 0;
26314 : : int reg4 = 0;
26315 : : int reg_mask, tmp1, tmp2;
26316 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26317 : : STRIP_UNARY (operands[4])))
26318 : : {
26319 : : reg4 = reg1;
26320 : : reg3 = reg6;
26321 : : operands[6] = operands[3];
26322 : : }
26323 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26324 : : STRIP_UNARY (operands[4])))
26325 : : {
26326 : : reg4 = reg2;
26327 : : reg3 = reg6;
26328 : : operands[6] = operands[3];
26329 : : }
26330 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26331 : : STRIP_UNARY (operands[3])))
26332 : : {
26333 : : reg4 = reg6;
26334 : : reg3 = reg1;
26335 : : operands[6] = operands[4];
26336 : : }
26337 : : else
26338 : : {
26339 : : reg4 = reg6;
26340 : : reg3 = reg2;
26341 : : operands[6] = operands[4];
26342 : : }
26343 : :
26344 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26345 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26346 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26347 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26348 : :
26349 : : tmp1 = reg1 ^ reg2;
26350 : : tmp2 = tmp1 & reg3;
26351 : : reg_mask = tmp2 ^ reg4;
26352 : : reg_mask &= 0xFF;
26353 : :
26354 : : operands[1] = STRIP_UNARY (operands[1]);
26355 : : operands[2] = STRIP_UNARY (operands[2]);
26356 : : operands[6] = STRIP_UNARY (operands[6]);
26357 : : operands[5] = GEN_INT (reg_mask);
26358 : : if (!register_operand (operands[2], V8BFmode))
26359 : : operands[2] = force_reg (V8BFmode, operands[2]);
26360 : : if (!register_operand (operands[6], V8BFmode))
26361 : : operands[6] = force_reg (V8BFmode, operands[6]);
26362 : :
26363 : : }
26364 : : #undef DONE
26365 : : #undef FAIL
26366 : : static const uint8_t expand_encoding[] = {
26367 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26368 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26369 : : 0x25
26370 : : };
26371 : : return complete_seq (expand_encoding, operands);
26372 : : }
26373 : :
26374 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26375 : : extern rtx_insn *gen_split_2866 (rtx_insn *, rtx *);
26376 : : rtx_insn *
26377 : : gen_split_2866 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26378 : : {
26379 : : if (dump_file)
26380 : : fprintf (dump_file, "Splitting with gen_split_2866 (sse.md:14173)\n");
26381 : : start_sequence ();
26382 : : #define FAIL return (end_sequence (), nullptr)
26383 : : #define DONE return end_sequence ()
26384 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26385 : : {
26386 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26387 : : int reg6 = 0xF0;
26388 : : int reg2 = 0xCC;
26389 : : int reg1 = 0xAA;
26390 : : int reg3 = 0;
26391 : : int reg4 = 0;
26392 : : int reg_mask, tmp1, tmp2;
26393 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26394 : : STRIP_UNARY (operands[4])))
26395 : : {
26396 : : reg4 = reg1;
26397 : : reg3 = reg6;
26398 : : operands[6] = operands[3];
26399 : : }
26400 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26401 : : STRIP_UNARY (operands[4])))
26402 : : {
26403 : : reg4 = reg2;
26404 : : reg3 = reg6;
26405 : : operands[6] = operands[3];
26406 : : }
26407 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26408 : : STRIP_UNARY (operands[3])))
26409 : : {
26410 : : reg4 = reg6;
26411 : : reg3 = reg1;
26412 : : operands[6] = operands[4];
26413 : : }
26414 : : else
26415 : : {
26416 : : reg4 = reg6;
26417 : : reg3 = reg2;
26418 : : operands[6] = operands[4];
26419 : : }
26420 : :
26421 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26422 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26423 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26424 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26425 : :
26426 : : tmp1 = reg1 & reg2;
26427 : : tmp2 = tmp1 ^ reg3;
26428 : : reg_mask = tmp2 & reg4;
26429 : : reg_mask &= 0xFF;
26430 : :
26431 : : operands[1] = STRIP_UNARY (operands[1]);
26432 : : operands[2] = STRIP_UNARY (operands[2]);
26433 : : operands[6] = STRIP_UNARY (operands[6]);
26434 : : operands[5] = GEN_INT (reg_mask);
26435 : : if (!register_operand (operands[2], V8BFmode))
26436 : : operands[2] = force_reg (V8BFmode, operands[2]);
26437 : : if (!register_operand (operands[6], V8BFmode))
26438 : : operands[6] = force_reg (V8BFmode, operands[6]);
26439 : :
26440 : : }
26441 : : #undef DONE
26442 : : #undef FAIL
26443 : : static const uint8_t expand_encoding[] = {
26444 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26445 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26446 : : 0x25
26447 : : };
26448 : : return complete_seq (expand_encoding, operands);
26449 : : }
26450 : :
26451 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26452 : : extern rtx_insn *gen_split_2876 (rtx_insn *, rtx *);
26453 : : rtx_insn *
26454 : : gen_split_2876 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26455 : : {
26456 : : if (dump_file)
26457 : : fprintf (dump_file, "Splitting with gen_split_2876 (sse.md:14173)\n");
26458 : : start_sequence ();
26459 : : #define FAIL return (end_sequence (), nullptr)
26460 : : #define DONE return end_sequence ()
26461 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26462 : : {
26463 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26464 : : int reg6 = 0xF0;
26465 : : int reg2 = 0xCC;
26466 : : int reg1 = 0xAA;
26467 : : int reg3 = 0;
26468 : : int reg4 = 0;
26469 : : int reg_mask, tmp1, tmp2;
26470 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26471 : : STRIP_UNARY (operands[4])))
26472 : : {
26473 : : reg4 = reg1;
26474 : : reg3 = reg6;
26475 : : operands[6] = operands[3];
26476 : : }
26477 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26478 : : STRIP_UNARY (operands[4])))
26479 : : {
26480 : : reg4 = reg2;
26481 : : reg3 = reg6;
26482 : : operands[6] = operands[3];
26483 : : }
26484 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26485 : : STRIP_UNARY (operands[3])))
26486 : : {
26487 : : reg4 = reg6;
26488 : : reg3 = reg1;
26489 : : operands[6] = operands[4];
26490 : : }
26491 : : else
26492 : : {
26493 : : reg4 = reg6;
26494 : : reg3 = reg2;
26495 : : operands[6] = operands[4];
26496 : : }
26497 : :
26498 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26499 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26500 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26501 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26502 : :
26503 : : tmp1 = reg1 & reg2;
26504 : : tmp2 = tmp1 & reg3;
26505 : : reg_mask = tmp2 | reg4;
26506 : : reg_mask &= 0xFF;
26507 : :
26508 : : operands[1] = STRIP_UNARY (operands[1]);
26509 : : operands[2] = STRIP_UNARY (operands[2]);
26510 : : operands[6] = STRIP_UNARY (operands[6]);
26511 : : operands[5] = GEN_INT (reg_mask);
26512 : : if (!register_operand (operands[2], V16SFmode))
26513 : : operands[2] = force_reg (V16SFmode, operands[2]);
26514 : : if (!register_operand (operands[6], V16SFmode))
26515 : : operands[6] = force_reg (V16SFmode, operands[6]);
26516 : :
26517 : : }
26518 : : #undef DONE
26519 : : #undef FAIL
26520 : : static const uint8_t expand_encoding[] = {
26521 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26522 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26523 : : 0x25
26524 : : };
26525 : : return complete_seq (expand_encoding, operands);
26526 : : }
26527 : :
26528 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26529 : : extern rtx_insn *gen_split_2886 (rtx_insn *, rtx *);
26530 : : rtx_insn *
26531 : : gen_split_2886 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26532 : : {
26533 : : if (dump_file)
26534 : : fprintf (dump_file, "Splitting with gen_split_2886 (sse.md:14173)\n");
26535 : : start_sequence ();
26536 : : #define FAIL return (end_sequence (), nullptr)
26537 : : #define DONE return end_sequence ()
26538 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26539 : : {
26540 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26541 : : int reg6 = 0xF0;
26542 : : int reg2 = 0xCC;
26543 : : int reg1 = 0xAA;
26544 : : int reg3 = 0;
26545 : : int reg4 = 0;
26546 : : int reg_mask, tmp1, tmp2;
26547 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26548 : : STRIP_UNARY (operands[4])))
26549 : : {
26550 : : reg4 = reg1;
26551 : : reg3 = reg6;
26552 : : operands[6] = operands[3];
26553 : : }
26554 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26555 : : STRIP_UNARY (operands[4])))
26556 : : {
26557 : : reg4 = reg2;
26558 : : reg3 = reg6;
26559 : : operands[6] = operands[3];
26560 : : }
26561 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26562 : : STRIP_UNARY (operands[3])))
26563 : : {
26564 : : reg4 = reg6;
26565 : : reg3 = reg1;
26566 : : operands[6] = operands[4];
26567 : : }
26568 : : else
26569 : : {
26570 : : reg4 = reg6;
26571 : : reg3 = reg2;
26572 : : operands[6] = operands[4];
26573 : : }
26574 : :
26575 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26576 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26577 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26578 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26579 : :
26580 : : tmp1 = reg1 & reg2;
26581 : : tmp2 = tmp1 | reg3;
26582 : : reg_mask = tmp2 ^ reg4;
26583 : : reg_mask &= 0xFF;
26584 : :
26585 : : operands[1] = STRIP_UNARY (operands[1]);
26586 : : operands[2] = STRIP_UNARY (operands[2]);
26587 : : operands[6] = STRIP_UNARY (operands[6]);
26588 : : operands[5] = GEN_INT (reg_mask);
26589 : : if (!register_operand (operands[2], V16SFmode))
26590 : : operands[2] = force_reg (V16SFmode, operands[2]);
26591 : : if (!register_operand (operands[6], V16SFmode))
26592 : : operands[6] = force_reg (V16SFmode, operands[6]);
26593 : :
26594 : : }
26595 : : #undef DONE
26596 : : #undef FAIL
26597 : : static const uint8_t expand_encoding[] = {
26598 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26599 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26600 : : 0x25
26601 : : };
26602 : : return complete_seq (expand_encoding, operands);
26603 : : }
26604 : :
26605 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26606 : : extern rtx_insn *gen_split_2896 (rtx_insn *, rtx *);
26607 : : rtx_insn *
26608 : : gen_split_2896 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26609 : : {
26610 : : if (dump_file)
26611 : : fprintf (dump_file, "Splitting with gen_split_2896 (sse.md:14173)\n");
26612 : : start_sequence ();
26613 : : #define FAIL return (end_sequence (), nullptr)
26614 : : #define DONE return end_sequence ()
26615 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26616 : : {
26617 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26618 : : int reg6 = 0xF0;
26619 : : int reg2 = 0xCC;
26620 : : int reg1 = 0xAA;
26621 : : int reg3 = 0;
26622 : : int reg4 = 0;
26623 : : int reg_mask, tmp1, tmp2;
26624 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26625 : : STRIP_UNARY (operands[4])))
26626 : : {
26627 : : reg4 = reg1;
26628 : : reg3 = reg6;
26629 : : operands[6] = operands[3];
26630 : : }
26631 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26632 : : STRIP_UNARY (operands[4])))
26633 : : {
26634 : : reg4 = reg2;
26635 : : reg3 = reg6;
26636 : : operands[6] = operands[3];
26637 : : }
26638 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26639 : : STRIP_UNARY (operands[3])))
26640 : : {
26641 : : reg4 = reg6;
26642 : : reg3 = reg1;
26643 : : operands[6] = operands[4];
26644 : : }
26645 : : else
26646 : : {
26647 : : reg4 = reg6;
26648 : : reg3 = reg2;
26649 : : operands[6] = operands[4];
26650 : : }
26651 : :
26652 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26653 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26654 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26655 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26656 : :
26657 : : tmp1 = reg1 | reg2;
26658 : : tmp2 = tmp1 ^ reg3;
26659 : : reg_mask = tmp2 & reg4;
26660 : : reg_mask &= 0xFF;
26661 : :
26662 : : operands[1] = STRIP_UNARY (operands[1]);
26663 : : operands[2] = STRIP_UNARY (operands[2]);
26664 : : operands[6] = STRIP_UNARY (operands[6]);
26665 : : operands[5] = GEN_INT (reg_mask);
26666 : : if (!register_operand (operands[2], V16SFmode))
26667 : : operands[2] = force_reg (V16SFmode, operands[2]);
26668 : : if (!register_operand (operands[6], V16SFmode))
26669 : : operands[6] = force_reg (V16SFmode, operands[6]);
26670 : :
26671 : : }
26672 : : #undef DONE
26673 : : #undef FAIL
26674 : : static const uint8_t expand_encoding[] = {
26675 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26676 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26677 : : 0x25
26678 : : };
26679 : : return complete_seq (expand_encoding, operands);
26680 : : }
26681 : :
26682 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26683 : : extern rtx_insn *gen_split_2906 (rtx_insn *, rtx *);
26684 : : rtx_insn *
26685 : : gen_split_2906 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26686 : : {
26687 : : if (dump_file)
26688 : : fprintf (dump_file, "Splitting with gen_split_2906 (sse.md:14173)\n");
26689 : : start_sequence ();
26690 : : #define FAIL return (end_sequence (), nullptr)
26691 : : #define DONE return end_sequence ()
26692 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26693 : : {
26694 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26695 : : int reg6 = 0xF0;
26696 : : int reg2 = 0xCC;
26697 : : int reg1 = 0xAA;
26698 : : int reg3 = 0;
26699 : : int reg4 = 0;
26700 : : int reg_mask, tmp1, tmp2;
26701 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26702 : : STRIP_UNARY (operands[4])))
26703 : : {
26704 : : reg4 = reg1;
26705 : : reg3 = reg6;
26706 : : operands[6] = operands[3];
26707 : : }
26708 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26709 : : STRIP_UNARY (operands[4])))
26710 : : {
26711 : : reg4 = reg2;
26712 : : reg3 = reg6;
26713 : : operands[6] = operands[3];
26714 : : }
26715 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26716 : : STRIP_UNARY (operands[3])))
26717 : : {
26718 : : reg4 = reg6;
26719 : : reg3 = reg1;
26720 : : operands[6] = operands[4];
26721 : : }
26722 : : else
26723 : : {
26724 : : reg4 = reg6;
26725 : : reg3 = reg2;
26726 : : operands[6] = operands[4];
26727 : : }
26728 : :
26729 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26730 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26731 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26732 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26733 : :
26734 : : tmp1 = reg1 | reg2;
26735 : : tmp2 = tmp1 & reg3;
26736 : : reg_mask = tmp2 | reg4;
26737 : : reg_mask &= 0xFF;
26738 : :
26739 : : operands[1] = STRIP_UNARY (operands[1]);
26740 : : operands[2] = STRIP_UNARY (operands[2]);
26741 : : operands[6] = STRIP_UNARY (operands[6]);
26742 : : operands[5] = GEN_INT (reg_mask);
26743 : : if (!register_operand (operands[2], V8SFmode))
26744 : : operands[2] = force_reg (V8SFmode, operands[2]);
26745 : : if (!register_operand (operands[6], V8SFmode))
26746 : : operands[6] = force_reg (V8SFmode, operands[6]);
26747 : :
26748 : : }
26749 : : #undef DONE
26750 : : #undef FAIL
26751 : : static const uint8_t expand_encoding[] = {
26752 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26753 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26754 : : 0x25
26755 : : };
26756 : : return complete_seq (expand_encoding, operands);
26757 : : }
26758 : :
26759 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26760 : : extern rtx_insn *gen_split_2916 (rtx_insn *, rtx *);
26761 : : rtx_insn *
26762 : : gen_split_2916 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26763 : : {
26764 : : if (dump_file)
26765 : : fprintf (dump_file, "Splitting with gen_split_2916 (sse.md:14173)\n");
26766 : : start_sequence ();
26767 : : #define FAIL return (end_sequence (), nullptr)
26768 : : #define DONE return end_sequence ()
26769 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26770 : : {
26771 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26772 : : int reg6 = 0xF0;
26773 : : int reg2 = 0xCC;
26774 : : int reg1 = 0xAA;
26775 : : int reg3 = 0;
26776 : : int reg4 = 0;
26777 : : int reg_mask, tmp1, tmp2;
26778 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26779 : : STRIP_UNARY (operands[4])))
26780 : : {
26781 : : reg4 = reg1;
26782 : : reg3 = reg6;
26783 : : operands[6] = operands[3];
26784 : : }
26785 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26786 : : STRIP_UNARY (operands[4])))
26787 : : {
26788 : : reg4 = reg2;
26789 : : reg3 = reg6;
26790 : : operands[6] = operands[3];
26791 : : }
26792 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26793 : : STRIP_UNARY (operands[3])))
26794 : : {
26795 : : reg4 = reg6;
26796 : : reg3 = reg1;
26797 : : operands[6] = operands[4];
26798 : : }
26799 : : else
26800 : : {
26801 : : reg4 = reg6;
26802 : : reg3 = reg2;
26803 : : operands[6] = operands[4];
26804 : : }
26805 : :
26806 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26807 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26808 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26809 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26810 : :
26811 : : tmp1 = reg1 | reg2;
26812 : : tmp2 = tmp1 | reg3;
26813 : : reg_mask = tmp2 ^ reg4;
26814 : : reg_mask &= 0xFF;
26815 : :
26816 : : operands[1] = STRIP_UNARY (operands[1]);
26817 : : operands[2] = STRIP_UNARY (operands[2]);
26818 : : operands[6] = STRIP_UNARY (operands[6]);
26819 : : operands[5] = GEN_INT (reg_mask);
26820 : : if (!register_operand (operands[2], V8SFmode))
26821 : : operands[2] = force_reg (V8SFmode, operands[2]);
26822 : : if (!register_operand (operands[6], V8SFmode))
26823 : : operands[6] = force_reg (V8SFmode, operands[6]);
26824 : :
26825 : : }
26826 : : #undef DONE
26827 : : #undef FAIL
26828 : : static const uint8_t expand_encoding[] = {
26829 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26830 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26831 : : 0x25
26832 : : };
26833 : : return complete_seq (expand_encoding, operands);
26834 : : }
26835 : :
26836 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26837 : : extern rtx_insn *gen_split_2926 (rtx_insn *, rtx *);
26838 : : rtx_insn *
26839 : : gen_split_2926 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26840 : : {
26841 : : if (dump_file)
26842 : : fprintf (dump_file, "Splitting with gen_split_2926 (sse.md:14173)\n");
26843 : : start_sequence ();
26844 : : #define FAIL return (end_sequence (), nullptr)
26845 : : #define DONE return end_sequence ()
26846 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26847 : : {
26848 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26849 : : int reg6 = 0xF0;
26850 : : int reg2 = 0xCC;
26851 : : int reg1 = 0xAA;
26852 : : int reg3 = 0;
26853 : : int reg4 = 0;
26854 : : int reg_mask, tmp1, tmp2;
26855 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26856 : : STRIP_UNARY (operands[4])))
26857 : : {
26858 : : reg4 = reg1;
26859 : : reg3 = reg6;
26860 : : operands[6] = operands[3];
26861 : : }
26862 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26863 : : STRIP_UNARY (operands[4])))
26864 : : {
26865 : : reg4 = reg2;
26866 : : reg3 = reg6;
26867 : : operands[6] = operands[3];
26868 : : }
26869 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26870 : : STRIP_UNARY (operands[3])))
26871 : : {
26872 : : reg4 = reg6;
26873 : : reg3 = reg1;
26874 : : operands[6] = operands[4];
26875 : : }
26876 : : else
26877 : : {
26878 : : reg4 = reg6;
26879 : : reg3 = reg2;
26880 : : operands[6] = operands[4];
26881 : : }
26882 : :
26883 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26884 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26885 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26886 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26887 : :
26888 : : tmp1 = reg1 ^ reg2;
26889 : : tmp2 = tmp1 ^ reg3;
26890 : : reg_mask = tmp2 & reg4;
26891 : : reg_mask &= 0xFF;
26892 : :
26893 : : operands[1] = STRIP_UNARY (operands[1]);
26894 : : operands[2] = STRIP_UNARY (operands[2]);
26895 : : operands[6] = STRIP_UNARY (operands[6]);
26896 : : operands[5] = GEN_INT (reg_mask);
26897 : : if (!register_operand (operands[2], V8SFmode))
26898 : : operands[2] = force_reg (V8SFmode, operands[2]);
26899 : : if (!register_operand (operands[6], V8SFmode))
26900 : : operands[6] = force_reg (V8SFmode, operands[6]);
26901 : :
26902 : : }
26903 : : #undef DONE
26904 : : #undef FAIL
26905 : : static const uint8_t expand_encoding[] = {
26906 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26907 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26908 : : 0x25
26909 : : };
26910 : : return complete_seq (expand_encoding, operands);
26911 : : }
26912 : :
26913 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26914 : : extern rtx_insn *gen_split_2936 (rtx_insn *, rtx *);
26915 : : rtx_insn *
26916 : : gen_split_2936 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26917 : : {
26918 : : if (dump_file)
26919 : : fprintf (dump_file, "Splitting with gen_split_2936 (sse.md:14173)\n");
26920 : : start_sequence ();
26921 : : #define FAIL return (end_sequence (), nullptr)
26922 : : #define DONE return end_sequence ()
26923 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26924 : : {
26925 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26926 : : int reg6 = 0xF0;
26927 : : int reg2 = 0xCC;
26928 : : int reg1 = 0xAA;
26929 : : int reg3 = 0;
26930 : : int reg4 = 0;
26931 : : int reg_mask, tmp1, tmp2;
26932 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26933 : : STRIP_UNARY (operands[4])))
26934 : : {
26935 : : reg4 = reg1;
26936 : : reg3 = reg6;
26937 : : operands[6] = operands[3];
26938 : : }
26939 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26940 : : STRIP_UNARY (operands[4])))
26941 : : {
26942 : : reg4 = reg2;
26943 : : reg3 = reg6;
26944 : : operands[6] = operands[3];
26945 : : }
26946 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26947 : : STRIP_UNARY (operands[3])))
26948 : : {
26949 : : reg4 = reg6;
26950 : : reg3 = reg1;
26951 : : operands[6] = operands[4];
26952 : : }
26953 : : else
26954 : : {
26955 : : reg4 = reg6;
26956 : : reg3 = reg2;
26957 : : operands[6] = operands[4];
26958 : : }
26959 : :
26960 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26961 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26962 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26963 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26964 : :
26965 : : tmp1 = reg1 ^ reg2;
26966 : : tmp2 = tmp1 & reg3;
26967 : : reg_mask = tmp2 | reg4;
26968 : : reg_mask &= 0xFF;
26969 : :
26970 : : operands[1] = STRIP_UNARY (operands[1]);
26971 : : operands[2] = STRIP_UNARY (operands[2]);
26972 : : operands[6] = STRIP_UNARY (operands[6]);
26973 : : operands[5] = GEN_INT (reg_mask);
26974 : : if (!register_operand (operands[2], V4SFmode))
26975 : : operands[2] = force_reg (V4SFmode, operands[2]);
26976 : : if (!register_operand (operands[6], V4SFmode))
26977 : : operands[6] = force_reg (V4SFmode, operands[6]);
26978 : :
26979 : : }
26980 : : #undef DONE
26981 : : #undef FAIL
26982 : : static const uint8_t expand_encoding[] = {
26983 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26984 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26985 : : 0x25
26986 : : };
26987 : : return complete_seq (expand_encoding, operands);
26988 : : }
26989 : :
26990 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
26991 : : extern rtx_insn *gen_split_2946 (rtx_insn *, rtx *);
26992 : : rtx_insn *
26993 : : gen_split_2946 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26994 : : {
26995 : : if (dump_file)
26996 : : fprintf (dump_file, "Splitting with gen_split_2946 (sse.md:14173)\n");
26997 : : start_sequence ();
26998 : : #define FAIL return (end_sequence (), nullptr)
26999 : : #define DONE return end_sequence ()
27000 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27001 : : {
27002 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27003 : : int reg6 = 0xF0;
27004 : : int reg2 = 0xCC;
27005 : : int reg1 = 0xAA;
27006 : : int reg3 = 0;
27007 : : int reg4 = 0;
27008 : : int reg_mask, tmp1, tmp2;
27009 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27010 : : STRIP_UNARY (operands[4])))
27011 : : {
27012 : : reg4 = reg1;
27013 : : reg3 = reg6;
27014 : : operands[6] = operands[3];
27015 : : }
27016 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27017 : : STRIP_UNARY (operands[4])))
27018 : : {
27019 : : reg4 = reg2;
27020 : : reg3 = reg6;
27021 : : operands[6] = operands[3];
27022 : : }
27023 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27024 : : STRIP_UNARY (operands[3])))
27025 : : {
27026 : : reg4 = reg6;
27027 : : reg3 = reg1;
27028 : : operands[6] = operands[4];
27029 : : }
27030 : : else
27031 : : {
27032 : : reg4 = reg6;
27033 : : reg3 = reg2;
27034 : : operands[6] = operands[4];
27035 : : }
27036 : :
27037 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27038 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27039 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27040 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27041 : :
27042 : : tmp1 = reg1 ^ reg2;
27043 : : tmp2 = tmp1 | reg3;
27044 : : reg_mask = tmp2 ^ reg4;
27045 : : reg_mask &= 0xFF;
27046 : :
27047 : : operands[1] = STRIP_UNARY (operands[1]);
27048 : : operands[2] = STRIP_UNARY (operands[2]);
27049 : : operands[6] = STRIP_UNARY (operands[6]);
27050 : : operands[5] = GEN_INT (reg_mask);
27051 : : if (!register_operand (operands[2], V4SFmode))
27052 : : operands[2] = force_reg (V4SFmode, operands[2]);
27053 : : if (!register_operand (operands[6], V4SFmode))
27054 : : operands[6] = force_reg (V4SFmode, operands[6]);
27055 : :
27056 : : }
27057 : : #undef DONE
27058 : : #undef FAIL
27059 : : static const uint8_t expand_encoding[] = {
27060 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
27061 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27062 : : 0x25
27063 : : };
27064 : : return complete_seq (expand_encoding, operands);
27065 : : }
27066 : :
27067 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27068 : : extern rtx_insn *gen_split_2956 (rtx_insn *, rtx *);
27069 : : rtx_insn *
27070 : : gen_split_2956 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27071 : : {
27072 : : if (dump_file)
27073 : : fprintf (dump_file, "Splitting with gen_split_2956 (sse.md:14173)\n");
27074 : : start_sequence ();
27075 : : #define FAIL return (end_sequence (), nullptr)
27076 : : #define DONE return end_sequence ()
27077 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27078 : : {
27079 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27080 : : int reg6 = 0xF0;
27081 : : int reg2 = 0xCC;
27082 : : int reg1 = 0xAA;
27083 : : int reg3 = 0;
27084 : : int reg4 = 0;
27085 : : int reg_mask, tmp1, tmp2;
27086 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27087 : : STRIP_UNARY (operands[4])))
27088 : : {
27089 : : reg4 = reg1;
27090 : : reg3 = reg6;
27091 : : operands[6] = operands[3];
27092 : : }
27093 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27094 : : STRIP_UNARY (operands[4])))
27095 : : {
27096 : : reg4 = reg2;
27097 : : reg3 = reg6;
27098 : : operands[6] = operands[3];
27099 : : }
27100 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27101 : : STRIP_UNARY (operands[3])))
27102 : : {
27103 : : reg4 = reg6;
27104 : : reg3 = reg1;
27105 : : operands[6] = operands[4];
27106 : : }
27107 : : else
27108 : : {
27109 : : reg4 = reg6;
27110 : : reg3 = reg2;
27111 : : operands[6] = operands[4];
27112 : : }
27113 : :
27114 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27115 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27116 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27117 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27118 : :
27119 : : tmp1 = reg1 & reg2;
27120 : : tmp2 = tmp1 & reg3;
27121 : : reg_mask = tmp2 & reg4;
27122 : : reg_mask &= 0xFF;
27123 : :
27124 : : operands[1] = STRIP_UNARY (operands[1]);
27125 : : operands[2] = STRIP_UNARY (operands[2]);
27126 : : operands[6] = STRIP_UNARY (operands[6]);
27127 : : operands[5] = GEN_INT (reg_mask);
27128 : : if (!register_operand (operands[2], V8DFmode))
27129 : : operands[2] = force_reg (V8DFmode, operands[2]);
27130 : : if (!register_operand (operands[6], V8DFmode))
27131 : : operands[6] = force_reg (V8DFmode, operands[6]);
27132 : :
27133 : : }
27134 : : #undef DONE
27135 : : #undef FAIL
27136 : : static const uint8_t expand_encoding[] = {
27137 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27138 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27139 : : 0x25
27140 : : };
27141 : : return complete_seq (expand_encoding, operands);
27142 : : }
27143 : :
27144 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27145 : : extern rtx_insn *gen_split_2966 (rtx_insn *, rtx *);
27146 : : rtx_insn *
27147 : : gen_split_2966 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27148 : : {
27149 : : if (dump_file)
27150 : : fprintf (dump_file, "Splitting with gen_split_2966 (sse.md:14173)\n");
27151 : : start_sequence ();
27152 : : #define FAIL return (end_sequence (), nullptr)
27153 : : #define DONE return end_sequence ()
27154 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27155 : : {
27156 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27157 : : int reg6 = 0xF0;
27158 : : int reg2 = 0xCC;
27159 : : int reg1 = 0xAA;
27160 : : int reg3 = 0;
27161 : : int reg4 = 0;
27162 : : int reg_mask, tmp1, tmp2;
27163 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27164 : : STRIP_UNARY (operands[4])))
27165 : : {
27166 : : reg4 = reg1;
27167 : : reg3 = reg6;
27168 : : operands[6] = operands[3];
27169 : : }
27170 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27171 : : STRIP_UNARY (operands[4])))
27172 : : {
27173 : : reg4 = reg2;
27174 : : reg3 = reg6;
27175 : : operands[6] = operands[3];
27176 : : }
27177 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27178 : : STRIP_UNARY (operands[3])))
27179 : : {
27180 : : reg4 = reg6;
27181 : : reg3 = reg1;
27182 : : operands[6] = operands[4];
27183 : : }
27184 : : else
27185 : : {
27186 : : reg4 = reg6;
27187 : : reg3 = reg2;
27188 : : operands[6] = operands[4];
27189 : : }
27190 : :
27191 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27192 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27193 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27194 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27195 : :
27196 : : tmp1 = reg1 & reg2;
27197 : : tmp2 = tmp1 | reg3;
27198 : : reg_mask = tmp2 | reg4;
27199 : : reg_mask &= 0xFF;
27200 : :
27201 : : operands[1] = STRIP_UNARY (operands[1]);
27202 : : operands[2] = STRIP_UNARY (operands[2]);
27203 : : operands[6] = STRIP_UNARY (operands[6]);
27204 : : operands[5] = GEN_INT (reg_mask);
27205 : : if (!register_operand (operands[2], V8DFmode))
27206 : : operands[2] = force_reg (V8DFmode, operands[2]);
27207 : : if (!register_operand (operands[6], V8DFmode))
27208 : : operands[6] = force_reg (V8DFmode, operands[6]);
27209 : :
27210 : : }
27211 : : #undef DONE
27212 : : #undef FAIL
27213 : : static const uint8_t expand_encoding[] = {
27214 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27215 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27216 : : 0x25
27217 : : };
27218 : : return complete_seq (expand_encoding, operands);
27219 : : }
27220 : :
27221 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27222 : : extern rtx_insn *gen_split_2976 (rtx_insn *, rtx *);
27223 : : rtx_insn *
27224 : : gen_split_2976 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27225 : : {
27226 : : if (dump_file)
27227 : : fprintf (dump_file, "Splitting with gen_split_2976 (sse.md:14173)\n");
27228 : : start_sequence ();
27229 : : #define FAIL return (end_sequence (), nullptr)
27230 : : #define DONE return end_sequence ()
27231 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27232 : : {
27233 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27234 : : int reg6 = 0xF0;
27235 : : int reg2 = 0xCC;
27236 : : int reg1 = 0xAA;
27237 : : int reg3 = 0;
27238 : : int reg4 = 0;
27239 : : int reg_mask, tmp1, tmp2;
27240 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27241 : : STRIP_UNARY (operands[4])))
27242 : : {
27243 : : reg4 = reg1;
27244 : : reg3 = reg6;
27245 : : operands[6] = operands[3];
27246 : : }
27247 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27248 : : STRIP_UNARY (operands[4])))
27249 : : {
27250 : : reg4 = reg2;
27251 : : reg3 = reg6;
27252 : : operands[6] = operands[3];
27253 : : }
27254 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27255 : : STRIP_UNARY (operands[3])))
27256 : : {
27257 : : reg4 = reg6;
27258 : : reg3 = reg1;
27259 : : operands[6] = operands[4];
27260 : : }
27261 : : else
27262 : : {
27263 : : reg4 = reg6;
27264 : : reg3 = reg2;
27265 : : operands[6] = operands[4];
27266 : : }
27267 : :
27268 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27269 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27270 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27271 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27272 : :
27273 : : tmp1 = reg1 & reg2;
27274 : : tmp2 = tmp1 ^ reg3;
27275 : : reg_mask = tmp2 ^ reg4;
27276 : : reg_mask &= 0xFF;
27277 : :
27278 : : operands[1] = STRIP_UNARY (operands[1]);
27279 : : operands[2] = STRIP_UNARY (operands[2]);
27280 : : operands[6] = STRIP_UNARY (operands[6]);
27281 : : operands[5] = GEN_INT (reg_mask);
27282 : : if (!register_operand (operands[2], V8DFmode))
27283 : : operands[2] = force_reg (V8DFmode, operands[2]);
27284 : : if (!register_operand (operands[6], V8DFmode))
27285 : : operands[6] = force_reg (V8DFmode, operands[6]);
27286 : :
27287 : : }
27288 : : #undef DONE
27289 : : #undef FAIL
27290 : : static const uint8_t expand_encoding[] = {
27291 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27292 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27293 : : 0x25
27294 : : };
27295 : : return complete_seq (expand_encoding, operands);
27296 : : }
27297 : :
27298 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27299 : : extern rtx_insn *gen_split_2986 (rtx_insn *, rtx *);
27300 : : rtx_insn *
27301 : : gen_split_2986 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27302 : : {
27303 : : if (dump_file)
27304 : : fprintf (dump_file, "Splitting with gen_split_2986 (sse.md:14173)\n");
27305 : : start_sequence ();
27306 : : #define FAIL return (end_sequence (), nullptr)
27307 : : #define DONE return end_sequence ()
27308 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27309 : : {
27310 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27311 : : int reg6 = 0xF0;
27312 : : int reg2 = 0xCC;
27313 : : int reg1 = 0xAA;
27314 : : int reg3 = 0;
27315 : : int reg4 = 0;
27316 : : int reg_mask, tmp1, tmp2;
27317 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27318 : : STRIP_UNARY (operands[4])))
27319 : : {
27320 : : reg4 = reg1;
27321 : : reg3 = reg6;
27322 : : operands[6] = operands[3];
27323 : : }
27324 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27325 : : STRIP_UNARY (operands[4])))
27326 : : {
27327 : : reg4 = reg2;
27328 : : reg3 = reg6;
27329 : : operands[6] = operands[3];
27330 : : }
27331 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27332 : : STRIP_UNARY (operands[3])))
27333 : : {
27334 : : reg4 = reg6;
27335 : : reg3 = reg1;
27336 : : operands[6] = operands[4];
27337 : : }
27338 : : else
27339 : : {
27340 : : reg4 = reg6;
27341 : : reg3 = reg2;
27342 : : operands[6] = operands[4];
27343 : : }
27344 : :
27345 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27346 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27347 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27348 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27349 : :
27350 : : tmp1 = reg1 | reg2;
27351 : : tmp2 = tmp1 & reg3;
27352 : : reg_mask = tmp2 & reg4;
27353 : : reg_mask &= 0xFF;
27354 : :
27355 : : operands[1] = STRIP_UNARY (operands[1]);
27356 : : operands[2] = STRIP_UNARY (operands[2]);
27357 : : operands[6] = STRIP_UNARY (operands[6]);
27358 : : operands[5] = GEN_INT (reg_mask);
27359 : : if (!register_operand (operands[2], V4DFmode))
27360 : : operands[2] = force_reg (V4DFmode, operands[2]);
27361 : : if (!register_operand (operands[6], V4DFmode))
27362 : : operands[6] = force_reg (V4DFmode, operands[6]);
27363 : :
27364 : : }
27365 : : #undef DONE
27366 : : #undef FAIL
27367 : : static const uint8_t expand_encoding[] = {
27368 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27369 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27370 : : 0x25
27371 : : };
27372 : : return complete_seq (expand_encoding, operands);
27373 : : }
27374 : :
27375 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27376 : : extern rtx_insn *gen_split_2996 (rtx_insn *, rtx *);
27377 : : rtx_insn *
27378 : : gen_split_2996 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27379 : : {
27380 : : if (dump_file)
27381 : : fprintf (dump_file, "Splitting with gen_split_2996 (sse.md:14173)\n");
27382 : : start_sequence ();
27383 : : #define FAIL return (end_sequence (), nullptr)
27384 : : #define DONE return end_sequence ()
27385 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27386 : : {
27387 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27388 : : int reg6 = 0xF0;
27389 : : int reg2 = 0xCC;
27390 : : int reg1 = 0xAA;
27391 : : int reg3 = 0;
27392 : : int reg4 = 0;
27393 : : int reg_mask, tmp1, tmp2;
27394 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27395 : : STRIP_UNARY (operands[4])))
27396 : : {
27397 : : reg4 = reg1;
27398 : : reg3 = reg6;
27399 : : operands[6] = operands[3];
27400 : : }
27401 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27402 : : STRIP_UNARY (operands[4])))
27403 : : {
27404 : : reg4 = reg2;
27405 : : reg3 = reg6;
27406 : : operands[6] = operands[3];
27407 : : }
27408 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27409 : : STRIP_UNARY (operands[3])))
27410 : : {
27411 : : reg4 = reg6;
27412 : : reg3 = reg1;
27413 : : operands[6] = operands[4];
27414 : : }
27415 : : else
27416 : : {
27417 : : reg4 = reg6;
27418 : : reg3 = reg2;
27419 : : operands[6] = operands[4];
27420 : : }
27421 : :
27422 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27423 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27424 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27425 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27426 : :
27427 : : tmp1 = reg1 | reg2;
27428 : : tmp2 = tmp1 | reg3;
27429 : : reg_mask = tmp2 | reg4;
27430 : : reg_mask &= 0xFF;
27431 : :
27432 : : operands[1] = STRIP_UNARY (operands[1]);
27433 : : operands[2] = STRIP_UNARY (operands[2]);
27434 : : operands[6] = STRIP_UNARY (operands[6]);
27435 : : operands[5] = GEN_INT (reg_mask);
27436 : : if (!register_operand (operands[2], V4DFmode))
27437 : : operands[2] = force_reg (V4DFmode, operands[2]);
27438 : : if (!register_operand (operands[6], V4DFmode))
27439 : : operands[6] = force_reg (V4DFmode, operands[6]);
27440 : :
27441 : : }
27442 : : #undef DONE
27443 : : #undef FAIL
27444 : : static const uint8_t expand_encoding[] = {
27445 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27446 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27447 : : 0x25
27448 : : };
27449 : : return complete_seq (expand_encoding, operands);
27450 : : }
27451 : :
27452 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27453 : : extern rtx_insn *gen_split_3006 (rtx_insn *, rtx *);
27454 : : rtx_insn *
27455 : : gen_split_3006 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27456 : : {
27457 : : if (dump_file)
27458 : : fprintf (dump_file, "Splitting with gen_split_3006 (sse.md:14173)\n");
27459 : : start_sequence ();
27460 : : #define FAIL return (end_sequence (), nullptr)
27461 : : #define DONE return end_sequence ()
27462 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27463 : : {
27464 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27465 : : int reg6 = 0xF0;
27466 : : int reg2 = 0xCC;
27467 : : int reg1 = 0xAA;
27468 : : int reg3 = 0;
27469 : : int reg4 = 0;
27470 : : int reg_mask, tmp1, tmp2;
27471 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27472 : : STRIP_UNARY (operands[4])))
27473 : : {
27474 : : reg4 = reg1;
27475 : : reg3 = reg6;
27476 : : operands[6] = operands[3];
27477 : : }
27478 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27479 : : STRIP_UNARY (operands[4])))
27480 : : {
27481 : : reg4 = reg2;
27482 : : reg3 = reg6;
27483 : : operands[6] = operands[3];
27484 : : }
27485 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27486 : : STRIP_UNARY (operands[3])))
27487 : : {
27488 : : reg4 = reg6;
27489 : : reg3 = reg1;
27490 : : operands[6] = operands[4];
27491 : : }
27492 : : else
27493 : : {
27494 : : reg4 = reg6;
27495 : : reg3 = reg2;
27496 : : operands[6] = operands[4];
27497 : : }
27498 : :
27499 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27500 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27501 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27502 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27503 : :
27504 : : tmp1 = reg1 | reg2;
27505 : : tmp2 = tmp1 ^ reg3;
27506 : : reg_mask = tmp2 ^ reg4;
27507 : : reg_mask &= 0xFF;
27508 : :
27509 : : operands[1] = STRIP_UNARY (operands[1]);
27510 : : operands[2] = STRIP_UNARY (operands[2]);
27511 : : operands[6] = STRIP_UNARY (operands[6]);
27512 : : operands[5] = GEN_INT (reg_mask);
27513 : : if (!register_operand (operands[2], V4DFmode))
27514 : : operands[2] = force_reg (V4DFmode, operands[2]);
27515 : : if (!register_operand (operands[6], V4DFmode))
27516 : : operands[6] = force_reg (V4DFmode, operands[6]);
27517 : :
27518 : : }
27519 : : #undef DONE
27520 : : #undef FAIL
27521 : : static const uint8_t expand_encoding[] = {
27522 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27523 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27524 : : 0x25
27525 : : };
27526 : : return complete_seq (expand_encoding, operands);
27527 : : }
27528 : :
27529 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27530 : : extern rtx_insn *gen_split_3016 (rtx_insn *, rtx *);
27531 : : rtx_insn *
27532 : : gen_split_3016 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27533 : : {
27534 : : if (dump_file)
27535 : : fprintf (dump_file, "Splitting with gen_split_3016 (sse.md:14173)\n");
27536 : : start_sequence ();
27537 : : #define FAIL return (end_sequence (), nullptr)
27538 : : #define DONE return end_sequence ()
27539 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27540 : : {
27541 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27542 : : int reg6 = 0xF0;
27543 : : int reg2 = 0xCC;
27544 : : int reg1 = 0xAA;
27545 : : int reg3 = 0;
27546 : : int reg4 = 0;
27547 : : int reg_mask, tmp1, tmp2;
27548 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27549 : : STRIP_UNARY (operands[4])))
27550 : : {
27551 : : reg4 = reg1;
27552 : : reg3 = reg6;
27553 : : operands[6] = operands[3];
27554 : : }
27555 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27556 : : STRIP_UNARY (operands[4])))
27557 : : {
27558 : : reg4 = reg2;
27559 : : reg3 = reg6;
27560 : : operands[6] = operands[3];
27561 : : }
27562 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27563 : : STRIP_UNARY (operands[3])))
27564 : : {
27565 : : reg4 = reg6;
27566 : : reg3 = reg1;
27567 : : operands[6] = operands[4];
27568 : : }
27569 : : else
27570 : : {
27571 : : reg4 = reg6;
27572 : : reg3 = reg2;
27573 : : operands[6] = operands[4];
27574 : : }
27575 : :
27576 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27577 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27578 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27579 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27580 : :
27581 : : tmp1 = reg1 ^ reg2;
27582 : : tmp2 = tmp1 & reg3;
27583 : : reg_mask = tmp2 & reg4;
27584 : : reg_mask &= 0xFF;
27585 : :
27586 : : operands[1] = STRIP_UNARY (operands[1]);
27587 : : operands[2] = STRIP_UNARY (operands[2]);
27588 : : operands[6] = STRIP_UNARY (operands[6]);
27589 : : operands[5] = GEN_INT (reg_mask);
27590 : : if (!register_operand (operands[2], V2DFmode))
27591 : : operands[2] = force_reg (V2DFmode, operands[2]);
27592 : : if (!register_operand (operands[6], V2DFmode))
27593 : : operands[6] = force_reg (V2DFmode, operands[6]);
27594 : :
27595 : : }
27596 : : #undef DONE
27597 : : #undef FAIL
27598 : : static const uint8_t expand_encoding[] = {
27599 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27600 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27601 : : 0x25
27602 : : };
27603 : : return complete_seq (expand_encoding, operands);
27604 : : }
27605 : :
27606 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27607 : : extern rtx_insn *gen_split_3026 (rtx_insn *, rtx *);
27608 : : rtx_insn *
27609 : : gen_split_3026 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27610 : : {
27611 : : if (dump_file)
27612 : : fprintf (dump_file, "Splitting with gen_split_3026 (sse.md:14173)\n");
27613 : : start_sequence ();
27614 : : #define FAIL return (end_sequence (), nullptr)
27615 : : #define DONE return end_sequence ()
27616 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27617 : : {
27618 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27619 : : int reg6 = 0xF0;
27620 : : int reg2 = 0xCC;
27621 : : int reg1 = 0xAA;
27622 : : int reg3 = 0;
27623 : : int reg4 = 0;
27624 : : int reg_mask, tmp1, tmp2;
27625 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27626 : : STRIP_UNARY (operands[4])))
27627 : : {
27628 : : reg4 = reg1;
27629 : : reg3 = reg6;
27630 : : operands[6] = operands[3];
27631 : : }
27632 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27633 : : STRIP_UNARY (operands[4])))
27634 : : {
27635 : : reg4 = reg2;
27636 : : reg3 = reg6;
27637 : : operands[6] = operands[3];
27638 : : }
27639 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27640 : : STRIP_UNARY (operands[3])))
27641 : : {
27642 : : reg4 = reg6;
27643 : : reg3 = reg1;
27644 : : operands[6] = operands[4];
27645 : : }
27646 : : else
27647 : : {
27648 : : reg4 = reg6;
27649 : : reg3 = reg2;
27650 : : operands[6] = operands[4];
27651 : : }
27652 : :
27653 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27654 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27655 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27656 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27657 : :
27658 : : tmp1 = reg1 ^ reg2;
27659 : : tmp2 = tmp1 | reg3;
27660 : : reg_mask = tmp2 | reg4;
27661 : : reg_mask &= 0xFF;
27662 : :
27663 : : operands[1] = STRIP_UNARY (operands[1]);
27664 : : operands[2] = STRIP_UNARY (operands[2]);
27665 : : operands[6] = STRIP_UNARY (operands[6]);
27666 : : operands[5] = GEN_INT (reg_mask);
27667 : : if (!register_operand (operands[2], V2DFmode))
27668 : : operands[2] = force_reg (V2DFmode, operands[2]);
27669 : : if (!register_operand (operands[6], V2DFmode))
27670 : : operands[6] = force_reg (V2DFmode, operands[6]);
27671 : :
27672 : : }
27673 : : #undef DONE
27674 : : #undef FAIL
27675 : : static const uint8_t expand_encoding[] = {
27676 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27677 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27678 : : 0x25
27679 : : };
27680 : : return complete_seq (expand_encoding, operands);
27681 : : }
27682 : :
27683 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14173 */
27684 : : extern rtx_insn *gen_split_3036 (rtx_insn *, rtx *);
27685 : : rtx_insn *
27686 : : gen_split_3036 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27687 : : {
27688 : : if (dump_file)
27689 : : fprintf (dump_file, "Splitting with gen_split_3036 (sse.md:14173)\n");
27690 : : start_sequence ();
27691 : : #define FAIL return (end_sequence (), nullptr)
27692 : : #define DONE return end_sequence ()
27693 : : #line 14202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27694 : : {
27695 : : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27696 : : int reg6 = 0xF0;
27697 : : int reg2 = 0xCC;
27698 : : int reg1 = 0xAA;
27699 : : int reg3 = 0;
27700 : : int reg4 = 0;
27701 : : int reg_mask, tmp1, tmp2;
27702 : : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27703 : : STRIP_UNARY (operands[4])))
27704 : : {
27705 : : reg4 = reg1;
27706 : : reg3 = reg6;
27707 : : operands[6] = operands[3];
27708 : : }
27709 : : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27710 : : STRIP_UNARY (operands[4])))
27711 : : {
27712 : : reg4 = reg2;
27713 : : reg3 = reg6;
27714 : : operands[6] = operands[3];
27715 : : }
27716 : : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27717 : : STRIP_UNARY (operands[3])))
27718 : : {
27719 : : reg4 = reg6;
27720 : : reg3 = reg1;
27721 : : operands[6] = operands[4];
27722 : : }
27723 : : else
27724 : : {
27725 : : reg4 = reg6;
27726 : : reg3 = reg2;
27727 : : operands[6] = operands[4];
27728 : : }
27729 : :
27730 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27731 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27732 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27733 : : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27734 : :
27735 : : tmp1 = reg1 ^ reg2;
27736 : : tmp2 = tmp1 ^ reg3;
27737 : : reg_mask = tmp2 ^ reg4;
27738 : : reg_mask &= 0xFF;
27739 : :
27740 : : operands[1] = STRIP_UNARY (operands[1]);
27741 : : operands[2] = STRIP_UNARY (operands[2]);
27742 : : operands[6] = STRIP_UNARY (operands[6]);
27743 : : operands[5] = GEN_INT (reg_mask);
27744 : : if (!register_operand (operands[2], V2DFmode))
27745 : : operands[2] = force_reg (V2DFmode, operands[2]);
27746 : : if (!register_operand (operands[6], V2DFmode))
27747 : : operands[6] = force_reg (V2DFmode, operands[6]);
27748 : :
27749 : : }
27750 : : #undef DONE
27751 : : #undef FAIL
27752 : : static const uint8_t expand_encoding[] = {
27753 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27754 : : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27755 : : 0x25
27756 : : };
27757 : : return complete_seq (expand_encoding, operands);
27758 : : }
27759 : :
27760 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
27761 : : extern rtx_insn *gen_split_3050 (rtx_insn *, rtx *);
27762 : : rtx_insn *
27763 : : gen_split_3050 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27764 : : {
27765 : : if (dump_file)
27766 : : fprintf (dump_file, "Splitting with gen_split_3050 (sse.md:14259)\n");
27767 : : start_sequence ();
27768 : : #define FAIL return (end_sequence (), nullptr)
27769 : : #define DONE return end_sequence ()
27770 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27771 : : {
27772 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27773 : : int reg3 = 0xF0;
27774 : : int reg2 = 0xCC;
27775 : : int reg1 = 0xAA;
27776 : : int reg_mask, tmp1;
27777 : :
27778 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27779 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27780 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27781 : :
27782 : : tmp1 = reg1 | reg2;
27783 : : reg_mask = tmp1 | reg3;
27784 : : reg_mask &= 0xFF;
27785 : :
27786 : : operands[1] = STRIP_UNARY (operands[1]);
27787 : : operands[2] = STRIP_UNARY (operands[2]);
27788 : : operands[3] = STRIP_UNARY (operands[3]);
27789 : : operands[4] = GEN_INT (reg_mask);
27790 : : if (!register_operand (operands[2], V32QImode))
27791 : : operands[2] = force_reg (V32QImode, operands[2]);
27792 : : if (!register_operand (operands[3], V32QImode))
27793 : : operands[3] = force_reg (V32QImode, operands[3]);
27794 : : }
27795 : : #undef DONE
27796 : : #undef FAIL
27797 : : static const uint8_t expand_encoding[] = {
27798 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
27799 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27800 : : 0x25
27801 : : };
27802 : : return complete_seq (expand_encoding, operands);
27803 : : }
27804 : :
27805 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
27806 : : extern rtx_insn *gen_split_3060 (rtx_insn *, rtx *);
27807 : : rtx_insn *
27808 : : gen_split_3060 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27809 : : {
27810 : : if (dump_file)
27811 : : fprintf (dump_file, "Splitting with gen_split_3060 (sse.md:14259)\n");
27812 : : start_sequence ();
27813 : : #define FAIL return (end_sequence (), nullptr)
27814 : : #define DONE return end_sequence ()
27815 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27816 : : {
27817 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27818 : : int reg3 = 0xF0;
27819 : : int reg2 = 0xCC;
27820 : : int reg1 = 0xAA;
27821 : : int reg_mask, tmp1;
27822 : :
27823 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27824 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27825 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27826 : :
27827 : : tmp1 = reg1 | reg2;
27828 : : reg_mask = tmp1 ^ reg3;
27829 : : reg_mask &= 0xFF;
27830 : :
27831 : : operands[1] = STRIP_UNARY (operands[1]);
27832 : : operands[2] = STRIP_UNARY (operands[2]);
27833 : : operands[3] = STRIP_UNARY (operands[3]);
27834 : : operands[4] = GEN_INT (reg_mask);
27835 : : if (!register_operand (operands[2], V16QImode))
27836 : : operands[2] = force_reg (V16QImode, operands[2]);
27837 : : if (!register_operand (operands[3], V16QImode))
27838 : : operands[3] = force_reg (V16QImode, operands[3]);
27839 : : }
27840 : : #undef DONE
27841 : : #undef FAIL
27842 : : static const uint8_t expand_encoding[] = {
27843 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
27844 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27845 : : 0x25
27846 : : };
27847 : : return complete_seq (expand_encoding, operands);
27848 : : }
27849 : :
27850 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
27851 : : extern rtx_insn *gen_split_3070 (rtx_insn *, rtx *);
27852 : : rtx_insn *
27853 : : gen_split_3070 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27854 : : {
27855 : : if (dump_file)
27856 : : fprintf (dump_file, "Splitting with gen_split_3070 (sse.md:14259)\n");
27857 : : start_sequence ();
27858 : : #define FAIL return (end_sequence (), nullptr)
27859 : : #define DONE return end_sequence ()
27860 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27861 : : {
27862 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27863 : : int reg3 = 0xF0;
27864 : : int reg2 = 0xCC;
27865 : : int reg1 = 0xAA;
27866 : : int reg_mask, tmp1;
27867 : :
27868 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27869 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27870 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27871 : :
27872 : : tmp1 = reg1 ^ reg2;
27873 : : reg_mask = tmp1 & reg3;
27874 : : reg_mask &= 0xFF;
27875 : :
27876 : : operands[1] = STRIP_UNARY (operands[1]);
27877 : : operands[2] = STRIP_UNARY (operands[2]);
27878 : : operands[3] = STRIP_UNARY (operands[3]);
27879 : : operands[4] = GEN_INT (reg_mask);
27880 : : if (!register_operand (operands[2], V32HImode))
27881 : : operands[2] = force_reg (V32HImode, operands[2]);
27882 : : if (!register_operand (operands[3], V32HImode))
27883 : : operands[3] = force_reg (V32HImode, operands[3]);
27884 : : }
27885 : : #undef DONE
27886 : : #undef FAIL
27887 : : static const uint8_t expand_encoding[] = {
27888 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
27889 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27890 : : 0x25
27891 : : };
27892 : : return complete_seq (expand_encoding, operands);
27893 : : }
27894 : :
27895 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
27896 : : extern rtx_insn *gen_split_3080 (rtx_insn *, rtx *);
27897 : : rtx_insn *
27898 : : gen_split_3080 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27899 : : {
27900 : : if (dump_file)
27901 : : fprintf (dump_file, "Splitting with gen_split_3080 (sse.md:14259)\n");
27902 : : start_sequence ();
27903 : : #define FAIL return (end_sequence (), nullptr)
27904 : : #define DONE return end_sequence ()
27905 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27906 : : {
27907 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27908 : : int reg3 = 0xF0;
27909 : : int reg2 = 0xCC;
27910 : : int reg1 = 0xAA;
27911 : : int reg_mask, tmp1;
27912 : :
27913 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27914 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27915 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27916 : :
27917 : : tmp1 = reg1 ^ reg2;
27918 : : reg_mask = tmp1 | reg3;
27919 : : reg_mask &= 0xFF;
27920 : :
27921 : : operands[1] = STRIP_UNARY (operands[1]);
27922 : : operands[2] = STRIP_UNARY (operands[2]);
27923 : : operands[3] = STRIP_UNARY (operands[3]);
27924 : : operands[4] = GEN_INT (reg_mask);
27925 : : if (!register_operand (operands[2], V16HImode))
27926 : : operands[2] = force_reg (V16HImode, operands[2]);
27927 : : if (!register_operand (operands[3], V16HImode))
27928 : : operands[3] = force_reg (V16HImode, operands[3]);
27929 : : }
27930 : : #undef DONE
27931 : : #undef FAIL
27932 : : static const uint8_t expand_encoding[] = {
27933 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
27934 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27935 : : 0x25
27936 : : };
27937 : : return complete_seq (expand_encoding, operands);
27938 : : }
27939 : :
27940 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
27941 : : extern rtx_insn *gen_split_3090 (rtx_insn *, rtx *);
27942 : : rtx_insn *
27943 : : gen_split_3090 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27944 : : {
27945 : : if (dump_file)
27946 : : fprintf (dump_file, "Splitting with gen_split_3090 (sse.md:14259)\n");
27947 : : start_sequence ();
27948 : : #define FAIL return (end_sequence (), nullptr)
27949 : : #define DONE return end_sequence ()
27950 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27951 : : {
27952 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27953 : : int reg3 = 0xF0;
27954 : : int reg2 = 0xCC;
27955 : : int reg1 = 0xAA;
27956 : : int reg_mask, tmp1;
27957 : :
27958 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27959 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27960 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27961 : :
27962 : : tmp1 = reg1 ^ reg2;
27963 : : reg_mask = tmp1 ^ reg3;
27964 : : reg_mask &= 0xFF;
27965 : :
27966 : : operands[1] = STRIP_UNARY (operands[1]);
27967 : : operands[2] = STRIP_UNARY (operands[2]);
27968 : : operands[3] = STRIP_UNARY (operands[3]);
27969 : : operands[4] = GEN_INT (reg_mask);
27970 : : if (!register_operand (operands[2], V8HImode))
27971 : : operands[2] = force_reg (V8HImode, operands[2]);
27972 : : if (!register_operand (operands[3], V8HImode))
27973 : : operands[3] = force_reg (V8HImode, operands[3]);
27974 : : }
27975 : : #undef DONE
27976 : : #undef FAIL
27977 : : static const uint8_t expand_encoding[] = {
27978 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
27979 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27980 : : 0x25
27981 : : };
27982 : : return complete_seq (expand_encoding, operands);
27983 : : }
27984 : :
27985 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
27986 : : extern rtx_insn *gen_split_3100 (rtx_insn *, rtx *);
27987 : : rtx_insn *
27988 : : gen_split_3100 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27989 : : {
27990 : : if (dump_file)
27991 : : fprintf (dump_file, "Splitting with gen_split_3100 (sse.md:14259)\n");
27992 : : start_sequence ();
27993 : : #define FAIL return (end_sequence (), nullptr)
27994 : : #define DONE return end_sequence ()
27995 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27996 : : {
27997 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27998 : : int reg3 = 0xF0;
27999 : : int reg2 = 0xCC;
28000 : : int reg1 = 0xAA;
28001 : : int reg_mask, tmp1;
28002 : :
28003 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28004 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28005 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28006 : :
28007 : : tmp1 = reg1 & reg2;
28008 : : reg_mask = tmp1 & reg3;
28009 : : reg_mask &= 0xFF;
28010 : :
28011 : : operands[1] = STRIP_UNARY (operands[1]);
28012 : : operands[2] = STRIP_UNARY (operands[2]);
28013 : : operands[3] = STRIP_UNARY (operands[3]);
28014 : : operands[4] = GEN_INT (reg_mask);
28015 : : if (!register_operand (operands[2], V8SImode))
28016 : : operands[2] = force_reg (V8SImode, operands[2]);
28017 : : if (!register_operand (operands[3], V8SImode))
28018 : : operands[3] = force_reg (V8SImode, operands[3]);
28019 : : }
28020 : : #undef DONE
28021 : : #undef FAIL
28022 : : static const uint8_t expand_encoding[] = {
28023 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
28024 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28025 : : 0x25
28026 : : };
28027 : : return complete_seq (expand_encoding, operands);
28028 : : }
28029 : :
28030 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28031 : : extern rtx_insn *gen_split_3110 (rtx_insn *, rtx *);
28032 : : rtx_insn *
28033 : : gen_split_3110 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28034 : : {
28035 : : if (dump_file)
28036 : : fprintf (dump_file, "Splitting with gen_split_3110 (sse.md:14259)\n");
28037 : : start_sequence ();
28038 : : #define FAIL return (end_sequence (), nullptr)
28039 : : #define DONE return end_sequence ()
28040 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28041 : : {
28042 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28043 : : int reg3 = 0xF0;
28044 : : int reg2 = 0xCC;
28045 : : int reg1 = 0xAA;
28046 : : int reg_mask, tmp1;
28047 : :
28048 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28049 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28050 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28051 : :
28052 : : tmp1 = reg1 & reg2;
28053 : : reg_mask = tmp1 | reg3;
28054 : : reg_mask &= 0xFF;
28055 : :
28056 : : operands[1] = STRIP_UNARY (operands[1]);
28057 : : operands[2] = STRIP_UNARY (operands[2]);
28058 : : operands[3] = STRIP_UNARY (operands[3]);
28059 : : operands[4] = GEN_INT (reg_mask);
28060 : : if (!register_operand (operands[2], V4SImode))
28061 : : operands[2] = force_reg (V4SImode, operands[2]);
28062 : : if (!register_operand (operands[3], V4SImode))
28063 : : operands[3] = force_reg (V4SImode, operands[3]);
28064 : : }
28065 : : #undef DONE
28066 : : #undef FAIL
28067 : : static const uint8_t expand_encoding[] = {
28068 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
28069 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28070 : : 0x25
28071 : : };
28072 : : return complete_seq (expand_encoding, operands);
28073 : : }
28074 : :
28075 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28076 : : extern rtx_insn *gen_split_3120 (rtx_insn *, rtx *);
28077 : : rtx_insn *
28078 : : gen_split_3120 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28079 : : {
28080 : : if (dump_file)
28081 : : fprintf (dump_file, "Splitting with gen_split_3120 (sse.md:14259)\n");
28082 : : start_sequence ();
28083 : : #define FAIL return (end_sequence (), nullptr)
28084 : : #define DONE return end_sequence ()
28085 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28086 : : {
28087 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28088 : : int reg3 = 0xF0;
28089 : : int reg2 = 0xCC;
28090 : : int reg1 = 0xAA;
28091 : : int reg_mask, tmp1;
28092 : :
28093 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28094 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28095 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28096 : :
28097 : : tmp1 = reg1 & reg2;
28098 : : reg_mask = tmp1 ^ reg3;
28099 : : reg_mask &= 0xFF;
28100 : :
28101 : : operands[1] = STRIP_UNARY (operands[1]);
28102 : : operands[2] = STRIP_UNARY (operands[2]);
28103 : : operands[3] = STRIP_UNARY (operands[3]);
28104 : : operands[4] = GEN_INT (reg_mask);
28105 : : if (!register_operand (operands[2], V8DImode))
28106 : : operands[2] = force_reg (V8DImode, operands[2]);
28107 : : if (!register_operand (operands[3], V8DImode))
28108 : : operands[3] = force_reg (V8DImode, operands[3]);
28109 : : }
28110 : : #undef DONE
28111 : : #undef FAIL
28112 : : static const uint8_t expand_encoding[] = {
28113 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
28114 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28115 : : 0x25
28116 : : };
28117 : : return complete_seq (expand_encoding, operands);
28118 : : }
28119 : :
28120 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28121 : : extern rtx_insn *gen_split_3130 (rtx_insn *, rtx *);
28122 : : rtx_insn *
28123 : : gen_split_3130 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28124 : : {
28125 : : if (dump_file)
28126 : : fprintf (dump_file, "Splitting with gen_split_3130 (sse.md:14259)\n");
28127 : : start_sequence ();
28128 : : #define FAIL return (end_sequence (), nullptr)
28129 : : #define DONE return end_sequence ()
28130 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28131 : : {
28132 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28133 : : int reg3 = 0xF0;
28134 : : int reg2 = 0xCC;
28135 : : int reg1 = 0xAA;
28136 : : int reg_mask, tmp1;
28137 : :
28138 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28139 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28140 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28141 : :
28142 : : tmp1 = reg1 | reg2;
28143 : : reg_mask = tmp1 & reg3;
28144 : : reg_mask &= 0xFF;
28145 : :
28146 : : operands[1] = STRIP_UNARY (operands[1]);
28147 : : operands[2] = STRIP_UNARY (operands[2]);
28148 : : operands[3] = STRIP_UNARY (operands[3]);
28149 : : operands[4] = GEN_INT (reg_mask);
28150 : : if (!register_operand (operands[2], V4DImode))
28151 : : operands[2] = force_reg (V4DImode, operands[2]);
28152 : : if (!register_operand (operands[3], V4DImode))
28153 : : operands[3] = force_reg (V4DImode, operands[3]);
28154 : : }
28155 : : #undef DONE
28156 : : #undef FAIL
28157 : : static const uint8_t expand_encoding[] = {
28158 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
28159 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28160 : : 0x25
28161 : : };
28162 : : return complete_seq (expand_encoding, operands);
28163 : : }
28164 : :
28165 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28166 : : extern rtx_insn *gen_split_3140 (rtx_insn *, rtx *);
28167 : : rtx_insn *
28168 : : gen_split_3140 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28169 : : {
28170 : : if (dump_file)
28171 : : fprintf (dump_file, "Splitting with gen_split_3140 (sse.md:14259)\n");
28172 : : start_sequence ();
28173 : : #define FAIL return (end_sequence (), nullptr)
28174 : : #define DONE return end_sequence ()
28175 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28176 : : {
28177 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28178 : : int reg3 = 0xF0;
28179 : : int reg2 = 0xCC;
28180 : : int reg1 = 0xAA;
28181 : : int reg_mask, tmp1;
28182 : :
28183 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28184 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28185 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28186 : :
28187 : : tmp1 = reg1 | reg2;
28188 : : reg_mask = tmp1 | reg3;
28189 : : reg_mask &= 0xFF;
28190 : :
28191 : : operands[1] = STRIP_UNARY (operands[1]);
28192 : : operands[2] = STRIP_UNARY (operands[2]);
28193 : : operands[3] = STRIP_UNARY (operands[3]);
28194 : : operands[4] = GEN_INT (reg_mask);
28195 : : if (!register_operand (operands[2], V2DImode))
28196 : : operands[2] = force_reg (V2DImode, operands[2]);
28197 : : if (!register_operand (operands[3], V2DImode))
28198 : : operands[3] = force_reg (V2DImode, operands[3]);
28199 : : }
28200 : : #undef DONE
28201 : : #undef FAIL
28202 : : static const uint8_t expand_encoding[] = {
28203 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
28204 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28205 : : 0x25
28206 : : };
28207 : : return complete_seq (expand_encoding, operands);
28208 : : }
28209 : :
28210 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28211 : : extern rtx_insn *gen_split_3150 (rtx_insn *, rtx *);
28212 : : rtx_insn *
28213 : : gen_split_3150 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28214 : : {
28215 : : if (dump_file)
28216 : : fprintf (dump_file, "Splitting with gen_split_3150 (sse.md:14259)\n");
28217 : : start_sequence ();
28218 : : #define FAIL return (end_sequence (), nullptr)
28219 : : #define DONE return end_sequence ()
28220 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28221 : : {
28222 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28223 : : int reg3 = 0xF0;
28224 : : int reg2 = 0xCC;
28225 : : int reg1 = 0xAA;
28226 : : int reg_mask, tmp1;
28227 : :
28228 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28229 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28230 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28231 : :
28232 : : tmp1 = reg1 | reg2;
28233 : : reg_mask = tmp1 ^ reg3;
28234 : : reg_mask &= 0xFF;
28235 : :
28236 : : operands[1] = STRIP_UNARY (operands[1]);
28237 : : operands[2] = STRIP_UNARY (operands[2]);
28238 : : operands[3] = STRIP_UNARY (operands[3]);
28239 : : operands[4] = GEN_INT (reg_mask);
28240 : : if (!register_operand (operands[2], V32HFmode))
28241 : : operands[2] = force_reg (V32HFmode, operands[2]);
28242 : : if (!register_operand (operands[3], V32HFmode))
28243 : : operands[3] = force_reg (V32HFmode, operands[3]);
28244 : : }
28245 : : #undef DONE
28246 : : #undef FAIL
28247 : : static const uint8_t expand_encoding[] = {
28248 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
28249 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28250 : : 0x25
28251 : : };
28252 : : return complete_seq (expand_encoding, operands);
28253 : : }
28254 : :
28255 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28256 : : extern rtx_insn *gen_split_3160 (rtx_insn *, rtx *);
28257 : : rtx_insn *
28258 : : gen_split_3160 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28259 : : {
28260 : : if (dump_file)
28261 : : fprintf (dump_file, "Splitting with gen_split_3160 (sse.md:14259)\n");
28262 : : start_sequence ();
28263 : : #define FAIL return (end_sequence (), nullptr)
28264 : : #define DONE return end_sequence ()
28265 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28266 : : {
28267 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28268 : : int reg3 = 0xF0;
28269 : : int reg2 = 0xCC;
28270 : : int reg1 = 0xAA;
28271 : : int reg_mask, tmp1;
28272 : :
28273 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28274 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28275 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28276 : :
28277 : : tmp1 = reg1 ^ reg2;
28278 : : reg_mask = tmp1 & reg3;
28279 : : reg_mask &= 0xFF;
28280 : :
28281 : : operands[1] = STRIP_UNARY (operands[1]);
28282 : : operands[2] = STRIP_UNARY (operands[2]);
28283 : : operands[3] = STRIP_UNARY (operands[3]);
28284 : : operands[4] = GEN_INT (reg_mask);
28285 : : if (!register_operand (operands[2], V16HFmode))
28286 : : operands[2] = force_reg (V16HFmode, operands[2]);
28287 : : if (!register_operand (operands[3], V16HFmode))
28288 : : operands[3] = force_reg (V16HFmode, operands[3]);
28289 : : }
28290 : : #undef DONE
28291 : : #undef FAIL
28292 : : static const uint8_t expand_encoding[] = {
28293 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
28294 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28295 : : 0x25
28296 : : };
28297 : : return complete_seq (expand_encoding, operands);
28298 : : }
28299 : :
28300 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28301 : : extern rtx_insn *gen_split_3170 (rtx_insn *, rtx *);
28302 : : rtx_insn *
28303 : : gen_split_3170 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28304 : : {
28305 : : if (dump_file)
28306 : : fprintf (dump_file, "Splitting with gen_split_3170 (sse.md:14259)\n");
28307 : : start_sequence ();
28308 : : #define FAIL return (end_sequence (), nullptr)
28309 : : #define DONE return end_sequence ()
28310 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28311 : : {
28312 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28313 : : int reg3 = 0xF0;
28314 : : int reg2 = 0xCC;
28315 : : int reg1 = 0xAA;
28316 : : int reg_mask, tmp1;
28317 : :
28318 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28319 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28320 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28321 : :
28322 : : tmp1 = reg1 ^ reg2;
28323 : : reg_mask = tmp1 | reg3;
28324 : : reg_mask &= 0xFF;
28325 : :
28326 : : operands[1] = STRIP_UNARY (operands[1]);
28327 : : operands[2] = STRIP_UNARY (operands[2]);
28328 : : operands[3] = STRIP_UNARY (operands[3]);
28329 : : operands[4] = GEN_INT (reg_mask);
28330 : : if (!register_operand (operands[2], V8HFmode))
28331 : : operands[2] = force_reg (V8HFmode, operands[2]);
28332 : : if (!register_operand (operands[3], V8HFmode))
28333 : : operands[3] = force_reg (V8HFmode, operands[3]);
28334 : : }
28335 : : #undef DONE
28336 : : #undef FAIL
28337 : : static const uint8_t expand_encoding[] = {
28338 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
28339 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28340 : : 0x25
28341 : : };
28342 : : return complete_seq (expand_encoding, operands);
28343 : : }
28344 : :
28345 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28346 : : extern rtx_insn *gen_split_3180 (rtx_insn *, rtx *);
28347 : : rtx_insn *
28348 : : gen_split_3180 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28349 : : {
28350 : : if (dump_file)
28351 : : fprintf (dump_file, "Splitting with gen_split_3180 (sse.md:14259)\n");
28352 : : start_sequence ();
28353 : : #define FAIL return (end_sequence (), nullptr)
28354 : : #define DONE return end_sequence ()
28355 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28356 : : {
28357 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28358 : : int reg3 = 0xF0;
28359 : : int reg2 = 0xCC;
28360 : : int reg1 = 0xAA;
28361 : : int reg_mask, tmp1;
28362 : :
28363 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28364 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28365 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28366 : :
28367 : : tmp1 = reg1 ^ reg2;
28368 : : reg_mask = tmp1 ^ reg3;
28369 : : reg_mask &= 0xFF;
28370 : :
28371 : : operands[1] = STRIP_UNARY (operands[1]);
28372 : : operands[2] = STRIP_UNARY (operands[2]);
28373 : : operands[3] = STRIP_UNARY (operands[3]);
28374 : : operands[4] = GEN_INT (reg_mask);
28375 : : if (!register_operand (operands[2], V32BFmode))
28376 : : operands[2] = force_reg (V32BFmode, operands[2]);
28377 : : if (!register_operand (operands[3], V32BFmode))
28378 : : operands[3] = force_reg (V32BFmode, operands[3]);
28379 : : }
28380 : : #undef DONE
28381 : : #undef FAIL
28382 : : static const uint8_t expand_encoding[] = {
28383 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
28384 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28385 : : 0x25
28386 : : };
28387 : : return complete_seq (expand_encoding, operands);
28388 : : }
28389 : :
28390 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28391 : : extern rtx_insn *gen_split_3190 (rtx_insn *, rtx *);
28392 : : rtx_insn *
28393 : : gen_split_3190 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28394 : : {
28395 : : if (dump_file)
28396 : : fprintf (dump_file, "Splitting with gen_split_3190 (sse.md:14259)\n");
28397 : : start_sequence ();
28398 : : #define FAIL return (end_sequence (), nullptr)
28399 : : #define DONE return end_sequence ()
28400 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28401 : : {
28402 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28403 : : int reg3 = 0xF0;
28404 : : int reg2 = 0xCC;
28405 : : int reg1 = 0xAA;
28406 : : int reg_mask, tmp1;
28407 : :
28408 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28409 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28410 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28411 : :
28412 : : tmp1 = reg1 & reg2;
28413 : : reg_mask = tmp1 & reg3;
28414 : : reg_mask &= 0xFF;
28415 : :
28416 : : operands[1] = STRIP_UNARY (operands[1]);
28417 : : operands[2] = STRIP_UNARY (operands[2]);
28418 : : operands[3] = STRIP_UNARY (operands[3]);
28419 : : operands[4] = GEN_INT (reg_mask);
28420 : : if (!register_operand (operands[2], V8BFmode))
28421 : : operands[2] = force_reg (V8BFmode, operands[2]);
28422 : : if (!register_operand (operands[3], V8BFmode))
28423 : : operands[3] = force_reg (V8BFmode, operands[3]);
28424 : : }
28425 : : #undef DONE
28426 : : #undef FAIL
28427 : : static const uint8_t expand_encoding[] = {
28428 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
28429 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28430 : : 0x25
28431 : : };
28432 : : return complete_seq (expand_encoding, operands);
28433 : : }
28434 : :
28435 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28436 : : extern rtx_insn *gen_split_3200 (rtx_insn *, rtx *);
28437 : : rtx_insn *
28438 : : gen_split_3200 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28439 : : {
28440 : : if (dump_file)
28441 : : fprintf (dump_file, "Splitting with gen_split_3200 (sse.md:14259)\n");
28442 : : start_sequence ();
28443 : : #define FAIL return (end_sequence (), nullptr)
28444 : : #define DONE return end_sequence ()
28445 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28446 : : {
28447 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28448 : : int reg3 = 0xF0;
28449 : : int reg2 = 0xCC;
28450 : : int reg1 = 0xAA;
28451 : : int reg_mask, tmp1;
28452 : :
28453 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28454 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28455 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28456 : :
28457 : : tmp1 = reg1 & reg2;
28458 : : reg_mask = tmp1 | reg3;
28459 : : reg_mask &= 0xFF;
28460 : :
28461 : : operands[1] = STRIP_UNARY (operands[1]);
28462 : : operands[2] = STRIP_UNARY (operands[2]);
28463 : : operands[3] = STRIP_UNARY (operands[3]);
28464 : : operands[4] = GEN_INT (reg_mask);
28465 : : if (!register_operand (operands[2], V16SFmode))
28466 : : operands[2] = force_reg (V16SFmode, operands[2]);
28467 : : if (!register_operand (operands[3], V16SFmode))
28468 : : operands[3] = force_reg (V16SFmode, operands[3]);
28469 : : }
28470 : : #undef DONE
28471 : : #undef FAIL
28472 : : static const uint8_t expand_encoding[] = {
28473 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
28474 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28475 : : 0x25
28476 : : };
28477 : : return complete_seq (expand_encoding, operands);
28478 : : }
28479 : :
28480 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28481 : : extern rtx_insn *gen_split_3210 (rtx_insn *, rtx *);
28482 : : rtx_insn *
28483 : : gen_split_3210 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28484 : : {
28485 : : if (dump_file)
28486 : : fprintf (dump_file, "Splitting with gen_split_3210 (sse.md:14259)\n");
28487 : : start_sequence ();
28488 : : #define FAIL return (end_sequence (), nullptr)
28489 : : #define DONE return end_sequence ()
28490 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28491 : : {
28492 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28493 : : int reg3 = 0xF0;
28494 : : int reg2 = 0xCC;
28495 : : int reg1 = 0xAA;
28496 : : int reg_mask, tmp1;
28497 : :
28498 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28499 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28500 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28501 : :
28502 : : tmp1 = reg1 & reg2;
28503 : : reg_mask = tmp1 ^ reg3;
28504 : : reg_mask &= 0xFF;
28505 : :
28506 : : operands[1] = STRIP_UNARY (operands[1]);
28507 : : operands[2] = STRIP_UNARY (operands[2]);
28508 : : operands[3] = STRIP_UNARY (operands[3]);
28509 : : operands[4] = GEN_INT (reg_mask);
28510 : : if (!register_operand (operands[2], V8SFmode))
28511 : : operands[2] = force_reg (V8SFmode, operands[2]);
28512 : : if (!register_operand (operands[3], V8SFmode))
28513 : : operands[3] = force_reg (V8SFmode, operands[3]);
28514 : : }
28515 : : #undef DONE
28516 : : #undef FAIL
28517 : : static const uint8_t expand_encoding[] = {
28518 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
28519 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28520 : : 0x25
28521 : : };
28522 : : return complete_seq (expand_encoding, operands);
28523 : : }
28524 : :
28525 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28526 : : extern rtx_insn *gen_split_3220 (rtx_insn *, rtx *);
28527 : : rtx_insn *
28528 : : gen_split_3220 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28529 : : {
28530 : : if (dump_file)
28531 : : fprintf (dump_file, "Splitting with gen_split_3220 (sse.md:14259)\n");
28532 : : start_sequence ();
28533 : : #define FAIL return (end_sequence (), nullptr)
28534 : : #define DONE return end_sequence ()
28535 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28536 : : {
28537 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28538 : : int reg3 = 0xF0;
28539 : : int reg2 = 0xCC;
28540 : : int reg1 = 0xAA;
28541 : : int reg_mask, tmp1;
28542 : :
28543 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28544 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28545 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28546 : :
28547 : : tmp1 = reg1 | reg2;
28548 : : reg_mask = tmp1 & reg3;
28549 : : reg_mask &= 0xFF;
28550 : :
28551 : : operands[1] = STRIP_UNARY (operands[1]);
28552 : : operands[2] = STRIP_UNARY (operands[2]);
28553 : : operands[3] = STRIP_UNARY (operands[3]);
28554 : : operands[4] = GEN_INT (reg_mask);
28555 : : if (!register_operand (operands[2], V4SFmode))
28556 : : operands[2] = force_reg (V4SFmode, operands[2]);
28557 : : if (!register_operand (operands[3], V4SFmode))
28558 : : operands[3] = force_reg (V4SFmode, operands[3]);
28559 : : }
28560 : : #undef DONE
28561 : : #undef FAIL
28562 : : static const uint8_t expand_encoding[] = {
28563 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
28564 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28565 : : 0x25
28566 : : };
28567 : : return complete_seq (expand_encoding, operands);
28568 : : }
28569 : :
28570 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28571 : : extern rtx_insn *gen_split_3230 (rtx_insn *, rtx *);
28572 : : rtx_insn *
28573 : : gen_split_3230 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28574 : : {
28575 : : if (dump_file)
28576 : : fprintf (dump_file, "Splitting with gen_split_3230 (sse.md:14259)\n");
28577 : : start_sequence ();
28578 : : #define FAIL return (end_sequence (), nullptr)
28579 : : #define DONE return end_sequence ()
28580 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28581 : : {
28582 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28583 : : int reg3 = 0xF0;
28584 : : int reg2 = 0xCC;
28585 : : int reg1 = 0xAA;
28586 : : int reg_mask, tmp1;
28587 : :
28588 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28589 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28590 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28591 : :
28592 : : tmp1 = reg1 | reg2;
28593 : : reg_mask = tmp1 | reg3;
28594 : : reg_mask &= 0xFF;
28595 : :
28596 : : operands[1] = STRIP_UNARY (operands[1]);
28597 : : operands[2] = STRIP_UNARY (operands[2]);
28598 : : operands[3] = STRIP_UNARY (operands[3]);
28599 : : operands[4] = GEN_INT (reg_mask);
28600 : : if (!register_operand (operands[2], V8DFmode))
28601 : : operands[2] = force_reg (V8DFmode, operands[2]);
28602 : : if (!register_operand (operands[3], V8DFmode))
28603 : : operands[3] = force_reg (V8DFmode, operands[3]);
28604 : : }
28605 : : #undef DONE
28606 : : #undef FAIL
28607 : : static const uint8_t expand_encoding[] = {
28608 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
28609 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28610 : : 0x25
28611 : : };
28612 : : return complete_seq (expand_encoding, operands);
28613 : : }
28614 : :
28615 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28616 : : extern rtx_insn *gen_split_3240 (rtx_insn *, rtx *);
28617 : : rtx_insn *
28618 : : gen_split_3240 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28619 : : {
28620 : : if (dump_file)
28621 : : fprintf (dump_file, "Splitting with gen_split_3240 (sse.md:14259)\n");
28622 : : start_sequence ();
28623 : : #define FAIL return (end_sequence (), nullptr)
28624 : : #define DONE return end_sequence ()
28625 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28626 : : {
28627 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28628 : : int reg3 = 0xF0;
28629 : : int reg2 = 0xCC;
28630 : : int reg1 = 0xAA;
28631 : : int reg_mask, tmp1;
28632 : :
28633 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28634 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28635 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28636 : :
28637 : : tmp1 = reg1 | reg2;
28638 : : reg_mask = tmp1 ^ reg3;
28639 : : reg_mask &= 0xFF;
28640 : :
28641 : : operands[1] = STRIP_UNARY (operands[1]);
28642 : : operands[2] = STRIP_UNARY (operands[2]);
28643 : : operands[3] = STRIP_UNARY (operands[3]);
28644 : : operands[4] = GEN_INT (reg_mask);
28645 : : if (!register_operand (operands[2], V4DFmode))
28646 : : operands[2] = force_reg (V4DFmode, operands[2]);
28647 : : if (!register_operand (operands[3], V4DFmode))
28648 : : operands[3] = force_reg (V4DFmode, operands[3]);
28649 : : }
28650 : : #undef DONE
28651 : : #undef FAIL
28652 : : static const uint8_t expand_encoding[] = {
28653 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
28654 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28655 : : 0x25
28656 : : };
28657 : : return complete_seq (expand_encoding, operands);
28658 : : }
28659 : :
28660 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14259 */
28661 : : extern rtx_insn *gen_split_3250 (rtx_insn *, rtx *);
28662 : : rtx_insn *
28663 : : gen_split_3250 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28664 : : {
28665 : : if (dump_file)
28666 : : fprintf (dump_file, "Splitting with gen_split_3250 (sse.md:14259)\n");
28667 : : start_sequence ();
28668 : : #define FAIL return (end_sequence (), nullptr)
28669 : : #define DONE return end_sequence ()
28670 : : #line 14278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28671 : : {
28672 : : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28673 : : int reg3 = 0xF0;
28674 : : int reg2 = 0xCC;
28675 : : int reg1 = 0xAA;
28676 : : int reg_mask, tmp1;
28677 : :
28678 : : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28679 : : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28680 : : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28681 : :
28682 : : tmp1 = reg1 ^ reg2;
28683 : : reg_mask = tmp1 & reg3;
28684 : : reg_mask &= 0xFF;
28685 : :
28686 : : operands[1] = STRIP_UNARY (operands[1]);
28687 : : operands[2] = STRIP_UNARY (operands[2]);
28688 : : operands[3] = STRIP_UNARY (operands[3]);
28689 : : operands[4] = GEN_INT (reg_mask);
28690 : : if (!register_operand (operands[2], V2DFmode))
28691 : : operands[2] = force_reg (V2DFmode, operands[2]);
28692 : : if (!register_operand (operands[3], V2DFmode))
28693 : : operands[3] = force_reg (V2DFmode, operands[3]);
28694 : : }
28695 : : #undef DONE
28696 : : #undef FAIL
28697 : : static const uint8_t expand_encoding[] = {
28698 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
28699 : : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28700 : : 0x25
28701 : : };
28702 : : return complete_seq (expand_encoding, operands);
28703 : : }
28704 : :
28705 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14442 */
28706 : : rtx
28707 : : gen_avx512f_fixupimmv16sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28708 : : {
28709 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28710 : : start_sequence ();
28711 : : {
28712 : : #define FAIL return (end_sequence (), nullptr)
28713 : : #define DONE return end_sequence ()
28714 : : #line 14450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28715 : : {
28716 : : emit_insn (gen_avx512f_fixupimmv16sf_maskz_1 (
28717 : : operands[0], operands[1], operands[2], operands[3],
28718 : : operands[4], CONST0_RTX (V16SFmode), operands[5]
28719 : : ));
28720 : : DONE;
28721 : : }
28722 : : #undef DONE
28723 : : #undef FAIL
28724 : : }
28725 : : static const uint8_t expand_encoding[] = {
28726 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28727 : : 0x03, 0x01, 0x04, 0x01, 0x05
28728 : : };
28729 : : return complete_seq (expand_encoding, operands);
28730 : : }
28731 : :
28732 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14442 */
28733 : : rtx
28734 : : gen_avx512f_fixupimmv8df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
28735 : : {
28736 : : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
28737 : : start_sequence ();
28738 : : {
28739 : : #define FAIL return (end_sequence (), nullptr)
28740 : : #define DONE return end_sequence ()
28741 : : #line 14450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28742 : : {
28743 : : emit_insn (gen_avx512f_fixupimmv8df_maskz_1_round (
28744 : : operands[0], operands[1], operands[2], operands[3],
28745 : : operands[4], CONST0_RTX (V8DFmode), operands[5]
28746 : : , operands[6]));
28747 : : DONE;
28748 : : }
28749 : : #undef DONE
28750 : : #undef FAIL
28751 : : }
28752 : : static const uint8_t expand_encoding[] = {
28753 : : 0x07, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28754 : : 0x03, 0x01, 0x04, 0x01, 0x05, 0x1a, 0x00, 0x01,
28755 : : 0x01, 0x06, 0x81, 0x33
28756 : : };
28757 : : return complete_seq (expand_encoding, operands);
28758 : : }
28759 : :
28760 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14689 */
28761 : : rtx
28762 : : gen_avx_shufpd256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
28763 : : {
28764 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
28765 : : start_sequence ();
28766 : : {
28767 : : #define FAIL return (end_sequence (), nullptr)
28768 : : #define DONE return end_sequence ()
28769 : : #line 14695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28770 : : {
28771 : : int mask = INTVAL (operands[3]);
28772 : : emit_insn (gen_avx_shufpd256_1 (operands[0],
28773 : : operands[1],
28774 : : operands[2],
28775 : : GEN_INT (mask & 1),
28776 : : GEN_INT (mask & 2 ? 5 : 4),
28777 : : GEN_INT (mask & 4 ? 3 : 2),
28778 : : GEN_INT (mask & 8 ? 7 : 6)
28779 : : ));
28780 : : DONE;
28781 : : }
28782 : : #undef DONE
28783 : : #undef FAIL
28784 : : }
28785 : : static const uint8_t expand_encoding[] = {
28786 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28787 : : 0x03
28788 : : };
28789 : : return complete_seq (expand_encoding, operands);
28790 : : }
28791 : :
28792 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15066 */
28793 : : extern rtx_insn *gen_split_3257 (rtx_insn *, rtx *);
28794 : : rtx_insn *
28795 : : gen_split_3257 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28796 : : {
28797 : : if (dump_file)
28798 : : fprintf (dump_file, "Splitting with gen_split_3257 (sse.md:15066)\n");
28799 : : start_sequence ();
28800 : : #define FAIL return (end_sequence (), nullptr)
28801 : : #define DONE return end_sequence ()
28802 : : #line 15073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28803 : : operands[0] = adjust_address (operands[0], DFmode, 8);
28804 : : #undef DONE
28805 : : #undef FAIL
28806 : : static const uint8_t expand_encoding[] = {
28807 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
28808 : : };
28809 : : return complete_seq (expand_encoding, operands);
28810 : : }
28811 : :
28812 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15462 */
28813 : : rtx
28814 : : gen_avx512f_ss_truncatev16siv16qi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28815 : : {
28816 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28817 : : static const uint8_t expand_encoding[] = {
28818 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x81, 0x17,
28819 : : 0x4f, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28820 : : };
28821 : : return expand_rtx (expand_encoding, operands);
28822 : : }
28823 : :
28824 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15462 */
28825 : : rtx
28826 : : gen_avx512f_us_truncatev16siv16hi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28827 : : {
28828 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28829 : : static const uint8_t expand_encoding[] = {
28830 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81, 0x18,
28831 : : 0x55, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28832 : : };
28833 : : return expand_rtx (expand_encoding, operands);
28834 : : }
28835 : :
28836 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15534 */
28837 : : rtx
28838 : : gen_avx512bw_ss_truncatev32hiv32qi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28839 : : {
28840 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28841 : : static const uint8_t expand_encoding[] = {
28842 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81, 0x17,
28843 : : 0x54, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28844 : : };
28845 : : return expand_rtx (expand_encoding, operands);
28846 : : }
28847 : :
28848 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15634 */
28849 : : rtx
28850 : : gen_avx512vl_truncatev4div4si2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28851 : : {
28852 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28853 : : static const uint8_t expand_encoding[] = {
28854 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x70, 0x51,
28855 : : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28856 : : };
28857 : : return expand_rtx (expand_encoding, operands);
28858 : : }
28859 : :
28860 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15655 */
28861 : : rtx
28862 : : gen_truncv4div4qi2 (const rtx operand0, const rtx operand1)
28863 : : {
28864 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28865 : : start_sequence ();
28866 : : {
28867 : : #define FAIL return (end_sequence (), nullptr)
28868 : : #define DONE return end_sequence ()
28869 : : #line 15660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28870 : : {
28871 : : if (TARGET_AVX512VL
28872 : : && (V4DImode != V8HImode || TARGET_AVX512BW))
28873 : : {
28874 : : rtx op0 = gen_reg_rtx (V16QImode);
28875 : :
28876 : : emit_insn (gen_avx512vl_truncatev4div4qi2
28877 : : (op0, operands[1], CONST0_RTX (V12QImode)));
28878 : :
28879 : : emit_move_insn (operands[0],
28880 : : lowpart_subreg (V4QImode, op0, V16QImode));
28881 : : }
28882 : : else
28883 : : {
28884 : : ix86_expand_trunc_with_avx2_noavx512f (operands[0],
28885 : : operands[1],
28886 : : V32QImode);
28887 : : }
28888 : : DONE;
28889 : : }
28890 : : #undef DONE
28891 : : #undef FAIL
28892 : : }
28893 : : static const uint8_t expand_encoding[] = {
28894 : : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x45, 0x01, 0x01
28895 : : };
28896 : : return complete_seq (expand_encoding, operands);
28897 : : }
28898 : :
28899 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15797 */
28900 : : rtx
28901 : : gen_avx512vl_us_truncatev2div2qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28902 : : {
28903 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28904 : : start_sequence ();
28905 : : {
28906 : : #define FAIL return (end_sequence (), nullptr)
28907 : : #define DONE return end_sequence ()
28908 : : #line 15803 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28909 : : {
28910 : : operands[0] = adjust_address_nv (operands[0], V2QImode, 0);
28911 : : emit_insn (gen_avx512vl_us_truncatev2div2qi2_mask_store_1 (operands[0],
28912 : : operands[1],
28913 : : operands[2]));
28914 : : DONE;
28915 : : }
28916 : : #undef DONE
28917 : : #undef FAIL
28918 : : }
28919 : : static const uint8_t expand_encoding[] = {
28920 : : 0x03, 0x01, 0x00, 0x81, 0x18, 0x44, 0x01, 0x01,
28921 : : 0x01, 0x02
28922 : : };
28923 : : return complete_seq (expand_encoding, operands);
28924 : : }
28925 : :
28926 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15920 */
28927 : : extern rtx_insn *gen_split_3279 (rtx_insn *, rtx *);
28928 : : rtx_insn *
28929 : : gen_split_3279 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28930 : : {
28931 : : if (dump_file)
28932 : : fprintf (dump_file, "Splitting with gen_split_3279 (sse.md:15920)\n");
28933 : : start_sequence ();
28934 : : #define FAIL return (end_sequence (), nullptr)
28935 : : #define DONE return end_sequence ()
28936 : : #line 15930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28937 : : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
28938 : : #undef DONE
28939 : : #undef FAIL
28940 : : static const uint8_t expand_encoding[] = {
28941 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x48, 0x01,
28942 : : 0x01
28943 : : };
28944 : : return complete_seq (expand_encoding, operands);
28945 : : }
28946 : :
28947 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15990 */
28948 : : rtx
28949 : : gen_avx512vl_us_truncatev8hiv8qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28950 : : {
28951 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28952 : : start_sequence ();
28953 : : {
28954 : : #define FAIL return (end_sequence (), nullptr)
28955 : : #define DONE return end_sequence ()
28956 : : #line 15996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28957 : : {
28958 : : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
28959 : : emit_insn (gen_avx512vl_us_truncatev8hiv8qi2_mask_store_1 (operands[0],
28960 : : operands[1],
28961 : : operands[2]));
28962 : : DONE;
28963 : : }
28964 : : #undef DONE
28965 : : #undef FAIL
28966 : : }
28967 : : static const uint8_t expand_encoding[] = {
28968 : : 0x03, 0x01, 0x00, 0x81, 0x18, 0x48, 0x01, 0x01,
28969 : : 0x01, 0x02
28970 : : };
28971 : : return complete_seq (expand_encoding, operands);
28972 : : }
28973 : :
28974 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16082 */
28975 : : extern rtx_insn *gen_split_3286 (rtx_insn *, rtx *);
28976 : : rtx_insn *
28977 : : gen_split_3286 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28978 : : {
28979 : : if (dump_file)
28980 : : fprintf (dump_file, "Splitting with gen_split_3286 (sse.md:16082)\n");
28981 : : start_sequence ();
28982 : : #define FAIL return (end_sequence (), nullptr)
28983 : : #define DONE return end_sequence ()
28984 : : #line 16092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28985 : : operands[0] = adjust_address_nv (operands[0], V4HImode, 0);
28986 : : #undef DONE
28987 : : #undef FAIL
28988 : : static const uint8_t expand_encoding[] = {
28989 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x49, 0x01,
28990 : : 0x01
28991 : : };
28992 : : return complete_seq (expand_encoding, operands);
28993 : : }
28994 : :
28995 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16173 */
28996 : : extern rtx_insn *gen_split_3290 (rtx_insn *, rtx *);
28997 : : rtx_insn *
28998 : : gen_split_3290 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28999 : : {
29000 : : if (dump_file)
29001 : : fprintf (dump_file, "Splitting with gen_split_3290 (sse.md:16173)\n");
29002 : : start_sequence ();
29003 : : #define FAIL return (end_sequence (), nullptr)
29004 : : #define DONE return end_sequence ()
29005 : : #line 16183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29006 : : operands[0] = adjust_address_nv (operands[0], V2HImode, 0);
29007 : : #undef DONE
29008 : : #undef FAIL
29009 : : static const uint8_t expand_encoding[] = {
29010 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x17, 0x46, 0x01,
29011 : : 0x01
29012 : : };
29013 : : return complete_seq (expand_encoding, operands);
29014 : : }
29015 : :
29016 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16323 */
29017 : : extern rtx_insn *gen_split_3294 (rtx_insn *, rtx *);
29018 : : rtx_insn *
29019 : : gen_split_3294 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29020 : : {
29021 : : if (dump_file)
29022 : : fprintf (dump_file, "Splitting with gen_split_3294 (sse.md:16323)\n");
29023 : : start_sequence ();
29024 : : #define FAIL return (end_sequence (), nullptr)
29025 : : #define DONE return end_sequence ()
29026 : : #line 16333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29027 : : operands[0] = adjust_address_nv (operands[0], V2SImode, 0);
29028 : : #undef DONE
29029 : : #undef FAIL
29030 : : static const uint8_t expand_encoding[] = {
29031 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x17, 0x4a, 0x01,
29032 : : 0x01
29033 : : };
29034 : : return complete_seq (expand_encoding, operands);
29035 : : }
29036 : :
29037 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16506 */
29038 : : rtx
29039 : : gen_avx512f_ss_truncatev8div16qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
29040 : : {
29041 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29042 : : start_sequence ();
29043 : : {
29044 : : #define FAIL return (end_sequence (), nullptr)
29045 : : #define DONE return end_sequence ()
29046 : : #line 16512 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29047 : : {
29048 : : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
29049 : : emit_insn (gen_avx512f_ss_truncatev8div16qi2_mask_store_1 (operands[0],
29050 : : operands[1],
29051 : : operands[2]));
29052 : : DONE;
29053 : : }
29054 : : #undef DONE
29055 : : #undef FAIL
29056 : : }
29057 : : static const uint8_t expand_encoding[] = {
29058 : : 0x03, 0x01, 0x00, 0x81, 0x17, 0x48, 0x01, 0x01,
29059 : : 0x01, 0x02
29060 : : };
29061 : : return complete_seq (expand_encoding, operands);
29062 : : }
29063 : :
29064 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16526 */
29065 : : rtx
29066 : : gen_negv8di2 (const rtx operand0, const rtx operand1)
29067 : : {
29068 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
29069 : : start_sequence ();
29070 : : {
29071 : : #define FAIL return (end_sequence (), nullptr)
29072 : : #define DONE return end_sequence ()
29073 : : #line 16532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29074 : : operands[2] = force_reg (V8DImode, CONST0_RTX (V8DImode));
29075 : : #undef DONE
29076 : : #undef FAIL
29077 : : }
29078 : : static const uint8_t expand_encoding[] = {
29079 : : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x5c, 0x01, 0x02,
29080 : : 0x01, 0x01
29081 : : };
29082 : : return complete_seq (expand_encoding, operands);
29083 : : }
29084 : :
29085 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16534 */
29086 : : rtx
29087 : : gen_subv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29088 : : {
29089 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29090 : : start_sequence ();
29091 : : {
29092 : : #define FAIL return (end_sequence (), nullptr)
29093 : : #define DONE return end_sequence ()
29094 : : #line 16540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29095 : : ix86_fixup_binary_operands_no_copy (MINUS, V32HImode, operands);
29096 : : #undef DONE
29097 : : #undef FAIL
29098 : : }
29099 : : static const uint8_t expand_encoding[] = {
29100 : : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x5a, 0x01, 0x01,
29101 : : 0x01, 0x02
29102 : : };
29103 : : return complete_seq (expand_encoding, operands);
29104 : : }
29105 : :
29106 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16534 */
29107 : : rtx
29108 : : gen_subv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29109 : : {
29110 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29111 : : start_sequence ();
29112 : : {
29113 : : #define FAIL return (end_sequence (), nullptr)
29114 : : #define DONE return end_sequence ()
29115 : : #line 16540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29116 : : ix86_fixup_binary_operands_no_copy (MINUS, V4SImode, operands);
29117 : : #undef DONE
29118 : : #undef FAIL
29119 : : }
29120 : : static const uint8_t expand_encoding[] = {
29121 : : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x51, 0x01, 0x01,
29122 : : 0x01, 0x02
29123 : : };
29124 : : return complete_seq (expand_encoding, operands);
29125 : : }
29126 : :
29127 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16542 */
29128 : : rtx
29129 : : gen_cond_subv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29130 : : {
29131 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29132 : : start_sequence ();
29133 : : {
29134 : : #define FAIL _Pragma ("GCC error \"cond_subv32qi cannot FAIL\"") (void)0
29135 : : #define DONE return end_sequence ()
29136 : : #line 16551 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29137 : : {
29138 : : emit_insn (gen_subv32qi3_mask (operands[0],
29139 : : operands[2],
29140 : : operands[3],
29141 : : operands[4],
29142 : : operands[1]));
29143 : : DONE;
29144 : : }
29145 : : #undef DONE
29146 : : #undef FAIL
29147 : : }
29148 : : static const uint8_t expand_encoding[] = {
29149 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x3c,
29150 : : 0x54, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29151 : : 0x01
29152 : : };
29153 : : return complete_seq (expand_encoding, operands);
29154 : : }
29155 : :
29156 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16542 */
29157 : : rtx
29158 : : gen_cond_subv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29159 : : {
29160 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29161 : : start_sequence ();
29162 : : {
29163 : : #define FAIL _Pragma ("GCC error \"cond_subv16si cannot FAIL\"") (void)0
29164 : : #define DONE return end_sequence ()
29165 : : #line 16551 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29166 : : {
29167 : : emit_insn (gen_subv16si3_mask (operands[0],
29168 : : operands[2],
29169 : : operands[3],
29170 : : operands[4],
29171 : : operands[1]));
29172 : : DONE;
29173 : : }
29174 : : #undef DONE
29175 : : #undef FAIL
29176 : : }
29177 : : static const uint8_t expand_encoding[] = {
29178 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x3c,
29179 : : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29180 : : 0x01
29181 : : };
29182 : : return complete_seq (expand_encoding, operands);
29183 : : }
29184 : :
29185 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16560 */
29186 : : rtx
29187 : : gen_addv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29188 : : {
29189 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29190 : : start_sequence ();
29191 : : {
29192 : : #define FAIL return (end_sequence (), nullptr)
29193 : : #define DONE return end_sequence ()
29194 : : #line 16569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29195 : : ix86_fixup_binary_operands_no_copy (PLUS, V16SImode, operands);
29196 : : #undef DONE
29197 : : #undef FAIL
29198 : : }
29199 : : static const uint8_t expand_encoding[] = {
29200 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x3b,
29201 : : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29202 : : 0x04
29203 : : };
29204 : : return complete_seq (expand_encoding, operands);
29205 : : }
29206 : :
29207 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16560 */
29208 : : rtx
29209 : : gen_subv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29210 : : {
29211 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29212 : : start_sequence ();
29213 : : {
29214 : : #define FAIL return (end_sequence (), nullptr)
29215 : : #define DONE return end_sequence ()
29216 : : #line 16569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29217 : : ix86_fixup_binary_operands_no_copy (MINUS, V8DImode, operands);
29218 : : #undef DONE
29219 : : #undef FAIL
29220 : : }
29221 : : static const uint8_t expand_encoding[] = {
29222 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x3c,
29223 : : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29224 : : 0x04
29225 : : };
29226 : : return complete_seq (expand_encoding, operands);
29227 : : }
29228 : :
29229 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16571 */
29230 : : rtx
29231 : : gen_subv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29232 : : {
29233 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29234 : : start_sequence ();
29235 : : {
29236 : : #define FAIL return (end_sequence (), nullptr)
29237 : : #define DONE return end_sequence ()
29238 : : #line 16580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29239 : : ix86_fixup_binary_operands_no_copy (MINUS, V32QImode, operands);
29240 : : #undef DONE
29241 : : #undef FAIL
29242 : : }
29243 : : static const uint8_t expand_encoding[] = {
29244 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x3c,
29245 : : 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29246 : : 0x04
29247 : : };
29248 : : return complete_seq (expand_encoding, operands);
29249 : : }
29250 : :
29251 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16625 */
29252 : : rtx
29253 : : gen_usaddv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29254 : : {
29255 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29256 : : start_sequence ();
29257 : : {
29258 : : #define FAIL return (end_sequence (), nullptr)
29259 : : #define DONE return end_sequence ()
29260 : : #line 16631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29261 : : ix86_fixup_binary_operands_no_copy (US_PLUS, V64QImode, operands);
29262 : : #undef DONE
29263 : : #undef FAIL
29264 : : }
29265 : : static const uint8_t expand_encoding[] = {
29266 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x81,
29267 : : 0x0f, 0x59, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29268 : : 0x01, 0x04
29269 : : };
29270 : : return complete_seq (expand_encoding, operands);
29271 : : }
29272 : :
29273 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16625 */
29274 : : rtx
29275 : : gen_ssaddv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29276 : : {
29277 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29278 : : start_sequence ();
29279 : : {
29280 : : #define FAIL return (end_sequence (), nullptr)
29281 : : #define DONE return end_sequence ()
29282 : : #line 16631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29283 : : ix86_fixup_binary_operands_no_copy (SS_PLUS, V16QImode, operands);
29284 : : #undef DONE
29285 : : #undef FAIL
29286 : : }
29287 : : static const uint8_t expand_encoding[] = {
29288 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x4f, 0x01,
29289 : : 0x01, 0x01, 0x02
29290 : : };
29291 : : return complete_seq (expand_encoding, operands);
29292 : : }
29293 : :
29294 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16625 */
29295 : : rtx
29296 : : gen_ssaddv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29297 : : {
29298 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29299 : : start_sequence ();
29300 : : {
29301 : : #define FAIL return (end_sequence (), nullptr)
29302 : : #define DONE return end_sequence ()
29303 : : #line 16631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29304 : : ix86_fixup_binary_operands_no_copy (SS_PLUS, V32HImode, operands);
29305 : : #undef DONE
29306 : : #undef FAIL
29307 : : }
29308 : : static const uint8_t expand_encoding[] = {
29309 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x5a, 0x01,
29310 : : 0x01, 0x01, 0x02
29311 : : };
29312 : : return complete_seq (expand_encoding, operands);
29313 : : }
29314 : :
29315 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16625 */
29316 : : rtx
29317 : : gen_ssaddv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29318 : : {
29319 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29320 : : start_sequence ();
29321 : : {
29322 : : #define FAIL return (end_sequence (), nullptr)
29323 : : #define DONE return end_sequence ()
29324 : : #line 16631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29325 : : ix86_fixup_binary_operands_no_copy (SS_PLUS, V16HImode, operands);
29326 : : #undef DONE
29327 : : #undef FAIL
29328 : : }
29329 : : static const uint8_t expand_encoding[] = {
29330 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81,
29331 : : 0x0e, 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29332 : : 0x01, 0x04
29333 : : };
29334 : : return complete_seq (expand_encoding, operands);
29335 : : }
29336 : :
29337 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16625 */
29338 : : rtx
29339 : : gen_sssubv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29340 : : {
29341 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29342 : : start_sequence ();
29343 : : {
29344 : : #define FAIL return (end_sequence (), nullptr)
29345 : : #define DONE return end_sequence ()
29346 : : #line 16631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29347 : : ix86_fixup_binary_operands_no_copy (SS_MINUS, V8HImode, operands);
29348 : : #undef DONE
29349 : : #undef FAIL
29350 : : }
29351 : : static const uint8_t expand_encoding[] = {
29352 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x10, 0x50, 0x01,
29353 : : 0x01, 0x01, 0x02
29354 : : };
29355 : : return complete_seq (expand_encoding, operands);
29356 : : }
29357 : :
29358 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16666 */
29359 : : rtx
29360 : : gen_mulv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29361 : : {
29362 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29363 : : start_sequence ();
29364 : : {
29365 : : #define FAIL return (end_sequence (), nullptr)
29366 : : #define DONE return end_sequence ()
29367 : : #line 16671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29368 : : {
29369 : : ix86_expand_vecop_qihi (MULT, operands[0], operands[1], operands[2]);
29370 : : DONE;
29371 : : }
29372 : : #undef DONE
29373 : : #undef FAIL
29374 : : }
29375 : : static const uint8_t expand_encoding[] = {
29376 : : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x54, 0x01, 0x01,
29377 : : 0x01, 0x02
29378 : : };
29379 : : return complete_seq (expand_encoding, operands);
29380 : : }
29381 : :
29382 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16694 */
29383 : : rtx
29384 : : gen_mulv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29385 : : {
29386 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29387 : : start_sequence ();
29388 : : {
29389 : : #define FAIL return (end_sequence (), nullptr)
29390 : : #define DONE return end_sequence ()
29391 : : #line 16699 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29392 : : ix86_fixup_binary_operands_no_copy (MULT, V8HImode, operands);
29393 : : #undef DONE
29394 : : #undef FAIL
29395 : : }
29396 : : static const uint8_t expand_encoding[] = {
29397 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x3e,
29398 : : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29399 : : 0x04
29400 : : };
29401 : : return complete_seq (expand_encoding, operands);
29402 : : }
29403 : :
29404 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16716 */
29405 : : rtx
29406 : : gen_smulv8hi3_highpart_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29407 : : {
29408 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29409 : : start_sequence ();
29410 : : {
29411 : : #define FAIL return (end_sequence (), nullptr)
29412 : : #define DONE return end_sequence ()
29413 : : #line 16728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29414 : : ix86_fixup_binary_operands_no_copy (MULT, V8HImode, operands);
29415 : : #undef DONE
29416 : : #undef FAIL
29417 : : }
29418 : : static const uint8_t expand_encoding[] = {
29419 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x70,
29420 : : 0x50, 0x50, 0x56, 0x3e, 0x56, 0x6e, 0x56, 0x01,
29421 : : 0x01, 0x6e, 0x56, 0x01, 0x02, 0x27, 0x10, 0x01,
29422 : : 0x03, 0x01, 0x04
29423 : : };
29424 : : return complete_seq (expand_encoding, operands);
29425 : : }
29426 : :
29427 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16911 */
29428 : : rtx
29429 : : gen_vec_widen_smult_even_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
29430 : : {
29431 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29432 : : start_sequence ();
29433 : : {
29434 : : #define FAIL return (end_sequence (), nullptr)
29435 : : #define DONE return end_sequence ()
29436 : : #line 16925 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29437 : : ix86_fixup_binary_operands_no_copy (MULT, V8SImode, operands);
29438 : : #undef DONE
29439 : : #undef FAIL
29440 : : }
29441 : : static const uint8_t expand_encoding[] = {
29442 : : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x57, 0x6e, 0x57,
29443 : : 0x81, 0x0a, 0x51, 0x01, 0x01, 0x17, 0x00, 0x04,
29444 : : 0x27, 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06,
29445 : : 0x6e, 0x57, 0x81, 0x0a, 0x51, 0x01, 0x02, 0x17,
29446 : : 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
29447 : : 0x27, 0x06
29448 : : };
29449 : : return complete_seq (expand_encoding, operands);
29450 : : }
29451 : :
29452 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17146 */
29453 : : rtx
29454 : : gen_avx512dq_mulv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29455 : : {
29456 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29457 : : start_sequence ();
29458 : : {
29459 : : #define FAIL return (end_sequence (), nullptr)
29460 : : #define DONE return end_sequence ()
29461 : : #line 17152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29462 : : ix86_fixup_binary_operands_no_copy (MULT, V8DImode, operands);
29463 : : #undef DONE
29464 : : #undef FAIL
29465 : : }
29466 : : static const uint8_t expand_encoding[] = {
29467 : : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x5c, 0x01, 0x01,
29468 : : 0x01, 0x02
29469 : : };
29470 : : return complete_seq (expand_encoding, operands);
29471 : : }
29472 : :
29473 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17173 */
29474 : : rtx
29475 : : gen_cond_mulv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29476 : : {
29477 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29478 : : start_sequence ();
29479 : : {
29480 : : #define FAIL _Pragma ("GCC error \"cond_mulv16si cannot FAIL\"") (void)0
29481 : : #define DONE return end_sequence ()
29482 : : #line 17182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29483 : : {
29484 : : emit_insn (gen_mulv16si3_mask (operands[0],
29485 : : operands[2],
29486 : : operands[3],
29487 : : operands[4],
29488 : : operands[1]));
29489 : : DONE;
29490 : : }
29491 : : #undef DONE
29492 : : #undef FAIL
29493 : : }
29494 : : static const uint8_t expand_encoding[] = {
29495 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x3e,
29496 : : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29497 : : 0x01
29498 : : };
29499 : : return complete_seq (expand_encoding, operands);
29500 : : }
29501 : :
29502 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17232 */
29503 : : rtx
29504 : : gen_mulv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29505 : : {
29506 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29507 : : start_sequence ();
29508 : : {
29509 : : #define FAIL return (end_sequence (), nullptr)
29510 : : #define DONE return end_sequence ()
29511 : : #line 17238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29512 : : {
29513 : : ix86_expand_sse2_mulvxdi3 (operands[0], operands[1], operands[2]);
29514 : : DONE;
29515 : : }
29516 : : #undef DONE
29517 : : #undef FAIL
29518 : : }
29519 : : static const uint8_t expand_encoding[] = {
29520 : : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x57, 0x01, 0x01,
29521 : : 0x01, 0x02
29522 : : };
29523 : : return complete_seq (expand_encoding, operands);
29524 : : }
29525 : :
29526 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17243 */
29527 : : rtx
29528 : : gen_vec_widen_umult_hi_v8hi (const rtx operand0, const rtx operand1, const rtx operand2)
29529 : : {
29530 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29531 : : start_sequence ();
29532 : : {
29533 : : #define FAIL return (end_sequence (), nullptr)
29534 : : #define DONE return end_sequence ()
29535 : : #line 17249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29536 : : {
29537 : : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29538 : : true, true);
29539 : : DONE;
29540 : : }
29541 : : #undef DONE
29542 : : #undef FAIL
29543 : : }
29544 : : static const uint8_t expand_encoding[] = {
29545 : : 0x03, 0x01, 0x00, 0x6f, 0x51, 0x01, 0x01, 0x01,
29546 : : 0x02
29547 : : };
29548 : : return complete_seq (expand_encoding, operands);
29549 : : }
29550 : :
29551 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17255 */
29552 : : rtx
29553 : : gen_vec_widen_umult_lo_v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
29554 : : {
29555 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29556 : : start_sequence ();
29557 : : {
29558 : : #define FAIL return (end_sequence (), nullptr)
29559 : : #define DONE return end_sequence ()
29560 : : #line 17261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29561 : : {
29562 : : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29563 : : true, false);
29564 : : DONE;
29565 : : }
29566 : : #undef DONE
29567 : : #undef FAIL
29568 : : }
29569 : : static const uint8_t expand_encoding[] = {
29570 : : 0x03, 0x01, 0x00, 0x6f, 0x56, 0x01, 0x01, 0x01,
29571 : : 0x02
29572 : : };
29573 : : return complete_seq (expand_encoding, operands);
29574 : : }
29575 : :
29576 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17280 */
29577 : : rtx
29578 : : gen_vec_widen_smult_odd_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
29579 : : {
29580 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29581 : : start_sequence ();
29582 : : {
29583 : : #define FAIL return (end_sequence (), nullptr)
29584 : : #define DONE return end_sequence ()
29585 : : #line 17286 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29586 : : {
29587 : : ix86_expand_mul_widen_evenodd (operands[0], operands[1], operands[2],
29588 : : false, true);
29589 : : DONE;
29590 : : }
29591 : : #undef DONE
29592 : : #undef FAIL
29593 : : }
29594 : : static const uint8_t expand_encoding[] = {
29595 : : 0x03, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01, 0x01,
29596 : : 0x02
29597 : : };
29598 : : return complete_seq (expand_encoding, operands);
29599 : : }
29600 : :
29601 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17346 */
29602 : : rtx
29603 : : gen_uavgv16qi3_ceil (const rtx operand0, const rtx operand1, const rtx operand2)
29604 : : {
29605 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29606 : : start_sequence ();
29607 : : {
29608 : : #define FAIL return (end_sequence (), nullptr)
29609 : : #define DONE return end_sequence ()
29610 : : #line 17359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29611 : : {
29612 : : operands[3] = CONST1_RTX(V16HImode);
29613 : : ix86_fixup_binary_operands_no_copy (PLUS, V16QImode, operands);
29614 : : }
29615 : : #undef DONE
29616 : : #undef FAIL
29617 : : }
29618 : : static const uint8_t expand_encoding[] = {
29619 : : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x4f, 0x50, 0x55,
29620 : : 0x3b, 0x55, 0x3b, 0x55, 0x6f, 0x55, 0x01, 0x01,
29621 : : 0x6f, 0x55, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
29622 : : };
29623 : : return complete_seq (expand_encoding, operands);
29624 : : }
29625 : :
29626 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17442 */
29627 : : extern rtx_insn *gen_split_3304 (rtx_insn *, rtx *);
29628 : : rtx_insn *
29629 : : gen_split_3304 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29630 : : {
29631 : : if (dump_file)
29632 : : fprintf (dump_file, "Splitting with gen_split_3304 (sse.md:17442)\n");
29633 : : start_sequence ();
29634 : : #define FAIL return (end_sequence (), nullptr)
29635 : : #define DONE return end_sequence ()
29636 : : #line 17451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29637 : : operands[3] = gen_int_mode (16 - 1, DImode);
29638 : : #undef DONE
29639 : : #undef FAIL
29640 : : static const uint8_t expand_encoding[] = {
29641 : : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x55, 0x01, 0x01,
29642 : : 0x01, 0x03
29643 : : };
29644 : : return complete_seq (expand_encoding, operands);
29645 : : }
29646 : :
29647 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17467 */
29648 : : extern rtx_insn *gen_split_3312 (rtx_insn *, rtx *);
29649 : : rtx_insn *
29650 : : gen_split_3312 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29651 : : {
29652 : : if (dump_file)
29653 : : fprintf (dump_file, "Splitting with gen_split_3312 (sse.md:17467)\n");
29654 : : start_sequence ();
29655 : : #define FAIL return (end_sequence (), nullptr)
29656 : : #define DONE return end_sequence ()
29657 : : #line 17482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29658 : : operands[5] = gen_int_mode (32 - 1, DImode);
29659 : : #undef DONE
29660 : : #undef FAIL
29661 : : static const uint8_t expand_encoding[] = {
29662 : : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x56, 0x01, 0x03,
29663 : : 0x01, 0x05
29664 : : };
29665 : : return complete_seq (expand_encoding, operands);
29666 : : }
29667 : :
29668 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17667 */
29669 : : extern rtx_insn *gen_split_3321 (rtx_insn *, rtx *);
29670 : : rtx_insn *
29671 : : gen_split_3321 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29672 : : {
29673 : : if (dump_file)
29674 : : fprintf (dump_file, "Splitting with gen_split_3321 (sse.md:17667)\n");
29675 : : start_sequence ();
29676 : : #define FAIL return (end_sequence (), nullptr)
29677 : : #define DONE return end_sequence ()
29678 : : #line 17676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29679 : : operands[4] = gen_int_mode (16 - 1, DImode);
29680 : : #undef DONE
29681 : : #undef FAIL
29682 : : static const uint8_t expand_encoding[] = {
29683 : : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x55, 0x01, 0x01,
29684 : : 0x01, 0x04
29685 : : };
29686 : : return complete_seq (expand_encoding, operands);
29687 : : }
29688 : :
29689 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17678 */
29690 : : extern rtx_insn *gen_split_3329 (rtx_insn *, rtx *);
29691 : : rtx_insn *
29692 : : gen_split_3329 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29693 : : {
29694 : : if (dump_file)
29695 : : fprintf (dump_file, "Splitting with gen_split_3329 (sse.md:17678)\n");
29696 : : start_sequence ();
29697 : : #define FAIL return (end_sequence (), nullptr)
29698 : : #define DONE return end_sequence ()
29699 : : #line 17691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29700 : : operands[5] = gen_int_mode (16 - 1, DImode);
29701 : : #undef DONE
29702 : : #undef FAIL
29703 : : static const uint8_t expand_encoding[] = {
29704 : : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x50, 0x01, 0x03,
29705 : : 0x01, 0x05
29706 : : };
29707 : : return complete_seq (expand_encoding, operands);
29708 : : }
29709 : :
29710 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17709 */
29711 : : extern rtx_insn *gen_split_3338 (rtx_insn *, rtx *);
29712 : : rtx_insn *
29713 : : gen_split_3338 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29714 : : {
29715 : : if (dump_file)
29716 : : fprintf (dump_file, "Splitting with gen_split_3338 (sse.md:17709)\n");
29717 : : start_sequence ();
29718 : : #define FAIL return (end_sequence (), nullptr)
29719 : : #define DONE return end_sequence ()
29720 : : #line 17720 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29721 : : operands[3] = XVECEXP (operands[2], 0, 0);
29722 : : #undef DONE
29723 : : #undef FAIL
29724 : : static const uint8_t expand_encoding[] = {
29725 : : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x5a, 0x01, 0x01,
29726 : : 0x01, 0x03
29727 : : };
29728 : : return complete_seq (expand_encoding, operands);
29729 : : }
29730 : :
29731 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17722 */
29732 : : rtx
29733 : : gen_vec_shl_v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
29734 : : {
29735 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29736 : : start_sequence ();
29737 : : {
29738 : : #define FAIL return (end_sequence (), nullptr)
29739 : : #define DONE return end_sequence ()
29740 : : #line 17728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29741 : : {
29742 : : rtx op0 = gen_reg_rtx (V1TImode);
29743 : : rtx op1 = force_reg (V8HFmode, operands[1]);
29744 : :
29745 : : emit_insn (gen_sse2_ashlv1ti3
29746 : : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29747 : : emit_move_insn (operands[0], gen_lowpart (V8HFmode, op0));
29748 : : DONE;
29749 : : }
29750 : : #undef DONE
29751 : : #undef FAIL
29752 : : }
29753 : : static const uint8_t expand_encoding[] = {
29754 : : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x53, 0x01, 0x01,
29755 : : 0x01, 0x02
29756 : : };
29757 : : return complete_seq (expand_encoding, operands);
29758 : : }
29759 : :
29760 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17738 */
29761 : : rtx
29762 : : gen_vec_shr_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
29763 : : {
29764 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29765 : : start_sequence ();
29766 : : {
29767 : : #define FAIL return (end_sequence (), nullptr)
29768 : : #define DONE return end_sequence ()
29769 : : #line 17744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29770 : : {
29771 : : rtx op0 = gen_reg_rtx (V1TImode);
29772 : : rtx op1 = force_reg (V8BFmode, operands[1]);
29773 : :
29774 : : emit_insn (gen_sse2_lshrv1ti3
29775 : : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29776 : : emit_move_insn (operands[0], gen_lowpart (V8BFmode, op0));
29777 : : DONE;
29778 : : }
29779 : : #undef DONE
29780 : : #undef FAIL
29781 : : }
29782 : : static const uint8_t expand_encoding[] = {
29783 : : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x53, 0x01, 0x01,
29784 : : 0x01, 0x02
29785 : : };
29786 : : return complete_seq (expand_encoding, operands);
29787 : : }
29788 : :
29789 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17842 */
29790 : : extern rtx_insn *gen_split_3348 (rtx_insn *, rtx *);
29791 : : rtx_insn *
29792 : : gen_split_3348 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29793 : : {
29794 : : if (dump_file)
29795 : : fprintf (dump_file, "Splitting with gen_split_3348 (sse.md:17842)\n");
29796 : : start_sequence ();
29797 : : static const uint8_t expand_encoding[] = {
29798 : : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x55, 0x01, 0x01,
29799 : : 0x01, 0x02
29800 : : };
29801 : : return complete_seq (expand_encoding, operands);
29802 : : }
29803 : :
29804 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17883 */
29805 : : rtx
29806 : : gen_rotrv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
29807 : : {
29808 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29809 : : start_sequence ();
29810 : : {
29811 : : #define FAIL return (end_sequence (), nullptr)
29812 : : #define DONE return end_sequence ()
29813 : : #line 17889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29814 : : {
29815 : : if (!CONST_INT_P (operands[2]))
29816 : : {
29817 : : ix86_expand_v1ti_rotate (ROTATERT, operands);
29818 : : DONE;
29819 : : }
29820 : : }
29821 : : #undef DONE
29822 : : #undef FAIL
29823 : : }
29824 : : static const uint8_t expand_encoding[] = {
29825 : : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x53, 0x01, 0x01,
29826 : : 0x01, 0x02
29827 : : };
29828 : : return complete_seq (expand_encoding, operands);
29829 : : }
29830 : :
29831 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17974 */
29832 : : rtx
29833 : : gen_umaxv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29834 : : {
29835 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29836 : : start_sequence ();
29837 : : {
29838 : : #define FAIL return (end_sequence (), nullptr)
29839 : : #define DONE return end_sequence ()
29840 : : #line 17980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29841 : : ix86_fixup_binary_operands_no_copy (UMAX, V8SImode, operands);
29842 : : #undef DONE
29843 : : #undef FAIL
29844 : : }
29845 : : static const uint8_t expand_encoding[] = {
29846 : : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x56, 0x01, 0x01,
29847 : : 0x01, 0x02
29848 : : };
29849 : : return complete_seq (expand_encoding, operands);
29850 : : }
29851 : :
29852 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17974 */
29853 : : rtx
29854 : : gen_smaxv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29855 : : {
29856 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29857 : : start_sequence ();
29858 : : {
29859 : : #define FAIL return (end_sequence (), nullptr)
29860 : : #define DONE return end_sequence ()
29861 : : #line 17980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29862 : : ix86_fixup_binary_operands_no_copy (SMAX, V16SImode, operands);
29863 : : #undef DONE
29864 : : #undef FAIL
29865 : : }
29866 : : static const uint8_t expand_encoding[] = {
29867 : : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x5b, 0x01, 0x01,
29868 : : 0x01, 0x02
29869 : : };
29870 : : return complete_seq (expand_encoding, operands);
29871 : : }
29872 : :
29873 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17994 */
29874 : : rtx
29875 : : gen_cond_umaxv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29876 : : {
29877 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29878 : : start_sequence ();
29879 : : {
29880 : : #define FAIL return (end_sequence (), nullptr)
29881 : : #define DONE return end_sequence ()
29882 : : #line 18003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29883 : : {
29884 : : emit_insn (gen_umaxv32qi3_mask (operands[0],
29885 : : operands[2],
29886 : : operands[3],
29887 : : operands[4],
29888 : : operands[1]));
29889 : : DONE;
29890 : : }
29891 : : #undef DONE
29892 : : #undef FAIL
29893 : : }
29894 : : static const uint8_t expand_encoding[] = {
29895 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x55,
29896 : : 0x54, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29897 : : 0x01
29898 : : };
29899 : : return complete_seq (expand_encoding, operands);
29900 : : }
29901 : :
29902 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17994 */
29903 : : rtx
29904 : : gen_cond_smaxv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29905 : : {
29906 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29907 : : start_sequence ();
29908 : : {
29909 : : #define FAIL return (end_sequence (), nullptr)
29910 : : #define DONE return end_sequence ()
29911 : : #line 18003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29912 : : {
29913 : : emit_insn (gen_smaxv16hi3_mask (operands[0],
29914 : : operands[2],
29915 : : operands[3],
29916 : : operands[4],
29917 : : operands[1]));
29918 : : DONE;
29919 : : }
29920 : : #undef DONE
29921 : : #undef FAIL
29922 : : }
29923 : : static const uint8_t expand_encoding[] = {
29924 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x53,
29925 : : 0x55, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29926 : : 0x01
29927 : : };
29928 : : return complete_seq (expand_encoding, operands);
29929 : : }
29930 : :
29931 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17994 */
29932 : : rtx
29933 : : gen_cond_umaxv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29934 : : {
29935 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29936 : : start_sequence ();
29937 : : {
29938 : : #define FAIL return (end_sequence (), nullptr)
29939 : : #define DONE return end_sequence ()
29940 : : #line 18003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29941 : : {
29942 : : emit_insn (gen_umaxv16si3_mask (operands[0],
29943 : : operands[2],
29944 : : operands[3],
29945 : : operands[4],
29946 : : operands[1]));
29947 : : DONE;
29948 : : }
29949 : : #undef DONE
29950 : : #undef FAIL
29951 : : }
29952 : : static const uint8_t expand_encoding[] = {
29953 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x55,
29954 : : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29955 : : 0x01
29956 : : };
29957 : : return complete_seq (expand_encoding, operands);
29958 : : }
29959 : :
29960 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17994 */
29961 : : rtx
29962 : : gen_cond_smaxv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29963 : : {
29964 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29965 : : start_sequence ();
29966 : : {
29967 : : #define FAIL return (end_sequence (), nullptr)
29968 : : #define DONE return end_sequence ()
29969 : : #line 18003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29970 : : {
29971 : : emit_insn (gen_smaxv8di3_mask (operands[0],
29972 : : operands[2],
29973 : : operands[3],
29974 : : operands[4],
29975 : : operands[1]));
29976 : : DONE;
29977 : : }
29978 : : #undef DONE
29979 : : #undef FAIL
29980 : : }
29981 : : static const uint8_t expand_encoding[] = {
29982 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x53,
29983 : : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29984 : : 0x01
29985 : : };
29986 : : return complete_seq (expand_encoding, operands);
29987 : : }
29988 : :
29989 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17994 */
29990 : : rtx
29991 : : gen_cond_umaxv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29992 : : {
29993 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29994 : : start_sequence ();
29995 : : {
29996 : : #define FAIL return (end_sequence (), nullptr)
29997 : : #define DONE return end_sequence ()
29998 : : #line 18003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29999 : : {
30000 : : emit_insn (gen_umaxv2di3_mask (operands[0],
30001 : : operands[2],
30002 : : operands[3],
30003 : : operands[4],
30004 : : operands[1]));
30005 : : DONE;
30006 : : }
30007 : : #undef DONE
30008 : : #undef FAIL
30009 : : }
30010 : : static const uint8_t expand_encoding[] = {
30011 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x55,
30012 : : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30013 : : 0x01
30014 : : };
30015 : : return complete_seq (expand_encoding, operands);
30016 : : }
30017 : :
30018 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
30019 : : rtx
30020 : : gen_umaxv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30021 : : {
30022 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30023 : : start_sequence ();
30024 : : {
30025 : : #define FAIL return (end_sequence (), nullptr)
30026 : : #define DONE return end_sequence ()
30027 : : #line 18021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30028 : : ix86_fixup_binary_operands_no_copy (UMAX, V16QImode, operands);
30029 : : #undef DONE
30030 : : #undef FAIL
30031 : : }
30032 : : static const uint8_t expand_encoding[] = {
30033 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x55,
30034 : : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30035 : : 0x04
30036 : : };
30037 : : return complete_seq (expand_encoding, operands);
30038 : : }
30039 : :
30040 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
30041 : : rtx
30042 : : gen_smaxv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30043 : : {
30044 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30045 : : start_sequence ();
30046 : : {
30047 : : #define FAIL return (end_sequence (), nullptr)
30048 : : #define DONE return end_sequence ()
30049 : : #line 18021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30050 : : ix86_fixup_binary_operands_no_copy (SMAX, V8HImode, operands);
30051 : : #undef DONE
30052 : : #undef FAIL
30053 : : }
30054 : : static const uint8_t expand_encoding[] = {
30055 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x53,
30056 : : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30057 : : 0x04
30058 : : };
30059 : : return complete_seq (expand_encoding, operands);
30060 : : }
30061 : :
30062 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
30063 : : rtx
30064 : : gen_umaxv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30065 : : {
30066 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30067 : : start_sequence ();
30068 : : {
30069 : : #define FAIL return (end_sequence (), nullptr)
30070 : : #define DONE return end_sequence ()
30071 : : #line 18021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30072 : : ix86_fixup_binary_operands_no_copy (UMAX, V8SImode, operands);
30073 : : #undef DONE
30074 : : #undef FAIL
30075 : : }
30076 : : static const uint8_t expand_encoding[] = {
30077 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x55,
30078 : : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30079 : : 0x04
30080 : : };
30081 : : return complete_seq (expand_encoding, operands);
30082 : : }
30083 : :
30084 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
30085 : : rtx
30086 : : gen_smaxv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30087 : : {
30088 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30089 : : start_sequence ();
30090 : : {
30091 : : #define FAIL return (end_sequence (), nullptr)
30092 : : #define DONE return end_sequence ()
30093 : : #line 18021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30094 : : ix86_fixup_binary_operands_no_copy (SMAX, V4DImode, operands);
30095 : : #undef DONE
30096 : : #undef FAIL
30097 : : }
30098 : : static const uint8_t expand_encoding[] = {
30099 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x53,
30100 : : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30101 : : 0x04
30102 : : };
30103 : : return complete_seq (expand_encoding, operands);
30104 : : }
30105 : :
30106 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18045 */
30107 : : rtx
30108 : : gen_umaxv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30109 : : {
30110 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30111 : : start_sequence ();
30112 : : {
30113 : : #define FAIL return (end_sequence (), nullptr)
30114 : : #define DONE return end_sequence ()
30115 : : #line 18051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30116 : : {
30117 : : if (TARGET_AVX512F
30118 : : && (V8DImode == V8DImode || TARGET_AVX512VL))
30119 : : ;
30120 : : else
30121 : : {
30122 : : enum rtx_code code;
30123 : : rtx xops[6];
30124 : : bool ok;
30125 : :
30126 : :
30127 : : xops[0] = operands[0];
30128 : :
30129 : : if (UMAX == SMAX || UMAX == UMAX)
30130 : : {
30131 : : xops[1] = operands[1];
30132 : : xops[2] = operands[2];
30133 : : }
30134 : : else
30135 : : {
30136 : : xops[1] = operands[2];
30137 : : xops[2] = operands[1];
30138 : : }
30139 : :
30140 : : code = (UMAX == UMAX || UMAX == UMIN) ? GTU : GT;
30141 : :
30142 : : xops[3] = gen_rtx_fmt_ee (code, VOIDmode, operands[1], operands[2]);
30143 : : xops[4] = operands[1];
30144 : : xops[5] = operands[2];
30145 : :
30146 : : ok = ix86_expand_int_vcond (xops);
30147 : : gcc_assert (ok);
30148 : : DONE;
30149 : : }
30150 : : }
30151 : : #undef DONE
30152 : : #undef FAIL
30153 : : }
30154 : : static const uint8_t expand_encoding[] = {
30155 : : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x5c, 0x01, 0x01,
30156 : : 0x01, 0x02
30157 : : };
30158 : : return complete_seq (expand_encoding, operands);
30159 : : }
30160 : :
30161 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18087 */
30162 : : rtx
30163 : : gen_smaxv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30164 : : {
30165 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30166 : : start_sequence ();
30167 : : {
30168 : : #define FAIL return (end_sequence (), nullptr)
30169 : : #define DONE return end_sequence ()
30170 : : #line 18093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30171 : : {
30172 : : if (TARGET_SSE4_1 || V16QImode == V8HImode)
30173 : : ix86_fixup_binary_operands_no_copy (SMAX, V16QImode, operands);
30174 : : else
30175 : : {
30176 : : rtx xops[6];
30177 : : bool ok;
30178 : :
30179 : : xops[0] = operands[0];
30180 : : operands[1] = force_reg (V16QImode, operands[1]);
30181 : : operands[2] = force_reg (V16QImode, operands[2]);
30182 : :
30183 : : if (SMAX == SMAX)
30184 : : {
30185 : : xops[1] = operands[1];
30186 : : xops[2] = operands[2];
30187 : : }
30188 : : else
30189 : : {
30190 : : xops[1] = operands[2];
30191 : : xops[2] = operands[1];
30192 : : }
30193 : :
30194 : : xops[3] = gen_rtx_GT (VOIDmode, operands[1], operands[2]);
30195 : : xops[4] = operands[1];
30196 : : xops[5] = operands[2];
30197 : :
30198 : : ok = ix86_expand_int_vcond (xops);
30199 : : gcc_assert (ok);
30200 : : DONE;
30201 : : }
30202 : : }
30203 : : #undef DONE
30204 : : #undef FAIL
30205 : : }
30206 : : static const uint8_t expand_encoding[] = {
30207 : : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x4f, 0x01, 0x01,
30208 : : 0x01, 0x02
30209 : : };
30210 : : return complete_seq (expand_encoding, operands);
30211 : : }
30212 : :
30213 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18160 */
30214 : : rtx
30215 : : gen_umaxv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30216 : : {
30217 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30218 : : start_sequence ();
30219 : : {
30220 : : #define FAIL return (end_sequence (), nullptr)
30221 : : #define DONE return end_sequence ()
30222 : : #line 18166 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30223 : : {
30224 : : if (TARGET_SSE4_1 || V4SImode == V16QImode)
30225 : : ix86_fixup_binary_operands_no_copy (UMAX, V4SImode, operands);
30226 : : else if (UMAX == UMAX && V4SImode == V8HImode)
30227 : : {
30228 : : rtx op0 = operands[0], op2 = operands[2], op3 = op0;
30229 : : operands[1] = force_reg (V4SImode, operands[1]);
30230 : : if (rtx_equal_p (op3, op2))
30231 : : op3 = gen_reg_rtx (V8HImode);
30232 : : emit_insn (gen_ussubv8hi3 (op3, operands[1], op2));
30233 : : emit_insn (gen_addv8hi3 (op0, op3, op2));
30234 : : DONE;
30235 : : }
30236 : : else
30237 : : {
30238 : : rtx xops[6];
30239 : : bool ok;
30240 : :
30241 : : operands[1] = force_reg (V4SImode, operands[1]);
30242 : : operands[2] = force_reg (V4SImode, operands[2]);
30243 : :
30244 : : xops[0] = operands[0];
30245 : :
30246 : : if (UMAX == UMAX)
30247 : : {
30248 : : xops[1] = operands[1];
30249 : : xops[2] = operands[2];
30250 : : }
30251 : : else
30252 : : {
30253 : : xops[1] = operands[2];
30254 : : xops[2] = operands[1];
30255 : : }
30256 : :
30257 : : xops[3] = gen_rtx_GTU (VOIDmode, operands[1], operands[2]);
30258 : : xops[4] = operands[1];
30259 : : xops[5] = operands[2];
30260 : :
30261 : : ok = ix86_expand_int_vcond (xops);
30262 : : gcc_assert (ok);
30263 : : DONE;
30264 : : }
30265 : : }
30266 : : #undef DONE
30267 : : #undef FAIL
30268 : : }
30269 : : static const uint8_t expand_encoding[] = {
30270 : : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x51, 0x01, 0x01,
30271 : : 0x01, 0x02
30272 : : };
30273 : : return complete_seq (expand_encoding, operands);
30274 : : }
30275 : :
30276 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18284 */
30277 : : extern rtx_insn *gen_split_3368 (rtx_insn *, rtx *);
30278 : : rtx_insn *
30279 : : gen_split_3368 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30280 : : {
30281 : : if (dump_file)
30282 : : fprintf (dump_file, "Splitting with gen_split_3368 (sse.md:18284)\n");
30283 : : start_sequence ();
30284 : : #define FAIL return (end_sequence (), nullptr)
30285 : : #define DONE return end_sequence ()
30286 : : #line 18307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30287 : : {
30288 : : if (INTVAL (operands[5]) == 1)
30289 : : std::swap (operands[3], operands[4]);
30290 : :
30291 : : if (operands[3] == CONST0_RTX (V32QImode))
30292 : : operands[3] = force_reg (V32QImode, operands[3]);
30293 : : if (operands[4] == CONST0_RTX (V32QImode))
30294 : : operands[4] = force_reg (V32QImode, operands[4]);
30295 : :
30296 : : enum rtx_code code = INTVAL (operands[5]) ? GT : EQ;
30297 : : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V32QImode,
30298 : : operands[3], operands[4]));
30299 : : DONE;
30300 : : }
30301 : : #undef DONE
30302 : : #undef FAIL
30303 : : static const uint8_t expand_encoding[] = {
30304 : : 0x01, 0x27, 0x00
30305 : : };
30306 : : return complete_seq (expand_encoding, operands);
30307 : : }
30308 : :
30309 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18322 */
30310 : : extern rtx_insn *gen_split_3378 (rtx_insn *, rtx *);
30311 : : rtx_insn *
30312 : : gen_split_3378 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30313 : : {
30314 : : if (dump_file)
30315 : : fprintf (dump_file, "Splitting with gen_split_3378 (sse.md:18322)\n");
30316 : : start_sequence ();
30317 : : #define FAIL return (end_sequence (), nullptr)
30318 : : #define DONE return end_sequence ()
30319 : : #line 18346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30320 : : {
30321 : : if (INTVAL (operands[5]) == 5)
30322 : : std::swap (operands[3], operands[4]);
30323 : : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30324 : : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V8SImode,
30325 : : operands[3], operands[4]));
30326 : : DONE;
30327 : : }
30328 : : #undef DONE
30329 : : #undef FAIL
30330 : : static const uint8_t expand_encoding[] = {
30331 : : 0x01, 0x27, 0x00
30332 : : };
30333 : : return complete_seq (expand_encoding, operands);
30334 : : }
30335 : :
30336 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18448 */
30337 : : extern rtx_insn *gen_split_3390 (rtx_insn *, rtx *);
30338 : : rtx_insn *
30339 : : gen_split_3390 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30340 : : {
30341 : : if (dump_file)
30342 : : fprintf (dump_file, "Splitting with gen_split_3390 (sse.md:18448)\n");
30343 : : start_sequence ();
30344 : : #define FAIL return (end_sequence (), nullptr)
30345 : : #define DONE return end_sequence ()
30346 : : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30347 : : {
30348 : : rtx dst_min = gen_reg_rtx (V4SImode);
30349 : :
30350 : : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30351 : : operands[3] = force_reg (V4SImode, operands[3]);
30352 : : emit_insn (gen_sminv4si3 (dst_min, operands[3], operands[4]));
30353 : : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30354 : : emit_move_insn (operands[0], gen_rtx_EQ (V4SImode, eq_op, dst_min));
30355 : : DONE;
30356 : : }
30357 : : #undef DONE
30358 : : #undef FAIL
30359 : : static const uint8_t expand_encoding[] = {
30360 : : 0x01, 0x27, 0x00
30361 : : };
30362 : : return complete_seq (expand_encoding, operands);
30363 : : }
30364 : :
30365 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18448 */
30366 : : extern rtx_insn *gen_split_3400 (rtx_insn *, rtx *);
30367 : : rtx_insn *
30368 : : gen_split_3400 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30369 : : {
30370 : : if (dump_file)
30371 : : fprintf (dump_file, "Splitting with gen_split_3400 (sse.md:18448)\n");
30372 : : start_sequence ();
30373 : : #define FAIL return (end_sequence (), nullptr)
30374 : : #define DONE return end_sequence ()
30375 : : #line 18463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30376 : : {
30377 : : rtx dst_min = gen_reg_rtx (V4DImode);
30378 : :
30379 : : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30380 : : operands[3] = force_reg (V4DImode, operands[3]);
30381 : : emit_insn (gen_sminv4di3 (dst_min, operands[3], operands[4]));
30382 : : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30383 : : emit_move_insn (operands[0], gen_rtx_EQ (V4DImode, eq_op, dst_min));
30384 : : DONE;
30385 : : }
30386 : : #undef DONE
30387 : : #undef FAIL
30388 : : static const uint8_t expand_encoding[] = {
30389 : : 0x01, 0x27, 0x00
30390 : : };
30391 : : return complete_seq (expand_encoding, operands);
30392 : : }
30393 : :
30394 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18506 */
30395 : : extern rtx_insn *gen_split_3412 (rtx_insn *, rtx *);
30396 : : rtx_insn *
30397 : : gen_split_3412 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30398 : : {
30399 : : if (dump_file)
30400 : : fprintf (dump_file, "Splitting with gen_split_3412 (sse.md:18506)\n");
30401 : : start_sequence ();
30402 : : #define FAIL return (end_sequence (), nullptr)
30403 : : #define DONE return end_sequence ()
30404 : : #line 18523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30405 : : {
30406 : : if (MEM_P (operands[3]))
30407 : : operands[3] = force_reg (V4SImode, operands[3]);
30408 : : emit_move_insn (operands[0], gen_rtx_fmt_ee (EQ, V4SImode,
30409 : : operands[3], operands[4]));
30410 : : DONE;
30411 : : }
30412 : : #undef DONE
30413 : : #undef FAIL
30414 : : static const uint8_t expand_encoding[] = {
30415 : : 0x01, 0x27, 0x00
30416 : : };
30417 : : return complete_seq (expand_encoding, operands);
30418 : : }
30419 : :
30420 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18531 */
30421 : : rtx
30422 : : gen_avx512bw_eqv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30423 : : {
30424 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30425 : : start_sequence ();
30426 : : {
30427 : : #define FAIL return (end_sequence (), nullptr)
30428 : : #define DONE return end_sequence ()
30429 : : #line 18539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30430 : : ix86_fixup_binary_operands_no_copy (EQ, V64QImode, operands);
30431 : : #undef DONE
30432 : : #undef FAIL
30433 : : }
30434 : : static const uint8_t expand_encoding[] = {
30435 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x03, 0x01,
30436 : : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30437 : : };
30438 : : return complete_seq (expand_encoding, operands);
30439 : : }
30440 : :
30441 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18531 */
30442 : : rtx
30443 : : gen_avx512vl_eqv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30444 : : {
30445 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30446 : : start_sequence ();
30447 : : {
30448 : : #define FAIL return (end_sequence (), nullptr)
30449 : : #define DONE return end_sequence ()
30450 : : #line 18539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30451 : : ix86_fixup_binary_operands_no_copy (EQ, V16HImode, operands);
30452 : : #undef DONE
30453 : : #undef FAIL
30454 : : }
30455 : : static const uint8_t expand_encoding[] = {
30456 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01,
30457 : : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30458 : : };
30459 : : return complete_seq (expand_encoding, operands);
30460 : : }
30461 : :
30462 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18541 */
30463 : : rtx
30464 : : gen_avx512f_eqv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30465 : : {
30466 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30467 : : start_sequence ();
30468 : : {
30469 : : #define FAIL return (end_sequence (), nullptr)
30470 : : #define DONE return end_sequence ()
30471 : : #line 18549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30472 : : ix86_fixup_binary_operands_no_copy (EQ, V8DImode, operands);
30473 : : #undef DONE
30474 : : #undef FAIL
30475 : : }
30476 : : static const uint8_t expand_encoding[] = {
30477 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
30478 : : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30479 : : };
30480 : : return complete_seq (expand_encoding, operands);
30481 : : }
30482 : :
30483 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18617 */
30484 : : rtx
30485 : : gen_avx512vl_gtv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30486 : : {
30487 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30488 : : static const uint8_t expand_encoding[] = {
30489 : : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
30490 : : 0x01, 0x02, 0x27, 0x06, 0x3c
30491 : : };
30492 : : return expand_rtx (expand_encoding, operands);
30493 : : }
30494 : :
30495 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18625 */
30496 : : rtx
30497 : : gen_avx512vl_gtv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30498 : : {
30499 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30500 : : static const uint8_t expand_encoding[] = {
30501 : : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01, 0x01,
30502 : : 0x01, 0x02, 0x27, 0x06, 0x3c
30503 : : };
30504 : : return expand_rtx (expand_encoding, operands);
30505 : : }
30506 : :
30507 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18625 */
30508 : : rtx
30509 : : gen_avx512vl_gtv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30510 : : {
30511 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30512 : : static const uint8_t expand_encoding[] = {
30513 : : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
30514 : : 0x01, 0x01, 0x01, 0x02, 0x27, 0x06, 0x3c, 0x01,
30515 : : 0x03
30516 : : };
30517 : : return expand_rtx (expand_encoding, operands);
30518 : : }
30519 : :
30520 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18660 */
30521 : : rtx
30522 : : gen_vec_permv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30523 : : {
30524 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30525 : : start_sequence ();
30526 : : {
30527 : : #define FAIL return (end_sequence (), nullptr)
30528 : : #define DONE return end_sequence ()
30529 : : #line 18666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30530 : : {
30531 : : ix86_expand_vec_perm (operands);
30532 : : DONE;
30533 : : }
30534 : : #undef DONE
30535 : : #undef FAIL
30536 : : }
30537 : : static const uint8_t expand_encoding[] = {
30538 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30539 : : 0x03
30540 : : };
30541 : : return complete_seq (expand_encoding, operands);
30542 : : }
30543 : :
30544 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18660 */
30545 : : rtx
30546 : : gen_vec_permv64qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30547 : : {
30548 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30549 : : start_sequence ();
30550 : : {
30551 : : #define FAIL return (end_sequence (), nullptr)
30552 : : #define DONE return end_sequence ()
30553 : : #line 18666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30554 : : {
30555 : : ix86_expand_vec_perm (operands);
30556 : : DONE;
30557 : : }
30558 : : #undef DONE
30559 : : #undef FAIL
30560 : : }
30561 : : static const uint8_t expand_encoding[] = {
30562 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30563 : : 0x03
30564 : : };
30565 : : return complete_seq (expand_encoding, operands);
30566 : : }
30567 : :
30568 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18677 */
30569 : : rtx
30570 : : gen_one_cmplv8si2 (const rtx operand0, const rtx operand1)
30571 : : {
30572 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
30573 : : start_sequence ();
30574 : : {
30575 : : #define FAIL return (end_sequence (), nullptr)
30576 : : #define DONE return end_sequence ()
30577 : : #line 18682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30578 : : {
30579 : : operands[2] = CONSTM1_RTX (V8SImode);
30580 : :
30581 : : if (!TARGET_AVX512F)
30582 : : operands[2] = force_reg (V8SImode, operands[2]);
30583 : : }
30584 : : #undef DONE
30585 : : #undef FAIL
30586 : : }
30587 : : static const uint8_t expand_encoding[] = {
30588 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x56, 0x01, 0x01,
30589 : : 0x01, 0x02
30590 : : };
30591 : : return complete_seq (expand_encoding, operands);
30592 : : }
30593 : :
30594 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18689 */
30595 : : extern rtx_insn *gen_split_3424 (rtx_insn *, rtx *);
30596 : : rtx_insn *
30597 : : gen_split_3424 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30598 : : {
30599 : : if (dump_file)
30600 : : fprintf (dump_file, "Splitting with gen_split_3424 (sse.md:18689)\n");
30601 : : start_sequence ();
30602 : : #define FAIL return (end_sequence (), nullptr)
30603 : : #define DONE return end_sequence ()
30604 : : #line 18710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30605 : : {
30606 : : if (MEM_P (operands[1]))
30607 : : {
30608 : : operands[3] = operands[1];
30609 : : operands[1] = operands[0];
30610 : : }
30611 : : else
30612 : : {
30613 : : if (GET_MODE_SIZE (HImode) < 4)
30614 : : {
30615 : : if (32 == 64 ? TARGET_AVX512BW
30616 : : : (TARGET_AVX512BW && TARGET_AVX512VL)
30617 : : || !EXT_REX_SSE_REG_P (operands[0]))
30618 : : {
30619 : : operands[3] = operands[1];
30620 : : operands[1] = operands[0];
30621 : : }
30622 : : else
30623 : : operands[3] = CONST0_RTX (V16HImode);
30624 : : }
30625 : : else
30626 : : {
30627 : : if (32 == 64 || TARGET_AVX512VL
30628 : : || !EXT_REX_SSE_REG_P (operands[0]))
30629 : : {
30630 : : operands[3] = operands[1];
30631 : : operands[1] = operands[0];
30632 : : }
30633 : : else
30634 : : operands[3] = CONST0_RTX (V16HImode);
30635 : : }
30636 : : }
30637 : : }
30638 : : #undef DONE
30639 : : #undef FAIL
30640 : : static const uint8_t expand_encoding[] = {
30641 : : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x17, 0x00,
30642 : : 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x55, 0x01, 0x01,
30643 : : 0x01, 0x02, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
30644 : : };
30645 : : return complete_seq (expand_encoding, operands);
30646 : : }
30647 : :
30648 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18778 */
30649 : : extern rtx_insn *gen_split_3434 (rtx_insn *, rtx *);
30650 : : rtx_insn *
30651 : : gen_split_3434 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30652 : : {
30653 : : if (dump_file)
30654 : : fprintf (dump_file, "Splitting with gen_split_3434 (sse.md:18778)\n");
30655 : : start_sequence ();
30656 : : #define FAIL return (end_sequence (), nullptr)
30657 : : #define DONE return end_sequence ()
30658 : : #line 18789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30659 : : operands[2] = CONSTM1_RTX (V4DImode);
30660 : : #undef DONE
30661 : : #undef FAIL
30662 : : static const uint8_t expand_encoding[] = {
30663 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x57, 0x81, 0x0c,
30664 : : 0x57, 0x01, 0x01, 0x01, 0x02
30665 : : };
30666 : : return complete_seq (expand_encoding, operands);
30667 : : }
30668 : :
30669 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18791 */
30670 : : rtx
30671 : : gen_sse2_andnotv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30672 : : {
30673 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30674 : : static const uint8_t expand_encoding[] = {
30675 : : 0x1f, 0x01, 0x00, 0x49, 0x51, 0x4c, 0x51, 0x01,
30676 : : 0x01, 0x01, 0x02
30677 : : };
30678 : : return expand_rtx (expand_encoding, operands);
30679 : : }
30680 : :
30681 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18798 */
30682 : : rtx
30683 : : gen_andnv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30684 : : {
30685 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30686 : : static const uint8_t expand_encoding[] = {
30687 : : 0x1f, 0x01, 0x00, 0x49, 0x55, 0x4c, 0x55, 0x01,
30688 : : 0x02, 0x01, 0x01
30689 : : };
30690 : : return expand_rtx (expand_encoding, operands);
30691 : : }
30692 : :
30693 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18805 */
30694 : : rtx
30695 : : gen_avx2_andnotv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30696 : : {
30697 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30698 : : static const uint8_t expand_encoding[] = {
30699 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x49, 0x57,
30700 : : 0x4c, 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
30701 : : 0x01, 0x04
30702 : : };
30703 : : return expand_rtx (expand_encoding, operands);
30704 : : }
30705 : :
30706 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18959 */
30707 : : extern rtx_insn *gen_split_3444 (rtx_insn *, rtx *);
30708 : : rtx_insn *
30709 : : gen_split_3444 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30710 : : {
30711 : : if (dump_file)
30712 : : fprintf (dump_file, "Splitting with gen_split_3444 (sse.md:18959)\n");
30713 : : start_sequence ();
30714 : : #define FAIL return (end_sequence (), nullptr)
30715 : : #define DONE return end_sequence ()
30716 : : #line 18972 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30717 : : operands[3] = gen_reg_rtx (V16SImode);
30718 : : #undef DONE
30719 : : #undef FAIL
30720 : : static const uint8_t expand_encoding[] = {
30721 : : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x5b, 0x01,
30722 : : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x5b, 0x4c, 0x5b,
30723 : : 0x01, 0x03, 0x01, 0x02
30724 : : };
30725 : : return complete_seq (expand_encoding, operands);
30726 : : }
30727 : :
30728 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18974 */
30729 : : extern rtx_insn *gen_split_3454 (rtx_insn *, rtx *);
30730 : : rtx_insn *
30731 : : gen_split_3454 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30732 : : {
30733 : : if (dump_file)
30734 : : fprintf (dump_file, "Splitting with gen_split_3454 (sse.md:18974)\n");
30735 : : start_sequence ();
30736 : : #define FAIL return (end_sequence (), nullptr)
30737 : : #define DONE return end_sequence ()
30738 : : #line 18987 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30739 : : operands[3] = gen_reg_rtx (V16QImode);
30740 : : #undef DONE
30741 : : #undef FAIL
30742 : : static const uint8_t expand_encoding[] = {
30743 : : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x4f, 0x01,
30744 : : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x4f, 0x4c, 0x4f,
30745 : : 0x01, 0x03, 0x01, 0x02
30746 : : };
30747 : : return complete_seq (expand_encoding, operands);
30748 : : }
30749 : :
30750 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18989 */
30751 : : extern rtx_insn *gen_split_3464 (rtx_insn *, rtx *);
30752 : : rtx_insn *
30753 : : gen_split_3464 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30754 : : {
30755 : : if (dump_file)
30756 : : fprintf (dump_file, "Splitting with gen_split_3464 (sse.md:18989)\n");
30757 : : start_sequence ();
30758 : : #define FAIL return (end_sequence (), nullptr)
30759 : : #define DONE return end_sequence ()
30760 : : #line 19002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30761 : : operands[3] = gen_reg_rtx (V64QImode);
30762 : : #undef DONE
30763 : : #undef FAIL
30764 : : static const uint8_t expand_encoding[] = {
30765 : : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x59, 0x01,
30766 : : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x59, 0x4b, 0x59,
30767 : : 0x01, 0x03, 0x01, 0x02
30768 : : };
30769 : : return complete_seq (expand_encoding, operands);
30770 : : }
30771 : :
30772 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19019 */
30773 : : rtx
30774 : : gen_andv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30775 : : {
30776 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30777 : : start_sequence ();
30778 : : {
30779 : : #define FAIL return (end_sequence (), nullptr)
30780 : : #define DONE return end_sequence ()
30781 : : #line 19025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30782 : : {
30783 : : ix86_expand_vector_logical_operator (AND, V16SImode, operands);
30784 : : DONE;
30785 : : }
30786 : : #undef DONE
30787 : : #undef FAIL
30788 : : }
30789 : : static const uint8_t expand_encoding[] = {
30790 : : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x5b, 0x01, 0x01,
30791 : : 0x01, 0x02
30792 : : };
30793 : : return complete_seq (expand_encoding, operands);
30794 : : }
30795 : :
30796 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19019 */
30797 : : rtx
30798 : : gen_andv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30799 : : {
30800 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30801 : : start_sequence ();
30802 : : {
30803 : : #define FAIL return (end_sequence (), nullptr)
30804 : : #define DONE return end_sequence ()
30805 : : #line 19025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30806 : : {
30807 : : ix86_expand_vector_logical_operator (AND, V64QImode, operands);
30808 : : DONE;
30809 : : }
30810 : : #undef DONE
30811 : : #undef FAIL
30812 : : }
30813 : : static const uint8_t expand_encoding[] = {
30814 : : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x59, 0x01, 0x01,
30815 : : 0x01, 0x02
30816 : : };
30817 : : return complete_seq (expand_encoding, operands);
30818 : : }
30819 : :
30820 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19019 */
30821 : : rtx
30822 : : gen_iorv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30823 : : {
30824 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30825 : : start_sequence ();
30826 : : {
30827 : : #define FAIL return (end_sequence (), nullptr)
30828 : : #define DONE return end_sequence ()
30829 : : #line 19025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30830 : : {
30831 : : ix86_expand_vector_logical_operator (IOR, V32HImode, operands);
30832 : : DONE;
30833 : : }
30834 : : #undef DONE
30835 : : #undef FAIL
30836 : : }
30837 : : static const uint8_t expand_encoding[] = {
30838 : : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x5a, 0x01, 0x01,
30839 : : 0x01, 0x02
30840 : : };
30841 : : return complete_seq (expand_encoding, operands);
30842 : : }
30843 : :
30844 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19019 */
30845 : : rtx
30846 : : gen_xorv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30847 : : {
30848 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30849 : : start_sequence ();
30850 : : {
30851 : : #define FAIL return (end_sequence (), nullptr)
30852 : : #define DONE return end_sequence ()
30853 : : #line 19025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30854 : : {
30855 : : ix86_expand_vector_logical_operator (XOR, V8SImode, operands);
30856 : : DONE;
30857 : : }
30858 : : #undef DONE
30859 : : #undef FAIL
30860 : : }
30861 : : static const uint8_t expand_encoding[] = {
30862 : : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x56, 0x01, 0x01,
30863 : : 0x01, 0x02
30864 : : };
30865 : : return complete_seq (expand_encoding, operands);
30866 : : }
30867 : :
30868 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19030 */
30869 : : rtx
30870 : : gen_cond_andv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30871 : : {
30872 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30873 : : start_sequence ();
30874 : : {
30875 : : #define FAIL _Pragma ("GCC error \"cond_andv16si cannot FAIL\"") (void)0
30876 : : #define DONE return end_sequence ()
30877 : : #line 19039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30878 : : {
30879 : : emit_insn (gen_andv16si3_mask (operands[0],
30880 : : operands[2],
30881 : : operands[3],
30882 : : operands[4],
30883 : : operands[1]));
30884 : : DONE;
30885 : : }
30886 : : #undef DONE
30887 : : #undef FAIL
30888 : : }
30889 : : static const uint8_t expand_encoding[] = {
30890 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x49,
30891 : : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30892 : : 0x01
30893 : : };
30894 : : return complete_seq (expand_encoding, operands);
30895 : : }
30896 : :
30897 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19030 */
30898 : : rtx
30899 : : gen_cond_iorv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30900 : : {
30901 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30902 : : start_sequence ();
30903 : : {
30904 : : #define FAIL _Pragma ("GCC error \"cond_iorv8di cannot FAIL\"") (void)0
30905 : : #define DONE return end_sequence ()
30906 : : #line 19039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30907 : : {
30908 : : emit_insn (gen_iorv8di3_mask (operands[0],
30909 : : operands[2],
30910 : : operands[3],
30911 : : operands[4],
30912 : : operands[1]));
30913 : : DONE;
30914 : : }
30915 : : #undef DONE
30916 : : #undef FAIL
30917 : : }
30918 : : static const uint8_t expand_encoding[] = {
30919 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4a,
30920 : : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30921 : : 0x01
30922 : : };
30923 : : return complete_seq (expand_encoding, operands);
30924 : : }
30925 : :
30926 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19048 */
30927 : : rtx
30928 : : gen_xorv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30929 : : {
30930 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30931 : : start_sequence ();
30932 : : {
30933 : : #define FAIL return (end_sequence (), nullptr)
30934 : : #define DONE return end_sequence ()
30935 : : #line 19057 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30936 : : ix86_fixup_binary_operands_no_copy (XOR, V16SImode, operands);
30937 : : #undef DONE
30938 : : #undef FAIL
30939 : : }
30940 : : static const uint8_t expand_encoding[] = {
30941 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4b,
30942 : : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30943 : : 0x04
30944 : : };
30945 : : return complete_seq (expand_encoding, operands);
30946 : : }
30947 : :
30948 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19048 */
30949 : : rtx
30950 : : gen_andv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30951 : : {
30952 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30953 : : start_sequence ();
30954 : : {
30955 : : #define FAIL return (end_sequence (), nullptr)
30956 : : #define DONE return end_sequence ()
30957 : : #line 19057 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30958 : : ix86_fixup_binary_operands_no_copy (AND, V4DImode, operands);
30959 : : #undef DONE
30960 : : #undef FAIL
30961 : : }
30962 : : static const uint8_t expand_encoding[] = {
30963 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x49,
30964 : : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30965 : : 0x04
30966 : : };
30967 : : return complete_seq (expand_encoding, operands);
30968 : : }
30969 : :
30970 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19467 */
30971 : : rtx
30972 : : gen_vec_pack_trunc_v16si (const rtx operand0, const rtx operand1, const rtx operand2)
30973 : : {
30974 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30975 : : start_sequence ();
30976 : : {
30977 : : #define FAIL return (end_sequence (), nullptr)
30978 : : #define DONE return end_sequence ()
30979 : : #line 19472 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30980 : : {
30981 : : rtx op1 = gen_lowpart (V32HImode, operands[1]);
30982 : : rtx op2 = gen_lowpart (V32HImode, operands[2]);
30983 : : ix86_expand_vec_extract_even_odd (operands[0], op1, op2, 0);
30984 : : DONE;
30985 : : }
30986 : : #undef DONE
30987 : : #undef FAIL
30988 : : }
30989 : : static const uint8_t expand_encoding[] = {
30990 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
30991 : : };
30992 : : return complete_seq (expand_encoding, operands);
30993 : : }
30994 : :
30995 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20156 */
30996 : : rtx
30997 : : gen_vec_interleave_highv16hi (const rtx operand0, const rtx operand1, const rtx operand2)
30998 : : {
30999 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31000 : : start_sequence ();
31001 : : {
31002 : : #define FAIL return (end_sequence (), nullptr)
31003 : : #define DONE return end_sequence ()
31004 : : #line 20161 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31005 : : {
31006 : : rtx t1 = gen_reg_rtx (V16HImode);
31007 : : rtx t2 = gen_reg_rtx (V16HImode);
31008 : : rtx t3 = gen_reg_rtx (V4DImode);
31009 : : emit_insn (gen_avx2_interleave_lowv16hi (t1, operands[1], operands[2]));
31010 : : emit_insn (gen_avx2_interleave_highv16hi (t2, operands[1], operands[2]));
31011 : : emit_insn (gen_avx2_permv2ti (t3, gen_lowpart (V4DImode, t1),
31012 : : gen_lowpart (V4DImode, t2),
31013 : : GEN_INT (1 + (3 << 4))));
31014 : : emit_move_insn (operands[0], gen_lowpart (V16HImode, t3));
31015 : : DONE;
31016 : : }
31017 : : #undef DONE
31018 : : #undef FAIL
31019 : : }
31020 : : static const uint8_t expand_encoding[] = {
31021 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
31022 : : };
31023 : : return complete_seq (expand_encoding, operands);
31024 : : }
31025 : :
31026 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20291 */
31027 : : rtx
31028 : : gen_avx512dq_vinserti64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
31029 : : {
31030 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
31031 : : start_sequence ();
31032 : : {
31033 : : #define FAIL return (end_sequence (), nullptr)
31034 : : #define DONE return end_sequence ()
31035 : : #line 20299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31036 : : {
31037 : : int mask, selector;
31038 : : mask = INTVAL (operands[3]);
31039 : : selector = (GET_MODE_UNIT_SIZE (V8DImode) == 4
31040 : : ? 0xFFFF ^ (0x000F << mask * 4)
31041 : : : 0xFF ^ (0x03 << mask * 2));
31042 : : emit_insn (gen_avx512dq_vinserti64x2_1_mask
31043 : : (operands[0], operands[1], operands[2], GEN_INT (selector),
31044 : : operands[4], operands[5]));
31045 : : DONE;
31046 : : }
31047 : : #undef DONE
31048 : : #undef FAIL
31049 : : }
31050 : : static const uint8_t expand_encoding[] = {
31051 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31052 : : 0x03, 0x01, 0x04, 0x01, 0x05
31053 : : };
31054 : : return complete_seq (expand_encoding, operands);
31055 : : }
31056 : :
31057 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20532 */
31058 : : rtx
31059 : : gen_avx512f_shuf_i64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
31060 : : {
31061 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
31062 : : start_sequence ();
31063 : : {
31064 : : #define FAIL return (end_sequence (), nullptr)
31065 : : #define DONE return end_sequence ()
31066 : : #line 20540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31067 : : {
31068 : : int mask = INTVAL (operands[3]);
31069 : : emit_insn (gen_avx512f_shuf_i64x2_1_mask
31070 : : (operands[0], operands[1], operands[2],
31071 : : GEN_INT (((mask >> 0) & 3) * 2),
31072 : : GEN_INT (((mask >> 0) & 3) * 2 + 1),
31073 : : GEN_INT (((mask >> 2) & 3) * 2),
31074 : : GEN_INT (((mask >> 2) & 3) * 2 + 1),
31075 : : GEN_INT (((mask >> 4) & 3) * 2 + 8),
31076 : : GEN_INT (((mask >> 4) & 3) * 2 + 9),
31077 : : GEN_INT (((mask >> 6) & 3) * 2 + 8),
31078 : : GEN_INT (((mask >> 6) & 3) * 2 + 9),
31079 : : operands[4], operands[5]));
31080 : : DONE;
31081 : : }
31082 : : #undef DONE
31083 : : #undef FAIL
31084 : : }
31085 : : static const uint8_t expand_encoding[] = {
31086 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31087 : : 0x03, 0x01, 0x04, 0x01, 0x05
31088 : : };
31089 : : return complete_seq (expand_encoding, operands);
31090 : : }
31091 : :
31092 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21054 */
31093 : : rtx
31094 : : gen_avx512vl_pshuflwv3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
31095 : : {
31096 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
31097 : : start_sequence ();
31098 : : {
31099 : : #define FAIL return (end_sequence (), nullptr)
31100 : : #define DONE return end_sequence ()
31101 : : #line 21061 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31102 : : {
31103 : : int mask = INTVAL (operands[2]);
31104 : : emit_insn (gen_avx2_pshuflw_1_mask (operands[0], operands[1],
31105 : : GEN_INT ((mask >> 0) & 3),
31106 : : GEN_INT ((mask >> 2) & 3),
31107 : : GEN_INT ((mask >> 4) & 3),
31108 : : GEN_INT ((mask >> 6) & 3),
31109 : : GEN_INT (((mask >> 0) & 3) + 8),
31110 : : GEN_INT (((mask >> 2) & 3) + 8),
31111 : : GEN_INT (((mask >> 4) & 3) + 8),
31112 : : GEN_INT (((mask >> 6) & 3) + 8),
31113 : : operands[3], operands[4]));
31114 : : DONE;
31115 : : }
31116 : : #undef DONE
31117 : : #undef FAIL
31118 : : }
31119 : : static const uint8_t expand_encoding[] = {
31120 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31121 : : 0x03, 0x01, 0x04
31122 : : };
31123 : : return complete_seq (expand_encoding, operands);
31124 : : }
31125 : :
31126 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21567 */
31127 : : extern rtx_insn *gen_split_3482 (rtx_insn *, rtx *);
31128 : : rtx_insn *
31129 : : gen_split_3482 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31130 : : {
31131 : : if (dump_file)
31132 : : fprintf (dump_file, "Splitting with gen_split_3482 (sse.md:21567)\n");
31133 : : start_sequence ();
31134 : : #define FAIL return (end_sequence (), nullptr)
31135 : : #define DONE return end_sequence ()
31136 : : #line 21575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31137 : : operands[1] = gen_lowpart (SImode, operands[1]);
31138 : : #undef DONE
31139 : : #undef FAIL
31140 : : static const uint8_t expand_encoding[] = {
31141 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x01, 0x01
31142 : : };
31143 : : return complete_seq (expand_encoding, operands);
31144 : : }
31145 : :
31146 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21781 */
31147 : : extern rtx_insn *gen_split_3490 (rtx_insn *, rtx *);
31148 : : rtx_insn *
31149 : : gen_split_3490 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31150 : : {
31151 : : if (dump_file)
31152 : : fprintf (dump_file, "Splitting with gen_split_3490 (sse.md:21781)\n");
31153 : : start_sequence ();
31154 : : #define FAIL return (end_sequence (), nullptr)
31155 : : #define DONE return end_sequence ()
31156 : : #line 21794 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31157 : : {
31158 : : rtx tmp;
31159 : :
31160 : : switch (GET_MODE_SIZE (GET_MODE (operands[1])))
31161 : : {
31162 : : case 64:
31163 : : if (SImode == SImode)
31164 : : {
31165 : : tmp = gen_reg_rtx (V8SImode);
31166 : : emit_insn (gen_vec_extract_lo_v16si (tmp,
31167 : : gen_lowpart (V16SImode,
31168 : : operands[1])));
31169 : : }
31170 : : else
31171 : : {
31172 : : tmp = gen_reg_rtx (V4DImode);
31173 : : emit_insn (gen_vec_extract_lo_v8di (tmp,
31174 : : gen_lowpart (V8DImode,
31175 : : operands[1])));
31176 : : }
31177 : : operands[1] = tmp;
31178 : : /* FALLTHRU */
31179 : : case 32:
31180 : : tmp = gen_reg_rtx (V4SImode);
31181 : : if (SImode == SImode)
31182 : : emit_insn (gen_vec_extract_lo_v8si (tmp, gen_lowpart (V8SImode,
31183 : : operands[1])));
31184 : : else
31185 : : emit_insn (gen_vec_extract_lo_v4di (tmp, gen_lowpart (V4DImode,
31186 : : operands[1])));
31187 : : operands[1] = tmp;
31188 : : break;
31189 : : case 16:
31190 : : operands[1] = gen_lowpart (V4SImode, operands[1]);
31191 : : break;
31192 : : }
31193 : : }
31194 : : #undef DONE
31195 : : #undef FAIL
31196 : : static const uint8_t expand_encoding[] = {
31197 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x11, 0x01,
31198 : : 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
31199 : : };
31200 : : return complete_seq (expand_encoding, operands);
31201 : : }
31202 : :
31203 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22113 */
31204 : : rtx
31205 : : gen_vec_unpacks_hi_v8hi (const rtx operand0, const rtx operand1)
31206 : : {
31207 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31208 : : start_sequence ();
31209 : : {
31210 : : #define FAIL return (end_sequence (), nullptr)
31211 : : #define DONE return end_sequence ()
31212 : : #line 22117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31213 : : ix86_expand_sse_unpack (operands[0], operands[1], false, true); DONE;
31214 : : #undef DONE
31215 : : #undef FAIL
31216 : : }
31217 : : static const uint8_t expand_encoding[] = {
31218 : : 0x02, 0x01, 0x00, 0x01, 0x01
31219 : : };
31220 : : return complete_seq (expand_encoding, operands);
31221 : : }
31222 : :
31223 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22119 */
31224 : : rtx
31225 : : gen_vec_unpacku_lo_v16si (const rtx operand0, const rtx operand1)
31226 : : {
31227 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31228 : : start_sequence ();
31229 : : {
31230 : : #define FAIL return (end_sequence (), nullptr)
31231 : : #define DONE return end_sequence ()
31232 : : #line 22123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31233 : : ix86_expand_sse_unpack (operands[0], operands[1], true, false); DONE;
31234 : : #undef DONE
31235 : : #undef FAIL
31236 : : }
31237 : : static const uint8_t expand_encoding[] = {
31238 : : 0x02, 0x01, 0x00, 0x01, 0x01
31239 : : };
31240 : : return complete_seq (expand_encoding, operands);
31241 : : }
31242 : :
31243 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22152 */
31244 : : rtx
31245 : : gen_vec_unpacku_hi_v8hi (const rtx operand0, const rtx operand1)
31246 : : {
31247 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31248 : : start_sequence ();
31249 : : {
31250 : : #define FAIL return (end_sequence (), nullptr)
31251 : : #define DONE return end_sequence ()
31252 : : #line 22156 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31253 : : ix86_expand_sse_unpack (operands[0], operands[1], true, true); DONE;
31254 : : #undef DONE
31255 : : #undef FAIL
31256 : : }
31257 : : static const uint8_t expand_encoding[] = {
31258 : : 0x02, 0x01, 0x00, 0x01, 0x01
31259 : : };
31260 : : return complete_seq (expand_encoding, operands);
31261 : : }
31262 : :
31263 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22206 */
31264 : : rtx
31265 : : gen_avx2_uavgv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31266 : : {
31267 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31268 : : start_sequence ();
31269 : : {
31270 : : #define FAIL return (end_sequence (), nullptr)
31271 : : #define DONE return end_sequence ()
31272 : : #line 22219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31273 : : {
31274 : : operands[3] = CONST1_RTX(V32HImode);
31275 : : ix86_fixup_binary_operands_no_copy (PLUS, V32QImode, operands);
31276 : : }
31277 : : #undef DONE
31278 : : #undef FAIL
31279 : : }
31280 : : static const uint8_t expand_encoding[] = {
31281 : : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x54, 0x50, 0x5a,
31282 : : 0x3b, 0x5a, 0x3b, 0x5a, 0x6f, 0x5a, 0x01, 0x01,
31283 : : 0x6f, 0x5a, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
31284 : : };
31285 : : return complete_seq (expand_encoding, operands);
31286 : : }
31287 : :
31288 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22206 */
31289 : : rtx
31290 : : gen_sse2_uavgv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
31291 : : {
31292 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
31293 : : start_sequence ();
31294 : : {
31295 : : #define FAIL return (end_sequence (), nullptr)
31296 : : #define DONE return end_sequence ()
31297 : : #line 22219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31298 : : {
31299 : : operands[5] = CONST1_RTX(V8SImode);
31300 : : ix86_fixup_binary_operands_no_copy (PLUS, V8HImode, operands);
31301 : : }
31302 : : #undef DONE
31303 : : #undef FAIL
31304 : : }
31305 : : static const uint8_t expand_encoding[] = {
31306 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x70,
31307 : : 0x50, 0x50, 0x56, 0x3b, 0x56, 0x3b, 0x56, 0x6f,
31308 : : 0x56, 0x01, 0x01, 0x6f, 0x56, 0x01, 0x02, 0x01,
31309 : : 0x05, 0x27, 0x01, 0x01, 0x03, 0x01, 0x04
31310 : : };
31311 : : return complete_seq (expand_encoding, operands);
31312 : : }
31313 : :
31314 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22343 */
31315 : : extern rtx_insn *gen_split_3506 (rtx_insn *, rtx *);
31316 : : rtx_insn *
31317 : : gen_split_3506 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31318 : : {
31319 : : if (dump_file)
31320 : : fprintf (dump_file, "Splitting with gen_split_3506 (sse.md:22343)\n");
31321 : : start_sequence ();
31322 : : #define FAIL return (end_sequence (), nullptr)
31323 : : #define DONE return end_sequence ()
31324 : : #line 22356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31325 : : operands[1] = gen_lowpart (V4SFmode, operands[1]);
31326 : : #undef DONE
31327 : : #undef FAIL
31328 : : static const uint8_t expand_encoding[] = {
31329 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
31330 : : 0x01, 0x01, 0x01, 0x32
31331 : : };
31332 : : return complete_seq (expand_encoding, operands);
31333 : : }
31334 : :
31335 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22362 */
31336 : : extern rtx_insn *gen_split_3516 (rtx_insn *, rtx *);
31337 : : rtx_insn *
31338 : : gen_split_3516 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31339 : : {
31340 : : if (dump_file)
31341 : : fprintf (dump_file, "Splitting with gen_split_3516 (sse.md:22362)\n");
31342 : : start_sequence ();
31343 : : #define FAIL return (end_sequence (), nullptr)
31344 : : #define DONE return end_sequence ()
31345 : : #line 22381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31346 : : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31347 : : #undef DONE
31348 : : #undef FAIL
31349 : : static const uint8_t expand_encoding[] = {
31350 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
31351 : : 0x01, 0x01, 0x01, 0x32
31352 : : };
31353 : : return complete_seq (expand_encoding, operands);
31354 : : }
31355 : :
31356 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22406 */
31357 : : extern rtx_insn *gen_split_3526 (rtx_insn *, rtx *);
31358 : : rtx_insn *
31359 : : gen_split_3526 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31360 : : {
31361 : : if (dump_file)
31362 : : fprintf (dump_file, "Splitting with gen_split_3526 (sse.md:22406)\n");
31363 : : start_sequence ();
31364 : : #define FAIL return (end_sequence (), nullptr)
31365 : : #define DONE return end_sequence ()
31366 : : #line 22420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31367 : : operands[1] = gen_lowpart (V4SFmode, operands[1]);
31368 : : #undef DONE
31369 : : #undef FAIL
31370 : : static const uint8_t expand_encoding[] = {
31371 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
31372 : : 0x01, 0x01, 0x01, 0x32
31373 : : };
31374 : : return complete_seq (expand_encoding, operands);
31375 : : }
31376 : :
31377 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22529 */
31378 : : extern rtx_insn *gen_split_3536 (rtx_insn *, rtx *);
31379 : : rtx_insn *
31380 : : gen_split_3536 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31381 : : {
31382 : : if (dump_file)
31383 : : fprintf (dump_file, "Splitting with gen_split_3536 (sse.md:22529)\n");
31384 : : start_sequence ();
31385 : : #define FAIL return (end_sequence (), nullptr)
31386 : : #define DONE return end_sequence ()
31387 : : #line 22540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31388 : : {
31389 : : operands[2] = gen_reg_rtx (SImode);
31390 : : operands[1] = gen_lowpart (V16QImode, operands[1]);
31391 : : if (GET_MODE_NUNITS (V16QImode) == 32)
31392 : : operands[3] = gen_rtx_NOT (SImode, operands[2]);
31393 : : else
31394 : : {
31395 : : operands[3]
31396 : : = gen_int_mode ((HOST_WIDE_INT_1 << GET_MODE_NUNITS (V16QImode)) - 1,
31397 : : SImode);
31398 : : operands[3] = gen_rtx_XOR (SImode, operands[2], operands[3]);
31399 : : }
31400 : : }
31401 : : #undef DONE
31402 : : #undef FAIL
31403 : : static const uint8_t expand_encoding[] = {
31404 : : 0x02, 0x1f, 0x01, 0x02, 0x1a, 0x11, 0x01, 0x01,
31405 : : 0x01, 0x32, 0x1f, 0x01, 0x00, 0x01, 0x03
31406 : : };
31407 : : return complete_seq (expand_encoding, operands);
31408 : : }
31409 : :
31410 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22722 */
31411 : : extern rtx_insn *gen_split_3549 (rtx_insn *, rtx *);
31412 : : rtx_insn *
31413 : : gen_split_3549 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31414 : : {
31415 : : if (dump_file)
31416 : : fprintf (dump_file, "Splitting with gen_split_3549 (sse.md:22722)\n");
31417 : : start_sequence ();
31418 : : static const uint8_t expand_encoding[] = {
31419 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
31420 : : };
31421 : : return complete_seq (expand_encoding, operands);
31422 : : }
31423 : :
31424 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22774 */
31425 : : extern rtx_insn *gen_split_3554 (rtx_insn *, rtx *);
31426 : : rtx_insn *
31427 : : gen_split_3554 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31428 : : {
31429 : : if (dump_file)
31430 : : fprintf (dump_file, "Splitting with gen_split_3554 (sse.md:22774)\n");
31431 : : start_sequence ();
31432 : : #define FAIL return (end_sequence (), nullptr)
31433 : : #define DONE return end_sequence ()
31434 : : #line 22795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31435 : : operands[0] = force_reg (V32QImode, operands[0]);
31436 : : #undef DONE
31437 : : #undef FAIL
31438 : : static const uint8_t expand_encoding[] = {
31439 : : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31440 : : 0x01, 0x00, 0x01, 0x00, 0x81, 0x03
31441 : : };
31442 : : return complete_seq (expand_encoding, operands);
31443 : : }
31444 : :
31445 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23288 */
31446 : : rtx
31447 : : gen_ssse3_pmulhrswv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31448 : : {
31449 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31450 : : start_sequence ();
31451 : : {
31452 : : #define FAIL return (end_sequence (), nullptr)
31453 : : #define DONE return end_sequence ()
31454 : : #line 23303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31455 : : {
31456 : : operands[3] = CONST1_RTX(V8HImode);
31457 : : ix86_fixup_binary_operands_no_copy (MULT, V8HImode, operands);
31458 : : }
31459 : : #undef DONE
31460 : : #undef FAIL
31461 : : }
31462 : : static const uint8_t expand_encoding[] = {
31463 : : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x50, 0x50, 0x56,
31464 : : 0x3b, 0x56, 0x50, 0x56, 0x3e, 0x56, 0x6e, 0x56,
31465 : : 0x01, 0x01, 0x6e, 0x56, 0x01, 0x02, 0x27, 0x0e,
31466 : : 0x01, 0x03, 0x27, 0x01
31467 : : };
31468 : : return complete_seq (expand_encoding, operands);
31469 : : }
31470 : :
31471 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23492 */
31472 : : extern rtx_insn *gen_split_3562 (rtx_insn *, rtx *);
31473 : : rtx_insn *
31474 : : gen_split_3562 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31475 : : {
31476 : : if (dump_file)
31477 : : fprintf (dump_file, "Splitting with gen_split_3562 (sse.md:23492)\n");
31478 : : start_sequence ();
31479 : : #define FAIL return (end_sequence (), nullptr)
31480 : : #define DONE return end_sequence ()
31481 : : #line 23511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31482 : : {
31483 : : /* Emulate MMX version of pshufb with SSE version by masking out the
31484 : : bit 3 of the shuffle control byte. */
31485 : : operands[0] = lowpart_subreg (V16QImode, operands[0],
31486 : : GET_MODE (operands[0]));
31487 : : operands[1] = lowpart_subreg (V16QImode, operands[1],
31488 : : GET_MODE (operands[1]));
31489 : : operands[2] = lowpart_subreg (V4SImode, operands[2],
31490 : : GET_MODE (operands[2]));
31491 : : operands[4] = lowpart_subreg (V16QImode, operands[3],
31492 : : GET_MODE (operands[3]));
31493 : : }
31494 : : #undef DONE
31495 : : #undef FAIL
31496 : : static const uint8_t expand_encoding[] = {
31497 : : 0x02, 0x1f, 0x01, 0x03, 0x49, 0x51, 0x01, 0x03,
31498 : : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02,
31499 : : 0x01, 0x01, 0x01, 0x04, 0x35
31500 : : };
31501 : : return complete_seq (expand_encoding, operands);
31502 : : }
31503 : :
31504 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23922 */
31505 : : extern rtx_insn *gen_split_3564 (rtx_insn *, rtx *);
31506 : : rtx_insn *
31507 : : gen_split_3564 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31508 : : {
31509 : : if (dump_file)
31510 : : fprintf (dump_file, "Splitting with gen_split_3564 (sse.md:23922)\n");
31511 : : start_sequence ();
31512 : : #define FAIL return (end_sequence (), nullptr)
31513 : : #define DONE return end_sequence ()
31514 : : #line 23937 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31515 : : operands[3] = gen_lowpart (V8SFmode, operands[3]);
31516 : : #undef DONE
31517 : : #undef FAIL
31518 : : static const uint8_t expand_encoding[] = {
31519 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01,
31520 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31521 : : };
31522 : : return complete_seq (expand_encoding, operands);
31523 : : }
31524 : :
31525 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23974 */
31526 : : extern rtx_insn *gen_split_3574 (rtx_insn *, rtx *);
31527 : : rtx_insn *
31528 : : gen_split_3574 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31529 : : {
31530 : : if (dump_file)
31531 : : fprintf (dump_file, "Splitting with gen_split_3574 (sse.md:23974)\n");
31532 : : start_sequence ();
31533 : : #define FAIL return (end_sequence (), nullptr)
31534 : : #define DONE return end_sequence ()
31535 : : #line 23990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31536 : : {
31537 : : operands[0] = gen_lowpart (V8SFmode, operands[0]);
31538 : : operands[1] = gen_lowpart (V8SFmode, operands[1]);
31539 : : operands[2] = gen_lowpart (V8SFmode, operands[2]);
31540 : : operands[3] = gen_lowpart (V8SFmode, operands[3]);
31541 : : }
31542 : : #undef DONE
31543 : : #undef FAIL
31544 : : static const uint8_t expand_encoding[] = {
31545 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01,
31546 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31547 : : };
31548 : : return complete_seq (expand_encoding, operands);
31549 : : }
31550 : :
31551 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24065 */
31552 : : extern rtx_insn *gen_split_3584 (rtx_insn *, rtx *);
31553 : : rtx_insn *
31554 : : gen_split_3584 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31555 : : {
31556 : : if (dump_file)
31557 : : fprintf (dump_file, "Splitting with gen_split_3584 (sse.md:24065)\n");
31558 : : start_sequence ();
31559 : : #define FAIL return (end_sequence (), nullptr)
31560 : : #define DONE return end_sequence ()
31561 : : #line 24083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31562 : : {
31563 : : operands[0] = gen_lowpart (V4SFmode, operands[0]);
31564 : : operands[2] = gen_lowpart (V4SFmode, operands[2]);
31565 : : operands[1] = force_reg (V4SFmode,
31566 : : gen_lowpart (V4SFmode, operands[1]));
31567 : : operands[3] = gen_lowpart (V4SFmode, operands[3]);
31568 : : }
31569 : : #undef DONE
31570 : : #undef FAIL
31571 : : static const uint8_t expand_encoding[] = {
31572 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
31573 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31574 : : };
31575 : : return complete_seq (expand_encoding, operands);
31576 : : }
31577 : :
31578 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24294 */
31579 : : extern rtx_insn *gen_split_3596 (rtx_insn *, rtx *);
31580 : : rtx_insn *
31581 : : gen_split_3596 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31582 : : {
31583 : : if (dump_file)
31584 : : fprintf (dump_file, "Splitting with gen_split_3596 (sse.md:24294)\n");
31585 : : start_sequence ();
31586 : : #define FAIL return (end_sequence (), nullptr)
31587 : : #define DONE return end_sequence ()
31588 : : #line 24314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31589 : : operands[3] = gen_lowpart (V32QImode, operands[3]);
31590 : : #undef DONE
31591 : : #undef FAIL
31592 : : static const uint8_t expand_encoding[] = {
31593 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
31594 : : 0x01, 0x01, 0x02, 0x61, 0x54, 0x01, 0x03, 0x01,
31595 : : 0x04, 0x34
31596 : : };
31597 : : return complete_seq (expand_encoding, operands);
31598 : : }
31599 : :
31600 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24468 */
31601 : : extern rtx_insn *gen_split_3600 (rtx_insn *, rtx *);
31602 : : rtx_insn *
31603 : : gen_split_3600 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31604 : : {
31605 : : if (dump_file)
31606 : : fprintf (dump_file, "Splitting with gen_split_3600 (sse.md:24468)\n");
31607 : : start_sequence ();
31608 : : #define FAIL return (end_sequence (), nullptr)
31609 : : #define DONE return end_sequence ()
31610 : : #line 24480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31611 : : {
31612 : : operands[0] = lowpart_subreg (V16HImode, operands[0], V32QImode);
31613 : : operands[1] = lowpart_subreg (V16QImode, operands[1], V32QImode);
31614 : : }
31615 : : #undef DONE
31616 : : #undef FAIL
31617 : : static const uint8_t expand_encoding[] = {
31618 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x55, 0x01, 0x01
31619 : : };
31620 : : return complete_seq (expand_encoding, operands);
31621 : : }
31622 : :
31623 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24538 */
31624 : : extern rtx_insn *gen_split_3605 (rtx_insn *, rtx *);
31625 : : rtx_insn *
31626 : : gen_split_3605 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31627 : : {
31628 : : if (dump_file)
31629 : : fprintf (dump_file, "Splitting with gen_split_3605 (sse.md:24538)\n");
31630 : : start_sequence ();
31631 : : #define FAIL return (end_sequence (), nullptr)
31632 : : #define DONE return end_sequence ()
31633 : : #line 24553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31634 : : {
31635 : : operands[0] = lowpart_subreg (V32HImode, operands[0], V64QImode);
31636 : : operands[1] = lowpart_subreg (V32QImode, operands[1], V16HImode);
31637 : : }
31638 : : #undef DONE
31639 : : #undef FAIL
31640 : : static const uint8_t expand_encoding[] = {
31641 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x5a, 0x01, 0x01
31642 : : };
31643 : : return complete_seq (expand_encoding, operands);
31644 : : }
31645 : :
31646 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24649 */
31647 : : extern rtx_insn *gen_split_3615 (rtx_insn *, rtx *);
31648 : : rtx_insn *
31649 : : gen_split_3615 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31650 : : {
31651 : : if (dump_file)
31652 : : fprintf (dump_file, "Splitting with gen_split_3615 (sse.md:24649)\n");
31653 : : start_sequence ();
31654 : : #define FAIL return (end_sequence (), nullptr)
31655 : : #define DONE return end_sequence ()
31656 : : #line 24671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31657 : : {
31658 : : operands[0] = lowpart_subreg (V8HImode, operands[0], V16QImode);
31659 : : if (MEM_P (operands[1]))
31660 : : {
31661 : : operands[1] = lowpart_subreg (V8QImode, operands[1], DImode);
31662 : : operands[1] = gen_rtx_ZERO_EXTEND (V8HImode, operands[1]);
31663 : : emit_insn (gen_rtx_SET (operands[0], operands[1]));
31664 : : DONE;
31665 : : }
31666 : : operands[1] = lowpart_subreg (V16QImode, operands[1], DImode);
31667 : : }
31668 : : #undef DONE
31669 : : #undef FAIL
31670 : : static const uint8_t expand_encoding[] = {
31671 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x50, 0x81, 0x0a,
31672 : : 0x48, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00,
31673 : : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
31674 : : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07
31675 : : };
31676 : : return complete_seq (expand_encoding, operands);
31677 : : }
31678 : :
31679 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24834 */
31680 : : rtx
31681 : : gen_zero_extendv4qiv4si2 (const rtx operand0, const rtx operand1)
31682 : : {
31683 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31684 : : start_sequence ();
31685 : : {
31686 : : #define FAIL return (end_sequence (), nullptr)
31687 : : #define DONE return end_sequence ()
31688 : : #line 24839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31689 : : {
31690 : : if (!MEM_P (operands[1]))
31691 : : {
31692 : : rtx op1 = force_reg (V4QImode, operands[1]);
31693 : : op1 = lowpart_subreg (V16QImode, op1, V4QImode);
31694 : : emit_insn (gen_sse4_1_zero_extendv4qiv4si2 (operands[0], op1));
31695 : : DONE;
31696 : : }
31697 : : }
31698 : : #undef DONE
31699 : : #undef FAIL
31700 : : }
31701 : : static const uint8_t expand_encoding[] = {
31702 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x51, 0x01, 0x01
31703 : : };
31704 : : return complete_seq (expand_encoding, operands);
31705 : : }
31706 : :
31707 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24936 */
31708 : : extern rtx_insn *gen_split_3631 (rtx_insn *, rtx *);
31709 : : rtx_insn *
31710 : : gen_split_3631 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31711 : : {
31712 : : if (dump_file)
31713 : : fprintf (dump_file, "Splitting with gen_split_3631 (sse.md:24936)\n");
31714 : : start_sequence ();
31715 : : #define FAIL return (end_sequence (), nullptr)
31716 : : #define DONE return end_sequence ()
31717 : : #line 24951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31718 : : {
31719 : : operands[0] = lowpart_subreg (V8SImode, operands[0], V16HImode);
31720 : : operands[1] = lowpart_subreg (V8HImode, operands[1], V2DImode);
31721 : : }
31722 : : #undef DONE
31723 : : #undef FAIL
31724 : : static const uint8_t expand_encoding[] = {
31725 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x56, 0x01, 0x01
31726 : : };
31727 : : return complete_seq (expand_encoding, operands);
31728 : : }
31729 : :
31730 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25113 */
31731 : : extern rtx_insn *gen_split_3640 (rtx_insn *, rtx *);
31732 : : rtx_insn *
31733 : : gen_split_3640 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31734 : : {
31735 : : if (dump_file)
31736 : : fprintf (dump_file, "Splitting with gen_split_3640 (sse.md:25113)\n");
31737 : : start_sequence ();
31738 : : #define FAIL return (end_sequence (), nullptr)
31739 : : #define DONE return end_sequence ()
31740 : : #line 25130 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31741 : : operands[1] = adjust_address_nv (operands[1], V8QImode, 0);
31742 : : #undef DONE
31743 : : #undef FAIL
31744 : : static const uint8_t expand_encoding[] = {
31745 : : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x5c, 0x01, 0x01
31746 : : };
31747 : : return complete_seq (expand_encoding, operands);
31748 : : }
31749 : :
31750 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25172 */
31751 : : extern rtx_insn *gen_split_3644 (rtx_insn *, rtx *);
31752 : : rtx_insn *
31753 : : gen_split_3644 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31754 : : {
31755 : : if (dump_file)
31756 : : fprintf (dump_file, "Splitting with gen_split_3644 (sse.md:25172)\n");
31757 : : start_sequence ();
31758 : : #define FAIL return (end_sequence (), nullptr)
31759 : : #define DONE return end_sequence ()
31760 : : #line 25192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31761 : : operands[1] = adjust_address_nv (operands[1], V4QImode, 0);
31762 : : #undef DONE
31763 : : #undef FAIL
31764 : : static const uint8_t expand_encoding[] = {
31765 : : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01
31766 : : };
31767 : : return complete_seq (expand_encoding, operands);
31768 : : }
31769 : :
31770 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25251 */
31771 : : extern rtx_insn *gen_split_3650 (rtx_insn *, rtx *);
31772 : : rtx_insn *
31773 : : gen_split_3650 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31774 : : {
31775 : : if (dump_file)
31776 : : fprintf (dump_file, "Splitting with gen_split_3650 (sse.md:25251)\n");
31777 : : start_sequence ();
31778 : : #define FAIL return (end_sequence (), nullptr)
31779 : : #define DONE return end_sequence ()
31780 : : #line 25266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31781 : : {
31782 : : if (!MEM_P (operands[1]))
31783 : : operands[1] = force_reg (BFmode, operands[1]);
31784 : : operands[1] = lowpart_subreg (V2QImode, operands[1], BFmode);
31785 : : emit_insn (gen_zero_extendv2qiv2di2 (operands[0], operands[1]));
31786 : : DONE;
31787 : : }
31788 : : #undef DONE
31789 : : #undef FAIL
31790 : : static const uint8_t expand_encoding[] = {
31791 : : 0x01, 0x27, 0x00
31792 : : };
31793 : : return complete_seq (expand_encoding, operands);
31794 : : }
31795 : :
31796 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25375 */
31797 : : extern rtx_insn *gen_split_3658 (rtx_insn *, rtx *);
31798 : : rtx_insn *
31799 : : gen_split_3658 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31800 : : {
31801 : : if (dump_file)
31802 : : fprintf (dump_file, "Splitting with gen_split_3658 (sse.md:25375)\n");
31803 : : start_sequence ();
31804 : : #define FAIL return (end_sequence (), nullptr)
31805 : : #define DONE return end_sequence ()
31806 : : #line 25394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31807 : : operands[1] = adjust_address_nv (operands[1], V2HImode, 0);
31808 : : #undef DONE
31809 : : #undef FAIL
31810 : : static const uint8_t expand_encoding[] = {
31811 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x52, 0x01, 0x01
31812 : : };
31813 : : return complete_seq (expand_encoding, operands);
31814 : : }
31815 : :
31816 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25508 */
31817 : : rtx
31818 : : gen_zero_extendv4siv4di2 (const rtx operand0, const rtx operand1)
31819 : : {
31820 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31821 : : static const uint8_t expand_encoding[] = {
31822 : : 0x1f, 0x01, 0x00, 0x6f, 0x57, 0x01, 0x01
31823 : : };
31824 : : return expand_rtx (expand_encoding, operands);
31825 : : }
31826 : :
31827 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25616 */
31828 : : rtx
31829 : : gen_zero_extendv2siv2di2 (const rtx operand0, const rtx operand1)
31830 : : {
31831 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31832 : : start_sequence ();
31833 : : {
31834 : : #define FAIL return (end_sequence (), nullptr)
31835 : : #define DONE return end_sequence ()
31836 : : #line 25621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31837 : : {
31838 : : if (!TARGET_SSE4_1)
31839 : : {
31840 : : ix86_expand_sse_extend (operands[0], operands[1], true);
31841 : : DONE;
31842 : : }
31843 : :
31844 : : if (!MEM_P (operands[1]))
31845 : : {
31846 : : rtx op1 = force_reg (V2SImode, operands[1]);
31847 : : op1 = lowpart_subreg (V4SImode, op1, V2SImode);
31848 : : emit_insn (gen_sse4_1_zero_extendv2siv2di2 (operands[0], op1));
31849 : : DONE;
31850 : : }
31851 : : }
31852 : : #undef DONE
31853 : : #undef FAIL
31854 : : }
31855 : : static const uint8_t expand_encoding[] = {
31856 : : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x52, 0x01, 0x01
31857 : : };
31858 : : return complete_seq (expand_encoding, operands);
31859 : : }
31860 : :
31861 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25674 */
31862 : : rtx
31863 : : gen_avx_ptestzv2ti (const rtx operand0, const rtx operand1)
31864 : : {
31865 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31866 : : static const uint8_t expand_encoding[] = {
31867 : : 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02, 0x01,
31868 : : 0x00, 0x01, 0x01, 0x81, 0x03
31869 : : };
31870 : : return expand_rtx (expand_encoding, operands);
31871 : : }
31872 : :
31873 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25682 */
31874 : : rtx
31875 : : gen_avx_ptestcv32qi (const rtx operand0, const rtx operand1)
31876 : : {
31877 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31878 : : static const uint8_t expand_encoding[] = {
31879 : : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31880 : : 0x00, 0x01, 0x01, 0x81, 0x03
31881 : : };
31882 : : return expand_rtx (expand_encoding, operands);
31883 : : }
31884 : :
31885 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25690 */
31886 : : rtx
31887 : : gen_sse4_1_ptestv2di (const rtx operand0, const rtx operand1)
31888 : : {
31889 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31890 : : static const uint8_t expand_encoding[] = {
31891 : : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31892 : : 0x00, 0x01, 0x01, 0x81, 0x03
31893 : : };
31894 : : return expand_rtx (expand_encoding, operands);
31895 : : }
31896 : :
31897 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25690 */
31898 : : rtx
31899 : : gen_avx_ptestv4df (const rtx operand0, const rtx operand1)
31900 : : {
31901 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31902 : : static const uint8_t expand_encoding[] = {
31903 : : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31904 : : 0x00, 0x01, 0x01, 0x81, 0x03
31905 : : };
31906 : : return expand_rtx (expand_encoding, operands);
31907 : : }
31908 : :
31909 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25711 */
31910 : : extern rtx_insn *gen_split_3678 (rtx_insn *, rtx *);
31911 : : rtx_insn *
31912 : : gen_split_3678 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31913 : : {
31914 : : if (dump_file)
31915 : : fprintf (dump_file, "Splitting with gen_split_3678 (sse.md:25711)\n");
31916 : : start_sequence ();
31917 : : static const uint8_t expand_encoding[] = {
31918 : : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31919 : : 0x01, 0x00, 0x01, 0x01, 0x81, 0x03
31920 : : };
31921 : : return complete_seq (expand_encoding, operands);
31922 : : }
31923 : :
31924 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25725 */
31925 : : extern rtx_insn *gen_split_3688 (rtx_insn *, rtx *);
31926 : : rtx_insn *
31927 : : gen_split_3688 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31928 : : {
31929 : : if (dump_file)
31930 : : fprintf (dump_file, "Splitting with gen_split_3688 (sse.md:25725)\n");
31931 : : start_sequence ();
31932 : : static const uint8_t expand_encoding[] = {
31933 : : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01,
31934 : : 0x27, 0x00, 0x2a
31935 : : };
31936 : : return complete_seq (expand_encoding, operands);
31937 : : }
31938 : :
31939 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25737 */
31940 : : extern rtx_insn *gen_split_3698 (rtx_insn *, rtx *);
31941 : : rtx_insn *
31942 : : gen_split_3698 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31943 : : {
31944 : : if (dump_file)
31945 : : fprintf (dump_file, "Splitting with gen_split_3698 (sse.md:25737)\n");
31946 : : start_sequence ();
31947 : : static const uint8_t expand_encoding[] = {
31948 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31949 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31950 : : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31951 : : };
31952 : : return complete_seq (expand_encoding, operands);
31953 : : }
31954 : :
31955 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25737 */
31956 : : extern rtx_insn *gen_split_3708 (rtx_insn *, rtx *);
31957 : : rtx_insn *
31958 : : gen_split_3708 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31959 : : {
31960 : : if (dump_file)
31961 : : fprintf (dump_file, "Splitting with gen_split_3708 (sse.md:25737)\n");
31962 : : start_sequence ();
31963 : : static const uint8_t expand_encoding[] = {
31964 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31965 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31966 : : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31967 : : };
31968 : : return complete_seq (expand_encoding, operands);
31969 : : }
31970 : :
31971 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25737 */
31972 : : extern rtx_insn *gen_split_3718 (rtx_insn *, rtx *);
31973 : : rtx_insn *
31974 : : gen_split_3718 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31975 : : {
31976 : : if (dump_file)
31977 : : fprintf (dump_file, "Splitting with gen_split_3718 (sse.md:25737)\n");
31978 : : start_sequence ();
31979 : : static const uint8_t expand_encoding[] = {
31980 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31981 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31982 : : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31983 : : };
31984 : : return complete_seq (expand_encoding, operands);
31985 : : }
31986 : :
31987 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25737 */
31988 : : extern rtx_insn *gen_split_3728 (rtx_insn *, rtx *);
31989 : : rtx_insn *
31990 : : gen_split_3728 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31991 : : {
31992 : : if (dump_file)
31993 : : fprintf (dump_file, "Splitting with gen_split_3728 (sse.md:25737)\n");
31994 : : start_sequence ();
31995 : : static const uint8_t expand_encoding[] = {
31996 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31997 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31998 : : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31999 : : };
32000 : : return complete_seq (expand_encoding, operands);
32001 : : }
32002 : :
32003 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25737 */
32004 : : extern rtx_insn *gen_split_3738 (rtx_insn *, rtx *);
32005 : : rtx_insn *
32006 : : gen_split_3738 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32007 : : {
32008 : : if (dump_file)
32009 : : fprintf (dump_file, "Splitting with gen_split_3738 (sse.md:25737)\n");
32010 : : start_sequence ();
32011 : : static const uint8_t expand_encoding[] = {
32012 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32013 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
32014 : : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
32015 : : };
32016 : : return complete_seq (expand_encoding, operands);
32017 : : }
32018 : :
32019 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25737 */
32020 : : extern rtx_insn *gen_split_3748 (rtx_insn *, rtx *);
32021 : : rtx_insn *
32022 : : gen_split_3748 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32023 : : {
32024 : : if (dump_file)
32025 : : fprintf (dump_file, "Splitting with gen_split_3748 (sse.md:25737)\n");
32026 : : start_sequence ();
32027 : : static const uint8_t expand_encoding[] = {
32028 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32029 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
32030 : : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
32031 : : };
32032 : : return complete_seq (expand_encoding, operands);
32033 : : }
32034 : :
32035 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25752 */
32036 : : extern rtx_insn *gen_split_3758 (rtx_insn *, rtx *);
32037 : : rtx_insn *
32038 : : gen_split_3758 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32039 : : {
32040 : : if (dump_file)
32041 : : fprintf (dump_file, "Splitting with gen_split_3758 (sse.md:25752)\n");
32042 : : start_sequence ();
32043 : : static const uint8_t expand_encoding[] = {
32044 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32045 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x33,
32046 : : 0x00, 0x01, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11,
32047 : : 0x27, 0x00
32048 : : };
32049 : : return complete_seq (expand_encoding, operands);
32050 : : }
32051 : :
32052 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25768 */
32053 : : extern rtx_insn *gen_split_3768 (rtx_insn *, rtx *);
32054 : : rtx_insn *
32055 : : gen_split_3768 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32056 : : {
32057 : : if (dump_file)
32058 : : fprintf (dump_file, "Splitting with gen_split_3768 (sse.md:25768)\n");
32059 : : start_sequence ();
32060 : : static const uint8_t expand_encoding[] = {
32061 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32062 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x2f,
32063 : : 0x39, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27,
32064 : : 0x00, 0x01, 0x00, 0x2f
32065 : : };
32066 : : return complete_seq (expand_encoding, operands);
32067 : : }
32068 : :
32069 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25768 */
32070 : : extern rtx_insn *gen_split_3778 (rtx_insn *, rtx *);
32071 : : rtx_insn *
32072 : : gen_split_3778 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32073 : : {
32074 : : if (dump_file)
32075 : : fprintf (dump_file, "Splitting with gen_split_3778 (sse.md:25768)\n");
32076 : : start_sequence ();
32077 : : static const uint8_t expand_encoding[] = {
32078 : : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32079 : : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x2f,
32080 : : 0x39, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27,
32081 : : 0x00, 0x01, 0x00, 0x2f
32082 : : };
32083 : : return complete_seq (expand_encoding, operands);
32084 : : }
32085 : :
32086 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25791 */
32087 : : extern rtx_insn *gen_split_3788 (rtx_insn *, rtx *);
32088 : : rtx_insn *
32089 : : gen_split_3788 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32090 : : {
32091 : : if (dump_file)
32092 : : fprintf (dump_file, "Splitting with gen_split_3788 (sse.md:25791)\n");
32093 : : start_sequence ();
32094 : : #define FAIL return (end_sequence (), nullptr)
32095 : : #define DONE return end_sequence ()
32096 : : #line 25811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32097 : : {
32098 : : if (MEM_P (operands[0]))
32099 : : operands[3] = force_reg (V2DImode, operands[0]);
32100 : : else
32101 : : operands[3] = operands[0];
32102 : : }
32103 : : #undef DONE
32104 : : #undef FAIL
32105 : : static const uint8_t expand_encoding[] = {
32106 : : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
32107 : : 0x01, 0x03, 0x01, 0x03, 0x81, 0x03
32108 : : };
32109 : : return complete_seq (expand_encoding, operands);
32110 : : }
32111 : :
32112 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25827 */
32113 : : rtx
32114 : : gen_rintv16hf2 (const rtx operand0, const rtx operand1)
32115 : : {
32116 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32117 : : start_sequence ();
32118 : : {
32119 : : #define FAIL _Pragma ("GCC error \"rintv16hf2 cannot FAIL\"") (void)0
32120 : : #define DONE return end_sequence ()
32121 : : #line 25834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32122 : : operands[2] = GEN_INT (ROUND_MXCSR);
32123 : : #undef DONE
32124 : : #undef FAIL
32125 : : }
32126 : : static const uint8_t expand_encoding[] = {
32127 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01,
32128 : : 0x01, 0x01, 0x02, 0x5f
32129 : : };
32130 : : return complete_seq (expand_encoding, operands);
32131 : : }
32132 : :
32133 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25837 */
32134 : : rtx
32135 : : gen_lrintv8sfv8si2 (const rtx operand0, const rtx operand1)
32136 : : {
32137 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32138 : : static const uint8_t expand_encoding[] = {
32139 : : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
32140 : : 0x2f
32141 : : };
32142 : : return expand_rtx (expand_encoding, operands);
32143 : : }
32144 : :
32145 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25861 */
32146 : : rtx
32147 : : gen_sse4_1_roundps_sfix (const rtx operand0, const rtx operand1, const rtx operand2)
32148 : : {
32149 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32150 : : start_sequence ();
32151 : : {
32152 : : #define FAIL return (end_sequence (), nullptr)
32153 : : #define DONE return end_sequence ()
32154 : : #line 25866 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32155 : : {
32156 : : rtx tmp = gen_reg_rtx (V4SFmode);
32157 : :
32158 : : emit_insn
32159 : : (gen_sse4_1_roundps (tmp, operands[1],
32160 : : operands[2]));
32161 : : emit_insn
32162 : : (gen_fix_truncv4sfv4si2 (operands[0], tmp));
32163 : : DONE;
32164 : : }
32165 : : #undef DONE
32166 : : #undef FAIL
32167 : : }
32168 : : static const uint8_t expand_encoding[] = {
32169 : : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32170 : : };
32171 : : return complete_seq (expand_encoding, operands);
32172 : : }
32173 : :
32174 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26010 */
32175 : : rtx
32176 : : gen_floorv4sf2 (const rtx operand0, const rtx operand1)
32177 : : {
32178 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32179 : : start_sequence ();
32180 : : {
32181 : : #define FAIL _Pragma ("GCC error \"floorv4sf2 cannot FAIL\"") (void)0
32182 : : #define DONE return end_sequence ()
32183 : : #line 26017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32184 : : operands[2] = GEN_INT (ROUND_FLOOR | ROUND_NO_EXC);
32185 : : #undef DONE
32186 : : #undef FAIL
32187 : : }
32188 : : static const uint8_t expand_encoding[] = {
32189 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01,
32190 : : 0x01, 0x01, 0x02, 0x5f
32191 : : };
32192 : : return complete_seq (expand_encoding, operands);
32193 : : }
32194 : :
32195 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26030 */
32196 : : rtx
32197 : : gen_lfloorv16sfv16si2 (const rtx operand0, const rtx operand1)
32198 : : {
32199 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32200 : : start_sequence ();
32201 : : {
32202 : : #define FAIL _Pragma ("GCC error \"lfloorv16sfv16si2 cannot FAIL\"") (void)0
32203 : : #define DONE return end_sequence ()
32204 : : #line 26034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32205 : : {
32206 : : rtx tmp = gen_reg_rtx (V16SFmode);
32207 : : emit_insn (gen_floorv16sf2 (tmp, operands[1]));
32208 : : emit_insn (gen_fix_truncv16sfv16si2 (operands[0], tmp));
32209 : : DONE;
32210 : : }
32211 : : #undef DONE
32212 : : #undef FAIL
32213 : : }
32214 : : static const uint8_t expand_encoding[] = {
32215 : : 0x02, 0x01, 0x00, 0x01, 0x01
32216 : : };
32217 : : return complete_seq (expand_encoding, operands);
32218 : : }
32219 : :
32220 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26041 */
32221 : : rtx
32222 : : gen_ceilv8sf2 (const rtx operand0, const rtx operand1)
32223 : : {
32224 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32225 : : start_sequence ();
32226 : : {
32227 : : #define FAIL _Pragma ("GCC error \"ceilv8sf2 cannot FAIL\"") (void)0
32228 : : #define DONE return end_sequence ()
32229 : : #line 26048 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32230 : : operands[2] = GEN_INT (ROUND_CEIL | ROUND_NO_EXC);
32231 : : #undef DONE
32232 : : #undef FAIL
32233 : : }
32234 : : static const uint8_t expand_encoding[] = {
32235 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01,
32236 : : 0x01, 0x01, 0x02, 0x5f
32237 : : };
32238 : : return complete_seq (expand_encoding, operands);
32239 : : }
32240 : :
32241 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26061 */
32242 : : rtx
32243 : : gen_lceilv4sfv4si2 (const rtx operand0, const rtx operand1)
32244 : : {
32245 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32246 : : start_sequence ();
32247 : : {
32248 : : #define FAIL _Pragma ("GCC error \"lceilv4sfv4si2 cannot FAIL\"") (void)0
32249 : : #define DONE return end_sequence ()
32250 : : #line 26065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32251 : : {
32252 : : rtx tmp = gen_reg_rtx (V4SFmode);
32253 : : emit_insn (gen_ceilv4sf2 (tmp, operands[1]));
32254 : : emit_insn (gen_fix_truncv4sfv4si2 (operands[0], tmp));
32255 : : DONE;
32256 : : }
32257 : : #undef DONE
32258 : : #undef FAIL
32259 : : }
32260 : : static const uint8_t expand_encoding[] = {
32261 : : 0x02, 0x01, 0x00, 0x01, 0x01
32262 : : };
32263 : : return complete_seq (expand_encoding, operands);
32264 : : }
32265 : :
32266 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26072 */
32267 : : rtx
32268 : : gen_btruncv8df2 (const rtx operand0, const rtx operand1)
32269 : : {
32270 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32271 : : start_sequence ();
32272 : : {
32273 : : #define FAIL _Pragma ("GCC error \"btruncv8df2 cannot FAIL\"") (void)0
32274 : : #define DONE return end_sequence ()
32275 : : #line 26079 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32276 : : operands[2] = GEN_INT (ROUND_TRUNC | ROUND_NO_EXC);
32277 : : #undef DONE
32278 : : #undef FAIL
32279 : : }
32280 : : static const uint8_t expand_encoding[] = {
32281 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x01,
32282 : : 0x01, 0x01, 0x02, 0x5f
32283 : : };
32284 : : return complete_seq (expand_encoding, operands);
32285 : : }
32286 : :
32287 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26081 */
32288 : : rtx
32289 : : gen_roundv4df2 (const rtx operand0, const rtx operand1)
32290 : : {
32291 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1 };
32292 : : start_sequence ();
32293 : : {
32294 : : #define FAIL _Pragma ("GCC error \"roundv4df2 cannot FAIL\"") (void)0
32295 : : #define DONE return end_sequence ()
32296 : : #line 26091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32297 : : {
32298 : : machine_mode scalar_mode;
32299 : : const struct real_format *fmt;
32300 : : REAL_VALUE_TYPE pred_half, half_minus_pred_half;
32301 : : rtx half, vec_half;
32302 : :
32303 : : scalar_mode = GET_MODE_INNER (V4DFmode);
32304 : :
32305 : : /* load nextafter (0.5, 0.0) */
32306 : : fmt = REAL_MODE_FORMAT (scalar_mode);
32307 : : real_2expN (&half_minus_pred_half, -(fmt->p) - 1, scalar_mode);
32308 : : real_arithmetic (&pred_half, MINUS_EXPR, &dconsthalf, &half_minus_pred_half);
32309 : : half = const_double_from_real_value (pred_half, scalar_mode);
32310 : :
32311 : : vec_half = ix86_build_const_vector (V4DFmode, true, half);
32312 : : vec_half = force_reg (V4DFmode, vec_half);
32313 : :
32314 : : operands[2] = gen_reg_rtx (V4DFmode);
32315 : : emit_insn (gen_copysignv4df3 (operands[2], vec_half, operands[1]));
32316 : :
32317 : : operands[3] = gen_reg_rtx (V4DFmode);
32318 : : operands[4] = GEN_INT (ROUND_TRUNC);
32319 : : }
32320 : : #undef DONE
32321 : : #undef FAIL
32322 : : }
32323 : : static const uint8_t expand_encoding[] = {
32324 : : 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x70, 0x01, 0x01,
32325 : : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02,
32326 : : 0x01, 0x03, 0x01, 0x04, 0x5f
32327 : : };
32328 : : return complete_seq (expand_encoding, operands);
32329 : : }
32330 : :
32331 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26137 */
32332 : : rtx
32333 : : gen_roundv16sf2_sfix (const rtx operand0, const rtx operand1)
32334 : : {
32335 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32336 : : start_sequence ();
32337 : : {
32338 : : #define FAIL return (end_sequence (), nullptr)
32339 : : #define DONE return end_sequence ()
32340 : : #line 26141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32341 : : {
32342 : : rtx tmp = gen_reg_rtx (V16SFmode);
32343 : :
32344 : : emit_insn (gen_roundv16sf2 (tmp, operands[1]));
32345 : :
32346 : : emit_insn
32347 : : (gen_fix_truncv16sfv16si2 (operands[0], tmp));
32348 : : DONE;
32349 : : }
32350 : : #undef DONE
32351 : : #undef FAIL
32352 : : }
32353 : : static const uint8_t expand_encoding[] = {
32354 : : 0x02, 0x01, 0x00, 0x01, 0x01
32355 : : };
32356 : : return complete_seq (expand_encoding, operands);
32357 : : }
32358 : :
32359 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26591 */
32360 : : extern rtx_insn *gen_split_3792 (rtx_insn *, rtx *);
32361 : : rtx_insn *
32362 : : gen_split_3792 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32363 : : {
32364 : : if (dump_file)
32365 : : fprintf (dump_file, "Splitting with gen_split_3792 (sse.md:26591)\n");
32366 : : start_sequence ();
32367 : : static const uint8_t expand_encoding[] = {
32368 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x4f, 0x01, 0x03,
32369 : : 0x01, 0x02, 0x01, 0x01
32370 : : };
32371 : : return complete_seq (expand_encoding, operands);
32372 : : }
32373 : :
32374 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26591 */
32375 : : extern rtx_insn *gen_split_3797 (rtx_insn *, rtx *);
32376 : : rtx_insn *
32377 : : gen_split_3797 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32378 : : {
32379 : : if (dump_file)
32380 : : fprintf (dump_file, "Splitting with gen_split_3797 (sse.md:26591)\n");
32381 : : start_sequence ();
32382 : : static const uint8_t expand_encoding[] = {
32383 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x57, 0x01, 0x03,
32384 : : 0x01, 0x02, 0x01, 0x01
32385 : : };
32386 : : return complete_seq (expand_encoding, operands);
32387 : : }
32388 : :
32389 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26591 */
32390 : : extern rtx_insn *gen_split_3806 (rtx_insn *, rtx *);
32391 : : rtx_insn *
32392 : : gen_split_3806 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32393 : : {
32394 : : if (dump_file)
32395 : : fprintf (dump_file, "Splitting with gen_split_3806 (sse.md:26591)\n");
32396 : : start_sequence ();
32397 : : static const uint8_t expand_encoding[] = {
32398 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x6c, 0x01, 0x03,
32399 : : 0x01, 0x02, 0x01, 0x01
32400 : : };
32401 : : return complete_seq (expand_encoding, operands);
32402 : : }
32403 : :
32404 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26603 */
32405 : : extern rtx_insn *gen_split_3816 (rtx_insn *, rtx *);
32406 : : rtx_insn *
32407 : : gen_split_3816 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32408 : : {
32409 : : if (dump_file)
32410 : : fprintf (dump_file, "Splitting with gen_split_3816 (sse.md:26603)\n");
32411 : : start_sequence ();
32412 : : static const uint8_t expand_encoding[] = {
32413 : : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x53, 0x01, 0x03,
32414 : : 0x01, 0x01, 0x01, 0x02
32415 : : };
32416 : : return complete_seq (expand_encoding, operands);
32417 : : }
32418 : :
32419 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26934 */
32420 : : rtx
32421 : : gen_rotrv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32422 : : {
32423 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32424 : : start_sequence ();
32425 : : {
32426 : : #define FAIL return (end_sequence (), nullptr)
32427 : : #define DONE return end_sequence ()
32428 : : #line 26940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32429 : : {
32430 : : /* If we were given a scalar, convert it to parallel */
32431 : : if (! const_0_to_15_operand (operands[2], SImode))
32432 : : {
32433 : : rtvec vs = rtvec_alloc (8);
32434 : : rtx par = gen_rtx_PARALLEL (V8HImode, vs);
32435 : : rtx neg = gen_reg_rtx (V8HImode);
32436 : : rtx reg = gen_reg_rtx (V8HImode);
32437 : : rtx op2 = operands[2];
32438 : : int i;
32439 : :
32440 : : if (GET_MODE (op2) != HImode)
32441 : : {
32442 : : op2 = gen_reg_rtx (HImode);
32443 : : convert_move (op2, operands[2], false);
32444 : : }
32445 : :
32446 : : for (i = 0; i < 8; i++)
32447 : : RTVEC_ELT (vs, i) = op2;
32448 : :
32449 : : emit_insn (gen_vec_initv8hihi (reg, par));
32450 : : emit_insn (gen_negv8hi2 (neg, reg));
32451 : : emit_insn (gen_xop_vrotlv8hi3 (operands[0], operands[1], neg));
32452 : : DONE;
32453 : : }
32454 : : }
32455 : : #undef DONE
32456 : : #undef FAIL
32457 : : }
32458 : : static const uint8_t expand_encoding[] = {
32459 : : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x50, 0x01, 0x01,
32460 : : 0x01, 0x02
32461 : : };
32462 : : return complete_seq (expand_encoding, operands);
32463 : : }
32464 : :
32465 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27060 */
32466 : : rtx
32467 : : gen_vlshrv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32468 : : {
32469 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32470 : : start_sequence ();
32471 : : {
32472 : : #define FAIL return (end_sequence (), nullptr)
32473 : : #define DONE return end_sequence ()
32474 : : #line 27066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32475 : : {
32476 : : if (!TARGET_AVX2)
32477 : : {
32478 : : rtx neg = gen_reg_rtx (V2DImode);
32479 : : emit_insn (gen_negv2di2 (neg, operands[2]));
32480 : : emit_insn (gen_xop_shlv2di3 (operands[0], operands[1], neg));
32481 : : DONE;
32482 : : }
32483 : : }
32484 : : #undef DONE
32485 : : #undef FAIL
32486 : : }
32487 : : static const uint8_t expand_encoding[] = {
32488 : : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x52, 0x01, 0x01,
32489 : : 0x01, 0x02
32490 : : };
32491 : : return complete_seq (expand_encoding, operands);
32492 : : }
32493 : :
32494 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27076 */
32495 : : rtx
32496 : : gen_vashrv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32497 : : {
32498 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32499 : : start_sequence ();
32500 : : {
32501 : : #define FAIL return (end_sequence (), nullptr)
32502 : : #define DONE return end_sequence ()
32503 : : #line 27082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32504 : : {
32505 : : if (V16HImode == V32QImode || V16HImode == V64QImode)
32506 : : {
32507 : : ix86_expand_vecop_qihi (ASHIFTRT, operands[0], operands[1], operands[2]);
32508 : : DONE;
32509 : : }
32510 : : }
32511 : : #undef DONE
32512 : : #undef FAIL
32513 : : }
32514 : : static const uint8_t expand_encoding[] = {
32515 : : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x55, 0x01, 0x01,
32516 : : 0x01, 0x02
32517 : : };
32518 : : return complete_seq (expand_encoding, operands);
32519 : : }
32520 : :
32521 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27208 */
32522 : : rtx
32523 : : gen_vashlv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32524 : : {
32525 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32526 : : start_sequence ();
32527 : : {
32528 : : #define FAIL return (end_sequence (), nullptr)
32529 : : #define DONE return end_sequence ()
32530 : : #line 27214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32531 : : {
32532 : : if (TARGET_XOP)
32533 : : {
32534 : : emit_insn (gen_xop_shav8hi3 (operands[0], operands[1], operands[2]));
32535 : : DONE;
32536 : : }
32537 : : else if (V8HImode == V16QImode)
32538 : : {
32539 : : ix86_expand_vecop_qihi (ASHIFT, operands[0], operands[1], operands[2]);
32540 : : DONE;
32541 : : }
32542 : : }
32543 : : #undef DONE
32544 : : #undef FAIL
32545 : : }
32546 : : static const uint8_t expand_encoding[] = {
32547 : : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x50, 0x01, 0x01,
32548 : : 0x01, 0x02
32549 : : };
32550 : : return complete_seq (expand_encoding, operands);
32551 : : }
32552 : :
32553 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27249 */
32554 : : rtx
32555 : : gen_vashlv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32556 : : {
32557 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32558 : : static const uint8_t expand_encoding[] = {
32559 : : 0x1f, 0x01, 0x00, 0x4d, 0x57, 0x01, 0x01, 0x01,
32560 : : 0x02
32561 : : };
32562 : : return expand_rtx (expand_encoding, operands);
32563 : : }
32564 : :
32565 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27343 */
32566 : : rtx
32567 : : gen_rotlv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32568 : : {
32569 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32570 : : start_sequence ();
32571 : : {
32572 : : #define FAIL return (end_sequence (), nullptr)
32573 : : #define DONE return end_sequence ()
32574 : : #line 27349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32575 : : {
32576 : : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2], ROTATE);
32577 : : emit_insn (gen_vgf2p8affineqb_v64qi (operands[0], operands[1], matrix,
32578 : : const0_rtx));
32579 : : DONE;
32580 : : }
32581 : : #undef DONE
32582 : : #undef FAIL
32583 : : }
32584 : : static const uint8_t expand_encoding[] = {
32585 : : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x59, 0x01, 0x01,
32586 : : 0x01, 0x02
32587 : : };
32588 : : return complete_seq (expand_encoding, operands);
32589 : : }
32590 : :
32591 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27343 */
32592 : : rtx
32593 : : gen_rotrv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32594 : : {
32595 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32596 : : start_sequence ();
32597 : : {
32598 : : #define FAIL return (end_sequence (), nullptr)
32599 : : #define DONE return end_sequence ()
32600 : : #line 27349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32601 : : {
32602 : : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2], ROTATERT);
32603 : : emit_insn (gen_vgf2p8affineqb_v64qi (operands[0], operands[1], matrix,
32604 : : const0_rtx));
32605 : : DONE;
32606 : : }
32607 : : #undef DONE
32608 : : #undef FAIL
32609 : : }
32610 : : static const uint8_t expand_encoding[] = {
32611 : : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x59, 0x01, 0x01,
32612 : : 0x01, 0x02
32613 : : };
32614 : : return complete_seq (expand_encoding, operands);
32615 : : }
32616 : :
32617 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27421 */
32618 : : extern rtx_insn *gen_split_3823 (rtx_insn *, rtx *);
32619 : : rtx_insn *
32620 : : gen_split_3823 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32621 : : {
32622 : : if (dump_file)
32623 : : fprintf (dump_file, "Splitting with gen_split_3823 (sse.md:27421)\n");
32624 : : start_sequence ();
32625 : : #define FAIL return (end_sequence (), nullptr)
32626 : : #define DONE return end_sequence ()
32627 : : #line 27430 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32628 : : ix86_expand_v2di_ashiftrt (operands); DONE;
32629 : : #undef DONE
32630 : : #undef FAIL
32631 : : static const uint8_t expand_encoding[] = {
32632 : : 0x01, 0x27, 0x00
32633 : : };
32634 : : return complete_seq (expand_encoding, operands);
32635 : : }
32636 : :
32637 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27890 */
32638 : : rtx
32639 : : gen_avx512f_vpermilv8df (const rtx operand0, const rtx operand1, const rtx operand2)
32640 : : {
32641 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32642 : : start_sequence ();
32643 : : {
32644 : : #define FAIL return (end_sequence (), nullptr)
32645 : : #define DONE return end_sequence ()
32646 : : #line 27896 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32647 : : {
32648 : : int mask = INTVAL (operands[2]);
32649 : : rtx perm[8];
32650 : :
32651 : : int i;
32652 : : for (i = 0; i < 8; i = i + 2)
32653 : : {
32654 : : perm[i] = GEN_INT (((mask >> i) & 1) + i);
32655 : : perm[i + 1] = GEN_INT (((mask >> (i + 1)) & 1) + i);
32656 : : }
32657 : :
32658 : : operands[2]
32659 : : = gen_rtx_PARALLEL (VOIDmode, gen_rtvec_v (8, perm));
32660 : : }
32661 : : #undef DONE
32662 : : #undef FAIL
32663 : : }
32664 : : static const uint8_t expand_encoding[] = {
32665 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x75, 0x01,
32666 : : 0x01, 0x01, 0x02
32667 : : };
32668 : : return complete_seq (expand_encoding, operands);
32669 : : }
32670 : :
32671 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27911 */
32672 : : rtx
32673 : : gen_avx512f_vpermilv16sf (const rtx operand0, const rtx operand1, const rtx operand2)
32674 : : {
32675 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32676 : : start_sequence ();
32677 : : {
32678 : : #define FAIL return (end_sequence (), nullptr)
32679 : : #define DONE return end_sequence ()
32680 : : #line 27917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32681 : : {
32682 : : int mask = INTVAL (operands[2]);
32683 : : rtx perm[16];
32684 : :
32685 : : int i;
32686 : : for (i = 0; i < 16; i = i + 4)
32687 : : {
32688 : : perm[i] = GEN_INT (((mask >> 0) & 3) + i);
32689 : : perm[i + 1] = GEN_INT (((mask >> 2) & 3) + i);
32690 : : perm[i + 2] = GEN_INT (((mask >> 4) & 3) + i);
32691 : : perm[i + 3] = GEN_INT (((mask >> 6) & 3) + i);
32692 : : }
32693 : :
32694 : : operands[2]
32695 : : = gen_rtx_PARALLEL (VOIDmode, gen_rtvec_v (16, perm));
32696 : : }
32697 : : #undef DONE
32698 : : #undef FAIL
32699 : : }
32700 : : static const uint8_t expand_encoding[] = {
32701 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x74, 0x01,
32702 : : 0x01, 0x01, 0x02
32703 : : };
32704 : : return complete_seq (expand_encoding, operands);
32705 : : }
32706 : :
32707 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27972 */
32708 : : rtx
32709 : : gen_avx512vl_permv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32710 : : {
32711 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32712 : : start_sequence ();
32713 : : {
32714 : : #define FAIL return (end_sequence (), nullptr)
32715 : : #define DONE return end_sequence ()
32716 : : #line 27979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32717 : : {
32718 : : int mask = INTVAL (operands[2]);
32719 : : emit_insn (gen_avx2_permv4df_1_mask (operands[0], operands[1],
32720 : : GEN_INT ((mask >> 0) & 3),
32721 : : GEN_INT ((mask >> 2) & 3),
32722 : : GEN_INT ((mask >> 4) & 3),
32723 : : GEN_INT ((mask >> 6) & 3),
32724 : : operands[3], operands[4]));
32725 : : DONE;
32726 : : }
32727 : : #undef DONE
32728 : : #undef FAIL
32729 : : }
32730 : : static const uint8_t expand_encoding[] = {
32731 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32732 : : 0x03, 0x01, 0x04
32733 : : };
32734 : : return complete_seq (expand_encoding, operands);
32735 : : }
32736 : :
32737 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28407 */
32738 : : extern rtx_insn *gen_split_3832 (rtx_insn *, rtx *);
32739 : : rtx_insn *
32740 : : gen_split_3832 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32741 : : {
32742 : : if (dump_file)
32743 : : fprintf (dump_file, "Splitting with gen_split_3832 (sse.md:28407)\n");
32744 : : start_sequence ();
32745 : : #define FAIL return (end_sequence (), nullptr)
32746 : : #define DONE return end_sequence ()
32747 : : #line 28420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32748 : : {
32749 : : emit_insn (gen_vec_setv4si_0 (gen_lowpart (V4SImode, operands[0]),
32750 : : CONST0_RTX (V4SImode),
32751 : : gen_lowpart (SImode, operands[1])));
32752 : : emit_insn (gen_avx2_pbroadcastv4si (operands[0],
32753 : : gen_lowpart (V4SImode,
32754 : : operands[0])));
32755 : : DONE;
32756 : : }
32757 : : #undef DONE
32758 : : #undef FAIL
32759 : : static const uint8_t expand_encoding[] = {
32760 : : 0x01, 0x27, 0x00
32761 : : };
32762 : : return complete_seq (expand_encoding, operands);
32763 : : }
32764 : :
32765 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28467 */
32766 : : extern rtx_insn *gen_split_3842 (rtx_insn *, rtx *);
32767 : : rtx_insn *
32768 : : gen_split_3842 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32769 : : {
32770 : : if (dump_file)
32771 : : fprintf (dump_file, "Splitting with gen_split_3842 (sse.md:28467)\n");
32772 : : start_sequence ();
32773 : : static const uint8_t expand_encoding[] = {
32774 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x55, 0x01,
32775 : : 0x01, 0x01, 0x01
32776 : : };
32777 : : return complete_seq (expand_encoding, operands);
32778 : : }
32779 : :
32780 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28613 */
32781 : : rtx
32782 : : gen_avx512f_vpermi2varv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32783 : : {
32784 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32785 : : start_sequence ();
32786 : : {
32787 : : #define FAIL return (end_sequence (), nullptr)
32788 : : #define DONE return end_sequence ()
32789 : : #line 28624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32790 : : {
32791 : : operands[2] = force_reg (V8DImode, operands[2]);
32792 : : operands[5] = gen_lowpart (V8DImode, operands[2]);
32793 : : }
32794 : : #undef DONE
32795 : : #undef FAIL
32796 : : }
32797 : : static const uint8_t expand_encoding[] = {
32798 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a,
32799 : : 0x5c, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32800 : : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32801 : : };
32802 : : return complete_seq (expand_encoding, operands);
32803 : : }
32804 : :
32805 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28613 */
32806 : : rtx
32807 : : gen_avx512vl_vpermi2varv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32808 : : {
32809 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32810 : : start_sequence ();
32811 : : {
32812 : : #define FAIL return (end_sequence (), nullptr)
32813 : : #define DONE return end_sequence ()
32814 : : #line 28624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32815 : : {
32816 : : operands[2] = force_reg (V2DImode, operands[2]);
32817 : : operands[5] = gen_lowpart (V2DFmode, operands[2]);
32818 : : }
32819 : : #undef DONE
32820 : : #undef FAIL
32821 : : }
32822 : : static const uint8_t expand_encoding[] = {
32823 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a,
32824 : : 0x6c, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32825 : : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32826 : : };
32827 : : return complete_seq (expand_encoding, operands);
32828 : : }
32829 : :
32830 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28661 */
32831 : : rtx
32832 : : gen_avx512f_vpermt2varv8df3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32833 : : {
32834 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32835 : : start_sequence ();
32836 : : {
32837 : : #define FAIL return (end_sequence (), nullptr)
32838 : : #define DONE return end_sequence ()
32839 : : #line 28668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32840 : : {
32841 : : emit_insn (gen_avx512f_vpermt2varv8df3_maskz_1 (
32842 : : operands[0], operands[1], operands[2], operands[3],
32843 : : CONST0_RTX (V8DFmode), operands[4]));
32844 : : DONE;
32845 : : }
32846 : : #undef DONE
32847 : : #undef FAIL
32848 : : }
32849 : : static const uint8_t expand_encoding[] = {
32850 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32851 : : 0x03, 0x01, 0x04
32852 : : };
32853 : : return complete_seq (expand_encoding, operands);
32854 : : }
32855 : :
32856 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28661 */
32857 : : rtx
32858 : : gen_avx512vl_vpermt2varv16hi3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32859 : : {
32860 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32861 : : start_sequence ();
32862 : : {
32863 : : #define FAIL return (end_sequence (), nullptr)
32864 : : #define DONE return end_sequence ()
32865 : : #line 28668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32866 : : {
32867 : : emit_insn (gen_avx512vl_vpermt2varv16hi3_maskz_1 (
32868 : : operands[0], operands[1], operands[2], operands[3],
32869 : : CONST0_RTX (V16HImode), operands[4]));
32870 : : DONE;
32871 : : }
32872 : : #undef DONE
32873 : : #undef FAIL
32874 : : }
32875 : : static const uint8_t expand_encoding[] = {
32876 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32877 : : 0x03, 0x01, 0x04
32878 : : };
32879 : : return complete_seq (expand_encoding, operands);
32880 : : }
32881 : :
32882 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28831 */
32883 : : rtx
32884 : : gen_avx512vl_vinsertv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
32885 : : {
32886 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
32887 : : start_sequence ();
32888 : : {
32889 : : #define FAIL return (end_sequence (), nullptr)
32890 : : #define DONE return end_sequence ()
32891 : : #line 28839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32892 : : {
32893 : : rtx (*insn)(rtx, rtx, rtx, rtx, rtx);
32894 : :
32895 : : switch (INTVAL (operands[3]))
32896 : : {
32897 : : case 0:
32898 : : insn = gen_vec_set_lo_v4di_mask;
32899 : : break;
32900 : : case 1:
32901 : : insn = gen_vec_set_hi_v4di_mask;
32902 : : break;
32903 : : default:
32904 : : gcc_unreachable ();
32905 : : }
32906 : :
32907 : : emit_insn (insn (operands[0], operands[1], operands[2], operands[4],
32908 : : operands[5]));
32909 : : DONE;
32910 : : }
32911 : : #undef DONE
32912 : : #undef FAIL
32913 : : }
32914 : : static const uint8_t expand_encoding[] = {
32915 : : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32916 : : 0x03, 0x01, 0x04, 0x01, 0x05
32917 : : };
32918 : : return complete_seq (expand_encoding, operands);
32919 : : }
32920 : :
32921 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
32922 : : rtx
32923 : : gen_maskloadv4div4di_1 (const rtx operand0, const rtx operand1, const rtx operand2)
32924 : : {
32925 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32926 : : static const uint8_t expand_encoding[] = {
32927 : : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x02, 0x01, 0x02,
32928 : : 0x01, 0x01, 0x30
32929 : : };
32930 : : return expand_rtx (expand_encoding, operands);
32931 : : }
32932 : :
32933 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29123 */
32934 : : rtx
32935 : : gen_maskloadv4sfv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32936 : : {
32937 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32938 : : start_sequence ();
32939 : : {
32940 : : #define FAIL _Pragma ("GCC error \"maskloadv4sfv4si cannot FAIL\"") (void)0
32941 : : #define DONE return end_sequence ()
32942 : : #line 29131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32943 : : {
32944 : : emit_insn (gen_maskloadv4sfv4si_1 (operands[0],
32945 : : operands[1],
32946 : : operands[2]));
32947 : : DONE;
32948 : : }
32949 : : #undef DONE
32950 : : #undef FAIL
32951 : : }
32952 : : static const uint8_t expand_encoding[] = {
32953 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
32954 : : 0x02, 0x01, 0x01, 0x01, 0x03, 0x30
32955 : : };
32956 : : return complete_seq (expand_encoding, operands);
32957 : : }
32958 : :
32959 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29138 */
32960 : : rtx
32961 : : gen_maskloadv4siqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32962 : : {
32963 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32964 : : static const uint8_t expand_encoding[] = {
32965 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
32966 : : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32967 : : 0x02
32968 : : };
32969 : : return expand_rtx (expand_encoding, operands);
32970 : : }
32971 : :
32972 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29148 */
32973 : : rtx
32974 : : gen_maskloadv64qidi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32975 : : {
32976 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32977 : : static const uint8_t expand_encoding[] = {
32978 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
32979 : : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32980 : : 0x02
32981 : : };
32982 : : return expand_rtx (expand_encoding, operands);
32983 : : }
32984 : :
32985 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29148 */
32986 : : rtx
32987 : : gen_maskloadv16bfhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32988 : : {
32989 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32990 : : static const uint8_t expand_encoding[] = {
32991 : : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x1a, 0x6d,
32992 : : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32993 : : 0x02
32994 : : };
32995 : : return expand_rtx (expand_encoding, operands);
32996 : : }
32997 : :
32998 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29167 */
32999 : : rtx
33000 : : gen_maskstorev4siqi (const rtx operand0, const rtx operand1, const rtx operand2)
33001 : : {
33002 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
33003 : : static const uint8_t expand_encoding[] = {
33004 : : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
33005 : : 0x01, 0x00, 0x01, 0x02, 0x30
33006 : : };
33007 : : return expand_rtx (expand_encoding, operands);
33008 : : }
33009 : :
33010 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29176 */
33011 : : rtx
33012 : : gen_maskstorev64qidi (const rtx operand0, const rtx operand1, const rtx operand2)
33013 : : {
33014 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
33015 : : static const uint8_t expand_encoding[] = {
33016 : : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01, 0x01,
33017 : : 0x01, 0x00, 0x01, 0x02, 0x30
33018 : : };
33019 : : return expand_rtx (expand_encoding, operands);
33020 : : }
33021 : :
33022 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29176 */
33023 : : rtx
33024 : : gen_maskstorev16bfhi (const rtx operand0, const rtx operand1, const rtx operand2)
33025 : : {
33026 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
33027 : : static const uint8_t expand_encoding[] = {
33028 : : 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x03, 0x01, 0x01,
33029 : : 0x01, 0x00, 0x01, 0x02, 0x30
33030 : : };
33031 : : return expand_rtx (expand_encoding, operands);
33032 : : }
33033 : :
33034 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29228 */
33035 : : extern rtx_insn *gen_split_3857 (rtx_insn *, rtx *);
33036 : : rtx_insn *
33037 : : gen_split_3857 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33038 : : {
33039 : : if (dump_file)
33040 : : fprintf (dump_file, "Splitting with gen_split_3857 (sse.md:29228)\n");
33041 : : start_sequence ();
33042 : : #define FAIL return (end_sequence (), nullptr)
33043 : : #define DONE return end_sequence ()
33044 : : #line 29239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33045 : : {
33046 : : if (constm1_operand (operands[2], V4SImode))
33047 : : emit_move_insn (operands[0], operands[1]);
33048 : : else
33049 : : emit_note (NOTE_INSN_DELETED);
33050 : :
33051 : : DONE;
33052 : : }
33053 : : #undef DONE
33054 : : #undef FAIL
33055 : : static const uint8_t expand_encoding[] = {
33056 : : 0x01, 0x27, 0x00
33057 : : };
33058 : : return complete_seq (expand_encoding, operands);
33059 : : }
33060 : :
33061 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29228 */
33062 : : extern rtx_insn *gen_split_3867 (rtx_insn *, rtx *);
33063 : : rtx_insn *
33064 : : gen_split_3867 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33065 : : {
33066 : : if (dump_file)
33067 : : fprintf (dump_file, "Splitting with gen_split_3867 (sse.md:29228)\n");
33068 : : start_sequence ();
33069 : : #define FAIL return (end_sequence (), nullptr)
33070 : : #define DONE return end_sequence ()
33071 : : #line 29239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33072 : : {
33073 : : if (constm1_operand (operands[2], V16SFmode))
33074 : : emit_move_insn (operands[0], operands[1]);
33075 : : else
33076 : : emit_note (NOTE_INSN_DELETED);
33077 : :
33078 : : DONE;
33079 : : }
33080 : : #undef DONE
33081 : : #undef FAIL
33082 : : static const uint8_t expand_encoding[] = {
33083 : : 0x01, 0x27, 0x00
33084 : : };
33085 : : return complete_seq (expand_encoding, operands);
33086 : : }
33087 : :
33088 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29248 */
33089 : : rtx
33090 : : gen_cbranchv16hi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33091 : : {
33092 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33093 : : start_sequence ();
33094 : : {
33095 : : #define FAIL return (end_sequence (), nullptr)
33096 : : #define DONE return end_sequence ()
33097 : : #line 29258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33098 : : {
33099 : : ix86_expand_branch (GET_CODE (operands[0]),
33100 : : operands[1], operands[2], operands[3]);
33101 : : DONE;
33102 : : }
33103 : : #undef DONE
33104 : : #undef FAIL
33105 : : }
33106 : : static const uint8_t expand_encoding[] = {
33107 : : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
33108 : : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
33109 : : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
33110 : : 0x00, 0x01, 0x03, 0x2f
33111 : : };
33112 : : return complete_seq (expand_encoding, operands);
33113 : : }
33114 : :
33115 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29307 */
33116 : : rtx
33117 : : gen_vec_initv64qiqi (const rtx operand0, const rtx operand1)
33118 : : {
33119 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33120 : : start_sequence ();
33121 : : {
33122 : : #define FAIL return (end_sequence (), nullptr)
33123 : : #define DONE return end_sequence ()
33124 : : #line 29311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33125 : : {
33126 : : ix86_expand_vector_init (false, operands[0], operands[1]);
33127 : : DONE;
33128 : : }
33129 : : #undef DONE
33130 : : #undef FAIL
33131 : : }
33132 : : static const uint8_t expand_encoding[] = {
33133 : : 0x02, 0x01, 0x00, 0x01, 0x01
33134 : : };
33135 : : return complete_seq (expand_encoding, operands);
33136 : : }
33137 : :
33138 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29307 */
33139 : : rtx
33140 : : gen_vec_initv8hihi (const rtx operand0, const rtx operand1)
33141 : : {
33142 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33143 : : start_sequence ();
33144 : : {
33145 : : #define FAIL return (end_sequence (), nullptr)
33146 : : #define DONE return end_sequence ()
33147 : : #line 29311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33148 : : {
33149 : : ix86_expand_vector_init (false, operands[0], operands[1]);
33150 : : DONE;
33151 : : }
33152 : : #undef DONE
33153 : : #undef FAIL
33154 : : }
33155 : : static const uint8_t expand_encoding[] = {
33156 : : 0x02, 0x01, 0x00, 0x01, 0x01
33157 : : };
33158 : : return complete_seq (expand_encoding, operands);
33159 : : }
33160 : :
33161 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29307 */
33162 : : rtx
33163 : : gen_vec_initv32bfbf (const rtx operand0, const rtx operand1)
33164 : : {
33165 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33166 : : start_sequence ();
33167 : : {
33168 : : #define FAIL return (end_sequence (), nullptr)
33169 : : #define DONE return end_sequence ()
33170 : : #line 29311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33171 : : {
33172 : : ix86_expand_vector_init (false, operands[0], operands[1]);
33173 : : DONE;
33174 : : }
33175 : : #undef DONE
33176 : : #undef FAIL
33177 : : }
33178 : : static const uint8_t expand_encoding[] = {
33179 : : 0x02, 0x01, 0x00, 0x01, 0x01
33180 : : };
33181 : : return complete_seq (expand_encoding, operands);
33182 : : }
33183 : :
33184 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29307 */
33185 : : rtx
33186 : : gen_vec_initv2titi (const rtx operand0, const rtx operand1)
33187 : : {
33188 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33189 : : start_sequence ();
33190 : : {
33191 : : #define FAIL return (end_sequence (), nullptr)
33192 : : #define DONE return end_sequence ()
33193 : : #line 29311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33194 : : {
33195 : : ix86_expand_vector_init (false, operands[0], operands[1]);
33196 : : DONE;
33197 : : }
33198 : : #undef DONE
33199 : : #undef FAIL
33200 : : }
33201 : : static const uint8_t expand_encoding[] = {
33202 : : 0x02, 0x01, 0x00, 0x01, 0x01
33203 : : };
33204 : : return complete_seq (expand_encoding, operands);
33205 : : }
33206 : :
33207 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29316 */
33208 : : rtx
33209 : : gen_vec_initv8div4di (const rtx operand0, const rtx operand1)
33210 : : {
33211 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33212 : : start_sequence ();
33213 : : {
33214 : : #define FAIL return (end_sequence (), nullptr)
33215 : : #define DONE return end_sequence ()
33216 : : #line 29320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33217 : : {
33218 : : ix86_expand_vector_init (false, operands[0], operands[1]);
33219 : : DONE;
33220 : : }
33221 : : #undef DONE
33222 : : #undef FAIL
33223 : : }
33224 : : static const uint8_t expand_encoding[] = {
33225 : : 0x02, 0x01, 0x00, 0x01, 0x01
33226 : : };
33227 : : return complete_seq (expand_encoding, operands);
33228 : : }
33229 : :
33230 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29316 */
33231 : : rtx
33232 : : gen_vec_initv4sfv2sf (const rtx operand0, const rtx operand1)
33233 : : {
33234 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33235 : : start_sequence ();
33236 : : {
33237 : : #define FAIL return (end_sequence (), nullptr)
33238 : : #define DONE return end_sequence ()
33239 : : #line 29320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33240 : : {
33241 : : ix86_expand_vector_init (false, operands[0], operands[1]);
33242 : : DONE;
33243 : : }
33244 : : #undef DONE
33245 : : #undef FAIL
33246 : : }
33247 : : static const uint8_t expand_encoding[] = {
33248 : : 0x02, 0x01, 0x00, 0x01, 0x01
33249 : : };
33250 : : return complete_seq (expand_encoding, operands);
33251 : : }
33252 : :
33253 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29325 */
33254 : : rtx
33255 : : gen_cond_ashlv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33256 : : {
33257 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33258 : : start_sequence ();
33259 : : {
33260 : : #define FAIL _Pragma ("GCC error \"cond_ashlv8hi cannot FAIL\"") (void)0
33261 : : #define DONE return end_sequence ()
33262 : : #line 29334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33263 : : {
33264 : : if (const_vec_duplicate_p (operands[3]))
33265 : : {
33266 : : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33267 : : operands[3] = lowpart_subreg (DImode, operands[3], HImode);
33268 : : emit_insn (gen_ashlv8hi3_mask (operands[0],
33269 : : operands[2],
33270 : : operands[3],
33271 : : operands[4],
33272 : : operands[1]));
33273 : : }
33274 : : else
33275 : : emit_insn (gen_avx512vl_ashlvv8hi_mask (operands[0],
33276 : : operands[2],
33277 : : operands[3],
33278 : : operands[4],
33279 : : operands[1]));
33280 : : DONE;
33281 : : }
33282 : : #undef DONE
33283 : : #undef FAIL
33284 : : }
33285 : : static const uint8_t expand_encoding[] = {
33286 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x4d,
33287 : : 0x50, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33288 : : 0x01
33289 : : };
33290 : : return complete_seq (expand_encoding, operands);
33291 : : }
33292 : :
33293 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29325 */
33294 : : rtx
33295 : : gen_cond_lshrv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33296 : : {
33297 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33298 : : start_sequence ();
33299 : : {
33300 : : #define FAIL return (end_sequence (), nullptr)
33301 : : #define DONE return end_sequence ()
33302 : : #line 29334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33303 : : {
33304 : : if (const_vec_duplicate_p (operands[3]))
33305 : : {
33306 : : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33307 : : operands[3] = lowpart_subreg (DImode, operands[3], SImode);
33308 : : emit_insn (gen_lshrv4si3_mask (operands[0],
33309 : : operands[2],
33310 : : operands[3],
33311 : : operands[4],
33312 : : operands[1]));
33313 : : }
33314 : : else
33315 : : emit_insn (gen_avx2_lshrvv4si_mask (operands[0],
33316 : : operands[2],
33317 : : operands[3],
33318 : : operands[4],
33319 : : operands[1]));
33320 : : DONE;
33321 : : }
33322 : : #undef DONE
33323 : : #undef FAIL
33324 : : }
33325 : : static const uint8_t expand_encoding[] = {
33326 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x50,
33327 : : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33328 : : 0x01
33329 : : };
33330 : : return complete_seq (expand_encoding, operands);
33331 : : }
33332 : :
33333 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29325 */
33334 : : rtx
33335 : : gen_cond_ashrv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33336 : : {
33337 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33338 : : start_sequence ();
33339 : : {
33340 : : #define FAIL return (end_sequence (), nullptr)
33341 : : #define DONE return end_sequence ()
33342 : : #line 29334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33343 : : {
33344 : : if (const_vec_duplicate_p (operands[3]))
33345 : : {
33346 : : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33347 : : operands[3] = lowpart_subreg (DImode, operands[3], DImode);
33348 : : emit_insn (gen_ashrv2di3_mask (operands[0],
33349 : : operands[2],
33350 : : operands[3],
33351 : : operands[4],
33352 : : operands[1]));
33353 : : }
33354 : : else
33355 : : emit_insn (gen_avx2_ashrvv2di_mask (operands[0],
33356 : : operands[2],
33357 : : operands[3],
33358 : : operands[4],
33359 : : operands[1]));
33360 : : DONE;
33361 : : }
33362 : : #undef DONE
33363 : : #undef FAIL
33364 : : }
33365 : : static const uint8_t expand_encoding[] = {
33366 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x4f,
33367 : : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33368 : : 0x01
33369 : : };
33370 : : return complete_seq (expand_encoding, operands);
33371 : : }
33372 : :
33373 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29509 */
33374 : : extern rtx_insn *gen_split_3888 (rtx_insn *, rtx *);
33375 : : rtx_insn *
33376 : : gen_split_3888 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33377 : : {
33378 : : if (dump_file)
33379 : : fprintf (dump_file, "Splitting with gen_split_3888 (sse.md:29509)\n");
33380 : : start_sequence ();
33381 : : #define FAIL return (end_sequence (), nullptr)
33382 : : #define DONE return end_sequence ()
33383 : : #line 29522 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33384 : : {
33385 : : operands[1] = gen_lowpart (V16HFmode, operands[1]);
33386 : : operands[5] = CONST0_RTX (V16HFmode);
33387 : : }
33388 : : #undef DONE
33389 : : #undef FAIL
33390 : : static const uint8_t expand_encoding[] = {
33391 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x73, 0x01,
33392 : : 0x01, 0x01, 0x05
33393 : : };
33394 : : return complete_seq (expand_encoding, operands);
33395 : : }
33396 : :
33397 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29509 */
33398 : : extern rtx_insn *gen_split_3898 (rtx_insn *, rtx *);
33399 : : rtx_insn *
33400 : : gen_split_3898 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33401 : : {
33402 : : if (dump_file)
33403 : : fprintf (dump_file, "Splitting with gen_split_3898 (sse.md:29509)\n");
33404 : : start_sequence ();
33405 : : #define FAIL return (end_sequence (), nullptr)
33406 : : #define DONE return end_sequence ()
33407 : : #line 29522 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33408 : : {
33409 : : operands[1] = gen_lowpart (V2DFmode, operands[1]);
33410 : : operands[5] = CONST0_RTX (V2DFmode);
33411 : : }
33412 : : #undef DONE
33413 : : #undef FAIL
33414 : : static const uint8_t expand_encoding[] = {
33415 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x70, 0x01,
33416 : : 0x01, 0x01, 0x05
33417 : : };
33418 : : return complete_seq (expand_encoding, operands);
33419 : : }
33420 : :
33421 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29714 */
33422 : : rtx
33423 : : gen_avx2_gathersiv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33424 : : {
33425 : : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33426 : : start_sequence ();
33427 : : {
33428 : : #define FAIL return (end_sequence (), nullptr)
33429 : : #define DONE return end_sequence ()
33430 : : #line 29729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33431 : : {
33432 : : operands[6]
33433 : : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33434 : : operands[5]), UNSPEC_VSIBADDR);
33435 : : }
33436 : : #undef DONE
33437 : : #undef FAIL
33438 : : }
33439 : : static const uint8_t expand_encoding[] = {
33440 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33441 : : 0x6b, 0x04, 0x01, 0x01, 0x36, 0x2d, 0x04, 0x06,
33442 : : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33443 : : 0x21, 0x00, 0x31, 0x6b
33444 : : };
33445 : : return complete_seq (expand_encoding, operands);
33446 : : }
33447 : :
33448 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29777 */
33449 : : rtx
33450 : : gen_avx2_gatherdiv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33451 : : {
33452 : : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33453 : : start_sequence ();
33454 : : {
33455 : : #define FAIL return (end_sequence (), nullptr)
33456 : : #define DONE return end_sequence ()
33457 : : #line 29792 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33458 : : {
33459 : : operands[6]
33460 : : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33461 : : operands[5]), UNSPEC_VSIBADDR);
33462 : : }
33463 : : #undef DONE
33464 : : #undef FAIL
33465 : : }
33466 : : static const uint8_t expand_encoding[] = {
33467 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33468 : : 0x6f, 0x04, 0x01, 0x01, 0x36, 0x2d, 0x04, 0x06,
33469 : : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33470 : : 0x21, 0x00, 0x31, 0x6f
33471 : : };
33472 : : return complete_seq (expand_encoding, operands);
33473 : : }
33474 : :
33475 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29892 */
33476 : : rtx
33477 : : gen_avx512vl_gathersiv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33478 : : {
33479 : : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33480 : : start_sequence ();
33481 : : {
33482 : : #define FAIL return (end_sequence (), nullptr)
33483 : : #define DONE return end_sequence ()
33484 : : #line 29905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33485 : : {
33486 : : operands[6]
33487 : : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33488 : : operands[5]), UNSPEC_VSIBADDR);
33489 : : }
33490 : : #undef DONE
33491 : : #undef FAIL
33492 : : }
33493 : : static const uint8_t expand_encoding[] = {
33494 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33495 : : 0x6b, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2d,
33496 : : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33497 : : };
33498 : : return complete_seq (expand_encoding, operands);
33499 : : }
33500 : :
33501 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29954 */
33502 : : rtx
33503 : : gen_avx512vl_gatherdiv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33504 : : {
33505 : : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33506 : : start_sequence ();
33507 : : {
33508 : : #define FAIL return (end_sequence (), nullptr)
33509 : : #define DONE return end_sequence ()
33510 : : #line 29967 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33511 : : {
33512 : : operands[6]
33513 : : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33514 : : operands[5]), UNSPEC_VSIBADDR);
33515 : : }
33516 : : #undef DONE
33517 : : #undef FAIL
33518 : : }
33519 : : static const uint8_t expand_encoding[] = {
33520 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33521 : : 0x70, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2e,
33522 : : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33523 : : };
33524 : : return complete_seq (expand_encoding, operands);
33525 : : }
33526 : :
33527 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30024 */
33528 : : rtx
33529 : : gen_avx512vl_scattersiv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33530 : : {
33531 : : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33532 : : start_sequence ();
33533 : : {
33534 : : #define FAIL return (end_sequence (), nullptr)
33535 : : #define DONE return end_sequence ()
33536 : : #line 30036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33537 : : {
33538 : : operands[5]
33539 : : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33540 : : operands[4], operands[1]),
33541 : : UNSPEC_VSIBADDR);
33542 : : }
33543 : : #undef DONE
33544 : : #undef FAIL
33545 : : }
33546 : : static const uint8_t expand_encoding[] = {
33547 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x6f, 0x04,
33548 : : 0x05, 0x1a, 0x6f, 0x02, 0x01, 0x01, 0x01, 0x03,
33549 : : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33550 : : };
33551 : : return complete_seq (expand_encoding, operands);
33552 : : }
33553 : :
33554 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30064 */
33555 : : rtx
33556 : : gen_avx512f_scatterdiv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33557 : : {
33558 : : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33559 : : start_sequence ();
33560 : : {
33561 : : #define FAIL return (end_sequence (), nullptr)
33562 : : #define DONE return end_sequence ()
33563 : : #line 30076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33564 : : {
33565 : : operands[5]
33566 : : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33567 : : operands[4], operands[1]),
33568 : : UNSPEC_VSIBADDR);
33569 : : }
33570 : : #undef DONE
33571 : : #undef FAIL
33572 : : }
33573 : : static const uint8_t expand_encoding[] = {
33574 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x75, 0x04,
33575 : : 0x05, 0x1a, 0x75, 0x02, 0x01, 0x01, 0x01, 0x03,
33576 : : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33577 : : };
33578 : : return complete_seq (expand_encoding, operands);
33579 : : }
33580 : :
33581 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30158 */
33582 : : rtx
33583 : : gen_avx512f_expandv16sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33584 : : {
33585 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33586 : : start_sequence ();
33587 : : {
33588 : : #define FAIL return (end_sequence (), nullptr)
33589 : : #define DONE return end_sequence ()
33590 : : #line 30166 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33591 : : operands[2] = CONST0_RTX (V16SFmode);
33592 : : #undef DONE
33593 : : #undef FAIL
33594 : : }
33595 : : static const uint8_t expand_encoding[] = {
33596 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01,
33597 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33598 : : };
33599 : : return complete_seq (expand_encoding, operands);
33600 : : }
33601 : :
33602 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30158 */
33603 : : rtx
33604 : : gen_avx512vl_expandv2di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33605 : : {
33606 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33607 : : start_sequence ();
33608 : : {
33609 : : #define FAIL return (end_sequence (), nullptr)
33610 : : #define DONE return end_sequence ()
33611 : : #line 30166 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33612 : : operands[2] = CONST0_RTX (V2DImode);
33613 : : #undef DONE
33614 : : #undef FAIL
33615 : : }
33616 : : static const uint8_t expand_encoding[] = {
33617 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01,
33618 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33619 : : };
33620 : : return complete_seq (expand_encoding, operands);
33621 : : }
33622 : :
33623 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30196 */
33624 : : extern rtx_insn *gen_split_3908 (rtx_insn *, rtx *);
33625 : : rtx_insn *
33626 : : gen_split_3908 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33627 : : {
33628 : : if (dump_file)
33629 : : fprintf (dump_file, "Splitting with gen_split_3908 (sse.md:30196)\n");
33630 : : start_sequence ();
33631 : : #define FAIL return (end_sequence (), nullptr)
33632 : : #define DONE return end_sequence ()
33633 : : #line 30208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33634 : : {
33635 : : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33636 : : bool has_zero = false;
33637 : : unsigned n = GET_MODE_NUNITS (V4SImode), i;
33638 : : unsigned ones = 0;
33639 : :
33640 : : /* If all ones bits is in mask's lower part,
33641 : : get number of ones and assign it to ONES. */
33642 : : for (i = 0; i != n; i++)
33643 : : {
33644 : : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33645 : : break;
33646 : :
33647 : : /* Record first zero bit. */
33648 : : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33649 : : {
33650 : : has_zero = true;
33651 : : ones = i;
33652 : : }
33653 : : }
33654 : :
33655 : : if (!has_zero)
33656 : : ones = n;
33657 : :
33658 : : if (i != n || (ones != 0 && ones != n))
33659 : : {
33660 : : rtx reg = gen_reg_rtx (QImode);
33661 : : emit_move_insn (reg, operands[3]);
33662 : : enum insn_code icode;
33663 : : if (i == n)
33664 : : /* For masks with all one bits in it's lower part,
33665 : : we can transform v{,p}expand* to vmovdq* with
33666 : : mask operand. */
33667 : : icode = CODE_FOR_avx512vl_loadv4si_mask;
33668 : : else
33669 : : icode = CODE_FOR_expandv4si_mask;
33670 : : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33671 : : }
33672 : : else
33673 : : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33674 : : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33675 : : DONE;
33676 : : }
33677 : : #undef DONE
33678 : : #undef FAIL
33679 : : static const uint8_t expand_encoding[] = {
33680 : : 0x01, 0x27, 0x00
33681 : : };
33682 : : return complete_seq (expand_encoding, operands);
33683 : : }
33684 : :
33685 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30252 */
33686 : : rtx
33687 : : gen_expandv64qi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33688 : : {
33689 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33690 : : start_sequence ();
33691 : : {
33692 : : #define FAIL return (end_sequence (), nullptr)
33693 : : #define DONE return end_sequence ()
33694 : : #line 30260 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33695 : : operands[2] = CONST0_RTX (V64QImode);
33696 : : #undef DONE
33697 : : #undef FAIL
33698 : : }
33699 : : static const uint8_t expand_encoding[] = {
33700 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01,
33701 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33702 : : };
33703 : : return complete_seq (expand_encoding, operands);
33704 : : }
33705 : :
33706 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30252 */
33707 : : rtx
33708 : : gen_expandv32qi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33709 : : {
33710 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33711 : : start_sequence ();
33712 : : {
33713 : : #define FAIL return (end_sequence (), nullptr)
33714 : : #define DONE return end_sequence ()
33715 : : #line 30260 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33716 : : operands[2] = CONST0_RTX (V32QImode);
33717 : : #undef DONE
33718 : : #undef FAIL
33719 : : }
33720 : : static const uint8_t expand_encoding[] = {
33721 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
33722 : : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33723 : : };
33724 : : return complete_seq (expand_encoding, operands);
33725 : : }
33726 : :
33727 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30588 */
33728 : : extern rtx_insn *gen_split_3919 (rtx_insn *, rtx *);
33729 : : rtx_insn *
33730 : : gen_split_3919 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33731 : : {
33732 : : if (dump_file)
33733 : : fprintf (dump_file, "Splitting with gen_split_3919 (sse.md:30588)\n");
33734 : : start_sequence ();
33735 : : #define FAIL return (end_sequence (), nullptr)
33736 : : #define DONE return end_sequence ()
33737 : : #line 30599 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33738 : : {
33739 : : if (REG_P (operands[0]))
33740 : : operands[0] = gen_lowpart (V4SFmode, operands[0]);
33741 : : else
33742 : : operands[1] = lowpart_subreg (V16SFmode, operands[1],
33743 : : V4SFmode);
33744 : : }
33745 : : #undef DONE
33746 : : #undef FAIL
33747 : : static const uint8_t expand_encoding[] = {
33748 : : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
33749 : : };
33750 : : return complete_seq (expand_encoding, operands);
33751 : : }
33752 : :
33753 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30733 */
33754 : : rtx
33755 : : gen_popcountv16si2 (const rtx operand0, const rtx operand1)
33756 : : {
33757 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33758 : : static const uint8_t expand_encoding[] = {
33759 : : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x5b, 0x01, 0x01
33760 : : };
33761 : : return expand_rtx (expand_encoding, operands);
33762 : : }
33763 : :
33764 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30783 */
33765 : : rtx
33766 : : gen_popcountv64qi2 (const rtx operand0, const rtx operand1)
33767 : : {
33768 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33769 : : static const uint8_t expand_encoding[] = {
33770 : : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x59, 0x01, 0x01
33771 : : };
33772 : : return expand_rtx (expand_encoding, operands);
33773 : : }
33774 : :
33775 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30895 */
33776 : : rtx
33777 : : gen_vpshrdv_v8di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33778 : : {
33779 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33780 : : start_sequence ();
33781 : : {
33782 : : #define FAIL return (end_sequence (), nullptr)
33783 : : #define DONE return end_sequence ()
33784 : : #line 30902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33785 : : {
33786 : : emit_insn (gen_vpshrdv_v8di_maskz_1 (operands[0], operands[1],
33787 : : operands[2], operands[3],
33788 : : CONST0_RTX (V8DImode),
33789 : : operands[4]));
33790 : : DONE;
33791 : : }
33792 : : #undef DONE
33793 : : #undef FAIL
33794 : : }
33795 : : static const uint8_t expand_encoding[] = {
33796 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33797 : : 0x03, 0x01, 0x04
33798 : : };
33799 : : return complete_seq (expand_encoding, operands);
33800 : : }
33801 : :
33802 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30952 */
33803 : : rtx
33804 : : gen_vpshldv_v8di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33805 : : {
33806 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33807 : : start_sequence ();
33808 : : {
33809 : : #define FAIL return (end_sequence (), nullptr)
33810 : : #define DONE return end_sequence ()
33811 : : #line 30959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33812 : : {
33813 : : emit_insn (gen_vpshldv_v8di_maskz_1 (operands[0], operands[1],
33814 : : operands[2], operands[3],
33815 : : CONST0_RTX (V8DImode),
33816 : : operands[4]));
33817 : : DONE;
33818 : : }
33819 : : #undef DONE
33820 : : #undef FAIL
33821 : : }
33822 : : static const uint8_t expand_encoding[] = {
33823 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33824 : : 0x03, 0x01, 0x04
33825 : : };
33826 : : return complete_seq (expand_encoding, operands);
33827 : : }
33828 : :
33829 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31070 */
33830 : : rtx
33831 : : gen_vpdpbusd_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33832 : : {
33833 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33834 : : start_sequence ();
33835 : : {
33836 : : #define FAIL return (end_sequence (), nullptr)
33837 : : #define DONE return end_sequence ()
33838 : : #line 31077 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33839 : : {
33840 : : emit_insn (gen_vpdpbusd_v16si_maskz_1 (operands[0], operands[1],
33841 : : operands[2], operands[3],
33842 : : CONST0_RTX (V16SImode),
33843 : : operands[4]));
33844 : : DONE;
33845 : : }
33846 : : #undef DONE
33847 : : #undef FAIL
33848 : : }
33849 : : static const uint8_t expand_encoding[] = {
33850 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33851 : : 0x03, 0x01, 0x04
33852 : : };
33853 : : return complete_seq (expand_encoding, operands);
33854 : : }
33855 : :
33856 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31208 */
33857 : : rtx
33858 : : gen_vpdpwssd_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33859 : : {
33860 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33861 : : start_sequence ();
33862 : : {
33863 : : #define FAIL return (end_sequence (), nullptr)
33864 : : #define DONE return end_sequence ()
33865 : : #line 31215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33866 : : {
33867 : : emit_insn (gen_vpdpwssd_v8si_maskz_1 (operands[0], operands[1],
33868 : : operands[2], operands[3],
33869 : : CONST0_RTX (V8SImode),
33870 : : operands[4]));
33871 : : DONE;
33872 : : }
33873 : : #undef DONE
33874 : : #undef FAIL
33875 : : }
33876 : : static const uint8_t expand_encoding[] = {
33877 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33878 : : 0x03, 0x01, 0x04
33879 : : };
33880 : : return complete_seq (expand_encoding, operands);
33881 : : }
33882 : :
33883 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31462 */
33884 : : rtx
33885 : : gen_avx512f_cvtne2ps2bf16_v32bf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33886 : : {
33887 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33888 : : start_sequence ();
33889 : : {
33890 : : #define FAIL return (end_sequence (), nullptr)
33891 : : #define DONE return end_sequence ()
33892 : : #line 31468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33893 : : {
33894 : : emit_insn (gen_avx512f_cvtne2ps2bf16_v32bf_mask(operands[0], operands[1],
33895 : : operands[2], CONST0_RTX(V32BFmode), operands[3]));
33896 : : DONE;
33897 : : }
33898 : : #undef DONE
33899 : : #undef FAIL
33900 : : }
33901 : : static const uint8_t expand_encoding[] = {
33902 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33903 : : 0x03
33904 : : };
33905 : : return complete_seq (expand_encoding, operands);
33906 : : }
33907 : :
33908 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31624 */
33909 : : rtx
33910 : : gen_extendv16bfv16sf2 (const rtx operand0, const rtx operand1)
33911 : : {
33912 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33913 : : start_sequence ();
33914 : : {
33915 : : #define FAIL return (end_sequence (), nullptr)
33916 : : #define DONE return end_sequence ()
33917 : : #line 31629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33918 : : {
33919 : : ix86_expand_vector_bf2sf_with_vec_perm (operands[0], operands[1]);
33920 : : DONE;
33921 : : }
33922 : : #undef DONE
33923 : : #undef FAIL
33924 : : }
33925 : : static const uint8_t expand_encoding[] = {
33926 : : 0x01, 0x1f, 0x01, 0x00, 0x71, 0x74, 0x01, 0x01
33927 : : };
33928 : : return complete_seq (expand_encoding, operands);
33929 : : }
33930 : :
33931 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31841 */
33932 : : rtx
33933 : : gen_aesencwide128klu8 (const rtx operand0)
33934 : : {
33935 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0 };
33936 : : start_sequence ();
33937 : : {
33938 : : #define FAIL return (end_sequence (), nullptr)
33939 : : #define DONE return end_sequence ()
33940 : : #line 31848 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33941 : : {
33942 : : rtx tmp_unspec;
33943 : : unsigned i;
33944 : :
33945 : : /* parallel rtx for widekl predicate */
33946 : : operands[1] = gen_rtx_PARALLEL (VOIDmode, rtvec_alloc (9));
33947 : :
33948 : : tmp_unspec
33949 : : = gen_rtx_UNSPEC_VOLATILE (CCZmode,
33950 : : gen_rtvec (1, operands[0]),
33951 : : UNSPECV_AESENCWIDE128KLU8);
33952 : :
33953 : : XVECEXP (operands[1], 0, 0)
33954 : : = gen_rtx_SET (gen_rtx_REG (CCZmode, FLAGS_REG),
33955 : : tmp_unspec);
33956 : :
33957 : : for (i = 0; i < 8; i++)
33958 : : {
33959 : : rtx xmm_reg = gen_rtx_REG (V2DImode, GET_SSE_REGNO (i));
33960 : :
33961 : : tmp_unspec
33962 : : = gen_rtx_UNSPEC_VOLATILE (V2DImode,
33963 : : gen_rtvec (1, xmm_reg),
33964 : : UNSPECV_AESENCWIDE128KLU8);
33965 : : XVECEXP (operands[1], 0, i + 1)
33966 : : = gen_rtx_SET (xmm_reg, tmp_unspec);
33967 : : }
33968 : : }
33969 : : #undef DONE
33970 : : #undef FAIL
33971 : : }
33972 : : static const uint8_t expand_encoding[] = {
33973 : : 0x01, 0x04, 0x01
33974 : : };
33975 : : return complete_seq (expand_encoding, operands);
33976 : : }
33977 : :
33978 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31905 */
33979 : : rtx
33980 : : gen_vec_duplicatev2di (const rtx operand0, const rtx operand1)
33981 : : {
33982 : : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33983 : : start_sequence ();
33984 : : {
33985 : : #define FAIL return (end_sequence (), nullptr)
33986 : : #define DONE return end_sequence ()
33987 : : #line 31910 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33988 : : {
33989 : : if (!ix86_expand_vector_init_duplicate (false,
33990 : : GET_MODE (operands[0]),
33991 : : operands[0],
33992 : : operands[1]))
33993 : : gcc_unreachable ();
33994 : : DONE;
33995 : : }
33996 : : #undef DONE
33997 : : #undef FAIL
33998 : : }
33999 : : static const uint8_t expand_encoding[] = {
34000 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x52, 0x01,
34001 : : 0x01
34002 : : };
34003 : : return complete_seq (expand_encoding, operands);
34004 : : }
34005 : :
34006 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32064 */
34007 : : rtx
34008 : : gen_vpdpbsuds_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34009 : : {
34010 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34011 : : start_sequence ();
34012 : : {
34013 : : #define FAIL return (end_sequence (), nullptr)
34014 : : #define DONE return end_sequence ()
34015 : : #line 32075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34016 : : operands[5] = CONST0_RTX (V16SImode);
34017 : : #undef DONE
34018 : : #undef FAIL
34019 : : }
34020 : : static const uint8_t expand_encoding[] = {
34021 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a,
34022 : : 0x5b, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34023 : : 0x81, 0x67, 0x01, 0x05, 0x01, 0x04
34024 : : };
34025 : : return complete_seq (expand_encoding, operands);
34026 : : }
34027 : :
34028 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32064 */
34029 : : rtx
34030 : : gen_vpdpbssds_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34031 : : {
34032 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34033 : : start_sequence ();
34034 : : {
34035 : : #define FAIL return (end_sequence (), nullptr)
34036 : : #define DONE return end_sequence ()
34037 : : #line 32075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34038 : : operands[5] = CONST0_RTX (V8SImode);
34039 : : #undef DONE
34040 : : #undef FAIL
34041 : : }
34042 : : static const uint8_t expand_encoding[] = {
34043 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
34044 : : 0x56, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34045 : : 0x81, 0x65, 0x01, 0x05, 0x01, 0x04
34046 : : };
34047 : : return complete_seq (expand_encoding, operands);
34048 : : }
34049 : :
34050 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32064 */
34051 : : rtx
34052 : : gen_vpdpbssds_v4si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34053 : : {
34054 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34055 : : start_sequence ();
34056 : : {
34057 : : #define FAIL return (end_sequence (), nullptr)
34058 : : #define DONE return end_sequence ()
34059 : : #line 32075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34060 : : operands[5] = CONST0_RTX (V4SImode);
34061 : : #undef DONE
34062 : : #undef FAIL
34063 : : }
34064 : : static const uint8_t expand_encoding[] = {
34065 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a,
34066 : : 0x51, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34067 : : 0x81, 0x65, 0x01, 0x05, 0x01, 0x04
34068 : : };
34069 : : return complete_seq (expand_encoding, operands);
34070 : : }
34071 : :
34072 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32243 */
34073 : : rtx
34074 : : gen_vcvtbiasph2bf8sv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34075 : : {
34076 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34077 : : start_sequence ();
34078 : : {
34079 : : #define FAIL return (end_sequence (), nullptr)
34080 : : #define DONE return end_sequence ()
34081 : : #line 32260 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34082 : : operands[5] = CONST0_RTX (V8QImode);
34083 : : #undef DONE
34084 : : #undef FAIL
34085 : : }
34086 : : static const uint8_t expand_encoding[] = {
34087 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81,
34088 : : 0x09, 0x48, 0x1a, 0x48, 0x02, 0x01, 0x01, 0x01,
34089 : : 0x02, 0x81, 0x77, 0x81, 0x0a, 0x48, 0x01, 0x03,
34090 : : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x01, 0x27,
34091 : : 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05, 0x27,
34092 : : 0x06, 0x27, 0x07, 0x01, 0x04, 0x01, 0x05
34093 : : };
34094 : : return complete_seq (expand_encoding, operands);
34095 : : }
34096 : :
34097 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32401 */
34098 : : rtx
34099 : : gen_usdot_prodv8siv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34100 : : {
34101 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34102 : : start_sequence ();
34103 : : {
34104 : : #define FAIL return (end_sequence (), nullptr)
34105 : : #define DONE return end_sequence ()
34106 : : #line 32407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34107 : : {
34108 : : operands[1] = lowpart_subreg (V8SImode,
34109 : : force_reg (V16HImode, operands[1]),
34110 : : V16HImode);
34111 : : operands[2] = lowpart_subreg (V8SImode,
34112 : : force_reg (V16HImode, operands[2]),
34113 : : V16HImode);
34114 : : emit_insn (gen_vpdpwusd_v8si (operands[0], operands[3],
34115 : : operands[1], operands[2]));
34116 : : DONE;
34117 : : }
34118 : : #undef DONE
34119 : : #undef FAIL
34120 : : }
34121 : : static const uint8_t expand_encoding[] = {
34122 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34123 : : 0x03
34124 : : };
34125 : : return complete_seq (expand_encoding, operands);
34126 : : }
34127 : :
34128 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32473 */
34129 : : rtx
34130 : : gen_vpdpwuuds_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34131 : : {
34132 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34133 : : start_sequence ();
34134 : : {
34135 : : #define FAIL return (end_sequence (), nullptr)
34136 : : #define DONE return end_sequence ()
34137 : : #line 32484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34138 : : operands[5] = CONST0_RTX (V16SImode);
34139 : : #undef DONE
34140 : : #undef FAIL
34141 : : }
34142 : : static const uint8_t expand_encoding[] = {
34143 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a,
34144 : : 0x5b, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34145 : : 0x81, 0x6f, 0x01, 0x05, 0x01, 0x04
34146 : : };
34147 : : return complete_seq (expand_encoding, operands);
34148 : : }
34149 : :
34150 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32473 */
34151 : : rtx
34152 : : gen_vpdpwsuds_v4si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34153 : : {
34154 : : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34155 : : start_sequence ();
34156 : : {
34157 : : #define FAIL return (end_sequence (), nullptr)
34158 : : #define DONE return end_sequence ()
34159 : : #line 32484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34160 : : operands[5] = CONST0_RTX (V4SImode);
34161 : : #undef DONE
34162 : : #undef FAIL
34163 : : }
34164 : : static const uint8_t expand_encoding[] = {
34165 : : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a,
34166 : : 0x51, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34167 : : 0x81, 0x6d, 0x01, 0x05, 0x01, 0x04
34168 : : };
34169 : : return complete_seq (expand_encoding, operands);
34170 : : }
34171 : :
34172 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32562 */
34173 : : rtx
34174 : : gen_sminv8bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
34175 : : {
34176 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34177 : : static const uint8_t expand_encoding[] = {
34178 : : 0x1f, 0x01, 0x00, 0x52, 0x69, 0x01, 0x01, 0x01,
34179 : : 0x02
34180 : : };
34181 : : return expand_rtx (expand_encoding, operands);
34182 : : }
34183 : :
34184 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32780 */
34185 : : rtx
34186 : : gen_avx10_2_fnmsubbf16_v32bf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34187 : : {
34188 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34189 : : start_sequence ();
34190 : : {
34191 : : #define FAIL return (end_sequence (), nullptr)
34192 : : #define DONE return end_sequence ()
34193 : : #line 32787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34194 : : {
34195 : : emit_insn (gen_avx10_2_fnmsubbf16_v32bf_maskz_1 (operands[0], operands[1],
34196 : : operands[2], operands[3],
34197 : : CONST0_RTX (V32BFmode),
34198 : : operands[4]));
34199 : : DONE;
34200 : : }
34201 : : #undef DONE
34202 : : #undef FAIL
34203 : : }
34204 : : static const uint8_t expand_encoding[] = {
34205 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34206 : : 0x03, 0x01, 0x04
34207 : : };
34208 : : return complete_seq (expand_encoding, operands);
34209 : : }
34210 : :
34211 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:162 */
34212 : : rtx
34213 : : gen_atomic_loaddi (const rtx operand0, const rtx operand1, const rtx operand2)
34214 : : {
34215 : : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34216 : : start_sequence ();
34217 : : {
34218 : : #define FAIL return (end_sequence (), nullptr)
34219 : : #define DONE return end_sequence ()
34220 : : #line 168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34221 : : {
34222 : : /* For DImode on 32-bit, we can use the FPU to perform the load. */
34223 : : if (DImode == DImode && !TARGET_64BIT)
34224 : : emit_insn (gen_atomic_loaddi_fpu
34225 : : (operands[0], operands[1],
34226 : : assign_stack_temp (DImode, GET_MODE_SIZE (DImode))));
34227 : : else
34228 : : {
34229 : : rtx dst = operands[0];
34230 : :
34231 : : if (MEM_P (dst))
34232 : : dst = gen_reg_rtx (DImode);
34233 : :
34234 : : emit_move_insn (dst, operands[1]);
34235 : :
34236 : : /* Fix up the destination if needed. */
34237 : : if (dst != operands[0])
34238 : : emit_move_insn (operands[0], dst);
34239 : : }
34240 : : DONE;
34241 : : }
34242 : : #undef DONE
34243 : : #undef FAIL
34244 : : }
34245 : : static const uint8_t expand_encoding[] = {
34246 : : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x01,
34247 : : 0x01, 0x01, 0x02, 0x82, 0x20
34248 : : };
34249 : : return complete_seq (expand_encoding, operands);
34250 : : }
34251 : :
34252 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:424 */
34253 : : rtx
34254 : : gen_atomic_compare_and_swapdi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7)
34255 : : {
34256 : : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
34257 : : start_sequence ();
34258 : : {
34259 : : #define FAIL return (end_sequence (), nullptr)
34260 : : #define DONE return end_sequence ()
34261 : : #line 434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34262 : : {
34263 : : int doubleword = !(DImode == DImode && TARGET_64BIT);
34264 : : if (TARGET_RELAX_CMPXCHG_LOOP)
34265 : : {
34266 : : ix86_expand_cmpxchg_loop (&operands[0], operands[1], operands[2],
34267 : : operands[3], operands[4], operands[6],
34268 : : doubleword, NULL);
34269 : : }
34270 : : else
34271 : : {
34272 : : if (!doubleword)
34273 : : {
34274 : : emit_insn
34275 : : (gen_atomic_compare_and_swapdi_1
34276 : : (operands[1], operands[2], operands[3], operands[4], operands[6]));
34277 : : }
34278 : : else
34279 : : {
34280 : : machine_mode hmode = SImode;
34281 : :
34282 : : emit_insn
34283 : : (gen_atomic_compare_and_swapdi_doubleword
34284 : : (operands[1], operands[2], operands[3],
34285 : : gen_lowpart (hmode, operands[4]), gen_highpart (hmode, operands[4]),
34286 : : operands[6]));
34287 : : }
34288 : :
34289 : : ix86_expand_setcc (operands[0], EQ, gen_rtx_REG (CCZmode, FLAGS_REG),
34290 : : const0_rtx);
34291 : : }
34292 : : DONE;
34293 : : }
34294 : : #undef DONE
34295 : : #undef FAIL
34296 : : }
34297 : : static const uint8_t expand_encoding[] = {
34298 : : 0x08, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34299 : : 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06, 0x01,
34300 : : 0x07
34301 : : };
34302 : : return complete_seq (expand_encoding, operands);
34303 : : }
34304 : :
34305 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:539 */
34306 : : extern rtx_insn *gen_peephole2_443 (rtx_insn *, rtx *);
34307 : : rtx_insn *
34308 : : gen_peephole2_443 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34309 : : {
34310 : : if (dump_file)
34311 : : fprintf (dump_file, "Splitting with gen_peephole2_443 (sync.md:539)\n");
34312 : : start_sequence ();
34313 : : static const uint8_t expand_encoding[] = {
34314 : : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
34315 : : 0x01, 0x05, 0x02, 0x11, 0x17, 0x00, 0x03, 0x1f,
34316 : : 0x01, 0x02, 0x1b, 0x11, 0x04, 0x01, 0x03, 0x01,
34317 : : 0x02, 0x01, 0x04, 0x01, 0x05, 0x6d, 0x1f, 0x01,
34318 : : 0x03, 0x1b, 0x11, 0x01, 0x27, 0x00, 0x6d, 0x1f,
34319 : : 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01, 0x27, 0x00,
34320 : : 0x6d
34321 : : };
34322 : : return complete_seq (expand_encoding, operands);
34323 : : }
34324 : :
34325 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:573 */
34326 : : rtx
34327 : : gen_atomic_fetch_andsi (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 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34335 : : {
34336 : : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34337 : : operands[2], AND, false,
34338 : : false);
34339 : : DONE;
34340 : : }
34341 : : #undef DONE
34342 : : #undef FAIL
34343 : : }
34344 : : static const uint8_t expand_encoding[] = {
34345 : : 0x03, 0x01, 0x00, 0x49, 0x11, 0x01, 0x01, 0x01,
34346 : : 0x02, 0x01, 0x03
34347 : : };
34348 : : return complete_seq (expand_encoding, operands);
34349 : : }
34350 : :
34351 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:587 */
34352 : : rtx
34353 : : gen_atomic_or_fetchsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34354 : : {
34355 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34356 : : start_sequence ();
34357 : : {
34358 : : #define FAIL return (end_sequence (), nullptr)
34359 : : #define DONE return end_sequence ()
34360 : : #line 594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34361 : : {
34362 : : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34363 : : operands[2], IOR, true,
34364 : : false);
34365 : : DONE;
34366 : : }
34367 : : #undef DONE
34368 : : #undef FAIL
34369 : : }
34370 : : static const uint8_t expand_encoding[] = {
34371 : : 0x03, 0x01, 0x00, 0x4a, 0x11, 0x01, 0x01, 0x01,
34372 : : 0x02, 0x01, 0x03
34373 : : };
34374 : : return complete_seq (expand_encoding, operands);
34375 : : }
34376 : :
34377 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:627 */
34378 : : rtx
34379 : : gen_atomic_fetch_xordi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34380 : : {
34381 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34382 : : start_sequence ();
34383 : : {
34384 : : #define FAIL return (end_sequence (), nullptr)
34385 : : #define DONE return end_sequence ()
34386 : : #line 634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34387 : : {
34388 : : bool doubleword = (DImode == DImode && !TARGET_64BIT)
34389 : : || (DImode == TImode);
34390 : : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34391 : : operands[2], XOR, false,
34392 : : doubleword);
34393 : : DONE;
34394 : : }
34395 : : #undef DONE
34396 : : #undef FAIL
34397 : : }
34398 : : static const uint8_t expand_encoding[] = {
34399 : : 0x03, 0x01, 0x00, 0x4b, 0x12, 0x01, 0x01, 0x01,
34400 : : 0x02, 0x01, 0x03
34401 : : };
34402 : : return complete_seq (expand_encoding, operands);
34403 : : }
34404 : :
34405 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:659 */
34406 : : rtx
34407 : : gen_atomic_fetch_nanddi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34408 : : {
34409 : : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34410 : : start_sequence ();
34411 : : {
34412 : : #define FAIL return (end_sequence (), nullptr)
34413 : : #define DONE return end_sequence ()
34414 : : #line 665 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34415 : : {
34416 : : bool doubleword = (DImode == DImode && !TARGET_64BIT)
34417 : : || (DImode == TImode);
34418 : : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34419 : : operands[2], NOT, false,
34420 : : doubleword);
34421 : : DONE;
34422 : : }
34423 : : #undef DONE
34424 : : #undef FAIL
34425 : : }
34426 : : static const uint8_t expand_encoding[] = {
34427 : : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34428 : : 0x03
34429 : : };
34430 : : return complete_seq (expand_encoding, operands);
34431 : : }
34432 : :
34433 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:738 */
34434 : : extern rtx_insn *gen_peephole2_453 (rtx_insn *, rtx *);
34435 : : rtx_insn *
34436 : : gen_peephole2_453 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34437 : : {
34438 : : if (dump_file)
34439 : : fprintf (dump_file, "Splitting with gen_peephole2_453 (sync.md:738)\n");
34440 : : start_sequence ();
34441 : : static const uint8_t expand_encoding[] = {
34442 : : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
34443 : : 0x3a, 0x0c, 0x1b, 0x11, 0x02, 0x01, 0x01, 0x01,
34444 : : 0x04, 0x6e, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x3b,
34445 : : 0x11, 0x01, 0x01, 0x01, 0x02
34446 : : };
34447 : : return complete_seq (expand_encoding, operands);
34448 : : }
34449 : :
34450 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:964 */
34451 : : rtx
34452 : : gen_atomic_bit_test_and_resetdi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34453 : : {
34454 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34455 : : start_sequence ();
34456 : : {
34457 : : #define FAIL return (end_sequence (), nullptr)
34458 : : #define DONE return end_sequence ()
34459 : : #line 971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34460 : : {
34461 : : emit_insn (gen_atomic_bit_test_and_resetdi_1 (operands[1], operands[2],
34462 : : operands[3]));
34463 : : rtx tem = gen_reg_rtx (QImode);
34464 : : ix86_expand_setcc (tem, EQ, gen_rtx_REG (CCCmode, FLAGS_REG), const0_rtx);
34465 : : rtx result = convert_modes (DImode, QImode, tem, 1);
34466 : : if (operands[4] == const0_rtx)
34467 : : result = expand_simple_binop (DImode, ASHIFT, result,
34468 : : operands[2], operands[0], 0, OPTAB_WIDEN);
34469 : : if (result != operands[0])
34470 : : emit_move_insn (operands[0], result);
34471 : : DONE;
34472 : : }
34473 : : #undef DONE
34474 : : #undef FAIL
34475 : : }
34476 : : static const uint8_t expand_encoding[] = {
34477 : : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34478 : : 0x03, 0x01, 0x04
34479 : : };
34480 : : return complete_seq (expand_encoding, operands);
34481 : : }
34482 : :
34483 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1074 */
34484 : : rtx
34485 : : gen_atomic_xor_fetch_cmp_0qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34486 : : {
34487 : : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34488 : : start_sequence ();
34489 : : {
34490 : : #define FAIL return (end_sequence (), nullptr)
34491 : : #define DONE return end_sequence ()
34492 : : #line 1081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34493 : : {
34494 : : emit_insn (gen_atomic_xor_fetch_cmp_0qi_1 (operands[1], operands[2],
34495 : : operands[3]));
34496 : : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34497 : : gen_rtx_REG (CCNOmode, FLAGS_REG), const0_rtx);
34498 : : DONE;
34499 : : }
34500 : : #undef DONE
34501 : : #undef FAIL
34502 : : }
34503 : : static const uint8_t expand_encoding[] = {
34504 : : 0x04, 0x01, 0x00, 0x4b, 0x0f, 0x01, 0x01, 0x01,
34505 : : 0x02, 0x01, 0x03, 0x01, 0x04
34506 : : };
34507 : : return complete_seq (expand_encoding, operands);
34508 : : }
34509 : :
34510 : : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1131 */
34511 : : extern rtx_insn *gen_peephole2_455 (rtx_insn *, rtx *);
34512 : : rtx_insn *
34513 : : gen_peephole2_455 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34514 : : {
34515 : : if (dump_file)
34516 : : fprintf (dump_file, "Splitting with gen_peephole2_455 (sync.md:1131)\n");
34517 : : start_sequence ();
34518 : : static const uint8_t expand_encoding[] = {
34519 : : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
34520 : : 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x04, 0x01,
34521 : : 0x02, 0x01, 0x00, 0x01, 0x03, 0x01, 0x04, 0x70,
34522 : : 0x1f, 0x01, 0x02, 0x1b, 0x11, 0x01, 0x27, 0x00,
34523 : : 0x70, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
34524 : : 0x02, 0x01, 0x00, 0x1f, 0x01, 0x07, 0x02, 0x08,
34525 : : 0x01, 0x09, 0x27, 0x00
34526 : : };
34527 : : return complete_seq (expand_encoding, operands);
34528 : : }
34529 : :
|