diff options
| author | Tim Northover <tnorthover@apple.com> | 2014-01-14 19:26:03 +0000 |
|---|---|---|
| committer | Tim Northover <tnorthover@apple.com> | 2014-01-14 19:26:03 +0000 |
| commit | 87994450657e8b6294393db707945adbe9cb200e (patch) | |
| tree | 800bfc8958272c3115344ec63062576981e71b0b /clang/test | |
| parent | 08ff298d512d2c919cba4a3bc7ade60561b28a8d (diff) | |
| download | bcm5719-llvm-87994450657e8b6294393db707945adbe9cb200e.tar.gz bcm5719-llvm-87994450657e8b6294393db707945adbe9cb200e.zip | |
Darwin: add __sinpi (etc) and __exp10 libbuiltins
These functions have the same constness properties of the normal libm
functions, which allows LLVM to optimise code better in general. There
are also a couple of specific optimisations that only trigger when
these are properly marked.
rdar://problem/13729466
llvm-svn: 199249
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/CodeGen/libcall-declarations.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/clang/test/CodeGen/libcall-declarations.c b/clang/test/CodeGen/libcall-declarations.c index 6442e29bd86..345b74fe97d 100644 --- a/clang/test/CodeGen/libcall-declarations.c +++ b/clang/test/CodeGen/libcall-declarations.c @@ -244,6 +244,16 @@ long double _Complex ctanl(long double _Complex); double _Complex ctanh(double _Complex); float _Complex ctanhf(float _Complex); long double _Complex ctanhl(long double _Complex); + +double __sinpi(double); +float __sinpif(float); +double __cospi(double); +float __cospif(float); +double __tanpi(double); +float __tanpif(float); + +double __exp10(double); +float __exp10f(float); #ifdef __cplusplus } #endif @@ -298,7 +308,8 @@ void *use[] = { F(crealf), F(creall), F(csin), F(csinf), F(csinl), F(csinh), F(csinhf), F(csinhl), F(csqrt), F(csqrtf), F(csqrtl), F(ctan), F(ctanf), F(ctanl), F(ctanh), - F(ctanhf), F(ctanhl) + F(ctanhf), F(ctanhl), F(__sinpi), F(__sinpif), F(__cospi), + F(__cospif), F(__tanpi), F(__tanpif), F(__exp10), F(__exp10f) }; // CHECK-NOERRNO: declare double @atan2(double, double) [[NUW:#[0-9]+]] @@ -510,6 +521,14 @@ void *use[] = { // CHECK-NOERRNO: declare <2 x float> @ctanf(<2 x float>) [[NUW]] // CHECK-NOERRNO: declare { double, double } @ctanh(double, double) [[NUW]] // CHECK-NOERRNO: declare <2 x float> @ctanhf(<2 x float>) [[NUW]] +// CHECK-NOERRNO: declare double @__sinpi(double) [[NUW]] +// CHECK-NOERRNO: declare float @__sinpif(float) [[NUW]] +// CHECK-NOERRNO: declare double @__cospi(double) [[NUW]] +// CHECK-NOERRNO: declare float @__cospif(float) [[NUW]] +// CHECK-NOERRNO: declare double @__tanpi(double) [[NUW]] +// CHECK-NOERRNO: declare float @__tanpif(float) [[NUW]] +// CHECK-NOERRNO: declare double @__exp10(double) [[NUW]] +// CHECK-NOERRNO: declare float @__exp10f(float) [[NUW]] // CHECK-ERRNO: declare i32 @abs(i32) [[NUW:#[0-9]+]] // CHECK-ERRNO: declare i64 @labs(i64) [[NUW]] |

