]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Remove deprecated VectorizedArray::n_array_elements 12385/head
authorDaniel Arndt <arndtd@ornl.gov>
Thu, 3 Jun 2021 16:18:18 +0000 (12:18 -0400)
committerDaniel Arndt <arndtd@ornl.gov>
Thu, 3 Jun 2021 16:36:23 +0000 (12:36 -0400)
doc/news/changes/incompatibilities/20210603DanielArndt-1 [new file with mode: 0644]
include/deal.II/base/vectorization.h
source/base/vectorization.cc
tests/matrix_free/compute_diagonal_03.cc

diff --git a/doc/news/changes/incompatibilities/20210603DanielArndt-1 b/doc/news/changes/incompatibilities/20210603DanielArndt-1
new file mode 100644 (file)
index 0000000..dac0385
--- /dev/null
@@ -0,0 +1,4 @@
+Removed: The deprecated member variable VectorizedArray::n_array_elements has
+been removed.
+<br>
+(Daniel Arndt, 2021/06/03)
index a58a4aaf043df1c1e49754da7735648a939edec2..56915f746ccfdbcc69c743b0eb525c29752b9a78 100644 (file)
@@ -395,15 +395,6 @@ public:
    */
   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.");
 
@@ -696,12 +687,6 @@ private:
 
 
 
-// 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
  */
@@ -941,13 +926,6 @@ public:
    */
   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.
@@ -1495,13 +1473,6 @@ public:
    */
   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.
@@ -2145,13 +2116,6 @@ public:
    */
   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.
@@ -2658,13 +2622,6 @@ public:
    */
   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.
@@ -3205,13 +3162,6 @@ public:
    */
   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.
@@ -3648,13 +3598,6 @@ public:
    */
   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.
    */
@@ -4129,13 +4072,6 @@ public:
    */
   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.
@@ -4370,13 +4306,6 @@ public:
    */
   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.
index fc662d8f30bf149bbf64b3ef15f691feafc9e08f..385434793cf654c7fcb4cae9276f23e7fd90279d 100644 (file)
@@ -30,27 +30,4 @@ static_assert(std::is_standard_layout<VectorizedArray<float>>::value &&
                 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
index e8e2cf4e56df9ff99007b2217be54270ff2bc588..2d305cd7961fe958b22df1690572a46e860b28ac 100644 (file)
@@ -76,9 +76,7 @@ test()
                auto                quadrature_point = phi.quadrature_point(q);
                VectorizedArrayType coefficient;
 
-               for (unsigned int v = 0;
-                    v < VectorizedArrayType::n_array_elements;
-                    v++)
+               for (unsigned int v = 0; v < VectorizedArrayType::size(); v++)
                  {
                    Point<dim, Number> point;
                    for (unsigned int d = 0; d < dim; d++)

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.