llvm/llvm-project
[AArch64] Add support for MSVC-style mangling for SVE
クローズ
#196,170 opened on 2026/05/06
backend:AArch64clang:codegengood first issue
Repository metrics
- Stars
- (26,378 個のスター)
- PR merge metrics
- (平均マージ 1d 2h) (30d で 1,000 merged PRs)
説明
The latest MSVC release candidate has support for SVE, and with it a set of new SVE mangling patterns. We should mangle like MSVC instead of using the manglings we invented before (in #141887).
Example code:
#include <arm_sve.h>
void f(svint32_t x) {}
Latest MSVC produces the mangled symbol ?f@@YAX$$_CD@Z.
The relevant code is in MicrosoftCXXNameMangler::mangleType; replace the existing code which does #include "clang/Basic/AArch64ACLETypes.def".
(As a followup, we should also add demangling support in llvm/lib/Demangle/MicrosoftDemangle.cpp.)