Public Types | Public Member Functions | List of all members
Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize > Class Template Reference

#include <GeneralBlockPanelKernel.h>

Public Types

enum  {
  ConjLhs = _ConjLhs, ConjRhs = _ConjRhs, Vectorizable = unpacket_traits<_LhsPacket>::vectorizable && unpacket_traits<_RhsPacket>::vectorizable, LhsPacketSize = Vectorizable ? unpacket_traits<_LhsPacket>::size : 1,
  RhsPacketSize = Vectorizable ? unpacket_traits<_RhsPacket>::size : 1, ResPacketSize = Vectorizable ? unpacket_traits<_ResPacket>::size : 1, NumberOfRegisters = EIGEN_ARCH_DEFAULT_NUMBER_OF_REGISTERS, nr = 4,
  default_mr = (EIGEN_PLAIN_ENUM_MIN(16,NumberOfRegisters)/2/nr)*LhsPacketSize, mr = default_mr, LhsProgress = LhsPacketSize, RhsProgress = 1
}
 
typedef ResPacket AccPacket
 
typedef conditional< Vectorizable, _LhsPacket, LhsScalar >::type LhsPacket
 
typedef LhsPacket LhsPacket4Packing
 
typedef _LhsScalar LhsScalar
 
typedef conditional< Vectorizable, _ResPacket, ResScalar >::type ResPacket
 
typedef ScalarBinaryOpTraits< LhsScalar, RhsScalar >::ReturnType ResScalar
 
typedef conditional< Vectorizable, _RhsPacket, RhsScalar >::type RhsPacket
 
typedef QuadPacket< RhsPacketRhsPacketx4
 
typedef _RhsScalar RhsScalar
 

Public Member Functions

EIGEN_STRONG_INLINE void acc (const AccPacket &c, const ResPacket &alpha, ResPacket &r) const
 
template<typename ResPacketHalf >
EIGEN_STRONG_INLINE void acc (const ResPacketHalf &c, const ResPacketHalf &alpha, ResPacketHalf &r) const
 
EIGEN_STRONG_INLINE void initAcc (AccPacket &p)
 
template<typename LhsPacketType >
EIGEN_STRONG_INLINE void loadLhs (const LhsScalar *a, LhsPacketType &dest) const
 
template<typename LhsPacketType >
EIGEN_STRONG_INLINE void loadLhsUnaligned (const LhsScalar *a, LhsPacketType &dest) const
 
template<typename RhsPacketType >
EIGEN_STRONG_INLINE void loadRhs (const RhsScalar *b, RhsPacketType &dest) const
 
EIGEN_STRONG_INLINE void loadRhs (const RhsScalar *b, RhsPacketx4 &dest) const
 
EIGEN_STRONG_INLINE void loadRhsQuad (const RhsScalar *b, RhsPacket &dest) const
 
template<typename LhsPacketType , typename RhsPacketType , typename AccPacketType , typename LaneIdType >
EIGEN_STRONG_INLINE void madd (const LhsPacketType &a, const RhsPacketType &b, AccPacketType &c, RhsPacketType &tmp, const LaneIdType &) const
 
template<typename LhsPacketType , typename AccPacketType , typename LaneIdType >
EIGEN_STRONG_INLINE void madd (const LhsPacketType &a, const RhsPacketx4 &b, AccPacketType &c, RhsPacket &tmp, const LaneIdType &lane) const
 
 PACKET_DECL_COND_PREFIX (_, Lhs, _PacketSize)
 
 PACKET_DECL_COND_PREFIX (_, Rhs, _PacketSize)
 
 PACKET_DECL_COND_PREFIX (_, Res, _PacketSize)
 
template<typename RhsPacketType >
EIGEN_STRONG_INLINE void updateRhs (const RhsScalar *b, RhsPacketType &dest) const
 
EIGEN_STRONG_INLINE void updateRhs (const RhsScalar *, RhsPacketx4 &) const
 

Detailed Description

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
class Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >

Definition at line 25 of file products/GeneralBlockPanelKernel.h.

Member Typedef Documentation

◆ AccPacket

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef ResPacket Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::AccPacket

Definition at line 466 of file products/GeneralBlockPanelKernel.h.

◆ LhsPacket

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef conditional<Vectorizable,_LhsPacket,LhsScalar>::type Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::LhsPacket

Definition at line 460 of file products/GeneralBlockPanelKernel.h.

◆ LhsPacket4Packing

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef LhsPacket Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::LhsPacket4Packing

Definition at line 463 of file products/GeneralBlockPanelKernel.h.

◆ LhsScalar

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef _LhsScalar Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::LhsScalar

Definition at line 421 of file products/GeneralBlockPanelKernel.h.

◆ ResPacket

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef conditional<Vectorizable,_ResPacket,ResScalar>::type Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::ResPacket

Definition at line 462 of file products/GeneralBlockPanelKernel.h.

◆ ResScalar

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef ScalarBinaryOpTraits<LhsScalar, RhsScalar>::ReturnType Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::ResScalar

Definition at line 423 of file products/GeneralBlockPanelKernel.h.

◆ RhsPacket

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef conditional<Vectorizable,_RhsPacket,RhsScalar>::type Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::RhsPacket

Definition at line 461 of file products/GeneralBlockPanelKernel.h.

◆ RhsPacketx4

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef QuadPacket<RhsPacket> Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::RhsPacketx4

Definition at line 465 of file products/GeneralBlockPanelKernel.h.

◆ RhsScalar

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
typedef _RhsScalar Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::RhsScalar

Definition at line 422 of file products/GeneralBlockPanelKernel.h.

Member Enumeration Documentation

◆ anonymous enum

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
anonymous enum
Enumerator
ConjLhs 
ConjRhs 
Vectorizable 
LhsPacketSize 
RhsPacketSize 
ResPacketSize 
NumberOfRegisters 
nr 
default_mr 
mr 
LhsProgress 
RhsProgress 

Definition at line 429 of file products/GeneralBlockPanelKernel.h.

Member Function Documentation

◆ acc() [1/2]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::acc ( const AccPacket c,
const ResPacket alpha,
ResPacket r 
) const
inline

Definition at line 533 of file products/GeneralBlockPanelKernel.h.

◆ acc() [2/2]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
template<typename ResPacketHalf >
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::acc ( const ResPacketHalf &  c,
const ResPacketHalf &  alpha,
ResPacketHalf &  r 
) const
inline

Definition at line 539 of file products/GeneralBlockPanelKernel.h.

◆ initAcc()

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::initAcc ( AccPacket p)
inline

Definition at line 468 of file products/GeneralBlockPanelKernel.h.

◆ loadLhs()

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
template<typename LhsPacketType >
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::loadLhs ( const LhsScalar a,
LhsPacketType &  dest 
) const
inline

Definition at line 500 of file products/GeneralBlockPanelKernel.h.

◆ loadLhsUnaligned()

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
template<typename LhsPacketType >
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::loadLhsUnaligned ( const LhsScalar a,
LhsPacketType &  dest 
) const
inline

Definition at line 506 of file products/GeneralBlockPanelKernel.h.

◆ loadRhs() [1/2]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
template<typename RhsPacketType >
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::loadRhs ( const RhsScalar b,
RhsPacketType &  dest 
) const
inline

Definition at line 474 of file products/GeneralBlockPanelKernel.h.

◆ loadRhs() [2/2]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::loadRhs ( const RhsScalar b,
RhsPacketx4 dest 
) const
inline

Definition at line 479 of file products/GeneralBlockPanelKernel.h.

◆ loadRhsQuad()

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::loadRhsQuad ( const RhsScalar b,
RhsPacket dest 
) const
inline

Definition at line 494 of file products/GeneralBlockPanelKernel.h.

◆ madd() [1/2]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
template<typename LhsPacketType , typename RhsPacketType , typename AccPacketType , typename LaneIdType >
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::madd ( const LhsPacketType &  a,
const RhsPacketType &  b,
AccPacketType &  c,
RhsPacketType &  tmp,
const LaneIdType &   
) const
inline

Definition at line 512 of file products/GeneralBlockPanelKernel.h.

◆ madd() [2/2]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
template<typename LhsPacketType , typename AccPacketType , typename LaneIdType >
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::madd ( const LhsPacketType &  a,
const RhsPacketx4 b,
AccPacketType &  c,
RhsPacket tmp,
const LaneIdType &  lane 
) const
inline

Definition at line 528 of file products/GeneralBlockPanelKernel.h.

◆ PACKET_DECL_COND_PREFIX() [1/3]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::PACKET_DECL_COND_PREFIX ( _  ,
Lhs  ,
_PacketSize   
)

◆ PACKET_DECL_COND_PREFIX() [2/3]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::PACKET_DECL_COND_PREFIX ( _  ,
Rhs  ,
_PacketSize   
)

◆ PACKET_DECL_COND_PREFIX() [3/3]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::PACKET_DECL_COND_PREFIX ( _  ,
Res  ,
_PacketSize   
)

◆ updateRhs() [1/2]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
template<typename RhsPacketType >
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::updateRhs ( const RhsScalar b,
RhsPacketType &  dest 
) const
inline

Definition at line 485 of file products/GeneralBlockPanelKernel.h.

◆ updateRhs() [2/2]

template<typename _LhsScalar, typename _RhsScalar, bool _ConjLhs, bool _ConjRhs, int Arch, int _PacketSize>
EIGEN_STRONG_INLINE void Eigen::internal::gebp_traits< _LhsScalar, _RhsScalar, _ConjLhs, _ConjRhs, Arch, _PacketSize >::updateRhs ( const RhsScalar ,
RhsPacketx4  
) const
inline

Definition at line 490 of file products/GeneralBlockPanelKernel.h.


The documentation for this class was generated from the following file:


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:44:39