diff options
author | John McCall <rjmccall@apple.com> | 2016-03-03 06:39:32 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2016-03-03 06:39:32 +0000 |
commit | a29b4d2ff11bbec5f30e24c0231a888a0554a16c (patch) | |
tree | f6cb610b6d10d4ee211f251f8a2a7cceecb99ced /lib/AST/Type.cpp | |
parent | e85a1ce36280e358ad450b05a5c1cada0766d73e (diff) |
Semantic analysis for the swiftcall calling convention.
I've tried to keep the infrastructure behind parameter ABI
treatments fairly general.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@262587 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/Type.cpp')
-rw-r--r-- | lib/AST/Type.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/AST/Type.cpp b/lib/AST/Type.cpp index 6cd6c2a006..efa2595f6d 100644 --- a/lib/AST/Type.cpp +++ b/lib/AST/Type.cpp @@ -2655,6 +2655,7 @@ StringRef FunctionType::getNameForCallConv(CallingConv CC) { case CC_IntelOclBicc: return "intel_ocl_bicc"; case CC_SpirFunction: return "spir_function"; case CC_SpirKernel: return "spir_kernel"; + case CC_Swift: return "swiftcall"; } llvm_unreachable("Invalid calling convention."); @@ -2995,6 +2996,7 @@ bool AttributedType::isQualifier() const { case AttributedType::attr_stdcall: case AttributedType::attr_thiscall: case AttributedType::attr_pascal: + case AttributedType::attr_swiftcall: case AttributedType::attr_vectorcall: case AttributedType::attr_inteloclbicc: case AttributedType::attr_ms_abi: @@ -3048,6 +3050,7 @@ bool AttributedType::isCallingConv() const { case attr_fastcall: case attr_stdcall: case attr_thiscall: + case attr_swiftcall: case attr_vectorcall: case attr_pascal: case attr_ms_abi: |