GenericPacketMathFunctionsFwd.h File Reference

Go to the source code of this file.

Namespaces

 Eigen
 Namespace containing all symbols from the Eigen library.
 
 Eigen::internal
 Namespace containing low-level routines from the Eigen library.
 

Macros

#define EIGEN_PACKET_FUNCTION(METHOD, SCALAR, PACKET)
 
#define EIGEN_GENERIC_PACKET_FUNCTION(METHOD, PACKET)
 
#define EIGEN_FLOAT_PACKET_FUNCTION(METHOD, PACKET)   EIGEN_PACKET_FUNCTION(METHOD, float, PACKET)
 
#define EIGEN_DOUBLE_PACKET_FUNCTION(METHOD, PACKET)   EIGEN_PACKET_FUNCTION(METHOD, double, PACKET)
 
#define EIGEN_INSTANTIATE_GENERIC_MATH_FUNCS_FLOAT(PACKET)
 
#define EIGEN_INSTANTIATE_GENERIC_MATH_FUNCS_DOUBLE(PACKET)
 

Functions

template<typename Packet >
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC Packet Eigen::internal::pfrexp_generic (const Packet &a, Packet &exponent)
 
template<typename Packet >
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC Packet Eigen::internal::pfrexp_generic_get_biased_exponent (const Packet &a)
 
template<typename Packet >
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC Packet Eigen::internal::pldexp_generic (const Packet &a, const Packet &exponent)
 
template<typename Packet >
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC Packet Eigen::internal::pldexp_fast (const Packet &a, const Packet &exponent)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::plog_float (const Packet _x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::plog2_float (const Packet _x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::plog_double (const Packet _x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::plog2_double (const Packet _x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::generic_log1p (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::generic_expm1 (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::generic_atan (const Packet &x_in)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::generic_exp2 (const Packet &_x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::pexp_float (const Packet _x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::pexp_double (const Packet _x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::psin_float (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::pcos_float (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::psin_double (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::pcos_double (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::pasin_float (const Packet &x_in)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::pacos_float (const Packet &x_in)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::ptanh_float (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::ptanh_double (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::patanh_float (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::patanh_double (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::psqrt_complex (const Packet &a)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::pdiv_complex (const Packet &x, const Packet &y)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::plog_complex (const Packet &x)
 
template<typename Packet >
EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet Eigen::internal::pexp_complex (const Packet &a)
 
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet Eigen::internal::generic_rint (const Packet &a)
 
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet Eigen::internal::generic_floor (const Packet &a)
 
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet Eigen::internal::generic_ceil (const Packet &a)
 
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet Eigen::internal::generic_trunc (const Packet &a)
 
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet Eigen::internal::generic_round (const Packet &a)
 

Macro Definition Documentation

◆ EIGEN_DOUBLE_PACKET_FUNCTION

#define EIGEN_DOUBLE_PACKET_FUNCTION (   METHOD,
  PACKET 
)    EIGEN_PACKET_FUNCTION(METHOD, double, PACKET)

◆ EIGEN_FLOAT_PACKET_FUNCTION

#define EIGEN_FLOAT_PACKET_FUNCTION (   METHOD,
  PACKET 
)    EIGEN_PACKET_FUNCTION(METHOD, float, PACKET)

◆ EIGEN_GENERIC_PACKET_FUNCTION

#define EIGEN_GENERIC_PACKET_FUNCTION (   METHOD,
  PACKET 
)
Value:
template <> \
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC EIGEN_UNUSED PACKET p##METHOD<PACKET>(const PACKET& _x) { \
return generic_##METHOD(_x); \
}
#define EIGEN_UNUSED
Definition: Macros.h:940
#define EIGEN_DEVICE_FUNC
Definition: Macros.h:892
float * p
Definition: Tutorial_Map_using.cpp:9
#define _(A, B)
Definition: cfortran.h:132

◆ EIGEN_INSTANTIATE_GENERIC_MATH_FUNCS_DOUBLE

#define EIGEN_INSTANTIATE_GENERIC_MATH_FUNCS_DOUBLE (   PACKET)
Value:
EIGEN_DOUBLE_PACKET_FUNCTION(log, PACKET) \
EIGEN_DOUBLE_PACKET_FUNCTION(sin, PACKET) \
EIGEN_DOUBLE_PACKET_FUNCTION(cos, PACKET) \
EIGEN_DOUBLE_PACKET_FUNCTION(log2, PACKET) \
EIGEN_DOUBLE_PACKET_FUNCTION(exp, PACKET) \
EIGEN_DOUBLE_PACKET_FUNCTION(tanh, PACKET) \
EIGEN_GENERIC_PACKET_FUNCTION(atan, PACKET) \
EIGEN_GENERIC_PACKET_FUNCTION(exp2, PACKET)
AnnoyingScalar cos(const AnnoyingScalar &x)
Definition: AnnoyingScalar.h:136
AnnoyingScalar sin(const AnnoyingScalar &x)
Definition: AnnoyingScalar.h:137
#define EIGEN_DOUBLE_PACKET_FUNCTION(METHOD, PACKET)
Definition: GenericPacketMathFunctionsFwd.h:186
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 tanh(const bfloat16 &a)
Definition: BFloat16.h:639
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 atanh(const bfloat16 &a)
Definition: BFloat16.h:642
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 atan(const bfloat16 &a)
Definition: BFloat16.h:636
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 exp(const bfloat16 &a)
Definition: BFloat16.h:615
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 log(const bfloat16 &a)
Definition: BFloat16.h:618
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 exp2(const bfloat16 &a)
Definition: BFloat16.h:616
Scalar log2(Scalar x)
Definition: packetmath.cpp:754

◆ EIGEN_INSTANTIATE_GENERIC_MATH_FUNCS_FLOAT

#define EIGEN_INSTANTIATE_GENERIC_MATH_FUNCS_FLOAT (   PACKET)
Value:
EIGEN_FLOAT_PACKET_FUNCTION(cos, PACKET) \
EIGEN_FLOAT_PACKET_FUNCTION(asin, PACKET) \
EIGEN_FLOAT_PACKET_FUNCTION(acos, PACKET) \
EIGEN_FLOAT_PACKET_FUNCTION(tanh, PACKET) \
EIGEN_FLOAT_PACKET_FUNCTION(atanh, PACKET) \
EIGEN_FLOAT_PACKET_FUNCTION(log, PACKET) \
EIGEN_FLOAT_PACKET_FUNCTION(log2, PACKET) \
EIGEN_FLOAT_PACKET_FUNCTION(exp, PACKET) \
EIGEN_GENERIC_PACKET_FUNCTION(expm1, PACKET) \
EIGEN_GENERIC_PACKET_FUNCTION(exp2, PACKET) \
EIGEN_GENERIC_PACKET_FUNCTION(log1p, PACKET) \
EIGEN_GENERIC_PACKET_FUNCTION(atan, PACKET)
AnnoyingScalar acos(const AnnoyingScalar &x)
Definition: AnnoyingScalar.h:138
#define EIGEN_FLOAT_PACKET_FUNCTION(METHOD, PACKET)
Definition: GenericPacketMathFunctionsFwd.h:185
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 asin(const bfloat16 &a)
Definition: BFloat16.h:634
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 expm1(const bfloat16 &a)
Definition: BFloat16.h:617
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC bfloat16 log1p(const bfloat16 &a)
Definition: BFloat16.h:619

◆ EIGEN_PACKET_FUNCTION

#define EIGEN_PACKET_FUNCTION (   METHOD,
  SCALAR,
  PACKET 
)
Value:
template <> \
EIGEN_STRONG_INLINE EIGEN_DEVICE_FUNC EIGEN_UNUSED PACKET p##METHOD<PACKET>(const PACKET& _x) { \
return p##METHOD##_##SCALAR(_x); \
}
#define SCALAR
Definition: bench_gemm.cpp:22