Folkert de Vries
f9750fbb9c
add vec_checksum
2025-03-16 13:50:11 +00:00
Folkert de Vries
8a7d50ae1b
add vec_avg
2025-03-16 13:50:11 +00:00
Folkert de Vries
37706d107d
add vec_unpackh and vec_unpackl
2025-03-16 13:50:11 +00:00
Folkert de Vries
08735d3a7e
correct name of signed splat functions
2025-03-16 13:50:11 +00:00
Folkert de Vries
167b13e6d3
test vec_rl
2025-03-16 13:50:11 +00:00
Folkert de Vries
0b0f5193cb
add vec_madd and vec_msub
2025-03-16 13:50:11 +00:00
Folkert de Vries
3a0ba7f08e
add vec_packs_cc and vec_packsu_cc
2025-03-16 13:50:11 +00:00
Folkert de Vries
34629d4d20
add vec_pack, vec_packs and vec_packsu
2025-03-16 13:50:11 +00:00
Folkert de Vries
6abac3ce99
add vec_load_bndry, __lcbb and vec_load_pair
2025-03-16 13:50:11 +00:00
Folkert de Vries
5092b69ef0
add vec_load_len_r and vec_store_len_r
2025-03-16 13:50:11 +00:00
Folkert de Vries
6761c73789
add vec_load_len and vec_store_len
2025-03-16 13:50:11 +00:00
Folkert de Vries
3813933b58
add vec_xl and vec_xst
2025-03-16 13:50:11 +00:00
Folkert de Vries
e4d33640d0
add vec_reve
2025-03-16 13:50:11 +00:00
Alex Crichton
267558c5c2
Document safety conditions of simd shifts
2025-03-16 13:20:37 +00:00
Alex Crichton
28580edab8
Fix rustfmt
2025-03-16 13:20:37 +00:00
Alex Crichton
ab098c6be6
wasm32: Fix undefined behavior with shift intrinsics
...
This commit fixes an issue where simd shift intrinsic in LLVM are
undefined behavior if the shift amount is larger than the bit width of
the lane. While in WebAssembly the corresponding instructions are
defined as masking out the upper bits we need to represent that
explicitly in LLVM IR to ensure that the semantics remain defined.
cc rust-lang/rust#137941
2025-03-16 13:20:37 +00:00
Sayantan Chakraborty
ec55ab663f
Update SDE mirror to ci-mirrors.rust-lang.org
...
This is to combat the spurious CI failures in emulated run. Also helps with updatability and compatibility - it will work even if Intel changes the link
2025-03-16 13:13:19 +00:00
Scott McMurray
9405357868
Don't field-project (.0) into SIMD types
2025-03-06 17:55:01 +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
5ece6ac059
armV7 does not need faminmax flag
2025-03-04 15:50:04 +00:00
James Barford-Evans
24555b5ac1
Add faminmax intrinsics to the skip list
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
Ralf Jung
694214b200
fix unnecessary unsafe error in doctest
2025-03-04 15:03:48 +00:00
Ralf Jung
f5a577c2d7
make _mm256_zero{upper,all} safe
2025-03-03 14:50:07 +00:00
Folkert de Vries
5b0c5d2dad
add vec_find_any_eq_or_0_idx_cc and vec_find_any_ne_or_0_idx_cc
2025-03-03 11:09:56 +00:00
Folkert de Vries
fcf6612d42
add vec_find_any_eq_or_0_idx and vec_find_any_ne_or_0_idx
2025-03-03 11:09:56 +00:00
Folkert de Vries
15def154eb
add vec_find_any_eq_cc and vec_find_any_ne_cc
2025-03-03 11:09:56 +00:00
Folkert de Vries
b7bcdcb819
add vec_find_any_eq_idx and vec_find_any_ne_idx
2025-03-03 11:09:56 +00:00
Folkert de Vries
79b89a0e14
add vec_find_any_eq and vec_find_any_ne
2025-03-03 11:09:56 +00:00
Folkert de Vries
914cd5a539
add vec_splat and friends
2025-03-03 11:09:56 +00:00
Folkert de Vries
08215ac576
add vec_sqrt
2025-03-03 11:09:56 +00:00
Folkert de Vries
4c48771da2
add vec_nabs
2025-03-03 11:09:56 +00:00
Folkert de Vries
b84a33dd10
add vec_subc_u128, vec_sube_u128, vec_subec_u128, vec_sub_u128
...
and `vec_subc`
2025-03-03 11:09:56 +00:00
Folkert de Vries
a956edc847
add vec_sum2, vec_sum4 and vec_sum_u128
2025-03-03 11:09:56 +00:00
Folkert de Vries
5d20f31a2c
add vec_perm
2025-03-03 11:09:56 +00:00
Folkert de Vries
33f1f20443
add vec_genmask and vec_genmasks
2025-03-03 11:09:56 +00:00
Folkert de Vries
1766b7ce5e
pull out ShuffleMask
2025-03-03 11:09:56 +00:00
Folkert de Vries
24ef1ac370
add vec_mergel and vec_mergeh
2025-03-03 11:09:56 +00:00
Folkert de Vries
fb05c533b8
add vec_revb
2025-03-03 11:09:56 +00:00
Folkert de Vries
7cc682d402
add vec_reve
2025-03-03 11:09:56 +00:00
Folkert de Vries
4341a8b8b3
add vec_rl_mask
2025-03-03 11:09:56 +00:00
Folkert de Vries
dc0a5c88fb
add vec_rli
2025-03-03 11:09:56 +00:00
Folkert de Vries
c9a9385b0a
add vector shift by byte
2025-03-03 11:09:56 +00:00
Folkert de Vries
81be4a28db
implement rotate left
2025-03-03 11:09:56 +00:00
Folkert de Vries
b1d20cb036
implement standard bitshifts
2025-03-03 11:09:56 +00:00
Folkert de Vries
ef68d2ffaa
implement the long bitshifts
2025-03-03 11:09:56 +00:00
Folkert de Vries
a82046181e
powerpc: use llvm.fshl for vec_rl
2025-03-03 11:08:19 +00:00