packed_simd icon indicating copy to clipboard operation
packed_simd copied to clipboard

Portable Packed SIMD Vectors for Rust standard library

Results 80 packed_simd issues
Sort by recently updated
recently updated
newest added

We could extend `Simd` to `Simd` to enable users to, for example, use `Simd` and generate code that assumes that `AVX` is available. cc @rkruppe

Enhancement

I searched for an easy way to deal with sizes that cannot be always in the length you want so I made something like this and wondered why this isn't...

Enhancement

with `features = ["into_bits", "core_arch"]` and code like this: ```rust use packed_simd::*; use std::arch::x86_64::*; pub fn foo(x: __m128d) -> f64x2 { f64x2::from_bits(x) } ``` rust gives: ``` error[E0277]: the trait...

Bug

Starting with #225, it's probably a good long term goal to implement all hyperbolic and non-hyperbolic trigonometric functions: + [ ] `cosh` + [ ] `arccos` + [ ] `arccosh`...

Enhancement

Tracked upstream: https://github.com/rust-lang/rust/issues/52746

Bug

`vec::bitmask` produces incorrect results for 16-bit, 32-bit, and 64-bit wide vectors on mips and mips64 (both big endian), sparc64, and s390x. --- Error msg: ``` ---- v16::i8x2_bitmask::bitmask stdout ---- thread...

Bug
CI-Travis
A-SystemZ
A-Sparc64
A-MIPS
P-High
O-Linux

Currently we use shuffles for implementing vertical `byte_swap` but `llvm.bswap` works on vectors as well. We should investigate which method generates better code, use it, and fill LLVM bugs for...

Performance

Currently, `shuffle1_dyn` is a safe function, but if the index is out-of-bounds its behavior is undefined: it will `panic!` in some archs, and return an unspecified lane value in others...

Bug
Enhancement
Documentation

`[ui]8x8::trailing_zeros` will need a workaround until fixed. Reported to LLVM: https://bugs.llvm.org/show_bug.cgi?id=39729

A-AArch64
Blocked-LLVM