Replies: 2 comments 8 replies
-
|
since when are these available and will clang/gcc cover all of those? |
Beta Was this translation helpful? Give feedback.
3 replies
-
|
This is something to consider (early in the next release cycle). Things that come to my mind:
|
Beta Was this translation helpful? Give feedback.
5 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Instead of setting every flag for each architecture extension, we can use macros defined by compiler.
GCC x86 for example:
This can remove most parts in current Makefile, instead users can set their CPU type (or native).
make build ARCH=nativetog++ -march=native, ormake build ARCH=skylaketog++ -march=skylakeFor example, if arch is set to skylake, the compiler sets the following macros:
__MMX__,__SSE__,__SSE2__,__SSE3__,__SSSE3__,__SSE4_1__,__SSE4_2__,__POPCNT__,__AVX__,__AVX2__,__BMI__,__BMI2__,__PRFCHW__(and others)To add any other architecture, it's not required to modify Makefile and implement the feature detection.
Beta Was this translation helpful? Give feedback.
All reactions