File: | objdir/gcc/insn-output.cc |
Warning: | line 12805, column 3 Value stored to 'suffix' is never read |
Press '?' to see keyboard shortcuts
Keyboard shortcuts:
1 | /* Generated automatically by the program `genoutput' |
2 | from the machine description file `md'. */ |
3 | |
4 | #define IN_TARGET_CODE1 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 "flags.h" |
13 | #include "alias.h" |
14 | #include "varasm.h" |
15 | #include "stor-layout.h" |
16 | #include "calls.h" |
17 | #include "insn-config.h" |
18 | #include "expmed.h" |
19 | #include "dojump.h" |
20 | #include "explow.h" |
21 | #include "memmodel.h" |
22 | #include "emit-rtl.h" |
23 | #include "stmt.h" |
24 | #include "expr.h" |
25 | #include "insn-codes.h" |
26 | #include "tm_p.h" |
27 | #include "regs.h" |
28 | #include "conditions.h" |
29 | #include "insn-attr.h" |
30 | |
31 | #include "recog.h" |
32 | |
33 | #include "diagnostic-core.h" |
34 | #include "output.h" |
35 | #include "target.h" |
36 | #include "tm-constrs.h" |
37 | |
38 | static const char * const output_1[] = { |
39 | "test{b}\t%0, %0", |
40 | "cmp{b}\t{%1, %0|%0, %1}", |
41 | "kortestb\t%0, %0", |
42 | }; |
43 | |
44 | static const char * const output_2[] = { |
45 | "test{w}\t%0, %0", |
46 | "cmp{w}\t{%1, %0|%0, %1}", |
47 | "kortestw\t%0, %0", |
48 | }; |
49 | |
50 | static const char * const output_3[] = { |
51 | "test{l}\t%0, %0", |
52 | "cmp{l}\t{%1, %0|%0, %1}", |
53 | "kortestd\t%0, %0", |
54 | }; |
55 | |
56 | static const char * const output_4[] = { |
57 | "test{q}\t%0, %0", |
58 | "cmp{q}\t{%1, %0|%0, %1}", |
59 | "kortestq\t%0, %0", |
60 | }; |
61 | |
62 | static const char * const output_5[] = { |
63 | "test{b}\t%0, %0", |
64 | "cmp{b}\t{%1, %0|%0, %1}", |
65 | }; |
66 | |
67 | static const char * const output_6[] = { |
68 | "test{w}\t%0, %0", |
69 | "cmp{w}\t{%1, %0|%0, %1}", |
70 | }; |
71 | |
72 | static const char * const output_7[] = { |
73 | "test{l}\t%0, %0", |
74 | "cmp{l}\t{%1, %0|%0, %1}", |
75 | }; |
76 | |
77 | static const char * const output_8[] = { |
78 | "test{q}\t%0, %0", |
79 | "cmp{q}\t{%1, %0|%0, %1}", |
80 | }; |
81 | |
82 | static const char * |
83 | output_31 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
84 | { |
85 | #line 1776 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
86 | return output_fp_compare (insn, operands, false, false); |
87 | } |
88 | |
89 | static const char * |
90 | output_32 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
91 | { |
92 | #line 1789 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
93 | return output_fp_compare (insn, operands, false, false); |
94 | } |
95 | |
96 | static const char * |
97 | output_33 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
98 | { |
99 | #line 1789 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
100 | return output_fp_compare (insn, operands, false, false); |
101 | } |
102 | |
103 | static const char * |
104 | output_34 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
105 | { |
106 | #line 1805 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
107 | return output_fp_compare (insn, operands, false, false); |
108 | } |
109 | |
110 | static const char * |
111 | output_35 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
112 | { |
113 | #line 1805 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
114 | return output_fp_compare (insn, operands, false, false); |
115 | } |
116 | |
117 | static const char * |
118 | output_36 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
119 | { |
120 | #line 1805 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
121 | return output_fp_compare (insn, operands, false, false); |
122 | } |
123 | |
124 | static const char * |
125 | output_37 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
126 | { |
127 | #line 1805 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
128 | return output_fp_compare (insn, operands, false, false); |
129 | } |
130 | |
131 | static const char * |
132 | output_38 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
133 | { |
134 | #line 1805 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
135 | return output_fp_compare (insn, operands, false, false); |
136 | } |
137 | |
138 | static const char * |
139 | output_39 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
140 | { |
141 | #line 1805 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
142 | return output_fp_compare (insn, operands, false, false); |
143 | } |
144 | |
145 | static const char * |
146 | output_40 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
147 | { |
148 | #line 1821 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
149 | return output_fp_compare (insn, operands, false, true); |
150 | } |
151 | |
152 | static const char * |
153 | output_41 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
154 | { |
155 | #line 1821 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
156 | return output_fp_compare (insn, operands, false, true); |
157 | } |
158 | |
159 | static const char * |
160 | output_42 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
161 | { |
162 | #line 1821 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
163 | return output_fp_compare (insn, operands, false, true); |
164 | } |
165 | |
166 | static const char * |
167 | output_43 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
168 | { |
169 | #line 1834 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
170 | { |
171 | #ifndef HAVE_AS_IX86_SAHF1 |
172 | if (TARGET_64BIT((global_options.x_ix86_isa_flags & (1UL << 1)) != 0 )) |
173 | return ASM_BYTE"\t.byte\t" "0x9e"; |
174 | else |
175 | #endif |
176 | return "sahf"; |
177 | } |
178 | } |
179 | |
180 | static const char * |
181 | output_44 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
182 | { |
183 | #line 1869 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
184 | return output_fp_compare (insn, operands, true, false); |
185 | } |
186 | |
187 | static const char * |
188 | output_45 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
189 | { |
190 | #line 1869 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
191 | return output_fp_compare (insn, operands, true, true); |
192 | } |
193 | |
194 | static const char * |
195 | output_46 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
196 | { |
197 | switch (which_alternative) |
198 | { |
199 | case 0: |
200 | return output_fp_compare (insn, operands, true, false); |
201 | case 1: return "%vcomiss\t{%1, %0|%0, %1}"; |
202 | default: gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 1880, __FUNCTION__)); |
203 | } |
204 | } |
205 | |
206 | static const char * |
207 | output_47 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
208 | { |
209 | switch (which_alternative) |
210 | { |
211 | case 0: |
212 | return output_fp_compare (insn, operands, true, true); |
213 | case 1: return "%vucomiss\t{%1, %0|%0, %1}"; |
214 | default: gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 1892, __FUNCTION__)); |
215 | } |
216 | } |
217 | |
218 | static const char * |
219 | output_48 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
220 | { |
221 | switch (which_alternative) |
222 | { |
223 | case 0: |
224 | return output_fp_compare (insn, operands, true, false); |
225 | case 1: return "%vcomisd\t{%1, %0|%0, %1}"; |
226 | default: gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 1904, __FUNCTION__)); |
227 | } |
228 | } |
229 | |
230 | static const char * |
231 | output_49 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
232 | { |
233 | switch (which_alternative) |
234 | { |
235 | case 0: |
236 | return output_fp_compare (insn, operands, true, true); |
237 | case 1: return "%vucomisd\t{%1, %0|%0, %1}"; |
238 | default: gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 1916, __FUNCTION__)); |
239 | } |
240 | } |
241 | |
242 | static const char * const output_56[] = { |
243 | "push{q}\t%1", |
244 | "#", |
245 | "#", |
246 | }; |
247 | |
248 | static const char * const output_57[] = { |
249 | "push{q}\t%q1", |
250 | "#", |
251 | }; |
252 | |
253 | static const char * const output_58[] = { |
254 | "push{l}\t%1", |
255 | "#", |
256 | }; |
257 | |
258 | static const char * |
259 | output_59 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
260 | { |
261 | #line 2041 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
262 | return TARGET_64BIT((global_options.x_ix86_isa_flags & (1UL << 1)) != 0 ) ? "push{q}\t%q1" : "push{l}\t%k1"; |
263 | } |
264 | |
265 | static const char * |
266 | output_60 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
267 | { |
268 | #line 2041 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
269 | return TARGET_64BIT((global_options.x_ix86_isa_flags & (1UL << 1)) != 0 ) ? "push{q}\t%q1" : "push{l}\t%k1"; |
270 | } |
271 | |
272 | static const char * |
273 | output_79 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
274 | { |
275 | #line 2209 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
276 | { |
277 | switch (get_attr_type (insn)) |
278 | { |
279 | case TYPE_SSELOG1: |
280 | return standard_sse_constant_opcode (insn, operands); |
281 | |
282 | case TYPE_SSEMOV: |
283 | return ix86_output_ssemov (insn, operands); |
284 | |
285 | default: |
286 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2219, __FUNCTION__)); |
287 | } |
288 | } |
289 | } |
290 | |
291 | static const char * |
292 | output_80 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
293 | { |
294 | #line 2232 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
295 | { |
296 | switch (get_attr_type (insn)) |
297 | { |
298 | case TYPE_SSELOG1: |
299 | return standard_sse_constant_opcode (insn, operands); |
300 | |
301 | case TYPE_SSEMOV: |
302 | return ix86_output_ssemov (insn, operands); |
303 | |
304 | default: |
305 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2242, __FUNCTION__)); |
306 | } |
307 | } |
308 | } |
309 | |
310 | static const char * |
311 | output_81 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
312 | { |
313 | #line 2259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
314 | { |
315 | switch (get_attr_type (insn)) |
316 | { |
317 | case TYPE_MULTI: |
318 | return "#"; |
319 | |
320 | case TYPE_SSELOG1: |
321 | return standard_sse_constant_opcode (insn, operands); |
322 | |
323 | case TYPE_SSEMOV: |
324 | return ix86_output_ssemov (insn, operands); |
325 | |
326 | default: |
327 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2272, __FUNCTION__)); |
328 | } |
329 | } |
330 | } |
331 | |
332 | static const char * |
333 | output_82 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
334 | { |
335 | #line 2339 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
336 | { |
337 | switch (get_attr_type (insn)) |
338 | { |
339 | case TYPE_MSKMOV: |
340 | return "kmovq\t{%1, %0|%0, %1}"; |
341 | |
342 | case TYPE_MSKLOG: |
343 | if (operands[1] == const0_rtx(const_int_rtx[64])) |
344 | return "kxorq\t%0, %0, %0"; |
345 | else if (operands[1] == constm1_rtx(const_int_rtx[64 -1])) |
346 | return "kxnorq\t%0, %0, %0"; |
347 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2350, __FUNCTION__)); |
348 | |
349 | case TYPE_MULTI: |
350 | return "#"; |
351 | |
352 | case TYPE_MMX: |
353 | return "pxor\t%0, %0"; |
354 | |
355 | case TYPE_MMXMOV: |
356 | /* Handle broken assemblers that require movd instead of movq. */ |
357 | if (!HAVE_AS_IX86_INTERUNIT_MOVQ1 |
358 | && (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))) || GENERAL_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))))) |
359 | return "movd\t{%1, %0|%0, %1}"; |
360 | return "movq\t{%1, %0|%0, %1}"; |
361 | |
362 | case TYPE_SSELOG1: |
363 | return standard_sse_constant_opcode (insn, operands); |
364 | |
365 | case TYPE_SSEMOV: |
366 | return ix86_output_ssemov (insn, operands); |
367 | |
368 | case TYPE_SSECVT: |
369 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
370 | return "movq2dq\t{%1, %0|%0, %1}"; |
371 | else |
372 | return "movdq2q\t{%1, %0|%0, %1}"; |
373 | |
374 | case TYPE_LEA: |
375 | return "lea{q}\t{%E1, %0|%0, %E1}"; |
376 | |
377 | case TYPE_IMOV: |
378 | gcc_assert (!flag_pic || LEGITIMATE_PIC_OPERAND_P (operands[1]))((void)(!(!global_options.x_flag_pic || legitimate_pic_operand_p (operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2381, __FUNCTION__), 0 : 0)); |
379 | if (get_attr_mode (insn) == MODE_SI) |
380 | return "mov{l}\t{%k1, %k0|%k0, %k1}"; |
381 | else if (which_alternative == 4) |
382 | return "movabs{q}\t{%1, %0|%0, %1}"; |
383 | else if (ix86_use_lea_for_mov (insn, operands)) |
384 | return "lea{q}\t{%E1, %0|%0, %E1}"; |
385 | else |
386 | return "mov{q}\t{%1, %0|%0, %1}"; |
387 | |
388 | default: |
389 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2392, __FUNCTION__)); |
390 | } |
391 | } |
392 | } |
393 | |
394 | static const char * |
395 | output_83 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
396 | { |
397 | #line 2560 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
398 | { |
399 | switch (get_attr_type (insn)) |
400 | { |
401 | case TYPE_SSELOG1: |
402 | return standard_sse_constant_opcode (insn, operands); |
403 | |
404 | case TYPE_MSKMOV: |
405 | return "kmovd\t{%1, %0|%0, %1}"; |
406 | |
407 | case TYPE_MSKLOG: |
408 | if (operands[1] == const0_rtx(const_int_rtx[64])) |
409 | return "kxord\t%0, %0, %0"; |
410 | else if (operands[1] == constm1_rtx(const_int_rtx[64 -1])) |
411 | return "kxnord\t%0, %0, %0"; |
412 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2574, __FUNCTION__)); |
413 | |
414 | case TYPE_SSEMOV: |
415 | return ix86_output_ssemov (insn, operands); |
416 | |
417 | case TYPE_MMX: |
418 | return "pxor\t%0, %0"; |
419 | |
420 | case TYPE_MMXMOV: |
421 | switch (get_attr_mode (insn)) |
422 | { |
423 | case MODE_DI: |
424 | return "movq\t{%1, %0|%0, %1}"; |
425 | case MODE_SI: |
426 | return "movd\t{%1, %0|%0, %1}"; |
427 | |
428 | default: |
429 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2591, __FUNCTION__)); |
430 | } |
431 | |
432 | case TYPE_LEA: |
433 | return "lea{l}\t{%E1, %0|%0, %E1}"; |
434 | |
435 | case TYPE_IMOV: |
436 | gcc_assert (!flag_pic || LEGITIMATE_PIC_OPERAND_P (operands[1]))((void)(!(!global_options.x_flag_pic || legitimate_pic_operand_p (operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2598, __FUNCTION__), 0 : 0)); |
437 | if (ix86_use_lea_for_mov (insn, operands)) |
438 | return "lea{l}\t{%E1, %0|%0, %E1}"; |
439 | else |
440 | return "mov{l}\t{%1, %0|%0, %1}"; |
441 | |
442 | default: |
443 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2605, __FUNCTION__)); |
444 | } |
445 | } |
446 | } |
447 | |
448 | static const char * |
449 | output_84 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
450 | { |
451 | #line 2703 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
452 | { |
453 | switch (get_attr_type (insn)) |
454 | { |
455 | case TYPE_IMOVX: |
456 | /* movzwl is faster than movw on p2 due to partial word stalls, |
457 | though not as fast as an aligned movl. */ |
458 | return "movz{wl|x}\t{%1, %k0|%k0, %1}"; |
459 | |
460 | case TYPE_MSKMOV: |
461 | switch (which_alternative) |
462 | { |
463 | case 4: |
464 | return "kmovw\t{%k1, %0|%0, %k1}"; |
465 | case 6: |
466 | return "kmovw\t{%1, %k0|%k0, %1}"; |
467 | case 5: |
468 | case 7: |
469 | return "kmovw\t{%1, %0|%0, %1}"; |
470 | default: |
471 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2722, __FUNCTION__)); |
472 | } |
473 | |
474 | case TYPE_SSEMOV: |
475 | return ix86_output_ssemov (insn, operands); |
476 | |
477 | case TYPE_SSELOG1: |
478 | if (satisfies_constraint_C (operands[1])) |
479 | return standard_sse_constant_opcode (insn, operands); |
480 | |
481 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
482 | return "%vpinsrw\t{$0, %1, %d0|%d0, %1, 0}"; |
483 | else |
484 | return "%vpextrw\t{$0, %1, %0|%0, %1, 0}"; |
485 | |
486 | case TYPE_MSKLOG: |
487 | if (operands[1] == const0_rtx(const_int_rtx[64])) |
488 | return "kxorw\t%0, %0, %0"; |
489 | else if (operands[1] == constm1_rtx(const_int_rtx[64 -1])) |
490 | return "kxnorw\t%0, %0, %0"; |
491 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2742, __FUNCTION__)); |
492 | |
493 | default: |
494 | if (get_attr_mode (insn) == MODE_SI) |
495 | return "mov{l}\t{%k1, %k0|%k0, %k1}"; |
496 | else |
497 | return "mov{w}\t{%1, %0|%0, %1}"; |
498 | } |
499 | } |
500 | } |
501 | |
502 | static const char * |
503 | output_85 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
504 | { |
505 | #line 2857 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
506 | { |
507 | char buf[128]; |
508 | const char *ops; |
509 | const char *suffix; |
510 | |
511 | switch (get_attr_type (insn)) |
512 | { |
513 | case TYPE_IMOVX: |
514 | gcc_assert (ANY_QI_REG_P (operands[1]) || MEM_P (operands[1]))((void)(!(((((enum rtx_code) (operands[1])->code) == REG) && (((global_options.x_ix86_isa_flags & (1UL << 1)) != 0) ? ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (0) <= (unsigned long) (7) - (unsigned long) (0))) || ((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (36) <= (unsigned long) (43) - (unsigned long) (36))) : ( (unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (3) - (unsigned long) (0)))) || ( ((enum rtx_code) (operands[1])->code) == MEM)) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2865, __FUNCTION__), 0 : 0)); |
515 | return "movz{bl|x}\t{%1, %k0|%k0, %1}"; |
516 | |
517 | case TYPE_MSKMOV: |
518 | switch (which_alternative) |
519 | { |
520 | case 9: |
521 | ops = "kmov%s\t{%%k1, %%0|%%0, %%k1}"; |
522 | break; |
523 | case 11: |
524 | ops = "kmov%s\t{%%1, %%k0|%%k0, %%1}"; |
525 | break; |
526 | case 12: |
527 | case 13: |
528 | gcc_assert (TARGET_AVX512DQ)((void)(!(((global_options.x_ix86_isa_flags & (1UL << 13)) != 0)) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2879, __FUNCTION__), 0 : 0)); |
529 | /* FALLTHRU */ |
530 | case 10: |
531 | ops = "kmov%s\t{%%1, %%0|%%0, %%1}"; |
532 | break; |
533 | default: |
534 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2885, __FUNCTION__)); |
535 | } |
536 | |
537 | suffix = (get_attr_mode (insn) == MODE_HI) ? "w" : "b"; |
538 | |
539 | snprintf (buf, sizeof (buf), ops, suffix); |
540 | output_asm_insn (buf, operands); |
541 | return ""; |
542 | |
543 | case TYPE_MSKLOG: |
544 | if (operands[1] == const0_rtx(const_int_rtx[64])) |
545 | { |
546 | if (get_attr_mode (insn) == MODE_HI) |
547 | return "kxorw\t%0, %0, %0"; |
548 | else |
549 | return "kxorb\t%0, %0, %0"; |
550 | } |
551 | else if (operands[1] == constm1_rtx(const_int_rtx[64 -1])) |
552 | { |
553 | gcc_assert (TARGET_AVX512DQ)((void)(!(((global_options.x_ix86_isa_flags & (1UL << 13)) != 0)) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2904, __FUNCTION__), 0 : 0)); |
554 | return "kxnorb\t%0, %0, %0"; |
555 | } |
556 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 2907, __FUNCTION__)); |
557 | |
558 | default: |
559 | if (get_attr_mode (insn) == MODE_SI) |
560 | return "mov{l}\t{%k1, %k0|%k0, %k1}"; |
561 | else |
562 | return "mov{b}\t{%1, %0|%0, %1}"; |
563 | } |
564 | } |
565 | } |
566 | |
567 | static const char * |
568 | output_86 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
569 | { |
570 | #line 3006 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
571 | { |
572 | /* Recover the full memory rtx. */ |
573 | operands[0] = SET_DEST (PATTERN (insn))(((PATTERN (insn))->u.fld[0]).rt_rtx); |
574 | switch (which_alternative) |
575 | { |
576 | case 0: |
577 | return "movabs{b}\t{%1, %P0|BYTE PTR [%P0], %1}"; |
578 | case 1: |
579 | return "mov{b}\t{%1, %0|%0, %1}"; |
580 | default: |
581 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3016, __FUNCTION__)); |
582 | } |
583 | } |
584 | } |
585 | |
586 | static const char * |
587 | output_87 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
588 | { |
589 | #line 3006 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
590 | { |
591 | /* Recover the full memory rtx. */ |
592 | operands[0] = SET_DEST (PATTERN (insn))(((PATTERN (insn))->u.fld[0]).rt_rtx); |
593 | switch (which_alternative) |
594 | { |
595 | case 0: |
596 | return "movabs{w}\t{%1, %P0|WORD PTR [%P0], %1}"; |
597 | case 1: |
598 | return "mov{w}\t{%1, %0|%0, %1}"; |
599 | default: |
600 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3016, __FUNCTION__)); |
601 | } |
602 | } |
603 | } |
604 | |
605 | static const char * |
606 | output_88 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
607 | { |
608 | #line 3006 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
609 | { |
610 | /* Recover the full memory rtx. */ |
611 | operands[0] = SET_DEST (PATTERN (insn))(((PATTERN (insn))->u.fld[0]).rt_rtx); |
612 | switch (which_alternative) |
613 | { |
614 | case 0: |
615 | return "movabs{l}\t{%1, %P0|DWORD PTR [%P0], %1}"; |
616 | case 1: |
617 | return "mov{l}\t{%1, %0|%0, %1}"; |
618 | default: |
619 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3016, __FUNCTION__)); |
620 | } |
621 | } |
622 | } |
623 | |
624 | static const char * |
625 | output_89 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
626 | { |
627 | #line 3006 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
628 | { |
629 | /* Recover the full memory rtx. */ |
630 | operands[0] = SET_DEST (PATTERN (insn))(((PATTERN (insn))->u.fld[0]).rt_rtx); |
631 | switch (which_alternative) |
632 | { |
633 | case 0: |
634 | return "movabs{q}\t{%1, %P0|QWORD PTR [%P0], %1}"; |
635 | case 1: |
636 | return "mov{q}\t{%1, %0|%0, %1}"; |
637 | default: |
638 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3016, __FUNCTION__)); |
639 | } |
640 | } |
641 | } |
642 | |
643 | static const char * |
644 | output_90 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
645 | { |
646 | #line 3030 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
647 | { |
648 | /* Recover the full memory rtx. */ |
649 | operands[1] = SET_SRC (PATTERN (insn))(((PATTERN (insn))->u.fld[1]).rt_rtx); |
650 | switch (which_alternative) |
651 | { |
652 | case 0: |
653 | return "movabs{b}\t{%P1, %0|%0, BYTE PTR [%P1]}"; |
654 | case 1: |
655 | return "mov{b}\t{%1, %0|%0, %1}"; |
656 | default: |
657 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3040, __FUNCTION__)); |
658 | } |
659 | } |
660 | } |
661 | |
662 | static const char * |
663 | output_91 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
664 | { |
665 | #line 3030 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
666 | { |
667 | /* Recover the full memory rtx. */ |
668 | operands[1] = SET_SRC (PATTERN (insn))(((PATTERN (insn))->u.fld[1]).rt_rtx); |
669 | switch (which_alternative) |
670 | { |
671 | case 0: |
672 | return "movabs{w}\t{%P1, %0|%0, WORD PTR [%P1]}"; |
673 | case 1: |
674 | return "mov{w}\t{%1, %0|%0, %1}"; |
675 | default: |
676 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3040, __FUNCTION__)); |
677 | } |
678 | } |
679 | } |
680 | |
681 | static const char * |
682 | output_92 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
683 | { |
684 | #line 3030 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
685 | { |
686 | /* Recover the full memory rtx. */ |
687 | operands[1] = SET_SRC (PATTERN (insn))(((PATTERN (insn))->u.fld[1]).rt_rtx); |
688 | switch (which_alternative) |
689 | { |
690 | case 0: |
691 | return "movabs{l}\t{%P1, %0|%0, DWORD PTR [%P1]}"; |
692 | case 1: |
693 | return "mov{l}\t{%1, %0|%0, %1}"; |
694 | default: |
695 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3040, __FUNCTION__)); |
696 | } |
697 | } |
698 | } |
699 | |
700 | static const char * |
701 | output_93 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
702 | { |
703 | #line 3030 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
704 | { |
705 | /* Recover the full memory rtx. */ |
706 | operands[1] = SET_SRC (PATTERN (insn))(((PATTERN (insn))->u.fld[1]).rt_rtx); |
707 | switch (which_alternative) |
708 | { |
709 | case 0: |
710 | return "movabs{q}\t{%P1, %0|%0, QWORD PTR [%P1]}"; |
711 | case 1: |
712 | return "mov{q}\t{%1, %0|%0, %1}"; |
713 | default: |
714 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3040, __FUNCTION__)); |
715 | } |
716 | } |
717 | } |
718 | |
719 | static const char * const output_96[] = { |
720 | "xchg{b}\t%1, %0", |
721 | "xchg{l}\t%k1, %k0", |
722 | }; |
723 | |
724 | static const char * const output_97[] = { |
725 | "xchg{w}\t%1, %0", |
726 | "xchg{l}\t%k1, %k0", |
727 | }; |
728 | |
729 | static const char * |
730 | output_110 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
731 | { |
732 | #line 3221 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
733 | { |
734 | switch (get_attr_type (insn)) |
735 | { |
736 | case TYPE_IMOVX: |
737 | return "movz{bl|x}\t{%h1, %k0|%k0, %h1}"; |
738 | default: |
739 | return "mov{b}\t{%h1, %0|%0, %h1}"; |
740 | } |
741 | } |
742 | } |
743 | |
744 | static const char * |
745 | output_111 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
746 | { |
747 | #line 3221 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
748 | { |
749 | switch (get_attr_type (insn)) |
750 | { |
751 | case TYPE_IMOVX: |
752 | return "movz{bl|x}\t{%h1, %k0|%k0, %h1}"; |
753 | default: |
754 | return "mov{b}\t{%h1, %0|%0, %h1}"; |
755 | } |
756 | } |
757 | } |
758 | |
759 | static const char * |
760 | output_112 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
761 | { |
762 | #line 3221 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
763 | { |
764 | switch (get_attr_type (insn)) |
765 | { |
766 | case TYPE_IMOVX: |
767 | return "movz{bl|x}\t{%h1, %k0|%k0, %h1}"; |
768 | default: |
769 | return "mov{b}\t{%h1, %0|%0, %h1}"; |
770 | } |
771 | } |
772 | } |
773 | |
774 | static const char * |
775 | output_116 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
776 | { |
777 | #line 3309 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
778 | { |
779 | if (CONST_INT_P (operands[1])(((enum rtx_code) (operands[1])->code) == CONST_INT)) |
780 | operands[1] = gen_int_mode (INTVAL (operands[1])((operands[1])->u.hwint[0]), QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode))); |
781 | return "mov{b}\t{%b1, %h0|%h0, %b1}"; |
782 | } |
783 | } |
784 | |
785 | static const char * |
786 | output_117 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
787 | { |
788 | #line 3309 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
789 | { |
790 | if (CONST_INT_P (operands[1])(((enum rtx_code) (operands[1])->code) == CONST_INT)) |
791 | operands[1] = gen_int_mode (INTVAL (operands[1])((operands[1])->u.hwint[0]), QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode))); |
792 | return "mov{b}\t{%b1, %h0|%h0, %b1}"; |
793 | } |
794 | } |
795 | |
796 | static const char * |
797 | output_118 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
798 | { |
799 | #line 3309 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
800 | { |
801 | if (CONST_INT_P (operands[1])(((enum rtx_code) (operands[1])->code) == CONST_INT)) |
802 | operands[1] = gen_int_mode (INTVAL (operands[1])((operands[1])->u.hwint[0]), QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode))); |
803 | return "mov{b}\t{%b1, %h0|%h0, %b1}"; |
804 | } |
805 | } |
806 | |
807 | static const char * |
808 | output_134 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
809 | { |
810 | #line 3412 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
811 | { |
812 | /* This insn should be already split before reg-stack. */ |
813 | return "#"; |
814 | } |
815 | } |
816 | |
817 | static const char * |
818 | output_135 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
819 | { |
820 | #line 3437 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
821 | { |
822 | /* This insn should be already split before reg-stack. */ |
823 | return "#"; |
824 | } |
825 | } |
826 | |
827 | static const char * |
828 | output_136 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
829 | { |
830 | #line 3473 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
831 | { |
832 | /* This insn should be already split before reg-stack. */ |
833 | return "#"; |
834 | } |
835 | } |
836 | |
837 | static const char * |
838 | output_137 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
839 | { |
840 | #line 3508 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
841 | { |
842 | /* Anything else should be already split before reg-stack. */ |
843 | gcc_assert (which_alternative == 0)((void)(!(which_alternative == 0) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3510, __FUNCTION__), 0 : 0)); |
844 | return "push{q}\t%q1"; |
845 | } |
846 | } |
847 | |
848 | static const char * |
849 | output_138 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
850 | { |
851 | #line 3508 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
852 | { |
853 | /* Anything else should be already split before reg-stack. */ |
854 | gcc_assert (which_alternative == 0)((void)(!(which_alternative == 0) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3510, __FUNCTION__), 0 : 0)); |
855 | return "push{q}\t%q1"; |
856 | } |
857 | } |
858 | |
859 | static const char * |
860 | output_139 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
861 | { |
862 | #line 3521 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
863 | { |
864 | /* Anything else should be already split before reg-stack. */ |
865 | gcc_assert (which_alternative == 0)((void)(!(which_alternative == 0) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3523, __FUNCTION__), 0 : 0)); |
866 | return "push{l}\t%k1"; |
867 | } |
868 | } |
869 | |
870 | static const char * |
871 | output_140 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
872 | { |
873 | #line 3521 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
874 | { |
875 | /* Anything else should be already split before reg-stack. */ |
876 | gcc_assert (which_alternative == 0)((void)(!(which_alternative == 0) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3523, __FUNCTION__), 0 : 0)); |
877 | return "push{l}\t%k1"; |
878 | } |
879 | } |
880 | |
881 | static const char * |
882 | output_141 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
883 | { |
884 | #line 3534 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
885 | { |
886 | /* Anything else should be already split before reg-stack. */ |
887 | if (which_alternative != 1) |
888 | return "#"; |
889 | return "push{q}\t%q1"; |
890 | } |
891 | } |
892 | |
893 | static const char * |
894 | output_142 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
895 | { |
896 | #line 3548 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
897 | { |
898 | /* Anything else should be already split before reg-stack. */ |
899 | if (which_alternative != 1) |
900 | return "#"; |
901 | return "push{l}\t%1"; |
902 | } |
903 | } |
904 | |
905 | static const char * |
906 | output_143 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
907 | { |
908 | #line 3626 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
909 | { |
910 | switch (get_attr_type (insn)) |
911 | { |
912 | case TYPE_SSELOG1: |
913 | return standard_sse_constant_opcode (insn, operands); |
914 | |
915 | case TYPE_SSEMOV: |
916 | return ix86_output_ssemov (insn, operands); |
917 | |
918 | case TYPE_MULTI: |
919 | return "#"; |
920 | |
921 | default: |
922 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3639, __FUNCTION__)); |
923 | } |
924 | } |
925 | } |
926 | |
927 | static const char * |
928 | output_144 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
929 | { |
930 | #line 3688 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
931 | { |
932 | switch (get_attr_type (insn)) |
933 | { |
934 | case TYPE_FMOV: |
935 | if (which_alternative == 2) |
936 | return standard_80387_constant_opcode (operands[1]); |
937 | return output_387_reg_move (insn, operands); |
938 | |
939 | case TYPE_MULTI: |
940 | return "#"; |
941 | |
942 | default: |
943 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3700, __FUNCTION__)); |
944 | } |
945 | } |
946 | } |
947 | |
948 | static const char * |
949 | output_145 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
950 | { |
951 | #line 3764 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
952 | { |
953 | switch (get_attr_type (insn)) |
954 | { |
955 | case TYPE_FMOV: |
956 | if (which_alternative == 2) |
957 | return standard_80387_constant_opcode (operands[1]); |
958 | return output_387_reg_move (insn, operands); |
959 | |
960 | case TYPE_MULTI: |
961 | return "#"; |
962 | |
963 | case TYPE_IMOV: |
964 | if (get_attr_mode (insn) == MODE_SI) |
965 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
966 | else if (which_alternative == 11) |
967 | return "movabs{q}\t{%1, %0|%0, %1}"; |
968 | else |
969 | return "mov{q}\t{%1, %0|%0, %1}"; |
970 | |
971 | case TYPE_SSELOG1: |
972 | return standard_sse_constant_opcode (insn, operands); |
973 | |
974 | case TYPE_SSEMOV: |
975 | return ix86_output_ssemov (insn, operands); |
976 | |
977 | default: |
978 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3790, __FUNCTION__)); |
979 | } |
980 | } |
981 | } |
982 | |
983 | static const char * |
984 | output_146 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
985 | { |
986 | #line 3934 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
987 | { |
988 | switch (get_attr_type (insn)) |
989 | { |
990 | case TYPE_FMOV: |
991 | if (which_alternative == 2) |
992 | return standard_80387_constant_opcode (operands[1]); |
993 | return output_387_reg_move (insn, operands); |
994 | |
995 | case TYPE_IMOV: |
996 | return "mov{l}\t{%1, %0|%0, %1}"; |
997 | |
998 | case TYPE_SSELOG1: |
999 | return standard_sse_constant_opcode (insn, operands); |
1000 | |
1001 | case TYPE_SSEMOV: |
1002 | return ix86_output_ssemov (insn, operands); |
1003 | |
1004 | case TYPE_MMXMOV: |
1005 | switch (get_attr_mode (insn)) |
1006 | { |
1007 | case MODE_DI: |
1008 | return "movq\t{%1, %0|%0, %1}"; |
1009 | case MODE_SI: |
1010 | return "movd\t{%1, %0|%0, %1}"; |
1011 | |
1012 | default: |
1013 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3960, __FUNCTION__)); |
1014 | } |
1015 | |
1016 | default: |
1017 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 3964, __FUNCTION__)); |
1018 | } |
1019 | } |
1020 | } |
1021 | |
1022 | static const char * |
1023 | output_147 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1024 | { |
1025 | #line 4061 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1026 | { |
1027 | switch (get_attr_type (insn)) |
1028 | { |
1029 | case TYPE_IMOVX: |
1030 | /* movzwl is faster than movw on p2 due to partial word stalls, |
1031 | though not as fast as an aligned movl. */ |
1032 | return "movz{wl|x}\t{%1, %k0|%k0, %1}"; |
1033 | |
1034 | case TYPE_SSEMOV: |
1035 | return ix86_output_ssemov (insn, operands); |
1036 | |
1037 | case TYPE_SSELOG1: |
1038 | if (satisfies_constraint_C (operands[1])) |
1039 | return standard_sse_constant_opcode (insn, operands); |
1040 | |
1041 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
1042 | return "%vpinsrw\t{$0, %1, %d0|%d0, %1, 0}"; |
1043 | else |
1044 | return "%vpextrw\t{$0, %1, %0|%0, %1, 0}"; |
1045 | |
1046 | default: |
1047 | if (get_attr_mode (insn) == MODE_SI) |
1048 | return "mov{l}\t{%k1, %k0|%k0, %k1}"; |
1049 | else |
1050 | return "mov{w}\t{%1, %0|%0, %1}"; |
1051 | } |
1052 | } |
1053 | } |
1054 | |
1055 | static const char * |
1056 | output_148 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1057 | { |
1058 | #line 4061 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1059 | { |
1060 | switch (get_attr_type (insn)) |
1061 | { |
1062 | case TYPE_IMOVX: |
1063 | /* movzwl is faster than movw on p2 due to partial word stalls, |
1064 | though not as fast as an aligned movl. */ |
1065 | return "movz{wl|x}\t{%1, %k0|%k0, %1}"; |
1066 | |
1067 | case TYPE_SSEMOV: |
1068 | return ix86_output_ssemov (insn, operands); |
1069 | |
1070 | case TYPE_SSELOG1: |
1071 | if (satisfies_constraint_C (operands[1])) |
1072 | return standard_sse_constant_opcode (insn, operands); |
1073 | |
1074 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
1075 | return "%vpinsrw\t{$0, %1, %d0|%d0, %1, 0}"; |
1076 | else |
1077 | return "%vpextrw\t{$0, %1, %0|%0, %1, 0}"; |
1078 | |
1079 | default: |
1080 | if (get_attr_mode (insn) == MODE_SI) |
1081 | return "mov{l}\t{%k1, %k0|%k0, %k1}"; |
1082 | else |
1083 | return "mov{w}\t{%1, %0|%0, %1}"; |
1084 | } |
1085 | } |
1086 | } |
1087 | |
1088 | static const char * |
1089 | output_149 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1090 | { |
1091 | #line 4209 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1092 | { |
1093 | if (STACK_TOP_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (rhs_regno(operands[0])) == 8)) |
1094 | return "fxch\t%1"; |
1095 | else |
1096 | return "fxch\t%0"; |
1097 | } |
1098 | } |
1099 | |
1100 | static const char * |
1101 | output_151 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1102 | { |
1103 | #line 4242 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1104 | { |
1105 | switch (get_attr_type (insn)) |
1106 | { |
1107 | case TYPE_IMOVX: |
1108 | if (ix86_use_lea_for_mov (insn, operands)) |
1109 | return "lea{l}\t{%E1, %k0|%k0, %E1}"; |
1110 | else |
1111 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
1112 | |
1113 | case TYPE_MULTI: |
1114 | return "#"; |
1115 | |
1116 | case TYPE_MMXMOV: |
1117 | return "movd\t{%1, %0|%0, %1}"; |
1118 | |
1119 | case TYPE_SSEMOV: |
1120 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52)))) && SSE_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && (((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
1121 | { |
1122 | if (EXT_REX_SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))) |
1123 | || EXT_REX_SSE_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52)))) |
1124 | return "vpmovzxdq\t{%t1, %g0|%g0, %t1}"; |
1125 | else |
1126 | return "%vpmovzxdq\t{%1, %0|%0, %1}"; |
1127 | } |
1128 | |
1129 | if (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36))))) |
1130 | return "%vmovd\t{%1, %k0|%k0, %1}"; |
1131 | |
1132 | return "%vmovd\t{%1, %0|%0, %1}"; |
1133 | |
1134 | case TYPE_MSKMOV: |
1135 | return "kmovd\t{%1, %k0|%k0, %1}"; |
1136 | |
1137 | default: |
1138 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 4276, __FUNCTION__)); |
1139 | } |
1140 | } |
1141 | } |
1142 | |
1143 | static const char * const output_152[] = { |
1144 | "movz{bl|x}\t{%1, %k0|%k0, %1}", |
1145 | "kmovb\t{%1, %k0|%k0, %1}", |
1146 | "kmovb\t{%1, %k0|%k0, %1}", |
1147 | }; |
1148 | |
1149 | static const char * const output_153[] = { |
1150 | "movz{wl|x}\t{%1, %k0|%k0, %1}", |
1151 | "kmovw\t{%1, %k0|%k0, %1}", |
1152 | "kmovw\t{%1, %k0|%k0, %1}", |
1153 | }; |
1154 | |
1155 | static const char * const output_156[] = { |
1156 | "movz{bl|x}\t{%1, %0|%0, %1}", |
1157 | "kmovb\t{%1, %0|%0, %1}", |
1158 | "kmovb\t{%1, %0|%0, %1}", |
1159 | }; |
1160 | |
1161 | static const char * const output_157[] = { |
1162 | "movz{wl|x}\t{%1, %0|%0, %1}", |
1163 | "kmovw\t{%1, %0|%0, %1}", |
1164 | "kmovw\t{%1, %0|%0, %1}", |
1165 | }; |
1166 | |
1167 | static const char * const output_159[] = { |
1168 | "movz{bl|x}\t{%1, %k0|%k0, %1}", |
1169 | "kmovb\t{%1, %k0|%k0, %1}", |
1170 | "kmovb\t{%1, %0|%0, %1}", |
1171 | }; |
1172 | |
1173 | static const char * const output_160[] = { |
1174 | "{cltq|cdqe}", |
1175 | "movs{lq|x}\t{%1, %0|%0, %1}", |
1176 | }; |
1177 | |
1178 | static const char * |
1179 | output_165 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1180 | { |
1181 | #line 4684 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1182 | { |
1183 | switch (get_attr_prefix_0f (insn)) |
1184 | { |
1185 | case 0: |
1186 | return "{cwtl|cwde}"; |
1187 | default: |
1188 | return "movs{wl|x}\t{%1, %0|%0, %1}"; |
1189 | } |
1190 | } |
1191 | } |
1192 | |
1193 | static const char * |
1194 | output_166 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1195 | { |
1196 | #line 4716 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1197 | { |
1198 | switch (get_attr_prefix_0f (insn)) |
1199 | { |
1200 | case 0: |
1201 | return "{cwtl|cwde}"; |
1202 | default: |
1203 | return "movs{wl|x}\t{%1, %k0|%k0, %1}"; |
1204 | } |
1205 | } |
1206 | } |
1207 | |
1208 | static const char * |
1209 | output_169 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1210 | { |
1211 | #line 4759 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1212 | { |
1213 | switch (get_attr_prefix_0f (insn)) |
1214 | { |
1215 | case 0: |
1216 | return "{cbtw|cbw}"; |
1217 | default: |
1218 | return "movs{bw|x}\t{%1, %0|%0, %1}"; |
1219 | } |
1220 | } |
1221 | } |
1222 | |
1223 | static const char * |
1224 | output_176 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1225 | { |
1226 | #line 4841 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1227 | { |
1228 | switch (which_alternative) |
1229 | { |
1230 | case 0: |
1231 | case 1: |
1232 | return output_387_reg_move (insn, operands); |
1233 | |
1234 | case 2: |
1235 | return "%vcvtss2sd\t{%d1, %0|%0, %d1}"; |
1236 | case 3: |
1237 | return "%vcvtss2sd\t{%1, %d0|%d0, %1}"; |
1238 | |
1239 | default: |
1240 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 4854, __FUNCTION__)); |
1241 | } |
1242 | } |
1243 | } |
1244 | |
1245 | static const char * const output_179[] = { |
1246 | "pslld\t{$16, %0|%0, 16}", |
1247 | "vpslld\t{$16, %1, %0|%0, %1, 16}", |
1248 | }; |
1249 | |
1250 | static const char * |
1251 | output_180 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1252 | { |
1253 | #line 5054 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1254 | return output_387_reg_move (insn, operands); |
1255 | } |
1256 | |
1257 | static const char * |
1258 | output_181 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1259 | { |
1260 | #line 5054 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1261 | return output_387_reg_move (insn, operands); |
1262 | } |
1263 | |
1264 | static const char * |
1265 | output_182 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1266 | { |
1267 | #line 5071 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1268 | { |
1269 | switch (which_alternative) |
1270 | { |
1271 | case 0: |
1272 | case 1: |
1273 | return output_387_reg_move (insn, operands); |
1274 | |
1275 | case 2: |
1276 | return "%vcvtsd2ss\t{%d1, %0|%0, %d1}"; |
1277 | case 3: |
1278 | return "%vcvtsd2ss\t{%1, %d0|%d0, %1}"; |
1279 | |
1280 | default: |
1281 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 5084, __FUNCTION__)); |
1282 | } |
1283 | } |
1284 | } |
1285 | |
1286 | static const char * |
1287 | output_183 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1288 | { |
1289 | #line 5199 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1290 | return output_387_reg_move (insn, operands); |
1291 | } |
1292 | |
1293 | static const char * |
1294 | output_184 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1295 | { |
1296 | #line 5199 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1297 | return output_387_reg_move (insn, operands); |
1298 | } |
1299 | |
1300 | static const char * const output_187[] = { |
1301 | "%{vex%} vcvtneps2bf16\t{%1, %0|%0, %1}", |
1302 | "vcvtneps2bf16\t{%1, %0|%0, %1}", |
1303 | }; |
1304 | |
1305 | static const char * |
1306 | output_205 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1307 | { |
1308 | #line 5509 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1309 | return output_fix_trunc (insn, operands, true); |
1310 | } |
1311 | |
1312 | static const char * |
1313 | output_206 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1314 | { |
1315 | #line 5509 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1316 | return output_fix_trunc (insn, operands, true); |
1317 | } |
1318 | |
1319 | static const char * |
1320 | output_207 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1321 | { |
1322 | #line 5509 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1323 | return output_fix_trunc (insn, operands, true); |
1324 | } |
1325 | |
1326 | static const char * |
1327 | output_211 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1328 | { |
1329 | #line 5553 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1330 | return output_fix_trunc (insn, operands, false); |
1331 | } |
1332 | |
1333 | static const char * |
1334 | output_212 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1335 | { |
1336 | #line 5566 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1337 | return output_fix_trunc (insn, operands, false); |
1338 | } |
1339 | |
1340 | static const char * |
1341 | output_213 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1342 | { |
1343 | #line 5566 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1344 | return output_fix_trunc (insn, operands, false); |
1345 | } |
1346 | |
1347 | static const char * const output_220[] = { |
1348 | "fild%Z1\t%1", |
1349 | "%vcvtsi2ss{l}\t{%1, %d0|%d0, %1}", |
1350 | "%vcvtsi2ss{l}\t{%1, %d0|%d0, %1}", |
1351 | }; |
1352 | |
1353 | static const char * const output_221[] = { |
1354 | "fild%Z1\t%1", |
1355 | "%vcvtsi2ss{q}\t{%1, %d0|%d0, %1}", |
1356 | "%vcvtsi2ss{q}\t{%1, %d0|%d0, %1}", |
1357 | }; |
1358 | |
1359 | static const char * const output_222[] = { |
1360 | "fild%Z1\t%1", |
1361 | "%vcvtsi2sd{l}\t{%1, %d0|%d0, %1}", |
1362 | "%vcvtsi2sd{l}\t{%1, %d0|%d0, %1}", |
1363 | }; |
1364 | |
1365 | static const char * const output_223[] = { |
1366 | "fild%Z1\t%1", |
1367 | "%vcvtsi2sd{q}\t{%1, %d0|%d0, %1}", |
1368 | "%vcvtsi2sd{q}\t{%1, %d0|%d0, %1}", |
1369 | }; |
1370 | |
1371 | static const char * |
1372 | output_240 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1373 | { |
1374 | #line 5902 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1375 | { |
1376 | if (SImode_address_operand (operands[1], VOIDmode((void) 0, E_VOIDmode))) |
1377 | { |
1378 | gcc_assert (TARGET_64BIT)((void)(!(((global_options.x_ix86_isa_flags & (1UL << 1)) != 0)) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 5905, __FUNCTION__), 0 : 0)); |
1379 | return "lea{l}\t{%E1, %k0|%k0, %E1}"; |
1380 | } |
1381 | else |
1382 | return "lea{l}\t{%E1, %0|%0, %E1}"; |
1383 | } |
1384 | } |
1385 | |
1386 | static const char * |
1387 | output_241 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1388 | { |
1389 | #line 5902 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1390 | { |
1391 | if (SImode_address_operand (operands[1], VOIDmode((void) 0, E_VOIDmode))) |
1392 | { |
1393 | gcc_assert (TARGET_64BIT)((void)(!(((global_options.x_ix86_isa_flags & (1UL << 1)) != 0)) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 5905, __FUNCTION__), 0 : 0)); |
1394 | return "lea{l}\t{%E1, %k0|%k0, %E1}"; |
1395 | } |
1396 | else |
1397 | return "lea{q}\t{%E1, %0|%0, %E1}"; |
1398 | } |
1399 | } |
1400 | |
1401 | static const char * |
1402 | output_246 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1403 | { |
1404 | #line 6031 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1405 | { |
1406 | switch (get_attr_type (insn)) |
1407 | { |
1408 | case TYPE_LEA: |
1409 | return "#"; |
1410 | |
1411 | case TYPE_INCDEC: |
1412 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6038, __FUNCTION__), 0 : 0)); |
1413 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1414 | return "inc{l}\t%0"; |
1415 | else |
1416 | { |
1417 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6043, __FUNCTION__), 0 : 0)); |
1418 | return "dec{l}\t%0"; |
1419 | } |
1420 | |
1421 | default: |
1422 | /* For most processors, ADD is faster than LEA. This alternative |
1423 | was added to use ADD as much as possible. */ |
1424 | if (which_alternative == 2) |
1425 | std::swap (operands[1], operands[2]); |
1426 | |
1427 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6053, __FUNCTION__), 0 : 0)); |
1428 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
1429 | return "sub{l}\t{%2, %0|%0, %2}"; |
1430 | |
1431 | return "add{l}\t{%2, %0|%0, %2}"; |
1432 | } |
1433 | } |
1434 | } |
1435 | |
1436 | static const char * |
1437 | output_247 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1438 | { |
1439 | #line 6031 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1440 | { |
1441 | switch (get_attr_type (insn)) |
1442 | { |
1443 | case TYPE_LEA: |
1444 | return "#"; |
1445 | |
1446 | case TYPE_INCDEC: |
1447 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6038, __FUNCTION__), 0 : 0)); |
1448 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1449 | return "inc{q}\t%0"; |
1450 | else |
1451 | { |
1452 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6043, __FUNCTION__), 0 : 0)); |
1453 | return "dec{q}\t%0"; |
1454 | } |
1455 | |
1456 | default: |
1457 | /* For most processors, ADD is faster than LEA. This alternative |
1458 | was added to use ADD as much as possible. */ |
1459 | if (which_alternative == 2) |
1460 | std::swap (operands[1], operands[2]); |
1461 | |
1462 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6053, __FUNCTION__), 0 : 0)); |
1463 | if (x86_maybe_negate_const_int (&operands[2], DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)))) |
1464 | return "sub{q}\t{%2, %0|%0, %2}"; |
1465 | |
1466 | return "add{q}\t{%2, %0|%0, %2}"; |
1467 | } |
1468 | } |
1469 | } |
1470 | |
1471 | static const char * |
1472 | output_248 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1473 | { |
1474 | #line 6087 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1475 | { |
1476 | switch (get_attr_type (insn)) |
1477 | { |
1478 | case TYPE_LEA: |
1479 | return "#"; |
1480 | |
1481 | case TYPE_INCDEC: |
1482 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1483 | return "inc{l}\t%k0"; |
1484 | else |
1485 | { |
1486 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6098, __FUNCTION__), 0 : 0)); |
1487 | return "dec{l}\t%k0"; |
1488 | } |
1489 | |
1490 | default: |
1491 | /* For most processors, ADD is faster than LEA. This alternative |
1492 | was added to use ADD as much as possible. */ |
1493 | if (which_alternative == 1) |
1494 | std::swap (operands[1], operands[2]); |
1495 | |
1496 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
1497 | return "sub{l}\t{%2, %k0|%k0, %2}"; |
1498 | |
1499 | return "add{l}\t{%2, %k0|%k0, %2}"; |
1500 | } |
1501 | } |
1502 | } |
1503 | |
1504 | static const char * |
1505 | output_249 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1506 | { |
1507 | #line 6134 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1508 | { |
1509 | switch (get_attr_type (insn)) |
1510 | { |
1511 | case TYPE_LEA: |
1512 | return "#"; |
1513 | |
1514 | case TYPE_INCDEC: |
1515 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6141, __FUNCTION__), 0 : 0)); |
1516 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1517 | return "inc{w}\t%0"; |
1518 | else |
1519 | { |
1520 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6146, __FUNCTION__), 0 : 0)); |
1521 | return "dec{w}\t%0"; |
1522 | } |
1523 | |
1524 | default: |
1525 | /* For most processors, ADD is faster than LEA. This alternative |
1526 | was added to use ADD as much as possible. */ |
1527 | if (which_alternative == 2) |
1528 | std::swap (operands[1], operands[2]); |
1529 | |
1530 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6156, __FUNCTION__), 0 : 0)); |
1531 | if (x86_maybe_negate_const_int (&operands[2], HImode(scalar_int_mode ((scalar_int_mode::from_int) E_HImode)))) |
1532 | return "sub{w}\t{%2, %0|%0, %2}"; |
1533 | |
1534 | return "add{w}\t{%2, %0|%0, %2}"; |
1535 | } |
1536 | } |
1537 | } |
1538 | |
1539 | static const char * |
1540 | output_250 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1541 | { |
1542 | #line 6183 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1543 | { |
1544 | bool widen = (get_attr_mode (insn) != MODE_QI); |
1545 | |
1546 | switch (get_attr_type (insn)) |
1547 | { |
1548 | case TYPE_LEA: |
1549 | return "#"; |
1550 | |
1551 | case TYPE_INCDEC: |
1552 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6192, __FUNCTION__), 0 : 0)); |
1553 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1554 | return widen ? "inc{l}\t%k0" : "inc{b}\t%0"; |
1555 | else |
1556 | { |
1557 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6197, __FUNCTION__), 0 : 0)); |
1558 | return widen ? "dec{l}\t%k0" : "dec{b}\t%0"; |
1559 | } |
1560 | |
1561 | default: |
1562 | /* For most processors, ADD is faster than LEA. These alternatives |
1563 | were added to use ADD as much as possible. */ |
1564 | if (which_alternative == 2 || which_alternative == 4) |
1565 | std::swap (operands[1], operands[2]); |
1566 | |
1567 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6207, __FUNCTION__), 0 : 0)); |
1568 | if (x86_maybe_negate_const_int (&operands[2], QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode)))) |
1569 | { |
1570 | if (widen) |
1571 | return "sub{l}\t{%2, %k0|%k0, %2}"; |
1572 | else |
1573 | return "sub{b}\t{%2, %0|%0, %2}"; |
1574 | } |
1575 | if (widen) |
1576 | return "add{l}\t{%k2, %k0|%k0, %k2}"; |
1577 | else |
1578 | return "add{b}\t{%2, %0|%0, %2}"; |
1579 | } |
1580 | } |
1581 | } |
1582 | |
1583 | static const char * |
1584 | output_251 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1585 | { |
1586 | #line 6247 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1587 | { |
1588 | if (which_alternative) |
1589 | return "#"; |
1590 | |
1591 | switch (get_attr_type (insn)) |
1592 | { |
1593 | case TYPE_INCDEC: |
1594 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1595 | return "inc{b}\t%0"; |
1596 | else |
1597 | { |
1598 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6258, __FUNCTION__), 0 : 0)); |
1599 | return "dec{b}\t%0"; |
1600 | } |
1601 | |
1602 | default: |
1603 | if (x86_maybe_negate_const_int (&operands[2], QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode)))) |
1604 | return "sub{b}\t{%2, %0|%0, %2}"; |
1605 | |
1606 | return "add{b}\t{%2, %0|%0, %2}"; |
1607 | } |
1608 | } |
1609 | } |
1610 | |
1611 | static const char * |
1612 | output_252 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1613 | { |
1614 | #line 6247 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1615 | { |
1616 | if (which_alternative) |
1617 | return "#"; |
1618 | |
1619 | switch (get_attr_type (insn)) |
1620 | { |
1621 | case TYPE_INCDEC: |
1622 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1623 | return "inc{w}\t%0"; |
1624 | else |
1625 | { |
1626 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6258, __FUNCTION__), 0 : 0)); |
1627 | return "dec{w}\t%0"; |
1628 | } |
1629 | |
1630 | default: |
1631 | if (x86_maybe_negate_const_int (&operands[2], QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode)))) |
1632 | return "sub{w}\t{%2, %0|%0, %2}"; |
1633 | |
1634 | return "add{w}\t{%2, %0|%0, %2}"; |
1635 | } |
1636 | } |
1637 | } |
1638 | |
1639 | static const char * |
1640 | output_253 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1641 | { |
1642 | #line 6348 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1643 | { |
1644 | switch (get_attr_type (insn)) |
1645 | { |
1646 | case TYPE_INCDEC: |
1647 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1648 | return "inc{b}\t%0"; |
1649 | else |
1650 | { |
1651 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6356, __FUNCTION__), 0 : 0)); |
1652 | return "dec{b}\t%0"; |
1653 | } |
1654 | |
1655 | default: |
1656 | if (which_alternative == 2) |
1657 | std::swap (operands[1], operands[2]); |
1658 | |
1659 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6364, __FUNCTION__), 0 : 0)); |
1660 | if (x86_maybe_negate_const_int (&operands[2], QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode)))) |
1661 | return "sub{b}\t{%2, %0|%0, %2}"; |
1662 | |
1663 | return "add{b}\t{%2, %0|%0, %2}"; |
1664 | } |
1665 | } |
1666 | } |
1667 | |
1668 | static const char * |
1669 | output_254 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1670 | { |
1671 | #line 6348 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1672 | { |
1673 | switch (get_attr_type (insn)) |
1674 | { |
1675 | case TYPE_INCDEC: |
1676 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1677 | return "inc{w}\t%0"; |
1678 | else |
1679 | { |
1680 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6356, __FUNCTION__), 0 : 0)); |
1681 | return "dec{w}\t%0"; |
1682 | } |
1683 | |
1684 | default: |
1685 | if (which_alternative == 2) |
1686 | std::swap (operands[1], operands[2]); |
1687 | |
1688 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6364, __FUNCTION__), 0 : 0)); |
1689 | if (x86_maybe_negate_const_int (&operands[2], HImode(scalar_int_mode ((scalar_int_mode::from_int) E_HImode)))) |
1690 | return "sub{w}\t{%2, %0|%0, %2}"; |
1691 | |
1692 | return "add{w}\t{%2, %0|%0, %2}"; |
1693 | } |
1694 | } |
1695 | } |
1696 | |
1697 | static const char * |
1698 | output_255 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1699 | { |
1700 | #line 6348 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1701 | { |
1702 | switch (get_attr_type (insn)) |
1703 | { |
1704 | case TYPE_INCDEC: |
1705 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1706 | return "inc{l}\t%0"; |
1707 | else |
1708 | { |
1709 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6356, __FUNCTION__), 0 : 0)); |
1710 | return "dec{l}\t%0"; |
1711 | } |
1712 | |
1713 | default: |
1714 | if (which_alternative == 2) |
1715 | std::swap (operands[1], operands[2]); |
1716 | |
1717 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6364, __FUNCTION__), 0 : 0)); |
1718 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
1719 | return "sub{l}\t{%2, %0|%0, %2}"; |
1720 | |
1721 | return "add{l}\t{%2, %0|%0, %2}"; |
1722 | } |
1723 | } |
1724 | } |
1725 | |
1726 | static const char * |
1727 | output_256 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1728 | { |
1729 | #line 6348 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1730 | { |
1731 | switch (get_attr_type (insn)) |
1732 | { |
1733 | case TYPE_INCDEC: |
1734 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1735 | return "inc{q}\t%0"; |
1736 | else |
1737 | { |
1738 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6356, __FUNCTION__), 0 : 0)); |
1739 | return "dec{q}\t%0"; |
1740 | } |
1741 | |
1742 | default: |
1743 | if (which_alternative == 2) |
1744 | std::swap (operands[1], operands[2]); |
1745 | |
1746 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6364, __FUNCTION__), 0 : 0)); |
1747 | if (x86_maybe_negate_const_int (&operands[2], DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)))) |
1748 | return "sub{q}\t{%2, %0|%0, %2}"; |
1749 | |
1750 | return "add{q}\t{%2, %0|%0, %2}"; |
1751 | } |
1752 | } |
1753 | } |
1754 | |
1755 | static const char * |
1756 | output_257 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1757 | { |
1758 | #line 6393 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1759 | { |
1760 | switch (get_attr_type (insn)) |
1761 | { |
1762 | case TYPE_INCDEC: |
1763 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1764 | return "inc{l}\t%k0"; |
1765 | else |
1766 | { |
1767 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6401, __FUNCTION__), 0 : 0)); |
1768 | return "dec{l}\t%k0"; |
1769 | } |
1770 | |
1771 | default: |
1772 | if (which_alternative == 1) |
1773 | std::swap (operands[1], operands[2]); |
1774 | |
1775 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
1776 | return "sub{l}\t{%2, %k0|%k0, %2}"; |
1777 | |
1778 | return "add{l}\t{%2, %k0|%k0, %2}"; |
1779 | } |
1780 | } |
1781 | } |
1782 | |
1783 | static const char * |
1784 | output_258 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1785 | { |
1786 | #line 6434 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1787 | { |
1788 | switch (get_attr_type (insn)) |
1789 | { |
1790 | case TYPE_INCDEC: |
1791 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1792 | return "inc{b}\t%0"; |
1793 | else |
1794 | { |
1795 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6442, __FUNCTION__), 0 : 0)); |
1796 | return "dec{b}\t%0"; |
1797 | } |
1798 | |
1799 | default: |
1800 | if (which_alternative == 1) |
1801 | std::swap (operands[1], operands[2]); |
1802 | |
1803 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6450, __FUNCTION__), 0 : 0)); |
1804 | if (x86_maybe_negate_const_int (&operands[2], QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode)))) |
1805 | return "sub{b}\t{%2, %0|%0, %2}"; |
1806 | |
1807 | return "add{b}\t{%2, %0|%0, %2}"; |
1808 | } |
1809 | } |
1810 | } |
1811 | |
1812 | static const char * |
1813 | output_259 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1814 | { |
1815 | #line 6434 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1816 | { |
1817 | switch (get_attr_type (insn)) |
1818 | { |
1819 | case TYPE_INCDEC: |
1820 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1821 | return "inc{w}\t%0"; |
1822 | else |
1823 | { |
1824 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6442, __FUNCTION__), 0 : 0)); |
1825 | return "dec{w}\t%0"; |
1826 | } |
1827 | |
1828 | default: |
1829 | if (which_alternative == 1) |
1830 | std::swap (operands[1], operands[2]); |
1831 | |
1832 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6450, __FUNCTION__), 0 : 0)); |
1833 | if (x86_maybe_negate_const_int (&operands[2], HImode(scalar_int_mode ((scalar_int_mode::from_int) E_HImode)))) |
1834 | return "sub{w}\t{%2, %0|%0, %2}"; |
1835 | |
1836 | return "add{w}\t{%2, %0|%0, %2}"; |
1837 | } |
1838 | } |
1839 | } |
1840 | |
1841 | static const char * |
1842 | output_260 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1843 | { |
1844 | #line 6434 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1845 | { |
1846 | switch (get_attr_type (insn)) |
1847 | { |
1848 | case TYPE_INCDEC: |
1849 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1850 | return "inc{l}\t%0"; |
1851 | else |
1852 | { |
1853 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6442, __FUNCTION__), 0 : 0)); |
1854 | return "dec{l}\t%0"; |
1855 | } |
1856 | |
1857 | default: |
1858 | if (which_alternative == 1) |
1859 | std::swap (operands[1], operands[2]); |
1860 | |
1861 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6450, __FUNCTION__), 0 : 0)); |
1862 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
1863 | return "sub{l}\t{%2, %0|%0, %2}"; |
1864 | |
1865 | return "add{l}\t{%2, %0|%0, %2}"; |
1866 | } |
1867 | } |
1868 | } |
1869 | |
1870 | static const char * |
1871 | output_261 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1872 | { |
1873 | #line 6434 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1874 | { |
1875 | switch (get_attr_type (insn)) |
1876 | { |
1877 | case TYPE_INCDEC: |
1878 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1879 | return "inc{q}\t%0"; |
1880 | else |
1881 | { |
1882 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6442, __FUNCTION__), 0 : 0)); |
1883 | return "dec{q}\t%0"; |
1884 | } |
1885 | |
1886 | default: |
1887 | if (which_alternative == 1) |
1888 | std::swap (operands[1], operands[2]); |
1889 | |
1890 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6450, __FUNCTION__), 0 : 0)); |
1891 | if (x86_maybe_negate_const_int (&operands[2], DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)))) |
1892 | return "sub{q}\t{%2, %0|%0, %2}"; |
1893 | |
1894 | return "add{q}\t{%2, %0|%0, %2}"; |
1895 | } |
1896 | } |
1897 | } |
1898 | |
1899 | static const char * |
1900 | output_262 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1901 | { |
1902 | #line 6478 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1903 | { |
1904 | switch (get_attr_type (insn)) |
1905 | { |
1906 | case TYPE_INCDEC: |
1907 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
1908 | return "inc{l}\t%k0"; |
1909 | else |
1910 | { |
1911 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6486, __FUNCTION__), 0 : 0)); |
1912 | return "dec{l}\t%k0"; |
1913 | } |
1914 | |
1915 | default: |
1916 | if (which_alternative == 1) |
1917 | std::swap (operands[1], operands[2]); |
1918 | |
1919 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
1920 | return "sub{l}\t{%2, %k0|%k0, %2}"; |
1921 | |
1922 | return "add{l}\t{%2, %k0|%k0, %2}"; |
1923 | } |
1924 | } |
1925 | } |
1926 | |
1927 | static const char * |
1928 | output_263 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1929 | { |
1930 | #line 6526 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1931 | { |
1932 | switch (get_attr_type (insn)) |
1933 | { |
1934 | case TYPE_INCDEC: |
1935 | if (operands[2] == constm1_rtx(const_int_rtx[64 -1])) |
1936 | return "inc{q}\t%0"; |
1937 | else |
1938 | { |
1939 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6534, __FUNCTION__), 0 : 0)); |
1940 | return "dec{q}\t%0"; |
1941 | } |
1942 | |
1943 | default: |
1944 | if (x86_maybe_negate_const_int (&operands[2], DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)))) |
1945 | return "add{q}\t{%2, %0|%0, %2}"; |
1946 | |
1947 | return "sub{q}\t{%2, %0|%0, %2}"; |
1948 | } |
1949 | } |
1950 | } |
1951 | |
1952 | static const char * |
1953 | output_264 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1954 | { |
1955 | #line 6570 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1956 | { |
1957 | switch (get_attr_type (insn)) |
1958 | { |
1959 | case TYPE_INCDEC: |
1960 | if (operands[2] == constm1_rtx(const_int_rtx[64 -1])) |
1961 | return "inc{b}\t%0"; |
1962 | else |
1963 | { |
1964 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6578, __FUNCTION__), 0 : 0)); |
1965 | return "dec{b}\t%0"; |
1966 | } |
1967 | |
1968 | default: |
1969 | if (x86_maybe_negate_const_int (&operands[2], QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode)))) |
1970 | return "add{b}\t{%2, %0|%0, %2}"; |
1971 | |
1972 | return "sub{b}\t{%2, %0|%0, %2}"; |
1973 | } |
1974 | } |
1975 | } |
1976 | |
1977 | static const char * |
1978 | output_265 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
1979 | { |
1980 | #line 6570 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
1981 | { |
1982 | switch (get_attr_type (insn)) |
1983 | { |
1984 | case TYPE_INCDEC: |
1985 | if (operands[2] == constm1_rtx(const_int_rtx[64 -1])) |
1986 | return "inc{w}\t%0"; |
1987 | else |
1988 | { |
1989 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6578, __FUNCTION__), 0 : 0)); |
1990 | return "dec{w}\t%0"; |
1991 | } |
1992 | |
1993 | default: |
1994 | if (x86_maybe_negate_const_int (&operands[2], HImode(scalar_int_mode ((scalar_int_mode::from_int) E_HImode)))) |
1995 | return "add{w}\t{%2, %0|%0, %2}"; |
1996 | |
1997 | return "sub{w}\t{%2, %0|%0, %2}"; |
1998 | } |
1999 | } |
2000 | } |
2001 | |
2002 | static const char * |
2003 | output_266 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2004 | { |
2005 | #line 6570 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2006 | { |
2007 | switch (get_attr_type (insn)) |
2008 | { |
2009 | case TYPE_INCDEC: |
2010 | if (operands[2] == constm1_rtx(const_int_rtx[64 -1])) |
2011 | return "inc{l}\t%0"; |
2012 | else |
2013 | { |
2014 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6578, __FUNCTION__), 0 : 0)); |
2015 | return "dec{l}\t%0"; |
2016 | } |
2017 | |
2018 | default: |
2019 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
2020 | return "add{l}\t{%2, %0|%0, %2}"; |
2021 | |
2022 | return "sub{l}\t{%2, %0|%0, %2}"; |
2023 | } |
2024 | } |
2025 | } |
2026 | |
2027 | static const char * |
2028 | output_267 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2029 | { |
2030 | #line 6610 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2031 | { |
2032 | switch (get_attr_type (insn)) |
2033 | { |
2034 | case TYPE_INCDEC: |
2035 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
2036 | return "inc{b}\t%0"; |
2037 | else |
2038 | { |
2039 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6618, __FUNCTION__), 0 : 0)); |
2040 | return "dec{b}\t%0"; |
2041 | } |
2042 | |
2043 | default: |
2044 | if (which_alternative == 1) |
2045 | std::swap (operands[1], operands[2]); |
2046 | |
2047 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6626, __FUNCTION__), 0 : 0)); |
2048 | if (x86_maybe_negate_const_int (&operands[2], QImode(scalar_int_mode ((scalar_int_mode::from_int) E_QImode)))) |
2049 | return "sub{b}\t{%2, %0|%0, %2}"; |
2050 | |
2051 | return "add{b}\t{%2, %0|%0, %2}"; |
2052 | } |
2053 | } |
2054 | } |
2055 | |
2056 | static const char * |
2057 | output_268 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2058 | { |
2059 | #line 6610 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2060 | { |
2061 | switch (get_attr_type (insn)) |
2062 | { |
2063 | case TYPE_INCDEC: |
2064 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
2065 | return "inc{w}\t%0"; |
2066 | else |
2067 | { |
2068 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6618, __FUNCTION__), 0 : 0)); |
2069 | return "dec{w}\t%0"; |
2070 | } |
2071 | |
2072 | default: |
2073 | if (which_alternative == 1) |
2074 | std::swap (operands[1], operands[2]); |
2075 | |
2076 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6626, __FUNCTION__), 0 : 0)); |
2077 | if (x86_maybe_negate_const_int (&operands[2], HImode(scalar_int_mode ((scalar_int_mode::from_int) E_HImode)))) |
2078 | return "sub{w}\t{%2, %0|%0, %2}"; |
2079 | |
2080 | return "add{w}\t{%2, %0|%0, %2}"; |
2081 | } |
2082 | } |
2083 | } |
2084 | |
2085 | static const char * |
2086 | output_269 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2087 | { |
2088 | #line 6610 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2089 | { |
2090 | switch (get_attr_type (insn)) |
2091 | { |
2092 | case TYPE_INCDEC: |
2093 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
2094 | return "inc{l}\t%0"; |
2095 | else |
2096 | { |
2097 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6618, __FUNCTION__), 0 : 0)); |
2098 | return "dec{l}\t%0"; |
2099 | } |
2100 | |
2101 | default: |
2102 | if (which_alternative == 1) |
2103 | std::swap (operands[1], operands[2]); |
2104 | |
2105 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6626, __FUNCTION__), 0 : 0)); |
2106 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
2107 | return "sub{l}\t{%2, %0|%0, %2}"; |
2108 | |
2109 | return "add{l}\t{%2, %0|%0, %2}"; |
2110 | } |
2111 | } |
2112 | } |
2113 | |
2114 | static const char * |
2115 | output_270 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2116 | { |
2117 | #line 6610 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2118 | { |
2119 | switch (get_attr_type (insn)) |
2120 | { |
2121 | case TYPE_INCDEC: |
2122 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
2123 | return "inc{q}\t%0"; |
2124 | else |
2125 | { |
2126 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6618, __FUNCTION__), 0 : 0)); |
2127 | return "dec{q}\t%0"; |
2128 | } |
2129 | |
2130 | default: |
2131 | if (which_alternative == 1) |
2132 | std::swap (operands[1], operands[2]); |
2133 | |
2134 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6626, __FUNCTION__), 0 : 0)); |
2135 | if (x86_maybe_negate_const_int (&operands[2], DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)))) |
2136 | return "sub{q}\t{%2, %0|%0, %2}"; |
2137 | |
2138 | return "add{q}\t{%2, %0|%0, %2}"; |
2139 | } |
2140 | } |
2141 | } |
2142 | |
2143 | static const char * |
2144 | output_274 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2145 | { |
2146 | #line 6690 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2147 | { |
2148 | switch (get_attr_type (insn)) |
2149 | { |
2150 | case TYPE_INCDEC: |
2151 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
2152 | return "inc{b}\t%h0"; |
2153 | else |
2154 | { |
2155 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6698, __FUNCTION__), 0 : 0)); |
2156 | return "dec{b}\t%h0"; |
2157 | } |
2158 | |
2159 | default: |
2160 | return "add{b}\t{%2, %h0|%h0, %2}"; |
2161 | } |
2162 | } |
2163 | } |
2164 | |
2165 | static const char * |
2166 | output_275 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2167 | { |
2168 | #line 6690 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2169 | { |
2170 | switch (get_attr_type (insn)) |
2171 | { |
2172 | case TYPE_INCDEC: |
2173 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
2174 | return "inc{b}\t%h0"; |
2175 | else |
2176 | { |
2177 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6698, __FUNCTION__), 0 : 0)); |
2178 | return "dec{b}\t%h0"; |
2179 | } |
2180 | |
2181 | default: |
2182 | return "add{b}\t{%2, %h0|%h0, %2}"; |
2183 | } |
2184 | } |
2185 | } |
2186 | |
2187 | static const char * |
2188 | output_276 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2189 | { |
2190 | #line 6690 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2191 | { |
2192 | switch (get_attr_type (insn)) |
2193 | { |
2194 | case TYPE_INCDEC: |
2195 | if (operands[2] == const1_rtx(const_int_rtx[64 +1])) |
2196 | return "inc{b}\t%h0"; |
2197 | else |
2198 | { |
2199 | gcc_assert (operands[2] == constm1_rtx)((void)(!(operands[2] == (const_int_rtx[64 -1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 6698, __FUNCTION__), 0 : 0)); |
2200 | return "dec{b}\t%h0"; |
2201 | } |
2202 | |
2203 | default: |
2204 | return "add{b}\t{%2, %h0|%h0, %2}"; |
2205 | } |
2206 | } |
2207 | } |
2208 | |
2209 | static const char * const output_327[] = { |
2210 | "sub{b}\t{%2, %0|%0, %2}", |
2211 | "#", |
2212 | }; |
2213 | |
2214 | static const char * const output_328[] = { |
2215 | "sub{w}\t{%2, %0|%0, %2}", |
2216 | "#", |
2217 | }; |
2218 | |
2219 | static const char * |
2220 | output_404 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2221 | { |
2222 | #line 7938 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2223 | { |
2224 | operands[3] = simplify_subreg (SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)), operands[2], DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)), 0); |
2225 | return "sbb{l}\t{%3, %0|%0, %3}"; |
2226 | } |
2227 | } |
2228 | |
2229 | static const char * |
2230 | output_405 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2231 | { |
2232 | #line 7938 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2233 | { |
2234 | operands[3] = simplify_subreg (DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)), operands[2], TImode(scalar_int_mode ((scalar_int_mode::from_int) E_TImode)), 0); |
2235 | return "sbb{q}\t{%3, %0|%0, %3}"; |
2236 | } |
2237 | } |
2238 | |
2239 | static const char * const output_468[] = { |
2240 | "imul{w}\t{%2, %1, %0|%0, %1, %2}", |
2241 | "imul{w}\t{%2, %1, %0|%0, %1, %2}", |
2242 | "imul{w}\t{%2, %0|%0, %2}", |
2243 | }; |
2244 | |
2245 | static const char * const output_469[] = { |
2246 | "imul{l}\t{%2, %1, %0|%0, %1, %2}", |
2247 | "imul{l}\t{%2, %1, %0|%0, %1, %2}", |
2248 | "imul{l}\t{%2, %0|%0, %2}", |
2249 | }; |
2250 | |
2251 | static const char * const output_470[] = { |
2252 | "imul{q}\t{%2, %1, %0|%0, %1, %2}", |
2253 | "imul{q}\t{%2, %1, %0|%0, %1, %2}", |
2254 | "imul{q}\t{%2, %0|%0, %2}", |
2255 | }; |
2256 | |
2257 | static const char * const output_471[] = { |
2258 | "imul{l}\t{%2, %1, %k0|%k0, %1, %2}", |
2259 | "imul{l}\t{%2, %1, %k0|%k0, %1, %2}", |
2260 | "imul{l}\t{%2, %k0|%k0, %2}", |
2261 | }; |
2262 | |
2263 | static const char * const output_473[] = { |
2264 | "imul{l}\t{%2, %1, %0|%0, %1, %2}", |
2265 | "imul{l}\t{%2, %0|%0, %2}", |
2266 | }; |
2267 | |
2268 | static const char * const output_474[] = { |
2269 | "imul{q}\t{%2, %1, %0|%0, %1, %2}", |
2270 | "imul{q}\t{%2, %0|%0, %2}", |
2271 | }; |
2272 | |
2273 | static const char * const output_486[] = { |
2274 | "#", |
2275 | "mul{l}\t%2", |
2276 | }; |
2277 | |
2278 | static const char * const output_487[] = { |
2279 | "#", |
2280 | "mul{q}\t%2", |
2281 | }; |
2282 | |
2283 | static const char * const output_539[] = { |
2284 | "test{l}\t{%k1, %k0|%k0, %k1}", |
2285 | "test{q}\t{%1, %0|%0, %1}", |
2286 | }; |
2287 | |
2288 | static const char * |
2289 | output_540 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2290 | { |
2291 | #line 9849 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2292 | { |
2293 | if (get_attr_mode (insn) == MODE_SI) |
2294 | { |
2295 | if (CONST_INT_P (operands[1])(((enum rtx_code) (operands[1])->code) == CONST_INT) && INTVAL (operands[1])((operands[1])->u.hwint[0]) < 0) |
2296 | operands[1] = GEN_INT (INTVAL (operands[1]) & 0xff)gen_rtx_CONST_INT (((void) 0, E_VOIDmode), (((operands[1])-> u.hwint[0]) & 0xff)); |
2297 | return "test{l}\t{%1, %k0|%k0, %1}"; |
2298 | } |
2299 | return "test{b}\t{%1, %0|%0, %1}"; |
2300 | } |
2301 | } |
2302 | |
2303 | static const char * const output_562[] = { |
2304 | "and{l}\t{%k2, %k0|%k0, %k2}", |
2305 | "and{q}\t{%2, %0|%0, %2}", |
2306 | "and{q}\t{%2, %0|%0, %2}", |
2307 | "#", |
2308 | "#", |
2309 | }; |
2310 | |
2311 | static const char * const output_565[] = { |
2312 | "and{w}\t{%2, %0|%0, %2}", |
2313 | "and{w}\t{%2, %0|%0, %2}", |
2314 | "#", |
2315 | "#", |
2316 | }; |
2317 | |
2318 | static const char * const output_566[] = { |
2319 | "and{l}\t{%2, %0|%0, %2}", |
2320 | "and{l}\t{%2, %0|%0, %2}", |
2321 | "#", |
2322 | "#", |
2323 | }; |
2324 | |
2325 | static const char * const output_567[] = { |
2326 | "and{b}\t{%2, %0|%0, %2}", |
2327 | "and{b}\t{%2, %0|%0, %2}", |
2328 | "and{l}\t{%k2, %k0|%k0, %k2}", |
2329 | "#", |
2330 | }; |
2331 | |
2332 | static const char * const output_568[] = { |
2333 | "and{b}\t{%2, %0|%0, %2}", |
2334 | "#", |
2335 | }; |
2336 | |
2337 | static const char * const output_569[] = { |
2338 | "and{w}\t{%2, %0|%0, %2}", |
2339 | "#", |
2340 | }; |
2341 | |
2342 | static const char * const output_570[] = { |
2343 | "and{l}\t{%k2, %k0|%k0, %k2}", |
2344 | "and{q}\t{%2, %0|%0, %2}", |
2345 | "and{q}\t{%2, %0|%0, %2}", |
2346 | }; |
2347 | |
2348 | static const char * |
2349 | output_572 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2350 | { |
2351 | #line 10524 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2352 | { |
2353 | if (get_attr_mode (insn) == MODE_SI) |
2354 | { |
2355 | if (CONST_INT_P (operands[2])(((enum rtx_code) (operands[2])->code) == CONST_INT) && INTVAL (operands[2])((operands[2])->u.hwint[0]) < 0) |
2356 | operands[2] = GEN_INT (INTVAL (operands[2]) & 0xff)gen_rtx_CONST_INT (((void) 0, E_VOIDmode), (((operands[2])-> u.hwint[0]) & 0xff)); |
2357 | return "and{l}\t{%2, %k0|%k0, %2}"; |
2358 | } |
2359 | return "and{b}\t{%2, %0|%0, %2}"; |
2360 | } |
2361 | } |
2362 | |
2363 | static const char * const output_592[] = { |
2364 | "andn\t{%2, %1, %0|%0, %1, %2}", |
2365 | "andn\t{%2, %1, %0|%0, %1, %2}", |
2366 | "#", |
2367 | }; |
2368 | |
2369 | static const char * const output_593[] = { |
2370 | "andn\t{%2, %1, %0|%0, %1, %2}", |
2371 | "andn\t{%2, %1, %0|%0, %1, %2}", |
2372 | "#", |
2373 | }; |
2374 | |
2375 | static const char * const output_594[] = { |
2376 | "andn\t{%k2, %k1, %k0|%k0, %k1, %k2}", |
2377 | "#", |
2378 | }; |
2379 | |
2380 | static const char * const output_595[] = { |
2381 | "andn\t{%k2, %k1, %k0|%k0, %k1, %k2}", |
2382 | "#", |
2383 | }; |
2384 | |
2385 | static const char * const output_602[] = { |
2386 | "or{w}\t{%2, %0|%0, %2}", |
2387 | "or{w}\t{%2, %0|%0, %2}", |
2388 | "#", |
2389 | }; |
2390 | |
2391 | static const char * const output_603[] = { |
2392 | "xor{w}\t{%2, %0|%0, %2}", |
2393 | "xor{w}\t{%2, %0|%0, %2}", |
2394 | "#", |
2395 | }; |
2396 | |
2397 | static const char * const output_604[] = { |
2398 | "or{l}\t{%2, %0|%0, %2}", |
2399 | "or{l}\t{%2, %0|%0, %2}", |
2400 | "#", |
2401 | }; |
2402 | |
2403 | static const char * const output_605[] = { |
2404 | "xor{l}\t{%2, %0|%0, %2}", |
2405 | "xor{l}\t{%2, %0|%0, %2}", |
2406 | "#", |
2407 | }; |
2408 | |
2409 | static const char * const output_606[] = { |
2410 | "or{q}\t{%2, %0|%0, %2}", |
2411 | "or{q}\t{%2, %0|%0, %2}", |
2412 | "#", |
2413 | }; |
2414 | |
2415 | static const char * const output_607[] = { |
2416 | "xor{q}\t{%2, %0|%0, %2}", |
2417 | "xor{q}\t{%2, %0|%0, %2}", |
2418 | "#", |
2419 | }; |
2420 | |
2421 | static const char * const output_620[] = { |
2422 | "or{b}\t{%2, %0|%0, %2}", |
2423 | "or{b}\t{%2, %0|%0, %2}", |
2424 | "or{l}\t{%k2, %k0|%k0, %k2}", |
2425 | "#", |
2426 | }; |
2427 | |
2428 | static const char * const output_621[] = { |
2429 | "xor{b}\t{%2, %0|%0, %2}", |
2430 | "xor{b}\t{%2, %0|%0, %2}", |
2431 | "xor{l}\t{%k2, %k0|%k0, %k2}", |
2432 | "#", |
2433 | }; |
2434 | |
2435 | static const char * const output_623[] = { |
2436 | "or{b}\t{%2, %0|%0, %2}", |
2437 | "#", |
2438 | }; |
2439 | |
2440 | static const char * const output_624[] = { |
2441 | "xor{b}\t{%2, %0|%0, %2}", |
2442 | "#", |
2443 | }; |
2444 | |
2445 | static const char * const output_625[] = { |
2446 | "or{w}\t{%2, %0|%0, %2}", |
2447 | "#", |
2448 | }; |
2449 | |
2450 | static const char * const output_626[] = { |
2451 | "xor{w}\t{%2, %0|%0, %2}", |
2452 | "#", |
2453 | }; |
2454 | |
2455 | static const char * const output_717[] = { |
2456 | "neg{b}\t%0", |
2457 | "#", |
2458 | }; |
2459 | |
2460 | static const char * const output_718[] = { |
2461 | "neg{w}\t%0", |
2462 | "#", |
2463 | }; |
2464 | |
2465 | static const char * const output_776[] = { |
2466 | "not{w}\t%0", |
2467 | "#", |
2468 | }; |
2469 | |
2470 | static const char * const output_777[] = { |
2471 | "not{l}\t%0", |
2472 | "#", |
2473 | }; |
2474 | |
2475 | static const char * const output_778[] = { |
2476 | "not{q}\t%0", |
2477 | "#", |
2478 | }; |
2479 | |
2480 | static const char * const output_779[] = { |
2481 | "not{l}\t%k0", |
2482 | "#", |
2483 | }; |
2484 | |
2485 | static const char * const output_780[] = { |
2486 | "not{b}\t%0", |
2487 | "not{l}\t%k0", |
2488 | "#", |
2489 | }; |
2490 | |
2491 | static const char * const output_781[] = { |
2492 | "not{b}\t%0", |
2493 | "#", |
2494 | }; |
2495 | |
2496 | static const char * const output_782[] = { |
2497 | "not{w}\t%0", |
2498 | "#", |
2499 | }; |
2500 | |
2501 | static const char * |
2502 | output_808 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2503 | { |
2504 | #line 12965 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2505 | { |
2506 | switch (get_attr_type (insn)) |
2507 | { |
2508 | case TYPE_LEA: |
2509 | case TYPE_ISHIFTX: |
2510 | case TYPE_MSKLOG: |
2511 | return "#"; |
2512 | |
2513 | case TYPE_ALU: |
2514 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 12974, __FUNCTION__), 0 : 0)); |
2515 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 12975, __FUNCTION__), 0 : 0)); |
2516 | return "add{l}\t%0, %0"; |
2517 | |
2518 | default: |
2519 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2520 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2521 | return "sal{l}\t%0"; |
2522 | else |
2523 | return "sal{l}\t{%2, %0|%0, %2}"; |
2524 | } |
2525 | } |
2526 | } |
2527 | |
2528 | static const char * |
2529 | output_809 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2530 | { |
2531 | #line 12965 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2532 | { |
2533 | switch (get_attr_type (insn)) |
2534 | { |
2535 | case TYPE_LEA: |
2536 | case TYPE_ISHIFTX: |
2537 | case TYPE_MSKLOG: |
2538 | return "#"; |
2539 | |
2540 | case TYPE_ALU: |
2541 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 12974, __FUNCTION__), 0 : 0)); |
2542 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 12975, __FUNCTION__), 0 : 0)); |
2543 | return "add{q}\t%0, %0"; |
2544 | |
2545 | default: |
2546 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2547 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2548 | return "sal{q}\t%0"; |
2549 | else |
2550 | return "sal{q}\t{%2, %0|%0, %2}"; |
2551 | } |
2552 | } |
2553 | } |
2554 | |
2555 | static const char * |
2556 | output_811 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2557 | { |
2558 | #line 13039 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2559 | { |
2560 | switch (get_attr_type (insn)) |
2561 | { |
2562 | case TYPE_LEA: |
2563 | case TYPE_ISHIFTX: |
2564 | return "#"; |
2565 | |
2566 | case TYPE_ALU: |
2567 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13047, __FUNCTION__), 0 : 0)); |
2568 | return "add{l}\t%k0, %k0"; |
2569 | |
2570 | default: |
2571 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2572 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2573 | return "sal{l}\t%k0"; |
2574 | else |
2575 | return "sal{l}\t{%2, %k0|%k0, %2}"; |
2576 | } |
2577 | } |
2578 | } |
2579 | |
2580 | static const char * |
2581 | output_812 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2582 | { |
2583 | #line 13098 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2584 | { |
2585 | switch (get_attr_type (insn)) |
2586 | { |
2587 | case TYPE_LEA: |
2588 | case TYPE_MSKLOG: |
2589 | return "#"; |
2590 | |
2591 | case TYPE_ALU: |
2592 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13106, __FUNCTION__), 0 : 0)); |
2593 | return "add{w}\t%0, %0"; |
2594 | |
2595 | default: |
2596 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2597 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2598 | return "sal{w}\t%0"; |
2599 | else |
2600 | return "sal{w}\t{%2, %0|%0, %2}"; |
2601 | } |
2602 | } |
2603 | } |
2604 | |
2605 | static const char * |
2606 | output_813 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2607 | { |
2608 | #line 13146 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2609 | { |
2610 | switch (get_attr_type (insn)) |
2611 | { |
2612 | case TYPE_LEA: |
2613 | case TYPE_MSKLOG: |
2614 | return "#"; |
2615 | |
2616 | case TYPE_ALU: |
2617 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13154, __FUNCTION__), 0 : 0)); |
2618 | if (REG_P (operands[1])(((enum rtx_code) (operands[1])->code) == REG) && !ANY_QI_REGNO_P (REGNO (operands[1]))(((global_options.x_ix86_isa_flags & (1UL << 1)) != 0) ? ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (0) <= (unsigned long) (7) - (unsigned long) (0))) || ((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (36) <= (unsigned long) (43) - (unsigned long) (36))) : ( (unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (3) - (unsigned long) (0)))) |
2619 | return "add{l}\t%k0, %k0"; |
2620 | else |
2621 | return "add{b}\t%0, %0"; |
2622 | |
2623 | default: |
2624 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2625 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2626 | { |
2627 | if (get_attr_mode (insn) == MODE_SI) |
2628 | return "sal{l}\t%k0"; |
2629 | else |
2630 | return "sal{b}\t%0"; |
2631 | } |
2632 | else |
2633 | { |
2634 | if (get_attr_mode (insn) == MODE_SI) |
2635 | return "sal{l}\t{%2, %k0|%k0, %2}"; |
2636 | else |
2637 | return "sal{b}\t{%2, %0|%0, %2}"; |
2638 | } |
2639 | } |
2640 | } |
2641 | } |
2642 | |
2643 | static const char * |
2644 | output_814 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2645 | { |
2646 | #line 13213 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2647 | { |
2648 | if (which_alternative) |
2649 | return "#"; |
2650 | |
2651 | switch (get_attr_type (insn)) |
2652 | { |
2653 | case TYPE_ALU: |
2654 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13220, __FUNCTION__), 0 : 0)); |
2655 | return "add{b}\t%0, %0"; |
2656 | |
2657 | default: |
2658 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2659 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2660 | return "sal{b}\t%0"; |
2661 | else |
2662 | return "sal{b}\t{%2, %0|%0, %2}"; |
2663 | } |
2664 | } |
2665 | } |
2666 | |
2667 | static const char * |
2668 | output_815 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2669 | { |
2670 | #line 13213 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2671 | { |
2672 | if (which_alternative) |
2673 | return "#"; |
2674 | |
2675 | switch (get_attr_type (insn)) |
2676 | { |
2677 | case TYPE_ALU: |
2678 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13220, __FUNCTION__), 0 : 0)); |
2679 | return "add{w}\t%0, %0"; |
2680 | |
2681 | default: |
2682 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2683 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2684 | return "sal{w}\t%0"; |
2685 | else |
2686 | return "sal{w}\t{%2, %0|%0, %2}"; |
2687 | } |
2688 | } |
2689 | } |
2690 | |
2691 | static const char * |
2692 | output_816 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2693 | { |
2694 | #line 13308 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2695 | { |
2696 | switch (get_attr_type (insn)) |
2697 | { |
2698 | case TYPE_ALU: |
2699 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13312, __FUNCTION__), 0 : 0)); |
2700 | return "add{b}\t%0, %0"; |
2701 | |
2702 | default: |
2703 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2704 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2705 | return "sal{b}\t%0"; |
2706 | else |
2707 | return "sal{b}\t{%2, %0|%0, %2}"; |
2708 | } |
2709 | } |
2710 | } |
2711 | |
2712 | static const char * |
2713 | output_817 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2714 | { |
2715 | #line 13308 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2716 | { |
2717 | switch (get_attr_type (insn)) |
2718 | { |
2719 | case TYPE_ALU: |
2720 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13312, __FUNCTION__), 0 : 0)); |
2721 | return "add{w}\t%0, %0"; |
2722 | |
2723 | default: |
2724 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2725 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2726 | return "sal{w}\t%0"; |
2727 | else |
2728 | return "sal{w}\t{%2, %0|%0, %2}"; |
2729 | } |
2730 | } |
2731 | } |
2732 | |
2733 | static const char * |
2734 | output_818 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2735 | { |
2736 | #line 13308 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2737 | { |
2738 | switch (get_attr_type (insn)) |
2739 | { |
2740 | case TYPE_ALU: |
2741 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13312, __FUNCTION__), 0 : 0)); |
2742 | return "add{l}\t%0, %0"; |
2743 | |
2744 | default: |
2745 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2746 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2747 | return "sal{l}\t%0"; |
2748 | else |
2749 | return "sal{l}\t{%2, %0|%0, %2}"; |
2750 | } |
2751 | } |
2752 | } |
2753 | |
2754 | static const char * |
2755 | output_819 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2756 | { |
2757 | #line 13308 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2758 | { |
2759 | switch (get_attr_type (insn)) |
2760 | { |
2761 | case TYPE_ALU: |
2762 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13312, __FUNCTION__), 0 : 0)); |
2763 | return "add{q}\t%0, %0"; |
2764 | |
2765 | default: |
2766 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2767 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2768 | return "sal{q}\t%0"; |
2769 | else |
2770 | return "sal{q}\t{%2, %0|%0, %2}"; |
2771 | } |
2772 | } |
2773 | } |
2774 | |
2775 | static const char * |
2776 | output_820 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2777 | { |
2778 | #line 13357 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2779 | { |
2780 | switch (get_attr_type (insn)) |
2781 | { |
2782 | case TYPE_ALU: |
2783 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13361, __FUNCTION__), 0 : 0)); |
2784 | return "add{l}\t%k0, %k0"; |
2785 | |
2786 | default: |
2787 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2788 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2789 | return "sal{l}\t%k0"; |
2790 | else |
2791 | return "sal{l}\t{%2, %k0|%k0, %2}"; |
2792 | } |
2793 | } |
2794 | } |
2795 | |
2796 | static const char * |
2797 | output_821 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2798 | { |
2799 | #line 13402 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2800 | { |
2801 | switch (get_attr_type (insn)) |
2802 | { |
2803 | case TYPE_ALU: |
2804 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13406, __FUNCTION__), 0 : 0)); |
2805 | return "add{b}\t%0, %0"; |
2806 | |
2807 | default: |
2808 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2809 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2810 | return "sal{b}\t%0"; |
2811 | else |
2812 | return "sal{b}\t{%2, %0|%0, %2}"; |
2813 | } |
2814 | } |
2815 | } |
2816 | |
2817 | static const char * |
2818 | output_822 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2819 | { |
2820 | #line 13402 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2821 | { |
2822 | switch (get_attr_type (insn)) |
2823 | { |
2824 | case TYPE_ALU: |
2825 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13406, __FUNCTION__), 0 : 0)); |
2826 | return "add{w}\t%0, %0"; |
2827 | |
2828 | default: |
2829 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2830 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2831 | return "sal{w}\t%0"; |
2832 | else |
2833 | return "sal{w}\t{%2, %0|%0, %2}"; |
2834 | } |
2835 | } |
2836 | } |
2837 | |
2838 | static const char * |
2839 | output_823 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2840 | { |
2841 | #line 13402 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2842 | { |
2843 | switch (get_attr_type (insn)) |
2844 | { |
2845 | case TYPE_ALU: |
2846 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13406, __FUNCTION__), 0 : 0)); |
2847 | return "add{l}\t%0, %0"; |
2848 | |
2849 | default: |
2850 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2851 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2852 | return "sal{l}\t%0"; |
2853 | else |
2854 | return "sal{l}\t{%2, %0|%0, %2}"; |
2855 | } |
2856 | } |
2857 | } |
2858 | |
2859 | static const char * |
2860 | output_824 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2861 | { |
2862 | #line 13402 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2863 | { |
2864 | switch (get_attr_type (insn)) |
2865 | { |
2866 | case TYPE_ALU: |
2867 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13406, __FUNCTION__), 0 : 0)); |
2868 | return "add{q}\t%0, %0"; |
2869 | |
2870 | default: |
2871 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2872 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2873 | return "sal{q}\t%0"; |
2874 | else |
2875 | return "sal{q}\t{%2, %0|%0, %2}"; |
2876 | } |
2877 | } |
2878 | } |
2879 | |
2880 | static const char * |
2881 | output_825 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2882 | { |
2883 | #line 13451 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2884 | { |
2885 | switch (get_attr_type (insn)) |
2886 | { |
2887 | case TYPE_ALU: |
2888 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13455, __FUNCTION__), 0 : 0)); |
2889 | return "add{b}\t%h0, %h0"; |
2890 | |
2891 | default: |
2892 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2893 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2894 | return "sal{b}\t%h0"; |
2895 | else |
2896 | return "sal{b}\t{%2, %h0|%h0, %2}"; |
2897 | } |
2898 | } |
2899 | } |
2900 | |
2901 | static const char * |
2902 | output_826 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2903 | { |
2904 | #line 13451 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2905 | { |
2906 | switch (get_attr_type (insn)) |
2907 | { |
2908 | case TYPE_ALU: |
2909 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13455, __FUNCTION__), 0 : 0)); |
2910 | return "add{b}\t%h0, %h0"; |
2911 | |
2912 | default: |
2913 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2914 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2915 | return "sal{b}\t%h0"; |
2916 | else |
2917 | return "sal{b}\t{%2, %h0|%h0, %2}"; |
2918 | } |
2919 | } |
2920 | } |
2921 | |
2922 | static const char * |
2923 | output_827 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2924 | { |
2925 | #line 13451 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2926 | { |
2927 | switch (get_attr_type (insn)) |
2928 | { |
2929 | case TYPE_ALU: |
2930 | gcc_assert (operands[2] == const1_rtx)((void)(!(operands[2] == (const_int_rtx[64 +1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 13455, __FUNCTION__), 0 : 0)); |
2931 | return "add{b}\t%h0, %h0"; |
2932 | |
2933 | default: |
2934 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2935 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2936 | return "sal{b}\t%h0"; |
2937 | else |
2938 | return "sal{b}\t{%2, %h0|%h0, %2}"; |
2939 | } |
2940 | } |
2941 | } |
2942 | |
2943 | static const char * const output_856[] = { |
2944 | "{cltd|cdq}", |
2945 | "sar{l}\t{%2, %0|%0, %2}", |
2946 | }; |
2947 | |
2948 | static const char * const output_857[] = { |
2949 | "{cqto|cqo}", |
2950 | "sar{q}\t{%2, %0|%0, %2}", |
2951 | }; |
2952 | |
2953 | static const char * const output_858[] = { |
2954 | "{cltd|cdq}", |
2955 | "sar{l}\t{%2, %k0|%k0, %2}", |
2956 | }; |
2957 | |
2958 | static const char * |
2959 | output_863 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2960 | { |
2961 | #line 13966 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2962 | { |
2963 | switch (get_attr_type (insn)) |
2964 | { |
2965 | case TYPE_ISHIFTX: |
2966 | return "#"; |
2967 | |
2968 | default: |
2969 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2970 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2971 | return "sar{l}\t%0"; |
2972 | else |
2973 | return "sar{l}\t{%2, %0|%0, %2}"; |
2974 | } |
2975 | } |
2976 | } |
2977 | |
2978 | static const char * |
2979 | output_864 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
2980 | { |
2981 | #line 13966 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
2982 | { |
2983 | switch (get_attr_type (insn)) |
2984 | { |
2985 | case TYPE_ISHIFTX: |
2986 | return "#"; |
2987 | |
2988 | default: |
2989 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
2990 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
2991 | return "sar{q}\t%0"; |
2992 | else |
2993 | return "sar{q}\t{%2, %0|%0, %2}"; |
2994 | } |
2995 | } |
2996 | } |
2997 | |
2998 | static const char * |
2999 | output_866 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3000 | { |
3001 | #line 14023 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3002 | { |
3003 | switch (get_attr_type (insn)) |
3004 | { |
3005 | case TYPE_ISHIFTX: |
3006 | case TYPE_MSKLOG: |
3007 | return "#"; |
3008 | |
3009 | default: |
3010 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3011 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3012 | return "shr{l}\t%0"; |
3013 | else |
3014 | return "shr{l}\t{%2, %0|%0, %2}"; |
3015 | } |
3016 | } |
3017 | } |
3018 | |
3019 | static const char * |
3020 | output_867 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3021 | { |
3022 | #line 14023 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3023 | { |
3024 | switch (get_attr_type (insn)) |
3025 | { |
3026 | case TYPE_ISHIFTX: |
3027 | case TYPE_MSKLOG: |
3028 | return "#"; |
3029 | |
3030 | default: |
3031 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3032 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3033 | return "shr{q}\t%0"; |
3034 | else |
3035 | return "shr{q}\t{%2, %0|%0, %2}"; |
3036 | } |
3037 | } |
3038 | } |
3039 | |
3040 | static const char * |
3041 | output_870 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3042 | { |
3043 | #line 14078 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3044 | { |
3045 | switch (get_attr_type (insn)) |
3046 | { |
3047 | case TYPE_ISHIFTX: |
3048 | return "#"; |
3049 | |
3050 | default: |
3051 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3052 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3053 | return "shr{l}\t%k0"; |
3054 | else |
3055 | return "shr{l}\t{%2, %k0|%k0, %2}"; |
3056 | } |
3057 | } |
3058 | } |
3059 | |
3060 | static const char * |
3061 | output_871 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3062 | { |
3063 | #line 14078 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3064 | { |
3065 | switch (get_attr_type (insn)) |
3066 | { |
3067 | case TYPE_ISHIFTX: |
3068 | return "#"; |
3069 | |
3070 | default: |
3071 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3072 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3073 | return "sar{l}\t%k0"; |
3074 | else |
3075 | return "sar{l}\t{%2, %k0|%k0, %2}"; |
3076 | } |
3077 | } |
3078 | } |
3079 | |
3080 | static const char * |
3081 | output_872 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3082 | { |
3083 | #line 14122 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3084 | { |
3085 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3086 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3087 | return "sar{b}\t%0"; |
3088 | else |
3089 | return "sar{b}\t{%2, %0|%0, %2}"; |
3090 | } |
3091 | } |
3092 | |
3093 | static const char * |
3094 | output_873 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3095 | { |
3096 | #line 14122 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3097 | { |
3098 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3099 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3100 | return "sar{w}\t%0"; |
3101 | else |
3102 | return "sar{w}\t{%2, %0|%0, %2}"; |
3103 | } |
3104 | } |
3105 | |
3106 | static const char * |
3107 | output_874 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3108 | { |
3109 | #line 14146 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3110 | { |
3111 | switch (get_attr_type (insn)) |
3112 | { |
3113 | case TYPE_ISHIFT: |
3114 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3115 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3116 | return "shr{b}\t%0"; |
3117 | else |
3118 | return "shr{b}\t{%2, %0|%0, %2}"; |
3119 | case TYPE_MSKLOG: |
3120 | return "#"; |
3121 | default: |
3122 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 14158, __FUNCTION__)); |
3123 | } |
3124 | } |
3125 | } |
3126 | |
3127 | static const char * |
3128 | output_875 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3129 | { |
3130 | #line 14180 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3131 | { |
3132 | switch (get_attr_type (insn)) |
3133 | { |
3134 | case TYPE_ISHIFT: |
3135 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3136 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3137 | return "shr{w}\t%0"; |
3138 | else |
3139 | return "shr{w}\t{%2, %0|%0, %2}"; |
3140 | case TYPE_MSKLOG: |
3141 | return "#"; |
3142 | default: |
3143 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 14192, __FUNCTION__)); |
3144 | } |
3145 | } |
3146 | } |
3147 | |
3148 | static const char * |
3149 | output_876 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3150 | { |
3151 | #line 14214 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3152 | { |
3153 | if (which_alternative) |
3154 | return "#"; |
3155 | |
3156 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3157 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3158 | return "shr{b}\t%0"; |
3159 | else |
3160 | return "shr{b}\t{%2, %0|%0, %2}"; |
3161 | } |
3162 | } |
3163 | |
3164 | static const char * |
3165 | output_877 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3166 | { |
3167 | #line 14214 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3168 | { |
3169 | if (which_alternative) |
3170 | return "#"; |
3171 | |
3172 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3173 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3174 | return "sar{b}\t%0"; |
3175 | else |
3176 | return "sar{b}\t{%2, %0|%0, %2}"; |
3177 | } |
3178 | } |
3179 | |
3180 | static const char * |
3181 | output_878 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3182 | { |
3183 | #line 14214 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3184 | { |
3185 | if (which_alternative) |
3186 | return "#"; |
3187 | |
3188 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3189 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3190 | return "shr{w}\t%0"; |
3191 | else |
3192 | return "shr{w}\t{%2, %0|%0, %2}"; |
3193 | } |
3194 | } |
3195 | |
3196 | static const char * |
3197 | output_879 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3198 | { |
3199 | #line 14214 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3200 | { |
3201 | if (which_alternative) |
3202 | return "#"; |
3203 | |
3204 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3205 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3206 | return "sar{w}\t%0"; |
3207 | else |
3208 | return "sar{w}\t{%2, %0|%0, %2}"; |
3209 | } |
3210 | } |
3211 | |
3212 | static const char * |
3213 | output_880 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3214 | { |
3215 | #line 14259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3216 | { |
3217 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3218 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3219 | return "shr{b}\t%0"; |
3220 | else |
3221 | return "shr{b}\t{%2, %0|%0, %2}"; |
3222 | } |
3223 | } |
3224 | |
3225 | static const char * |
3226 | output_881 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3227 | { |
3228 | #line 14259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3229 | { |
3230 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3231 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3232 | return "sar{b}\t%0"; |
3233 | else |
3234 | return "sar{b}\t{%2, %0|%0, %2}"; |
3235 | } |
3236 | } |
3237 | |
3238 | static const char * |
3239 | output_882 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3240 | { |
3241 | #line 14259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3242 | { |
3243 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3244 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3245 | return "shr{w}\t%0"; |
3246 | else |
3247 | return "shr{w}\t{%2, %0|%0, %2}"; |
3248 | } |
3249 | } |
3250 | |
3251 | static const char * |
3252 | output_883 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3253 | { |
3254 | #line 14259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3255 | { |
3256 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3257 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3258 | return "sar{w}\t%0"; |
3259 | else |
3260 | return "sar{w}\t{%2, %0|%0, %2}"; |
3261 | } |
3262 | } |
3263 | |
3264 | static const char * |
3265 | output_884 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3266 | { |
3267 | #line 14259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3268 | { |
3269 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3270 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3271 | return "shr{l}\t%0"; |
3272 | else |
3273 | return "shr{l}\t{%2, %0|%0, %2}"; |
3274 | } |
3275 | } |
3276 | |
3277 | static const char * |
3278 | output_885 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3279 | { |
3280 | #line 14259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3281 | { |
3282 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3283 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3284 | return "sar{l}\t%0"; |
3285 | else |
3286 | return "sar{l}\t{%2, %0|%0, %2}"; |
3287 | } |
3288 | } |
3289 | |
3290 | static const char * |
3291 | output_886 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3292 | { |
3293 | #line 14259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3294 | { |
3295 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3296 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3297 | return "shr{q}\t%0"; |
3298 | else |
3299 | return "shr{q}\t{%2, %0|%0, %2}"; |
3300 | } |
3301 | } |
3302 | |
3303 | static const char * |
3304 | output_887 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3305 | { |
3306 | #line 14259 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3307 | { |
3308 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3309 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3310 | return "sar{q}\t%0"; |
3311 | else |
3312 | return "sar{q}\t{%2, %0|%0, %2}"; |
3313 | } |
3314 | } |
3315 | |
3316 | static const char * |
3317 | output_888 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3318 | { |
3319 | #line 14291 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3320 | { |
3321 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3322 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3323 | return "shr{l}\t%k0"; |
3324 | else |
3325 | return "shr{l}\t{%2, %k0|%k0, %2}"; |
3326 | } |
3327 | } |
3328 | |
3329 | static const char * |
3330 | output_889 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3331 | { |
3332 | #line 14291 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3333 | { |
3334 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3335 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3336 | return "sar{l}\t%k0"; |
3337 | else |
3338 | return "sar{l}\t{%2, %k0|%k0, %2}"; |
3339 | } |
3340 | } |
3341 | |
3342 | static const char * |
3343 | output_890 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3344 | { |
3345 | #line 14321 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3346 | { |
3347 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3348 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3349 | return "shr{b}\t%0"; |
3350 | else |
3351 | return "shr{b}\t{%2, %0|%0, %2}"; |
3352 | } |
3353 | } |
3354 | |
3355 | static const char * |
3356 | output_891 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3357 | { |
3358 | #line 14321 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3359 | { |
3360 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3361 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3362 | return "sar{b}\t%0"; |
3363 | else |
3364 | return "sar{b}\t{%2, %0|%0, %2}"; |
3365 | } |
3366 | } |
3367 | |
3368 | static const char * |
3369 | output_892 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3370 | { |
3371 | #line 14321 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3372 | { |
3373 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3374 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3375 | return "shr{w}\t%0"; |
3376 | else |
3377 | return "shr{w}\t{%2, %0|%0, %2}"; |
3378 | } |
3379 | } |
3380 | |
3381 | static const char * |
3382 | output_893 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3383 | { |
3384 | #line 14321 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3385 | { |
3386 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3387 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3388 | return "sar{w}\t%0"; |
3389 | else |
3390 | return "sar{w}\t{%2, %0|%0, %2}"; |
3391 | } |
3392 | } |
3393 | |
3394 | static const char * |
3395 | output_894 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3396 | { |
3397 | #line 14321 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3398 | { |
3399 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3400 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3401 | return "shr{l}\t%0"; |
3402 | else |
3403 | return "shr{l}\t{%2, %0|%0, %2}"; |
3404 | } |
3405 | } |
3406 | |
3407 | static const char * |
3408 | output_895 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3409 | { |
3410 | #line 14321 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3411 | { |
3412 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3413 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3414 | return "sar{l}\t%0"; |
3415 | else |
3416 | return "sar{l}\t{%2, %0|%0, %2}"; |
3417 | } |
3418 | } |
3419 | |
3420 | static const char * |
3421 | output_896 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3422 | { |
3423 | #line 14321 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3424 | { |
3425 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3426 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3427 | return "shr{q}\t%0"; |
3428 | else |
3429 | return "shr{q}\t{%2, %0|%0, %2}"; |
3430 | } |
3431 | } |
3432 | |
3433 | static const char * |
3434 | output_897 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3435 | { |
3436 | #line 14321 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3437 | { |
3438 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3439 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3440 | return "sar{q}\t%0"; |
3441 | else |
3442 | return "sar{q}\t{%2, %0|%0, %2}"; |
3443 | } |
3444 | } |
3445 | |
3446 | static const char * |
3447 | output_898 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3448 | { |
3449 | #line 14354 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3450 | { |
3451 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3452 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3453 | return "shr{b}\t%h0"; |
3454 | else |
3455 | return "shr{b}\t{%2, %h0|%h0, %2}"; |
3456 | } |
3457 | } |
3458 | |
3459 | static const char * |
3460 | output_899 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3461 | { |
3462 | #line 14354 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3463 | { |
3464 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3465 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3466 | return "sar{b}\t%h0"; |
3467 | else |
3468 | return "sar{b}\t{%2, %h0|%h0, %2}"; |
3469 | } |
3470 | } |
3471 | |
3472 | static const char * |
3473 | output_900 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3474 | { |
3475 | #line 14354 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3476 | { |
3477 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3478 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3479 | return "shr{b}\t%h0"; |
3480 | else |
3481 | return "shr{b}\t{%2, %h0|%h0, %2}"; |
3482 | } |
3483 | } |
3484 | |
3485 | static const char * |
3486 | output_901 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3487 | { |
3488 | #line 14354 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3489 | { |
3490 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3491 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3492 | return "sar{b}\t%h0"; |
3493 | else |
3494 | return "sar{b}\t{%2, %h0|%h0, %2}"; |
3495 | } |
3496 | } |
3497 | |
3498 | static const char * |
3499 | output_902 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3500 | { |
3501 | #line 14354 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3502 | { |
3503 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3504 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3505 | return "shr{b}\t%h0"; |
3506 | else |
3507 | return "shr{b}\t{%2, %h0|%h0, %2}"; |
3508 | } |
3509 | } |
3510 | |
3511 | static const char * |
3512 | output_903 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3513 | { |
3514 | #line 14354 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3515 | { |
3516 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3517 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3518 | return "sar{b}\t%h0"; |
3519 | else |
3520 | return "sar{b}\t{%2, %h0|%h0, %2}"; |
3521 | } |
3522 | } |
3523 | |
3524 | static const char * |
3525 | output_930 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3526 | { |
3527 | #line 14642 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3528 | { |
3529 | switch (get_attr_type (insn)) |
3530 | { |
3531 | case TYPE_ROTATEX: |
3532 | return "#"; |
3533 | |
3534 | default: |
3535 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3536 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3537 | return "rol{l}\t%0"; |
3538 | else |
3539 | return "rol{l}\t{%2, %0|%0, %2}"; |
3540 | } |
3541 | } |
3542 | } |
3543 | |
3544 | static const char * |
3545 | output_931 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3546 | { |
3547 | #line 14642 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3548 | { |
3549 | switch (get_attr_type (insn)) |
3550 | { |
3551 | case TYPE_ROTATEX: |
3552 | return "#"; |
3553 | |
3554 | default: |
3555 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3556 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3557 | return "ror{l}\t%0"; |
3558 | else |
3559 | return "ror{l}\t{%2, %0|%0, %2}"; |
3560 | } |
3561 | } |
3562 | } |
3563 | |
3564 | static const char * |
3565 | output_932 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3566 | { |
3567 | #line 14642 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3568 | { |
3569 | switch (get_attr_type (insn)) |
3570 | { |
3571 | case TYPE_ROTATEX: |
3572 | return "#"; |
3573 | |
3574 | default: |
3575 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3576 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3577 | return "rol{q}\t%0"; |
3578 | else |
3579 | return "rol{q}\t{%2, %0|%0, %2}"; |
3580 | } |
3581 | } |
3582 | } |
3583 | |
3584 | static const char * |
3585 | output_933 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3586 | { |
3587 | #line 14642 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3588 | { |
3589 | switch (get_attr_type (insn)) |
3590 | { |
3591 | case TYPE_ROTATEX: |
3592 | return "#"; |
3593 | |
3594 | default: |
3595 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3596 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3597 | return "ror{q}\t%0"; |
3598 | else |
3599 | return "ror{q}\t{%2, %0|%0, %2}"; |
3600 | } |
3601 | } |
3602 | } |
3603 | |
3604 | static const char * |
3605 | output_935 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3606 | { |
3607 | #line 14713 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3608 | { |
3609 | switch (get_attr_type (insn)) |
3610 | { |
3611 | case TYPE_ROTATEX: |
3612 | return "#"; |
3613 | |
3614 | default: |
3615 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3616 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3617 | return "rol{l}\t%k0"; |
3618 | else |
3619 | return "rol{l}\t{%2, %k0|%k0, %2}"; |
3620 | } |
3621 | } |
3622 | } |
3623 | |
3624 | static const char * |
3625 | output_936 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3626 | { |
3627 | #line 14713 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3628 | { |
3629 | switch (get_attr_type (insn)) |
3630 | { |
3631 | case TYPE_ROTATEX: |
3632 | return "#"; |
3633 | |
3634 | default: |
3635 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3636 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3637 | return "ror{l}\t%k0"; |
3638 | else |
3639 | return "ror{l}\t{%2, %k0|%k0, %2}"; |
3640 | } |
3641 | } |
3642 | } |
3643 | |
3644 | static const char * |
3645 | output_937 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3646 | { |
3647 | #line 14777 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3648 | { |
3649 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3650 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3651 | return "rol{b}\t%0"; |
3652 | else |
3653 | return "rol{b}\t{%2, %0|%0, %2}"; |
3654 | } |
3655 | } |
3656 | |
3657 | static const char * |
3658 | output_938 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3659 | { |
3660 | #line 14777 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3661 | { |
3662 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3663 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3664 | return "ror{b}\t%0"; |
3665 | else |
3666 | return "ror{b}\t{%2, %0|%0, %2}"; |
3667 | } |
3668 | } |
3669 | |
3670 | static const char * |
3671 | output_939 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3672 | { |
3673 | #line 14777 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3674 | { |
3675 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3676 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3677 | return "rol{w}\t%0"; |
3678 | else |
3679 | return "rol{w}\t{%2, %0|%0, %2}"; |
3680 | } |
3681 | } |
3682 | |
3683 | static const char * |
3684 | output_940 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3685 | { |
3686 | #line 14777 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3687 | { |
3688 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3689 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3690 | return "ror{w}\t%0"; |
3691 | else |
3692 | return "ror{w}\t{%2, %0|%0, %2}"; |
3693 | } |
3694 | } |
3695 | |
3696 | static const char * |
3697 | output_941 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3698 | { |
3699 | #line 14801 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3700 | { |
3701 | if (which_alternative) |
3702 | return "#"; |
3703 | |
3704 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3705 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3706 | return "rol{b}\t%0"; |
3707 | else |
3708 | return "rol{b}\t{%2, %0|%0, %2}"; |
3709 | } |
3710 | } |
3711 | |
3712 | static const char * |
3713 | output_942 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3714 | { |
3715 | #line 14801 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3716 | { |
3717 | if (which_alternative) |
3718 | return "#"; |
3719 | |
3720 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3721 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3722 | return "ror{b}\t%0"; |
3723 | else |
3724 | return "ror{b}\t{%2, %0|%0, %2}"; |
3725 | } |
3726 | } |
3727 | |
3728 | static const char * |
3729 | output_943 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3730 | { |
3731 | #line 14801 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3732 | { |
3733 | if (which_alternative) |
3734 | return "#"; |
3735 | |
3736 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3737 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3738 | return "rol{w}\t%0"; |
3739 | else |
3740 | return "rol{w}\t{%2, %0|%0, %2}"; |
3741 | } |
3742 | } |
3743 | |
3744 | static const char * |
3745 | output_944 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3746 | { |
3747 | #line 14801 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3748 | { |
3749 | if (which_alternative) |
3750 | return "#"; |
3751 | |
3752 | if (operands[2] == const1_rtx(const_int_rtx[64 +1]) |
3753 | && (TARGET_SHIFT1ix86_tune_features[X86_TUNE_SHIFT1] || optimize_function_for_size_p (cfun(cfun + 0)))) |
3754 | return "ror{w}\t%0"; |
3755 | else |
3756 | return "ror{w}\t{%2, %0|%0, %2}"; |
3757 | } |
3758 | } |
3759 | |
3760 | static const char * |
3761 | output_970 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3762 | { |
3763 | #line 15181 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3764 | { |
3765 | switch (get_attr_mode (insn)) |
3766 | { |
3767 | case MODE_SI: |
3768 | return "bt{l}\t{%1, %k0|%k0, %1}"; |
3769 | |
3770 | case MODE_DI: |
3771 | return "bt{q}\t{%q1, %0|%0, %q1}"; |
3772 | |
3773 | default: |
3774 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 15191, __FUNCTION__)); |
3775 | } |
3776 | } |
3777 | } |
3778 | |
3779 | static const char * |
3780 | output_971 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3781 | { |
3782 | #line 15181 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3783 | { |
3784 | switch (get_attr_mode (insn)) |
3785 | { |
3786 | case MODE_SI: |
3787 | return "bt{l}\t{%1, %k0|%k0, %1}"; |
3788 | |
3789 | case MODE_DI: |
3790 | return "bt{q}\t{%q1, %0|%0, %q1}"; |
3791 | |
3792 | default: |
3793 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 15191, __FUNCTION__)); |
3794 | } |
3795 | } |
3796 | } |
3797 | |
3798 | static const char * const output_993[] = { |
3799 | "cmp%D3ss\t{%2, %0|%0, %2}", |
3800 | "vcmp%D3ss\t{%2, %1, %0|%0, %1, %2}", |
3801 | }; |
3802 | |
3803 | static const char * const output_994[] = { |
3804 | "cmp%D3sd\t{%2, %0|%0, %2}", |
3805 | "vcmp%D3sd\t{%2, %1, %0|%0, %1, %2}", |
3806 | }; |
3807 | |
3808 | static const char * |
3809 | output_998 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3810 | { |
3811 | #line 15814 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3812 | return ix86_output_indirect_jmp (operands[0]); |
3813 | } |
3814 | |
3815 | static const char * |
3816 | output_999 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3817 | { |
3818 | #line 15814 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3819 | return ix86_output_indirect_jmp (operands[0]); |
3820 | } |
3821 | |
3822 | static const char * |
3823 | output_1000 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3824 | { |
3825 | #line 15868 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3826 | return ix86_output_indirect_jmp (operands[0]); |
3827 | } |
3828 | |
3829 | static const char * |
3830 | output_1001 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3831 | { |
3832 | #line 15868 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3833 | return ix86_output_indirect_jmp (operands[0]); |
3834 | } |
3835 | |
3836 | static const char * |
3837 | output_1002 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3838 | { |
3839 | #line 16061 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3840 | return ix86_output_call_insn (insn, operands[0]); |
3841 | } |
3842 | |
3843 | static const char * |
3844 | output_1003 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3845 | { |
3846 | #line 16061 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3847 | return ix86_output_call_insn (insn, operands[0]); |
3848 | } |
3849 | |
3850 | static const char * |
3851 | output_1004 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3852 | { |
3853 | #line 16070 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3854 | { |
3855 | rtx fnaddr = gen_const_mem (DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)), XEXP (operands[0], 0)(((operands[0])->u.fld[0]).rt_rtx)); |
3856 | return ix86_output_call_insn (insn, fnaddr); |
3857 | } |
3858 | } |
3859 | |
3860 | static const char * |
3861 | output_1005 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3862 | { |
3863 | #line 16088 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3864 | { |
3865 | rtx fnaddr = gen_rtx_PLUS (SImode, operands[0], operands[1])gen_rtx_fmt_ee_stat ((PLUS), (((scalar_int_mode ((scalar_int_mode ::from_int) E_SImode)))), ((operands[0])), ((operands[1])) ); |
3866 | fnaddr = gen_const_mem (SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)), fnaddr); |
3867 | return ix86_output_call_insn (insn, fnaddr); |
3868 | } |
3869 | } |
3870 | |
3871 | static const char * |
3872 | output_1006 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3873 | { |
3874 | #line 16099 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3875 | return ix86_output_call_insn (insn, operands[0]); |
3876 | } |
3877 | |
3878 | static const char * |
3879 | output_1007 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3880 | { |
3881 | #line 16099 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3882 | return ix86_output_call_insn (insn, operands[0]); |
3883 | } |
3884 | |
3885 | static const char * |
3886 | output_1008 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3887 | { |
3888 | #line 16107 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3889 | return ix86_output_call_insn (insn, operands[0]); |
3890 | } |
3891 | |
3892 | static const char * |
3893 | output_1009 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3894 | { |
3895 | #line 16107 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3896 | return ix86_output_call_insn (insn, operands[0]); |
3897 | } |
3898 | |
3899 | static const char * |
3900 | output_1010 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3901 | { |
3902 | #line 16160 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3903 | return ix86_output_call_insn (insn, operands[0]); |
3904 | } |
3905 | |
3906 | static const char * |
3907 | output_1011 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3908 | { |
3909 | #line 16170 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3910 | return ix86_output_call_insn (insn, operands[0]); |
3911 | } |
3912 | |
3913 | static const char * |
3914 | output_1012 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3915 | { |
3916 | #line 16181 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3917 | return ix86_output_call_insn (insn, operands[0]); |
3918 | } |
3919 | |
3920 | static const char * |
3921 | output_1013 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3922 | { |
3923 | #line 16264 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3924 | return ix86_output_call_insn (insn, operands[1]); |
3925 | } |
3926 | |
3927 | static const char * |
3928 | output_1014 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3929 | { |
3930 | #line 16264 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3931 | return ix86_output_call_insn (insn, operands[1]); |
3932 | } |
3933 | |
3934 | static const char * |
3935 | output_1015 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3936 | { |
3937 | #line 16275 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3938 | { |
3939 | rtx fnaddr = gen_const_mem (DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)), XEXP (operands[1], 0)(((operands[1])->u.fld[0]).rt_rtx)); |
3940 | return ix86_output_call_insn (insn, fnaddr); |
3941 | } |
3942 | } |
3943 | |
3944 | static const char * |
3945 | output_1016 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3946 | { |
3947 | #line 16294 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3948 | { |
3949 | rtx fnaddr = gen_rtx_PLUS (SImode, operands[1], operands[2])gen_rtx_fmt_ee_stat ((PLUS), (((scalar_int_mode ((scalar_int_mode ::from_int) E_SImode)))), ((operands[1])), ((operands[2])) ); |
3950 | fnaddr = gen_const_mem (SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)), fnaddr); |
3951 | return ix86_output_call_insn (insn, fnaddr); |
3952 | } |
3953 | } |
3954 | |
3955 | static const char * |
3956 | output_1017 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3957 | { |
3958 | #line 16306 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3959 | return ix86_output_call_insn (insn, operands[1]); |
3960 | } |
3961 | |
3962 | static const char * |
3963 | output_1018 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3964 | { |
3965 | #line 16306 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3966 | return ix86_output_call_insn (insn, operands[1]); |
3967 | } |
3968 | |
3969 | static const char * |
3970 | output_1019 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3971 | { |
3972 | #line 16315 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3973 | return ix86_output_call_insn (insn, operands[1]); |
3974 | } |
3975 | |
3976 | static const char * |
3977 | output_1020 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3978 | { |
3979 | #line 16315 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3980 | return ix86_output_call_insn (insn, operands[1]); |
3981 | } |
3982 | |
3983 | static const char * |
3984 | output_1021 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3985 | { |
3986 | #line 16374 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3987 | return ix86_output_call_insn (insn, operands[1]); |
3988 | } |
3989 | |
3990 | static const char * |
3991 | output_1022 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3992 | { |
3993 | #line 16385 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
3994 | return ix86_output_call_insn (insn, operands[1]); |
3995 | } |
3996 | |
3997 | static const char * |
3998 | output_1023 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
3999 | { |
4000 | #line 16397 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4001 | return ix86_output_call_insn (insn, operands[1]); |
4002 | } |
4003 | |
4004 | static const char * |
4005 | output_1027 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4006 | { |
4007 | #line 16566 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4008 | return ix86_output_function_return (false); |
4009 | } |
4010 | |
4011 | static const char * |
4012 | output_1028 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4013 | { |
4014 | #line 16576 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4015 | { |
4016 | return TARGET_64BIT((global_options.x_ix86_isa_flags & (1UL << 1)) != 0 ) ? (TARGET_UINTR((global_options.x_ix86_isa_flags2 & (1UL << 33)) != 0) ? "uiret" : "iretq") : "iret"; |
4017 | } |
4018 | } |
4019 | |
4020 | static const char * |
4021 | output_1029 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4022 | { |
4023 | #line 16587 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4024 | return ix86_output_function_return (true); |
4025 | } |
4026 | |
4027 | static const char * |
4028 | output_1031 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4029 | { |
4030 | #line 16616 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4031 | return ix86_output_indirect_function_return (operands[0]); |
4032 | } |
4033 | |
4034 | static const char * |
4035 | output_1032 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4036 | { |
4037 | #line 16616 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4038 | return ix86_output_indirect_function_return (operands[0]); |
4039 | } |
4040 | |
4041 | static const char * |
4042 | output_1034 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4043 | { |
4044 | #line 16637 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4045 | { |
4046 | int num = INTVAL (operands[0])((operands[0])->u.hwint[0]); |
4047 | |
4048 | gcc_assert (IN_RANGE (num, 1, 8))((void)(!(((unsigned long) (num) - (unsigned long) (1) <= ( unsigned long) (8) - (unsigned long) (1))) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 16640, __FUNCTION__), 0 : 0)); |
4049 | |
4050 | while (num--) |
4051 | fputs ("\tnop\n", asm_out_file); |
4052 | |
4053 | return ""; |
4054 | } |
4055 | } |
4056 | |
4057 | static const char * |
4058 | output_1035 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4059 | { |
4060 | #line 16658 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4061 | { |
4062 | #ifdef ASM_OUTPUT_MAX_SKIP_ALIGN |
4063 | ASM_OUTPUT_MAX_SKIP_ALIGN (asm_out_file, 4, (int)INTVAL (operands[0]))do { if ((4) != 0) { if (((int)((operands[0])->u.hwint[0]) ) == 0 || ((int)((operands[0])->u.hwint[0])) >= (1 << (4)) - 1) fprintf ((asm_out_file), "\t.p2align %d\n", (4)); else fprintf ((asm_out_file), "\t.p2align %d,,%d\n", (4), ((int)( (operands[0])->u.hwint[0]))); } } while (0); |
4064 | #else |
4065 | /* It is tempting to use ASM_OUTPUT_ALIGN here, but we don't want to do that. |
4066 | The align insn is used to avoid 3 jump instructions in the row to improve |
4067 | branch prediction and the benefits hardly outweigh the cost of extra 8 |
4068 | nops on the average inserted by full alignment pseudo operation. */ |
4069 | #endif |
4070 | return ""; |
4071 | } |
4072 | } |
4073 | |
4074 | static const char * |
4075 | output_1036 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4076 | { |
4077 | #line 16692 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4078 | return output_set_got (operands[0], NULL_RTX(rtx) 0); |
4079 | } |
4080 | |
4081 | static const char * |
4082 | output_1037 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4083 | { |
4084 | #line 16714 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4085 | return output_set_got (operands[0], operands[1]); |
4086 | } |
4087 | |
4088 | static const char * |
4089 | output_1044 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4090 | { |
4091 | #line 16828 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4092 | { |
4093 | if (operands[0] == const0_rtx(const_int_rtx[64])) |
4094 | return "ret"; |
4095 | else |
4096 | return "ret\t%0"; |
4097 | } |
4098 | } |
4099 | |
4100 | static const char * |
4101 | output_1052 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4102 | { |
4103 | #line 16989 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4104 | { |
4105 | if (TARGET_BMI((global_options.x_ix86_isa_flags & (1UL << 23)) != 0)) |
4106 | return "tzcnt{l}\t{%1, %0|%0, %1}"; |
4107 | else if (optimize_function_for_size_p (cfun(cfun + 0))) |
4108 | ; |
4109 | else if (TARGET_CPU_P (GENERIC)(ix86_tune == PROCESSOR_GENERIC)) |
4110 | /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ |
4111 | return "rep%; bsf{l}\t{%1, %0|%0, %1}"; |
4112 | |
4113 | return "bsf{l}\t{%1, %0|%0, %1}"; |
4114 | } |
4115 | } |
4116 | |
4117 | static const char * |
4118 | output_1053 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4119 | { |
4120 | #line 16989 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4121 | { |
4122 | if (TARGET_BMI((global_options.x_ix86_isa_flags & (1UL << 23)) != 0)) |
4123 | return "tzcnt{q}\t{%1, %0|%0, %1}"; |
4124 | else if (optimize_function_for_size_p (cfun(cfun + 0))) |
4125 | ; |
4126 | else if (TARGET_CPU_P (GENERIC)(ix86_tune == PROCESSOR_GENERIC)) |
4127 | /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ |
4128 | return "rep%; bsf{q}\t{%1, %0|%0, %1}"; |
4129 | |
4130 | return "bsf{q}\t{%1, %0|%0, %1}"; |
4131 | } |
4132 | } |
4133 | |
4134 | static const char * |
4135 | output_1054 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4136 | { |
4137 | #line 17032 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4138 | { |
4139 | if (TARGET_BMI((global_options.x_ix86_isa_flags & (1UL << 23)) != 0)) |
4140 | return "tzcnt{l}\t{%1, %0|%0, %1}"; |
4141 | else if (TARGET_CPU_P (GENERIC)(ix86_tune == PROCESSOR_GENERIC)) |
4142 | /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ |
4143 | return "rep%; bsf{l}\t{%1, %0|%0, %1}"; |
4144 | else |
4145 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 17039, __FUNCTION__)); |
4146 | } |
4147 | } |
4148 | |
4149 | static const char * |
4150 | output_1055 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4151 | { |
4152 | #line 17032 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4153 | { |
4154 | if (TARGET_BMI((global_options.x_ix86_isa_flags & (1UL << 23)) != 0)) |
4155 | return "tzcnt{q}\t{%1, %0|%0, %1}"; |
4156 | else if (TARGET_CPU_P (GENERIC)(ix86_tune == PROCESSOR_GENERIC)) |
4157 | /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ |
4158 | return "rep%; bsf{q}\t{%1, %0|%0, %1}"; |
4159 | else |
4160 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 17039, __FUNCTION__)); |
4161 | } |
4162 | } |
4163 | |
4164 | static const char * |
4165 | output_1058 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4166 | { |
4167 | #line 17097 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4168 | { |
4169 | if (TARGET_BMI((global_options.x_ix86_isa_flags & (1UL << 23)) != 0)) |
4170 | return "tzcnt{l}\t{%1, %k0|%k0, %1}"; |
4171 | else if (TARGET_CPU_P (GENERIC)(ix86_tune == PROCESSOR_GENERIC) |
4172 | && !optimize_function_for_size_p (cfun(cfun + 0))) |
4173 | /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ |
4174 | return "rep%; bsf{l}\t{%1, %k0|%k0, %1}"; |
4175 | return "bsf{l}\t{%1, %k0|%k0, %1}"; |
4176 | } |
4177 | } |
4178 | |
4179 | static const char * |
4180 | output_1059 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4181 | { |
4182 | #line 17097 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4183 | { |
4184 | if (TARGET_BMI((global_options.x_ix86_isa_flags & (1UL << 23)) != 0)) |
4185 | return "tzcnt{l}\t{%1, %k0|%k0, %1}"; |
4186 | else if (TARGET_CPU_P (GENERIC)(ix86_tune == PROCESSOR_GENERIC) |
4187 | && !optimize_function_for_size_p (cfun(cfun + 0))) |
4188 | /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ |
4189 | return "rep%; bsf{l}\t{%1, %k0|%k0, %1}"; |
4190 | return "bsf{l}\t{%1, %k0|%k0, %1}"; |
4191 | } |
4192 | } |
4193 | |
4194 | static const char * |
4195 | output_1060 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4196 | { |
4197 | #line 17136 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4198 | { |
4199 | if (TARGET_BMI((global_options.x_ix86_isa_flags & (1UL << 23)) != 0)) |
4200 | return "tzcnt{l}\t{%1, %k0|%k0, %1}"; |
4201 | else if (TARGET_CPU_P (GENERIC)(ix86_tune == PROCESSOR_GENERIC)) |
4202 | /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ |
4203 | return "rep%; bsf{l}\t{%1, %k0|%k0, %1}"; |
4204 | else |
4205 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 17143, __FUNCTION__)); |
4206 | } |
4207 | } |
4208 | |
4209 | static const char * |
4210 | output_1061 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4211 | { |
4212 | #line 17136 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4213 | { |
4214 | if (TARGET_BMI((global_options.x_ix86_isa_flags & (1UL << 23)) != 0)) |
4215 | return "tzcnt{l}\t{%1, %k0|%k0, %1}"; |
4216 | else if (TARGET_CPU_P (GENERIC)(ix86_tune == PROCESSOR_GENERIC)) |
4217 | /* tzcnt expands to 'rep bsf' and we can use it even if !TARGET_BMI. */ |
4218 | return "rep%; bsf{l}\t{%1, %k0|%k0, %1}"; |
4219 | else |
4220 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 17143, __FUNCTION__)); |
4221 | } |
4222 | } |
4223 | |
4224 | static const char * |
4225 | output_1124 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4226 | { |
4227 | #line 17894 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4228 | { |
4229 | operands[2] = GEN_INT (INTVAL (operands[2]) << 8 | INTVAL (operands[3]))gen_rtx_CONST_INT (((void) 0, E_VOIDmode), (((operands[2])-> u.hwint[0]) << 8 | ((operands[3])->u.hwint[0]))); |
4230 | return "bextr\t{%2, %1, %0|%0, %1, %2}"; |
4231 | } |
4232 | } |
4233 | |
4234 | static const char * |
4235 | output_1125 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4236 | { |
4237 | #line 17894 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4238 | { |
4239 | operands[2] = GEN_INT (INTVAL (operands[2]) << 8 | INTVAL (operands[3]))gen_rtx_CONST_INT (((void) 0, E_VOIDmode), (((operands[2])-> u.hwint[0]) << 8 | ((operands[3])->u.hwint[0]))); |
4240 | return "bextr\t{%2, %1, %0|%0, %1, %2}"; |
4241 | } |
4242 | } |
4243 | |
4244 | static const char * |
4245 | output_1144 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4246 | { |
4247 | #line 18029 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4248 | { |
4249 | #if TARGET_MACHO0 |
4250 | return "popcnt\t{%1, %0|%0, %1}"; |
4251 | #else |
4252 | return "popcnt{l}\t{%1, %0|%0, %1}"; |
4253 | #endif |
4254 | } |
4255 | } |
4256 | |
4257 | static const char * |
4258 | output_1145 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4259 | { |
4260 | #line 18029 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4261 | { |
4262 | #if TARGET_MACHO0 |
4263 | return "popcnt\t{%1, %0|%0, %1}"; |
4264 | #else |
4265 | return "popcnt{q}\t{%1, %0|%0, %1}"; |
4266 | #endif |
4267 | } |
4268 | } |
4269 | |
4270 | static const char * |
4271 | output_1146 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4272 | { |
4273 | #line 18060 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4274 | { |
4275 | #if TARGET_MACHO0 |
4276 | return "popcnt\t{%1, %0|%0, %1}"; |
4277 | #else |
4278 | return "popcnt{l}\t{%1, %0|%0, %1}"; |
4279 | #endif |
4280 | } |
4281 | } |
4282 | |
4283 | static const char * |
4284 | output_1147 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4285 | { |
4286 | #line 18060 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4287 | { |
4288 | #if TARGET_MACHO0 |
4289 | return "popcnt\t{%1, %0|%0, %1}"; |
4290 | #else |
4291 | return "popcnt{q}\t{%1, %0|%0, %1}"; |
4292 | #endif |
4293 | } |
4294 | } |
4295 | |
4296 | static const char * |
4297 | output_1148 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4298 | { |
4299 | #line 18080 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4300 | { |
4301 | #if TARGET_MACHO0 |
4302 | return "popcnt\t{%1, %k0|%k0, %1}"; |
4303 | #else |
4304 | return "popcnt{l}\t{%1, %k0|%k0, %1}"; |
4305 | #endif |
4306 | } |
4307 | } |
4308 | |
4309 | static const char * |
4310 | output_1149 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4311 | { |
4312 | #line 18114 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4313 | { |
4314 | #if TARGET_MACHO0 |
4315 | return "popcnt\t{%1, %k0|%k0, %1}"; |
4316 | #else |
4317 | return "popcnt{l}\t{%1, %k0|%k0, %1}"; |
4318 | #endif |
4319 | } |
4320 | } |
4321 | |
4322 | static const char * |
4323 | output_1150 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4324 | { |
4325 | #line 18131 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4326 | { |
4327 | #if TARGET_MACHO0 |
4328 | return "popcnt\t{%1, %k0|%k0, %1}"; |
4329 | #else |
4330 | return "popcnt{l}\t{%1, %k0|%k0, %1}"; |
4331 | #endif |
4332 | } |
4333 | } |
4334 | |
4335 | static const char * |
4336 | output_1151 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4337 | { |
4338 | #line 18162 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4339 | { |
4340 | #if TARGET_MACHO0 |
4341 | return "popcnt\t{%1, %k0|%k0, %1}"; |
4342 | #else |
4343 | return "popcnt{l}\t{%1, %k0|%k0, %1}"; |
4344 | #endif |
4345 | } |
4346 | } |
4347 | |
4348 | static const char * |
4349 | output_1154 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4350 | { |
4351 | #line 18215 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4352 | { |
4353 | #if TARGET_MACHO0 |
4354 | return "popcnt\t{%1, %0|%0, %1}"; |
4355 | #else |
4356 | return "popcnt{w}\t{%1, %0|%0, %1}"; |
4357 | #endif |
4358 | } |
4359 | } |
4360 | |
4361 | static const char * const output_1155[] = { |
4362 | "bswap\t%0", |
4363 | "movbe{l}\t{%1, %0|%0, %1}", |
4364 | "movbe{l}\t{%1, %0|%0, %1}", |
4365 | }; |
4366 | |
4367 | static const char * const output_1156[] = { |
4368 | "bswap\t%0", |
4369 | "movbe{q}\t{%1, %0|%0, %1}", |
4370 | "movbe{q}\t{%1, %0|%0, %1}", |
4371 | }; |
4372 | |
4373 | static const char * const output_1159[] = { |
4374 | "xchg{b}\t{%h0, %b0|%b0, %h0}", |
4375 | "movbe{w}\t{%1, %0|%0, %1}", |
4376 | "movbe{w}\t{%1, %0|%0, %1}", |
4377 | }; |
4378 | |
4379 | static const char * const output_1160[] = { |
4380 | "xchg{b}\t{%h0, %b0|%b0, %h0}", |
4381 | "rol{w}\t{$8, %0|%0, 8}", |
4382 | }; |
4383 | |
4384 | static const char * |
4385 | output_1163 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4386 | { |
4387 | #line 18579 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4388 | { |
4389 | if (TARGET_SUN_TLS0 || flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4390 | output_asm_insn |
4391 | ("lea{l}\t{%E2@tlsgd(,%1,1), %0|%0, %E2@tlsgd[%1*1]}", operands); |
4392 | else |
4393 | output_asm_insn |
4394 | ("lea{l}\t{%E2@tlsgd(%1), %0|%0, %E2@tlsgd[%1]}", operands); |
4395 | if (TARGET_SUN_TLS0) |
4396 | #ifdef HAVE_AS_IX86_TLSGDPLT |
4397 | return "call\t%a2@tlsgdplt"; |
4398 | #else |
4399 | return "call\t%p3@plt"; |
4400 | #endif |
4401 | if (flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4402 | return "call\t%P3"; |
4403 | return "call\t{*%p3@GOT(%1)|[DWORD PTR %p3@GOT[%1]]}"; |
4404 | } |
4405 | } |
4406 | |
4407 | static const char * |
4408 | output_1164 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4409 | { |
4410 | #line 18622 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4411 | { |
4412 | if (!TARGET_X32((global_options.x_ix86_isa_flags & (1UL << 58)) != 0)) |
4413 | /* The .loc directive has effect for 'the immediately following assembly |
4414 | instruction'. So for a sequence: |
4415 | .loc f l |
4416 | .byte x |
4417 | insn1 |
4418 | the 'immediately following assembly instruction' is insn1. |
4419 | We want to emit an insn prefix here, but if we use .byte (as shown in |
4420 | 'ELF Handling For Thread-Local Storage'), a preceding .loc will point |
4421 | inside the insn sequence, rather than to the start. After relaxation |
4422 | of the sequence by the linker, the .loc might point inside an insn. |
4423 | Use data16 prefix instead, which doesn't have this problem. */ |
4424 | fputs ("\tdata16", asm_out_file); |
4425 | output_asm_insn |
4426 | ("lea{q}\t{%E1@tlsgd(%%rip), %%rdi|rdi, %E1@tlsgd[rip]}", operands); |
4427 | if (TARGET_SUN_TLS0 || flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4428 | fputs (ASM_SHORT"\t.value\t" "0x6666\n", asm_out_file); |
4429 | else |
4430 | fputs (ASM_BYTE"\t.byte\t" "0x66\n", asm_out_file); |
4431 | fputs ("\trex64\n", asm_out_file); |
4432 | if (TARGET_SUN_TLS0) |
4433 | return "call\t%p2@plt"; |
4434 | if (flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4435 | return "call\t%P2"; |
4436 | return "call\t{*%p2@GOTPCREL(%%rip)|[QWORD PTR %p2@GOTPCREL[rip]]}"; |
4437 | } |
4438 | } |
4439 | |
4440 | static const char * |
4441 | output_1165 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4442 | { |
4443 | #line 18622 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4444 | { |
4445 | if (!TARGET_X32((global_options.x_ix86_isa_flags & (1UL << 58)) != 0)) |
4446 | /* The .loc directive has effect for 'the immediately following assembly |
4447 | instruction'. So for a sequence: |
4448 | .loc f l |
4449 | .byte x |
4450 | insn1 |
4451 | the 'immediately following assembly instruction' is insn1. |
4452 | We want to emit an insn prefix here, but if we use .byte (as shown in |
4453 | 'ELF Handling For Thread-Local Storage'), a preceding .loc will point |
4454 | inside the insn sequence, rather than to the start. After relaxation |
4455 | of the sequence by the linker, the .loc might point inside an insn. |
4456 | Use data16 prefix instead, which doesn't have this problem. */ |
4457 | fputs ("\tdata16", asm_out_file); |
4458 | output_asm_insn |
4459 | ("lea{q}\t{%E1@tlsgd(%%rip), %%rdi|rdi, %E1@tlsgd[rip]}", operands); |
4460 | if (TARGET_SUN_TLS0 || flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4461 | fputs (ASM_SHORT"\t.value\t" "0x6666\n", asm_out_file); |
4462 | else |
4463 | fputs (ASM_BYTE"\t.byte\t" "0x66\n", asm_out_file); |
4464 | fputs ("\trex64\n", asm_out_file); |
4465 | if (TARGET_SUN_TLS0) |
4466 | return "call\t%p2@plt"; |
4467 | if (flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4468 | return "call\t%P2"; |
4469 | return "call\t{*%p2@GOTPCREL(%%rip)|[QWORD PTR %p2@GOTPCREL[rip]]}"; |
4470 | } |
4471 | } |
4472 | |
4473 | static const char * |
4474 | output_1166 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4475 | { |
4476 | #line 18666 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4477 | { |
4478 | output_asm_insn |
4479 | ("lea{q}\t{%E1@tlsgd(%%rip), %%rdi|rdi, %E1@tlsgd[rip]}", operands); |
4480 | output_asm_insn ("movabs{q}\t{%3, %%rax|rax, %3}", operands); |
4481 | output_asm_insn ("add{q}\t{%2, %%rax|rax, %2}", operands); |
4482 | return "call\t{*%%rax|rax}"; |
4483 | } |
4484 | } |
4485 | |
4486 | static const char * |
4487 | output_1167 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4488 | { |
4489 | #line 18699 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4490 | { |
4491 | output_asm_insn |
4492 | ("lea{l}\t{%&@tlsldm(%1), %0|%0, %&@tlsldm[%1]}", operands); |
4493 | if (TARGET_SUN_TLS0) |
4494 | { |
4495 | if (HAVE_AS_IX86_TLSLDMPLT0) |
4496 | return "call\t%&@tlsldmplt"; |
4497 | else |
4498 | return "call\t%p2@plt"; |
4499 | } |
4500 | if (flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4501 | return "call\t%P2"; |
4502 | return "call\t{*%p2@GOT(%1)|[DWORD PTR %p2@GOT[%1]]}"; |
4503 | } |
4504 | } |
4505 | |
4506 | static const char * |
4507 | output_1168 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4508 | { |
4509 | #line 18737 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4510 | { |
4511 | output_asm_insn |
4512 | ("lea{q}\t{%&@tlsld(%%rip), %%rdi|rdi, %&@tlsld[rip]}", operands); |
4513 | if (TARGET_SUN_TLS0) |
4514 | return "call\t%p1@plt"; |
4515 | if (flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4516 | return "call\t%P1"; |
4517 | return "call\t{*%p1@GOTPCREL(%%rip)|[QWORD PTR %p1@GOTPCREL[rip]]}"; |
4518 | } |
4519 | } |
4520 | |
4521 | static const char * |
4522 | output_1169 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4523 | { |
4524 | #line 18737 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4525 | { |
4526 | output_asm_insn |
4527 | ("lea{q}\t{%&@tlsld(%%rip), %%rdi|rdi, %&@tlsld[rip]}", operands); |
4528 | if (TARGET_SUN_TLS0) |
4529 | return "call\t%p1@plt"; |
4530 | if (flag_pltglobal_options.x_flag_plt || !HAVE_AS_IX86_TLS_GET_ADDR_GOT1) |
4531 | return "call\t%P1"; |
4532 | return "call\t{*%p1@GOTPCREL(%%rip)|[QWORD PTR %p1@GOTPCREL[rip]]}"; |
4533 | } |
4534 | } |
4535 | |
4536 | static const char * |
4537 | output_1170 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4538 | { |
4539 | #line 18760 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4540 | { |
4541 | output_asm_insn |
4542 | ("lea{q}\t{%&@tlsld(%%rip), %%rdi|rdi, %&@tlsld[rip]}", operands); |
4543 | output_asm_insn ("movabs{q}\t{%2, %%rax|rax, %2}", operands); |
4544 | output_asm_insn ("add{q}\t{%1, %%rax|rax, %1}", operands); |
4545 | return "call\t{*%%rax|rax}"; |
4546 | } |
4547 | } |
4548 | |
4549 | static const char * |
4550 | output_1187 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4551 | { |
4552 | #line 19060 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4553 | return output_387_binary_op (insn, operands); |
4554 | } |
4555 | |
4556 | static const char * |
4557 | output_1188 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4558 | { |
4559 | #line 19076 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4560 | return output_387_binary_op (insn, operands); |
4561 | } |
4562 | |
4563 | static const char * |
4564 | output_1189 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4565 | { |
4566 | #line 19076 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4567 | return output_387_binary_op (insn, operands); |
4568 | } |
4569 | |
4570 | static const char * const output_1194[] = { |
4571 | "%vrcpss\t{%d1, %0|%0, %d1}", |
4572 | "%vrcpss\t{%d1, %0|%0, %d1}", |
4573 | "%vrcpss\t{%1, %d0|%d0, %1}", |
4574 | }; |
4575 | |
4576 | static const char * const output_1195[] = { |
4577 | "vrcpsh\t{%d1, %0|%0, %d1}", |
4578 | "vrcpsh\t{%1, %d0|%d0, %1}", |
4579 | }; |
4580 | |
4581 | static const char * |
4582 | output_1196 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4583 | { |
4584 | #line 19155 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4585 | return output_387_binary_op (insn, operands); |
4586 | } |
4587 | |
4588 | static const char * |
4589 | output_1197 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4590 | { |
4591 | #line 19173 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4592 | return output_387_binary_op (insn, operands); |
4593 | } |
4594 | |
4595 | static const char * |
4596 | output_1198 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4597 | { |
4598 | #line 19173 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4599 | return output_387_binary_op (insn, operands); |
4600 | } |
4601 | |
4602 | static const char * |
4603 | output_1199 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4604 | { |
4605 | #line 19208 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4606 | return output_387_binary_op (insn, operands); |
4607 | } |
4608 | |
4609 | static const char * |
4610 | output_1200 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4611 | { |
4612 | #line 19208 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4613 | return output_387_binary_op (insn, operands); |
4614 | } |
4615 | |
4616 | static const char * |
4617 | output_1201 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4618 | { |
4619 | #line 19208 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4620 | return output_387_binary_op (insn, operands); |
4621 | } |
4622 | |
4623 | static const char * |
4624 | output_1202 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4625 | { |
4626 | #line 19208 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4627 | return output_387_binary_op (insn, operands); |
4628 | } |
4629 | |
4630 | static const char * |
4631 | output_1203 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4632 | { |
4633 | #line 19208 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4634 | return output_387_binary_op (insn, operands); |
4635 | } |
4636 | |
4637 | static const char * |
4638 | output_1204 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4639 | { |
4640 | #line 19208 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4641 | return output_387_binary_op (insn, operands); |
4642 | } |
4643 | |
4644 | static const char * |
4645 | output_1205 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4646 | { |
4647 | #line 19229 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4648 | return output_387_binary_op (insn, operands); |
4649 | } |
4650 | |
4651 | static const char * |
4652 | output_1206 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4653 | { |
4654 | #line 19229 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4655 | return output_387_binary_op (insn, operands); |
4656 | } |
4657 | |
4658 | static const char * |
4659 | output_1207 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4660 | { |
4661 | #line 19229 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4662 | return output_387_binary_op (insn, operands); |
4663 | } |
4664 | |
4665 | static const char * |
4666 | output_1208 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4667 | { |
4668 | #line 19229 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4669 | return output_387_binary_op (insn, operands); |
4670 | } |
4671 | |
4672 | static const char * |
4673 | output_1209 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4674 | { |
4675 | #line 19229 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4676 | return output_387_binary_op (insn, operands); |
4677 | } |
4678 | |
4679 | static const char * |
4680 | output_1210 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4681 | { |
4682 | #line 19229 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4683 | return output_387_binary_op (insn, operands); |
4684 | } |
4685 | |
4686 | static const char * |
4687 | output_1211 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4688 | { |
4689 | #line 19247 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4690 | return output_387_binary_op (insn, operands); |
4691 | } |
4692 | |
4693 | static const char * |
4694 | output_1212 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4695 | { |
4696 | #line 19247 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4697 | return output_387_binary_op (insn, operands); |
4698 | } |
4699 | |
4700 | static const char * |
4701 | output_1213 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4702 | { |
4703 | #line 19265 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4704 | return output_387_binary_op (insn, operands); |
4705 | } |
4706 | |
4707 | static const char * |
4708 | output_1214 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4709 | { |
4710 | #line 19282 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4711 | return output_387_binary_op (insn, operands); |
4712 | } |
4713 | |
4714 | static const char * |
4715 | output_1215 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4716 | { |
4717 | #line 19282 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4718 | return output_387_binary_op (insn, operands); |
4719 | } |
4720 | |
4721 | static const char * |
4722 | output_1216 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4723 | { |
4724 | #line 19300 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4725 | return output_387_binary_op (insn, operands); |
4726 | } |
4727 | |
4728 | static const char * |
4729 | output_1217 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4730 | { |
4731 | #line 19318 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4732 | return output_387_binary_op (insn, operands); |
4733 | } |
4734 | |
4735 | static const char * |
4736 | output_1218 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4737 | { |
4738 | #line 19318 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4739 | return output_387_binary_op (insn, operands); |
4740 | } |
4741 | |
4742 | static const char * |
4743 | output_1219 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4744 | { |
4745 | #line 19337 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4746 | return output_387_binary_op (insn, operands); |
4747 | } |
4748 | |
4749 | static const char * |
4750 | output_1220 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4751 | { |
4752 | #line 19357 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4753 | return output_387_reg_move (insn, operands); |
4754 | } |
4755 | |
4756 | static const char * |
4757 | output_1221 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4758 | { |
4759 | #line 19357 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4760 | return output_387_reg_move (insn, operands); |
4761 | } |
4762 | |
4763 | static const char * const output_1223[] = { |
4764 | "%vrsqrtss\t{%d1, %0|%0, %d1}", |
4765 | "%vrsqrtss\t{%d1, %0|%0, %d1}", |
4766 | "%vrsqrtss\t{%1, %d0|%d0, %1}", |
4767 | }; |
4768 | |
4769 | static const char * const output_1224[] = { |
4770 | "vrsqrtsh\t{%d1, %0|%0, %d1}", |
4771 | "vrsqrtsh\t{%1, %d0|%d0, %1}", |
4772 | }; |
4773 | |
4774 | static const char * const output_1225[] = { |
4775 | "vsqrtsh\t{%d1, %0|%0, %d1}", |
4776 | "vsqrtsh\t{%1, %d0|%d0, %1}", |
4777 | }; |
4778 | |
4779 | static const char * const output_1226[] = { |
4780 | "%vsqrtss\t{%d1, %0|%0, %d1}", |
4781 | "%vsqrtss\t{%d1, %0|%0, %d1}", |
4782 | "%vsqrtss\t{%1, %d0|%d0, %1}", |
4783 | }; |
4784 | |
4785 | static const char * const output_1227[] = { |
4786 | "%vsqrtsd\t{%d1, %0|%0, %d1}", |
4787 | "%vsqrtsd\t{%d1, %0|%0, %d1}", |
4788 | "%vsqrtsd\t{%1, %d0|%d0, %1}", |
4789 | }; |
4790 | |
4791 | static const char * const output_1243[] = { |
4792 | "%vroundsh\t{%2, %d1, %0|%0, %d1, %2}", |
4793 | "%vroundsh\t{%2, %d1, %0|%0, %d1, %2}", |
4794 | "%vroundsh\t{%2, %1, %d0|%d0, %1, %2}", |
4795 | "vrndscalesh\t{%2, %d1, %0|%0, %d1, %2}", |
4796 | "vrndscalesh\t{%2, %1, %d0|%d0, %1, %2}", |
4797 | }; |
4798 | |
4799 | static const char * const output_1244[] = { |
4800 | "%vroundss\t{%2, %d1, %0|%0, %d1, %2}", |
4801 | "%vroundss\t{%2, %d1, %0|%0, %d1, %2}", |
4802 | "%vroundss\t{%2, %1, %d0|%d0, %1, %2}", |
4803 | "vrndscaless\t{%2, %d1, %0|%0, %d1, %2}", |
4804 | "vrndscaless\t{%2, %1, %d0|%d0, %1, %2}", |
4805 | }; |
4806 | |
4807 | static const char * const output_1245[] = { |
4808 | "%vroundsd\t{%2, %d1, %0|%0, %d1, %2}", |
4809 | "%vroundsd\t{%2, %d1, %0|%0, %d1, %2}", |
4810 | "%vroundsd\t{%2, %1, %d0|%d0, %1, %2}", |
4811 | "vrndscalesd\t{%2, %d1, %0|%0, %d1, %2}", |
4812 | "vrndscalesd\t{%2, %1, %d0|%d0, %1, %2}", |
4813 | }; |
4814 | |
4815 | static const char * |
4816 | output_1247 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4817 | { |
4818 | #line 20759 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4819 | return output_fix_trunc (insn, operands, false); |
4820 | } |
4821 | |
4822 | static const char * |
4823 | output_1248 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4824 | { |
4825 | #line 20768 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4826 | return output_fix_trunc (insn, operands, false); |
4827 | } |
4828 | |
4829 | static const char * |
4830 | output_1249 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4831 | { |
4832 | #line 20768 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4833 | return output_fix_trunc (insn, operands, false); |
4834 | } |
4835 | |
4836 | static const char * |
4837 | output_1264 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4838 | { |
4839 | #line 20987 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4840 | return output_fix_trunc (insn, operands, false); |
4841 | } |
4842 | |
4843 | static const char * |
4844 | output_1265 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4845 | { |
4846 | #line 20987 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4847 | return output_fix_trunc (insn, operands, false); |
4848 | } |
4849 | |
4850 | static const char * |
4851 | output_1266 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4852 | { |
4853 | #line 21000 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4854 | return output_fix_trunc (insn, operands, false); |
4855 | } |
4856 | |
4857 | static const char * |
4858 | output_1267 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4859 | { |
4860 | #line 21000 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4861 | return output_fix_trunc (insn, operands, false); |
4862 | } |
4863 | |
4864 | static const char * |
4865 | output_1268 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4866 | { |
4867 | #line 21000 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4868 | return output_fix_trunc (insn, operands, false); |
4869 | } |
4870 | |
4871 | static const char * |
4872 | output_1269 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4873 | { |
4874 | #line 21000 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4875 | return output_fix_trunc (insn, operands, false); |
4876 | } |
4877 | |
4878 | static const char * const output_1317[] = { |
4879 | "cmov%O2%C1\t{%2, %0|%0, %2}", |
4880 | "cmov%O2%c1\t{%3, %0|%0, %3}", |
4881 | }; |
4882 | |
4883 | static const char * const output_1318[] = { |
4884 | "cmov%O2%C1\t{%2, %0|%0, %2}", |
4885 | "cmov%O2%c1\t{%3, %0|%0, %3}", |
4886 | }; |
4887 | |
4888 | static const char * const output_1319[] = { |
4889 | "cmov%O2%C1\t{%2, %0|%0, %2}", |
4890 | "cmov%O2%c1\t{%3, %0|%0, %3}", |
4891 | }; |
4892 | |
4893 | static const char * const output_1320[] = { |
4894 | "cmov%O2%C1\t{%2, %k0|%k0, %2}", |
4895 | "cmov%O2%c1\t{%3, %k0|%k0, %3}", |
4896 | }; |
4897 | |
4898 | static const char * const output_1322[] = { |
4899 | "vmovsh\t{%1, %0%{%3%}%N2|%0%{%3%}%N2, %1}", |
4900 | "vmovsh\t{%1, %0%{%3%}%N2|%0%{%3%}%N2, %1}", |
4901 | "vmovsh\t{%d1, %0%{%3%}%N2|%0%{%3%}%N2, %d1}", |
4902 | }; |
4903 | |
4904 | static const char * const output_1323[] = { |
4905 | "fcmov%F1\t{%2, %0|%0, %2}", |
4906 | "fcmov%f1\t{%3, %0|%0, %3}", |
4907 | }; |
4908 | |
4909 | static const char * const output_1324[] = { |
4910 | "fcmov%F1\t{%2, %0|%0, %2}", |
4911 | "fcmov%f1\t{%3, %0|%0, %3}", |
4912 | "#", |
4913 | "#", |
4914 | "cmov%O2%C1\t{%2, %0|%0, %2}", |
4915 | "cmov%O2%c1\t{%3, %0|%0, %3}", |
4916 | }; |
4917 | |
4918 | static const char * const output_1325[] = { |
4919 | "fcmov%F1\t{%2, %0|%0, %2}", |
4920 | "fcmov%f1\t{%3, %0|%0, %3}", |
4921 | "cmov%O2%C1\t{%2, %0|%0, %2}", |
4922 | "cmov%O2%c1\t{%3, %0|%0, %3}", |
4923 | }; |
4924 | |
4925 | static const char * const output_1328[] = { |
4926 | "maxss\t{%2, %0|%0, %2}", |
4927 | "vmaxss\t{%2, %1, %0|%0, %1, %2}", |
4928 | }; |
4929 | |
4930 | static const char * const output_1329[] = { |
4931 | "minss\t{%2, %0|%0, %2}", |
4932 | "vminss\t{%2, %1, %0|%0, %1, %2}", |
4933 | }; |
4934 | |
4935 | static const char * const output_1330[] = { |
4936 | "maxsd\t{%2, %0|%0, %2}", |
4937 | "vmaxsd\t{%2, %1, %0|%0, %1, %2}", |
4938 | }; |
4939 | |
4940 | static const char * const output_1331[] = { |
4941 | "minsd\t{%2, %0|%0, %2}", |
4942 | "vminsd\t{%2, %1, %0|%0, %1, %2}", |
4943 | }; |
4944 | |
4945 | static const char * const output_1336[] = { |
4946 | "maxss\t{%2, %0|%0, %2}", |
4947 | "vmaxss\t{%2, %1, %0|%0, %1, %2}", |
4948 | }; |
4949 | |
4950 | static const char * const output_1337[] = { |
4951 | "minss\t{%2, %0|%0, %2}", |
4952 | "vminss\t{%2, %1, %0|%0, %1, %2}", |
4953 | }; |
4954 | |
4955 | static const char * const output_1338[] = { |
4956 | "maxsd\t{%2, %0|%0, %2}", |
4957 | "vmaxsd\t{%2, %1, %0|%0, %1, %2}", |
4958 | }; |
4959 | |
4960 | static const char * const output_1339[] = { |
4961 | "minsd\t{%2, %0|%0, %2}", |
4962 | "vminsd\t{%2, %1, %0|%0, %1, %2}", |
4963 | }; |
4964 | |
4965 | static const char * |
4966 | output_1364 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4967 | { |
4968 | #line 22693 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4969 | { |
4970 | switch (get_attr_type (insn)) |
4971 | { |
4972 | case TYPE_IMOV: |
4973 | return "mov{l}\t{%1, %0|%0, %1}"; |
4974 | |
4975 | case TYPE_ALU: |
4976 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 22700, __FUNCTION__), 0 : 0)); |
4977 | if (x86_maybe_negate_const_int (&operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode)))) |
4978 | return "sub{l}\t{%2, %0|%0, %2}"; |
4979 | |
4980 | return "add{l}\t{%2, %0|%0, %2}"; |
4981 | |
4982 | default: |
4983 | operands[2] = SET_SRC (XVECEXP (PATTERN (insn), 0, 0))((((((((PATTERN (insn))->u.fld[0]).rt_rtvec))->elem[0]) )->u.fld[1]).rt_rtx); |
4984 | return "lea{l}\t{%E2, %0|%0, %E2}"; |
4985 | } |
4986 | } |
4987 | } |
4988 | |
4989 | static const char * |
4990 | output_1365 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
4991 | { |
4992 | #line 22693 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
4993 | { |
4994 | switch (get_attr_type (insn)) |
4995 | { |
4996 | case TYPE_IMOV: |
4997 | return "mov{q}\t{%1, %0|%0, %1}"; |
4998 | |
4999 | case TYPE_ALU: |
5000 | gcc_assert (rtx_equal_p (operands[0], operands[1]))((void)(!(rtx_equal_p (operands[0], operands[1])) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 22700, __FUNCTION__), 0 : 0)); |
5001 | if (x86_maybe_negate_const_int (&operands[2], DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)))) |
5002 | return "sub{q}\t{%2, %0|%0, %2}"; |
5003 | |
5004 | return "add{q}\t{%2, %0|%0, %2}"; |
5005 | |
5006 | default: |
5007 | operands[2] = SET_SRC (XVECEXP (PATTERN (insn), 0, 0))((((((((PATTERN (insn))->u.fld[0]).rt_rtvec))->elem[0]) )->u.fld[1]).rt_rtx); |
5008 | return "lea{q}\t{%E2, %0|%0, %E2}"; |
5009 | } |
5010 | } |
5011 | } |
5012 | |
5013 | static const char * |
5014 | output_1372 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5015 | { |
5016 | #line 22811 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5017 | return output_adjust_stack_and_probe (operands[0]); |
5018 | } |
5019 | |
5020 | static const char * |
5021 | output_1373 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5022 | { |
5023 | #line 22811 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5024 | return output_adjust_stack_and_probe (operands[0]); |
5025 | } |
5026 | |
5027 | static const char * |
5028 | output_1374 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5029 | { |
5030 | #line 22821 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5031 | return output_probe_stack_range (operands[0], operands[2]); |
5032 | } |
5033 | |
5034 | static const char * |
5035 | output_1375 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5036 | { |
5037 | #line 22821 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5038 | return output_probe_stack_range (operands[0], operands[2]); |
5039 | } |
5040 | |
5041 | static const char * |
5042 | output_1376 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5043 | { |
5044 | #line 24176 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5045 | { |
5046 | #ifdef HAVE_AS_IX86_UD21 |
5047 | return "ud2"; |
5048 | #else |
5049 | return ASM_SHORT"\t.value\t" "0x0b0f"; |
5050 | #endif |
5051 | } |
5052 | } |
5053 | |
5054 | static const char * |
5055 | output_1377 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5056 | { |
5057 | #line 24188 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5058 | { |
5059 | #ifdef HAVE_AS_IX86_UD21 |
5060 | return "ud2"; |
5061 | #else |
5062 | return ASM_SHORT"\t.value\t" "0x0b0f"; |
5063 | #endif |
5064 | } |
5065 | } |
5066 | |
5067 | static const char * |
5068 | output_1378 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5069 | { |
5070 | #line 24246 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5071 | { |
5072 | static const char * const patterns[4] = { |
5073 | "prefetchnta\t%a0", "prefetcht2\t%a0", "prefetcht1\t%a0", "prefetcht0\t%a0" |
5074 | }; |
5075 | |
5076 | int locality = INTVAL (operands[1])((operands[1])->u.hwint[0]); |
5077 | gcc_assert (IN_RANGE (locality, 0, 3))((void)(!(((unsigned long) (locality) - (unsigned long) (0) <= (unsigned long) (3) - (unsigned long) (0))) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 24252, __FUNCTION__), 0 : 0)); |
5078 | |
5079 | return patterns[locality]; |
5080 | } |
5081 | } |
5082 | |
5083 | static const char * |
5084 | output_1379 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5085 | { |
5086 | #line 24267 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5087 | { |
5088 | if (operands[1] == const0_rtx(const_int_rtx[64])) |
5089 | return "prefetch\t%a0"; |
5090 | else |
5091 | return "prefetchw\t%a0"; |
5092 | } |
5093 | } |
5094 | |
5095 | static const char * |
5096 | output_1381 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5097 | { |
5098 | #line 24294 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5099 | { |
5100 | static const char * const patterns[2] = { |
5101 | "prefetchit1\t%0", "prefetchit0\t%0" |
5102 | }; |
5103 | |
5104 | int locality = INTVAL (operands[1])((operands[1])->u.hwint[0]); |
5105 | gcc_assert (IN_RANGE (locality, 2, 3))((void)(!(((unsigned long) (locality) - (unsigned long) (2) <= (unsigned long) (3) - (unsigned long) (2))) ? fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" , 24300, __FUNCTION__), 0 : 0)); |
5106 | |
5107 | return patterns[locality - 2]; |
5108 | } |
5109 | } |
5110 | |
5111 | static const char * |
5112 | output_1382 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5113 | { |
5114 | #line 24326 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5115 | { |
5116 | output_asm_insn ("mov{l}\t{%1, %2|%2, %1}", operands); |
5117 | output_asm_insn ("mov{l}\t{%2, %0|%0, %2}", operands); |
5118 | return "xor{l}\t%k2, %k2"; |
5119 | } |
5120 | } |
5121 | |
5122 | static const char * |
5123 | output_1383 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5124 | { |
5125 | #line 24326 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5126 | { |
5127 | output_asm_insn ("mov{q}\t{%1, %2|%2, %1}", operands); |
5128 | output_asm_insn ("mov{q}\t{%2, %0|%0, %2}", operands); |
5129 | return "xor{l}\t%k2, %k2"; |
5130 | } |
5131 | } |
5132 | |
5133 | static const char * |
5134 | output_1384 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5135 | { |
5136 | #line 24348 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5137 | { |
5138 | output_asm_insn ("mov{l}\t{%3, %k1|%k1, %3}", operands); |
5139 | output_asm_insn ("mov{l}\t{%k1, %0|%0, %k1}", operands); |
5140 | if (pic_32bit_operand (operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode))) |
5141 | || ix86_use_lea_for_mov (insn, operands + 1)) |
5142 | return "lea{l}\t{%E2, %1|%1, %E2}"; |
5143 | else |
5144 | return "mov{l}\t{%2, %1|%1, %2}"; |
5145 | } |
5146 | } |
5147 | |
5148 | static const char * |
5149 | output_1385 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5150 | { |
5151 | #line 24348 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5152 | { |
5153 | output_asm_insn ("mov{q}\t{%3, %q1|%q1, %3}", operands); |
5154 | output_asm_insn ("mov{q}\t{%q1, %0|%0, %q1}", operands); |
5155 | if (pic_32bit_operand (operands[2], SImode(scalar_int_mode ((scalar_int_mode::from_int) E_SImode))) |
5156 | || ix86_use_lea_for_mov (insn, operands + 1)) |
5157 | return "lea{l}\t{%E2, %1|%1, %E2}"; |
5158 | else |
5159 | return "mov{l}\t{%2, %1|%1, %2}"; |
5160 | } |
5161 | } |
5162 | |
5163 | static const char * |
5164 | output_1386 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5165 | { |
5166 | #line 24389 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5167 | { |
5168 | output_asm_insn ("mov{q}\t{%3, %1|%1, %3}", operands); |
5169 | output_asm_insn ("mov{q}\t{%1, %0|%0, %1}", operands); |
5170 | if (pic_32bit_operand (operands[2], DImode(scalar_int_mode ((scalar_int_mode::from_int) E_DImode)))) |
5171 | return "lea{q}\t{%E2, %1|%1, %E2}"; |
5172 | else if (which_alternative == 0) |
5173 | return "mov{l}\t{%k2, %k1|%k1, %k2}"; |
5174 | else if (which_alternative == 2) |
5175 | return "movabs{q}\t{%2, %1|%1, %2}"; |
5176 | else if (ix86_use_lea_for_mov (insn, operands + 1)) |
5177 | return "lea{q}\t{%E2, %1|%1, %E2}"; |
5178 | else |
5179 | return "mov{q}\t{%2, %1|%1, %2}"; |
5180 | } |
5181 | } |
5182 | |
5183 | static const char * |
5184 | output_1387 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5185 | { |
5186 | #line 24450 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5187 | { |
5188 | output_asm_insn ("mov{l}\t{%1, %3|%3, %1}", operands); |
5189 | return "sub{l}\t{%2, %3|%3, %2}"; |
5190 | } |
5191 | } |
5192 | |
5193 | static const char * |
5194 | output_1388 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5195 | { |
5196 | #line 24450 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5197 | { |
5198 | output_asm_insn ("mov{q}\t{%1, %3|%3, %1}", operands); |
5199 | return "sub{q}\t{%2, %3|%3, %2}"; |
5200 | } |
5201 | } |
5202 | |
5203 | static const char * |
5204 | output_1466 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5205 | { |
5206 | #line 25003 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5207 | { |
5208 | return TARGET_64BIT((global_options.x_ix86_isa_flags & (1UL << 1)) != 0 ) ? "endbr64" : "endbr32"; |
5209 | } |
5210 | } |
5211 | |
5212 | static const char * |
5213 | output_1507 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5214 | { |
5215 | #line 25350 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/i386.md" |
5216 | { |
5217 | ix86_output_patchable_area (INTVAL (operands[0])((operands[0])->u.hwint[0]), |
5218 | INTVAL (operands[1])((operands[1])->u.hwint[0]) != 0); |
5219 | return ""; |
5220 | } |
5221 | } |
5222 | |
5223 | static const char * |
5224 | output_1509 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5225 | { |
5226 | #line 138 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5227 | { |
5228 | switch (get_attr_type (insn)) |
5229 | { |
5230 | case TYPE_MULTI: |
5231 | return "#"; |
5232 | |
5233 | case TYPE_IMOV: |
5234 | if (get_attr_mode (insn) == MODE_SI) |
5235 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
5236 | else |
5237 | return "mov{q}\t{%1, %0|%0, %1}"; |
5238 | |
5239 | case TYPE_MMX: |
5240 | return "pxor\t%0, %0"; |
5241 | |
5242 | case TYPE_MMXMOV: |
5243 | /* Handle broken assemblers that require movd instead of movq. */ |
5244 | if (!HAVE_AS_IX86_INTERUNIT_MOVQ1 |
5245 | && (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))) || GENERAL_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))))) |
5246 | return "movd\t{%1, %0|%0, %1}"; |
5247 | return "movq\t{%1, %0|%0, %1}"; |
5248 | |
5249 | case TYPE_SSECVT: |
5250 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
5251 | return "movq2dq\t{%1, %0|%0, %1}"; |
5252 | else |
5253 | return "movdq2q\t{%1, %0|%0, %1}"; |
5254 | |
5255 | case TYPE_SSELOG1: |
5256 | return standard_sse_constant_opcode (insn, operands); |
5257 | |
5258 | case TYPE_SSEMOV: |
5259 | return ix86_output_ssemov (insn, operands); |
5260 | |
5261 | default: |
5262 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 173, __FUNCTION__)); |
5263 | } |
5264 | } |
5265 | } |
5266 | |
5267 | static const char * |
5268 | output_1510 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5269 | { |
5270 | #line 138 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5271 | { |
5272 | switch (get_attr_type (insn)) |
5273 | { |
5274 | case TYPE_MULTI: |
5275 | return "#"; |
5276 | |
5277 | case TYPE_IMOV: |
5278 | if (get_attr_mode (insn) == MODE_SI) |
5279 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
5280 | else |
5281 | return "mov{q}\t{%1, %0|%0, %1}"; |
5282 | |
5283 | case TYPE_MMX: |
5284 | return "pxor\t%0, %0"; |
5285 | |
5286 | case TYPE_MMXMOV: |
5287 | /* Handle broken assemblers that require movd instead of movq. */ |
5288 | if (!HAVE_AS_IX86_INTERUNIT_MOVQ1 |
5289 | && (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))) || GENERAL_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))))) |
5290 | return "movd\t{%1, %0|%0, %1}"; |
5291 | return "movq\t{%1, %0|%0, %1}"; |
5292 | |
5293 | case TYPE_SSECVT: |
5294 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
5295 | return "movq2dq\t{%1, %0|%0, %1}"; |
5296 | else |
5297 | return "movdq2q\t{%1, %0|%0, %1}"; |
5298 | |
5299 | case TYPE_SSELOG1: |
5300 | return standard_sse_constant_opcode (insn, operands); |
5301 | |
5302 | case TYPE_SSEMOV: |
5303 | return ix86_output_ssemov (insn, operands); |
5304 | |
5305 | default: |
5306 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 173, __FUNCTION__)); |
5307 | } |
5308 | } |
5309 | } |
5310 | |
5311 | static const char * |
5312 | output_1511 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5313 | { |
5314 | #line 138 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5315 | { |
5316 | switch (get_attr_type (insn)) |
5317 | { |
5318 | case TYPE_MULTI: |
5319 | return "#"; |
5320 | |
5321 | case TYPE_IMOV: |
5322 | if (get_attr_mode (insn) == MODE_SI) |
5323 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
5324 | else |
5325 | return "mov{q}\t{%1, %0|%0, %1}"; |
5326 | |
5327 | case TYPE_MMX: |
5328 | return "pxor\t%0, %0"; |
5329 | |
5330 | case TYPE_MMXMOV: |
5331 | /* Handle broken assemblers that require movd instead of movq. */ |
5332 | if (!HAVE_AS_IX86_INTERUNIT_MOVQ1 |
5333 | && (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))) || GENERAL_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))))) |
5334 | return "movd\t{%1, %0|%0, %1}"; |
5335 | return "movq\t{%1, %0|%0, %1}"; |
5336 | |
5337 | case TYPE_SSECVT: |
5338 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
5339 | return "movq2dq\t{%1, %0|%0, %1}"; |
5340 | else |
5341 | return "movdq2q\t{%1, %0|%0, %1}"; |
5342 | |
5343 | case TYPE_SSELOG1: |
5344 | return standard_sse_constant_opcode (insn, operands); |
5345 | |
5346 | case TYPE_SSEMOV: |
5347 | return ix86_output_ssemov (insn, operands); |
5348 | |
5349 | default: |
5350 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 173, __FUNCTION__)); |
5351 | } |
5352 | } |
5353 | } |
5354 | |
5355 | static const char * |
5356 | output_1512 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5357 | { |
5358 | #line 138 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5359 | { |
5360 | switch (get_attr_type (insn)) |
5361 | { |
5362 | case TYPE_MULTI: |
5363 | return "#"; |
5364 | |
5365 | case TYPE_IMOV: |
5366 | if (get_attr_mode (insn) == MODE_SI) |
5367 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
5368 | else |
5369 | return "mov{q}\t{%1, %0|%0, %1}"; |
5370 | |
5371 | case TYPE_MMX: |
5372 | return "pxor\t%0, %0"; |
5373 | |
5374 | case TYPE_MMXMOV: |
5375 | /* Handle broken assemblers that require movd instead of movq. */ |
5376 | if (!HAVE_AS_IX86_INTERUNIT_MOVQ1 |
5377 | && (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))) || GENERAL_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))))) |
5378 | return "movd\t{%1, %0|%0, %1}"; |
5379 | return "movq\t{%1, %0|%0, %1}"; |
5380 | |
5381 | case TYPE_SSECVT: |
5382 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
5383 | return "movq2dq\t{%1, %0|%0, %1}"; |
5384 | else |
5385 | return "movdq2q\t{%1, %0|%0, %1}"; |
5386 | |
5387 | case TYPE_SSELOG1: |
5388 | return standard_sse_constant_opcode (insn, operands); |
5389 | |
5390 | case TYPE_SSEMOV: |
5391 | return ix86_output_ssemov (insn, operands); |
5392 | |
5393 | default: |
5394 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 173, __FUNCTION__)); |
5395 | } |
5396 | } |
5397 | } |
5398 | |
5399 | static const char * |
5400 | output_1513 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5401 | { |
5402 | #line 138 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5403 | { |
5404 | switch (get_attr_type (insn)) |
5405 | { |
5406 | case TYPE_MULTI: |
5407 | return "#"; |
5408 | |
5409 | case TYPE_IMOV: |
5410 | if (get_attr_mode (insn) == MODE_SI) |
5411 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
5412 | else |
5413 | return "mov{q}\t{%1, %0|%0, %1}"; |
5414 | |
5415 | case TYPE_MMX: |
5416 | return "pxor\t%0, %0"; |
5417 | |
5418 | case TYPE_MMXMOV: |
5419 | /* Handle broken assemblers that require movd instead of movq. */ |
5420 | if (!HAVE_AS_IX86_INTERUNIT_MOVQ1 |
5421 | && (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))) || GENERAL_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))))) |
5422 | return "movd\t{%1, %0|%0, %1}"; |
5423 | return "movq\t{%1, %0|%0, %1}"; |
5424 | |
5425 | case TYPE_SSECVT: |
5426 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
5427 | return "movq2dq\t{%1, %0|%0, %1}"; |
5428 | else |
5429 | return "movdq2q\t{%1, %0|%0, %1}"; |
5430 | |
5431 | case TYPE_SSELOG1: |
5432 | return standard_sse_constant_opcode (insn, operands); |
5433 | |
5434 | case TYPE_SSEMOV: |
5435 | return ix86_output_ssemov (insn, operands); |
5436 | |
5437 | default: |
5438 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 173, __FUNCTION__)); |
5439 | } |
5440 | } |
5441 | } |
5442 | |
5443 | static const char * |
5444 | output_1514 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5445 | { |
5446 | #line 138 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5447 | { |
5448 | switch (get_attr_type (insn)) |
5449 | { |
5450 | case TYPE_MULTI: |
5451 | return "#"; |
5452 | |
5453 | case TYPE_IMOV: |
5454 | if (get_attr_mode (insn) == MODE_SI) |
5455 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
5456 | else |
5457 | return "mov{q}\t{%1, %0|%0, %1}"; |
5458 | |
5459 | case TYPE_MMX: |
5460 | return "pxor\t%0, %0"; |
5461 | |
5462 | case TYPE_MMXMOV: |
5463 | /* Handle broken assemblers that require movd instead of movq. */ |
5464 | if (!HAVE_AS_IX86_INTERUNIT_MOVQ1 |
5465 | && (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))) || GENERAL_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))))) |
5466 | return "movd\t{%1, %0|%0, %1}"; |
5467 | return "movq\t{%1, %0|%0, %1}"; |
5468 | |
5469 | case TYPE_SSECVT: |
5470 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
5471 | return "movq2dq\t{%1, %0|%0, %1}"; |
5472 | else |
5473 | return "movdq2q\t{%1, %0|%0, %1}"; |
5474 | |
5475 | case TYPE_SSELOG1: |
5476 | return standard_sse_constant_opcode (insn, operands); |
5477 | |
5478 | case TYPE_SSEMOV: |
5479 | return ix86_output_ssemov (insn, operands); |
5480 | |
5481 | default: |
5482 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 173, __FUNCTION__)); |
5483 | } |
5484 | } |
5485 | } |
5486 | |
5487 | static const char * |
5488 | output_1515 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5489 | { |
5490 | #line 138 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5491 | { |
5492 | switch (get_attr_type (insn)) |
5493 | { |
5494 | case TYPE_MULTI: |
5495 | return "#"; |
5496 | |
5497 | case TYPE_IMOV: |
5498 | if (get_attr_mode (insn) == MODE_SI) |
5499 | return "mov{l}\t{%1, %k0|%k0, %1}"; |
5500 | else |
5501 | return "mov{q}\t{%1, %0|%0, %1}"; |
5502 | |
5503 | case TYPE_MMX: |
5504 | return "pxor\t%0, %0"; |
5505 | |
5506 | case TYPE_MMXMOV: |
5507 | /* Handle broken assemblers that require movd instead of movq. */ |
5508 | if (!HAVE_AS_IX86_INTERUNIT_MOVQ1 |
5509 | && (GENERAL_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[0])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))) || GENERAL_REG_P (operands[1])((((enum rtx_code) (operands[1])->code) == REG) && ((((unsigned long) (((rhs_regno(operands[1])))) - (unsigned long ) (0) <= (unsigned long) (7) - (unsigned long) (0))) || (( unsigned long) (((rhs_regno(operands[1])))) - (unsigned long) (36) <= (unsigned long) (43) - (unsigned long) (36)))))) |
5510 | return "movd\t{%1, %0|%0, %1}"; |
5511 | return "movq\t{%1, %0|%0, %1}"; |
5512 | |
5513 | case TYPE_SSECVT: |
5514 | if (SSE_REG_P (operands[0])((((enum rtx_code) (operands[0])->code) == REG) && (((unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (20) <= (unsigned long) (27) - (unsigned long) (20)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (44) <= (unsigned long) (51) - (unsigned long) (44)) || ( (unsigned long) (((rhs_regno(operands[0])))) - (unsigned long ) (52) <= (unsigned long) (67) - (unsigned long) (52))))) |
5515 | return "movq2dq\t{%1, %0|%0, %1}"; |
5516 | else |
5517 | return "movdq2q\t{%1, %0|%0, %1}"; |
5518 | |
5519 | case TYPE_SSELOG1: |
5520 | return standard_sse_constant_opcode (insn, operands); |
5521 | |
5522 | case TYPE_SSEMOV: |
5523 | return ix86_output_ssemov (insn, operands); |
5524 | |
5525 | default: |
5526 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 173, __FUNCTION__)); |
5527 | } |
5528 | } |
5529 | } |
5530 | |
5531 | static const char * |
5532 | output_1516 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5533 | { |
5534 | #line 292 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5535 | { |
5536 | switch (get_attr_type (insn)) |
5537 | { |
5538 | case TYPE_IMOV: |
5539 | return "mov{l}\t{%1, %0|%0, %1}"; |
5540 | |
5541 | case TYPE_SSELOG1: |
5542 | return standard_sse_constant_opcode (insn, operands); |
5543 | |
5544 | case TYPE_SSEMOV: |
5545 | return ix86_output_ssemov (insn, operands); |
5546 | |
5547 | default: |
5548 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 305, __FUNCTION__)); |
5549 | } |
5550 | } |
5551 | } |
5552 | |
5553 | static const char * |
5554 | output_1517 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5555 | { |
5556 | #line 292 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5557 | { |
5558 | switch (get_attr_type (insn)) |
5559 | { |
5560 | case TYPE_IMOV: |
5561 | return "mov{l}\t{%1, %0|%0, %1}"; |
5562 | |
5563 | case TYPE_SSELOG1: |
5564 | return standard_sse_constant_opcode (insn, operands); |
5565 | |
5566 | case TYPE_SSEMOV: |
5567 | return ix86_output_ssemov (insn, operands); |
5568 | |
5569 | default: |
5570 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 305, __FUNCTION__)); |
5571 | } |
5572 | } |
5573 | } |
5574 | |
5575 | static const char * |
5576 | output_1518 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5577 | { |
5578 | #line 292 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5579 | { |
5580 | switch (get_attr_type (insn)) |
5581 | { |
5582 | case TYPE_IMOV: |
5583 | return "mov{l}\t{%1, %0|%0, %1}"; |
5584 | |
5585 | case TYPE_SSELOG1: |
5586 | return standard_sse_constant_opcode (insn, operands); |
5587 | |
5588 | case TYPE_SSEMOV: |
5589 | return ix86_output_ssemov (insn, operands); |
5590 | |
5591 | default: |
5592 | gcc_unreachable ()(fancy_abort ("/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" , 305, __FUNCTION__)); |
5593 | } |
5594 | } |
5595 | } |
5596 | |
5597 | static const char * |
5598 | output_1519 (rtx *operands ATTRIBUTE_UNUSED__attribute__ ((__unused__)), rtx_insn *insn ATTRIBUTE_UNUSED__attribute__ ((__unused__))) |
5599 | { |
5600 | #line 292 "/buildworker/marxinbox-gcc-clang-static-analyzer/build/gcc/config/i386/mmx.md" |
5601 | { |
5602 | switch (get_attr_type (insn)) |
5603 | { |
5604 | case TYPE_IMOV: |
5605 | return "mov{l}\t{%1, %0|%0, %1}"; |
5606 | |
5607 | case TYPE_SSELOG1: |
560 |