diff options
| author | Erich Keane <erich.keane@intel.com> | 2016-11-02 18:29:35 +0000 |
|---|---|---|
| committer | Erich Keane <erich.keane@intel.com> | 2016-11-02 18:29:35 +0000 |
| commit | 757d317c24288bdfb333b6b2c1fbd7ae01d59493 (patch) | |
| tree | 6bc5cdaab773009ff9f3b9b0ffaee356b82dc279 /clang/lib/Basic/Targets.cpp | |
| parent | 1867c6cd422a18a6e93a8c851d86993671a1718b (diff) | |
| download | bcm5719-llvm-757d317c24288bdfb333b6b2c1fbd7ae01d59493.tar.gz bcm5719-llvm-757d317c24288bdfb333b6b2c1fbd7ae01d59493.zip | |
regcall: Implement regcall Calling Conv in clang
This patch implements the register call calling convention, which ensures
as many values as possible are passed in registers. CodeGen changes
were committed in https://reviews.llvm.org/rL284108.
Differential Revision: https://reviews.llvm.org/D25204
llvm-svn: 285849
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 013449d52b8..5c62b31d32e 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -2903,6 +2903,7 @@ public: case CC_X86FastCall: case CC_X86StdCall: case CC_X86VectorCall: + case CC_X86RegCall: case CC_C: case CC_Swift: case CC_X86Pascal: @@ -4512,6 +4513,7 @@ public: case CC_X86_64Win64: case CC_PreserveMost: case CC_PreserveAll: + case CC_X86RegCall: return CCCR_OK; default: return CCCR_Warning; @@ -4584,6 +4586,7 @@ public: case CC_IntelOclBicc: case CC_X86_64SysV: case CC_Swift: + case CC_X86RegCall: return CCCR_OK; default: return CCCR_Warning; |

