runtime detection for AVX-512
This has nothing to do with my desktop supporting AVX-512.
There's one very minor interesting change here to work around an odd
interaction between Clang's AVX-512 headers and integer santizer.
The instruction issued is the same... everything boils down to masks
in the end with AVX-512.
We need to manually include some headers for Clang/Win to see the types
we're talking about for a few of these setups. Clang has "helpful"
guards in immintrin.h for every header it might include, designed to
speed up compilation on Windows but in this case kind of a hindrance:
#if !defined(_MSC_VER) || __has_feature(modules) || defined(__FOO__)
An alternative is to maybe temporarily define the various __FOO__,
or perhaps temporarily undefine _MSC_VER, but who knows what kind of
knock-on efffects that'd have...
Auto-Submit: Mike Klein <email@example.com>
Reviewed-by: Mike Klein <firstname.lastname@example.org>
Commit-Queue: Mike Klein <email@example.com>
2 files changed