clang 20.0.0git
Functions | Variables
immintrin.h File Reference
#include <x86gprintrin.h>
#include <mmintrin.h>
#include <xmmintrin.h>
#include <emmintrin.h>
#include <pmmintrin.h>
#include <tmmintrin.h>
#include <smmintrin.h>
#include <wmmintrin.h>
#include <clflushoptintrin.h>
#include <clwbintrin.h>
#include <avxintrin.h>
#include <avx2intrin.h>
#include <f16cintrin.h>
#include <bmiintrin.h>
#include <bmi2intrin.h>
#include <lzcntintrin.h>
#include <popcntintrin.h>
#include <fmaintrin.h>
#include <avx512fintrin.h>
#include <avx512vlintrin.h>
#include <avx512bwintrin.h>
#include <avx512bitalgintrin.h>
#include <avx512cdintrin.h>
#include <avx512vpopcntdqintrin.h>
#include <avx512vpopcntdqvlintrin.h>
#include <avx512vnniintrin.h>
#include <avx512vlvnniintrin.h>
#include <avxvnniintrin.h>
#include <avx512dqintrin.h>
#include <avx512vlbitalgintrin.h>
#include <avx512vlbwintrin.h>
#include <avx512vlcdintrin.h>
#include <avx512vldqintrin.h>
#include <avx512ifmaintrin.h>
#include <avx512ifmavlintrin.h>
#include <avxifmaintrin.h>
#include <avx512vbmiintrin.h>
#include <avx512vbmivlintrin.h>
#include <avx512vbmi2intrin.h>
#include <avx512vlvbmi2intrin.h>
#include <avx512fp16intrin.h>
#include <avx512vlfp16intrin.h>
#include <avx512bf16intrin.h>
#include <avx512vlbf16intrin.h>
#include <pkuintrin.h>
#include <vpclmulqdqintrin.h>
#include <vaesintrin.h>
#include <gfniintrin.h>
#include <avxvnniint8intrin.h>
#include <avxneconvertintrin.h>
#include <sha512intrin.h>
#include <sm3intrin.h>
#include <sm4intrin.h>
#include <avxvnniint16intrin.h>
#include <rtmintrin.h>
#include <xtestintrin.h>
#include <shaintrin.h>
#include <fxsrintrin.h>
#include <xsaveintrin.h>
#include <xsaveoptintrin.h>
#include <xsavecintrin.h>
#include <xsavesintrin.h>
#include <cetintrin.h>
#include <adcintrin.h>
#include <adxintrin.h>
#include <rdseedintrin.h>
#include <wbnoinvdintrin.h>
#include <cldemoteintrin.h>
#include <waitpkgintrin.h>
#include <movdirintrin.h>
#include <pconfigintrin.h>
#include <sgxintrin.h>
#include <ptwriteintrin.h>
#include <invpcidintrin.h>
#include <amxfp16intrin.h>
#include <keylockerintrin.h>
#include <amxintrin.h>
#include <amxcomplexintrin.h>
#include <avx512vp2intersectintrin.h>
#include <avx512vlvp2intersectintrin.h>
#include <avx10_2convertintrin.h>
#include <avx10_2minmaxintrin.h>
#include <avx10_2niintrin.h>
#include <avx10_2satcvtintrin.h>
#include <avx10_2_512convertintrin.h>
#include <avx10_2_512minmaxintrin.h>
#include <avx10_2_512niintrin.h>
#include <avx10_2_512satcvtintrin.h>
#include <enqcmdintrin.h>
#include <serializeintrin.h>
#include <tsxldtrkintrin.h>

Go to the source code of this file.

Functions

static __inline__ unsigned int __attribute__ ((__always_inline__, __nodebug__, __target__("rdpid"))) _rdpid_u32(void)
 Reads the value of the IA32_TSC_AUX MSR (0xc0000103).
 
static __inline__ int __attribute__ ((__always_inline__, __nodebug__, __target__("rdrnd"))) _rdrand16_step(unsigned short *__p)
 Returns a 16-bit hardware-generated random value.
 
static __inline__ short __attribute__ ((__always_inline__, __nodebug__, __target__("movbe"))) _loadbe_i16(void const *__P)
 Load a 16-bit value from memory and swap its bytes.
 

Variables

static __inline__ void short __D
 
struct __storeu_i16 *__P __v = __builtin_bswap16((unsigned short)__D)
 

Function Documentation

◆ __attribute__() [1/3]

static __inline__ short __attribute__ ( (__always_inline__, __nodebug__, __target__("movbe"))  ) const
static

Load a 16-bit value from memory and swap its bytes.

Swap the bytes of a 32-bit value and store it to memory.

Load a 32-bit value from memory and swap its bytes.

Swap the bytes of a 16-bit value and store it to memory.

This intrinsic corresponds to the MOVBE instruction.

Parameters
__PA pointer to the 16-bit value to load.
Returns
The byte-swapped value.

This intrinsic corresponds to the MOVBE instruction.

Parameters
__PA pointer to the memory for storing the swapped value.
__DThe 16-bit value to be byte-swapped.

This intrinsic corresponds to the MOVBE instruction.

Parameters
__PA pointer to the 32-bit value to load.
Returns
The byte-swapped value.

This intrinsic corresponds to the MOVBE instruction.

Parameters
__PA pointer to the memory for storing the swapped value.
__DThe 32-bit value to be byte-swapped.

Definition at line 449 of file immintrin.h.

References __P, and __v.

◆ __attribute__() [2/3]

static __inline__ unsigned int __attribute__ ( (__always_inline__, __nodebug__, __target__("rdpid"))  )
static

Reads the value of the IA32_TSC_AUX MSR (0xc0000103).

This intrinsic corresponds to the RDPID instruction.

Returns
The 32-bit contents of the MSR.

Definition at line 251 of file immintrin.h.

◆ __attribute__() [3/3]

static __inline__ int __attribute__ ( (__always_inline__, __nodebug__, __target__("rdrnd"))  )
static

Returns a 16-bit hardware-generated random value.

Returns a 64-bit hardware-generated random value.

Returns a 32-bit hardware-generated random value.

This intrinsic corresponds to the RDRAND instruction.

Parameters
__pA pointer to a 16-bit memory location to place the random value.
Returns
1 if the value was successfully generated, 0 otherwise.

This intrinsic corresponds to the RDRAND instruction.

Parameters
__pA pointer to a 32-bit memory location to place the random value.
Returns
1 if the value was successfully generated, 0 otherwise.

This intrinsic corresponds to the RDRAND instruction.

Parameters
__pA pointer to a 64-bit memory location to place the random value.
Returns
1 if the value was successfully generated, 0 otherwise.

Definition at line 267 of file immintrin.h.

References __p.

Variable Documentation

◆ __D

static __inline__ void int __D
Initial value:
{
struct __storeu_i16 {
unsigned short __v;
} __attribute__((__packed__, __may_alias__))
_Float16 __2f16 __attribute__((ext_vector_type(2)))
Zeroes the upper 128 bits (bits 255:128) of all YMM registers.
struct __storeu_i16 *__P __v
Definition: immintrin.h:472

Definition at line 468 of file immintrin.h.

Referenced by __crc32b(), __crc32d(), __crc32w(), _mm256_mask_compress_epi16(), _mm256_mask_compress_epi8(), _mm256_mask_compressstoreu_epi16(), _mm256_mask_compressstoreu_epi8(), _mm256_mask_expand_epi16(), _mm256_mask_expand_epi8(), _mm256_maskz_compress_epi16(), _mm256_maskz_compress_epi8(), _mm256_maskz_expand_epi16(), _mm256_maskz_expand_epi8(), _mm512_mask_compress_epi16(), _mm512_mask_compress_epi8(), _mm512_mask_compressstoreu_epi16(), _mm512_mask_compressstoreu_epi8(), _mm512_mask_expand_epi16(), _mm512_mask_expand_epi8(), _mm512_maskz_compress_epi16(), _mm512_maskz_compress_epi8(), _mm512_maskz_expand_epi16(), _mm512_maskz_expand_epi8(), _mm512_set4_epi32(), _mm512_set4_epi64(), _mm512_set4_pd(), _mm512_set4_ps(), _mm512_set_epi32(), _mm512_set_epi64(), _mm512_set_pd(), _mm512_set_ps(), _mm_crc32_u16(), _mm_crc32_u32(), _mm_crc32_u8(), _mm_mask_compress_epi16(), _mm_mask_compress_epi8(), _mm_mask_compressstoreu_epi16(), _mm_mask_compressstoreu_epi8(), _mm_mask_expand_epi16(), _mm_mask_expand_epi8(), _mm_maskz_compress_epi16(), _mm_maskz_compress_epi8(), _mm_maskz_expand_epi16(), and _mm_maskz_expand_epi8().

◆ __v

struct __storeu_i32 *__P __v = __builtin_bswap16((unsigned short)__D)

Definition at line 472 of file immintrin.h.

Referenced by __attribute__(), __dAtomicAdd(), __dAtomicAdd_block(), __dAtomicAdd_system(), __fAtomicAdd(), __fAtomicAdd_block(), __fAtomicAdd_system(), __fAtomicExch(), __fAtomicExch_block(), __fAtomicExch_system(), __iAtomicAdd(), __iAtomicAdd_block(), __iAtomicAdd_system(), __iAtomicAnd(), __iAtomicAnd_block(), __iAtomicAnd_system(), __iAtomicCAS(), __iAtomicCAS_block(), __iAtomicCAS_system(), __iAtomicExch(), __iAtomicExch_block(), __iAtomicExch_system(), __iAtomicMax(), __iAtomicMax_block(), __iAtomicMax_system(), __iAtomicMin(), __iAtomicMin_block(), __iAtomicMin_system(), __iAtomicOr(), __iAtomicOr_block(), __iAtomicOr_system(), __iAtomicXor(), __iAtomicXor_block(), __iAtomicXor_system(), __illAtomicMax(), __illAtomicMax_block(), __illAtomicMax_system(), __illAtomicMin(), __illAtomicMin_block(), __illAtomicMin_system(), __llAtomicAnd(), __llAtomicAnd_block(), __llAtomicAnd_system(), __llAtomicOr(), __llAtomicOr_block(), __llAtomicOr_system(), __llAtomicXor(), __llAtomicXor_block(), __llAtomicXor_system(), __uAtomicAdd(), __uAtomicAdd_block(), __uAtomicAdd_system(), __uAtomicAnd(), __uAtomicAnd_block(), __uAtomicAnd_system(), __uAtomicCAS(), __uAtomicCAS_block(), __uAtomicCAS_system(), __uAtomicDec(), __uAtomicDec_block(), __uAtomicDec_system(), __uAtomicExch(), __uAtomicExch_block(), __uAtomicExch_system(), __uAtomicInc(), __uAtomicInc_block(), __uAtomicInc_system(), __uAtomicMax(), __uAtomicMax_block(), __uAtomicMax_system(), __uAtomicMin(), __uAtomicMin_block(), __uAtomicMin_system(), __uAtomicOr(), __uAtomicOr_block(), __uAtomicOr_system(), __uAtomicXor(), __uAtomicXor_block(), __uAtomicXor_system(), __ullAtomicAdd(), __ullAtomicAdd_block(), __ullAtomicAdd_system(), __ullAtomicAnd(), __ullAtomicAnd_block(), __ullAtomicAnd_system(), __ullAtomicCAS(), __ullAtomicCAS_block(), __ullAtomicCAS_system(), __ullAtomicExch(), __ullAtomicExch_block(), __ullAtomicExch_system(), __ullAtomicMax(), __ullAtomicMax_block(), __ullAtomicMax_system(), __ullAtomicMin(), __ullAtomicMin_block(), __ullAtomicMin_system(), __ullAtomicOr(), __ullAtomicOr_block(), __ullAtomicOr_system(), __ullAtomicXor(), __ullAtomicXor_block(), __ullAtomicXor_system(), _cvtsh_ss(), _mm256_loadu_epi16(), _mm256_loadu_epi32(), _mm256_loadu_epi64(), _mm256_loadu_epi8(), _mm256_loadu_pd(), _mm256_loadu_ps(), _mm256_loadu_si256(), _mm256_storeu_epi16(), _mm256_storeu_epi32(), _mm256_storeu_epi64(), _mm256_storeu_epi8(), _mm256_storeu_pd(), _mm256_storeu_ps(), _mm256_storeu_si256(), _mm512_loadu_epi16(), _mm512_loadu_epi32(), _mm512_loadu_epi64(), _mm512_loadu_epi8(), _mm512_loadu_pd(), _mm512_loadu_ps(), _mm512_loadu_si512(), _mm512_storeu_epi16(), _mm512_storeu_epi32(), _mm512_storeu_epi64(), _mm512_storeu_epi8(), _mm512_storeu_pd(), _mm512_storeu_ps(), _mm512_storeu_si512(), _mm_loadu_epi16(), _mm_loadu_epi32(), _mm_loadu_epi64(), _mm_loadu_epi8(), _mm_loadu_pd(), _mm_loadu_ps(), _mm_loadu_si128(), _mm_loadu_si16(), _mm_loadu_si32(), _mm_loadu_si64(), _mm_storeu_epi16(), _mm_storeu_epi32(), _mm_storeu_epi64(), _mm_storeu_epi8(), _mm_storeu_pd(), _mm_storeu_ps(), _mm_storeu_si128(), _mm_storeu_si16(), _mm_storeu_si32(), _mm_storeu_si64(), wasm_f32x4_replace_lane(), wasm_f64x2_replace_lane(), wasm_i16x8_load8x8(), wasm_i16x8_replace_lane(), wasm_i32x4_load16x4(), wasm_i32x4_replace_lane(), wasm_i64x2_load32x2(), wasm_i64x2_replace_lane(), wasm_i8x16_replace_lane(), wasm_u16x8_load8x8(), wasm_u16x8_replace_lane(), wasm_u32x4_load16x4(), wasm_u32x4_replace_lane(), wasm_u64x2_load32x2(), wasm_u64x2_replace_lane(), wasm_u8x16_replace_lane(), wasm_v128_load(), wasm_v128_load16_lane(), wasm_v128_load16_splat(), wasm_v128_load32_lane(), wasm_v128_load32_splat(), wasm_v128_load32_zero(), wasm_v128_load64_lane(), wasm_v128_load64_splat(), wasm_v128_load64_zero(), wasm_v128_load8_lane(), wasm_v128_load8_splat(), wasm_v128_store(), wasm_v128_store16_lane(), wasm_v128_store32_lane(), wasm_v128_store64_lane(), and wasm_v128_store8_lane().