Catch more trivial tail call opportunities: no inputs and output types match.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94804 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGen/X86/tailcall2.ll b/test/CodeGen/X86/tailcall2.ll
index 11d02da..bd21efb 100644
--- a/test/CodeGen/X86/tailcall2.ll
+++ b/test/CodeGen/X86/tailcall2.ll
@@ -1,12 +1,32 @@
 ; RUN: llc < %s -march=x86    -asm-verbose=false | FileCheck %s
 ; RUN: llc < %s -march=x86-64 -asm-verbose=false | FileCheck %s
 
-define void @bar(i32 %x) nounwind ssp {
+define void @t1(i32 %x) nounwind ssp {
 entry:
-; CHECK: bar:
+; CHECK: t1:
 ; CHECK: jmp {{_?}}foo
   tail call void @foo() nounwind
   ret void
 }
 
 declare void @foo()
+
+define void @t2() nounwind ssp {
+entry:
+; CHECK: t2:
+; CHECK: jmp {{_?}}foo2
+  %0 = tail call i32 @foo2() nounwind
+  ret void
+}
+
+declare i32 @foo2()
+
+define void @t3() nounwind ssp {
+entry:
+; CHECK: t3:
+; CHECK: jmp {{_?}}foo3
+  %0 = tail call i32 @foo3() nounwind
+  ret void
+}
+
+declare i32 @foo3()