51 Commits

Author SHA1 Message Date
sayantn
400dab3df7 Fix stdarch-verify 2025-05-01 11:30:47 +00:00
sayantn
867fe30ba0 Add test-everything annotations to more archs to ensure test coverage, and some small changes to make CI pass
- Disable `vsx` tests for `ppc` and `ppc64`
 - Disable `tme` tests for `aarch64` and `aarch64_be`
 - Disable `frecipe` tests for `loongarch64`
 - Add `altivec` run for PPC32 (with `-C target-feature=+vsx` `qemu` gives a nasty error)
2025-04-20 21:39:39 +00:00
sayantn
ccf36667b0 Add checks for void pointer types to ensure consistency 2025-04-17 13:59:07 +00:00
sayantn
46fbfe9b09 Add the keylocker intrinsics 2025-02-13 10:54:53 +00:00
sayantn
c6f32bca9d Small refactorings in x86-intel.rs
remove `PRINT_MISSING_LISTS` as it was unused
rename `PRINT_MISSING_LISTS_MARKDOWN`
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
Sayantan Chakraborty
0b0b7e6fe1 Cleanup: remove redundant target features
Make target feature verification stricter
2024-12-12 16:56:01 +00:00
ziyizhang-1
50cd4ef0c5 initial commit to enable amx
AMX Intrinsics:

amx-tile:
  - _tile_loadconfig
  - _tile_storeconfig
  - _tile_loadd
  - _tile_release
  - _tile_stored
  - _tile_stream_loadd
  - _tile_zero
amx-int8:
  - _tile_dpbssd
  - _tile_dpbsud
  - _tile_dpbusd
  - _tile_dpbuud
amx-bf16:
  - _tile_dpbf16ps
amx-fp16
  - _tile_dpfp16ps
amx-complex
  - _tile_cmmimfp16ps
  - _tile_cmmrlfp16ps
2024-08-03 19:02:09 +01:00
sayantn
4a13560ede Update Intrinsics List to v3.6.9
Add `#[inline]` to avx512ifma intrinsics
Fix the test equality.
Remove the stability attributes in simd types and test functions
2024-07-26 12:20:06 +01:00
sayantn
3cf2b7d74f AVX512FP16 Part 9: Remaining avx512fp16 and avxneconvert 2024-07-26 12:20:06 +01:00
sayantn
c878b773d5 AVX512FP16 Part 0: Types 2024-07-26 12:20:06 +01:00
sayantn
f101974941 Added verification for doc comments 2024-07-08 00:32:43 +02:00
sayantn
c862e4e487 Added a bf16 type 2024-07-06 11:00:34 +02:00
sayantn
3de8e86491 Implemented the missing AVX512BF16 intrinsics 2024-07-06 11:00:34 +02:00
sayantn
f22fab559e Implemented VEX versions
Modified stdarch-test to accept VEX versions
2024-07-06 11:00:34 +02:00
sayantn
ed1df99f03 Added support for AMD verification
Added a custom cpuid file for sde, which enables SSE4a, XOP, TBM and VP2INTERSECT. Fixed `xsave` tests
2024-06-30 21:45:56 +02:00
sayantn
818df2f7d0 Some fixes as asked by @Amanieu 2024-06-29 19:16:48 +02:00
sayantn
fa22a9aeda Add the missing BMI1, SSE2, SSE4.1 and AVX2 intrinsics 2024-06-29 19:16:48 +02:00
sayantn
d65d1a8ae6 Fixed some more intrinsics
Added some tests, Fixed incorrect target-features, and verification code for target-features. Removed all MMX support from verification.
2024-06-29 19:16:48 +02:00
sayantn
ad7cf91833 Fixed many intrinsics
fixed reduce-add and reduce-mul. and load/store of mask32 and mask64. added preserves-flags to mov asm. fixed the missing list. fixed `_mm_loadu_si64`. Added `assert_instr`
2024-06-29 19:16:48 +02:00
sayantn
d26d3a7481 Update Intrinsics list
Updated the intrinsics list from version 3.4 to 3.6.8. Added a missing-x86.md file to track progress.
2024-06-29 19:16:48 +02:00
sayantn
52f8b0c1a9 AVX512DQ Part 5: Range. Fixed intrinsic verification. 2024-06-18 19:13:13 +02:00
Eduardo Sánchez Muñoz
40237e7f83 Use char constants for single-character patterns 2023-11-18 20:28:46 -08:00
Josh Triplett
87c70444d6 Remove ud2 intrinsic (in favor of asm! or abort as needed) 2023-05-25 23:30:24 +02:00
Amanieu d'Antras
c80d9794e0
Don't require AVX512 for 128/256-bit GFNI & VPCLMULQDQ intrinsics (#1349) 2022-10-30 01:56:06 +01:00
Amanieu d'Antras
55f9fcda26
Don't require AVX512 for 256-bit VAES intrinsics (#1348) 2022-10-27 19:51:16 +01:00
Yuri Astrakhan
81c221f058
Edition 2021, apply clippy::uninlined_format_args fix (#1339) 2022-10-25 20:17:23 +01:00
Amanieu d'Antras
3fb437b867
Add stricter validation of const arguments on x86 intrinsics (#1025) 2021-02-28 18:07:42 +00:00
minybot
b7acc2e1da
Avx512f avx512vl (#1001) 2021-02-14 17:59:05 +00:00
kangshan1157
936e1add97
Implement avx512bf16 intrinsics (#998) 2021-02-10 23:29:27 +00:00
minybot
1f93bbe3b9
avx512vnni (#982) 2021-01-13 14:09:19 +00:00
minybot
6dc569d9d9
avx512vbmi2 (#979) 2021-01-11 16:52:19 +00:00
minybot
981e250f89
Avx512vbmi (#977) 2021-01-04 00:35:51 +00:00
DevJPM
c5ccd02907
Add AVX512BITALG (#964)
This adds the AVX512BITALG intrinsics.
It also patches the verification against the Intel Intrinsic Guide
because Rust uses a different naming.
Added intrinsics match _mm(256|512)?(_maskz?)?_popcnt_epi(8|16) for the popcount ones
and _mm(256|512)?(_mask)?_bitshuffle_epi64_mask
2020-12-09 00:28:58 +00:00
minybot
8cd6f164a6
Avx512bw (#960) 2020-12-01 09:43:01 +00:00
minybot
ea5a0d01d3
Avx512bw (#953) 2020-11-22 15:10:25 +00:00
minybot
7bb92b7809
Avx512f (#933) 2020-11-07 00:14:05 +00:00
Joshua Nelson
33355e69c2
Fix some clippy lints (#937) 2020-11-02 00:53:39 +00:00
minybot
ae707fa29d
Avx512f (#927) 2020-10-17 01:14:41 +01:00
minybot
9090eec2f7
Avx512f (#921) 2020-10-10 17:14:15 +01:00
minybot
99f0dac00e
Avx512f (#912) 2020-09-19 22:16:01 +01:00
minybot
cf1adeba7a
Avx512f (#901) 2020-09-11 22:26:39 +01:00
jethrogb
e8a9e43f93
Re-land mm_extract_epi fix (#898)
This reverts commit 311d56cd91609c1c1c0370cbd2ece8e3048653a5.

Co-authored-by: Jethro Beekman <jethro@fortanix.com>
2020-09-08 14:38:43 +01:00
Alex Crichton
9a3b159e83
Partially revert #868 (#878)
This commit partially reverts #868 to restore the intrinsics to their
original implementation to avoid breaking changes. This is done while
rust-lang/rust#73166 is running through crater, and should unblock
rust-lang/rust#74482.
2020-07-28 16:29:35 +00:00
Shamir Khodzha
78135e1774
added f32 and f64 unaligned stores and loads from avx512f set (#873) 2020-07-11 09:02:07 +01:00
Daniel Smith
5ff50904d8
Add AVX 512f gather, scatter and compare intrinsics (#866)
Co-authored-by: bjorn3 <bjorn3@users.noreply.github.com>
2020-06-16 17:49:21 +01:00
Jethro Beekman
a214956fe5 Fix x86 extract_epi{8,16} functions
* Update Intel intrinsics definitions with the latest version
* Update _mm256_extract_epi{8,16} to match latest definition
* Fix _mm_extract_epi16 sign extension

Fixes #867
2020-06-09 12:29:01 +01:00
Daniel Smith
48b086a827 Add __mmask8 type 2020-05-29 00:07:03 +01:00
gnzlbg
ed67655cc8 Verify that all intrinsics have a run-time test 2019-08-17 21:14:54 +02:00
gnzlbg
8cec101751 Allow unused items in verification tests 2019-07-09 01:37:07 +02:00