[libc-commits] [clang] [libc] [libcxx] [clang][X86] Emit AVX level mismatch psABI warnings on function definitions (PR #199091)
Joseph Huber via libc-commits
libc-commits at lists.llvm.org
Fri May 22 11:07:51 PDT 2026
jhuber6 wrote:
> You can run into ABI issues within a single translation unit too because the calling convention is dependent upon the caller's features. e.g. if `foo` is marked `avx512f` and calls `baz` (with a 512-bit vector type), it will use zmm registers. If in the same translation unit you have `bar` which doesn't have any `avx512f` features and it calls `baz`, it will pass the argument on the stack.
>
Using `[[gnu::target]]` at all is already opening yourself up for massive ABI headaches. This use case of double-pumping the existing vector ABI in a single TU should be well defined and I don't think we should warn on it.
https://github.com/llvm/llvm-project/pull/199091
More information about the libc-commits
mailing list