file new in Git master
IntrinsicsAvx.hIntrinsics for x86 LZCNT, BMI1, BMI2, AVX, AVX F16C, AVX FMA and AVX2 instructions.
Equivalent to #include <immintrin.h>
on most compilers except for GCC 4.8, where it contains an additional workaround to make the instructions available with just the CORRADE_-mavx
or -mavx2
for the whole compilation unit. This however can't reliably be done for -mlzcnt
, -mbmi
, -mbmi2
, -mf16c
or -mfma
because then it could not be freely combined with other instruction sets, only used alone. You have to enable these instructions globally in order to use them on GCC 4.8.
As AVX-512 is supported only since GCC 4.9, which doesn't need this workaround, it's not handled here.