1400 Commits

Author SHA1 Message Date
Daniel Paoliello
f2c0c3dd44 Add testing for Arm64EC Windows 2025-08-10 13:19:06 -07:00
The rustc-josh-sync Cronjob Bot
49aa0ecc7b Merge ref '32e7a4b92b10' from rust-lang/rust
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: 32e7a4b92b109c24e9822c862a7c74436b50e564
Filtered ref: 56d8aa13f54944edb711f3bdd7013b082dbaa65b

This merge was created using https://github.com/rust-lang/josh-sync.
2025-07-31 04:20:38 +00:00
Alisa Sireneva
17519aeaef Allow ffi_unwind_calls for arch::wasm32::throw 2025-07-25 18:28:03 +03:00
Folkert de Vries
cc15f022e7
Merge pull request #1879 from heiher/loong-simd-unified-types
loongarch: Use unified data types for SIMD intrinsics
2025-07-25 13:46:59 +00:00
WANG Rui
49ea48d952 loongarch: Use unified data types for SIMD intrinsics 2025-07-25 09:31:58 +08:00
Aurelia Molzer
be947d4d2b Add non-temporal note for maskmoveu_si128
Like any other non-temporal instructions this has additional safety requirements
due to the mismatch with the Rust memory model. It is vital to know when using
this instruction.
2025-07-24 14:52:26 +02:00
Folkert de Vries
b658b3d251
work around not being able to project out of SIMD values any more 2025-07-22 19:32:09 +02:00
Amanieu d'Antras
8fe55684d8
Merge pull request #1860 from folkertdev/stdarch-test-cleanup
`stdarch-test`: various cleanups
2025-07-18 20:27:56 +00:00
WANG Rui
da892b54be loongarch: Mark SIMD intrinsics without memory access as safe 2025-07-18 20:42:19 +08:00
WANG Rui
b57ff35641 loongarch: Mark partial basic intrinsics as safe 2025-07-18 11:52:17 +08: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
f6f6715990
s390x: 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
Amanieu d'Antras
1a8c5324f0
Merge pull request #1869 from folkertdev/s390x-use-rounding-intrinsic
`s390x`: document the different rounding flavors
2025-07-14 23:28:37 +00:00
Amanieu d'Antras
7d10ff1a18
Merge pull request #1837 from heiher/loong32
loongarch: Add basic support for LoongArch32
2025-07-14 23:27:09 +00:00
Folkert de Vries
74e2cb12d1
s390x: document the different rounding flavors 2025-07-14 17:22:38 +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
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
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
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
Jakub Beránek
b535003608 Remove std-detect dev dependency in core_arch 2025-07-07 21:50:45 +00:00
okaneco
600497f3ed Mark avx broadcast intrinsics as safe 2025-07-07 21:50:01 +00:00
ltdk
e46d2207bd Use simd_extract! macro instead of calling simd_extract directly 2025-07-07 21:48:32 +00:00
Amanieu d'Antras
8ae4e6a566 Update stabilization version of certain x86 intrinsics to 1.89
These were left as `CURRENT_RUSTC_VERSION` in the submodule.
2025-07-07 21:47:33 +00:00
Folkert de Vries
bb2d169700 use is_multiple_of to check if an addr is aligned 2025-07-07 17:08:03 +00:00
WANG Rui
d63e865a95 loongarch: Add basic support for LoongArch32 2025-06-28 11:28:32 +08:00
Folkert de Vries
26b7dd4304 the generic_arg_infer feature is now stable on nightly 2025-06-19 15:31:16 +00:00
satiscugcat
003516cd44 Test 2025-06-17 19:28:07 +00:00
satiscugcat
dcd35573f7 Ran cargo fmt, removed unexpected character 2025-06-17 19:28:07 +00:00
satiscugcat
fd1b9c72fd Moved const fn outside unsafe block 2025-06-17 19:28:07 +00:00
satiscugcat
64dd3e4489 Changed implementation of _mm{256,512}_alignr_epi8 to match that of _mm_alignr_epi8 in ssse3.rs, also removed the import of the unreachable unchecked hint as it was no longer necessary 2025-06-17 19:28:07 +00:00
satiscugcat
48dafaa1c7 Changed implementation of bsrli in avx512.rs to match that of bslli, fixing a bug in the process. 2025-06-17 19:28:07 +00:00
satiscugcat
09475721a8 Changed the implementation of bsrli to match bslli in avx2 intrinsics 2025-06-17 19:28:07 +00:00
Aniket Mishra
1c5b2a659d Fixing mistake in previous commit 2025-06-17 19:28:07 +00:00