[clang] [libc] [libcxx] [clang][X86] Emit AVX level mismatch psABI warnings on function definitions (PR #199091)
Joseph Huber via cfe-commits
cfe-commits at lists.llvm.org
Fri May 22 10:10:26 PDT 2026
jhuber6 wrote:
> We could possibly carve out an exception for `static inline` functions... but I don't think that covers the cases that are failing. And it's not what gcc does.
The fact that this required suppressing warnings globally in libc and libc++, which both have very intentional usage of these vectors, is very a big red flag to me. This seems to just turn on a "You used a wide vector!" warning on for everyone, which isn't very helpful in my opinion.
For `libmvec` we intentionally upscale from a `f32x8` to a `f64x8` which will now always fire a warning if I understand correctly. The original intent of these warnings from what I understood was mixing ABIs accross TU boundaries, which is why we force all of these to be static.
I don't have the full context here, but clang vectors are much more powerful than GCC vectors so I don't think we necessarily need to be beholden to them.
https://github.com/llvm/llvm-project/pull/199091
More information about the cfe-commits
mailing list