AltiVec/PacketMath.h File Reference

Go to the source code of this file.

Classes

struct  Eigen::internal::packet_traits< float >
 
struct  Eigen::internal::packet_traits< bfloat16 >
 
struct  Eigen::internal::packet_traits< int >
 
struct  Eigen::internal::packet_traits< short int >
 
struct  Eigen::internal::packet_traits< unsigned short int >
 
struct  Eigen::internal::packet_traits< signed char >
 
struct  Eigen::internal::packet_traits< unsigned char >
 
struct  Eigen::internal::unpacket_traits< Packet4f >
 
struct  Eigen::internal::unpacket_traits< Packet4i >
 
struct  Eigen::internal::unpacket_traits< Packet8s >
 
struct  Eigen::internal::unpacket_traits< Packet8us >
 
struct  Eigen::internal::unpacket_traits< Packet16c >
 
struct  Eigen::internal::unpacket_traits< Packet16uc >
 
struct  Eigen::internal::unpacket_traits< Packet8bf >
 

Namespaces

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

Macros

#define EIGEN_CACHEFRIENDLY_PRODUCT_THRESHOLD   4
 
#define EIGEN_HAS_SINGLE_INSTRUCTION_MADD
 
#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS   32
 
#define EIGEN_DECLARE_CONST_FAST_Packet4f(NAME, X)   Packet4f p4f_##NAME = {X, X, X, X}
 
#define EIGEN_DECLARE_CONST_FAST_Packet4i(NAME, X)   Packet4i p4i_##NAME = vec_splat_s32(X)
 
#define EIGEN_DECLARE_CONST_FAST_Packet4ui(NAME, X)   Packet4ui p4ui_##NAME = {X, X, X, X}
 
#define EIGEN_DECLARE_CONST_FAST_Packet8us(NAME, X)   Packet8us p8us_##NAME = {X, X, X, X, X, X, X, X}
 
#define EIGEN_DECLARE_CONST_FAST_Packet16uc(NAME, X)    Packet16uc p16uc_##NAME = {X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X}
 
#define EIGEN_DECLARE_CONST_Packet4f(NAME, X)   Packet4f p4f_##NAME = pset1<Packet4f>(X)
 
#define EIGEN_DECLARE_CONST_Packet4i(NAME, X)   Packet4i p4i_##NAME = pset1<Packet4i>(X)
 
#define EIGEN_DECLARE_CONST_Packet2d(NAME, X)   Packet2d p2d_##NAME = pset1<Packet2d>(X)
 
#define EIGEN_DECLARE_CONST_Packet2l(NAME, X)   Packet2l p2l_##NAME = pset1<Packet2l>(X)
 
#define EIGEN_DECLARE_CONST_Packet4f_FROM_INT(NAME, X)    const Packet4f p4f_##NAME = reinterpret_cast<Packet4f>(pset1<Packet4i>(X))
 
#define DST_CHAN   1
 
#define DST_CTRL(size, count, stride)   (((size) << 24) | ((count) << 16) | (stride))
 
#define __UNPACK_TYPE__(PACKETNAME)   typename unpacket_traits<PACKETNAME>::type
 
#define EIGEN_PPC_PREFETCH(ADDR)   asm(" dcbt [%[addr]]\n" ::[addr] "r"(ADDR) : "cc");
 
#define LOAD_STORE_UNROLL_16   _Pragma("GCC unroll(16)")
 
#define __VEC_CLASS_FP_NAN   (1 << 6)
 
#define BF16_TO_F32_UNARY_OP_WRAPPER(OP, A)
 
#define BF16_TO_F32_BINARY_OP_WRAPPER(OP, A, B)
 
#define BF16_TO_F32_BINARY_OP_WRAPPER_BOOL(OP, A, B)
 

Typedefs

typedef __vector float Eigen::internal::Packet4f
 
typedef __vector int Eigen::internal::Packet4i
 
typedef __vector unsigned int Eigen::internal::Packet4ui
 
typedef __vector __bool int Eigen::internal::Packet4bi
 
typedef __vector short int Eigen::internal::Packet8s
 
typedef __vector unsigned short int Eigen::internal::Packet8us
 
typedef __vector __bool short Eigen::internal::Packet8bi
 
typedef __vector signed char Eigen::internal::Packet16c
 
typedef __vector unsigned char Eigen::internal::Packet16uc
 
typedef eigen_packet_wrapper< __vector unsigned short int, 0 > Eigen::internal::Packet8bf
 

Functions

static Eigen::internal::EIGEN_DECLARE_CONST_FAST_Packet4f (ZERO, 0)
 
static Eigen::internal::EIGEN_DECLARE_CONST_FAST_Packet4i (ZERO, 0)
 
static Eigen::internal::EIGEN_DECLARE_CONST_FAST_Packet4i (ONE, 1)
 
static Eigen::internal::EIGEN_DECLARE_CONST_FAST_Packet4i (MINUS16, -16)
 
static Eigen::internal::EIGEN_DECLARE_CONST_FAST_Packet4i (MINUS1, -1)
 
static Eigen::internal::EIGEN_DECLARE_CONST_FAST_Packet4ui (SIGN, 0x80000000u)
 
static Eigen::internal::EIGEN_DECLARE_CONST_FAST_Packet4ui (PREV0DOT5, 0x3EFFFFFFu)
 
static Eigen::internal::EIGEN_DECLARE_CONST_FAST_Packet8us (ONE, 1)
 
std::ostream & Eigen::internal::operator<< (std::ostream &s, const Packet16c &v)
 
std::ostream & Eigen::internal::operator<< (std::ostream &s, const Packet16uc &v)
 
std::ostream & Eigen::internal::operator<< (std::ostream &s, const Packet4f &v)
 
std::ostream & Eigen::internal::operator<< (std::ostream &s, const Packet4i &v)
 
std::ostream & Eigen::internal::operator<< (std::ostream &s, const Packet4ui &v)
 
template<typename Packet >
EIGEN_STRONG_INLINE Packet Eigen::internal::pload_common (const __UNPACK_TYPE__(Packet) *from)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pload< Packet4f > (const float *from)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pload< Packet4i > (const int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pload< Packet8s > (const short int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pload< Packet8us > (const unsigned short int *from)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pload< Packet16c > (const signed char *from)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pload< Packet16uc > (const unsigned char *from)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pload< Packet8bf > (const bfloat16 *from)
 
template<typename Packet >
EIGEN_ALWAYS_INLINE Packet Eigen::internal::pload_ignore (const __UNPACK_TYPE__(Packet) *from)
 
template<>
EIGEN_ALWAYS_INLINE Packet8bf Eigen::internal::pload_ignore< Packet8bf > (const bfloat16 *from)
 
template<typename Packet >
EIGEN_ALWAYS_INLINE Packet Eigen::internal::pload_partial_common (const __UNPACK_TYPE__(Packet) *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet4f Eigen::internal::pload_partial< Packet4f > (const float *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet4i Eigen::internal::pload_partial< Packet4i > (const int *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet8s Eigen::internal::pload_partial< Packet8s > (const short int *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet8us Eigen::internal::pload_partial< Packet8us > (const unsigned short int *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet8bf Eigen::internal::pload_partial< Packet8bf > (const bfloat16 *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet16c Eigen::internal::pload_partial< Packet16c > (const signed char *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet16uc Eigen::internal::pload_partial< Packet16uc > (const unsigned char *from, const Index n, const Index offset)
 
template<typename Packet >
EIGEN_STRONG_INLINE void Eigen::internal::pstore_common (__UNPACK_TYPE__(Packet) *to, const Packet &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstore< float > (float *to, const Packet4f &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstore< int > (int *to, const Packet4i &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstore< short int > (short int *to, const Packet8s &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstore< unsigned short int > (unsigned short int *to, const Packet8us &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstore< bfloat16 > (bfloat16 *to, const Packet8bf &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstore< signed char > (signed char *to, const Packet16c &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstore< unsigned char > (unsigned char *to, const Packet16uc &from)
 
template<typename Packet >
EIGEN_ALWAYS_INLINE void Eigen::internal::pstore_partial_common (__UNPACK_TYPE__(Packet) *to, const Packet &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstore_partial< float > (float *to, const Packet4f &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstore_partial< int > (int *to, const Packet4i &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstore_partial< short int > (short int *to, const Packet8s &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstore_partial< unsigned short int > (unsigned short int *to, const Packet8us &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstore_partial< bfloat16 > (bfloat16 *to, const Packet8bf &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstore_partial< signed char > (signed char *to, const Packet16c &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstore_partial< unsigned char > (unsigned char *to, const Packet16uc &from, const Index n, const Index offset)
 
template<typename Packet >
EIGEN_STRONG_INLINE Packet Eigen::internal::pset1_size4 (const __UNPACK_TYPE__(Packet) &from)
 
template<typename Packet >
EIGEN_STRONG_INLINE Packet Eigen::internal::pset1_size8 (const __UNPACK_TYPE__(Packet) &from)
 
template<typename Packet >
EIGEN_STRONG_INLINE Packet Eigen::internal::pset1_size16 (const __UNPACK_TYPE__(Packet) &from)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pset1< Packet4f > (const float &from)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pset1< Packet4i > (const int &from)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pset1< Packet8s > (const short int &from)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pset1< Packet8us > (const unsigned short int &from)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pset1< Packet16c > (const signed char &from)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pset1< Packet16uc > (const unsigned char &from)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pset1frombits< Packet4f > (unsigned int from)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pset1< Packet8bf > (const bfloat16 &from)
 
template<typename Packet >
EIGEN_STRONG_INLINE void Eigen::internal::pbroadcast4_common (const __UNPACK_TYPE__(Packet) *a, Packet &a0, Packet &a1, Packet &a2, Packet &a3)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pbroadcast4< Packet4f > (const float *a, Packet4f &a0, Packet4f &a1, Packet4f &a2, Packet4f &a3)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pbroadcast4< Packet4i > (const int *a, Packet4i &a0, Packet4i &a1, Packet4i &a2, Packet4i &a3)
 
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet Eigen::internal::pgather_common (const __UNPACK_TYPE__(Packet) *from, Index stride, const Index n=unpacket_traits< Packet >::size)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet4f Eigen::internal::pgather< float, Packet4f > (const float *from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet4i Eigen::internal::pgather< int, Packet4i > (const int *from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet8s Eigen::internal::pgather< short int, Packet8s > (const short int *from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet8us Eigen::internal::pgather< unsigned short int, Packet8us > (const unsigned short int *from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet8bf Eigen::internal::pgather< bfloat16, Packet8bf > (const bfloat16 *from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet16c Eigen::internal::pgather< signed char, Packet16c > (const signed char *from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet16uc Eigen::internal::pgather< unsigned char, Packet16uc > (const unsigned char *from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet4f Eigen::internal::pgather_partial< float, Packet4f > (const float *from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet4i Eigen::internal::pgather_partial< int, Packet4i > (const int *from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet8s Eigen::internal::pgather_partial< short int, Packet8s > (const short int *from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet8us Eigen::internal::pgather_partial< unsigned short int, Packet8us > (const unsigned short int *from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet8bf Eigen::internal::pgather_partial< bfloat16, Packet8bf > (const bfloat16 *from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet16c Eigen::internal::pgather_partial< signed char, Packet16c > (const signed char *from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE Packet16uc Eigen::internal::pgather_partial< unsigned char, Packet16uc > (const unsigned char *from, Index stride, const Index n)
 
template<typename Packet >
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter_common (__UNPACK_TYPE__(Packet) *to, const Packet &from, Index stride, const Index n=unpacket_traits< Packet >::size)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter< float, Packet4f > (float *to, const Packet4f &from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter< int, Packet4i > (int *to, const Packet4i &from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter< short int, Packet8s > (short int *to, const Packet8s &from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter< unsigned short int, Packet8us > (unsigned short int *to, const Packet8us &from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter< bfloat16, Packet8bf > (bfloat16 *to, const Packet8bf &from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter< signed char, Packet16c > (signed char *to, const Packet16c &from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter< unsigned char, Packet16uc > (unsigned char *to, const Packet16uc &from, Index stride)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter_partial< float, Packet4f > (float *to, const Packet4f &from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter_partial< int, Packet4i > (int *to, const Packet4i &from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter_partial< short int, Packet8s > (short int *to, const Packet8s &from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter_partial< unsigned short int, Packet8us > (unsigned short int *to, const Packet8us &from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter_partial< bfloat16, Packet8bf > (bfloat16 *to, const Packet8bf &from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter_partial< signed char, Packet16c > (signed char *to, const Packet16c &from, Index stride, const Index n)
 
template<>
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE void Eigen::internal::pscatter_partial< unsigned char, Packet16uc > (unsigned char *to, const Packet16uc &from, Index stride, const Index n)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::plset< Packet4f > (const float &a)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::plset< Packet4i > (const int &a)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::plset< Packet8s > (const short int &a)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::plset< Packet8us > (const unsigned short int &a)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::plset< Packet16c > (const signed char &a)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::plset< Packet16uc > (const unsigned char &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::padd< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::padd< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet4ui Eigen::internal::padd< Packet4ui > (const Packet4ui &a, const Packet4ui &b)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::padd< Packet8s > (const Packet8s &a, const Packet8s &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::padd< Packet8us > (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::padd< Packet16c > (const Packet16c &a, const Packet16c &b)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::padd< Packet16uc > (const Packet16uc &a, const Packet16uc &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::psub< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::psub< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::psub< Packet8s > (const Packet8s &a, const Packet8s &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::psub< Packet8us > (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::psub< Packet16c > (const Packet16c &a, const Packet16c &b)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::psub< Packet16uc > (const Packet16uc &a, const Packet16uc &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pnegate (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pnegate (const Packet16c &a)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pnegate (const Packet8s &a)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pnegate (const Packet4i &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pconj (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pconj (const Packet4i &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pmul< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pmul< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pmul< Packet8s > (const Packet8s &a, const Packet8s &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pmul< Packet8us > (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pmul< Packet16c > (const Packet16c &a, const Packet16c &b)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pmul< Packet16uc > (const Packet16uc &a, const Packet16uc &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pdiv< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pdiv< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pmadd (const Packet4f &a, const Packet4f &b, const Packet4f &c)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pmadd (const Packet4i &a, const Packet4i &b, const Packet4i &c)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pmadd (const Packet8s &a, const Packet8s &b, const Packet8s &c)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pmadd (const Packet8us &a, const Packet8us &b, const Packet8us &c)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pmin< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pmin< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pmin< Packet8s > (const Packet8s &a, const Packet8s &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pmin< Packet8us > (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pmin< Packet16c > (const Packet16c &a, const Packet16c &b)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pmin< Packet16uc > (const Packet16uc &a, const Packet16uc &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pmax< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pmax< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pmax< Packet8s > (const Packet8s &a, const Packet8s &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pmax< Packet8us > (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pmax< Packet16c > (const Packet16c &a, const Packet16c &b)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pmax< Packet16uc > (const Packet16uc &a, const Packet16uc &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pcmp_le (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pcmp_eq (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pcmp_lt_or_nan (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pcmp_lt (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pcmp_eq (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pcmp_lt (const Packet8s &a, const Packet8s &b)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pcmp_eq (const Packet8s &a, const Packet8s &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pcmp_lt (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pcmp_eq (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pcmp_lt (const Packet16c &a, const Packet16c &b)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pcmp_eq (const Packet16c &a, const Packet16c &b)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pcmp_lt (const Packet16uc &a, const Packet16uc &b)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pcmp_eq (const Packet16uc &a, const Packet16uc &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pand< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pand< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet4ui Eigen::internal::pand< Packet4ui > (const Packet4ui &a, const Packet4ui &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pand< Packet8us > (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pand< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::por< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::por< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::por< Packet8s > (const Packet8s &a, const Packet8s &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::por< Packet8us > (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::por< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pxor< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pxor< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pxor< Packet8us > (const Packet8us &a, const Packet8us &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pxor< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pandnot< Packet4f > (const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pandnot< Packet4i > (const Packet4i &a, const Packet4i &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pselect (const Packet4f &mask, const Packet4f &a, const Packet4f &b)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pround< Packet4f > (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pceil< Packet4f > (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pfloor< Packet4f > (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::ptrunc< Packet4f > (const Packet4f &a)
 
template<typename Packet >
EIGEN_STRONG_INLINE Packet Eigen::internal::ploadu_common (const __UNPACK_TYPE__(Packet) *from)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::ploadu< Packet4f > (const float *from)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::ploadu< Packet4i > (const int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::ploadu< Packet8s > (const short int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::ploadu< Packet8us > (const unsigned short int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::ploadu< Packet8bf > (const bfloat16 *from)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::ploadu< Packet16c > (const signed char *from)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::ploadu< Packet16uc > (const unsigned char *from)
 
template<typename Packet >
EIGEN_ALWAYS_INLINE Packet Eigen::internal::ploadu_partial_common (const __UNPACK_TYPE__(Packet) *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet4f Eigen::internal::ploadu_partial< Packet4f > (const float *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet4i Eigen::internal::ploadu_partial< Packet4i > (const int *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet8s Eigen::internal::ploadu_partial< Packet8s > (const short int *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet8us Eigen::internal::ploadu_partial< Packet8us > (const unsigned short int *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet8bf Eigen::internal::ploadu_partial< Packet8bf > (const bfloat16 *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet16c Eigen::internal::ploadu_partial< Packet16c > (const signed char *from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE Packet16uc Eigen::internal::ploadu_partial< Packet16uc > (const unsigned char *from, const Index n, const Index offset)
 
template<typename Packet >
EIGEN_STRONG_INLINE Packet Eigen::internal::ploaddup_common (const __UNPACK_TYPE__(Packet) *from)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::ploaddup< Packet4f > (const float *from)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::ploaddup< Packet4i > (const int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::ploaddup< Packet8s > (const short int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::ploaddup< Packet8us > (const unsigned short int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::ploadquad< Packet8s > (const short int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::ploadquad< Packet8us > (const unsigned short int *from)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::ploadquad< Packet8bf > (const bfloat16 *from)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::ploaddup< Packet16c > (const signed char *from)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::ploaddup< Packet16uc > (const unsigned char *from)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::ploadquad< Packet16c > (const signed char *from)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::ploadquad< Packet16uc > (const unsigned char *from)
 
template<typename Packet >
EIGEN_STRONG_INLINE void Eigen::internal::pstoreu_common (__UNPACK_TYPE__(Packet) *to, const Packet &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstoreu< float > (float *to, const Packet4f &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstoreu< int > (int *to, const Packet4i &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstoreu< short int > (short int *to, const Packet8s &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstoreu< unsigned short int > (unsigned short int *to, const Packet8us &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstoreu< bfloat16 > (bfloat16 *to, const Packet8bf &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstoreu< signed char > (signed char *to, const Packet16c &from)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::pstoreu< unsigned char > (unsigned char *to, const Packet16uc &from)
 
template<typename Packet >
EIGEN_ALWAYS_INLINE void Eigen::internal::pstoreu_partial_common (__UNPACK_TYPE__(Packet) *to, const Packet &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstoreu_partial< float > (float *to, const Packet4f &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstoreu_partial< int > (int *to, const Packet4i &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstoreu_partial< short int > (short int *to, const Packet8s &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstoreu_partial< unsigned short int > (unsigned short int *to, const Packet8us &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstoreu_partial< bfloat16 > (bfloat16 *to, const Packet8bf &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstoreu_partial< signed char > (signed char *to, const Packet16c &from, const Index n, const Index offset)
 
template<>
EIGEN_ALWAYS_INLINE void Eigen::internal::pstoreu_partial< unsigned char > (unsigned char *to, const Packet16uc &from, const Index n, const Index offset)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::prefetch< float > (const float *addr)
 
template<>
EIGEN_STRONG_INLINE void Eigen::internal::prefetch< int > (const int *addr)
 
template<>
EIGEN_STRONG_INLINE float Eigen::internal::pfirst< Packet4f > (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE int Eigen::internal::pfirst< Packet4i > (const Packet4i &a)
 
template<typename Packet >
EIGEN_STRONG_INLINE Eigen::internal::__UNPACK_TYPE__ (Packet) pfirst_common(const Packet &a)
 
template<>
EIGEN_STRONG_INLINE short int Eigen::internal::pfirst< Packet8s > (const Packet8s &a)
 
template<>
EIGEN_STRONG_INLINE unsigned short int Eigen::internal::pfirst< Packet8us > (const Packet8us &a)
 
template<>
EIGEN_STRONG_INLINE signed char Eigen::internal::pfirst< Packet16c > (const Packet16c &a)
 
template<>
EIGEN_STRONG_INLINE unsigned char Eigen::internal::pfirst< Packet16uc > (const Packet16uc &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::preverse (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::preverse (const Packet4i &a)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::preverse (const Packet8s &a)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::preverse (const Packet8us &a)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::preverse (const Packet16c &a)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::preverse (const Packet16uc &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::preverse (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pabs (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pabs (const Packet4i &a)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pabs (const Packet8s &a)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pabs (const Packet8us &a)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pabs (const Packet16c &a)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pabs (const Packet16uc &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pabs (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::psignbit (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::psignbit (const Packet4f &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::parithmetic_shift_right (const Packet4i &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::plogical_shift_right (const Packet4i &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::plogical_shift_left (const Packet4i &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::plogical_shift_left (const Packet4f &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::plogical_shift_right (const Packet4f &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet4ui Eigen::internal::plogical_shift_right (const Packet4ui &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet4ui Eigen::internal::plogical_shift_left (const Packet4ui &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::plogical_shift_left (const Packet8us &a)
 
template<int N>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::plogical_shift_right (const Packet8us &a)
 
EIGEN_STRONG_INLINE Packet4f Eigen::internal::Bf16ToF32Even (const Packet8bf &bf)
 
EIGEN_STRONG_INLINE Packet4f Eigen::internal::Bf16ToF32Odd (const Packet8bf &bf)
 
EIGEN_ALWAYS_INLINE Packet8us Eigen::internal::pmerge (Packet4ui even, Packet4ui odd)
 
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::F32ToBf16Bool (Packet4f even, Packet4f odd)
 
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::F32ToBf16 (Packet4f p4f)
 
template<bool lohi>
EIGEN_ALWAYS_INLINE Packet8bf Eigen::internal::Bf16PackLow (Packet4f hi, Packet4f lo)
 
template<bool lohi>
EIGEN_ALWAYS_INLINE Packet8bf Eigen::internal::Bf16PackHigh (Packet4f hi, Packet4f lo)
 
template<bool lohi = true>
EIGEN_ALWAYS_INLINE Packet8bf Eigen::internal::F32ToBf16Two (Packet4f lo, Packet4f hi)
 
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::F32ToBf16Both (Packet4f lo, Packet4f hi)
 
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::F32ToBf16 (Packet4f even, Packet4f odd)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::padd< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pmul< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pdiv< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pnegate< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::psub< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pexp< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pexp2< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pldexp< Packet4f > (const Packet4f &a, const Packet4f &exponent)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pldexp< Packet8bf > (const Packet8bf &a, const Packet8bf &exponent)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pfrexp< Packet4f > (const Packet4f &a, Packet4f &exponent)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pfrexp< Packet8bf > (const Packet8bf &a, Packet8bf &e)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::psin< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pcos< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::plog< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pfloor< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pceil< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pround< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::ptrunc< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pmadd (const Packet8bf &a, const Packet8bf &b, const Packet8bf &c)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pmin< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pmax< Packet8bf > (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pcmp_lt (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pcmp_lt_or_nan (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pcmp_le (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pcmp_eq (const Packet8bf &a, const Packet8bf &b)
 
template<>
EIGEN_STRONG_INLINE bfloat16 Eigen::internal::pfirst (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::ploaddup< Packet8bf > (const bfloat16 *from)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::plset< Packet8bf > (const bfloat16 &a)
 
template<>
EIGEN_STRONG_INLINE float Eigen::internal::predux< Packet4f > (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE int Eigen::internal::predux< Packet4i > (const Packet4i &a)
 
template<>
EIGEN_STRONG_INLINE bfloat16 Eigen::internal::predux< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE short int Eigen::internal::predux< Packet8s > (const Packet8s &a)
 
template<>
EIGEN_STRONG_INLINE unsigned short int Eigen::internal::predux< Packet8us > (const Packet8us &a)
 
template<>
EIGEN_STRONG_INLINE signed char Eigen::internal::predux< Packet16c > (const Packet16c &a)
 
template<>
EIGEN_STRONG_INLINE unsigned char Eigen::internal::predux< Packet16uc > (const Packet16uc &a)
 
template<>
EIGEN_STRONG_INLINE float Eigen::internal::predux_mul< Packet4f > (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE int Eigen::internal::predux_mul< Packet4i > (const Packet4i &a)
 
template<>
EIGEN_STRONG_INLINE short int Eigen::internal::predux_mul< Packet8s > (const Packet8s &a)
 
template<>
EIGEN_STRONG_INLINE unsigned short int Eigen::internal::predux_mul< Packet8us > (const Packet8us &a)
 
template<>
EIGEN_STRONG_INLINE bfloat16 Eigen::internal::predux_mul< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE signed char Eigen::internal::predux_mul< Packet16c > (const Packet16c &a)
 
template<>
EIGEN_STRONG_INLINE unsigned char Eigen::internal::predux_mul< Packet16uc > (const Packet16uc &a)
 
template<>
EIGEN_STRONG_INLINE float Eigen::internal::predux_min< Packet4f > (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE int Eigen::internal::predux_min< Packet4i > (const Packet4i &a)
 
template<>
EIGEN_STRONG_INLINE bfloat16 Eigen::internal::predux_min< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE short int Eigen::internal::predux_min< Packet8s > (const Packet8s &a)
 
template<>
EIGEN_STRONG_INLINE unsigned short int Eigen::internal::predux_min< Packet8us > (const Packet8us &a)
 
template<>
EIGEN_STRONG_INLINE signed char Eigen::internal::predux_min< Packet16c > (const Packet16c &a)
 
template<>
EIGEN_STRONG_INLINE unsigned char Eigen::internal::predux_min< Packet16uc > (const Packet16uc &a)
 
template<>
EIGEN_STRONG_INLINE float Eigen::internal::predux_max< Packet4f > (const Packet4f &a)
 
template<>
EIGEN_STRONG_INLINE int Eigen::internal::predux_max< Packet4i > (const Packet4i &a)
 
template<>
EIGEN_STRONG_INLINE bfloat16 Eigen::internal::predux_max< Packet8bf > (const Packet8bf &a)
 
template<>
EIGEN_STRONG_INLINE short int Eigen::internal::predux_max< Packet8s > (const Packet8s &a)
 
template<>
EIGEN_STRONG_INLINE unsigned short int Eigen::internal::predux_max< Packet8us > (const Packet8us &a)
 
template<>
EIGEN_STRONG_INLINE signed char Eigen::internal::predux_max< Packet16c > (const Packet16c &a)
 
template<>
EIGEN_STRONG_INLINE unsigned char Eigen::internal::predux_max< Packet16uc > (const Packet16uc &a)
 
template<>
EIGEN_STRONG_INLINE bool Eigen::internal::predux_any (const Packet4f &x)
 
template<typename T >
EIGEN_DEVICE_FUNC void Eigen::internal::ptranpose_common (PacketBlock< T, 4 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet4f, 4 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet4i, 4 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet8s, 4 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet8us, 4 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet8bf, 4 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet16c, 4 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet16uc, 4 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet8s, 8 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet8us, 8 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet8bf, 8 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet16c, 16 > &kernel)
 
EIGEN_DEVICE_FUNC void Eigen::internal::ptranspose (PacketBlock< Packet16uc, 16 > &kernel)
 
template<typename Packet >
EIGEN_STRONG_INLINE Packet Eigen::internal::pblend4 (const Selector< 4 > &ifPacket, const Packet &thenPacket, const Packet &elsePacket)
 
template<>
EIGEN_STRONG_INLINE Packet4i Eigen::internal::pblend (const Selector< 4 > &ifPacket, const Packet4i &thenPacket, const Packet4i &elsePacket)
 
template<>
EIGEN_STRONG_INLINE Packet4f Eigen::internal::pblend (const Selector< 4 > &ifPacket, const Packet4f &thenPacket, const Packet4f &elsePacket)
 
template<>
EIGEN_STRONG_INLINE Packet8s Eigen::internal::pblend (const Selector< 8 > &ifPacket, const Packet8s &thenPacket, const Packet8s &elsePacket)
 
template<>
EIGEN_STRONG_INLINE Packet8us Eigen::internal::pblend (const Selector< 8 > &ifPacket, const Packet8us &thenPacket, const Packet8us &elsePacket)
 
template<>
EIGEN_STRONG_INLINE Packet8bf Eigen::internal::pblend (const Selector< 8 > &ifPacket, const Packet8bf &thenPacket, const Packet8bf &elsePacket)
 
template<>
EIGEN_STRONG_INLINE Packet16c Eigen::internal::pblend (const Selector< 16 > &ifPacket, const Packet16c &thenPacket, const Packet16c &elsePacket)
 
template<>
EIGEN_STRONG_INLINE Packet16uc Eigen::internal::pblend (const Selector< 16 > &ifPacket, const Packet16uc &thenPacket, const Packet16uc &elsePacket)
 

Variables

static Packet4f Eigen::internal::p4f_MZERO
 
static Packet4f Eigen::internal::p4f_ONE = vec_ctf(p4i_ONE, 0)
 
static Packet4f Eigen::internal::p4f_COUNTDOWN = {0.0, 1.0, 2.0, 3.0}
 
static Packet4i Eigen::internal::p4i_COUNTDOWN = {0, 1, 2, 3}
 
static Packet8s Eigen::internal::p8s_COUNTDOWN = {0, 1, 2, 3, 4, 5, 6, 7}
 
static Packet8us Eigen::internal::p8us_COUNTDOWN = {0, 1, 2, 3, 4, 5, 6, 7}
 
static Packet16c Eigen::internal::p16c_COUNTDOWN = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}
 
static Packet16uc Eigen::internal::p16uc_COUNTDOWN = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}
 
static Packet16uc Eigen::internal::p16uc_REVERSE32 = {12, 13, 14, 15, 8, 9, 10, 11, 4, 5, 6, 7, 0, 1, 2, 3}
 
static Packet16uc Eigen::internal::p16uc_REVERSE16 = {14, 15, 12, 13, 10, 11, 8, 9, 6, 7, 4, 5, 2, 3, 0, 1}
 
static Packet16uc Eigen::internal::p16uc_REVERSE8 = {15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0}
 
static const Packet16uc Eigen::internal::p16uc_DUPLICATE16_EVEN = {0, 1, 0, 1, 4, 5, 4, 5, 8, 9, 8, 9, 12, 13, 12, 13}
 
static const Packet16uc Eigen::internal::p16uc_DUPLICATE16_ODD = {2, 3, 2, 3, 6, 7, 6, 7, 10, 11, 10, 11, 14, 15, 14, 15}
 
static Packet16uc Eigen::internal::p16uc_QUADRUPLICATE16_HI = {0, 1, 0, 1, 0, 1, 0, 1, 2, 3, 2, 3, 2, 3, 2, 3}
 
static Packet16uc Eigen::internal::p16uc_QUADRUPLICATE16 = {0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3}
 
static Packet16uc Eigen::internal::p16uc_MERGEE16 = {0, 1, 16, 17, 4, 5, 20, 21, 8, 9, 24, 25, 12, 13, 28, 29}
 
static Packet16uc Eigen::internal::p16uc_MERGEO16 = {2, 3, 18, 19, 6, 7, 22, 23, 10, 11, 26, 27, 14, 15, 30, 31}
 
static Packet16uc Eigen::internal::p16uc_MERGEL16 = {2, 3, 6, 7, 10, 11, 14, 15, 18, 19, 22, 23, 26, 27, 30, 31}
 
static Packet16uc Eigen::internal::p16uc_FORWARD = p16uc_REVERSE32
 
static Packet16uc Eigen::internal::p16uc_PSET32_WODD
 
static Packet16uc Eigen::internal::p16uc_PSET32_WEVEN
 
static Packet16uc Eigen::internal::p16uc_HALF64_0_16
 
static Packet16uc Eigen::internal::p16uc_PSET64_HI
 
static Packet16uc Eigen::internal::p16uc_PSET64_LO
 
static Packet16uc Eigen::internal::p16uc_TRANSPOSE64_HI
 
static Packet16uc Eigen::internal::p16uc_TRANSPOSE64_LO
 
static Packet16uc Eigen::internal::p16uc_COMPLEX32_REV
 

Macro Definition Documentation

◆ __UNPACK_TYPE__

#define __UNPACK_TYPE__ (   PACKETNAME)    typename unpacket_traits<PACKETNAME>::type

◆ __VEC_CLASS_FP_NAN

#define __VEC_CLASS_FP_NAN   (1 << 6)

◆ BF16_TO_F32_BINARY_OP_WRAPPER

#define BF16_TO_F32_BINARY_OP_WRAPPER (   OP,
  A,
  B 
)
Value:
Packet4f a_even = Bf16ToF32Even(A); \
Packet4f a_odd = Bf16ToF32Odd(A); \
Packet4f b_even = Bf16ToF32Even(B); \
Packet4f b_odd = Bf16ToF32Odd(B); \
Packet4f op_even = OP(a_even, b_even); \
Packet4f op_odd = OP(a_odd, b_odd); \
return F32ToBf16(op_even, op_odd);
Matrix< SCALARA, Dynamic, Dynamic, opt_A > A
Definition: bench_gemm.cpp:47
Definition: matrices.h:74
#define OP(X)
Definition: common.h:54
EIGEN_STRONG_INLINE Packet4f Bf16ToF32Even(const Packet8bf &bf)
Definition: AltiVec/PacketMath.h:2023
EIGEN_STRONG_INLINE Packet8bf F32ToBf16(Packet4f even, Packet4f odd)
Definition: AltiVec/PacketMath.h:2250
EIGEN_STRONG_INLINE Packet4f Bf16ToF32Odd(const Packet8bf &bf)
Definition: AltiVec/PacketMath.h:2027
__vector float Packet4f
Definition: AltiVec/PacketMath.h:33

◆ BF16_TO_F32_BINARY_OP_WRAPPER_BOOL

#define BF16_TO_F32_BINARY_OP_WRAPPER_BOOL (   OP,
  A,
  B 
)
Value:
Packet4f a_even = Bf16ToF32Even(A); \
Packet4f a_odd = Bf16ToF32Odd(A); \
Packet4f b_even = Bf16ToF32Even(B); \
Packet4f b_odd = Bf16ToF32Odd(B); \
Packet4f op_even = OP(a_even, b_even); \
Packet4f op_odd = OP(a_odd, b_odd); \
return F32ToBf16Bool(op_even, op_odd);
EIGEN_STRONG_INLINE Packet8bf F32ToBf16Bool(Packet4f even, Packet4f odd)
Definition: AltiVec/PacketMath.h:2042

◆ BF16_TO_F32_UNARY_OP_WRAPPER

#define BF16_TO_F32_UNARY_OP_WRAPPER (   OP,
  A 
)
Value:
Packet4f a_even = Bf16ToF32Even(A); \
Packet4f a_odd = Bf16ToF32Odd(A); \
Packet4f op_even = OP(a_even); \
Packet4f op_odd = OP(a_odd); \
return F32ToBf16(op_even, op_odd);

◆ DST_CHAN

#define DST_CHAN   1

◆ DST_CTRL

#define DST_CTRL (   size,
  count,
  stride 
)    (((size) << 24) | ((count) << 16) | (stride))

◆ EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS

#define EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS   32

◆ EIGEN_CACHEFRIENDLY_PRODUCT_THRESHOLD

#define EIGEN_CACHEFRIENDLY_PRODUCT_THRESHOLD   4

◆ EIGEN_DECLARE_CONST_FAST_Packet16uc

#define EIGEN_DECLARE_CONST_FAST_Packet16uc (   NAME,
  X 
)     Packet16uc p16uc_##NAME = {X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X}

◆ EIGEN_DECLARE_CONST_FAST_Packet4f

#define EIGEN_DECLARE_CONST_FAST_Packet4f (   NAME,
  X 
)    Packet4f p4f_##NAME = {X, X, X, X}

◆ EIGEN_DECLARE_CONST_FAST_Packet4i

#define EIGEN_DECLARE_CONST_FAST_Packet4i (   NAME,
  X 
)    Packet4i p4i_##NAME = vec_splat_s32(X)

◆ EIGEN_DECLARE_CONST_FAST_Packet4ui

#define EIGEN_DECLARE_CONST_FAST_Packet4ui (   NAME,
  X 
)    Packet4ui p4ui_##NAME = {X, X, X, X}

◆ EIGEN_DECLARE_CONST_FAST_Packet8us

#define EIGEN_DECLARE_CONST_FAST_Packet8us (   NAME,
  X 
)    Packet8us p8us_##NAME = {X, X, X, X, X, X, X, X}

◆ EIGEN_DECLARE_CONST_Packet2d

#define EIGEN_DECLARE_CONST_Packet2d (   NAME,
  X 
)    Packet2d p2d_##NAME = pset1<Packet2d>(X)

◆ EIGEN_DECLARE_CONST_Packet2l

#define EIGEN_DECLARE_CONST_Packet2l (   NAME,
  X 
)    Packet2l p2l_##NAME = pset1<Packet2l>(X)

◆ EIGEN_DECLARE_CONST_Packet4f

#define EIGEN_DECLARE_CONST_Packet4f (   NAME,
  X 
)    Packet4f p4f_##NAME = pset1<Packet4f>(X)

◆ EIGEN_DECLARE_CONST_Packet4f_FROM_INT

#define EIGEN_DECLARE_CONST_Packet4f_FROM_INT (   NAME,
  X 
)     const Packet4f p4f_##NAME = reinterpret_cast<Packet4f>(pset1<Packet4i>(X))

◆ EIGEN_DECLARE_CONST_Packet4i

#define EIGEN_DECLARE_CONST_Packet4i (   NAME,
  X 
)    Packet4i p4i_##NAME = pset1<Packet4i>(X)

◆ EIGEN_HAS_SINGLE_INSTRUCTION_MADD

#define EIGEN_HAS_SINGLE_INSTRUCTION_MADD

◆ EIGEN_PPC_PREFETCH

#define EIGEN_PPC_PREFETCH (   ADDR)    asm(" dcbt [%[addr]]\n" ::[addr] "r"(ADDR) : "cc");

◆ LOAD_STORE_UNROLL_16

#define LOAD_STORE_UNROLL_16   _Pragma("GCC unroll(16)")