[llvm-branch-commits] [cfe-branch] r324460 - Merging r324439:

Hans Wennborg via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Wed Feb 7 00:56:35 PST 2018


Author: hans
Date: Wed Feb  7 00:56:35 2018
New Revision: 324460

URL: http://llvm.org/viewvc/llvm-project?rev=324460&view=rev
Log:
Merging r324439:
------------------------------------------------------------------------
r324439 | compnerd | 2018-02-07 02:55:08 +0100 (Wed, 07 Feb 2018) | 5 lines

AST: support SwiftCC on MS ABI

Microsoft has reserved the identifier 'S' as the swift calling
convention.  Decorate the symbols appropriately.  This enables swift on
Windows.
------------------------------------------------------------------------

Added:
    cfe/branches/release_60/test/CodeGenCXX/msabi-swiftcall-cc.cpp
      - copied unchanged from r324439, cfe/trunk/test/CodeGenCXX/msabi-swiftcall-cc.cpp
Modified:
    cfe/branches/release_60/   (props changed)
    cfe/branches/release_60/lib/AST/MicrosoftMangle.cpp

Propchange: cfe/branches/release_60/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Feb  7 00:56:35 2018
@@ -1,4 +1,4 @@
 /cfe/branches/type-system-rewrite:134693-134817
-/cfe/trunk:321754,321771,321777,321779,321933,322018,322236,322245-322246,322350,322390,322405,322420,322518,322593,322813,322901,322904,322984,323008,323123,323155,323360,323485,323904,323935,324059,324134,324246
+/cfe/trunk:321754,321771,321777,321779,321933,322018,322236,322245-322246,322350,322390,322405,322420,322518,322593,322813,322901,322904,322984,323008,323123,323155,323360,323485,323904,323935,324059,324134,324246,324439
 /cfe/trunk/test:170344
 /cfe/trunk/test/SemaTemplate:126920

Modified: cfe/branches/release_60/lib/AST/MicrosoftMangle.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_60/lib/AST/MicrosoftMangle.cpp?rev=324460&r1=324459&r2=324460&view=diff
==============================================================================
--- cfe/branches/release_60/lib/AST/MicrosoftMangle.cpp (original)
+++ cfe/branches/release_60/lib/AST/MicrosoftMangle.cpp Wed Feb  7 00:56:35 2018
@@ -950,11 +950,10 @@ void MicrosoftCXXNameMangler::mangleUnqu
   }
 }
 
+// <postfix> ::= <unqualified-name> [<postfix>]
+//           ::= <substitution> [<postfix>]
 void MicrosoftCXXNameMangler::mangleNestedName(const NamedDecl *ND) {
-  // <postfix> ::= <unqualified-name> [<postfix>]
-  //           ::= <substitution> [<postfix>]
   const DeclContext *DC = getEffectiveDeclContext(ND);
-
   while (!DC->isTranslationUnit()) {
     if (isa<TagDecl>(ND) || isa<VarDecl>(ND)) {
       unsigned Disc;
@@ -2140,6 +2139,7 @@ void MicrosoftCXXNameMangler::mangleCall
     case CC_X86StdCall: Out << 'G'; break;
     case CC_X86FastCall: Out << 'I'; break;
     case CC_X86VectorCall: Out << 'Q'; break;
+    case CC_Swift: Out << 'S'; break;
     case CC_X86RegCall: Out << 'w'; break;
   }
 }




More information about the llvm-branch-commits mailing list