Combine vector definition modules by scalar type
This commit is contained in:
@@ -1,36 +1,35 @@
|
||||
#![no_std]
|
||||
#![feature(repr_simd)]
|
||||
#![warn(missing_docs)]
|
||||
|
||||
#[macro_use]
|
||||
mod macros;
|
||||
|
||||
macro_rules! import_types {
|
||||
{ $($mod:ident,)* } => {
|
||||
$(
|
||||
mod $mod;
|
||||
pub use $mod::*;
|
||||
)*
|
||||
}
|
||||
}
|
||||
|
||||
import_types! {
|
||||
type_u8x2, type_u8x4, type_u8x8, type_u8x16, type_u8x32, type_u8x64,
|
||||
type_i8x2, type_i8x4, type_i8x8, type_i8x16, type_i8x32, type_i8x64,
|
||||
type_u16x2, type_u16x4, type_u16x8, type_u16x16, type_u16x32,
|
||||
type_i16x2, type_i16x4, type_i16x8, type_i16x16, type_i16x32,
|
||||
type_u32x2, type_u32x4, type_u32x8, type_u32x16,
|
||||
type_i32x2, type_i32x4, type_i32x8, type_i32x16,
|
||||
type_u64x2, type_u64x4, type_u64x8,
|
||||
type_i64x2, type_i64x4, type_i64x8,
|
||||
type_u128x2, type_u128x4,
|
||||
type_i128x2, type_i128x4,
|
||||
}
|
||||
|
||||
import_types! {
|
||||
type_usizex2, type_usizex4, type_usizex8,
|
||||
type_isizex2, type_isizex4, type_isizex8,
|
||||
}
|
||||
|
||||
import_types! {
|
||||
type_f32x2, type_f32x4, type_f32x8, type_f32x16,
|
||||
type_f64x2, type_f64x4, type_f64x8,
|
||||
}
|
||||
mod vectors_u8;
|
||||
pub use vectors_u8::*;
|
||||
mod vectors_u16;
|
||||
pub use vectors_u16::*;
|
||||
mod vectors_u32;
|
||||
pub use vectors_u32::*;
|
||||
mod vectors_u64;
|
||||
pub use vectors_u64::*;
|
||||
mod vectors_u128;
|
||||
pub use vectors_u128::*;
|
||||
mod vectors_usize;
|
||||
pub use vectors_usize::*;
|
||||
mod vectors_i8;
|
||||
pub use vectors_i8::*;
|
||||
mod vectors_i16;
|
||||
pub use vectors_i16::*;
|
||||
mod vectors_i32;
|
||||
pub use vectors_i32::*;
|
||||
mod vectors_i64;
|
||||
pub use vectors_i64::*;
|
||||
mod vectors_i128;
|
||||
pub use vectors_i128::*;
|
||||
mod vectors_isize;
|
||||
pub use vectors_isize::*;
|
||||
mod vectors_f32;
|
||||
pub use vectors_f32::*;
|
||||
mod vectors_f64;
|
||||
pub use vectors_f64::*;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `f32` types"]
|
||||
struct f32x16([f32; 16]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f32x16 |bidirectional| core::arch::x86::__m512 }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f32x16 |bidirectional| core::arch::x86_64::__m512 }
|
||||
*/
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `f32` types"]
|
||||
struct f32x2([f32; 2]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `f32` types"]
|
||||
struct f32x4([f32; 4]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f32x4 |bidirectional| core::arch::x86::__m128 }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f32x4 |bidirectional| core::arch::x86_64::__m128 }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `f32` types"]
|
||||
struct f32x8([f32; 8]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f32x8 |bidirectional| core::arch::x86::__m256 }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f32x8 |bidirectional| core::arch::x86_64::__m256 }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `f64` types"]
|
||||
struct f64x2([f64; 2]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f64x2 |bidirectional| core::arch::x86::__m128d }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f64x2 |bidirectional| core::arch::x86_64::__m128d }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `f64` types"]
|
||||
struct f64x4([f64; 4]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f64x4 |bidirectional| core::arch::x86::__m256d }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f64x4 |bidirectional| core::arch::x86_64::__m256d }
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `f64` types"]
|
||||
struct f64x8([f64; 8]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f64x8 |bidirectional| core::arch::x86::__m512d }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f64x8 |bidirectional| core::arch::x86_64::__m512d }
|
||||
*/
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i128` types"]
|
||||
struct i128x2([i128; 2]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i128x2 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i128x2 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i128` types"]
|
||||
struct i128x4([i128; 4]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i128x4 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i128x4 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `i16` types"]
|
||||
struct i16x16([i16; 16]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i16x16 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i16x16 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i16` types"]
|
||||
struct i16x2([i16; 2]);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 32 `i16` types"]
|
||||
struct i16x32([i16; 32]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x32 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x32 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i16` types"]
|
||||
struct i16x4([i16; 4]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `i16` types"]
|
||||
struct i16x8([i16; 8]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i16x8 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i16x8 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `i32` types"]
|
||||
struct i32x16([i32; 16]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u32x16 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u32x16 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i32` types"]
|
||||
struct i32x2([i32; 2]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i32` types"]
|
||||
struct i32x4([i32; 4]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i32x4 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i32x4 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `i32` types"]
|
||||
struct i32x8([i32; 8]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i32x8 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i32x8 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i64` types"]
|
||||
struct i64x2([i64; 2]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i64x2 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i64x2 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i64` types"]
|
||||
struct i64x4([i64; 4]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i64x4 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i64x4 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `i64` types"]
|
||||
struct i64x8([i64; 8]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i64x8 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i64x8 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `i8` types"]
|
||||
struct i8x16([i8; 16]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i8x16 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i8x16 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i8` types"]
|
||||
struct i8x2([i8; 2]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 32 `i8` types"]
|
||||
struct i8x32([i8; 32]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i8x32 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i8x32 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i8` types"]
|
||||
struct i8x4([i8; 4]);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 64 `i8` types"]
|
||||
struct i8x64([i8; 64]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x64 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x64 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `i8` types"]
|
||||
struct i8x8([i8; 8]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `isize` types"]
|
||||
struct isizex2([isize; 2]);
|
||||
}
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex2 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex2 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,16 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `isize` types"]
|
||||
struct isizex4([isize; 4]);
|
||||
}
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe isizex4 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe isizex4 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex4 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex4 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,18 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `isize` types"]
|
||||
struct isizex8([isize; 8]);
|
||||
}
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe isizex8 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe isizex8 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex8 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex8 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u128` types"]
|
||||
struct u128x2([u128; 2]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u128x2 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u128x2 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u128` types"]
|
||||
struct u128x4([u128; 4]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u128x4 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u128x4 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `u16` types"]
|
||||
struct u16x16([u16; 16]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u16x16 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u16x16 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u16` types"]
|
||||
struct u16x2([u16; 2]);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 32 `u16` types"]
|
||||
struct u16x32([u16; 32]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u16x32 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u16x32 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u16` types"]
|
||||
struct u16x4([u16; 4]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `u16` types"]
|
||||
struct u16x8([u16; 8]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u16x8 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u16x8 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `u32` types"]
|
||||
struct u32x16([u32; 16]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u32x16 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u32x16 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u32` types"]
|
||||
struct u32x2([u32; 2]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u32` types"]
|
||||
struct u32x4([u32; 4]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u32x4 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u32x4 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `u32` types"]
|
||||
struct u32x8([u32; 8]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u32x8 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u32x8 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u64` types"]
|
||||
struct u64x2([u64; 2]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u64x2 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u64x2 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u64` types"]
|
||||
struct u64x4([u64; 4]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u64x4 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u64x4 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `u64` types"]
|
||||
struct u64x8([u64; 8]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u64x8 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u64x8 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `u8` types"]
|
||||
struct u8x16([u8; 16]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x16 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x16 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u8` types"]
|
||||
struct u8x2([u8; 2]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 32 `u8` types"]
|
||||
struct u8x32([u8; 32]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x32 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x32 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u8` types"]
|
||||
struct u8x4([u8; 4]);
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of 64 `u8` types"]
|
||||
struct u8x64([u8; 64]);
|
||||
}
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x64 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x64 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
@@ -1,4 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `u8` types"]
|
||||
struct u8x8([u8; 8]);
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `usize` types"]
|
||||
struct usizex2([usize; 2]);
|
||||
}
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex2 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex2 |bidirectional| core::arch::x86_64::__m128i }
|
||||
@@ -1,16 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of four `usize` types"]
|
||||
struct usizex4([usize; 4]);
|
||||
}
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe usizex4 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe usizex4 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex4 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex4 |bidirectional| core::arch::x86_64::__m256i }
|
||||
@@ -1,18 +0,0 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `usize` types"]
|
||||
struct usizex8([usize; 8]);
|
||||
}
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe usizex8 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe usizex8 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex8 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex8 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
39
crates/core_simd/src/vectors_f32.rs
Normal file
39
crates/core_simd/src/vectors_f32.rs
Normal file
@@ -0,0 +1,39 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `f32` values"]
|
||||
struct f32x2([f32; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `f32` values"]
|
||||
struct f32x4([f32; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `f32` values"]
|
||||
struct f32x8([f32; 8]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `f32` values"]
|
||||
struct f32x16([f32; 16]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f32x4 |bidirectional| core::arch::x86::__m128 }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f32x4 |bidirectional| core::arch::x86_64::__m128 }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f32x8 |bidirectional| core::arch::x86::__m256 }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f32x8 |bidirectional| core::arch::x86_64::__m256 }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f32x16 |bidirectional| core::arch::x86::__m512 }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f32x16 |bidirectional| core::arch::x86_64::__m512 }
|
||||
*/
|
||||
34
crates/core_simd/src/vectors_f64.rs
Normal file
34
crates/core_simd/src/vectors_f64.rs
Normal file
@@ -0,0 +1,34 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `f64` values"]
|
||||
struct f64x2([f64; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `f64` values"]
|
||||
struct f64x4([f64; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `f64` values"]
|
||||
struct f64x8([f64; 8]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f64x2 |bidirectional| core::arch::x86::__m128d }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f64x2 |bidirectional| core::arch::x86_64::__m128d }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f64x4 |bidirectional| core::arch::x86::__m256d }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f64x4 |bidirectional| core::arch::x86_64::__m256d }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe f64x8 |bidirectional| core::arch::x86::__m512d }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe f64x8 |bidirectional| core::arch::x86_64::__m512d }
|
||||
*/
|
||||
23
crates/core_simd/src/vectors_i128.rs
Normal file
23
crates/core_simd/src/vectors_i128.rs
Normal file
@@ -0,0 +1,23 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i128` values"]
|
||||
struct i128x2([i128; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i128` values"]
|
||||
struct i128x4([i128; 4]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i128x2 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i128x2 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i128x4 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i128x4 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
44
crates/core_simd/src/vectors_i16.rs
Normal file
44
crates/core_simd/src/vectors_i16.rs
Normal file
@@ -0,0 +1,44 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i16` values"]
|
||||
struct i16x2([i16; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i16` values"]
|
||||
struct i16x4([i16; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `i16` values"]
|
||||
struct i16x8([i16; 8]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `i16` values"]
|
||||
struct i16x16([i16; 16]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 32 `i16` values"]
|
||||
struct i16x32([i16; 32]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i16x8 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i16x8 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i16x16 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i16x16 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x32 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x32 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
39
crates/core_simd/src/vectors_i32.rs
Normal file
39
crates/core_simd/src/vectors_i32.rs
Normal file
@@ -0,0 +1,39 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i32` values"]
|
||||
struct i32x2([i32; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i32` values"]
|
||||
struct i32x4([i32; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `i32` values"]
|
||||
struct i32x8([i32; 8]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `i32` values"]
|
||||
struct i32x16([i32; 16]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i32x4 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i32x4 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i32x8 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i32x8 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u32x16 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u32x16 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
34
crates/core_simd/src/vectors_i64.rs
Normal file
34
crates/core_simd/src/vectors_i64.rs
Normal file
@@ -0,0 +1,34 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i64` values"]
|
||||
struct i64x2([i64; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i64` values"]
|
||||
struct i64x4([i64; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `i64` values"]
|
||||
struct i64x8([i64; 8]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i64x2 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i64x2 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i64x4 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i64x4 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i64x8 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i64x8 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
49
crates/core_simd/src/vectors_i8.rs
Normal file
49
crates/core_simd/src/vectors_i8.rs
Normal file
@@ -0,0 +1,49 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `i8` values"]
|
||||
struct i8x2([i8; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `i8` values"]
|
||||
struct i8x4([i8; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `i8` values"]
|
||||
struct i8x8([i8; 8]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `i8` values"]
|
||||
struct i8x16([i8; 16]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 32 `i8` values"]
|
||||
struct i8x32([i8; 32]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 64 `i8` values"]
|
||||
struct i8x64([i8; 64]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i8x16 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i8x16 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe i8x32 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe i8x32 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x64 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x64 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
46
crates/core_simd/src/vectors_isize.rs
Normal file
46
crates/core_simd/src/vectors_isize.rs
Normal file
@@ -0,0 +1,46 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `isize` values"]
|
||||
struct isizex2([isize; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `isize` values"]
|
||||
struct isizex4([isize; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `isize` values"]
|
||||
struct isizex8([isize; 8]);
|
||||
}
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe isizex4 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe isizex4 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe isizex8 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe isizex8 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex2 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex2 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex4 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex4 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex8 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe isizex8 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
23
crates/core_simd/src/vectors_u128.rs
Normal file
23
crates/core_simd/src/vectors_u128.rs
Normal file
@@ -0,0 +1,23 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u128` values"]
|
||||
struct u128x2([u128; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u128` values"]
|
||||
struct u128x4([u128; 4]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u128x2 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u128x2 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u128x4 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u128x4 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
44
crates/core_simd/src/vectors_u16.rs
Normal file
44
crates/core_simd/src/vectors_u16.rs
Normal file
@@ -0,0 +1,44 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u16` values"]
|
||||
struct u16x2([u16; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u16` values"]
|
||||
struct u16x4([u16; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `u16` values"]
|
||||
struct u16x8([u16; 8]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `u16` values"]
|
||||
struct u16x16([u16; 16]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 32 `u16` values"]
|
||||
struct u16x32([u16; 32]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u16x8 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u16x8 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u16x16 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u16x16 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u16x32 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u16x32 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
39
crates/core_simd/src/vectors_u32.rs
Normal file
39
crates/core_simd/src/vectors_u32.rs
Normal file
@@ -0,0 +1,39 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u32` values"]
|
||||
struct u32x2([u32; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u32` values"]
|
||||
struct u32x4([u32; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `u32` values"]
|
||||
struct u32x8([u32; 8]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `u32` values"]
|
||||
struct u32x16([u32; 16]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u32x4 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u32x4 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u32x8 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u32x8 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u32x16 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u32x16 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
34
crates/core_simd/src/vectors_u64.rs
Normal file
34
crates/core_simd/src/vectors_u64.rs
Normal file
@@ -0,0 +1,34 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u64` values"]
|
||||
struct u64x2([u64; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u64` values"]
|
||||
struct u64x4([u64; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `u64` values"]
|
||||
struct u64x8([u64; 8]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u64x2 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u64x2 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u64x4 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u64x4 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u64x8 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u64x8 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
49
crates/core_simd/src/vectors_u8.rs
Normal file
49
crates/core_simd/src/vectors_u8.rs
Normal file
@@ -0,0 +1,49 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `u8` values"]
|
||||
struct u8x2([u8; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `u8` values"]
|
||||
struct u8x4([u8; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `u8` values"]
|
||||
struct u8x8([u8; 8]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 16 `u8` values"]
|
||||
struct u8x16([u8; 16]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 32 `u8` values"]
|
||||
struct u8x32([u8; 32]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of 64 `u8` values"]
|
||||
struct u8x64([u8; 64]);
|
||||
}
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x16 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x16 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x32 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x32 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(target_arch = "x86")]
|
||||
from_aligned! { unsafe u8x64 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
from_aligned! { unsafe u8x64 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
46
crates/core_simd/src/vectors_usize.rs
Normal file
46
crates/core_simd/src/vectors_usize.rs
Normal file
@@ -0,0 +1,46 @@
|
||||
define_type! {
|
||||
#[doc = "Vector of two `usize` values"]
|
||||
struct usizex2([usize; 2]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of four `usize` values"]
|
||||
struct usizex4([usize; 4]);
|
||||
}
|
||||
|
||||
define_type! {
|
||||
#[doc = "Vector of eight `usize` values"]
|
||||
struct usizex8([usize; 8]);
|
||||
}
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe usizex4 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe usizex4 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe usizex8 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))]
|
||||
from_aligned! { unsafe usizex8 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex2 |bidirectional| core::arch::x86::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex2 |bidirectional| core::arch::x86_64::__m128i }
|
||||
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex4 |bidirectional| core::arch::x86::__m256i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex4 |bidirectional| core::arch::x86_64::__m256i }
|
||||
|
||||
/*
|
||||
#[cfg(all(target_arch = "x86", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex8 |bidirectional| core::arch::x86::__m512i }
|
||||
|
||||
#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
|
||||
from_aligned! { unsafe usizex8 |bidirectional| core::arch::x86_64::__m512i }
|
||||
*/
|
||||
Reference in New Issue
Block a user