Module relaxed_simd

Source
Available on target_family="wasm" only.

Re-exports§

pub use i8x16_relaxed_swizzle as u8x16_relaxed_swizzle;
pub use i8x16_relaxed_laneselect as u8x16_relaxed_laneselect;
pub use i16x8_relaxed_laneselect as u16x8_relaxed_laneselect;
pub use i32x4_relaxed_laneselect as u32x4_relaxed_laneselect;
pub use i64x2_relaxed_laneselect as u64x2_relaxed_laneselect;
pub use i16x8_relaxed_q15mulr as u16x8_relaxed_q15mulr;
pub use i16x8_relaxed_dot_i8x16_i7x16 as u16x8_relaxed_dot_i8x16_i7x16;
pub use i32x4_relaxed_dot_i8x16_i7x16_add as u32x4_relaxed_dot_i8x16_i7x16_add;

Functions§

f32x4_relaxed_maddrelaxed-simd
Computes a * b + c with either one rounding or two roundings.
f32x4_relaxed_maxrelaxed-simd
A relaxed version of f32x4_max which is either f32x4_max or f32x4_pmax.
f32x4_relaxed_minrelaxed-simd
A relaxed version of f32x4_min which is either f32x4_min or f32x4_pmin.
f32x4_relaxed_nmaddrelaxed-simd
Computes -a * b + c with either one rounding or two roundings.
f64x2_relaxed_maddrelaxed-simd
Computes a * b + c with either one rounding or two roundings.
f64x2_relaxed_maxrelaxed-simd
A relaxed version of f64x2_max which is either f64x2_max or f64x2_pmax.
f64x2_relaxed_minrelaxed-simd
A relaxed version of f64x2_min which is either f64x2_min or f64x2_pmin.
f64x2_relaxed_nmaddrelaxed-simd
Computes -a * b + c with either one rounding or two roundings.
i8x16_relaxed_laneselectrelaxed-simd
A relaxed version of v128_bitselect where this either behaves the same as v128_bitselect or the high bit of each lane m is inspected and the corresponding lane of a is chosen if the bit is 1 or the lane of b is chosen if it’s zero.
i8x16_relaxed_swizzlerelaxed-simd
A relaxed version of i8x16_swizzle(a, s) which selects lanes from a using indices in s.
i16x8_relaxed_dot_i8x16_i7x16relaxed-simd
A relaxed dot-product instruction.
i16x8_relaxed_laneselectrelaxed-simd
A relaxed version of v128_bitselect where this either behaves the same as v128_bitselect or the high bit of each lane m is inspected and the corresponding lane of a is chosen if the bit is 1 or the lane of b is chosen if it’s zero.
i16x8_relaxed_q15mulrrelaxed-simd
A relaxed version of i16x8_relaxed_q15mulr where if both lanes are i16::MIN then the result is either i16::MIN or i16::MAX.
i32x4_relaxed_dot_i8x16_i7x16_addrelaxed-simd
Similar to i16x8_relaxed_dot_i8x16_i7x16 except that the intermediate i16x8 result is fed into i32x4_extadd_pairwise_i16x8 followed by i32x4_add to add the value c to the result.
i32x4_relaxed_laneselectrelaxed-simd
A relaxed version of v128_bitselect where this either behaves the same as v128_bitselect or the high bit of each lane m is inspected and the corresponding lane of a is chosen if the bit is 1 or the lane of b is chosen if it’s zero.
i32x4_relaxed_trunc_f32x4relaxed-simd
A relaxed version of i32x4_trunc_sat_f32x4(a) converts the f32 lanes of a to signed 32-bit integers.
i32x4_relaxed_trunc_f64x2_zerorelaxed-simd
A relaxed version of i32x4_trunc_sat_f64x2_zero(a) converts the f64 lanes of a to signed 32-bit integers and the upper two lanes are zero.
i64x2_relaxed_laneselectrelaxed-simd
A relaxed version of v128_bitselect where this either behaves the same as v128_bitselect or the high bit of each lane m is inspected and the corresponding lane of a is chosen if the bit is 1 or the lane of b is chosen if it’s zero.
llvm_f32x4_fma 🔒
llvm_f32x4_fms 🔒
llvm_f32x4_relaxed_max 🔒
llvm_f32x4_relaxed_min 🔒
llvm_f64x2_fma 🔒
llvm_f64x2_fms 🔒
llvm_f64x2_relaxed_max 🔒
llvm_f64x2_relaxed_min 🔒
llvm_i8x16_laneselect 🔒
llvm_i16x8_laneselect 🔒
llvm_i16x8_relaxed_dot_i8x16_i7x16_s 🔒
llvm_i32x4_laneselect 🔒
llvm_i32x4_relaxed_dot_i8x16_i7x16_add_s 🔒
llvm_i64x2_laneselect 🔒
llvm_relaxed_q15mulr_signed 🔒
llvm_relaxed_swizzle 🔒
llvm_relaxed_trunc_signed 🔒
llvm_relaxed_trunc_signed_zero 🔒
llvm_relaxed_trunc_unsigned 🔒
llvm_relaxed_trunc_unsigned_zero 🔒
u32x4_relaxed_trunc_f32x4relaxed-simd
A relaxed version of u32x4_trunc_sat_f32x4(a) converts the f32 lanes of a to unsigned 32-bit integers.
u32x4_relaxed_trunc_f64x2_zerorelaxed-simd
A relaxed version of u32x4_trunc_sat_f64x2_zero(a) converts the f64 lanes of a to unsigned 32-bit integers and the upper two lanes are zero.