Reputation: 60441
For CPUs that come with BMI2 instructions, one can use parallel bit deposit (pdep) and parallel bit extract (pext) with GCC using the builtin functions :
unsigned int _pdep_u32 (unsigned int, unsigned int)
unsigned int _pext_u32 (unsigned int, unsigned int)
unsigned long long _pdep_u64 (unsigned long long, unsigned long long)
unsigned long long _pext_u64 (unsigned long long, unsigned long long)
What are their equivalent on the Intel compiler ? And on clang ?
Upvotes: 2
Views: 2838