71 Commits

Author SHA1 Message Date
klensy
d8bf6c48a4 bump serde_with. Weird that it works without std feature, but 2025-07-23 12:22:33 +03:00
Folkert de Vries
b74c4825cb
test for the high version of a number of instructions 2025-07-17 02:12:15 +02:00
Folkert de Vries
bdd1ca1eea
aarch64: check for trn1 and trn2 2025-07-15 22:17:03 +02:00
Folkert de Vries
c13e3aa6b4
aarch64: check for uzp1 and uzp2 2025-07-15 22:17:02 +02:00
Folkert de Vries
ce3eabfd70
aarch64: check for zip1 and zip2 2025-07-15 22:17:02 +02:00
Folkert de Vries
6444994556
aarch64/arm: fix tests that matched on prefix of instruction 2025-07-15 20:20:46 +02:00
Amanieu d'Antras
2aaa584094
Merge pull request #1872 from folkertdev/aarch64-horizontal-add
`aarch64`: use `intrinsics::simd` for horizontal add and `abs`
2025-07-15 00:19:05 +00:00
Folkert de Vries
48c33b7748
aarch64: implement vabs using instrinsics::simd 2025-07-15 01:36:20 +02:00
Folkert de Vries
42bcb0668e
aarch64: use simd_reduce_add_unordered 2025-07-12 21:50:51 +02:00
Folkert de Vries
17b8fc938d
aarch64: use simd_reduce_min and simd_reduce_max for integers 2025-07-12 18:12:09 +02:00
Folkert de Vries
750ddfd8d3
aarch64: use simd_reduce_min and simd_reduce_max for floats 2025-07-12 18:12:08 +02:00
Folkert de Vries
72afae5fd6
arm: use simd_fmin and simd_fmax 2025-07-12 18:12:08 +02:00
Folkert de Vries
441824cfca
aarch64: use simd_fmin and simd_fmax 2025-07-12 18:12:08 +02:00
Folkert de Vries
ca70466fa3
aarch64: use f16::min and f16::max 2025-07-12 18:12:08 +02:00
Folkert de Vries
301bb69450
Merge pull request #1868 from folkertdev/gen-arm-remove-lazy-static
`stdarch-gen-arm`: remove `lazy_static`, use `LazyLock` instead
2025-07-11 23:44:24 +00:00
Sayantan Chakraborty
cd48abd478
Merge pull request #1858 from folkertdev/aarch-comparison-operators
aarch64: use `core::intrinsics::simd` for integer min/max
2025-07-11 23:07:13 +00:00
Folkert de Vries
d6feec7735
stdarch-gen-arm: remove lazy_static, use LazyLock instead 2025-07-12 01:02:49 +02:00
Marijn Schouten
a8110072ff thumbv7neon-unknown-linux-gnueabihf clippy fixes 2025-07-11 11:13:13 +00:00
Sayantan Chakraborty
bb7a446c75
Merge pull request #1857 from folkertdev/arm-dup
use `splat` for the aarch64/arm dup intrinsics
2025-07-10 22:40:03 +00:00
Folkert de Vries
6d1f9552bd
use intrinsics::simd for integer max/min 2025-07-10 15:04:13 +02:00
Folkert de Vries
ef048d98ce
use splat for the aarch64/arm dup intrinsics 2025-07-10 12:08:38 +02:00
Folkert de Vries
061a941adc remove unneeded cast 2025-07-08 10:27:34 +00:00
Folkert de Vries
92701fef20 shorten array literals 2025-07-08 10:27:34 +00:00
Folkert de Vries
323c646ec3 remote intermediate assignment 2025-07-08 10:27:34 +00:00
Folkert de Vries
82126a6eba fix whitespace in aarch64.spec.yml 2025-07-08 10:27:34 +00:00
sayantn
658b5c8f69 Use simd_funnel_sh{l,r} and simd_round_ties_even to remove uses of LLVM intrinsics 2025-07-07 23:30:02 +00:00
Marijn Schouten
fddd05bd7f some clippy fixes 2025-07-07 23:28:47 +00:00
sayantn
068cc378a6 Remove uses of deprecated type-specific pointers from ARM 2025-06-02 19:45:08 +00:00
sayantn
5d47941854 Use correct LLVM intrinsic for vmull and vaddv 2025-06-02 19:45:08 +00:00
sayantn
2665fe5729 Use rust intrinsics for more ARM intrinsics 2025-06-02 19:45:08 +00:00
Adam Gemmell
d2587282eb Revert vbsl[q]_f16 to unstable 2025-06-02 18:34:18 +00:00
Folkert de Vries
52115419a3 use simd_bitreverse on aarch64 2025-06-01 22:58:15 +00:00
Tsukasa OI
7168d48c0b stdarch-gen-arm: Modernization of the coding style
It modernizes the coding style of the crate stdarch-gen-arm by fixing
Clippy warnings (except clippy::{collapsible_if,obfuscated_if_else} that
might make the program look worse as a result of "fixing" warnings).

Clippy: rust version 1.89.0-nightly (6f6971078 2025-05-28)
Number of Fixed Warnings: 84/84
Note:
Rust Analyzer double counts one of the Clippy warnings so it reduces
85 warnings (as reported by the Rust Analyzer).

This commit also applies similar technique used to resolve Clippy
warnings but also simplifies identifier name formatting and makes
reading easier.

Confirmed that the exact same code will be generated.
2025-05-31 09:38:49 +00:00
sayantn
cd63f26d86 Upgrade more intrinsics to the new version 2025-05-30 18:02:17 +00:00
James Barford-Evans
c65583c2b3 Pr feedback for instruction & hookup CI for aarch64_be 2025-05-03 05:06:15 +00:00
James Barford-Evans
ef92b59242 fix - aarch64_be tests 2025-05-03 05:06:15 +00:00
sayantn
400dab3df7 Fix stdarch-verify 2025-05-01 11:30:47 +00:00
James Barford-Evans
08b9752ee1 refactor - arm_shared intrinsics are now YAML, where possible use anchor
tags
2025-03-25 10:53:54 +00:00
James Barford-Evans
89c9c8ba9c feat - FEAT_LUT neon instrinsics 2025-03-05 14:54:05 +00:00
James Barford-Evans
520dfd5210 add unstable for faminmax 2025-03-04 15:50:04 +00:00
James Barford-Evans
61b9f9f9eb mark FEAT_FAMINMAX intrinsics as safe 2025-03-04 15:50:04 +00:00
James Barford-Evans
de7f56ff35 Add aarch64_unstable_target_feature and relax instruction assertion 2025-03-04 15:50:04 +00:00
James Barford-Evans
1088aae289 feat - FEAT_FAMINMAX neon intrinsics 2025-03-04 15:50:04 +00:00
usamoi
6c0068d93f fix compilation on armebv7r-none-eabi 2025-03-03 10:59:14 +00:00
usamoi
bcf796a34c mark arm intrinsics as safe 2025-02-27 22:02:52 +00:00
James Barford-Evans
fc83e49bb1 fix - neon type signed unsigned conversions 2025-02-26 12:15:15 +00:00
Kajetan Puchalski
f4a31fd609 core-arch: Add NEON fp16 intrinsics 2025-02-24 14:22:42 +00:00
James Barford-Evans
014fe0b9c1 fix - only use simd_shuffle! on intrinsics that require it 2025-02-24 11:04:20 +00:00
James Barford-Evans
b95fc44d25 fix up yaml & re-generate 2025-02-24 11:04:20 +00:00
James Barford-Evans
2ab46242f0 remove print statment and correct target name 2025-02-24 11:04:20 +00:00