llvm/llvm-project

[AArch64] Add support for MSVC-style mangling for SVE

Fermée

#196 170 ouverte le 6 mai 2026

 (5 commentaires) (0 réaction) (0 personne assignée)C++ (10 782 forks)batch import
backend:AArch64clang:codegengood first issue

Métriques du dépôt

Stars
 (26 378 étoiles)
Métriques de merge PR
 (Merge moyen 1j 2h) (1 000 PRs mergées en 30 j)

Description

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.)

Guide contributeur