summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorRobert Lougher <rob.lougher@gmail.com>2019-09-02 16:53:32 +0000
committerRobert Lougher <rob.lougher@gmail.com>2019-09-02 16:53:32 +0000
commit13190c422530593f3d0a37eccd33608b5c7cc7eb (patch)
tree9b4cd5441c31d338339d6b01a5ed3bd5025197a1 /llvm/lib
parentb21e24571146bb043ce5374928e81cad48392b13 (diff)
downloadbcm5719-llvm-13190c422530593f3d0a37eccd33608b5c7cc7eb.tar.gz
bcm5719-llvm-13190c422530593f3d0a37eccd33608b5c7cc7eb.zip
[TargetLowering][PS4] Add sincos(f) lib functions when target is PS4
PS4 supports sincosf and sincos. Adding the library functions enables the sin(f)+cos(f) -> sincos(f) optimization. Differential Revision: https://reviews.llvm.org/D67009 llvm-svn: 370675
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/CodeGen/TargetLoweringBase.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/TargetLoweringBase.cpp b/llvm/lib/CodeGen/TargetLoweringBase.cpp
index dcedca7e9fb..e9a7d4b5252 100644
--- a/llvm/lib/CodeGen/TargetLoweringBase.cpp
+++ b/llvm/lib/CodeGen/TargetLoweringBase.cpp
@@ -197,6 +197,11 @@ void TargetLoweringBase::InitLibcalls(const Triple &TT) {
setLibcallName(RTLIB::SINCOS_PPCF128, "sincosl");
}
+ if (TT.isPS4CPU()) {
+ setLibcallName(RTLIB::SINCOS_F32, "sincosf");
+ setLibcallName(RTLIB::SINCOS_F64, "sincos");
+ }
+
if (TT.isOSOpenBSD()) {
setLibcallName(RTLIB::STACKPROTECTOR_CHECK_FAIL, nullptr);
}
OpenPOWER on IntegriCloud