[clang] [CIR] Accept fixed-width vectors in x86_64 callconv lowering (PR #215118)
Adam Smith via cfe-commits
cfe-commits at lists.llvm.org
Fri Aug 14 08:37:04 PDT 2026
================
@@ -632,16 +702,33 @@ void CallConvLoweringPass::runOnOperation() {
CIRABIRewriteContext rewriteCtx(moduleOp, dl);
SymbolTable symbolTable(moduleOp);
- // For the x86_64 target, build the LLVM ABI library classifier once and
- // reuse it (and its type mapper) across every function.
+ // A per-function target attribute can raise the AVX level, so one classifier
+ // per module would misclassify a wide vector in such a function.
+ static constexpr unsigned numAvxLevels =
+ static_cast<unsigned>(llvm::abi::X86AVXABILevel::AVX512) + 1;
----------------
adams381 wrote:
Opened the followup PR as #216339.
https://github.com/llvm/llvm-project/pull/215118
More information about the cfe-commits
mailing list