Skip to content

Commit 4d6d7ba

Browse files
Merge pull request #5131 from mr-c/simde_v0.8.2
Upgrade SIMDe to version 0.8.2
2 parents 9e9d1fb + 896da7c commit 4d6d7ba

File tree

337 files changed

+54876
-2440
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

337 files changed

+54876
-2440
lines changed

lib/simd_wrapper/simde/README.md

Lines changed: 511 additions & 8 deletions
Large diffs are not rendered by default.

lib/simd_wrapper/simde/arm/neon.h

Lines changed: 113 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
*
2323
* Copyright:
2424
* 2020 Evan Nemerson <evan@nemerson.com>
25+
* 2023 Yi-Yen Chung <eric681@andestech.com> (Copyright owned by Andes Technology)
2526
*/
2627

2728
#if !defined(SIMDE_ARM_NEON_H)
@@ -30,23 +31,32 @@
3031
#include "neon/types.h"
3132

3233
#include "neon/aba.h"
34+
#include "neon/abal.h"
35+
#include "neon/abal_high.h"
3336
#include "neon/abd.h"
3437
#include "neon/abdl.h"
38+
#include "neon/abdl_high.h"
3539
#include "neon/abs.h"
3640
#include "neon/add.h"
3741
#include "neon/addhn.h"
42+
#include "neon/addhn_high.h"
3843
#include "neon/addl.h"
3944
#include "neon/addlv.h"
4045
#include "neon/addl_high.h"
4146
#include "neon/addv.h"
4247
#include "neon/addw.h"
4348
#include "neon/addw_high.h"
49+
#include "neon/aes.h"
4450
#include "neon/and.h"
4551
#include "neon/bcax.h"
4652
#include "neon/bic.h"
4753
#include "neon/bsl.h"
54+
#include "neon/cadd_rot270.h"
55+
#include "neon/cadd_rot90.h"
4856
#include "neon/cage.h"
4957
#include "neon/cagt.h"
58+
#include "neon/cale.h"
59+
#include "neon/calt.h"
5060
#include "neon/ceq.h"
5161
#include "neon/ceqz.h"
5262
#include "neon/cge.h"
@@ -60,13 +70,24 @@
6070
#include "neon/cltz.h"
6171
#include "neon/clz.h"
6272
#include "neon/cmla.h"
63-
#include "neon/cmla_rot90.h"
73+
#include "neon/cmla_lane.h"
6474
#include "neon/cmla_rot180.h"
75+
#include "neon/cmla_rot180_lane.h"
6576
#include "neon/cmla_rot270.h"
77+
#include "neon/cmla_rot270_lane.h"
78+
#include "neon/cmla_rot90.h"
79+
#include "neon/cmla_rot90_lane.h"
6680
#include "neon/cnt.h"
6781
#include "neon/cvt.h"
82+
#include "neon/cvt_n.h"
83+
#include "neon/cvtm.h"
84+
#include "neon/cvtn.h"
85+
#include "neon/cvtp.h"
6886
#include "neon/combine.h"
87+
#include "neon/copy_lane.h"
88+
#include "neon/crc32.h"
6989
#include "neon/create.h"
90+
#include "neon/div.h"
7091
#include "neon/dot.h"
7192
#include "neon/dot_lane.h"
7293
#include "neon/dup_lane.h"
@@ -76,6 +97,11 @@
7697
#include "neon/fma.h"
7798
#include "neon/fma_lane.h"
7899
#include "neon/fma_n.h"
100+
#include "neon/fmlal.h"
101+
#include "neon/fmlsl.h"
102+
#include "neon/fms.h"
103+
#include "neon/fms_lane.h"
104+
#include "neon/fms_n.h"
79105
#include "neon/get_high.h"
80106
#include "neon/get_lane.h"
81107
#include "neon/get_low.h"
@@ -84,30 +110,48 @@
84110
#include "neon/ld1.h"
85111
#include "neon/ld1_dup.h"
86112
#include "neon/ld1_lane.h"
113+
#include "neon/ld1_x2.h"
114+
#include "neon/ld1_x3.h"
115+
#include "neon/ld1_x4.h"
116+
#include "neon/ld1q_x2.h"
117+
#include "neon/ld1q_x3.h"
118+
#include "neon/ld1q_x4.h"
87119
#include "neon/ld2.h"
120+
#include "neon/ld2_dup.h"
121+
#include "neon/ld2_lane.h"
88122
#include "neon/ld3.h"
123+
#include "neon/ld3_dup.h"
124+
#include "neon/ld3_lane.h"
89125
#include "neon/ld4.h"
126+
#include "neon/ld4_dup.h"
90127
#include "neon/ld4_lane.h"
91128
#include "neon/max.h"
92129
#include "neon/maxnm.h"
130+
#include "neon/maxnmv.h"
93131
#include "neon/maxv.h"
94132
#include "neon/min.h"
95133
#include "neon/minnm.h"
134+
#include "neon/minnmv.h"
96135
#include "neon/minv.h"
97136
#include "neon/mla.h"
137+
#include "neon/mla_lane.h"
98138
#include "neon/mla_n.h"
99139
#include "neon/mlal.h"
100140
#include "neon/mlal_high.h"
141+
#include "neon/mlal_high_lane.h"
101142
#include "neon/mlal_high_n.h"
102143
#include "neon/mlal_lane.h"
103144
#include "neon/mlal_n.h"
104145
#include "neon/mls.h"
146+
#include "neon/mls_lane.h"
105147
#include "neon/mls_n.h"
106148
#include "neon/mlsl.h"
107149
#include "neon/mlsl_high.h"
150+
#include "neon/mlsl_high_lane.h"
108151
#include "neon/mlsl_high_n.h"
109152
#include "neon/mlsl_lane.h"
110153
#include "neon/mlsl_n.h"
154+
#include "neon/mmlaq.h"
111155
#include "neon/movl.h"
112156
#include "neon/movl_high.h"
113157
#include "neon/movn.h"
@@ -117,8 +161,13 @@
117161
#include "neon/mul_n.h"
118162
#include "neon/mull.h"
119163
#include "neon/mull_high.h"
164+
#include "neon/mull_high_lane.h"
165+
#include "neon/mull_high_n.h"
120166
#include "neon/mull_lane.h"
121167
#include "neon/mull_n.h"
168+
#include "neon/mulx.h"
169+
#include "neon/mulx_lane.h"
170+
#include "neon/mulx_n.h"
122171
#include "neon/mvn.h"
123172
#include "neon/neg.h"
124173
#include "neon/orn.h"
@@ -127,59 +176,117 @@
127176
#include "neon/padd.h"
128177
#include "neon/paddl.h"
129178
#include "neon/pmax.h"
179+
#include "neon/pmaxnm.h"
130180
#include "neon/pmin.h"
181+
#include "neon/pminnm.h"
131182
#include "neon/qabs.h"
132183
#include "neon/qadd.h"
184+
#include "neon/qdmlal.h"
185+
#include "neon/qdmlal_high.h"
186+
#include "neon/qdmlal_high_lane.h"
187+
#include "neon/qdmlal_high_n.h"
188+
#include "neon/qdmlal_lane.h"
189+
#include "neon/qdmlal_n.h"
190+
#include "neon/qdmlsl.h"
191+
#include "neon/qdmlsl_high.h"
192+
#include "neon/qdmlsl_high_lane.h"
193+
#include "neon/qdmlsl_high_n.h"
194+
#include "neon/qdmlsl_lane.h"
195+
#include "neon/qdmlsl_n.h"
133196
#include "neon/qdmulh.h"
134197
#include "neon/qdmulh_lane.h"
135198
#include "neon/qdmulh_n.h"
136199
#include "neon/qdmull.h"
200+
#include "neon/qdmull_high.h"
201+
#include "neon/qdmull_high_lane.h"
202+
#include "neon/qdmull_high_n.h"
203+
#include "neon/qdmull_lane.h"
204+
#include "neon/qdmull_n.h"
205+
#include "neon/qrdmlah.h"
206+
#include "neon/qrdmlah_lane.h"
207+
#include "neon/qrdmlsh.h"
208+
#include "neon/qrdmlsh_lane.h"
137209
#include "neon/qrdmulh.h"
138210
#include "neon/qrdmulh_lane.h"
139211
#include "neon/qrdmulh_n.h"
212+
#include "neon/qrshl.h"
213+
#include "neon/qrshrn_high_n.h"
140214
#include "neon/qrshrn_n.h"
215+
#include "neon/qrshrun_high_n.h"
141216
#include "neon/qrshrun_n.h"
142217
#include "neon/qmovn.h"
143-
#include "neon/qmovun.h"
144218
#include "neon/qmovn_high.h"
219+
#include "neon/qmovun.h"
220+
#include "neon/qmovun_high.h"
145221
#include "neon/qneg.h"
146222
#include "neon/qsub.h"
147223
#include "neon/qshl.h"
224+
#include "neon/qshl_n.h"
148225
#include "neon/qshlu_n.h"
226+
#include "neon/qshrn_high_n.h"
149227
#include "neon/qshrn_n.h"
228+
#include "neon/qshrun_high_n.h"
150229
#include "neon/qshrun_n.h"
151230
#include "neon/qtbl.h"
152231
#include "neon/qtbx.h"
232+
#include "neon/raddhn.h"
233+
#include "neon/raddhn_high.h"
234+
#include "neon/rax.h"
153235
#include "neon/rbit.h"
154236
#include "neon/recpe.h"
155237
#include "neon/recps.h"
238+
#include "neon/recpx.h"
156239
#include "neon/reinterpret.h"
157240
#include "neon/rev16.h"
158241
#include "neon/rev32.h"
159242
#include "neon/rev64.h"
160243
#include "neon/rhadd.h"
161244
#include "neon/rnd.h"
245+
#include "neon/rnd32x.h"
246+
#include "neon/rnd32z.h"
247+
#include "neon/rnd64x.h"
248+
#include "neon/rnd64z.h"
249+
#include "neon/rnda.h"
162250
#include "neon/rndm.h"
163251
#include "neon/rndi.h"
164252
#include "neon/rndn.h"
165253
#include "neon/rndp.h"
254+
#include "neon/rndx.h"
166255
#include "neon/rshl.h"
167256
#include "neon/rshr_n.h"
257+
#include "neon/rshrn_high_n.h"
168258
#include "neon/rshrn_n.h"
169259
#include "neon/rsqrte.h"
170260
#include "neon/rsqrts.h"
171261
#include "neon/rsra_n.h"
262+
#include "neon/rsubhn.h"
263+
#include "neon/rsubhn_high.h"
172264
#include "neon/set_lane.h"
265+
#include "neon/sha1.h"
266+
#include "neon/sha256.h"
267+
#include "neon/sha512.h"
173268
#include "neon/shl.h"
174269
#include "neon/shl_n.h"
270+
#include "neon/shll_high_n.h"
175271
#include "neon/shll_n.h"
176272
#include "neon/shr_n.h"
273+
#include "neon/shrn_high_n.h"
177274
#include "neon/shrn_n.h"
275+
#include "neon/sli_n.h"
276+
#include "neon/sm3.h"
277+
#include "neon/sm4.h"
178278
#include "neon/sqadd.h"
279+
#include "neon/sqrt.h"
179280
#include "neon/sra_n.h"
180281
#include "neon/sri_n.h"
181282
#include "neon/st1.h"
182283
#include "neon/st1_lane.h"
284+
#include "neon/st1_x2.h"
285+
#include "neon/st1_x3.h"
286+
#include "neon/st1_x4.h"
287+
#include "neon/st1q_x2.h"
288+
#include "neon/st1q_x3.h"
289+
#include "neon/st1q_x4.h"
183290
#include "neon/st2.h"
184291
#include "neon/st2_lane.h"
185292
#include "neon/st3.h"
@@ -188,17 +295,21 @@
188295
#include "neon/st4_lane.h"
189296
#include "neon/sub.h"
190297
#include "neon/subhn.h"
298+
#include "neon/subhn_high.h"
191299
#include "neon/subl.h"
192300
#include "neon/subl_high.h"
193301
#include "neon/subw.h"
194302
#include "neon/subw_high.h"
303+
#include "neon/sudot_lane.h"
195304
#include "neon/tbl.h"
196305
#include "neon/tbx.h"
197306
#include "neon/trn.h"
198307
#include "neon/trn1.h"
199308
#include "neon/trn2.h"
200309
#include "neon/tst.h"
201310
#include "neon/uqadd.h"
311+
#include "neon/usdot.h"
312+
#include "neon/usdot_lane.h"
202313
#include "neon/uzp.h"
203314
#include "neon/uzp1.h"
204315
#include "neon/uzp2.h"

0 commit comments

Comments
 (0)