*/
using value_type = Number;
- /**
- * This gives the number of elements collected in this class. In the general
- * case, there is only one element. Specializations use SIMD intrinsics and
- * can work on multiple elements at the same time.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 1;
-
static_assert(width == 1,
"You specified an illegal width that is not supported.");
-// We need to have a separate declaration for static const members
-template <typename Number, std::size_t width>
-const unsigned int VectorizedArray<Number, width>::n_array_elements;
-
-
-
/**
* @name Packing and unpacking of a VectorizedArray
*/
*/
using value_type = double;
- /**
- * This gives the number of vectors collected in this class.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 8;
-
/**
* Default empty constructor, leaving the data in an uninitialized state
* similar to float/double.
*/
using value_type = float;
- /**
- * This gives the number of vectors collected in this class.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 16;
-
/**
* Default empty constructor, leaving the data in an uninitialized state
* similar to float/double.
*/
using value_type = double;
- /**
- * This gives the number of vectors collected in this class.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 4;
-
/**
* Default empty constructor, leaving the data in an uninitialized state
* similar to float/double.
*/
using value_type = float;
- /**
- * This gives the number of vectors collected in this class.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 8;
-
/**
* Default empty constructor, leaving the data in an uninitialized state
* similar to float/double.
*/
using value_type = double;
- /**
- * This gives the number of vectors collected in this class.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 2;
-
/**
* Default empty constructor, leaving the data in an uninitialized state
* similar to float/double.
*/
using value_type = float;
- /**
- * This gives the number of vectors collected in this class.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 4;
-
/**
* This function can be used to set all data fields to a given scalar.
*/
*/
using value_type = double;
- /**
- * This gives the number of vectors collected in this class.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 2;
-
/**
* Default empty constructor, leaving the data in an uninitialized state
* similar to float/double.
*/
using value_type = float;
- /**
- * This gives the number of vectors collected in this class.
- *
- * @deprecated Use VectorizedArrayBase::size() instead.
- */
- DEAL_II_DEPRECATED static const unsigned int n_array_elements = 4;
-
/**
* Default empty constructor, leaving the data in an uninitialized state
* similar to float/double.
std::is_trivial<VectorizedArray<float>>::value,
"VectorizedArray<float> must be a POD type");
-// For the specializations of VectorizedArray, we need to instantiate the
-// static constexpr variable for some compilers. On the other hand, MSCV wants
-// us explicitly to not do so, otherwise we get: "error C2908: explicit
-// specialization 'const unsigned int
-// dealii::VectorizedArray<double, 2>::n_array_elements' has already been
-// instantiated".
-#if DEAL_II_VECTORIZATION_WIDTH_IN_BITS >= 128 && !defined(DEAL_II_MSVC)
-# if DEAL_II_VECTORIZATION_WIDTH_IN_BITS >= 512
-const unsigned int VectorizedArray<double, 8>::n_array_elements;
-const unsigned int VectorizedArray<float, 16>::n_array_elements;
-# endif
-
-# if DEAL_II_VECTORIZATION_WIDTH_IN_BITS >= 256
-const unsigned int VectorizedArray<double, 4>::n_array_elements;
-const unsigned int VectorizedArray<float, 8>::n_array_elements;
-# endif
-
-# if DEAL_II_VECTORIZATION_WIDTH_IN_BITS >= 128
-const unsigned int VectorizedArray<double, 2>::n_array_elements;
-const unsigned int VectorizedArray<float, 4>::n_array_elements;
-# endif
-#endif
-
DEAL_II_NAMESPACE_CLOSE