Module core::core_arch::x86

source ·
🔬This is a nightly-only experimental API. (stdsimd #48556)
Available on x86 or x86-64 only.
Expand description

x86 and x86_64 intrinsics.

Re-exports

  • pub use self::eflags::*;
    Experimental
  • pub use self::fxsr::*;
    Experimental
  • pub use self::bswap::*;
    Experimental
  • pub use self::rdtsc::*;
    Experimental
  • pub use self::cpuid::*;
    Experimental
  • pub use self::xsave::*;
    Experimental
  • pub use self::sse::*;
    Experimental
  • pub use self::sse2::*;
    Experimental
  • pub use self::sse3::*;
    Experimental
  • pub use self::ssse3::*;
    Experimental
  • pub use self::sse41::*;
    Experimental
  • pub use self::sse42::*;
    Experimental
  • pub use self::avx::*;
    Experimental
  • pub use self::avx2::*;
    Experimental
  • pub use self::fma::*;
    Experimental
  • pub use self::abm::*;
    Experimental
  • pub use self::bmi1::*;
    Experimental
  • pub use self::bmi2::*;
    Experimental
  • pub use self::sse4a::*;
    Experimental
  • pub use self::tbm::*;
    Experimental
  • pub use self::pclmulqdq::*;
    Experimental
  • pub use self::aes::*;
    Experimental
  • pub use self::rdrand::*;
    Experimental
  • pub use self::sha::*;
    Experimental
  • pub use self::adx::*;
    Experimental
  • pub use self::avx512f::*;
    Experimental
  • pub use self::avx512bw::*;
    Experimental
  • pub use self::avx512cd::*;
    Experimental
  • pub use self::avx512ifma::*;
    Experimental
  • pub use self::avx512vbmi::*;
    Experimental
  • pub use self::avx512vbmi2::*;
    Experimental
  • pub use self::avx512vnni::*;
    Experimental
  • pub use self::avx512bitalg::*;
    Experimental
  • pub use self::gfni::*;
    Experimental
  • pub use self::avx512vpopcntdq::*;
    Experimental
  • pub use self::vaes::*;
    Experimental
  • pub use self::vpclmulqdq::*;
    Experimental
  • pub use self::bt::*;
    Experimental
  • pub use self::rtm::*;
    Experimental
  • pub use self::f16c::*;
    Experimental
  • pub use self::avx512bf16::*;
    Experimental

Modules

  • abm 🔒 Experimental
    Advanced Bit Manipulation (ABM) instructions
  • adx 🔒 Experimental
  • aes 🔒 Experimental
    AES New Instructions (AES-NI)
  • avx 🔒 Experimental
    Advanced Vector Extensions (AVX)
  • avx2 🔒 Experimental
    Advanced Vector Extensions 2 (AVX)
  • avx512bf16 🔒 Experimental
  • avx512bitalg 🔒 Experimental
    Bit-oriented Algorithms (BITALG)
  • avx512bw 🔒 Experimental
  • avx512cd 🔒 Experimental
  • avx512f 🔒 Experimental
  • avx512ifma 🔒 Experimental
  • avx512vbmi 🔒 Experimental
  • avx512vbmi2 🔒 Experimental
  • avx512vnni 🔒 Experimental
  • avx512vpopcntdq 🔒 Experimental
    Vectorized Population Count Instructions for Double- and Quadwords (VPOPCNTDQ)
  • bmi1 🔒 Experimental
    Bit Manipulation Instruction (BMI) Set 1.0.
  • bmi2 🔒 Experimental
    Bit Manipulation Instruction (BMI) Set 2.0.
  • bswap 🔒 Experimental
    Byte swap intrinsics.
  • bt 🔒 Experimental
  • cpuid 🔒 Experimental
    cpuid intrinsics
  • eflags 🔒 Experimental
    i386 intrinsics
  • f16c 🔒 Experimental
  • fma 🔒 Experimental
    Fused Multiply-Add instruction set (FMA)
  • fxsr 🔒 Experimental
    FXSR floating-point context fast save and restore.
  • gfni 🔒 Experimental
    Galois Field New Instructions (GFNI)
  • macros 🔒 Experimental
    Utility macros.
  • pclmulqdq 🔒 Experimental
    Carry-less Multiplication (CLMUL)
  • rdrand 🔒 Experimental
    RDRAND and RDSEED instructions for returning random numbers from an Intel on-chip hardware random number generator which has been seeded by an on-chip entropy source.
  • rdtsc 🔒 Experimental
    RDTSC instructions.
  • rtm 🔒 Experimental
    Intel’s Restricted Transactional Memory (RTM).
  • sha 🔒 Experimental
  • sse 🔒 Experimental
    Streaming SIMD Extensions (SSE)
  • sse2 🔒 Experimental
    Streaming SIMD Extensions 2 (SSE2)
  • sse3 🔒 Experimental
    Streaming SIMD Extensions 3 (SSE3)
  • sse4a 🔒 Experimental
    i686’s Streaming SIMD Extensions 4a (SSE4a)
  • sse41 🔒 Experimental
    Streaming SIMD Extensions 4.1 (SSE4.1)
  • sse42 🔒 Experimental
    Streaming SIMD Extensions 4.2 (SSE4.2)
  • ssse3 🔒 Experimental
    Supplemental Streaming SIMD Extensions 3 (SSSE3)
  • tbm 🔒 Experimental
    Trailing Bit Manipulation (TBM) instruction set.
  • vaes 🔒 Experimental
    Vectorized AES Instructions (VAES)
  • vpclmulqdq 🔒 Experimental
    Vectorized Carry-less Multiplication (VCLMUL)
  • xsave 🔒 Experimental
    i586’s xsave and xsaveopt target feature intrinsics

Structs

  • __m128bhExperimental
    128-bit wide set of eight ‘u16’ types, x86-specific
  • __m256bhExperimental
    256-bit wide set of 16 ‘u16’ types, x86-specific
  • __m512bhExperimental
    512-bit wide set of 32 ‘u16’ types, x86-specific
  • 128-bit wide set of four f32 types, x86-specific
  • 128-bit wide set of two f64 types, x86-specific
  • 128-bit wide integer vector type, x86-specific
  • 256-bit wide set of eight f32 types, x86-specific
  • 256-bit wide set of four f64 types, x86-specific
  • 256-bit wide integer vector type, x86-specific
  • 512-bit wide set of sixteen f32 types, x86-specific
  • 512-bit wide set of eight f64 types, x86-specific
  • 512-bit wide integer vector type, x86-specific

Traits

Type Definitions

  • _MM_CMPINT_ENUMExperimental
    The _MM_CMPINT_ENUM type used to specify comparison operations in AVX-512 intrinsics.
  • The MM_MANTISSA_NORM_ENUM type used to specify mantissa normalized operations in AVX-512 intrinsics.
  • The MM_MANTISSA_SIGN_ENUM type used to specify mantissa signed operations in AVX-512 intrinsics.
  • _MM_PERM_ENUMExperimental
    The MM_PERM_ENUM type used to specify shuffle operations in AVX-512 intrinsics.
  • __mmask8Experimental
    The __mmask8 type used in AVX-512 intrinsics, a 8-bit integer
  • __mmask16Experimental
    The __mmask16 type used in AVX-512 intrinsics, a 16-bit integer
  • __mmask32Experimental
    The __mmask32 type used in AVX-512 intrinsics, a 32-bit integer
  • __mmask64Experimental
    The __mmask64 type used in AVX-512 intrinsics, a 64-bit integer