Namespaces | |
| namespace | inner |
Data Structures | |
| struct | vector_traits< std::complex< float16_t >, arch, typename std::enable_if< std::is_base_of< Helium, arch >::value >::type > |
| Vector datatype for Helium. More... | |
| struct | vload1_gen_stride< std::complex< float16_t >, 0, 1, 2, 3, 4, 5, 6, 7 > |
| Load with generalized stride specialized for <0,1,2,3,4,5,6,7> More... | |
| struct | vstore1_gen_stride< std::complex< float16_t >, 0, 1, 2, 3, 4, 5, 6, 7 > |
| Generalized store with stride (Specialized for <0,1,2,3>) More... | |
| struct vector_traits< std::complex< float16_t >, arch, typename std::enable_if< std::is_base_of< Helium, arch >::value >::type > |
Vector datatype for Helium.
| arch | Current architecture |
Public Types | |
| typedef std::complex< float16_t > | type |
| Scalar datatype. | |
| typedef std::complex< float16_t > | storage_type |
| Storage datatype. | |
| typedef ComplexVector< float16x8_t > | vector |
| Vector datatype. | |
| typedef HalfComplexVector< float16x8_t > | half_vector |
| Half vector datatype. | |
| typedef float16x8_t | real_vector |
| Real vector datatype. | |
| typedef ComplexVector< float16x8_t > | temp_accumulator |
| Temp accumulator datatype (must be reduced to final scalar datatype) | |
| typedef bool | predicate_t |
| Predicate datatype (not used for complex) | |
Static Public Member Functions | |
| static ComplexVector< float16x8_t > | temp_acc_zero () |
| Temp accumulator initialized to 0. | |
Static Public Attributes | |
| static constexpr bool | has_vector = true |
| Has vector instruction. | |
| static constexpr bool | is_float = true |
| Is float. | |
| static constexpr bool | is_fixed = false |
| Is not fixed point. | |
| static constexpr bool | has_predicate = false |
| Has predicated loops (not used for complex) | |
| static constexpr int | nb_lanes = 8 |
| Number of lanes (each lane being two floats) | |
| static constexpr bool | support_mixed = true |
| If support mixed arithmetic. | |
|
inlinestatic |
Temp accumulator initialized to 0.
| struct inner::vload1_gen_stride< std::complex< float16_t >, 0, 1, 2, 3, 4, 5, 6, 7 > |
Load with generalized stride specialized for <0,1,2,3,4,5,6,7>
Static Public Member Functions | |
| static ComplexVector< float16x8_t > | run (const std::complex< float16_t > *p) |
| Load with generalized stride. | |
|
inlinestatic |
Load with generalized stride.
| [in] | p | Load address |
| struct inner::vstore1_gen_stride< std::complex< float16_t >, 0, 1, 2, 3, 4, 5, 6, 7 > |
Generalized store with stride (Specialized for <0,1,2,3>)
Static Public Member Functions | |
| static void | run (std::complex< float16_t > *p, const ComplexVector< float16x8_t > &val) |
| Scatter store. | |
|
inlinestatic |
Scatter store.
| p | Store address | |
| [in] | val | Value to store |