diff options
| author | Nico Weber <nicolasweber@gmx.de> | 2016-07-14 13:54:26 +0000 |
|---|---|---|
| committer | Nico Weber <nicolasweber@gmx.de> | 2016-07-14 13:54:26 +0000 |
| commit | ecdf45b1e6b37ec44681b5fc687f0c94578491af (patch) | |
| tree | 99f338a7d9e5050629b161cf7866cc8f9220c61c /llvm/lib | |
| parent | bed37ccd547cc47ff4c87e9e36f5ae8940dd8e17 (diff) | |
| download | bcm5719-llvm-ecdf45b1e6b37ec44681b5fc687f0c94578491af.tar.gz bcm5719-llvm-ecdf45b1e6b37ec44681b5fc687f0c94578491af.zip | |
Teach fast isel calls and rets about stdcall.
stdcall is callee-pop like thiscall, so the thiscall changes already did most
of the work for this. This change only opts stdcall in and adds tests.
llvm-svn: 275414
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/X86/X86FastISel.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86FastISel.cpp b/llvm/lib/Target/X86/X86FastISel.cpp index 182731fe8d2..fae45276914 100644 --- a/llvm/lib/Target/X86/X86FastISel.cpp +++ b/llvm/lib/Target/X86/X86FastISel.cpp @@ -1151,6 +1151,7 @@ bool X86FastISel::X86SelectRet(const Instruction *I) { if (CC != CallingConv::C && CC != CallingConv::Fast && CC != CallingConv::X86_FastCall && + CC != CallingConv::X86_StdCall && CC != CallingConv::X86_ThisCall && CC != CallingConv::X86_64_SysV) return false; @@ -3025,6 +3026,7 @@ bool X86FastISel::fastLowerCall(CallLoweringInfo &CLI) { case CallingConv::WebKit_JS: case CallingConv::Swift: case CallingConv::X86_FastCall: + case CallingConv::X86_StdCall: case CallingConv::X86_ThisCall: case CallingConv::X86_64_Win64: case CallingConv::X86_64_SysV: |

