summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorNick Lewycky <nicholas@mxc.ca>2011-12-27 18:25:50 +0000
committerNick Lewycky <nicholas@mxc.ca>2011-12-27 18:25:50 +0000
commita6b21ea4ba4ef7250346c9423807415be049ebfd (patch)
tree71751adefbb21d54ef5ae62786bf2407bd46b59a /test
parent27baab62e7d6267d9b18e4665c6bb1b75dae10d4 (diff)
downloadllvm-a6b21ea4ba4ef7250346c9423807415be049ebfd.tar.gz
llvm-a6b21ea4ba4ef7250346c9423807415be049ebfd.tar.bz2
llvm-a6b21ea4ba4ef7250346c9423807415be049ebfd.tar.xz
Turn cos(-x) into cos(x). Patch by Alexander Malyshev!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147291 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/Transforms/SimplifyLibCalls/cos.ll14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/Transforms/SimplifyLibCalls/cos.ll b/test/Transforms/SimplifyLibCalls/cos.ll
new file mode 100644
index 0000000000..6a8ce8c388
--- /dev/null
+++ b/test/Transforms/SimplifyLibCalls/cos.ll
@@ -0,0 +1,14 @@
+; RUN: opt < %s -simplify-libcalls -S | FileCheck %s
+
+target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
+target triple = "x86_64-unknown-linux-gnu"
+
+define double @foo(double %d) nounwind readnone {
+; CHECK: @foo
+ %1 = fsub double -0.000000e+00, %d
+ %2 = call double @cos(double %1) nounwind readnone
+; CHECK: call double @cos(double %d)
+ ret double %2
+}
+
+declare double @cos(double) nounwind readnone