|
clang 22.0.0git
|
Go to the source code of this file.
Macros | |
| #define | __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("bmi2"))) |
Functions | |
| static __inline__ unsigned int __DEFAULT_FN_ATTRS | _bzhi_u32 (unsigned int __X, unsigned int __Y) |
| Copies the unsigned 32-bit integer __X and zeroes the upper bits starting at bit number __Y. | |
| static __inline__ unsigned int __DEFAULT_FN_ATTRS | _pdep_u32 (unsigned int __X, unsigned int __Y) |
| Deposit (scatter) low-order bits from the unsigned 32-bit integer __X into the 32-bit result, according to the mask in the unsigned 32-bit integer __Y. | |
| static __inline__ unsigned int __DEFAULT_FN_ATTRS | _pext_u32 (unsigned int __X, unsigned int __Y) |
| Extract (gather) bits from the unsigned 32-bit integer __X into the low-order bits of the 32-bit result, according to the mask in the unsigned 32-bit integer __Y. | |
| static __inline__ unsigned int __DEFAULT_FN_ATTRS | _mulx_u32 (unsigned int __X, unsigned int __Y, unsigned int *__P) |
| Multiplies the unsigned 32-bit integers __X and __Y to form a 64-bit product. | |
| #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("bmi2"))) |
Definition at line 22 of file bmi2intrin.h.
Copies the unsigned 32-bit integer __X and zeroes the upper bits starting at bit number __Y.
This intrinsic corresponds to the BZHI instruction.
| __X | The 32-bit source value to copy. |
| __Y | The lower 8 bits specify the bit number of the lowest bit to zero. |
Definition at line 47 of file bmi2intrin.h.
References __Y.
|
static |
Multiplies the unsigned 32-bit integers __X and __Y to form a 64-bit product.
Stores the upper 32 bits of the product in the memory at __P and returns the lower 32 bits.
This intrinsic corresponds to the MULX instruction.
| __X | An unsigned 32-bit multiplicand. |
| __Y | An unsigned 32-bit multiplicand. |
| __P | A pointer to memory for storing the upper half of the product. |
Definition at line 130 of file bmi2intrin.h.
Deposit (scatter) low-order bits from the unsigned 32-bit integer __X into the 32-bit result, according to the mask in the unsigned 32-bit integer __Y.
All other bits of the result are zero.
This intrinsic corresponds to the PDEP instruction.
| __X | The 32-bit source value to copy. |
| __Y | The 32-bit mask specifying where to deposit source bits. |
Definition at line 76 of file bmi2intrin.h.
References __Y.
Extract (gather) bits from the unsigned 32-bit integer __X into the low-order bits of the 32-bit result, according to the mask in the unsigned 32-bit integer __Y.
All other bits of the result are zero.
This intrinsic corresponds to the PEXT instruction.
| __X | The 32-bit source value to copy. |
| __Y | The 32-bit mask specifying which source bits to extract. |
Definition at line 105 of file bmi2intrin.h.
References __Y.