Test that converting from double to int64 results in one libcall, not one
and a dead one. This is a legalize bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23227 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGen/PowerPC/2005-09-02-LegalizeDuplicatesCalls.ll b/test/CodeGen/PowerPC/2005-09-02-LegalizeDuplicatesCalls.ll
new file mode 100644
index 0000000..1671705
--- /dev/null
+++ b/test/CodeGen/PowerPC/2005-09-02-LegalizeDuplicatesCalls.ll
@@ -0,0 +1,9 @@
+; This function should have exactly one call to fixdfdi, no more!
+
+; RUN: llvm-as < %s | llc -march=ppc32 | grep 'bl .*fixdfdi' | wc -l | grep 1
+
+double %test2(double %tmp.7705) {
+ %mem_tmp.2.0.in = cast double %tmp.7705 to long ; <long> [#uses=1]
+ %mem_tmp.2.0 = cast long %mem_tmp.2.0.in to double
+ ret double %mem_tmp.2.0
+}