RT-AC56 3.0.0.4.374.37 core
[tomato.git] / release / src-rt-6.x.4708 / toolchains / hndtools-arm-linux-2.6.36-uclibc-4.5.3 / lib / gcc / arm-brcm-linux-uclibcgnueabi / 4.5.3 / plugin / include / insn-flags.h
blob62c896333bcf688de37946c1788e08b7079ec3a0
1 /* Generated automatically by the program `genflags'
2 from the machine description file `md'. */
4 #ifndef GCC_INSN_FLAGS_H
5 #define GCC_INSN_FLAGS_H
7 #define HAVE_mulhisi3 (TARGET_DSP_MULTIPLY)
8 #define HAVE_anddi3 (TARGET_32BIT && ! TARGET_IWMMXT)
9 #define HAVE_insv_zero (arm_arch_thumb2)
10 #define HAVE_insv_t2 (arm_arch_thumb2)
11 #define HAVE_andsi_notsi_si (TARGET_32BIT)
12 #define HAVE_bicsi3 (TARGET_THUMB1)
13 #define HAVE_andsi_not_shiftsi_si (TARGET_ARM)
14 #define HAVE_iordi3 (TARGET_32BIT && ! TARGET_IWMMXT)
15 #define HAVE_xordi3 (TARGET_32BIT && !TARGET_IWMMXT)
16 #define HAVE_arm_ashldi3_1bit (TARGET_32BIT)
17 #define HAVE_arm_ashrdi3_1bit (TARGET_32BIT)
18 #define HAVE_arm_lshrdi3_1bit (TARGET_32BIT)
19 #define HAVE_extv (arm_arch_thumb2)
20 #define HAVE_extzv_t2 (arm_arch_thumb2)
21 #define HAVE_one_cmpldi2 (TARGET_32BIT)
22 #define HAVE_thumb1_extendhisi2 (TARGET_THUMB1 && !arm_arch6)
23 #define HAVE_pic_load_addr_32bit (TARGET_32BIT && flag_pic)
24 #define HAVE_pic_load_addr_thumb1 (TARGET_THUMB1 && flag_pic)
25 #define HAVE_pic_add_dot_plus_four (TARGET_THUMB)
26 #define HAVE_pic_add_dot_plus_eight (TARGET_ARM)
27 #define HAVE_tls_load_dot_plus_eight (TARGET_ARM)
28 #define HAVE_movmem12b (TARGET_THUMB1)
29 #define HAVE_movmem8b (TARGET_THUMB1)
30 #define HAVE_cbranchsi4_scratch (TARGET_THUMB1)
31 #define HAVE_cstoresi_nltu_thumb1 (TARGET_THUMB1)
32 #define HAVE_cstoresi_ltu_thumb1 (TARGET_THUMB1)
33 #define HAVE_thumb1_addsi3_addgeu (TARGET_THUMB1)
34 #define HAVE_return (TARGET_ARM && USE_RETURN_INSN (FALSE))
35 #define HAVE_blockage 1
36 #define HAVE_arm_casesi_internal (TARGET_ARM)
37 #define HAVE_thumb1_casesi_dispatch (TARGET_THUMB1)
38 #define HAVE_nop 1
39 #define HAVE_movcond (TARGET_ARM)
40 #define HAVE_sibcall_epilogue (TARGET_32BIT)
41 #define HAVE_stack_tie 1
42 #define HAVE_align_4 1
43 #define HAVE_align_8 1
44 #define HAVE_consttable_end 1
45 #define HAVE_consttable_1 (TARGET_THUMB1)
46 #define HAVE_consttable_2 (TARGET_THUMB1)
47 #define HAVE_consttable_4 1
48 #define HAVE_consttable_8 1
49 #define HAVE_consttable_16 1
50 #define HAVE_clzsi2 (TARGET_32BIT && arm_arch5)
51 #define HAVE_rbitsi2 (TARGET_32BIT && arm_arch_thumb2)
52 #define HAVE_prefetch (TARGET_32BIT && arm_arch5e)
53 #define HAVE_prologue_use 1
54 #define HAVE_arm_eh_return (TARGET_ARM)
55 #define HAVE_thumb_eh_return (TARGET_THUMB1)
56 #define HAVE_load_tp_hard (TARGET_HARD_TP)
57 #define HAVE_load_tp_soft (TARGET_SOFT_TP)
58 #define HAVE_cirrus_adddi3 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
59 #define HAVE_cirrus_subdi3 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
60 #define HAVE_muldi3 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
61 #define HAVE_ashldi3_cirrus (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
62 #define HAVE_cirrus_ashldi_const (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
63 #define HAVE_cirrus_ashiftrtdi_const (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
64 #define HAVE_cirrus_floatsisf2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
65 #define HAVE_cirrus_floatsidf2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
66 #define HAVE_floatdisf2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
67 #define HAVE_floatdidf2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
68 #define HAVE_cirrus_truncsfsi2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
69 #define HAVE_cirrus_truncdfsi2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_MAVERICK)
70 #define HAVE_iwmmxt_iordi3 (TARGET_REALLY_IWMMXT)
71 #define HAVE_iwmmxt_xordi3 (TARGET_REALLY_IWMMXT)
72 #define HAVE_iwmmxt_anddi3 (TARGET_REALLY_IWMMXT)
73 #define HAVE_iwmmxt_nanddi3 (TARGET_REALLY_IWMMXT)
74 #define HAVE_movv2si_internal (TARGET_REALLY_IWMMXT)
75 #define HAVE_movv4hi_internal (TARGET_REALLY_IWMMXT)
76 #define HAVE_movv8qi_internal (TARGET_REALLY_IWMMXT)
77 #define HAVE_ssaddv8qi3 (TARGET_REALLY_IWMMXT)
78 #define HAVE_ssaddv4hi3 (TARGET_REALLY_IWMMXT)
79 #define HAVE_ssaddv2si3 (TARGET_REALLY_IWMMXT)
80 #define HAVE_usaddv8qi3 (TARGET_REALLY_IWMMXT)
81 #define HAVE_usaddv4hi3 (TARGET_REALLY_IWMMXT)
82 #define HAVE_usaddv2si3 (TARGET_REALLY_IWMMXT)
83 #define HAVE_sssubv8qi3 (TARGET_REALLY_IWMMXT)
84 #define HAVE_sssubv4hi3 (TARGET_REALLY_IWMMXT)
85 #define HAVE_sssubv2si3 (TARGET_REALLY_IWMMXT)
86 #define HAVE_ussubv8qi3 (TARGET_REALLY_IWMMXT)
87 #define HAVE_ussubv4hi3 (TARGET_REALLY_IWMMXT)
88 #define HAVE_ussubv2si3 (TARGET_REALLY_IWMMXT)
89 #define HAVE_smulv4hi3_highpart (TARGET_REALLY_IWMMXT)
90 #define HAVE_umulv4hi3_highpart (TARGET_REALLY_IWMMXT)
91 #define HAVE_iwmmxt_wmacs (TARGET_REALLY_IWMMXT)
92 #define HAVE_iwmmxt_wmacsz (TARGET_REALLY_IWMMXT)
93 #define HAVE_iwmmxt_wmacu (TARGET_REALLY_IWMMXT)
94 #define HAVE_iwmmxt_wmacuz (TARGET_REALLY_IWMMXT)
95 #define HAVE_iwmmxt_clrdi (TARGET_REALLY_IWMMXT)
96 #define HAVE_iwmmxt_uavgrndv8qi3 (TARGET_REALLY_IWMMXT)
97 #define HAVE_iwmmxt_uavgrndv4hi3 (TARGET_REALLY_IWMMXT)
98 #define HAVE_iwmmxt_uavgv8qi3 (TARGET_REALLY_IWMMXT)
99 #define HAVE_iwmmxt_uavgv4hi3 (TARGET_REALLY_IWMMXT)
100 #define HAVE_iwmmxt_psadbw (TARGET_REALLY_IWMMXT)
101 #define HAVE_iwmmxt_tinsrb (TARGET_REALLY_IWMMXT)
102 #define HAVE_iwmmxt_tinsrh (TARGET_REALLY_IWMMXT)
103 #define HAVE_iwmmxt_tinsrw (TARGET_REALLY_IWMMXT)
104 #define HAVE_iwmmxt_textrmub (TARGET_REALLY_IWMMXT)
105 #define HAVE_iwmmxt_textrmsb (TARGET_REALLY_IWMMXT)
106 #define HAVE_iwmmxt_textrmuh (TARGET_REALLY_IWMMXT)
107 #define HAVE_iwmmxt_textrmsh (TARGET_REALLY_IWMMXT)
108 #define HAVE_iwmmxt_textrmw (TARGET_REALLY_IWMMXT)
109 #define HAVE_iwmmxt_wshufh (TARGET_REALLY_IWMMXT)
110 #define HAVE_eqv8qi3 (TARGET_REALLY_IWMMXT)
111 #define HAVE_eqv4hi3 (TARGET_REALLY_IWMMXT)
112 #define HAVE_eqv2si3 (TARGET_REALLY_IWMMXT)
113 #define HAVE_gtuv8qi3 (TARGET_REALLY_IWMMXT)
114 #define HAVE_gtuv4hi3 (TARGET_REALLY_IWMMXT)
115 #define HAVE_gtuv2si3 (TARGET_REALLY_IWMMXT)
116 #define HAVE_gtv8qi3 (TARGET_REALLY_IWMMXT)
117 #define HAVE_gtv4hi3 (TARGET_REALLY_IWMMXT)
118 #define HAVE_gtv2si3 (TARGET_REALLY_IWMMXT)
119 #define HAVE_iwmmxt_wpackhss (TARGET_REALLY_IWMMXT)
120 #define HAVE_iwmmxt_wpackwss (TARGET_REALLY_IWMMXT)
121 #define HAVE_iwmmxt_wpackdss (TARGET_REALLY_IWMMXT)
122 #define HAVE_iwmmxt_wpackhus (TARGET_REALLY_IWMMXT)
123 #define HAVE_iwmmxt_wpackwus (TARGET_REALLY_IWMMXT)
124 #define HAVE_iwmmxt_wpackdus (TARGET_REALLY_IWMMXT)
125 #define HAVE_iwmmxt_wunpckihb (TARGET_REALLY_IWMMXT)
126 #define HAVE_iwmmxt_wunpckihh (TARGET_REALLY_IWMMXT)
127 #define HAVE_iwmmxt_wunpckihw (TARGET_REALLY_IWMMXT)
128 #define HAVE_iwmmxt_wunpckilb (TARGET_REALLY_IWMMXT)
129 #define HAVE_iwmmxt_wunpckilh (TARGET_REALLY_IWMMXT)
130 #define HAVE_iwmmxt_wunpckilw (TARGET_REALLY_IWMMXT)
131 #define HAVE_iwmmxt_wunpckehub (TARGET_REALLY_IWMMXT)
132 #define HAVE_iwmmxt_wunpckehuh (TARGET_REALLY_IWMMXT)
133 #define HAVE_iwmmxt_wunpckehuw (TARGET_REALLY_IWMMXT)
134 #define HAVE_iwmmxt_wunpckehsb (TARGET_REALLY_IWMMXT)
135 #define HAVE_iwmmxt_wunpckehsh (TARGET_REALLY_IWMMXT)
136 #define HAVE_iwmmxt_wunpckehsw (TARGET_REALLY_IWMMXT)
137 #define HAVE_iwmmxt_wunpckelub (TARGET_REALLY_IWMMXT)
138 #define HAVE_iwmmxt_wunpckeluh (TARGET_REALLY_IWMMXT)
139 #define HAVE_iwmmxt_wunpckeluw (TARGET_REALLY_IWMMXT)
140 #define HAVE_iwmmxt_wunpckelsb (TARGET_REALLY_IWMMXT)
141 #define HAVE_iwmmxt_wunpckelsh (TARGET_REALLY_IWMMXT)
142 #define HAVE_iwmmxt_wunpckelsw (TARGET_REALLY_IWMMXT)
143 #define HAVE_rorv4hi3 (TARGET_REALLY_IWMMXT)
144 #define HAVE_rorv2si3 (TARGET_REALLY_IWMMXT)
145 #define HAVE_rordi3 (TARGET_REALLY_IWMMXT)
146 #define HAVE_ashrv4hi3_iwmmxt (TARGET_REALLY_IWMMXT)
147 #define HAVE_ashrv2si3_iwmmxt (TARGET_REALLY_IWMMXT)
148 #define HAVE_ashrdi3_iwmmxt (TARGET_REALLY_IWMMXT)
149 #define HAVE_lshrv4hi3_iwmmxt (TARGET_REALLY_IWMMXT)
150 #define HAVE_lshrv2si3_iwmmxt (TARGET_REALLY_IWMMXT)
151 #define HAVE_lshrdi3_iwmmxt (TARGET_REALLY_IWMMXT)
152 #define HAVE_ashlv4hi3_iwmmxt (TARGET_REALLY_IWMMXT)
153 #define HAVE_ashlv2si3_iwmmxt (TARGET_REALLY_IWMMXT)
154 #define HAVE_ashldi3_iwmmxt (TARGET_REALLY_IWMMXT)
155 #define HAVE_rorv4hi3_di (TARGET_REALLY_IWMMXT)
156 #define HAVE_rorv2si3_di (TARGET_REALLY_IWMMXT)
157 #define HAVE_rordi3_di (TARGET_REALLY_IWMMXT)
158 #define HAVE_ashrv4hi3_di (TARGET_REALLY_IWMMXT)
159 #define HAVE_ashrv2si3_di (TARGET_REALLY_IWMMXT)
160 #define HAVE_ashrdi3_di (TARGET_REALLY_IWMMXT)
161 #define HAVE_lshrv4hi3_di (TARGET_REALLY_IWMMXT)
162 #define HAVE_lshrv2si3_di (TARGET_REALLY_IWMMXT)
163 #define HAVE_lshrdi3_di (TARGET_REALLY_IWMMXT)
164 #define HAVE_ashlv4hi3_di (TARGET_REALLY_IWMMXT)
165 #define HAVE_ashlv2si3_di (TARGET_REALLY_IWMMXT)
166 #define HAVE_ashldi3_di (TARGET_REALLY_IWMMXT)
167 #define HAVE_iwmmxt_wmadds (TARGET_REALLY_IWMMXT)
168 #define HAVE_iwmmxt_wmaddu (TARGET_REALLY_IWMMXT)
169 #define HAVE_iwmmxt_tmia (TARGET_REALLY_IWMMXT)
170 #define HAVE_iwmmxt_tmiaph (TARGET_REALLY_IWMMXT)
171 #define HAVE_iwmmxt_tmiabb (TARGET_REALLY_IWMMXT)
172 #define HAVE_iwmmxt_tmiatb (TARGET_REALLY_IWMMXT)
173 #define HAVE_iwmmxt_tmiabt (TARGET_REALLY_IWMMXT)
174 #define HAVE_iwmmxt_tmiatt (TARGET_REALLY_IWMMXT)
175 #define HAVE_iwmmxt_tbcstqi (TARGET_REALLY_IWMMXT)
176 #define HAVE_iwmmxt_tbcsthi (TARGET_REALLY_IWMMXT)
177 #define HAVE_iwmmxt_tbcstsi (TARGET_REALLY_IWMMXT)
178 #define HAVE_iwmmxt_tmovmskb (TARGET_REALLY_IWMMXT)
179 #define HAVE_iwmmxt_tmovmskh (TARGET_REALLY_IWMMXT)
180 #define HAVE_iwmmxt_tmovmskw (TARGET_REALLY_IWMMXT)
181 #define HAVE_iwmmxt_waccb (TARGET_REALLY_IWMMXT)
182 #define HAVE_iwmmxt_wacch (TARGET_REALLY_IWMMXT)
183 #define HAVE_iwmmxt_waccw (TARGET_REALLY_IWMMXT)
184 #define HAVE_iwmmxt_walign (TARGET_REALLY_IWMMXT)
185 #define HAVE_iwmmxt_tmrc (TARGET_REALLY_IWMMXT)
186 #define HAVE_iwmmxt_tmcr (TARGET_REALLY_IWMMXT)
187 #define HAVE_iwmmxt_wsadb (TARGET_REALLY_IWMMXT)
188 #define HAVE_iwmmxt_wsadh (TARGET_REALLY_IWMMXT)
189 #define HAVE_iwmmxt_wsadbz (TARGET_REALLY_IWMMXT)
190 #define HAVE_iwmmxt_wsadhz (TARGET_REALLY_IWMMXT)
191 #define HAVE_extendhfsf2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_FP16)
192 #define HAVE_truncsfhf2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_FP16)
193 #define HAVE_fixuns_truncsfsi2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_VFP)
194 #define HAVE_fixuns_truncdfsi2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_VFP_DOUBLE)
195 #define HAVE_floatunssisf2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_VFP)
196 #define HAVE_floatunssidf2 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_VFP_DOUBLE)
197 #define HAVE_tls_load_dot_plus_four (TARGET_THUMB2)
198 #define HAVE_thumb2_casesi_internal (TARGET_THUMB2 && !flag_pic)
199 #define HAVE_thumb2_casesi_internal_pic (TARGET_THUMB2 && flag_pic)
200 #define HAVE_thumb2_eh_return (TARGET_THUMB2)
201 #define HAVE_divsi3 (TARGET_THUMB2 && arm_arch_hwdiv)
202 #define HAVE_udivsi3 (TARGET_THUMB2 && arm_arch_hwdiv)
203 #define HAVE_orsi_notsi_si (TARGET_THUMB2)
204 #define HAVE_vec_setv8qi_internal (TARGET_NEON)
205 #define HAVE_vec_setv4hi_internal (TARGET_NEON)
206 #define HAVE_vec_setv2si_internal (TARGET_NEON)
207 #define HAVE_vec_setv2sf_internal (TARGET_NEON)
208 #define HAVE_vec_setv16qi_internal (TARGET_NEON)
209 #define HAVE_vec_setv8hi_internal (TARGET_NEON)
210 #define HAVE_vec_setv4si_internal (TARGET_NEON)
211 #define HAVE_vec_setv4sf_internal (TARGET_NEON)
212 #define HAVE_vec_setv2di_internal (TARGET_NEON)
213 #define HAVE_vec_extractv8qi (TARGET_NEON)
214 #define HAVE_vec_extractv4hi (TARGET_NEON)
215 #define HAVE_vec_extractv2si (TARGET_NEON)
216 #define HAVE_vec_extractv2sf (TARGET_NEON)
217 #define HAVE_vec_extractv16qi (TARGET_NEON)
218 #define HAVE_vec_extractv8hi (TARGET_NEON)
219 #define HAVE_vec_extractv4si (TARGET_NEON)
220 #define HAVE_vec_extractv4sf (TARGET_NEON)
221 #define HAVE_vec_extractv2di (TARGET_NEON)
222 #define HAVE_iorv8qi3 (TARGET_NEON)
223 #define HAVE_iorv16qi3 (TARGET_NEON)
224 #define HAVE_iorv4hi3 (TARGET_NEON)
225 #define HAVE_iorv8hi3 (TARGET_NEON)
226 #define HAVE_iorv2si3 (TARGET_NEON)
227 #define HAVE_iorv4si3 (TARGET_NEON)
228 #define HAVE_iorv2sf3 (TARGET_NEON)
229 #define HAVE_iorv4sf3 (TARGET_NEON)
230 #define HAVE_iorv2di3 (TARGET_NEON)
231 #define HAVE_iordi3_neon (TARGET_NEON)
232 #define HAVE_andv8qi3 (TARGET_NEON)
233 #define HAVE_andv16qi3 (TARGET_NEON)
234 #define HAVE_andv4hi3 (TARGET_NEON)
235 #define HAVE_andv8hi3 (TARGET_NEON)
236 #define HAVE_andv2si3 (TARGET_NEON)
237 #define HAVE_andv4si3 (TARGET_NEON)
238 #define HAVE_andv2sf3 (TARGET_NEON)
239 #define HAVE_andv4sf3 (TARGET_NEON)
240 #define HAVE_andv2di3 (TARGET_NEON)
241 #define HAVE_anddi3_neon (TARGET_NEON)
242 #define HAVE_ornv8qi3_neon (TARGET_NEON)
243 #define HAVE_ornv16qi3_neon (TARGET_NEON)
244 #define HAVE_ornv4hi3_neon (TARGET_NEON)
245 #define HAVE_ornv8hi3_neon (TARGET_NEON)
246 #define HAVE_ornv2si3_neon (TARGET_NEON)
247 #define HAVE_ornv4si3_neon (TARGET_NEON)
248 #define HAVE_ornv2sf3_neon (TARGET_NEON)
249 #define HAVE_ornv4sf3_neon (TARGET_NEON)
250 #define HAVE_ornv2di3_neon (TARGET_NEON)
251 #define HAVE_orndi3_neon (TARGET_NEON)
252 #define HAVE_bicv8qi3_neon (TARGET_NEON)
253 #define HAVE_bicv16qi3_neon (TARGET_NEON)
254 #define HAVE_bicv4hi3_neon (TARGET_NEON)
255 #define HAVE_bicv8hi3_neon (TARGET_NEON)
256 #define HAVE_bicv2si3_neon (TARGET_NEON)
257 #define HAVE_bicv4si3_neon (TARGET_NEON)
258 #define HAVE_bicv2sf3_neon (TARGET_NEON)
259 #define HAVE_bicv4sf3_neon (TARGET_NEON)
260 #define HAVE_bicv2di3_neon (TARGET_NEON)
261 #define HAVE_bicdi3_neon (TARGET_NEON)
262 #define HAVE_xorv8qi3 (TARGET_NEON)
263 #define HAVE_xorv16qi3 (TARGET_NEON)
264 #define HAVE_xorv4hi3 (TARGET_NEON)
265 #define HAVE_xorv8hi3 (TARGET_NEON)
266 #define HAVE_xorv2si3 (TARGET_NEON)
267 #define HAVE_xorv4si3 (TARGET_NEON)
268 #define HAVE_xorv2sf3 (TARGET_NEON)
269 #define HAVE_xorv4sf3 (TARGET_NEON)
270 #define HAVE_xorv2di3 (TARGET_NEON)
271 #define HAVE_xordi3_neon (TARGET_NEON)
272 #define HAVE_one_cmplv8qi2 (TARGET_NEON)
273 #define HAVE_one_cmplv16qi2 (TARGET_NEON)
274 #define HAVE_one_cmplv4hi2 (TARGET_NEON)
275 #define HAVE_one_cmplv8hi2 (TARGET_NEON)
276 #define HAVE_one_cmplv2si2 (TARGET_NEON)
277 #define HAVE_one_cmplv4si2 (TARGET_NEON)
278 #define HAVE_one_cmplv2sf2 (TARGET_NEON)
279 #define HAVE_one_cmplv4sf2 (TARGET_NEON)
280 #define HAVE_one_cmplv2di2 (TARGET_NEON)
281 #define HAVE_absv8qi2 (TARGET_NEON)
282 #define HAVE_absv16qi2 (TARGET_NEON)
283 #define HAVE_absv4hi2 (TARGET_NEON)
284 #define HAVE_absv8hi2 (TARGET_NEON)
285 #define HAVE_absv2si2 (TARGET_NEON)
286 #define HAVE_absv4si2 (TARGET_NEON)
287 #define HAVE_absv2sf2 (TARGET_NEON)
288 #define HAVE_absv4sf2 (TARGET_NEON)
289 #define HAVE_negv8qi2 (TARGET_NEON)
290 #define HAVE_negv16qi2 (TARGET_NEON)
291 #define HAVE_negv4hi2 (TARGET_NEON)
292 #define HAVE_negv8hi2 (TARGET_NEON)
293 #define HAVE_negv2si2 (TARGET_NEON)
294 #define HAVE_negv4si2 (TARGET_NEON)
295 #define HAVE_negv2sf2 (TARGET_NEON)
296 #define HAVE_negv4sf2 (TARGET_NEON)
297 #define HAVE_vashlv8qi3 (TARGET_NEON)
298 #define HAVE_vashlv16qi3 (TARGET_NEON)
299 #define HAVE_vashlv4hi3 (TARGET_NEON)
300 #define HAVE_vashlv8hi3 (TARGET_NEON)
301 #define HAVE_vashlv2si3 (TARGET_NEON)
302 #define HAVE_vashlv4si3 (TARGET_NEON)
303 #define HAVE_ashlv8qi3_signed (TARGET_NEON)
304 #define HAVE_ashlv16qi3_signed (TARGET_NEON)
305 #define HAVE_ashlv4hi3_signed (TARGET_NEON)
306 #define HAVE_ashlv8hi3_signed (TARGET_NEON)
307 #define HAVE_ashlv2si3_signed (TARGET_NEON)
308 #define HAVE_ashlv4si3_signed (TARGET_NEON)
309 #define HAVE_ashlv2di3_signed (TARGET_NEON)
310 #define HAVE_ashlv8qi3_unsigned (TARGET_NEON)
311 #define HAVE_ashlv16qi3_unsigned (TARGET_NEON)
312 #define HAVE_ashlv4hi3_unsigned (TARGET_NEON)
313 #define HAVE_ashlv8hi3_unsigned (TARGET_NEON)
314 #define HAVE_ashlv2si3_unsigned (TARGET_NEON)
315 #define HAVE_ashlv4si3_unsigned (TARGET_NEON)
316 #define HAVE_ashlv2di3_unsigned (TARGET_NEON)
317 #define HAVE_widen_ssumv8qi3 (TARGET_NEON)
318 #define HAVE_widen_ssumv4hi3 (TARGET_NEON)
319 #define HAVE_widen_ssumv2si3 (TARGET_NEON)
320 #define HAVE_widen_usumv8qi3 (TARGET_NEON)
321 #define HAVE_widen_usumv4hi3 (TARGET_NEON)
322 #define HAVE_widen_usumv2si3 (TARGET_NEON)
323 #define HAVE_quad_halves_plusv4si (TARGET_NEON)
324 #define HAVE_quad_halves_sminv4si (TARGET_NEON)
325 #define HAVE_quad_halves_smaxv4si (TARGET_NEON)
326 #define HAVE_quad_halves_uminv4si (TARGET_NEON)
327 #define HAVE_quad_halves_umaxv4si (TARGET_NEON)
328 #define HAVE_quad_halves_plusv4sf (TARGET_NEON)
329 #define HAVE_quad_halves_sminv4sf (TARGET_NEON)
330 #define HAVE_quad_halves_smaxv4sf (TARGET_NEON)
331 #define HAVE_quad_halves_plusv8hi (TARGET_NEON)
332 #define HAVE_quad_halves_sminv8hi (TARGET_NEON)
333 #define HAVE_quad_halves_smaxv8hi (TARGET_NEON)
334 #define HAVE_quad_halves_uminv8hi (TARGET_NEON)
335 #define HAVE_quad_halves_umaxv8hi (TARGET_NEON)
336 #define HAVE_quad_halves_plusv16qi (TARGET_NEON)
337 #define HAVE_quad_halves_sminv16qi (TARGET_NEON)
338 #define HAVE_quad_halves_smaxv16qi (TARGET_NEON)
339 #define HAVE_quad_halves_uminv16qi (TARGET_NEON)
340 #define HAVE_quad_halves_umaxv16qi (TARGET_NEON)
341 #define HAVE_move_lo_quad_v4si (TARGET_NEON)
342 #define HAVE_move_lo_quad_v4sf (TARGET_NEON)
343 #define HAVE_move_lo_quad_v8hi (TARGET_NEON)
344 #define HAVE_move_lo_quad_v16qi (TARGET_NEON)
345 #define HAVE_reduc_splus_v2di (TARGET_NEON)
346 #define HAVE_neon_vpadd_internalv8qi (TARGET_NEON)
347 #define HAVE_neon_vpadd_internalv4hi (TARGET_NEON)
348 #define HAVE_neon_vpadd_internalv2si (TARGET_NEON)
349 #define HAVE_neon_vpadd_internalv2sf (TARGET_NEON)
350 #define HAVE_neon_vpsminv8qi (TARGET_NEON)
351 #define HAVE_neon_vpsminv4hi (TARGET_NEON)
352 #define HAVE_neon_vpsminv2si (TARGET_NEON)
353 #define HAVE_neon_vpsminv2sf (TARGET_NEON)
354 #define HAVE_neon_vpsmaxv8qi (TARGET_NEON)
355 #define HAVE_neon_vpsmaxv4hi (TARGET_NEON)
356 #define HAVE_neon_vpsmaxv2si (TARGET_NEON)
357 #define HAVE_neon_vpsmaxv2sf (TARGET_NEON)
358 #define HAVE_neon_vpuminv8qi (TARGET_NEON)
359 #define HAVE_neon_vpuminv4hi (TARGET_NEON)
360 #define HAVE_neon_vpuminv2si (TARGET_NEON)
361 #define HAVE_neon_vpumaxv8qi (TARGET_NEON)
362 #define HAVE_neon_vpumaxv4hi (TARGET_NEON)
363 #define HAVE_neon_vpumaxv2si (TARGET_NEON)
364 #define HAVE_neon_vaddv8qi (TARGET_NEON)
365 #define HAVE_neon_vaddv16qi (TARGET_NEON)
366 #define HAVE_neon_vaddv4hi (TARGET_NEON)
367 #define HAVE_neon_vaddv8hi (TARGET_NEON)
368 #define HAVE_neon_vaddv2si (TARGET_NEON)
369 #define HAVE_neon_vaddv4si (TARGET_NEON)
370 #define HAVE_neon_vaddv2sf (TARGET_NEON)
371 #define HAVE_neon_vaddv4sf (TARGET_NEON)
372 #define HAVE_neon_vadddi (TARGET_NEON)
373 #define HAVE_neon_vaddv2di (TARGET_NEON)
374 #define HAVE_neon_vaddlv8qi (TARGET_NEON)
375 #define HAVE_neon_vaddlv4hi (TARGET_NEON)
376 #define HAVE_neon_vaddlv2si (TARGET_NEON)
377 #define HAVE_neon_vaddwv8qi (TARGET_NEON)
378 #define HAVE_neon_vaddwv4hi (TARGET_NEON)
379 #define HAVE_neon_vaddwv2si (TARGET_NEON)
380 #define HAVE_neon_vhaddv8qi (TARGET_NEON)
381 #define HAVE_neon_vhaddv16qi (TARGET_NEON)
382 #define HAVE_neon_vhaddv4hi (TARGET_NEON)
383 #define HAVE_neon_vhaddv8hi (TARGET_NEON)
384 #define HAVE_neon_vhaddv2si (TARGET_NEON)
385 #define HAVE_neon_vhaddv4si (TARGET_NEON)
386 #define HAVE_neon_vqaddv8qi (TARGET_NEON)
387 #define HAVE_neon_vqaddv16qi (TARGET_NEON)
388 #define HAVE_neon_vqaddv4hi (TARGET_NEON)
389 #define HAVE_neon_vqaddv8hi (TARGET_NEON)
390 #define HAVE_neon_vqaddv2si (TARGET_NEON)
391 #define HAVE_neon_vqaddv4si (TARGET_NEON)
392 #define HAVE_neon_vqadddi (TARGET_NEON)
393 #define HAVE_neon_vqaddv2di (TARGET_NEON)
394 #define HAVE_neon_vaddhnv8hi (TARGET_NEON)
395 #define HAVE_neon_vaddhnv4si (TARGET_NEON)
396 #define HAVE_neon_vaddhnv2di (TARGET_NEON)
397 #define HAVE_neon_vmulv8qi (TARGET_NEON)
398 #define HAVE_neon_vmulv16qi (TARGET_NEON)
399 #define HAVE_neon_vmulv4hi (TARGET_NEON)
400 #define HAVE_neon_vmulv8hi (TARGET_NEON)
401 #define HAVE_neon_vmulv2si (TARGET_NEON)
402 #define HAVE_neon_vmulv4si (TARGET_NEON)
403 #define HAVE_neon_vmulv2sf (TARGET_NEON)
404 #define HAVE_neon_vmulv4sf (TARGET_NEON)
405 #define HAVE_neon_vmlav8qi (TARGET_NEON)
406 #define HAVE_neon_vmlav16qi (TARGET_NEON)
407 #define HAVE_neon_vmlav4hi (TARGET_NEON)
408 #define HAVE_neon_vmlav8hi (TARGET_NEON)
409 #define HAVE_neon_vmlav2si (TARGET_NEON)
410 #define HAVE_neon_vmlav4si (TARGET_NEON)
411 #define HAVE_neon_vmlav2sf (TARGET_NEON)
412 #define HAVE_neon_vmlav4sf (TARGET_NEON)
413 #define HAVE_neon_vmlalv8qi (TARGET_NEON)
414 #define HAVE_neon_vmlalv4hi (TARGET_NEON)
415 #define HAVE_neon_vmlalv2si (TARGET_NEON)
416 #define HAVE_neon_vmlsv8qi (TARGET_NEON)
417 #define HAVE_neon_vmlsv16qi (TARGET_NEON)
418 #define HAVE_neon_vmlsv4hi (TARGET_NEON)
419 #define HAVE_neon_vmlsv8hi (TARGET_NEON)
420 #define HAVE_neon_vmlsv2si (TARGET_NEON)
421 #define HAVE_neon_vmlsv4si (TARGET_NEON)
422 #define HAVE_neon_vmlsv2sf (TARGET_NEON)
423 #define HAVE_neon_vmlsv4sf (TARGET_NEON)
424 #define HAVE_neon_vmlslv8qi (TARGET_NEON)
425 #define HAVE_neon_vmlslv4hi (TARGET_NEON)
426 #define HAVE_neon_vmlslv2si (TARGET_NEON)
427 #define HAVE_neon_vqdmulhv4hi (TARGET_NEON)
428 #define HAVE_neon_vqdmulhv2si (TARGET_NEON)
429 #define HAVE_neon_vqdmulhv8hi (TARGET_NEON)
430 #define HAVE_neon_vqdmulhv4si (TARGET_NEON)
431 #define HAVE_neon_vqdmlalv4hi (TARGET_NEON)
432 #define HAVE_neon_vqdmlalv2si (TARGET_NEON)
433 #define HAVE_neon_vqdmlslv4hi (TARGET_NEON)
434 #define HAVE_neon_vqdmlslv2si (TARGET_NEON)
435 #define HAVE_neon_vmullv8qi (TARGET_NEON)
436 #define HAVE_neon_vmullv4hi (TARGET_NEON)
437 #define HAVE_neon_vmullv2si (TARGET_NEON)
438 #define HAVE_neon_vqdmullv4hi (TARGET_NEON)
439 #define HAVE_neon_vqdmullv2si (TARGET_NEON)
440 #define HAVE_neon_vsubv8qi (TARGET_NEON)
441 #define HAVE_neon_vsubv16qi (TARGET_NEON)
442 #define HAVE_neon_vsubv4hi (TARGET_NEON)
443 #define HAVE_neon_vsubv8hi (TARGET_NEON)
444 #define HAVE_neon_vsubv2si (TARGET_NEON)
445 #define HAVE_neon_vsubv4si (TARGET_NEON)
446 #define HAVE_neon_vsubv2sf (TARGET_NEON)
447 #define HAVE_neon_vsubv4sf (TARGET_NEON)
448 #define HAVE_neon_vsubdi (TARGET_NEON)
449 #define HAVE_neon_vsubv2di (TARGET_NEON)
450 #define HAVE_neon_vsublv8qi (TARGET_NEON)
451 #define HAVE_neon_vsublv4hi (TARGET_NEON)
452 #define HAVE_neon_vsublv2si (TARGET_NEON)
453 #define HAVE_neon_vsubwv8qi (TARGET_NEON)
454 #define HAVE_neon_vsubwv4hi (TARGET_NEON)
455 #define HAVE_neon_vsubwv2si (TARGET_NEON)
456 #define HAVE_neon_vqsubv8qi (TARGET_NEON)
457 #define HAVE_neon_vqsubv16qi (TARGET_NEON)
458 #define HAVE_neon_vqsubv4hi (TARGET_NEON)
459 #define HAVE_neon_vqsubv8hi (TARGET_NEON)
460 #define HAVE_neon_vqsubv2si (TARGET_NEON)
461 #define HAVE_neon_vqsubv4si (TARGET_NEON)
462 #define HAVE_neon_vqsubdi (TARGET_NEON)
463 #define HAVE_neon_vqsubv2di (TARGET_NEON)
464 #define HAVE_neon_vhsubv8qi (TARGET_NEON)
465 #define HAVE_neon_vhsubv16qi (TARGET_NEON)
466 #define HAVE_neon_vhsubv4hi (TARGET_NEON)
467 #define HAVE_neon_vhsubv8hi (TARGET_NEON)
468 #define HAVE_neon_vhsubv2si (TARGET_NEON)
469 #define HAVE_neon_vhsubv4si (TARGET_NEON)
470 #define HAVE_neon_vsubhnv8hi (TARGET_NEON)
471 #define HAVE_neon_vsubhnv4si (TARGET_NEON)
472 #define HAVE_neon_vsubhnv2di (TARGET_NEON)
473 #define HAVE_neon_vceqv8qi (TARGET_NEON)
474 #define HAVE_neon_vceqv16qi (TARGET_NEON)
475 #define HAVE_neon_vceqv4hi (TARGET_NEON)
476 #define HAVE_neon_vceqv8hi (TARGET_NEON)
477 #define HAVE_neon_vceqv2si (TARGET_NEON)
478 #define HAVE_neon_vceqv4si (TARGET_NEON)
479 #define HAVE_neon_vceqv2sf (TARGET_NEON)
480 #define HAVE_neon_vceqv4sf (TARGET_NEON)
481 #define HAVE_neon_vcgev8qi (TARGET_NEON)
482 #define HAVE_neon_vcgev16qi (TARGET_NEON)
483 #define HAVE_neon_vcgev4hi (TARGET_NEON)
484 #define HAVE_neon_vcgev8hi (TARGET_NEON)
485 #define HAVE_neon_vcgev2si (TARGET_NEON)
486 #define HAVE_neon_vcgev4si (TARGET_NEON)
487 #define HAVE_neon_vcgev2sf (TARGET_NEON)
488 #define HAVE_neon_vcgev4sf (TARGET_NEON)
489 #define HAVE_neon_vcgtv8qi (TARGET_NEON)
490 #define HAVE_neon_vcgtv16qi (TARGET_NEON)
491 #define HAVE_neon_vcgtv4hi (TARGET_NEON)
492 #define HAVE_neon_vcgtv8hi (TARGET_NEON)
493 #define HAVE_neon_vcgtv2si (TARGET_NEON)
494 #define HAVE_neon_vcgtv4si (TARGET_NEON)
495 #define HAVE_neon_vcgtv2sf (TARGET_NEON)
496 #define HAVE_neon_vcgtv4sf (TARGET_NEON)
497 #define HAVE_neon_vcagev2sf (TARGET_NEON)
498 #define HAVE_neon_vcagev4sf (TARGET_NEON)
499 #define HAVE_neon_vcagtv2sf (TARGET_NEON)
500 #define HAVE_neon_vcagtv4sf (TARGET_NEON)
501 #define HAVE_neon_vtstv8qi (TARGET_NEON)
502 #define HAVE_neon_vtstv16qi (TARGET_NEON)
503 #define HAVE_neon_vtstv4hi (TARGET_NEON)
504 #define HAVE_neon_vtstv8hi (TARGET_NEON)
505 #define HAVE_neon_vtstv2si (TARGET_NEON)
506 #define HAVE_neon_vtstv4si (TARGET_NEON)
507 #define HAVE_neon_vabdv8qi (TARGET_NEON)
508 #define HAVE_neon_vabdv16qi (TARGET_NEON)
509 #define HAVE_neon_vabdv4hi (TARGET_NEON)
510 #define HAVE_neon_vabdv8hi (TARGET_NEON)
511 #define HAVE_neon_vabdv2si (TARGET_NEON)
512 #define HAVE_neon_vabdv4si (TARGET_NEON)
513 #define HAVE_neon_vabdv2sf (TARGET_NEON)
514 #define HAVE_neon_vabdv4sf (TARGET_NEON)
515 #define HAVE_neon_vabdlv8qi (TARGET_NEON)
516 #define HAVE_neon_vabdlv4hi (TARGET_NEON)
517 #define HAVE_neon_vabdlv2si (TARGET_NEON)
518 #define HAVE_neon_vabav8qi (TARGET_NEON)
519 #define HAVE_neon_vabav16qi (TARGET_NEON)
520 #define HAVE_neon_vabav4hi (TARGET_NEON)
521 #define HAVE_neon_vabav8hi (TARGET_NEON)
522 #define HAVE_neon_vabav2si (TARGET_NEON)
523 #define HAVE_neon_vabav4si (TARGET_NEON)
524 #define HAVE_neon_vabalv8qi (TARGET_NEON)
525 #define HAVE_neon_vabalv4hi (TARGET_NEON)
526 #define HAVE_neon_vabalv2si (TARGET_NEON)
527 #define HAVE_neon_vmaxv8qi (TARGET_NEON)
528 #define HAVE_neon_vmaxv16qi (TARGET_NEON)
529 #define HAVE_neon_vmaxv4hi (TARGET_NEON)
530 #define HAVE_neon_vmaxv8hi (TARGET_NEON)
531 #define HAVE_neon_vmaxv2si (TARGET_NEON)
532 #define HAVE_neon_vmaxv4si (TARGET_NEON)
533 #define HAVE_neon_vmaxv2sf (TARGET_NEON)
534 #define HAVE_neon_vmaxv4sf (TARGET_NEON)
535 #define HAVE_neon_vminv8qi (TARGET_NEON)
536 #define HAVE_neon_vminv16qi (TARGET_NEON)
537 #define HAVE_neon_vminv4hi (TARGET_NEON)
538 #define HAVE_neon_vminv8hi (TARGET_NEON)
539 #define HAVE_neon_vminv2si (TARGET_NEON)
540 #define HAVE_neon_vminv4si (TARGET_NEON)
541 #define HAVE_neon_vminv2sf (TARGET_NEON)
542 #define HAVE_neon_vminv4sf (TARGET_NEON)
543 #define HAVE_neon_vpaddlv8qi (TARGET_NEON)
544 #define HAVE_neon_vpaddlv16qi (TARGET_NEON)
545 #define HAVE_neon_vpaddlv4hi (TARGET_NEON)
546 #define HAVE_neon_vpaddlv8hi (TARGET_NEON)
547 #define HAVE_neon_vpaddlv2si (TARGET_NEON)
548 #define HAVE_neon_vpaddlv4si (TARGET_NEON)
549 #define HAVE_neon_vpadalv8qi (TARGET_NEON)
550 #define HAVE_neon_vpadalv16qi (TARGET_NEON)
551 #define HAVE_neon_vpadalv4hi (TARGET_NEON)
552 #define HAVE_neon_vpadalv8hi (TARGET_NEON)
553 #define HAVE_neon_vpadalv2si (TARGET_NEON)
554 #define HAVE_neon_vpadalv4si (TARGET_NEON)
555 #define HAVE_neon_vpmaxv8qi (TARGET_NEON)
556 #define HAVE_neon_vpmaxv4hi (TARGET_NEON)
557 #define HAVE_neon_vpmaxv2si (TARGET_NEON)
558 #define HAVE_neon_vpmaxv2sf (TARGET_NEON)
559 #define HAVE_neon_vpminv8qi (TARGET_NEON)
560 #define HAVE_neon_vpminv4hi (TARGET_NEON)
561 #define HAVE_neon_vpminv2si (TARGET_NEON)
562 #define HAVE_neon_vpminv2sf (TARGET_NEON)
563 #define HAVE_neon_vrecpsv2sf (TARGET_NEON)
564 #define HAVE_neon_vrecpsv4sf (TARGET_NEON)
565 #define HAVE_neon_vrsqrtsv2sf (TARGET_NEON)
566 #define HAVE_neon_vrsqrtsv4sf (TARGET_NEON)
567 #define HAVE_neon_vabsv8qi (TARGET_NEON)
568 #define HAVE_neon_vabsv16qi (TARGET_NEON)
569 #define HAVE_neon_vabsv4hi (TARGET_NEON)
570 #define HAVE_neon_vabsv8hi (TARGET_NEON)
571 #define HAVE_neon_vabsv2si (TARGET_NEON)
572 #define HAVE_neon_vabsv4si (TARGET_NEON)
573 #define HAVE_neon_vabsv2sf (TARGET_NEON)
574 #define HAVE_neon_vabsv4sf (TARGET_NEON)
575 #define HAVE_neon_vqabsv8qi (TARGET_NEON)
576 #define HAVE_neon_vqabsv16qi (TARGET_NEON)
577 #define HAVE_neon_vqabsv4hi (TARGET_NEON)
578 #define HAVE_neon_vqabsv8hi (TARGET_NEON)
579 #define HAVE_neon_vqabsv2si (TARGET_NEON)
580 #define HAVE_neon_vqabsv4si (TARGET_NEON)
581 #define HAVE_neon_vqnegv8qi (TARGET_NEON)
582 #define HAVE_neon_vqnegv16qi (TARGET_NEON)
583 #define HAVE_neon_vqnegv4hi (TARGET_NEON)
584 #define HAVE_neon_vqnegv8hi (TARGET_NEON)
585 #define HAVE_neon_vqnegv2si (TARGET_NEON)
586 #define HAVE_neon_vqnegv4si (TARGET_NEON)
587 #define HAVE_neon_vclsv8qi (TARGET_NEON)
588 #define HAVE_neon_vclsv16qi (TARGET_NEON)
589 #define HAVE_neon_vclsv4hi (TARGET_NEON)
590 #define HAVE_neon_vclsv8hi (TARGET_NEON)
591 #define HAVE_neon_vclsv2si (TARGET_NEON)
592 #define HAVE_neon_vclsv4si (TARGET_NEON)
593 #define HAVE_neon_vclzv8qi (TARGET_NEON)
594 #define HAVE_neon_vclzv16qi (TARGET_NEON)
595 #define HAVE_neon_vclzv4hi (TARGET_NEON)
596 #define HAVE_neon_vclzv8hi (TARGET_NEON)
597 #define HAVE_neon_vclzv2si (TARGET_NEON)
598 #define HAVE_neon_vclzv4si (TARGET_NEON)
599 #define HAVE_neon_vcntv8qi (TARGET_NEON)
600 #define HAVE_neon_vcntv16qi (TARGET_NEON)
601 #define HAVE_neon_vrecpev2si (TARGET_NEON)
602 #define HAVE_neon_vrecpev2sf (TARGET_NEON)
603 #define HAVE_neon_vrecpev4si (TARGET_NEON)
604 #define HAVE_neon_vrecpev4sf (TARGET_NEON)
605 #define HAVE_neon_vrsqrtev2si (TARGET_NEON)
606 #define HAVE_neon_vrsqrtev2sf (TARGET_NEON)
607 #define HAVE_neon_vrsqrtev4si (TARGET_NEON)
608 #define HAVE_neon_vrsqrtev4sf (TARGET_NEON)
609 #define HAVE_neon_vget_lanev8qi_sext_internal (TARGET_NEON)
610 #define HAVE_neon_vget_lanev4hi_sext_internal (TARGET_NEON)
611 #define HAVE_neon_vget_lanev2si_sext_internal (TARGET_NEON)
612 #define HAVE_neon_vget_lanev2sf_sext_internal (TARGET_NEON)
613 #define HAVE_neon_vget_lanev8qi_zext_internal (TARGET_NEON)
614 #define HAVE_neon_vget_lanev4hi_zext_internal (TARGET_NEON)
615 #define HAVE_neon_vget_lanev2si_zext_internal (TARGET_NEON)
616 #define HAVE_neon_vget_lanev2sf_zext_internal (TARGET_NEON)
617 #define HAVE_neon_vget_lanev16qi_sext_internal (TARGET_NEON)
618 #define HAVE_neon_vget_lanev8hi_sext_internal (TARGET_NEON)
619 #define HAVE_neon_vget_lanev4si_sext_internal (TARGET_NEON)
620 #define HAVE_neon_vget_lanev4sf_sext_internal (TARGET_NEON)
621 #define HAVE_neon_vget_lanev16qi_zext_internal (TARGET_NEON)
622 #define HAVE_neon_vget_lanev8hi_zext_internal (TARGET_NEON)
623 #define HAVE_neon_vget_lanev4si_zext_internal (TARGET_NEON)
624 #define HAVE_neon_vget_lanev4sf_zext_internal (TARGET_NEON)
625 #define HAVE_neon_vget_lanedi (TARGET_NEON)
626 #define HAVE_neon_vget_lanev2di (TARGET_NEON)
627 #define HAVE_neon_vset_lanev8qi (TARGET_NEON)
628 #define HAVE_neon_vset_lanev4hi (TARGET_NEON)
629 #define HAVE_neon_vset_lanev2si (TARGET_NEON)
630 #define HAVE_neon_vset_lanev2sf (TARGET_NEON)
631 #define HAVE_neon_vset_lanedi (TARGET_NEON)
632 #define HAVE_neon_vset_lanev16qi (TARGET_NEON)
633 #define HAVE_neon_vset_lanev8hi (TARGET_NEON)
634 #define HAVE_neon_vset_lanev4si (TARGET_NEON)
635 #define HAVE_neon_vset_lanev4sf (TARGET_NEON)
636 #define HAVE_neon_vset_lanev2di (TARGET_NEON)
637 #define HAVE_neon_vdup_nv8qi (TARGET_NEON)
638 #define HAVE_neon_vdup_nv4hi (TARGET_NEON)
639 #define HAVE_neon_vdup_nv16qi (TARGET_NEON)
640 #define HAVE_neon_vdup_nv8hi (TARGET_NEON)
641 #define HAVE_neon_vdup_nv2si (TARGET_NEON)
642 #define HAVE_neon_vdup_nv2sf (TARGET_NEON)
643 #define HAVE_neon_vdup_nv4si (TARGET_NEON)
644 #define HAVE_neon_vdup_nv4sf (TARGET_NEON)
645 #define HAVE_neon_vdup_ndi (TARGET_NEON)
646 #define HAVE_neon_vdup_nv2di (TARGET_NEON)
647 #define HAVE_neon_vdup_lanev8qi (TARGET_NEON)
648 #define HAVE_neon_vdup_lanev4hi (TARGET_NEON)
649 #define HAVE_neon_vdup_lanev2si (TARGET_NEON)
650 #define HAVE_neon_vdup_lanev2sf (TARGET_NEON)
651 #define HAVE_neon_vdup_lanev16qi (TARGET_NEON)
652 #define HAVE_neon_vdup_lanev8hi (TARGET_NEON)
653 #define HAVE_neon_vdup_lanev4si (TARGET_NEON)
654 #define HAVE_neon_vdup_lanev4sf (TARGET_NEON)
655 #define HAVE_neon_vdup_lanev2di (TARGET_NEON)
656 #define HAVE_neon_vcombinev8qi (TARGET_NEON)
657 #define HAVE_neon_vcombinev4hi (TARGET_NEON)
658 #define HAVE_neon_vcombinev2si (TARGET_NEON)
659 #define HAVE_neon_vcombinev2sf (TARGET_NEON)
660 #define HAVE_neon_vcombinedi (TARGET_NEON)
661 #define HAVE_neon_vget_highv16qi (TARGET_NEON)
662 #define HAVE_neon_vget_highv8hi (TARGET_NEON)
663 #define HAVE_neon_vget_highv4si (TARGET_NEON)
664 #define HAVE_neon_vget_highv4sf (TARGET_NEON)
665 #define HAVE_neon_vget_highv2di (TARGET_NEON)
666 #define HAVE_neon_vget_lowv16qi (TARGET_NEON)
667 #define HAVE_neon_vget_lowv8hi (TARGET_NEON)
668 #define HAVE_neon_vget_lowv4si (TARGET_NEON)
669 #define HAVE_neon_vget_lowv4sf (TARGET_NEON)
670 #define HAVE_neon_vget_lowv2di (TARGET_NEON)
671 #define HAVE_neon_vcvtv2sf (TARGET_NEON)
672 #define HAVE_neon_vcvtv4sf (TARGET_NEON)
673 #define HAVE_neon_vcvtv2si (TARGET_NEON)
674 #define HAVE_neon_vcvtv4si (TARGET_NEON)
675 #define HAVE_neon_vcvt_nv2sf (TARGET_NEON)
676 #define HAVE_neon_vcvt_nv4sf (TARGET_NEON)
677 #define HAVE_neon_vcvt_nv2si (TARGET_NEON)
678 #define HAVE_neon_vcvt_nv4si (TARGET_NEON)
679 #define HAVE_neon_vmovnv8hi (TARGET_NEON)
680 #define HAVE_neon_vmovnv4si (TARGET_NEON)
681 #define HAVE_neon_vmovnv2di (TARGET_NEON)
682 #define HAVE_neon_vqmovnv8hi (TARGET_NEON)
683 #define HAVE_neon_vqmovnv4si (TARGET_NEON)
684 #define HAVE_neon_vqmovnv2di (TARGET_NEON)
685 #define HAVE_neon_vqmovunv8hi (TARGET_NEON)
686 #define HAVE_neon_vqmovunv4si (TARGET_NEON)
687 #define HAVE_neon_vqmovunv2di (TARGET_NEON)
688 #define HAVE_neon_vmovlv8qi (TARGET_NEON)
689 #define HAVE_neon_vmovlv4hi (TARGET_NEON)
690 #define HAVE_neon_vmovlv2si (TARGET_NEON)
691 #define HAVE_neon_vmul_lanev4hi (TARGET_NEON)
692 #define HAVE_neon_vmul_lanev2si (TARGET_NEON)
693 #define HAVE_neon_vmul_lanev2sf (TARGET_NEON)
694 #define HAVE_neon_vmul_lanev8hi (TARGET_NEON)
695 #define HAVE_neon_vmul_lanev4si (TARGET_NEON)
696 #define HAVE_neon_vmul_lanev4sf (TARGET_NEON)
697 #define HAVE_neon_vmull_lanev4hi (TARGET_NEON)
698 #define HAVE_neon_vmull_lanev2si (TARGET_NEON)
699 #define HAVE_neon_vqdmull_lanev4hi (TARGET_NEON)
700 #define HAVE_neon_vqdmull_lanev2si (TARGET_NEON)
701 #define HAVE_neon_vqdmulh_lanev8hi (TARGET_NEON)
702 #define HAVE_neon_vqdmulh_lanev4si (TARGET_NEON)
703 #define HAVE_neon_vqdmulh_lanev4hi (TARGET_NEON)
704 #define HAVE_neon_vqdmulh_lanev2si (TARGET_NEON)
705 #define HAVE_neon_vmla_lanev4hi (TARGET_NEON)
706 #define HAVE_neon_vmla_lanev2si (TARGET_NEON)
707 #define HAVE_neon_vmla_lanev2sf (TARGET_NEON)
708 #define HAVE_neon_vmla_lanev8hi (TARGET_NEON)
709 #define HAVE_neon_vmla_lanev4si (TARGET_NEON)
710 #define HAVE_neon_vmla_lanev4sf (TARGET_NEON)
711 #define HAVE_neon_vmlal_lanev4hi (TARGET_NEON)
712 #define HAVE_neon_vmlal_lanev2si (TARGET_NEON)
713 #define HAVE_neon_vqdmlal_lanev4hi (TARGET_NEON)
714 #define HAVE_neon_vqdmlal_lanev2si (TARGET_NEON)
715 #define HAVE_neon_vmls_lanev4hi (TARGET_NEON)
716 #define HAVE_neon_vmls_lanev2si (TARGET_NEON)
717 #define HAVE_neon_vmls_lanev2sf (TARGET_NEON)
718 #define HAVE_neon_vmls_lanev8hi (TARGET_NEON)
719 #define HAVE_neon_vmls_lanev4si (TARGET_NEON)
720 #define HAVE_neon_vmls_lanev4sf (TARGET_NEON)
721 #define HAVE_neon_vmlsl_lanev4hi (TARGET_NEON)
722 #define HAVE_neon_vmlsl_lanev2si (TARGET_NEON)
723 #define HAVE_neon_vqdmlsl_lanev4hi (TARGET_NEON)
724 #define HAVE_neon_vqdmlsl_lanev2si (TARGET_NEON)
725 #define HAVE_neon_vextv8qi (TARGET_NEON)
726 #define HAVE_neon_vextv16qi (TARGET_NEON)
727 #define HAVE_neon_vextv4hi (TARGET_NEON)
728 #define HAVE_neon_vextv8hi (TARGET_NEON)
729 #define HAVE_neon_vextv2si (TARGET_NEON)
730 #define HAVE_neon_vextv4si (TARGET_NEON)
731 #define HAVE_neon_vextv2sf (TARGET_NEON)
732 #define HAVE_neon_vextv4sf (TARGET_NEON)
733 #define HAVE_neon_vextdi (TARGET_NEON)
734 #define HAVE_neon_vextv2di (TARGET_NEON)
735 #define HAVE_neon_vrev64v8qi (TARGET_NEON)
736 #define HAVE_neon_vrev64v16qi (TARGET_NEON)
737 #define HAVE_neon_vrev64v4hi (TARGET_NEON)
738 #define HAVE_neon_vrev64v8hi (TARGET_NEON)
739 #define HAVE_neon_vrev64v2si (TARGET_NEON)
740 #define HAVE_neon_vrev64v4si (TARGET_NEON)
741 #define HAVE_neon_vrev64v2sf (TARGET_NEON)
742 #define HAVE_neon_vrev64v4sf (TARGET_NEON)
743 #define HAVE_neon_vrev64v2di (TARGET_NEON)
744 #define HAVE_neon_vrev32v8qi (TARGET_NEON)
745 #define HAVE_neon_vrev32v4hi (TARGET_NEON)
746 #define HAVE_neon_vrev32v16qi (TARGET_NEON)
747 #define HAVE_neon_vrev32v8hi (TARGET_NEON)
748 #define HAVE_neon_vrev16v8qi (TARGET_NEON)
749 #define HAVE_neon_vrev16v16qi (TARGET_NEON)
750 #define HAVE_neon_vbslv8qi_internal (TARGET_NEON)
751 #define HAVE_neon_vbslv16qi_internal (TARGET_NEON)
752 #define HAVE_neon_vbslv4hi_internal (TARGET_NEON)
753 #define HAVE_neon_vbslv8hi_internal (TARGET_NEON)
754 #define HAVE_neon_vbslv2si_internal (TARGET_NEON)
755 #define HAVE_neon_vbslv4si_internal (TARGET_NEON)
756 #define HAVE_neon_vbslv2sf_internal (TARGET_NEON)
757 #define HAVE_neon_vbslv4sf_internal (TARGET_NEON)
758 #define HAVE_neon_vbsldi_internal (TARGET_NEON)
759 #define HAVE_neon_vbslv2di_internal (TARGET_NEON)
760 #define HAVE_neon_vshlv8qi (TARGET_NEON)
761 #define HAVE_neon_vshlv16qi (TARGET_NEON)
762 #define HAVE_neon_vshlv4hi (TARGET_NEON)
763 #define HAVE_neon_vshlv8hi (TARGET_NEON)
764 #define HAVE_neon_vshlv2si (TARGET_NEON)
765 #define HAVE_neon_vshlv4si (TARGET_NEON)
766 #define HAVE_neon_vshldi (TARGET_NEON)
767 #define HAVE_neon_vshlv2di (TARGET_NEON)
768 #define HAVE_neon_vqshlv8qi (TARGET_NEON)
769 #define HAVE_neon_vqshlv16qi (TARGET_NEON)
770 #define HAVE_neon_vqshlv4hi (TARGET_NEON)
771 #define HAVE_neon_vqshlv8hi (TARGET_NEON)
772 #define HAVE_neon_vqshlv2si (TARGET_NEON)
773 #define HAVE_neon_vqshlv4si (TARGET_NEON)
774 #define HAVE_neon_vqshldi (TARGET_NEON)
775 #define HAVE_neon_vqshlv2di (TARGET_NEON)
776 #define HAVE_neon_vshr_nv8qi (TARGET_NEON)
777 #define HAVE_neon_vshr_nv16qi (TARGET_NEON)
778 #define HAVE_neon_vshr_nv4hi (TARGET_NEON)
779 #define HAVE_neon_vshr_nv8hi (TARGET_NEON)
780 #define HAVE_neon_vshr_nv2si (TARGET_NEON)
781 #define HAVE_neon_vshr_nv4si (TARGET_NEON)
782 #define HAVE_neon_vshr_ndi (TARGET_NEON)
783 #define HAVE_neon_vshr_nv2di (TARGET_NEON)
784 #define HAVE_neon_vshrn_nv8hi (TARGET_NEON)
785 #define HAVE_neon_vshrn_nv4si (TARGET_NEON)
786 #define HAVE_neon_vshrn_nv2di (TARGET_NEON)
787 #define HAVE_neon_vqshrn_nv8hi (TARGET_NEON)
788 #define HAVE_neon_vqshrn_nv4si (TARGET_NEON)
789 #define HAVE_neon_vqshrn_nv2di (TARGET_NEON)
790 #define HAVE_neon_vqshrun_nv8hi (TARGET_NEON)
791 #define HAVE_neon_vqshrun_nv4si (TARGET_NEON)
792 #define HAVE_neon_vqshrun_nv2di (TARGET_NEON)
793 #define HAVE_neon_vshl_nv8qi (TARGET_NEON)
794 #define HAVE_neon_vshl_nv16qi (TARGET_NEON)
795 #define HAVE_neon_vshl_nv4hi (TARGET_NEON)
796 #define HAVE_neon_vshl_nv8hi (TARGET_NEON)
797 #define HAVE_neon_vshl_nv2si (TARGET_NEON)
798 #define HAVE_neon_vshl_nv4si (TARGET_NEON)
799 #define HAVE_neon_vshl_ndi (TARGET_NEON)
800 #define HAVE_neon_vshl_nv2di (TARGET_NEON)
801 #define HAVE_neon_vqshl_nv8qi (TARGET_NEON)
802 #define HAVE_neon_vqshl_nv16qi (TARGET_NEON)
803 #define HAVE_neon_vqshl_nv4hi (TARGET_NEON)
804 #define HAVE_neon_vqshl_nv8hi (TARGET_NEON)
805 #define HAVE_neon_vqshl_nv2si (TARGET_NEON)
806 #define HAVE_neon_vqshl_nv4si (TARGET_NEON)
807 #define HAVE_neon_vqshl_ndi (TARGET_NEON)
808 #define HAVE_neon_vqshl_nv2di (TARGET_NEON)
809 #define HAVE_neon_vqshlu_nv8qi (TARGET_NEON)
810 #define HAVE_neon_vqshlu_nv16qi (TARGET_NEON)
811 #define HAVE_neon_vqshlu_nv4hi (TARGET_NEON)
812 #define HAVE_neon_vqshlu_nv8hi (TARGET_NEON)
813 #define HAVE_neon_vqshlu_nv2si (TARGET_NEON)
814 #define HAVE_neon_vqshlu_nv4si (TARGET_NEON)
815 #define HAVE_neon_vqshlu_ndi (TARGET_NEON)
816 #define HAVE_neon_vqshlu_nv2di (TARGET_NEON)
817 #define HAVE_neon_vshll_nv8qi (TARGET_NEON)
818 #define HAVE_neon_vshll_nv4hi (TARGET_NEON)
819 #define HAVE_neon_vshll_nv2si (TARGET_NEON)
820 #define HAVE_neon_vsra_nv8qi (TARGET_NEON)
821 #define HAVE_neon_vsra_nv16qi (TARGET_NEON)
822 #define HAVE_neon_vsra_nv4hi (TARGET_NEON)
823 #define HAVE_neon_vsra_nv8hi (TARGET_NEON)
824 #define HAVE_neon_vsra_nv2si (TARGET_NEON)
825 #define HAVE_neon_vsra_nv4si (TARGET_NEON)
826 #define HAVE_neon_vsra_ndi (TARGET_NEON)
827 #define HAVE_neon_vsra_nv2di (TARGET_NEON)
828 #define HAVE_neon_vsri_nv8qi (TARGET_NEON)
829 #define HAVE_neon_vsri_nv16qi (TARGET_NEON)
830 #define HAVE_neon_vsri_nv4hi (TARGET_NEON)
831 #define HAVE_neon_vsri_nv8hi (TARGET_NEON)
832 #define HAVE_neon_vsri_nv2si (TARGET_NEON)
833 #define HAVE_neon_vsri_nv4si (TARGET_NEON)
834 #define HAVE_neon_vsri_ndi (TARGET_NEON)
835 #define HAVE_neon_vsri_nv2di (TARGET_NEON)
836 #define HAVE_neon_vsli_nv8qi (TARGET_NEON)
837 #define HAVE_neon_vsli_nv16qi (TARGET_NEON)
838 #define HAVE_neon_vsli_nv4hi (TARGET_NEON)
839 #define HAVE_neon_vsli_nv8hi (TARGET_NEON)
840 #define HAVE_neon_vsli_nv2si (TARGET_NEON)
841 #define HAVE_neon_vsli_nv4si (TARGET_NEON)
842 #define HAVE_neon_vsli_ndi (TARGET_NEON)
843 #define HAVE_neon_vsli_nv2di (TARGET_NEON)
844 #define HAVE_neon_vtbl1v8qi (TARGET_NEON)
845 #define HAVE_neon_vtbl2v8qi (TARGET_NEON)
846 #define HAVE_neon_vtbl3v8qi (TARGET_NEON)
847 #define HAVE_neon_vtbl4v8qi (TARGET_NEON)
848 #define HAVE_neon_vtbx1v8qi (TARGET_NEON)
849 #define HAVE_neon_vtbx2v8qi (TARGET_NEON)
850 #define HAVE_neon_vtbx3v8qi (TARGET_NEON)
851 #define HAVE_neon_vtbx4v8qi (TARGET_NEON)
852 #define HAVE_neon_vtrnv8qi_internal (TARGET_NEON)
853 #define HAVE_neon_vtrnv16qi_internal (TARGET_NEON)
854 #define HAVE_neon_vtrnv4hi_internal (TARGET_NEON)
855 #define HAVE_neon_vtrnv8hi_internal (TARGET_NEON)
856 #define HAVE_neon_vtrnv2si_internal (TARGET_NEON)
857 #define HAVE_neon_vtrnv4si_internal (TARGET_NEON)
858 #define HAVE_neon_vtrnv2sf_internal (TARGET_NEON)
859 #define HAVE_neon_vtrnv4sf_internal (TARGET_NEON)
860 #define HAVE_neon_vzipv8qi_internal (TARGET_NEON)
861 #define HAVE_neon_vzipv16qi_internal (TARGET_NEON)
862 #define HAVE_neon_vzipv4hi_internal (TARGET_NEON)
863 #define HAVE_neon_vzipv8hi_internal (TARGET_NEON)
864 #define HAVE_neon_vzipv2si_internal (TARGET_NEON)
865 #define HAVE_neon_vzipv4si_internal (TARGET_NEON)
866 #define HAVE_neon_vzipv2sf_internal (TARGET_NEON)
867 #define HAVE_neon_vzipv4sf_internal (TARGET_NEON)
868 #define HAVE_neon_vuzpv8qi_internal (TARGET_NEON)
869 #define HAVE_neon_vuzpv16qi_internal (TARGET_NEON)
870 #define HAVE_neon_vuzpv4hi_internal (TARGET_NEON)
871 #define HAVE_neon_vuzpv8hi_internal (TARGET_NEON)
872 #define HAVE_neon_vuzpv2si_internal (TARGET_NEON)
873 #define HAVE_neon_vuzpv4si_internal (TARGET_NEON)
874 #define HAVE_neon_vuzpv2sf_internal (TARGET_NEON)
875 #define HAVE_neon_vuzpv4sf_internal (TARGET_NEON)
876 #define HAVE_neon_vld1v8qi (TARGET_NEON)
877 #define HAVE_neon_vld1v16qi (TARGET_NEON)
878 #define HAVE_neon_vld1v4hi (TARGET_NEON)
879 #define HAVE_neon_vld1v8hi (TARGET_NEON)
880 #define HAVE_neon_vld1v2si (TARGET_NEON)
881 #define HAVE_neon_vld1v4si (TARGET_NEON)
882 #define HAVE_neon_vld1v2sf (TARGET_NEON)
883 #define HAVE_neon_vld1v4sf (TARGET_NEON)
884 #define HAVE_neon_vld1di (TARGET_NEON)
885 #define HAVE_neon_vld1v2di (TARGET_NEON)
886 #define HAVE_neon_vld1_lanev8qi (TARGET_NEON)
887 #define HAVE_neon_vld1_lanev4hi (TARGET_NEON)
888 #define HAVE_neon_vld1_lanev2si (TARGET_NEON)
889 #define HAVE_neon_vld1_lanev2sf (TARGET_NEON)
890 #define HAVE_neon_vld1_lanedi (TARGET_NEON)
891 #define HAVE_neon_vld1_lanev16qi (TARGET_NEON)
892 #define HAVE_neon_vld1_lanev8hi (TARGET_NEON)
893 #define HAVE_neon_vld1_lanev4si (TARGET_NEON)
894 #define HAVE_neon_vld1_lanev4sf (TARGET_NEON)
895 #define HAVE_neon_vld1_lanev2di (TARGET_NEON)
896 #define HAVE_neon_vld1_dupv8qi (TARGET_NEON)
897 #define HAVE_neon_vld1_dupv4hi (TARGET_NEON)
898 #define HAVE_neon_vld1_dupv2si (TARGET_NEON)
899 #define HAVE_neon_vld1_dupv2sf (TARGET_NEON)
900 #define HAVE_neon_vld1_dupdi (TARGET_NEON)
901 #define HAVE_neon_vld1_dupv16qi (TARGET_NEON)
902 #define HAVE_neon_vld1_dupv8hi (TARGET_NEON)
903 #define HAVE_neon_vld1_dupv4si (TARGET_NEON)
904 #define HAVE_neon_vld1_dupv4sf (TARGET_NEON)
905 #define HAVE_neon_vld1_dupv2di (TARGET_NEON)
906 #define HAVE_neon_vst1v8qi (TARGET_NEON)
907 #define HAVE_neon_vst1v16qi (TARGET_NEON)
908 #define HAVE_neon_vst1v4hi (TARGET_NEON)
909 #define HAVE_neon_vst1v8hi (TARGET_NEON)
910 #define HAVE_neon_vst1v2si (TARGET_NEON)
911 #define HAVE_neon_vst1v4si (TARGET_NEON)
912 #define HAVE_neon_vst1v2sf (TARGET_NEON)
913 #define HAVE_neon_vst1v4sf (TARGET_NEON)
914 #define HAVE_neon_vst1di (TARGET_NEON)
915 #define HAVE_neon_vst1v2di (TARGET_NEON)
916 #define HAVE_neon_vst1_lanev8qi (TARGET_NEON)
917 #define HAVE_neon_vst1_lanev4hi (TARGET_NEON)
918 #define HAVE_neon_vst1_lanev2si (TARGET_NEON)
919 #define HAVE_neon_vst1_lanev2sf (TARGET_NEON)
920 #define HAVE_neon_vst1_lanedi (TARGET_NEON)
921 #define HAVE_neon_vst1_lanev16qi (TARGET_NEON)
922 #define HAVE_neon_vst1_lanev8hi (TARGET_NEON)
923 #define HAVE_neon_vst1_lanev4si (TARGET_NEON)
924 #define HAVE_neon_vst1_lanev4sf (TARGET_NEON)
925 #define HAVE_neon_vst1_lanev2di (TARGET_NEON)
926 #define HAVE_neon_vld2v8qi (TARGET_NEON)
927 #define HAVE_neon_vld2v4hi (TARGET_NEON)
928 #define HAVE_neon_vld2v2si (TARGET_NEON)
929 #define HAVE_neon_vld2v2sf (TARGET_NEON)
930 #define HAVE_neon_vld2di (TARGET_NEON)
931 #define HAVE_neon_vld2v16qi (TARGET_NEON)
932 #define HAVE_neon_vld2v8hi (TARGET_NEON)
933 #define HAVE_neon_vld2v4si (TARGET_NEON)
934 #define HAVE_neon_vld2v4sf (TARGET_NEON)
935 #define HAVE_neon_vld2_lanev8qi (TARGET_NEON)
936 #define HAVE_neon_vld2_lanev4hi (TARGET_NEON)
937 #define HAVE_neon_vld2_lanev2si (TARGET_NEON)
938 #define HAVE_neon_vld2_lanev2sf (TARGET_NEON)
939 #define HAVE_neon_vld2_lanev8hi (TARGET_NEON)
940 #define HAVE_neon_vld2_lanev4si (TARGET_NEON)
941 #define HAVE_neon_vld2_lanev4sf (TARGET_NEON)
942 #define HAVE_neon_vld2_dupv8qi (TARGET_NEON)
943 #define HAVE_neon_vld2_dupv4hi (TARGET_NEON)
944 #define HAVE_neon_vld2_dupv2si (TARGET_NEON)
945 #define HAVE_neon_vld2_dupv2sf (TARGET_NEON)
946 #define HAVE_neon_vld2_dupdi (TARGET_NEON)
947 #define HAVE_neon_vst2v8qi (TARGET_NEON)
948 #define HAVE_neon_vst2v4hi (TARGET_NEON)
949 #define HAVE_neon_vst2v2si (TARGET_NEON)
950 #define HAVE_neon_vst2v2sf (TARGET_NEON)
951 #define HAVE_neon_vst2di (TARGET_NEON)
952 #define HAVE_neon_vst2v16qi (TARGET_NEON)
953 #define HAVE_neon_vst2v8hi (TARGET_NEON)
954 #define HAVE_neon_vst2v4si (TARGET_NEON)
955 #define HAVE_neon_vst2v4sf (TARGET_NEON)
956 #define HAVE_neon_vst2_lanev8qi (TARGET_NEON)
957 #define HAVE_neon_vst2_lanev4hi (TARGET_NEON)
958 #define HAVE_neon_vst2_lanev2si (TARGET_NEON)
959 #define HAVE_neon_vst2_lanev2sf (TARGET_NEON)
960 #define HAVE_neon_vst2_lanev8hi (TARGET_NEON)
961 #define HAVE_neon_vst2_lanev4si (TARGET_NEON)
962 #define HAVE_neon_vst2_lanev4sf (TARGET_NEON)
963 #define HAVE_neon_vld3v8qi (TARGET_NEON)
964 #define HAVE_neon_vld3v4hi (TARGET_NEON)
965 #define HAVE_neon_vld3v2si (TARGET_NEON)
966 #define HAVE_neon_vld3v2sf (TARGET_NEON)
967 #define HAVE_neon_vld3di (TARGET_NEON)
968 #define HAVE_neon_vld3qav16qi (TARGET_NEON)
969 #define HAVE_neon_vld3qav8hi (TARGET_NEON)
970 #define HAVE_neon_vld3qav4si (TARGET_NEON)
971 #define HAVE_neon_vld3qav4sf (TARGET_NEON)
972 #define HAVE_neon_vld3qbv16qi (TARGET_NEON)
973 #define HAVE_neon_vld3qbv8hi (TARGET_NEON)
974 #define HAVE_neon_vld3qbv4si (TARGET_NEON)
975 #define HAVE_neon_vld3qbv4sf (TARGET_NEON)
976 #define HAVE_neon_vld3_lanev8qi (TARGET_NEON)
977 #define HAVE_neon_vld3_lanev4hi (TARGET_NEON)
978 #define HAVE_neon_vld3_lanev2si (TARGET_NEON)
979 #define HAVE_neon_vld3_lanev2sf (TARGET_NEON)
980 #define HAVE_neon_vld3_lanev8hi (TARGET_NEON)
981 #define HAVE_neon_vld3_lanev4si (TARGET_NEON)
982 #define HAVE_neon_vld3_lanev4sf (TARGET_NEON)
983 #define HAVE_neon_vld3_dupv8qi (TARGET_NEON)
984 #define HAVE_neon_vld3_dupv4hi (TARGET_NEON)
985 #define HAVE_neon_vld3_dupv2si (TARGET_NEON)
986 #define HAVE_neon_vld3_dupv2sf (TARGET_NEON)
987 #define HAVE_neon_vld3_dupdi (TARGET_NEON)
988 #define HAVE_neon_vst3v8qi (TARGET_NEON)
989 #define HAVE_neon_vst3v4hi (TARGET_NEON)
990 #define HAVE_neon_vst3v2si (TARGET_NEON)
991 #define HAVE_neon_vst3v2sf (TARGET_NEON)
992 #define HAVE_neon_vst3di (TARGET_NEON)
993 #define HAVE_neon_vst3qav16qi (TARGET_NEON)
994 #define HAVE_neon_vst3qav8hi (TARGET_NEON)
995 #define HAVE_neon_vst3qav4si (TARGET_NEON)
996 #define HAVE_neon_vst3qav4sf (TARGET_NEON)
997 #define HAVE_neon_vst3qbv16qi (TARGET_NEON)
998 #define HAVE_neon_vst3qbv8hi (TARGET_NEON)
999 #define HAVE_neon_vst3qbv4si (TARGET_NEON)
1000 #define HAVE_neon_vst3qbv4sf (TARGET_NEON)
1001 #define HAVE_neon_vst3_lanev8qi (TARGET_NEON)
1002 #define HAVE_neon_vst3_lanev4hi (TARGET_NEON)
1003 #define HAVE_neon_vst3_lanev2si (TARGET_NEON)
1004 #define HAVE_neon_vst3_lanev2sf (TARGET_NEON)
1005 #define HAVE_neon_vst3_lanev8hi (TARGET_NEON)
1006 #define HAVE_neon_vst3_lanev4si (TARGET_NEON)
1007 #define HAVE_neon_vst3_lanev4sf (TARGET_NEON)
1008 #define HAVE_neon_vld4v8qi (TARGET_NEON)
1009 #define HAVE_neon_vld4v4hi (TARGET_NEON)
1010 #define HAVE_neon_vld4v2si (TARGET_NEON)
1011 #define HAVE_neon_vld4v2sf (TARGET_NEON)
1012 #define HAVE_neon_vld4di (TARGET_NEON)
1013 #define HAVE_neon_vld4qav16qi (TARGET_NEON)
1014 #define HAVE_neon_vld4qav8hi (TARGET_NEON)
1015 #define HAVE_neon_vld4qav4si (TARGET_NEON)
1016 #define HAVE_neon_vld4qav4sf (TARGET_NEON)
1017 #define HAVE_neon_vld4qbv16qi (TARGET_NEON)
1018 #define HAVE_neon_vld4qbv8hi (TARGET_NEON)
1019 #define HAVE_neon_vld4qbv4si (TARGET_NEON)
1020 #define HAVE_neon_vld4qbv4sf (TARGET_NEON)
1021 #define HAVE_neon_vld4_lanev8qi (TARGET_NEON)
1022 #define HAVE_neon_vld4_lanev4hi (TARGET_NEON)
1023 #define HAVE_neon_vld4_lanev2si (TARGET_NEON)
1024 #define HAVE_neon_vld4_lanev2sf (TARGET_NEON)
1025 #define HAVE_neon_vld4_lanev8hi (TARGET_NEON)
1026 #define HAVE_neon_vld4_lanev4si (TARGET_NEON)
1027 #define HAVE_neon_vld4_lanev4sf (TARGET_NEON)
1028 #define HAVE_neon_vld4_dupv8qi (TARGET_NEON)
1029 #define HAVE_neon_vld4_dupv4hi (TARGET_NEON)
1030 #define HAVE_neon_vld4_dupv2si (TARGET_NEON)
1031 #define HAVE_neon_vld4_dupv2sf (TARGET_NEON)
1032 #define HAVE_neon_vld4_dupdi (TARGET_NEON)
1033 #define HAVE_neon_vst4v8qi (TARGET_NEON)
1034 #define HAVE_neon_vst4v4hi (TARGET_NEON)
1035 #define HAVE_neon_vst4v2si (TARGET_NEON)
1036 #define HAVE_neon_vst4v2sf (TARGET_NEON)
1037 #define HAVE_neon_vst4di (TARGET_NEON)
1038 #define HAVE_neon_vst4qav16qi (TARGET_NEON)
1039 #define HAVE_neon_vst4qav8hi (TARGET_NEON)
1040 #define HAVE_neon_vst4qav4si (TARGET_NEON)
1041 #define HAVE_neon_vst4qav4sf (TARGET_NEON)
1042 #define HAVE_neon_vst4qbv16qi (TARGET_NEON)
1043 #define HAVE_neon_vst4qbv8hi (TARGET_NEON)
1044 #define HAVE_neon_vst4qbv4si (TARGET_NEON)
1045 #define HAVE_neon_vst4qbv4sf (TARGET_NEON)
1046 #define HAVE_neon_vst4_lanev8qi (TARGET_NEON)
1047 #define HAVE_neon_vst4_lanev4hi (TARGET_NEON)
1048 #define HAVE_neon_vst4_lanev2si (TARGET_NEON)
1049 #define HAVE_neon_vst4_lanev2sf (TARGET_NEON)
1050 #define HAVE_neon_vst4_lanev8hi (TARGET_NEON)
1051 #define HAVE_neon_vst4_lanev4si (TARGET_NEON)
1052 #define HAVE_neon_vst4_lanev4sf (TARGET_NEON)
1053 #define HAVE_adddi3 1
1054 #define HAVE_addsi3 1
1055 #define HAVE_incscc (TARGET_32BIT)
1056 #define HAVE_addsf3 (TARGET_32BIT && TARGET_HARD_FLOAT)
1057 #define HAVE_adddf3 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1058 #define HAVE_subdi3 1
1059 #define HAVE_subsi3 1
1060 #define HAVE_decscc (TARGET_32BIT)
1061 #define HAVE_subsf3 (TARGET_32BIT && TARGET_HARD_FLOAT)
1062 #define HAVE_subdf3 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1063 #define HAVE_mulsi3 1
1064 #define HAVE_mulsidi3 (TARGET_32BIT && arm_arch3m)
1065 #define HAVE_umulsidi3 (TARGET_32BIT && arm_arch3m)
1066 #define HAVE_smulsi3_highpart (TARGET_32BIT && arm_arch3m)
1067 #define HAVE_umulsi3_highpart (TARGET_32BIT && arm_arch3m)
1068 #define HAVE_mulsf3 (TARGET_32BIT && TARGET_HARD_FLOAT)
1069 #define HAVE_muldf3 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1070 #define HAVE_divsf3 (TARGET_32BIT && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP))
1071 #define HAVE_divdf3 (TARGET_32BIT && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP_DOUBLE))
1072 #define HAVE_modsf3 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_FPA)
1073 #define HAVE_moddf3 (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_FPA)
1074 #define HAVE_andsi3 1
1075 #define HAVE_insv (TARGET_ARM || arm_arch_thumb2)
1076 #define HAVE_iorsi3 1
1077 #define HAVE_xorsi3 1
1078 #define HAVE_smaxsi3 (TARGET_32BIT)
1079 #define HAVE_sminsi3 (TARGET_32BIT)
1080 #define HAVE_umaxsi3 (TARGET_32BIT)
1081 #define HAVE_uminsi3 (TARGET_32BIT)
1082 #define HAVE_ashldi3 (TARGET_32BIT)
1083 #define HAVE_ashlsi3 1
1084 #define HAVE_ashrdi3 (TARGET_32BIT)
1085 #define HAVE_ashrsi3 1
1086 #define HAVE_lshrdi3 (TARGET_32BIT)
1087 #define HAVE_lshrsi3 1
1088 #define HAVE_rotlsi3 (TARGET_32BIT)
1089 #define HAVE_rotrsi3 1
1090 #define HAVE_extzv (TARGET_THUMB1 || arm_arch_thumb2)
1091 #define HAVE_negdi2 1
1092 #define HAVE_negsi2 1
1093 #define HAVE_negsf2 (TARGET_32BIT && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP))
1094 #define HAVE_negdf2 (TARGET_32BIT && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP_DOUBLE))
1095 #define HAVE_abssi2 1
1096 #define HAVE_abssf2 (TARGET_32BIT && TARGET_HARD_FLOAT)
1097 #define HAVE_absdf2 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1098 #define HAVE_sqrtsf2 (TARGET_32BIT && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP))
1099 #define HAVE_sqrtdf2 (TARGET_32BIT && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP_DOUBLE))
1100 #define HAVE_one_cmplsi2 1
1101 #define HAVE_floatsihf2 1
1102 #define HAVE_floatdihf2 1
1103 #define HAVE_floatsisf2 (TARGET_32BIT && TARGET_HARD_FLOAT)
1104 #define HAVE_floatsidf2 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1105 #define HAVE_fix_trunchfsi2 1
1106 #define HAVE_fix_trunchfdi2 1
1107 #define HAVE_fix_truncsfsi2 (TARGET_32BIT && TARGET_HARD_FLOAT)
1108 #define HAVE_fix_truncdfsi2 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1109 #define HAVE_truncdfsf2 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1110 #define HAVE_truncdfhf2 1
1111 #define HAVE_zero_extendsidi2 (TARGET_32BIT)
1112 #define HAVE_zero_extendqidi2 (TARGET_32BIT)
1113 #define HAVE_extendsidi2 (TARGET_32BIT)
1114 #define HAVE_zero_extendhisi2 1
1115 #define HAVE_zero_extendqisi2 1
1116 #define HAVE_extendhisi2 1
1117 #define HAVE_extendhisi2_mem (TARGET_ARM)
1118 #define HAVE_extendqihi2 (TARGET_ARM)
1119 #define HAVE_extendqisi2 1
1120 #define HAVE_extendsfdf2 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1121 #define HAVE_extendhfdf2 1
1122 #define HAVE_movdi 1
1123 #define HAVE_movsi 1
1124 #define HAVE_builtin_setjmp_receiver (flag_pic)
1125 #define HAVE_storehi (TARGET_ARM)
1126 #define HAVE_storehi_bigend (TARGET_ARM)
1127 #define HAVE_storeinthi (TARGET_ARM)
1128 #define HAVE_storehi_single_op (TARGET_32BIT && arm_arch4)
1129 #define HAVE_movhi 1
1130 #define HAVE_movhi_bytes (TARGET_ARM)
1131 #define HAVE_movhi_bigend (TARGET_ARM)
1132 #define HAVE_thumb_movhi_clobber (TARGET_THUMB1)
1133 #define HAVE_reload_outhi 1
1134 #define HAVE_reload_inhi 1
1135 #define HAVE_movqi 1
1136 #define HAVE_movhf 1
1137 #define HAVE_movsf 1
1138 #define HAVE_movdf 1
1139 #define HAVE_reload_outdf (TARGET_32BIT)
1140 #define HAVE_movxf (TARGET_32BIT && TARGET_HARD_FLOAT && TARGET_FPA)
1141 #define HAVE_load_multiple (TARGET_32BIT)
1142 #define HAVE_store_multiple (TARGET_32BIT)
1143 #define HAVE_movmemqi 1
1144 #define HAVE_cbranchsi4 (TARGET_THUMB1 || TARGET_32BIT)
1145 #define HAVE_cbranchsf4 (TARGET_32BIT && TARGET_HARD_FLOAT)
1146 #define HAVE_cbranchdf4 (TARGET_32BIT && TARGET_HARD_FLOAT && !TARGET_VFP_SINGLE)
1147 #define HAVE_cbranchdi4 (TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK)
1148 #define HAVE_cbranch_cc (TARGET_32BIT)
1149 #define HAVE_cstore_cc (TARGET_32BIT)
1150 #define HAVE_cstoresi4 (TARGET_32BIT || TARGET_THUMB1)
1151 #define HAVE_cstoresf4 (TARGET_32BIT && TARGET_HARD_FLOAT)
1152 #define HAVE_cstoredf4 (TARGET_32BIT && TARGET_HARD_FLOAT)
1153 #define HAVE_cstoredi4 (TARGET_ARM && TARGET_HARD_FLOAT && TARGET_MAVERICK)
1154 #define HAVE_cstoresi_eq0_thumb1 (TARGET_THUMB1)
1155 #define HAVE_cstoresi_ne0_thumb1 (TARGET_THUMB1)
1156 #define HAVE_movsicc (TARGET_32BIT)
1157 #define HAVE_movsfcc (TARGET_32BIT && TARGET_HARD_FLOAT)
1158 #define HAVE_movdfcc (TARGET_32BIT && TARGET_HARD_FLOAT && (TARGET_FPA || TARGET_VFP_DOUBLE))
1159 #define HAVE_jump 1
1160 #define HAVE_call 1
1161 #define HAVE_call_internal 1
1162 #define HAVE_call_value 1
1163 #define HAVE_call_value_internal 1
1164 #define HAVE_sibcall (TARGET_ARM)
1165 #define HAVE_sibcall_value (TARGET_ARM)
1166 #define HAVE_return_addr_mask (TARGET_ARM)
1167 #define HAVE_untyped_call 1
1168 #define HAVE_untyped_return 1
1169 #define HAVE_casesi (TARGET_32BIT || optimize_size || flag_pic)
1170 #define HAVE_thumb1_casesi_internal_pic (TARGET_THUMB1)
1171 #define HAVE_indirect_jump 1
1172 #define HAVE_prologue 1
1173 #define HAVE_epilogue 1
1174 #define HAVE_eh_epilogue 1
1175 #define HAVE_tablejump (TARGET_THUMB1)
1176 #define HAVE_ctzsi2 (TARGET_32BIT && arm_arch_thumb2)
1177 #define HAVE_eh_return 1
1178 #define HAVE_arm_legacy_rev (TARGET_32BIT)
1179 #define HAVE_thumb_legacy_rev (TARGET_THUMB)
1180 #define HAVE_bswapsi2 (TARGET_EITHER && (arm_arch6 || !optimize_size))
1181 #define HAVE_movv2di (TARGET_NEON \
1182 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2DImode)))
1183 #define HAVE_movv2si (TARGET_NEON \
1184 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SImode)))
1185 #define HAVE_movv4hi (TARGET_NEON \
1186 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4HImode)))
1187 #define HAVE_movv8qi (TARGET_NEON \
1188 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8QImode)))
1189 #define HAVE_movv2sf (TARGET_NEON \
1190 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SFmode)))
1191 #define HAVE_movv4si (TARGET_NEON \
1192 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SImode)))
1193 #define HAVE_movv8hi (TARGET_NEON \
1194 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8HImode)))
1195 #define HAVE_movv16qi (TARGET_NEON \
1196 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V16QImode)))
1197 #define HAVE_movv4sf (TARGET_NEON \
1198 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SFmode)))
1199 #define HAVE_addv2di3 (TARGET_NEON \
1200 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2DImode)))
1201 #define HAVE_addv2si3 (TARGET_NEON \
1202 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SImode)))
1203 #define HAVE_addv4hi3 (TARGET_NEON \
1204 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4HImode)))
1205 #define HAVE_addv8qi3 (TARGET_NEON \
1206 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8QImode)))
1207 #define HAVE_addv2sf3 (TARGET_NEON \
1208 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SFmode)))
1209 #define HAVE_addv4si3 (TARGET_NEON \
1210 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SImode)))
1211 #define HAVE_addv8hi3 (TARGET_NEON \
1212 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8HImode)))
1213 #define HAVE_addv16qi3 (TARGET_NEON \
1214 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V16QImode)))
1215 #define HAVE_addv4sf3 (TARGET_NEON \
1216 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SFmode)))
1217 #define HAVE_subv2di3 (TARGET_NEON \
1218 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2DImode)))
1219 #define HAVE_subv2si3 (TARGET_NEON \
1220 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SImode)))
1221 #define HAVE_subv4hi3 (TARGET_NEON \
1222 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4HImode)))
1223 #define HAVE_subv8qi3 (TARGET_NEON \
1224 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8QImode)))
1225 #define HAVE_subv2sf3 (TARGET_NEON \
1226 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SFmode)))
1227 #define HAVE_subv4si3 (TARGET_NEON \
1228 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SImode)))
1229 #define HAVE_subv8hi3 (TARGET_NEON \
1230 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8HImode)))
1231 #define HAVE_subv16qi3 (TARGET_NEON \
1232 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V16QImode)))
1233 #define HAVE_subv4sf3 (TARGET_NEON \
1234 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SFmode)))
1235 #define HAVE_mulv2si3 (TARGET_NEON || (V2SImode == V4HImode && TARGET_REALLY_IWMMXT))
1236 #define HAVE_mulv4hi3 (TARGET_NEON || (V4HImode == V4HImode && TARGET_REALLY_IWMMXT))
1237 #define HAVE_mulv8qi3 (TARGET_NEON || (V8QImode == V4HImode && TARGET_REALLY_IWMMXT))
1238 #define HAVE_mulv2sf3 (TARGET_NEON || (V2SFmode == V4HImode && TARGET_REALLY_IWMMXT))
1239 #define HAVE_mulv4si3 (TARGET_NEON || (V4SImode == V4HImode && TARGET_REALLY_IWMMXT))
1240 #define HAVE_mulv8hi3 (TARGET_NEON || (V8HImode == V4HImode && TARGET_REALLY_IWMMXT))
1241 #define HAVE_mulv16qi3 (TARGET_NEON || (V16QImode == V4HImode && TARGET_REALLY_IWMMXT))
1242 #define HAVE_mulv4sf3 (TARGET_NEON || (V4SFmode == V4HImode && TARGET_REALLY_IWMMXT))
1243 #define HAVE_sminv2si3 (TARGET_NEON \
1244 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SImode)))
1245 #define HAVE_sminv4hi3 (TARGET_NEON \
1246 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4HImode)))
1247 #define HAVE_sminv8qi3 (TARGET_NEON \
1248 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8QImode)))
1249 #define HAVE_sminv2sf3 (TARGET_NEON \
1250 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SFmode)))
1251 #define HAVE_sminv4si3 (TARGET_NEON \
1252 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SImode)))
1253 #define HAVE_sminv8hi3 (TARGET_NEON \
1254 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8HImode)))
1255 #define HAVE_sminv16qi3 (TARGET_NEON \
1256 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V16QImode)))
1257 #define HAVE_sminv4sf3 (TARGET_NEON \
1258 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SFmode)))
1259 #define HAVE_uminv2si3 (TARGET_NEON \
1260 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SImode)))
1261 #define HAVE_uminv4hi3 (TARGET_NEON \
1262 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4HImode)))
1263 #define HAVE_uminv8qi3 (TARGET_NEON \
1264 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8QImode)))
1265 #define HAVE_uminv4si3 (TARGET_NEON \
1266 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SImode)))
1267 #define HAVE_uminv8hi3 (TARGET_NEON \
1268 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8HImode)))
1269 #define HAVE_uminv16qi3 (TARGET_NEON \
1270 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V16QImode)))
1271 #define HAVE_smaxv2si3 (TARGET_NEON \
1272 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SImode)))
1273 #define HAVE_smaxv4hi3 (TARGET_NEON \
1274 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4HImode)))
1275 #define HAVE_smaxv8qi3 (TARGET_NEON \
1276 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8QImode)))
1277 #define HAVE_smaxv2sf3 (TARGET_NEON \
1278 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SFmode)))
1279 #define HAVE_smaxv4si3 (TARGET_NEON \
1280 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SImode)))
1281 #define HAVE_smaxv8hi3 (TARGET_NEON \
1282 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8HImode)))
1283 #define HAVE_smaxv16qi3 (TARGET_NEON \
1284 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V16QImode)))
1285 #define HAVE_smaxv4sf3 (TARGET_NEON \
1286 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SFmode)))
1287 #define HAVE_umaxv2si3 (TARGET_NEON \
1288 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V2SImode)))
1289 #define HAVE_umaxv4hi3 (TARGET_NEON \
1290 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4HImode)))
1291 #define HAVE_umaxv8qi3 (TARGET_NEON \
1292 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8QImode)))
1293 #define HAVE_umaxv4si3 (TARGET_NEON \
1294 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V4SImode)))
1295 #define HAVE_umaxv8hi3 (TARGET_NEON \
1296 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V8HImode)))
1297 #define HAVE_umaxv16qi3 (TARGET_NEON \
1298 || (TARGET_REALLY_IWMMXT && VALID_IWMMXT_REG_MODE (V16QImode)))
1299 #define HAVE_movti (TARGET_NEON)
1300 #define HAVE_movei (TARGET_NEON)
1301 #define HAVE_movoi (TARGET_NEON)
1302 #define HAVE_movci (TARGET_NEON)
1303 #define HAVE_movxi (TARGET_NEON)
1304 #define HAVE_vec_setv8qi (TARGET_NEON)
1305 #define HAVE_vec_setv16qi (TARGET_NEON)
1306 #define HAVE_vec_setv4hi (TARGET_NEON)
1307 #define HAVE_vec_setv8hi (TARGET_NEON)
1308 #define HAVE_vec_setv2si (TARGET_NEON)
1309 #define HAVE_vec_setv4si (TARGET_NEON)
1310 #define HAVE_vec_setv2sf (TARGET_NEON)
1311 #define HAVE_vec_setv4sf (TARGET_NEON)
1312 #define HAVE_vec_setv2di (TARGET_NEON)
1313 #define HAVE_vec_initv8qi (TARGET_NEON)
1314 #define HAVE_vec_initv16qi (TARGET_NEON)
1315 #define HAVE_vec_initv4hi (TARGET_NEON)
1316 #define HAVE_vec_initv8hi (TARGET_NEON)
1317 #define HAVE_vec_initv2si (TARGET_NEON)
1318 #define HAVE_vec_initv4si (TARGET_NEON)
1319 #define HAVE_vec_initv2sf (TARGET_NEON)
1320 #define HAVE_vec_initv4sf (TARGET_NEON)
1321 #define HAVE_vec_initv2di (TARGET_NEON)
1322 #define HAVE_vashrv8qi3 (TARGET_NEON)
1323 #define HAVE_vashrv16qi3 (TARGET_NEON)
1324 #define HAVE_vashrv4hi3 (TARGET_NEON)
1325 #define HAVE_vashrv8hi3 (TARGET_NEON)
1326 #define HAVE_vashrv2si3 (TARGET_NEON)
1327 #define HAVE_vashrv4si3 (TARGET_NEON)
1328 #define HAVE_vlshrv8qi3 (TARGET_NEON)
1329 #define HAVE_vlshrv16qi3 (TARGET_NEON)
1330 #define HAVE_vlshrv4hi3 (TARGET_NEON)
1331 #define HAVE_vlshrv8hi3 (TARGET_NEON)
1332 #define HAVE_vlshrv2si3 (TARGET_NEON)
1333 #define HAVE_vlshrv4si3 (TARGET_NEON)
1334 #define HAVE_vec_shr_v8qi (TARGET_NEON)
1335 #define HAVE_vec_shr_v16qi (TARGET_NEON)
1336 #define HAVE_vec_shr_v4hi (TARGET_NEON)
1337 #define HAVE_vec_shr_v8hi (TARGET_NEON)
1338 #define HAVE_vec_shr_v2si (TARGET_NEON)
1339 #define HAVE_vec_shr_v4si (TARGET_NEON)
1340 #define HAVE_vec_shr_v2sf (TARGET_NEON)
1341 #define HAVE_vec_shr_v4sf (TARGET_NEON)
1342 #define HAVE_vec_shr_v2di (TARGET_NEON)
1343 #define HAVE_vec_shl_v8qi (TARGET_NEON)
1344 #define HAVE_vec_shl_v16qi (TARGET_NEON)
1345 #define HAVE_vec_shl_v4hi (TARGET_NEON)
1346 #define HAVE_vec_shl_v8hi (TARGET_NEON)
1347 #define HAVE_vec_shl_v2si (TARGET_NEON)
1348 #define HAVE_vec_shl_v4si (TARGET_NEON)
1349 #define HAVE_vec_shl_v2sf (TARGET_NEON)
1350 #define HAVE_vec_shl_v4sf (TARGET_NEON)
1351 #define HAVE_vec_shl_v2di (TARGET_NEON)
1352 #define HAVE_reduc_splus_v8qi (TARGET_NEON)
1353 #define HAVE_reduc_splus_v4hi (TARGET_NEON)
1354 #define HAVE_reduc_splus_v2si (TARGET_NEON)
1355 #define HAVE_reduc_splus_v2sf (TARGET_NEON)
1356 #define HAVE_reduc_splus_v16qi (TARGET_NEON)
1357 #define HAVE_reduc_splus_v8hi (TARGET_NEON)
1358 #define HAVE_reduc_splus_v4si (TARGET_NEON)
1359 #define HAVE_reduc_splus_v4sf (TARGET_NEON)
1360 #define HAVE_reduc_uplus_v8qi (TARGET_NEON)
1361 #define HAVE_reduc_uplus_v16qi (TARGET_NEON)
1362 #define HAVE_reduc_uplus_v4hi (TARGET_NEON)
1363 #define HAVE_reduc_uplus_v8hi (TARGET_NEON)
1364 #define HAVE_reduc_uplus_v2si (TARGET_NEON)
1365 #define HAVE_reduc_uplus_v4si (TARGET_NEON)
1366 #define HAVE_reduc_uplus_v2di (TARGET_NEON)
1367 #define HAVE_reduc_smin_v8qi (TARGET_NEON)
1368 #define HAVE_reduc_smin_v4hi (TARGET_NEON)
1369 #define HAVE_reduc_smin_v2si (TARGET_NEON)
1370 #define HAVE_reduc_smin_v2sf (TARGET_NEON)
1371 #define HAVE_reduc_smin_v16qi (TARGET_NEON)
1372 #define HAVE_reduc_smin_v8hi (TARGET_NEON)
1373 #define HAVE_reduc_smin_v4si (TARGET_NEON)
1374 #define HAVE_reduc_smin_v4sf (TARGET_NEON)
1375 #define HAVE_reduc_smax_v8qi (TARGET_NEON)
1376 #define HAVE_reduc_smax_v4hi (TARGET_NEON)
1377 #define HAVE_reduc_smax_v2si (TARGET_NEON)
1378 #define HAVE_reduc_smax_v2sf (TARGET_NEON)
1379 #define HAVE_reduc_smax_v16qi (TARGET_NEON)
1380 #define HAVE_reduc_smax_v8hi (TARGET_NEON)
1381 #define HAVE_reduc_smax_v4si (TARGET_NEON)
1382 #define HAVE_reduc_smax_v4sf (TARGET_NEON)
1383 #define HAVE_reduc_umin_v8qi (TARGET_NEON)
1384 #define HAVE_reduc_umin_v4hi (TARGET_NEON)
1385 #define HAVE_reduc_umin_v2si (TARGET_NEON)
1386 #define HAVE_reduc_umin_v16qi (TARGET_NEON)
1387 #define HAVE_reduc_umin_v8hi (TARGET_NEON)
1388 #define HAVE_reduc_umin_v4si (TARGET_NEON)
1389 #define HAVE_reduc_umax_v8qi (TARGET_NEON)
1390 #define HAVE_reduc_umax_v4hi (TARGET_NEON)
1391 #define HAVE_reduc_umax_v2si (TARGET_NEON)
1392 #define HAVE_reduc_umax_v16qi (TARGET_NEON)
1393 #define HAVE_reduc_umax_v8hi (TARGET_NEON)
1394 #define HAVE_reduc_umax_v4si (TARGET_NEON)
1395 #define HAVE_neon_vpaddv8qi (TARGET_NEON)
1396 #define HAVE_neon_vpaddv4hi (TARGET_NEON)
1397 #define HAVE_neon_vpaddv2si (TARGET_NEON)
1398 #define HAVE_neon_vpaddv2sf (TARGET_NEON)
1399 #define HAVE_neon_vnegv8qi (TARGET_NEON)
1400 #define HAVE_neon_vnegv16qi (TARGET_NEON)
1401 #define HAVE_neon_vnegv4hi (TARGET_NEON)
1402 #define HAVE_neon_vnegv8hi (TARGET_NEON)
1403 #define HAVE_neon_vnegv2si (TARGET_NEON)
1404 #define HAVE_neon_vnegv4si (TARGET_NEON)
1405 #define HAVE_neon_vnegv2sf (TARGET_NEON)
1406 #define HAVE_neon_vnegv4sf (TARGET_NEON)
1407 #define HAVE_neon_vmvnv8qi (TARGET_NEON)
1408 #define HAVE_neon_vmvnv16qi (TARGET_NEON)
1409 #define HAVE_neon_vmvnv4hi (TARGET_NEON)
1410 #define HAVE_neon_vmvnv8hi (TARGET_NEON)
1411 #define HAVE_neon_vmvnv2si (TARGET_NEON)
1412 #define HAVE_neon_vmvnv4si (TARGET_NEON)
1413 #define HAVE_neon_vget_lanev8qi (TARGET_NEON)
1414 #define HAVE_neon_vget_lanev16qi (TARGET_NEON)
1415 #define HAVE_neon_vget_lanev4hi (TARGET_NEON)
1416 #define HAVE_neon_vget_lanev8hi (TARGET_NEON)
1417 #define HAVE_neon_vget_lanev2si (TARGET_NEON)
1418 #define HAVE_neon_vget_lanev4si (TARGET_NEON)
1419 #define HAVE_neon_vget_lanev2sf (TARGET_NEON)
1420 #define HAVE_neon_vget_lanev4sf (TARGET_NEON)
1421 #define HAVE_neon_vcreatev8qi (TARGET_NEON)
1422 #define HAVE_neon_vcreatev4hi (TARGET_NEON)
1423 #define HAVE_neon_vcreatev2si (TARGET_NEON)
1424 #define HAVE_neon_vcreatev2sf (TARGET_NEON)
1425 #define HAVE_neon_vcreatedi (TARGET_NEON)
1426 #define HAVE_neon_vdup_lanedi (TARGET_NEON)
1427 #define HAVE_neon_vmul_nv4hi (TARGET_NEON)
1428 #define HAVE_neon_vmul_nv2si (TARGET_NEON)
1429 #define HAVE_neon_vmul_nv2sf (TARGET_NEON)
1430 #define HAVE_neon_vmul_nv8hi (TARGET_NEON)
1431 #define HAVE_neon_vmul_nv4si (TARGET_NEON)
1432 #define HAVE_neon_vmul_nv4sf (TARGET_NEON)
1433 #define HAVE_neon_vmull_nv4hi (TARGET_NEON)
1434 #define HAVE_neon_vmull_nv2si (TARGET_NEON)
1435 #define HAVE_neon_vqdmull_nv4hi (TARGET_NEON)
1436 #define HAVE_neon_vqdmull_nv2si (TARGET_NEON)
1437 #define HAVE_neon_vqdmulh_nv4hi (TARGET_NEON)
1438 #define HAVE_neon_vqdmulh_nv2si (TARGET_NEON)
1439 #define HAVE_neon_vqdmulh_nv8hi (TARGET_NEON)
1440 #define HAVE_neon_vqdmulh_nv4si (TARGET_NEON)
1441 #define HAVE_neon_vmla_nv4hi (TARGET_NEON)
1442 #define HAVE_neon_vmla_nv2si (TARGET_NEON)
1443 #define HAVE_neon_vmla_nv2sf (TARGET_NEON)
1444 #define HAVE_neon_vmla_nv8hi (TARGET_NEON)
1445 #define HAVE_neon_vmla_nv4si (TARGET_NEON)
1446 #define HAVE_neon_vmla_nv4sf (TARGET_NEON)
1447 #define HAVE_neon_vmlal_nv4hi (TARGET_NEON)
1448 #define HAVE_neon_vmlal_nv2si (TARGET_NEON)
1449 #define HAVE_neon_vqdmlal_nv4hi (TARGET_NEON)
1450 #define HAVE_neon_vqdmlal_nv2si (TARGET_NEON)
1451 #define HAVE_neon_vmls_nv4hi (TARGET_NEON)
1452 #define HAVE_neon_vmls_nv2si (TARGET_NEON)
1453 #define HAVE_neon_vmls_nv2sf (TARGET_NEON)
1454 #define HAVE_neon_vmls_nv8hi (TARGET_NEON)
1455 #define HAVE_neon_vmls_nv4si (TARGET_NEON)
1456 #define HAVE_neon_vmls_nv4sf (TARGET_NEON)
1457 #define HAVE_neon_vmlsl_nv4hi (TARGET_NEON)
1458 #define HAVE_neon_vmlsl_nv2si (TARGET_NEON)
1459 #define HAVE_neon_vqdmlsl_nv4hi (TARGET_NEON)
1460 #define HAVE_neon_vqdmlsl_nv2si (TARGET_NEON)
1461 #define HAVE_neon_vbslv8qi (TARGET_NEON)
1462 #define HAVE_neon_vbslv16qi (TARGET_NEON)
1463 #define HAVE_neon_vbslv4hi (TARGET_NEON)
1464 #define HAVE_neon_vbslv8hi (TARGET_NEON)
1465 #define HAVE_neon_vbslv2si (TARGET_NEON)
1466 #define HAVE_neon_vbslv4si (TARGET_NEON)
1467 #define HAVE_neon_vbslv2sf (TARGET_NEON)
1468 #define HAVE_neon_vbslv4sf (TARGET_NEON)
1469 #define HAVE_neon_vbsldi (TARGET_NEON)
1470 #define HAVE_neon_vbslv2di (TARGET_NEON)
1471 #define HAVE_neon_vtrnv8qi (TARGET_NEON)
1472 #define HAVE_neon_vtrnv16qi (TARGET_NEON)
1473 #define HAVE_neon_vtrnv4hi (TARGET_NEON)
1474 #define HAVE_neon_vtrnv8hi (TARGET_NEON)
1475 #define HAVE_neon_vtrnv2si (TARGET_NEON)
1476 #define HAVE_neon_vtrnv4si (TARGET_NEON)
1477 #define HAVE_neon_vtrnv2sf (TARGET_NEON)
1478 #define HAVE_neon_vtrnv4sf (TARGET_NEON)
1479 #define HAVE_neon_vzipv8qi (TARGET_NEON)
1480 #define HAVE_neon_vzipv16qi (TARGET_NEON)
1481 #define HAVE_neon_vzipv4hi (TARGET_NEON)
1482 #define HAVE_neon_vzipv8hi (TARGET_NEON)
1483 #define HAVE_neon_vzipv2si (TARGET_NEON)
1484 #define HAVE_neon_vzipv4si (TARGET_NEON)
1485 #define HAVE_neon_vzipv2sf (TARGET_NEON)
1486 #define HAVE_neon_vzipv4sf (TARGET_NEON)
1487 #define HAVE_neon_vuzpv8qi (TARGET_NEON)
1488 #define HAVE_neon_vuzpv16qi (TARGET_NEON)
1489 #define HAVE_neon_vuzpv4hi (TARGET_NEON)
1490 #define HAVE_neon_vuzpv8hi (TARGET_NEON)
1491 #define HAVE_neon_vuzpv2si (TARGET_NEON)
1492 #define HAVE_neon_vuzpv4si (TARGET_NEON)
1493 #define HAVE_neon_vuzpv2sf (TARGET_NEON)
1494 #define HAVE_neon_vuzpv4sf (TARGET_NEON)
1495 #define HAVE_neon_vreinterpretv8qiv8qi (TARGET_NEON)
1496 #define HAVE_neon_vreinterpretv8qiv4hi (TARGET_NEON)
1497 #define HAVE_neon_vreinterpretv8qiv2si (TARGET_NEON)
1498 #define HAVE_neon_vreinterpretv8qiv2sf (TARGET_NEON)
1499 #define HAVE_neon_vreinterpretv8qidi (TARGET_NEON)
1500 #define HAVE_neon_vreinterpretv4hiv8qi (TARGET_NEON)
1501 #define HAVE_neon_vreinterpretv4hiv4hi (TARGET_NEON)
1502 #define HAVE_neon_vreinterpretv4hiv2si (TARGET_NEON)
1503 #define HAVE_neon_vreinterpretv4hiv2sf (TARGET_NEON)
1504 #define HAVE_neon_vreinterpretv4hidi (TARGET_NEON)
1505 #define HAVE_neon_vreinterpretv2siv8qi (TARGET_NEON)
1506 #define HAVE_neon_vreinterpretv2siv4hi (TARGET_NEON)
1507 #define HAVE_neon_vreinterpretv2siv2si (TARGET_NEON)
1508 #define HAVE_neon_vreinterpretv2siv2sf (TARGET_NEON)
1509 #define HAVE_neon_vreinterpretv2sidi (TARGET_NEON)
1510 #define HAVE_neon_vreinterpretv2sfv8qi (TARGET_NEON)
1511 #define HAVE_neon_vreinterpretv2sfv4hi (TARGET_NEON)
1512 #define HAVE_neon_vreinterpretv2sfv2si (TARGET_NEON)
1513 #define HAVE_neon_vreinterpretv2sfv2sf (TARGET_NEON)
1514 #define HAVE_neon_vreinterpretv2sfdi (TARGET_NEON)
1515 #define HAVE_neon_vreinterpretdiv8qi (TARGET_NEON)
1516 #define HAVE_neon_vreinterpretdiv4hi (TARGET_NEON)
1517 #define HAVE_neon_vreinterpretdiv2si (TARGET_NEON)
1518 #define HAVE_neon_vreinterpretdiv2sf (TARGET_NEON)
1519 #define HAVE_neon_vreinterpretdidi (TARGET_NEON)
1520 #define HAVE_neon_vreinterpretv16qiv16qi (TARGET_NEON)
1521 #define HAVE_neon_vreinterpretv16qiv8hi (TARGET_NEON)
1522 #define HAVE_neon_vreinterpretv16qiv4si (TARGET_NEON)
1523 #define HAVE_neon_vreinterpretv16qiv4sf (TARGET_NEON)
1524 #define HAVE_neon_vreinterpretv16qiv2di (TARGET_NEON)
1525 #define HAVE_neon_vreinterpretv8hiv16qi (TARGET_NEON)
1526 #define HAVE_neon_vreinterpretv8hiv8hi (TARGET_NEON)
1527 #define HAVE_neon_vreinterpretv8hiv4si (TARGET_NEON)
1528 #define HAVE_neon_vreinterpretv8hiv4sf (TARGET_NEON)
1529 #define HAVE_neon_vreinterpretv8hiv2di (TARGET_NEON)
1530 #define HAVE_neon_vreinterpretv4siv16qi (TARGET_NEON)
1531 #define HAVE_neon_vreinterpretv4siv8hi (TARGET_NEON)
1532 #define HAVE_neon_vreinterpretv4siv4si (TARGET_NEON)
1533 #define HAVE_neon_vreinterpretv4siv4sf (TARGET_NEON)
1534 #define HAVE_neon_vreinterpretv4siv2di (TARGET_NEON)
1535 #define HAVE_neon_vreinterpretv4sfv16qi (TARGET_NEON)
1536 #define HAVE_neon_vreinterpretv4sfv8hi (TARGET_NEON)
1537 #define HAVE_neon_vreinterpretv4sfv4si (TARGET_NEON)
1538 #define HAVE_neon_vreinterpretv4sfv4sf (TARGET_NEON)
1539 #define HAVE_neon_vreinterpretv4sfv2di (TARGET_NEON)
1540 #define HAVE_neon_vreinterpretv2div16qi (TARGET_NEON)
1541 #define HAVE_neon_vreinterpretv2div8hi (TARGET_NEON)
1542 #define HAVE_neon_vreinterpretv2div4si (TARGET_NEON)
1543 #define HAVE_neon_vreinterpretv2div4sf (TARGET_NEON)
1544 #define HAVE_neon_vreinterpretv2div2di (TARGET_NEON)
1545 #define HAVE_neon_vld3v16qi (TARGET_NEON)
1546 #define HAVE_neon_vld3v8hi (TARGET_NEON)
1547 #define HAVE_neon_vld3v4si (TARGET_NEON)
1548 #define HAVE_neon_vld3v4sf (TARGET_NEON)
1549 #define HAVE_neon_vst3v16qi (TARGET_NEON)
1550 #define HAVE_neon_vst3v8hi (TARGET_NEON)
1551 #define HAVE_neon_vst3v4si (TARGET_NEON)
1552 #define HAVE_neon_vst3v4sf (TARGET_NEON)
1553 #define HAVE_neon_vld4v16qi (TARGET_NEON)
1554 #define HAVE_neon_vld4v8hi (TARGET_NEON)
1555 #define HAVE_neon_vld4v4si (TARGET_NEON)
1556 #define HAVE_neon_vld4v4sf (TARGET_NEON)
1557 #define HAVE_neon_vst4v16qi (TARGET_NEON)
1558 #define HAVE_neon_vst4v8hi (TARGET_NEON)
1559 #define HAVE_neon_vst4v4si (TARGET_NEON)
1560 #define HAVE_neon_vst4v4sf (TARGET_NEON)
1561 #define HAVE_neon_vandv8qi (TARGET_NEON)
1562 #define HAVE_neon_vandv16qi (TARGET_NEON)
1563 #define HAVE_neon_vandv4hi (TARGET_NEON)
1564 #define HAVE_neon_vandv8hi (TARGET_NEON)
1565 #define HAVE_neon_vandv2si (TARGET_NEON)
1566 #define HAVE_neon_vandv4si (TARGET_NEON)
1567 #define HAVE_neon_vandv2sf (TARGET_NEON)
1568 #define HAVE_neon_vandv4sf (TARGET_NEON)
1569 #define HAVE_neon_vanddi (TARGET_NEON)
1570 #define HAVE_neon_vandv2di (TARGET_NEON)
1571 #define HAVE_neon_vorrv8qi (TARGET_NEON)
1572 #define HAVE_neon_vorrv16qi (TARGET_NEON)
1573 #define HAVE_neon_vorrv4hi (TARGET_NEON)
1574 #define HAVE_neon_vorrv8hi (TARGET_NEON)
1575 #define HAVE_neon_vorrv2si (TARGET_NEON)
1576 #define HAVE_neon_vorrv4si (TARGET_NEON)
1577 #define HAVE_neon_vorrv2sf (TARGET_NEON)
1578 #define HAVE_neon_vorrv4sf (TARGET_NEON)
1579 #define HAVE_neon_vorrdi (TARGET_NEON)
1580 #define HAVE_neon_vorrv2di (TARGET_NEON)
1581 #define HAVE_neon_veorv8qi (TARGET_NEON)
1582 #define HAVE_neon_veorv16qi (TARGET_NEON)
1583 #define HAVE_neon_veorv4hi (TARGET_NEON)
1584 #define HAVE_neon_veorv8hi (TARGET_NEON)
1585 #define HAVE_neon_veorv2si (TARGET_NEON)
1586 #define HAVE_neon_veorv4si (TARGET_NEON)
1587 #define HAVE_neon_veorv2sf (TARGET_NEON)
1588 #define HAVE_neon_veorv4sf (TARGET_NEON)
1589 #define HAVE_neon_veordi (TARGET_NEON)
1590 #define HAVE_neon_veorv2di (TARGET_NEON)
1591 #define HAVE_neon_vbicv8qi (TARGET_NEON)
1592 #define HAVE_neon_vbicv16qi (TARGET_NEON)
1593 #define HAVE_neon_vbicv4hi (TARGET_NEON)
1594 #define HAVE_neon_vbicv8hi (TARGET_NEON)
1595 #define HAVE_neon_vbicv2si (TARGET_NEON)
1596 #define HAVE_neon_vbicv4si (TARGET_NEON)
1597 #define HAVE_neon_vbicv2sf (TARGET_NEON)
1598 #define HAVE_neon_vbicv4sf (TARGET_NEON)
1599 #define HAVE_neon_vbicdi (TARGET_NEON)
1600 #define HAVE_neon_vbicv2di (TARGET_NEON)
1601 #define HAVE_neon_vornv8qi (TARGET_NEON)
1602 #define HAVE_neon_vornv16qi (TARGET_NEON)
1603 #define HAVE_neon_vornv4hi (TARGET_NEON)
1604 #define HAVE_neon_vornv8hi (TARGET_NEON)
1605 #define HAVE_neon_vornv2si (TARGET_NEON)
1606 #define HAVE_neon_vornv4si (TARGET_NEON)
1607 #define HAVE_neon_vornv2sf (TARGET_NEON)
1608 #define HAVE_neon_vornv4sf (TARGET_NEON)
1609 #define HAVE_neon_vorndi (TARGET_NEON)
1610 #define HAVE_neon_vornv2di (TARGET_NEON)
1611 extern rtx gen_mulhisi3 (rtx, rtx, rtx);
1612 extern rtx gen_anddi3 (rtx, rtx, rtx);
1613 extern rtx gen_insv_zero (rtx, rtx, rtx);
1614 extern rtx gen_insv_t2 (rtx, rtx, rtx, rtx);
1615 extern rtx gen_andsi_notsi_si (rtx, rtx, rtx);
1616 extern rtx gen_bicsi3 (rtx, rtx, rtx);
1617 extern rtx gen_andsi_not_shiftsi_si (rtx, rtx, rtx, rtx, rtx);
1618 extern rtx gen_iordi3 (rtx, rtx, rtx);
1619 extern rtx gen_xordi3 (rtx, rtx, rtx);
1620 extern rtx gen_arm_ashldi3_1bit (rtx, rtx);
1621 extern rtx gen_arm_ashrdi3_1bit (rtx, rtx);
1622 extern rtx gen_arm_lshrdi3_1bit (rtx, rtx);
1623 extern rtx gen_extv (rtx, rtx, rtx, rtx);
1624 extern rtx gen_extzv_t2 (rtx, rtx, rtx, rtx);
1625 extern rtx gen_one_cmpldi2 (rtx, rtx);
1626 extern rtx gen_thumb1_extendhisi2 (rtx, rtx);
1627 extern rtx gen_pic_load_addr_32bit (rtx, rtx);
1628 extern rtx gen_pic_load_addr_thumb1 (rtx, rtx);
1629 extern rtx gen_pic_add_dot_plus_four (rtx, rtx, rtx);
1630 extern rtx gen_pic_add_dot_plus_eight (rtx, rtx, rtx);
1631 extern rtx gen_tls_load_dot_plus_eight (rtx, rtx, rtx);
1632 static inline rtx gen_pic_offset_arm (rtx, rtx, rtx);
1633 static inline rtx
1634 gen_pic_offset_arm(rtx ARG_UNUSED (a), rtx ARG_UNUSED (b), rtx ARG_UNUSED (c))
1636 return 0;
1638 extern rtx gen_movmem12b (rtx, rtx, rtx, rtx);
1639 extern rtx gen_movmem8b (rtx, rtx, rtx, rtx);
1640 extern rtx gen_cbranchsi4_scratch (rtx, rtx, rtx, rtx, rtx);
1641 extern rtx gen_cstoresi_nltu_thumb1 (rtx, rtx, rtx);
1642 extern rtx gen_cstoresi_ltu_thumb1 (rtx, rtx, rtx);
1643 extern rtx gen_thumb1_addsi3_addgeu (rtx, rtx, rtx, rtx, rtx);
1644 extern rtx gen_return (void);
1645 extern rtx gen_blockage (void);
1646 extern rtx gen_arm_casesi_internal (rtx, rtx, rtx, rtx);
1647 extern rtx gen_thumb1_casesi_dispatch (rtx);
1648 extern rtx gen_nop (void);
1649 extern rtx gen_movcond (rtx, rtx, rtx, rtx, rtx, rtx);
1650 extern rtx gen_sibcall_epilogue (void);
1651 extern rtx gen_stack_tie (rtx, rtx);
1652 extern rtx gen_align_4 (void);
1653 extern rtx gen_align_8 (void);
1654 extern rtx gen_consttable_end (void);
1655 extern rtx gen_consttable_1 (rtx);
1656 extern rtx gen_consttable_2 (rtx);
1657 extern rtx gen_consttable_4 (rtx);
1658 extern rtx gen_consttable_8 (rtx);
1659 extern rtx gen_consttable_16 (rtx);
1660 extern rtx gen_clzsi2 (rtx, rtx);
1661 extern rtx gen_rbitsi2 (rtx, rtx);
1662 extern rtx gen_prefetch (rtx, rtx, rtx);
1663 extern rtx gen_prologue_use (rtx);
1664 extern rtx gen_arm_eh_return (rtx);
1665 extern rtx gen_thumb_eh_return (rtx);
1666 extern rtx gen_load_tp_hard (rtx);
1667 extern rtx gen_load_tp_soft (void);
1668 extern rtx gen_cirrus_adddi3 (rtx, rtx, rtx);
1669 extern rtx gen_cirrus_subdi3 (rtx, rtx, rtx);
1670 extern rtx gen_muldi3 (rtx, rtx, rtx);
1671 static inline rtx gen_cirrus_ashl_const (rtx, rtx, rtx);
1672 static inline rtx
1673 gen_cirrus_ashl_const(rtx ARG_UNUSED (a), rtx ARG_UNUSED (b), rtx ARG_UNUSED (c))
1675 return 0;
1677 static inline rtx gen_cirrus_ashiftrt_const (rtx, rtx, rtx);
1678 static inline rtx
1679 gen_cirrus_ashiftrt_const(rtx ARG_UNUSED (a), rtx ARG_UNUSED (b), rtx ARG_UNUSED (c))
1681 return 0;
1683 static inline rtx gen_cirrus_ashlsi3 (rtx, rtx, rtx);
1684 static inline rtx
1685 gen_cirrus_ashlsi3(rtx ARG_UNUSED (a), rtx ARG_UNUSED (b), rtx ARG_UNUSED (c))
1687 return 0;
1689 extern rtx gen_ashldi3_cirrus (rtx, rtx, rtx);
1690 extern rtx gen_cirrus_ashldi_const (rtx, rtx, rtx);
1691 extern rtx gen_cirrus_ashiftrtdi_const (rtx, rtx, rtx);
1692 extern rtx gen_cirrus_floatsisf2 (rtx, rtx);
1693 extern rtx gen_cirrus_floatsidf2 (rtx, rtx);
1694 extern rtx gen_floatdisf2 (rtx, rtx);
1695 extern rtx gen_floatdidf2 (rtx, rtx);
1696 extern rtx gen_cirrus_truncsfsi2 (rtx, rtx);
1697 extern rtx gen_cirrus_truncdfsi2 (rtx, rtx);
1698 extern rtx gen_iwmmxt_iordi3 (rtx, rtx, rtx);
1699 extern rtx gen_iwmmxt_xordi3 (rtx, rtx, rtx);
1700 extern rtx gen_iwmmxt_anddi3 (rtx, rtx, rtx);
1701 extern rtx gen_iwmmxt_nanddi3 (rtx, rtx, rtx);
1702 extern rtx gen_movv2si_internal (rtx, rtx);
1703 extern rtx gen_movv4hi_internal (rtx, rtx);
1704 extern rtx gen_movv8qi_internal (rtx, rtx);
1705 extern rtx gen_ssaddv8qi3 (rtx, rtx, rtx);
1706 extern rtx gen_ssaddv4hi3 (rtx, rtx, rtx);
1707 extern rtx gen_ssaddv2si3 (rtx, rtx, rtx);
1708 extern rtx gen_usaddv8qi3 (rtx, rtx, rtx);
1709 extern rtx gen_usaddv4hi3 (rtx, rtx, rtx);
1710 extern rtx gen_usaddv2si3 (rtx, rtx, rtx);
1711 extern rtx gen_sssubv8qi3 (rtx, rtx, rtx);
1712 extern rtx gen_sssubv4hi3 (rtx, rtx, rtx);
1713 extern rtx gen_sssubv2si3 (rtx, rtx, rtx);
1714 extern rtx gen_ussubv8qi3 (rtx, rtx, rtx);
1715 extern rtx gen_ussubv4hi3 (rtx, rtx, rtx);
1716 extern rtx gen_ussubv2si3 (rtx, rtx, rtx);
1717 extern rtx gen_smulv4hi3_highpart (rtx, rtx, rtx);
1718 extern rtx gen_umulv4hi3_highpart (rtx, rtx, rtx);
1719 extern rtx gen_iwmmxt_wmacs (rtx, rtx, rtx, rtx);
1720 extern rtx gen_iwmmxt_wmacsz (rtx, rtx, rtx);
1721 extern rtx gen_iwmmxt_wmacu (rtx, rtx, rtx, rtx);
1722 extern rtx gen_iwmmxt_wmacuz (rtx, rtx, rtx);
1723 extern rtx gen_iwmmxt_clrdi (rtx);
1724 extern rtx gen_iwmmxt_uavgrndv8qi3 (rtx, rtx, rtx);
1725 extern rtx gen_iwmmxt_uavgrndv4hi3 (rtx, rtx, rtx);
1726 extern rtx gen_iwmmxt_uavgv8qi3 (rtx, rtx, rtx);
1727 extern rtx gen_iwmmxt_uavgv4hi3 (rtx, rtx, rtx);
1728 extern rtx gen_iwmmxt_psadbw (rtx, rtx, rtx);
1729 extern rtx gen_iwmmxt_tinsrb (rtx, rtx, rtx, rtx);
1730 extern rtx gen_iwmmxt_tinsrh (rtx, rtx, rtx, rtx);
1731 extern rtx gen_iwmmxt_tinsrw (rtx, rtx, rtx, rtx);
1732 extern rtx gen_iwmmxt_textrmub (rtx, rtx, rtx);
1733 extern rtx gen_iwmmxt_textrmsb (rtx, rtx, rtx);
1734 extern rtx gen_iwmmxt_textrmuh (rtx, rtx, rtx);
1735 extern rtx gen_iwmmxt_textrmsh (rtx, rtx, rtx);
1736 extern rtx gen_iwmmxt_textrmw (rtx, rtx, rtx);
1737 extern rtx gen_iwmmxt_wshufh (rtx, rtx, rtx);
1738 extern rtx gen_eqv8qi3 (rtx, rtx, rtx);
1739 extern rtx gen_eqv4hi3 (rtx, rtx, rtx);
1740 extern rtx gen_eqv2si3 (rtx, rtx, rtx);
1741 extern rtx gen_gtuv8qi3 (rtx, rtx, rtx);
1742 extern rtx gen_gtuv4hi3 (rtx, rtx, rtx);
1743 extern rtx gen_gtuv2si3 (rtx, rtx, rtx);
1744 extern rtx gen_gtv8qi3 (rtx, rtx, rtx);
1745 extern rtx gen_gtv4hi3 (rtx, rtx, rtx);
1746 extern rtx gen_gtv2si3 (rtx, rtx, rtx);
1747 extern rtx gen_iwmmxt_wpackhss (rtx, rtx, rtx);
1748 extern rtx gen_iwmmxt_wpackwss (rtx, rtx, rtx);
1749 extern rtx gen_iwmmxt_wpackdss (rtx, rtx, rtx);
1750 extern rtx gen_iwmmxt_wpackhus (rtx, rtx, rtx);
1751 extern rtx gen_iwmmxt_wpackwus (rtx, rtx, rtx);
1752 extern rtx gen_iwmmxt_wpackdus (rtx, rtx, rtx);
1753 extern rtx gen_iwmmxt_wunpckihb (rtx, rtx, rtx);
1754 extern rtx gen_iwmmxt_wunpckihh (rtx, rtx, rtx);
1755 extern rtx gen_iwmmxt_wunpckihw (rtx, rtx, rtx);
1756 extern rtx gen_iwmmxt_wunpckilb (rtx, rtx, rtx);
1757 extern rtx gen_iwmmxt_wunpckilh (rtx, rtx, rtx);
1758 extern rtx gen_iwmmxt_wunpckilw (rtx, rtx, rtx);
1759 extern rtx gen_iwmmxt_wunpckehub (rtx, rtx);
1760 extern rtx gen_iwmmxt_wunpckehuh (rtx, rtx);
1761 extern rtx gen_iwmmxt_wunpckehuw (rtx, rtx);
1762 extern rtx gen_iwmmxt_wunpckehsb (rtx, rtx);
1763 extern rtx gen_iwmmxt_wunpckehsh (rtx, rtx);
1764 extern rtx gen_iwmmxt_wunpckehsw (rtx, rtx);
1765 extern rtx gen_iwmmxt_wunpckelub (rtx, rtx);
1766 extern rtx gen_iwmmxt_wunpckeluh (rtx, rtx);
1767 extern rtx gen_iwmmxt_wunpckeluw (rtx, rtx);
1768 extern rtx gen_iwmmxt_wunpckelsb (rtx, rtx);
1769 extern rtx gen_iwmmxt_wunpckelsh (rtx, rtx);
1770 extern rtx gen_iwmmxt_wunpckelsw (rtx, rtx);
1771 extern rtx gen_rorv4hi3 (rtx, rtx, rtx);
1772 extern rtx gen_rorv2si3 (rtx, rtx, rtx);
1773 extern rtx gen_rordi3 (rtx, rtx, rtx);
1774 extern rtx gen_ashrv4hi3_iwmmxt (rtx, rtx, rtx);
1775 extern rtx gen_ashrv2si3_iwmmxt (rtx, rtx, rtx);
1776 extern rtx gen_ashrdi3_iwmmxt (rtx, rtx, rtx);
1777 extern rtx gen_lshrv4hi3_iwmmxt (rtx, rtx, rtx);
1778 extern rtx gen_lshrv2si3_iwmmxt (rtx, rtx, rtx);
1779 extern rtx gen_lshrdi3_iwmmxt (rtx, rtx, rtx);
1780 extern rtx gen_ashlv4hi3_iwmmxt (rtx, rtx, rtx);
1781 extern rtx gen_ashlv2si3_iwmmxt (rtx, rtx, rtx);
1782 extern rtx gen_ashldi3_iwmmxt (rtx, rtx, rtx);
1783 extern rtx gen_rorv4hi3_di (rtx, rtx, rtx);
1784 extern rtx gen_rorv2si3_di (rtx, rtx, rtx);
1785 extern rtx gen_rordi3_di (rtx, rtx, rtx);
1786 extern rtx gen_ashrv4hi3_di (rtx, rtx, rtx);
1787 extern rtx gen_ashrv2si3_di (rtx, rtx, rtx);
1788 extern rtx gen_ashrdi3_di (rtx, rtx, rtx);
1789 extern rtx gen_lshrv4hi3_di (rtx, rtx, rtx);
1790 extern rtx gen_lshrv2si3_di (rtx, rtx, rtx);
1791 extern rtx gen_lshrdi3_di (rtx, rtx, rtx);
1792 extern rtx gen_ashlv4hi3_di (rtx, rtx, rtx);
1793 extern rtx gen_ashlv2si3_di (rtx, rtx, rtx);
1794 extern rtx gen_ashldi3_di (rtx, rtx, rtx);
1795 extern rtx gen_iwmmxt_wmadds (rtx, rtx, rtx);
1796 extern rtx gen_iwmmxt_wmaddu (rtx, rtx, rtx);
1797 extern rtx gen_iwmmxt_tmia (rtx, rtx, rtx, rtx);
1798 extern rtx gen_iwmmxt_tmiaph (rtx, rtx, rtx, rtx);
1799 extern rtx gen_iwmmxt_tmiabb (rtx, rtx, rtx, rtx);
1800 extern rtx gen_iwmmxt_tmiatb (rtx, rtx, rtx, rtx);
1801 extern rtx gen_iwmmxt_tmiabt (rtx, rtx, rtx, rtx);
1802 extern rtx gen_iwmmxt_tmiatt (rtx, rtx, rtx, rtx);
1803 extern rtx gen_iwmmxt_tbcstqi (rtx, rtx);
1804 extern rtx gen_iwmmxt_tbcsthi (rtx, rtx);
1805 extern rtx gen_iwmmxt_tbcstsi (rtx, rtx);
1806 extern rtx gen_iwmmxt_tmovmskb (rtx, rtx);
1807 extern rtx gen_iwmmxt_tmovmskh (rtx, rtx);
1808 extern rtx gen_iwmmxt_tmovmskw (rtx, rtx);
1809 extern rtx gen_iwmmxt_waccb (rtx, rtx);
1810 extern rtx gen_iwmmxt_wacch (rtx, rtx);
1811 extern rtx gen_iwmmxt_waccw (rtx, rtx);
1812 extern rtx gen_iwmmxt_walign (rtx, rtx, rtx, rtx);
1813 extern rtx gen_iwmmxt_tmrc (rtx, rtx);
1814 extern rtx gen_iwmmxt_tmcr (rtx, rtx);
1815 extern rtx gen_iwmmxt_wsadb (rtx, rtx, rtx);
1816 extern rtx gen_iwmmxt_wsadh (rtx, rtx, rtx);
1817 extern rtx gen_iwmmxt_wsadbz (rtx, rtx, rtx);
1818 extern rtx gen_iwmmxt_wsadhz (rtx, rtx, rtx);
1819 extern rtx gen_extendhfsf2 (rtx, rtx);
1820 extern rtx gen_truncsfhf2 (rtx, rtx);
1821 extern rtx gen_fixuns_truncsfsi2 (rtx, rtx);
1822 extern rtx gen_fixuns_truncdfsi2 (rtx, rtx);
1823 extern rtx gen_floatunssisf2 (rtx, rtx);
1824 extern rtx gen_floatunssidf2 (rtx, rtx);
1825 extern rtx gen_tls_load_dot_plus_four (rtx, rtx, rtx, rtx);
1826 extern rtx gen_thumb2_casesi_internal (rtx, rtx, rtx, rtx);
1827 extern rtx gen_thumb2_casesi_internal_pic (rtx, rtx, rtx, rtx);
1828 extern rtx gen_thumb2_eh_return (rtx);
1829 extern rtx gen_divsi3 (rtx, rtx, rtx);
1830 extern rtx gen_udivsi3 (rtx, rtx, rtx);
1831 extern rtx gen_orsi_notsi_si (rtx, rtx, rtx);
1832 extern rtx gen_vec_setv8qi_internal (rtx, rtx, rtx, rtx);
1833 extern rtx gen_vec_setv4hi_internal (rtx, rtx, rtx, rtx);
1834 extern rtx gen_vec_setv2si_internal (rtx, rtx, rtx, rtx);
1835 extern rtx gen_vec_setv2sf_internal (rtx, rtx, rtx, rtx);
1836 extern rtx gen_vec_setv16qi_internal (rtx, rtx, rtx, rtx);
1837 extern rtx gen_vec_setv8hi_internal (rtx, rtx, rtx, rtx);
1838 extern rtx gen_vec_setv4si_internal (rtx, rtx, rtx, rtx);
1839 extern rtx gen_vec_setv4sf_internal (rtx, rtx, rtx, rtx);
1840 extern rtx gen_vec_setv2di_internal (rtx, rtx, rtx, rtx);
1841 extern rtx gen_vec_extractv8qi (rtx, rtx, rtx);
1842 extern rtx gen_vec_extractv4hi (rtx, rtx, rtx);
1843 extern rtx gen_vec_extractv2si (rtx, rtx, rtx);
1844 extern rtx gen_vec_extractv2sf (rtx, rtx, rtx);
1845 extern rtx gen_vec_extractv16qi (rtx, rtx, rtx);
1846 extern rtx gen_vec_extractv8hi (rtx, rtx, rtx);
1847 extern rtx gen_vec_extractv4si (rtx, rtx, rtx);
1848 extern rtx gen_vec_extractv4sf (rtx, rtx, rtx);
1849 extern rtx gen_vec_extractv2di (rtx, rtx, rtx);
1850 extern rtx gen_iorv8qi3 (rtx, rtx, rtx);
1851 extern rtx gen_iorv16qi3 (rtx, rtx, rtx);
1852 extern rtx gen_iorv4hi3 (rtx, rtx, rtx);
1853 extern rtx gen_iorv8hi3 (rtx, rtx, rtx);
1854 extern rtx gen_iorv2si3 (rtx, rtx, rtx);
1855 extern rtx gen_iorv4si3 (rtx, rtx, rtx);
1856 extern rtx gen_iorv2sf3 (rtx, rtx, rtx);
1857 extern rtx gen_iorv4sf3 (rtx, rtx, rtx);
1858 extern rtx gen_iorv2di3 (rtx, rtx, rtx);
1859 extern rtx gen_iordi3_neon (rtx, rtx, rtx);
1860 extern rtx gen_andv8qi3 (rtx, rtx, rtx);
1861 extern rtx gen_andv16qi3 (rtx, rtx, rtx);
1862 extern rtx gen_andv4hi3 (rtx, rtx, rtx);
1863 extern rtx gen_andv8hi3 (rtx, rtx, rtx);
1864 extern rtx gen_andv2si3 (rtx, rtx, rtx);
1865 extern rtx gen_andv4si3 (rtx, rtx, rtx);
1866 extern rtx gen_andv2sf3 (rtx, rtx, rtx);
1867 extern rtx gen_andv4sf3 (rtx, rtx, rtx);
1868 extern rtx gen_andv2di3 (rtx, rtx, rtx);
1869 extern rtx gen_anddi3_neon (rtx, rtx, rtx);
1870 extern rtx gen_ornv8qi3_neon (rtx, rtx, rtx);
1871 extern rtx gen_ornv16qi3_neon (rtx, rtx, rtx);
1872 extern rtx gen_ornv4hi3_neon (rtx, rtx, rtx);
1873 extern rtx gen_ornv8hi3_neon (rtx, rtx, rtx);
1874 extern rtx gen_ornv2si3_neon (rtx, rtx, rtx);
1875 extern rtx gen_ornv4si3_neon (rtx, rtx, rtx);
1876 extern rtx gen_ornv2sf3_neon (rtx, rtx, rtx);
1877 extern rtx gen_ornv4sf3_neon (rtx, rtx, rtx);
1878 extern rtx gen_ornv2di3_neon (rtx, rtx, rtx);
1879 extern rtx gen_orndi3_neon (rtx, rtx, rtx);
1880 extern rtx gen_bicv8qi3_neon (rtx, rtx, rtx);
1881 extern rtx gen_bicv16qi3_neon (rtx, rtx, rtx);
1882 extern rtx gen_bicv4hi3_neon (rtx, rtx, rtx);
1883 extern rtx gen_bicv8hi3_neon (rtx, rtx, rtx);
1884 extern rtx gen_bicv2si3_neon (rtx, rtx, rtx);
1885 extern rtx gen_bicv4si3_neon (rtx, rtx, rtx);
1886 extern rtx gen_bicv2sf3_neon (rtx, rtx, rtx);
1887 extern rtx gen_bicv4sf3_neon (rtx, rtx, rtx);
1888 extern rtx gen_bicv2di3_neon (rtx, rtx, rtx);
1889 extern rtx gen_bicdi3_neon (rtx, rtx, rtx);
1890 extern rtx gen_xorv8qi3 (rtx, rtx, rtx);
1891 extern rtx gen_xorv16qi3 (rtx, rtx, rtx);
1892 extern rtx gen_xorv4hi3 (rtx, rtx, rtx);
1893 extern rtx gen_xorv8hi3 (rtx, rtx, rtx);
1894 extern rtx gen_xorv2si3 (rtx, rtx, rtx);
1895 extern rtx gen_xorv4si3 (rtx, rtx, rtx);
1896 extern rtx gen_xorv2sf3 (rtx, rtx, rtx);
1897 extern rtx gen_xorv4sf3 (rtx, rtx, rtx);
1898 extern rtx gen_xorv2di3 (rtx, rtx, rtx);
1899 extern rtx gen_xordi3_neon (rtx, rtx, rtx);
1900 extern rtx gen_one_cmplv8qi2 (rtx, rtx);
1901 extern rtx gen_one_cmplv16qi2 (rtx, rtx);
1902 extern rtx gen_one_cmplv4hi2 (rtx, rtx);
1903 extern rtx gen_one_cmplv8hi2 (rtx, rtx);
1904 extern rtx gen_one_cmplv2si2 (rtx, rtx);
1905 extern rtx gen_one_cmplv4si2 (rtx, rtx);
1906 extern rtx gen_one_cmplv2sf2 (rtx, rtx);
1907 extern rtx gen_one_cmplv4sf2 (rtx, rtx);
1908 extern rtx gen_one_cmplv2di2 (rtx, rtx);
1909 extern rtx gen_absv8qi2 (rtx, rtx);
1910 extern rtx gen_absv16qi2 (rtx, rtx);
1911 extern rtx gen_absv4hi2 (rtx, rtx);
1912 extern rtx gen_absv8hi2 (rtx, rtx);
1913 extern rtx gen_absv2si2 (rtx, rtx);
1914 extern rtx gen_absv4si2 (rtx, rtx);
1915 extern rtx gen_absv2sf2 (rtx, rtx);
1916 extern rtx gen_absv4sf2 (rtx, rtx);
1917 extern rtx gen_negv8qi2 (rtx, rtx);
1918 extern rtx gen_negv16qi2 (rtx, rtx);
1919 extern rtx gen_negv4hi2 (rtx, rtx);
1920 extern rtx gen_negv8hi2 (rtx, rtx);
1921 extern rtx gen_negv2si2 (rtx, rtx);
1922 extern rtx gen_negv4si2 (rtx, rtx);
1923 extern rtx gen_negv2sf2 (rtx, rtx);
1924 extern rtx gen_negv4sf2 (rtx, rtx);
1925 extern rtx gen_vashlv8qi3 (rtx, rtx, rtx);
1926 extern rtx gen_vashlv16qi3 (rtx, rtx, rtx);
1927 extern rtx gen_vashlv4hi3 (rtx, rtx, rtx);
1928 extern rtx gen_vashlv8hi3 (rtx, rtx, rtx);
1929 extern rtx gen_vashlv2si3 (rtx, rtx, rtx);
1930 extern rtx gen_vashlv4si3 (rtx, rtx, rtx);
1931 extern rtx gen_ashlv8qi3_signed (rtx, rtx, rtx);
1932 extern rtx gen_ashlv16qi3_signed (rtx, rtx, rtx);
1933 extern rtx gen_ashlv4hi3_signed (rtx, rtx, rtx);
1934 extern rtx gen_ashlv8hi3_signed (rtx, rtx, rtx);
1935 extern rtx gen_ashlv2si3_signed (rtx, rtx, rtx);
1936 extern rtx gen_ashlv4si3_signed (rtx, rtx, rtx);
1937 extern rtx gen_ashlv2di3_signed (rtx, rtx, rtx);
1938 extern rtx gen_ashlv8qi3_unsigned (rtx, rtx, rtx);
1939 extern rtx gen_ashlv16qi3_unsigned (rtx, rtx, rtx);
1940 extern rtx gen_ashlv4hi3_unsigned (rtx, rtx, rtx);
1941 extern rtx gen_ashlv8hi3_unsigned (rtx, rtx, rtx);
1942 extern rtx gen_ashlv2si3_unsigned (rtx, rtx, rtx);
1943 extern rtx gen_ashlv4si3_unsigned (rtx, rtx, rtx);
1944 extern rtx gen_ashlv2di3_unsigned (rtx, rtx, rtx);
1945 extern rtx gen_widen_ssumv8qi3 (rtx, rtx, rtx);
1946 extern rtx gen_widen_ssumv4hi3 (rtx, rtx, rtx);
1947 extern rtx gen_widen_ssumv2si3 (rtx, rtx, rtx);
1948 extern rtx gen_widen_usumv8qi3 (rtx, rtx, rtx);
1949 extern rtx gen_widen_usumv4hi3 (rtx, rtx, rtx);
1950 extern rtx gen_widen_usumv2si3 (rtx, rtx, rtx);
1951 extern rtx gen_quad_halves_plusv4si (rtx, rtx);
1952 extern rtx gen_quad_halves_sminv4si (rtx, rtx);
1953 extern rtx gen_quad_halves_smaxv4si (rtx, rtx);
1954 extern rtx gen_quad_halves_uminv4si (rtx, rtx);
1955 extern rtx gen_quad_halves_umaxv4si (rtx, rtx);
1956 extern rtx gen_quad_halves_plusv4sf (rtx, rtx);
1957 extern rtx gen_quad_halves_sminv4sf (rtx, rtx);
1958 extern rtx gen_quad_halves_smaxv4sf (rtx, rtx);
1959 extern rtx gen_quad_halves_plusv8hi (rtx, rtx);
1960 extern rtx gen_quad_halves_sminv8hi (rtx, rtx);
1961 extern rtx gen_quad_halves_smaxv8hi (rtx, rtx);
1962 extern rtx gen_quad_halves_uminv8hi (rtx, rtx);
1963 extern rtx gen_quad_halves_umaxv8hi (rtx, rtx);
1964 extern rtx gen_quad_halves_plusv16qi (rtx, rtx);
1965 extern rtx gen_quad_halves_sminv16qi (rtx, rtx);
1966 extern rtx gen_quad_halves_smaxv16qi (rtx, rtx);
1967 extern rtx gen_quad_halves_uminv16qi (rtx, rtx);
1968 extern rtx gen_quad_halves_umaxv16qi (rtx, rtx);
1969 extern rtx gen_move_lo_quad_v4si (rtx, rtx);
1970 extern rtx gen_move_lo_quad_v4sf (rtx, rtx);
1971 extern rtx gen_move_lo_quad_v8hi (rtx, rtx);
1972 extern rtx gen_move_lo_quad_v16qi (rtx, rtx);
1973 extern rtx gen_reduc_splus_v2di (rtx, rtx);
1974 extern rtx gen_neon_vpadd_internalv8qi (rtx, rtx, rtx);
1975 extern rtx gen_neon_vpadd_internalv4hi (rtx, rtx, rtx);
1976 extern rtx gen_neon_vpadd_internalv2si (rtx, rtx, rtx);
1977 extern rtx gen_neon_vpadd_internalv2sf (rtx, rtx, rtx);
1978 extern rtx gen_neon_vpsminv8qi (rtx, rtx, rtx);
1979 extern rtx gen_neon_vpsminv4hi (rtx, rtx, rtx);
1980 extern rtx gen_neon_vpsminv2si (rtx, rtx, rtx);
1981 extern rtx gen_neon_vpsminv2sf (rtx, rtx, rtx);
1982 extern rtx gen_neon_vpsmaxv8qi (rtx, rtx, rtx);
1983 extern rtx gen_neon_vpsmaxv4hi (rtx, rtx, rtx);
1984 extern rtx gen_neon_vpsmaxv2si (rtx, rtx, rtx);
1985 extern rtx gen_neon_vpsmaxv2sf (rtx, rtx, rtx);
1986 extern rtx gen_neon_vpuminv8qi (rtx, rtx, rtx);
1987 extern rtx gen_neon_vpuminv4hi (rtx, rtx, rtx);
1988 extern rtx gen_neon_vpuminv2si (rtx, rtx, rtx);
1989 extern rtx gen_neon_vpumaxv8qi (rtx, rtx, rtx);
1990 extern rtx gen_neon_vpumaxv4hi (rtx, rtx, rtx);
1991 extern rtx gen_neon_vpumaxv2si (rtx, rtx, rtx);
1992 extern rtx gen_neon_vaddv8qi (rtx, rtx, rtx, rtx);
1993 extern rtx gen_neon_vaddv16qi (rtx, rtx, rtx, rtx);
1994 extern rtx gen_neon_vaddv4hi (rtx, rtx, rtx, rtx);
1995 extern rtx gen_neon_vaddv8hi (rtx, rtx, rtx, rtx);
1996 extern rtx gen_neon_vaddv2si (rtx, rtx, rtx, rtx);
1997 extern rtx gen_neon_vaddv4si (rtx, rtx, rtx, rtx);
1998 extern rtx gen_neon_vaddv2sf (rtx, rtx, rtx, rtx);
1999 extern rtx gen_neon_vaddv4sf (rtx, rtx, rtx, rtx);
2000 extern rtx gen_neon_vadddi (rtx, rtx, rtx, rtx);
2001 extern rtx gen_neon_vaddv2di (rtx, rtx, rtx, rtx);
2002 extern rtx gen_neon_vaddlv8qi (rtx, rtx, rtx, rtx);
2003 extern rtx gen_neon_vaddlv4hi (rtx, rtx, rtx, rtx);
2004 extern rtx gen_neon_vaddlv2si (rtx, rtx, rtx, rtx);
2005 extern rtx gen_neon_vaddwv8qi (rtx, rtx, rtx, rtx);
2006 extern rtx gen_neon_vaddwv4hi (rtx, rtx, rtx, rtx);
2007 extern rtx gen_neon_vaddwv2si (rtx, rtx, rtx, rtx);
2008 extern rtx gen_neon_vhaddv8qi (rtx, rtx, rtx, rtx);
2009 extern rtx gen_neon_vhaddv16qi (rtx, rtx, rtx, rtx);
2010 extern rtx gen_neon_vhaddv4hi (rtx, rtx, rtx, rtx);
2011 extern rtx gen_neon_vhaddv8hi (rtx, rtx, rtx, rtx);
2012 extern rtx gen_neon_vhaddv2si (rtx, rtx, rtx, rtx);
2013 extern rtx gen_neon_vhaddv4si (rtx, rtx, rtx, rtx);
2014 extern rtx gen_neon_vqaddv8qi (rtx, rtx, rtx, rtx);
2015 extern rtx gen_neon_vqaddv16qi (rtx, rtx, rtx, rtx);
2016 extern rtx gen_neon_vqaddv4hi (rtx, rtx, rtx, rtx);
2017 extern rtx gen_neon_vqaddv8hi (rtx, rtx, rtx, rtx);
2018 extern rtx gen_neon_vqaddv2si (rtx, rtx, rtx, rtx);
2019 extern rtx gen_neon_vqaddv4si (rtx, rtx, rtx, rtx);
2020 extern rtx gen_neon_vqadddi (rtx, rtx, rtx, rtx);
2021 extern rtx gen_neon_vqaddv2di (rtx, rtx, rtx, rtx);
2022 extern rtx gen_neon_vaddhnv8hi (rtx, rtx, rtx, rtx);
2023 extern rtx gen_neon_vaddhnv4si (rtx, rtx, rtx, rtx);
2024 extern rtx gen_neon_vaddhnv2di (rtx, rtx, rtx, rtx);
2025 extern rtx gen_neon_vmulv8qi (rtx, rtx, rtx, rtx);
2026 extern rtx gen_neon_vmulv16qi (rtx, rtx, rtx, rtx);
2027 extern rtx gen_neon_vmulv4hi (rtx, rtx, rtx, rtx);
2028 extern rtx gen_neon_vmulv8hi (rtx, rtx, rtx, rtx);
2029 extern rtx gen_neon_vmulv2si (rtx, rtx, rtx, rtx);
2030 extern rtx gen_neon_vmulv4si (rtx, rtx, rtx, rtx);
2031 extern rtx gen_neon_vmulv2sf (rtx, rtx, rtx, rtx);
2032 extern rtx gen_neon_vmulv4sf (rtx, rtx, rtx, rtx);
2033 extern rtx gen_neon_vmlav8qi (rtx, rtx, rtx, rtx, rtx);
2034 extern rtx gen_neon_vmlav16qi (rtx, rtx, rtx, rtx, rtx);
2035 extern rtx gen_neon_vmlav4hi (rtx, rtx, rtx, rtx, rtx);
2036 extern rtx gen_neon_vmlav8hi (rtx, rtx, rtx, rtx, rtx);
2037 extern rtx gen_neon_vmlav2si (rtx, rtx, rtx, rtx, rtx);
2038 extern rtx gen_neon_vmlav4si (rtx, rtx, rtx, rtx, rtx);
2039 extern rtx gen_neon_vmlav2sf (rtx, rtx, rtx, rtx, rtx);
2040 extern rtx gen_neon_vmlav4sf (rtx, rtx, rtx, rtx, rtx);
2041 extern rtx gen_neon_vmlalv8qi (rtx, rtx, rtx, rtx, rtx);
2042 extern rtx gen_neon_vmlalv4hi (rtx, rtx, rtx, rtx, rtx);
2043 extern rtx gen_neon_vmlalv2si (rtx, rtx, rtx, rtx, rtx);
2044 extern rtx gen_neon_vmlsv8qi (rtx, rtx, rtx, rtx, rtx);
2045 extern rtx gen_neon_vmlsv16qi (rtx, rtx, rtx, rtx, rtx);
2046 extern rtx gen_neon_vmlsv4hi (rtx, rtx, rtx, rtx, rtx);
2047 extern rtx gen_neon_vmlsv8hi (rtx, rtx, rtx, rtx, rtx);
2048 extern rtx gen_neon_vmlsv2si (rtx, rtx, rtx, rtx, rtx);
2049 extern rtx gen_neon_vmlsv4si (rtx, rtx, rtx, rtx, rtx);
2050 extern rtx gen_neon_vmlsv2sf (rtx, rtx, rtx, rtx, rtx);
2051 extern rtx gen_neon_vmlsv4sf (rtx, rtx, rtx, rtx, rtx);
2052 extern rtx gen_neon_vmlslv8qi (rtx, rtx, rtx, rtx, rtx);
2053 extern rtx gen_neon_vmlslv4hi (rtx, rtx, rtx, rtx, rtx);
2054 extern rtx gen_neon_vmlslv2si (rtx, rtx, rtx, rtx, rtx);
2055 extern rtx gen_neon_vqdmulhv4hi (rtx, rtx, rtx, rtx);
2056 extern rtx gen_neon_vqdmulhv2si (rtx, rtx, rtx, rtx);
2057 extern rtx gen_neon_vqdmulhv8hi (rtx, rtx, rtx, rtx);
2058 extern rtx gen_neon_vqdmulhv4si (rtx, rtx, rtx, rtx);
2059 extern rtx gen_neon_vqdmlalv4hi (rtx, rtx, rtx, rtx, rtx);
2060 extern rtx gen_neon_vqdmlalv2si (rtx, rtx, rtx, rtx, rtx);
2061 extern rtx gen_neon_vqdmlslv4hi (rtx, rtx, rtx, rtx, rtx);
2062 extern rtx gen_neon_vqdmlslv2si (rtx, rtx, rtx, rtx, rtx);
2063 extern rtx gen_neon_vmullv8qi (rtx, rtx, rtx, rtx);
2064 extern rtx gen_neon_vmullv4hi (rtx, rtx, rtx, rtx);
2065 extern rtx gen_neon_vmullv2si (rtx, rtx, rtx, rtx);
2066 extern rtx gen_neon_vqdmullv4hi (rtx, rtx, rtx, rtx);
2067 extern rtx gen_neon_vqdmullv2si (rtx, rtx, rtx, rtx);
2068 extern rtx gen_neon_vsubv8qi (rtx, rtx, rtx, rtx);
2069 extern rtx gen_neon_vsubv16qi (rtx, rtx, rtx, rtx);
2070 extern rtx gen_neon_vsubv4hi (rtx, rtx, rtx, rtx);
2071 extern rtx gen_neon_vsubv8hi (rtx, rtx, rtx, rtx);
2072 extern rtx gen_neon_vsubv2si (rtx, rtx, rtx, rtx);
2073 extern rtx gen_neon_vsubv4si (rtx, rtx, rtx, rtx);
2074 extern rtx gen_neon_vsubv2sf (rtx, rtx, rtx, rtx);
2075 extern rtx gen_neon_vsubv4sf (rtx, rtx, rtx, rtx);
2076 extern rtx gen_neon_vsubdi (rtx, rtx, rtx, rtx);
2077 extern rtx gen_neon_vsubv2di (rtx, rtx, rtx, rtx);
2078 extern rtx gen_neon_vsublv8qi (rtx, rtx, rtx, rtx);
2079 extern rtx gen_neon_vsublv4hi (rtx, rtx, rtx, rtx);
2080 extern rtx gen_neon_vsublv2si (rtx, rtx, rtx, rtx);
2081 extern rtx gen_neon_vsubwv8qi (rtx, rtx, rtx, rtx);
2082 extern rtx gen_neon_vsubwv4hi (rtx, rtx, rtx, rtx);
2083 extern rtx gen_neon_vsubwv2si (rtx, rtx, rtx, rtx);
2084 extern rtx gen_neon_vqsubv8qi (rtx, rtx, rtx, rtx);
2085 extern rtx gen_neon_vqsubv16qi (rtx, rtx, rtx, rtx);
2086 extern rtx gen_neon_vqsubv4hi (rtx, rtx, rtx, rtx);
2087 extern rtx gen_neon_vqsubv8hi (rtx, rtx, rtx, rtx);
2088 extern rtx gen_neon_vqsubv2si (rtx, rtx, rtx, rtx);
2089 extern rtx gen_neon_vqsubv4si (rtx, rtx, rtx, rtx);
2090 extern rtx gen_neon_vqsubdi (rtx, rtx, rtx, rtx);
2091 extern rtx gen_neon_vqsubv2di (rtx, rtx, rtx, rtx);
2092 extern rtx gen_neon_vhsubv8qi (rtx, rtx, rtx, rtx);
2093 extern rtx gen_neon_vhsubv16qi (rtx, rtx, rtx, rtx);
2094 extern rtx gen_neon_vhsubv4hi (rtx, rtx, rtx, rtx);
2095 extern rtx gen_neon_vhsubv8hi (rtx, rtx, rtx, rtx);
2096 extern rtx gen_neon_vhsubv2si (rtx, rtx, rtx, rtx);
2097 extern rtx gen_neon_vhsubv4si (rtx, rtx, rtx, rtx);
2098 extern rtx gen_neon_vsubhnv8hi (rtx, rtx, rtx, rtx);
2099 extern rtx gen_neon_vsubhnv4si (rtx, rtx, rtx, rtx);
2100 extern rtx gen_neon_vsubhnv2di (rtx, rtx, rtx, rtx);
2101 extern rtx gen_neon_vceqv8qi (rtx, rtx, rtx, rtx);
2102 extern rtx gen_neon_vceqv16qi (rtx, rtx, rtx, rtx);
2103 extern rtx gen_neon_vceqv4hi (rtx, rtx, rtx, rtx);
2104 extern rtx gen_neon_vceqv8hi (rtx, rtx, rtx, rtx);
2105 extern rtx gen_neon_vceqv2si (rtx, rtx, rtx, rtx);
2106 extern rtx gen_neon_vceqv4si (rtx, rtx, rtx, rtx);
2107 extern rtx gen_neon_vceqv2sf (rtx, rtx, rtx, rtx);
2108 extern rtx gen_neon_vceqv4sf (rtx, rtx, rtx, rtx);
2109 extern rtx gen_neon_vcgev8qi (rtx, rtx, rtx, rtx);
2110 extern rtx gen_neon_vcgev16qi (rtx, rtx, rtx, rtx);
2111 extern rtx gen_neon_vcgev4hi (rtx, rtx, rtx, rtx);
2112 extern rtx gen_neon_vcgev8hi (rtx, rtx, rtx, rtx);
2113 extern rtx gen_neon_vcgev2si (rtx, rtx, rtx, rtx);
2114 extern rtx gen_neon_vcgev4si (rtx, rtx, rtx, rtx);
2115 extern rtx gen_neon_vcgev2sf (rtx, rtx, rtx, rtx);
2116 extern rtx gen_neon_vcgev4sf (rtx, rtx, rtx, rtx);
2117 extern rtx gen_neon_vcgtv8qi (rtx, rtx, rtx, rtx);
2118 extern rtx gen_neon_vcgtv16qi (rtx, rtx, rtx, rtx);
2119 extern rtx gen_neon_vcgtv4hi (rtx, rtx, rtx, rtx);
2120 extern rtx gen_neon_vcgtv8hi (rtx, rtx, rtx, rtx);
2121 extern rtx gen_neon_vcgtv2si (rtx, rtx, rtx, rtx);
2122 extern rtx gen_neon_vcgtv4si (rtx, rtx, rtx, rtx);
2123 extern rtx gen_neon_vcgtv2sf (rtx, rtx, rtx, rtx);
2124 extern rtx gen_neon_vcgtv4sf (rtx, rtx, rtx, rtx);
2125 extern rtx gen_neon_vcagev2sf (rtx, rtx, rtx, rtx);
2126 extern rtx gen_neon_vcagev4sf (rtx, rtx, rtx, rtx);
2127 extern rtx gen_neon_vcagtv2sf (rtx, rtx, rtx, rtx);
2128 extern rtx gen_neon_vcagtv4sf (rtx, rtx, rtx, rtx);
2129 extern rtx gen_neon_vtstv8qi (rtx, rtx, rtx, rtx);
2130 extern rtx gen_neon_vtstv16qi (rtx, rtx, rtx, rtx);
2131 extern rtx gen_neon_vtstv4hi (rtx, rtx, rtx, rtx);
2132 extern rtx gen_neon_vtstv8hi (rtx, rtx, rtx, rtx);
2133 extern rtx gen_neon_vtstv2si (rtx, rtx, rtx, rtx);
2134 extern rtx gen_neon_vtstv4si (rtx, rtx, rtx, rtx);
2135 extern rtx gen_neon_vabdv8qi (rtx, rtx, rtx, rtx);
2136 extern rtx gen_neon_vabdv16qi (rtx, rtx, rtx, rtx);
2137 extern rtx gen_neon_vabdv4hi (rtx, rtx, rtx, rtx);
2138 extern rtx gen_neon_vabdv8hi (rtx, rtx, rtx, rtx);
2139 extern rtx gen_neon_vabdv2si (rtx, rtx, rtx, rtx);
2140 extern rtx gen_neon_vabdv4si (rtx, rtx, rtx, rtx);
2141 extern rtx gen_neon_vabdv2sf (rtx, rtx, rtx, rtx);
2142 extern rtx gen_neon_vabdv4sf (rtx, rtx, rtx, rtx);
2143 extern rtx gen_neon_vabdlv8qi (rtx, rtx, rtx, rtx);
2144 extern rtx gen_neon_vabdlv4hi (rtx, rtx, rtx, rtx);
2145 extern rtx gen_neon_vabdlv2si (rtx, rtx, rtx, rtx);
2146 extern rtx gen_neon_vabav8qi (rtx, rtx, rtx, rtx, rtx);
2147 extern rtx gen_neon_vabav16qi (rtx, rtx, rtx, rtx, rtx);
2148 extern rtx gen_neon_vabav4hi (rtx, rtx, rtx, rtx, rtx);
2149 extern rtx gen_neon_vabav8hi (rtx, rtx, rtx, rtx, rtx);
2150 extern rtx gen_neon_vabav2si (rtx, rtx, rtx, rtx, rtx);
2151 extern rtx gen_neon_vabav4si (rtx, rtx, rtx, rtx, rtx);
2152 extern rtx gen_neon_vabalv8qi (rtx, rtx, rtx, rtx, rtx);
2153 extern rtx gen_neon_vabalv4hi (rtx, rtx, rtx, rtx, rtx);
2154 extern rtx gen_neon_vabalv2si (rtx, rtx, rtx, rtx, rtx);
2155 extern rtx gen_neon_vmaxv8qi (rtx, rtx, rtx, rtx);
2156 extern rtx gen_neon_vmaxv16qi (rtx, rtx, rtx, rtx);
2157 extern rtx gen_neon_vmaxv4hi (rtx, rtx, rtx, rtx);
2158 extern rtx gen_neon_vmaxv8hi (rtx, rtx, rtx, rtx);
2159 extern rtx gen_neon_vmaxv2si (rtx, rtx, rtx, rtx);
2160 extern rtx gen_neon_vmaxv4si (rtx, rtx, rtx, rtx);
2161 extern rtx gen_neon_vmaxv2sf (rtx, rtx, rtx, rtx);
2162 extern rtx gen_neon_vmaxv4sf (rtx, rtx, rtx, rtx);
2163 extern rtx gen_neon_vminv8qi (rtx, rtx, rtx, rtx);
2164 extern rtx gen_neon_vminv16qi (rtx, rtx, rtx, rtx);
2165 extern rtx gen_neon_vminv4hi (rtx, rtx, rtx, rtx);
2166 extern rtx gen_neon_vminv8hi (rtx, rtx, rtx, rtx);
2167 extern rtx gen_neon_vminv2si (rtx, rtx, rtx, rtx);
2168 extern rtx gen_neon_vminv4si (rtx, rtx, rtx, rtx);
2169 extern rtx gen_neon_vminv2sf (rtx, rtx, rtx, rtx);
2170 extern rtx gen_neon_vminv4sf (rtx, rtx, rtx, rtx);
2171 extern rtx gen_neon_vpaddlv8qi (rtx, rtx, rtx);
2172 extern rtx gen_neon_vpaddlv16qi (rtx, rtx, rtx);
2173 extern rtx gen_neon_vpaddlv4hi (rtx, rtx, rtx);
2174 extern rtx gen_neon_vpaddlv8hi (rtx, rtx, rtx);
2175 extern rtx gen_neon_vpaddlv2si (rtx, rtx, rtx);
2176 extern rtx gen_neon_vpaddlv4si (rtx, rtx, rtx);
2177 extern rtx gen_neon_vpadalv8qi (rtx, rtx, rtx, rtx);
2178 extern rtx gen_neon_vpadalv16qi (rtx, rtx, rtx, rtx);
2179 extern rtx gen_neon_vpadalv4hi (rtx, rtx, rtx, rtx);
2180 extern rtx gen_neon_vpadalv8hi (rtx, rtx, rtx, rtx);
2181 extern rtx gen_neon_vpadalv2si (rtx, rtx, rtx, rtx);
2182 extern rtx gen_neon_vpadalv4si (rtx, rtx, rtx, rtx);
2183 extern rtx gen_neon_vpmaxv8qi (rtx, rtx, rtx, rtx);
2184 extern rtx gen_neon_vpmaxv4hi (rtx, rtx, rtx, rtx);
2185 extern rtx gen_neon_vpmaxv2si (rtx, rtx, rtx, rtx);
2186 extern rtx gen_neon_vpmaxv2sf (rtx, rtx, rtx, rtx);
2187 extern rtx gen_neon_vpminv8qi (rtx, rtx, rtx, rtx);
2188 extern rtx gen_neon_vpminv4hi (rtx, rtx, rtx, rtx);
2189 extern rtx gen_neon_vpminv2si (rtx, rtx, rtx, rtx);
2190 extern rtx gen_neon_vpminv2sf (rtx, rtx, rtx, rtx);
2191 extern rtx gen_neon_vrecpsv2sf (rtx, rtx, rtx, rtx);
2192 extern rtx gen_neon_vrecpsv4sf (rtx, rtx, rtx, rtx);
2193 extern rtx gen_neon_vrsqrtsv2sf (rtx, rtx, rtx, rtx);
2194 extern rtx gen_neon_vrsqrtsv4sf (rtx, rtx, rtx, rtx);
2195 extern rtx gen_neon_vabsv8qi (rtx, rtx, rtx);
2196 extern rtx gen_neon_vabsv16qi (rtx, rtx, rtx);
2197 extern rtx gen_neon_vabsv4hi (rtx, rtx, rtx);
2198 extern rtx gen_neon_vabsv8hi (rtx, rtx, rtx);
2199 extern rtx gen_neon_vabsv2si (rtx, rtx, rtx);
2200 extern rtx gen_neon_vabsv4si (rtx, rtx, rtx);
2201 extern rtx gen_neon_vabsv2sf (rtx, rtx, rtx);
2202 extern rtx gen_neon_vabsv4sf (rtx, rtx, rtx);
2203 extern rtx gen_neon_vqabsv8qi (rtx, rtx, rtx);
2204 extern rtx gen_neon_vqabsv16qi (rtx, rtx, rtx);
2205 extern rtx gen_neon_vqabsv4hi (rtx, rtx, rtx);
2206 extern rtx gen_neon_vqabsv8hi (rtx, rtx, rtx);
2207 extern rtx gen_neon_vqabsv2si (rtx, rtx, rtx);
2208 extern rtx gen_neon_vqabsv4si (rtx, rtx, rtx);
2209 extern rtx gen_neon_vqnegv8qi (rtx, rtx, rtx);
2210 extern rtx gen_neon_vqnegv16qi (rtx, rtx, rtx);
2211 extern rtx gen_neon_vqnegv4hi (rtx, rtx, rtx);
2212 extern rtx gen_neon_vqnegv8hi (rtx, rtx, rtx);
2213 extern rtx gen_neon_vqnegv2si (rtx, rtx, rtx);
2214 extern rtx gen_neon_vqnegv4si (rtx, rtx, rtx);
2215 extern rtx gen_neon_vclsv8qi (rtx, rtx, rtx);
2216 extern rtx gen_neon_vclsv16qi (rtx, rtx, rtx);
2217 extern rtx gen_neon_vclsv4hi (rtx, rtx, rtx);
2218 extern rtx gen_neon_vclsv8hi (rtx, rtx, rtx);
2219 extern rtx gen_neon_vclsv2si (rtx, rtx, rtx);
2220 extern rtx gen_neon_vclsv4si (rtx, rtx, rtx);
2221 extern rtx gen_neon_vclzv8qi (rtx, rtx, rtx);
2222 extern rtx gen_neon_vclzv16qi (rtx, rtx, rtx);
2223 extern rtx gen_neon_vclzv4hi (rtx, rtx, rtx);
2224 extern rtx gen_neon_vclzv8hi (rtx, rtx, rtx);
2225 extern rtx gen_neon_vclzv2si (rtx, rtx, rtx);
2226 extern rtx gen_neon_vclzv4si (rtx, rtx, rtx);
2227 extern rtx gen_neon_vcntv8qi (rtx, rtx, rtx);
2228 extern rtx gen_neon_vcntv16qi (rtx, rtx, rtx);
2229 extern rtx gen_neon_vrecpev2si (rtx, rtx, rtx);
2230 extern rtx gen_neon_vrecpev2sf (rtx, rtx, rtx);
2231 extern rtx gen_neon_vrecpev4si (rtx, rtx, rtx);
2232 extern rtx gen_neon_vrecpev4sf (rtx, rtx, rtx);
2233 extern rtx gen_neon_vrsqrtev2si (rtx, rtx, rtx);
2234 extern rtx gen_neon_vrsqrtev2sf (rtx, rtx, rtx);
2235 extern rtx gen_neon_vrsqrtev4si (rtx, rtx, rtx);
2236 extern rtx gen_neon_vrsqrtev4sf (rtx, rtx, rtx);
2237 extern rtx gen_neon_vget_lanev8qi_sext_internal (rtx, rtx, rtx);
2238 extern rtx gen_neon_vget_lanev4hi_sext_internal (rtx, rtx, rtx);
2239 extern rtx gen_neon_vget_lanev2si_sext_internal (rtx, rtx, rtx);
2240 extern rtx gen_neon_vget_lanev2sf_sext_internal (rtx, rtx, rtx);
2241 extern rtx gen_neon_vget_lanev8qi_zext_internal (rtx, rtx, rtx);
2242 extern rtx gen_neon_vget_lanev4hi_zext_internal (rtx, rtx, rtx);
2243 extern rtx gen_neon_vget_lanev2si_zext_internal (rtx, rtx, rtx);
2244 extern rtx gen_neon_vget_lanev2sf_zext_internal (rtx, rtx, rtx);
2245 extern rtx gen_neon_vget_lanev16qi_sext_internal (rtx, rtx, rtx);
2246 extern rtx gen_neon_vget_lanev8hi_sext_internal (rtx, rtx, rtx);
2247 extern rtx gen_neon_vget_lanev4si_sext_internal (rtx, rtx, rtx);
2248 extern rtx gen_neon_vget_lanev4sf_sext_internal (rtx, rtx, rtx);
2249 extern rtx gen_neon_vget_lanev16qi_zext_internal (rtx, rtx, rtx);
2250 extern rtx gen_neon_vget_lanev8hi_zext_internal (rtx, rtx, rtx);
2251 extern rtx gen_neon_vget_lanev4si_zext_internal (rtx, rtx, rtx);
2252 extern rtx gen_neon_vget_lanev4sf_zext_internal (rtx, rtx, rtx);
2253 extern rtx gen_neon_vget_lanedi (rtx, rtx, rtx, rtx);
2254 extern rtx gen_neon_vget_lanev2di (rtx, rtx, rtx, rtx);
2255 extern rtx gen_neon_vset_lanev8qi (rtx, rtx, rtx, rtx);
2256 extern rtx gen_neon_vset_lanev4hi (rtx, rtx, rtx, rtx);
2257 extern rtx gen_neon_vset_lanev2si (rtx, rtx, rtx, rtx);
2258 extern rtx gen_neon_vset_lanev2sf (rtx, rtx, rtx, rtx);
2259 extern rtx gen_neon_vset_lanedi (rtx, rtx, rtx, rtx);
2260 extern rtx gen_neon_vset_lanev16qi (rtx, rtx, rtx, rtx);
2261 extern rtx gen_neon_vset_lanev8hi (rtx, rtx, rtx, rtx);
2262 extern rtx gen_neon_vset_lanev4si (rtx, rtx, rtx, rtx);
2263 extern rtx gen_neon_vset_lanev4sf (rtx, rtx, rtx, rtx);
2264 extern rtx gen_neon_vset_lanev2di (rtx, rtx, rtx, rtx);
2265 extern rtx gen_neon_vdup_nv8qi (rtx, rtx);
2266 extern rtx gen_neon_vdup_nv4hi (rtx, rtx);
2267 extern rtx gen_neon_vdup_nv16qi (rtx, rtx);
2268 extern rtx gen_neon_vdup_nv8hi (rtx, rtx);
2269 extern rtx gen_neon_vdup_nv2si (rtx, rtx);
2270 extern rtx gen_neon_vdup_nv2sf (rtx, rtx);
2271 extern rtx gen_neon_vdup_nv4si (rtx, rtx);
2272 extern rtx gen_neon_vdup_nv4sf (rtx, rtx);
2273 extern rtx gen_neon_vdup_ndi (rtx, rtx);
2274 extern rtx gen_neon_vdup_nv2di (rtx, rtx);
2275 extern rtx gen_neon_vdup_lanev8qi (rtx, rtx, rtx);
2276 extern rtx gen_neon_vdup_lanev4hi (rtx, rtx, rtx);
2277 extern rtx gen_neon_vdup_lanev2si (rtx, rtx, rtx);
2278 extern rtx gen_neon_vdup_lanev2sf (rtx, rtx, rtx);
2279 extern rtx gen_neon_vdup_lanev16qi (rtx, rtx, rtx);
2280 extern rtx gen_neon_vdup_lanev8hi (rtx, rtx, rtx);
2281 extern rtx gen_neon_vdup_lanev4si (rtx, rtx, rtx);
2282 extern rtx gen_neon_vdup_lanev4sf (rtx, rtx, rtx);
2283 extern rtx gen_neon_vdup_lanev2di (rtx, rtx, rtx);
2284 extern rtx gen_neon_vcombinev8qi (rtx, rtx, rtx);
2285 extern rtx gen_neon_vcombinev4hi (rtx, rtx, rtx);
2286 extern rtx gen_neon_vcombinev2si (rtx, rtx, rtx);
2287 extern rtx gen_neon_vcombinev2sf (rtx, rtx, rtx);
2288 extern rtx gen_neon_vcombinedi (rtx, rtx, rtx);
2289 extern rtx gen_neon_vget_highv16qi (rtx, rtx);
2290 extern rtx gen_neon_vget_highv8hi (rtx, rtx);
2291 extern rtx gen_neon_vget_highv4si (rtx, rtx);
2292 extern rtx gen_neon_vget_highv4sf (rtx, rtx);
2293 extern rtx gen_neon_vget_highv2di (rtx, rtx);
2294 extern rtx gen_neon_vget_lowv16qi (rtx, rtx);
2295 extern rtx gen_neon_vget_lowv8hi (rtx, rtx);
2296 extern rtx gen_neon_vget_lowv4si (rtx, rtx);
2297 extern rtx gen_neon_vget_lowv4sf (rtx, rtx);
2298 extern rtx gen_neon_vget_lowv2di (rtx, rtx);
2299 extern rtx gen_neon_vcvtv2sf (rtx, rtx, rtx);
2300 extern rtx gen_neon_vcvtv4sf (rtx, rtx, rtx);
2301 extern rtx gen_neon_vcvtv2si (rtx, rtx, rtx);
2302 extern rtx gen_neon_vcvtv4si (rtx, rtx, rtx);
2303 extern rtx gen_neon_vcvt_nv2sf (rtx, rtx, rtx, rtx);
2304 extern rtx gen_neon_vcvt_nv4sf (rtx, rtx, rtx, rtx);
2305 extern rtx gen_neon_vcvt_nv2si (rtx, rtx, rtx, rtx);
2306 extern rtx gen_neon_vcvt_nv4si (rtx, rtx, rtx, rtx);
2307 extern rtx gen_neon_vmovnv8hi (rtx, rtx, rtx);
2308 extern rtx gen_neon_vmovnv4si (rtx, rtx, rtx);
2309 extern rtx gen_neon_vmovnv2di (rtx, rtx, rtx);
2310 extern rtx gen_neon_vqmovnv8hi (rtx, rtx, rtx);
2311 extern rtx gen_neon_vqmovnv4si (rtx, rtx, rtx);
2312 extern rtx gen_neon_vqmovnv2di (rtx, rtx, rtx);
2313 extern rtx gen_neon_vqmovunv8hi (rtx, rtx, rtx);
2314 extern rtx gen_neon_vqmovunv4si (rtx, rtx, rtx);
2315 extern rtx gen_neon_vqmovunv2di (rtx, rtx, rtx);
2316 extern rtx gen_neon_vmovlv8qi (rtx, rtx, rtx);
2317 extern rtx gen_neon_vmovlv4hi (rtx, rtx, rtx);
2318 extern rtx gen_neon_vmovlv2si (rtx, rtx, rtx);
2319 extern rtx gen_neon_vmul_lanev4hi (rtx, rtx, rtx, rtx, rtx);
2320 extern rtx gen_neon_vmul_lanev2si (rtx, rtx, rtx, rtx, rtx);
2321 extern rtx gen_neon_vmul_lanev2sf (rtx, rtx, rtx, rtx, rtx);
2322 extern rtx gen_neon_vmul_lanev8hi (rtx, rtx, rtx, rtx, rtx);
2323 extern rtx gen_neon_vmul_lanev4si (rtx, rtx, rtx, rtx, rtx);
2324 extern rtx gen_neon_vmul_lanev4sf (rtx, rtx, rtx, rtx, rtx);
2325 extern rtx gen_neon_vmull_lanev4hi (rtx, rtx, rtx, rtx, rtx);
2326 extern rtx gen_neon_vmull_lanev2si (rtx, rtx, rtx, rtx, rtx);
2327 extern rtx gen_neon_vqdmull_lanev4hi (rtx, rtx, rtx, rtx, rtx);
2328 extern rtx gen_neon_vqdmull_lanev2si (rtx, rtx, rtx, rtx, rtx);
2329 extern rtx gen_neon_vqdmulh_lanev8hi (rtx, rtx, rtx, rtx, rtx);
2330 extern rtx gen_neon_vqdmulh_lanev4si (rtx, rtx, rtx, rtx, rtx);
2331 extern rtx gen_neon_vqdmulh_lanev4hi (rtx, rtx, rtx, rtx, rtx);
2332 extern rtx gen_neon_vqdmulh_lanev2si (rtx, rtx, rtx, rtx, rtx);
2333 extern rtx gen_neon_vmla_lanev4hi (rtx, rtx, rtx, rtx, rtx, rtx);
2334 extern rtx gen_neon_vmla_lanev2si (rtx, rtx, rtx, rtx, rtx, rtx);
2335 extern rtx gen_neon_vmla_lanev2sf (rtx, rtx, rtx, rtx, rtx, rtx);
2336 extern rtx gen_neon_vmla_lanev8hi (rtx, rtx, rtx, rtx, rtx, rtx);
2337 extern rtx gen_neon_vmla_lanev4si (rtx, rtx, rtx, rtx, rtx, rtx);
2338 extern rtx gen_neon_vmla_lanev4sf (rtx, rtx, rtx, rtx, rtx, rtx);
2339 extern rtx gen_neon_vmlal_lanev4hi (rtx, rtx, rtx, rtx, rtx, rtx);
2340 extern rtx gen_neon_vmlal_lanev2si (rtx, rtx, rtx, rtx, rtx, rtx);
2341 extern rtx gen_neon_vqdmlal_lanev4hi (rtx, rtx, rtx, rtx, rtx, rtx);
2342 extern rtx gen_neon_vqdmlal_lanev2si (rtx, rtx, rtx, rtx, rtx, rtx);
2343 extern rtx gen_neon_vmls_lanev4hi (rtx, rtx, rtx, rtx, rtx, rtx);
2344 extern rtx gen_neon_vmls_lanev2si (rtx, rtx, rtx, rtx, rtx, rtx);
2345 extern rtx gen_neon_vmls_lanev2sf (rtx, rtx, rtx, rtx, rtx, rtx);
2346 extern rtx gen_neon_vmls_lanev8hi (rtx, rtx, rtx, rtx, rtx, rtx);
2347 extern rtx gen_neon_vmls_lanev4si (rtx, rtx, rtx, rtx, rtx, rtx);
2348 extern rtx gen_neon_vmls_lanev4sf (rtx, rtx, rtx, rtx, rtx, rtx);
2349 extern rtx gen_neon_vmlsl_lanev4hi (rtx, rtx, rtx, rtx, rtx, rtx);
2350 extern rtx gen_neon_vmlsl_lanev2si (rtx, rtx, rtx, rtx, rtx, rtx);
2351 extern rtx gen_neon_vqdmlsl_lanev4hi (rtx, rtx, rtx, rtx, rtx, rtx);
2352 extern rtx gen_neon_vqdmlsl_lanev2si (rtx, rtx, rtx, rtx, rtx, rtx);
2353 extern rtx gen_neon_vextv8qi (rtx, rtx, rtx, rtx);
2354 extern rtx gen_neon_vextv16qi (rtx, rtx, rtx, rtx);
2355 extern rtx gen_neon_vextv4hi (rtx, rtx, rtx, rtx);
2356 extern rtx gen_neon_vextv8hi (rtx, rtx, rtx, rtx);
2357 extern rtx gen_neon_vextv2si (rtx, rtx, rtx, rtx);
2358 extern rtx gen_neon_vextv4si (rtx, rtx, rtx, rtx);
2359 extern rtx gen_neon_vextv2sf (rtx, rtx, rtx, rtx);
2360 extern rtx gen_neon_vextv4sf (rtx, rtx, rtx, rtx);
2361 extern rtx gen_neon_vextdi (rtx, rtx, rtx, rtx);
2362 extern rtx gen_neon_vextv2di (rtx, rtx, rtx, rtx);
2363 extern rtx gen_neon_vrev64v8qi (rtx, rtx, rtx);
2364 extern rtx gen_neon_vrev64v16qi (rtx, rtx, rtx);
2365 extern rtx gen_neon_vrev64v4hi (rtx, rtx, rtx);
2366 extern rtx gen_neon_vrev64v8hi (rtx, rtx, rtx);
2367 extern rtx gen_neon_vrev64v2si (rtx, rtx, rtx);
2368 extern rtx gen_neon_vrev64v4si (rtx, rtx, rtx);
2369 extern rtx gen_neon_vrev64v2sf (rtx, rtx, rtx);
2370 extern rtx gen_neon_vrev64v4sf (rtx, rtx, rtx);
2371 extern rtx gen_neon_vrev64v2di (rtx, rtx, rtx);
2372 extern rtx gen_neon_vrev32v8qi (rtx, rtx, rtx);
2373 extern rtx gen_neon_vrev32v4hi (rtx, rtx, rtx);
2374 extern rtx gen_neon_vrev32v16qi (rtx, rtx, rtx);
2375 extern rtx gen_neon_vrev32v8hi (rtx, rtx, rtx);
2376 extern rtx gen_neon_vrev16v8qi (rtx, rtx, rtx);
2377 extern rtx gen_neon_vrev16v16qi (rtx, rtx, rtx);
2378 extern rtx gen_neon_vbslv8qi_internal (rtx, rtx, rtx, rtx);
2379 extern rtx gen_neon_vbslv16qi_internal (rtx, rtx, rtx, rtx);
2380 extern rtx gen_neon_vbslv4hi_internal (rtx, rtx, rtx, rtx);
2381 extern rtx gen_neon_vbslv8hi_internal (rtx, rtx, rtx, rtx);
2382 extern rtx gen_neon_vbslv2si_internal (rtx, rtx, rtx, rtx);
2383 extern rtx gen_neon_vbslv4si_internal (rtx, rtx, rtx, rtx);
2384 extern rtx gen_neon_vbslv2sf_internal (rtx, rtx, rtx, rtx);
2385 extern rtx gen_neon_vbslv4sf_internal (rtx, rtx, rtx, rtx);
2386 extern rtx gen_neon_vbsldi_internal (rtx, rtx, rtx, rtx);
2387 extern rtx gen_neon_vbslv2di_internal (rtx, rtx, rtx, rtx);
2388 extern rtx gen_neon_vshlv8qi (rtx, rtx, rtx, rtx);
2389 extern rtx gen_neon_vshlv16qi (rtx, rtx, rtx, rtx);
2390 extern rtx gen_neon_vshlv4hi (rtx, rtx, rtx, rtx);
2391 extern rtx gen_neon_vshlv8hi (rtx, rtx, rtx, rtx);
2392 extern rtx gen_neon_vshlv2si (rtx, rtx, rtx, rtx);
2393 extern rtx gen_neon_vshlv4si (rtx, rtx, rtx, rtx);
2394 extern rtx gen_neon_vshldi (rtx, rtx, rtx, rtx);
2395 extern rtx gen_neon_vshlv2di (rtx, rtx, rtx, rtx);
2396 extern rtx gen_neon_vqshlv8qi (rtx, rtx, rtx, rtx);
2397 extern rtx gen_neon_vqshlv16qi (rtx, rtx, rtx, rtx);
2398 extern rtx gen_neon_vqshlv4hi (rtx, rtx, rtx, rtx);
2399 extern rtx gen_neon_vqshlv8hi (rtx, rtx, rtx, rtx);
2400 extern rtx gen_neon_vqshlv2si (rtx, rtx, rtx, rtx);
2401 extern rtx gen_neon_vqshlv4si (rtx, rtx, rtx, rtx);
2402 extern rtx gen_neon_vqshldi (rtx, rtx, rtx, rtx);
2403 extern rtx gen_neon_vqshlv2di (rtx, rtx, rtx, rtx);
2404 extern rtx gen_neon_vshr_nv8qi (rtx, rtx, rtx, rtx);
2405 extern rtx gen_neon_vshr_nv16qi (rtx, rtx, rtx, rtx);
2406 extern rtx gen_neon_vshr_nv4hi (rtx, rtx, rtx, rtx);
2407 extern rtx gen_neon_vshr_nv8hi (rtx, rtx, rtx, rtx);
2408 extern rtx gen_neon_vshr_nv2si (rtx, rtx, rtx, rtx);
2409 extern rtx gen_neon_vshr_nv4si (rtx, rtx, rtx, rtx);
2410 extern rtx gen_neon_vshr_ndi (rtx, rtx, rtx, rtx);
2411 extern rtx gen_neon_vshr_nv2di (rtx, rtx, rtx, rtx);
2412 extern rtx gen_neon_vshrn_nv8hi (rtx, rtx, rtx, rtx);
2413 extern rtx gen_neon_vshrn_nv4si (rtx, rtx, rtx, rtx);
2414 extern rtx gen_neon_vshrn_nv2di (rtx, rtx, rtx, rtx);
2415 extern rtx gen_neon_vqshrn_nv8hi (rtx, rtx, rtx, rtx);
2416 extern rtx gen_neon_vqshrn_nv4si (rtx, rtx, rtx, rtx);
2417 extern rtx gen_neon_vqshrn_nv2di (rtx, rtx, rtx, rtx);
2418 extern rtx gen_neon_vqshrun_nv8hi (rtx, rtx, rtx, rtx);
2419 extern rtx gen_neon_vqshrun_nv4si (rtx, rtx, rtx, rtx);
2420 extern rtx gen_neon_vqshrun_nv2di (rtx, rtx, rtx, rtx);
2421 extern rtx gen_neon_vshl_nv8qi (rtx, rtx, rtx, rtx);
2422 extern rtx gen_neon_vshl_nv16qi (rtx, rtx, rtx, rtx);
2423 extern rtx gen_neon_vshl_nv4hi (rtx, rtx, rtx, rtx);
2424 extern rtx gen_neon_vshl_nv8hi (rtx, rtx, rtx, rtx);
2425 extern rtx gen_neon_vshl_nv2si (rtx, rtx, rtx, rtx);
2426 extern rtx gen_neon_vshl_nv4si (rtx, rtx, rtx, rtx);
2427 extern rtx gen_neon_vshl_ndi (rtx, rtx, rtx, rtx);
2428 extern rtx gen_neon_vshl_nv2di (rtx, rtx, rtx, rtx);
2429 extern rtx gen_neon_vqshl_nv8qi (rtx, rtx, rtx, rtx);
2430 extern rtx gen_neon_vqshl_nv16qi (rtx, rtx, rtx, rtx);
2431 extern rtx gen_neon_vqshl_nv4hi (rtx, rtx, rtx, rtx);
2432 extern rtx gen_neon_vqshl_nv8hi (rtx, rtx, rtx, rtx);
2433 extern rtx gen_neon_vqshl_nv2si (rtx, rtx, rtx, rtx);
2434 extern rtx gen_neon_vqshl_nv4si (rtx, rtx, rtx, rtx);
2435 extern rtx gen_neon_vqshl_ndi (rtx, rtx, rtx, rtx);
2436 extern rtx gen_neon_vqshl_nv2di (rtx, rtx, rtx, rtx);
2437 extern rtx gen_neon_vqshlu_nv8qi (rtx, rtx, rtx, rtx);
2438 extern rtx gen_neon_vqshlu_nv16qi (rtx, rtx, rtx, rtx);
2439 extern rtx gen_neon_vqshlu_nv4hi (rtx, rtx, rtx, rtx);
2440 extern rtx gen_neon_vqshlu_nv8hi (rtx, rtx, rtx, rtx);
2441 extern rtx gen_neon_vqshlu_nv2si (rtx, rtx, rtx, rtx);
2442 extern rtx gen_neon_vqshlu_nv4si (rtx, rtx, rtx, rtx);
2443 extern rtx gen_neon_vqshlu_ndi (rtx, rtx, rtx, rtx);
2444 extern rtx gen_neon_vqshlu_nv2di (rtx, rtx, rtx, rtx);
2445 extern rtx gen_neon_vshll_nv8qi (rtx, rtx, rtx, rtx);
2446 extern rtx gen_neon_vshll_nv4hi (rtx, rtx, rtx, rtx);
2447 extern rtx gen_neon_vshll_nv2si (rtx, rtx, rtx, rtx);
2448 extern rtx gen_neon_vsra_nv8qi (rtx, rtx, rtx, rtx, rtx);
2449 extern rtx gen_neon_vsra_nv16qi (rtx, rtx, rtx, rtx, rtx);
2450 extern rtx gen_neon_vsra_nv4hi (rtx, rtx, rtx, rtx, rtx);
2451 extern rtx gen_neon_vsra_nv8hi (rtx, rtx, rtx, rtx, rtx);
2452 extern rtx gen_neon_vsra_nv2si (rtx, rtx, rtx, rtx, rtx);
2453 extern rtx gen_neon_vsra_nv4si (rtx, rtx, rtx, rtx, rtx);
2454 extern rtx gen_neon_vsra_ndi (rtx, rtx, rtx, rtx, rtx);
2455 extern rtx gen_neon_vsra_nv2di (rtx, rtx, rtx, rtx, rtx);
2456 extern rtx gen_neon_vsri_nv8qi (rtx, rtx, rtx, rtx);
2457 extern rtx gen_neon_vsri_nv16qi (rtx, rtx, rtx, rtx);
2458 extern rtx gen_neon_vsri_nv4hi (rtx, rtx, rtx, rtx);
2459 extern rtx gen_neon_vsri_nv8hi (rtx, rtx, rtx, rtx);
2460 extern rtx gen_neon_vsri_nv2si (rtx, rtx, rtx, rtx);
2461 extern rtx gen_neon_vsri_nv4si (rtx, rtx, rtx, rtx);
2462 extern rtx gen_neon_vsri_ndi (rtx, rtx, rtx, rtx);
2463 extern rtx gen_neon_vsri_nv2di (rtx, rtx, rtx, rtx);
2464 extern rtx gen_neon_vsli_nv8qi (rtx, rtx, rtx, rtx);
2465 extern rtx gen_neon_vsli_nv16qi (rtx, rtx, rtx, rtx);
2466 extern rtx gen_neon_vsli_nv4hi (rtx, rtx, rtx, rtx);
2467 extern rtx gen_neon_vsli_nv8hi (rtx, rtx, rtx, rtx);
2468 extern rtx gen_neon_vsli_nv2si (rtx, rtx, rtx, rtx);
2469 extern rtx gen_neon_vsli_nv4si (rtx, rtx, rtx, rtx);
2470 extern rtx gen_neon_vsli_ndi (rtx, rtx, rtx, rtx);
2471 extern rtx gen_neon_vsli_nv2di (rtx, rtx, rtx, rtx);
2472 extern rtx gen_neon_vtbl1v8qi (rtx, rtx, rtx);
2473 extern rtx gen_neon_vtbl2v8qi (rtx, rtx, rtx);
2474 extern rtx gen_neon_vtbl3v8qi (rtx, rtx, rtx);
2475 extern rtx gen_neon_vtbl4v8qi (rtx, rtx, rtx);
2476 extern rtx gen_neon_vtbx1v8qi (rtx, rtx, rtx, rtx);
2477 extern rtx gen_neon_vtbx2v8qi (rtx, rtx, rtx, rtx);
2478 extern rtx gen_neon_vtbx3v8qi (rtx, rtx, rtx, rtx);
2479 extern rtx gen_neon_vtbx4v8qi (rtx, rtx, rtx, rtx);
2480 extern rtx gen_neon_vtrnv8qi_internal (rtx, rtx, rtx, rtx);
2481 extern rtx gen_neon_vtrnv16qi_internal (rtx, rtx, rtx, rtx);
2482 extern rtx gen_neon_vtrnv4hi_internal (rtx, rtx, rtx, rtx);
2483 extern rtx gen_neon_vtrnv8hi_internal (rtx, rtx, rtx, rtx);
2484 extern rtx gen_neon_vtrnv2si_internal (rtx, rtx, rtx, rtx);
2485 extern rtx gen_neon_vtrnv4si_internal (rtx, rtx, rtx, rtx);
2486 extern rtx gen_neon_vtrnv2sf_internal (rtx, rtx, rtx, rtx);
2487 extern rtx gen_neon_vtrnv4sf_internal (rtx, rtx, rtx, rtx);
2488 extern rtx gen_neon_vzipv8qi_internal (rtx, rtx, rtx, rtx);
2489 extern rtx gen_neon_vzipv16qi_internal (rtx, rtx, rtx, rtx);
2490 extern rtx gen_neon_vzipv4hi_internal (rtx, rtx, rtx, rtx);
2491 extern rtx gen_neon_vzipv8hi_internal (rtx, rtx, rtx, rtx);
2492 extern rtx gen_neon_vzipv2si_internal (rtx, rtx, rtx, rtx);
2493 extern rtx gen_neon_vzipv4si_internal (rtx, rtx, rtx, rtx);
2494 extern rtx gen_neon_vzipv2sf_internal (rtx, rtx, rtx, rtx);
2495 extern rtx gen_neon_vzipv4sf_internal (rtx, rtx, rtx, rtx);
2496 extern rtx gen_neon_vuzpv8qi_internal (rtx, rtx, rtx, rtx);
2497 extern rtx gen_neon_vuzpv16qi_internal (rtx, rtx, rtx, rtx);
2498 extern rtx gen_neon_vuzpv4hi_internal (rtx, rtx, rtx, rtx);
2499 extern rtx gen_neon_vuzpv8hi_internal (rtx, rtx, rtx, rtx);
2500 extern rtx gen_neon_vuzpv2si_internal (rtx, rtx, rtx, rtx);
2501 extern rtx gen_neon_vuzpv4si_internal (rtx, rtx, rtx, rtx);
2502 extern rtx gen_neon_vuzpv2sf_internal (rtx, rtx, rtx, rtx);
2503 extern rtx gen_neon_vuzpv4sf_internal (rtx, rtx, rtx, rtx);
2504 extern rtx gen_neon_vld1v8qi (rtx, rtx);
2505 extern rtx gen_neon_vld1v16qi (rtx, rtx);
2506 extern rtx gen_neon_vld1v4hi (rtx, rtx);
2507 extern rtx gen_neon_vld1v8hi (rtx, rtx);
2508 extern rtx gen_neon_vld1v2si (rtx, rtx);
2509 extern rtx gen_neon_vld1v4si (rtx, rtx);
2510 extern rtx gen_neon_vld1v2sf (rtx, rtx);
2511 extern rtx gen_neon_vld1v4sf (rtx, rtx);
2512 extern rtx gen_neon_vld1di (rtx, rtx);
2513 extern rtx gen_neon_vld1v2di (rtx, rtx);
2514 extern rtx gen_neon_vld1_lanev8qi (rtx, rtx, rtx, rtx);
2515 extern rtx gen_neon_vld1_lanev4hi (rtx, rtx, rtx, rtx);
2516 extern rtx gen_neon_vld1_lanev2si (rtx, rtx, rtx, rtx);
2517 extern rtx gen_neon_vld1_lanev2sf (rtx, rtx, rtx, rtx);
2518 extern rtx gen_neon_vld1_lanedi (rtx, rtx, rtx, rtx);
2519 extern rtx gen_neon_vld1_lanev16qi (rtx, rtx, rtx, rtx);
2520 extern rtx gen_neon_vld1_lanev8hi (rtx, rtx, rtx, rtx);
2521 extern rtx gen_neon_vld1_lanev4si (rtx, rtx, rtx, rtx);
2522 extern rtx gen_neon_vld1_lanev4sf (rtx, rtx, rtx, rtx);
2523 extern rtx gen_neon_vld1_lanev2di (rtx, rtx, rtx, rtx);
2524 extern rtx gen_neon_vld1_dupv8qi (rtx, rtx);
2525 extern rtx gen_neon_vld1_dupv4hi (rtx, rtx);
2526 extern rtx gen_neon_vld1_dupv2si (rtx, rtx);
2527 extern rtx gen_neon_vld1_dupv2sf (rtx, rtx);
2528 extern rtx gen_neon_vld1_dupdi (rtx, rtx);
2529 extern rtx gen_neon_vld1_dupv16qi (rtx, rtx);
2530 extern rtx gen_neon_vld1_dupv8hi (rtx, rtx);
2531 extern rtx gen_neon_vld1_dupv4si (rtx, rtx);
2532 extern rtx gen_neon_vld1_dupv4sf (rtx, rtx);
2533 extern rtx gen_neon_vld1_dupv2di (rtx, rtx);
2534 extern rtx gen_neon_vst1v8qi (rtx, rtx);
2535 extern rtx gen_neon_vst1v16qi (rtx, rtx);
2536 extern rtx gen_neon_vst1v4hi (rtx, rtx);
2537 extern rtx gen_neon_vst1v8hi (rtx, rtx);
2538 extern rtx gen_neon_vst1v2si (rtx, rtx);
2539 extern rtx gen_neon_vst1v4si (rtx, rtx);
2540 extern rtx gen_neon_vst1v2sf (rtx, rtx);
2541 extern rtx gen_neon_vst1v4sf (rtx, rtx);
2542 extern rtx gen_neon_vst1di (rtx, rtx);
2543 extern rtx gen_neon_vst1v2di (rtx, rtx);
2544 extern rtx gen_neon_vst1_lanev8qi (rtx, rtx, rtx);
2545 extern rtx gen_neon_vst1_lanev4hi (rtx, rtx, rtx);
2546 extern rtx gen_neon_vst1_lanev2si (rtx, rtx, rtx);
2547 extern rtx gen_neon_vst1_lanev2sf (rtx, rtx, rtx);
2548 extern rtx gen_neon_vst1_lanedi (rtx, rtx, rtx);
2549 extern rtx gen_neon_vst1_lanev16qi (rtx, rtx, rtx);
2550 extern rtx gen_neon_vst1_lanev8hi (rtx, rtx, rtx);
2551 extern rtx gen_neon_vst1_lanev4si (rtx, rtx, rtx);
2552 extern rtx gen_neon_vst1_lanev4sf (rtx, rtx, rtx);
2553 extern rtx gen_neon_vst1_lanev2di (rtx, rtx, rtx);
2554 extern rtx gen_neon_vld2v8qi (rtx, rtx);
2555 extern rtx gen_neon_vld2v4hi (rtx, rtx);
2556 extern rtx gen_neon_vld2v2si (rtx, rtx);
2557 extern rtx gen_neon_vld2v2sf (rtx, rtx);
2558 extern rtx gen_neon_vld2di (rtx, rtx);
2559 extern rtx gen_neon_vld2v16qi (rtx, rtx);
2560 extern rtx gen_neon_vld2v8hi (rtx, rtx);
2561 extern rtx gen_neon_vld2v4si (rtx, rtx);
2562 extern rtx gen_neon_vld2v4sf (rtx, rtx);
2563 extern rtx gen_neon_vld2_lanev8qi (rtx, rtx, rtx, rtx);
2564 extern rtx gen_neon_vld2_lanev4hi (rtx, rtx, rtx, rtx);
2565 extern rtx gen_neon_vld2_lanev2si (rtx, rtx, rtx, rtx);
2566 extern rtx gen_neon_vld2_lanev2sf (rtx, rtx, rtx, rtx);
2567 extern rtx gen_neon_vld2_lanev8hi (rtx, rtx, rtx, rtx);
2568 extern rtx gen_neon_vld2_lanev4si (rtx, rtx, rtx, rtx);
2569 extern rtx gen_neon_vld2_lanev4sf (rtx, rtx, rtx, rtx);
2570 extern rtx gen_neon_vld2_dupv8qi (rtx, rtx);
2571 extern rtx gen_neon_vld2_dupv4hi (rtx, rtx);
2572 extern rtx gen_neon_vld2_dupv2si (rtx, rtx);
2573 extern rtx gen_neon_vld2_dupv2sf (rtx, rtx);
2574 extern rtx gen_neon_vld2_dupdi (rtx, rtx);
2575 extern rtx gen_neon_vst2v8qi (rtx, rtx);
2576 extern rtx gen_neon_vst2v4hi (rtx, rtx);
2577 extern rtx gen_neon_vst2v2si (rtx, rtx);
2578 extern rtx gen_neon_vst2v2sf (rtx, rtx);
2579 extern rtx gen_neon_vst2di (rtx, rtx);
2580 extern rtx gen_neon_vst2v16qi (rtx, rtx);
2581 extern rtx gen_neon_vst2v8hi (rtx, rtx);
2582 extern rtx gen_neon_vst2v4si (rtx, rtx);
2583 extern rtx gen_neon_vst2v4sf (rtx, rtx);
2584 extern rtx gen_neon_vst2_lanev8qi (rtx, rtx, rtx);
2585 extern rtx gen_neon_vst2_lanev4hi (rtx, rtx, rtx);
2586 extern rtx gen_neon_vst2_lanev2si (rtx, rtx, rtx);
2587 extern rtx gen_neon_vst2_lanev2sf (rtx, rtx, rtx);
2588 extern rtx gen_neon_vst2_lanev8hi (rtx, rtx, rtx);
2589 extern rtx gen_neon_vst2_lanev4si (rtx, rtx, rtx);
2590 extern rtx gen_neon_vst2_lanev4sf (rtx, rtx, rtx);
2591 extern rtx gen_neon_vld3v8qi (rtx, rtx);
2592 extern rtx gen_neon_vld3v4hi (rtx, rtx);
2593 extern rtx gen_neon_vld3v2si (rtx, rtx);
2594 extern rtx gen_neon_vld3v2sf (rtx, rtx);
2595 extern rtx gen_neon_vld3di (rtx, rtx);
2596 extern rtx gen_neon_vld3qav16qi (rtx, rtx, rtx, rtx);
2597 extern rtx gen_neon_vld3qav8hi (rtx, rtx, rtx, rtx);
2598 extern rtx gen_neon_vld3qav4si (rtx, rtx, rtx, rtx);
2599 extern rtx gen_neon_vld3qav4sf (rtx, rtx, rtx, rtx);
2600 extern rtx gen_neon_vld3qbv16qi (rtx, rtx, rtx, rtx);
2601 extern rtx gen_neon_vld3qbv8hi (rtx, rtx, rtx, rtx);
2602 extern rtx gen_neon_vld3qbv4si (rtx, rtx, rtx, rtx);
2603 extern rtx gen_neon_vld3qbv4sf (rtx, rtx, rtx, rtx);
2604 extern rtx gen_neon_vld3_lanev8qi (rtx, rtx, rtx, rtx);
2605 extern rtx gen_neon_vld3_lanev4hi (rtx, rtx, rtx, rtx);
2606 extern rtx gen_neon_vld3_lanev2si (rtx, rtx, rtx, rtx);
2607 extern rtx gen_neon_vld3_lanev2sf (rtx, rtx, rtx, rtx);
2608 extern rtx gen_neon_vld3_lanev8hi (rtx, rtx, rtx, rtx);
2609 extern rtx gen_neon_vld3_lanev4si (rtx, rtx, rtx, rtx);
2610 extern rtx gen_neon_vld3_lanev4sf (rtx, rtx, rtx, rtx);
2611 extern rtx gen_neon_vld3_dupv8qi (rtx, rtx);
2612 extern rtx gen_neon_vld3_dupv4hi (rtx, rtx);
2613 extern rtx gen_neon_vld3_dupv2si (rtx, rtx);
2614 extern rtx gen_neon_vld3_dupv2sf (rtx, rtx);
2615 extern rtx gen_neon_vld3_dupdi (rtx, rtx);
2616 extern rtx gen_neon_vst3v8qi (rtx, rtx);
2617 extern rtx gen_neon_vst3v4hi (rtx, rtx);
2618 extern rtx gen_neon_vst3v2si (rtx, rtx);
2619 extern rtx gen_neon_vst3v2sf (rtx, rtx);
2620 extern rtx gen_neon_vst3di (rtx, rtx);
2621 extern rtx gen_neon_vst3qav16qi (rtx, rtx, rtx);
2622 extern rtx gen_neon_vst3qav8hi (rtx, rtx, rtx);
2623 extern rtx gen_neon_vst3qav4si (rtx, rtx, rtx);
2624 extern rtx gen_neon_vst3qav4sf (rtx, rtx, rtx);
2625 extern rtx gen_neon_vst3qbv16qi (rtx, rtx, rtx);
2626 extern rtx gen_neon_vst3qbv8hi (rtx, rtx, rtx);
2627 extern rtx gen_neon_vst3qbv4si (rtx, rtx, rtx);
2628 extern rtx gen_neon_vst3qbv4sf (rtx, rtx, rtx);
2629 extern rtx gen_neon_vst3_lanev8qi (rtx, rtx, rtx);
2630 extern rtx gen_neon_vst3_lanev4hi (rtx, rtx, rtx);
2631 extern rtx gen_neon_vst3_lanev2si (rtx, rtx, rtx);
2632 extern rtx gen_neon_vst3_lanev2sf (rtx, rtx, rtx);
2633 extern rtx gen_neon_vst3_lanev8hi (rtx, rtx, rtx);
2634 extern rtx gen_neon_vst3_lanev4si (rtx, rtx, rtx);
2635 extern rtx gen_neon_vst3_lanev4sf (rtx, rtx, rtx);
2636 extern rtx gen_neon_vld4v8qi (rtx, rtx);
2637 extern rtx gen_neon_vld4v4hi (rtx, rtx);
2638 extern rtx gen_neon_vld4v2si (rtx, rtx);
2639 extern rtx gen_neon_vld4v2sf (rtx, rtx);
2640 extern rtx gen_neon_vld4di (rtx, rtx);
2641 extern rtx gen_neon_vld4qav16qi (rtx, rtx, rtx, rtx);
2642 extern rtx gen_neon_vld4qav8hi (rtx, rtx, rtx, rtx);
2643 extern rtx gen_neon_vld4qav4si (rtx, rtx, rtx, rtx);
2644 extern rtx gen_neon_vld4qav4sf (rtx, rtx, rtx, rtx);
2645 extern rtx gen_neon_vld4qbv16qi (rtx, rtx, rtx, rtx);
2646 extern rtx gen_neon_vld4qbv8hi (rtx, rtx, rtx, rtx);
2647 extern rtx gen_neon_vld4qbv4si (rtx, rtx, rtx, rtx);
2648 extern rtx gen_neon_vld4qbv4sf (rtx, rtx, rtx, rtx);
2649 extern rtx gen_neon_vld4_lanev8qi (rtx, rtx, rtx, rtx);
2650 extern rtx gen_neon_vld4_lanev4hi (rtx, rtx, rtx, rtx);
2651 extern rtx gen_neon_vld4_lanev2si (rtx, rtx, rtx, rtx);
2652 extern rtx gen_neon_vld4_lanev2sf (rtx, rtx, rtx, rtx);
2653 extern rtx gen_neon_vld4_lanev8hi (rtx, rtx, rtx, rtx);
2654 extern rtx gen_neon_vld4_lanev4si (rtx, rtx, rtx, rtx);
2655 extern rtx gen_neon_vld4_lanev4sf (rtx, rtx, rtx, rtx);
2656 extern rtx gen_neon_vld4_dupv8qi (rtx, rtx);
2657 extern rtx gen_neon_vld4_dupv4hi (rtx, rtx);
2658 extern rtx gen_neon_vld4_dupv2si (rtx, rtx);
2659 extern rtx gen_neon_vld4_dupv2sf (rtx, rtx);
2660 extern rtx gen_neon_vld4_dupdi (rtx, rtx);
2661 extern rtx gen_neon_vst4v8qi (rtx, rtx);
2662 extern rtx gen_neon_vst4v4hi (rtx, rtx);
2663 extern rtx gen_neon_vst4v2si (rtx, rtx);
2664 extern rtx gen_neon_vst4v2sf (rtx, rtx);
2665 extern rtx gen_neon_vst4di (rtx, rtx);
2666 extern rtx gen_neon_vst4qav16qi (rtx, rtx, rtx);
2667 extern rtx gen_neon_vst4qav8hi (rtx, rtx, rtx);
2668 extern rtx gen_neon_vst4qav4si (rtx, rtx, rtx);
2669 extern rtx gen_neon_vst4qav4sf (rtx, rtx, rtx);
2670 extern rtx gen_neon_vst4qbv16qi (rtx, rtx, rtx);
2671 extern rtx gen_neon_vst4qbv8hi (rtx, rtx, rtx);
2672 extern rtx gen_neon_vst4qbv4si (rtx, rtx, rtx);
2673 extern rtx gen_neon_vst4qbv4sf (rtx, rtx, rtx);
2674 extern rtx gen_neon_vst4_lanev8qi (rtx, rtx, rtx);
2675 extern rtx gen_neon_vst4_lanev4hi (rtx, rtx, rtx);
2676 extern rtx gen_neon_vst4_lanev2si (rtx, rtx, rtx);
2677 extern rtx gen_neon_vst4_lanev2sf (rtx, rtx, rtx);
2678 extern rtx gen_neon_vst4_lanev8hi (rtx, rtx, rtx);
2679 extern rtx gen_neon_vst4_lanev4si (rtx, rtx, rtx);
2680 extern rtx gen_neon_vst4_lanev4sf (rtx, rtx, rtx);
2681 extern rtx gen_adddi3 (rtx, rtx, rtx);
2682 extern rtx gen_addsi3 (rtx, rtx, rtx);
2683 extern rtx gen_incscc (rtx, rtx, rtx, rtx);
2684 extern rtx gen_addsf3 (rtx, rtx, rtx);
2685 extern rtx gen_adddf3 (rtx, rtx, rtx);
2686 extern rtx gen_subdi3 (rtx, rtx, rtx);
2687 extern rtx gen_subsi3 (rtx, rtx, rtx);
2688 extern rtx gen_decscc (rtx, rtx, rtx, rtx);
2689 extern rtx gen_subsf3 (rtx, rtx, rtx);
2690 extern rtx gen_subdf3 (rtx, rtx, rtx);
2691 extern rtx gen_mulsi3 (rtx, rtx, rtx);
2692 extern rtx gen_mulsidi3 (rtx, rtx, rtx);
2693 extern rtx gen_umulsidi3 (rtx, rtx, rtx);
2694 extern rtx gen_smulsi3_highpart (rtx, rtx, rtx);
2695 extern rtx gen_umulsi3_highpart (rtx, rtx, rtx);
2696 extern rtx gen_mulsf3 (rtx, rtx, rtx);
2697 extern rtx gen_muldf3 (rtx, rtx, rtx);
2698 extern rtx gen_divsf3 (rtx, rtx, rtx);
2699 extern rtx gen_divdf3 (rtx, rtx, rtx);
2700 extern rtx gen_modsf3 (rtx, rtx, rtx);
2701 extern rtx gen_moddf3 (rtx, rtx, rtx);
2702 extern rtx gen_andsi3 (rtx, rtx, rtx);
2703 extern rtx gen_insv (rtx, rtx, rtx, rtx);
2704 extern rtx gen_iorsi3 (rtx, rtx, rtx);
2705 extern rtx gen_xorsi3 (rtx, rtx, rtx);
2706 extern rtx gen_smaxsi3 (rtx, rtx, rtx);
2707 extern rtx gen_sminsi3 (rtx, rtx, rtx);
2708 extern rtx gen_umaxsi3 (rtx, rtx, rtx);
2709 extern rtx gen_uminsi3 (rtx, rtx, rtx);
2710 extern rtx gen_ashldi3 (rtx, rtx, rtx);
2711 extern rtx gen_ashlsi3 (rtx, rtx, rtx);
2712 extern rtx gen_ashrdi3 (rtx, rtx, rtx);
2713 extern rtx gen_ashrsi3 (rtx, rtx, rtx);
2714 extern rtx gen_lshrdi3 (rtx, rtx, rtx);
2715 extern rtx gen_lshrsi3 (rtx, rtx, rtx);
2716 extern rtx gen_rotlsi3 (rtx, rtx, rtx);
2717 extern rtx gen_rotrsi3 (rtx, rtx, rtx);
2718 extern rtx gen_extzv (rtx, rtx, rtx, rtx);
2719 extern rtx gen_negdi2 (rtx, rtx);
2720 extern rtx gen_negsi2 (rtx, rtx);
2721 extern rtx gen_negsf2 (rtx, rtx);
2722 extern rtx gen_negdf2 (rtx, rtx);
2723 extern rtx gen_abssi2 (rtx, rtx);
2724 extern rtx gen_abssf2 (rtx, rtx);
2725 extern rtx gen_absdf2 (rtx, rtx);
2726 extern rtx gen_sqrtsf2 (rtx, rtx);
2727 extern rtx gen_sqrtdf2 (rtx, rtx);
2728 extern rtx gen_one_cmplsi2 (rtx, rtx);
2729 extern rtx gen_floatsihf2 (rtx, rtx);
2730 extern rtx gen_floatdihf2 (rtx, rtx);
2731 extern rtx gen_floatsisf2 (rtx, rtx);
2732 extern rtx gen_floatsidf2 (rtx, rtx);
2733 extern rtx gen_fix_trunchfsi2 (rtx, rtx);
2734 extern rtx gen_fix_trunchfdi2 (rtx, rtx);
2735 extern rtx gen_fix_truncsfsi2 (rtx, rtx);
2736 extern rtx gen_fix_truncdfsi2 (rtx, rtx);
2737 extern rtx gen_truncdfsf2 (rtx, rtx);
2738 extern rtx gen_truncdfhf2 (rtx, rtx);
2739 extern rtx gen_zero_extendsidi2 (rtx, rtx);
2740 extern rtx gen_zero_extendqidi2 (rtx, rtx);
2741 extern rtx gen_extendsidi2 (rtx, rtx);
2742 extern rtx gen_zero_extendhisi2 (rtx, rtx);
2743 extern rtx gen_zero_extendqisi2 (rtx, rtx);
2744 extern rtx gen_extendhisi2 (rtx, rtx);
2745 extern rtx gen_extendhisi2_mem (rtx, rtx);
2746 extern rtx gen_extendqihi2 (rtx, rtx);
2747 extern rtx gen_extendqisi2 (rtx, rtx);
2748 extern rtx gen_extendsfdf2 (rtx, rtx);
2749 extern rtx gen_extendhfdf2 (rtx, rtx);
2750 extern rtx gen_movdi (rtx, rtx);
2751 extern rtx gen_movsi (rtx, rtx);
2752 extern rtx gen_builtin_setjmp_receiver (rtx);
2753 extern rtx gen_storehi (rtx, rtx);
2754 extern rtx gen_storehi_bigend (rtx, rtx);
2755 extern rtx gen_storeinthi (rtx, rtx);
2756 extern rtx gen_storehi_single_op (rtx, rtx);
2757 extern rtx gen_movhi (rtx, rtx);
2758 extern rtx gen_movhi_bytes (rtx, rtx);
2759 extern rtx gen_movhi_bigend (rtx, rtx);
2760 extern rtx gen_thumb_movhi_clobber (rtx, rtx, rtx);
2761 extern rtx gen_reload_outhi (rtx, rtx, rtx);
2762 extern rtx gen_reload_inhi (rtx, rtx, rtx);
2763 extern rtx gen_movqi (rtx, rtx);
2764 extern rtx gen_movhf (rtx, rtx);
2765 extern rtx gen_movsf (rtx, rtx);
2766 extern rtx gen_movdf (rtx, rtx);
2767 extern rtx gen_reload_outdf (rtx, rtx, rtx);
2768 extern rtx gen_movxf (rtx, rtx);
2769 extern rtx gen_load_multiple (rtx, rtx, rtx);
2770 extern rtx gen_store_multiple (rtx, rtx, rtx);
2771 extern rtx gen_movmemqi (rtx, rtx, rtx, rtx);
2772 extern rtx gen_cbranchsi4 (rtx, rtx, rtx, rtx);
2773 extern rtx gen_cbranchsf4 (rtx, rtx, rtx, rtx);
2774 extern rtx gen_cbranchdf4 (rtx, rtx, rtx, rtx);
2775 extern rtx gen_cbranchdi4 (rtx, rtx, rtx, rtx);
2776 extern rtx gen_cbranch_cc (rtx, rtx, rtx, rtx);
2777 extern rtx gen_cstore_cc (rtx, rtx, rtx, rtx);
2778 extern rtx gen_cstoresi4 (rtx, rtx, rtx, rtx);
2779 extern rtx gen_cstoresf4 (rtx, rtx, rtx, rtx);
2780 extern rtx gen_cstoredf4 (rtx, rtx, rtx, rtx);
2781 extern rtx gen_cstoredi4 (rtx, rtx, rtx, rtx);
2782 extern rtx gen_cstoresi_eq0_thumb1 (rtx, rtx);
2783 extern rtx gen_cstoresi_ne0_thumb1 (rtx, rtx);
2784 extern rtx gen_movsicc (rtx, rtx, rtx, rtx);
2785 extern rtx gen_movsfcc (rtx, rtx, rtx, rtx);
2786 extern rtx gen_movdfcc (rtx, rtx, rtx, rtx);
2787 extern rtx gen_jump (rtx);
2788 #define GEN_CALL(A, B, C, D) gen_call ((A), (B), (C))
2789 extern rtx gen_call (rtx, rtx, rtx);
2790 extern rtx gen_call_internal (rtx, rtx, rtx);
2791 #define GEN_CALL_VALUE(A, B, C, D, E) gen_call_value ((A), (B), (C), (D))
2792 extern rtx gen_call_value (rtx, rtx, rtx, rtx);
2793 extern rtx gen_call_value_internal (rtx, rtx, rtx, rtx);
2794 #define GEN_SIBCALL(A, B, C, D) gen_sibcall ((A), (B), (C))
2795 extern rtx gen_sibcall (rtx, rtx, rtx);
2796 #define GEN_SIBCALL_VALUE(A, B, C, D, E) gen_sibcall_value ((A), (B), (C), (D))
2797 extern rtx gen_sibcall_value (rtx, rtx, rtx, rtx);
2798 extern rtx gen_return_addr_mask (rtx);
2799 extern rtx gen_untyped_call (rtx, rtx, rtx);
2800 extern rtx gen_untyped_return (rtx, rtx);
2801 extern rtx gen_casesi (rtx, rtx, rtx, rtx, rtx);
2802 extern rtx gen_thumb1_casesi_internal_pic (rtx, rtx, rtx, rtx);
2803 extern rtx gen_indirect_jump (rtx);
2804 extern rtx gen_prologue (void);
2805 extern rtx gen_epilogue (void);
2806 extern rtx gen_eh_epilogue (rtx, rtx, rtx);
2807 extern rtx gen_tablejump (rtx, rtx);
2808 extern rtx gen_ctzsi2 (rtx, rtx);
2809 extern rtx gen_eh_return (rtx);
2810 extern rtx gen_arm_legacy_rev (rtx, rtx, rtx, rtx);
2811 extern rtx gen_thumb_legacy_rev (rtx, rtx, rtx, rtx, rtx, rtx);
2812 extern rtx gen_bswapsi2 (rtx, rtx);
2813 extern rtx gen_movv2di (rtx, rtx);
2814 extern rtx gen_movv2si (rtx, rtx);
2815 extern rtx gen_movv4hi (rtx, rtx);
2816 extern rtx gen_movv8qi (rtx, rtx);
2817 extern rtx gen_movv2sf (rtx, rtx);
2818 extern rtx gen_movv4si (rtx, rtx);
2819 extern rtx gen_movv8hi (rtx, rtx);
2820 extern rtx gen_movv16qi (rtx, rtx);
2821 extern rtx gen_movv4sf (rtx, rtx);
2822 extern rtx gen_addv2di3 (rtx, rtx, rtx);
2823 extern rtx gen_addv2si3 (rtx, rtx, rtx);
2824 extern rtx gen_addv4hi3 (rtx, rtx, rtx);
2825 extern rtx gen_addv8qi3 (rtx, rtx, rtx);
2826 extern rtx gen_addv2sf3 (rtx, rtx, rtx);
2827 extern rtx gen_addv4si3 (rtx, rtx, rtx);
2828 extern rtx gen_addv8hi3 (rtx, rtx, rtx);
2829 extern rtx gen_addv16qi3 (rtx, rtx, rtx);
2830 extern rtx gen_addv4sf3 (rtx, rtx, rtx);
2831 extern rtx gen_subv2di3 (rtx, rtx, rtx);
2832 extern rtx gen_subv2si3 (rtx, rtx, rtx);
2833 extern rtx gen_subv4hi3 (rtx, rtx, rtx);
2834 extern rtx gen_subv8qi3 (rtx, rtx, rtx);
2835 extern rtx gen_subv2sf3 (rtx, rtx, rtx);
2836 extern rtx gen_subv4si3 (rtx, rtx, rtx);
2837 extern rtx gen_subv8hi3 (rtx, rtx, rtx);
2838 extern rtx gen_subv16qi3 (rtx, rtx, rtx);
2839 extern rtx gen_subv4sf3 (rtx, rtx, rtx);
2840 extern rtx gen_mulv2si3 (rtx, rtx, rtx);
2841 extern rtx gen_mulv4hi3 (rtx, rtx, rtx);
2842 extern rtx gen_mulv8qi3 (rtx, rtx, rtx);
2843 extern rtx gen_mulv2sf3 (rtx, rtx, rtx);
2844 extern rtx gen_mulv4si3 (rtx, rtx, rtx);
2845 extern rtx gen_mulv8hi3 (rtx, rtx, rtx);
2846 extern rtx gen_mulv16qi3 (rtx, rtx, rtx);
2847 extern rtx gen_mulv4sf3 (rtx, rtx, rtx);
2848 extern rtx gen_sminv2si3 (rtx, rtx, rtx);
2849 extern rtx gen_sminv4hi3 (rtx, rtx, rtx);
2850 extern rtx gen_sminv8qi3 (rtx, rtx, rtx);
2851 extern rtx gen_sminv2sf3 (rtx, rtx, rtx);
2852 extern rtx gen_sminv4si3 (rtx, rtx, rtx);
2853 extern rtx gen_sminv8hi3 (rtx, rtx, rtx);
2854 extern rtx gen_sminv16qi3 (rtx, rtx, rtx);
2855 extern rtx gen_sminv4sf3 (rtx, rtx, rtx);
2856 extern rtx gen_uminv2si3 (rtx, rtx, rtx);
2857 extern rtx gen_uminv4hi3 (rtx, rtx, rtx);
2858 extern rtx gen_uminv8qi3 (rtx, rtx, rtx);
2859 extern rtx gen_uminv4si3 (rtx, rtx, rtx);
2860 extern rtx gen_uminv8hi3 (rtx, rtx, rtx);
2861 extern rtx gen_uminv16qi3 (rtx, rtx, rtx);
2862 extern rtx gen_smaxv2si3 (rtx, rtx, rtx);
2863 extern rtx gen_smaxv4hi3 (rtx, rtx, rtx);
2864 extern rtx gen_smaxv8qi3 (rtx, rtx, rtx);
2865 extern rtx gen_smaxv2sf3 (rtx, rtx, rtx);
2866 extern rtx gen_smaxv4si3 (rtx, rtx, rtx);
2867 extern rtx gen_smaxv8hi3 (rtx, rtx, rtx);
2868 extern rtx gen_smaxv16qi3 (rtx, rtx, rtx);
2869 extern rtx gen_smaxv4sf3 (rtx, rtx, rtx);
2870 extern rtx gen_umaxv2si3 (rtx, rtx, rtx);
2871 extern rtx gen_umaxv4hi3 (rtx, rtx, rtx);
2872 extern rtx gen_umaxv8qi3 (rtx, rtx, rtx);
2873 extern rtx gen_umaxv4si3 (rtx, rtx, rtx);
2874 extern rtx gen_umaxv8hi3 (rtx, rtx, rtx);
2875 extern rtx gen_umaxv16qi3 (rtx, rtx, rtx);
2876 extern rtx gen_movti (rtx, rtx);
2877 extern rtx gen_movei (rtx, rtx);
2878 extern rtx gen_movoi (rtx, rtx);
2879 extern rtx gen_movci (rtx, rtx);
2880 extern rtx gen_movxi (rtx, rtx);
2881 extern rtx gen_vec_setv8qi (rtx, rtx, rtx);
2882 extern rtx gen_vec_setv16qi (rtx, rtx, rtx);
2883 extern rtx gen_vec_setv4hi (rtx, rtx, rtx);
2884 extern rtx gen_vec_setv8hi (rtx, rtx, rtx);
2885 extern rtx gen_vec_setv2si (rtx, rtx, rtx);
2886 extern rtx gen_vec_setv4si (rtx, rtx, rtx);
2887 extern rtx gen_vec_setv2sf (rtx, rtx, rtx);
2888 extern rtx gen_vec_setv4sf (rtx, rtx, rtx);
2889 extern rtx gen_vec_setv2di (rtx, rtx, rtx);
2890 extern rtx gen_vec_initv8qi (rtx, rtx);
2891 extern rtx gen_vec_initv16qi (rtx, rtx);
2892 extern rtx gen_vec_initv4hi (rtx, rtx);
2893 extern rtx gen_vec_initv8hi (rtx, rtx);
2894 extern rtx gen_vec_initv2si (rtx, rtx);
2895 extern rtx gen_vec_initv4si (rtx, rtx);
2896 extern rtx gen_vec_initv2sf (rtx, rtx);
2897 extern rtx gen_vec_initv4sf (rtx, rtx);
2898 extern rtx gen_vec_initv2di (rtx, rtx);
2899 extern rtx gen_vashrv8qi3 (rtx, rtx, rtx);
2900 extern rtx gen_vashrv16qi3 (rtx, rtx, rtx);
2901 extern rtx gen_vashrv4hi3 (rtx, rtx, rtx);
2902 extern rtx gen_vashrv8hi3 (rtx, rtx, rtx);
2903 extern rtx gen_vashrv2si3 (rtx, rtx, rtx);
2904 extern rtx gen_vashrv4si3 (rtx, rtx, rtx);
2905 extern rtx gen_vlshrv8qi3 (rtx, rtx, rtx);
2906 extern rtx gen_vlshrv16qi3 (rtx, rtx, rtx);
2907 extern rtx gen_vlshrv4hi3 (rtx, rtx, rtx);
2908 extern rtx gen_vlshrv8hi3 (rtx, rtx, rtx);
2909 extern rtx gen_vlshrv2si3 (rtx, rtx, rtx);
2910 extern rtx gen_vlshrv4si3 (rtx, rtx, rtx);
2911 extern rtx gen_vec_shr_v8qi (rtx, rtx, rtx);
2912 extern rtx gen_vec_shr_v16qi (rtx, rtx, rtx);
2913 extern rtx gen_vec_shr_v4hi (rtx, rtx, rtx);
2914 extern rtx gen_vec_shr_v8hi (rtx, rtx, rtx);
2915 extern rtx gen_vec_shr_v2si (rtx, rtx, rtx);
2916 extern rtx gen_vec_shr_v4si (rtx, rtx, rtx);
2917 extern rtx gen_vec_shr_v2sf (rtx, rtx, rtx);
2918 extern rtx gen_vec_shr_v4sf (rtx, rtx, rtx);
2919 extern rtx gen_vec_shr_v2di (rtx, rtx, rtx);
2920 extern rtx gen_vec_shl_v8qi (rtx, rtx, rtx);
2921 extern rtx gen_vec_shl_v16qi (rtx, rtx, rtx);
2922 extern rtx gen_vec_shl_v4hi (rtx, rtx, rtx);
2923 extern rtx gen_vec_shl_v8hi (rtx, rtx, rtx);
2924 extern rtx gen_vec_shl_v2si (rtx, rtx, rtx);
2925 extern rtx gen_vec_shl_v4si (rtx, rtx, rtx);
2926 extern rtx gen_vec_shl_v2sf (rtx, rtx, rtx);
2927 extern rtx gen_vec_shl_v4sf (rtx, rtx, rtx);
2928 extern rtx gen_vec_shl_v2di (rtx, rtx, rtx);
2929 extern rtx gen_reduc_splus_v8qi (rtx, rtx);
2930 extern rtx gen_reduc_splus_v4hi (rtx, rtx);
2931 extern rtx gen_reduc_splus_v2si (rtx, rtx);
2932 extern rtx gen_reduc_splus_v2sf (rtx, rtx);
2933 extern rtx gen_reduc_splus_v16qi (rtx, rtx);
2934 extern rtx gen_reduc_splus_v8hi (rtx, rtx);
2935 extern rtx gen_reduc_splus_v4si (rtx, rtx);
2936 extern rtx gen_reduc_splus_v4sf (rtx, rtx);
2937 extern rtx gen_reduc_uplus_v8qi (rtx, rtx);
2938 extern rtx gen_reduc_uplus_v16qi (rtx, rtx);
2939 extern rtx gen_reduc_uplus_v4hi (rtx, rtx);
2940 extern rtx gen_reduc_uplus_v8hi (rtx, rtx);
2941 extern rtx gen_reduc_uplus_v2si (rtx, rtx);
2942 extern rtx gen_reduc_uplus_v4si (rtx, rtx);
2943 extern rtx gen_reduc_uplus_v2di (rtx, rtx);
2944 extern rtx gen_reduc_smin_v8qi (rtx, rtx);
2945 extern rtx gen_reduc_smin_v4hi (rtx, rtx);
2946 extern rtx gen_reduc_smin_v2si (rtx, rtx);
2947 extern rtx gen_reduc_smin_v2sf (rtx, rtx);
2948 extern rtx gen_reduc_smin_v16qi (rtx, rtx);
2949 extern rtx gen_reduc_smin_v8hi (rtx, rtx);
2950 extern rtx gen_reduc_smin_v4si (rtx, rtx);
2951 extern rtx gen_reduc_smin_v4sf (rtx, rtx);
2952 extern rtx gen_reduc_smax_v8qi (rtx, rtx);
2953 extern rtx gen_reduc_smax_v4hi (rtx, rtx);
2954 extern rtx gen_reduc_smax_v2si (rtx, rtx);
2955 extern rtx gen_reduc_smax_v2sf (rtx, rtx);
2956 extern rtx gen_reduc_smax_v16qi (rtx, rtx);
2957 extern rtx gen_reduc_smax_v8hi (rtx, rtx);
2958 extern rtx gen_reduc_smax_v4si (rtx, rtx);
2959 extern rtx gen_reduc_smax_v4sf (rtx, rtx);
2960 extern rtx gen_reduc_umin_v8qi (rtx, rtx);
2961 extern rtx gen_reduc_umin_v4hi (rtx, rtx);
2962 extern rtx gen_reduc_umin_v2si (rtx, rtx);
2963 extern rtx gen_reduc_umin_v16qi (rtx, rtx);
2964 extern rtx gen_reduc_umin_v8hi (rtx, rtx);
2965 extern rtx gen_reduc_umin_v4si (rtx, rtx);
2966 extern rtx gen_reduc_umax_v8qi (rtx, rtx);
2967 extern rtx gen_reduc_umax_v4hi (rtx, rtx);
2968 extern rtx gen_reduc_umax_v2si (rtx, rtx);
2969 extern rtx gen_reduc_umax_v16qi (rtx, rtx);
2970 extern rtx gen_reduc_umax_v8hi (rtx, rtx);
2971 extern rtx gen_reduc_umax_v4si (rtx, rtx);
2972 extern rtx gen_neon_vpaddv8qi (rtx, rtx, rtx, rtx);
2973 extern rtx gen_neon_vpaddv4hi (rtx, rtx, rtx, rtx);
2974 extern rtx gen_neon_vpaddv2si (rtx, rtx, rtx, rtx);
2975 extern rtx gen_neon_vpaddv2sf (rtx, rtx, rtx, rtx);
2976 extern rtx gen_neon_vnegv8qi (rtx, rtx, rtx);
2977 extern rtx gen_neon_vnegv16qi (rtx, rtx, rtx);
2978 extern rtx gen_neon_vnegv4hi (rtx, rtx, rtx);
2979 extern rtx gen_neon_vnegv8hi (rtx, rtx, rtx);
2980 extern rtx gen_neon_vnegv2si (rtx, rtx, rtx);
2981 extern rtx gen_neon_vnegv4si (rtx, rtx, rtx);
2982 extern rtx gen_neon_vnegv2sf (rtx, rtx, rtx);
2983 extern rtx gen_neon_vnegv4sf (rtx, rtx, rtx);
2984 extern rtx gen_neon_vmvnv8qi (rtx, rtx, rtx);
2985 extern rtx gen_neon_vmvnv16qi (rtx, rtx, rtx);
2986 extern rtx gen_neon_vmvnv4hi (rtx, rtx, rtx);
2987 extern rtx gen_neon_vmvnv8hi (rtx, rtx, rtx);
2988 extern rtx gen_neon_vmvnv2si (rtx, rtx, rtx);
2989 extern rtx gen_neon_vmvnv4si (rtx, rtx, rtx);
2990 extern rtx gen_neon_vget_lanev8qi (rtx, rtx, rtx, rtx);
2991 extern rtx gen_neon_vget_lanev16qi (rtx, rtx, rtx, rtx);
2992 extern rtx gen_neon_vget_lanev4hi (rtx, rtx, rtx, rtx);
2993 extern rtx gen_neon_vget_lanev8hi (rtx, rtx, rtx, rtx);
2994 extern rtx gen_neon_vget_lanev2si (rtx, rtx, rtx, rtx);
2995 extern rtx gen_neon_vget_lanev4si (rtx, rtx, rtx, rtx);
2996 extern rtx gen_neon_vget_lanev2sf (rtx, rtx, rtx, rtx);
2997 extern rtx gen_neon_vget_lanev4sf (rtx, rtx, rtx, rtx);
2998 extern rtx gen_neon_vcreatev8qi (rtx, rtx);
2999 extern rtx gen_neon_vcreatev4hi (rtx, rtx);
3000 extern rtx gen_neon_vcreatev2si (rtx, rtx);
3001 extern rtx gen_neon_vcreatev2sf (rtx, rtx);
3002 extern rtx gen_neon_vcreatedi (rtx, rtx);
3003 extern rtx gen_neon_vdup_lanedi (rtx, rtx, rtx);
3004 extern rtx gen_neon_vmul_nv4hi (rtx, rtx, rtx, rtx);
3005 extern rtx gen_neon_vmul_nv2si (rtx, rtx, rtx, rtx);
3006 extern rtx gen_neon_vmul_nv2sf (rtx, rtx, rtx, rtx);
3007 extern rtx gen_neon_vmul_nv8hi (rtx, rtx, rtx, rtx);
3008 extern rtx gen_neon_vmul_nv4si (rtx, rtx, rtx, rtx);
3009 extern rtx gen_neon_vmul_nv4sf (rtx, rtx, rtx, rtx);
3010 extern rtx gen_neon_vmull_nv4hi (rtx, rtx, rtx, rtx);
3011 extern rtx gen_neon_vmull_nv2si (rtx, rtx, rtx, rtx);
3012 extern rtx gen_neon_vqdmull_nv4hi (rtx, rtx, rtx, rtx);
3013 extern rtx gen_neon_vqdmull_nv2si (rtx, rtx, rtx, rtx);
3014 extern rtx gen_neon_vqdmulh_nv4hi (rtx, rtx, rtx, rtx);
3015 extern rtx gen_neon_vqdmulh_nv2si (rtx, rtx, rtx, rtx);
3016 extern rtx gen_neon_vqdmulh_nv8hi (rtx, rtx, rtx, rtx);
3017 extern rtx gen_neon_vqdmulh_nv4si (rtx, rtx, rtx, rtx);
3018 extern rtx gen_neon_vmla_nv4hi (rtx, rtx, rtx, rtx, rtx);
3019 extern rtx gen_neon_vmla_nv2si (rtx, rtx, rtx, rtx, rtx);
3020 extern rtx gen_neon_vmla_nv2sf (rtx, rtx, rtx, rtx, rtx);
3021 extern rtx gen_neon_vmla_nv8hi (rtx, rtx, rtx, rtx, rtx);
3022 extern rtx gen_neon_vmla_nv4si (rtx, rtx, rtx, rtx, rtx);
3023 extern rtx gen_neon_vmla_nv4sf (rtx, rtx, rtx, rtx, rtx);
3024 extern rtx gen_neon_vmlal_nv4hi (rtx, rtx, rtx, rtx, rtx);
3025 extern rtx gen_neon_vmlal_nv2si (rtx, rtx, rtx, rtx, rtx);
3026 extern rtx gen_neon_vqdmlal_nv4hi (rtx, rtx, rtx, rtx, rtx);
3027 extern rtx gen_neon_vqdmlal_nv2si (rtx, rtx, rtx, rtx, rtx);
3028 extern rtx gen_neon_vmls_nv4hi (rtx, rtx, rtx, rtx, rtx);
3029 extern rtx gen_neon_vmls_nv2si (rtx, rtx, rtx, rtx, rtx);
3030 extern rtx gen_neon_vmls_nv2sf (rtx, rtx, rtx, rtx, rtx);
3031 extern rtx gen_neon_vmls_nv8hi (rtx, rtx, rtx, rtx, rtx);
3032 extern rtx gen_neon_vmls_nv4si (rtx, rtx, rtx, rtx, rtx);
3033 extern rtx gen_neon_vmls_nv4sf (rtx, rtx, rtx, rtx, rtx);
3034 extern rtx gen_neon_vmlsl_nv4hi (rtx, rtx, rtx, rtx, rtx);
3035 extern rtx gen_neon_vmlsl_nv2si (rtx, rtx, rtx, rtx, rtx);
3036 extern rtx gen_neon_vqdmlsl_nv4hi (rtx, rtx, rtx, rtx, rtx);
3037 extern rtx gen_neon_vqdmlsl_nv2si (rtx, rtx, rtx, rtx, rtx);
3038 extern rtx gen_neon_vbslv8qi (rtx, rtx, rtx, rtx);
3039 extern rtx gen_neon_vbslv16qi (rtx, rtx, rtx, rtx);
3040 extern rtx gen_neon_vbslv4hi (rtx, rtx, rtx, rtx);
3041 extern rtx gen_neon_vbslv8hi (rtx, rtx, rtx, rtx);
3042 extern rtx gen_neon_vbslv2si (rtx, rtx, rtx, rtx);
3043 extern rtx gen_neon_vbslv4si (rtx, rtx, rtx, rtx);
3044 extern rtx gen_neon_vbslv2sf (rtx, rtx, rtx, rtx);
3045 extern rtx gen_neon_vbslv4sf (rtx, rtx, rtx, rtx);
3046 extern rtx gen_neon_vbsldi (rtx, rtx, rtx, rtx);
3047 extern rtx gen_neon_vbslv2di (rtx, rtx, rtx, rtx);
3048 extern rtx gen_neon_vtrnv8qi (rtx, rtx, rtx);
3049 extern rtx gen_neon_vtrnv16qi (rtx, rtx, rtx);
3050 extern rtx gen_neon_vtrnv4hi (rtx, rtx, rtx);
3051 extern rtx gen_neon_vtrnv8hi (rtx, rtx, rtx);
3052 extern rtx gen_neon_vtrnv2si (rtx, rtx, rtx);
3053 extern rtx gen_neon_vtrnv4si (rtx, rtx, rtx);
3054 extern rtx gen_neon_vtrnv2sf (rtx, rtx, rtx);
3055 extern rtx gen_neon_vtrnv4sf (rtx, rtx, rtx);
3056 extern rtx gen_neon_vzipv8qi (rtx, rtx, rtx);
3057 extern rtx gen_neon_vzipv16qi (rtx, rtx, rtx);
3058 extern rtx gen_neon_vzipv4hi (rtx, rtx, rtx);
3059 extern rtx gen_neon_vzipv8hi (rtx, rtx, rtx);
3060 extern rtx gen_neon_vzipv2si (rtx, rtx, rtx);
3061 extern rtx gen_neon_vzipv4si (rtx, rtx, rtx);
3062 extern rtx gen_neon_vzipv2sf (rtx, rtx, rtx);
3063 extern rtx gen_neon_vzipv4sf (rtx, rtx, rtx);
3064 extern rtx gen_neon_vuzpv8qi (rtx, rtx, rtx);
3065 extern rtx gen_neon_vuzpv16qi (rtx, rtx, rtx);
3066 extern rtx gen_neon_vuzpv4hi (rtx, rtx, rtx);
3067 extern rtx gen_neon_vuzpv8hi (rtx, rtx, rtx);
3068 extern rtx gen_neon_vuzpv2si (rtx, rtx, rtx);
3069 extern rtx gen_neon_vuzpv4si (rtx, rtx, rtx);
3070 extern rtx gen_neon_vuzpv2sf (rtx, rtx, rtx);
3071 extern rtx gen_neon_vuzpv4sf (rtx, rtx, rtx);
3072 extern rtx gen_neon_vreinterpretv8qiv8qi (rtx, rtx);
3073 extern rtx gen_neon_vreinterpretv8qiv4hi (rtx, rtx);
3074 extern rtx gen_neon_vreinterpretv8qiv2si (rtx, rtx);
3075 extern rtx gen_neon_vreinterpretv8qiv2sf (rtx, rtx);
3076 extern rtx gen_neon_vreinterpretv8qidi (rtx, rtx);
3077 extern rtx gen_neon_vreinterpretv4hiv8qi (rtx, rtx);
3078 extern rtx gen_neon_vreinterpretv4hiv4hi (rtx, rtx);
3079 extern rtx gen_neon_vreinterpretv4hiv2si (rtx, rtx);
3080 extern rtx gen_neon_vreinterpretv4hiv2sf (rtx, rtx);
3081 extern rtx gen_neon_vreinterpretv4hidi (rtx, rtx);
3082 extern rtx gen_neon_vreinterpretv2siv8qi (rtx, rtx);
3083 extern rtx gen_neon_vreinterpretv2siv4hi (rtx, rtx);
3084 extern rtx gen_neon_vreinterpretv2siv2si (rtx, rtx);
3085 extern rtx gen_neon_vreinterpretv2siv2sf (rtx, rtx);
3086 extern rtx gen_neon_vreinterpretv2sidi (rtx, rtx);
3087 extern rtx gen_neon_vreinterpretv2sfv8qi (rtx, rtx);
3088 extern rtx gen_neon_vreinterpretv2sfv4hi (rtx, rtx);
3089 extern rtx gen_neon_vreinterpretv2sfv2si (rtx, rtx);
3090 extern rtx gen_neon_vreinterpretv2sfv2sf (rtx, rtx);
3091 extern rtx gen_neon_vreinterpretv2sfdi (rtx, rtx);
3092 extern rtx gen_neon_vreinterpretdiv8qi (rtx, rtx);
3093 extern rtx gen_neon_vreinterpretdiv4hi (rtx, rtx);
3094 extern rtx gen_neon_vreinterpretdiv2si (rtx, rtx);
3095 extern rtx gen_neon_vreinterpretdiv2sf (rtx, rtx);
3096 extern rtx gen_neon_vreinterpretdidi (rtx, rtx);
3097 extern rtx gen_neon_vreinterpretv16qiv16qi (rtx, rtx);
3098 extern rtx gen_neon_vreinterpretv16qiv8hi (rtx, rtx);
3099 extern rtx gen_neon_vreinterpretv16qiv4si (rtx, rtx);
3100 extern rtx gen_neon_vreinterpretv16qiv4sf (rtx, rtx);
3101 extern rtx gen_neon_vreinterpretv16qiv2di (rtx, rtx);
3102 extern rtx gen_neon_vreinterpretv8hiv16qi (rtx, rtx);
3103 extern rtx gen_neon_vreinterpretv8hiv8hi (rtx, rtx);
3104 extern rtx gen_neon_vreinterpretv8hiv4si (rtx, rtx);
3105 extern rtx gen_neon_vreinterpretv8hiv4sf (rtx, rtx);
3106 extern rtx gen_neon_vreinterpretv8hiv2di (rtx, rtx);
3107 extern rtx gen_neon_vreinterpretv4siv16qi (rtx, rtx);
3108 extern rtx gen_neon_vreinterpretv4siv8hi (rtx, rtx);
3109 extern rtx gen_neon_vreinterpretv4siv4si (rtx, rtx);
3110 extern rtx gen_neon_vreinterpretv4siv4sf (rtx, rtx);
3111 extern rtx gen_neon_vreinterpretv4siv2di (rtx, rtx);
3112 extern rtx gen_neon_vreinterpretv4sfv16qi (rtx, rtx);
3113 extern rtx gen_neon_vreinterpretv4sfv8hi (rtx, rtx);
3114 extern rtx gen_neon_vreinterpretv4sfv4si (rtx, rtx);
3115 extern rtx gen_neon_vreinterpretv4sfv4sf (rtx, rtx);
3116 extern rtx gen_neon_vreinterpretv4sfv2di (rtx, rtx);
3117 extern rtx gen_neon_vreinterpretv2div16qi (rtx, rtx);
3118 extern rtx gen_neon_vreinterpretv2div8hi (rtx, rtx);
3119 extern rtx gen_neon_vreinterpretv2div4si (rtx, rtx);
3120 extern rtx gen_neon_vreinterpretv2div4sf (rtx, rtx);
3121 extern rtx gen_neon_vreinterpretv2div2di (rtx, rtx);
3122 extern rtx gen_neon_vld3v16qi (rtx, rtx);
3123 extern rtx gen_neon_vld3v8hi (rtx, rtx);
3124 extern rtx gen_neon_vld3v4si (rtx, rtx);
3125 extern rtx gen_neon_vld3v4sf (rtx, rtx);
3126 extern rtx gen_neon_vst3v16qi (rtx, rtx);
3127 extern rtx gen_neon_vst3v8hi (rtx, rtx);
3128 extern rtx gen_neon_vst3v4si (rtx, rtx);
3129 extern rtx gen_neon_vst3v4sf (rtx, rtx);
3130 extern rtx gen_neon_vld4v16qi (rtx, rtx);
3131 extern rtx gen_neon_vld4v8hi (rtx, rtx);
3132 extern rtx gen_neon_vld4v4si (rtx, rtx);
3133 extern rtx gen_neon_vld4v4sf (rtx, rtx);
3134 extern rtx gen_neon_vst4v16qi (rtx, rtx);
3135 extern rtx gen_neon_vst4v8hi (rtx, rtx);
3136 extern rtx gen_neon_vst4v4si (rtx, rtx);
3137 extern rtx gen_neon_vst4v4sf (rtx, rtx);
3138 extern rtx gen_neon_vandv8qi (rtx, rtx, rtx, rtx);
3139 extern rtx gen_neon_vandv16qi (rtx, rtx, rtx, rtx);
3140 extern rtx gen_neon_vandv4hi (rtx, rtx, rtx, rtx);
3141 extern rtx gen_neon_vandv8hi (rtx, rtx, rtx, rtx);
3142 extern rtx gen_neon_vandv2si (rtx, rtx, rtx, rtx);
3143 extern rtx gen_neon_vandv4si (rtx, rtx, rtx, rtx);
3144 extern rtx gen_neon_vandv2sf (rtx, rtx, rtx, rtx);
3145 extern rtx gen_neon_vandv4sf (rtx, rtx, rtx, rtx);
3146 extern rtx gen_neon_vanddi (rtx, rtx, rtx, rtx);
3147 extern rtx gen_neon_vandv2di (rtx, rtx, rtx, rtx);
3148 extern rtx gen_neon_vorrv8qi (rtx, rtx, rtx, rtx);
3149 extern rtx gen_neon_vorrv16qi (rtx, rtx, rtx, rtx);
3150 extern rtx gen_neon_vorrv4hi (rtx, rtx, rtx, rtx);
3151 extern rtx gen_neon_vorrv8hi (rtx, rtx, rtx, rtx);
3152 extern rtx gen_neon_vorrv2si (rtx, rtx, rtx, rtx);
3153 extern rtx gen_neon_vorrv4si (rtx, rtx, rtx, rtx);
3154 extern rtx gen_neon_vorrv2sf (rtx, rtx, rtx, rtx);
3155 extern rtx gen_neon_vorrv4sf (rtx, rtx, rtx, rtx);
3156 extern rtx gen_neon_vorrdi (rtx, rtx, rtx, rtx);
3157 extern rtx gen_neon_vorrv2di (rtx, rtx, rtx, rtx);
3158 extern rtx gen_neon_veorv8qi (rtx, rtx, rtx, rtx);
3159 extern rtx gen_neon_veorv16qi (rtx, rtx, rtx, rtx);
3160 extern rtx gen_neon_veorv4hi (rtx, rtx, rtx, rtx);
3161 extern rtx gen_neon_veorv8hi (rtx, rtx, rtx, rtx);
3162 extern rtx gen_neon_veorv2si (rtx, rtx, rtx, rtx);
3163 extern rtx gen_neon_veorv4si (rtx, rtx, rtx, rtx);
3164 extern rtx gen_neon_veorv2sf (rtx, rtx, rtx, rtx);
3165 extern rtx gen_neon_veorv4sf (rtx, rtx, rtx, rtx);
3166 extern rtx gen_neon_veordi (rtx, rtx, rtx, rtx);
3167 extern rtx gen_neon_veorv2di (rtx, rtx, rtx, rtx);
3168 extern rtx gen_neon_vbicv8qi (rtx, rtx, rtx, rtx);
3169 extern rtx gen_neon_vbicv16qi (rtx, rtx, rtx, rtx);
3170 extern rtx gen_neon_vbicv4hi (rtx, rtx, rtx, rtx);
3171 extern rtx gen_neon_vbicv8hi (rtx, rtx, rtx, rtx);
3172 extern rtx gen_neon_vbicv2si (rtx, rtx, rtx, rtx);
3173 extern rtx gen_neon_vbicv4si (rtx, rtx, rtx, rtx);
3174 extern rtx gen_neon_vbicv2sf (rtx, rtx, rtx, rtx);
3175 extern rtx gen_neon_vbicv4sf (rtx, rtx, rtx, rtx);
3176 extern rtx gen_neon_vbicdi (rtx, rtx, rtx, rtx);
3177 extern rtx gen_neon_vbicv2di (rtx, rtx, rtx, rtx);
3178 extern rtx gen_neon_vornv8qi (rtx, rtx, rtx, rtx);
3179 extern rtx gen_neon_vornv16qi (rtx, rtx, rtx, rtx);
3180 extern rtx gen_neon_vornv4hi (rtx, rtx, rtx, rtx);
3181 extern rtx gen_neon_vornv8hi (rtx, rtx, rtx, rtx);
3182 extern rtx gen_neon_vornv2si (rtx, rtx, rtx, rtx);
3183 extern rtx gen_neon_vornv4si (rtx, rtx, rtx, rtx);
3184 extern rtx gen_neon_vornv2sf (rtx, rtx, rtx, rtx);
3185 extern rtx gen_neon_vornv4sf (rtx, rtx, rtx, rtx);
3186 extern rtx gen_neon_vorndi (rtx, rtx, rtx, rtx);
3187 extern rtx gen_neon_vornv2di (rtx, rtx, rtx, rtx);
3189 #endif /* GCC_INSN_FLAGS_H */