annotate gcc/config/arm/arm_neon_builtins.def @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 84e7813d76e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* NEON builtin definitions for ARM.
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
2 Copyright (C) 2013-2020 Free Software Foundation, Inc.
111
kono
parents:
diff changeset
3 Contributed by ARM Ltd.
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 This file is part of GCC.
kono
parents:
diff changeset
6
kono
parents:
diff changeset
7 GCC is free software; you can redistribute it and/or modify it
kono
parents:
diff changeset
8 under the terms of the GNU General Public License as published
kono
parents:
diff changeset
9 by the Free Software Foundation; either version 3, or (at your
kono
parents:
diff changeset
10 option) any later version.
kono
parents:
diff changeset
11
kono
parents:
diff changeset
12 GCC is distributed in the hope that it will be useful, but WITHOUT
kono
parents:
diff changeset
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
kono
parents:
diff changeset
14 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
kono
parents:
diff changeset
15 License for more details.
kono
parents:
diff changeset
16
kono
parents:
diff changeset
17 You should have received a copy of the GNU General Public License
kono
parents:
diff changeset
18 along with GCC; see the file COPYING3. If not see
kono
parents:
diff changeset
19 <http://www.gnu.org/licenses/>. */
kono
parents:
diff changeset
20
kono
parents:
diff changeset
21 VAR2 (BINOP, vadd, v2sf, v4sf)
kono
parents:
diff changeset
22 VAR2 (BINOP, vadd, v8hf, v4hf)
kono
parents:
diff changeset
23 VAR3 (BINOP, vaddls, v8qi, v4hi, v2si)
kono
parents:
diff changeset
24 VAR3 (BINOP, vaddlu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
25 VAR3 (BINOP, vaddws, v8qi, v4hi, v2si)
kono
parents:
diff changeset
26 VAR3 (BINOP, vaddwu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
27 VAR6 (BINOP, vhaddu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
28 VAR6 (BINOP, vhadds, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
29 VAR6 (BINOP, vrhaddu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
30 VAR6 (BINOP, vrhadds, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
31 VAR8 (BINOP, vqadds, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
32 VAR8 (BINOP, vqaddu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
33 VAR3 (BINOP, vaddhn, v8hi, v4si, v2di)
kono
parents:
diff changeset
34 VAR3 (BINOP, vraddhn, v8hi, v4si, v2di)
kono
parents:
diff changeset
35 VAR2 (BINOP, vmulf, v2sf, v4sf)
kono
parents:
diff changeset
36 VAR2 (BINOP, vmulf, v8hf, v4hf)
kono
parents:
diff changeset
37 VAR2 (BINOP, vmulp, v8qi, v16qi)
kono
parents:
diff changeset
38 VAR8 (TERNOP, vmla, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf)
kono
parents:
diff changeset
39 VAR3 (TERNOP, vmlals, v8qi, v4hi, v2si)
kono
parents:
diff changeset
40 VAR3 (TERNOP, vmlalu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
41 VAR2 (TERNOP, vfma, v2sf, v4sf)
kono
parents:
diff changeset
42 VAR2 (TERNOP, vfma, v4hf, v8hf)
kono
parents:
diff changeset
43 VAR2 (TERNOP, vfms, v2sf, v4sf)
kono
parents:
diff changeset
44 VAR2 (TERNOP, vfms, v4hf, v8hf)
kono
parents:
diff changeset
45 VAR8 (TERNOP, vmls, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf)
kono
parents:
diff changeset
46 VAR3 (TERNOP, vmlsls, v8qi, v4hi, v2si)
kono
parents:
diff changeset
47 VAR3 (TERNOP, vmlslu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
48 VAR4 (BINOP, vqdmulh, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
49 VAR4 (BINOP, vqrdmulh, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
50 VAR2 (TERNOP, vqdmlal, v4hi, v2si)
kono
parents:
diff changeset
51 VAR2 (TERNOP, vqdmlsl, v4hi, v2si)
kono
parents:
diff changeset
52 VAR4 (TERNOP, vqrdmlah, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
53 VAR4 (TERNOP, vqrdmlsh, v4hi, v2si, v8hi, v4si)
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
54 VAR2 (TERNOP, vfmal_low, v2sf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
55 VAR2 (TERNOP, vfmal_high, v2sf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
56 VAR2 (TERNOP, vfmsl_low, v2sf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
57 VAR2 (TERNOP, vfmsl_high, v2sf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
58 VAR2 (MAC_LANE, vfmal_lane_low, v2sf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
59 VAR1 (MAC_LANE, vfmal_lane_lowv4hf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
60 VAR1 (MAC_LANE, vfmal_lane_lowv8hf, v2sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
61 VAR2 (MAC_LANE, vfmal_lane_high, v2sf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
62 VAR1 (MAC_LANE, vfmal_lane_highv4hf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
63 VAR1 (MAC_LANE, vfmal_lane_highv8hf, v2sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
64 VAR2 (MAC_LANE, vfmsl_lane_low, v2sf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
65 VAR1 (MAC_LANE, vfmsl_lane_lowv4hf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
66 VAR1 (MAC_LANE, vfmsl_lane_lowv8hf, v2sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
67 VAR2 (MAC_LANE, vfmsl_lane_high, v2sf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
68 VAR1 (MAC_LANE, vfmsl_lane_highv4hf, v4sf)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
69 VAR1 (MAC_LANE, vfmsl_lane_highv8hf, v2sf)
111
kono
parents:
diff changeset
70 VAR3 (BINOP, vmullp, v8qi, v4hi, v2si)
kono
parents:
diff changeset
71 VAR3 (BINOP, vmulls, v8qi, v4hi, v2si)
kono
parents:
diff changeset
72 VAR3 (BINOP, vmullu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
73 VAR2 (BINOP, vmulls_n, v4hi, v2si)
kono
parents:
diff changeset
74 VAR2 (BINOP, vmullu_n, v4hi, v2si)
kono
parents:
diff changeset
75 VAR2 (SETLANE, vmulls_lane, v4hi, v2si)
kono
parents:
diff changeset
76 VAR2 (SETLANE, vmullu_lane, v4hi, v2si)
kono
parents:
diff changeset
77 VAR2 (BINOP, vqdmull_n, v4hi, v2si)
kono
parents:
diff changeset
78 VAR2 (SETLANE, vqdmull_lane, v4hi, v2si)
kono
parents:
diff changeset
79 VAR4 (BINOP, vqdmulh_n, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
80 VAR4 (BINOP, vqrdmulh_n, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
81 VAR4 (SETLANE, vqdmulh_lane, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
82 VAR4 (SETLANE, vqrdmulh_lane, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
83 VAR4 (MAC_LANE, vqrdmlah_lane, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
84 VAR4 (MAC_LANE, vqrdmlsh_lane, v4hi, v2si, v8hi, v4si)
kono
parents:
diff changeset
85 VAR2 (BINOP, vqdmull, v4hi, v2si)
kono
parents:
diff changeset
86 VAR8 (BINOP, vshls, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
87 VAR8 (BINOP, vshlu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
88 VAR8 (BINOP, vrshls, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
89 VAR8 (BINOP, vrshlu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
90 VAR8 (BINOP, vqshls, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
91 VAR8 (BINOP, vqshlu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
92 VAR8 (BINOP, vqrshls, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
93 VAR8 (BINOP, vqrshlu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
94 VAR8 (BINOP_IMM, vshrs_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
95 VAR8 (BINOP_IMM, vshru_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
96 VAR8 (BINOP_IMM, vrshrs_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
97 VAR8 (BINOP_IMM, vrshru_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
98 VAR3 (BINOP_IMM, vshrn_n, v8hi, v4si, v2di)
kono
parents:
diff changeset
99 VAR3 (BINOP_IMM, vrshrn_n, v8hi, v4si, v2di)
kono
parents:
diff changeset
100 VAR3 (BINOP_IMM, vqshrns_n, v8hi, v4si, v2di)
kono
parents:
diff changeset
101 VAR3 (BINOP_IMM, vqshrnu_n, v8hi, v4si, v2di)
kono
parents:
diff changeset
102 VAR3 (BINOP_IMM, vqrshrns_n, v8hi, v4si, v2di)
kono
parents:
diff changeset
103 VAR3 (BINOP_IMM, vqrshrnu_n, v8hi, v4si, v2di)
kono
parents:
diff changeset
104 VAR3 (BINOP_IMM, vqshrun_n, v8hi, v4si, v2di)
kono
parents:
diff changeset
105 VAR3 (BINOP_IMM, vqrshrun_n, v8hi, v4si, v2di)
kono
parents:
diff changeset
106 VAR8 (BINOP_IMM, vshl_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
107 VAR8 (BINOP_IMM, vqshl_s_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
108 VAR8 (BINOP_IMM, vqshl_u_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
109 VAR8 (BINOP_IMM, vqshlu_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
110 VAR3 (BINOP_IMM, vshlls_n, v8qi, v4hi, v2si)
kono
parents:
diff changeset
111 VAR3 (BINOP_IMM, vshllu_n, v8qi, v4hi, v2si)
kono
parents:
diff changeset
112 VAR8 (TERNOP_IMM, vsras_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
113 VAR8 (TERNOP_IMM, vsrau_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
114 VAR8 (TERNOP_IMM, vrsras_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
115 VAR8 (TERNOP_IMM, vrsrau_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
116 VAR2 (BINOP, vsub, v2sf, v4sf)
kono
parents:
diff changeset
117 VAR2 (BINOP, vsub, v8hf, v4hf)
kono
parents:
diff changeset
118 VAR3 (BINOP, vsubls, v8qi, v4hi, v2si)
kono
parents:
diff changeset
119 VAR3 (BINOP, vsublu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
120 VAR3 (BINOP, vsubws, v8qi, v4hi, v2si)
kono
parents:
diff changeset
121 VAR3 (BINOP, vsubwu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
122 VAR8 (BINOP, vqsubs, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
123 VAR8 (BINOP, vqsubu, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
124 VAR6 (BINOP, vhsubs, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
125 VAR6 (BINOP, vhsubu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
126 VAR3 (BINOP, vsubhn, v8hi, v4si, v2di)
kono
parents:
diff changeset
127 VAR3 (BINOP, vrsubhn, v8hi, v4si, v2di)
kono
parents:
diff changeset
128 VAR8 (BINOP, vceq, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf)
kono
parents:
diff changeset
129 VAR8 (BINOP, vcge, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf)
kono
parents:
diff changeset
130 VAR6 (BINOP, vcgeu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
131 VAR8 (BINOP, vcgt, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf)
kono
parents:
diff changeset
132 VAR6 (BINOP, vcgtu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
133 VAR2 (BINOP, vcage, v2sf, v4sf)
kono
parents:
diff changeset
134 VAR2 (BINOP, vcagt, v2sf, v4sf)
kono
parents:
diff changeset
135 VAR2 (BINOP, vcage, v4hf, v8hf)
kono
parents:
diff changeset
136 VAR2 (BINOP, vcagt, v4hf, v8hf)
kono
parents:
diff changeset
137 VAR2 (BINOP, vcale, v4hf, v8hf)
kono
parents:
diff changeset
138 VAR2 (BINOP, vcalt, v4hf, v8hf)
kono
parents:
diff changeset
139 VAR2 (BINOP, vceq, v4hf, v8hf)
kono
parents:
diff changeset
140 VAR2 (BINOP, vcge, v4hf, v8hf)
kono
parents:
diff changeset
141 VAR2 (BINOP, vcgt, v4hf, v8hf)
kono
parents:
diff changeset
142 VAR2 (BINOP, vcle, v4hf, v8hf)
kono
parents:
diff changeset
143 VAR2 (BINOP, vclt, v4hf, v8hf)
kono
parents:
diff changeset
144 VAR2 (UNOP, vceqz, v4hf, v8hf)
kono
parents:
diff changeset
145 VAR2 (UNOP, vcgez, v4hf, v8hf)
kono
parents:
diff changeset
146 VAR2 (UNOP, vcgtz, v4hf, v8hf)
kono
parents:
diff changeset
147 VAR2 (UNOP, vclez, v4hf, v8hf)
kono
parents:
diff changeset
148 VAR2 (UNOP, vcltz, v4hf, v8hf)
kono
parents:
diff changeset
149 VAR6 (BINOP, vtst, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
150 VAR6 (BINOP, vabds, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
151 VAR6 (BINOP, vabdu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
152 VAR2 (BINOP, vabdf, v2sf, v4sf)
kono
parents:
diff changeset
153 VAR3 (BINOP, vabdls, v8qi, v4hi, v2si)
kono
parents:
diff changeset
154 VAR3 (BINOP, vabdlu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
155 VAR2 (BINOP, vabd, v8hf, v4hf)
kono
parents:
diff changeset
156
kono
parents:
diff changeset
157 VAR6 (TERNOP, vabas, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
158 VAR6 (TERNOP, vabau, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
159 VAR3 (TERNOP, vabals, v8qi, v4hi, v2si)
kono
parents:
diff changeset
160 VAR3 (TERNOP, vabalu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
161
kono
parents:
diff changeset
162 VAR6 (BINOP, vmaxs, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
163 VAR6 (BINOP, vmaxu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
164 VAR2 (BINOP, vmaxf, v2sf, v4sf)
kono
parents:
diff changeset
165 VAR2 (BINOP, vmaxf, v8hf, v4hf)
kono
parents:
diff changeset
166 VAR4 (BINOP, vmaxnm, v2sf, v4sf, v4hf, v8hf)
kono
parents:
diff changeset
167 VAR6 (BINOP, vmins, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
168 VAR6 (BINOP, vminu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
169 VAR2 (BINOP, vminf, v2sf, v4sf)
kono
parents:
diff changeset
170 VAR2 (BINOP, vminf, v4hf, v8hf)
kono
parents:
diff changeset
171 VAR4 (BINOP, vminnm, v2sf, v4sf, v8hf, v4hf)
kono
parents:
diff changeset
172
kono
parents:
diff changeset
173 VAR3 (BINOP, vpmaxs, v8qi, v4hi, v2si)
kono
parents:
diff changeset
174 VAR3 (BINOP, vpmaxu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
175 VAR1 (BINOP, vpmaxf, v2sf)
kono
parents:
diff changeset
176 VAR1 (BINOP, vpmaxf, v4hf)
kono
parents:
diff changeset
177 VAR3 (BINOP, vpmins, v8qi, v4hi, v2si)
kono
parents:
diff changeset
178 VAR3 (BINOP, vpminu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
179 VAR1 (BINOP, vpminf, v2sf)
kono
parents:
diff changeset
180 VAR1 (BINOP, vpminf, v4hf)
kono
parents:
diff changeset
181
kono
parents:
diff changeset
182 VAR4 (BINOP, vpadd, v8qi, v4hi, v2si, v2sf)
kono
parents:
diff changeset
183 VAR1 (BINOP, vpadd, v4hf)
kono
parents:
diff changeset
184 VAR6 (UNOP, vpaddls, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
185 VAR6 (UNOP, vpaddlu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
186 VAR6 (BINOP, vpadals, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
187 VAR6 (BINOP, vpadalu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
188 VAR2 (BINOP, vrecps, v2sf, v4sf)
kono
parents:
diff changeset
189 VAR2 (BINOP, vrsqrts, v2sf, v4sf)
kono
parents:
diff changeset
190 VAR2 (BINOP, vrecps, v4hf, v8hf)
kono
parents:
diff changeset
191 VAR2 (BINOP, vrsqrts, v4hf, v8hf)
kono
parents:
diff changeset
192 VAR8 (TERNOP_IMM, vsri_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
193 VAR8 (TERNOP_IMM, vsli_n, v8qi, v4hi, v2si, di, v16qi, v8hi, v4si, v2di)
kono
parents:
diff changeset
194 VAR8 (UNOP, vabs, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf)
kono
parents:
diff changeset
195 VAR2 (UNOP, vabs, v8hf, v4hf)
kono
parents:
diff changeset
196 VAR2 (UNOP, vneg, v8hf, v4hf)
kono
parents:
diff changeset
197 VAR6 (UNOP, vqabs, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
198 VAR8 (UNOP, vneg, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf)
kono
parents:
diff changeset
199 VAR6 (UNOP, vqneg, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
200 VAR6 (UNOP, vcls, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
201 VAR6 (UNOP, vclz, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
202 VAR5 (BSWAP, bswap, v4hi, v8hi, v2si, v4si, v2di)
kono
parents:
diff changeset
203 VAR2 (UNOP, vcnt, v8qi, v16qi)
kono
parents:
diff changeset
204 VAR4 (UNOP, vrecpe, v2si, v2sf, v4si, v4sf)
kono
parents:
diff changeset
205 VAR2 (UNOP, vrecpe, v8hf, v4hf)
kono
parents:
diff changeset
206 VAR4 (UNOP, vrsqrte, v2si, v2sf, v4si, v4sf)
kono
parents:
diff changeset
207 VAR2 (UNOP, vrsqrte, v4hf, v8hf)
kono
parents:
diff changeset
208 VAR6 (UNOP, vmvn, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
209 VAR2 (UNOP, vrnd, v8hf, v4hf)
kono
parents:
diff changeset
210 VAR2 (UNOP, vrnda, v8hf, v4hf)
kono
parents:
diff changeset
211 VAR2 (UNOP, vrndm, v8hf, v4hf)
kono
parents:
diff changeset
212 VAR2 (UNOP, vrndn, v8hf, v4hf)
kono
parents:
diff changeset
213 VAR2 (UNOP, vrndp, v8hf, v4hf)
kono
parents:
diff changeset
214 VAR2 (UNOP, vrndx, v8hf, v4hf)
kono
parents:
diff changeset
215 /* FIXME: vget_lane supports more variants than this! */
kono
parents:
diff changeset
216 VAR10 (GETLANE, vget_lane,
kono
parents:
diff changeset
217 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
kono
parents:
diff changeset
218 VAR6 (GETLANE, vget_laneu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
kono
parents:
diff changeset
219 VAR10 (SETLANE, vset_lane,
kono
parents:
diff changeset
220 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
kono
parents:
diff changeset
221 VAR5 (UNOP, vcreate, v8qi, v4hi, v2si, v2sf, di)
kono
parents:
diff changeset
222 VAR10 (UNOP, vdup_n,
kono
parents:
diff changeset
223 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
kono
parents:
diff changeset
224 VAR2 (UNOP, vdup_n, v8hf, v4hf)
kono
parents:
diff changeset
225 VAR10 (GETLANE, vdup_lane,
kono
parents:
diff changeset
226 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
kono
parents:
diff changeset
227 VAR2 (GETLANE, vdup_lane, v8hf, v4hf)
kono
parents:
diff changeset
228 VAR6 (COMBINE, vcombine, v8qi, v4hi, v4hf, v2si, v2sf, di)
kono
parents:
diff changeset
229 VAR6 (UNOP, vget_high, v16qi, v8hi, v8hf, v4si, v4sf, v2di)
kono
parents:
diff changeset
230 VAR6 (UNOP, vget_low, v16qi, v8hi, v8hf, v4si, v4sf, v2di)
kono
parents:
diff changeset
231 VAR3 (UNOP, vmovn, v8hi, v4si, v2di)
kono
parents:
diff changeset
232 VAR3 (UNOP, vqmovns, v8hi, v4si, v2di)
kono
parents:
diff changeset
233 VAR3 (UNOP, vqmovnu, v8hi, v4si, v2di)
kono
parents:
diff changeset
234 VAR3 (UNOP, vqmovun, v8hi, v4si, v2di)
kono
parents:
diff changeset
235 VAR3 (UNOP, vmovls, v8qi, v4hi, v2si)
kono
parents:
diff changeset
236 VAR3 (UNOP, vmovlu, v8qi, v4hi, v2si)
kono
parents:
diff changeset
237 VAR8 (SETLANE, vmul_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf, v4hf, v8hf)
kono
parents:
diff changeset
238 VAR6 (MAC_LANE, vmla_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf)
kono
parents:
diff changeset
239 VAR2 (MAC_LANE, vmlals_lane, v4hi, v2si)
kono
parents:
diff changeset
240 VAR2 (MAC_LANE, vmlalu_lane, v4hi, v2si)
kono
parents:
diff changeset
241 VAR2 (MAC_LANE, vqdmlal_lane, v4hi, v2si)
kono
parents:
diff changeset
242 VAR6 (MAC_LANE, vmls_lane, v4hi, v2si, v2sf, v8hi, v4si, v4sf)
kono
parents:
diff changeset
243 VAR2 (MAC_LANE, vmlsls_lane, v4hi, v2si)
kono
parents:
diff changeset
244 VAR2 (MAC_LANE, vmlslu_lane, v4hi, v2si)
kono
parents:
diff changeset
245 VAR2 (MAC_LANE, vqdmlsl_lane, v4hi, v2si)
kono
parents:
diff changeset
246 VAR8 (BINOP, vmul_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf, v4hf, v8hf)
kono
parents:
diff changeset
247 VAR6 (MAC_N, vmla_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf)
kono
parents:
diff changeset
248 VAR2 (MAC_N, vmlals_n, v4hi, v2si)
kono
parents:
diff changeset
249 VAR2 (MAC_N, vmlalu_n, v4hi, v2si)
kono
parents:
diff changeset
250 VAR2 (MAC_N, vqdmlal_n, v4hi, v2si)
kono
parents:
diff changeset
251 VAR6 (MAC_N, vmls_n, v4hi, v2si, v2sf, v8hi, v4si, v4sf)
kono
parents:
diff changeset
252 VAR2 (MAC_N, vmlsls_n, v4hi, v2si)
kono
parents:
diff changeset
253 VAR2 (MAC_N, vmlslu_n, v4hi, v2si)
kono
parents:
diff changeset
254 VAR2 (MAC_N, vqdmlsl_n, v4hi, v2si)
kono
parents:
diff changeset
255 VAR10 (SETLANE, vext,
kono
parents:
diff changeset
256 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
kono
parents:
diff changeset
257 VAR2 (SETLANE, vext, v8hf, v4hf)
kono
parents:
diff changeset
258 VAR8 (UNOP, vrev64, v8qi, v4hi, v2si, v2sf, v16qi, v8hi, v4si, v4sf)
kono
parents:
diff changeset
259 VAR4 (UNOP, vrev32, v8qi, v4hi, v16qi, v8hi)
kono
parents:
diff changeset
260 VAR2 (UNOP, vrev16, v8qi, v16qi)
kono
parents:
diff changeset
261 VAR4 (UNOP, vcvts, v2si, v2sf, v4si, v4sf)
kono
parents:
diff changeset
262 VAR2 (UNOP, vcvts, v4hi, v8hi)
kono
parents:
diff changeset
263 VAR2 (UNOP, vcvts, v4hf, v8hf)
kono
parents:
diff changeset
264 VAR2 (UNOP, vcvtu, v4hi, v8hi)
kono
parents:
diff changeset
265 VAR2 (UNOP, vcvtu, v4hf, v8hf)
kono
parents:
diff changeset
266 VAR4 (UNOP, vcvtu, v2si, v2sf, v4si, v4sf)
kono
parents:
diff changeset
267 VAR4 (BINOP, vcvts_n, v2si, v2sf, v4si, v4sf)
kono
parents:
diff changeset
268 VAR4 (BINOP, vcvtu_n, v2si, v2sf, v4si, v4sf)
kono
parents:
diff changeset
269 VAR2 (BINOP, vcvts_n, v4hf, v8hf)
kono
parents:
diff changeset
270 VAR2 (BINOP, vcvtu_n, v4hi, v8hi)
kono
parents:
diff changeset
271 VAR2 (BINOP, vcvts_n, v4hi, v8hi)
kono
parents:
diff changeset
272 VAR2 (BINOP, vcvtu_n, v4hf, v8hf)
kono
parents:
diff changeset
273 VAR1 (UNOP, vcvtv4sf, v4hf)
kono
parents:
diff changeset
274 VAR1 (UNOP, vcvtv4hf, v4sf)
kono
parents:
diff changeset
275 VAR10 (TERNOP, vbsl,
kono
parents:
diff changeset
276 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
kono
parents:
diff changeset
277 VAR2 (TERNOP, vbsl, v8hf, v4hf)
kono
parents:
diff changeset
278 VAR2 (UNOP, copysignf, v2sf, v4sf)
kono
parents:
diff changeset
279 VAR2 (UNOP, vrintn, v2sf, v4sf)
kono
parents:
diff changeset
280 VAR2 (UNOP, vrinta, v2sf, v4sf)
kono
parents:
diff changeset
281 VAR2 (UNOP, vrintp, v2sf, v4sf)
kono
parents:
diff changeset
282 VAR2 (UNOP, vrintm, v2sf, v4sf)
kono
parents:
diff changeset
283 VAR2 (UNOP, vrintz, v2sf, v4sf)
kono
parents:
diff changeset
284 VAR2 (UNOP, vrintx, v2sf, v4sf)
kono
parents:
diff changeset
285 VAR1 (UNOP, vcvtav2sf, v2si)
kono
parents:
diff changeset
286 VAR1 (UNOP, vcvtav4sf, v4si)
kono
parents:
diff changeset
287 VAR1 (UNOP, vcvtauv2sf, v2si)
kono
parents:
diff changeset
288 VAR1 (UNOP, vcvtauv4sf, v4si)
kono
parents:
diff changeset
289 VAR2 (UNOP, vcvtas, v4hf, v8hf)
kono
parents:
diff changeset
290 VAR2 (UNOP, vcvtau, v4hf, v8hf)
kono
parents:
diff changeset
291 VAR2 (UNOP, vcvtms, v4hf, v8hf)
kono
parents:
diff changeset
292 VAR2 (UNOP, vcvtmu, v4hf, v8hf)
kono
parents:
diff changeset
293 VAR2 (UNOP, vcvtns, v4hf, v8hf)
kono
parents:
diff changeset
294 VAR2 (UNOP, vcvtnu, v4hf, v8hf)
kono
parents:
diff changeset
295 VAR2 (UNOP, vcvtps, v4hf, v8hf)
kono
parents:
diff changeset
296 VAR2 (UNOP, vcvtpu, v4hf, v8hf)
kono
parents:
diff changeset
297 VAR1 (UNOP, vcvtpv2sf, v2si)
kono
parents:
diff changeset
298 VAR1 (UNOP, vcvtpv4sf, v4si)
kono
parents:
diff changeset
299 VAR1 (UNOP, vcvtpuv2sf, v2si)
kono
parents:
diff changeset
300 VAR1 (UNOP, vcvtpuv4sf, v4si)
kono
parents:
diff changeset
301 VAR1 (UNOP, vcvtmv2sf, v2si)
kono
parents:
diff changeset
302 VAR1 (UNOP, vcvtmv4sf, v4si)
kono
parents:
diff changeset
303 VAR1 (UNOP, vcvtmuv2sf, v2si)
kono
parents:
diff changeset
304 VAR1 (UNOP, vcvtmuv4sf, v4si)
kono
parents:
diff changeset
305 VAR1 (COMBINE, vtbl1, v8qi)
kono
parents:
diff changeset
306 VAR1 (COMBINE, vtbl2, v8qi)
kono
parents:
diff changeset
307 VAR1 (COMBINE, vtbl3, v8qi)
kono
parents:
diff changeset
308 VAR1 (COMBINE, vtbl4, v8qi)
kono
parents:
diff changeset
309 VAR1 (TERNOP, vtbx1, v8qi)
kono
parents:
diff changeset
310 VAR1 (TERNOP, vtbx2, v8qi)
kono
parents:
diff changeset
311 VAR1 (TERNOP, vtbx3, v8qi)
kono
parents:
diff changeset
312 VAR1 (TERNOP, vtbx4, v8qi)
kono
parents:
diff changeset
313 VAR12 (LOAD1, vld1,
kono
parents:
diff changeset
314 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v2di)
kono
parents:
diff changeset
315 VAR10 (LOAD1LANE, vld1_lane,
kono
parents:
diff changeset
316 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
kono
parents:
diff changeset
317 VAR10 (LOAD1, vld1_dup,
kono
parents:
diff changeset
318 v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
kono
parents:
diff changeset
319 VAR12 (STORE1, vst1,
kono
parents:
diff changeset
320 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v2di)
kono
parents:
diff changeset
321 VAR12 (STORE1LANE, vst1_lane,
kono
parents:
diff changeset
322 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf, v2di)
kono
parents:
diff changeset
323 VAR11 (LOAD1, vld2,
kono
parents:
diff changeset
324 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
325 VAR9 (LOAD1LANE, vld2_lane,
kono
parents:
diff changeset
326 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
327 VAR6 (LOAD1, vld2_dup, v8qi, v4hi, v4hf, v2si, v2sf, di)
kono
parents:
diff changeset
328 VAR11 (STORE1, vst2,
kono
parents:
diff changeset
329 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
330 VAR9 (STORE1LANE, vst2_lane,
kono
parents:
diff changeset
331 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
332 VAR11 (LOAD1, vld3,
kono
parents:
diff changeset
333 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
334 VAR9 (LOAD1LANE, vld3_lane,
kono
parents:
diff changeset
335 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
336 VAR6 (LOAD1, vld3_dup, v8qi, v4hi, v4hf, v2si, v2sf, di)
kono
parents:
diff changeset
337 VAR11 (STORE1, vst3,
kono
parents:
diff changeset
338 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
339 VAR9 (STORE1LANE, vst3_lane,
kono
parents:
diff changeset
340 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
341 VAR11 (LOAD1, vld4,
kono
parents:
diff changeset
342 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
343 VAR9 (LOAD1LANE, vld4_lane,
kono
parents:
diff changeset
344 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
345 VAR6 (LOAD1, vld4_dup, v8qi, v4hi, v4hf, v2si, v2sf, di)
kono
parents:
diff changeset
346 VAR11 (STORE1, vst4,
kono
parents:
diff changeset
347 v8qi, v4hi, v4hf, v2si, v2sf, di, v16qi, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
348 VAR9 (STORE1LANE, vst4_lane,
kono
parents:
diff changeset
349 v8qi, v4hi, v4hf, v2si, v2sf, v8hi, v8hf, v4si, v4sf)
kono
parents:
diff changeset
350 VAR2 (TERNOP, sdot, v8qi, v16qi)
kono
parents:
diff changeset
351 VAR2 (UTERNOP, udot, v8qi, v16qi)
kono
parents:
diff changeset
352 VAR2 (MAC_LANE, sdot_lane, v8qi, v16qi)
kono
parents:
diff changeset
353 VAR2 (UMAC_LANE, udot_lane, v8qi, v16qi)
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
354
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
355 VAR1 (USTERNOP, usdot, v8qi)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
356 VAR2 (USMAC_LANE_QUADTUP, usdot_lane, v8qi, v16qi)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
357 VAR2 (SUMAC_LANE_QUADTUP, sudot_lane, v8qi, v16qi)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
358
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
359 VAR4 (BINOP, vcadd90, v4hf, v2sf, v8hf, v4sf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
360 VAR4 (BINOP, vcadd270, v4hf, v2sf, v8hf, v4sf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
361 VAR4 (TERNOP, vcmla0, v2sf, v4sf, v4hf, v8hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
362 VAR4 (TERNOP, vcmla90, v2sf, v4sf, v4hf, v8hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
363 VAR4 (TERNOP, vcmla180, v2sf, v4sf, v4hf, v8hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
364 VAR4 (TERNOP, vcmla270, v2sf, v4sf, v4hf, v8hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
365
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
366 VAR4 (MAC_LANE_PAIR, vcmla_lane0, v2sf, v4hf, v8hf, v4sf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
367 VAR4 (MAC_LANE_PAIR, vcmla_lane90, v2sf, v4hf, v8hf, v4sf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
368 VAR4 (MAC_LANE_PAIR, vcmla_lane180, v2sf, v4hf, v8hf, v4sf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
369 VAR4 (MAC_LANE_PAIR, vcmla_lane270, v2sf, v4hf, v8hf, v4sf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
370
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
371 VAR2 (MAC_LANE_PAIR, vcmla_laneq0, v2sf, v4hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
372 VAR2 (MAC_LANE_PAIR, vcmla_laneq90, v2sf, v4hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
373 VAR2 (MAC_LANE_PAIR, vcmla_laneq180, v2sf, v4hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
374 VAR2 (MAC_LANE_PAIR, vcmla_laneq270, v2sf, v4hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
375
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
376 VAR2 (MAC_LANE_PAIR, vcmlaq_lane0, v4sf, v8hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
377 VAR2 (MAC_LANE_PAIR, vcmlaq_lane90, v4sf, v8hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
378 VAR2 (MAC_LANE_PAIR, vcmlaq_lane180, v4sf, v8hf)
1830386684a0 gcc-9.2.0
anatofuz
parents: 131
diff changeset
379 VAR2 (MAC_LANE_PAIR, vcmlaq_lane270, v4sf, v8hf)