Index: lib/AST/MicrosoftMangle.cpp =================================================================== --- lib/AST/MicrosoftMangle.cpp +++ lib/AST/MicrosoftMangle.cpp @@ -2056,6 +2056,7 @@ // ::= J # __export __fastcall // ::= Q # __vectorcall // ::= w # __regcall + // ::= __swift::swift_cc:: # __swiftcall (will change when Microsoft adds this to their scheme) // The 'export' calling conventions are from a bygone era // (*cough*Win16*cough*) when functions were declared for export with // that keyword. (It didn't actually export them, it just made them so @@ -2074,6 +2075,7 @@ case CC_X86FastCall: Out << 'I'; break; case CC_X86VectorCall: Out << 'Q'; break; case CC_X86RegCall: Out << 'w'; break; + case CC_Swift: Out << "__swift::swift_cc::"; break; } } void MicrosoftCXXNameMangler::mangleCallingConvention(const FunctionType *T) {