summaryrefslogtreecommitdiff
path: root/include/llvm/Target/TargetLibraryInfo.h
diff options
context:
space:
mode:
authorYi Jiang <yjiang@apple.com>2013-12-16 22:42:40 +0000
committerYi Jiang <yjiang@apple.com>2013-12-16 22:42:40 +0000
commit4faf2ba0c7ef9f28a5d4a6c096105ff8aca94279 (patch)
tree5c8d932a90cd2150ae476c55f02bc79a25771f98 /include/llvm/Target/TargetLibraryInfo.h
parent89452cf827d9699027b60212b2795b9e14d5ea7a (diff)
downloadllvm-4faf2ba0c7ef9f28a5d4a6c096105ff8aca94279.tar.gz
llvm-4faf2ba0c7ef9f28a5d4a6c096105ff8aca94279.tar.bz2
llvm-4faf2ba0c7ef9f28a5d4a6c096105ff8aca94279.tar.xz
Enable double to float shrinking optimizations for binary functions like 'fmin/fmax'. Fix radar:15283121
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197434 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Target/TargetLibraryInfo.h')
-rw-r--r--include/llvm/Target/TargetLibraryInfo.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/llvm/Target/TargetLibraryInfo.h b/include/llvm/Target/TargetLibraryInfo.h
index 46eaef2871..326104da0e 100644
--- a/include/llvm/Target/TargetLibraryInfo.h
+++ b/include/llvm/Target/TargetLibraryInfo.h
@@ -251,6 +251,18 @@ namespace llvm {
floorf,
/// long double floorl(long double x);
floorl,
+ /// double fmax(double x, double y);
+ fmax,
+ /// float fmaxf(float x, float y);
+ fmaxf,
+ /// long double fmaxl(long double x, long double y);
+ fmaxl,
+ /// double fmin(double x, double y);
+ fmin,
+ /// float fminf(float x, float y);
+ fminf,
+ /// long double fminl(long double x, long double y);
+ fminl,
/// double fmod(double x, double y);
fmod,
/// float fmodf(float x, float y);
@@ -703,6 +715,8 @@ public:
case LibFunc::sqrt: case LibFunc::sqrtf: case LibFunc::sqrtl:
case LibFunc::sqrt_finite: case LibFunc::sqrtf_finite:
case LibFunc::sqrtl_finite:
+ case LibFunc::fmax: case LibFunc::fmaxf: case LibFunc::fmaxl:
+ case LibFunc::fmin: case LibFunc::fminf: case LibFunc::fminl:
case LibFunc::floor: case LibFunc::floorf: case LibFunc::floorl:
case LibFunc::nearbyint: case LibFunc::nearbyintf: case LibFunc::nearbyintl:
case LibFunc::ceil: case LibFunc::ceilf: case LibFunc::ceill: