1*67e74705SXin Li // REQUIRES: hexagon-registered-target
2*67e74705SXin Li // RUN: %clang_cc1 -triple hexagon-unknown-elf -emit-llvm %s -o - | FileCheck %s
3*67e74705SXin Li
foo()4*67e74705SXin Li void foo() {
5*67e74705SXin Li int v16 __attribute__((__vector_size__(64)));
6*67e74705SXin Li int v32 __attribute__((__vector_size__(128)));
7*67e74705SXin Li int v64 __attribute__((__vector_size__(256)));
8*67e74705SXin Li
9*67e74705SXin Li // The circ/brev intrinsics do not have _HEXAGON_ in the name.
10*67e74705SXin Li __builtin_brev_ldb(0, 0, 0);
11*67e74705SXin Li // CHECK: @llvm.hexagon.brev.ldb
12*67e74705SXin Li __builtin_brev_ldd(0, 0, 0);
13*67e74705SXin Li // CHECK: @llvm.hexagon.brev.ldd
14*67e74705SXin Li __builtin_brev_ldh(0, 0, 0);
15*67e74705SXin Li // CHECK: @llvm.hexagon.brev.ldh
16*67e74705SXin Li __builtin_brev_ldub(0, 0, 0);
17*67e74705SXin Li // CHECK: @llvm.hexagon.brev.ldub
18*67e74705SXin Li __builtin_brev_lduh(0, 0, 0);
19*67e74705SXin Li // CHECK: @llvm.hexagon.brev.lduh
20*67e74705SXin Li __builtin_brev_ldw(0, 0, 0);
21*67e74705SXin Li // CHECK: @llvm.hexagon.brev.ldw
22*67e74705SXin Li __builtin_brev_stb(0, 0, 0);
23*67e74705SXin Li // CHECK: @llvm.hexagon.brev.stb
24*67e74705SXin Li __builtin_brev_std(0, 0LL, 0);
25*67e74705SXin Li // CHECK: @llvm.hexagon.brev.std
26*67e74705SXin Li __builtin_brev_sth(0, 0, 0);
27*67e74705SXin Li // CHECK: @llvm.hexagon.brev.sth
28*67e74705SXin Li __builtin_brev_sthhi(0, 0, 0);
29*67e74705SXin Li // CHECK: @llvm.hexagon.brev.sthhi
30*67e74705SXin Li __builtin_brev_stw(0, 0, 0);
31*67e74705SXin Li // CHECK: @llvm.hexagon.brev.stw
32*67e74705SXin Li __builtin_circ_ldb(0, 0, 0, 0);
33*67e74705SXin Li // CHECK: llvm.hexagon.circ.ldb
34*67e74705SXin Li __builtin_circ_ldd(0, 0, 0, 0);
35*67e74705SXin Li // CHECK: llvm.hexagon.circ.ldd
36*67e74705SXin Li __builtin_circ_ldh(0, 0, 0, 0);
37*67e74705SXin Li // CHECK: llvm.hexagon.circ.ldh
38*67e74705SXin Li __builtin_circ_ldub(0, 0, 0, 0);
39*67e74705SXin Li // CHECK: llvm.hexagon.circ.ldub
40*67e74705SXin Li __builtin_circ_lduh(0, 0, 0, 0);
41*67e74705SXin Li // CHECK: llvm.hexagon.circ.lduh
42*67e74705SXin Li __builtin_circ_ldw(0, 0, 0, 0);
43*67e74705SXin Li // CHECK: llvm.hexagon.circ.ldw
44*67e74705SXin Li __builtin_circ_stb(0, 0, 0, 0);
45*67e74705SXin Li // CHECK: llvm.hexagon.circ.stb
46*67e74705SXin Li __builtin_circ_std(0, 0LL, 0, 0);
47*67e74705SXin Li // CHECK: llvm.hexagon.circ.std
48*67e74705SXin Li __builtin_circ_sth(0, 0, 0, 0);
49*67e74705SXin Li // CHECK: llvm.hexagon.circ.sth
50*67e74705SXin Li __builtin_circ_sthhi(0, 0, 0, 0);
51*67e74705SXin Li // CHECK: llvm.hexagon.circ.sthhi
52*67e74705SXin Li __builtin_circ_stw(0, 0, 0, 0);
53*67e74705SXin Li // CHECK: llvm.hexagon.circ.stw
54*67e74705SXin Li
55*67e74705SXin Li __builtin_HEXAGON_A2_abs(0);
56*67e74705SXin Li // CHECK: @llvm.hexagon.A2.abs
57*67e74705SXin Li __builtin_HEXAGON_A2_absp(0);
58*67e74705SXin Li // CHECK: @llvm.hexagon.A2.absp
59*67e74705SXin Li __builtin_HEXAGON_A2_abssat(0);
60*67e74705SXin Li // CHECK: @llvm.hexagon.A2.abssat
61*67e74705SXin Li __builtin_HEXAGON_A2_add(0, 0);
62*67e74705SXin Li // CHECK: @llvm.hexagon.A2.add
63*67e74705SXin Li __builtin_HEXAGON_A2_addh_h16_hh(0, 0);
64*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.h16.hh
65*67e74705SXin Li __builtin_HEXAGON_A2_addh_h16_hl(0, 0);
66*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.h16.hl
67*67e74705SXin Li __builtin_HEXAGON_A2_addh_h16_lh(0, 0);
68*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.h16.lh
69*67e74705SXin Li __builtin_HEXAGON_A2_addh_h16_ll(0, 0);
70*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.h16.ll
71*67e74705SXin Li __builtin_HEXAGON_A2_addh_h16_sat_hh(0, 0);
72*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.h16.sat.hh
73*67e74705SXin Li __builtin_HEXAGON_A2_addh_h16_sat_hl(0, 0);
74*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.h16.sat.hl
75*67e74705SXin Li __builtin_HEXAGON_A2_addh_h16_sat_lh(0, 0);
76*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.h16.sat.lh
77*67e74705SXin Li __builtin_HEXAGON_A2_addh_h16_sat_ll(0, 0);
78*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.h16.sat.ll
79*67e74705SXin Li __builtin_HEXAGON_A2_addh_l16_hl(0, 0);
80*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.l16.hl
81*67e74705SXin Li __builtin_HEXAGON_A2_addh_l16_ll(0, 0);
82*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.l16.ll
83*67e74705SXin Li __builtin_HEXAGON_A2_addh_l16_sat_hl(0, 0);
84*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.l16.sat.hl
85*67e74705SXin Li __builtin_HEXAGON_A2_addh_l16_sat_ll(0, 0);
86*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addh.l16.sat.ll
87*67e74705SXin Li __builtin_HEXAGON_A2_addi(0, 0);
88*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addi
89*67e74705SXin Li __builtin_HEXAGON_A2_addp(0, 0);
90*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addp
91*67e74705SXin Li __builtin_HEXAGON_A2_addpsat(0, 0);
92*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addpsat
93*67e74705SXin Li __builtin_HEXAGON_A2_addsat(0, 0);
94*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addsat
95*67e74705SXin Li __builtin_HEXAGON_A2_addsp(0, 0);
96*67e74705SXin Li // CHECK: @llvm.hexagon.A2.addsp
97*67e74705SXin Li __builtin_HEXAGON_A2_and(0, 0);
98*67e74705SXin Li // CHECK: @llvm.hexagon.A2.and
99*67e74705SXin Li __builtin_HEXAGON_A2_andir(0, 0);
100*67e74705SXin Li // CHECK: @llvm.hexagon.A2.andir
101*67e74705SXin Li __builtin_HEXAGON_A2_andp(0, 0);
102*67e74705SXin Li // CHECK: @llvm.hexagon.A2.andp
103*67e74705SXin Li __builtin_HEXAGON_A2_aslh(0);
104*67e74705SXin Li // CHECK: @llvm.hexagon.A2.aslh
105*67e74705SXin Li __builtin_HEXAGON_A2_asrh(0);
106*67e74705SXin Li // CHECK: @llvm.hexagon.A2.asrh
107*67e74705SXin Li __builtin_HEXAGON_A2_combine_hh(0, 0);
108*67e74705SXin Li // CHECK: @llvm.hexagon.A2.combine.hh
109*67e74705SXin Li __builtin_HEXAGON_A2_combine_hl(0, 0);
110*67e74705SXin Li // CHECK: @llvm.hexagon.A2.combine.hl
111*67e74705SXin Li __builtin_HEXAGON_A2_combineii(0, 0);
112*67e74705SXin Li // CHECK: @llvm.hexagon.A2.combineii
113*67e74705SXin Li __builtin_HEXAGON_A2_combine_lh(0, 0);
114*67e74705SXin Li // CHECK: @llvm.hexagon.A2.combine.lh
115*67e74705SXin Li __builtin_HEXAGON_A2_combine_ll(0, 0);
116*67e74705SXin Li // CHECK: @llvm.hexagon.A2.combine.ll
117*67e74705SXin Li __builtin_HEXAGON_A2_combinew(0, 0);
118*67e74705SXin Li // CHECK: @llvm.hexagon.A2.combinew
119*67e74705SXin Li __builtin_HEXAGON_A2_max(0, 0);
120*67e74705SXin Li // CHECK: @llvm.hexagon.A2.max
121*67e74705SXin Li __builtin_HEXAGON_A2_maxp(0, 0);
122*67e74705SXin Li // CHECK: @llvm.hexagon.A2.maxp
123*67e74705SXin Li __builtin_HEXAGON_A2_maxu(0, 0);
124*67e74705SXin Li // CHECK: @llvm.hexagon.A2.maxu
125*67e74705SXin Li __builtin_HEXAGON_A2_maxup(0, 0);
126*67e74705SXin Li // CHECK: @llvm.hexagon.A2.maxup
127*67e74705SXin Li __builtin_HEXAGON_A2_min(0, 0);
128*67e74705SXin Li // CHECK: @llvm.hexagon.A2.min
129*67e74705SXin Li __builtin_HEXAGON_A2_minp(0, 0);
130*67e74705SXin Li // CHECK: @llvm.hexagon.A2.minp
131*67e74705SXin Li __builtin_HEXAGON_A2_minu(0, 0);
132*67e74705SXin Li // CHECK: @llvm.hexagon.A2.minu
133*67e74705SXin Li __builtin_HEXAGON_A2_minup(0, 0);
134*67e74705SXin Li // CHECK: @llvm.hexagon.A2.minup
135*67e74705SXin Li __builtin_HEXAGON_A2_neg(0);
136*67e74705SXin Li // CHECK: @llvm.hexagon.A2.neg
137*67e74705SXin Li __builtin_HEXAGON_A2_negp(0);
138*67e74705SXin Li // CHECK: @llvm.hexagon.A2.negp
139*67e74705SXin Li __builtin_HEXAGON_A2_negsat(0);
140*67e74705SXin Li // CHECK: @llvm.hexagon.A2.negsat
141*67e74705SXin Li __builtin_HEXAGON_A2_not(0);
142*67e74705SXin Li // CHECK: @llvm.hexagon.A2.not
143*67e74705SXin Li __builtin_HEXAGON_A2_notp(0);
144*67e74705SXin Li // CHECK: @llvm.hexagon.A2.notp
145*67e74705SXin Li __builtin_HEXAGON_A2_or(0, 0);
146*67e74705SXin Li // CHECK: @llvm.hexagon.A2.or
147*67e74705SXin Li __builtin_HEXAGON_A2_orir(0, 0);
148*67e74705SXin Li // CHECK: @llvm.hexagon.A2.orir
149*67e74705SXin Li __builtin_HEXAGON_A2_orp(0, 0);
150*67e74705SXin Li // CHECK: @llvm.hexagon.A2.orp
151*67e74705SXin Li __builtin_HEXAGON_A2_roundsat(0);
152*67e74705SXin Li // CHECK: @llvm.hexagon.A2.roundsat
153*67e74705SXin Li __builtin_HEXAGON_A2_sat(0);
154*67e74705SXin Li // CHECK: @llvm.hexagon.A2.sat
155*67e74705SXin Li __builtin_HEXAGON_A2_satb(0);
156*67e74705SXin Li // CHECK: @llvm.hexagon.A2.satb
157*67e74705SXin Li __builtin_HEXAGON_A2_sath(0);
158*67e74705SXin Li // CHECK: @llvm.hexagon.A2.sath
159*67e74705SXin Li __builtin_HEXAGON_A2_satub(0);
160*67e74705SXin Li // CHECK: @llvm.hexagon.A2.satub
161*67e74705SXin Li __builtin_HEXAGON_A2_satuh(0);
162*67e74705SXin Li // CHECK: @llvm.hexagon.A2.satuh
163*67e74705SXin Li __builtin_HEXAGON_A2_sub(0, 0);
164*67e74705SXin Li // CHECK: @llvm.hexagon.A2.sub
165*67e74705SXin Li __builtin_HEXAGON_A2_subh_h16_hh(0, 0);
166*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.h16.hh
167*67e74705SXin Li __builtin_HEXAGON_A2_subh_h16_hl(0, 0);
168*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.h16.hl
169*67e74705SXin Li __builtin_HEXAGON_A2_subh_h16_lh(0, 0);
170*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.h16.lh
171*67e74705SXin Li __builtin_HEXAGON_A2_subh_h16_ll(0, 0);
172*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.h16.ll
173*67e74705SXin Li __builtin_HEXAGON_A2_subh_h16_sat_hh(0, 0);
174*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.h16.sat.hh
175*67e74705SXin Li __builtin_HEXAGON_A2_subh_h16_sat_hl(0, 0);
176*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.h16.sat.hl
177*67e74705SXin Li __builtin_HEXAGON_A2_subh_h16_sat_lh(0, 0);
178*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.h16.sat.lh
179*67e74705SXin Li __builtin_HEXAGON_A2_subh_h16_sat_ll(0, 0);
180*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.h16.sat.ll
181*67e74705SXin Li __builtin_HEXAGON_A2_subh_l16_hl(0, 0);
182*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.l16.hl
183*67e74705SXin Li __builtin_HEXAGON_A2_subh_l16_ll(0, 0);
184*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.l16.ll
185*67e74705SXin Li __builtin_HEXAGON_A2_subh_l16_sat_hl(0, 0);
186*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.l16.sat.hl
187*67e74705SXin Li __builtin_HEXAGON_A2_subh_l16_sat_ll(0, 0);
188*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subh.l16.sat.ll
189*67e74705SXin Li __builtin_HEXAGON_A2_subp(0, 0);
190*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subp
191*67e74705SXin Li __builtin_HEXAGON_A2_subri(0, 0);
192*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subri
193*67e74705SXin Li __builtin_HEXAGON_A2_subsat(0, 0);
194*67e74705SXin Li // CHECK: @llvm.hexagon.A2.subsat
195*67e74705SXin Li __builtin_HEXAGON_A2_svaddh(0, 0);
196*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svaddh
197*67e74705SXin Li __builtin_HEXAGON_A2_svaddhs(0, 0);
198*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svaddhs
199*67e74705SXin Li __builtin_HEXAGON_A2_svadduhs(0, 0);
200*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svadduhs
201*67e74705SXin Li __builtin_HEXAGON_A2_svavgh(0, 0);
202*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svavgh
203*67e74705SXin Li __builtin_HEXAGON_A2_svavghs(0, 0);
204*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svavghs
205*67e74705SXin Li __builtin_HEXAGON_A2_svnavgh(0, 0);
206*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svnavgh
207*67e74705SXin Li __builtin_HEXAGON_A2_svsubh(0, 0);
208*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svsubh
209*67e74705SXin Li __builtin_HEXAGON_A2_svsubhs(0, 0);
210*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svsubhs
211*67e74705SXin Li __builtin_HEXAGON_A2_svsubuhs(0, 0);
212*67e74705SXin Li // CHECK: @llvm.hexagon.A2.svsubuhs
213*67e74705SXin Li __builtin_HEXAGON_A2_swiz(0);
214*67e74705SXin Li // CHECK: @llvm.hexagon.A2.swiz
215*67e74705SXin Li __builtin_HEXAGON_A2_sxtb(0);
216*67e74705SXin Li // CHECK: @llvm.hexagon.A2.sxtb
217*67e74705SXin Li __builtin_HEXAGON_A2_sxth(0);
218*67e74705SXin Li // CHECK: @llvm.hexagon.A2.sxth
219*67e74705SXin Li __builtin_HEXAGON_A2_sxtw(0);
220*67e74705SXin Li // CHECK: @llvm.hexagon.A2.sxtw
221*67e74705SXin Li __builtin_HEXAGON_A2_tfr(0);
222*67e74705SXin Li // CHECK: @llvm.hexagon.A2.tfr
223*67e74705SXin Li __builtin_HEXAGON_A2_tfrih(0, 0);
224*67e74705SXin Li // CHECK: @llvm.hexagon.A2.tfrih
225*67e74705SXin Li __builtin_HEXAGON_A2_tfril(0, 0);
226*67e74705SXin Li // CHECK: @llvm.hexagon.A2.tfril
227*67e74705SXin Li __builtin_HEXAGON_A2_tfrp(0);
228*67e74705SXin Li // CHECK: @llvm.hexagon.A2.tfrp
229*67e74705SXin Li __builtin_HEXAGON_A2_tfrpi(0);
230*67e74705SXin Li // CHECK: @llvm.hexagon.A2.tfrpi
231*67e74705SXin Li __builtin_HEXAGON_A2_tfrsi(0);
232*67e74705SXin Li // CHECK: @llvm.hexagon.A2.tfrsi
233*67e74705SXin Li __builtin_HEXAGON_A2_vabsh(0);
234*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vabsh
235*67e74705SXin Li __builtin_HEXAGON_A2_vabshsat(0);
236*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vabshsat
237*67e74705SXin Li __builtin_HEXAGON_A2_vabsw(0);
238*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vabsw
239*67e74705SXin Li __builtin_HEXAGON_A2_vabswsat(0);
240*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vabswsat
241*67e74705SXin Li __builtin_HEXAGON_A2_vaddb_map(0, 0);
242*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vaddb.map
243*67e74705SXin Li __builtin_HEXAGON_A2_vaddh(0, 0);
244*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vaddh
245*67e74705SXin Li __builtin_HEXAGON_A2_vaddhs(0, 0);
246*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vaddhs
247*67e74705SXin Li __builtin_HEXAGON_A2_vaddub(0, 0);
248*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vaddub
249*67e74705SXin Li __builtin_HEXAGON_A2_vaddubs(0, 0);
250*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vaddubs
251*67e74705SXin Li __builtin_HEXAGON_A2_vadduhs(0, 0);
252*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vadduhs
253*67e74705SXin Li __builtin_HEXAGON_A2_vaddw(0, 0);
254*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vaddw
255*67e74705SXin Li __builtin_HEXAGON_A2_vaddws(0, 0);
256*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vaddws
257*67e74705SXin Li __builtin_HEXAGON_A2_vavgh(0, 0);
258*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavgh
259*67e74705SXin Li __builtin_HEXAGON_A2_vavghcr(0, 0);
260*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavghcr
261*67e74705SXin Li __builtin_HEXAGON_A2_vavghr(0, 0);
262*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavghr
263*67e74705SXin Li __builtin_HEXAGON_A2_vavgub(0, 0);
264*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavgub
265*67e74705SXin Li __builtin_HEXAGON_A2_vavgubr(0, 0);
266*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavgubr
267*67e74705SXin Li __builtin_HEXAGON_A2_vavguh(0, 0);
268*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavguh
269*67e74705SXin Li __builtin_HEXAGON_A2_vavguhr(0, 0);
270*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavguhr
271*67e74705SXin Li __builtin_HEXAGON_A2_vavguw(0, 0);
272*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavguw
273*67e74705SXin Li __builtin_HEXAGON_A2_vavguwr(0, 0);
274*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavguwr
275*67e74705SXin Li __builtin_HEXAGON_A2_vavgw(0, 0);
276*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavgw
277*67e74705SXin Li __builtin_HEXAGON_A2_vavgwcr(0, 0);
278*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavgwcr
279*67e74705SXin Li __builtin_HEXAGON_A2_vavgwr(0, 0);
280*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vavgwr
281*67e74705SXin Li __builtin_HEXAGON_A2_vcmpbeq(0, 0);
282*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vcmpbeq
283*67e74705SXin Li __builtin_HEXAGON_A2_vcmpbgtu(0, 0);
284*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vcmpbgtu
285*67e74705SXin Li __builtin_HEXAGON_A2_vcmpheq(0, 0);
286*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vcmpheq
287*67e74705SXin Li __builtin_HEXAGON_A2_vcmphgt(0, 0);
288*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vcmphgt
289*67e74705SXin Li __builtin_HEXAGON_A2_vcmphgtu(0, 0);
290*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vcmphgtu
291*67e74705SXin Li __builtin_HEXAGON_A2_vcmpweq(0, 0);
292*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vcmpweq
293*67e74705SXin Li __builtin_HEXAGON_A2_vcmpwgt(0, 0);
294*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vcmpwgt
295*67e74705SXin Li __builtin_HEXAGON_A2_vcmpwgtu(0, 0);
296*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vcmpwgtu
297*67e74705SXin Li __builtin_HEXAGON_A2_vconj(0);
298*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vconj
299*67e74705SXin Li __builtin_HEXAGON_A2_vmaxb(0, 0);
300*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vmaxb
301*67e74705SXin Li __builtin_HEXAGON_A2_vmaxh(0, 0);
302*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vmaxh
303*67e74705SXin Li __builtin_HEXAGON_A2_vmaxub(0, 0);
304*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vmaxub
305*67e74705SXin Li __builtin_HEXAGON_A2_vmaxuh(0, 0);
306*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vmaxuh
307*67e74705SXin Li __builtin_HEXAGON_A2_vmaxuw(0, 0);
308*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vmaxuw
309*67e74705SXin Li __builtin_HEXAGON_A2_vmaxw(0, 0);
310*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vmaxw
311*67e74705SXin Li __builtin_HEXAGON_A2_vminb(0, 0);
312*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vminb
313*67e74705SXin Li __builtin_HEXAGON_A2_vminh(0, 0);
314*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vminh
315*67e74705SXin Li __builtin_HEXAGON_A2_vminub(0, 0);
316*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vminub
317*67e74705SXin Li __builtin_HEXAGON_A2_vminuh(0, 0);
318*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vminuh
319*67e74705SXin Li __builtin_HEXAGON_A2_vminuw(0, 0);
320*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vminuw
321*67e74705SXin Li __builtin_HEXAGON_A2_vminw(0, 0);
322*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vminw
323*67e74705SXin Li __builtin_HEXAGON_A2_vnavgh(0, 0);
324*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vnavgh
325*67e74705SXin Li __builtin_HEXAGON_A2_vnavghcr(0, 0);
326*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vnavghcr
327*67e74705SXin Li __builtin_HEXAGON_A2_vnavghr(0, 0);
328*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vnavghr
329*67e74705SXin Li __builtin_HEXAGON_A2_vnavgw(0, 0);
330*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vnavgw
331*67e74705SXin Li __builtin_HEXAGON_A2_vnavgwcr(0, 0);
332*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vnavgwcr
333*67e74705SXin Li __builtin_HEXAGON_A2_vnavgwr(0, 0);
334*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vnavgwr
335*67e74705SXin Li __builtin_HEXAGON_A2_vraddub(0, 0);
336*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vraddub
337*67e74705SXin Li __builtin_HEXAGON_A2_vraddub_acc(0, 0, 0);
338*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vraddub.acc
339*67e74705SXin Li __builtin_HEXAGON_A2_vrsadub(0, 0);
340*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vrsadub
341*67e74705SXin Li __builtin_HEXAGON_A2_vrsadub_acc(0, 0, 0);
342*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vrsadub.acc
343*67e74705SXin Li __builtin_HEXAGON_A2_vsubb_map(0, 0);
344*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vsubb.map
345*67e74705SXin Li __builtin_HEXAGON_A2_vsubh(0, 0);
346*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vsubh
347*67e74705SXin Li __builtin_HEXAGON_A2_vsubhs(0, 0);
348*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vsubhs
349*67e74705SXin Li __builtin_HEXAGON_A2_vsubub(0, 0);
350*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vsubub
351*67e74705SXin Li __builtin_HEXAGON_A2_vsububs(0, 0);
352*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vsububs
353*67e74705SXin Li __builtin_HEXAGON_A2_vsubuhs(0, 0);
354*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vsubuhs
355*67e74705SXin Li __builtin_HEXAGON_A2_vsubw(0, 0);
356*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vsubw
357*67e74705SXin Li __builtin_HEXAGON_A2_vsubws(0, 0);
358*67e74705SXin Li // CHECK: @llvm.hexagon.A2.vsubws
359*67e74705SXin Li __builtin_HEXAGON_A2_xor(0, 0);
360*67e74705SXin Li // CHECK: @llvm.hexagon.A2.xor
361*67e74705SXin Li __builtin_HEXAGON_A2_xorp(0, 0);
362*67e74705SXin Li // CHECK: @llvm.hexagon.A2.xorp
363*67e74705SXin Li __builtin_HEXAGON_A2_zxtb(0);
364*67e74705SXin Li // CHECK: @llvm.hexagon.A2.zxtb
365*67e74705SXin Li __builtin_HEXAGON_A2_zxth(0);
366*67e74705SXin Li // CHECK: @llvm.hexagon.A2.zxth
367*67e74705SXin Li __builtin_HEXAGON_A4_andn(0, 0);
368*67e74705SXin Li // CHECK: @llvm.hexagon.A4.andn
369*67e74705SXin Li __builtin_HEXAGON_A4_andnp(0, 0);
370*67e74705SXin Li // CHECK: @llvm.hexagon.A4.andnp
371*67e74705SXin Li __builtin_HEXAGON_A4_bitsplit(0, 0);
372*67e74705SXin Li // CHECK: @llvm.hexagon.A4.bitsplit
373*67e74705SXin Li __builtin_HEXAGON_A4_bitspliti(0, 0);
374*67e74705SXin Li // CHECK: @llvm.hexagon.A4.bitspliti
375*67e74705SXin Li __builtin_HEXAGON_A4_boundscheck(0, 0);
376*67e74705SXin Li // CHECK: @llvm.hexagon.A4.boundscheck
377*67e74705SXin Li __builtin_HEXAGON_A4_cmpbeq(0, 0);
378*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmpbeq
379*67e74705SXin Li __builtin_HEXAGON_A4_cmpbeqi(0, 0);
380*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmpbeqi
381*67e74705SXin Li __builtin_HEXAGON_A4_cmpbgt(0, 0);
382*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmpbgt
383*67e74705SXin Li __builtin_HEXAGON_A4_cmpbgti(0, 0);
384*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmpbgti
385*67e74705SXin Li __builtin_HEXAGON_A4_cmpbgtu(0, 0);
386*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmpbgtu
387*67e74705SXin Li __builtin_HEXAGON_A4_cmpbgtui(0, 0);
388*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmpbgtui
389*67e74705SXin Li __builtin_HEXAGON_A4_cmpheq(0, 0);
390*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmpheq
391*67e74705SXin Li __builtin_HEXAGON_A4_cmpheqi(0, 0);
392*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmpheqi
393*67e74705SXin Li __builtin_HEXAGON_A4_cmphgt(0, 0);
394*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmphgt
395*67e74705SXin Li __builtin_HEXAGON_A4_cmphgti(0, 0);
396*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmphgti
397*67e74705SXin Li __builtin_HEXAGON_A4_cmphgtu(0, 0);
398*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmphgtu
399*67e74705SXin Li __builtin_HEXAGON_A4_cmphgtui(0, 0);
400*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cmphgtui
401*67e74705SXin Li __builtin_HEXAGON_A4_combineir(0, 0);
402*67e74705SXin Li // CHECK: @llvm.hexagon.A4.combineir
403*67e74705SXin Li __builtin_HEXAGON_A4_combineri(0, 0);
404*67e74705SXin Li // CHECK: @llvm.hexagon.A4.combineri
405*67e74705SXin Li __builtin_HEXAGON_A4_cround_ri(0, 0);
406*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cround.ri
407*67e74705SXin Li __builtin_HEXAGON_A4_cround_rr(0, 0);
408*67e74705SXin Li // CHECK: @llvm.hexagon.A4.cround.rr
409*67e74705SXin Li __builtin_HEXAGON_A4_modwrapu(0, 0);
410*67e74705SXin Li // CHECK: @llvm.hexagon.A4.modwrapu
411*67e74705SXin Li __builtin_HEXAGON_A4_orn(0, 0);
412*67e74705SXin Li // CHECK: @llvm.hexagon.A4.orn
413*67e74705SXin Li __builtin_HEXAGON_A4_ornp(0, 0);
414*67e74705SXin Li // CHECK: @llvm.hexagon.A4.ornp
415*67e74705SXin Li __builtin_HEXAGON_A4_rcmpeq(0, 0);
416*67e74705SXin Li // CHECK: @llvm.hexagon.A4.rcmpeq
417*67e74705SXin Li __builtin_HEXAGON_A4_rcmpeqi(0, 0);
418*67e74705SXin Li // CHECK: @llvm.hexagon.A4.rcmpeqi
419*67e74705SXin Li __builtin_HEXAGON_A4_rcmpneq(0, 0);
420*67e74705SXin Li // CHECK: @llvm.hexagon.A4.rcmpneq
421*67e74705SXin Li __builtin_HEXAGON_A4_rcmpneqi(0, 0);
422*67e74705SXin Li // CHECK: @llvm.hexagon.A4.rcmpneqi
423*67e74705SXin Li __builtin_HEXAGON_A4_round_ri(0, 0);
424*67e74705SXin Li // CHECK: @llvm.hexagon.A4.round.ri
425*67e74705SXin Li __builtin_HEXAGON_A4_round_ri_sat(0, 0);
426*67e74705SXin Li // CHECK: @llvm.hexagon.A4.round.ri.sat
427*67e74705SXin Li __builtin_HEXAGON_A4_round_rr(0, 0);
428*67e74705SXin Li // CHECK: @llvm.hexagon.A4.round.rr
429*67e74705SXin Li __builtin_HEXAGON_A4_round_rr_sat(0, 0);
430*67e74705SXin Li // CHECK: @llvm.hexagon.A4.round.rr.sat
431*67e74705SXin Li __builtin_HEXAGON_A4_tlbmatch(0, 0);
432*67e74705SXin Li // CHECK: @llvm.hexagon.A4.tlbmatch
433*67e74705SXin Li __builtin_HEXAGON_A4_vcmpbeq_any(0, 0);
434*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpbeq.any
435*67e74705SXin Li __builtin_HEXAGON_A4_vcmpbeqi(0, 0);
436*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpbeqi
437*67e74705SXin Li __builtin_HEXAGON_A4_vcmpbgt(0, 0);
438*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpbgt
439*67e74705SXin Li __builtin_HEXAGON_A4_vcmpbgti(0, 0);
440*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpbgti
441*67e74705SXin Li __builtin_HEXAGON_A4_vcmpbgtui(0, 0);
442*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpbgtui
443*67e74705SXin Li __builtin_HEXAGON_A4_vcmpheqi(0, 0);
444*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpheqi
445*67e74705SXin Li __builtin_HEXAGON_A4_vcmphgti(0, 0);
446*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmphgti
447*67e74705SXin Li __builtin_HEXAGON_A4_vcmphgtui(0, 0);
448*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmphgtui
449*67e74705SXin Li __builtin_HEXAGON_A4_vcmpweqi(0, 0);
450*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpweqi
451*67e74705SXin Li __builtin_HEXAGON_A4_vcmpwgti(0, 0);
452*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpwgti
453*67e74705SXin Li __builtin_HEXAGON_A4_vcmpwgtui(0, 0);
454*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vcmpwgtui
455*67e74705SXin Li __builtin_HEXAGON_A4_vrmaxh(0, 0, 0);
456*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vrmaxh
457*67e74705SXin Li __builtin_HEXAGON_A4_vrmaxuh(0, 0, 0);
458*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vrmaxuh
459*67e74705SXin Li __builtin_HEXAGON_A4_vrmaxuw(0, 0, 0);
460*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vrmaxuw
461*67e74705SXin Li __builtin_HEXAGON_A4_vrmaxw(0, 0, 0);
462*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vrmaxw
463*67e74705SXin Li __builtin_HEXAGON_A4_vrminh(0, 0, 0);
464*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vrminh
465*67e74705SXin Li __builtin_HEXAGON_A4_vrminuh(0, 0, 0);
466*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vrminuh
467*67e74705SXin Li __builtin_HEXAGON_A4_vrminuw(0, 0, 0);
468*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vrminuw
469*67e74705SXin Li __builtin_HEXAGON_A4_vrminw(0, 0, 0);
470*67e74705SXin Li // CHECK: @llvm.hexagon.A4.vrminw
471*67e74705SXin Li __builtin_HEXAGON_A5_vaddhubs(0, 0);
472*67e74705SXin Li // CHECK: @llvm.hexagon.A5.vaddhubs
473*67e74705SXin Li __builtin_HEXAGON_C2_all8(0);
474*67e74705SXin Li // CHECK: @llvm.hexagon.C2.all8
475*67e74705SXin Li __builtin_HEXAGON_C2_and(0, 0);
476*67e74705SXin Li // CHECK: @llvm.hexagon.C2.and
477*67e74705SXin Li __builtin_HEXAGON_C2_andn(0, 0);
478*67e74705SXin Li // CHECK: @llvm.hexagon.C2.andn
479*67e74705SXin Li __builtin_HEXAGON_C2_any8(0);
480*67e74705SXin Li // CHECK: @llvm.hexagon.C2.any8
481*67e74705SXin Li __builtin_HEXAGON_C2_bitsclr(0, 0);
482*67e74705SXin Li // CHECK: @llvm.hexagon.C2.bitsclr
483*67e74705SXin Li __builtin_HEXAGON_C2_bitsclri(0, 0);
484*67e74705SXin Li // CHECK: @llvm.hexagon.C2.bitsclri
485*67e74705SXin Li __builtin_HEXAGON_C2_bitsset(0, 0);
486*67e74705SXin Li // CHECK: @llvm.hexagon.C2.bitsset
487*67e74705SXin Li __builtin_HEXAGON_C2_cmpeq(0, 0);
488*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpeq
489*67e74705SXin Li __builtin_HEXAGON_C2_cmpeqi(0, 0);
490*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpeqi
491*67e74705SXin Li __builtin_HEXAGON_C2_cmpeqp(0, 0);
492*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpeqp
493*67e74705SXin Li __builtin_HEXAGON_C2_cmpgei(0, 0);
494*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpgei
495*67e74705SXin Li __builtin_HEXAGON_C2_cmpgeui(0, 0);
496*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpgeui
497*67e74705SXin Li __builtin_HEXAGON_C2_cmpgt(0, 0);
498*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpgt
499*67e74705SXin Li __builtin_HEXAGON_C2_cmpgti(0, 0);
500*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpgti
501*67e74705SXin Li __builtin_HEXAGON_C2_cmpgtp(0, 0);
502*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpgtp
503*67e74705SXin Li __builtin_HEXAGON_C2_cmpgtu(0, 0);
504*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpgtu
505*67e74705SXin Li __builtin_HEXAGON_C2_cmpgtui(0, 0);
506*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpgtui
507*67e74705SXin Li __builtin_HEXAGON_C2_cmpgtup(0, 0);
508*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpgtup
509*67e74705SXin Li __builtin_HEXAGON_C2_cmplt(0, 0);
510*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmplt
511*67e74705SXin Li __builtin_HEXAGON_C2_cmpltu(0, 0);
512*67e74705SXin Li // CHECK: @llvm.hexagon.C2.cmpltu
513*67e74705SXin Li __builtin_HEXAGON_C2_mask(0);
514*67e74705SXin Li // CHECK: @llvm.hexagon.C2.mask
515*67e74705SXin Li __builtin_HEXAGON_C2_mux(0, 0, 0);
516*67e74705SXin Li // CHECK: @llvm.hexagon.C2.mux
517*67e74705SXin Li __builtin_HEXAGON_C2_muxii(0, 0, 0);
518*67e74705SXin Li // CHECK: @llvm.hexagon.C2.muxii
519*67e74705SXin Li __builtin_HEXAGON_C2_muxir(0, 0, 0);
520*67e74705SXin Li // CHECK: @llvm.hexagon.C2.muxir
521*67e74705SXin Li __builtin_HEXAGON_C2_muxri(0, 0, 0);
522*67e74705SXin Li // CHECK: @llvm.hexagon.C2.muxri
523*67e74705SXin Li __builtin_HEXAGON_C2_not(0);
524*67e74705SXin Li // CHECK: @llvm.hexagon.C2.not
525*67e74705SXin Li __builtin_HEXAGON_C2_or (0, 0);
526*67e74705SXin Li // CHECK: @llvm.hexagon.C2.or
527*67e74705SXin Li __builtin_HEXAGON_C2_orn(0, 0);
528*67e74705SXin Li // CHECK: @llvm.hexagon.C2.orn
529*67e74705SXin Li __builtin_HEXAGON_C2_pxfer_map(0);
530*67e74705SXin Li // CHECK: @llvm.hexagon.C2.pxfer.map
531*67e74705SXin Li __builtin_HEXAGON_C2_tfrpr(0);
532*67e74705SXin Li // CHECK: @llvm.hexagon.C2.tfrpr
533*67e74705SXin Li __builtin_HEXAGON_C2_tfrrp(0);
534*67e74705SXin Li // CHECK: @llvm.hexagon.C2.tfrrp
535*67e74705SXin Li __builtin_HEXAGON_C2_vitpack(0, 0);
536*67e74705SXin Li // CHECK: @llvm.hexagon.C2.vitpack
537*67e74705SXin Li __builtin_HEXAGON_C2_vmux(0, 0, 0);
538*67e74705SXin Li // CHECK: @llvm.hexagon.C2.vmux
539*67e74705SXin Li __builtin_HEXAGON_C2_xor(0, 0);
540*67e74705SXin Li // CHECK: @llvm.hexagon.C2.xor
541*67e74705SXin Li __builtin_HEXAGON_C4_and_and(0, 0, 0);
542*67e74705SXin Li // CHECK: @llvm.hexagon.C4.and.and
543*67e74705SXin Li __builtin_HEXAGON_C4_and_andn(0, 0, 0);
544*67e74705SXin Li // CHECK: @llvm.hexagon.C4.and.andn
545*67e74705SXin Li __builtin_HEXAGON_C4_and_or(0, 0, 0);
546*67e74705SXin Li // CHECK: @llvm.hexagon.C4.and.or
547*67e74705SXin Li __builtin_HEXAGON_C4_and_orn(0, 0, 0);
548*67e74705SXin Li // CHECK: @llvm.hexagon.C4.and.orn
549*67e74705SXin Li __builtin_HEXAGON_C4_cmplte(0, 0);
550*67e74705SXin Li // CHECK: @llvm.hexagon.C4.cmplte
551*67e74705SXin Li __builtin_HEXAGON_C4_cmpltei(0, 0);
552*67e74705SXin Li // CHECK: @llvm.hexagon.C4.cmpltei
553*67e74705SXin Li __builtin_HEXAGON_C4_cmplteu(0, 0);
554*67e74705SXin Li // CHECK: @llvm.hexagon.C4.cmplteu
555*67e74705SXin Li __builtin_HEXAGON_C4_cmplteui(0, 0);
556*67e74705SXin Li // CHECK: @llvm.hexagon.C4.cmplteui
557*67e74705SXin Li __builtin_HEXAGON_C4_cmpneq(0, 0);
558*67e74705SXin Li // CHECK: @llvm.hexagon.C4.cmpneq
559*67e74705SXin Li __builtin_HEXAGON_C4_cmpneqi(0, 0);
560*67e74705SXin Li // CHECK: @llvm.hexagon.C4.cmpneqi
561*67e74705SXin Li __builtin_HEXAGON_C4_fastcorner9(0, 0);
562*67e74705SXin Li // CHECK: @llvm.hexagon.C4.fastcorner9
563*67e74705SXin Li __builtin_HEXAGON_C4_fastcorner9_not(0, 0);
564*67e74705SXin Li // CHECK: @llvm.hexagon.C4.fastcorner9.not
565*67e74705SXin Li __builtin_HEXAGON_C4_nbitsclr(0, 0);
566*67e74705SXin Li // CHECK: @llvm.hexagon.C4.nbitsclr
567*67e74705SXin Li __builtin_HEXAGON_C4_nbitsclri(0, 0);
568*67e74705SXin Li // CHECK: @llvm.hexagon.C4.nbitsclri
569*67e74705SXin Li __builtin_HEXAGON_C4_nbitsset(0, 0);
570*67e74705SXin Li // CHECK: @llvm.hexagon.C4.nbitsset
571*67e74705SXin Li __builtin_HEXAGON_C4_or_and(0, 0, 0);
572*67e74705SXin Li // CHECK: @llvm.hexagon.C4.or.and
573*67e74705SXin Li __builtin_HEXAGON_C4_or_andn(0, 0, 0);
574*67e74705SXin Li // CHECK: @llvm.hexagon.C4.or.andn
575*67e74705SXin Li __builtin_HEXAGON_C4_or_or(0, 0, 0);
576*67e74705SXin Li // CHECK: @llvm.hexagon.C4.or.or
577*67e74705SXin Li __builtin_HEXAGON_C4_or_orn(0, 0, 0);
578*67e74705SXin Li // CHECK: @llvm.hexagon.C4.or.orn
579*67e74705SXin Li __builtin_HEXAGON_F2_conv_d2df(0);
580*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.d2df
581*67e74705SXin Li __builtin_HEXAGON_F2_conv_d2sf(0);
582*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.d2sf
583*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2d(0.0);
584*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2d
585*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2d_chop(0.0);
586*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2d.chop
587*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2sf(0.0);
588*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2sf
589*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2ud(0.0);
590*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2ud
591*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2ud_chop(0.0);
592*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2ud.chop
593*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2uw(0.0);
594*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2uw
595*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2uw_chop(0.0);
596*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2uw.chop
597*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2w(0.0);
598*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2w
599*67e74705SXin Li __builtin_HEXAGON_F2_conv_df2w_chop(0.0);
600*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.df2w.chop
601*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2d(0.0f);
602*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2d
603*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2d_chop(0.0f);
604*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2d.chop
605*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2df(0.0f);
606*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2df
607*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2ud(0.0f);
608*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2ud
609*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2ud_chop(0.0f);
610*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2ud.chop
611*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2uw(0.0f);
612*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2uw
613*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2uw_chop(0.0f);
614*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2uw.chop
615*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2w(0.0f);
616*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2w
617*67e74705SXin Li __builtin_HEXAGON_F2_conv_sf2w_chop(0.0f);
618*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.sf2w.chop
619*67e74705SXin Li __builtin_HEXAGON_F2_conv_ud2df(0);
620*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.ud2df
621*67e74705SXin Li __builtin_HEXAGON_F2_conv_ud2sf(0);
622*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.ud2sf
623*67e74705SXin Li __builtin_HEXAGON_F2_conv_uw2df(0);
624*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.uw2df
625*67e74705SXin Li __builtin_HEXAGON_F2_conv_uw2sf(0);
626*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.uw2sf
627*67e74705SXin Li __builtin_HEXAGON_F2_conv_w2df(0);
628*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.w2df
629*67e74705SXin Li __builtin_HEXAGON_F2_conv_w2sf(0);
630*67e74705SXin Li // CHECK: @llvm.hexagon.F2.conv.w2sf
631*67e74705SXin Li __builtin_HEXAGON_F2_dfclass(0.0, 0);
632*67e74705SXin Li // CHECK: @llvm.hexagon.F2.dfclass
633*67e74705SXin Li __builtin_HEXAGON_F2_dfcmpeq(0.0, 0.0);
634*67e74705SXin Li // CHECK: @llvm.hexagon.F2.dfcmpeq
635*67e74705SXin Li __builtin_HEXAGON_F2_dfcmpge(0.0, 0.0);
636*67e74705SXin Li // CHECK: @llvm.hexagon.F2.dfcmpge
637*67e74705SXin Li __builtin_HEXAGON_F2_dfcmpgt(0.0, 0.0);
638*67e74705SXin Li // CHECK: @llvm.hexagon.F2.dfcmpgt
639*67e74705SXin Li __builtin_HEXAGON_F2_dfcmpuo(0.0, 0.0);
640*67e74705SXin Li // CHECK: @llvm.hexagon.F2.dfcmpuo
641*67e74705SXin Li __builtin_HEXAGON_F2_dfimm_n(0);
642*67e74705SXin Li // CHECK: @llvm.hexagon.F2.dfimm.n
643*67e74705SXin Li __builtin_HEXAGON_F2_dfimm_p(0);
644*67e74705SXin Li // CHECK: @llvm.hexagon.F2.dfimm.p
645*67e74705SXin Li __builtin_HEXAGON_F2_sfadd(0.0f, 0.0f);
646*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfadd
647*67e74705SXin Li __builtin_HEXAGON_F2_sfclass(0.0f, 0);
648*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfclass
649*67e74705SXin Li __builtin_HEXAGON_F2_sfcmpeq(0.0f, 0.0f);
650*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfcmpeq
651*67e74705SXin Li __builtin_HEXAGON_F2_sfcmpge(0.0f, 0.0f);
652*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfcmpge
653*67e74705SXin Li __builtin_HEXAGON_F2_sfcmpgt(0.0f, 0.0f);
654*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfcmpgt
655*67e74705SXin Li __builtin_HEXAGON_F2_sfcmpuo(0.0f, 0.0f);
656*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfcmpuo
657*67e74705SXin Li __builtin_HEXAGON_F2_sffixupd(0.0f, 0.0f);
658*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sffixupd
659*67e74705SXin Li __builtin_HEXAGON_F2_sffixupn(0.0f, 0.0f);
660*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sffixupn
661*67e74705SXin Li __builtin_HEXAGON_F2_sffixupr(0.0f);
662*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sffixupr
663*67e74705SXin Li __builtin_HEXAGON_F2_sffma(0.0f, 0.0f, 0.0f);
664*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sffma
665*67e74705SXin Li __builtin_HEXAGON_F2_sffma_lib(0.0f, 0.0f, 0.0f);
666*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sffma.lib
667*67e74705SXin Li __builtin_HEXAGON_F2_sffma_sc(0.0f, 0.0f, 0.0f, 0);
668*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sffma.sc
669*67e74705SXin Li __builtin_HEXAGON_F2_sffms(0.0f, 0.0f, 0.0f);
670*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sffms
671*67e74705SXin Li __builtin_HEXAGON_F2_sffms_lib(0.0f, 0.0f, 0.0f);
672*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sffms.lib
673*67e74705SXin Li __builtin_HEXAGON_F2_sfimm_n(0);
674*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfimm.n
675*67e74705SXin Li __builtin_HEXAGON_F2_sfimm_p(0);
676*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfimm.p
677*67e74705SXin Li __builtin_HEXAGON_F2_sfmax(0.0f, 0.0f);
678*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfmax
679*67e74705SXin Li __builtin_HEXAGON_F2_sfmin(0.0f, 0.0f);
680*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfmin
681*67e74705SXin Li __builtin_HEXAGON_F2_sfmpy(0.0f, 0.0f);
682*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfmpy
683*67e74705SXin Li __builtin_HEXAGON_F2_sfsub(0.0f, 0.0f);
684*67e74705SXin Li // CHECK: @llvm.hexagon.F2.sfsub
685*67e74705SXin Li __builtin_HEXAGON_M2_acci(0, 0, 0);
686*67e74705SXin Li // CHECK: @llvm.hexagon.M2.acci
687*67e74705SXin Li __builtin_HEXAGON_M2_accii(0, 0, 0);
688*67e74705SXin Li // CHECK: @llvm.hexagon.M2.accii
689*67e74705SXin Li __builtin_HEXAGON_M2_cmaci_s0(0, 0, 0);
690*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmaci.s0
691*67e74705SXin Li __builtin_HEXAGON_M2_cmacr_s0(0, 0, 0);
692*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmacr.s0
693*67e74705SXin Li __builtin_HEXAGON_M2_cmacsc_s0(0, 0, 0);
694*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmacsc.s0
695*67e74705SXin Li __builtin_HEXAGON_M2_cmacsc_s1(0, 0, 0);
696*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmacsc.s1
697*67e74705SXin Li __builtin_HEXAGON_M2_cmacs_s0(0, 0, 0);
698*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmacs.s0
699*67e74705SXin Li __builtin_HEXAGON_M2_cmacs_s1(0, 0, 0);
700*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmacs.s1
701*67e74705SXin Li __builtin_HEXAGON_M2_cmpyi_s0(0, 0);
702*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpyi.s0
703*67e74705SXin Li __builtin_HEXAGON_M2_cmpyr_s0(0, 0);
704*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpyr.s0
705*67e74705SXin Li __builtin_HEXAGON_M2_cmpyrsc_s0(0, 0);
706*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpyrsc.s0
707*67e74705SXin Li __builtin_HEXAGON_M2_cmpyrsc_s1(0, 0);
708*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpyrsc.s1
709*67e74705SXin Li __builtin_HEXAGON_M2_cmpyrs_s0(0, 0);
710*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpyrs.s0
711*67e74705SXin Li __builtin_HEXAGON_M2_cmpyrs_s1(0, 0);
712*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpyrs.s1
713*67e74705SXin Li __builtin_HEXAGON_M2_cmpysc_s0(0, 0);
714*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpysc.s0
715*67e74705SXin Li __builtin_HEXAGON_M2_cmpysc_s1(0, 0);
716*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpysc.s1
717*67e74705SXin Li __builtin_HEXAGON_M2_cmpys_s0(0, 0);
718*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpys.s0
719*67e74705SXin Li __builtin_HEXAGON_M2_cmpys_s1(0, 0);
720*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cmpys.s1
721*67e74705SXin Li __builtin_HEXAGON_M2_cnacsc_s0(0, 0, 0);
722*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cnacsc.s0
723*67e74705SXin Li __builtin_HEXAGON_M2_cnacsc_s1(0, 0, 0);
724*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cnacsc.s1
725*67e74705SXin Li __builtin_HEXAGON_M2_cnacs_s0(0, 0, 0);
726*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cnacs.s0
727*67e74705SXin Li __builtin_HEXAGON_M2_cnacs_s1(0, 0, 0);
728*67e74705SXin Li // CHECK: @llvm.hexagon.M2.cnacs.s1
729*67e74705SXin Li __builtin_HEXAGON_M2_dpmpyss_acc_s0(0, 0, 0);
730*67e74705SXin Li // CHECK: @llvm.hexagon.M2.dpmpyss.acc.s0
731*67e74705SXin Li __builtin_HEXAGON_M2_dpmpyss_nac_s0(0, 0, 0);
732*67e74705SXin Li // CHECK: @llvm.hexagon.M2.dpmpyss.nac.s0
733*67e74705SXin Li __builtin_HEXAGON_M2_dpmpyss_rnd_s0(0, 0);
734*67e74705SXin Li // CHECK: @llvm.hexagon.M2.dpmpyss.rnd.s0
735*67e74705SXin Li __builtin_HEXAGON_M2_dpmpyss_s0(0, 0);
736*67e74705SXin Li // CHECK: @llvm.hexagon.M2.dpmpyss.s0
737*67e74705SXin Li __builtin_HEXAGON_M2_dpmpyuu_acc_s0(0, 0, 0);
738*67e74705SXin Li // CHECK: @llvm.hexagon.M2.dpmpyuu.acc.s0
739*67e74705SXin Li __builtin_HEXAGON_M2_dpmpyuu_nac_s0(0, 0, 0);
740*67e74705SXin Li // CHECK: @llvm.hexagon.M2.dpmpyuu.nac.s0
741*67e74705SXin Li __builtin_HEXAGON_M2_dpmpyuu_s0(0, 0);
742*67e74705SXin Li // CHECK: @llvm.hexagon.M2.dpmpyuu.s0
743*67e74705SXin Li __builtin_HEXAGON_M2_hmmpyh_rs1(0, 0);
744*67e74705SXin Li // CHECK: @llvm.hexagon.M2.hmmpyh.rs1
745*67e74705SXin Li __builtin_HEXAGON_M2_hmmpyh_s1(0, 0);
746*67e74705SXin Li // CHECK: @llvm.hexagon.M2.hmmpyh.s1
747*67e74705SXin Li __builtin_HEXAGON_M2_hmmpyl_rs1(0, 0);
748*67e74705SXin Li // CHECK: @llvm.hexagon.M2.hmmpyl.rs1
749*67e74705SXin Li __builtin_HEXAGON_M2_hmmpyl_s1(0, 0);
750*67e74705SXin Li // CHECK: @llvm.hexagon.M2.hmmpyl.s1
751*67e74705SXin Li __builtin_HEXAGON_M2_maci(0, 0, 0);
752*67e74705SXin Li // CHECK: @llvm.hexagon.M2.maci
753*67e74705SXin Li __builtin_HEXAGON_M2_macsin(0, 0, 0);
754*67e74705SXin Li // CHECK: @llvm.hexagon.M2.macsin
755*67e74705SXin Li __builtin_HEXAGON_M2_macsip(0, 0, 0);
756*67e74705SXin Li // CHECK: @llvm.hexagon.M2.macsip
757*67e74705SXin Li __builtin_HEXAGON_M2_mmachs_rs0(0, 0, 0);
758*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmachs.rs0
759*67e74705SXin Li __builtin_HEXAGON_M2_mmachs_rs1(0, 0, 0);
760*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmachs.rs1
761*67e74705SXin Li __builtin_HEXAGON_M2_mmachs_s0(0, 0, 0);
762*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmachs.s0
763*67e74705SXin Li __builtin_HEXAGON_M2_mmachs_s1(0, 0, 0);
764*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmachs.s1
765*67e74705SXin Li __builtin_HEXAGON_M2_mmacls_rs0(0, 0, 0);
766*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmacls.rs0
767*67e74705SXin Li __builtin_HEXAGON_M2_mmacls_rs1(0, 0, 0);
768*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmacls.rs1
769*67e74705SXin Li __builtin_HEXAGON_M2_mmacls_s0(0, 0, 0);
770*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmacls.s0
771*67e74705SXin Li __builtin_HEXAGON_M2_mmacls_s1(0, 0, 0);
772*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmacls.s1
773*67e74705SXin Li __builtin_HEXAGON_M2_mmacuhs_rs0(0, 0, 0);
774*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmacuhs.rs0
775*67e74705SXin Li __builtin_HEXAGON_M2_mmacuhs_rs1(0, 0, 0);
776*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmacuhs.rs1
777*67e74705SXin Li __builtin_HEXAGON_M2_mmacuhs_s0(0, 0, 0);
778*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmacuhs.s0
779*67e74705SXin Li __builtin_HEXAGON_M2_mmacuhs_s1(0, 0, 0);
780*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmacuhs.s1
781*67e74705SXin Li __builtin_HEXAGON_M2_mmaculs_rs0(0, 0, 0);
782*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmaculs.rs0
783*67e74705SXin Li __builtin_HEXAGON_M2_mmaculs_rs1(0, 0, 0);
784*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmaculs.rs1
785*67e74705SXin Li __builtin_HEXAGON_M2_mmaculs_s0(0, 0, 0);
786*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmaculs.s0
787*67e74705SXin Li __builtin_HEXAGON_M2_mmaculs_s1(0, 0, 0);
788*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmaculs.s1
789*67e74705SXin Li __builtin_HEXAGON_M2_mmpyh_rs0(0, 0);
790*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyh.rs0
791*67e74705SXin Li __builtin_HEXAGON_M2_mmpyh_rs1(0, 0);
792*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyh.rs1
793*67e74705SXin Li __builtin_HEXAGON_M2_mmpyh_s0(0, 0);
794*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyh.s0
795*67e74705SXin Li __builtin_HEXAGON_M2_mmpyh_s1(0, 0);
796*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyh.s1
797*67e74705SXin Li __builtin_HEXAGON_M2_mmpyl_rs0(0, 0);
798*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyl.rs0
799*67e74705SXin Li __builtin_HEXAGON_M2_mmpyl_rs1(0, 0);
800*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyl.rs1
801*67e74705SXin Li __builtin_HEXAGON_M2_mmpyl_s0(0, 0);
802*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyl.s0
803*67e74705SXin Li __builtin_HEXAGON_M2_mmpyl_s1(0, 0);
804*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyl.s1
805*67e74705SXin Li __builtin_HEXAGON_M2_mmpyuh_rs0(0, 0);
806*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyuh.rs0
807*67e74705SXin Li __builtin_HEXAGON_M2_mmpyuh_rs1(0, 0);
808*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyuh.rs1
809*67e74705SXin Li __builtin_HEXAGON_M2_mmpyuh_s0(0, 0);
810*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyuh.s0
811*67e74705SXin Li __builtin_HEXAGON_M2_mmpyuh_s1(0, 0);
812*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyuh.s1
813*67e74705SXin Li __builtin_HEXAGON_M2_mmpyul_rs0(0, 0);
814*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyul.rs0
815*67e74705SXin Li __builtin_HEXAGON_M2_mmpyul_rs1(0, 0);
816*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyul.rs1
817*67e74705SXin Li __builtin_HEXAGON_M2_mmpyul_s0(0, 0);
818*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyul.s0
819*67e74705SXin Li __builtin_HEXAGON_M2_mmpyul_s1(0, 0);
820*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mmpyul.s1
821*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_hh_s0(0, 0, 0);
822*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.hh.s0
823*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_hh_s1(0, 0, 0);
824*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.hh.s1
825*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_hl_s0(0, 0, 0);
826*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.hl.s0
827*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_hl_s1(0, 0, 0);
828*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.hl.s1
829*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_lh_s0(0, 0, 0);
830*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.lh.s0
831*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_lh_s1(0, 0, 0);
832*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.lh.s1
833*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_ll_s0(0, 0, 0);
834*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.ll.s0
835*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_ll_s1(0, 0, 0);
836*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.ll.s1
837*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_sat_hh_s0(0, 0, 0);
838*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.sat.hh.s0
839*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_sat_hh_s1(0, 0, 0);
840*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.sat.hh.s1
841*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_sat_hl_s0(0, 0, 0);
842*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.sat.hl.s0
843*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_sat_hl_s1(0, 0, 0);
844*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.sat.hl.s1
845*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_sat_lh_s0(0, 0, 0);
846*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.sat.lh.s0
847*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_sat_lh_s1(0, 0, 0);
848*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.sat.lh.s1
849*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_sat_ll_s0(0, 0, 0);
850*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.sat.ll.s0
851*67e74705SXin Li __builtin_HEXAGON_M2_mpy_acc_sat_ll_s1(0, 0, 0);
852*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.acc.sat.ll.s1
853*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_acc_hh_s0(0, 0, 0);
854*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.acc.hh.s0
855*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_acc_hh_s1(0, 0, 0);
856*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.acc.hh.s1
857*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_acc_hl_s0(0, 0, 0);
858*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.acc.hl.s0
859*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_acc_hl_s1(0, 0, 0);
860*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.acc.hl.s1
861*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_acc_lh_s0(0, 0, 0);
862*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.acc.lh.s0
863*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_acc_lh_s1(0, 0, 0);
864*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.acc.lh.s1
865*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_acc_ll_s0(0, 0, 0);
866*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.acc.ll.s0
867*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_acc_ll_s1(0, 0, 0);
868*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.acc.ll.s1
869*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_hh_s0(0, 0);
870*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.hh.s0
871*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_hh_s1(0, 0);
872*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.hh.s1
873*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_hl_s0(0, 0);
874*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.hl.s0
875*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_hl_s1(0, 0);
876*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.hl.s1
877*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_lh_s0(0, 0);
878*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.lh.s0
879*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_lh_s1(0, 0);
880*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.lh.s1
881*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_ll_s0(0, 0);
882*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.ll.s0
883*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_ll_s1(0, 0);
884*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.ll.s1
885*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_nac_hh_s0(0, 0, 0);
886*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.nac.hh.s0
887*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_nac_hh_s1(0, 0, 0);
888*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.nac.hh.s1
889*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_nac_hl_s0(0, 0, 0);
890*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.nac.hl.s0
891*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_nac_hl_s1(0, 0, 0);
892*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.nac.hl.s1
893*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_nac_lh_s0(0, 0, 0);
894*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.nac.lh.s0
895*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_nac_lh_s1(0, 0, 0);
896*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.nac.lh.s1
897*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_nac_ll_s0(0, 0, 0);
898*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.nac.ll.s0
899*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_nac_ll_s1(0, 0, 0);
900*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.nac.ll.s1
901*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_rnd_hh_s0(0, 0);
902*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.rnd.hh.s0
903*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_rnd_hh_s1(0, 0);
904*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.rnd.hh.s1
905*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_rnd_hl_s0(0, 0);
906*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.rnd.hl.s0
907*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_rnd_hl_s1(0, 0);
908*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.rnd.hl.s1
909*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_rnd_lh_s0(0, 0);
910*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.rnd.lh.s0
911*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_rnd_lh_s1(0, 0);
912*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.rnd.lh.s1
913*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_rnd_ll_s0(0, 0);
914*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.rnd.ll.s0
915*67e74705SXin Li __builtin_HEXAGON_M2_mpyd_rnd_ll_s1(0, 0);
916*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyd.rnd.ll.s1
917*67e74705SXin Li __builtin_HEXAGON_M2_mpy_hh_s0(0, 0);
918*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.hh.s0
919*67e74705SXin Li __builtin_HEXAGON_M2_mpy_hh_s1(0, 0);
920*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.hh.s1
921*67e74705SXin Li __builtin_HEXAGON_M2_mpy_hl_s0(0, 0);
922*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.hl.s0
923*67e74705SXin Li __builtin_HEXAGON_M2_mpy_hl_s1(0, 0);
924*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.hl.s1
925*67e74705SXin Li __builtin_HEXAGON_M2_mpyi(0, 0);
926*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyi
927*67e74705SXin Li __builtin_HEXAGON_M2_mpy_lh_s0(0, 0);
928*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.lh.s0
929*67e74705SXin Li __builtin_HEXAGON_M2_mpy_lh_s1(0, 0);
930*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.lh.s1
931*67e74705SXin Li __builtin_HEXAGON_M2_mpy_ll_s0(0, 0);
932*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.ll.s0
933*67e74705SXin Li __builtin_HEXAGON_M2_mpy_ll_s1(0, 0);
934*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.ll.s1
935*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_hh_s0(0, 0, 0);
936*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.hh.s0
937*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_hh_s1(0, 0, 0);
938*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.hh.s1
939*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_hl_s0(0, 0, 0);
940*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.hl.s0
941*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_hl_s1(0, 0, 0);
942*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.hl.s1
943*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_lh_s0(0, 0, 0);
944*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.lh.s0
945*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_lh_s1(0, 0, 0);
946*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.lh.s1
947*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_ll_s0(0, 0, 0);
948*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.ll.s0
949*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_ll_s1(0, 0, 0);
950*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.ll.s1
951*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_sat_hh_s0(0, 0, 0);
952*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.sat.hh.s0
953*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_sat_hh_s1(0, 0, 0);
954*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.sat.hh.s1
955*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_sat_hl_s0(0, 0, 0);
956*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.sat.hl.s0
957*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_sat_hl_s1(0, 0, 0);
958*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.sat.hl.s1
959*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_sat_lh_s0(0, 0, 0);
960*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.sat.lh.s0
961*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_sat_lh_s1(0, 0, 0);
962*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.sat.lh.s1
963*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_sat_ll_s0(0, 0, 0);
964*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.sat.ll.s0
965*67e74705SXin Li __builtin_HEXAGON_M2_mpy_nac_sat_ll_s1(0, 0, 0);
966*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.nac.sat.ll.s1
967*67e74705SXin Li __builtin_HEXAGON_M2_mpy_rnd_hh_s0(0, 0);
968*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.rnd.hh.s0
969*67e74705SXin Li __builtin_HEXAGON_M2_mpy_rnd_hh_s1(0, 0);
970*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.rnd.hh.s1
971*67e74705SXin Li __builtin_HEXAGON_M2_mpy_rnd_hl_s0(0, 0);
972*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.rnd.hl.s0
973*67e74705SXin Li __builtin_HEXAGON_M2_mpy_rnd_hl_s1(0, 0);
974*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.rnd.hl.s1
975*67e74705SXin Li __builtin_HEXAGON_M2_mpy_rnd_lh_s0(0, 0);
976*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.rnd.lh.s0
977*67e74705SXin Li __builtin_HEXAGON_M2_mpy_rnd_lh_s1(0, 0);
978*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.rnd.lh.s1
979*67e74705SXin Li __builtin_HEXAGON_M2_mpy_rnd_ll_s0(0, 0);
980*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.rnd.ll.s0
981*67e74705SXin Li __builtin_HEXAGON_M2_mpy_rnd_ll_s1(0, 0);
982*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.rnd.ll.s1
983*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_hh_s0(0, 0);
984*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.hh.s0
985*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_hh_s1(0, 0);
986*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.hh.s1
987*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_hl_s0(0, 0);
988*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.hl.s0
989*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_hl_s1(0, 0);
990*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.hl.s1
991*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_lh_s0(0, 0);
992*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.lh.s0
993*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_lh_s1(0, 0);
994*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.lh.s1
995*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_ll_s0(0, 0);
996*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.ll.s0
997*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_ll_s1(0, 0);
998*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.ll.s1
999*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_rnd_hh_s0(0, 0);
1000*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.hh.s0
1001*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_rnd_hh_s1(0, 0);
1002*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.hh.s1
1003*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_rnd_hl_s0(0, 0);
1004*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.hl.s0
1005*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_rnd_hl_s1(0, 0);
1006*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.hl.s1
1007*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_rnd_lh_s0(0, 0);
1008*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.lh.s0
1009*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_rnd_lh_s1(0, 0);
1010*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.lh.s1
1011*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_rnd_ll_s0(0, 0);
1012*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.ll.s0
1013*67e74705SXin Li __builtin_HEXAGON_M2_mpy_sat_rnd_ll_s1(0, 0);
1014*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.sat.rnd.ll.s1
1015*67e74705SXin Li __builtin_HEXAGON_M2_mpysmi(0, 0);
1016*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpysmi
1017*67e74705SXin Li __builtin_HEXAGON_M2_mpysu_up(0, 0);
1018*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpysu.up
1019*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_acc_hh_s0(0, 0, 0);
1020*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.acc.hh.s0
1021*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_acc_hh_s1(0, 0, 0);
1022*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.acc.hh.s1
1023*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_acc_hl_s0(0, 0, 0);
1024*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.acc.hl.s0
1025*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_acc_hl_s1(0, 0, 0);
1026*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.acc.hl.s1
1027*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_acc_lh_s0(0, 0, 0);
1028*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.acc.lh.s0
1029*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_acc_lh_s1(0, 0, 0);
1030*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.acc.lh.s1
1031*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_acc_ll_s0(0, 0, 0);
1032*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.acc.ll.s0
1033*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_acc_ll_s1(0, 0, 0);
1034*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.acc.ll.s1
1035*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_acc_hh_s0(0, 0, 0);
1036*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.acc.hh.s0
1037*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_acc_hh_s1(0, 0, 0);
1038*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.acc.hh.s1
1039*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_acc_hl_s0(0, 0, 0);
1040*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.acc.hl.s0
1041*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_acc_hl_s1(0, 0, 0);
1042*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.acc.hl.s1
1043*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_acc_lh_s0(0, 0, 0);
1044*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.acc.lh.s0
1045*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_acc_lh_s1(0, 0, 0);
1046*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.acc.lh.s1
1047*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_acc_ll_s0(0, 0, 0);
1048*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.acc.ll.s0
1049*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_acc_ll_s1(0, 0, 0);
1050*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.acc.ll.s1
1051*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_hh_s0(0, 0);
1052*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.hh.s0
1053*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_hh_s1(0, 0);
1054*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.hh.s1
1055*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_hl_s0(0, 0);
1056*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.hl.s0
1057*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_hl_s1(0, 0);
1058*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.hl.s1
1059*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_lh_s0(0, 0);
1060*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.lh.s0
1061*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_lh_s1(0, 0);
1062*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.lh.s1
1063*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_ll_s0(0, 0);
1064*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.ll.s0
1065*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_ll_s1(0, 0);
1066*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.ll.s1
1067*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_nac_hh_s0(0, 0, 0);
1068*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.nac.hh.s0
1069*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_nac_hh_s1(0, 0, 0);
1070*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.nac.hh.s1
1071*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_nac_hl_s0(0, 0, 0);
1072*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.nac.hl.s0
1073*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_nac_hl_s1(0, 0, 0);
1074*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.nac.hl.s1
1075*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_nac_lh_s0(0, 0, 0);
1076*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.nac.lh.s0
1077*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_nac_lh_s1(0, 0, 0);
1078*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.nac.lh.s1
1079*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_nac_ll_s0(0, 0, 0);
1080*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.nac.ll.s0
1081*67e74705SXin Li __builtin_HEXAGON_M2_mpyud_nac_ll_s1(0, 0, 0);
1082*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyud.nac.ll.s1
1083*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_hh_s0(0, 0);
1084*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.hh.s0
1085*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_hh_s1(0, 0);
1086*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.hh.s1
1087*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_hl_s0(0, 0);
1088*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.hl.s0
1089*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_hl_s1(0, 0);
1090*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.hl.s1
1091*67e74705SXin Li __builtin_HEXAGON_M2_mpyui(0, 0);
1092*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyui
1093*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_lh_s0(0, 0);
1094*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.lh.s0
1095*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_lh_s1(0, 0);
1096*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.lh.s1
1097*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_ll_s0(0, 0);
1098*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.ll.s0
1099*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_ll_s1(0, 0);
1100*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.ll.s1
1101*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_nac_hh_s0(0, 0, 0);
1102*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.nac.hh.s0
1103*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_nac_hh_s1(0, 0, 0);
1104*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.nac.hh.s1
1105*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_nac_hl_s0(0, 0, 0);
1106*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.nac.hl.s0
1107*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_nac_hl_s1(0, 0, 0);
1108*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.nac.hl.s1
1109*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_nac_lh_s0(0, 0, 0);
1110*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.nac.lh.s0
1111*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_nac_lh_s1(0, 0, 0);
1112*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.nac.lh.s1
1113*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_nac_ll_s0(0, 0, 0);
1114*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.nac.ll.s0
1115*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_nac_ll_s1(0, 0, 0);
1116*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.nac.ll.s1
1117*67e74705SXin Li __builtin_HEXAGON_M2_mpy_up(0, 0);
1118*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.up
1119*67e74705SXin Li __builtin_HEXAGON_M2_mpy_up_s1(0, 0);
1120*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.up.s1
1121*67e74705SXin Li __builtin_HEXAGON_M2_mpy_up_s1_sat(0, 0);
1122*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpy.up.s1.sat
1123*67e74705SXin Li __builtin_HEXAGON_M2_mpyu_up(0, 0);
1124*67e74705SXin Li // CHECK: @llvm.hexagon.M2.mpyu.up
1125*67e74705SXin Li __builtin_HEXAGON_M2_nacci(0, 0, 0);
1126*67e74705SXin Li // CHECK: @llvm.hexagon.M2.nacci
1127*67e74705SXin Li __builtin_HEXAGON_M2_naccii(0, 0, 0);
1128*67e74705SXin Li // CHECK: @llvm.hexagon.M2.naccii
1129*67e74705SXin Li __builtin_HEXAGON_M2_subacc(0, 0, 0);
1130*67e74705SXin Li // CHECK: @llvm.hexagon.M2.subacc
1131*67e74705SXin Li __builtin_HEXAGON_M2_vabsdiffh(0, 0);
1132*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vabsdiffh
1133*67e74705SXin Li __builtin_HEXAGON_M2_vabsdiffw(0, 0);
1134*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vabsdiffw
1135*67e74705SXin Li __builtin_HEXAGON_M2_vcmac_s0_sat_i(0, 0, 0);
1136*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vcmac.s0.sat.i
1137*67e74705SXin Li __builtin_HEXAGON_M2_vcmac_s0_sat_r(0, 0, 0);
1138*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vcmac.s0.sat.r
1139*67e74705SXin Li __builtin_HEXAGON_M2_vcmpy_s0_sat_i(0, 0);
1140*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vcmpy.s0.sat.i
1141*67e74705SXin Li __builtin_HEXAGON_M2_vcmpy_s0_sat_r(0, 0);
1142*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vcmpy.s0.sat.r
1143*67e74705SXin Li __builtin_HEXAGON_M2_vcmpy_s1_sat_i(0, 0);
1144*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vcmpy.s1.sat.i
1145*67e74705SXin Li __builtin_HEXAGON_M2_vcmpy_s1_sat_r(0, 0);
1146*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vcmpy.s1.sat.r
1147*67e74705SXin Li __builtin_HEXAGON_M2_vdmacs_s0(0, 0, 0);
1148*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vdmacs.s0
1149*67e74705SXin Li __builtin_HEXAGON_M2_vdmacs_s1(0, 0, 0);
1150*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vdmacs.s1
1151*67e74705SXin Li __builtin_HEXAGON_M2_vdmpyrs_s0(0, 0);
1152*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vdmpyrs.s0
1153*67e74705SXin Li __builtin_HEXAGON_M2_vdmpyrs_s1(0, 0);
1154*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vdmpyrs.s1
1155*67e74705SXin Li __builtin_HEXAGON_M2_vdmpys_s0(0, 0);
1156*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vdmpys.s0
1157*67e74705SXin Li __builtin_HEXAGON_M2_vdmpys_s1(0, 0);
1158*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vdmpys.s1
1159*67e74705SXin Li __builtin_HEXAGON_M2_vmac2(0, 0, 0);
1160*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmac2
1161*67e74705SXin Li __builtin_HEXAGON_M2_vmac2es(0, 0, 0);
1162*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmac2es
1163*67e74705SXin Li __builtin_HEXAGON_M2_vmac2es_s0(0, 0, 0);
1164*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmac2es.s0
1165*67e74705SXin Li __builtin_HEXAGON_M2_vmac2es_s1(0, 0, 0);
1166*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmac2es.s1
1167*67e74705SXin Li __builtin_HEXAGON_M2_vmac2s_s0(0, 0, 0);
1168*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmac2s.s0
1169*67e74705SXin Li __builtin_HEXAGON_M2_vmac2s_s1(0, 0, 0);
1170*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmac2s.s1
1171*67e74705SXin Li __builtin_HEXAGON_M2_vmac2su_s0(0, 0, 0);
1172*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmac2su.s0
1173*67e74705SXin Li __builtin_HEXAGON_M2_vmac2su_s1(0, 0, 0);
1174*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmac2su.s1
1175*67e74705SXin Li __builtin_HEXAGON_M2_vmpy2es_s0(0, 0);
1176*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmpy2es.s0
1177*67e74705SXin Li __builtin_HEXAGON_M2_vmpy2es_s1(0, 0);
1178*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmpy2es.s1
1179*67e74705SXin Li __builtin_HEXAGON_M2_vmpy2s_s0(0, 0);
1180*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmpy2s.s0
1181*67e74705SXin Li __builtin_HEXAGON_M2_vmpy2s_s0pack(0, 0);
1182*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmpy2s.s0pack
1183*67e74705SXin Li __builtin_HEXAGON_M2_vmpy2s_s1(0, 0);
1184*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmpy2s.s1
1185*67e74705SXin Li __builtin_HEXAGON_M2_vmpy2s_s1pack(0, 0);
1186*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmpy2s.s1pack
1187*67e74705SXin Li __builtin_HEXAGON_M2_vmpy2su_s0(0, 0);
1188*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmpy2su.s0
1189*67e74705SXin Li __builtin_HEXAGON_M2_vmpy2su_s1(0, 0);
1190*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vmpy2su.s1
1191*67e74705SXin Li __builtin_HEXAGON_M2_vraddh(0, 0);
1192*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vraddh
1193*67e74705SXin Li __builtin_HEXAGON_M2_vradduh(0, 0);
1194*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vradduh
1195*67e74705SXin Li __builtin_HEXAGON_M2_vrcmaci_s0(0, 0, 0);
1196*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmaci.s0
1197*67e74705SXin Li __builtin_HEXAGON_M2_vrcmaci_s0c(0, 0, 0);
1198*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmaci.s0c
1199*67e74705SXin Li __builtin_HEXAGON_M2_vrcmacr_s0(0, 0, 0);
1200*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmacr.s0
1201*67e74705SXin Li __builtin_HEXAGON_M2_vrcmacr_s0c(0, 0, 0);
1202*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmacr.s0c
1203*67e74705SXin Li __builtin_HEXAGON_M2_vrcmpyi_s0(0, 0);
1204*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmpyi.s0
1205*67e74705SXin Li __builtin_HEXAGON_M2_vrcmpyi_s0c(0, 0);
1206*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmpyi.s0c
1207*67e74705SXin Li __builtin_HEXAGON_M2_vrcmpyr_s0(0, 0);
1208*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmpyr.s0
1209*67e74705SXin Li __builtin_HEXAGON_M2_vrcmpyr_s0c(0, 0);
1210*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmpyr.s0c
1211*67e74705SXin Li __builtin_HEXAGON_M2_vrcmpys_acc_s1(0, 0, 0);
1212*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmpys.acc.s1
1213*67e74705SXin Li __builtin_HEXAGON_M2_vrcmpys_s1(0, 0);
1214*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmpys.s1
1215*67e74705SXin Li __builtin_HEXAGON_M2_vrcmpys_s1rp(0, 0);
1216*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrcmpys.s1rp
1217*67e74705SXin Li __builtin_HEXAGON_M2_vrmac_s0(0, 0, 0);
1218*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrmac.s0
1219*67e74705SXin Li __builtin_HEXAGON_M2_vrmpy_s0(0, 0);
1220*67e74705SXin Li // CHECK: @llvm.hexagon.M2.vrmpy.s0
1221*67e74705SXin Li __builtin_HEXAGON_M2_xor_xacc(0, 0, 0);
1222*67e74705SXin Li // CHECK: @llvm.hexagon.M2.xor.xacc
1223*67e74705SXin Li __builtin_HEXAGON_M4_and_and(0, 0, 0);
1224*67e74705SXin Li // CHECK: @llvm.hexagon.M4.and.and
1225*67e74705SXin Li __builtin_HEXAGON_M4_and_andn(0, 0, 0);
1226*67e74705SXin Li // CHECK: @llvm.hexagon.M4.and.andn
1227*67e74705SXin Li __builtin_HEXAGON_M4_and_or(0, 0, 0);
1228*67e74705SXin Li // CHECK: @llvm.hexagon.M4.and.or
1229*67e74705SXin Li __builtin_HEXAGON_M4_and_xor(0, 0, 0);
1230*67e74705SXin Li // CHECK: @llvm.hexagon.M4.and.xor
1231*67e74705SXin Li __builtin_HEXAGON_M4_cmpyi_wh(0, 0);
1232*67e74705SXin Li // CHECK: @llvm.hexagon.M4.cmpyi.wh
1233*67e74705SXin Li __builtin_HEXAGON_M4_cmpyi_whc(0, 0);
1234*67e74705SXin Li // CHECK: @llvm.hexagon.M4.cmpyi.whc
1235*67e74705SXin Li __builtin_HEXAGON_M4_cmpyr_wh(0, 0);
1236*67e74705SXin Li // CHECK: @llvm.hexagon.M4.cmpyr.wh
1237*67e74705SXin Li __builtin_HEXAGON_M4_cmpyr_whc(0, 0);
1238*67e74705SXin Li // CHECK: @llvm.hexagon.M4.cmpyr.whc
1239*67e74705SXin Li __builtin_HEXAGON_M4_mac_up_s1_sat(0, 0, 0);
1240*67e74705SXin Li // CHECK: @llvm.hexagon.M4.mac.up.s1.sat
1241*67e74705SXin Li __builtin_HEXAGON_M4_mpyri_addi(0, 0, 0);
1242*67e74705SXin Li // CHECK: @llvm.hexagon.M4.mpyri.addi
1243*67e74705SXin Li __builtin_HEXAGON_M4_mpyri_addr(0, 0, 0);
1244*67e74705SXin Li // CHECK: @llvm.hexagon.M4.mpyri.addr
1245*67e74705SXin Li __builtin_HEXAGON_M4_mpyri_addr_u2(0, 0, 0);
1246*67e74705SXin Li // CHECK: @llvm.hexagon.M4.mpyri.addr.u2
1247*67e74705SXin Li __builtin_HEXAGON_M4_mpyrr_addi(0, 0, 0);
1248*67e74705SXin Li // CHECK: @llvm.hexagon.M4.mpyrr.addi
1249*67e74705SXin Li __builtin_HEXAGON_M4_mpyrr_addr(0, 0, 0);
1250*67e74705SXin Li // CHECK: @llvm.hexagon.M4.mpyrr.addr
1251*67e74705SXin Li __builtin_HEXAGON_M4_nac_up_s1_sat(0, 0, 0);
1252*67e74705SXin Li // CHECK: @llvm.hexagon.M4.nac.up.s1.sat
1253*67e74705SXin Li __builtin_HEXAGON_M4_or_and(0, 0, 0);
1254*67e74705SXin Li // CHECK: @llvm.hexagon.M4.or.and
1255*67e74705SXin Li __builtin_HEXAGON_M4_or_andn(0, 0, 0);
1256*67e74705SXin Li // CHECK: @llvm.hexagon.M4.or.andn
1257*67e74705SXin Li __builtin_HEXAGON_M4_or_or(0, 0, 0);
1258*67e74705SXin Li // CHECK: @llvm.hexagon.M4.or.or
1259*67e74705SXin Li __builtin_HEXAGON_M4_or_xor(0, 0, 0);
1260*67e74705SXin Li // CHECK: @llvm.hexagon.M4.or.xor
1261*67e74705SXin Li __builtin_HEXAGON_M4_pmpyw(0, 0);
1262*67e74705SXin Li // CHECK: @llvm.hexagon.M4.pmpyw
1263*67e74705SXin Li __builtin_HEXAGON_M4_pmpyw_acc(0, 0, 0);
1264*67e74705SXin Li // CHECK: @llvm.hexagon.M4.pmpyw.acc
1265*67e74705SXin Li __builtin_HEXAGON_M4_vpmpyh(0, 0);
1266*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vpmpyh
1267*67e74705SXin Li __builtin_HEXAGON_M4_vpmpyh_acc(0, 0, 0);
1268*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vpmpyh.acc
1269*67e74705SXin Li __builtin_HEXAGON_M4_vrmpyeh_acc_s0(0, 0, 0);
1270*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vrmpyeh.acc.s0
1271*67e74705SXin Li __builtin_HEXAGON_M4_vrmpyeh_acc_s1(0, 0, 0);
1272*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vrmpyeh.acc.s1
1273*67e74705SXin Li __builtin_HEXAGON_M4_vrmpyeh_s0(0, 0);
1274*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vrmpyeh.s0
1275*67e74705SXin Li __builtin_HEXAGON_M4_vrmpyeh_s1(0, 0);
1276*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vrmpyeh.s1
1277*67e74705SXin Li __builtin_HEXAGON_M4_vrmpyoh_acc_s0(0, 0, 0);
1278*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vrmpyoh.acc.s0
1279*67e74705SXin Li __builtin_HEXAGON_M4_vrmpyoh_acc_s1(0, 0, 0);
1280*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vrmpyoh.acc.s1
1281*67e74705SXin Li __builtin_HEXAGON_M4_vrmpyoh_s0(0, 0);
1282*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vrmpyoh.s0
1283*67e74705SXin Li __builtin_HEXAGON_M4_vrmpyoh_s1(0, 0);
1284*67e74705SXin Li // CHECK: @llvm.hexagon.M4.vrmpyoh.s1
1285*67e74705SXin Li __builtin_HEXAGON_M4_xor_and(0, 0, 0);
1286*67e74705SXin Li // CHECK: @llvm.hexagon.M4.xor.and
1287*67e74705SXin Li __builtin_HEXAGON_M4_xor_andn(0, 0, 0);
1288*67e74705SXin Li // CHECK: @llvm.hexagon.M4.xor.andn
1289*67e74705SXin Li __builtin_HEXAGON_M4_xor_or(0, 0, 0);
1290*67e74705SXin Li // CHECK: @llvm.hexagon.M4.xor.or
1291*67e74705SXin Li __builtin_HEXAGON_M4_xor_xacc(0, 0, 0);
1292*67e74705SXin Li // CHECK: @llvm.hexagon.M4.xor.xacc
1293*67e74705SXin Li __builtin_HEXAGON_M5_vdmacbsu(0, 0, 0);
1294*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vdmacbsu
1295*67e74705SXin Li __builtin_HEXAGON_M5_vdmpybsu(0, 0);
1296*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vdmpybsu
1297*67e74705SXin Li __builtin_HEXAGON_M5_vmacbsu(0, 0, 0);
1298*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vmacbsu
1299*67e74705SXin Li __builtin_HEXAGON_M5_vmacbuu(0, 0, 0);
1300*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vmacbuu
1301*67e74705SXin Li __builtin_HEXAGON_M5_vmpybsu(0, 0);
1302*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vmpybsu
1303*67e74705SXin Li __builtin_HEXAGON_M5_vmpybuu(0, 0);
1304*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vmpybuu
1305*67e74705SXin Li __builtin_HEXAGON_M5_vrmacbsu(0, 0, 0);
1306*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vrmacbsu
1307*67e74705SXin Li __builtin_HEXAGON_M5_vrmacbuu(0, 0, 0);
1308*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vrmacbuu
1309*67e74705SXin Li __builtin_HEXAGON_M5_vrmpybsu(0, 0);
1310*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vrmpybsu
1311*67e74705SXin Li __builtin_HEXAGON_M5_vrmpybuu(0, 0);
1312*67e74705SXin Li // CHECK: @llvm.hexagon.M5.vrmpybuu
1313*67e74705SXin Li __builtin_HEXAGON_S2_addasl_rrri(0, 0, 0);
1314*67e74705SXin Li // CHECK: @llvm.hexagon.S2.addasl.rrri
1315*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_p(0, 0);
1316*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.p
1317*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_p_acc(0, 0, 0);
1318*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.p.acc
1319*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_p_and(0, 0, 0);
1320*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.p.and
1321*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_p_nac(0, 0, 0);
1322*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.p.nac
1323*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_p_or(0, 0, 0);
1324*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.p.or
1325*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_p_xacc(0, 0, 0);
1326*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.p.xacc
1327*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_r(0, 0);
1328*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.r
1329*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_r_acc(0, 0, 0);
1330*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.r.acc
1331*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_r_and(0, 0, 0);
1332*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.r.and
1333*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_r_nac(0, 0, 0);
1334*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.r.nac
1335*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_r_or(0, 0, 0);
1336*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.r.or
1337*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_r_sat(0, 0);
1338*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.r.sat
1339*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_r_xacc(0, 0, 0);
1340*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.r.xacc
1341*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_vh(0, 0);
1342*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.vh
1343*67e74705SXin Li __builtin_HEXAGON_S2_asl_i_vw(0, 0);
1344*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.i.vw
1345*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_p(0, 0);
1346*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.p
1347*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_p_acc(0, 0, 0);
1348*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.p.acc
1349*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_p_and(0, 0, 0);
1350*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.p.and
1351*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_p_nac(0, 0, 0);
1352*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.p.nac
1353*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_p_or(0, 0, 0);
1354*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.p.or
1355*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_p_xor(0, 0, 0);
1356*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.p.xor
1357*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_r(0, 0);
1358*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.r
1359*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_r_acc(0, 0, 0);
1360*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.r.acc
1361*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_r_and(0, 0, 0);
1362*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.r.and
1363*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_r_nac(0, 0, 0);
1364*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.r.nac
1365*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_r_or(0, 0, 0);
1366*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.r.or
1367*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_r_sat(0, 0);
1368*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.r.sat
1369*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_vh(0, 0);
1370*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.vh
1371*67e74705SXin Li __builtin_HEXAGON_S2_asl_r_vw(0, 0);
1372*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asl.r.vw
1373*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_p(0, 0);
1374*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.p
1375*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_p_acc(0, 0, 0);
1376*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.p.acc
1377*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_p_and(0, 0, 0);
1378*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.p.and
1379*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_p_nac(0, 0, 0);
1380*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.p.nac
1381*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_p_or(0, 0, 0);
1382*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.p.or
1383*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_p_rnd(0, 0);
1384*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.p.rnd
1385*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_p_rnd_goodsyntax(0, 0);
1386*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.p.rnd.goodsyntax
1387*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_r(0, 0);
1388*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.r
1389*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_r_acc(0, 0, 0);
1390*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.r.acc
1391*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_r_and(0, 0, 0);
1392*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.r.and
1393*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_r_nac(0, 0, 0);
1394*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.r.nac
1395*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_r_or(0, 0, 0);
1396*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.r.or
1397*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_r_rnd(0, 0);
1398*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.r.rnd
1399*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_r_rnd_goodsyntax(0, 0);
1400*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.r.rnd.goodsyntax
1401*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_svw_trun(0, 0);
1402*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.svw.trun
1403*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_vh(0, 0);
1404*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.vh
1405*67e74705SXin Li __builtin_HEXAGON_S2_asr_i_vw(0, 0);
1406*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.i.vw
1407*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_p(0, 0);
1408*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.p
1409*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_p_acc(0, 0, 0);
1410*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.p.acc
1411*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_p_and(0, 0, 0);
1412*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.p.and
1413*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_p_nac(0, 0, 0);
1414*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.p.nac
1415*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_p_or(0, 0, 0);
1416*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.p.or
1417*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_p_xor(0, 0, 0);
1418*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.p.xor
1419*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_r(0, 0);
1420*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.r
1421*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_r_acc(0, 0, 0);
1422*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.r.acc
1423*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_r_and(0, 0, 0);
1424*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.r.and
1425*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_r_nac(0, 0, 0);
1426*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.r.nac
1427*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_r_or(0, 0, 0);
1428*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.r.or
1429*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_r_sat(0, 0);
1430*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.r.sat
1431*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_svw_trun(0, 0);
1432*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.svw.trun
1433*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_vh(0, 0);
1434*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.vh
1435*67e74705SXin Li __builtin_HEXAGON_S2_asr_r_vw(0, 0);
1436*67e74705SXin Li // CHECK: @llvm.hexagon.S2.asr.r.vw
1437*67e74705SXin Li __builtin_HEXAGON_S2_brev(0);
1438*67e74705SXin Li // CHECK: @llvm.hexagon.S2.brev
1439*67e74705SXin Li __builtin_HEXAGON_S2_brevp(0);
1440*67e74705SXin Li // CHECK: @llvm.hexagon.S2.brevp
1441*67e74705SXin Li __builtin_HEXAGON_S2_cabacencbin(0, 0, 0);
1442*67e74705SXin Li // CHECK: @llvm.hexagon.S2.cabacencbin
1443*67e74705SXin Li __builtin_HEXAGON_S2_cl0(0);
1444*67e74705SXin Li // CHECK: @llvm.hexagon.S2.cl0
1445*67e74705SXin Li __builtin_HEXAGON_S2_cl0p(0);
1446*67e74705SXin Li // CHECK: @llvm.hexagon.S2.cl0p
1447*67e74705SXin Li __builtin_HEXAGON_S2_cl1(0);
1448*67e74705SXin Li // CHECK: @llvm.hexagon.S2.cl1
1449*67e74705SXin Li __builtin_HEXAGON_S2_cl1p(0);
1450*67e74705SXin Li // CHECK: @llvm.hexagon.S2.cl1p
1451*67e74705SXin Li __builtin_HEXAGON_S2_clb(0);
1452*67e74705SXin Li // CHECK: @llvm.hexagon.S2.clb
1453*67e74705SXin Li __builtin_HEXAGON_S2_clbnorm(0);
1454*67e74705SXin Li // CHECK: @llvm.hexagon.S2.clbnorm
1455*67e74705SXin Li __builtin_HEXAGON_S2_clbp(0);
1456*67e74705SXin Li // CHECK: @llvm.hexagon.S2.clbp
1457*67e74705SXin Li __builtin_HEXAGON_S2_clrbit_i(0, 0);
1458*67e74705SXin Li // CHECK: @llvm.hexagon.S2.clrbit.i
1459*67e74705SXin Li __builtin_HEXAGON_S2_clrbit_r(0, 0);
1460*67e74705SXin Li // CHECK: @llvm.hexagon.S2.clrbit.r
1461*67e74705SXin Li __builtin_HEXAGON_S2_ct0(0);
1462*67e74705SXin Li // CHECK: @llvm.hexagon.S2.ct0
1463*67e74705SXin Li __builtin_HEXAGON_S2_ct0p(0);
1464*67e74705SXin Li // CHECK: @llvm.hexagon.S2.ct0p
1465*67e74705SXin Li __builtin_HEXAGON_S2_ct1(0);
1466*67e74705SXin Li // CHECK: @llvm.hexagon.S2.ct1
1467*67e74705SXin Li __builtin_HEXAGON_S2_ct1p(0);
1468*67e74705SXin Li // CHECK: @llvm.hexagon.S2.ct1p
1469*67e74705SXin Li __builtin_HEXAGON_S2_deinterleave(0);
1470*67e74705SXin Li // CHECK: @llvm.hexagon.S2.deinterleave
1471*67e74705SXin Li __builtin_HEXAGON_S2_extractu(0, 0, 0);
1472*67e74705SXin Li // CHECK: @llvm.hexagon.S2.extractu
1473*67e74705SXin Li __builtin_HEXAGON_S2_extractup(0, 0, 0);
1474*67e74705SXin Li // CHECK: @llvm.hexagon.S2.extractup
1475*67e74705SXin Li __builtin_HEXAGON_S2_extractup_rp(0, 0);
1476*67e74705SXin Li // CHECK: @llvm.hexagon.S2.extractup.rp
1477*67e74705SXin Li __builtin_HEXAGON_S2_extractu_rp(0, 0);
1478*67e74705SXin Li // CHECK: @llvm.hexagon.S2.extractu.rp
1479*67e74705SXin Li __builtin_HEXAGON_S2_insert(0, 0, 0, 0);
1480*67e74705SXin Li // CHECK: @llvm.hexagon.S2.insert
1481*67e74705SXin Li __builtin_HEXAGON_S2_insertp(0, 0, 0, 0);
1482*67e74705SXin Li // CHECK: @llvm.hexagon.S2.insertp
1483*67e74705SXin Li __builtin_HEXAGON_S2_insertp_rp(0, 0, 0);
1484*67e74705SXin Li // CHECK: @llvm.hexagon.S2.insertp.rp
1485*67e74705SXin Li __builtin_HEXAGON_S2_insert_rp(0, 0, 0);
1486*67e74705SXin Li // CHECK: @llvm.hexagon.S2.insert.rp
1487*67e74705SXin Li __builtin_HEXAGON_S2_interleave(0);
1488*67e74705SXin Li // CHECK: @llvm.hexagon.S2.interleave
1489*67e74705SXin Li __builtin_HEXAGON_S2_lfsp(0, 0);
1490*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lfsp
1491*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_p(0, 0);
1492*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.p
1493*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_p_acc(0, 0, 0);
1494*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.p.acc
1495*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_p_and(0, 0, 0);
1496*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.p.and
1497*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_p_nac(0, 0, 0);
1498*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.p.nac
1499*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_p_or(0, 0, 0);
1500*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.p.or
1501*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_p_xor(0, 0, 0);
1502*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.p.xor
1503*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_r(0, 0);
1504*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.r
1505*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_r_acc(0, 0, 0);
1506*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.r.acc
1507*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_r_and(0, 0, 0);
1508*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.r.and
1509*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_r_nac(0, 0, 0);
1510*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.r.nac
1511*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_r_or(0, 0, 0);
1512*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.r.or
1513*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_vh(0, 0);
1514*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.vh
1515*67e74705SXin Li __builtin_HEXAGON_S2_lsl_r_vw(0, 0);
1516*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsl.r.vw
1517*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_p(0, 0);
1518*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.p
1519*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_p_acc(0, 0, 0);
1520*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.p.acc
1521*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_p_and(0, 0, 0);
1522*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.p.and
1523*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_p_nac(0, 0, 0);
1524*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.p.nac
1525*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_p_or(0, 0, 0);
1526*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.p.or
1527*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_p_xacc(0, 0, 0);
1528*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.p.xacc
1529*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_r(0, 0);
1530*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.r
1531*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_r_acc(0, 0, 0);
1532*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.r.acc
1533*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_r_and(0, 0, 0);
1534*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.r.and
1535*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_r_nac(0, 0, 0);
1536*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.r.nac
1537*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_r_or(0, 0, 0);
1538*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.r.or
1539*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_r_xacc(0, 0, 0);
1540*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.r.xacc
1541*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_vh(0, 0);
1542*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.vh
1543*67e74705SXin Li __builtin_HEXAGON_S2_lsr_i_vw(0, 0);
1544*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.i.vw
1545*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_p(0, 0);
1546*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.p
1547*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_p_acc(0, 0, 0);
1548*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.p.acc
1549*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_p_and(0, 0, 0);
1550*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.p.and
1551*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_p_nac(0, 0, 0);
1552*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.p.nac
1553*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_p_or(0, 0, 0);
1554*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.p.or
1555*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_p_xor(0, 0, 0);
1556*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.p.xor
1557*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_r(0, 0);
1558*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.r
1559*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_r_acc(0, 0, 0);
1560*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.r.acc
1561*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_r_and(0, 0, 0);
1562*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.r.and
1563*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_r_nac(0, 0, 0);
1564*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.r.nac
1565*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_r_or(0, 0, 0);
1566*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.r.or
1567*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_vh(0, 0);
1568*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.vh
1569*67e74705SXin Li __builtin_HEXAGON_S2_lsr_r_vw(0, 0);
1570*67e74705SXin Li // CHECK: @llvm.hexagon.S2.lsr.r.vw
1571*67e74705SXin Li __builtin_HEXAGON_S2_packhl(0, 0);
1572*67e74705SXin Li // CHECK: @llvm.hexagon.S2.packhl
1573*67e74705SXin Li __builtin_HEXAGON_S2_parityp(0, 0);
1574*67e74705SXin Li // CHECK: @llvm.hexagon.S2.parityp
1575*67e74705SXin Li __builtin_HEXAGON_S2_setbit_i(0, 0);
1576*67e74705SXin Li // CHECK: @llvm.hexagon.S2.setbit.i
1577*67e74705SXin Li __builtin_HEXAGON_S2_setbit_r(0, 0);
1578*67e74705SXin Li // CHECK: @llvm.hexagon.S2.setbit.r
1579*67e74705SXin Li __builtin_HEXAGON_S2_shuffeb(0, 0);
1580*67e74705SXin Li // CHECK: @llvm.hexagon.S2.shuffeb
1581*67e74705SXin Li __builtin_HEXAGON_S2_shuffeh(0, 0);
1582*67e74705SXin Li // CHECK: @llvm.hexagon.S2.shuffeh
1583*67e74705SXin Li __builtin_HEXAGON_S2_shuffob(0, 0);
1584*67e74705SXin Li // CHECK: @llvm.hexagon.S2.shuffob
1585*67e74705SXin Li __builtin_HEXAGON_S2_shuffoh(0, 0);
1586*67e74705SXin Li // CHECK: @llvm.hexagon.S2.shuffoh
1587*67e74705SXin Li __builtin_HEXAGON_S2_svsathb(0);
1588*67e74705SXin Li // CHECK: @llvm.hexagon.S2.svsathb
1589*67e74705SXin Li __builtin_HEXAGON_S2_svsathub(0);
1590*67e74705SXin Li // CHECK: @llvm.hexagon.S2.svsathub
1591*67e74705SXin Li __builtin_HEXAGON_S2_tableidxb_goodsyntax(0, 0, 0, 0);
1592*67e74705SXin Li // CHECK: @llvm.hexagon.S2.tableidxb.goodsyntax
1593*67e74705SXin Li __builtin_HEXAGON_S2_tableidxd_goodsyntax(0, 0, 0, 0);
1594*67e74705SXin Li // CHECK: @llvm.hexagon.S2.tableidxd.goodsyntax
1595*67e74705SXin Li __builtin_HEXAGON_S2_tableidxh_goodsyntax(0, 0, 0, 0);
1596*67e74705SXin Li // CHECK: @llvm.hexagon.S2.tableidxh.goodsyntax
1597*67e74705SXin Li __builtin_HEXAGON_S2_tableidxw_goodsyntax(0, 0, 0, 0);
1598*67e74705SXin Li // CHECK: @llvm.hexagon.S2.tableidxw.goodsyntax
1599*67e74705SXin Li __builtin_HEXAGON_S2_togglebit_i(0, 0);
1600*67e74705SXin Li // CHECK: @llvm.hexagon.S2.togglebit.i
1601*67e74705SXin Li __builtin_HEXAGON_S2_togglebit_r(0, 0);
1602*67e74705SXin Li // CHECK: @llvm.hexagon.S2.togglebit.r
1603*67e74705SXin Li __builtin_HEXAGON_S2_tstbit_i(0, 0);
1604*67e74705SXin Li // CHECK: @llvm.hexagon.S2.tstbit.i
1605*67e74705SXin Li __builtin_HEXAGON_S2_tstbit_r(0, 0);
1606*67e74705SXin Li // CHECK: @llvm.hexagon.S2.tstbit.r
1607*67e74705SXin Li __builtin_HEXAGON_S2_valignib(0, 0, 0);
1608*67e74705SXin Li // CHECK: @llvm.hexagon.S2.valignib
1609*67e74705SXin Li __builtin_HEXAGON_S2_valignrb(0, 0, 0);
1610*67e74705SXin Li // CHECK: @llvm.hexagon.S2.valignrb
1611*67e74705SXin Li __builtin_HEXAGON_S2_vcnegh(0, 0);
1612*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vcnegh
1613*67e74705SXin Li __builtin_HEXAGON_S2_vcrotate(0, 0);
1614*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vcrotate
1615*67e74705SXin Li __builtin_HEXAGON_S2_vrcnegh(0, 0, 0);
1616*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vrcnegh
1617*67e74705SXin Li __builtin_HEXAGON_S2_vrndpackwh(0);
1618*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vrndpackwh
1619*67e74705SXin Li __builtin_HEXAGON_S2_vrndpackwhs(0);
1620*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vrndpackwhs
1621*67e74705SXin Li __builtin_HEXAGON_S2_vsathb(0);
1622*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsathb
1623*67e74705SXin Li __builtin_HEXAGON_S2_vsathb_nopack(0);
1624*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsathb.nopack
1625*67e74705SXin Li __builtin_HEXAGON_S2_vsathub(0);
1626*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsathub
1627*67e74705SXin Li __builtin_HEXAGON_S2_vsathub_nopack(0);
1628*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsathub.nopack
1629*67e74705SXin Li __builtin_HEXAGON_S2_vsatwh(0);
1630*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsatwh
1631*67e74705SXin Li __builtin_HEXAGON_S2_vsatwh_nopack(0);
1632*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsatwh.nopack
1633*67e74705SXin Li __builtin_HEXAGON_S2_vsatwuh(0);
1634*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsatwuh
1635*67e74705SXin Li __builtin_HEXAGON_S2_vsatwuh_nopack(0);
1636*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsatwuh.nopack
1637*67e74705SXin Li __builtin_HEXAGON_S2_vsplatrb(0);
1638*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsplatrb
1639*67e74705SXin Li __builtin_HEXAGON_S2_vsplatrh(0);
1640*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsplatrh
1641*67e74705SXin Li __builtin_HEXAGON_S2_vspliceib(0, 0, 0);
1642*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vspliceib
1643*67e74705SXin Li __builtin_HEXAGON_S2_vsplicerb(0, 0, 0);
1644*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsplicerb
1645*67e74705SXin Li __builtin_HEXAGON_S2_vsxtbh(0);
1646*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsxtbh
1647*67e74705SXin Li __builtin_HEXAGON_S2_vsxthw(0);
1648*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vsxthw
1649*67e74705SXin Li __builtin_HEXAGON_S2_vtrunehb(0);
1650*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vtrunehb
1651*67e74705SXin Li __builtin_HEXAGON_S2_vtrunewh(0, 0);
1652*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vtrunewh
1653*67e74705SXin Li __builtin_HEXAGON_S2_vtrunohb(0);
1654*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vtrunohb
1655*67e74705SXin Li __builtin_HEXAGON_S2_vtrunowh(0, 0);
1656*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vtrunowh
1657*67e74705SXin Li __builtin_HEXAGON_S2_vzxtbh(0);
1658*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vzxtbh
1659*67e74705SXin Li __builtin_HEXAGON_S2_vzxthw(0);
1660*67e74705SXin Li // CHECK: @llvm.hexagon.S2.vzxthw
1661*67e74705SXin Li __builtin_HEXAGON_S4_addaddi(0, 0, 0);
1662*67e74705SXin Li // CHECK: @llvm.hexagon.S4.addaddi
1663*67e74705SXin Li __builtin_HEXAGON_S4_addi_asl_ri(0, 0, 0);
1664*67e74705SXin Li // CHECK: @llvm.hexagon.S4.addi.asl.ri
1665*67e74705SXin Li __builtin_HEXAGON_S4_addi_lsr_ri(0, 0, 0);
1666*67e74705SXin Li // CHECK: @llvm.hexagon.S4.addi.lsr.ri
1667*67e74705SXin Li __builtin_HEXAGON_S4_andi_asl_ri(0, 0, 0);
1668*67e74705SXin Li // CHECK: @llvm.hexagon.S4.andi.asl.ri
1669*67e74705SXin Li __builtin_HEXAGON_S4_andi_lsr_ri(0, 0, 0);
1670*67e74705SXin Li // CHECK: @llvm.hexagon.S4.andi.lsr.ri
1671*67e74705SXin Li __builtin_HEXAGON_S4_clbaddi(0, 0);
1672*67e74705SXin Li // CHECK: @llvm.hexagon.S4.clbaddi
1673*67e74705SXin Li __builtin_HEXAGON_S4_clbpaddi(0, 0);
1674*67e74705SXin Li // CHECK: @llvm.hexagon.S4.clbpaddi
1675*67e74705SXin Li __builtin_HEXAGON_S4_clbpnorm(0);
1676*67e74705SXin Li // CHECK: @llvm.hexagon.S4.clbpnorm
1677*67e74705SXin Li __builtin_HEXAGON_S4_extract(0, 0, 0);
1678*67e74705SXin Li // CHECK: @llvm.hexagon.S4.extract
1679*67e74705SXin Li __builtin_HEXAGON_S4_extractp(0, 0, 0);
1680*67e74705SXin Li // CHECK: @llvm.hexagon.S4.extractp
1681*67e74705SXin Li __builtin_HEXAGON_S4_extractp_rp(0, 0);
1682*67e74705SXin Li // CHECK: @llvm.hexagon.S4.extractp.rp
1683*67e74705SXin Li __builtin_HEXAGON_S4_extract_rp(0, 0);
1684*67e74705SXin Li // CHECK: @llvm.hexagon.S4.extract.rp
1685*67e74705SXin Li __builtin_HEXAGON_S4_lsli(0, 0);
1686*67e74705SXin Li // CHECK: @llvm.hexagon.S4.lsli
1687*67e74705SXin Li __builtin_HEXAGON_S4_ntstbit_i(0, 0);
1688*67e74705SXin Li // CHECK: @llvm.hexagon.S4.ntstbit.i
1689*67e74705SXin Li __builtin_HEXAGON_S4_ntstbit_r(0, 0);
1690*67e74705SXin Li // CHECK: @llvm.hexagon.S4.ntstbit.r
1691*67e74705SXin Li __builtin_HEXAGON_S4_or_andi(0, 0, 0);
1692*67e74705SXin Li // CHECK: @llvm.hexagon.S4.or.andi
1693*67e74705SXin Li __builtin_HEXAGON_S4_or_andix(0, 0, 0);
1694*67e74705SXin Li // CHECK: @llvm.hexagon.S4.or.andix
1695*67e74705SXin Li __builtin_HEXAGON_S4_ori_asl_ri(0, 0, 0);
1696*67e74705SXin Li // CHECK: @llvm.hexagon.S4.ori.asl.ri
1697*67e74705SXin Li __builtin_HEXAGON_S4_ori_lsr_ri(0, 0, 0);
1698*67e74705SXin Li // CHECK: @llvm.hexagon.S4.ori.lsr.ri
1699*67e74705SXin Li __builtin_HEXAGON_S4_or_ori(0, 0, 0);
1700*67e74705SXin Li // CHECK: @llvm.hexagon.S4.or.ori
1701*67e74705SXin Li __builtin_HEXAGON_S4_parity(0, 0);
1702*67e74705SXin Li // CHECK: @llvm.hexagon.S4.parity
1703*67e74705SXin Li __builtin_HEXAGON_S4_subaddi(0, 0, 0);
1704*67e74705SXin Li // CHECK: @llvm.hexagon.S4.subaddi
1705*67e74705SXin Li __builtin_HEXAGON_S4_subi_asl_ri(0, 0, 0);
1706*67e74705SXin Li // CHECK: @llvm.hexagon.S4.subi.asl.ri
1707*67e74705SXin Li __builtin_HEXAGON_S4_subi_lsr_ri(0, 0, 0);
1708*67e74705SXin Li // CHECK: @llvm.hexagon.S4.subi.lsr.ri
1709*67e74705SXin Li __builtin_HEXAGON_S4_vrcrotate(0, 0, 0);
1710*67e74705SXin Li // CHECK: @llvm.hexagon.S4.vrcrotate
1711*67e74705SXin Li __builtin_HEXAGON_S4_vrcrotate_acc(0, 0, 0, 0);
1712*67e74705SXin Li // CHECK: @llvm.hexagon.S4.vrcrotate.acc
1713*67e74705SXin Li __builtin_HEXAGON_S4_vxaddsubh(0, 0);
1714*67e74705SXin Li // CHECK: @llvm.hexagon.S4.vxaddsubh
1715*67e74705SXin Li __builtin_HEXAGON_S4_vxaddsubhr(0, 0);
1716*67e74705SXin Li // CHECK: @llvm.hexagon.S4.vxaddsubhr
1717*67e74705SXin Li __builtin_HEXAGON_S4_vxaddsubw(0, 0);
1718*67e74705SXin Li // CHECK: @llvm.hexagon.S4.vxaddsubw
1719*67e74705SXin Li __builtin_HEXAGON_S4_vxsubaddh(0, 0);
1720*67e74705SXin Li // CHECK: @llvm.hexagon.S4.vxsubaddh
1721*67e74705SXin Li __builtin_HEXAGON_S4_vxsubaddhr(0, 0);
1722*67e74705SXin Li // CHECK: @llvm.hexagon.S4.vxsubaddhr
1723*67e74705SXin Li __builtin_HEXAGON_S4_vxsubaddw(0, 0);
1724*67e74705SXin Li // CHECK: @llvm.hexagon.S4.vxsubaddw
1725*67e74705SXin Li __builtin_HEXAGON_S5_asrhub_rnd_sat_goodsyntax(0, 0);
1726*67e74705SXin Li // CHECK: @llvm.hexagon.S5.asrhub.rnd.sat.goodsyntax
1727*67e74705SXin Li __builtin_HEXAGON_S5_asrhub_sat(0, 0);
1728*67e74705SXin Li // CHECK: @llvm.hexagon.S5.asrhub.sat
1729*67e74705SXin Li __builtin_HEXAGON_S5_popcountp(0);
1730*67e74705SXin Li // CHECK: @llvm.hexagon.S5.popcountp
1731*67e74705SXin Li __builtin_HEXAGON_S5_vasrhrnd_goodsyntax(0, 0);
1732*67e74705SXin Li // CHECK: @llvm.hexagon.S5.vasrhrnd.goodsyntax
1733*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_p(0, 0);
1734*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.p
1735*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_p_acc(0, 0, 0);
1736*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.p.acc
1737*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_p_and(0, 0, 0);
1738*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.p.and
1739*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_p_nac(0, 0, 0);
1740*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.p.nac
1741*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_p_or(0, 0, 0);
1742*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.p.or
1743*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_p_xacc(0, 0, 0);
1744*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.p.xacc
1745*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_r(0, 0);
1746*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.r
1747*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_r_acc(0, 0, 0);
1748*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.r.acc
1749*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_r_and(0, 0, 0);
1750*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.r.and
1751*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_r_nac(0, 0, 0);
1752*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.r.nac
1753*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_r_or(0, 0, 0);
1754*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.r.or
1755*67e74705SXin Li __builtin_HEXAGON_S6_rol_i_r_xacc(0, 0, 0);
1756*67e74705SXin Li // CHECK: @llvm.hexagon.S6.rol.i.r.xacc
1757*67e74705SXin Li __builtin_HEXAGON_V6_extractw_128B(v32, 0);
1758*67e74705SXin Li // CHECK: @llvm.hexagon.V6.extractw.128B
1759*67e74705SXin Li __builtin_HEXAGON_V6_extractw(v16, 0);
1760*67e74705SXin Li // CHECK: @llvm.hexagon.V6.extractw
1761*67e74705SXin Li __builtin_HEXAGON_V6_hi_128B(v64);
1762*67e74705SXin Li // CHECK: @llvm.hexagon.V6.hi.128B
1763*67e74705SXin Li __builtin_HEXAGON_V6_hi(v32);
1764*67e74705SXin Li // CHECK: @llvm.hexagon.V6.hi
1765*67e74705SXin Li __builtin_HEXAGON_V6_lo_128B(v64);
1766*67e74705SXin Li // CHECK: @llvm.hexagon.V6.lo.128B
1767*67e74705SXin Li __builtin_HEXAGON_V6_lo(v32);
1768*67e74705SXin Li // CHECK: @llvm.hexagon.V6.lo
1769*67e74705SXin Li __builtin_HEXAGON_V6_lvsplatw(0);
1770*67e74705SXin Li // CHECK: @llvm.hexagon.V6.lvsplatw
1771*67e74705SXin Li __builtin_HEXAGON_V6_lvsplatw_128B(0);
1772*67e74705SXin Li // CHECK: @llvm.hexagon.V6.lvsplatw.128B
1773*67e74705SXin Li __builtin_HEXAGON_V6_pred_and_128B(v32, v32);
1774*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.and.128B
1775*67e74705SXin Li __builtin_HEXAGON_V6_pred_and_n_128B(v32, v32);
1776*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.and.n.128B
1777*67e74705SXin Li __builtin_HEXAGON_V6_pred_and_n(v16, v16);
1778*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.and.n
1779*67e74705SXin Li __builtin_HEXAGON_V6_pred_and(v16, v16);
1780*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.and
1781*67e74705SXin Li __builtin_HEXAGON_V6_pred_not_128B(v32);
1782*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.not.128B
1783*67e74705SXin Li __builtin_HEXAGON_V6_pred_not(v16);
1784*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.not
1785*67e74705SXin Li __builtin_HEXAGON_V6_pred_or_128B(v32, v32);
1786*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.or.128B
1787*67e74705SXin Li __builtin_HEXAGON_V6_pred_or_n_128B(v32, v32);
1788*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.or.n.128B
1789*67e74705SXin Li __builtin_HEXAGON_V6_pred_or_n(v16, v16);
1790*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.or.n
1791*67e74705SXin Li __builtin_HEXAGON_V6_pred_or(v16, v16);
1792*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.or
1793*67e74705SXin Li __builtin_HEXAGON_V6_pred_scalar2(0);
1794*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.scalar2
1795*67e74705SXin Li __builtin_HEXAGON_V6_pred_scalar2_128B(0);
1796*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.scalar2.128B
1797*67e74705SXin Li __builtin_HEXAGON_V6_pred_xor_128B(v32, v32);
1798*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.xor.128B
1799*67e74705SXin Li __builtin_HEXAGON_V6_pred_xor(v16, v16);
1800*67e74705SXin Li // CHECK: @llvm.hexagon.V6.pred.xor
1801*67e74705SXin Li __builtin_HEXAGON_V6_vabsdiffh_128B(v32, v32);
1802*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsdiffh.128B
1803*67e74705SXin Li __builtin_HEXAGON_V6_vabsdiffh(v16, v16);
1804*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsdiffh
1805*67e74705SXin Li __builtin_HEXAGON_V6_vabsdiffub_128B(v32, v32);
1806*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsdiffub.128B
1807*67e74705SXin Li __builtin_HEXAGON_V6_vabsdiffub(v16, v16);
1808*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsdiffub
1809*67e74705SXin Li __builtin_HEXAGON_V6_vabsdiffuh_128B(v32, v32);
1810*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsdiffuh.128B
1811*67e74705SXin Li __builtin_HEXAGON_V6_vabsdiffuh(v16, v16);
1812*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsdiffuh
1813*67e74705SXin Li __builtin_HEXAGON_V6_vabsdiffw_128B(v32, v32);
1814*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsdiffw.128B
1815*67e74705SXin Li __builtin_HEXAGON_V6_vabsdiffw(v16, v16);
1816*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsdiffw
1817*67e74705SXin Li __builtin_HEXAGON_V6_vabsh_128B(v32);
1818*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsh.128B
1819*67e74705SXin Li __builtin_HEXAGON_V6_vabsh_sat_128B(v32);
1820*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsh.sat.128B
1821*67e74705SXin Li __builtin_HEXAGON_V6_vabsh_sat(v16);
1822*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsh.sat
1823*67e74705SXin Li __builtin_HEXAGON_V6_vabsh(v16);
1824*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsh
1825*67e74705SXin Li __builtin_HEXAGON_V6_vabsw_128B(v32);
1826*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsw.128B
1827*67e74705SXin Li __builtin_HEXAGON_V6_vabsw_sat_128B(v32);
1828*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsw.sat.128B
1829*67e74705SXin Li __builtin_HEXAGON_V6_vabsw_sat(v16);
1830*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsw.sat
1831*67e74705SXin Li __builtin_HEXAGON_V6_vabsw(v16);
1832*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vabsw
1833*67e74705SXin Li __builtin_HEXAGON_V6_vaddb_128B(v32, v32);
1834*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddb.128B
1835*67e74705SXin Li __builtin_HEXAGON_V6_vaddb_dv_128B(v64, v64);
1836*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddb.dv.128B
1837*67e74705SXin Li __builtin_HEXAGON_V6_vaddb_dv(v32, v32);
1838*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddb.dv
1839*67e74705SXin Li __builtin_HEXAGON_V6_vaddbnq_128B(v32, v32, v32);
1840*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddbnq.128B
1841*67e74705SXin Li __builtin_HEXAGON_V6_vaddbnq(v16, v16, v16);
1842*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddbnq
1843*67e74705SXin Li __builtin_HEXAGON_V6_vaddbq_128B(v32, v32, v32);
1844*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddbq.128B
1845*67e74705SXin Li __builtin_HEXAGON_V6_vaddbq(v16, v16, v16);
1846*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddbq
1847*67e74705SXin Li __builtin_HEXAGON_V6_vaddb(v16, v16);
1848*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddb
1849*67e74705SXin Li __builtin_HEXAGON_V6_vaddh_128B(v32, v32);
1850*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddh.128B
1851*67e74705SXin Li __builtin_HEXAGON_V6_vaddh_dv_128B(v64, v64);
1852*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddh.dv.128B
1853*67e74705SXin Li __builtin_HEXAGON_V6_vaddh_dv(v32, v32);
1854*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddh.dv
1855*67e74705SXin Li __builtin_HEXAGON_V6_vaddhnq_128B(v32, v32, v32);
1856*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhnq.128B
1857*67e74705SXin Li __builtin_HEXAGON_V6_vaddhnq(v16, v16, v16);
1858*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhnq
1859*67e74705SXin Li __builtin_HEXAGON_V6_vaddhq_128B(v32, v32, v32);
1860*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhq.128B
1861*67e74705SXin Li __builtin_HEXAGON_V6_vaddhq(v16, v16, v16);
1862*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhq
1863*67e74705SXin Li __builtin_HEXAGON_V6_vaddhsat_128B(v32, v32);
1864*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhsat.128B
1865*67e74705SXin Li __builtin_HEXAGON_V6_vaddhsat_dv_128B(v64, v64);
1866*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhsat.dv.128B
1867*67e74705SXin Li __builtin_HEXAGON_V6_vaddhsat_dv(v32, v32);
1868*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhsat.dv
1869*67e74705SXin Li __builtin_HEXAGON_V6_vaddhsat(v16, v16);
1870*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhsat
1871*67e74705SXin Li __builtin_HEXAGON_V6_vaddh(v16, v16);
1872*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddh
1873*67e74705SXin Li __builtin_HEXAGON_V6_vaddhw_128B(v32, v32);
1874*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhw.128B
1875*67e74705SXin Li __builtin_HEXAGON_V6_vaddhw(v16, v16);
1876*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddhw
1877*67e74705SXin Li __builtin_HEXAGON_V6_vaddubh_128B(v32, v32);
1878*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddubh.128B
1879*67e74705SXin Li __builtin_HEXAGON_V6_vaddubh(v16, v16);
1880*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddubh
1881*67e74705SXin Li __builtin_HEXAGON_V6_vaddubsat_128B(v32, v32);
1882*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddubsat.128B
1883*67e74705SXin Li __builtin_HEXAGON_V6_vaddubsat_dv_128B(v64, v64);
1884*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddubsat.dv.128B
1885*67e74705SXin Li __builtin_HEXAGON_V6_vaddubsat_dv(v32, v32);
1886*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddubsat.dv
1887*67e74705SXin Li __builtin_HEXAGON_V6_vaddubsat(v16, v16);
1888*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddubsat
1889*67e74705SXin Li __builtin_HEXAGON_V6_vadduhsat_128B(v32, v32);
1890*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vadduhsat.128B
1891*67e74705SXin Li __builtin_HEXAGON_V6_vadduhsat_dv_128B(v64, v64);
1892*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vadduhsat.dv.128B
1893*67e74705SXin Li __builtin_HEXAGON_V6_vadduhsat_dv(v32, v32);
1894*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vadduhsat.dv
1895*67e74705SXin Li __builtin_HEXAGON_V6_vadduhsat(v16, v16);
1896*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vadduhsat
1897*67e74705SXin Li __builtin_HEXAGON_V6_vadduhw_128B(v32, v32);
1898*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vadduhw.128B
1899*67e74705SXin Li __builtin_HEXAGON_V6_vadduhw(v16, v16);
1900*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vadduhw
1901*67e74705SXin Li __builtin_HEXAGON_V6_vaddw_128B(v32, v32);
1902*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddw.128B
1903*67e74705SXin Li __builtin_HEXAGON_V6_vaddw_dv_128B(v64, v64);
1904*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddw.dv.128B
1905*67e74705SXin Li __builtin_HEXAGON_V6_vaddw_dv(v32, v32);
1906*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddw.dv
1907*67e74705SXin Li __builtin_HEXAGON_V6_vaddwnq_128B(v32, v32, v32);
1908*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddwnq.128B
1909*67e74705SXin Li __builtin_HEXAGON_V6_vaddwnq(v16, v16, v16);
1910*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddwnq
1911*67e74705SXin Li __builtin_HEXAGON_V6_vaddwq_128B(v32, v32, v32);
1912*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddwq.128B
1913*67e74705SXin Li __builtin_HEXAGON_V6_vaddwq(v16, v16, v16);
1914*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddwq
1915*67e74705SXin Li __builtin_HEXAGON_V6_vaddwsat_128B(v32, v32);
1916*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddwsat.128B
1917*67e74705SXin Li __builtin_HEXAGON_V6_vaddwsat_dv_128B(v64, v64);
1918*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddwsat.dv.128B
1919*67e74705SXin Li __builtin_HEXAGON_V6_vaddwsat_dv(v32, v32);
1920*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddwsat.dv
1921*67e74705SXin Li __builtin_HEXAGON_V6_vaddwsat(v16, v16);
1922*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddwsat
1923*67e74705SXin Li __builtin_HEXAGON_V6_vaddw(v16, v16);
1924*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaddw
1925*67e74705SXin Li __builtin_HEXAGON_V6_valignb_128B(v32, v32, 0);
1926*67e74705SXin Li // CHECK: @llvm.hexagon.V6.valignb.128B
1927*67e74705SXin Li __builtin_HEXAGON_V6_valignbi_128B(v32, v32, 0);
1928*67e74705SXin Li // CHECK: @llvm.hexagon.V6.valignbi.128B
1929*67e74705SXin Li __builtin_HEXAGON_V6_valignbi(v16, v16, 0);
1930*67e74705SXin Li // CHECK: @llvm.hexagon.V6.valignbi
1931*67e74705SXin Li __builtin_HEXAGON_V6_valignb(v16, v16, 0);
1932*67e74705SXin Li // CHECK: @llvm.hexagon.V6.valignb
1933*67e74705SXin Li __builtin_HEXAGON_V6_vand_128B(v32, v32);
1934*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vand.128B
1935*67e74705SXin Li __builtin_HEXAGON_V6_vandqrt_128B(v32, 0);
1936*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vandqrt.128B
1937*67e74705SXin Li __builtin_HEXAGON_V6_vandqrt_acc_128B(v32, v32, 0);
1938*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vandqrt.acc.128B
1939*67e74705SXin Li __builtin_HEXAGON_V6_vandqrt_acc(v16, v16, 0);
1940*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vandqrt.acc
1941*67e74705SXin Li __builtin_HEXAGON_V6_vandqrt(v16, 0);
1942*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vandqrt
1943*67e74705SXin Li __builtin_HEXAGON_V6_vand(v16, v16);
1944*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vand
1945*67e74705SXin Li __builtin_HEXAGON_V6_vandvrt_128B(v32, 0);
1946*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vandvrt.128B
1947*67e74705SXin Li __builtin_HEXAGON_V6_vandvrt_acc_128B(v32, v32, 0);
1948*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vandvrt.acc.128B
1949*67e74705SXin Li __builtin_HEXAGON_V6_vandvrt_acc(v16, v16, 0);
1950*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vandvrt.acc
1951*67e74705SXin Li __builtin_HEXAGON_V6_vandvrt(v16, 0);
1952*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vandvrt
1953*67e74705SXin Li __builtin_HEXAGON_V6_vaslh_128B(v32, 0);
1954*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslh.128B
1955*67e74705SXin Li __builtin_HEXAGON_V6_vaslhv_128B(v32, v32);
1956*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslhv.128B
1957*67e74705SXin Li __builtin_HEXAGON_V6_vaslh(v16, 0);
1958*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslh
1959*67e74705SXin Li __builtin_HEXAGON_V6_vaslhv(v16, v16);
1960*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslhv
1961*67e74705SXin Li __builtin_HEXAGON_V6_vaslw_128B(v32, 0);
1962*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslw.128B
1963*67e74705SXin Li __builtin_HEXAGON_V6_vaslw_acc_128B(v32, v32, 0);
1964*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslw.acc.128B
1965*67e74705SXin Li __builtin_HEXAGON_V6_vaslw_acc(v16, v16, 0);
1966*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslw.acc
1967*67e74705SXin Li __builtin_HEXAGON_V6_vaslwv_128B(v32, v32);
1968*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslwv.128B
1969*67e74705SXin Li __builtin_HEXAGON_V6_vaslw(v16, 0);
1970*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslw
1971*67e74705SXin Li __builtin_HEXAGON_V6_vaslwv(v16, v16);
1972*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vaslwv
1973*67e74705SXin Li __builtin_HEXAGON_V6_vasrh_128B(v32, 0);
1974*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrh.128B
1975*67e74705SXin Li __builtin_HEXAGON_V6_vasrhbrndsat_128B(v32, v32, 0);
1976*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrhbrndsat.128B
1977*67e74705SXin Li __builtin_HEXAGON_V6_vasrhbrndsat(v16, v16, 0);
1978*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrhbrndsat
1979*67e74705SXin Li __builtin_HEXAGON_V6_vasrhubrndsat_128B(v32, v32, 0);
1980*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrhubrndsat.128B
1981*67e74705SXin Li __builtin_HEXAGON_V6_vasrhubrndsat(v16, v16, 0);
1982*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrhubrndsat
1983*67e74705SXin Li __builtin_HEXAGON_V6_vasrhubsat_128B(v32, v32, 0);
1984*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrhubsat.128B
1985*67e74705SXin Li __builtin_HEXAGON_V6_vasrhubsat(v16, v16, 0);
1986*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrhubsat
1987*67e74705SXin Li __builtin_HEXAGON_V6_vasrhv_128B(v32, v32);
1988*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrhv.128B
1989*67e74705SXin Li __builtin_HEXAGON_V6_vasrh(v16, 0);
1990*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrh
1991*67e74705SXin Li __builtin_HEXAGON_V6_vasrhv(v16, v16);
1992*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrhv
1993*67e74705SXin Li __builtin_HEXAGON_V6_vasrw_128B(v32, 0);
1994*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrw.128B
1995*67e74705SXin Li __builtin_HEXAGON_V6_vasrw_acc_128B(v32, v32, 0);
1996*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrw.acc.128B
1997*67e74705SXin Li __builtin_HEXAGON_V6_vasrw_acc(v16, v16, 0);
1998*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrw.acc
1999*67e74705SXin Li __builtin_HEXAGON_V6_vasrwh_128B(v32, v32, 0);
2000*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwh.128B
2001*67e74705SXin Li __builtin_HEXAGON_V6_vasrwhrndsat_128B(v32, v32, 0);
2002*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwhrndsat.128B
2003*67e74705SXin Li __builtin_HEXAGON_V6_vasrwhrndsat(v16, v16, 0);
2004*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwhrndsat
2005*67e74705SXin Li __builtin_HEXAGON_V6_vasrwhsat_128B(v32, v32, 0);
2006*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwhsat.128B
2007*67e74705SXin Li __builtin_HEXAGON_V6_vasrwhsat(v16, v16, 0);
2008*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwhsat
2009*67e74705SXin Li __builtin_HEXAGON_V6_vasrwh(v16, v16, 0);
2010*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwh
2011*67e74705SXin Li __builtin_HEXAGON_V6_vasrwuhsat_128B(v32, v32, 0);
2012*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwuhsat.128B
2013*67e74705SXin Li __builtin_HEXAGON_V6_vasrwuhsat(v16, v16, 0);
2014*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwuhsat
2015*67e74705SXin Li __builtin_HEXAGON_V6_vasrwv_128B(v32, v32);
2016*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwv.128B
2017*67e74705SXin Li __builtin_HEXAGON_V6_vasrw(v16, 0);
2018*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrw
2019*67e74705SXin Li __builtin_HEXAGON_V6_vasrwv(v16, v16);
2020*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vasrwv
2021*67e74705SXin Li __builtin_HEXAGON_V6_vassign_128B(v32);
2022*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vassign.128B
2023*67e74705SXin Li __builtin_HEXAGON_V6_vassignp_128B(v64);
2024*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vassignp.128B
2025*67e74705SXin Li __builtin_HEXAGON_V6_vassignp(v32);
2026*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vassignp
2027*67e74705SXin Li __builtin_HEXAGON_V6_vassign(v16);
2028*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vassign
2029*67e74705SXin Li __builtin_HEXAGON_V6_vavgh_128B(v32, v32);
2030*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgh.128B
2031*67e74705SXin Li __builtin_HEXAGON_V6_vavghrnd_128B(v32, v32);
2032*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavghrnd.128B
2033*67e74705SXin Li __builtin_HEXAGON_V6_vavghrnd(v16, v16);
2034*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavghrnd
2035*67e74705SXin Li __builtin_HEXAGON_V6_vavgh(v16, v16);
2036*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgh
2037*67e74705SXin Li __builtin_HEXAGON_V6_vavgub_128B(v32, v32);
2038*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgub.128B
2039*67e74705SXin Li __builtin_HEXAGON_V6_vavgubrnd_128B(v32, v32);
2040*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgubrnd.128B
2041*67e74705SXin Li __builtin_HEXAGON_V6_vavgubrnd(v16, v16);
2042*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgubrnd
2043*67e74705SXin Li __builtin_HEXAGON_V6_vavgub(v16, v16);
2044*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgub
2045*67e74705SXin Li __builtin_HEXAGON_V6_vavguh_128B(v32, v32);
2046*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavguh.128B
2047*67e74705SXin Li __builtin_HEXAGON_V6_vavguhrnd_128B(v32, v32);
2048*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavguhrnd.128B
2049*67e74705SXin Li __builtin_HEXAGON_V6_vavguhrnd(v16, v16);
2050*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavguhrnd
2051*67e74705SXin Li __builtin_HEXAGON_V6_vavguh(v16, v16);
2052*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavguh
2053*67e74705SXin Li __builtin_HEXAGON_V6_vavgw_128B(v32, v32);
2054*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgw.128B
2055*67e74705SXin Li __builtin_HEXAGON_V6_vavgwrnd_128B(v32, v32);
2056*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgwrnd.128B
2057*67e74705SXin Li __builtin_HEXAGON_V6_vavgwrnd(v16, v16);
2058*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgwrnd
2059*67e74705SXin Li __builtin_HEXAGON_V6_vavgw(v16, v16);
2060*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vavgw
2061*67e74705SXin Li __builtin_HEXAGON_V6_vcl0h_128B(v32);
2062*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vcl0h.128B
2063*67e74705SXin Li __builtin_HEXAGON_V6_vcl0h(v16);
2064*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vcl0h
2065*67e74705SXin Li __builtin_HEXAGON_V6_vcl0w_128B(v32);
2066*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vcl0w.128B
2067*67e74705SXin Li __builtin_HEXAGON_V6_vcl0w(v16);
2068*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vcl0w
2069*67e74705SXin Li __builtin_HEXAGON_V6_vcombine_128B(v32, v32);
2070*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vcombine.128B
2071*67e74705SXin Li __builtin_HEXAGON_V6_vcombine(v16, v16);
2072*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vcombine
2073*67e74705SXin Li __builtin_HEXAGON_V6_vd0_128B();
2074*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vd0.128B
2075*67e74705SXin Li __builtin_HEXAGON_V6_vd0();
2076*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vd0
2077*67e74705SXin Li __builtin_HEXAGON_V6_vdealb_128B(v32);
2078*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdealb.128B
2079*67e74705SXin Li __builtin_HEXAGON_V6_vdealb4w_128B(v32, v32);
2080*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdealb4w.128B
2081*67e74705SXin Li __builtin_HEXAGON_V6_vdealb4w(v16, v16);
2082*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdealb4w
2083*67e74705SXin Li __builtin_HEXAGON_V6_vdealb(v16);
2084*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdealb
2085*67e74705SXin Li __builtin_HEXAGON_V6_vdealh_128B(v32);
2086*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdealh.128B
2087*67e74705SXin Li __builtin_HEXAGON_V6_vdealh(v16);
2088*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdealh
2089*67e74705SXin Li __builtin_HEXAGON_V6_vdealvdd_128B(v32, v32, 0);
2090*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdealvdd.128B
2091*67e74705SXin Li __builtin_HEXAGON_V6_vdealvdd(v16, v16, 0);
2092*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdealvdd
2093*67e74705SXin Li __builtin_HEXAGON_V6_vdelta_128B(v32, v32);
2094*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdelta.128B
2095*67e74705SXin Li __builtin_HEXAGON_V6_vdelta(v16, v16);
2096*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdelta
2097*67e74705SXin Li __builtin_HEXAGON_V6_vdmpybus_128B(v32, 0);
2098*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpybus.128B
2099*67e74705SXin Li __builtin_HEXAGON_V6_vdmpybus_acc_128B(v32, v32, 0);
2100*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpybus.acc.128B
2101*67e74705SXin Li __builtin_HEXAGON_V6_vdmpybus_acc(v16, v16, 0);
2102*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpybus.acc
2103*67e74705SXin Li __builtin_HEXAGON_V6_vdmpybus_dv_128B(v64, 0);
2104*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpybus.dv.128B
2105*67e74705SXin Li __builtin_HEXAGON_V6_vdmpybus_dv_acc_128B(v64, v64, 0);
2106*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpybus.dv.acc.128B
2107*67e74705SXin Li __builtin_HEXAGON_V6_vdmpybus_dv_acc(v32, v32, 0);
2108*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpybus.dv.acc
2109*67e74705SXin Li __builtin_HEXAGON_V6_vdmpybus_dv(v32, 0);
2110*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpybus.dv
2111*67e74705SXin Li __builtin_HEXAGON_V6_vdmpybus(v16, 0);
2112*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpybus
2113*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhb_128B(v32, 0);
2114*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhb.128B
2115*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhb_acc_128B(v32, v32, 0);
2116*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhb.acc.128B
2117*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhb_acc(v16, v16, 0);
2118*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhb.acc
2119*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhb_dv_128B(v64, 0);
2120*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhb.dv.128B
2121*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhb_dv_acc_128B(v64, v64, 0);
2122*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhb.dv.acc.128B
2123*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhb_dv_acc(v32, v32, 0);
2124*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhb.dv.acc
2125*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhb_dv(v32, 0);
2126*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhb.dv
2127*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhb(v16, 0);
2128*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhb
2129*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhisat_128B(v64, 0);
2130*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhisat.128B
2131*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhisat_acc_128B(v32, v64, 0);
2132*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhisat.acc.128B
2133*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhisat_acc(v16, v32, 0);
2134*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhisat.acc
2135*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhisat(v32, 0);
2136*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhisat
2137*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsat_128B(v32, 0);
2138*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsat.128B
2139*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsat_acc_128B(v32, v32, 0);
2140*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsat.acc.128B
2141*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsat_acc(v16, v16, 0);
2142*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsat.acc
2143*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsat(v16, 0);
2144*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsat
2145*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsuisat_128B(v64, 0);
2146*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsuisat.128B
2147*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsuisat_acc_128B(v32, v64, 0);
2148*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsuisat.acc.128B
2149*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsuisat_acc(v16, v32, 0);
2150*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsuisat.acc
2151*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsuisat(v32, 0);
2152*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsuisat
2153*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsusat_128B(v32, 0);
2154*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsusat.128B
2155*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsusat_acc_128B(v32, v32, 0);
2156*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsusat.acc.128B
2157*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsusat_acc(v16, v16, 0);
2158*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsusat.acc
2159*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhsusat(v16, 0);
2160*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhsusat
2161*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhvsat_128B(v32, v32);
2162*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhvsat.128B
2163*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhvsat_acc_128B(v32, v32, v32);
2164*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhvsat.acc.128B
2165*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhvsat_acc(v16, v16, v16);
2166*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhvsat.acc
2167*67e74705SXin Li __builtin_HEXAGON_V6_vdmpyhvsat(v16, v16);
2168*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdmpyhvsat
2169*67e74705SXin Li __builtin_HEXAGON_V6_vdsaduh_128B(v64, 0);
2170*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdsaduh.128B
2171*67e74705SXin Li __builtin_HEXAGON_V6_vdsaduh_acc_128B(v64, v64, 0);
2172*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdsaduh.acc.128B
2173*67e74705SXin Li __builtin_HEXAGON_V6_vdsaduh_acc(v32, v32, 0);
2174*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdsaduh.acc
2175*67e74705SXin Li __builtin_HEXAGON_V6_vdsaduh(v32, 0);
2176*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vdsaduh
2177*67e74705SXin Li __builtin_HEXAGON_V6_veqb_128B(v32, v32);
2178*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqb.128B
2179*67e74705SXin Li __builtin_HEXAGON_V6_veqb_and_128B(v32, v32, v32);
2180*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqb.and.128B
2181*67e74705SXin Li __builtin_HEXAGON_V6_veqb_and(v16, v16, v16);
2182*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqb.and
2183*67e74705SXin Li __builtin_HEXAGON_V6_veqb_or_128B(v32, v32, v32);
2184*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqb.or.128B
2185*67e74705SXin Li __builtin_HEXAGON_V6_veqb_or(v16, v16, v16);
2186*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqb.or
2187*67e74705SXin Li __builtin_HEXAGON_V6_veqb(v16, v16);
2188*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqb
2189*67e74705SXin Li __builtin_HEXAGON_V6_veqb_xor_128B(v32, v32, v32);
2190*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqb.xor.128B
2191*67e74705SXin Li __builtin_HEXAGON_V6_veqb_xor(v16, v16, v16);
2192*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqb.xor
2193*67e74705SXin Li __builtin_HEXAGON_V6_veqh_128B(v32, v32);
2194*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqh.128B
2195*67e74705SXin Li __builtin_HEXAGON_V6_veqh_and_128B(v32, v32, v32);
2196*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqh.and.128B
2197*67e74705SXin Li __builtin_HEXAGON_V6_veqh_and(v16, v16, v16);
2198*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqh.and
2199*67e74705SXin Li __builtin_HEXAGON_V6_veqh_or_128B(v32, v32, v32);
2200*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqh.or.128B
2201*67e74705SXin Li __builtin_HEXAGON_V6_veqh_or(v16, v16, v16);
2202*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqh.or
2203*67e74705SXin Li __builtin_HEXAGON_V6_veqh(v16, v16);
2204*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqh
2205*67e74705SXin Li __builtin_HEXAGON_V6_veqh_xor_128B(v32, v32, v32);
2206*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqh.xor.128B
2207*67e74705SXin Li __builtin_HEXAGON_V6_veqh_xor(v16, v16, v16);
2208*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqh.xor
2209*67e74705SXin Li __builtin_HEXAGON_V6_veqw_128B(v32, v32);
2210*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqw.128B
2211*67e74705SXin Li __builtin_HEXAGON_V6_veqw_and_128B(v32, v32, v32);
2212*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqw.and.128B
2213*67e74705SXin Li __builtin_HEXAGON_V6_veqw_and(v16, v16, v16);
2214*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqw.and
2215*67e74705SXin Li __builtin_HEXAGON_V6_veqw_or_128B(v32, v32, v32);
2216*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqw.or.128B
2217*67e74705SXin Li __builtin_HEXAGON_V6_veqw_or(v16, v16, v16);
2218*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqw.or
2219*67e74705SXin Li __builtin_HEXAGON_V6_veqw(v16, v16);
2220*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqw
2221*67e74705SXin Li __builtin_HEXAGON_V6_veqw_xor_128B(v32, v32, v32);
2222*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqw.xor.128B
2223*67e74705SXin Li __builtin_HEXAGON_V6_veqw_xor(v16, v16, v16);
2224*67e74705SXin Li // CHECK: @llvm.hexagon.V6.veqw.xor
2225*67e74705SXin Li __builtin_HEXAGON_V6_vgtb_128B(v32, v32);
2226*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtb.128B
2227*67e74705SXin Li __builtin_HEXAGON_V6_vgtb_and_128B(v32, v32, v32);
2228*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtb.and.128B
2229*67e74705SXin Li __builtin_HEXAGON_V6_vgtb_and(v16, v16, v16);
2230*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtb.and
2231*67e74705SXin Li __builtin_HEXAGON_V6_vgtb_or_128B(v32, v32, v32);
2232*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtb.or.128B
2233*67e74705SXin Li __builtin_HEXAGON_V6_vgtb_or(v16, v16, v16);
2234*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtb.or
2235*67e74705SXin Li __builtin_HEXAGON_V6_vgtb(v16, v16);
2236*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtb
2237*67e74705SXin Li __builtin_HEXAGON_V6_vgtb_xor_128B(v32, v32, v32);
2238*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtb.xor.128B
2239*67e74705SXin Li __builtin_HEXAGON_V6_vgtb_xor(v16, v16, v16);
2240*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtb.xor
2241*67e74705SXin Li __builtin_HEXAGON_V6_vgth_128B(v32, v32);
2242*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgth.128B
2243*67e74705SXin Li __builtin_HEXAGON_V6_vgth_and_128B(v32, v32, v32);
2244*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgth.and.128B
2245*67e74705SXin Li __builtin_HEXAGON_V6_vgth_and(v16, v16, v16);
2246*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgth.and
2247*67e74705SXin Li __builtin_HEXAGON_V6_vgth_or_128B(v32, v32, v32);
2248*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgth.or.128B
2249*67e74705SXin Li __builtin_HEXAGON_V6_vgth_or(v16, v16, v16);
2250*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgth.or
2251*67e74705SXin Li __builtin_HEXAGON_V6_vgth(v16, v16);
2252*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgth
2253*67e74705SXin Li __builtin_HEXAGON_V6_vgth_xor_128B(v32, v32, v32);
2254*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgth.xor.128B
2255*67e74705SXin Li __builtin_HEXAGON_V6_vgth_xor(v16, v16, v16);
2256*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgth.xor
2257*67e74705SXin Li __builtin_HEXAGON_V6_vgtub_128B(v32, v32);
2258*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtub.128B
2259*67e74705SXin Li __builtin_HEXAGON_V6_vgtub_and_128B(v32, v32, v32);
2260*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtub.and.128B
2261*67e74705SXin Li __builtin_HEXAGON_V6_vgtub_and(v16, v16, v16);
2262*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtub.and
2263*67e74705SXin Li __builtin_HEXAGON_V6_vgtub_or_128B(v32, v32, v32);
2264*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtub.or.128B
2265*67e74705SXin Li __builtin_HEXAGON_V6_vgtub_or(v16, v16, v16);
2266*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtub.or
2267*67e74705SXin Li __builtin_HEXAGON_V6_vgtub(v16, v16);
2268*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtub
2269*67e74705SXin Li __builtin_HEXAGON_V6_vgtub_xor_128B(v32, v32, v32);
2270*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtub.xor.128B
2271*67e74705SXin Li __builtin_HEXAGON_V6_vgtub_xor(v16, v16, v16);
2272*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtub.xor
2273*67e74705SXin Li __builtin_HEXAGON_V6_vgtuh_128B(v32, v32);
2274*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuh.128B
2275*67e74705SXin Li __builtin_HEXAGON_V6_vgtuh_and_128B(v32, v32, v32);
2276*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuh.and.128B
2277*67e74705SXin Li __builtin_HEXAGON_V6_vgtuh_and(v16, v16, v16);
2278*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuh.and
2279*67e74705SXin Li __builtin_HEXAGON_V6_vgtuh_or_128B(v32, v32, v32);
2280*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuh.or.128B
2281*67e74705SXin Li __builtin_HEXAGON_V6_vgtuh_or(v16, v16, v16);
2282*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuh.or
2283*67e74705SXin Li __builtin_HEXAGON_V6_vgtuh(v16, v16);
2284*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuh
2285*67e74705SXin Li __builtin_HEXAGON_V6_vgtuh_xor_128B(v32, v32, v32);
2286*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuh.xor.128B
2287*67e74705SXin Li __builtin_HEXAGON_V6_vgtuh_xor(v16, v16, v16);
2288*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuh.xor
2289*67e74705SXin Li __builtin_HEXAGON_V6_vgtuw_128B(v32, v32);
2290*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuw.128B
2291*67e74705SXin Li __builtin_HEXAGON_V6_vgtuw_and_128B(v32, v32, v32);
2292*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuw.and.128B
2293*67e74705SXin Li __builtin_HEXAGON_V6_vgtuw_and(v16, v16, v16);
2294*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuw.and
2295*67e74705SXin Li __builtin_HEXAGON_V6_vgtuw_or_128B(v32, v32, v32);
2296*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuw.or.128B
2297*67e74705SXin Li __builtin_HEXAGON_V6_vgtuw_or(v16, v16, v16);
2298*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuw.or
2299*67e74705SXin Li __builtin_HEXAGON_V6_vgtuw(v16, v16);
2300*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuw
2301*67e74705SXin Li __builtin_HEXAGON_V6_vgtuw_xor_128B(v32, v32, v32);
2302*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuw.xor.128B
2303*67e74705SXin Li __builtin_HEXAGON_V6_vgtuw_xor(v16, v16, v16);
2304*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtuw.xor
2305*67e74705SXin Li __builtin_HEXAGON_V6_vgtw_128B(v32, v32);
2306*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtw.128B
2307*67e74705SXin Li __builtin_HEXAGON_V6_vgtw_and_128B(v32, v32, v32);
2308*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtw.and.128B
2309*67e74705SXin Li __builtin_HEXAGON_V6_vgtw_and(v16, v16, v16);
2310*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtw.and
2311*67e74705SXin Li __builtin_HEXAGON_V6_vgtw_or_128B(v32, v32, v32);
2312*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtw.or.128B
2313*67e74705SXin Li __builtin_HEXAGON_V6_vgtw_or(v16, v16, v16);
2314*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtw.or
2315*67e74705SXin Li __builtin_HEXAGON_V6_vgtw(v16, v16);
2316*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtw
2317*67e74705SXin Li __builtin_HEXAGON_V6_vgtw_xor_128B(v32, v32, v32);
2318*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtw.xor.128B
2319*67e74705SXin Li __builtin_HEXAGON_V6_vgtw_xor(v16, v16, v16);
2320*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vgtw.xor
2321*67e74705SXin Li __builtin_HEXAGON_V6_vinsertwr_128B(v32, 0);
2322*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vinsertwr.128B
2323*67e74705SXin Li __builtin_HEXAGON_V6_vinsertwr(v16, 0);
2324*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vinsertwr
2325*67e74705SXin Li __builtin_HEXAGON_V6_vlalignb_128B(v32, v32, 0);
2326*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlalignb.128B
2327*67e74705SXin Li __builtin_HEXAGON_V6_vlalignbi_128B(v32, v32, 0);
2328*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlalignbi.128B
2329*67e74705SXin Li __builtin_HEXAGON_V6_vlalignbi(v16, v16, 0);
2330*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlalignbi
2331*67e74705SXin Li __builtin_HEXAGON_V6_vlalignb(v16, v16, 0);
2332*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlalignb
2333*67e74705SXin Li __builtin_HEXAGON_V6_vlsrh_128B(v32, 0);
2334*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlsrh.128B
2335*67e74705SXin Li __builtin_HEXAGON_V6_vlsrhv_128B(v32, v32);
2336*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlsrhv.128B
2337*67e74705SXin Li __builtin_HEXAGON_V6_vlsrh(v16, 0);
2338*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlsrh
2339*67e74705SXin Li __builtin_HEXAGON_V6_vlsrhv(v16, v16);
2340*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlsrhv
2341*67e74705SXin Li __builtin_HEXAGON_V6_vlsrw_128B(v32, 0);
2342*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlsrw.128B
2343*67e74705SXin Li __builtin_HEXAGON_V6_vlsrwv_128B(v32, v32);
2344*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlsrwv.128B
2345*67e74705SXin Li __builtin_HEXAGON_V6_vlsrw(v16, 0);
2346*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlsrw
2347*67e74705SXin Li __builtin_HEXAGON_V6_vlsrwv(v16, v16);
2348*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlsrwv
2349*67e74705SXin Li __builtin_HEXAGON_V6_vlutb_128B(v32, 0, 0);
2350*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutb.128B
2351*67e74705SXin Li __builtin_HEXAGON_V6_vlutb_acc_128B(v32, v32, 0, 0);
2352*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutb.acc.128B
2353*67e74705SXin Li __builtin_HEXAGON_V6_vlutb_acc(v16, v16, 0, 0);
2354*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutb.acc
2355*67e74705SXin Li __builtin_HEXAGON_V6_vlutb_dv_128B(v64, 0, 0);
2356*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutb.dv.128B
2357*67e74705SXin Li __builtin_HEXAGON_V6_vlutb_dv_acc_128B(v64, v64, 0, 0);
2358*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutb.dv.acc.128B
2359*67e74705SXin Li __builtin_HEXAGON_V6_vlutb_dv_acc(v32, v32, 0, 0);
2360*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutb.dv.acc
2361*67e74705SXin Li __builtin_HEXAGON_V6_vlutb_dv(v32, 0, 0);
2362*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutb.dv
2363*67e74705SXin Li __builtin_HEXAGON_V6_vlutb(v16, 0, 0);
2364*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutb
2365*67e74705SXin Li __builtin_HEXAGON_V6_vlutvvb_128B(v32, v32, 0);
2366*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutvvb.128B
2367*67e74705SXin Li __builtin_HEXAGON_V6_vlutvvb_oracc_128B(v32, v32, v32, 0);
2368*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutvvb.oracc.128B
2369*67e74705SXin Li __builtin_HEXAGON_V6_vlutvvb_oracc(v16, v16, v16, 0);
2370*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutvvb.oracc
2371*67e74705SXin Li __builtin_HEXAGON_V6_vlutvvb(v16, v16, 0);
2372*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutvvb
2373*67e74705SXin Li __builtin_HEXAGON_V6_vlutvwh_128B(v32, v32, 0);
2374*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutvwh.128B
2375*67e74705SXin Li __builtin_HEXAGON_V6_vlutvwh_oracc_128B(v64, v32, v32, 0);
2376*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutvwh.oracc.128B
2377*67e74705SXin Li __builtin_HEXAGON_V6_vlutvwh_oracc(v32, v16, v16, 0);
2378*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutvwh.oracc
2379*67e74705SXin Li __builtin_HEXAGON_V6_vlutvwh(v16, v16, 0);
2380*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vlutvwh
2381*67e74705SXin Li __builtin_HEXAGON_V6_vmaxh_128B(v32, v32);
2382*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmaxh.128B
2383*67e74705SXin Li __builtin_HEXAGON_V6_vmaxh(v16, v16);
2384*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmaxh
2385*67e74705SXin Li __builtin_HEXAGON_V6_vmaxub_128B(v32, v32);
2386*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmaxub.128B
2387*67e74705SXin Li __builtin_HEXAGON_V6_vmaxub(v16, v16);
2388*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmaxub
2389*67e74705SXin Li __builtin_HEXAGON_V6_vmaxuh_128B(v32, v32);
2390*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmaxuh.128B
2391*67e74705SXin Li __builtin_HEXAGON_V6_vmaxuh(v16, v16);
2392*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmaxuh
2393*67e74705SXin Li __builtin_HEXAGON_V6_vmaxw_128B(v32, v32);
2394*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmaxw.128B
2395*67e74705SXin Li __builtin_HEXAGON_V6_vmaxw(v16, v16);
2396*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmaxw
2397*67e74705SXin Li __builtin_HEXAGON_V6_vminh_128B(v32, v32);
2398*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vminh.128B
2399*67e74705SXin Li __builtin_HEXAGON_V6_vminh(v16, v16);
2400*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vminh
2401*67e74705SXin Li __builtin_HEXAGON_V6_vminub_128B(v32, v32);
2402*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vminub.128B
2403*67e74705SXin Li __builtin_HEXAGON_V6_vminub(v16, v16);
2404*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vminub
2405*67e74705SXin Li __builtin_HEXAGON_V6_vminuh_128B(v32, v32);
2406*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vminuh.128B
2407*67e74705SXin Li __builtin_HEXAGON_V6_vminuh(v16, v16);
2408*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vminuh
2409*67e74705SXin Li __builtin_HEXAGON_V6_vminw_128B(v32, v32);
2410*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vminw.128B
2411*67e74705SXin Li __builtin_HEXAGON_V6_vminw(v16, v16);
2412*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vminw
2413*67e74705SXin Li __builtin_HEXAGON_V6_vmpabus_128B(v64, 0);
2414*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpabus.128B
2415*67e74705SXin Li __builtin_HEXAGON_V6_vmpabus_acc_128B(v64, v64, 0);
2416*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpabus.acc.128B
2417*67e74705SXin Li __builtin_HEXAGON_V6_vmpabus_acc(v32, v32, 0);
2418*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpabus.acc
2419*67e74705SXin Li __builtin_HEXAGON_V6_vmpabusv_128B(v64, v64);
2420*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpabusv.128B
2421*67e74705SXin Li __builtin_HEXAGON_V6_vmpabus(v32, 0);
2422*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpabus
2423*67e74705SXin Li __builtin_HEXAGON_V6_vmpabusv(v32, v32);
2424*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpabusv
2425*67e74705SXin Li __builtin_HEXAGON_V6_vmpabuuv_128B(v64, v64);
2426*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpabuuv.128B
2427*67e74705SXin Li __builtin_HEXAGON_V6_vmpabuuv(v32, v32);
2428*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpabuuv
2429*67e74705SXin Li __builtin_HEXAGON_V6_vmpahb_128B(v64, 0);
2430*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpahb.128B
2431*67e74705SXin Li __builtin_HEXAGON_V6_vmpahb_acc_128B(v64, v64, 0);
2432*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpahb.acc.128B
2433*67e74705SXin Li __builtin_HEXAGON_V6_vmpahb_acc(v32, v32, 0);
2434*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpahb.acc
2435*67e74705SXin Li __builtin_HEXAGON_V6_vmpahb(v32, 0);
2436*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpahb
2437*67e74705SXin Li __builtin_HEXAGON_V6_vmpybus_128B(v32, 0);
2438*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybus.128B
2439*67e74705SXin Li __builtin_HEXAGON_V6_vmpybus_acc_128B(v64, v32, 0);
2440*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybus.acc.128B
2441*67e74705SXin Li __builtin_HEXAGON_V6_vmpybus_acc(v32, v16, 0);
2442*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybus.acc
2443*67e74705SXin Li __builtin_HEXAGON_V6_vmpybusv_128B(v32, v32);
2444*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybusv.128B
2445*67e74705SXin Li __builtin_HEXAGON_V6_vmpybus(v16, 0);
2446*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybus
2447*67e74705SXin Li __builtin_HEXAGON_V6_vmpybusv_acc_128B(v64, v32, v32);
2448*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybusv.acc.128B
2449*67e74705SXin Li __builtin_HEXAGON_V6_vmpybusv_acc(v32, v16, v16);
2450*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybusv.acc
2451*67e74705SXin Li __builtin_HEXAGON_V6_vmpybusv(v16, v16);
2452*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybusv
2453*67e74705SXin Li __builtin_HEXAGON_V6_vmpybv_128B(v32, v32);
2454*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybv.128B
2455*67e74705SXin Li __builtin_HEXAGON_V6_vmpybv_acc_128B(v64, v32, v32);
2456*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybv.acc.128B
2457*67e74705SXin Li __builtin_HEXAGON_V6_vmpybv_acc(v32, v16, v16);
2458*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybv.acc
2459*67e74705SXin Li __builtin_HEXAGON_V6_vmpybv(v16, v16);
2460*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpybv
2461*67e74705SXin Li __builtin_HEXAGON_V6_vmpyewuh_128B(v32, v32);
2462*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyewuh.128B
2463*67e74705SXin Li __builtin_HEXAGON_V6_vmpyewuh(v16, v16);
2464*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyewuh
2465*67e74705SXin Li __builtin_HEXAGON_V6_vmpyh_128B(v32, 0);
2466*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyh.128B
2467*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhsat_acc_128B(v64, v32, 0);
2468*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhsat.acc.128B
2469*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhsat_acc(v32, v16, 0);
2470*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhsat.acc
2471*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhsrs_128B(v32, 0);
2472*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhsrs.128B
2473*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhsrs(v16, 0);
2474*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhsrs
2475*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhss_128B(v32, 0);
2476*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhss.128B
2477*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhss(v16, 0);
2478*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhss
2479*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhus_128B(v32, v32);
2480*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhus.128B
2481*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhus_acc_128B(v64, v32, v32);
2482*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhus.acc.128B
2483*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhus_acc(v32, v16, v16);
2484*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhus.acc
2485*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhus(v16, v16);
2486*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhus
2487*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhv_128B(v32, v32);
2488*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhv.128B
2489*67e74705SXin Li __builtin_HEXAGON_V6_vmpyh(v16, 0);
2490*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyh
2491*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhv_acc_128B(v64, v32, v32);
2492*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhv.acc.128B
2493*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhv_acc(v32, v16, v16);
2494*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhv.acc
2495*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhvsrs_128B(v32, v32);
2496*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhvsrs.128B
2497*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhvsrs(v16, v16);
2498*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhvsrs
2499*67e74705SXin Li __builtin_HEXAGON_V6_vmpyhv(v16, v16);
2500*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyhv
2501*67e74705SXin Li __builtin_HEXAGON_V6_vmpyieoh_128B(v32, v32);
2502*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyieoh.128B
2503*67e74705SXin Li __builtin_HEXAGON_V6_vmpyieoh(v16, v16);
2504*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyieoh
2505*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiewh_acc_128B(v32, v32, v32);
2506*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiewh.acc.128B
2507*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiewh_acc(v16, v16, v16);
2508*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiewh.acc
2509*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiewuh_128B(v32, v32);
2510*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiewuh.128B
2511*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiewuh_acc_128B(v32, v32, v32);
2512*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiewuh.acc.128B
2513*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiewuh_acc(v16, v16, v16);
2514*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiewuh.acc
2515*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiewuh(v16, v16);
2516*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiewuh
2517*67e74705SXin Li __builtin_HEXAGON_V6_vmpyih_128B(v32, v32);
2518*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyih.128B
2519*67e74705SXin Li __builtin_HEXAGON_V6_vmpyih_acc_128B(v32, v32, v32);
2520*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyih.acc.128B
2521*67e74705SXin Li __builtin_HEXAGON_V6_vmpyih_acc(v16, v16, v16);
2522*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyih.acc
2523*67e74705SXin Li __builtin_HEXAGON_V6_vmpyihb_128B(v32, 0);
2524*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyihb.128B
2525*67e74705SXin Li __builtin_HEXAGON_V6_vmpyihb_acc_128B(v32, v32, 0);
2526*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyihb.acc.128B
2527*67e74705SXin Li __builtin_HEXAGON_V6_vmpyihb_acc(v16, v16, 0);
2528*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyihb.acc
2529*67e74705SXin Li __builtin_HEXAGON_V6_vmpyihb(v16, 0);
2530*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyihb
2531*67e74705SXin Li __builtin_HEXAGON_V6_vmpyih(v16, v16);
2532*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyih
2533*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiowh_128B(v32, v32);
2534*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiowh.128B
2535*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiowh(v16, v16);
2536*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiowh
2537*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiwb_128B(v32, 0);
2538*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiwb.128B
2539*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiwb_acc_128B(v32, v32, 0);
2540*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiwb.acc.128B
2541*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiwb_acc(v16, v16, 0);
2542*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiwb.acc
2543*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiwb(v16, 0);
2544*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiwb
2545*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiwh_128B(v32, 0);
2546*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiwh.128B
2547*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiwh_acc_128B(v32, v32, 0);
2548*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiwh.acc.128B
2549*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiwh_acc(v16, v16, 0);
2550*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiwh.acc
2551*67e74705SXin Li __builtin_HEXAGON_V6_vmpyiwh(v16, 0);
2552*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyiwh
2553*67e74705SXin Li __builtin_HEXAGON_V6_vmpyowh_128B(v32, v32);
2554*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyowh.128B
2555*67e74705SXin Li __builtin_HEXAGON_V6_vmpyowh_rnd_128B(v32, v32);
2556*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyowh.rnd.128B
2557*67e74705SXin Li __builtin_HEXAGON_V6_vmpyowh_rnd_sacc_128B(v32, v32, v32);
2558*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyowh.rnd.sacc.128B
2559*67e74705SXin Li __builtin_HEXAGON_V6_vmpyowh_rnd_sacc(v16, v16, v16);
2560*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyowh.rnd.sacc
2561*67e74705SXin Li __builtin_HEXAGON_V6_vmpyowh_rnd(v16, v16);
2562*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyowh.rnd
2563*67e74705SXin Li __builtin_HEXAGON_V6_vmpyowh_sacc_128B(v32, v32, v32);
2564*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyowh.sacc.128B
2565*67e74705SXin Li __builtin_HEXAGON_V6_vmpyowh_sacc(v16, v16, v16);
2566*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyowh.sacc
2567*67e74705SXin Li __builtin_HEXAGON_V6_vmpyowh(v16, v16);
2568*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyowh
2569*67e74705SXin Li __builtin_HEXAGON_V6_vmpyub_128B(v32, 0);
2570*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyub.128B
2571*67e74705SXin Li __builtin_HEXAGON_V6_vmpyub_acc_128B(v64, v32, 0);
2572*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyub.acc.128B
2573*67e74705SXin Li __builtin_HEXAGON_V6_vmpyub_acc(v32, v16, 0);
2574*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyub.acc
2575*67e74705SXin Li __builtin_HEXAGON_V6_vmpyubv_128B(v32, v32);
2576*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyubv.128B
2577*67e74705SXin Li __builtin_HEXAGON_V6_vmpyub(v16, 0);
2578*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyub
2579*67e74705SXin Li __builtin_HEXAGON_V6_vmpyubv_acc_128B(v64, v32, v32);
2580*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyubv.acc.128B
2581*67e74705SXin Li __builtin_HEXAGON_V6_vmpyubv_acc(v32, v16, v16);
2582*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyubv.acc
2583*67e74705SXin Li __builtin_HEXAGON_V6_vmpyubv(v16, v16);
2584*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyubv
2585*67e74705SXin Li __builtin_HEXAGON_V6_vmpyuh_128B(v32, 0);
2586*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyuh.128B
2587*67e74705SXin Li __builtin_HEXAGON_V6_vmpyuh_acc_128B(v64, v32, 0);
2588*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyuh.acc.128B
2589*67e74705SXin Li __builtin_HEXAGON_V6_vmpyuh_acc(v32, v16, 0);
2590*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyuh.acc
2591*67e74705SXin Li __builtin_HEXAGON_V6_vmpyuhv_128B(v32, v32);
2592*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyuhv.128B
2593*67e74705SXin Li __builtin_HEXAGON_V6_vmpyuh(v16, 0);
2594*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyuh
2595*67e74705SXin Li __builtin_HEXAGON_V6_vmpyuhv_acc_128B(v64, v32, v32);
2596*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyuhv.acc.128B
2597*67e74705SXin Li __builtin_HEXAGON_V6_vmpyuhv_acc(v32, v16, v16);
2598*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyuhv.acc
2599*67e74705SXin Li __builtin_HEXAGON_V6_vmpyuhv(v16, v16);
2600*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmpyuhv
2601*67e74705SXin Li __builtin_HEXAGON_V6_vmux_128B(v32, v32, v32);
2602*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmux.128B
2603*67e74705SXin Li __builtin_HEXAGON_V6_vmux(v16, v16, v16);
2604*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vmux
2605*67e74705SXin Li __builtin_HEXAGON_V6_vnavgh_128B(v32, v32);
2606*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnavgh.128B
2607*67e74705SXin Li __builtin_HEXAGON_V6_vnavgh(v16, v16);
2608*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnavgh
2609*67e74705SXin Li __builtin_HEXAGON_V6_vnavgub_128B(v32, v32);
2610*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnavgub.128B
2611*67e74705SXin Li __builtin_HEXAGON_V6_vnavgub(v16, v16);
2612*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnavgub
2613*67e74705SXin Li __builtin_HEXAGON_V6_vnavgw_128B(v32, v32);
2614*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnavgw.128B
2615*67e74705SXin Li __builtin_HEXAGON_V6_vnavgw(v16, v16);
2616*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnavgw
2617*67e74705SXin Li __builtin_HEXAGON_V6_vnormamth_128B(v32);
2618*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnormamth.128B
2619*67e74705SXin Li __builtin_HEXAGON_V6_vnormamth(v16);
2620*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnormamth
2621*67e74705SXin Li __builtin_HEXAGON_V6_vnormamtw_128B(v32);
2622*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnormamtw.128B
2623*67e74705SXin Li __builtin_HEXAGON_V6_vnormamtw(v16);
2624*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnormamtw
2625*67e74705SXin Li __builtin_HEXAGON_V6_vnot_128B(v32);
2626*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnot.128B
2627*67e74705SXin Li __builtin_HEXAGON_V6_vnot(v16);
2628*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vnot
2629*67e74705SXin Li __builtin_HEXAGON_V6_vor_128B(v32, v32);
2630*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vor.128B
2631*67e74705SXin Li __builtin_HEXAGON_V6_vor(v16, v16);
2632*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vor
2633*67e74705SXin Li __builtin_HEXAGON_V6_vpackeb_128B(v32, v32);
2634*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackeb.128B
2635*67e74705SXin Li __builtin_HEXAGON_V6_vpackeb(v16, v16);
2636*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackeb
2637*67e74705SXin Li __builtin_HEXAGON_V6_vpackeh_128B(v32, v32);
2638*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackeh.128B
2639*67e74705SXin Li __builtin_HEXAGON_V6_vpackeh(v16, v16);
2640*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackeh
2641*67e74705SXin Li __builtin_HEXAGON_V6_vpackhb_sat_128B(v32, v32);
2642*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackhb.sat.128B
2643*67e74705SXin Li __builtin_HEXAGON_V6_vpackhb_sat(v16, v16);
2644*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackhb.sat
2645*67e74705SXin Li __builtin_HEXAGON_V6_vpackhub_sat_128B(v32, v32);
2646*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackhub.sat.128B
2647*67e74705SXin Li __builtin_HEXAGON_V6_vpackhub_sat(v16, v16);
2648*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackhub.sat
2649*67e74705SXin Li __builtin_HEXAGON_V6_vpackob_128B(v32, v32);
2650*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackob.128B
2651*67e74705SXin Li __builtin_HEXAGON_V6_vpackob(v16, v16);
2652*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackob
2653*67e74705SXin Li __builtin_HEXAGON_V6_vpackoh_128B(v32, v32);
2654*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackoh.128B
2655*67e74705SXin Li __builtin_HEXAGON_V6_vpackoh(v16, v16);
2656*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackoh
2657*67e74705SXin Li __builtin_HEXAGON_V6_vpackwh_sat_128B(v32, v32);
2658*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackwh.sat.128B
2659*67e74705SXin Li __builtin_HEXAGON_V6_vpackwh_sat(v16, v16);
2660*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackwh.sat
2661*67e74705SXin Li __builtin_HEXAGON_V6_vpackwuh_sat_128B(v32, v32);
2662*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackwuh.sat.128B
2663*67e74705SXin Li __builtin_HEXAGON_V6_vpackwuh_sat(v16, v16);
2664*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpackwuh.sat
2665*67e74705SXin Li __builtin_HEXAGON_V6_vpopcounth_128B(v32);
2666*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpopcounth.128B
2667*67e74705SXin Li __builtin_HEXAGON_V6_vpopcounth(v16);
2668*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vpopcounth
2669*67e74705SXin Li __builtin_HEXAGON_V6_vrdelta_128B(v32, v32);
2670*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrdelta.128B
2671*67e74705SXin Li __builtin_HEXAGON_V6_vrdelta(v16, v16);
2672*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrdelta
2673*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybus_128B(v32, 0);
2674*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybus.128B
2675*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybus_acc_128B(v32, v32, 0);
2676*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybus.acc.128B
2677*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybus_acc(v16, v16, 0);
2678*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybus.acc
2679*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybusi_128B(v64, 0, 0);
2680*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybusi.128B
2681*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybusi_acc_128B(v64, v64, 0, 0);
2682*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybusi.acc.128B
2683*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybusi_acc(v32, v32, 0, 0);
2684*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybusi.acc
2685*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybusi(v32, 0, 0);
2686*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybusi
2687*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybusv_128B(v32, v32);
2688*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybusv.128B
2689*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybus(v16, 0);
2690*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybus
2691*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybusv_acc_128B(v32, v32, v32);
2692*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybusv.acc.128B
2693*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybusv_acc(v16, v16, v16);
2694*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybusv.acc
2695*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybusv(v16, v16);
2696*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybusv
2697*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybv_128B(v32, v32);
2698*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybv.128B
2699*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybv_acc_128B(v32, v32, v32);
2700*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybv.acc.128B
2701*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybv_acc(v16, v16, v16);
2702*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybv.acc
2703*67e74705SXin Li __builtin_HEXAGON_V6_vrmpybv(v16, v16);
2704*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpybv
2705*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyub_128B(v32, 0);
2706*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyub.128B
2707*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyub_acc_128B(v32, v32, 0);
2708*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyub.acc.128B
2709*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyub_acc(v16, v16, 0);
2710*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyub.acc
2711*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyubi_128B(v64, 0, 0);
2712*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyubi.128B
2713*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyubi_acc_128B(v64, v64, 0, 0);
2714*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyubi.acc.128B
2715*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyubi_acc(v32, v32, 0, 0);
2716*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyubi.acc
2717*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyubi(v32, 0, 0);
2718*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyubi
2719*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyubv_128B(v32, v32);
2720*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyubv.128B
2721*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyub(v16, 0);
2722*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyub
2723*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyubv_acc_128B(v32, v32, v32);
2724*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyubv.acc.128B
2725*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyubv_acc(v16, v16, v16);
2726*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyubv.acc
2727*67e74705SXin Li __builtin_HEXAGON_V6_vrmpyubv(v16, v16);
2728*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrmpyubv
2729*67e74705SXin Li __builtin_HEXAGON_V6_vror_128B(v32, 0);
2730*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vror.128B
2731*67e74705SXin Li __builtin_HEXAGON_V6_vror(v16, 0);
2732*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vror
2733*67e74705SXin Li __builtin_HEXAGON_V6_vroundhb_128B(v32, v32);
2734*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vroundhb.128B
2735*67e74705SXin Li __builtin_HEXAGON_V6_vroundhb(v16, v16);
2736*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vroundhb
2737*67e74705SXin Li __builtin_HEXAGON_V6_vroundhub_128B(v32, v32);
2738*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vroundhub.128B
2739*67e74705SXin Li __builtin_HEXAGON_V6_vroundhub(v16, v16);
2740*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vroundhub
2741*67e74705SXin Li __builtin_HEXAGON_V6_vroundwh_128B(v32, v32);
2742*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vroundwh.128B
2743*67e74705SXin Li __builtin_HEXAGON_V6_vroundwh(v16, v16);
2744*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vroundwh
2745*67e74705SXin Li __builtin_HEXAGON_V6_vroundwuh_128B(v32, v32);
2746*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vroundwuh.128B
2747*67e74705SXin Li __builtin_HEXAGON_V6_vroundwuh(v16, v16);
2748*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vroundwuh
2749*67e74705SXin Li __builtin_HEXAGON_V6_vrsadubi_128B(v64, 0, 0);
2750*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrsadubi.128B
2751*67e74705SXin Li __builtin_HEXAGON_V6_vrsadubi_acc_128B(v64, v64, 0, 0);
2752*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrsadubi.acc.128B
2753*67e74705SXin Li __builtin_HEXAGON_V6_vrsadubi_acc(v32, v32, 0, 0);
2754*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrsadubi.acc
2755*67e74705SXin Li __builtin_HEXAGON_V6_vrsadubi(v32, 0, 0);
2756*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vrsadubi
2757*67e74705SXin Li __builtin_HEXAGON_V6_vsathub_128B(v32, v32);
2758*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsathub.128B
2759*67e74705SXin Li __builtin_HEXAGON_V6_vsathub(v16, v16);
2760*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsathub
2761*67e74705SXin Li __builtin_HEXAGON_V6_vsatwh_128B(v32, v32);
2762*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsatwh.128B
2763*67e74705SXin Li __builtin_HEXAGON_V6_vsatwh(v16, v16);
2764*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsatwh
2765*67e74705SXin Li __builtin_HEXAGON_V6_vsb_128B(v32);
2766*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsb.128B
2767*67e74705SXin Li __builtin_HEXAGON_V6_vsb(v16);
2768*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsb
2769*67e74705SXin Li __builtin_HEXAGON_V6_vsh_128B(v32);
2770*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsh.128B
2771*67e74705SXin Li __builtin_HEXAGON_V6_vshufeh_128B(v32, v32);
2772*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshufeh.128B
2773*67e74705SXin Li __builtin_HEXAGON_V6_vshufeh(v16, v16);
2774*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshufeh
2775*67e74705SXin Li __builtin_HEXAGON_V6_vshuffb_128B(v32);
2776*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffb.128B
2777*67e74705SXin Li __builtin_HEXAGON_V6_vshuffb(v16);
2778*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffb
2779*67e74705SXin Li __builtin_HEXAGON_V6_vshuffeb_128B(v32, v32);
2780*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffeb.128B
2781*67e74705SXin Li __builtin_HEXAGON_V6_vshuffeb(v16, v16);
2782*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffeb
2783*67e74705SXin Li __builtin_HEXAGON_V6_vshuffh_128B(v32);
2784*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffh.128B
2785*67e74705SXin Li __builtin_HEXAGON_V6_vshuffh(v16);
2786*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffh
2787*67e74705SXin Li __builtin_HEXAGON_V6_vshuffob_128B(v32, v32);
2788*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffob.128B
2789*67e74705SXin Li __builtin_HEXAGON_V6_vshuffob(v16, v16);
2790*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffob
2791*67e74705SXin Li __builtin_HEXAGON_V6_vshuffvdd_128B(v32, v32, 0);
2792*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffvdd.128B
2793*67e74705SXin Li __builtin_HEXAGON_V6_vshuffvdd(v16, v16, 0);
2794*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshuffvdd
2795*67e74705SXin Li __builtin_HEXAGON_V6_vshufoeb_128B(v32, v32);
2796*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshufoeb.128B
2797*67e74705SXin Li __builtin_HEXAGON_V6_vshufoeb(v16, v16);
2798*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshufoeb
2799*67e74705SXin Li __builtin_HEXAGON_V6_vshufoeh_128B(v32, v32);
2800*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshufoeh.128B
2801*67e74705SXin Li __builtin_HEXAGON_V6_vshufoeh(v16, v16);
2802*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshufoeh
2803*67e74705SXin Li __builtin_HEXAGON_V6_vshufoh_128B(v32, v32);
2804*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshufoh.128B
2805*67e74705SXin Li __builtin_HEXAGON_V6_vshufoh(v16, v16);
2806*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vshufoh
2807*67e74705SXin Li __builtin_HEXAGON_V6_vsh(v16);
2808*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsh
2809*67e74705SXin Li __builtin_HEXAGON_V6_vsubb_128B(v32, v32);
2810*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubb.128B
2811*67e74705SXin Li __builtin_HEXAGON_V6_vsubb_dv_128B(v64, v64);
2812*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubb.dv.128B
2813*67e74705SXin Li __builtin_HEXAGON_V6_vsubb_dv(v32, v32);
2814*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubb.dv
2815*67e74705SXin Li __builtin_HEXAGON_V6_vsubbnq_128B(v32, v32, v32);
2816*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubbnq.128B
2817*67e74705SXin Li __builtin_HEXAGON_V6_vsubbnq(v16, v16, v16);
2818*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubbnq
2819*67e74705SXin Li __builtin_HEXAGON_V6_vsubbq_128B(v32, v32, v32);
2820*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubbq.128B
2821*67e74705SXin Li __builtin_HEXAGON_V6_vsubbq(v16, v16, v16);
2822*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubbq
2823*67e74705SXin Li __builtin_HEXAGON_V6_vsubb(v16, v16);
2824*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubb
2825*67e74705SXin Li __builtin_HEXAGON_V6_vsubh_128B(v32, v32);
2826*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubh.128B
2827*67e74705SXin Li __builtin_HEXAGON_V6_vsubh_dv_128B(v64, v64);
2828*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubh.dv.128B
2829*67e74705SXin Li __builtin_HEXAGON_V6_vsubh_dv(v32, v32);
2830*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubh.dv
2831*67e74705SXin Li __builtin_HEXAGON_V6_vsubhnq_128B(v32, v32, v32);
2832*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhnq.128B
2833*67e74705SXin Li __builtin_HEXAGON_V6_vsubhnq(v16, v16, v16);
2834*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhnq
2835*67e74705SXin Li __builtin_HEXAGON_V6_vsubhq_128B(v32, v32, v32);
2836*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhq.128B
2837*67e74705SXin Li __builtin_HEXAGON_V6_vsubhq(v16, v16, v16);
2838*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhq
2839*67e74705SXin Li __builtin_HEXAGON_V6_vsubhsat_128B(v32, v32);
2840*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhsat.128B
2841*67e74705SXin Li __builtin_HEXAGON_V6_vsubhsat_dv_128B(v64, v64);
2842*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhsat.dv.128B
2843*67e74705SXin Li __builtin_HEXAGON_V6_vsubhsat_dv(v32, v32);
2844*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhsat.dv
2845*67e74705SXin Li __builtin_HEXAGON_V6_vsubhsat(v16, v16);
2846*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhsat
2847*67e74705SXin Li __builtin_HEXAGON_V6_vsubh(v16, v16);
2848*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubh
2849*67e74705SXin Li __builtin_HEXAGON_V6_vsubhw_128B(v32, v32);
2850*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhw.128B
2851*67e74705SXin Li __builtin_HEXAGON_V6_vsubhw(v16, v16);
2852*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubhw
2853*67e74705SXin Li __builtin_HEXAGON_V6_vsububh_128B(v32, v32);
2854*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsububh.128B
2855*67e74705SXin Li __builtin_HEXAGON_V6_vsububh(v16, v16);
2856*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsububh
2857*67e74705SXin Li __builtin_HEXAGON_V6_vsububsat_128B(v32, v32);
2858*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsububsat.128B
2859*67e74705SXin Li __builtin_HEXAGON_V6_vsububsat_dv_128B(v64, v64);
2860*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsububsat.dv.128B
2861*67e74705SXin Li __builtin_HEXAGON_V6_vsububsat_dv(v32, v32);
2862*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsububsat.dv
2863*67e74705SXin Li __builtin_HEXAGON_V6_vsububsat(v16, v16);
2864*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsububsat
2865*67e74705SXin Li __builtin_HEXAGON_V6_vsubuhsat_128B(v32, v32);
2866*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubuhsat.128B
2867*67e74705SXin Li __builtin_HEXAGON_V6_vsubuhsat_dv_128B(v64, v64);
2868*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubuhsat.dv.128B
2869*67e74705SXin Li __builtin_HEXAGON_V6_vsubuhsat_dv(v32, v32);
2870*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubuhsat.dv
2871*67e74705SXin Li __builtin_HEXAGON_V6_vsubuhsat(v16, v16);
2872*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubuhsat
2873*67e74705SXin Li __builtin_HEXAGON_V6_vsubuhw_128B(v32, v32);
2874*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubuhw.128B
2875*67e74705SXin Li __builtin_HEXAGON_V6_vsubuhw(v16, v16);
2876*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubuhw
2877*67e74705SXin Li __builtin_HEXAGON_V6_vsubw_128B(v32, v32);
2878*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubw.128B
2879*67e74705SXin Li __builtin_HEXAGON_V6_vsubw_dv_128B(v64, v64);
2880*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubw.dv.128B
2881*67e74705SXin Li __builtin_HEXAGON_V6_vsubw_dv(v32, v32);
2882*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubw.dv
2883*67e74705SXin Li __builtin_HEXAGON_V6_vsubwnq_128B(v32, v32, v32);
2884*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubwnq.128B
2885*67e74705SXin Li __builtin_HEXAGON_V6_vsubwnq(v16, v16, v16);
2886*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubwnq
2887*67e74705SXin Li __builtin_HEXAGON_V6_vsubwq_128B(v32, v32, v32);
2888*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubwq.128B
2889*67e74705SXin Li __builtin_HEXAGON_V6_vsubwq(v16, v16, v16);
2890*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubwq
2891*67e74705SXin Li __builtin_HEXAGON_V6_vsubwsat_128B(v32, v32);
2892*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubwsat.128B
2893*67e74705SXin Li __builtin_HEXAGON_V6_vsubwsat_dv_128B(v64, v64);
2894*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubwsat.dv.128B
2895*67e74705SXin Li __builtin_HEXAGON_V6_vsubwsat_dv(v32, v32);
2896*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubwsat.dv
2897*67e74705SXin Li __builtin_HEXAGON_V6_vsubwsat(v16, v16);
2898*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubwsat
2899*67e74705SXin Li __builtin_HEXAGON_V6_vsubw(v16, v16);
2900*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vsubw
2901*67e74705SXin Li __builtin_HEXAGON_V6_vswap_128B(v32, v32, v32);
2902*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vswap.128B
2903*67e74705SXin Li __builtin_HEXAGON_V6_vswap(v16, v16, v16);
2904*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vswap
2905*67e74705SXin Li __builtin_HEXAGON_V6_vtmpyb_128B(v64, 0);
2906*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpyb.128B
2907*67e74705SXin Li __builtin_HEXAGON_V6_vtmpyb_acc_128B(v64, v64, 0);
2908*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpyb.acc.128B
2909*67e74705SXin Li __builtin_HEXAGON_V6_vtmpyb_acc(v32, v32, 0);
2910*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpyb.acc
2911*67e74705SXin Li __builtin_HEXAGON_V6_vtmpybus_128B(v64, 0);
2912*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpybus.128B
2913*67e74705SXin Li __builtin_HEXAGON_V6_vtmpybus_acc_128B(v64, v64, 0);
2914*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpybus.acc.128B
2915*67e74705SXin Li __builtin_HEXAGON_V6_vtmpybus_acc(v32, v32, 0);
2916*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpybus.acc
2917*67e74705SXin Li __builtin_HEXAGON_V6_vtmpybus(v32, 0);
2918*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpybus
2919*67e74705SXin Li __builtin_HEXAGON_V6_vtmpyb(v32, 0);
2920*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpyb
2921*67e74705SXin Li __builtin_HEXAGON_V6_vtmpyhb_128B(v64, 0);
2922*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpyhb.128B
2923*67e74705SXin Li __builtin_HEXAGON_V6_vtmpyhb_acc_128B(v64, v64, 0);
2924*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpyhb.acc.128B
2925*67e74705SXin Li __builtin_HEXAGON_V6_vtmpyhb_acc(v32, v32, 0);
2926*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpyhb.acc
2927*67e74705SXin Li __builtin_HEXAGON_V6_vtmpyhb(v32, 0);
2928*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vtmpyhb
2929*67e74705SXin Li __builtin_HEXAGON_V6_vunpackb_128B(v32);
2930*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackb.128B
2931*67e74705SXin Li __builtin_HEXAGON_V6_vunpackb(v16);
2932*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackb
2933*67e74705SXin Li __builtin_HEXAGON_V6_vunpackh_128B(v32);
2934*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackh.128B
2935*67e74705SXin Li __builtin_HEXAGON_V6_vunpackh(v16);
2936*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackh
2937*67e74705SXin Li __builtin_HEXAGON_V6_vunpackob_128B(v64, v32);
2938*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackob.128B
2939*67e74705SXin Li __builtin_HEXAGON_V6_vunpackob(v32, v16);
2940*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackob
2941*67e74705SXin Li __builtin_HEXAGON_V6_vunpackoh_128B(v64, v32);
2942*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackoh.128B
2943*67e74705SXin Li __builtin_HEXAGON_V6_vunpackoh(v32, v16);
2944*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackoh
2945*67e74705SXin Li __builtin_HEXAGON_V6_vunpackub_128B(v32);
2946*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackub.128B
2947*67e74705SXin Li __builtin_HEXAGON_V6_vunpackub(v16);
2948*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackub
2949*67e74705SXin Li __builtin_HEXAGON_V6_vunpackuh_128B(v32);
2950*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackuh.128B
2951*67e74705SXin Li __builtin_HEXAGON_V6_vunpackuh(v16);
2952*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vunpackuh
2953*67e74705SXin Li __builtin_HEXAGON_V6_vxor_128B(v32, v32);
2954*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vxor.128B
2955*67e74705SXin Li __builtin_HEXAGON_V6_vxor(v16, v16);
2956*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vxor
2957*67e74705SXin Li __builtin_HEXAGON_V6_vzb_128B(v32);
2958*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vzb.128B
2959*67e74705SXin Li __builtin_HEXAGON_V6_vzb(v16);
2960*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vzb
2961*67e74705SXin Li __builtin_HEXAGON_V6_vzh_128B(v32);
2962*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vzh.128B
2963*67e74705SXin Li __builtin_HEXAGON_V6_vzh(v16);
2964*67e74705SXin Li // CHECK: @llvm.hexagon.V6.vzh
2965*67e74705SXin Li }
2966