Comment by blattimwind
8 years ago
> In an LLVM context it also means you don't get runtime feature detection. You would need to build N dlls and then write code to load the proper one at runtime based on feature detection.
Does LLVM not support GCC-style function multiversioning?
LLVM does (quite recently!), but Rust currently does not. I think it's likely that Rust should add it, but a large part of my post was exploring how far we could go with Rust as of today.
Edit adding citation: http://lists.llvm.org/pipermail/llvm-announce/2018-September...
Does GCC use that when auto-vectorizing? It's been a while, but in the past when I built binaries via gcc with autogenerated SSE/AVX I don't think they fell back to the C code for CPUs that lacked those SIMD instructions. They just crashed.
You have to tell gcc it should also build a generic version. Then, it should work.