Commit Graph

47 Commits

Author SHA1 Message Date
Sparrow Li
8852d07441 add vcopy neon instructions (#1139) 2021-04-24 01:49:11 +01:00
Christopher Serr
a43f92a181 Add vrndn neon instructions (#1086)
This adds the neon instructions for lane-wise rounding without actually
converting the lanes to integers.
2021-04-22 06:08:40 +01:00
Sparrow Li
de3e8f72c5 Add vqdmul* neon instructions (#1130) 2021-04-21 15:27:08 +01:00
surechen
20c0120362 add neon instruction vaddlv_* (#1129) 2021-04-20 15:19:04 +01:00
Sparrow Li
6354de5993 Add vrshl, vrshr, vrshrn, vrsra, vsra neon instructions (#1127) 2021-04-19 17:49:44 +01:00
surechen
d46e0086e4 add neon instruction vfma_n_* (#1122) 2021-04-17 17:45:54 +01:00
Sebastian Thiel
43126c3f65 [DRAFT] intrinsics for all architectures appear in rustdoc (#1104) 2021-04-17 13:46:33 +01:00
Sparrow Li
e792dfd02c add vqshl, vqshrn, vqshrun neon instructions (#1120) 2021-04-16 13:22:39 +01:00
Sparrow Li
23f45cc955 Add vqrsh* neon instructions (#1119) 2021-04-15 12:29:04 +01:00
liushuyu
33afae1df7 aarch64: add uzp1, uzp2 instructions (#1118) 2021-04-15 12:21:31 +01:00
surechen
aaaa9335eb add neon instruction vfma (#1116) 2021-04-14 15:34:53 +01:00
Sparrow Li
88a5de08cb Allow primitive types in the code generator and add vdup instructions (#1114) 2021-04-12 14:08:26 +01:00
Sparrow Li
5ee0274cef add vshl and vshr neon instructions (#1111) 2021-04-09 08:49:23 +01:00
surechen
a3b5ef2b0c add neon instruction vsubw_* and vsubl_* (#1112) 2021-04-08 15:22:35 +01:00
surechen
e6a81b7566 add neon instruction vmaxnm_f* vpmaxnm_f* vminnm_f* vpminnm_f* (#1105) 2021-04-06 06:57:05 +01:00
Sparrow Li
6201670dd2 Enable constant parameters in the code generator and add vext instructions (#1106) 2021-04-02 22:02:22 +01:00
Sparrow Li
7b21d85a41 add vmovn_high, vrbit, vrnd, vsubhn neon instructions (#1103) 2021-03-31 15:48:58 +01:00
surechen
ef9ec33482 add support for neon instruction vqabs_* (#1102) 2021-03-30 12:22:38 +01:00
Sparrow Li
64f84788c9 add vreinterpret neon instructions (#1101) 2021-03-30 06:51:01 +01:00
surechen
f9e5dfdd66 support neon instruction vabdl_* and vabdl_high_* (#1100) 2021-03-29 11:17:36 +01:00
Sparrow Li
e83d05a3c0 add simd_neg platform intrinsic and vneg, vqneg neon instructions (#1099) 2021-03-29 03:43:36 +01:00
surechen
182d7593f4 support for neon instructions vabal_* and vabal_high_* (#1097) 2021-03-27 16:28:36 +00:00
SparrowLii
770ced9a69 add vzip1, vzip2 instructions 2021-03-23 05:50:03 +00:00
SparrowLii
91bed9bd0c correct instruction names 2021-03-23 05:50:03 +00:00
SparrowLii
69bb74bca6 add vtrn1 and vtrn2 neon instructions 2021-03-23 05:50:03 +00:00
Sparrow Li
63facc4b68 Add vmull, vmull_high, vmlal, vmlal_high, vmlsl, vmlsl_high neon instructions (#1091) 2021-03-20 22:35:19 +00:00
surechen
ce1027d7d5 support s64|u64 for neon instruction vqadd and vqsub (#1090) 2021-03-20 00:55:11 +00:00
Sparrow Li
4773f9b1d2 Support three parameters in the code generator and add vmla and vmls instructions (#1088) 2021-03-17 09:34:21 +00:00
Sparrow Li
7accc82569 add vcvt, vcvta, vcvtn, vcvtm, vcvtp neon instructions (#1084) 2021-03-16 14:30:05 +00:00
Sparrow Li
bb84df7d9f implement different types of parameters and double suffixes in code generator (#1083) 2021-03-15 18:45:51 +00:00
Sparrow Li
01c99c1d05 add vcls, vclz, vcagt, vcage, vcalt, vcale neon instructions (#1072) 2021-03-13 21:55:24 +00:00
Christopher Serr
b132a5c769 Add vrecpe neon instruction (#1079)
This adds the vector instructions for calculating the lane-wise
reciprocal estimate.
2021-03-13 17:43:35 +00:00
Christopher Serr
282cfa4db7 Add sqrt and more rsqrte neon instructions (#1078)
This adds instructions for sqrt and some of the missing reciprocal
square-root estimate instructions.
2021-03-13 14:27:44 +00:00
Christopher Serr
677644afb9 Add vdiv neon instructions (#1077) 2021-03-13 14:26:44 +00:00
Sparrow Li
088067dbd9 Support _p8 type in stdarch-gen (#1070) 2021-03-10 09:54:43 +00:00
Sparrow Li
7bc90053fd add vcgez, vcgtz, vclez, vcltz neon instructions (#1069) 2021-03-10 06:14:03 +00:00
Sparrow Li
b042298bc4 Modify stdarch-gen to generate instructions composed of multiple functions and add vtst instructions (#1063) 2021-03-08 11:15:04 +00:00
surechen
0203e47f5e support instructions : vabd vaba (#1053) 2021-03-06 17:12:49 +00:00
surechen
a310df2e2c remove redundant code 2021-03-06 17:10:52 +00:00
surechen
10d6ae269f use stdarch-gen to generate instructions 2021-03-06 17:10:52 +00:00
SparrowLii
d4952b2084 Correct the instruction name and add floating point instructions 2021-03-05 00:18:04 +00:00
SparrowLii
3bfa7593a7 use transmute in vceqz instructions in aarch64/neon/generated.rs 2021-03-05 00:18:04 +00:00
SparrowLii
5c8f08afc4 Modify stdarch-gen to generate instructions with a single parameter and add vceqz instructions 2021-03-05 00:18:04 +00:00
Makoto Kato
fd99d973dc Add reamained vmax and vmin via auto-generated code (#956) 2020-11-22 14:07:22 +00:00
Adam Hillier
c6ad1cf58b Add more addition Arm intrinsics (#939) 2020-11-06 21:56:51 +00:00
Joshua Nelson
33355e69c2 Fix some clippy lints (#937) 2020-11-02 00:53:39 +00:00
Heinz N. Gies
70f3623b52 Implement additional ARM NEON intriniscs (#792) 2020-04-07 20:06:38 +01:00