1 // REQUIRES: hexagon-registered-target
2 // RUN: %clang_cc1 -triple hexagon-unknown-elf -target-cpu hexagonv65 -target-feature +hvxv65 -target-feature +hvx-length128b -emit-llvm %s -o - | FileCheck %s
5 int v64
__attribute__((__vector_size__(64)));
6 int v128
__attribute__((__vector_size__(128)));
7 int v256
__attribute__((__vector_size__(256)));
9 // CHECK: @llvm.hexagon.A2.abs
10 __builtin_HEXAGON_A2_abs(0);
11 // CHECK: @llvm.hexagon.A2.absp
12 __builtin_HEXAGON_A2_absp(0);
13 // CHECK: @llvm.hexagon.A2.abssat
14 __builtin_HEXAGON_A2_abssat(0);
15 // CHECK: @llvm.hexagon.A2.add
16 __builtin_HEXAGON_A2_add(0, 0);
17 // CHECK: @llvm.hexagon.A2.addh.h16.hh
18 __builtin_HEXAGON_A2_addh_h16_hh(0, 0);
19 // CHECK: @llvm.hexagon.A2.addh.h16.hl
20 __builtin_HEXAGON_A2_addh_h16_hl(0, 0);
21 // CHECK: @llvm.hexagon.A2.addh.h16.lh
22 __builtin_HEXAGON_A2_addh_h16_lh(0, 0);
23 // CHECK: @llvm.hexagon.A2.addh.h16.ll
24 __builtin_HEXAGON_A2_addh_h16_ll(0, 0);
25 // CHECK: @llvm.hexagon.A2.addh.h16.sat.hh
26 __builtin_HEXAGON_A2_addh_h16_sat_hh(0, 0);
27 // CHECK: @llvm.hexagon.A2.addh.h16.sat.hl
28 __builtin_HEXAGON_A2_addh_h16_sat_hl(0, 0);
29 // CHECK: @llvm.hexagon.A2.addh.h16.sat.lh
30 __builtin_HEXAGON_A2_addh_h16_sat_lh(0, 0);
31 // CHECK: @llvm.hexagon.A2.addh.h16.sat.ll
32 __builtin_HEXAGON_A2_addh_h16_sat_ll(0, 0);
33 // CHECK: @llvm.hexagon.A2.addh.l16.hl
34 __builtin_HEXAGON_A2_addh_l16_hl(0, 0);
35 // CHECK: @llvm.hexagon.A2.addh.l16.ll
36 __builtin_HEXAGON_A2_addh_l16_ll(0, 0);
37 // CHECK: @llvm.hexagon.A2.addh.l16.sat.hl
38 __builtin_HEXAGON_A2_addh_l16_sat_hl(0, 0);
39 // CHECK: @llvm.hexagon.A2.addh.l16.sat.ll
40 __builtin_HEXAGON_A2_addh_l16_sat_ll(0, 0);
41 // CHECK: @llvm.hexagon.A2.addi
42 __builtin_HEXAGON_A2_addi(0, 0);
43 // CHECK: @llvm.hexagon.A2.addp
44 __builtin_HEXAGON_A2_addp(0, 0);
45 // CHECK: @llvm.hexagon.A2.addpsat
46 __builtin_HEXAGON_A2_addpsat(0, 0);
47 // CHECK: @llvm.hexagon.A2.addsat
48 __builtin_HEXAGON_A2_addsat(0, 0);
49 // CHECK: @llvm.hexagon.A2.addsp
50 __builtin_HEXAGON_A2_addsp(0, 0);
51 // CHECK: @llvm.hexagon.A2.and
52 __builtin_HEXAGON_A2_and(0, 0);
53 // CHECK: @llvm.hexagon.A2.andir
54 __builtin_HEXAGON_A2_andir(0, 0);
55 // CHECK: @llvm.hexagon.A2.andp
56 __builtin_HEXAGON_A2_andp(0, 0);
57 // CHECK: @llvm.hexagon.A2.aslh
58 __builtin_HEXAGON_A2_aslh(0);
59 // CHECK: @llvm.hexagon.A2.asrh
60 __builtin_HEXAGON_A2_asrh(0);
61 // CHECK: @llvm.hexagon.A2.combine.hh
62 __builtin_HEXAGON_A2_combine_hh(0, 0);
63 // CHECK: @llvm.hexagon.A2.combine.hl
64 __builtin_HEXAGON_A2_combine_hl(0, 0);
65 // CHECK: @llvm.hexagon.A2.combine.lh
66 __builtin_HEXAGON_A2_combine_lh(0, 0);
67 // CHECK: @llvm.hexagon.A2.combine.ll
68 __builtin_HEXAGON_A2_combine_ll(0, 0);
69 // CHECK: @llvm.hexagon.A2.combineii
70 __builtin_HEXAGON_A2_combineii(0, 0);
71 // CHECK: @llvm.hexagon.A2.combinew
72 __builtin_HEXAGON_A2_combinew(0, 0);
73 // CHECK: @llvm.hexagon.A2.max
74 __builtin_HEXAGON_A2_max(0, 0);
75 // CHECK: @llvm.hexagon.A2.maxp
76 __builtin_HEXAGON_A2_maxp(0, 0);
77 // CHECK: @llvm.hexagon.A2.maxu
78 __builtin_HEXAGON_A2_maxu(0, 0);
79 // CHECK: @llvm.hexagon.A2.maxup
80 __builtin_HEXAGON_A2_maxup(0, 0);
81 // CHECK: @llvm.hexagon.A2.min
82 __builtin_HEXAGON_A2_min(0, 0);
83 // CHECK: @llvm.hexagon.A2.minp
84 __builtin_HEXAGON_A2_minp(0, 0);
85 // CHECK: @llvm.hexagon.A2.minu
86 __builtin_HEXAGON_A2_minu(0, 0);
87 // CHECK: @llvm.hexagon.A2.minup
88 __builtin_HEXAGON_A2_minup(0, 0);
89 // CHECK: @llvm.hexagon.A2.neg
90 __builtin_HEXAGON_A2_neg(0);
91 // CHECK: @llvm.hexagon.A2.negp
92 __builtin_HEXAGON_A2_negp(0);
93 // CHECK: @llvm.hexagon.A2.negsat
94 __builtin_HEXAGON_A2_negsat(0);
95 // CHECK: @llvm.hexagon.A2.not
96 __builtin_HEXAGON_A2_not(0);
97 // CHECK: @llvm.hexagon.A2.notp
98 __builtin_HEXAGON_A2_notp(0);
99 // CHECK: @llvm.hexagon.A2.or
100 __builtin_HEXAGON_A2_or(0, 0);
101 // CHECK: @llvm.hexagon.A2.orir
102 __builtin_HEXAGON_A2_orir(0, 0);
103 // CHECK: @llvm.hexagon.A2.orp
104 __builtin_HEXAGON_A2_orp(0, 0);
105 // CHECK: @llvm.hexagon.A2.roundsat
106 __builtin_HEXAGON_A2_roundsat(0);
107 // CHECK: @llvm.hexagon.A2.sat
108 __builtin_HEXAGON_A2_sat(0);
109 // CHECK: @llvm.hexagon.A2.satb
110 __builtin_HEXAGON_A2_satb(0);
111 // CHECK: @llvm.hexagon.A2.sath
112 __builtin_HEXAGON_A2_sath(0);
113 // CHECK: @llvm.hexagon.A2.satub
114 __builtin_HEXAGON_A2_satub(0);
115 // CHECK: @llvm.hexagon.A2.satuh
116 __builtin_HEXAGON_A2_satuh(0);
117 // CHECK: @llvm.hexagon.A2.sub
118 __builtin_HEXAGON_A2_sub(0, 0);
119 // CHECK: @llvm.hexagon.A2.subh.h16.hh
120 __builtin_HEXAGON_A2_subh_h16_hh(0, 0);
121 // CHECK: @llvm.hexagon.A2.subh.h16.hl
122 __builtin_HEXAGON_A2_subh_h16_hl(0, 0);
123 // CHECK: @llvm.hexagon.A2.subh.h16.lh
124 __builtin_HEXAGON_A2_subh_h16_lh(0, 0);
125 // CHECK: @llvm.hexagon.A2.subh.h16.ll
126 __builtin_HEXAGON_A2_subh_h16_ll(0, 0);
127 // CHECK: @llvm.hexagon.A2.subh.h16.sat.hh
128 __builtin_HEXAGON_A2_subh_h16_sat_hh(0, 0);
129 // CHECK: @llvm.hexagon.A2.subh.h16.sat.hl
130 __builtin_HEXAGON_A2_subh_h16_sat_hl(0, 0);
131 // CHECK: @llvm.hexagon.A2.subh.h16.sat.lh
132 __builtin_HEXAGON_A2_subh_h16_sat_lh(0, 0);
133 // CHECK: @llvm.hexagon.A2.subh.h16.sat.ll
134 __builtin_HEXAGON_A2_subh_h16_sat_ll(0, 0);
135 // CHECK: @llvm.hexagon.A2.subh.l16.hl
136 __builtin_HEXAGON_A2_subh_l16_hl(0, 0);
137 // CHECK: @llvm.hexagon.A2.subh.l16.ll
138 __builtin_HEXAGON_A2_subh_l16_ll(0, 0);
139 // CHECK: @llvm.hexagon.A2.subh.l16.sat.hl
140 __builtin_HEXAGON_A2_subh_l16_sat_hl(0, 0);
141 // CHECK: @llvm.hexagon.A2.subh.l16.sat.ll
142 __builtin_HEXAGON_A2_subh_l16_sat_ll(0, 0);
143 // CHECK: @llvm.hexagon.A2.subp
144 __builtin_HEXAGON_A2_subp(0, 0);
145 // CHECK: @llvm.hexagon.A2.subri
146 __builtin_HEXAGON_A2_subri(0, 0);
147 // CHECK: @llvm.hexagon.A2.subsat
148 __builtin_HEXAGON_A2_subsat(0, 0);
149 // CHECK: @llvm.hexagon.A2.svaddh
150 __builtin_HEXAGON_A2_svaddh(0, 0);
151 // CHECK: @llvm.hexagon.A2.svaddhs
152 __builtin_HEXAGON_A2_svaddhs(0, 0);
153 // CHECK: @llvm.hexagon.A2.svadduhs
154 __builtin_HEXAGON_A2_svadduhs(0, 0);
155 // CHECK: @llvm.hexagon.A2.svavgh
156 __builtin_HEXAGON_A2_svavgh(0, 0);
157 // CHECK: @llvm.hexagon.A2.svavghs
158 __builtin_HEXAGON_A2_svavghs(0, 0);
159 // CHECK: @llvm.hexagon.A2.svnavgh
160 __builtin_HEXAGON_A2_svnavgh(0, 0);
161 // CHECK: @llvm.hexagon.A2.svsubh
162 __builtin_HEXAGON_A2_svsubh(0, 0);
163 // CHECK: @llvm.hexagon.A2.svsubhs
164 __builtin_HEXAGON_A2_svsubhs(0, 0);
165 // CHECK: @llvm.hexagon.A2.svsubuhs
166 __builtin_HEXAGON_A2_svsubuhs(0, 0);
167 // CHECK: @llvm.hexagon.A2.swiz
168 __builtin_HEXAGON_A2_swiz(0);
169 // CHECK: @llvm.hexagon.A2.sxtb
170 __builtin_HEXAGON_A2_sxtb(0);
171 // CHECK: @llvm.hexagon.A2.sxth
172 __builtin_HEXAGON_A2_sxth(0);
173 // CHECK: @llvm.hexagon.A2.sxtw
174 __builtin_HEXAGON_A2_sxtw(0);
175 // CHECK: @llvm.hexagon.A2.tfr
176 __builtin_HEXAGON_A2_tfr(0);
177 // CHECK: @llvm.hexagon.A2.tfrih
178 __builtin_HEXAGON_A2_tfrih(0, 0);
179 // CHECK: @llvm.hexagon.A2.tfril
180 __builtin_HEXAGON_A2_tfril(0, 0);
181 // CHECK: @llvm.hexagon.A2.tfrp
182 __builtin_HEXAGON_A2_tfrp(0);
183 // CHECK: @llvm.hexagon.A2.tfrpi
184 __builtin_HEXAGON_A2_tfrpi(0);
185 // CHECK: @llvm.hexagon.A2.tfrsi
186 __builtin_HEXAGON_A2_tfrsi(0);
187 // CHECK: @llvm.hexagon.A2.vabsh
188 __builtin_HEXAGON_A2_vabsh(0);
189 // CHECK: @llvm.hexagon.A2.vabshsat
190 __builtin_HEXAGON_A2_vabshsat(0);
191 // CHECK: @llvm.hexagon.A2.vabsw
192 __builtin_HEXAGON_A2_vabsw(0);
193 // CHECK: @llvm.hexagon.A2.vabswsat
194 __builtin_HEXAGON_A2_vabswsat(0);
195 // CHECK: @llvm.hexagon.A2.vaddb.map
196 __builtin_HEXAGON_A2_vaddb_map(0, 0);
197 // CHECK: @llvm.hexagon.A2.vaddh
198 __builtin_HEXAGON_A2_vaddh(0, 0);
199 // CHECK: @llvm.hexagon.A2.vaddhs
200 __builtin_HEXAGON_A2_vaddhs(0, 0);
201 // CHECK: @llvm.hexagon.A2.vaddub
202 __builtin_HEXAGON_A2_vaddub(0, 0);
203 // CHECK: @llvm.hexagon.A2.vaddubs
204 __builtin_HEXAGON_A2_vaddubs(0, 0);
205 // CHECK: @llvm.hexagon.A2.vadduhs
206 __builtin_HEXAGON_A2_vadduhs(0, 0);
207 // CHECK: @llvm.hexagon.A2.vaddw
208 __builtin_HEXAGON_A2_vaddw(0, 0);
209 // CHECK: @llvm.hexagon.A2.vaddws
210 __builtin_HEXAGON_A2_vaddws(0, 0);
211 // CHECK: @llvm.hexagon.A2.vavgh
212 __builtin_HEXAGON_A2_vavgh(0, 0);
213 // CHECK: @llvm.hexagon.A2.vavghcr
214 __builtin_HEXAGON_A2_vavghcr(0, 0);
215 // CHECK: @llvm.hexagon.A2.vavghr
216 __builtin_HEXAGON_A2_vavghr(0, 0);
217 // CHECK: @llvm.hexagon.A2.vavgub
218 __builtin_HEXAGON_A2_vavgub(0, 0);
219 // CHECK: @llvm.hexagon.A2.vavgubr
220 __builtin_HEXAGON_A2_vavgubr(0, 0);
221 // CHECK: @llvm.hexagon.A2.vavguh
222 __builtin_HEXAGON_A2_vavguh(0, 0);
223 // CHECK: @llvm.hexagon.A2.vavguhr
224 __builtin_HEXAGON_A2_vavguhr(0, 0);
225 // CHECK: @llvm.hexagon.A2.vavguw
226 __builtin_HEXAGON_A2_vavguw(0, 0);
227 // CHECK: @llvm.hexagon.A2.vavguwr
228 __builtin_HEXAGON_A2_vavguwr(0, 0);
229 // CHECK: @llvm.hexagon.A2.vavgw
230 __builtin_HEXAGON_A2_vavgw(0, 0);
231 // CHECK: @llvm.hexagon.A2.vavgwcr
232 __builtin_HEXAGON_A2_vavgwcr(0, 0);
233 // CHECK: @llvm.hexagon.A2.vavgwr
234 __builtin_HEXAGON_A2_vavgwr(0, 0);
235 // CHECK: @llvm.hexagon.A2.vcmpbeq
236 __builtin_HEXAGON_A2_vcmpbeq(0, 0);
237 // CHECK: @llvm.hexagon.A2.vcmpbgtu
238 __builtin_HEXAGON_A2_vcmpbgtu(0, 0);
239 // CHECK: @llvm.hexagon.A2.vcmpheq
240 __builtin_HEXAGON_A2_vcmpheq(0, 0);
241 // CHECK: @llvm.hexagon.A2.vcmphgt
242 __builtin_HEXAGON_A2_vcmphgt(0, 0);
243 // CHECK: @llvm.hexagon.A2.vcmphgtu
244 __builtin_HEXAGON_A2_vcmphgtu(0, 0);
245 // CHECK: @llvm.hexagon.A2.vcmpweq
246 __builtin_HEXAGON_A2_vcmpweq(0, 0);
247 // CHECK: @llvm.hexagon.A2.vcmpwgt
248 __builtin_HEXAGON_A2_vcmpwgt(0, 0);
249 // CHECK: @llvm.hexagon.A2.vcmpwgtu
250 __builtin_HEXAGON_A2_vcmpwgtu(0, 0);
251 // CHECK: @llvm.hexagon.A2.vconj
252 __builtin_HEXAGON_A2_vconj(0);
253 // CHECK: @llvm.hexagon.A2.vmaxb
254 __builtin_HEXAGON_A2_vmaxb(0, 0);
255 // CHECK: @llvm.hexagon.A2.vmaxh
256 __builtin_HEXAGON_A2_vmaxh(0, 0);
257 // CHECK: @llvm.hexagon.A2.vmaxub
258 __builtin_HEXAGON_A2_vmaxub(0, 0);
259 // CHECK: @llvm.hexagon.A2.vmaxuh
260 __builtin_HEXAGON_A2_vmaxuh(0, 0);
261 // CHECK: @llvm.hexagon.A2.vmaxuw
262 __builtin_HEXAGON_A2_vmaxuw(0, 0);
263 // CHECK: @llvm.hexagon.A2.vmaxw
264 __builtin_HEXAGON_A2_vmaxw(0, 0);
265 // CHECK: @llvm.hexagon.A2.vminb
266 __builtin_HEXAGON_A2_vminb(0, 0);
267 // CHECK: @llvm.hexagon.A2.vminh
268 __builtin_HEXAGON_A2_vminh(0, 0);
269 // CHECK: @llvm.hexagon.A2.vminub
270 __builtin_HEXAGON_A2_vminub(0, 0);
271 // CHECK: @llvm.hexagon.A2.vminuh
272 __builtin_HEXAGON_A2_vminuh(0, 0);
273 // CHECK: @llvm.hexagon.A2.vminuw
274 __builtin_HEXAGON_A2_vminuw(0, 0);
275 // CHECK: @llvm.hexagon.A2.vminw
276 __builtin_HEXAGON_A2_vminw(0, 0);
277 // CHECK: @llvm.hexagon.A2.vnavgh
278 __builtin_HEXAGON_A2_vnavgh(0, 0);
279 // CHECK: @llvm.hexagon.A2.vnavghcr
280 __builtin_HEXAGON_A2_vnavghcr(0, 0);
281 // CHECK: @llvm.hexagon.A2.vnavghr
282 __builtin_HEXAGON_A2_vnavghr(0, 0);
283 // CHECK: @llvm.hexagon.A2.vnavgw
284 __builtin_HEXAGON_A2_vnavgw(0, 0);
285 // CHECK: @llvm.hexagon.A2.vnavgwcr
286 __builtin_HEXAGON_A2_vnavgwcr(0, 0);
287 // CHECK: @llvm.hexagon.A2.vnavgwr
288 __builtin_HEXAGON_A2_vnavgwr(0, 0);
289 // CHECK: @llvm.hexagon.A2.vraddub
290 __builtin_HEXAGON_A2_vraddub(0, 0);
291 // CHECK: @llvm.hexagon.A2.vraddub.acc
292 __builtin_HEXAGON_A2_vraddub_acc(0, 0, 0);
293 // CHECK: @llvm.hexagon.A2.vrsadub
294 __builtin_HEXAGON_A2_vrsadub(0, 0);
295 // CHECK: @llvm.hexagon.A2.vrsadub.acc
296 __builtin_HEXAGON_A2_vrsadub_acc(0, 0, 0);
297 // CHECK: @llvm.hexagon.A2.vsubb.map
298 __builtin_HEXAGON_A2_vsubb_map(0, 0);
299 // CHECK: @llvm.hexagon.A2.vsubh
300 __builtin_HEXAGON_A2_vsubh(0, 0);
301 // CHECK: @llvm.hexagon.A2.vsubhs
302 __builtin_HEXAGON_A2_vsubhs(0, 0);
303 // CHECK: @llvm.hexagon.A2.vsubub
304 __builtin_HEXAGON_A2_vsubub(0, 0);
305 // CHECK: @llvm.hexagon.A2.vsububs
306 __builtin_HEXAGON_A2_vsububs(0, 0);
307 // CHECK: @llvm.hexagon.A2.vsubuhs
308 __builtin_HEXAGON_A2_vsubuhs(0, 0);
309 // CHECK: @llvm.hexagon.A2.vsubw
310 __builtin_HEXAGON_A2_vsubw(0, 0);
311 // CHECK: @llvm.hexagon.A2.vsubws
312 __builtin_HEXAGON_A2_vsubws(0, 0);
313 // CHECK: @llvm.hexagon.A2.xor
314 __builtin_HEXAGON_A2_xor(0, 0);
315 // CHECK: @llvm.hexagon.A2.xorp
316 __builtin_HEXAGON_A2_xorp(0, 0);
317 // CHECK: @llvm.hexagon.A2.zxtb
318 __builtin_HEXAGON_A2_zxtb(0);
319 // CHECK: @llvm.hexagon.A2.zxth
320 __builtin_HEXAGON_A2_zxth(0);
321 // CHECK: @llvm.hexagon.A4.andn
322 __builtin_HEXAGON_A4_andn(0, 0);
323 // CHECK: @llvm.hexagon.A4.andnp
324 __builtin_HEXAGON_A4_andnp(0, 0);
325 // CHECK: @llvm.hexagon.A4.bitsplit
326 __builtin_HEXAGON_A4_bitsplit(0, 0);
327 // CHECK: @llvm.hexagon.A4.bitspliti
328 __builtin_HEXAGON_A4_bitspliti(0, 0);
329 // CHECK: @llvm.hexagon.A4.boundscheck
330 __builtin_HEXAGON_A4_boundscheck(0, 0);
331 // CHECK: @llvm.hexagon.A4.cmpbeq
332 __builtin_HEXAGON_A4_cmpbeq(0, 0);
333 // CHECK: @llvm.hexagon.A4.cmpbeqi
334 __builtin_HEXAGON_A4_cmpbeqi(0, 0);
335 // CHECK: @llvm.hexagon.A4.cmpbgt
336 __builtin_HEXAGON_A4_cmpbgt(0, 0);
337 // CHECK: @llvm.hexagon.A4.cmpbgti
338 __builtin_HEXAGON_A4_cmpbgti(0, 0);
339 // CHECK: @llvm.hexagon.A4.cmpbgtu
340 __builtin_HEXAGON_A4_cmpbgtu(0, 0);
341 // CHECK: @llvm.hexagon.A4.cmpbgtui
342 __builtin_HEXAGON_A4_cmpbgtui(0, 0);
343 // CHECK: @llvm.hexagon.A4.cmpheq
344 __builtin_HEXAGON_A4_cmpheq(0, 0);
345 // CHECK: @llvm.hexagon.A4.cmpheqi
346 __builtin_HEXAGON_A4_cmpheqi(0, 0);
347 // CHECK: @llvm.hexagon.A4.cmphgt
348 __builtin_HEXAGON_A4_cmphgt(0, 0);
349 // CHECK: @llvm.hexagon.A4.cmphgti
350 __builtin_HEXAGON_A4_cmphgti(0, 0);
351 // CHECK: @llvm.hexagon.A4.cmphgtu
352 __builtin_HEXAGON_A4_cmphgtu(0, 0);
353 // CHECK: @llvm.hexagon.A4.cmphgtui
354 __builtin_HEXAGON_A4_cmphgtui(0, 0);
355 // CHECK: @llvm.hexagon.A4.combineir
356 __builtin_HEXAGON_A4_combineir(0, 0);
357 // CHECK: @llvm.hexagon.A4.combineri
358 __builtin_HEXAGON_A4_combineri(0, 0);
359 // CHECK: @llvm.hexagon.A4.cround.ri
360 __builtin_HEXAGON_A4_cround_ri(0, 0);
361 // CHECK: @llvm.hexagon.A4.cround.rr
362 __builtin_HEXAGON_A4_cround_rr(0, 0);
363 // CHECK: @llvm.hexagon.A4.modwrapu
364 __builtin_HEXAGON_A4_modwrapu(0, 0);
365 // CHECK: @llvm.hexagon.A4.orn
366 __builtin_HEXAGON_A4_orn(0, 0);
367 // CHECK: @llvm.hexagon.A4.ornp
368 __builtin_HEXAGON_A4_ornp(0, 0);
369 // CHECK: @llvm.hexagon.A4.rcmpeq
370 __builtin_HEXAGON_A4_rcmpeq(0, 0);
371 // CHECK: @llvm.hexagon.A4.rcmpeqi
372 __builtin_HEXAGON_A4_rcmpeqi(0, 0);
373 // CHECK: @llvm.hexagon.A4.rcmpneq
374 __builtin_HEXAGON_A4_rcmpneq(0, 0);
375 // CHECK: @llvm.hexagon.A4.rcmpneqi
376 __builtin_HEXAGON_A4_rcmpneqi(0, 0);
377 // CHECK: @llvm.hexagon.A4.round.ri
378 __builtin_HEXAGON_A4_round_ri(0, 0);
379 // CHECK: @llvm.hexagon.A4.round.ri.sat
380 __builtin_HEXAGON_A4_round_ri_sat(0, 0);
381 // CHECK: @llvm.hexagon.A4.round.rr
382 __builtin_HEXAGON_A4_round_rr(0, 0);
383 // CHECK: @llvm.hexagon.A4.round.rr.sat
384 __builtin_HEXAGON_A4_round_rr_sat(0, 0);
385 // CHECK: @llvm.hexagon.A4.tlbmatch
386 __builtin_HEXAGON_A4_tlbmatch(0, 0);
387 // CHECK: @llvm.hexagon.A4.vcmpbeq.any
388 __builtin_HEXAGON_A4_vcmpbeq_any(0, 0);
389 // CHECK: @llvm.hexagon.A4.vcmpbeqi
390 __builtin_HEXAGON_A4_vcmpbeqi(0, 0);
391 // CHECK: @llvm.hexagon.A4.vcmpbgt
392 __builtin_HEXAGON_A4_vcmpbgt(0, 0);
393 // CHECK: @llvm.hexagon.A4.vcmpbgti
394 __builtin_HEXAGON_A4_vcmpbgti(0, 0);
395 // CHECK: @llvm.hexagon.A4.vcmpbgtui
396 __builtin_HEXAGON_A4_vcmpbgtui(0, 0);
397 // CHECK: @llvm.hexagon.A4.vcmpheqi
398 __builtin_HEXAGON_A4_vcmpheqi(0, 0);
399 // CHECK: @llvm.hexagon.A4.vcmphgti
400 __builtin_HEXAGON_A4_vcmphgti(0, 0);
401 // CHECK: @llvm.hexagon.A4.vcmphgtui
402 __builtin_HEXAGON_A4_vcmphgtui(0, 0);
403 // CHECK: @llvm.hexagon.A4.vcmpweqi
404 __builtin_HEXAGON_A4_vcmpweqi(0, 0);
405 // CHECK: @llvm.hexagon.A4.vcmpwgti
406 __builtin_HEXAGON_A4_vcmpwgti(0, 0);
407 // CHECK: @llvm.hexagon.A4.vcmpwgtui
408 __builtin_HEXAGON_A4_vcmpwgtui(0, 0);
409 // CHECK: @llvm.hexagon.A4.vrmaxh
410 __builtin_HEXAGON_A4_vrmaxh(0, 0, 0);
411 // CHECK: @llvm.hexagon.A4.vrmaxuh
412 __builtin_HEXAGON_A4_vrmaxuh(0, 0, 0);
413 // CHECK: @llvm.hexagon.A4.vrmaxuw
414 __builtin_HEXAGON_A4_vrmaxuw(0, 0, 0);
415 // CHECK: @llvm.hexagon.A4.vrmaxw
416 __builtin_HEXAGON_A4_vrmaxw(0, 0, 0);
417 // CHECK: @llvm.hexagon.A4.vrminh
418 __builtin_HEXAGON_A4_vrminh(0, 0, 0);
419 // CHECK: @llvm.hexagon.A4.vrminuh
420 __builtin_HEXAGON_A4_vrminuh(0, 0, 0);
421 // CHECK: @llvm.hexagon.A4.vrminuw
422 __builtin_HEXAGON_A4_vrminuw(0, 0, 0);
423 // CHECK: @llvm.hexagon.A4.vrminw
424 __builtin_HEXAGON_A4_vrminw(0, 0, 0);
425 // CHECK: @llvm.hexagon.A5.vaddhubs
426 __builtin_HEXAGON_A5_vaddhubs(0, 0);
427 // CHECK: @llvm.hexagon.A6.vcmpbeq.notany
428 __builtin_HEXAGON_A6_vcmpbeq_notany(0, 0);
429 // CHECK: @llvm.hexagon.C2.all8
430 __builtin_HEXAGON_C2_all8(0);
431 // CHECK: @llvm.hexagon.C2.and
432 __builtin_HEXAGON_C2_and(0, 0);
433 // CHECK: @llvm.hexagon.C2.andn
434 __builtin_HEXAGON_C2_andn(0, 0);
435 // CHECK: @llvm.hexagon.C2.any8
436 __builtin_HEXAGON_C2_any8(0);
437 // CHECK: @llvm.hexagon.C2.bitsclr
438 __builtin_HEXAGON_C2_bitsclr(0, 0);
439 // CHECK: @llvm.hexagon.C2.bitsclri
440 __builtin_HEXAGON_C2_bitsclri(0, 0);
441 // CHECK: @llvm.hexagon.C2.bitsset
442 __builtin_HEXAGON_C2_bitsset(0, 0);
443 // CHECK: @llvm.hexagon.C2.cmpeq
444 __builtin_HEXAGON_C2_cmpeq(0, 0);
445 // CHECK: @llvm.hexagon.C2.cmpeqi
446 __builtin_HEXAGON_C2_cmpeqi(0, 0);
447 // CHECK: @llvm.hexagon.C2.cmpeqp
448 __builtin_HEXAGON_C2_cmpeqp(0, 0);
449 // CHECK: @llvm.hexagon.C2.cmpgei
450 __builtin_HEXAGON_C2_cmpgei(0, 0);
451 // CHECK: @llvm.hexagon.C2.cmpgeui
452 __builtin_HEXAGON_C2_cmpgeui(0, 0);
453 // CHECK: @llvm.hexagon.C2.cmpgt
454 __builtin_HEXAGON_C2_cmpgt(0, 0);
455 // CHECK: @llvm.hexagon.C2.cmpgti
456 __builtin_HEXAGON_C2_cmpgti(0, 0);
457 // CHECK: @llvm.hexagon.C2.cmpgtp
458 __builtin_HEXAGON_C2_cmpgtp(0, 0);
459 // CHECK: @llvm.hexagon.C2.cmpgtu
460 __builtin_HEXAGON_C2_cmpgtu(0, 0);
461 // CHECK: @llvm.hexagon.C2.cmpgtui
462 __builtin_HEXAGON_C2_cmpgtui(0, 0);
463 // CHECK: @llvm.hexagon.C2.cmpgtup
464 __builtin_HEXAGON_C2_cmpgtup(0, 0);
465 // CHECK: @llvm.hexagon.C2.cmplt
466 __builtin_HEXAGON_C2_cmplt(0, 0);
467 // CHECK: @llvm.hexagon.C2.cmpltu
468 __builtin_HEXAGON_C2_cmpltu(0, 0);
469 // CHECK: @llvm.hexagon.C2.mask
470 __builtin_HEXAGON_C2_mask(0);
471 // CHECK: @llvm.hexagon.C2.mux
472 __builtin_HEXAGON_C2_mux(0, 0, 0);
473 // CHECK: @llvm.hexagon.C2.muxii
474 __builtin_HEXAGON_C2_muxii(0, 0, 0);
475 // CHECK: @llvm.hexagon.C2.muxir
476 __builtin_HEXAGON_C2_muxir(0, 0, 0);
477 // CHECK: @llvm.hexagon.C2.muxri
478 __builtin_HEXAGON_C2_muxri(0, 0, 0);
479 // CHECK: @llvm.hexagon.C2.not
480 __builtin_HEXAGON_C2_not(0);
481 // CHECK: @llvm.hexagon.C2.or
482 __builtin_HEXAGON_C2_or(0, 0);
483 // CHECK: @llvm.hexagon.C2.orn
484 __builtin_HEXAGON_C2_orn(0, 0);
485 // CHECK: @llvm.hexagon.C2.pxfer.map
486 __builtin_HEXAGON_C2_pxfer_map(0);
487 // CHECK: @llvm.hexagon.C2.tfrpr
488 __builtin_HEXAGON_C2_tfrpr(0);
489 // CHECK: @llvm.hexagon.C2.tfrrp
490 __builtin_HEXAGON_C2_tfrrp(0);
491 // CHECK: @llvm.hexagon.C2.vitpack
492 __builtin_HEXAGON_C2_vitpack(0, 0);
493 // CHECK: @llvm.hexagon.C2.vmux
494 __builtin_HEXAGON_C2_vmux(0, 0, 0);
495 // CHECK: @llvm.hexagon.C2.xor
496 __builtin_HEXAGON_C2_xor(0, 0);
497 // CHECK: @llvm.hexagon.C4.and.and
498 __builtin_HEXAGON_C4_and_and(0, 0, 0);
499 // CHECK: @llvm.hexagon.C4.and.andn
500 __builtin_HEXAGON_C4_and_andn(0, 0, 0);
501 // CHECK: @llvm.hexagon.C4.and.or
502 __builtin_HEXAGON_C4_and_or(0, 0, 0);
503 // CHECK: @llvm.hexagon.C4.and.orn
504 __builtin_HEXAGON_C4_and_orn(0, 0, 0);
505 // CHECK: @llvm.hexagon.C4.cmplte
506 __builtin_HEXAGON_C4_cmplte(0, 0);
507 // CHECK: @llvm.hexagon.C4.cmpltei
508 __builtin_HEXAGON_C4_cmpltei(0, 0);
509 // CHECK: @llvm.hexagon.C4.cmplteu
510 __builtin_HEXAGON_C4_cmplteu(0, 0);
511 // CHECK: @llvm.hexagon.C4.cmplteui
512 __builtin_HEXAGON_C4_cmplteui(0, 0);
513 // CHECK: @llvm.hexagon.C4.cmpneq
514 __builtin_HEXAGON_C4_cmpneq(0, 0);
515 // CHECK: @llvm.hexagon.C4.cmpneqi
516 __builtin_HEXAGON_C4_cmpneqi(0, 0);
517 // CHECK: @llvm.hexagon.C4.fastcorner9
518 __builtin_HEXAGON_C4_fastcorner9(0, 0);
519 // CHECK: @llvm.hexagon.C4.fastcorner9.not
520 __builtin_HEXAGON_C4_fastcorner9_not(0, 0);
521 // CHECK: @llvm.hexagon.C4.nbitsclr
522 __builtin_HEXAGON_C4_nbitsclr(0, 0);
523 // CHECK: @llvm.hexagon.C4.nbitsclri
524 __builtin_HEXAGON_C4_nbitsclri(0, 0);
525 // CHECK: @llvm.hexagon.C4.nbitsset
526 __builtin_HEXAGON_C4_nbitsset(0, 0);
527 // CHECK: @llvm.hexagon.C4.or.and
528 __builtin_HEXAGON_C4_or_and(0, 0, 0);
529 // CHECK: @llvm.hexagon.C4.or.andn
530 __builtin_HEXAGON_C4_or_andn(0, 0, 0);
531 // CHECK: @llvm.hexagon.C4.or.or
532 __builtin_HEXAGON_C4_or_or(0, 0, 0);
533 // CHECK: @llvm.hexagon.C4.or.orn
534 __builtin_HEXAGON_C4_or_orn(0, 0, 0);
535 // CHECK: @llvm.hexagon.F2.conv.d2df
536 __builtin_HEXAGON_F2_conv_d2df(0);
537 // CHECK: @llvm.hexagon.F2.conv.d2sf
538 __builtin_HEXAGON_F2_conv_d2sf(0);
539 // CHECK: @llvm.hexagon.F2.conv.df2d
540 __builtin_HEXAGON_F2_conv_df2d(0.0);
541 // CHECK: @llvm.hexagon.F2.conv.df2d.chop
542 __builtin_HEXAGON_F2_conv_df2d_chop(0.0);
543 // CHECK: @llvm.hexagon.F2.conv.df2sf
544 __builtin_HEXAGON_F2_conv_df2sf(0.0);
545 // CHECK: @llvm.hexagon.F2.conv.df2ud
546 __builtin_HEXAGON_F2_conv_df2ud(0.0);
547 // CHECK: @llvm.hexagon.F2.conv.df2ud.chop
548 __builtin_HEXAGON_F2_conv_df2ud_chop(0.0);
549 // CHECK: @llvm.hexagon.F2.conv.df2uw
550 __builtin_HEXAGON_F2_conv_df2uw(0.0);
551 // CHECK: @llvm.hexagon.F2.conv.df2uw.chop
552 __builtin_HEXAGON_F2_conv_df2uw_chop(0.0);
553 // CHECK: @llvm.hexagon.F2.conv.df2w
554 __builtin_HEXAGON_F2_conv_df2w(0.0);
555 // CHECK: @llvm.hexagon.F2.conv.df2w.chop
556 __builtin_HEXAGON_F2_conv_df2w_chop(0.0);
557 // CHECK: @llvm.hexagon.F2.conv.sf2d
558 __builtin_HEXAGON_F2_conv_sf2d(0.0f
);
559 // CHECK: @llvm.hexagon.F2.conv.sf2d.chop
560 __builtin_HEXAGON_F2_conv_sf2d_chop(0.0f
);
561 // CHECK: @llvm.hexagon.F2.conv.sf2df
562 __builtin_HEXAGON_F2_conv_sf2df(0.0f
);
563 // CHECK: @llvm.hexagon.F2.conv.sf2ud
564 __builtin_HEXAGON_F2_conv_sf2ud(0.0f
);
565 // CHECK: @llvm.hexagon.F2.conv.sf2ud.chop
566 __builtin_HEXAGON_F2_conv_sf2ud_chop(0.0f
);
567 // CHECK: @llvm.hexagon.F2.conv.sf2uw
568 __builtin_HEXAGON_F2_conv_sf2uw(0.0f
);
569 // CHECK: @llvm.hexagon.F2.conv.sf2uw.chop
570 __builtin_HEXAGON_F2_conv_sf2uw_chop(0.0f
);
571 // CHECK: @llvm.hexagon.F2.conv.sf2w
572 __builtin_HEXAGON_F2_conv_sf2w(0.0f
);
573 // CHECK: @llvm.hexagon.F2.conv.sf2w.chop
574 __builtin_HEXAGON_F2_conv_sf2w_chop(0.0f
);
575 // CHECK: @llvm.hexagon.F2.conv.ud2df
576 __builtin_HEXAGON_F2_conv_ud2df(0);
577 // CHECK: @llvm.hexagon.F2.conv.ud2sf
578 __builtin_HEXAGON_F2_conv_ud2sf(0);
579 // CHECK: @llvm.hexagon.F2.conv.uw2df
580 __builtin_HEXAGON_F2_conv_uw2df(0);
581 // CHECK: @llvm.hexagon.F2.conv.uw2sf
582 __builtin_HEXAGON_F2_conv_uw2sf(0);
583 // CHECK: @llvm.hexagon.F2.conv.w2df
584 __builtin_HEXAGON_F2_conv_w2df(0);
585 // CHECK: @llvm.hexagon.F2.conv.w2sf
586 __builtin_HEXAGON_F2_conv_w2sf(0);
587 // CHECK: @llvm.hexagon.F2.dfclass
588 __builtin_HEXAGON_F2_dfclass(0.0, 0);
589 // CHECK: @llvm.hexagon.F2.dfcmpeq
590 __builtin_HEXAGON_F2_dfcmpeq(0.0, 0.0);
591 // CHECK: @llvm.hexagon.F2.dfcmpge
592 __builtin_HEXAGON_F2_dfcmpge(0.0, 0.0);
593 // CHECK: @llvm.hexagon.F2.dfcmpgt
594 __builtin_HEXAGON_F2_dfcmpgt(0.0, 0.0);
595 // CHECK: @llvm.hexagon.F2.dfcmpuo
596 __builtin_HEXAGON_F2_dfcmpuo(0.0, 0.0);
597 // CHECK: @llvm.hexagon.F2.dfimm.n
598 __builtin_HEXAGON_F2_dfimm_n(0);
599 // CHECK: @llvm.hexagon.F2.dfimm.p
600 __builtin_HEXAGON_F2_dfimm_p(0);
601 // CHECK: @llvm.hexagon.F2.sfadd
602 __builtin_HEXAGON_F2_sfadd(0.0f
, 0.0f
);
603 // CHECK: @llvm.hexagon.F2.sfclass
604 __builtin_HEXAGON_F2_sfclass(0.0f
, 0);
605 // CHECK: @llvm.hexagon.F2.sfcmpeq
606 __builtin_HEXAGON_F2_sfcmpeq(0.0f
, 0.0f
);
607 // CHECK: @llvm.hexagon.F2.sfcmpge
608 __builtin_HEXAGON_F2_sfcmpge(0.0f
, 0.0f
);
609 // CHECK: @llvm.hexagon.F2.sfcmpgt
610 __builtin_HEXAGON_F2_sfcmpgt(0.0f
, 0.0f
);
611 // CHECK: @llvm.hexagon.F2.sfcmpuo
612 __builtin_HEXAGON_F2_sfcmpuo(0.0f
, 0.0f
);
613 // CHECK: @llvm.hexagon.F2.sffixupd
614 __builtin_HEXAGON_F2_sffixupd(0.0f
, 0.0f
);
615 // CHECK: @llvm.hexagon.F2.sffixupn
616 __builtin_HEXAGON_F2_sffixupn(0.0f
, 0.0f
);
617 // CHECK: @llvm.hexagon.F2.sffixupr
618 __builtin_HEXAGON_F2_sffixupr(0.0f
);
619 // CHECK: @llvm.hexagon.F2.sffma
620 __builtin_HEXAGON_F2_sffma(0.0f
, 0.0f
, 0.0f
);
621 // CHECK: @llvm.hexagon.F2.sffma.lib
622 __builtin_HEXAGON_F2_sffma_lib(0.0f
, 0.0f
, 0.0f
);
623 // CHECK: @llvm.hexagon.F2.sffma.sc
624 __builtin_HEXAGON_F2_sffma_sc(0.0f
, 0.0f
, 0.0f
, 0);
625 // CHECK: @llvm.hexagon.F2.sffms
626 __builtin_HEXAGON_F2_sffms(0.0f
, 0.0f
, 0.0f
);
627 // CHECK: @llvm.hexagon.F2.sffms.lib
628 __builtin_HEXAGON_F2_sffms_lib(0.0f
, 0.0f
, 0.0f
);
629 // CHECK: @llvm.hexagon.F2.sfimm.n
630 __builtin_HEXAGON_F2_sfimm_n(0);
631 // CHECK: @llvm.hexagon.F2.sfimm.p
632 __builtin_HEXAGON_F2_sfimm_p(0);
633 // CHECK: @llvm.hexagon.F2.sfmax
634 __builtin_HEXAGON_F2_sfmax(0.0f
, 0.0f
);
635 // CHECK: @llvm.hexagon.F2.sfmin
636 __builtin_HEXAGON_F2_sfmin(0.0f
, 0.0f
);
637 // CHECK: @llvm.hexagon.F2.sfmpy
638 __builtin_HEXAGON_F2_sfmpy(0.0f
, 0.0f
);
639 // CHECK: @llvm.hexagon.F2.sfsub
640 __builtin_HEXAGON_F2_sfsub(0.0f
, 0.0f
);
641 // CHECK: @llvm.hexagon.M2.acci
642 __builtin_HEXAGON_M2_acci(0, 0, 0);
643 // CHECK: @llvm.hexagon.M2.accii
644 __builtin_HEXAGON_M2_accii(0, 0, 0);
645 // CHECK: @llvm.hexagon.M2.cmaci.s0
646 __builtin_HEXAGON_M2_cmaci_s0(0, 0, 0);
647 // CHECK: @llvm.hexagon.M2.cmacr.s0
648 __builtin_HEXAGON_M2_cmacr_s0(0, 0, 0);
649 // CHECK: @llvm.hexagon.M2.cmacs.s0
650 __builtin_HEXAGON_M2_cmacs_s0(0, 0, 0);
651 // CHECK: @llvm.hexagon.M2.cmacs.s1
652 __builtin_HEXAGON_M2_cmacs_s1(0, 0, 0);
653 // CHECK: @llvm.hexagon.M2.cmacsc.s0
654 __builtin_HEXAGON_M2_cmacsc_s0(0, 0, 0);
655 // CHECK: @llvm.hexagon.M2.cmacsc.s1
656 __builtin_HEXAGON_M2_cmacsc_s1(0, 0, 0);
657 // CHECK: @llvm.hexagon.M2.cmpyi.s0
658 __builtin_HEXAGON_M2_cmpyi_s0(0, 0);
659 // CHECK: @llvm.hexagon.M2.cmpyr.s0
660 __builtin_HEXAGON_M2_cmpyr_s0(0, 0);
661 // CHECK: @llvm.hexagon.M2.cmpyrs.s0
662 __builtin_HEXAGON_M2_cmpyrs_s0(0, 0);
663 // CHECK: @llvm.hexagon.M2.cmpyrs.s1
664 __builtin_HEXAGON_M2_cmpyrs_s1(0, 0);
665 // CHECK: @llvm.hexagon.M2.cmpyrsc.s0
666 __builtin_HEXAGON_M2_cmpyrsc_s0(0, 0);
667 // CHECK: @llvm.hexagon.M2.cmpyrsc.s1
668 __builtin_HEXAGON_M2_cmpyrsc_s1(0, 0);
669 // CHECK: @llvm.hexagon.M2.cmpys.s0
670 __builtin_HEXAGON_M2_cmpys_s0(0, 0);
671 // CHECK: @llvm.hexagon.M2.cmpys.s1
672 __builtin_HEXAGON_M2_cmpys_s1(0, 0);
673 // CHECK: @llvm.hexagon.M2.cmpysc.s0
674 __builtin_HEXAGON_M2_cmpysc_s0(0, 0);
675 // CHECK: @llvm.hexagon.M2.cmpysc.s1
676 __builtin_HEXAGON_M2_cmpysc_s1(0, 0);
677 // CHECK: @llvm.hexagon.M2.cnacs.s0
678 __builtin_HEXAGON_M2_cnacs_s0(0, 0, 0);
679 // CHECK: @llvm.hexagon.M2.cnacs.s1
680 __builtin_HEXAGON_M2_cnacs_s1(0, 0, 0);
681 // CHECK: @llvm.hexagon.M2.cnacsc.s0
682 __builtin_HEXAGON_M2_cnacsc_s0(0, 0, 0);
683 // CHECK: @llvm.hexagon.M2.cnacsc.s1
684 __builtin_HEXAGON_M2_cnacsc_s1(0, 0, 0);
685 // CHECK: @llvm.hexagon.M2.dpmpyss.acc.s0
686 __builtin_HEXAGON_M2_dpmpyss_acc_s0(0, 0, 0);
687 // CHECK: @llvm.hexagon.M2.dpmpyss.nac.s0
688 __builtin_HEXAGON_M2_dpmpyss_nac_s0(0, 0, 0);
689 // CHECK: @llvm.hexagon.M2.dpmpyss.rnd.s0
690 __builtin_HEXAGON_M2_dpmpyss_rnd_s0(0, 0);
691 // CHECK: @llvm.hexagon.M2.dpmpyss.s0
692 __builtin_HEXAGON_M2_dpmpyss_s0(0, 0);
693 // CHECK: @llvm.hexagon.M2.dpmpyuu.acc.s0
694 __builtin_HEXAGON_M2_dpmpyuu_acc_s0(0, 0, 0);
695 // CHECK: @llvm.hexagon.M2.dpmpyuu.nac.s0
696 __builtin_HEXAGON_M2_dpmpyuu_nac_s0(0, 0, 0);
697 // CHECK: @llvm.hexagon.M2.dpmpyuu.s0
698 __builtin_HEXAGON_M2_dpmpyuu_s0(0, 0);
699 // CHECK: @llvm.hexagon.M2.hmmpyh.rs1
700 __builtin_HEXAGON_M2_hmmpyh_rs1(0, 0);
701 // CHECK: @llvm.hexagon.M2.hmmpyh.s1
702 __builtin_HEXAGON_M2_hmmpyh_s1(0, 0);
703 // CHECK: @llvm.hexagon.M2.hmmpyl.rs1
704 __builtin_HEXAGON_M2_hmmpyl_rs1(0, 0);
705 // CHECK: @llvm.hexagon.M2.hmmpyl.s1
706 __builtin_HEXAGON_M2_hmmpyl_s1(0, 0);
707 // CHECK: @llvm.hexagon.M2.maci
708 __builtin_HEXAGON_M2_maci(0, 0, 0);
709 // CHECK: @llvm.hexagon.M2.macsin
710 __builtin_HEXAGON_M2_macsin(0, 0, 0);
711 // CHECK: @llvm.hexagon.M2.macsip
712 __builtin_HEXAGON_M2_macsip(0, 0, 0);
713 // CHECK: @llvm.hexagon.M2.mmachs.rs0
714 __builtin_HEXAGON_M2_mmachs_rs0(0, 0, 0);
715 // CHECK: @llvm.hexagon.M2.mmachs.rs1
716 __builtin_HEXAGON_M2_mmachs_rs1(0, 0, 0);
717 // CHECK: @llvm.hexagon.M2.mmachs.s0
718 __builtin_HEXAGON_M2_mmachs_s0(0, 0, 0);
719 // CHECK: @llvm.hexagon.M2.mmachs.s1
720 __builtin_HEXAGON_M2_mmachs_s1(0, 0, 0);
721 // CHECK: @llvm.hexagon.M2.mmacls.rs0
722 __builtin_HEXAGON_M2_mmacls_rs0(0, 0, 0);
723 // CHECK: @llvm.hexagon.M2.mmacls.rs1
724 __builtin_HEXAGON_M2_mmacls_rs1(0, 0, 0);
725 // CHECK: @llvm.hexagon.M2.mmacls.s0
726 __builtin_HEXAGON_M2_mmacls_s0(0, 0, 0);
727 // CHECK: @llvm.hexagon.M2.mmacls.s1
728 __builtin_HEXAGON_M2_mmacls_s1(0, 0, 0);
729 // CHECK: @llvm.hexagon.M2.mmacuhs.rs0
730 __builtin_HEXAGON_M2_mmacuhs_rs0(0, 0, 0);
731 // CHECK: @llvm.hexagon.M2.mmacuhs.rs1
732 __builtin_HEXAGON_M2_mmacuhs_rs1(0, 0, 0);
733 // CHECK: @llvm.hexagon.M2.mmacuhs.s0
734 __builtin_HEXAGON_M2_mmacuhs_s0(0, 0, 0);
735 // CHECK: @llvm.hexagon.M2.mmacuhs.s1
736 __builtin_HEXAGON_M2_mmacuhs_s1(0, 0, 0);
737 // CHECK: @llvm.hexagon.M2.mmaculs.rs0
738 __builtin_HEXAGON_M2_mmaculs_rs0(0, 0, 0);
739 // CHECK: @llvm.hexagon.M2.mmaculs.rs1
740 __builtin_HEXAGON_M2_mmaculs_rs1(0, 0, 0);
741 // CHECK: @llvm.hexagon.M2.mmaculs.s0
742 __builtin_HEXAGON_M2_mmaculs_s0(0, 0, 0);
743 // CHECK: @llvm.hexagon.M2.mmaculs.s1
744 __builtin_HEXAGON_M2_mmaculs_s1(0, 0, 0);
745 // CHECK: @llvm.hexagon.M2.mmpyh.rs0
746 __builtin_HEXAGON_M2_mmpyh_rs0(0, 0);
747 // CHECK: @llvm.hexagon.M2.mmpyh.rs1
748 __builtin_HEXAGON_M2_mmpyh_rs1(0, 0);
749 // CHECK: @llvm.hexagon.M2.mmpyh.s0
750 __builtin_HEXAGON_M2_mmpyh_s0(0, 0);
751 // CHECK: @llvm.hexagon.M2.mmpyh.s1
752 __builtin_HEXAGON_M2_mmpyh_s1(0, 0);
753 // CHECK: @llvm.hexagon.M2.mmpyl.rs0
754 __builtin_HEXAGON_M2_mmpyl_rs0(0, 0);
755 // CHECK: @llvm.hexagon.M2.mmpyl.rs1
756 __builtin_HEXAGON_M2_mmpyl_rs1(0, 0);
757 // CHECK: @llvm.hexagon.M2.mmpyl.s0
758 __builtin_HEXAGON_M2_mmpyl_s0(0, 0);
759 // CHECK: @llvm.hexagon.M2.mmpyl.s1
760 __builtin_HEXAGON_M2_mmpyl_s1(0, 0);
761 // CHECK: @llvm.hexagon.M2.mmpyuh.rs0
762 __builtin_HEXAGON_M2_mmpyuh_rs0(0, 0);
763 // CHECK: @llvm.hexagon.M2.mmpyuh.rs1
764 __builtin_HEXAGON_M2_mmpyuh_rs1(0, 0);
765 // CHECK: @llvm.hexagon.M2.mmpyuh.s0
766 __builtin_HEXAGON_M2_mmpyuh_s0(0, 0);
767 // CHECK: @llvm.hexagon.M2.mmpyuh.s1
768 __builtin_HEXAGON_M2_mmpyuh_s1(0, 0);
769 // CHECK: @llvm.hexagon.M2.mmpyul.rs0
770 __builtin_HEXAGON_M2_mmpyul_rs0(0, 0);
771 // CHECK: @llvm.hexagon.M2.mmpyul.rs1
772 __builtin_HEXAGON_M2_mmpyul_rs1(0, 0);
773 // CHECK: @llvm.hexagon.M2.mmpyul.s0
774 __builtin_HEXAGON_M2_mmpyul_s0(0, 0);
775 // CHECK: @llvm.hexagon.M2.mmpyul.s1
776 __builtin_HEXAGON_M2_mmpyul_s1(0, 0);
777 // CHECK: @llvm.hexagon.M2.mpy.acc.hh.s0
778 __builtin_HEXAGON_M2_mpy_acc_hh_s0(0, 0, 0);
779 // CHECK: @llvm.hexagon.M2.mpy.acc.hh.s1
780 __builtin_HEXAGON_M2_mpy_acc_hh_s1(0, 0, 0);
781 // CHECK: @llvm.hexagon.M2.mpy.acc.hl.s0
782 __builtin_HEXAGON_M2_mpy_acc_hl_s0(0, 0, 0);
783 // CHECK: @llvm.hexagon.M2.mpy.acc.hl.s1
784 __builtin_HEXAGON_M2_mpy_acc_hl_s1(0, 0, 0);
785 // CHECK: @llvm.hexagon.M2.mpy.acc.lh.s0
786 __builtin_HEXAGON_M2_mpy_acc_lh_s0(0, 0, 0);
787 // CHECK: @llvm.hexagon.M2.mpy.acc.lh.s1
788 __builtin_HEXAGON_M2_mpy_acc_lh_s1(0, 0, 0);
789 // CHECK: @llvm.hexagon.M2.mpy.acc.ll.s0
790 __builtin_HEXAGON_M2_mpy_acc_ll_s0(0, 0, 0);
791 // CHECK: @llvm.hexagon.M2.mpy.acc.ll.s1
792 __builtin_HEXAGON_M2_mpy_acc_ll_s1(0, 0, 0);
793 // CHECK: @llvm.hexagon.M2.mpy.acc.sat.hh.s0
794 __builtin_HEXAGON_M2_mpy_acc_sat_hh_s0(0, 0, 0);
795 // CHECK: @llvm.hexagon.M2.mpy.acc.sat.hh.s1
796 __builtin_HEXAGON_M2_mpy_acc_sat_hh_s1(0, 0, 0);
797 // CHECK: @llvm.hexagon.M2.mpy.acc.sat.hl.s0
798 __builtin_HEXAGON_M2_mpy_acc_sat_hl_s0(0, 0, 0);
799 // CHECK: @llvm.hexagon.M2.mpy.acc.sat.hl.s1
800 __builtin_HEXAGON_M2_mpy_acc_sat_hl_s1(0, 0, 0);
801 // CHECK: @llvm.hexagon.M2.mpy.acc.sat.lh.s0
802 __builtin_HEXAGON_M2_mpy_acc_sat_lh_s0(0, 0, 0);
803 // CHECK: @llvm.hexagon.M2.mpy.acc.sat.lh.s1
804 __builtin_HEXAGON_M2_mpy_acc_sat_lh_s1(0, 0, 0);
805 // CHECK: @llvm.hexagon.M2.mpy.acc.sat.ll.s0
806 __builtin_HEXAGON_M2_mpy_acc_sat_ll_s0(0, 0, 0);
807 // CHECK: @llvm.hexagon.M2.mpy.acc.sat.ll.s1
808 __builtin_HEXAGON_M2_mpy_acc_sat_ll_s1(0, 0, 0);
809 // CHECK: @llvm.hexagon.M2.mpy.hh.s0
810 __builtin_HEXAGON_M2_mpy_hh_s0(0, 0);
811 // CHECK: @llvm.hexagon.M2.mpy.hh.s1
812 __builtin_HEXAGON_M2_mpy_hh_s1(0, 0);
813 // CHECK: @llvm.hexagon.M2.mpy.hl.s0
814 __builtin_HEXAGON_M2_mpy_hl_s0(0, 0);
815 // CHECK: @llvm.hexagon.M2.mpy.hl.s1
816 __builtin_HEXAGON_M2_mpy_hl_s1(0, 0);
817 // CHECK: @llvm.hexagon.M2.mpy.lh.s0
818 __builtin_HEXAGON_M2_mpy_lh_s0(0, 0);
819 // CHECK: @llvm.hexagon.M2.mpy.lh.s1
820 __builtin_HEXAGON_M2_mpy_lh_s1(0, 0);
821 // CHECK: @llvm.hexagon.M2.mpy.ll.s0
822 __builtin_HEXAGON_M2_mpy_ll_s0(0, 0);
823 // CHECK: @llvm.hexagon.M2.mpy.ll.s1
824 __builtin_HEXAGON_M2_mpy_ll_s1(0, 0);
825 // CHECK: @llvm.hexagon.M2.mpy.nac.hh.s0
826 __builtin_HEXAGON_M2_mpy_nac_hh_s0(0, 0, 0);
827 // CHECK: @llvm.hexagon.M2.mpy.nac.hh.s1
828 __builtin_HEXAGON_M2_mpy_nac_hh_s1(0, 0, 0);
829 // CHECK: @llvm.hexagon.M2.mpy.nac.hl.s0
830 __builtin_HEXAGON_M2_mpy_nac_hl_s0(0, 0, 0);
831 // CHECK: @llvm.hexagon.M2.mpy.nac.hl.s1
832 __builtin_HEXAGON_M2_mpy_nac_hl_s1(0, 0, 0);
833 // CHECK: @llvm.hexagon.M2.mpy.nac.lh.s0
834 __builtin_HEXAGON_M2_mpy_nac_lh_s0(0, 0, 0);
835 // CHECK: @llvm.hexagon.M2.mpy.nac.lh.s1
836 __builtin_HEXAGON_M2_mpy_nac_lh_s1(0, 0, 0);
837 // CHECK: @llvm.hexagon.M2.mpy.nac.ll.s0
838 __builtin_HEXAGON_M2_mpy_nac_ll_s0(0, 0, 0);
839 // CHECK: @llvm.hexagon.M2.mpy.nac.ll.s1
840 __builtin_HEXAGON_M2_mpy_nac_ll_s1(0, 0, 0);
841 // CHECK: @llvm.hexagon.M2.mpy.nac.sat.hh.s0
842 __builtin_HEXAGON_M2_mpy_nac_sat_hh_s0(0, 0, 0);
843 // CHECK: @llvm.hexagon.M2.mpy.nac.sat.hh.s1
844 __builtin_HEXAGON_M2_mpy_nac_sat_hh_s1(0, 0, 0);
845 // CHECK: @llvm.hexagon.M2.mpy.nac.sat.hl.s0
846 __builtin_HEXAGON_M2_mpy_nac_sat_hl_s0(0, 0, 0);
847 // CHECK: @llvm.hexagon.M2.mpy.nac.sat.hl.s1
848 __builtin_HEXAGON_M2_mpy_nac_sat_hl_s1(0, 0, 0);
849 // CHECK: @llvm.hexagon.M2.mpy.nac.sat.lh.s0
850 __builtin_HEXAGON_M2_mpy_nac_sat_lh_s0(0, 0, 0);
851 // CHECK: @llvm.hexagon.M2.mpy.nac.sat.lh.s1
852 __builtin_HEXAGON_M2_mpy_nac_sat_lh_s1(0, 0, 0);
853 // CHECK: @llvm.hexagon.M2.mpy.nac.sat.ll.s0
854 __builtin_HEXAGON_M2_mpy_nac_sat_ll_s0(0, 0, 0);
855 // CHECK: @llvm.hexagon.M2.mpy.nac.sat.ll.s1
856 __builtin_HEXAGON_M2_mpy_nac_sat_ll_s1(0, 0, 0);
857 // CHECK: @llvm.hexagon.M2.mpy.rnd.hh.s0
858 __builtin_HEXAGON_M2_mpy_rnd_hh_s0(0, 0);
859 // CHECK: @llvm.hexagon.M2.mpy.rnd.hh.s1
860 __builtin_HEXAGON_M2_mpy_rnd_hh_s1(0, 0);
861 // CHECK: @llvm.hexagon.M2.mpy.rnd.hl.s0
862 __builtin_HEXAGON_M2_mpy_rnd_hl_s0(0, 0);
863 // CHECK: @llvm.hexagon.M2.mpy.rnd.hl.s1
864 __builtin_HEXAGON_M2_mpy_rnd_hl_s1(0, 0);
865 // CHECK: @llvm.hexagon.M2.mpy.rnd.lh.s0
866 __builtin_HEXAGON_M2_mpy_rnd_lh_s0(0, 0);
867 // CHECK: @llvm.hexagon.M2.mpy.rnd.lh.s1
868 __builtin_HEXAGON_M2_mpy_rnd_lh_s1(0, 0);
869 // CHECK: @llvm.hexagon.M2.mpy.rnd.ll.s0
870 __builtin_HEXAGON_M2_mpy_rnd_ll_s0(0, 0);
871 // CHECK: @llvm.hexagon.M2.mpy.rnd.ll.s1
872 __builtin_HEXAGON_M2_mpy_rnd_ll_s1(0, 0);
873 // CHECK: @llvm.hexagon.M2.mpy.sat.hh.s0
874 __builtin_HEXAGON_M2_mpy_sat_hh_s0(0, 0);
875 // CHECK: @llvm.hexagon.M2.mpy.sat.hh.s1
876 __builtin_HEXAGON_M2_mpy_sat_hh_s1(0, 0);
877 // CHECK: @llvm.hexagon.M2.mpy.sat.hl.s0
878 __builtin_HEXAGON_M2_mpy_sat_hl_s0(0, 0);
879 // CHECK: @llvm.hexagon.M2.mpy.sat.hl.s1
880 __builtin_HEXAGON_M2_mpy_sat_hl_s1(0, 0);
881 // CHECK: @llvm.hexagon.M2.mpy.sat.lh.s0
882 __builtin_HEXAGON_M2_mpy_sat_lh_s0(0, 0);
883 // CHECK: @llvm.hexagon.M2.mpy.sat.lh.s1
884 __builtin_HEXAGON_M2_mpy_sat_lh_s1(0, 0);
885 // CHECK: @llvm.hexagon.M2.mpy.sat.ll.s0
886 __builtin_HEXAGON_M2_mpy_sat_ll_s0(0, 0);
887 // CHECK: @llvm.hexagon.M2.mpy.sat.ll.s1
888 __builtin_HEXAGON_M2_mpy_sat_ll_s1(0, 0);
889 // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.hh.s0
890 __builtin_HEXAGON_M2_mpy_sat_rnd_hh_s0(0, 0);
891 // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.hh.s1
892 __builtin_HEXAGON_M2_mpy_sat_rnd_hh_s1(0, 0);
893 // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.hl.s0
894 __builtin_HEXAGON_M2_mpy_sat_rnd_hl_s0(0, 0);
895 // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.hl.s1
896 __builtin_HEXAGON_M2_mpy_sat_rnd_hl_s1(0, 0);
897 // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.lh.s0
898 __builtin_HEXAGON_M2_mpy_sat_rnd_lh_s0(0, 0);
899 // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.lh.s1
900 __builtin_HEXAGON_M2_mpy_sat_rnd_lh_s1(0, 0);
901 // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.ll.s0
902 __builtin_HEXAGON_M2_mpy_sat_rnd_ll_s0(0, 0);
903 // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.ll.s1
904 __builtin_HEXAGON_M2_mpy_sat_rnd_ll_s1(0, 0);
905 // CHECK: @llvm.hexagon.M2.mpy.up
906 __builtin_HEXAGON_M2_mpy_up(0, 0);
907 // CHECK: @llvm.hexagon.M2.mpy.up.s1
908 __builtin_HEXAGON_M2_mpy_up_s1(0, 0);
909 // CHECK: @llvm.hexagon.M2.mpy.up.s1.sat
910 __builtin_HEXAGON_M2_mpy_up_s1_sat(0, 0);
911 // CHECK: @llvm.hexagon.M2.mpyd.acc.hh.s0
912 __builtin_HEXAGON_M2_mpyd_acc_hh_s0(0, 0, 0);
913 // CHECK: @llvm.hexagon.M2.mpyd.acc.hh.s1
914 __builtin_HEXAGON_M2_mpyd_acc_hh_s1(0, 0, 0);
915 // CHECK: @llvm.hexagon.M2.mpyd.acc.hl.s0
916 __builtin_HEXAGON_M2_mpyd_acc_hl_s0(0, 0, 0);
917 // CHECK: @llvm.hexagon.M2.mpyd.acc.hl.s1
918 __builtin_HEXAGON_M2_mpyd_acc_hl_s1(0, 0, 0);
919 // CHECK: @llvm.hexagon.M2.mpyd.acc.lh.s0
920 __builtin_HEXAGON_M2_mpyd_acc_lh_s0(0, 0, 0);
921 // CHECK: @llvm.hexagon.M2.mpyd.acc.lh.s1
922 __builtin_HEXAGON_M2_mpyd_acc_lh_s1(0, 0, 0);
923 // CHECK: @llvm.hexagon.M2.mpyd.acc.ll.s0
924 __builtin_HEXAGON_M2_mpyd_acc_ll_s0(0, 0, 0);
925 // CHECK: @llvm.hexagon.M2.mpyd.acc.ll.s1
926 __builtin_HEXAGON_M2_mpyd_acc_ll_s1(0, 0, 0);
927 // CHECK: @llvm.hexagon.M2.mpyd.hh.s0
928 __builtin_HEXAGON_M2_mpyd_hh_s0(0, 0);
929 // CHECK: @llvm.hexagon.M2.mpyd.hh.s1
930 __builtin_HEXAGON_M2_mpyd_hh_s1(0, 0);
931 // CHECK: @llvm.hexagon.M2.mpyd.hl.s0
932 __builtin_HEXAGON_M2_mpyd_hl_s0(0, 0);
933 // CHECK: @llvm.hexagon.M2.mpyd.hl.s1
934 __builtin_HEXAGON_M2_mpyd_hl_s1(0, 0);
935 // CHECK: @llvm.hexagon.M2.mpyd.lh.s0
936 __builtin_HEXAGON_M2_mpyd_lh_s0(0, 0);
937 // CHECK: @llvm.hexagon.M2.mpyd.lh.s1
938 __builtin_HEXAGON_M2_mpyd_lh_s1(0, 0);
939 // CHECK: @llvm.hexagon.M2.mpyd.ll.s0
940 __builtin_HEXAGON_M2_mpyd_ll_s0(0, 0);
941 // CHECK: @llvm.hexagon.M2.mpyd.ll.s1
942 __builtin_HEXAGON_M2_mpyd_ll_s1(0, 0);
943 // CHECK: @llvm.hexagon.M2.mpyd.nac.hh.s0
944 __builtin_HEXAGON_M2_mpyd_nac_hh_s0(0, 0, 0);
945 // CHECK: @llvm.hexagon.M2.mpyd.nac.hh.s1
946 __builtin_HEXAGON_M2_mpyd_nac_hh_s1(0, 0, 0);
947 // CHECK: @llvm.hexagon.M2.mpyd.nac.hl.s0
948 __builtin_HEXAGON_M2_mpyd_nac_hl_s0(0, 0, 0);
949 // CHECK: @llvm.hexagon.M2.mpyd.nac.hl.s1
950 __builtin_HEXAGON_M2_mpyd_nac_hl_s1(0, 0, 0);
951 // CHECK: @llvm.hexagon.M2.mpyd.nac.lh.s0
952 __builtin_HEXAGON_M2_mpyd_nac_lh_s0(0, 0, 0);
953 // CHECK: @llvm.hexagon.M2.mpyd.nac.lh.s1
954 __builtin_HEXAGON_M2_mpyd_nac_lh_s1(0, 0, 0);
955 // CHECK: @llvm.hexagon.M2.mpyd.nac.ll.s0
956 __builtin_HEXAGON_M2_mpyd_nac_ll_s0(0, 0, 0);
957 // CHECK: @llvm.hexagon.M2.mpyd.nac.ll.s1
958 __builtin_HEXAGON_M2_mpyd_nac_ll_s1(0, 0, 0);
959 // CHECK: @llvm.hexagon.M2.mpyd.rnd.hh.s0
960 __builtin_HEXAGON_M2_mpyd_rnd_hh_s0(0, 0);
961 // CHECK: @llvm.hexagon.M2.mpyd.rnd.hh.s1
962 __builtin_HEXAGON_M2_mpyd_rnd_hh_s1(0, 0);
963 // CHECK: @llvm.hexagon.M2.mpyd.rnd.hl.s0
964 __builtin_HEXAGON_M2_mpyd_rnd_hl_s0(0, 0);
965 // CHECK: @llvm.hexagon.M2.mpyd.rnd.hl.s1
966 __builtin_HEXAGON_M2_mpyd_rnd_hl_s1(0, 0);
967 // CHECK: @llvm.hexagon.M2.mpyd.rnd.lh.s0
968 __builtin_HEXAGON_M2_mpyd_rnd_lh_s0(0, 0);
969 // CHECK: @llvm.hexagon.M2.mpyd.rnd.lh.s1
970 __builtin_HEXAGON_M2_mpyd_rnd_lh_s1(0, 0);
971 // CHECK: @llvm.hexagon.M2.mpyd.rnd.ll.s0
972 __builtin_HEXAGON_M2_mpyd_rnd_ll_s0(0, 0);
973 // CHECK: @llvm.hexagon.M2.mpyd.rnd.ll.s1
974 __builtin_HEXAGON_M2_mpyd_rnd_ll_s1(0, 0);
975 // CHECK: @llvm.hexagon.M2.mpyi
976 __builtin_HEXAGON_M2_mpyi(0, 0);
977 // CHECK: @llvm.hexagon.M2.mpysmi
978 __builtin_HEXAGON_M2_mpysmi(0, 0);
979 // CHECK: @llvm.hexagon.M2.mpysu.up
980 __builtin_HEXAGON_M2_mpysu_up(0, 0);
981 // CHECK: @llvm.hexagon.M2.mpyu.acc.hh.s0
982 __builtin_HEXAGON_M2_mpyu_acc_hh_s0(0, 0, 0);
983 // CHECK: @llvm.hexagon.M2.mpyu.acc.hh.s1
984 __builtin_HEXAGON_M2_mpyu_acc_hh_s1(0, 0, 0);
985 // CHECK: @llvm.hexagon.M2.mpyu.acc.hl.s0
986 __builtin_HEXAGON_M2_mpyu_acc_hl_s0(0, 0, 0);
987 // CHECK: @llvm.hexagon.M2.mpyu.acc.hl.s1
988 __builtin_HEXAGON_M2_mpyu_acc_hl_s1(0, 0, 0);
989 // CHECK: @llvm.hexagon.M2.mpyu.acc.lh.s0
990 __builtin_HEXAGON_M2_mpyu_acc_lh_s0(0, 0, 0);
991 // CHECK: @llvm.hexagon.M2.mpyu.acc.lh.s1
992 __builtin_HEXAGON_M2_mpyu_acc_lh_s1(0, 0, 0);
993 // CHECK: @llvm.hexagon.M2.mpyu.acc.ll.s0
994 __builtin_HEXAGON_M2_mpyu_acc_ll_s0(0, 0, 0);
995 // CHECK: @llvm.hexagon.M2.mpyu.acc.ll.s1
996 __builtin_HEXAGON_M2_mpyu_acc_ll_s1(0, 0, 0);
997 // CHECK: @llvm.hexagon.M2.mpyu.hh.s0
998 __builtin_HEXAGON_M2_mpyu_hh_s0(0, 0);
999 // CHECK: @llvm.hexagon.M2.mpyu.hh.s1
1000 __builtin_HEXAGON_M2_mpyu_hh_s1(0, 0);
1001 // CHECK: @llvm.hexagon.M2.mpyu.hl.s0
1002 __builtin_HEXAGON_M2_mpyu_hl_s0(0, 0);
1003 // CHECK: @llvm.hexagon.M2.mpyu.hl.s1
1004 __builtin_HEXAGON_M2_mpyu_hl_s1(0, 0);
1005 // CHECK: @llvm.hexagon.M2.mpyu.lh.s0
1006 __builtin_HEXAGON_M2_mpyu_lh_s0(0, 0);
1007 // CHECK: @llvm.hexagon.M2.mpyu.lh.s1
1008 __builtin_HEXAGON_M2_mpyu_lh_s1(0, 0);
1009 // CHECK: @llvm.hexagon.M2.mpyu.ll.s0
1010 __builtin_HEXAGON_M2_mpyu_ll_s0(0, 0);
1011 // CHECK: @llvm.hexagon.M2.mpyu.ll.s1
1012 __builtin_HEXAGON_M2_mpyu_ll_s1(0, 0);
1013 // CHECK: @llvm.hexagon.M2.mpyu.nac.hh.s0
1014 __builtin_HEXAGON_M2_mpyu_nac_hh_s0(0, 0, 0);
1015 // CHECK: @llvm.hexagon.M2.mpyu.nac.hh.s1
1016 __builtin_HEXAGON_M2_mpyu_nac_hh_s1(0, 0, 0);
1017 // CHECK: @llvm.hexagon.M2.mpyu.nac.hl.s0
1018 __builtin_HEXAGON_M2_mpyu_nac_hl_s0(0, 0, 0);
1019 // CHECK: @llvm.hexagon.M2.mpyu.nac.hl.s1
1020 __builtin_HEXAGON_M2_mpyu_nac_hl_s1(0, 0, 0);
1021 // CHECK: @llvm.hexagon.M2.mpyu.nac.lh.s0
1022 __builtin_HEXAGON_M2_mpyu_nac_lh_s0(0, 0, 0);
1023 // CHECK: @llvm.hexagon.M2.mpyu.nac.lh.s1
1024 __builtin_HEXAGON_M2_mpyu_nac_lh_s1(0, 0, 0);
1025 // CHECK: @llvm.hexagon.M2.mpyu.nac.ll.s0
1026 __builtin_HEXAGON_M2_mpyu_nac_ll_s0(0, 0, 0);
1027 // CHECK: @llvm.hexagon.M2.mpyu.nac.ll.s1
1028 __builtin_HEXAGON_M2_mpyu_nac_ll_s1(0, 0, 0);
1029 // CHECK: @llvm.hexagon.M2.mpyu.up
1030 __builtin_HEXAGON_M2_mpyu_up(0, 0);
1031 // CHECK: @llvm.hexagon.M2.mpyud.acc.hh.s0
1032 __builtin_HEXAGON_M2_mpyud_acc_hh_s0(0, 0, 0);
1033 // CHECK: @llvm.hexagon.M2.mpyud.acc.hh.s1
1034 __builtin_HEXAGON_M2_mpyud_acc_hh_s1(0, 0, 0);
1035 // CHECK: @llvm.hexagon.M2.mpyud.acc.hl.s0
1036 __builtin_HEXAGON_M2_mpyud_acc_hl_s0(0, 0, 0);
1037 // CHECK: @llvm.hexagon.M2.mpyud.acc.hl.s1
1038 __builtin_HEXAGON_M2_mpyud_acc_hl_s1(0, 0, 0);
1039 // CHECK: @llvm.hexagon.M2.mpyud.acc.lh.s0
1040 __builtin_HEXAGON_M2_mpyud_acc_lh_s0(0, 0, 0);
1041 // CHECK: @llvm.hexagon.M2.mpyud.acc.lh.s1
1042 __builtin_HEXAGON_M2_mpyud_acc_lh_s1(0, 0, 0);
1043 // CHECK: @llvm.hexagon.M2.mpyud.acc.ll.s0
1044 __builtin_HEXAGON_M2_mpyud_acc_ll_s0(0, 0, 0);
1045 // CHECK: @llvm.hexagon.M2.mpyud.acc.ll.s1
1046 __builtin_HEXAGON_M2_mpyud_acc_ll_s1(0, 0, 0);
1047 // CHECK: @llvm.hexagon.M2.mpyud.hh.s0
1048 __builtin_HEXAGON_M2_mpyud_hh_s0(0, 0);
1049 // CHECK: @llvm.hexagon.M2.mpyud.hh.s1
1050 __builtin_HEXAGON_M2_mpyud_hh_s1(0, 0);
1051 // CHECK: @llvm.hexagon.M2.mpyud.hl.s0
1052 __builtin_HEXAGON_M2_mpyud_hl_s0(0, 0);
1053 // CHECK: @llvm.hexagon.M2.mpyud.hl.s1
1054 __builtin_HEXAGON_M2_mpyud_hl_s1(0, 0);
1055 // CHECK: @llvm.hexagon.M2.mpyud.lh.s0
1056 __builtin_HEXAGON_M2_mpyud_lh_s0(0, 0);
1057 // CHECK: @llvm.hexagon.M2.mpyud.lh.s1
1058 __builtin_HEXAGON_M2_mpyud_lh_s1(0, 0);
1059 // CHECK: @llvm.hexagon.M2.mpyud.ll.s0
1060 __builtin_HEXAGON_M2_mpyud_ll_s0(0, 0);
1061 // CHECK: @llvm.hexagon.M2.mpyud.ll.s1
1062 __builtin_HEXAGON_M2_mpyud_ll_s1(0, 0);
1063 // CHECK: @llvm.hexagon.M2.mpyud.nac.hh.s0
1064 __builtin_HEXAGON_M2_mpyud_nac_hh_s0(0, 0, 0);
1065 // CHECK: @llvm.hexagon.M2.mpyud.nac.hh.s1
1066 __builtin_HEXAGON_M2_mpyud_nac_hh_s1(0, 0, 0);
1067 // CHECK: @llvm.hexagon.M2.mpyud.nac.hl.s0
1068 __builtin_HEXAGON_M2_mpyud_nac_hl_s0(0, 0, 0);
1069 // CHECK: @llvm.hexagon.M2.mpyud.nac.hl.s1
1070 __builtin_HEXAGON_M2_mpyud_nac_hl_s1(0, 0, 0);
1071 // CHECK: @llvm.hexagon.M2.mpyud.nac.lh.s0
1072 __builtin_HEXAGON_M2_mpyud_nac_lh_s0(0, 0, 0);
1073 // CHECK: @llvm.hexagon.M2.mpyud.nac.lh.s1
1074 __builtin_HEXAGON_M2_mpyud_nac_lh_s1(0, 0, 0);
1075 // CHECK: @llvm.hexagon.M2.mpyud.nac.ll.s0
1076 __builtin_HEXAGON_M2_mpyud_nac_ll_s0(0, 0, 0);
1077 // CHECK: @llvm.hexagon.M2.mpyud.nac.ll.s1
1078 __builtin_HEXAGON_M2_mpyud_nac_ll_s1(0, 0, 0);
1079 // CHECK: @llvm.hexagon.M2.mpyui
1080 __builtin_HEXAGON_M2_mpyui(0, 0);
1081 // CHECK: @llvm.hexagon.M2.nacci
1082 __builtin_HEXAGON_M2_nacci(0, 0, 0);
1083 // CHECK: @llvm.hexagon.M2.naccii
1084 __builtin_HEXAGON_M2_naccii(0, 0, 0);
1085 // CHECK: @llvm.hexagon.M2.subacc
1086 __builtin_HEXAGON_M2_subacc(0, 0, 0);
1087 // CHECK: @llvm.hexagon.M2.vabsdiffh
1088 __builtin_HEXAGON_M2_vabsdiffh(0, 0);
1089 // CHECK: @llvm.hexagon.M2.vabsdiffw
1090 __builtin_HEXAGON_M2_vabsdiffw(0, 0);
1091 // CHECK: @llvm.hexagon.M2.vcmac.s0.sat.i
1092 __builtin_HEXAGON_M2_vcmac_s0_sat_i(0, 0, 0);
1093 // CHECK: @llvm.hexagon.M2.vcmac.s0.sat.r
1094 __builtin_HEXAGON_M2_vcmac_s0_sat_r(0, 0, 0);
1095 // CHECK: @llvm.hexagon.M2.vcmpy.s0.sat.i
1096 __builtin_HEXAGON_M2_vcmpy_s0_sat_i(0, 0);
1097 // CHECK: @llvm.hexagon.M2.vcmpy.s0.sat.r
1098 __builtin_HEXAGON_M2_vcmpy_s0_sat_r(0, 0);
1099 // CHECK: @llvm.hexagon.M2.vcmpy.s1.sat.i
1100 __builtin_HEXAGON_M2_vcmpy_s1_sat_i(0, 0);
1101 // CHECK: @llvm.hexagon.M2.vcmpy.s1.sat.r
1102 __builtin_HEXAGON_M2_vcmpy_s1_sat_r(0, 0);
1103 // CHECK: @llvm.hexagon.M2.vdmacs.s0
1104 __builtin_HEXAGON_M2_vdmacs_s0(0, 0, 0);
1105 // CHECK: @llvm.hexagon.M2.vdmacs.s1
1106 __builtin_HEXAGON_M2_vdmacs_s1(0, 0, 0);
1107 // CHECK: @llvm.hexagon.M2.vdmpyrs.s0
1108 __builtin_HEXAGON_M2_vdmpyrs_s0(0, 0);
1109 // CHECK: @llvm.hexagon.M2.vdmpyrs.s1
1110 __builtin_HEXAGON_M2_vdmpyrs_s1(0, 0);
1111 // CHECK: @llvm.hexagon.M2.vdmpys.s0
1112 __builtin_HEXAGON_M2_vdmpys_s0(0, 0);
1113 // CHECK: @llvm.hexagon.M2.vdmpys.s1
1114 __builtin_HEXAGON_M2_vdmpys_s1(0, 0);
1115 // CHECK: @llvm.hexagon.M2.vmac2
1116 __builtin_HEXAGON_M2_vmac2(0, 0, 0);
1117 // CHECK: @llvm.hexagon.M2.vmac2es
1118 __builtin_HEXAGON_M2_vmac2es(0, 0, 0);
1119 // CHECK: @llvm.hexagon.M2.vmac2es.s0
1120 __builtin_HEXAGON_M2_vmac2es_s0(0, 0, 0);
1121 // CHECK: @llvm.hexagon.M2.vmac2es.s1
1122 __builtin_HEXAGON_M2_vmac2es_s1(0, 0, 0);
1123 // CHECK: @llvm.hexagon.M2.vmac2s.s0
1124 __builtin_HEXAGON_M2_vmac2s_s0(0, 0, 0);
1125 // CHECK: @llvm.hexagon.M2.vmac2s.s1
1126 __builtin_HEXAGON_M2_vmac2s_s1(0, 0, 0);
1127 // CHECK: @llvm.hexagon.M2.vmac2su.s0
1128 __builtin_HEXAGON_M2_vmac2su_s0(0, 0, 0);
1129 // CHECK: @llvm.hexagon.M2.vmac2su.s1
1130 __builtin_HEXAGON_M2_vmac2su_s1(0, 0, 0);
1131 // CHECK: @llvm.hexagon.M2.vmpy2es.s0
1132 __builtin_HEXAGON_M2_vmpy2es_s0(0, 0);
1133 // CHECK: @llvm.hexagon.M2.vmpy2es.s1
1134 __builtin_HEXAGON_M2_vmpy2es_s1(0, 0);
1135 // CHECK: @llvm.hexagon.M2.vmpy2s.s0
1136 __builtin_HEXAGON_M2_vmpy2s_s0(0, 0);
1137 // CHECK: @llvm.hexagon.M2.vmpy2s.s0pack
1138 __builtin_HEXAGON_M2_vmpy2s_s0pack(0, 0);
1139 // CHECK: @llvm.hexagon.M2.vmpy2s.s1
1140 __builtin_HEXAGON_M2_vmpy2s_s1(0, 0);
1141 // CHECK: @llvm.hexagon.M2.vmpy2s.s1pack
1142 __builtin_HEXAGON_M2_vmpy2s_s1pack(0, 0);
1143 // CHECK: @llvm.hexagon.M2.vmpy2su.s0
1144 __builtin_HEXAGON_M2_vmpy2su_s0(0, 0);
1145 // CHECK: @llvm.hexagon.M2.vmpy2su.s1
1146 __builtin_HEXAGON_M2_vmpy2su_s1(0, 0);
1147 // CHECK: @llvm.hexagon.M2.vraddh
1148 __builtin_HEXAGON_M2_vraddh(0, 0);
1149 // CHECK: @llvm.hexagon.M2.vradduh
1150 __builtin_HEXAGON_M2_vradduh(0, 0);
1151 // CHECK: @llvm.hexagon.M2.vrcmaci.s0
1152 __builtin_HEXAGON_M2_vrcmaci_s0(0, 0, 0);
1153 // CHECK: @llvm.hexagon.M2.vrcmaci.s0c
1154 __builtin_HEXAGON_M2_vrcmaci_s0c(0, 0, 0);
1155 // CHECK: @llvm.hexagon.M2.vrcmacr.s0
1156 __builtin_HEXAGON_M2_vrcmacr_s0(0, 0, 0);
1157 // CHECK: @llvm.hexagon.M2.vrcmacr.s0c
1158 __builtin_HEXAGON_M2_vrcmacr_s0c(0, 0, 0);
1159 // CHECK: @llvm.hexagon.M2.vrcmpyi.s0
1160 __builtin_HEXAGON_M2_vrcmpyi_s0(0, 0);
1161 // CHECK: @llvm.hexagon.M2.vrcmpyi.s0c
1162 __builtin_HEXAGON_M2_vrcmpyi_s0c(0, 0);
1163 // CHECK: @llvm.hexagon.M2.vrcmpyr.s0
1164 __builtin_HEXAGON_M2_vrcmpyr_s0(0, 0);
1165 // CHECK: @llvm.hexagon.M2.vrcmpyr.s0c
1166 __builtin_HEXAGON_M2_vrcmpyr_s0c(0, 0);
1167 // CHECK: @llvm.hexagon.M2.vrcmpys.acc.s1
1168 __builtin_HEXAGON_M2_vrcmpys_acc_s1(0, 0, 0);
1169 // CHECK: @llvm.hexagon.M2.vrcmpys.s1
1170 __builtin_HEXAGON_M2_vrcmpys_s1(0, 0);
1171 // CHECK: @llvm.hexagon.M2.vrcmpys.s1rp
1172 __builtin_HEXAGON_M2_vrcmpys_s1rp(0, 0);
1173 // CHECK: @llvm.hexagon.M2.vrmac.s0
1174 __builtin_HEXAGON_M2_vrmac_s0(0, 0, 0);
1175 // CHECK: @llvm.hexagon.M2.vrmpy.s0
1176 __builtin_HEXAGON_M2_vrmpy_s0(0, 0);
1177 // CHECK: @llvm.hexagon.M2.xor.xacc
1178 __builtin_HEXAGON_M2_xor_xacc(0, 0, 0);
1179 // CHECK: @llvm.hexagon.M4.and.and
1180 __builtin_HEXAGON_M4_and_and(0, 0, 0);
1181 // CHECK: @llvm.hexagon.M4.and.andn
1182 __builtin_HEXAGON_M4_and_andn(0, 0, 0);
1183 // CHECK: @llvm.hexagon.M4.and.or
1184 __builtin_HEXAGON_M4_and_or(0, 0, 0);
1185 // CHECK: @llvm.hexagon.M4.and.xor
1186 __builtin_HEXAGON_M4_and_xor(0, 0, 0);
1187 // CHECK: @llvm.hexagon.M4.cmpyi.wh
1188 __builtin_HEXAGON_M4_cmpyi_wh(0, 0);
1189 // CHECK: @llvm.hexagon.M4.cmpyi.whc
1190 __builtin_HEXAGON_M4_cmpyi_whc(0, 0);
1191 // CHECK: @llvm.hexagon.M4.cmpyr.wh
1192 __builtin_HEXAGON_M4_cmpyr_wh(0, 0);
1193 // CHECK: @llvm.hexagon.M4.cmpyr.whc
1194 __builtin_HEXAGON_M4_cmpyr_whc(0, 0);
1195 // CHECK: @llvm.hexagon.M4.mac.up.s1.sat
1196 __builtin_HEXAGON_M4_mac_up_s1_sat(0, 0, 0);
1197 // CHECK: @llvm.hexagon.M4.mpyri.addi
1198 __builtin_HEXAGON_M4_mpyri_addi(0, 0, 0);
1199 // CHECK: @llvm.hexagon.M4.mpyri.addr
1200 __builtin_HEXAGON_M4_mpyri_addr(0, 0, 0);
1201 // CHECK: @llvm.hexagon.M4.mpyri.addr.u2
1202 __builtin_HEXAGON_M4_mpyri_addr_u2(0, 0, 0);
1203 // CHECK: @llvm.hexagon.M4.mpyrr.addi
1204 __builtin_HEXAGON_M4_mpyrr_addi(0, 0, 0);
1205 // CHECK: @llvm.hexagon.M4.mpyrr.addr
1206 __builtin_HEXAGON_M4_mpyrr_addr(0, 0, 0);
1207 // CHECK: @llvm.hexagon.M4.nac.up.s1.sat
1208 __builtin_HEXAGON_M4_nac_up_s1_sat(0, 0, 0);
1209 // CHECK: @llvm.hexagon.M4.or.and
1210 __builtin_HEXAGON_M4_or_and(0, 0, 0);
1211 // CHECK: @llvm.hexagon.M4.or.andn
1212 __builtin_HEXAGON_M4_or_andn(0, 0, 0);
1213 // CHECK: @llvm.hexagon.M4.or.or
1214 __builtin_HEXAGON_M4_or_or(0, 0, 0);
1215 // CHECK: @llvm.hexagon.M4.or.xor
1216 __builtin_HEXAGON_M4_or_xor(0, 0, 0);
1217 // CHECK: @llvm.hexagon.M4.pmpyw
1218 __builtin_HEXAGON_M4_pmpyw(0, 0);
1219 // CHECK: @llvm.hexagon.M4.pmpyw.acc
1220 __builtin_HEXAGON_M4_pmpyw_acc(0, 0, 0);
1221 // CHECK: @llvm.hexagon.M4.vpmpyh
1222 __builtin_HEXAGON_M4_vpmpyh(0, 0);
1223 // CHECK: @llvm.hexagon.M4.vpmpyh.acc
1224 __builtin_HEXAGON_M4_vpmpyh_acc(0, 0, 0);
1225 // CHECK: @llvm.hexagon.M4.vrmpyeh.acc.s0
1226 __builtin_HEXAGON_M4_vrmpyeh_acc_s0(0, 0, 0);
1227 // CHECK: @llvm.hexagon.M4.vrmpyeh.acc.s1
1228 __builtin_HEXAGON_M4_vrmpyeh_acc_s1(0, 0, 0);
1229 // CHECK: @llvm.hexagon.M4.vrmpyeh.s0
1230 __builtin_HEXAGON_M4_vrmpyeh_s0(0, 0);
1231 // CHECK: @llvm.hexagon.M4.vrmpyeh.s1
1232 __builtin_HEXAGON_M4_vrmpyeh_s1(0, 0);
1233 // CHECK: @llvm.hexagon.M4.vrmpyoh.acc.s0
1234 __builtin_HEXAGON_M4_vrmpyoh_acc_s0(0, 0, 0);
1235 // CHECK: @llvm.hexagon.M4.vrmpyoh.acc.s1
1236 __builtin_HEXAGON_M4_vrmpyoh_acc_s1(0, 0, 0);
1237 // CHECK: @llvm.hexagon.M4.vrmpyoh.s0
1238 __builtin_HEXAGON_M4_vrmpyoh_s0(0, 0);
1239 // CHECK: @llvm.hexagon.M4.vrmpyoh.s1
1240 __builtin_HEXAGON_M4_vrmpyoh_s1(0, 0);
1241 // CHECK: @llvm.hexagon.M4.xor.and
1242 __builtin_HEXAGON_M4_xor_and(0, 0, 0);
1243 // CHECK: @llvm.hexagon.M4.xor.andn
1244 __builtin_HEXAGON_M4_xor_andn(0, 0, 0);
1245 // CHECK: @llvm.hexagon.M4.xor.or
1246 __builtin_HEXAGON_M4_xor_or(0, 0, 0);
1247 // CHECK: @llvm.hexagon.M4.xor.xacc
1248 __builtin_HEXAGON_M4_xor_xacc(0, 0, 0);
1249 // CHECK: @llvm.hexagon.M5.vdmacbsu
1250 __builtin_HEXAGON_M5_vdmacbsu(0, 0, 0);
1251 // CHECK: @llvm.hexagon.M5.vdmpybsu
1252 __builtin_HEXAGON_M5_vdmpybsu(0, 0);
1253 // CHECK: @llvm.hexagon.M5.vmacbsu
1254 __builtin_HEXAGON_M5_vmacbsu(0, 0, 0);
1255 // CHECK: @llvm.hexagon.M5.vmacbuu
1256 __builtin_HEXAGON_M5_vmacbuu(0, 0, 0);
1257 // CHECK: @llvm.hexagon.M5.vmpybsu
1258 __builtin_HEXAGON_M5_vmpybsu(0, 0);
1259 // CHECK: @llvm.hexagon.M5.vmpybuu
1260 __builtin_HEXAGON_M5_vmpybuu(0, 0);
1261 // CHECK: @llvm.hexagon.M5.vrmacbsu
1262 __builtin_HEXAGON_M5_vrmacbsu(0, 0, 0);
1263 // CHECK: @llvm.hexagon.M5.vrmacbuu
1264 __builtin_HEXAGON_M5_vrmacbuu(0, 0, 0);
1265 // CHECK: @llvm.hexagon.M5.vrmpybsu
1266 __builtin_HEXAGON_M5_vrmpybsu(0, 0);
1267 // CHECK: @llvm.hexagon.M5.vrmpybuu
1268 __builtin_HEXAGON_M5_vrmpybuu(0, 0);
1269 // CHECK: @llvm.hexagon.M6.vabsdiffb
1270 __builtin_HEXAGON_M6_vabsdiffb(0, 0);
1271 // CHECK: @llvm.hexagon.M6.vabsdiffub
1272 __builtin_HEXAGON_M6_vabsdiffub(0, 0);
1273 // CHECK: @llvm.hexagon.S2.addasl.rrri
1274 __builtin_HEXAGON_S2_addasl_rrri(0, 0, 0);
1275 // CHECK: @llvm.hexagon.S2.asl.i.p
1276 __builtin_HEXAGON_S2_asl_i_p(0, 0);
1277 // CHECK: @llvm.hexagon.S2.asl.i.p.acc
1278 __builtin_HEXAGON_S2_asl_i_p_acc(0, 0, 0);
1279 // CHECK: @llvm.hexagon.S2.asl.i.p.and
1280 __builtin_HEXAGON_S2_asl_i_p_and(0, 0, 0);
1281 // CHECK: @llvm.hexagon.S2.asl.i.p.nac
1282 __builtin_HEXAGON_S2_asl_i_p_nac(0, 0, 0);
1283 // CHECK: @llvm.hexagon.S2.asl.i.p.or
1284 __builtin_HEXAGON_S2_asl_i_p_or(0, 0, 0);
1285 // CHECK: @llvm.hexagon.S2.asl.i.p.xacc
1286 __builtin_HEXAGON_S2_asl_i_p_xacc(0, 0, 0);
1287 // CHECK: @llvm.hexagon.S2.asl.i.r
1288 __builtin_HEXAGON_S2_asl_i_r(0, 0);
1289 // CHECK: @llvm.hexagon.S2.asl.i.r.acc
1290 __builtin_HEXAGON_S2_asl_i_r_acc(0, 0, 0);
1291 // CHECK: @llvm.hexagon.S2.asl.i.r.and
1292 __builtin_HEXAGON_S2_asl_i_r_and(0, 0, 0);
1293 // CHECK: @llvm.hexagon.S2.asl.i.r.nac
1294 __builtin_HEXAGON_S2_asl_i_r_nac(0, 0, 0);
1295 // CHECK: @llvm.hexagon.S2.asl.i.r.or
1296 __builtin_HEXAGON_S2_asl_i_r_or(0, 0, 0);
1297 // CHECK: @llvm.hexagon.S2.asl.i.r.sat
1298 __builtin_HEXAGON_S2_asl_i_r_sat(0, 0);
1299 // CHECK: @llvm.hexagon.S2.asl.i.r.xacc
1300 __builtin_HEXAGON_S2_asl_i_r_xacc(0, 0, 0);
1301 // CHECK: @llvm.hexagon.S2.asl.i.vh
1302 __builtin_HEXAGON_S2_asl_i_vh(0, 0);
1303 // CHECK: @llvm.hexagon.S2.asl.i.vw
1304 __builtin_HEXAGON_S2_asl_i_vw(0, 0);
1305 // CHECK: @llvm.hexagon.S2.asl.r.p
1306 __builtin_HEXAGON_S2_asl_r_p(0, 0);
1307 // CHECK: @llvm.hexagon.S2.asl.r.p.acc
1308 __builtin_HEXAGON_S2_asl_r_p_acc(0, 0, 0);
1309 // CHECK: @llvm.hexagon.S2.asl.r.p.and
1310 __builtin_HEXAGON_S2_asl_r_p_and(0, 0, 0);
1311 // CHECK: @llvm.hexagon.S2.asl.r.p.nac
1312 __builtin_HEXAGON_S2_asl_r_p_nac(0, 0, 0);
1313 // CHECK: @llvm.hexagon.S2.asl.r.p.or
1314 __builtin_HEXAGON_S2_asl_r_p_or(0, 0, 0);
1315 // CHECK: @llvm.hexagon.S2.asl.r.p.xor
1316 __builtin_HEXAGON_S2_asl_r_p_xor(0, 0, 0);
1317 // CHECK: @llvm.hexagon.S2.asl.r.r
1318 __builtin_HEXAGON_S2_asl_r_r(0, 0);
1319 // CHECK: @llvm.hexagon.S2.asl.r.r.acc
1320 __builtin_HEXAGON_S2_asl_r_r_acc(0, 0, 0);
1321 // CHECK: @llvm.hexagon.S2.asl.r.r.and
1322 __builtin_HEXAGON_S2_asl_r_r_and(0, 0, 0);
1323 // CHECK: @llvm.hexagon.S2.asl.r.r.nac
1324 __builtin_HEXAGON_S2_asl_r_r_nac(0, 0, 0);
1325 // CHECK: @llvm.hexagon.S2.asl.r.r.or
1326 __builtin_HEXAGON_S2_asl_r_r_or(0, 0, 0);
1327 // CHECK: @llvm.hexagon.S2.asl.r.r.sat
1328 __builtin_HEXAGON_S2_asl_r_r_sat(0, 0);
1329 // CHECK: @llvm.hexagon.S2.asl.r.vh
1330 __builtin_HEXAGON_S2_asl_r_vh(0, 0);
1331 // CHECK: @llvm.hexagon.S2.asl.r.vw
1332 __builtin_HEXAGON_S2_asl_r_vw(0, 0);
1333 // CHECK: @llvm.hexagon.S2.asr.i.p
1334 __builtin_HEXAGON_S2_asr_i_p(0, 0);
1335 // CHECK: @llvm.hexagon.S2.asr.i.p.acc
1336 __builtin_HEXAGON_S2_asr_i_p_acc(0, 0, 0);
1337 // CHECK: @llvm.hexagon.S2.asr.i.p.and
1338 __builtin_HEXAGON_S2_asr_i_p_and(0, 0, 0);
1339 // CHECK: @llvm.hexagon.S2.asr.i.p.nac
1340 __builtin_HEXAGON_S2_asr_i_p_nac(0, 0, 0);
1341 // CHECK: @llvm.hexagon.S2.asr.i.p.or
1342 __builtin_HEXAGON_S2_asr_i_p_or(0, 0, 0);
1343 // CHECK: @llvm.hexagon.S2.asr.i.p.rnd
1344 __builtin_HEXAGON_S2_asr_i_p_rnd(0, 0);
1345 // CHECK: @llvm.hexagon.S2.asr.i.p.rnd.goodsyntax
1346 __builtin_HEXAGON_S2_asr_i_p_rnd_goodsyntax(0, 0);
1347 // CHECK: @llvm.hexagon.S2.asr.i.r
1348 __builtin_HEXAGON_S2_asr_i_r(0, 0);
1349 // CHECK: @llvm.hexagon.S2.asr.i.r.acc
1350 __builtin_HEXAGON_S2_asr_i_r_acc(0, 0, 0);
1351 // CHECK: @llvm.hexagon.S2.asr.i.r.and
1352 __builtin_HEXAGON_S2_asr_i_r_and(0, 0, 0);
1353 // CHECK: @llvm.hexagon.S2.asr.i.r.nac
1354 __builtin_HEXAGON_S2_asr_i_r_nac(0, 0, 0);
1355 // CHECK: @llvm.hexagon.S2.asr.i.r.or
1356 __builtin_HEXAGON_S2_asr_i_r_or(0, 0, 0);
1357 // CHECK: @llvm.hexagon.S2.asr.i.r.rnd
1358 __builtin_HEXAGON_S2_asr_i_r_rnd(0, 0);
1359 // CHECK: @llvm.hexagon.S2.asr.i.r.rnd.goodsyntax
1360 __builtin_HEXAGON_S2_asr_i_r_rnd_goodsyntax(0, 0);
1361 // CHECK: @llvm.hexagon.S2.asr.i.svw.trun
1362 __builtin_HEXAGON_S2_asr_i_svw_trun(0, 0);
1363 // CHECK: @llvm.hexagon.S2.asr.i.vh
1364 __builtin_HEXAGON_S2_asr_i_vh(0, 0);
1365 // CHECK: @llvm.hexagon.S2.asr.i.vw
1366 __builtin_HEXAGON_S2_asr_i_vw(0, 0);
1367 // CHECK: @llvm.hexagon.S2.asr.r.p
1368 __builtin_HEXAGON_S2_asr_r_p(0, 0);
1369 // CHECK: @llvm.hexagon.S2.asr.r.p.acc
1370 __builtin_HEXAGON_S2_asr_r_p_acc(0, 0, 0);
1371 // CHECK: @llvm.hexagon.S2.asr.r.p.and
1372 __builtin_HEXAGON_S2_asr_r_p_and(0, 0, 0);
1373 // CHECK: @llvm.hexagon.S2.asr.r.p.nac
1374 __builtin_HEXAGON_S2_asr_r_p_nac(0, 0, 0);
1375 // CHECK: @llvm.hexagon.S2.asr.r.p.or
1376 __builtin_HEXAGON_S2_asr_r_p_or(0, 0, 0);
1377 // CHECK: @llvm.hexagon.S2.asr.r.p.xor
1378 __builtin_HEXAGON_S2_asr_r_p_xor(0, 0, 0);
1379 // CHECK: @llvm.hexagon.S2.asr.r.r
1380 __builtin_HEXAGON_S2_asr_r_r(0, 0);
1381 // CHECK: @llvm.hexagon.S2.asr.r.r.acc
1382 __builtin_HEXAGON_S2_asr_r_r_acc(0, 0, 0);
1383 // CHECK: @llvm.hexagon.S2.asr.r.r.and
1384 __builtin_HEXAGON_S2_asr_r_r_and(0, 0, 0);
1385 // CHECK: @llvm.hexagon.S2.asr.r.r.nac
1386 __builtin_HEXAGON_S2_asr_r_r_nac(0, 0, 0);
1387 // CHECK: @llvm.hexagon.S2.asr.r.r.or
1388 __builtin_HEXAGON_S2_asr_r_r_or(0, 0, 0);
1389 // CHECK: @llvm.hexagon.S2.asr.r.r.sat
1390 __builtin_HEXAGON_S2_asr_r_r_sat(0, 0);
1391 // CHECK: @llvm.hexagon.S2.asr.r.svw.trun
1392 __builtin_HEXAGON_S2_asr_r_svw_trun(0, 0);
1393 // CHECK: @llvm.hexagon.S2.asr.r.vh
1394 __builtin_HEXAGON_S2_asr_r_vh(0, 0);
1395 // CHECK: @llvm.hexagon.S2.asr.r.vw
1396 __builtin_HEXAGON_S2_asr_r_vw(0, 0);
1397 // CHECK: @llvm.hexagon.S2.brev
1398 __builtin_HEXAGON_S2_brev(0);
1399 // CHECK: @llvm.hexagon.S2.brevp
1400 __builtin_HEXAGON_S2_brevp(0);
1401 // CHECK: @llvm.hexagon.S2.cl0
1402 __builtin_HEXAGON_S2_cl0(0);
1403 // CHECK: @llvm.hexagon.S2.cl0p
1404 __builtin_HEXAGON_S2_cl0p(0);
1405 // CHECK: @llvm.hexagon.S2.cl1
1406 __builtin_HEXAGON_S2_cl1(0);
1407 // CHECK: @llvm.hexagon.S2.cl1p
1408 __builtin_HEXAGON_S2_cl1p(0);
1409 // CHECK: @llvm.hexagon.S2.clb
1410 __builtin_HEXAGON_S2_clb(0);
1411 // CHECK: @llvm.hexagon.S2.clbnorm
1412 __builtin_HEXAGON_S2_clbnorm(0);
1413 // CHECK: @llvm.hexagon.S2.clbp
1414 __builtin_HEXAGON_S2_clbp(0);
1415 // CHECK: @llvm.hexagon.S2.clrbit.i
1416 __builtin_HEXAGON_S2_clrbit_i(0, 0);
1417 // CHECK: @llvm.hexagon.S2.clrbit.r
1418 __builtin_HEXAGON_S2_clrbit_r(0, 0);
1419 // CHECK: @llvm.hexagon.S2.ct0
1420 __builtin_HEXAGON_S2_ct0(0);
1421 // CHECK: @llvm.hexagon.S2.ct0p
1422 __builtin_HEXAGON_S2_ct0p(0);
1423 // CHECK: @llvm.hexagon.S2.ct1
1424 __builtin_HEXAGON_S2_ct1(0);
1425 // CHECK: @llvm.hexagon.S2.ct1p
1426 __builtin_HEXAGON_S2_ct1p(0);
1427 // CHECK: @llvm.hexagon.S2.deinterleave
1428 __builtin_HEXAGON_S2_deinterleave(0);
1429 // CHECK: @llvm.hexagon.S2.extractu
1430 __builtin_HEXAGON_S2_extractu(0, 0, 0);
1431 // CHECK: @llvm.hexagon.S2.extractu.rp
1432 __builtin_HEXAGON_S2_extractu_rp(0, 0);
1433 // CHECK: @llvm.hexagon.S2.extractup
1434 __builtin_HEXAGON_S2_extractup(0, 0, 0);
1435 // CHECK: @llvm.hexagon.S2.extractup.rp
1436 __builtin_HEXAGON_S2_extractup_rp(0, 0);
1437 // CHECK: @llvm.hexagon.S2.insert
1438 __builtin_HEXAGON_S2_insert(0, 0, 0, 0);
1439 // CHECK: @llvm.hexagon.S2.insert.rp
1440 __builtin_HEXAGON_S2_insert_rp(0, 0, 0);
1441 // CHECK: @llvm.hexagon.S2.insertp
1442 __builtin_HEXAGON_S2_insertp(0, 0, 0, 0);
1443 // CHECK: @llvm.hexagon.S2.insertp.rp
1444 __builtin_HEXAGON_S2_insertp_rp(0, 0, 0);
1445 // CHECK: @llvm.hexagon.S2.interleave
1446 __builtin_HEXAGON_S2_interleave(0);
1447 // CHECK: @llvm.hexagon.S2.lfsp
1448 __builtin_HEXAGON_S2_lfsp(0, 0);
1449 // CHECK: @llvm.hexagon.S2.lsl.r.p
1450 __builtin_HEXAGON_S2_lsl_r_p(0, 0);
1451 // CHECK: @llvm.hexagon.S2.lsl.r.p.acc
1452 __builtin_HEXAGON_S2_lsl_r_p_acc(0, 0, 0);
1453 // CHECK: @llvm.hexagon.S2.lsl.r.p.and
1454 __builtin_HEXAGON_S2_lsl_r_p_and(0, 0, 0);
1455 // CHECK: @llvm.hexagon.S2.lsl.r.p.nac
1456 __builtin_HEXAGON_S2_lsl_r_p_nac(0, 0, 0);
1457 // CHECK: @llvm.hexagon.S2.lsl.r.p.or
1458 __builtin_HEXAGON_S2_lsl_r_p_or(0, 0, 0);
1459 // CHECK: @llvm.hexagon.S2.lsl.r.p.xor
1460 __builtin_HEXAGON_S2_lsl_r_p_xor(0, 0, 0);
1461 // CHECK: @llvm.hexagon.S2.lsl.r.r
1462 __builtin_HEXAGON_S2_lsl_r_r(0, 0);
1463 // CHECK: @llvm.hexagon.S2.lsl.r.r.acc
1464 __builtin_HEXAGON_S2_lsl_r_r_acc(0, 0, 0);
1465 // CHECK: @llvm.hexagon.S2.lsl.r.r.and
1466 __builtin_HEXAGON_S2_lsl_r_r_and(0, 0, 0);
1467 // CHECK: @llvm.hexagon.S2.lsl.r.r.nac
1468 __builtin_HEXAGON_S2_lsl_r_r_nac(0, 0, 0);
1469 // CHECK: @llvm.hexagon.S2.lsl.r.r.or
1470 __builtin_HEXAGON_S2_lsl_r_r_or(0, 0, 0);
1471 // CHECK: @llvm.hexagon.S2.lsl.r.vh
1472 __builtin_HEXAGON_S2_lsl_r_vh(0, 0);
1473 // CHECK: @llvm.hexagon.S2.lsl.r.vw
1474 __builtin_HEXAGON_S2_lsl_r_vw(0, 0);
1475 // CHECK: @llvm.hexagon.S2.lsr.i.p
1476 __builtin_HEXAGON_S2_lsr_i_p(0, 0);
1477 // CHECK: @llvm.hexagon.S2.lsr.i.p.acc
1478 __builtin_HEXAGON_S2_lsr_i_p_acc(0, 0, 0);
1479 // CHECK: @llvm.hexagon.S2.lsr.i.p.and
1480 __builtin_HEXAGON_S2_lsr_i_p_and(0, 0, 0);
1481 // CHECK: @llvm.hexagon.S2.lsr.i.p.nac
1482 __builtin_HEXAGON_S2_lsr_i_p_nac(0, 0, 0);
1483 // CHECK: @llvm.hexagon.S2.lsr.i.p.or
1484 __builtin_HEXAGON_S2_lsr_i_p_or(0, 0, 0);
1485 // CHECK: @llvm.hexagon.S2.lsr.i.p.xacc
1486 __builtin_HEXAGON_S2_lsr_i_p_xacc(0, 0, 0);
1487 // CHECK: @llvm.hexagon.S2.lsr.i.r
1488 __builtin_HEXAGON_S2_lsr_i_r(0, 0);
1489 // CHECK: @llvm.hexagon.S2.lsr.i.r.acc
1490 __builtin_HEXAGON_S2_lsr_i_r_acc(0, 0, 0);
1491 // CHECK: @llvm.hexagon.S2.lsr.i.r.and
1492 __builtin_HEXAGON_S2_lsr_i_r_and(0, 0, 0);
1493 // CHECK: @llvm.hexagon.S2.lsr.i.r.nac
1494 __builtin_HEXAGON_S2_lsr_i_r_nac(0, 0, 0);
1495 // CHECK: @llvm.hexagon.S2.lsr.i.r.or
1496 __builtin_HEXAGON_S2_lsr_i_r_or(0, 0, 0);
1497 // CHECK: @llvm.hexagon.S2.lsr.i.r.xacc
1498 __builtin_HEXAGON_S2_lsr_i_r_xacc(0, 0, 0);
1499 // CHECK: @llvm.hexagon.S2.lsr.i.vh
1500 __builtin_HEXAGON_S2_lsr_i_vh(0, 0);
1501 // CHECK: @llvm.hexagon.S2.lsr.i.vw
1502 __builtin_HEXAGON_S2_lsr_i_vw(0, 0);
1503 // CHECK: @llvm.hexagon.S2.lsr.r.p
1504 __builtin_HEXAGON_S2_lsr_r_p(0, 0);
1505 // CHECK: @llvm.hexagon.S2.lsr.r.p.acc
1506 __builtin_HEXAGON_S2_lsr_r_p_acc(0, 0, 0);
1507 // CHECK: @llvm.hexagon.S2.lsr.r.p.and
1508 __builtin_HEXAGON_S2_lsr_r_p_and(0, 0, 0);
1509 // CHECK: @llvm.hexagon.S2.lsr.r.p.nac
1510 __builtin_HEXAGON_S2_lsr_r_p_nac(0, 0, 0);
1511 // CHECK: @llvm.hexagon.S2.lsr.r.p.or
1512 __builtin_HEXAGON_S2_lsr_r_p_or(0, 0, 0);
1513 // CHECK: @llvm.hexagon.S2.lsr.r.p.xor
1514 __builtin_HEXAGON_S2_lsr_r_p_xor(0, 0, 0);
1515 // CHECK: @llvm.hexagon.S2.lsr.r.r
1516 __builtin_HEXAGON_S2_lsr_r_r(0, 0);
1517 // CHECK: @llvm.hexagon.S2.lsr.r.r.acc
1518 __builtin_HEXAGON_S2_lsr_r_r_acc(0, 0, 0);
1519 // CHECK: @llvm.hexagon.S2.lsr.r.r.and
1520 __builtin_HEXAGON_S2_lsr_r_r_and(0, 0, 0);
1521 // CHECK: @llvm.hexagon.S2.lsr.r.r.nac
1522 __builtin_HEXAGON_S2_lsr_r_r_nac(0, 0, 0);
1523 // CHECK: @llvm.hexagon.S2.lsr.r.r.or
1524 __builtin_HEXAGON_S2_lsr_r_r_or(0, 0, 0);
1525 // CHECK: @llvm.hexagon.S2.lsr.r.vh
1526 __builtin_HEXAGON_S2_lsr_r_vh(0, 0);
1527 // CHECK: @llvm.hexagon.S2.lsr.r.vw
1528 __builtin_HEXAGON_S2_lsr_r_vw(0, 0);
1529 // CHECK: @llvm.hexagon.S2.packhl
1530 __builtin_HEXAGON_S2_packhl(0, 0);
1531 // CHECK: @llvm.hexagon.S2.parityp
1532 __builtin_HEXAGON_S2_parityp(0, 0);
1533 // CHECK: @llvm.hexagon.S2.setbit.i
1534 __builtin_HEXAGON_S2_setbit_i(0, 0);
1535 // CHECK: @llvm.hexagon.S2.setbit.r
1536 __builtin_HEXAGON_S2_setbit_r(0, 0);
1537 // CHECK: @llvm.hexagon.S2.shuffeb
1538 __builtin_HEXAGON_S2_shuffeb(0, 0);
1539 // CHECK: @llvm.hexagon.S2.shuffeh
1540 __builtin_HEXAGON_S2_shuffeh(0, 0);
1541 // CHECK: @llvm.hexagon.S2.shuffob
1542 __builtin_HEXAGON_S2_shuffob(0, 0);
1543 // CHECK: @llvm.hexagon.S2.shuffoh
1544 __builtin_HEXAGON_S2_shuffoh(0, 0);
1545 // CHECK: @llvm.hexagon.S2.svsathb
1546 __builtin_HEXAGON_S2_svsathb(0);
1547 // CHECK: @llvm.hexagon.S2.svsathub
1548 __builtin_HEXAGON_S2_svsathub(0);
1549 // CHECK: @llvm.hexagon.S2.tableidxb.goodsyntax
1550 __builtin_HEXAGON_S2_tableidxb_goodsyntax(0, 0, 0, 0);
1551 // CHECK: @llvm.hexagon.S2.tableidxd.goodsyntax
1552 __builtin_HEXAGON_S2_tableidxd_goodsyntax(0, 0, 0, 0);
1553 // CHECK: @llvm.hexagon.S2.tableidxh.goodsyntax
1554 __builtin_HEXAGON_S2_tableidxh_goodsyntax(0, 0, 0, 0);
1555 // CHECK: @llvm.hexagon.S2.tableidxw.goodsyntax
1556 __builtin_HEXAGON_S2_tableidxw_goodsyntax(0, 0, 0, 0);
1557 // CHECK: @llvm.hexagon.S2.togglebit.i
1558 __builtin_HEXAGON_S2_togglebit_i(0, 0);
1559 // CHECK: @llvm.hexagon.S2.togglebit.r
1560 __builtin_HEXAGON_S2_togglebit_r(0, 0);
1561 // CHECK: @llvm.hexagon.S2.tstbit.i
1562 __builtin_HEXAGON_S2_tstbit_i(0, 0);
1563 // CHECK: @llvm.hexagon.S2.tstbit.r
1564 __builtin_HEXAGON_S2_tstbit_r(0, 0);
1565 // CHECK: @llvm.hexagon.S2.valignib
1566 __builtin_HEXAGON_S2_valignib(0, 0, 0);
1567 // CHECK: @llvm.hexagon.S2.valignrb
1568 __builtin_HEXAGON_S2_valignrb(0, 0, 0);
1569 // CHECK: @llvm.hexagon.S2.vcnegh
1570 __builtin_HEXAGON_S2_vcnegh(0, 0);
1571 // CHECK: @llvm.hexagon.S2.vcrotate
1572 __builtin_HEXAGON_S2_vcrotate(0, 0);
1573 // CHECK: @llvm.hexagon.S2.vrcnegh
1574 __builtin_HEXAGON_S2_vrcnegh(0, 0, 0);
1575 // CHECK: @llvm.hexagon.S2.vrndpackwh
1576 __builtin_HEXAGON_S2_vrndpackwh(0);
1577 // CHECK: @llvm.hexagon.S2.vrndpackwhs
1578 __builtin_HEXAGON_S2_vrndpackwhs(0);
1579 // CHECK: @llvm.hexagon.S2.vsathb
1580 __builtin_HEXAGON_S2_vsathb(0);
1581 // CHECK: @llvm.hexagon.S2.vsathb.nopack
1582 __builtin_HEXAGON_S2_vsathb_nopack(0);
1583 // CHECK: @llvm.hexagon.S2.vsathub
1584 __builtin_HEXAGON_S2_vsathub(0);
1585 // CHECK: @llvm.hexagon.S2.vsathub.nopack
1586 __builtin_HEXAGON_S2_vsathub_nopack(0);
1587 // CHECK: @llvm.hexagon.S2.vsatwh
1588 __builtin_HEXAGON_S2_vsatwh(0);
1589 // CHECK: @llvm.hexagon.S2.vsatwh.nopack
1590 __builtin_HEXAGON_S2_vsatwh_nopack(0);
1591 // CHECK: @llvm.hexagon.S2.vsatwuh
1592 __builtin_HEXAGON_S2_vsatwuh(0);
1593 // CHECK: @llvm.hexagon.S2.vsatwuh.nopack
1594 __builtin_HEXAGON_S2_vsatwuh_nopack(0);
1595 // CHECK: @llvm.hexagon.S2.vsplatrb
1596 __builtin_HEXAGON_S2_vsplatrb(0);
1597 // CHECK: @llvm.hexagon.S2.vsplatrh
1598 __builtin_HEXAGON_S2_vsplatrh(0);
1599 // CHECK: @llvm.hexagon.S2.vspliceib
1600 __builtin_HEXAGON_S2_vspliceib(0, 0, 0);
1601 // CHECK: @llvm.hexagon.S2.vsplicerb
1602 __builtin_HEXAGON_S2_vsplicerb(0, 0, 0);
1603 // CHECK: @llvm.hexagon.S2.vsxtbh
1604 __builtin_HEXAGON_S2_vsxtbh(0);
1605 // CHECK: @llvm.hexagon.S2.vsxthw
1606 __builtin_HEXAGON_S2_vsxthw(0);
1607 // CHECK: @llvm.hexagon.S2.vtrunehb
1608 __builtin_HEXAGON_S2_vtrunehb(0);
1609 // CHECK: @llvm.hexagon.S2.vtrunewh
1610 __builtin_HEXAGON_S2_vtrunewh(0, 0);
1611 // CHECK: @llvm.hexagon.S2.vtrunohb
1612 __builtin_HEXAGON_S2_vtrunohb(0);
1613 // CHECK: @llvm.hexagon.S2.vtrunowh
1614 __builtin_HEXAGON_S2_vtrunowh(0, 0);
1615 // CHECK: @llvm.hexagon.S2.vzxtbh
1616 __builtin_HEXAGON_S2_vzxtbh(0);
1617 // CHECK: @llvm.hexagon.S2.vzxthw
1618 __builtin_HEXAGON_S2_vzxthw(0);
1619 // CHECK: @llvm.hexagon.S4.addaddi
1620 __builtin_HEXAGON_S4_addaddi(0, 0, 0);
1621 // CHECK: @llvm.hexagon.S4.addi.asl.ri
1622 __builtin_HEXAGON_S4_addi_asl_ri(0, 0, 0);
1623 // CHECK: @llvm.hexagon.S4.addi.lsr.ri
1624 __builtin_HEXAGON_S4_addi_lsr_ri(0, 0, 0);
1625 // CHECK: @llvm.hexagon.S4.andi.asl.ri
1626 __builtin_HEXAGON_S4_andi_asl_ri(0, 0, 0);
1627 // CHECK: @llvm.hexagon.S4.andi.lsr.ri
1628 __builtin_HEXAGON_S4_andi_lsr_ri(0, 0, 0);
1629 // CHECK: @llvm.hexagon.S4.clbaddi
1630 __builtin_HEXAGON_S4_clbaddi(0, 0);
1631 // CHECK: @llvm.hexagon.S4.clbpaddi
1632 __builtin_HEXAGON_S4_clbpaddi(0, 0);
1633 // CHECK: @llvm.hexagon.S4.clbpnorm
1634 __builtin_HEXAGON_S4_clbpnorm(0);
1635 // CHECK: @llvm.hexagon.S4.extract
1636 __builtin_HEXAGON_S4_extract(0, 0, 0);
1637 // CHECK: @llvm.hexagon.S4.extract.rp
1638 __builtin_HEXAGON_S4_extract_rp(0, 0);
1639 // CHECK: @llvm.hexagon.S4.extractp
1640 __builtin_HEXAGON_S4_extractp(0, 0, 0);
1641 // CHECK: @llvm.hexagon.S4.extractp.rp
1642 __builtin_HEXAGON_S4_extractp_rp(0, 0);
1643 // CHECK: @llvm.hexagon.S4.lsli
1644 __builtin_HEXAGON_S4_lsli(0, 0);
1645 // CHECK: @llvm.hexagon.S4.ntstbit.i
1646 __builtin_HEXAGON_S4_ntstbit_i(0, 0);
1647 // CHECK: @llvm.hexagon.S4.ntstbit.r
1648 __builtin_HEXAGON_S4_ntstbit_r(0, 0);
1649 // CHECK: @llvm.hexagon.S4.or.andi
1650 __builtin_HEXAGON_S4_or_andi(0, 0, 0);
1651 // CHECK: @llvm.hexagon.S4.or.andix
1652 __builtin_HEXAGON_S4_or_andix(0, 0, 0);
1653 // CHECK: @llvm.hexagon.S4.or.ori
1654 __builtin_HEXAGON_S4_or_ori(0, 0, 0);
1655 // CHECK: @llvm.hexagon.S4.ori.asl.ri
1656 __builtin_HEXAGON_S4_ori_asl_ri(0, 0, 0);
1657 // CHECK: @llvm.hexagon.S4.ori.lsr.ri
1658 __builtin_HEXAGON_S4_ori_lsr_ri(0, 0, 0);
1659 // CHECK: @llvm.hexagon.S4.parity
1660 __builtin_HEXAGON_S4_parity(0, 0);
1661 // CHECK: @llvm.hexagon.S4.subaddi
1662 __builtin_HEXAGON_S4_subaddi(0, 0, 0);
1663 // CHECK: @llvm.hexagon.S4.subi.asl.ri
1664 __builtin_HEXAGON_S4_subi_asl_ri(0, 0, 0);
1665 // CHECK: @llvm.hexagon.S4.subi.lsr.ri
1666 __builtin_HEXAGON_S4_subi_lsr_ri(0, 0, 0);
1667 // CHECK: @llvm.hexagon.S4.vrcrotate
1668 __builtin_HEXAGON_S4_vrcrotate(0, 0, 0);
1669 // CHECK: @llvm.hexagon.S4.vrcrotate.acc
1670 __builtin_HEXAGON_S4_vrcrotate_acc(0, 0, 0, 0);
1671 // CHECK: @llvm.hexagon.S4.vxaddsubh
1672 __builtin_HEXAGON_S4_vxaddsubh(0, 0);
1673 // CHECK: @llvm.hexagon.S4.vxaddsubhr
1674 __builtin_HEXAGON_S4_vxaddsubhr(0, 0);
1675 // CHECK: @llvm.hexagon.S4.vxaddsubw
1676 __builtin_HEXAGON_S4_vxaddsubw(0, 0);
1677 // CHECK: @llvm.hexagon.S4.vxsubaddh
1678 __builtin_HEXAGON_S4_vxsubaddh(0, 0);
1679 // CHECK: @llvm.hexagon.S4.vxsubaddhr
1680 __builtin_HEXAGON_S4_vxsubaddhr(0, 0);
1681 // CHECK: @llvm.hexagon.S4.vxsubaddw
1682 __builtin_HEXAGON_S4_vxsubaddw(0, 0);
1683 // CHECK: @llvm.hexagon.S5.asrhub.rnd.sat.goodsyntax
1684 __builtin_HEXAGON_S5_asrhub_rnd_sat_goodsyntax(0, 0);
1685 // CHECK: @llvm.hexagon.S5.asrhub.sat
1686 __builtin_HEXAGON_S5_asrhub_sat(0, 0);
1687 // CHECK: @llvm.hexagon.S5.popcountp
1688 __builtin_HEXAGON_S5_popcountp(0);
1689 // CHECK: @llvm.hexagon.S5.vasrhrnd.goodsyntax
1690 __builtin_HEXAGON_S5_vasrhrnd_goodsyntax(0, 0);
1691 // CHECK: @llvm.hexagon.S6.rol.i.p
1692 __builtin_HEXAGON_S6_rol_i_p(0, 0);
1693 // CHECK: @llvm.hexagon.S6.rol.i.p.acc
1694 __builtin_HEXAGON_S6_rol_i_p_acc(0, 0, 0);
1695 // CHECK: @llvm.hexagon.S6.rol.i.p.and
1696 __builtin_HEXAGON_S6_rol_i_p_and(0, 0, 0);
1697 // CHECK: @llvm.hexagon.S6.rol.i.p.nac
1698 __builtin_HEXAGON_S6_rol_i_p_nac(0, 0, 0);
1699 // CHECK: @llvm.hexagon.S6.rol.i.p.or
1700 __builtin_HEXAGON_S6_rol_i_p_or(0, 0, 0);
1701 // CHECK: @llvm.hexagon.S6.rol.i.p.xacc
1702 __builtin_HEXAGON_S6_rol_i_p_xacc(0, 0, 0);
1703 // CHECK: @llvm.hexagon.S6.rol.i.r
1704 __builtin_HEXAGON_S6_rol_i_r(0, 0);
1705 // CHECK: @llvm.hexagon.S6.rol.i.r.acc
1706 __builtin_HEXAGON_S6_rol_i_r_acc(0, 0, 0);
1707 // CHECK: @llvm.hexagon.S6.rol.i.r.and
1708 __builtin_HEXAGON_S6_rol_i_r_and(0, 0, 0);
1709 // CHECK: @llvm.hexagon.S6.rol.i.r.nac
1710 __builtin_HEXAGON_S6_rol_i_r_nac(0, 0, 0);
1711 // CHECK: @llvm.hexagon.S6.rol.i.r.or
1712 __builtin_HEXAGON_S6_rol_i_r_or(0, 0, 0);
1713 // CHECK: @llvm.hexagon.S6.rol.i.r.xacc
1714 __builtin_HEXAGON_S6_rol_i_r_xacc(0, 0, 0);
1715 // CHECK: @llvm.hexagon.S6.vsplatrbp
1716 __builtin_HEXAGON_S6_vsplatrbp(0);
1717 // CHECK: @llvm.hexagon.S6.vtrunehb.ppp
1718 __builtin_HEXAGON_S6_vtrunehb_ppp(0, 0);
1719 // CHECK: @llvm.hexagon.S6.vtrunohb.ppp
1720 __builtin_HEXAGON_S6_vtrunohb_ppp(0, 0);
1721 // CHECK: @llvm.hexagon.Y2.dccleana
1722 __builtin_HEXAGON_Y2_dccleana(0);
1723 // CHECK: @llvm.hexagon.Y2.dccleaninva
1724 __builtin_HEXAGON_Y2_dccleaninva(0);
1725 // CHECK: @llvm.hexagon.Y2.dcinva
1726 __builtin_HEXAGON_Y2_dcinva(0);
1727 // CHECK: @llvm.hexagon.Y2.dczeroa
1728 __builtin_HEXAGON_Y2_dczeroa(0);
1729 // CHECK: @llvm.hexagon.Y4.l2fetch
1730 __builtin_HEXAGON_Y4_l2fetch(0, 0);
1731 // CHECK: @llvm.hexagon.Y5.l2fetch
1732 __builtin_HEXAGON_Y5_l2fetch(0, 0);
1734 // CHECK: @llvm.hexagon.L2.loadrb.pbr
1735 __builtin_brev_ldb(0, 0, 0);
1736 // CHECK: @llvm.hexagon.L2.loadrd.pbr
1737 __builtin_brev_ldd(0, 0, 0);
1738 // CHECK: @llvm.hexagon.L2.loadrh.pbr
1739 __builtin_brev_ldh(0, 0, 0);
1740 // CHECK: @llvm.hexagon.L2.loadrub.pbr
1741 __builtin_brev_ldub(0, 0, 0);
1742 // CHECK: @llvm.hexagon.L2.loadruh.pbr
1743 __builtin_brev_lduh(0, 0, 0);
1744 // CHECK: @llvm.hexagon.L2.loadri.pbr
1745 __builtin_brev_ldw(0, 0, 0);
1746 // CHECK: @llvm.hexagon.S2.storerb.pbr
1747 __builtin_brev_stb(0, 0, 0);
1748 // CHECK: @llvm.hexagon.S2.storerd.pbr
1749 __builtin_brev_std(0, 0LL, 0);
1750 // CHECK: @llvm.hexagon.S2.storerh.pbr
1751 __builtin_brev_sth(0, 0, 0);
1752 // CHECK: @llvm.hexagon.S2.storerf.pbr
1753 __builtin_brev_sthhi(0, 0, 0);
1754 // CHECK: @llvm.hexagon.S2.storeri.pbr
1755 __builtin_brev_stw(0, 0, 0);
1757 // CHECK: @llvm.hexagon.circ.ldb
1758 __builtin_circ_ldb(0, 0, 0, 0);
1759 // CHECK: @llvm.hexagon.circ.ldd
1760 __builtin_circ_ldd(0, 0, 0, 0);
1761 // CHECK: @llvm.hexagon.circ.ldh
1762 __builtin_circ_ldh(0, 0, 0, 0);
1763 // CHECK: @llvm.hexagon.circ.ldub
1764 __builtin_circ_ldub(0, 0, 0, 0);
1765 // CHECK: @llvm.hexagon.circ.lduh
1766 __builtin_circ_lduh(0, 0, 0, 0);
1767 // CHECK: @llvm.hexagon.circ.ldw
1768 __builtin_circ_ldw(0, 0, 0, 0);
1769 // CHECK: @llvm.hexagon.circ.stb
1770 __builtin_circ_stb(0, 0, 0, 0);
1771 // CHECK: @llvm.hexagon.circ.std
1772 __builtin_circ_std(0, 0, 0, 0);
1773 // CHECK: @llvm.hexagon.circ.sth
1774 __builtin_circ_sth(0, 0, 0, 0);
1775 // CHECK: @llvm.hexagon.circ.sthhi
1776 __builtin_circ_sthhi(0, 0, 0, 0);
1777 // CHECK: @llvm.hexagon.circ.stw
1778 __builtin_circ_stw(0, 0, 0, 0);
1779 // CHECK: @llvm.hexagon.prefetch
1780 __builtin_HEXAGON_prefetch(0);