summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2008-09-04 18:30:46 +0000
committerDale Johannesen <dalej@apple.com>2008-09-04 18:30:46 +0000
commitfe1bb7964c718cbf7c56d5bfe187114128c48d79 (patch)
tree5ca5e0566d7f2e1ce71a710322ee3bf58b779a50 /llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp
parente9354c6029165b1756498b83adf6a43242878f19 (diff)
downloadbcm5719-llvm-fe1bb7964c718cbf7c56d5bfe187114128c48d79.tar.gz
bcm5719-llvm-fe1bb7964c718cbf7c56d5bfe187114128c48d79.zip
Add intrinsic forms of pow and exp2. The non-intrinsic
forms remain to handle older IR files, but will go away soon. llvm-svn: 55781
Diffstat (limited to 'llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp')
-rw-r--r--llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp b/llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp
index 965d1ce0dee..2fbc25e0bd9 100644
--- a/llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp
+++ b/llvm/lib/Transforms/Scalar/SimplifyLibCalls.cpp
@@ -1246,9 +1246,19 @@ void SimplifyLibCalls::InitOptimizations() {
Optimizations["powf"] = &Pow;
Optimizations["pow"] = &Pow;
Optimizations["powl"] = &Pow;
+ Optimizations["llvm.pow.f32"] = &Pow;
+ Optimizations["llvm.pow.f64"] = &Pow;
+ Optimizations["llvm.pow.f80"] = &Pow;
+ Optimizations["llvm.pow.f128"] = &Pow;
+ Optimizations["llvm.pow.ppcf128"] = &Pow;
Optimizations["exp2l"] = &Exp2;
Optimizations["exp2"] = &Exp2;
Optimizations["exp2f"] = &Exp2;
+ Optimizations["llvm.exp2.ppcf128"] = &Exp2;
+ Optimizations["llvm.exp2.f128"] = &Exp2;
+ Optimizations["llvm.exp2.f80"] = &Exp2;
+ Optimizations["llvm.exp2.f64"] = &Exp2;
+ Optimizations["llvm.exp2.f32"] = &Exp2;
#ifdef HAVE_FLOORF
Optimizations["floor"] = &UnaryDoubleFP;
OpenPOWER on IntegriCloud