about summary refs log tree commit diff
path: root/library/stdarch
AgeCommit message (Collapse)AuthorLines
2023-10-12Fix UB in _mm_movemask_ps, _mm_movemask_pd, _mm256_movemask_ps and ↵Eduardo Sánchez Muñoz-4/+16
_mm256_movemask_pd The `simd_bitmask` intrinsic requires each element to be all-1 or all-0, while the x86 functions only check for the highest bit.
2023-10-11Remove unneeded transmutesEduardo Sánchez Muñoz-378/+237
(or replace them with safe versions)
2023-10-10Reimplement _mm256_movemask_ps and _mm256_movemask_pd without LLVM intrinsicsEduardo Sánchez Muñoz-6/+2
2023-10-10Reimplement _mm_movemask_ps and _mm_movemask_pd without LLVM intrinsicsEduardo Sánchez Muñoz-6/+2
2023-10-10Reimplement _mm256_addsub_ps and _mm256_addsub_pd without LLVM intrinsicsEduardo Sánchez Muñoz-6/+10
2023-10-10Reimplement _mm_addsub_ps and _mm_addsub_pd without LLVM intrinsicsEduardo Sánchez Muñoz-7/+11
2023-10-10Reimplement _mm_blend_pd and _mm_blend_ps without LLVM intrinsicsEduardo Sánchez Muñoz-6/+15
2023-10-10Reimplement _mm_blendv_ps and _mm256_blendv_ps without LLVM intrinsicsEduardo Sánchez Muñoz-6/+4
2023-10-10Reimplement _mm_blendv_pd and _mm256_blendv_pd without LLVM intrinsicsEduardo Sánchez Muñoz-6/+4
2023-10-10Reimplement _mm_blend_epi16 without LLVM intrinsicsEduardo Sánchez Muñoz-7/+15
2023-10-10Reimplement _mm_blendv_epi8 and _mm256_blendv_epi8 without LLVM intrinsicsEduardo Sánchez Muñoz-6/+4
2023-10-10Reimplement _mm_mul_epi32 and _mm256_mul_epi32 without LLVM intrinsicsEduardo Sánchez Muñoz-6/+6
2023-10-10Reimplement _mm_avg_epu8, _mm_avg_epu16, _mm256_avg_epu8 and ↵Eduardo Sánchez Muñoz-12/+16
_mm256_avg_epu16 without LLVM intrinsics
2023-10-10Reimplement _mm_mulhi_epi16, _mm_mulhi_epu16, _mm256_mulhi_epi16 and ↵Eduardo Sánchez Muñoz-12/+16
_mm256_mulhi_epu16 without LLVM intrinsics
2023-10-10Reimplement _mm_mul_epu32 and _mm256_mul_epu32 without LLVM intrinsicsEduardo Sánchez Muñoz-6/+8
2023-10-10Reimplement _mm_cvtpd_ps and _mm_cvtps_pd without LLVM intrinsicsEduardo Sánchez Muñoz-6/+5
2023-10-10Reimplement _mm_cvtepi32_ps without LLVM intrinsicsEduardo Sánchez Muñoz-3/+1
2023-10-10Bump wasmprinter to 0.2.67Eduardo Sánchez Muñoz-1/+1
2023-10-10Bump rand to 0.8Eduardo Sánchez Muñoz-1/+1
2023-10-10Bump quickcheck to 1.0Eduardo Sánchez Muñoz-1/+1
2023-10-10Bump itertools to 0.11Eduardo Sánchez Muñoz-1/+1
2023-10-10Bump pretty_env_logger to 0.5Eduardo Sánchez Muñoz-1/+1
2023-10-10Bump clap to 4.4Eduardo Sánchez Muñoz-55/+47
Also define args with derive style instead of builder style.
2023-10-10Bump serde-xml-rs to 0.6Eduardo Sánchez Muñoz-1/+1
2023-10-10Bump syn to 2.0Eduardo Sánchez Muñoz-33/+57
Also ensure that `assert_instr` attribute has been correctly parsed in stdarch-verify.
2023-10-10Remove use of auv crate from testsbjorn3-48/+11
2023-10-10Remove the auxv dev dependency.bjorn3-1/+0
It hasn't been used since roughly 2018. The latest published version of auxv has a less common license and doesn't specify any license in it's Cargo.toml file.
2023-10-02Bump _mm_getcsr/_mm_setcsr deprecation Rust version to 1.75Eduardo Sánchez Muñoz-10/+10
2023-10-02Add parentheses to avoid (re)parsing ambiguity in `test_vsri` macro.Eduardo Sánchez Muñoz-2/+2
2023-10-02Add `#[cfg_attr(miri, ignore)]` to SSE and SSE2 that cannot be supported by MiriEduardo Sánchez Muñoz-0/+28
2023-10-02Support adding attributes to `simd_test` testsEduardo Sánchez Muñoz-34/+6
It uses the syn crate to parse the function, so the name can now be extracted without the `find_name` helper.
2023-10-02Avoid subtraction overflow in `test_mm_store{,1,r}_ps` functionsEduardo Sánchez Muñoz-3/+3
This overflow was found while testing core_arch with miri
2023-10-02Use `assert_approx_eq!` in `test_mm_rcp_ss`Eduardo Sánchez Muñoz-1/+5
Like done in `test_mm_rcp_ps`, but only for the first element.
2023-10-01Explicitly disable SSE3 for x86_64Eduardo Sánchez Muñoz-0/+5
2023-10-01Add some `#[allow(deprecated)]`Eduardo Sánchez Muñoz-0/+25
2023-10-01Remove references to `_mm_getcsr` or `_mm_setcsr` in other function's docsEduardo Sánchez Muñoz-4/+2
2023-10-01Deprecate functions that use `_mm_getcsr` or `_mm_setcsr`Eduardo Sánchez Muñoz-0/+32
2023-09-29deprecate _mm_getcsr and _mm_setcsrRalf Jung-0/+8
2023-09-29another typoRalf Jung-1/+1
2023-09-29fix typoRalf Jung-1/+1
Co-authored-by: Jacob Lifshay <programmerjake@gmail.com>
2023-09-29Rust does not let you observe or mutate the floating-point register in ↵Ralf Jung-0/+19
well-defined ways
2023-09-29core_arch: Fix ARMv6 CP15 barrierTaiki Endo-3/+6
2023-09-25Add missing `aes64im` of RISC-V Zk extensionGijs Burghoorn-0/+27
2023-09-22Fix: #1464 for rv64 zbGijs Burghoorn-9/+5
2023-09-22Fix: #1464 for rv64 zkGijs Burghoorn-44/+30
2023-09-22FormatEduardo Sánchez Muñoz-4/+16
2023-09-22Improve `_mm_max_ps`, `_mm_min_pd`, `_mm_max_pd` testsEduardo Sánchez Muñoz-0/+33
Includes cases to test -0.0, like done for `_mm_min_ps`.
2023-09-22Improve SSE2 slli/srli/srai testsEduardo Sánchez Muñoz-31/+40
Includes cases where the shift amount is equal to the number of bits
2023-09-22Improve SSE2 sll/srl/sra testsEduardo Sánchez Muñoz-34/+75
Includes cases where the shift amount is equal or greater to the number of bits.
2023-09-22Add `#[track_caller]` to `assert_eq_*` functionsEduardo Sánchez Muñoz-0/+9