1258 Commits

Author SHA1 Message Date
Luca Barbato
61fb419a9b Use longer associated types in the Altivec traits 2024-06-11 15:00:39 +02:00
sayantn
511bbff3b2 Update avx.rs 2024-06-11 00:18:28 +02:00
sayantn
1ccc7dbd0d Fixed _mm256_cvtsd_f64
This intrinsic should have `target_feature` AVX, (according to Intel Intrinsics Guide) but had AVX2
2024-06-11 00:18:28 +02:00
bjorn3
292c0ecffd Fix duplicated argument name in extern block
While rustc accepts it just fine due to what is arguably a bug, this
duplication does become an issue when generating functions from the llvm
intrinsic declarations while reusing the argument names.
2024-06-07 20:42:46 +02:00
Amanieu d'Antras
860145884d Ignore int3 instructions when counting instructions in tests
These are generated as padding and are not actually part of the
function.
2024-06-07 19:18:13 +02:00
Olasunkanmi Olayinka
da09b47285 feat: stabilization for stdarch_aarch64_crc32 2024-05-14 15:52:07 +02:00
Luca Barbato
adb2db7471 Add vec_insert and vec_extract 2024-05-13 19:08:20 +02:00
Daniel Paoliello
130bc86694 Remove libc dependency on Windows by using Win32 to get env vars 2024-05-07 20:50:51 +02:00
Luca Barbato
0a5325a16c Add vec_orc 2024-05-06 16:02:08 +02:00
Luca Barbato
f91e5fd6b2 Simplify vec_andc implementation 2024-05-06 16:02:08 +02:00
Luca Barbato
509d5efe2b Silence unexpected-cfgs 2024-05-06 16:02:08 +02:00
Luca Barbato
4815a9efaf Add vec_mul 2024-04-28 20:56:17 +02:00
Eduardo Sánchez Muñoz
c5f9c14154 Remove #![feature(inline_const)]
The feature has been stabilized
2024-04-28 20:33:41 +02:00
Eduardo Sánchez Muñoz
95ce20e6f2 Add #[cfg_attr(miri, ignore)] to tests of intrinsics that cannot be supported by Miri 2024-04-28 20:33:41 +02:00
Eduardo Sánchez Muñoz
ff7e6c7ac6 Implement ARM __ssat and __usat functions 2024-04-23 15:58:46 +02:00
Ben Kimock
2a21235f7a Don't depend on libc for cfg(windows) 2024-04-22 01:24:03 +02:00
Daniel Paoliello
613efc499c Enable testing for AArch64 Windows 2024-04-19 17:21:08 +02:00
Luca Barbato
473ed336db Add vec_mergee and vec_mergeo 2024-04-18 13:56:07 +02:00
Luca Barbato
e9beb54625 Add tests for power9-vector instructions 2024-04-16 12:16:09 +02:00
Luca Barbato
c806df3160 Consider power9-vector when testing instructions 2024-04-16 12:16:09 +02:00
Eduardo Sánchez Muñoz
5b0b9e9db2 Implement _mm(256)_abs_epi* without x86-specific LLVM intrinsics 2024-04-16 11:53:05 +02:00
Tony Arcieri
153bde14d1 Remove duplicated allow(dead_code) attribute
Accidentally added in #1552
2024-04-13 02:32:07 +02:00
Tony Arcieri
eab9f2d6d9 Stabilize AArch64 SHA3 intrinsics
See also: rust-lang/rust#117225
2024-04-12 14:08:47 +02:00
Daniel Paoliello
ddba655db7 Use inline assembly for Arm64EC 2024-04-12 01:20:30 +02:00
Eduardo Sánchez Muñoz
b3da7c7b6f Fix clippy warnings in stdarch-gen 2024-04-10 13:10:58 +02:00
messense
33f8b12eba typos: fix bad precision comments 2024-04-10 02:38:43 +02:00
Kirsten Laskoski
39ab14c01b fix: reversed _mm512_set4_epi64 implementation
Fixes #1555 by changing the implementations of _mm512_set4_epi64 and _mm512_setr4_epi64 to use _mm512_set_epi64. This makes these implementations consistent with the other _mm512_set[r]4_* implementations as well as changes their behavior to be in line with what the intrinsics guide describes.
2024-04-10 02:08:29 +02:00
Luca Barbato
06495b6f45 intrinsic-test: Suppress a warning about dead code 2024-04-10 01:46:00 +02:00
WANG Rui
2008110773 core_arch/loongarch64: Re-export SIMD types 2024-03-20 15:54:17 +00:00
Noa
ec6bcf8c93 [wasm32] Add an intrinsic for the throw instruction 2024-03-19 17:01:56 +00:00
Daniel Paoliello
a00a70eacb arm64ec 2024-03-13 22:30:36 +00:00
Luca Barbato
d4c77d3228 Add vec_xl_len and vec_xst_len
They are powerpc64-only.
2024-03-12 05:52:08 +00:00
WANG Rui
1fbe4dddec std_detect: loongarch: Add runtime detectable features from LLVM
* f
* d
* frecipe
* lbt
2024-03-07 23:00:39 +00:00
WANG Rui
5fd2d04ef7 std_detect: loongarch: Remove features not supported by LLVM 2024-03-07 23:00:39 +00:00
Mingzhuo Yin
012e4ce580 check sub-leaf to detect avx512bf16
Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com>
2024-03-05 23:16:09 +00:00
Mingzhuo Yin
210913f1c4 fix: invalid bit for detecting avx512 feature
Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com>
2024-03-05 23:16:09 +00:00
Mingzhuo Yin
f32ad010a6 typo: invalid comments for _mm512_setzero_ps
Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com>
2024-03-05 22:43:27 +00:00
Kalle Wachsmuth
bff78e1767 correct _mm_insert_ps documentation 2024-02-29 23:27:14 +00:00
WANG Rui
b297b58bc2 core_arch: Add LoongArch LASX testcases 2024-02-28 08:43:52 +00:00
WANG Rui
2b923a30e8 core_arch: Add LoongArch LASX intrinsics
Co-authored-by: ZHAI Xiang <zhaixiang@loongson.cn>
2024-02-28 08:43:52 +00:00
WANG Rui
f74fe05f9e core_arch: Add LoongArch LSX testcases 2024-02-28 08:43:52 +00:00
ZHAI Xiang
9a8f1dac0e core_arch: Add LoongArch LSX intrinsics
Co-authored-by: WANG Rui <wangrui@loongson.cn>
2024-02-28 08:43:52 +00:00
ZHAI Xiang
a66ae3ec9e Add intrinsic code generator for LoongArch
Co-authored-by: WANG Rui <wangrui@loongson.cn>
2024-02-28 08:43:52 +00:00
WANG Rui
6ecbc8ebfb stdarch-gen: Move to stdarch-gen-arm 2024-02-28 08:43:52 +00:00
Pavel Grigorenko
1c16ce54e5 use addr_of! 2024-02-24 23:12:18 +00:00
usamoi
8531e289b0 feat: std_detect avx512fp16
Signed-off-by: usamoi <usamoi@outlook.com>
2024-02-24 16:07:04 +00:00
Ralf Jung
da78357bf7 use remaining SIMD intrinsics via libcore 2024-02-23 22:32:49 +00:00
Luca Barbato
13bd2979fc Add vec_sel 2024-02-23 17:05:57 +00:00
Luca Barbato
0fe5dfb4be Add vec_nand 2024-02-23 17:05:57 +00:00
Ralf Jung
f5c0b76cf3 non-temporal stores: document interaction with Rust memory model 2024-02-21 00:54:27 +00:00