Eigen::internal::packet_traits< float > Struct Reference

#include <PacketMath.h>

+ Inheritance diagram for Eigen::internal::packet_traits< float >:

Public Types

enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasAdd = 1 ,
  HasSub = 1 , HasMul = 1 , HasDiv = 1 , HasMin = 1 ,
  HasMax = 1 , HasAbs = 1 , HasSin = EIGEN_FAST_MATH , HasCos = EIGEN_FAST_MATH ,
  HasACos = 1 , HasASin = 1 , HasATan = 1 , HasATanh = 1 ,
  HasLog = 1 , HasExp = 1 , HasSqrt = 0 , HasRsqrt = 0 ,
  HasTanh = 0 , HasErf = 0 , HasNegate = 1 , HasBlend = 1
}
 
enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasCmp = 1 ,
  HasDiv = 1 , HasReciprocal = EIGEN_FAST_MATH , HasSin = EIGEN_FAST_MATH , HasCos = EIGEN_FAST_MATH ,
  HasACos = 1 , HasASin = 1 , HasATan = 1 , HasATanh = 1 ,
  HasLog = 1 , HasLog1p = 1 , HasExpm1 = 1 , HasExp = 1 ,
  HasNdtri = 1 , HasBessel = 1 , HasSqrt = 0 , HasRsqrt = 0 ,
  HasTanh = 0 , HasErf = 0 , HasErfc = EIGEN_FAST_MATH , HasBlend = 1
}
 
enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasAbs = 1 ,
  HasMin = 1 , HasMax = 1 , HasConj = 1 , HasBlend = 1 ,
  HasSin = EIGEN_FAST_MATH , HasCos = EIGEN_FAST_MATH , HasACos = 1 , HasASin = 1 ,
  HasATan = 1 , HasATanh = 1 , HasSqrt = 0 , HasRsqrt = 0 ,
  HasLog = 1 , HasLog1p = 1 , HasExpm1 = 1 , HasNdtri = 1 ,
  HasBessel = 1 , HasExp = 1 , HasReciprocal = EIGEN_FAST_MATH , HasTanh = 0 ,
  HasErf = 0 , HasErfc = EIGEN_FAST_MATH , HasCmp = 1 , HasDiv = 1
}
 
enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasAbs2 = 0 ,
  HasSetLinear = 0 , HasBlend = 1 , HasSign = 0 , HasDiv = 1 ,
  HasExp = 1 , HasSqrt = 0 , HasLog = 1 , HasRsqrt = 0
}
 
enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasDiv = 1 ,
  HasSin = EIGEN_FAST_MATH , HasCos = EIGEN_FAST_MATH , HasTanh = 0 , HasErf = 0 ,
  HasLog = 1 , HasExp = 1 , HasSqrt = 0 , HasRsqrt = 0 ,
  HasBlend = 1
}
 
enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasCmp = 1 ,
  HasAdd = 1 , HasSub = 1 , HasShift = 1 , HasMul = 1 ,
  HasNegate = 1 , HasAbs = 1 , HasArg = 0 , HasAbs2 = 0 ,
  HasAbsDiff = 1 , HasMin = 1 , HasMax = 1 , HasConj = 1 ,
  HasSetLinear = 0 , HasBlend = 1 , HasDiv = 1 , HasSin = EIGEN_FAST_MATH ,
  HasCos = EIGEN_FAST_MATH , HasACos = 1 , HasASin = 1 , HasATan = 1 ,
  HasATanh = 1 , HasLog = 1 , HasExp = 1 , HasSqrt = 0 ,
  HasRsqrt = 0 , HasTanh = 0 , HasErf = 0 , HasErfc = EIGEN_FAST_MATH ,
  HasBessel = 1 , HasNdtri = 1
}
 
enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasCmp = 1 ,
  HasDiv = 1 , HasReciprocal = EIGEN_FAST_MATH , HasSin = EIGEN_FAST_MATH , HasCos = EIGEN_FAST_MATH ,
  HasACos = 1 , HasASin = 1 , HasATan = 1 , HasATanh = 1 ,
  HasLog = 1 , HasLog1p = 1 , HasExpm1 = 1 , HasNdtri = 1 ,
  HasExp = 1 , HasBessel = 1 , HasSqrt = 0 , HasRsqrt = 0 ,
  HasTanh = 0 , HasErf = 0 , HasErfc = EIGEN_FAST_MATH , HasBlend = 1 ,
  HasSign = 0
}
 
enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasAdd = 1 ,
  HasSub = 1 , HasShift = 1 , HasMul = 1 , HasNegate = 1 ,
  HasAbs = 1 , HasArg = 0 , HasAbs2 = 0 , HasMin = 1 ,
  HasMax = 1 , HasConj = 1 , HasSetLinear = 0 , HasBlend = 1 ,
  HasReduxp = 0 , HasDiv = 1 , HasSin = EIGEN_FAST_MATH , HasCos = EIGEN_FAST_MATH ,
  HasLog = 1 , HasExp = 1 , HasSqrt = 0 , HasTanh = 0 ,
  HasErf = 0 , HasErfc = EIGEN_FAST_MATH
}
 
enum  {
  Vectorizable = 1 , AlignedOnScalar = 1 , size = 4 , HasAdd = 1 ,
  HasSub = 1 , HasMul = 1 , HasDiv = 1 , HasMin = 1 ,
  HasMax = 1 , HasAbs = 1 , HasSin = EIGEN_FAST_MATH , HasCos = EIGEN_FAST_MATH ,
  HasLog = 1 , HasExp = 1 , HasSqrt = 0 , HasRsqrt = 0 ,
  HasTanh = 0 , HasErf = 0 , HasNegate = 1 , HasBlend = 1
}
 
typedef Packet4f type
 
typedef Packet4f half
 
typedef Packet8f type
 
typedef Packet4f half
 
typedef Packet16f type
 
typedef Packet8f half
 
typedef Packet4f type
 
typedef Packet4f half
 
typedef Packet4f type
 
typedef Packet4f half
 
typedef Packet4f type
 
typedef Packet2f half
 
typedef Packet4f type
 
typedef Packet4f half
 
typedef PacketXf type
 
typedef PacketXf half
 
typedef Packet4f type
 
typedef Packet4f half
 
- Public Types inherited from Eigen::internal::default_packet_traits
enum  {
  HasAdd = 1 , HasSub = 1 , HasShift = 1 , HasMul = 1 ,
  HasNegate = 1 , HasAbs = 1 , HasAbs2 = 1 , HasMin = 1 ,
  HasMax = 1 , HasConj = 1 , HasSetLinear = 1 , HasSign = 1 ,
  HasRound = 1 , HasArg = 0 , HasAbsDiff = 0 , HasBlend = 0 ,
  HasCmp = 0 , HasDiv = 0 , HasReciprocal = 0 , HasSqrt = 0 ,
  HasRsqrt = 0 , HasExp = 0 , HasExpm1 = 0 , HasLog = 0 ,
  HasLog1p = 0 , HasLog10 = 0 , HasPow = 0 , HasSin = 0 ,
  HasCos = 0 , HasTan = 0 , HasASin = 0 , HasACos = 0 ,
  HasATan = 0 , HasATanh = 0 , HasSinh = 0 , HasCosh = 0 ,
  HasTanh = 0 , HasLGamma = 0 , HasDiGamma = 0 , HasZeta = 0 ,
  HasPolygamma = 0 , HasErf = 0 , HasErfc = 0 , HasNdtri = 0 ,
  HasBessel = 0 , HasIGamma = 0 , HasIGammaDerA = 0 , HasGammaSampleDerAlpha = 0 ,
  HasIGammac = 0 , HasBetaInc = 0
}
 

Member Typedef Documentation

◆ half [1/9]

◆ half [2/9]

◆ half [3/9]

◆ half [4/9]

◆ half [5/9]

◆ half [6/9]

◆ half [7/9]

◆ half [8/9]

typedef PacketXf Eigen::internal::packet_traits< float >::half

◆ half [9/9]

◆ type [1/9]

◆ type [2/9]

◆ type [3/9]

◆ type [4/9]

◆ type [5/9]

◆ type [6/9]

◆ type [7/9]

◆ type [8/9]

typedef PacketXf Eigen::internal::packet_traits< float >::type

◆ type [9/9]

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasAbs2 
HasSetLinear 
HasBlend 
HasSign 
HasDiv 
HasExp 
HasSqrt 
HasLog 
HasRsqrt 
305  {
306  Vectorizable = 1,
307  AlignedOnScalar = 1,
308  size = 4,
309 
310  HasAbs2 = 0,
311  HasSetLinear = 0,
312  HasBlend = 0,
313  HasSign = 0,
314  HasDiv = 1,
315  HasExp = 1,
316  HasSqrt = 1,
317  HasLog = 1,
318  HasRsqrt = 1
319  };
@ HasSign
Definition: LSX/PacketMath.h:313
@ HasBlend
Definition: AltiVec/PacketMath.h:204
@ HasSqrt
Definition: AltiVec/PacketMath.h:198
@ Vectorizable
Definition: AltiVec/PacketMath.h:168
@ HasDiv
Definition: AltiVec/PacketMath.h:175
@ HasLog
Definition: AltiVec/PacketMath.h:185
@ HasExp
Definition: AltiVec/PacketMath.h:186
@ AlignedOnScalar
Definition: AltiVec/PacketMath.h:169
@ HasRsqrt
Definition: AltiVec/PacketMath.h:199
@ size
Definition: AltiVec/PacketMath.h:170
@ HasSetLinear
Definition: LSX/PacketMath.h:311
@ HasAbs2
Definition: LSX/PacketMath.h:310

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasDiv 
HasSin 
HasCos 
HasTanh 
HasErf 
HasLog 
HasExp 
HasSqrt 
HasRsqrt 
HasBlend 
80  {
81  Vectorizable = 1,
82  AlignedOnScalar = 1,
83  size = 4,
84  // FIXME check the Has*
85  HasDiv = 1,
90  HasLog = 1,
91  HasExp = 1,
92  HasSqrt = 1,
93  HasRsqrt = 1,
94  HasBlend = 1
95  };
#define EIGEN_FAST_MATH
Definition: Macros.h:51
@ HasSin
Definition: AltiVec/PacketMath.h:179
@ HasCos
Definition: AltiVec/PacketMath.h:180
@ HasTanh
Definition: AltiVec/PacketMath.h:200
@ HasErf
Definition: AltiVec/PacketMath.h:201

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasCmp 
HasAdd 
HasSub 
HasShift 
HasMul 
HasNegate 
HasAbs 
HasArg 
HasAbs2 
HasAbsDiff 
HasMin 
HasMax 
HasConj 
HasSetLinear 
HasBlend 
HasDiv 
HasSin 
HasCos 
HasACos 
HasASin 
HasATan 
HasATanh 
HasLog 
HasExp 
HasSqrt 
HasRsqrt 
HasTanh 
HasErf 
HasErfc 
HasBessel 
HasNdtri 
179  {
180  Vectorizable = 1,
181  AlignedOnScalar = 1,
182  size = 4,
183 
184  HasCmp = 1,
185  HasAdd = 1,
186  HasSub = 1,
187  HasShift = 1,
188  HasMul = 1,
189  HasNegate = 1,
190  HasAbs = 1,
191  HasArg = 0,
192  HasAbs2 = 1,
193  HasAbsDiff = 1,
194  HasMin = 1,
195  HasMax = 1,
196  HasConj = 1,
197  HasSetLinear = 1,
198  HasBlend = 0,
199  HasDiv = 1,
202  HasACos = 1,
203  HasASin = 1,
204  HasATan = 1,
205  HasATanh = 1,
206  HasLog = 1,
207  HasExp = 1,
208  HasSqrt = 1,
209  HasRsqrt = 1,
213  HasBessel = 0, // Issues with accuracy.
214  HasNdtri = 0
215  };
@ HasNdtri
Definition: AVX/PacketMath.h:121
@ HasACos
Definition: AltiVec/PacketMath.h:181
@ HasASin
Definition: AltiVec/PacketMath.h:182
@ HasBessel
Definition: AVX/PacketMath.h:122
@ HasCmp
Definition: AVX/PacketMath.h:108
@ HasATan
Definition: AltiVec/PacketMath.h:183
@ HasATanh
Definition: AltiVec/PacketMath.h:184
@ HasAbsDiff
Definition: NEON/PacketMath.h:193
@ HasMin
Definition: AltiVec/PacketMath.h:176
@ HasAdd
Definition: AltiVec/PacketMath.h:172
@ HasMul
Definition: AltiVec/PacketMath.h:174
@ HasNegate
Definition: AltiVec/PacketMath.h:203
@ HasAbs
Definition: AltiVec/PacketMath.h:178
@ HasSub
Definition: AltiVec/PacketMath.h:173
@ HasMax
Definition: AltiVec/PacketMath.h:177
@ HasErfc
Definition: AVX/PacketMath.h:127
@ HasConj
Definition: AVX512/PacketMath.h:117
@ HasShift
Definition: NEON/PacketMath.h:187
@ HasArg
Definition: NEON/PacketMath.h:191

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasCmp 
HasDiv 
HasReciprocal 
HasSin 
HasCos 
HasACos 
HasASin 
HasATan 
HasATanh 
HasLog 
HasLog1p 
HasExpm1 
HasNdtri 
HasExp 
HasBessel 
HasSqrt 
HasRsqrt 
HasTanh 
HasErf 
HasErfc 
HasBlend 
HasSign 
176  {
177  Vectorizable = 1,
178  AlignedOnScalar = 1,
179  size = 4,
180 
181  HasCmp = 1,
182  HasDiv = 1,
186  HasACos = 1,
187  HasASin = 1,
188  HasATan = 1,
189  HasATanh = 1,
190  HasLog = 1,
191  HasLog1p = 1,
192  HasExpm1 = 1,
193  HasNdtri = 1,
194  HasExp = 1,
195  HasBessel = 1,
196  HasSqrt = 1,
197  HasRsqrt = 1,
201  HasBlend = 1,
202  HasSign = 0 // The manually vectorized version is slightly slower for SSE.
203  };
@ HasReciprocal
Definition: AVX/PacketMath.h:110
@ HasExpm1
Definition: AVX/PacketMath.h:119
@ HasLog1p
Definition: AVX/PacketMath.h:118

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasAdd 
HasSub 
HasShift 
HasMul 
HasNegate 
HasAbs 
HasArg 
HasAbs2 
HasMin 
HasMax 
HasConj 
HasSetLinear 
HasBlend 
HasReduxp 
HasDiv 
HasSin 
HasCos 
HasLog 
HasExp 
HasSqrt 
HasTanh 
HasErf 
HasErfc 
335  {
336  Vectorizable = 1,
337  AlignedOnScalar = 1,
339 
340  HasAdd = 1,
341  HasSub = 1,
342  HasShift = 1,
343  HasMul = 1,
344  HasNegate = 1,
345  HasAbs = 1,
346  HasArg = 0,
347  HasAbs2 = 1,
348  HasMin = 1,
349  HasMax = 1,
350  HasConj = 1,
351  HasSetLinear = 0,
352  HasBlend = 0,
353  HasReduxp = 0, // Not implemented in SVE
354 
355  HasDiv = 1,
356 
359  HasLog = 1,
360  HasExp = 1,
361  HasSqrt = 1,
365  };
@ HasReduxp
Definition: SVE/PacketMath.h:353
@ size
Definition: SVE/PacketMath.h:30

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasAdd 
HasSub 
HasMul 
HasDiv 
HasMin 
HasMax 
HasAbs 
HasSin 
HasCos 
HasLog 
HasExp 
HasSqrt 
HasRsqrt 
HasTanh 
HasErf 
HasNegate 
HasBlend 
178  {
179  Vectorizable = 1,
180  AlignedOnScalar = 1,
181  size = 4,
182 
183  HasAdd = 1,
184  HasSub = 1,
185  HasMul = 1,
186  HasDiv = 1,
187  HasMin = 1,
188  HasMax = 1,
189  HasAbs = 1,
190  HasSin = 0,
191  HasCos = 0,
192  HasLog = 0,
193  HasExp = 1,
194  HasSqrt = 1,
195  HasRsqrt = 1,
196  HasTanh = 1,
197  HasErf = 1,
198  HasNegate = 1,
199  HasBlend = 1
200  };

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasAdd 
HasSub 
HasMul 
HasDiv 
HasMin 
HasMax 
HasAbs 
HasSin 
HasCos 
HasACos 
HasASin 
HasATan 
HasATanh 
HasLog 
HasExp 
HasSqrt 
HasRsqrt 
HasTanh 
HasErf 
HasNegate 
HasBlend 
167  {
168  Vectorizable = 1,
169  AlignedOnScalar = 1,
170  size = 4,
171 
172  HasAdd = 1,
173  HasSub = 1,
174  HasMul = 1,
175  HasDiv = 1,
176  HasMin = 1,
177  HasMax = 1,
178  HasAbs = 1,
181  HasACos = 1,
182  HasASin = 1,
183  HasATan = 1,
184  HasATanh = 1,
185  HasLog = 1,
186  HasExp = 1,
187 #ifdef EIGEN_VECTORIZE_VSX
188  HasSqrt = 1,
189 #if !EIGEN_COMP_CLANG
190  HasRsqrt = 1,
191 #else
192  HasRsqrt = 0,
193 #endif
197 #else
198  HasSqrt = 0,
199  HasRsqrt = 0,
200  HasTanh = 0,
201  HasErf = 0,
202 #endif
203  HasNegate = 1,
204  HasBlend = 1
205  };

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasCmp 
HasDiv 
HasReciprocal 
HasSin 
HasCos 
HasACos 
HasASin 
HasATan 
HasATanh 
HasLog 
HasLog1p 
HasExpm1 
HasExp 
HasNdtri 
HasBessel 
HasSqrt 
HasRsqrt 
HasTanh 
HasErf 
HasErfc 
HasBlend 
103  {
104  Vectorizable = 1,
105  AlignedOnScalar = 1,
106  size = 8,
107 
108  HasCmp = 1,
109  HasDiv = 1,
113  HasACos = 1,
114  HasASin = 1,
115  HasATan = 1,
116  HasATanh = 1,
117  HasLog = 1,
118  HasLog1p = 1,
119  HasExpm1 = 1,
120  HasExp = 1,
121  HasNdtri = 1,
122  HasBessel = 1,
123  HasSqrt = 1,
124  HasRsqrt = 1,
128  HasBlend = 1
129  };

◆ anonymous enum

anonymous enum
Enumerator
Vectorizable 
AlignedOnScalar 
size 
HasAbs 
HasMin 
HasMax 
HasConj 
HasBlend 
HasSin 
HasCos 
HasACos 
HasASin 
HasATan 
HasATanh 
HasSqrt 
HasRsqrt 
HasLog 
HasLog1p 
HasExpm1 
HasNdtri 
HasBessel 
HasExp 
HasReciprocal 
HasTanh 
HasErf 
HasErfc 
HasCmp 
HasDiv 
109  {
110  Vectorizable = 1,
111  AlignedOnScalar = 1,
112  size = 16,
113 
114  HasAbs = 1,
115  HasMin = 1,
116  HasMax = 1,
117  HasConj = 1,
118  HasBlend = 1,
121  HasACos = 1,
122  HasASin = 1,
123  HasATan = 1,
124  HasATanh = 1,
125  HasSqrt = 1,
126  HasRsqrt = 1,
127  HasLog = 1,
128  HasLog1p = 1,
129  HasExpm1 = 1,
130  HasNdtri = 1,
131  HasBessel = 1,
132  HasExp = 1,
137  HasCmp = 1,
138  HasDiv = 1
139  };

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