pub struct Arch;
Expand description
Implementations§
Source§impl Arch
§Functions not requiring any target feature.
impl Arch
§Functions not requiring any target feature.
Sourcepub fn byte_swap_i32(i: i32) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) only.
pub fn byte_swap_i32(i: i32) -> i32
dep_safe_arch
and (x86 or x86-64) only.Swap the bytes of the given 32-bit value.
See: byte_swap_i32
.
Sourcepub fn byte_swap_i64(i: i64) -> i64 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) only.
pub fn byte_swap_i64(i: i64) -> i64 ⓘ
dep_safe_arch
and (x86 or x86-64) only.Swap the bytes of the given 64-bit value.
See: byte_swap_i64
.
Sourcepub fn read_timestamp_counter() -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) only.
pub fn read_timestamp_counter() -> u64
dep_safe_arch
and (x86 or x86-64) only.Reads the CPU’s timestamp counter value.
See: read_timestamp_counter
.
Sourcepub fn read_timestamp_counter_p(aux: &mut u32) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) only.
pub fn read_timestamp_counter_p(aux: &mut u32) -> u64
dep_safe_arch
and (x86 or x86-64) only.Reads the CPU’s timestamp counter value and store the processor signature.
See: read_timestamp_counter_p
.
Source§impl Arch
impl Arch
Sourcepub fn add_carry_u32(c_in: u8, a: u32, b: u32, out: &mut u32) -> u8
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature adx
only.
pub fn add_carry_u32(c_in: u8, a: u32, b: u32, out: &mut u32) -> u8
dep_safe_arch
and (x86 or x86-64) and target feature adx
only.Add two u32
with a carry value.
See: add_carry_u32
.
Sourcepub fn add_carry_u64(c_in: u8, a: u64, b: u64, out: &mut u64) -> u8
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature adx
only.
pub fn add_carry_u64(c_in: u8, a: u64, b: u64, out: &mut u64) -> u8
dep_safe_arch
and (x86 or x86-64) and target feature adx
only.Add two u64
with a carry value.
See: add_carry_u64
.
Source§impl Arch
impl Arch
Sourcepub fn aes_decrypt_last_m128i(a: m128i, round_key: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature aes
only.
pub fn aes_decrypt_last_m128i(a: m128i, round_key: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature aes
only.Perform the last round of an AES decryption flow on a
using the round_key
.
See: aes_decrypt_last_m128i
.
Sourcepub fn aes_decrypt_m128i(a: m128i, round_key: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature aes
only.
pub fn aes_decrypt_m128i(a: m128i, round_key: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature aes
only.Perform one round of an AES decryption flow on a
using the round_key
.
See: aes_decrypt_m128i
.
Sourcepub fn aes_encrypt_last_m128i(a: m128i, round_key: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature aes
only.
pub fn aes_encrypt_last_m128i(a: m128i, round_key: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature aes
only.Perform the last round of an AES encryption flow on a
using the round_key
.
See: aes_encrypt_last_m128i
.
Sourcepub fn aes_encrypt_m128i(a: m128i, round_key: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature aes
only.
pub fn aes_encrypt_m128i(a: m128i, round_key: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature aes
only.Perform one round of an AES encryption flow on a
using the round_key
.
See: aes_encrypt_m128i
.
Sourcepub fn aes_inv_mix_columns_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature aes
only.
pub fn aes_inv_mix_columns_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature aes
only.Perform the InvMixColumns transform on a
.
Sourcepub fn aes_key_gen_assist_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature aes
only.
pub fn aes_key_gen_assist_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature aes
only.Assist in expanding an AES cipher key.
See: aes_key_gen_assist_m128i
.
Source§impl Arch
§Functions requiring the avx
target feature.
See: https://en.wikipedia.org/wiki/Advanced_Vector_Extensions
impl Arch
§Functions requiring the avx
target feature.
See: https://en.wikipedia.org/wiki/Advanced_Vector_Extensions
Sourcepub fn add_horizontal_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn add_horizontal_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Add adjacent f32
lanes.
See: add_horizontal_m256
.
Sourcepub fn add_horizontal_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn add_horizontal_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Add adjacent f64
lanes.
See: add_horizontal_m256d
.
Sourcepub fn add_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn add_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise a + b
with f32
lanes.
See: add_m256
.
Sourcepub fn add_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn add_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise a + b
with f64
lanes.
See: add_m256d
.
Sourcepub fn addsub_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn addsub_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Alternately, from the top, add f32
then sub f32
.
See: addsub_m256
.
Sourcepub fn addsub_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn addsub_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Alternately, from the top, add f64
then sub f64
.
See: addsub_m256d
.
Sourcepub fn bitand_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn bitand_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bitwise a & b
.
See: bitand_m256
.
Sourcepub fn bitand_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn bitand_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bitwise a & b
.
See: bitand_m256d
.
Sourcepub fn bitandnot_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn bitandnot_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bitwise (!a) & b
.
See: bitandnot_m256
.
Sourcepub fn bitandnot_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn bitandnot_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bitwise (!a) & b
.
See: bitandnot_m256d
.
Sourcepub fn bitor_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn bitor_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bitwise a | b
.
See: bitor_m256
.
Sourcepub fn bitor_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn bitor_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bitwise a | b
.
See: bitor_m256d
.
Sourcepub fn bitxor_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn bitxor_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bitwise a ^ b
.
See: bitxor_m256
.
Sourcepub fn bitxor_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn bitxor_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bitwise a ^ b
.
See: bitxor_m256d
.
Sourcepub fn blend_m256<const IMM: i32>(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn blend_m256<const IMM: i32>(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Blends the f32
lanes according to the immediate mask.
See: blend_m256
.
Sourcepub fn blend_m256d<const IMM: i32>(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn blend_m256d<const IMM: i32>(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Blends the f64
lanes according to the immediate mask.
See: blend_m256d
.
Sourcepub fn blend_varying_m256(a: m256, b: m256, mask: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn blend_varying_m256(a: m256, b: m256, mask: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Blend the lanes according to a runtime varying mask.
See: blend_varying_m256
.
Sourcepub fn blend_varying_m256d(a: m256d, b: m256d, mask: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn blend_varying_m256d(a: m256d, b: m256d, mask: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Blend the lanes according to a runtime varying mask.
See: blend_varying_m256d
.
Sourcepub fn cast_to_m128_from_m256(a: m256) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m128_from_m256(a: m256) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m128
from m256
.
See: cast_to_m128_from_m256
.
Sourcepub fn cast_to_m128d_from_m256d(a: m256d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m128d_from_m256d(a: m256d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m128d
from m256d
.
See: cast_to_m128d_from_m256d
.
Sourcepub fn cast_to_m128i_from_m256i(a: m256i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m128i_from_m256i(a: m256i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m128i
from m256i
.
See: cast_to_m128i_from_m256i
.
Sourcepub fn cast_to_m256_from_m256d(a: m256d) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m256_from_m256d(a: m256d) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m256
from m256d
.
See: cast_to_m256_from_m256d
.
Sourcepub fn cast_to_m256_from_m256i(a: m256i) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m256_from_m256i(a: m256i) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m256
from m256i
.
See: cast_to_m256_from_m256i
.
Sourcepub fn cast_to_m256d_from_m256(a: m256) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m256d_from_m256(a: m256) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m256i
from m256
.
See: cast_to_m256d_from_m256
.
Sourcepub fn cast_to_m256d_from_m256i(a: m256i) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m256d_from_m256i(a: m256i) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m256d
from m256i
.
See: cast_to_m256d_from_m256i
.
Sourcepub fn cast_to_m256i_from_m256(a: m256) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m256i_from_m256(a: m256) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m256i
from m256
.
See: cast_to_m256i_from_m256
.
Sourcepub fn cast_to_m256i_from_m256d(a: m256d) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cast_to_m256i_from_m256d(a: m256d) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Bit-preserving cast to m256i
from m256d
.
See: cast_to_m256i_from_m256d
.
Sourcepub fn ceil_m256(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn ceil_m256(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Round f32
lanes towards positive infinity.
See: ceil_m256
.
Sourcepub fn ceil_m256d(a: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn ceil_m256d(a: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Round f64
lanes towards positive infinity.
See: ceil_m256d
.
Sourcepub fn cmp_op_mask_m128<const OP: i32>(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cmp_op_mask_m128<const OP: i32>(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compare f32
lanes according to the operation specified, mask output.
See: cmp_op_mask_m128
.
Sourcepub fn cmp_op_mask_m128_s<const OP: i32>(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cmp_op_mask_m128_s<const OP: i32>(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compare f32
lanes according to the operation specified, mask output.
See: cmp_op_mask_m128_s
.
Sourcepub fn cmp_op_mask_m128d<const OP: i32>(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cmp_op_mask_m128d<const OP: i32>(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compare f64
lanes according to the operation specified, mask output.
See: cmp_op_mask_m128d
.
Sourcepub fn cmp_op_mask_m128d_s<const OP: i32>(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cmp_op_mask_m128d_s<const OP: i32>(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compare f64
lanes according to the operation specified, mask output.
See: cmp_op_mask_m128d_s
.
Sourcepub fn cmp_op_mask_m256<const OP: i32>(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cmp_op_mask_m256<const OP: i32>(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compare f32
lanes according to the operation specified, mask output.
See: cmp_op_mask_m256
.
Sourcepub fn cmp_op_mask_m256d<const OP: i32>(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn cmp_op_mask_m256d<const OP: i32>(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compare f64
lanes according to the operation specified, mask output.
See: cmp_op_mask_m256d
.
Sourcepub fn convert_to_f32_from_m256_s(a: m256) -> f32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_f32_from_m256_s(a: m256) -> f32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert the lowest f32
lane to a single f32
.
Sourcepub fn convert_to_f64_from_m256d_s(a: m256d) -> f64 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_f64_from_m256d_s(a: m256d) -> f64 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert the lowest f64
lane to a single f64
.
Sourcepub fn convert_to_i32_from_m256i_s(a: m256i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_i32_from_m256i_s(a: m256i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert the lowest i32
lane to a single i32
.
Sourcepub fn convert_to_i32_m128i_from_m256d(a: m256d) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_i32_m128i_from_m256d(a: m256d) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert f64
lanes to be i32
lanes.
Sourcepub fn convert_to_i32_m256i_from_m256(a: m256) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_i32_m256i_from_m256(a: m256) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert f32
lanes to be i32
lanes.
Sourcepub fn convert_to_m128_from_m256d(a: m256d) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_m128_from_m256d(a: m256d) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert f64
lanes to be f32
lanes.
Sourcepub fn convert_to_m256_from_i32_m256i(a: m256i) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_m256_from_i32_m256i(a: m256i) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert i32
lanes to be f32
lanes.
Sourcepub fn convert_to_m256d_from_i32_m128i(a: m128i) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_m256d_from_i32_m128i(a: m128i) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert i32
lanes to be f64
lanes.
Sourcepub fn convert_to_m256d_from_m128(a: m128) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_to_m256d_from_m128(a: m128) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert f32
lanes to be f64
lanes.
Sourcepub fn convert_truncate_to_i32_m128i_from_m256d(a: m256d) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_truncate_to_i32_m128i_from_m256d(a: m256d) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert f64
lanes to i32
lanes with truncation.
Sourcepub fn convert_truncate_to_i32_m256i_from_m256(a: m256) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn convert_truncate_to_i32_m256i_from_m256(a: m256) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Convert f32
lanes to i32
lanes with truncation.
Sourcepub fn div_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn div_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise a / b
with f32
.
See: div_m256
.
Sourcepub fn div_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn div_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise a / b
with f64
.
See: div_m256d
.
Sourcepub fn dot_product_m256<const IMM: i32>(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn dot_product_m256<const IMM: i32>(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.This works like dot_product_m128
, but twice as wide.
See: dot_product_m256
.
Sourcepub fn duplicate_even_lanes_m256(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn duplicate_even_lanes_m256(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Duplicate the even-indexed lanes to the odd lanes.
Sourcepub fn duplicate_odd_lanes_m256(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn duplicate_odd_lanes_m256(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Duplicate the odd-indexed lanes to the even lanes.
See: duplicate_odd_lanes_m256
.
Sourcepub fn duplicate_odd_lanes_m256d(a: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn duplicate_odd_lanes_m256d(a: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Duplicate the odd-indexed lanes to the even lanes.
Sourcepub fn extract_i32_from_m256i<const IMM: i32>(a: m256i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn extract_i32_from_m256i<const IMM: i32>(a: m256i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Extracts an i32
lane from m256i
See: extract_i32_from_m256i
.
Sourcepub fn extract_i64_from_m256i<const IMM: i32>(a: m256i) -> i64 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn extract_i64_from_m256i<const IMM: i32>(a: m256i) -> i64 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Extracts an i64
lane from m256i
See: extract_i64_from_m256i
.
Sourcepub fn extract_m128_from_m256<const IMM: i32>(a: m256) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn extract_m128_from_m256<const IMM: i32>(a: m256) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Extracts an m128
from m256
See: extract_m128_from_m256
.
Sourcepub fn extract_m128d_from_m256d<const IMM: i32>(a: m256d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn extract_m128d_from_m256d<const IMM: i32>(a: m256d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Extracts an m128d
from m256d
See: extract_m128d_from_m256d
.
Sourcepub fn extract_m128i_from_m256i<const IMM: i32>(a: m256i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn extract_m128i_from_m256i<const IMM: i32>(a: m256i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Extracts an m128i
from m256i
See: extract_m128i_from_m256i
.
Sourcepub fn floor_m256(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn floor_m256(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Round f32
lanes towards negative infinity.
See: floor_m256
.
Sourcepub fn floor_m256d(a: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn floor_m256d(a: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Round f64
lanes towards negative infinity.
See: floor_m256d
.
Sourcepub fn insert_i16_to_m256i<const IMM: i32>(a: m256i, i: i16) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn insert_i16_to_m256i<const IMM: i32>(a: m256i, i: i16) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Inserts an i16
to m256i
See: insert_i16_to_m256i
.
Sourcepub fn insert_i32_to_m256i<const IMM: i32>(a: m256i, i: i32) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn insert_i32_to_m256i<const IMM: i32>(a: m256i, i: i32) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Inserts an i32
to m256i
See: insert_i32_to_m256i
.
Sourcepub fn insert_i64_to_m256i<const IMM: i32>(a: m256i, i: i64) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn insert_i64_to_m256i<const IMM: i32>(a: m256i, i: i64) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Inserts an i64
to m256i
See: insert_i64_to_m256i
.
Sourcepub fn insert_i8_to_m256i<const IMM: i32>(a: m256i, i: i8) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn insert_i8_to_m256i<const IMM: i32>(a: m256i, i: i8) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Inserts an i8
to m256i
See: insert_i8_to_m256i
.
Sourcepub fn insert_m128_to_m256<const IMM: i32>(a: m256, b: m128) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn insert_m128_to_m256<const IMM: i32>(a: m256, b: m128) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Inserts an m128
to m256
See: insert_m128_to_m256
.
Sourcepub fn insert_m128d_to_m256d<const IMM: i32>(a: m256d, b: m128d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn insert_m128d_to_m256d<const IMM: i32>(a: m256d, b: m128d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Inserts an m128d
to m256d
See: insert_m128d_to_m256d
.
Sourcepub fn insert_m128i_to_m256i_slow_avx<const IMM: i32>(
a: m256i,
b: m128i,
) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn insert_m128i_to_m256i_slow_avx<const IMM: i32>( a: m256i, b: m128i, ) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Slowly inserts an m128i
to m256i
.
Sourcepub fn load_f32_splat_m256(a: &f32) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_f32_splat_m256(a: &f32) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load an f32
and splat it to all lanes of an m256d
See: load_f32_splat_m256
.
Sourcepub fn load_f64_splat_m256d(a: &f64) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_f64_splat_m256d(a: &f64) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load an f64
and splat it to all lanes of an m256d
See: load_f64_splat_m256d
.
Sourcepub fn load_m128_splat_m256(a: &m128) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_m128_splat_m256(a: &m128) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load an m128
and splat it to the lower and upper half of an m256
See: load_m128_splat_m256
.
Sourcepub fn load_m128d_splat_m256d(a: &m128d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_m128d_splat_m256d(a: &m128d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load an m128d
and splat it to the lower and upper half of an m256d
See: load_m128d_splat_m256d
.
Sourcepub fn load_m256(a: &m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_m256(a: &m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
See: load_m256
.
Sourcepub fn load_m256d(a: &m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_m256d(a: &m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
See: load_m256d
.
Sourcepub fn load_m256i(a: &m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_m256i(a: &m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
See: load_m256i
.
Sourcepub fn load_masked_m128(a: &m128, mask: m128i) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_masked_m128(a: &m128, mask: m128i) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register according to a mask.
See: load_masked_m128
.
Sourcepub fn load_masked_m128d(a: &m128d, mask: m128i) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_masked_m128d(a: &m128d, mask: m128i) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register according to a mask.
See: load_masked_m128d
.
Sourcepub fn load_masked_m256(a: &m256, mask: m256i) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_masked_m256(a: &m256, mask: m256i) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register according to a mask.
See: load_masked_m256
.
Sourcepub fn load_masked_m256d(a: &m256d, mask: m256i) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_masked_m256d(a: &m256d, mask: m256i) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register according to a mask.
See: load_masked_m256d
.
Sourcepub fn load_unaligned_hi_lo_m256(a: &[f32; 4], b: &[f32; 4]) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_unaligned_hi_lo_m256(a: &[f32; 4], b: &[f32; 4]) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
Sourcepub fn load_unaligned_hi_lo_m256d(a: &[f64; 2], b: &[f64; 2]) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_unaligned_hi_lo_m256d(a: &[f64; 2], b: &[f64; 2]) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
Sourcepub fn load_unaligned_hi_lo_m256i(a: &[i8; 16], b: &[i8; 16]) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_unaligned_hi_lo_m256i(a: &[i8; 16], b: &[i8; 16]) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
Sourcepub fn load_unaligned_m256(a: &[f32; 8]) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_unaligned_m256(a: &[f32; 8]) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
See: load_unaligned_m256
.
Sourcepub fn load_unaligned_m256d(a: &[f64; 4]) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_unaligned_m256d(a: &[f64; 4]) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
See: load_unaligned_m256d
.
Sourcepub fn load_unaligned_m256i(a: &[i8; 32]) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn load_unaligned_m256i(a: &[i8; 32]) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Load data from memory into a register.
See: load_unaligned_m256i
.
Sourcepub fn max_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn max_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise max(a, b)
.
See: max_m256
.
Sourcepub fn max_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn max_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise max(a, b)
.
See: max_m256d
.
Sourcepub fn min_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn min_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise min(a, b)
.
See: min_m256
.
Sourcepub fn min_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn min_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise min(a, b)
.
See: min_m256d
.
Sourcepub fn move_mask_m256(a: m256) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn move_mask_m256(a: m256) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Collects the sign bit of each lane into a 4-bit value.
See: move_mask_m256
.
Sourcepub fn move_mask_m256d(a: m256d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn move_mask_m256d(a: m256d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Collects the sign bit of each lane into a 4-bit value.
See: move_mask_m256d
.
Sourcepub fn mul_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn mul_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise a * b
with f32
lanes.
See: mul_m256
.
Sourcepub fn mul_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn mul_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise a * b
with f64
lanes.
See: mul_m256d
.
Sourcepub fn permute2z_m256<const MASK: i32>(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn permute2z_m256<const MASK: i32>(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle 128 bits of floating point data at a time from $a
and $b
using
an immediate control value.
See: permute2z_m256
.
Sourcepub fn permute2z_m256d<const MASK: i32>(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn permute2z_m256d<const MASK: i32>(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle 128 bits of floating point data at a time from a
and b
using an
immediate control value.
See: permute2z_m256d
.
Sourcepub fn permute2z_m256i<const MASK: i32>(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn permute2z_m256i<const MASK: i32>(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Slowly swizzle 128 bits of integer data from a
and b
using an
immediate control value.
See: permute2z_m256i
.
Sourcepub fn permute_m128<const MASK: i32>(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn permute_m128<const MASK: i32>(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle the f32
lanes from a
using an immediate control value.
See: permute_m128
.
Sourcepub fn permute_m128d<const MASK: i32>(a: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn permute_m128d<const MASK: i32>(a: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle the f64
lanes in a
using an immediate control value.
See: permute_m128d
.
Sourcepub fn permute_m256<const MASK: i32>(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn permute_m256<const MASK: i32>(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle the f32
lanes in a
using an immediate control value.
See: permute_m256
.
Sourcepub fn permute_m256d<const MASK: i32>(a: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn permute_m256d<const MASK: i32>(a: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle the f64
lanes from a
together using an immediate control value.
See: permute_m256d
.
Sourcepub fn reciprocal_m256(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn reciprocal_m256(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Reciprocal of f32
lanes.
See: reciprocal_m256
.
Sourcepub fn reciprocal_sqrt_m256(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn reciprocal_sqrt_m256(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Reciprocal of f32
lanes.
See: reciprocal_sqrt_m256
.
Sourcepub fn round_m256<const OP: i32>(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn round_m256<const OP: i32>(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Rounds each lane in the style specified.
See: round_m256
.
Sourcepub fn round_m256d<const OP: i32>(a: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn round_m256d<const OP: i32>(a: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Rounds each lane in the style specified.
See: round_m256d
.
Sourcepub fn set_i16_m256i(
e15: i16,
e14: i16,
e13: i16,
e12: i16,
e11: i16,
e10: i16,
e9: i16,
e8: i16,
e7: i16,
e6: i16,
e5: i16,
e4: i16,
e3: i16,
e2: i16,
e1: i16,
e0: i16,
) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_i16_m256i( e15: i16, e14: i16, e13: i16, e12: i16, e11: i16, e10: i16, e9: i16, e8: i16, e7: i16, e6: i16, e5: i16, e4: i16, e3: i16, e2: i16, e1: i16, e0: i16, ) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set i16
args into an m256i
lane.
See: set_i16_m256i
.
Sourcepub fn set_i32_m256i(
e7: i32,
e6: i32,
e5: i32,
e4: i32,
e3: i32,
e2: i32,
e1: i32,
e0: i32,
) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_i32_m256i( e7: i32, e6: i32, e5: i32, e4: i32, e3: i32, e2: i32, e1: i32, e0: i32, ) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set i32
args into an m256i
lane.
See: set_i32_m256i
.
Sourcepub fn set_i64_m256i(e3: i64, e2: i64, e1: i64, e0: i64) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_i64_m256i(e3: i64, e2: i64, e1: i64, e0: i64) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set i64
args into an m256i
lane.
See: set_i64_m256i
.
Sourcepub fn set_i8_m256i(
e31: i8,
e30: i8,
e29: i8,
e28: i8,
e27: i8,
e26: i8,
e25: i8,
e24: i8,
e23: i8,
e22: i8,
e21: i8,
e20: i8,
e19: i8,
e18: i8,
e17: i8,
e16: i8,
e15: i8,
e14: i8,
e13: i8,
e12: i8,
e11: i8,
e10: i8,
e9: i8,
e8: i8,
e7: i8,
e6: i8,
e5: i8,
e4: i8,
e3: i8,
e2: i8,
e1: i8,
e0: i8,
) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_i8_m256i( e31: i8, e30: i8, e29: i8, e28: i8, e27: i8, e26: i8, e25: i8, e24: i8, e23: i8, e22: i8, e21: i8, e20: i8, e19: i8, e18: i8, e17: i8, e16: i8, e15: i8, e14: i8, e13: i8, e12: i8, e11: i8, e10: i8, e9: i8, e8: i8, e7: i8, e6: i8, e5: i8, e4: i8, e3: i8, e2: i8, e1: i8, e0: i8, ) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set i8
args into an m256i
lane.
See: set_i8_m256i
.
Sourcepub fn set_m128_m256(high: m128, low: m128) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_m128_m256(high: m128, low: m128) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set m128
args into an m256
.
See: set_m128_m256
.
Sourcepub fn set_m128d_m256d(high: m128d, low: m128d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_m128d_m256d(high: m128d, low: m128d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set m128d
args into an m256d
.
See: set_m128d_m256d
.
Sourcepub fn set_m128i_m256i(hi: m128i, lo: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_m128i_m256i(hi: m128i, lo: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set m128i
args into an m256i
.
See: set_m128i_m256i
.
Sourcepub fn set_m256(
e7: f32,
e6: f32,
e5: f32,
e4: f32,
e3: f32,
e2: f32,
e1: f32,
e0: f32,
) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_m256( e7: f32, e6: f32, e5: f32, e4: f32, e3: f32, e2: f32, e1: f32, e0: f32, ) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set f32
args into an m256
lane.
See: set_m256
.
Sourcepub fn set_m256d(e3: f64, e2: f64, e1: f64, e0: f64) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_m256d(e3: f64, e2: f64, e1: f64, e0: f64) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set f64
args into an m256d
lane.
See: set_m256d
.
Sourcepub fn set_reversed_i16_m256i(
e15: i16,
e14: i16,
e13: i16,
e12: i16,
e11: i16,
e10: i16,
e9: i16,
e8: i16,
e7: i16,
e6: i16,
e5: i16,
e4: i16,
e3: i16,
e2: i16,
e1: i16,
e0: i16,
) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_i16_m256i( e15: i16, e14: i16, e13: i16, e12: i16, e11: i16, e10: i16, e9: i16, e8: i16, e7: i16, e6: i16, e5: i16, e4: i16, e3: i16, e2: i16, e1: i16, e0: i16, ) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set i16
args into an m256i
lane.
See: set_reversed_i16_m256i
.
Sourcepub fn set_reversed_i32_m256i(
e7: i32,
e6: i32,
e5: i32,
e4: i32,
e3: i32,
e2: i32,
e1: i32,
e0: i32,
) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_i32_m256i( e7: i32, e6: i32, e5: i32, e4: i32, e3: i32, e2: i32, e1: i32, e0: i32, ) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set i32
args into an m256i
lane.
See: set_reversed_i32_m256i
.
Sourcepub fn set_reversed_i64_m256i(e3: i64, e2: i64, e1: i64, e0: i64) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_i64_m256i(e3: i64, e2: i64, e1: i64, e0: i64) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set i64
args into an m256i
lane.
See: set_reversed_i64_m256i
.
Sourcepub fn set_reversed_i8_m256i(
e31: i8,
e30: i8,
e29: i8,
e28: i8,
e27: i8,
e26: i8,
e25: i8,
e24: i8,
e23: i8,
e22: i8,
e21: i8,
e20: i8,
e19: i8,
e18: i8,
e17: i8,
e16: i8,
e15: i8,
e14: i8,
e13: i8,
e12: i8,
e11: i8,
e10: i8,
e9: i8,
e8: i8,
e7: i8,
e6: i8,
e5: i8,
e4: i8,
e3: i8,
e2: i8,
e1: i8,
e0: i8,
) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_i8_m256i( e31: i8, e30: i8, e29: i8, e28: i8, e27: i8, e26: i8, e25: i8, e24: i8, e23: i8, e22: i8, e21: i8, e20: i8, e19: i8, e18: i8, e17: i8, e16: i8, e15: i8, e14: i8, e13: i8, e12: i8, e11: i8, e10: i8, e9: i8, e8: i8, e7: i8, e6: i8, e5: i8, e4: i8, e3: i8, e2: i8, e1: i8, e0: i8, ) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set i8
args into an m256i
lane.
See: set_reversed_i8_m256i
.
Sourcepub fn set_reversed_m128_m256(hi: m128, lo: m128) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_m128_m256(hi: m128, lo: m128) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set m128
args into an m256
.
See: set_reversed_m128_m256
.
Sourcepub fn set_reversed_m128d_m256d(hi: m128d, lo: m128d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_m128d_m256d(hi: m128d, lo: m128d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set m128d
args into an m256d
.
See: set_reversed_m128d_m256d
.
Sourcepub fn set_reversed_m128i_m256i(hi: m128i, lo: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_m128i_m256i(hi: m128i, lo: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set m128i
args into an m256i
.
See: set_reversed_m128i_m256i
.
Sourcepub fn set_reversed_m256(
e7: f32,
e6: f32,
e5: f32,
e4: f32,
e3: f32,
e2: f32,
e1: f32,
e0: f32,
) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_m256( e7: f32, e6: f32, e5: f32, e4: f32, e3: f32, e2: f32, e1: f32, e0: f32, ) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set f32
args into an m256
lane.
See: set_reversed_m256
.
Sourcepub fn set_reversed_m256d(e3: f64, e2: f64, e1: f64, e0: f64) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_reversed_m256d(e3: f64, e2: f64, e1: f64, e0: f64) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Set f64
args into an m256d
lane.
See: set_reversed_m256d
.
Sourcepub fn set_splat_i16_m256i(i: i16) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_splat_i16_m256i(i: i16) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Splat an i16
arg into an m256i
lane.
See: set_splat_i16_m256i
.
Sourcepub fn set_splat_i32_m256i(i: i32) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_splat_i32_m256i(i: i32) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Splat an i32
arg into an m256i
lane.
See: set_splat_i32_m256i
.
Sourcepub fn set_splat_i64_m256i(i: i64) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_splat_i64_m256i(i: i64) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Splat an i64
arg into an m256i
lane.
See: set_splat_i64_m256i
.
Sourcepub fn set_splat_i8_m256i(i: i8) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_splat_i8_m256i(i: i8) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Splat an i8
arg into an m256i
lane.
See: set_splat_i8_m256i
.
Sourcepub fn set_splat_m256(f: f32) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_splat_m256(f: f32) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Splat an f32
arg into an m256
lane.
See: set_splat_m256
.
Sourcepub fn set_splat_m256d(f: f64) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn set_splat_m256d(f: f64) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Splat an f64
arg into an m256d
lane.
See: set_splat_m256d
.
Sourcepub fn shuffle_av_f32_all_m128(a: m128, v: m128i) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn shuffle_av_f32_all_m128(a: m128, v: m128i) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle f32
values in a
using i32
values in v
.
See: shuffle_av_f32_all_m128
.
Sourcepub fn shuffle_av_f32_half_m256(a: m256, v: m256i) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn shuffle_av_f32_half_m256(a: m256, v: m256i) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle f32
values in a
using i32
values in v
.
See: shuffle_av_f32_half_m256
.
Sourcepub fn shuffle_av_f64_all_m128d(a: m128d, v: m128i) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn shuffle_av_f64_all_m128d(a: m128d, v: m128i) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle f64
lanes in a
using bit 1 of the i64
lanes in v
See: shuffle_av_f64_all_m128d
.
Sourcepub fn shuffle_av_f64_half_m256d(a: m256d, b: m256i) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn shuffle_av_f64_half_m256d(a: m256d, b: m256i) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle f64
lanes in a
using bit 1 of the i64
lanes in v
.
Sourcepub fn shuffle_m256<const IMM: i32>(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn shuffle_m256<const IMM: i32>(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle the f32
lanes from a
and b
together using an immediate control value.
See: shuffle_m256
.
Sourcepub fn shuffle_m256d<const IMM: i32>(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn shuffle_m256d<const IMM: i32>(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Shuffle the f64
lanes from a
and b
together using an immediate control value.
See: shuffle_m256d
.
Sourcepub fn sqrt_m256(a: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn sqrt_m256(a: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise sqrt
on f64
lanes.
See: sqrt_m256
.
Sourcepub fn sqrt_m256d(a: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn sqrt_m256d(a: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise sqrt
on f64
lanes.
See: sqrt_m256d
.
Sourcepub fn store_m256(addr: &mut m256, a: m256)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_m256(addr: &mut m256, a: m256)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
See: store_m256
.
Sourcepub fn store_m256d(addr: &mut m256d, a: m256d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_m256d(addr: &mut m256d, a: m256d)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
See: store_m256d
.
Sourcepub fn store_m256i(addr: &mut m256i, a: m256i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_m256i(addr: &mut m256i, a: m256i)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
See: store_m256i
.
Sourcepub fn store_masked_m128(addr: &mut m128, mask: m128i, a: m128)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_masked_m128(addr: &mut m128, mask: m128i, a: m128)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory according to a mask.
See: store_masked_m128
.
Sourcepub fn store_masked_m128d(addr: &mut m128d, mask: m128i, a: m128d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_masked_m128d(addr: &mut m128d, mask: m128i, a: m128d)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory according to a mask.
See: store_masked_m128d
.
Sourcepub fn store_masked_m256(addr: &mut m256, mask: m256i, a: m256)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_masked_m256(addr: &mut m256, mask: m256i, a: m256)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory according to a mask.
See: store_masked_m256
.
Sourcepub fn store_masked_m256d(addr: &mut m256d, mask: m256i, a: m256d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_masked_m256d(addr: &mut m256d, mask: m256i, a: m256d)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory according to a mask.
See: store_masked_m256d
.
Sourcepub fn store_unaligned_hi_lo_m256(
hi_addr: &mut [f32; 4],
lo_addr: &mut [f32; 4],
a: m256,
)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_unaligned_hi_lo_m256( hi_addr: &mut [f32; 4], lo_addr: &mut [f32; 4], a: m256, )
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
Sourcepub fn store_unaligned_hi_lo_m256d(
hi_addr: &mut [f64; 2],
lo_addr: &mut [f64; 2],
a: m256d,
)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_unaligned_hi_lo_m256d( hi_addr: &mut [f64; 2], lo_addr: &mut [f64; 2], a: m256d, )
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
Sourcepub fn store_unaligned_hi_lo_m256i(
hi_addr: &mut [i8; 16],
lo_addr: &mut [i8; 16],
a: m256i,
)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_unaligned_hi_lo_m256i( hi_addr: &mut [i8; 16], lo_addr: &mut [i8; 16], a: m256i, )
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
Sourcepub fn store_unaligned_m256(addr: &mut [f32; 8], a: m256)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_unaligned_m256(addr: &mut [f32; 8], a: m256)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
See: store_unaligned_m256
.
Sourcepub fn store_unaligned_m256d(addr: &mut [f64; 4], a: m256d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_unaligned_m256d(addr: &mut [f64; 4], a: m256d)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
See: store_unaligned_m256d
.
Sourcepub fn store_unaligned_m256i(addr: &mut [i8; 32], a: m256i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn store_unaligned_m256i(addr: &mut [i8; 32], a: m256i)
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Store data from a register into memory.
See: store_unaligned_m256i
.
Sourcepub fn sub_horizontal_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn sub_horizontal_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Subtract adjacent f32
lanes.
See: sub_horizontal_m256
.
Sourcepub fn sub_horizontal_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn sub_horizontal_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Subtract adjacent f64
lanes.
See: sub_horizontal_m256d
.
Sourcepub fn sub_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn sub_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise a - b
with f32
lanes.
See: sub_m256
.
Sourcepub fn sub_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn sub_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Lanewise a - b
with f64
lanes.
See: sub_m256d
.
Sourcepub fn testc_m128(a: m128, b: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testc_m128(a: m128, b: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compute the bitwise of sign bit NOT of a
and then AND with b
,
returns 1 if the result is zero, otherwise 0.
See: testc_m128
.
Sourcepub fn testc_m128d(a: m128d, b: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testc_m128d(a: m128d, b: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compute the bitwise of sign bit NOT of a
and then AND with b
,
returns 1 if the result is zero, otherwise 0.
See: testc_m128d
.
Sourcepub fn testc_m256(a: m256, b: m256) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testc_m256(a: m256, b: m256) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compute the bitwise of sign bit NOT of a
and then AND with b
,
returns 1 if the result is zero, otherwise 0.
See: testc_m256
.
Sourcepub fn testc_m256d(a: m256d, b: m256d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testc_m256d(a: m256d, b: m256d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compute the bitwise of sign bit NOT of a
and then AND with b
,
returns 1 if the result is zero, otherwise 0.
See: testc_m256d
.
Sourcepub fn testc_m256i(a: m256i, b: m256i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testc_m256i(a: m256i, b: m256i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Compute the bitwise NOT of a
and then AND with b
,
returns 1 if the result is zero, otherwise 0.
See: testc_m256i
.
Sourcepub fn testz_m128(a: m128, b: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testz_m128(a: m128, b: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Computes the bitwise AND of 256 bits in a
and
b
, returns 1 if the result is zero, otherwise 0.
See: testz_m128
.
Sourcepub fn testz_m128d(a: m128d, b: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testz_m128d(a: m128d, b: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Computes the bitwise of sign bitAND of 256 bits in a
and
b
, returns 1 if the result is zero, otherwise 0.
See: testz_m128d
.
Sourcepub fn testz_m256(a: m256, b: m256) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testz_m256(a: m256, b: m256) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Computes the bitwise AND of 256 bits in a
and
b
, returns 1 if the result is zero, otherwise 0.
See: testz_m256
.
Sourcepub fn testz_m256d(a: m256d, b: m256d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testz_m256d(a: m256d, b: m256d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Computes the bitwise of sign bit AND of 256 bits in a
and
b
, returns 1 if the result is zero, otherwise 0.
See: testz_m256d
.
Sourcepub fn testz_m256i(a: m256i, b: m256i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn testz_m256i(a: m256i, b: m256i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Computes the bitwise of sign bit AND of 256 bits in a
and
b
, returns 1 if the result is zero, otherwise 0.
See: testz_m256i
.
Sourcepub fn unpack_hi_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn unpack_hi_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Unpack and interleave the high lanes.
See: unpack_hi_m256
.
Sourcepub fn unpack_hi_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn unpack_hi_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Unpack and interleave the high lanes.
See: unpack_hi_m256d
.
Sourcepub fn unpack_lo_m256(a: m256, b: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn unpack_lo_m256(a: m256, b: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Unpack and interleave the high lanes.
See: unpack_lo_m256
.
Sourcepub fn unpack_lo_m256d(a: m256d, b: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn unpack_lo_m256d(a: m256d, b: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Unpack and interleave the high lanes.
See: unpack_lo_m256d
.
Sourcepub fn zero_extend_m128(a: m128) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn zero_extend_m128(a: m128) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Zero extend an m128
to m256
See: zero_extend_m128
.
Sourcepub fn zero_extend_m128d(a: m128d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn zero_extend_m128d(a: m128d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Zero extend an m128d
to m256d
See: zero_extend_m128d
.
Sourcepub fn zero_extend_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn zero_extend_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.Zero extend an m128i
to m256i
See: zero_extend_m128i
.
Sourcepub fn zeroed_m256() -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn zeroed_m256() -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.A zeroed m256
See: zeroed_m256
.
Sourcepub fn zeroed_m256d() -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn zeroed_m256d() -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.A zeroed m256d
See: zeroed_m256d
.
Sourcepub fn zeroed_m256i() -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx
only.
pub fn zeroed_m256i() -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx
only.A zeroed m256i
See: zeroed_m256i
.
Source§impl Arch
§Functions requiring the avx2
target feature.
See: https://en.wikipedia.org/wiki/Advanced_Vector_Extensions
impl Arch
§Functions requiring the avx2
target feature.
See: https://en.wikipedia.org/wiki/Advanced_Vector_Extensions
Sourcepub fn abs_i16_m256i(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn abs_i16_m256i(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Absolute value of i16
lanes.
See: abs_i16_m256i
.
Sourcepub fn abs_i32_m256i(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn abs_i32_m256i(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Absolute value of i32
lanes.
See: abs_i32_m256i
.
Sourcepub fn abs_i8_m256i(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn abs_i8_m256i(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Absolute value of i8
lanes.
See: abs_i8_m256i
.
Sourcepub fn add_horizontal_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_horizontal_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Horizontal a + b
with lanes as i16
.
See: add_horizontal_i16_m256i
.
Sourcepub fn add_horizontal_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_horizontal_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Horizontal a + b
with lanes as i32
.
See: add_horizontal_i32_m256i
.
Sourcepub fn add_horizontal_saturating_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_horizontal_saturating_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Horizontal saturating a + b
with lanes as i16
.
Sourcepub fn add_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a + b
with lanes as i16
.
See: add_i16_m256i
.
Sourcepub fn add_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a + b
with lanes as i32
.
See: add_i32_m256i
.
Sourcepub fn add_i64_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_i64_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a + b
with lanes as i64
.
See: add_i64_m256i
.
Sourcepub fn add_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a + b
with lanes as i8
.
See: add_i8_m256i
.
Sourcepub fn add_saturating_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_saturating_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise saturating a + b
with lanes as i16
.
See: add_saturating_i16_m256i
.
Sourcepub fn add_saturating_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_saturating_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise saturating a + b
with lanes as i8
.
See: add_saturating_i8_m256i
.
Sourcepub fn add_saturating_u16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_saturating_u16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise saturating a + b
with lanes as u16
.
See: add_saturating_u16_m256i
.
Sourcepub fn add_saturating_u8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn add_saturating_u8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise saturating a + b
with lanes as u8
.
See: add_saturating_u8_m256i
.
Sourcepub fn average_u16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn average_u16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Average u16
lanes.
See: average_u16_m256i
.
Sourcepub fn average_u8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn average_u8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Average u8
lanes.
See: average_u8_m256i
.
Sourcepub fn bitand_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn bitand_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Bitwise a & b
.
See: bitand_m256i
.
Sourcepub fn bitandnot_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn bitandnot_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Bitwise (!a) & b
.
See: bitandnot_m256i
.
Sourcepub fn bitor_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn bitor_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Bitwise a | b
See: bitor_m256i
.
Sourcepub fn bitxor_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn bitxor_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Bitwise a ^ b
.
See: bitxor_m256i
.
Sourcepub fn blend_imm_i16_m256i<const IMM: i32>(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn blend_imm_i16_m256i<const IMM: i32>(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Blends the i16
lanes according to the immediate value.
See: blend_imm_i16_m256i
.
Sourcepub fn blend_imm_i32_m128i<const IMM: i32>(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn blend_imm_i32_m128i<const IMM: i32>(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Blends the i32
lanes in a
and b
into a single value.
See: blend_imm_i32_m128i
.
Sourcepub fn blend_imm_i32_m256i<const IMM: i32>(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn blend_imm_i32_m256i<const IMM: i32>(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Blends the i32
lanes according to the immediate value.
See: blend_imm_i32_m256i
.
Sourcepub fn blend_varying_i8_m256i(a: m256i, b: m256i, mask: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn blend_varying_i8_m256i(a: m256i, b: m256i, mask: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Blend i8
lanes according to a runtime varying mask.
See: blend_varying_i8_m256i
.
Sourcepub fn byte_shl_imm_u128_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn byte_shl_imm_u128_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts each u128
lane left by a number of bytes.
See: byte_shl_imm_u128_m256i
.
Sourcepub fn byte_shr_imm_u128_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn byte_shr_imm_u128_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts each u128
lane right by a number of bytes.
See: byte_shr_imm_u128_m256i
.
Sourcepub fn cmp_eq_mask_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn cmp_eq_mask_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compare i16
lanes for equality, mask output.
See: cmp_eq_mask_i16_m256i
.
Sourcepub fn cmp_eq_mask_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn cmp_eq_mask_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compare i32
lanes for equality, mask output.
See: cmp_eq_mask_i32_m256i
.
Sourcepub fn cmp_eq_mask_i64_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn cmp_eq_mask_i64_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compare i64
lanes for equality, mask output.
See: cmp_eq_mask_i64_m256i
.
Sourcepub fn cmp_eq_mask_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn cmp_eq_mask_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compare i8
lanes for equality, mask output.
See: cmp_eq_mask_i8_m256i
.
Sourcepub fn cmp_gt_mask_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn cmp_gt_mask_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compare i16
lanes for a > b
, mask output.
See: cmp_gt_mask_i16_m256i
.
Sourcepub fn cmp_gt_mask_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn cmp_gt_mask_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compare i32
lanes for a > b
, mask output.
See: cmp_gt_mask_i32_m256i
.
Sourcepub fn cmp_gt_mask_i64_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn cmp_gt_mask_i64_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compare i64
lanes for a > b
, mask output.
See: cmp_gt_mask_i64_m256i
.
Sourcepub fn cmp_gt_mask_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn cmp_gt_mask_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compare i8
lanes for a > b
, mask output.
See: cmp_gt_mask_i8_m256i
.
Sourcepub fn combined_byte_shr_imm_m256i<const IMM: i32>(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn combined_byte_shr_imm_m256i<const IMM: i32>(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Works like combined_byte_shr_imm_m128i
, but twice as wide.
Sourcepub fn convert_to_i16_m256i_from_i8_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i16_m256i_from_i8_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert i8
values to i16
values.
Sourcepub fn convert_to_i16_m256i_from_lower4_u8_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i16_m256i_from_lower4_u8_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert lower 4 u8
values to i16
values.
Sourcepub fn convert_to_i16_m256i_from_lower8_u8_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i16_m256i_from_lower8_u8_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert lower 8 u8
values to i16
values.
Sourcepub fn convert_to_i16_m256i_from_u8_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i16_m256i_from_u8_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert u8
values to i16
values.
Sourcepub fn convert_to_i32_m256i_from_i16_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i32_m256i_from_i16_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert i16
values to i32
values.
Sourcepub fn convert_to_i32_m256i_from_lower8_i8_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i32_m256i_from_lower8_i8_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert the lower 8 i8
values to i32
values.
Sourcepub fn convert_to_i32_m256i_from_u16_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i32_m256i_from_u16_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert u16
values to i32
values.
Sourcepub fn convert_to_i64_m256i_from_i32_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i64_m256i_from_i32_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert i32
values to i64
values.
Sourcepub fn convert_to_i64_m256i_from_lower4_i16_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i64_m256i_from_lower4_i16_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert i16
values to i64
values.
Sourcepub fn convert_to_i64_m256i_from_lower4_i8_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i64_m256i_from_lower4_i8_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert the lower 4 i8
values to i64
values.
Sourcepub fn convert_to_i64_m256i_from_lower4_u16_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i64_m256i_from_lower4_u16_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert u16
values to i64
values.
Sourcepub fn convert_to_i64_m256i_from_u32_m128i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn convert_to_i64_m256i_from_u32_m128i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Convert u32
values to i64
values.
Sourcepub fn extract_i16_as_i32_m256i<const LANE: i32>(a: m256i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn extract_i16_as_i32_m256i<const LANE: i32>(a: m256i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Gets an i16
value out of an m256i
, returns as i32
.
See: extract_i16_as_i32_m256i
.
Sourcepub fn extract_i8_as_i32_m256i<const LANE: i32>(a: m256i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn extract_i8_as_i32_m256i<const LANE: i32>(a: m256i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Gets an i8
value out of an m256i
, returns as i32
.
See: extract_i8_as_i32_m256i
.
Sourcepub fn extract_m128i_m256i<const LANE: i32>(a: m256i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn extract_m128i_m256i<const LANE: i32>(a: m256i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Gets an m128i
value out of an m256i
.
See: extract_m128i_m256i
.
Sourcepub fn insert_m128i_to_m256i<const LANE: i32>(a: m256i, b: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn insert_m128i_to_m256i<const LANE: i32>(a: m256i, b: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Inserts an m128i
to an m256i
at the high or low position.
See: insert_m128i_to_m256i
.
Sourcepub fn load_masked_i32_m128i(a: &m128i, mask: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn load_masked_i32_m128i(a: &m128i, mask: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Loads the reference given and zeroes any i32
lanes not in the mask.
See: load_masked_i32_m128i
.
Sourcepub fn load_masked_i32_m256i(a: &m256i, mask: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn load_masked_i32_m256i(a: &m256i, mask: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Loads the reference given and zeroes any i32
lanes not in the mask.
See: load_masked_i32_m256i
.
Sourcepub fn load_masked_i64_m128i(a: &m128i, mask: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn load_masked_i64_m128i(a: &m128i, mask: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Loads the reference given and zeroes any i64
lanes not in the mask.
See: load_masked_i64_m128i
.
Sourcepub fn load_masked_i64_m256i(a: &m256i, mask: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn load_masked_i64_m256i(a: &m256i, mask: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Loads the reference given and zeroes any i64
lanes not in the mask.
See: load_masked_i64_m256i
.
Sourcepub fn max_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn max_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise max(a, b)
with lanes as i16
.
See: max_i16_m256i
.
Sourcepub fn max_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn max_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise max(a, b)
with lanes as i32
.
See: max_i32_m256i
.
Sourcepub fn max_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn max_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise max(a, b)
with lanes as i8
.
See: max_i8_m256i
.
Sourcepub fn max_u16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn max_u16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise max(a, b)
with lanes as u16
.
See: max_u16_m256i
.
Sourcepub fn max_u32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn max_u32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise max(a, b)
with lanes as u32
.
See: max_u32_m256i
.
Sourcepub fn max_u8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn max_u8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise max(a, b)
with lanes as u8
.
See: max_u8_m256i
.
Sourcepub fn min_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn min_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise min(a, b)
with lanes as i16
.
See: min_i16_m256i
.
Sourcepub fn min_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn min_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise min(a, b)
with lanes as i32
.
See: min_i32_m256i
.
Sourcepub fn min_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn min_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise min(a, b)
with lanes as i8
.
See: min_i8_m256i
.
Sourcepub fn min_u16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn min_u16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise min(a, b)
with lanes as u16
.
See: min_u16_m256i
.
Sourcepub fn min_u32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn min_u32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise min(a, b)
with lanes as u32
.
See: min_u32_m256i
.
Sourcepub fn min_u8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn min_u8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise min(a, b)
with lanes as u8
.
See: min_u8_m256i
.
Sourcepub fn move_mask_i8_m256i(a: m256i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn move_mask_i8_m256i(a: m256i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Create an i32
mask of each sign bit in the i8
lanes.
See: move_mask_i8_m256i
.
Sourcepub fn mul_i16_horizontal_add_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_i16_horizontal_add_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Multiply i16
lanes producing i32
values, horizontal add pairs of i32
values to produce the final output.
Sourcepub fn mul_i16_keep_high_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_i16_keep_high_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Multiply the i16
lanes and keep the high half of each 32-bit output.
See: mul_i16_keep_high_m256i
.
Sourcepub fn mul_i16_keep_low_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_i16_keep_low_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Multiply the i16
lanes and keep the low half of each 32-bit output.
See: mul_i16_keep_low_m256i
.
Sourcepub fn mul_i16_scale_round_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_i16_scale_round_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Multiply i16
lanes into i32
intermediates, keep the high 18 bits, round
by adding 1, right shift by 1.
Sourcepub fn mul_i32_keep_low_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_i32_keep_low_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Multiply the i32
lanes and keep the low half of each 64-bit output.
See: mul_i32_keep_low_m256i
.
Sourcepub fn mul_i64_low_bits_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_i64_low_bits_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Multiply the lower i32
within each i64
lane, i64
output.
See: mul_i64_low_bits_m256i
.
Sourcepub fn mul_u16_keep_high_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_u16_keep_high_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Multiply the u16
lanes and keep the high half of each 32-bit output.
See: mul_u16_keep_high_m256i
.
Sourcepub fn mul_u64_low_bits_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_u64_low_bits_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Multiply the lower u32
within each u64
lane, u64
output.
See: mul_u64_low_bits_m256i
.
Sourcepub fn mul_u8i8_add_horizontal_saturating_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn mul_u8i8_add_horizontal_saturating_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.This is dumb and weird.
Sourcepub fn multi_packed_sum_abs_diff_u8_m256i<const IMM: i32>(
a: m256i,
b: m256i,
) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn multi_packed_sum_abs_diff_u8_m256i<const IMM: i32>( a: m256i, b: m256i, ) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Computes eight u16
“sum of absolute difference” values according to the
bytes selected.
Sourcepub fn pack_i16_to_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn pack_i16_to_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Saturating convert i16
to i8
, and pack the values.
See: pack_i16_to_i8_m256i
.
Sourcepub fn pack_i16_to_u8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn pack_i16_to_u8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Saturating convert i16
to u8
, and pack the values.
See: pack_i16_to_u8_m256i
.
Sourcepub fn pack_i32_to_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn pack_i32_to_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Saturating convert i32
to i16
, and pack the values.
See: pack_i32_to_i16_m256i
.
Sourcepub fn pack_i32_to_u16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn pack_i32_to_u16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Saturating convert i32
to u16
, and pack the values.
See: pack_i32_to_u16_m256i
.
Sourcepub fn set_splat_i16_m128i_s_m256i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn set_splat_i16_m128i_s_m256i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Sets the lowest i16
lane of an m128i
as all lanes of an m256i
.
Sourcepub fn set_splat_i32_m128i_s_m256i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn set_splat_i32_m128i_s_m256i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Sets the lowest i32
lane of an m128i
as all lanes of an m256i
.
Sourcepub fn set_splat_i64_m128i_s_m256i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn set_splat_i64_m128i_s_m256i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Sets the lowest i64
lane of an m128i
as all lanes of an m256i
.
Sourcepub fn set_splat_i8_m128i_s_m256i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn set_splat_i8_m128i_s_m256i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Sets the lowest i8
lane of an m128i
as all lanes of an m256i
.
Sourcepub fn set_splat_m128_s_m256(a: m128) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn set_splat_m128_s_m256(a: m128) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Sets the lowest lane of an m128
as all lanes of an m256
.
See: set_splat_m128_s_m256
.
Sourcepub fn set_splat_m128d_s_m256d(a: m128d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn set_splat_m128d_s_m256d(a: m128d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Sets the lowest lane of an m128d
as all lanes of an m256d
.
See: set_splat_m128d_s_m256d
.
Sourcepub fn shl_all_u16_m256i(a: m256i, count: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_all_u16_m256i(a: m256i, count: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise u16
shift left by the lower u64
lane of count
.
See: shl_all_u16_m256i
.
Sourcepub fn shl_all_u32_m256i(a: m256i, count: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_all_u32_m256i(a: m256i, count: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shift all u32
lanes left by the lower u64
lane of count
.
See: shl_all_u32_m256i
.
Sourcepub fn shl_all_u64_m256i(a: m256i, count: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_all_u64_m256i(a: m256i, count: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shift all u64
lanes left by the lower u64
lane of count
.
See: shl_all_u64_m256i
.
Sourcepub fn shl_each_u32_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_each_u32_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shift u32
values to the left by count
bits.
See: shl_each_u32_m128i
.
Sourcepub fn shl_each_u32_m256i(a: m256i, count: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_each_u32_m256i(a: m256i, count: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise u32
shift left by the matching i32
lane in count
.
See: shl_each_u32_m256i
.
Sourcepub fn shl_each_u64_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_each_u64_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shift u64
values to the left by count
bits.
See: shl_each_u64_m128i
.
Sourcepub fn shl_each_u64_m256i(a: m256i, count: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_each_u64_m256i(a: m256i, count: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise u64
shift left by the matching u64
lane in count
.
See: shl_each_u64_m256i
.
Sourcepub fn shl_imm_u16_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_imm_u16_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts all u16
lanes left by an immediate.
See: shl_imm_u16_m256i
.
Sourcepub fn shl_imm_u32_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_imm_u32_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts all u32
lanes left by an immediate.
See: shl_imm_u32_m256i
.
Sourcepub fn shl_imm_u64_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shl_imm_u64_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts all u64
lanes left by an immediate.
See: shl_imm_u64_m256i
.
Sourcepub fn shr_all_i16_m256i(a: m256i, count: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_all_i16_m256i(a: m256i, count: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise i16
shift right by the lower i64
lane of count
.
See: shr_all_i16_m256i
.
Sourcepub fn shr_all_i32_m256i(a: m256i, count: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_all_i32_m256i(a: m256i, count: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise i32
shift right by the lower i64
lane of count
.
See: shr_all_i32_m256i
.
Sourcepub fn shr_all_u16_m256i(a: m256i, count: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_all_u16_m256i(a: m256i, count: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise u16
shift right by the lower u64
lane of count
.
See: shr_all_u16_m256i
.
Sourcepub fn shr_all_u32_m256i(a: m256i, count: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_all_u32_m256i(a: m256i, count: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise u32
shift right by the lower u64
lane of count
.
See: shr_all_u32_m256i
.
Sourcepub fn shr_all_u64_m256i(a: m256i, count: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_all_u64_m256i(a: m256i, count: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise u64
shift right by the lower u64
lane of count
.
See: shr_all_u64_m256i
.
Sourcepub fn shr_each_i32_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_each_i32_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shift i32
values to the right by count
bits.
See: shr_each_i32_m128i
.
Sourcepub fn shr_each_i32_m256i(a: m256i, count: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_each_i32_m256i(a: m256i, count: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise i32
shift right by the matching i32
lane in count
.
See: shr_each_i32_m256i
.
Sourcepub fn shr_each_u32_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_each_u32_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shift u32
values to the left by count
bits.
See: shr_each_u32_m128i
.
Sourcepub fn shr_each_u32_m256i(a: m256i, count: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_each_u32_m256i(a: m256i, count: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise u32
shift right by the matching u32
lane in count
.
See: shr_each_u32_m256i
.
Sourcepub fn shr_each_u64_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_each_u64_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shift u64
values to the left by count
bits.
See: shr_each_u64_m128i
.
Sourcepub fn shr_each_u64_m256i(a: m256i, count: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_each_u64_m256i(a: m256i, count: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise u64
shift right by the matching i64
lane in count
.
See: shr_each_u64_m256i
.
Sourcepub fn shr_imm_i16_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_imm_i16_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts all i16
lanes left by an immediate.
See: shr_imm_i16_m256i
.
Sourcepub fn shr_imm_i32_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_imm_i32_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts all i32
lanes left by an immediate.
See: shr_imm_i32_m256i
.
Sourcepub fn shr_imm_u16_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_imm_u16_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts all u16
lanes right by an immediate.
See: shr_imm_u16_m256i
.
Sourcepub fn shr_imm_u32_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_imm_u32_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts all u32
lanes right by an immediate.
See: shr_imm_u32_m256i
.
Sourcepub fn shr_imm_u64_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shr_imm_u64_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shifts all u64
lanes right by an immediate.
See: shr_imm_u64_m256i
.
Sourcepub fn shuffle_abi_i128z_all_m256i<const MASK: i32>(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_abi_i128z_all_m256i<const MASK: i32>(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle 128 bits of integer data from $a
and $b
using an immediate control value.
Sourcepub fn shuffle_ai_f64_all_m256d<const IMM: i32>(a: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_ai_f64_all_m256d<const IMM: i32>(a: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle the f64
lanes from $a
using an immediate control value.
See: shuffle_ai_f64_all_m256d
.
Sourcepub fn shuffle_ai_i16_h64half_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_ai_i16_h64half_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle the high i16
lanes in $a
using an immediate control value.
Sourcepub fn shuffle_ai_i16_l64half_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_ai_i16_l64half_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle the low i16
lanes in $a
using an immediate control value.
Sourcepub fn shuffle_ai_i32_half_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_ai_i32_half_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle the i32
lanes in a
using an immediate control value.
Sourcepub fn shuffle_ai_i64_all_m256i<const IMM: i32>(a: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_ai_i64_all_m256i<const IMM: i32>(a: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle the f64
lanes in $a
using an immediate control value.
See: shuffle_ai_i64_all_m256i
.
Sourcepub fn shuffle_av_i32_all_m256(a: m256, v: m256i) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_av_i32_all_m256(a: m256, v: m256i) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle f32
lanes in a
using i32
values in v
.
See: shuffle_av_i32_all_m256
.
Sourcepub fn shuffle_av_i32_all_m256i(a: m256i, v: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_av_i32_all_m256i(a: m256i, v: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle i32
lanes in a
using i32
values in v
.
See: shuffle_av_i32_all_m256i
.
Sourcepub fn shuffle_av_i8z_half_m256i(a: m256i, v: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn shuffle_av_i8z_half_m256i(a: m256i, v: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Shuffle i8
lanes in a
using i8
values in v
.
Sourcepub fn sign_apply_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sign_apply_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a * signum(b)
with lanes as i16
See: sign_apply_i16_m256i
.
Sourcepub fn sign_apply_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sign_apply_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a * signum(b)
with lanes as i32
See: sign_apply_i32_m256i
.
Sourcepub fn sign_apply_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sign_apply_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a * signum(b)
with lanes as i8
See: sign_apply_i8_m256i
.
Sourcepub fn splat_i16_m128i_s_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn splat_i16_m128i_s_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Splat the lowest 16-bit lane across the entire 128 bits.
See: splat_i16_m128i_s_m128i
.
Sourcepub fn splat_i32_m128i_s_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn splat_i32_m128i_s_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Splat the lowest 32-bit lane across the entire 128 bits.
See: splat_i32_m128i_s_m128i
.
Sourcepub fn splat_i64_m128i_s_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn splat_i64_m128i_s_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Splat the lowest 64-bit lane across the entire 128 bits.
See: splat_i64_m128i_s_m128i
.
Sourcepub fn splat_i8_m128i_s_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn splat_i8_m128i_s_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Splat the lowest 8-bit lane across the entire 128 bits.
See: splat_i8_m128i_s_m128i
.
Sourcepub fn splat_m128_s_m128(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn splat_m128_s_m128(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Splat the lowest f32
across all four lanes.
See: splat_m128_s_m128
.
Sourcepub fn splat_m128d_s_m128d(a: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn splat_m128d_s_m128d(a: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Splat the lower f64
across both lanes of m128d
.
See: splat_m128d_s_m128d
.
Sourcepub fn splat_m128i_m256i(a: m128i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn splat_m128i_m256i(a: m128i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Splat the 128-bits across 256-bits.
See: splat_m128i_m256i
.
Sourcepub fn store_masked_i32_m128i(addr: &mut m128i, mask: m128i, a: m128i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn store_masked_i32_m128i(addr: &mut m128i, mask: m128i, a: m128i)
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Stores the i32
masked lanes given to the reference.
See: store_masked_i32_m128i
.
Sourcepub fn store_masked_i32_m256i(addr: &mut m256i, mask: m256i, a: m256i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn store_masked_i32_m256i(addr: &mut m256i, mask: m256i, a: m256i)
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Stores the i32
masked lanes given to the reference.
See: store_masked_i32_m256i
.
Sourcepub fn store_masked_i64_m128i(addr: &mut m128i, mask: m128i, a: m128i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn store_masked_i64_m128i(addr: &mut m128i, mask: m128i, a: m128i)
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Stores the i32
masked lanes given to the reference.
See: store_masked_i64_m128i
.
Sourcepub fn store_masked_i64_m256i(addr: &mut m256i, mask: m256i, a: m256i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn store_masked_i64_m256i(addr: &mut m256i, mask: m256i, a: m256i)
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Stores the i32
masked lanes given to the reference.
See: store_masked_i64_m256i
.
Sourcepub fn sub_horizontal_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_horizontal_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Horizontal a - b
with lanes as i16
.
See: sub_horizontal_i16_m256i
.
Sourcepub fn sub_horizontal_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_horizontal_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Horizontal a - b
with lanes as i32
.
See: sub_horizontal_i32_m256i
.
Sourcepub fn sub_horizontal_saturating_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_horizontal_saturating_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Horizontal saturating a - b
with lanes as i16
.
Sourcepub fn sub_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a - b
with lanes as i16
.
See: sub_i16_m256i
.
Sourcepub fn sub_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a - b
with lanes as i32
.
See: sub_i32_m256i
.
Sourcepub fn sub_i64_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_i64_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a - b
with lanes as i64
.
See: sub_i64_m256i
.
Sourcepub fn sub_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise a - b
with lanes as i8
.
See: sub_i8_m256i
.
Sourcepub fn sub_saturating_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_saturating_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise saturating a - b
with lanes as i16
.
See: sub_saturating_i16_m256i
.
Sourcepub fn sub_saturating_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_saturating_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise saturating a - b
with lanes as i8
.
See: sub_saturating_i8_m256i
.
Sourcepub fn sub_saturating_u16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_saturating_u16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise saturating a - b
with lanes as u16
.
See: sub_saturating_u16_m256i
.
Sourcepub fn sub_saturating_u8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sub_saturating_u8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Lanewise saturating a - b
with lanes as u8
.
See: sub_saturating_u8_m256i
.
Sourcepub fn sum_of_u8_abs_diff_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn sum_of_u8_abs_diff_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Compute “sum of u8
absolute differences”.
See: sum_of_u8_abs_diff_m256i
.
Sourcepub fn unpack_high_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn unpack_high_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Unpack and interleave high i16
lanes of a
and b
.
See: unpack_high_i16_m256i
.
Sourcepub fn unpack_high_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn unpack_high_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Unpack and interleave high i32
lanes of a
and b
.
See: unpack_high_i32_m256i
.
Sourcepub fn unpack_high_i64_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn unpack_high_i64_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Unpack and interleave high i64
lanes of a
and b
.
See: unpack_high_i64_m256i
.
Sourcepub fn unpack_high_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn unpack_high_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Unpack and interleave high i8
lanes of a
and b
.
See: unpack_high_i8_m256i
.
Sourcepub fn unpack_low_i16_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn unpack_low_i16_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Unpack and interleave low i16
lanes of a
and b
.
See: unpack_low_i16_m256i
.
Sourcepub fn unpack_low_i32_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn unpack_low_i32_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Unpack and interleave low i32
lanes of a
and b
.
See: unpack_low_i32_m256i
.
Sourcepub fn unpack_low_i64_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn unpack_low_i64_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Unpack and interleave low i64
lanes of a
and b
.
See: unpack_low_i64_m256i
.
Sourcepub fn unpack_low_i8_m256i(a: m256i, b: m256i) -> m256i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.
pub fn unpack_low_i8_m256i(a: m256i, b: m256i) -> m256i
dep_safe_arch
and (x86 or x86-64) and target feature avx2
only.Unpack and interleave low i8
lanes of a
and b
.
See: unpack_low_i8_m256i
.
Source§impl Arch
§Functions requiring the bmi1
target feature.
impl Arch
§Functions requiring the bmi1
target feature.
Sourcepub fn bit_extract2_u32(a: u32, control: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_extract2_u32(a: u32, control: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Extract a span of bits from the u32
, control value style.
See: bit_extract2_u32
.
Sourcepub fn bit_extract2_u64(a: u64, control: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_extract2_u64(a: u64, control: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Extract a span of bits from the u64
, control value style.
See: bit_extract2_u64
.
Sourcepub fn bit_extract_u32(a: u32, start: u32, len: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_extract_u32(a: u32, start: u32, len: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Extract a span of bits from the u32
, start and len style.
See: bit_extract_u32
.
Sourcepub fn bit_extract_u64(a: u64, start: u32, len: u32) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_extract_u64(a: u64, start: u32, len: u32) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Extract a span of bits from the u64
, start and len style.
See: bit_extract_u64
.
Sourcepub fn bit_lowest_set_mask_u32(a: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_lowest_set_mask_u32(a: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Gets the mask of all bits up to and including the lowest set bit in a u32
.
See: bit_lowest_set_mask_u32
.
Sourcepub fn bit_lowest_set_mask_u64(a: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_lowest_set_mask_u64(a: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Gets the mask of all bits up to and including the lowest set bit in a u64
.
See: bit_lowest_set_mask_u64
.
Sourcepub fn bit_lowest_set_reset_u32(a: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_lowest_set_reset_u32(a: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Resets (clears) the lowest set bit.
See: bit_lowest_set_reset_u32
.
Sourcepub fn bit_lowest_set_reset_u64(a: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_lowest_set_reset_u64(a: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Resets (clears) the lowest set bit.
See: bit_lowest_set_reset_u64
.
Sourcepub fn bit_lowest_set_value_u32(a: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_lowest_set_value_u32(a: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Gets the value of the lowest set bit in a u32
.
See: bit_lowest_set_value_u32
.
Sourcepub fn bit_lowest_set_value_u64(a: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bit_lowest_set_value_u64(a: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Gets the value of the lowest set bit in a u64
.
See: bit_lowest_set_value_u64
.
Sourcepub fn bitandnot_u32(a: u32, b: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bitandnot_u32(a: u32, b: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Bitwise (!a) & b
for u32
See: bitandnot_u32
.
Sourcepub fn bitandnot_u64(a: u64, b: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn bitandnot_u64(a: u64, b: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Bitwise (!a) & b
for u64
See: bitandnot_u64
.
Sourcepub fn trailing_zero_count_u32(a: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn trailing_zero_count_u32(a: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Counts the number of trailing zero bits in a u32
.
See: trailing_zero_count_u32
.
Sourcepub fn trailing_zero_count_u64(a: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.
pub fn trailing_zero_count_u64(a: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi1
only.Counts the number of trailing zero bits in a u64
.
See: trailing_zero_count_u64
.
Source§impl Arch
§Functions requiring the bmi2
target feature.
impl Arch
§Functions requiring the bmi2
target feature.
Sourcepub fn bit_zero_high_index_u32(a: u32, index: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.
pub fn bit_zero_high_index_u32(a: u32, index: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.Zero out all high bits in a u32
starting at the index given.
See: bit_zero_high_index_u32
.
Sourcepub fn bit_zero_high_index_u64(a: u64, index: u32) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.
pub fn bit_zero_high_index_u64(a: u64, index: u32) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.Zero out all high bits in a u64
starting at the index given.
See: bit_zero_high_index_u64
.
Sourcepub fn mul_extended_u32(a: u32, b: u32, extra: &mut u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.
pub fn mul_extended_u32(a: u32, b: u32, extra: &mut u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.Multiply two u32
, outputting the low bits and storing the high bits in the reference.
See: mul_extended_u32
.
Sourcepub fn mul_extended_u64(a: u64, b: u64, extra: &mut u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.
pub fn mul_extended_u64(a: u64, b: u64, extra: &mut u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.Multiply two u64
, outputting the low bits and storing the high bits in the reference.
See: mul_extended_u64
.
Sourcepub fn population_deposit_u32(a: u32, index: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.
pub fn population_deposit_u32(a: u32, index: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.Deposit contiguous low bits from a u32
according to a mask.
See: population_deposit_u32
.
Sourcepub fn population_deposit_u64(a: u64, index: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.
pub fn population_deposit_u64(a: u64, index: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.Deposit contiguous low bits from a u64
according to a mask.
See: population_deposit_u64
.
Sourcepub fn population_extract_u32(a: u32, index: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.
pub fn population_extract_u32(a: u32, index: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.Extract bits from a u32
according to a mask.
See: population_extract_u32
.
Sourcepub fn population_extract_u64(a: u64, index: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.
pub fn population_extract_u64(a: u64, index: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature bmi2
only.Extract bits from a u64
according to a mask.
See: population_extract_u64
.
Source§impl Arch
impl Arch
Sourcepub fn fused_mul_add_m128(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_add_m128(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) + c
See: fused_mul_add_m128
.
Sourcepub fn fused_mul_add_m128_s(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_add_m128_s(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Low lane fused (a * b) + c
, other lanes unchanged
See: fused_mul_add_m128_s
.
Sourcepub fn fused_mul_add_m128d(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_add_m128d(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) + c
See: fused_mul_add_m128d
.
Sourcepub fn fused_mul_add_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_add_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Low lane fused (a * b) + c
, other lanes unchanged
See: fused_mul_add_m128d_s
.
Sourcepub fn fused_mul_add_m256(a: m256, b: m256, c: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_add_m256(a: m256, b: m256, c: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) + c
See: fused_mul_add_m256
.
Sourcepub fn fused_mul_add_m256d(a: m256d, b: m256d, c: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_add_m256d(a: m256d, b: m256d, c: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) + c
See: fused_mul_add_m256d
.
Sourcepub fn fused_mul_addsub_m128(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_addsub_m128(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) addsub c
(adds odd lanes and subtracts even lanes)
See: fused_mul_addsub_m128
.
Sourcepub fn fused_mul_addsub_m128d(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_addsub_m128d(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) addsub c
(adds odd lanes and subtracts even lanes)
See: fused_mul_addsub_m128d
.
Sourcepub fn fused_mul_addsub_m256(a: m256, b: m256, c: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_addsub_m256(a: m256, b: m256, c: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) addsub c
(adds odd lanes and subtracts even lanes)
See: fused_mul_addsub_m256
.
Sourcepub fn fused_mul_addsub_m256d(a: m256d, b: m256d, c: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_addsub_m256d(a: m256d, b: m256d, c: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) addsub c
(adds odd lanes and subtracts even lanes)
See: fused_mul_addsub_m256d
.
Sourcepub fn fused_mul_neg_add_m128(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_add_m128(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused -(a * b) + c
See: fused_mul_neg_add_m128
.
Sourcepub fn fused_mul_neg_add_m128_s(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_add_m128_s(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Low lane -(a * b) + c
, other lanes unchanged.
See: fused_mul_neg_add_m128_s
.
Sourcepub fn fused_mul_neg_add_m128d(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_add_m128d(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused -(a * b) + c
See: fused_mul_neg_add_m128d
.
Sourcepub fn fused_mul_neg_add_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_add_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Low lane -(a * b) + c
, other lanes unchanged.
Sourcepub fn fused_mul_neg_add_m256(a: m256, b: m256, c: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_add_m256(a: m256, b: m256, c: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused -(a * b) + c
See: fused_mul_neg_add_m256
.
Sourcepub fn fused_mul_neg_add_m256d(a: m256d, b: m256d, c: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_add_m256d(a: m256d, b: m256d, c: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused -(a * b) + c
See: fused_mul_neg_add_m256d
.
Sourcepub fn fused_mul_neg_sub_m128(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_sub_m128(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused -(a * b) - c
See: fused_mul_neg_sub_m128
.
Sourcepub fn fused_mul_neg_sub_m128_s(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_sub_m128_s(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Low lane fused -(a * b) - c
, other lanes unchanged.
See: fused_mul_neg_sub_m128_s
.
Sourcepub fn fused_mul_neg_sub_m128d(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_sub_m128d(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused -(a * b) - c
See: fused_mul_neg_sub_m128d
.
Sourcepub fn fused_mul_neg_sub_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_sub_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Low lane fused -(a * b) - c
, other lanes unchanged.
Sourcepub fn fused_mul_neg_sub_m256(a: m256, b: m256, c: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_sub_m256(a: m256, b: m256, c: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused -(a * b) - c
See: fused_mul_neg_sub_m256
.
Sourcepub fn fused_mul_neg_sub_m256d(a: m256d, b: m256d, c: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_neg_sub_m256d(a: m256d, b: m256d, c: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused -(a * b) - c
See: fused_mul_neg_sub_m256d
.
Sourcepub fn fused_mul_sub_m128(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_sub_m128(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) - c
See: fused_mul_sub_m128
.
Sourcepub fn fused_mul_sub_m128_s(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_sub_m128_s(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Low lane fused (a * b) - c
, other lanes unchanged.
See: fused_mul_sub_m128_s
.
Sourcepub fn fused_mul_sub_m128d(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_sub_m128d(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) - c
See: fused_mul_sub_m128d
.
Sourcepub fn fused_mul_sub_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_sub_m128d_s(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Low lane fused (a * b) - c
, other lanes unchanged.
See: fused_mul_sub_m128d_s
.
Sourcepub fn fused_mul_sub_m256(a: m256, b: m256, c: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_sub_m256(a: m256, b: m256, c: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) - c
See: fused_mul_sub_m256
.
Sourcepub fn fused_mul_sub_m256d(a: m256d, b: m256d, c: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_sub_m256d(a: m256d, b: m256d, c: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) - c
See: fused_mul_sub_m256d
.
Sourcepub fn fused_mul_subadd_m128(a: m128, b: m128, c: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_subadd_m128(a: m128, b: m128, c: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) subadd c
(subtracts odd lanes and adds even lanes)
See: fused_mul_subadd_m128
.
Sourcepub fn fused_mul_subadd_m128d(a: m128d, b: m128d, c: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_subadd_m128d(a: m128d, b: m128d, c: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) subadd c
(subtracts odd lanes and adds even lanes)
See: fused_mul_subadd_m128d
.
Sourcepub fn fused_mul_subadd_m256(a: m256, b: m256, c: m256) -> m256
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_subadd_m256(a: m256, b: m256, c: m256) -> m256
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) subadd c
(subtracts odd lanes and adds even lanes)
See: fused_mul_subadd_m256
.
Sourcepub fn fused_mul_subadd_m256d(a: m256d, b: m256d, c: m256d) -> m256d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature fma
only.
pub fn fused_mul_subadd_m256d(a: m256d, b: m256d, c: m256d) -> m256d
dep_safe_arch
and (x86 or x86-64) and target feature fma
only.Lanewise fused (a * b) subadd c
(subtracts odd lanes and adds even lanes)
See: fused_mul_subadd_m256d
.
Source§impl Arch
§Functions requiring the lzcnt
target feature.
See: https://en.wikipedia.org/wiki/X86_Bit_manipulation_instruction_set#ABM_(Advanced_Bit_Manipulation)
impl Arch
§Functions requiring the lzcnt
target feature.
See: https://en.wikipedia.org/wiki/X86_Bit_manipulation_instruction_set#ABM_(Advanced_Bit_Manipulation)
Sourcepub fn leading_zero_count_u32(a: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature lzcnt
only.
pub fn leading_zero_count_u32(a: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature lzcnt
only.Count the leading zeroes in a u32
.
See: leading_zero_count_u32
.
Sourcepub fn leading_zero_count_u64(a: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature lzcnt
only.
pub fn leading_zero_count_u64(a: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature lzcnt
only.Count the leading zeroes in a u64
.
See: leading_zero_count_u64
.
Source§impl Arch
§Functions requiring the pclmulqdq
target feature.
impl Arch
§Functions requiring the pclmulqdq
target feature.
Sourcepub fn mul_i64_carryless_m128i<const IMM: i32>(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature pclmulqdq
only.
pub fn mul_i64_carryless_m128i<const IMM: i32>(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature pclmulqdq
only.Performs a “carryless” multiplication of two i64
values.
See: mul_i64_carryless_m128i
.
Source§impl Arch
§Functions requiring the popcnt
target feature.
See: https://en.wikipedia.org/wiki/X86_Bit_manipulation_instruction_set#ABM_(Advanced_Bit_Manipulation)
impl Arch
§Functions requiring the popcnt
target feature.
See: https://en.wikipedia.org/wiki/X86_Bit_manipulation_instruction_set#ABM_(Advanced_Bit_Manipulation)
Sourcepub fn population_count_i32(a: i32) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature popcnt
only.
pub fn population_count_i32(a: i32) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature popcnt
only.Count the number of bits set within an i32
See: population_count_i32
.
Sourcepub fn population_count_i64(a: i64) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature popcnt
only.
pub fn population_count_i64(a: i64) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature popcnt
only.Count the number of bits set within an i64
See: population_count_i64
.
Source§impl Arch
impl Arch
Sourcepub fn rdrand_u16(out: &mut u16) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature rdrand
only.
pub fn rdrand_u16(out: &mut u16) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature rdrand
only.Try to obtain a random u16
from the hardware RNG.
See: rdrand_u16
.
Sourcepub fn rdrand_u32(out: &mut u32) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature rdrand
only.
pub fn rdrand_u32(out: &mut u32) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature rdrand
only.Try to obtain a random u32
from the hardware RNG.
See: rdrand_u32
.
Sourcepub fn rdrand_u64(out: &mut u64) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature rdrand
only.
pub fn rdrand_u64(out: &mut u64) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature rdrand
only.Try to obtain a random u64
from the hardware RNG.
See: rdrand_u64
.
Source§impl Arch
impl Arch
Sourcepub fn rdseed_u16(out: &mut u16) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature rdseed
only.
pub fn rdseed_u16(out: &mut u16) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature rdseed
only.Try to obtain a random u16
from the hardware RNG.
See: rdseed_u16
.
Sourcepub fn rdseed_u32(out: &mut u32) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature rdseed
only.
pub fn rdseed_u32(out: &mut u32) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature rdseed
only.Try to obtain a random u32
from the hardware RNG.
See: rdseed_u32
.
Sourcepub fn rdseed_u64(out: &mut u64) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature rdseed
only.
pub fn rdseed_u64(out: &mut u64) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature rdseed
only.Try to obtain a random u64
from the hardware RNG.
See: rdseed_u64
.
Source§impl Arch
§Functions requiring the sse
target feature.
See: https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions
impl Arch
§Functions requiring the sse
target feature.
See: https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions
Sourcepub fn add_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn add_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a + b
.
See: add_m128
.
Sourcepub fn add_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn add_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a + b
, other lanes unchanged.
See: add_m128_s
.
Sourcepub fn bitand_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn bitand_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Bitwise a & b
.
See: bitand_m128
.
Sourcepub fn bitandnot_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn bitandnot_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Bitwise (!a) & b
.
See: bitandnot_m128
.
Sourcepub fn bitor_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn bitor_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Bitwise a | b
.
See: bitor_m128
.
Sourcepub fn bitxor_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn bitxor_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Bitwise a ^ b
.
See: bitxor_m128
.
Sourcepub fn cmp_eq_i32_m128_s(a: m128, b: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_eq_i32_m128_s(a: m128, b: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane equality.
See: cmp_eq_i32_m128_s
.
Sourcepub fn cmp_eq_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_eq_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a == b
.
See: cmp_eq_mask_m128
.
Sourcepub fn cmp_eq_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_eq_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a == b
, other lanes unchanged.
See: cmp_eq_mask_m128_s
.
Sourcepub fn cmp_ge_i32_m128_s(a: m128, b: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_ge_i32_m128_s(a: m128, b: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane greater than or equal to.
See: cmp_ge_i32_m128_s
.
Sourcepub fn cmp_ge_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_ge_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a >= b
.
See: cmp_ge_mask_m128
.
Sourcepub fn cmp_ge_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_ge_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a >= b
, other lanes unchanged.
See: cmp_ge_mask_m128_s
.
Sourcepub fn cmp_gt_i32_m128_s(a: m128, b: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_gt_i32_m128_s(a: m128, b: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane greater than.
See: cmp_gt_i32_m128_s
.
Sourcepub fn cmp_gt_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_gt_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a > b
.
See: cmp_gt_mask_m128
.
Sourcepub fn cmp_gt_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_gt_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a > b
, other lanes unchanged.
See: cmp_gt_mask_m128_s
.
Sourcepub fn cmp_le_i32_m128_s(a: m128, b: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_le_i32_m128_s(a: m128, b: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane less than or equal to.
See: cmp_le_i32_m128_s
.
Sourcepub fn cmp_le_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_le_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a <= b
.
See: cmp_le_mask_m128
.
Sourcepub fn cmp_le_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_le_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a <= b
, other lanes unchanged.
See: cmp_le_mask_m128_s
.
Sourcepub fn cmp_lt_i32_m128_s(a: m128, b: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_lt_i32_m128_s(a: m128, b: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane less than.
See: cmp_lt_i32_m128_s
.
Sourcepub fn cmp_lt_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_lt_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a < b
.
See: cmp_lt_mask_m128
.
Sourcepub fn cmp_lt_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_lt_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a < b
, other lanes unchanged.
See: cmp_lt_mask_m128_s
.
Sourcepub fn cmp_neq_i32_m128_s(a: m128, b: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_neq_i32_m128_s(a: m128, b: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane not equal to.
See: cmp_neq_i32_m128_s
.
Sourcepub fn cmp_neq_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_neq_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a != b
.
See: cmp_neq_mask_m128
.
Sourcepub fn cmp_neq_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_neq_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a != b
, other lanes unchanged.
See: cmp_neq_mask_m128_s
.
Sourcepub fn cmp_nge_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_nge_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise !(a >= b)
.
See: cmp_nge_mask_m128
.
Sourcepub fn cmp_nge_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_nge_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane !(a >= b)
, other lanes unchanged.
See: cmp_nge_mask_m128_s
.
Sourcepub fn cmp_ngt_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_ngt_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise !(a > b)
.
See: cmp_ngt_mask_m128
.
Sourcepub fn cmp_ngt_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_ngt_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane !(a > b)
, other lanes unchanged.
See: cmp_ngt_mask_m128_s
.
Sourcepub fn cmp_nle_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_nle_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise !(a <= b)
.
See: cmp_nle_mask_m128
.
Sourcepub fn cmp_nle_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_nle_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane !(a <= b)
, other lanes unchanged.
See: cmp_nle_mask_m128_s
.
Sourcepub fn cmp_nlt_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_nlt_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise !(a < b)
.
See: cmp_nlt_mask_m128
.
Sourcepub fn cmp_nlt_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_nlt_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane !(a < b)
, other lanes unchanged.
See: cmp_nlt_mask_m128_s
.
Sourcepub fn cmp_ordered_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_ordered_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise (!a.is_nan()) & (!b.is_nan())
.
See: cmp_ordered_mask_m128
.
Sourcepub fn cmp_ordered_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_ordered_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane (!a.is_nan()) & (!b.is_nan())
, other lanes unchanged.
See: cmp_ordered_mask_m128_s
.
Sourcepub fn cmp_unord_mask_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_unord_mask_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a.is_nan() | b.is_nan()
.
See: cmp_unord_mask_m128
.
Sourcepub fn cmp_unord_mask_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn cmp_unord_mask_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a.is_nan() | b.is_nan()
, other lanes unchanged.
See: cmp_unord_mask_m128_s
.
Sourcepub fn convert_i32_replace_m128_s(a: m128, i: i32) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn convert_i32_replace_m128_s(a: m128, i: i32) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Convert i32
to f32
and replace the low lane of the input.
Sourcepub fn div_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn div_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a / b
.
See: div_m128
.
Sourcepub fn div_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn div_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a / b
, other lanes unchanged.
See: div_m128_s
.
Sourcepub fn get_f32_from_m128_s(a: m128) -> f32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn get_f32_from_m128_s(a: m128) -> f32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Gets the low lane as an individual f32
value.
See: get_f32_from_m128_s
.
Sourcepub fn get_i32_from_m128_s(a: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn get_i32_from_m128_s(a: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Converts the low lane to i32
and extracts as an individual value.
See: get_i32_from_m128_s
.
Sourcepub fn load_f32_m128_s(a: &f32) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn load_f32_m128_s(a: &f32) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Loads the f32
reference into the low lane of the register.
See: load_f32_m128_s
.
Sourcepub fn load_f32_splat_m128(a: &f32) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn load_f32_splat_m128(a: &f32) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Loads the f32
reference into all lanes of a register.
See: load_f32_splat_m128
.
Sourcepub fn load_m128(a: &m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn load_m128(a: &m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Loads the reference into a register.
See: load_m128
.
Sourcepub fn load_reverse_m128(a: &m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn load_reverse_m128(a: &m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Loads the reference into a register with reversed order.
See: load_reverse_m128
.
Sourcepub fn load_unaligned_m128(a: &[f32; 4]) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn load_unaligned_m128(a: &[f32; 4]) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Loads the reference into a register.
See: load_unaligned_m128
.
Sourcepub fn max_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn max_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise max(a, b)
.
See: max_m128
.
Sourcepub fn max_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn max_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane max(a, b)
, other lanes unchanged.
See: max_m128_s
.
Sourcepub fn min_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn min_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise min(a, b)
.
See: min_m128
.
Sourcepub fn min_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn min_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane min(a, b)
, other lanes unchanged.
See: min_m128_s
.
Sourcepub fn move_high_low_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn move_high_low_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Move the high lanes of b
to the low lanes of a
, other lanes unchanged.
See: move_high_low_m128
.
Sourcepub fn move_low_high_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn move_low_high_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Move the low lanes of b
to the high lanes of a
, other lanes unchanged.
See: move_low_high_m128
.
Sourcepub fn move_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn move_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Move the low lane of b
to a
, other lanes unchanged.
See: move_m128_s
.
Sourcepub fn move_mask_m128(a: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn move_mask_m128(a: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Gathers the sign bit of each lane.
See: move_mask_m128
.
Sourcepub fn mul_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn mul_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a * b
.
See: mul_m128
.
Sourcepub fn mul_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn mul_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a * b
, other lanes unchanged.
See: mul_m128_s
.
Sourcepub fn reciprocal_m128(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn reciprocal_m128(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise 1.0 / a
approximation.
See: reciprocal_m128
.
Sourcepub fn reciprocal_m128_s(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn reciprocal_m128_s(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane 1.0 / a
approximation, other lanes unchanged.
See: reciprocal_m128_s
.
Sourcepub fn reciprocal_sqrt_m128(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn reciprocal_sqrt_m128(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise 1.0 / sqrt(a)
approximation.
See: reciprocal_sqrt_m128
.
Sourcepub fn reciprocal_sqrt_m128_s(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn reciprocal_sqrt_m128_s(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane 1.0 / sqrt(a)
approximation, other lanes unchanged.
See: reciprocal_sqrt_m128_s
.
Sourcepub fn set_m128(three: f32, two: f32, one: f32, zero: f32) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn set_m128(three: f32, two: f32, one: f32, zero: f32) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Sets the args into an m128
, first arg is the high lane.
See: set_m128
.
Sourcepub fn set_m128_s(low: f32) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn set_m128_s(low: f32) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Sets the args into an m128
, first arg is the high lane.
See: set_m128_s
.
Sourcepub fn set_reversed_m128(zero: f32, one: f32, two: f32, three: f32) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn set_reversed_m128(zero: f32, one: f32, two: f32, three: f32) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Sets the args into an m128
, first arg is the low lane.
See: set_reversed_m128
.
Sourcepub fn set_splat_m128(all: f32) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn set_splat_m128(all: f32) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Splats the value to all lanes.
See: set_splat_m128
.
Sourcepub fn shuffle_abi_f32_all_m128<const MASK: i32>(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn shuffle_abi_f32_all_m128<const MASK: i32>(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Shuffle the f32
lanes from $a
and $b
together using an immediate control value.
See: shuffle_abi_f32_all_m128
.
Sourcepub fn sqrt_m128(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn sqrt_m128(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise sqrt(a)
.
See: sqrt_m128
.
Sourcepub fn sqrt_m128_s(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn sqrt_m128_s(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane sqrt(a)
, other lanes unchanged.
See: sqrt_m128_s
.
Sourcepub fn store_m128(r: &mut m128, a: m128)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn store_m128(r: &mut m128, a: m128)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Stores the value to the reference given.
See: store_m128
.
Sourcepub fn store_m128_s(r: &mut f32, a: m128)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn store_m128_s(r: &mut f32, a: m128)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Stores the low lane value to the reference given.
See: store_m128_s
.
Sourcepub fn store_reverse_m128(r: &mut m128, a: m128)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn store_reverse_m128(r: &mut m128, a: m128)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Stores the value to the reference given in reverse order.
See: store_reverse_m128
.
Sourcepub fn store_splat_m128(r: &mut m128, a: m128)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn store_splat_m128(r: &mut m128, a: m128)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Stores the low lane value to all lanes of the reference given.
See: store_splat_m128
.
Sourcepub fn store_unaligned_m128(r: &mut [f32; 4], a: m128)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn store_unaligned_m128(r: &mut [f32; 4], a: m128)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Stores the value to the reference given.
See: store_unaligned_m128
.
Sourcepub fn sub_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn sub_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Lanewise a - b
.
See: sub_m128
.
Sourcepub fn sub_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn sub_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Low lane a - b
, other lanes unchanged.
See: sub_m128_s
.
Sourcepub fn transpose_four_m128(
a: &mut m128,
b: &mut m128,
c: &mut m128,
d: &mut m128,
)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn transpose_four_m128( a: &mut m128, b: &mut m128, c: &mut m128, d: &mut m128, )
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Transpose four m128
as if they were a 4x4 matrix.
See: transpose_four_m128
.
Sourcepub fn unpack_high_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn unpack_high_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Unpack and interleave high lanes of a
and b
.
See: unpack_high_m128
.
Sourcepub fn unpack_low_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn unpack_low_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Unpack and interleave low lanes of a
and b
.
See: unpack_low_m128
.
Sourcepub fn zeroed_m128() -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn zeroed_m128() -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.All lanes zero.
See: zeroed_m128
.
Source§impl Arch
§Generic functions requiring the sse
target feature.
See: https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions
impl Arch
§Generic functions requiring the sse
target feature.
See: https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions
Sourcepub fn prefetch_et0<T>(addr: &T)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn prefetch_et0<T>(addr: &T)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Fetches the cache line containing addr
into all levels of the cache hierarchy,
anticipating write.
Sourcepub fn prefetch_et1<T>(addr: &T)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn prefetch_et1<T>(addr: &T)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Fetches into L2 and higher, anticipating write.
Sourcepub fn prefetch_nta<T>(addr: &T)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn prefetch_nta<T>(addr: &T)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Fetch data using the non-temporal access (NTA) hint.
It may be a place closer than main memory but outside of the cache hierarchy.
This is used to reduce access latency without polluting the cache.
Sourcepub fn prefetch_t0<T>(addr: &T)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn prefetch_t0<T>(addr: &T)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Fetches the cache line containing addr
into all levels of the cache hierarchy.
Sourcepub fn prefetch_t1<T>(addr: &T)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn prefetch_t1<T>(addr: &T)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Fetches into L2 and higher.
Sourcepub fn prefetch_t2<T>(addr: &T)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse
only.
pub fn prefetch_t2<T>(addr: &T)
dep_safe_arch
and (x86 or x86-64) and target feature sse
only.Fetches into L3 and higher or an implementation-specific choice (e.g., L2 if there is no L3).
Source§impl Arch
impl Arch
Sourcepub fn add_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a + b
with lanes as i16
.
See: add_i16_m128i
.
Sourcepub fn add_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a + b
with lanes as i32
.
See: add_i32_m128i
.
Sourcepub fn add_i64_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_i64_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a + b
with lanes as i64
.
See: add_i64_m128i
.
Sourcepub fn add_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a + b
with lanes as i8
.
See: add_i8_m128i
.
Sourcepub fn add_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a + b
.
See: add_m128d
.
Sourcepub fn add_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lowest lane a + b
, high lane unchanged.
See: add_m128d_s
.
Sourcepub fn add_saturating_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_saturating_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise saturating a + b
with lanes as i16
.
See: add_saturating_i16_m128i
.
Sourcepub fn add_saturating_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_saturating_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise saturating a + b
with lanes as i8
.
See: add_saturating_i8_m128i
.
Sourcepub fn add_saturating_u16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_saturating_u16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise saturating a + b
with lanes as u16
.
See: add_saturating_u16_m128i
.
Sourcepub fn add_saturating_u8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn add_saturating_u8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise saturating a + b
with lanes as u8
.
See: add_saturating_u8_m128i
.
Sourcepub fn average_u16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn average_u16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise average of the u16
values.
See: average_u16_m128i
.
Sourcepub fn average_u8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn average_u8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise average of the u8
values.
See: average_u8_m128i
.
Sourcepub fn bitand_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn bitand_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bitwise a & b
.
See: bitand_m128d
.
Sourcepub fn bitand_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn bitand_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bitwise a & b
.
See: bitand_m128i
.
Sourcepub fn bitandnot_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn bitandnot_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bitwise (!a) & b
.
See: bitandnot_m128d
.
Sourcepub fn bitandnot_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn bitandnot_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bitwise (!a) & b
.
See: bitandnot_m128i
.
Sourcepub fn bitor_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn bitor_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bitwise a | b
.
See: bitor_m128d
.
Sourcepub fn bitor_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn bitor_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bitwise a | b
.
See: bitor_m128i
.
Sourcepub fn bitxor_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn bitxor_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bitwise a ^ b
.
See: bitxor_m128d
.
Sourcepub fn bitxor_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn bitxor_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bitwise a ^ b
.
See: bitxor_m128i
.
Sourcepub fn byte_shl_imm_u128_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn byte_shl_imm_u128_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts all bits in the entire register left by a number of bytes.
See: byte_shl_imm_u128_m128i
.
Sourcepub fn byte_shr_imm_u128_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn byte_shr_imm_u128_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts all bits in the entire register right by a number of bytes.
See: byte_shr_imm_u128_m128i
.
Sourcepub fn cast_to_m128_from_m128d(a: m128d) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cast_to_m128_from_m128d(a: m128d) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bit-preserving cast to m128
from m128d
See: cast_to_m128_from_m128d
.
Sourcepub fn cast_to_m128_from_m128i(a: m128i) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cast_to_m128_from_m128i(a: m128i) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bit-preserving cast to m128
from m128i
See: cast_to_m128_from_m128i
.
Sourcepub fn cast_to_m128d_from_m128(a: m128) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cast_to_m128d_from_m128(a: m128) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bit-preserving cast to m128d
from m128
See: cast_to_m128d_from_m128
.
Sourcepub fn cast_to_m128d_from_m128i(a: m128i) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cast_to_m128d_from_m128i(a: m128i) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bit-preserving cast to m128d
from m128i
See: cast_to_m128d_from_m128i
.
Sourcepub fn cast_to_m128i_from_m128(a: m128) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cast_to_m128i_from_m128(a: m128) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bit-preserving cast to m128i
from m128
See: cast_to_m128i_from_m128
.
Sourcepub fn cast_to_m128i_from_m128d(a: m128d) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cast_to_m128i_from_m128d(a: m128d) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Bit-preserving cast to m128i
from m128d
See: cast_to_m128i_from_m128d
.
Sourcepub fn cmp_eq_i32_m128d_s(a: m128d, b: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_eq_i32_m128d_s(a: m128d, b: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane f64
equal to.
See: cmp_eq_i32_m128d_s
.
Sourcepub fn cmp_eq_mask_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_eq_mask_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a == b
with lanes as i16
.
See: cmp_eq_mask_i16_m128i
.
Sourcepub fn cmp_eq_mask_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_eq_mask_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a == b
with lanes as i32
.
See: cmp_eq_mask_i32_m128i
.
Sourcepub fn cmp_eq_mask_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_eq_mask_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a == b
with lanes as i8
.
See: cmp_eq_mask_i8_m128i
.
Sourcepub fn cmp_eq_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_eq_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a == b
, mask output.
See: cmp_eq_mask_m128d
.
Sourcepub fn cmp_eq_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_eq_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane a == b
, other lanes unchanged.
See: cmp_eq_mask_m128d_s
.
Sourcepub fn cmp_ge_i32_m128d_s(a: m128d, b: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_ge_i32_m128d_s(a: m128d, b: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane f64
greater than or equal to.
See: cmp_ge_i32_m128d_s
.
Sourcepub fn cmp_ge_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_ge_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a >= b
.
See: cmp_ge_mask_m128d
.
Sourcepub fn cmp_ge_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_ge_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane a >= b
, other lanes unchanged.
See: cmp_ge_mask_m128d_s
.
Sourcepub fn cmp_gt_i32_m128d_s(a: m128d, b: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_gt_i32_m128d_s(a: m128d, b: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane f64
greater than.
See: cmp_gt_i32_m128d_s
.
Sourcepub fn cmp_gt_mask_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_gt_mask_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a > b
with lanes as i16
.
See: cmp_gt_mask_i16_m128i
.
Sourcepub fn cmp_gt_mask_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_gt_mask_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a > b
with lanes as i32
.
See: cmp_gt_mask_i32_m128i
.
Sourcepub fn cmp_gt_mask_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_gt_mask_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a > b
with lanes as i8
.
See: cmp_gt_mask_i8_m128i
.
Sourcepub fn cmp_gt_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_gt_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a > b
.
See: cmp_gt_mask_m128d
.
Sourcepub fn cmp_gt_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_gt_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane a > b
, other lanes unchanged.
See: cmp_gt_mask_m128d_s
.
Sourcepub fn cmp_le_i32_m128d_s(a: m128d, b: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_le_i32_m128d_s(a: m128d, b: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane f64
less than or equal to.
See: cmp_le_i32_m128d_s
.
Sourcepub fn cmp_le_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_le_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a <= b
.
See: cmp_le_mask_m128d
.
Sourcepub fn cmp_le_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_le_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane a <= b
, other lanes unchanged.
See: cmp_le_mask_m128d_s
.
Sourcepub fn cmp_lt_i32_m128d_s(a: m128d, b: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_lt_i32_m128d_s(a: m128d, b: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane f64
less than.
See: cmp_lt_i32_m128d_s
.
Sourcepub fn cmp_lt_mask_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_lt_mask_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a < b
with lanes as i16
.
See: cmp_lt_mask_i16_m128i
.
Sourcepub fn cmp_lt_mask_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_lt_mask_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a < b
with lanes as i32
.
See: cmp_lt_mask_i32_m128i
.
Sourcepub fn cmp_lt_mask_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_lt_mask_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a < b
with lanes as i8
.
See: cmp_lt_mask_i8_m128i
.
Sourcepub fn cmp_lt_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_lt_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a < b
.
See: cmp_lt_mask_m128d
.
Sourcepub fn cmp_lt_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_lt_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane a < b
, other lane unchanged.
See: cmp_lt_mask_m128d_s
.
Sourcepub fn cmp_neq_i32_m128d_s(a: m128d, b: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_neq_i32_m128d_s(a: m128d, b: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane f64
less than.
See: cmp_neq_i32_m128d_s
.
Sourcepub fn cmp_neq_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_neq_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a != b
.
See: cmp_neq_mask_m128d
.
Sourcepub fn cmp_neq_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_neq_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane a != b
, other lane unchanged.
See: cmp_neq_mask_m128d_s
.
Sourcepub fn cmp_nge_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_nge_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise !(a >= b)
.
See: cmp_nge_mask_m128d
.
Sourcepub fn cmp_nge_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_nge_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane !(a >= b)
, other lane unchanged.
See: cmp_nge_mask_m128d_s
.
Sourcepub fn cmp_ngt_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_ngt_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise !(a > b)
.
See: cmp_ngt_mask_m128d
.
Sourcepub fn cmp_ngt_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_ngt_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane !(a > b)
, other lane unchanged.
See: cmp_ngt_mask_m128d_s
.
Sourcepub fn cmp_nle_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_nle_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise !(a <= b)
.
See: cmp_nle_mask_m128d
.
Sourcepub fn cmp_nle_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_nle_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane !(a <= b)
, other lane unchanged.
See: cmp_nle_mask_m128d_s
.
Sourcepub fn cmp_nlt_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_nlt_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise !(a < b)
.
See: cmp_nlt_mask_m128d
.
Sourcepub fn cmp_nlt_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_nlt_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane !(a < b)
, other lane unchanged.
See: cmp_nlt_mask_m128d_s
.
Sourcepub fn cmp_ordered_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_ordered_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise (!a.is_nan()) & (!b.is_nan())
.
See: cmp_ordered_mask_m128d
.
Sourcepub fn cmp_ordered_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_ordered_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane (!a.is_nan()) & (!b.is_nan())
, other lane unchanged.
See: cmp_ordered_mask_m128d_s
.
Sourcepub fn cmp_unord_mask_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_unord_mask_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a.is_nan() | b.is_nan()
.
See: cmp_unord_mask_m128d
.
Sourcepub fn cmp_unord_mask_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn cmp_unord_mask_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane a.is_nan() | b.is_nan()
, other lane unchanged.
See: cmp_unord_mask_m128d_s
.
Sourcepub fn convert_i32_replace_m128d_s(a: m128d, i: i32) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_i32_replace_m128d_s(a: m128d, i: i32) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Convert i32
to f64
and replace the low lane of the input.
Sourcepub fn convert_i64_replace_m128d_s(a: m128d, i: i64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_i64_replace_m128d_s(a: m128d, i: i64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Convert i64
to f64
and replace the low lane of the input.
Sourcepub fn convert_m128_s_replace_m128d_s(a: m128d, b: m128) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_m128_s_replace_m128d_s(a: m128d, b: m128) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Converts the lower f32
to f64
and replace the low lane of the input
Sourcepub fn convert_m128d_s_replace_m128_s(a: m128, b: m128d) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_m128d_s_replace_m128_s(a: m128, b: m128d) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Converts the low f64
to f32
and replaces the low lane of the input.
Sourcepub fn convert_to_i32_m128i_from_m128(a: m128) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_to_i32_m128i_from_m128(a: m128) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Rounds the f32
lanes to i32
lanes.
Sourcepub fn convert_to_i32_m128i_from_m128d(a: m128d) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_to_i32_m128i_from_m128d(a: m128d) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Rounds the two f64
lanes to the low two i32
lanes.
Sourcepub fn convert_to_m128_from_i32_m128i(a: m128i) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_to_m128_from_i32_m128i(a: m128i) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Rounds the four i32
lanes to four f32
lanes.
Sourcepub fn convert_to_m128_from_m128d(a: m128d) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_to_m128_from_m128d(a: m128d) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Rounds the two f64
lanes to the low two f32
lanes.
Sourcepub fn convert_to_m128d_from_lower2_i32_m128i(a: m128i) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_to_m128d_from_lower2_i32_m128i(a: m128i) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Rounds the lower two i32
lanes to two f64
lanes.
Sourcepub fn convert_to_m128d_from_lower2_m128(a: m128) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn convert_to_m128d_from_lower2_m128(a: m128) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Rounds the two f64
lanes to the low two f32
lanes.
Sourcepub fn copy_i64_m128i_s(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn copy_i64_m128i_s(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Copy the low i64
lane to a new register, upper bits 0.
See: copy_i64_m128i_s
.
Sourcepub fn copy_replace_low_f64_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn copy_replace_low_f64_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Copies the a
value and replaces the low lane with the low b
value.
Sourcepub fn div_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn div_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a / b
.
See: div_m128d
.
Sourcepub fn div_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn div_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lowest lane a / b
, high lane unchanged.
See: div_m128d_s
.
Sourcepub fn extract_i16_as_i32_m128i<const LANE: i32>(a: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn extract_i16_as_i32_m128i<const LANE: i32>(a: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Gets an i16
value out of an m128i
, returns as i32
.
See: extract_i16_as_i32_m128i
.
Sourcepub fn get_f64_from_m128d_s(a: m128d) -> f64 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn get_f64_from_m128d_s(a: m128d) -> f64 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Gets the lower lane as an f64
value.
See: get_f64_from_m128d_s
.
Sourcepub fn get_i32_from_m128d_s(a: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn get_i32_from_m128d_s(a: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Converts the lower lane to an i32
value.
See: get_i32_from_m128d_s
.
Sourcepub fn get_i32_from_m128i_s(a: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn get_i32_from_m128i_s(a: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Converts the lower lane to an i32
value.
See: get_i32_from_m128i_s
.
Sourcepub fn get_i64_from_m128d_s(a: m128d) -> i64 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn get_i64_from_m128d_s(a: m128d) -> i64 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Converts the lower lane to an i64
value.
See: get_i64_from_m128d_s
.
Sourcepub fn get_i64_from_m128i_s(a: m128i) -> i64 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn get_i64_from_m128i_s(a: m128i) -> i64 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Converts the lower lane to an i64
value.
See: get_i64_from_m128i_s
.
Sourcepub fn insert_i16_from_i32_m128i<const LANE: i32>(a: m128i, i: i32) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn insert_i16_from_i32_m128i<const LANE: i32>(a: m128i, i: i32) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Inserts the low 16 bits of an i32
value into an m128i
.
Sourcepub fn load_f64_m128d_s(a: &f64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_f64_m128d_s(a: &f64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the reference into the low lane of the register.
See: load_f64_m128d_s
.
Sourcepub fn load_f64_splat_m128d(a: &f64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_f64_splat_m128d(a: &f64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the f64
reference into all lanes of a register.
See: load_f64_splat_m128d
.
Sourcepub fn load_i64_m128i_s(a: &m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_i64_m128i_s(a: &m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the low i64
into a register.
See: load_i64_m128i_s
.
Sourcepub fn load_m128d(a: &m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_m128d(a: &m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the reference into a register.
See: load_m128d
.
Sourcepub fn load_m128i(a: &m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_m128i(a: &m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the reference into a register.
See: load_m128i
.
Sourcepub fn load_replace_high_m128d(a: m128d, b: &f64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_replace_high_m128d(a: m128d, b: &f64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the reference into a register, replacing the high lane.
See: load_replace_high_m128d
.
Sourcepub fn load_replace_low_m128d(a: m128d, b: &f64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_replace_low_m128d(a: m128d, b: &f64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the reference into a register, replacing the low lane.
See: load_replace_low_m128d
.
Sourcepub fn load_reverse_m128d(a: &m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_reverse_m128d(a: &m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the reference into a register with reversed order.
See: load_reverse_m128d
.
Sourcepub fn load_unaligned_m128d(a: &[f64; 2]) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_unaligned_m128d(a: &[f64; 2]) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the reference into a register.
See: load_unaligned_m128d
.
Sourcepub fn load_unaligned_m128i(a: &[u8; 16]) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn load_unaligned_m128i(a: &[u8; 16]) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Loads the reference into a register.
See: load_unaligned_m128i
.
Sourcepub fn max_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn max_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise max(a, b)
with lanes as i16
.
See: max_i16_m128i
.
Sourcepub fn max_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn max_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise max(a, b)
.
See: max_m128d
.
Sourcepub fn max_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn max_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane max(a, b)
, other lanes unchanged.
See: max_m128d_s
.
Sourcepub fn max_u8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn max_u8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise max(a, b)
with lanes as u8
.
See: max_u8_m128i
.
Sourcepub fn min_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn min_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise min(a, b)
with lanes as i16
.
See: min_i16_m128i
.
Sourcepub fn min_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn min_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise min(a, b)
.
See: min_m128d
.
Sourcepub fn min_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn min_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane min(a, b)
, other lanes unchanged.
See: min_m128d_s
.
Sourcepub fn min_u8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn min_u8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise min(a, b)
with lanes as u8
.
See: min_u8_m128i
.
Sourcepub fn move_mask_i8_m128i(a: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn move_mask_i8_m128i(a: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Gathers the i8
sign bit of each lane.
See: move_mask_i8_m128i
.
Sourcepub fn move_mask_m128d(a: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn move_mask_m128d(a: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Gathers the sign bit of each lane.
See: move_mask_m128d
.
Sourcepub fn mul_i16_horizontal_add_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn mul_i16_horizontal_add_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Multiply i16
lanes producing i32
values, horizontal add pairs of i32
values to produce the final output.
Sourcepub fn mul_i16_keep_high_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn mul_i16_keep_high_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a * b
with lanes as i16
, keep the high bits of the i32
intermediates.
See: mul_i16_keep_high_m128i
.
Sourcepub fn mul_i16_keep_low_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn mul_i16_keep_low_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a * b
with lanes as i16
, keep the low bits of the i32
intermediates.
See: mul_i16_keep_low_m128i
.
Sourcepub fn mul_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn mul_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a * b
.
See: mul_m128d
.
Sourcepub fn mul_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn mul_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lowest lane a * b
, high lane unchanged.
See: mul_m128d_s
.
Sourcepub fn mul_u16_keep_high_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn mul_u16_keep_high_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a * b
with lanes as u16
, keep the high bits of the u32
intermediates.
See: mul_u16_keep_high_m128i
.
Sourcepub fn mul_widen_u32_odd_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn mul_widen_u32_odd_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Multiplies the odd u32
lanes and gives the widened (u64
) results.
See: mul_widen_u32_odd_m128i
.
Sourcepub fn pack_i16_to_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn pack_i16_to_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Saturating convert i16
to i8
, and pack the values.
See: pack_i16_to_i8_m128i
.
Sourcepub fn pack_i16_to_u8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn pack_i16_to_u8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Saturating convert i16
to u8
, and pack the values.
See: pack_i16_to_u8_m128i
.
Sourcepub fn pack_i32_to_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn pack_i32_to_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Saturating convert i32
to i16
, and pack the values.
See: pack_i32_to_i16_m128i
.
Sourcepub fn set_i16_m128i(
a: i16,
b: i16,
c: i16,
d: i16,
e: i16,
f: i16,
g: i16,
h: i16,
) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_i16_m128i( a: i16, b: i16, c: i16, d: i16, e: i16, f: i16, g: i16, h: i16, ) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128i
, first arg is the high lane.
See: set_i16_m128i
.
Sourcepub fn set_i32_m128i(a: i32, b: i32, c: i32, d: i32) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_i32_m128i(a: i32, b: i32, c: i32, d: i32) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128i
, first arg is the high lane.
See: set_i32_m128i
.
Sourcepub fn set_i32_m128i_s(i: i32) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_i32_m128i_s(i: i32) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Set an i32
as the low 32-bit lane of an m128i
, other lanes blank.
See: set_i32_m128i_s
.
Sourcepub fn set_i64_m128i(a: i64, b: i64) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_i64_m128i(a: i64, b: i64) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128i
, first arg is the high lane.
See: set_i64_m128i
.
Sourcepub fn set_i64_m128i_s(i: i64) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_i64_m128i_s(i: i64) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Set an i64
as the low 64-bit lane of an m128i
, other lanes blank.
See: set_i64_m128i_s
.
Sourcepub fn set_i8_m128i(
a: i8,
b: i8,
c: i8,
d: i8,
e: i8,
f: i8,
g: i8,
h: i8,
i: i8,
j: i8,
k: i8,
l: i8,
m: i8,
n: i8,
o: i8,
p: i8,
) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_i8_m128i( a: i8, b: i8, c: i8, d: i8, e: i8, f: i8, g: i8, h: i8, i: i8, j: i8, k: i8, l: i8, m: i8, n: i8, o: i8, p: i8, ) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128i
, first arg is the high lane.
See: set_i8_m128i
.
Sourcepub fn set_m128d(a: f64, b: f64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_m128d(a: f64, b: f64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128d
, first arg is the high lane.
See: set_m128d
.
Sourcepub fn set_m128d_s(a: f64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_m128d_s(a: f64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into the low lane of a m128d
.
See: set_m128d_s
.
Sourcepub fn set_reversed_i16_m128i(
a: i16,
b: i16,
c: i16,
d: i16,
e: i16,
f: i16,
g: i16,
h: i16,
) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_reversed_i16_m128i( a: i16, b: i16, c: i16, d: i16, e: i16, f: i16, g: i16, h: i16, ) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128i
, first arg is the low lane.
See: set_reversed_i16_m128i
.
Sourcepub fn set_reversed_i32_m128i(a: i32, b: i32, c: i32, d: i32) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_reversed_i32_m128i(a: i32, b: i32, c: i32, d: i32) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128i
, first arg is the low lane.
See: set_reversed_i32_m128i
.
Sourcepub fn set_reversed_i8_m128i(
a: i8,
b: i8,
c: i8,
d: i8,
e: i8,
f: i8,
g: i8,
h: i8,
i: i8,
j: i8,
k: i8,
l: i8,
m: i8,
n: i8,
o: i8,
p: i8,
) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_reversed_i8_m128i( a: i8, b: i8, c: i8, d: i8, e: i8, f: i8, g: i8, h: i8, i: i8, j: i8, k: i8, l: i8, m: i8, n: i8, o: i8, p: i8, ) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128i
, first arg is the low lane.
See: set_reversed_i8_m128i
.
Sourcepub fn set_reversed_m128d(a: f64, b: f64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_reversed_m128d(a: f64, b: f64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Sets the args into an m128d
, first arg is the low lane.
See: set_reversed_m128d
.
Sourcepub fn set_splat_i16_m128i(i: i16) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_splat_i16_m128i(i: i16) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Splats the i16
to all lanes of the m128i
.
See: set_splat_i16_m128i
.
Sourcepub fn set_splat_i32_m128i(i: i32) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_splat_i32_m128i(i: i32) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Splats the i32
to all lanes of the m128i
.
See: set_splat_i32_m128i
.
Sourcepub fn set_splat_i64_m128i(i: i64) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_splat_i64_m128i(i: i64) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Splats the i64
to both lanes of the m128i
.
See: set_splat_i64_m128i
.
Sourcepub fn set_splat_i8_m128i(i: i8) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_splat_i8_m128i(i: i8) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Splats the i8
to all lanes of the m128i
.
See: set_splat_i8_m128i
.
Sourcepub fn set_splat_m128d(a: f64) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn set_splat_m128d(a: f64) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Splats the args into both lanes of the m128d
.
See: set_splat_m128d
.
Sourcepub fn shl_all_u16_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shl_all_u16_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shift all u16
lanes to the left by the count
in the lower u64
lane.
See: shl_all_u16_m128i
.
Sourcepub fn shl_all_u32_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shl_all_u32_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shift all u32
lanes to the left by the count
in the lower u64
lane.
See: shl_all_u32_m128i
.
Sourcepub fn shl_all_u64_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shl_all_u64_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shift all u64
lanes to the left by the count
in the lower u64
lane.
See: shl_all_u64_m128i
.
Sourcepub fn shl_imm_u16_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shl_imm_u16_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts all u16
lanes left by an immediate.
See: shl_imm_u16_m128i
.
Sourcepub fn shl_imm_u32_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shl_imm_u32_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts all u32
lanes left by an immediate.
See: shl_imm_u32_m128i
.
Sourcepub fn shl_imm_u64_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shl_imm_u64_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts both u64
lanes left by an immediate.
See: shl_imm_u64_m128i
.
Sourcepub fn shr_all_i16_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_all_i16_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shift each i16
lane to the right by the count
in the lower i64
lane.
See: shr_all_i16_m128i
.
Sourcepub fn shr_all_i32_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_all_i32_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shift each i32
lane to the right by the count
in the lower i64
lane.
See: shr_all_i32_m128i
.
Sourcepub fn shr_all_u16_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_all_u16_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shift each u16
lane to the right by the count
in the lower u64
lane.
See: shr_all_u16_m128i
.
Sourcepub fn shr_all_u32_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_all_u32_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shift each u32
lane to the right by the count
in the lower u64
lane.
See: shr_all_u32_m128i
.
Sourcepub fn shr_all_u64_m128i(a: m128i, count: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_all_u64_m128i(a: m128i, count: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shift each u64
lane to the right by the count
in the lower u64
lane.
See: shr_all_u64_m128i
.
Sourcepub fn shr_imm_i16_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_imm_i16_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts all i16
lanes right by an immediate.
See: shr_imm_i16_m128i
.
Sourcepub fn shr_imm_i32_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_imm_i32_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts all i32
lanes right by an immediate.
See: shr_imm_i32_m128i
.
Sourcepub fn shr_imm_u16_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_imm_u16_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts all u16
lanes right by an immediate.
See: shr_imm_u16_m128i
.
Sourcepub fn shr_imm_u32_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_imm_u32_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts all u32
lanes right by an immediate.
See: shr_imm_u32_m128i
.
Sourcepub fn shr_imm_u64_m128i<const IMM: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shr_imm_u64_m128i<const IMM: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shifts both u64
lanes right by an immediate.
See: shr_imm_u64_m128i
.
Sourcepub fn shuffle_abi_f64_all_m128d<const MASK: i32>(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shuffle_abi_f64_all_m128d<const MASK: i32>(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shuffle the f64
lanes from $a
and $b
together using an immediate control value.
Sourcepub fn shuffle_ai_f32_all_m128i<const MASK: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shuffle_ai_f32_all_m128i<const MASK: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shuffle the i32
lanes in $a
using an immediate control value.
See: shuffle_ai_f32_all_m128i
.
Sourcepub fn shuffle_ai_i16_h64all_m128i<const MASK: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shuffle_ai_i16_h64all_m128i<const MASK: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shuffle the high i16
lanes in $a
using an immediate control value.
Sourcepub fn shuffle_ai_i16_l64all_m128i<const MASK: i32>(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn shuffle_ai_i16_l64all_m128i<const MASK: i32>(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Shuffle the low i16
lanes in $a
using an immediate control value.
Sourcepub fn sqrt_m128d(a: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sqrt_m128d(a: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise sqrt(a)
.
See: sqrt_m128d
.
Sourcepub fn sqrt_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sqrt_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Low lane sqrt(b)
, upper lane is unchanged from a
.
See: sqrt_m128d_s
.
Sourcepub fn store_high_m128d_s(r: &mut f64, a: m128d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_high_m128d_s(r: &mut f64, a: m128d)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the high lane value to the reference given.
See: store_high_m128d_s
.
Sourcepub fn store_i64_m128i_s(r: &mut i64, a: m128i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_i64_m128i_s(r: &mut i64, a: m128i)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the value to the reference given.
See: store_i64_m128i_s
.
Sourcepub fn store_m128d(r: &mut m128d, a: m128d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_m128d(r: &mut m128d, a: m128d)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the value to the reference given.
See: store_m128d
.
Sourcepub fn store_m128d_s(r: &mut f64, a: m128d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_m128d_s(r: &mut f64, a: m128d)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the low lane value to the reference given.
See: store_m128d_s
.
Sourcepub fn store_m128i(r: &mut m128i, a: m128i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_m128i(r: &mut m128i, a: m128i)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the value to the reference given.
See: store_m128i
.
Sourcepub fn store_reversed_m128d(r: &mut m128d, a: m128d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_reversed_m128d(r: &mut m128d, a: m128d)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the value to the reference given.
See: store_reversed_m128d
.
Sourcepub fn store_splat_m128d(r: &mut m128d, a: m128d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_splat_m128d(r: &mut m128d, a: m128d)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the low lane value to all lanes of the reference given.
See: store_splat_m128d
.
Sourcepub fn store_unaligned_m128d(r: &mut [f64; 2], a: m128d)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_unaligned_m128d(r: &mut [f64; 2], a: m128d)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the value to the reference given.
See: store_unaligned_m128d
.
Sourcepub fn store_unaligned_m128i(r: &mut [u8; 16], a: m128i)
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn store_unaligned_m128i(r: &mut [u8; 16], a: m128i)
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Stores the value to the reference given.
See: store_unaligned_m128i
.
Sourcepub fn sub_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a - b
with lanes as i16
.
See: sub_i16_m128i
.
Sourcepub fn sub_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a - b
with lanes as i32
.
See: sub_i32_m128i
.
Sourcepub fn sub_i64_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_i64_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a - b
with lanes as i64
.
See: sub_i64_m128i
.
Sourcepub fn sub_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a - b
with lanes as i8
.
See: sub_i8_m128i
.
Sourcepub fn sub_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise a - b
.
See: sub_m128d
.
Sourcepub fn sub_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lowest lane a - b
, high lane unchanged.
See: sub_m128d_s
.
Sourcepub fn sub_saturating_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_saturating_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise saturating a - b
with lanes as i16
.
See: sub_saturating_i16_m128i
.
Sourcepub fn sub_saturating_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_saturating_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise saturating a - b
with lanes as i8
.
See: sub_saturating_i8_m128i
.
Sourcepub fn sub_saturating_u16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_saturating_u16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise saturating a - b
with lanes as u16
.
See: sub_saturating_u16_m128i
.
Sourcepub fn sub_saturating_u8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sub_saturating_u8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Lanewise saturating a - b
with lanes as u8
.
See: sub_saturating_u8_m128i
.
Sourcepub fn sum_of_u8_abs_diff_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn sum_of_u8_abs_diff_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Compute “sum of u8
absolute differences”.
See: sum_of_u8_abs_diff_m128i
.
Sourcepub fn truncate_m128_to_m128i(a: m128) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn truncate_m128_to_m128i(a: m128) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Truncate the f32
lanes to i32
lanes.
See: truncate_m128_to_m128i
.
Sourcepub fn truncate_m128d_to_m128i(a: m128d) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn truncate_m128d_to_m128i(a: m128d) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Truncate the f64
lanes to the lower i32
lanes (upper i32
lanes 0).
See: truncate_m128d_to_m128i
.
Sourcepub fn truncate_to_i32_m128d_s(a: m128d) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn truncate_to_i32_m128d_s(a: m128d) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Truncate the lower lane into an i32
.
See: truncate_to_i32_m128d_s
.
Sourcepub fn truncate_to_i64_m128d_s(a: m128d) -> i64 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn truncate_to_i64_m128d_s(a: m128d) -> i64 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Truncate the lower lane into an i64
.
See: truncate_to_i64_m128d_s
.
Sourcepub fn unpack_high_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_high_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave high i16
lanes of a
and b
.
See: unpack_high_i16_m128i
.
Sourcepub fn unpack_high_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_high_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave high i32
lanes of a
and b
.
See: unpack_high_i32_m128i
.
Sourcepub fn unpack_high_i64_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_high_i64_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave high i64
lanes of a
and b
.
See: unpack_high_i64_m128i
.
Sourcepub fn unpack_high_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_high_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave high i8
lanes of a
and b
.
See: unpack_high_i8_m128i
.
Sourcepub fn unpack_high_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_high_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave high lanes of a
and b
.
See: unpack_high_m128d
.
Sourcepub fn unpack_low_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_low_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave low i16
lanes of a
and b
.
See: unpack_low_i16_m128i
.
Sourcepub fn unpack_low_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_low_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave low i32
lanes of a
and b
.
See: unpack_low_i32_m128i
.
Sourcepub fn unpack_low_i64_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_low_i64_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave low i64
lanes of a
and b
.
See: unpack_low_i64_m128i
.
Sourcepub fn unpack_low_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_low_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave low i8
lanes of a
and b
.
See: unpack_low_i8_m128i
.
Sourcepub fn unpack_low_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn unpack_low_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Unpack and interleave low lanes of a
and b
.
See: unpack_low_m128d
.
Sourcepub fn zeroed_m128d() -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn zeroed_m128d() -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.Both lanes zero.
See: zeroed_m128d
.
Sourcepub fn zeroed_m128i() -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.
pub fn zeroed_m128i() -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse2
only.All lanes zero.
See: zeroed_m128i
.
Source§impl Arch
impl Arch
Sourcepub fn add_horizontal_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn add_horizontal_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Add each lane horizontally, pack the outputs as a
then b
.
See: add_horizontal_m128
.
Sourcepub fn add_horizontal_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn add_horizontal_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Add each lane horizontally, pack the outputs as a
then b
.
See: add_horizontal_m128d
.
Sourcepub fn addsub_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn addsub_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Alternately, from the top, add a lane and then subtract a lane.
See: addsub_m128
.
Sourcepub fn addsub_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn addsub_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Add the high lane and subtract the low lane.
See: addsub_m128d
.
Sourcepub fn duplicate_even_lanes_m128(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn duplicate_even_lanes_m128(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Duplicate the odd lanes to the even lanes.
Sourcepub fn duplicate_low_lane_m128d_s(a: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn duplicate_low_lane_m128d_s(a: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Copy the low lane of the input to both lanes of the output.
Sourcepub fn duplicate_odd_lanes_m128(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn duplicate_odd_lanes_m128(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Duplicate the odd lanes to the even lanes.
See: duplicate_odd_lanes_m128
.
Sourcepub fn sub_horizontal_m128(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn sub_horizontal_m128(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Subtract each lane horizontally, pack the outputs as a
then b
.
See: sub_horizontal_m128
.
Sourcepub fn sub_horizontal_m128d(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.
pub fn sub_horizontal_m128d(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse3
only.Subtract each lane horizontally, pack the outputs as a
then b
.
See: sub_horizontal_m128d
.
Source§impl Arch
impl Arch
Sourcepub fn blend_imm_i16_m128i<const IMM: i32>(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn blend_imm_i16_m128i<const IMM: i32>(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Blends the i16
lanes according to the immediate mask.
See: blend_imm_i16_m128i
.
Sourcepub fn blend_imm_m128<const IMM: i32>(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn blend_imm_m128<const IMM: i32>(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Blends the lanes according to the immediate mask.
See: blend_imm_m128
.
Sourcepub fn blend_imm_m128d<const IMM: i32>(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn blend_imm_m128d<const IMM: i32>(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Blends the i16
lanes according to the immediate mask.
See: blend_imm_m128d
.
Sourcepub fn blend_varying_i8_m128i(a: m128i, b: m128i, mask: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn blend_varying_i8_m128i(a: m128i, b: m128i, mask: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Blend the i8
lanes according to a runtime varying mask.
See: blend_varying_i8_m128i
.
Sourcepub fn blend_varying_m128(a: m128, b: m128, mask: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn blend_varying_m128(a: m128, b: m128, mask: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Blend the lanes according to a runtime varying mask.
See: blend_varying_m128
.
Sourcepub fn blend_varying_m128d(a: m128d, b: m128d, mask: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn blend_varying_m128d(a: m128d, b: m128d, mask: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Blend the lanes according to a runtime varying mask.
See: blend_varying_m128d
.
Sourcepub fn ceil_m128(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn ceil_m128(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Round each lane to a whole number, towards positive infinity.
See: ceil_m128
.
Sourcepub fn ceil_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn ceil_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Round the low lane of b
toward positive infinity, other lanes a
.
See: ceil_m128_s
.
Sourcepub fn ceil_m128d(a: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn ceil_m128d(a: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Round each lane to a whole number, towards positive infinity.
See: ceil_m128d
.
Sourcepub fn ceil_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn ceil_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Round the low lane of b
toward positive infinity, high lane is a
.
See: ceil_m128d_s
.
Sourcepub fn cmp_eq_mask_i64_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn cmp_eq_mask_i64_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise a == b
with lanes as i64
.
See: cmp_eq_mask_i64_m128i
.
Sourcepub fn convert_to_i16_m128i_from_lower2_i16_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_i16_m128i_from_lower2_i16_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower two i64
lanes to two i32
lanes.
Sourcepub fn convert_to_i16_m128i_from_lower8_i8_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_i16_m128i_from_lower8_i8_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower eight i8
lanes to eight i16
lanes.
Sourcepub fn convert_to_i32_m128i_from_lower4_i16_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_i32_m128i_from_lower4_i16_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower four i16
lanes to four i32
lanes.
Sourcepub fn convert_to_i32_m128i_from_lower4_i8_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_i32_m128i_from_lower4_i8_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower four i8
lanes to four i32
lanes.
Sourcepub fn convert_to_i64_m128i_from_lower2_i32_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_i64_m128i_from_lower2_i32_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower two i32
lanes to two i64
lanes.
Sourcepub fn convert_to_i64_m128i_from_lower2_i8_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_i64_m128i_from_lower2_i8_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower two i8
lanes to two i64
lanes.
Sourcepub fn convert_to_u16_m128i_from_lower8_u8_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_u16_m128i_from_lower8_u8_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower eight u8
lanes to eight u16
lanes.
Sourcepub fn convert_to_u32_m128i_from_lower4_u16_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_u32_m128i_from_lower4_u16_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower four u16
lanes to four u32
lanes.
Sourcepub fn convert_to_u32_m128i_from_lower4_u8_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_u32_m128i_from_lower4_u8_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower four u8
lanes to four u32
lanes.
Sourcepub fn convert_to_u64_m128i_from_lower2_u16_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_u64_m128i_from_lower2_u16_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower two u16
lanes to two u64
lanes.
Sourcepub fn convert_to_u64_m128i_from_lower2_u32_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_u64_m128i_from_lower2_u32_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower two u32
lanes to two u64
lanes.
Sourcepub fn convert_to_u64_m128i_from_lower2_u8_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn convert_to_u64_m128i_from_lower2_u8_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Convert the lower two u8
lanes to two u64
lanes.
Sourcepub fn dot_product_m128<const IMM: i32>(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn dot_product_m128<const IMM: i32>(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Performs a dot product of two m128
registers.
See: dot_product_m128
.
Sourcepub fn dot_product_m128d<const IMM: i32>(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn dot_product_m128d<const IMM: i32>(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Performs a dot product of two m128d
registers.
See: dot_product_m128d
.
Sourcepub fn extract_f32_as_i32_bits_imm_m128<const IMM: i32>(a: m128) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn extract_f32_as_i32_bits_imm_m128<const IMM: i32>(a: m128) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Gets the f32
lane requested. Returns as an i32
bit pattern.
Sourcepub fn extract_i32_imm_m128i<const IMM: i32>(a: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn extract_i32_imm_m128i<const IMM: i32>(a: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Gets the i32
lane requested. Only the lowest 2 bits are considered.
See: extract_i32_imm_m128i
.
Sourcepub fn extract_i64_imm_m128i<const IMM: i32>(a: m128i) -> i64 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn extract_i64_imm_m128i<const IMM: i32>(a: m128i) -> i64 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Gets the i64
lane requested. Only the lowest bit is considered.
See: extract_i64_imm_m128i
.
Sourcepub fn extract_i8_as_i32_imm_m128i<const IMM: i32>(a: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn extract_i8_as_i32_imm_m128i<const IMM: i32>(a: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Gets the i8
lane requested. Only the lowest 4 bits are considered.
Sourcepub fn floor_m128(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn floor_m128(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Round each lane to a whole number, towards negative infinity
See: floor_m128
.
Sourcepub fn floor_m128_s(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn floor_m128_s(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Round the low lane of b
toward negative infinity, other lanes a
.
See: floor_m128_s
.
Sourcepub fn floor_m128d(a: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn floor_m128d(a: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Round each lane to a whole number, towards negative infinity
See: floor_m128d
.
Sourcepub fn floor_m128d_s(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn floor_m128d_s(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Round the low lane of b
toward negative infinity, high lane is a
.
See: floor_m128d_s
.
Sourcepub fn insert_f32_imm_m128<const IMM: i32>(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn insert_f32_imm_m128<const IMM: i32>(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Inserts a lane from $b
into $a
, optionally at a new position.
See: insert_f32_imm_m128
.
Sourcepub fn insert_i32_imm_m128i<const IMM: i32>(a: m128i, new: i32) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn insert_i32_imm_m128i<const IMM: i32>(a: m128i, new: i32) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Inserts a new value for the i32
lane specified.
See: insert_i32_imm_m128i
.
Sourcepub fn insert_i64_imm_m128i<const IMM: i32>(a: m128i, new: i64) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn insert_i64_imm_m128i<const IMM: i32>(a: m128i, new: i64) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Inserts a new value for the i64
lane specified.
See: insert_i64_imm_m128i
.
Sourcepub fn insert_i8_imm_m128i<const IMM: i32>(a: m128i, new: i32) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn insert_i8_imm_m128i<const IMM: i32>(a: m128i, new: i32) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Inserts a new value for the i64
lane specified.
See: insert_i8_imm_m128i
.
Sourcepub fn max_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn max_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise max(a, b)
with lanes as i32
.
See: max_i32_m128i
.
Sourcepub fn max_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn max_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise max(a, b)
with lanes as i8
.
See: max_i8_m128i
.
Sourcepub fn max_u16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn max_u16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise max(a, b)
with lanes as u16
.
See: max_u16_m128i
.
Sourcepub fn max_u32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn max_u32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise max(a, b)
with lanes as u32
.
See: max_u32_m128i
.
Sourcepub fn min_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn min_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise min(a, b)
with lanes as i32
.
See: min_i32_m128i
.
Sourcepub fn min_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn min_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise min(a, b)
with lanes as i8
.
See: min_i8_m128i
.
Sourcepub fn min_position_u16_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn min_position_u16_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Min u16
value, position, and other lanes zeroed.
See: min_position_u16_m128i
.
Sourcepub fn min_u16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn min_u16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise min(a, b)
with lanes as u16
.
See: min_u16_m128i
.
Sourcepub fn min_u32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn min_u32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise min(a, b)
with lanes as u32
.
See: min_u32_m128i
.
Sourcepub fn mul_32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn mul_32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Lanewise a * b
with 32-bit lanes.
See: mul_32_m128i
.
Sourcepub fn mul_widen_i32_odd_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn mul_widen_i32_odd_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Multiplies the odd i32
lanes and gives the widened (i64
) results.
See: mul_widen_i32_odd_m128i
.
Sourcepub fn multi_packed_sum_abs_diff_u8_m128i<const IMM: i32>(
a: m128i,
b: m128i,
) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn multi_packed_sum_abs_diff_u8_m128i<const IMM: i32>( a: m128i, b: m128i, ) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Computes eight u16
“sum of absolute difference” values according to the bytes selected.
Sourcepub fn pack_i32_to_u16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn pack_i32_to_u16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Saturating convert i32
to u16
, and pack the values.
See: pack_i32_to_u16_m128i
.
Sourcepub fn round_m128<const MODE: i32>(a: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn round_m128<const MODE: i32>(a: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Rounds each lane in the style specified.
See: round_m128
.
Sourcepub fn round_m128_s<const MODE: i32>(a: m128, b: m128) -> m128
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn round_m128_s<const MODE: i32>(a: m128, b: m128) -> m128
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Rounds $b
low as specified, other lanes use $a
.
See: round_m128_s
.
Sourcepub fn round_m128d<const MODE: i32>(a: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn round_m128d<const MODE: i32>(a: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Rounds each lane in the style specified.
See: round_m128d
.
Sourcepub fn round_m128d_s<const MODE: i32>(a: m128d, b: m128d) -> m128d
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn round_m128d_s<const MODE: i32>(a: m128d, b: m128d) -> m128d
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Rounds $b
low as specified, keeps $a
high.
See: round_m128d_s
.
Sourcepub fn test_all_ones_m128i(a: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn test_all_ones_m128i(a: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Tests if all bits are 1.
See: test_all_ones_m128i
.
Sourcepub fn test_all_zeroes_m128i(a: m128i, mask: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn test_all_zeroes_m128i(a: m128i, mask: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Returns if all masked bits are 0, (a & mask) as u128 == 0
See: test_all_zeroes_m128i
.
Sourcepub fn test_mixed_ones_and_zeroes_m128i(a: m128i, mask: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn test_mixed_ones_and_zeroes_m128i(a: m128i, mask: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Returns if, among the masked bits, there’s both 0s and 1s
Sourcepub fn testc_m128i(a: m128i, b: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn testc_m128i(a: m128i, b: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Compute the bitwise NOT of a
and then AND with b
,
returns 1 if the result is zero, otherwise 0.
See: testc_m128i
.
Sourcepub fn testz_m128i(a: m128i, b: m128i) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.
pub fn testz_m128i(a: m128i, b: m128i) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.1
only.Computes the bitwise AND of 256 bits in a
and
b
, returns 1 if the result is zero, otherwise 0.
See: testz_m128i
.
Source§impl Arch
impl Arch
Sourcepub fn cmp_gt_mask_i64_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.
pub fn cmp_gt_mask_i64_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.Lanewise a > b
with lanes as i64
.
See: cmp_gt_mask_i64_m128i
.
Sourcepub fn crc32_u16(crc: u32, v: u16) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.
pub fn crc32_u16(crc: u32, v: u16) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.Accumulates the u16
into a running CRC32 value.
See: crc32_u16
.
Sourcepub fn crc32_u32(crc: u32, v: u32) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.
pub fn crc32_u32(crc: u32, v: u32) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.Accumulates the u32
into a running CRC32 value.
See: crc32_u32
.
Sourcepub fn crc32_u64(crc: u64, v: u64) -> u64
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.
pub fn crc32_u64(crc: u64, v: u64) -> u64
dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.Accumulates the u64
into a running CRC32 value.
See: crc32_u64
.
Sourcepub fn crc32_u8(crc: u32, v: u8) -> u32 ⓘ
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.
pub fn crc32_u8(crc: u32, v: u8) -> u32 ⓘ
dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.Accumulates the u8
into a running CRC32 value.
See: crc32_u8
.
Sourcepub fn search_explicit_str_for_index<const IMM: i32>(
needle: m128i,
needle_len: i32,
haystack: m128i,
haystack_len: i32,
) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.
pub fn search_explicit_str_for_index<const IMM: i32>( needle: m128i, needle_len: i32, haystack: m128i, haystack_len: i32, ) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.Search for needle
in `haystack, with explicit string length.
Sourcepub fn search_explicit_str_for_mask<const IMM: i32>(
needle: m128i,
needle_len: i32,
haystack: m128i,
haystack_len: i32,
) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.
pub fn search_explicit_str_for_mask<const IMM: i32>( needle: m128i, needle_len: i32, haystack: m128i, haystack_len: i32, ) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.Search for needle
in `haystack, with explicit string length.
Sourcepub fn search_implicit_str_for_index<const IMM: i32>(
needle: m128i,
haystack: m128i,
) -> i32
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.
pub fn search_implicit_str_for_index<const IMM: i32>( needle: m128i, haystack: m128i, ) -> i32
dep_safe_arch
and (x86 or x86-64) and target feature sse4.2
only.Search for needle
in `haystack, with implicit string length.
Source§impl Arch
impl Arch
Sourcepub fn abs_i16_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn abs_i16_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Lanewise absolute value with lanes as i16
.
See: abs_i16_m128i
.
Sourcepub fn abs_i32_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn abs_i32_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Lanewise absolute value with lanes as i32
.
See: abs_i32_m128i
.
Sourcepub fn abs_i8_m128i(a: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn abs_i8_m128i(a: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Lanewise absolute value with lanes as i8
.
See: abs_i8_m128i
.
Sourcepub fn add_horizontal_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn add_horizontal_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Add horizontal pairs of i16
values, pack the outputs as a
then b
.
See: add_horizontal_i16_m128i
.
Sourcepub fn add_horizontal_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn add_horizontal_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Add horizontal pairs of i32
values, pack the outputs as a
then b
.
See: add_horizontal_i32_m128i
.
Sourcepub fn add_horizontal_saturating_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn add_horizontal_saturating_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Add horizontal pairs of i16
values, saturating, pack the outputs as a
then b
.
Sourcepub fn combined_byte_shr_imm_m128i<const IMM: i32>(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn combined_byte_shr_imm_m128i<const IMM: i32>(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Counts $a
as the high bytes and $b
as the low bytes then performs a
byte shift to the right by the immediate value.
Sourcepub fn mul_i16_scale_round_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn mul_i16_scale_round_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Multiply i16
lanes into i32
intermediates, keep the high 18 bits,
round by adding 1, right shift by 1.
Sourcepub fn mul_u8i8_add_horizontal_saturating_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn mul_u8i8_add_horizontal_saturating_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.This is dumb and weird.
Sourcepub fn shuffle_av_i8z_all_m128i(a: m128i, v: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn shuffle_av_i8z_all_m128i(a: m128i, v: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Shuffle i8
lanes in a
using i8
values in v
.
See: shuffle_av_i8z_all_m128i
.
Sourcepub fn sign_apply_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn sign_apply_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Applies the sign of i16
values in b
to the values in a
.
See: sign_apply_i16_m128i
.
Sourcepub fn sign_apply_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn sign_apply_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Applies the sign of i32
values in b
to the values in a
.
See: sign_apply_i32_m128i
.
Sourcepub fn sign_apply_i8_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn sign_apply_i8_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Applies the sign of i8
values in b
to the values in a
.
See: sign_apply_i8_m128i
.
Sourcepub fn sub_horizontal_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn sub_horizontal_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Subtract horizontal pairs of i16
values, pack the outputs as a
then b
.
See: sub_horizontal_i16_m128i
.
Sourcepub fn sub_horizontal_i32_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn sub_horizontal_i32_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Subtract horizontal pairs of i32
values, pack the outputs as a
then b
.
See: sub_horizontal_i32_m128i
.
Sourcepub fn sub_horizontal_saturating_i16_m128i(a: m128i, b: m128i) -> m128i
Available on crate feature dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.
pub fn sub_horizontal_saturating_i16_m128i(a: m128i, b: m128i) -> m128i
dep_safe_arch
and (x86 or x86-64) and target feature ssse3
only.Subtract horizontal pairs of i16
values, saturating, pack the outputs as a
then b
.
Auto Trait Implementations§
impl Freeze for Arch
impl RefUnwindSafe for Arch
impl Send for Arch
impl Sync for Arch
impl Unpin for Arch
impl UnwindSafe for Arch
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> ByteSized for T
impl<T> ByteSized for T
Source§const BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
Source§fn byte_align(&self) -> usize
fn byte_align(&self) -> usize
Source§fn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Source§impl<T, R> Chain<R> for Twhere
T: ?Sized,
impl<T, R> Chain<R> for Twhere
T: ?Sized,
Source§impl<T> ExtAny for T
impl<T> ExtAny for T
Source§fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
TypeId
of Self
using a custom hasher.Source§fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Source§impl<T> ExtMem for Twhere
T: ?Sized,
impl<T> ExtMem for Twhere
T: ?Sized,
Source§const NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Source§fn mem_align_of<T>() -> usize
fn mem_align_of<T>() -> usize
Source§fn mem_align_of_val(&self) -> usize
fn mem_align_of_val(&self) -> usize
Source§fn mem_size_of<T>() -> usize
fn mem_size_of<T>() -> usize
Source§fn mem_size_of_val(&self) -> usize
fn mem_size_of_val(&self) -> usize
Source§fn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
true
if dropping values of this type matters. Read moreSource§fn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
self
without running its destructor. Read moreSource§fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Source§unsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§fn mem_as_bytes(&self) -> &[u8] ⓘ
fn mem_as_bytes(&self) -> &[u8] ⓘ
unsafe_slice
only.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Hook for T
impl<T> Hook for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more