summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-11-22 15:18:28 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-11-22 15:18:28 +0000
commit9519b689c843b01a86610b6e633ee0fe155602ba (patch)
tree82dd671c0460921e242b5347ec0e6f1aa6ba2503 /test
parentd29ed42abd4b109030444d90d01e71d91e5377de (diff)
downloadllvm-9519b689c843b01a86610b6e633ee0fe155602ba.tar.gz
llvm-9519b689c843b01a86610b6e633ee0fe155602ba.tar.bz2
llvm-9519b689c843b01a86610b6e633ee0fe155602ba.tar.xz
Don't produce tail calls when the caller is x86_thiscallcc.
The callee will not pop the stack for us. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195467 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/X86/stdcall-notailcall.ll8
1 files changed, 8 insertions, 0 deletions
diff --git a/test/CodeGen/X86/stdcall-notailcall.ll b/test/CodeGen/X86/stdcall-notailcall.ll
index 8f522cda28..c847ec7b6c 100644
--- a/test/CodeGen/X86/stdcall-notailcall.ll
+++ b/test/CodeGen/X86/stdcall-notailcall.ll
@@ -10,4 +10,12 @@ entry:
ret void
}
+define x86_thiscallcc void @test2(%struct.I* %this, i32 %a) {
+; CHECK-LABEL: test2:
+; CHECK: calll _foo
+; CHECK: ret $4
+ tail call void @foo()
+ ret void
+}
+
declare void @foo()