Eric Huss
699a872630
Update all crates to Rust 2024
2025-02-09 12:31:33 -08:00
Eric Huss
1d091e3aaa
Update documentation for unsafe_op_in_unsafe_fn
...
For the documentation side, we probably want to show the Rust 2024
style.
2025-02-09 12:31:33 -08:00
Eric Huss
844a604bf0
Allow unsafe_op_in_unsafe_fn
...
Because stdarch has a really large number of unsafe functions with
single-line calls, `unsafe_op_in_unsafe_fn` would end up adding a lot of
noise, so for now we will allow it to migrate to 2024.
2025-02-09 12:31:30 -08:00
Eric Huss
64e9ca74a8
Apply missing_unsafe_on_extern
2025-02-09 09:12:30 -08:00
Folkert de Vries
fe2acd4184
some doc changes
2025-02-07 22:42:27 +00:00
Folkert de Vries
6adb9dec75
add vec_splats for s390x
2025-02-07 22:42:27 +00:00
Folkert de Vries
55d37bd777
add vec_abs for s390x
2025-02-07 22:42:27 +00:00
Folkert de Vries
9be5f9b5f6
add vec_max and vec_min for s390x
2025-02-07 22:42:27 +00:00
Folkert de Vries
950229cd7d
add vec_sub and vec_mul for s390x
2025-02-07 22:42:27 +00:00
Folkert de Vries
7f6d35d196
implement VectorAdd for s390x
2025-02-07 22:42:27 +00:00
sayantn
e6ea3dc21c
Remove CSR accessing tests as they are immediate UB
2025-02-07 22:09:48 +00:00
sayantn
b7036c26db
Fix names of several tests
...
Rewrote `_mm_cvtps_ph` and `_mm_cvtph_ps` tests
2025-02-07 22:09:48 +00:00
Jacob Bramley
bd598f3be3
Update stdarch-gen-arm path generation.
...
Fix both the instructions for how to regenerate each `generated.rs`, and
the logic for inferring the correct output path from each input
`.spec.yml`.
2025-02-03 21:15:41 +00:00
Jacob Bramley
81035da551
Fix usage of proc_macro2::Punct.
...
Restructure stdarch-gen-arm to use `Group`s with `Delimiter`s rather
than ad-hoc `Punct`s.
`Punct` should only be used to represent specific characters, and never
for bracket-like characters. Recent versions of `Punct::new` check this
with an assertion.
Note that there doesn't appear to be a way to emit a line break for
formatting reasons — `Punct::new('\n', ...)` no longer works — so this
also removes all blank lines between functions in the generated files.
2025-01-29 17:44:31 +00:00
Folkert de Vries
96576234db
implement VectorAdd for s390x
2025-01-20 14:48:56 +00:00
Folkert de Vries
48bbd53d19
basic infra for s390x vector intrinsics
2025-01-20 14:48:56 +00:00
James Barford-Evans
a1be13aeeb
refactor - remove Sized as it is implicit
2025-01-16 14:29:19 +00:00
James Barford-Evans
ebd0c622cd
remove - relaxing if size
2025-01-16 14:29:19 +00:00
James Barford-Evans
56f7baadc9
fix: always inline signed conversions
2025-01-16 14:29:19 +00:00
James Barford-Evans
f283e449b1
PR feedback & pipeline
2025-01-16 14:29:19 +00:00
James Barford-Evans
28cb01cd6a
Remove old ARM intrinsic generator
2025-01-16 14:29:19 +00:00
James Barford-Evans
57b6779050
Generator supports creating neon instructions from YAML
2025-01-16 14:29:19 +00:00
Satoshi Tanda
17422c6089
Fix typo and prettify comment
2024-12-29 10:44:14 +00:00
sayantn
a19239f298
Remove 2 unused intrinsics
2024-12-27 11:23:44 +00:00
sayantn
4da1071b68
Remove v64.rs as it was superseded by simd.rs
2024-12-27 11:23:44 +00:00
sayantn
3a3146a56c
Refactor the as_* functions in x86
2024-12-27 11:23:44 +00:00
WANG Rui
75ec201457
core_arch: Add LoongArch basic intrinsics
2024-12-23 22:28:34 +00:00
sayantn
96154fbde8
Fix _mm*_mask_cmp_ep*_mask bug with IMM3=7
2024-12-21 12:02:41 +00:00
daxpedda
9ea6010f16
Fix Wasm f*_sqrt() doc
2024-12-21 12:02:28 +00:00
Martin Liska
728b35dfbb
Remove buffers in tests for {f,}xsave{c,}{64,}
...
Fixes : #1672
2024-12-13 15:07:48 +00:00
Sayantan Chakraborty
5d3879f558
assert_instr for AMX
2024-12-12 16:56:01 +00:00
Sayantan Chakraborty
139b2ad3e3
Use core::intrinsics::fmaf16 instead of LLVM intrinsic
2024-12-12 16:56:01 +00:00
Sayantan Chakraborty
0b0b7e6fe1
Cleanup: remove redundant target features
...
Make target feature verification stricter
2024-12-12 16:56:01 +00:00
daxpedda
69efcbdb54
Add numeric instructions for Wasm not available in core
2024-12-12 16:53:36 +00:00
aaishwarymishra@gmail.com
b3bdc662d8
Fix incorrect documentation for _mm_loadu_si64 function
2024-12-09 03:02:48 +00:00
Alex Crichton
745ebd5362
wasm: Add missing #[target_feature] to simd ctors
...
This is a resubmission of #1609 which was ruled optional but not
necessary at the time but it's now necessary. These weren't originally
applied as they weren't allowed in a `const` context but that's no
longer applicable. At the same time though be sure to add some small
tests to ensure that these intrinsics can be used in a `const` context.
2024-12-02 16:28:24 +00:00
Martin Liska
a1e78aca2f
Fix test-case
2024-11-30 23:07:21 +00:00
Martin Liska
0601aa385b
Fix and document _mmX_alignr_epiX family of intrinsics
2024-11-30 23:07:21 +00:00
Martin Liska
1d10adfa38
Fix implementation of _mm256_alignr_epi8<16>
...
The function is supposed to return first argument for IMM8 == 8.
2024-11-30 23:07:21 +00:00
Martin Liska
6d24a9f72b
Fix signature of _mm512_store{u,}_si512.
...
Simiarly to other functions for `mm` and `mm256` register widths, the
first argument should be a pointer to the pointer type. See e.g.
`_mm256_store_si256` function.
2024-11-30 21:35:13 +00:00
Ralf Jung
358aee539b
remove rustc_allow_const_fn_unstable feature gate
2024-11-30 21:34:02 +00:00
Tobias Decking
4d2911ba4b
Rework SIMD zeroing
2024-11-30 00:05:40 +00:00
Asuna
2f608b514b
Fix RISC-V Packed SIMD intrinsics compilation
2024-11-27 09:07:39 +08:00
Amanieu d'Antras
8d563dd6f9
Fix types for ARM SIMD32 intrinsics
...
These were previously defined using vector types which is incorrect.
Instead, `{u}int{8x4,16x2}_t` are aliases for `i32` and `u32`.
This also fixes CI since these types don't need to be passed in NEON
registers and this was triggering a newly added compiler warning.
2024-11-27 07:06:17 +08:00
Eduardo Sánchez Muñoz
4c6bf3801f
Fix asm! options for _mm_mask_load_sh and _mm_maskz_load_sh
...
These functions read from a pointer, so `readonly` has to be used instead of `nomem`.
2024-11-10 08:20:24 +08:00
Eduardo Sánchez Muñoz
a552144515
Fix duplicated doc comment line and empty line after doc comment
2024-11-10 07:58:04 +08:00
Noa
281fe5f474
Use C-unwind abi for the llvm.wasm.throw intrinsic
2024-11-01 20:17:42 +08:00
Jens Reidel
89caa7798f
core_arch: powerpc: Fix documentation for vec_ctu
...
Like the name suggests, this converts to unsigned integers rather than
signed. I assume this was copy pasted from vec_cts.
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2024-11-01 06:07:58 +08:00
Ralf Jung
73c15a0c93
cleanup wasm const fn
2024-10-28 15:48:52 +08:00
WANG Rui
49e52f3657
core_arch: Add LoongArch frecipe intrinsics
2024-10-14 14:24:33 +02:00