Go to the source code of this file.
|
| sycl::_V1::BUILTIN_GENF_CUSTOM (ONE_ARG, acospi, [](auto x) -> decltype(x) { return std::acos(x)/M_PI;}) BUILTIN_GENF_CUSTOM(ONE_ARG |
|
| sycl::_V1::BUILTIN_GENF_CUSTOM (ONE_ARG, atanpi, [](auto x) -> decltype(x) { return std::atan(x)/M_PI;}) BUILTIN_GENF_CUSTOM(TWO_ARGS |
|
| sycl::_V1::BUILTIN_GENF_CUSTOM (ONE_ARG, cospi, [](auto x) -> decltype(x) { return std::sin(M_PI *(0.5 - x));}) BUILTIN_GENF_CUSTOM(ONE_ARG |
|
| sycl::_V1::BUILTIN_GENF_CUSTOM (THREE_ARGS, mad, [](auto x, auto y, auto z) -> decltype(x) { return(x *y)+z;}) BUILTIN_GENF_CUSTOM(TWO_ARGS |
|
| sycl::_V1::if (std::fabs(y) > std::fabs(x)) return y |
|
| sycl::_V1::BUILTIN_GENF_CUSTOM (TWO_ARGS, minmag, [](auto x, auto y) -> decltype(x) { if(std::fabs(x)< std::fabs(y)) return x;if(std::fabs(y)< std::fabs(x)) return y;return std::fmin(x, y);}) BUILTIN_GENF_CUSTOM(TWO_ARGS |
|
return(x >=T(0)) ? T(std | sycl::_V1::BUILTIN_GENF_CUSTOM (ONE_ARG, rsqrt, [](auto x) -> decltype(x) { return decltype(x){1.0}/std::sqrt(x);}) BUILTIN_GENF_CUSTOM(ONE_ARG |
|
| sycl::_V1::BUILTIN_GENF_CUSTOM (ONE_ARG, tanpi, [](auto x) -> decltype(x) { double y=x - std::floor(x);return 1.0/std::tan((0.5 - y) *M_PI);}) BUILTIN_GENF_CUSTOM(TWO_ARGS |
|
◆ _USE_MATH_DEFINES
#define _USE_MATH_DEFINES |
◆ BUILTIN_GENF
#define BUILTIN_GENF |
( |
|
NUM_ARGS, |
|
|
|
NAME |
|
) |
| |
Value:
return std::NAME(NUM_ARGS##_ARG); \
})
#define BUILTIN_GENF_CUSTOM(NUM_ARGS, NAME, IMPL)
Definition at line 30 of file math_functions.cpp.
◆ BUILTIN_GENF_CUSTOM
#define BUILTIN_GENF_CUSTOM |
( |
|
NUM_ARGS, |
|
|
|
NAME, |
|
|
|
IMPL |
|
) |
| |
◆ BUILTIN_MATH_LAST_INT
#define BUILTIN_MATH_LAST_INT |
( |
|
NAME, |
|
|
|
IMPL |
|
) |
| |
Value: __SYCL_EXPORT
float __##NAME##_impl(
float x,
int y) {
return IMPL(
x,
y); } \
__SYCL_EXPORT
double __##NAME##_impl(
double x,
int y) {
return IMPL(
x,
y); } \
__SYCL_EXPORT
half __##NAME##_impl(
half x,
int y) {
return IMPL(
x,
y); } \
HOST_IMPL(NAME, NAME ) \
#define EXPORT_VEC_LAST_INT_1_16(NAME, TYPE)
sycl::detail::half_impl::half half
◆ EXPORT_VEC_LAST_INT
#define EXPORT_VEC_LAST_INT |
( |
|
NAME, |
|
|
|
TYPE, |
|
|
|
VL |
|
) |
| |
Value: vec<TYPE, VL> __SYCL_EXPORT __##NAME##_impl(vec<TYPE, VL>
x, \
return NAME##_host_impl(
x,
y); \
}
◆ EXPORT_VEC_LAST_INT_1_16