Fix compilation warnings without cl_khr_fp64

Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
llvm-svn: 235762
This commit is contained in:
Jan Vesely 2015-04-24 19:54:17 +00:00
parent 5e0774631a
commit 44e768e777
3 changed files with 32 additions and 6 deletions

View File

@ -11,11 +11,19 @@
* precision of #4 may be better.
*/
#if __CLC_FPSIZE == 32
#define __CLC_CONST(x) x ## f
#else
#define __CLC_CONST(x) x
#endif
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE acos(__CLC_GENTYPE x) {
return (
(__CLC_GENTYPE) 2.0 * atan2(
sqrt((__CLC_GENTYPE) 1.0 - x),
sqrt((__CLC_GENTYPE) 1.0 + x)
(__CLC_GENTYPE) __CLC_CONST(2.0) * atan2(
sqrt((__CLC_GENTYPE) __CLC_CONST(1.0) - x),
sqrt((__CLC_GENTYPE) __CLC_CONST(1.0) + x)
)
);
}
#undef __CLC_CONST

View File

@ -1,3 +1,12 @@
#if __CLC_FPSIZE == 32
#define __CLC_CONST(x) x ## f
#else
#define __CLC_CONST(x) x
#endif
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE asin(__CLC_GENTYPE x) {
return atan2(x, sqrt( (__CLC_GENTYPE)1.0 -(x*x) ));
}
return atan2(x, sqrt( (__CLC_GENTYPE)__CLC_CONST(1.0) -(x*x) ));
}
#undef __CLC_CONST

View File

@ -2,7 +2,16 @@
* Note: tan(x) = sin(x)/cos(x) also, but the final assembly ends up being
* twice as long for R600 (maybe for others as well).
*/
#if __CLC_FPSIZE == 32
#define __CLC_CONST(x) x ## f
#else
#define __CLC_CONST(x) x
#endif
_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE tan(__CLC_GENTYPE x) {
__CLC_GENTYPE sinx = sin(x);
return sinx / sqrt( (__CLC_GENTYPE) 1.0 - (sinx*sinx) );
return sinx / sqrt( (__CLC_GENTYPE) __CLC_CONST(1.0) - (sinx*sinx) );
}
#undef __CLC_CONST