Add config to disable FP16 optimizations on aarch64 UNIX [Build] #18744
Description
Describe the issue
I'm unable to build for aarch64 targets that don't support FP16 instructions, due to the configuration here, which includes sources compiled with -march=armv8.2-a+fp16
in all aarch64 builds. (The issue is specifically that the optimized methods fail to inline when combined with the rest of the source, which is compiled without +fp16
.)
I have been able to work around this by patching the source to prevent MLAS_F16VEC_INTRINSICS_SUPPORTED
from being set here. I would like to make this option directly configurable from CMake.
I made a discussion post a few days ago with some context.
If there's support for this feature, I have an implementation ready to contribute.
Urgency
No response
Target platform
aarch64
Build script
CMake build targeting Linux with -march=armv8.2-a
.
Error / output
Misc. methods in fp16_common.h
fail to inline.
Visual Studio Version
No response
GCC / Compiler Version
11.2, 13.2
Activity