VCTR
Loading...
Searching...
No Matches
vctr::expressions::MultiplySubtractVectors< extent, SrcAType, SrcBType, SrcCType > Class Template Reference

Multiply-Accumulates three vector like types. More...

Inheritance diagram for vctr::expressions::MultiplySubtractVectors< extent, SrcAType, SrcBType, SrcCType >:
vctr::ExpressionTemplateBase

Public Types

using value_type = ValueType< SrcAType >
 

Public Member Functions

template<class SrcA , class SrcB , class SrcC >
constexpr MultiplySubtractVectors (SrcA &&a, SrcB &&b, SrcC &&c)
 
constexpr const auto & getStorageInfo () const
 
constexpr size_t size () const
 
constexpr bool isNotAliased (const void *) const
 
VCTR_FORCEDINLINE constexpr auto operator[] (size_t i) const
 
void prepareNeonEvaluation () const
 
VCTR_FORCEDINLINE VCTR_TARGET ("avx") void prepareAVXEvaluation() const
 
VCTR_FORCEDINLINE VCTR_TARGET ("sse4.1") void prepareSSEEvaluation() const
 
VCTR_FORCEDINLINE VCTR_TARGET ("fma") AVXRegister< value_type > getAVX(size_t i) const
 
NeonRegister< value_type > getNeon (size_t i) const
 

Detailed Description

template<size_t extent, class SrcAType, class SrcBType, class SrcCType>
requires are::same<ValueType<SrcAType>, ValueType<SrcBType>, ValueType<SrcCType>>
class vctr::expressions::MultiplySubtractVectors< extent, SrcAType, SrcBType, SrcCType >

Multiply-Accumulates three vector like types.


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