diff --git a/include/blast/math/RowColumnVectorPointer.hpp b/include/blast/math/RowColumnVectorPointer.hpp index 596ab87..d3d0caf 100644 --- a/include/blast/math/RowColumnVectorPointer.hpp +++ b/include/blast/math/RowColumnVectorPointer.hpp @@ -68,12 +68,6 @@ namespace blast } - SimdVecType broadcast() const noexcept - { - return ptr_.broadcast(); - } - - void store(SimdVecType const& val) const noexcept { ptr_.store(transposeFlag, val); diff --git a/include/blast/math/dense/DynamicMatrixPointer.hpp b/include/blast/math/dense/DynamicMatrixPointer.hpp index 0d0f5eb..d970a67 100644 --- a/include/blast/math/dense/DynamicMatrixPointer.hpp +++ b/include/blast/math/dense/DynamicMatrixPointer.hpp @@ -81,12 +81,6 @@ namespace blast } - SimdVecType broadcast() const noexcept - { - return *ptr_; - } - - void store(SimdVecType const& val) const noexcept { val.store(ptr_, AF); diff --git a/include/blast/math/dense/DynamicVectorPointer.hpp b/include/blast/math/dense/DynamicVectorPointer.hpp index 57d62df..9d3e576 100644 --- a/include/blast/math/dense/DynamicVectorPointer.hpp +++ b/include/blast/math/dense/DynamicVectorPointer.hpp @@ -73,12 +73,6 @@ namespace blast } - SimdVecType broadcast() const noexcept - { - return *ptr_; - } - - void store(IntrinsicType val) const noexcept { // Non-optimized diff --git a/include/blast/math/dense/StaticMatrixPointer.hpp b/include/blast/math/dense/StaticMatrixPointer.hpp index 24920b5..1c346e7 100644 --- a/include/blast/math/dense/StaticMatrixPointer.hpp +++ b/include/blast/math/dense/StaticMatrixPointer.hpp @@ -82,12 +82,6 @@ namespace blast } - SimdVecType broadcast() const noexcept - { - return SimdVecType {*ptr_}; - } - - void store(SimdVecType const& val) const noexcept { val.store(ptr_, AF); diff --git a/include/blast/math/dense/StaticVectorPointer.hpp b/include/blast/math/dense/StaticVectorPointer.hpp index 3e453bb..8161485 100644 --- a/include/blast/math/dense/StaticVectorPointer.hpp +++ b/include/blast/math/dense/StaticVectorPointer.hpp @@ -81,12 +81,6 @@ namespace blast } - SimdVecType broadcast() const noexcept - { - return *ptr_; - } - - void store(SimdVecType val) const noexcept { if constexpr (S == 1) diff --git a/include/blast/math/panel/DynamicPanelMatrixPointer.hpp b/include/blast/math/panel/DynamicPanelMatrixPointer.hpp index 05cc3e5..8884c8f 100644 --- a/include/blast/math/panel/DynamicPanelMatrixPointer.hpp +++ b/include/blast/math/panel/DynamicPanelMatrixPointer.hpp @@ -95,12 +95,6 @@ namespace blast } - SimdVecType broadcast() const noexcept - { - return SimdVecType {*ptr_}; - } - - void store(SimdVecType const& val) const noexcept { static_assert(AF, "store() implemented only for aligned pointers"); diff --git a/include/blast/math/panel/StaticPanelMatrixPointer.hpp b/include/blast/math/panel/StaticPanelMatrixPointer.hpp index ca55589..862982d 100644 --- a/include/blast/math/panel/StaticPanelMatrixPointer.hpp +++ b/include/blast/math/panel/StaticPanelMatrixPointer.hpp @@ -88,12 +88,6 @@ namespace blast } - SimdVecType broadcast() const noexcept - { - return SimdVecType {*ptr_}; - } - - void store(SimdVecType const& val) const noexcept { static_assert(AF, "store() implemented only for aligned pointers"); diff --git a/include/blast/math/register_matrix/DynamicRegisterMatrix.hpp b/include/blast/math/register_matrix/DynamicRegisterMatrix.hpp index caa0eeb..e38ec79 100644 --- a/include/blast/math/register_matrix/DynamicRegisterMatrix.hpp +++ b/include/blast/math/register_matrix/DynamicRegisterMatrix.hpp @@ -407,7 +407,7 @@ namespace blast #pragma unroll for (size_t j = 0; j < N; ++j) if (j < n_) { - SimdVecType bx = b(0, j).broadcast(); + SimdVecType const bx = b[0, j]; #pragma unroll for (size_t i = 0; i < RM; ++i) // TODO: !!! check i against m @@ -430,7 +430,7 @@ namespace blast #pragma unroll for (size_t j = 0; j < N; ++j) if (j < n_) { - SimdVecType bx = b(0, j).broadcast(); + SimdVecType bx = b[0, j]; #pragma unroll for (size_t i = 0; i < RM; ++i) // TODO: !!! check i against m diff --git a/include/blast/math/register_matrix/RegisterMatrix.hpp b/include/blast/math/register_matrix/RegisterMatrix.hpp index bc7666b..34b62da 100644 --- a/include/blast/math/register_matrix/RegisterMatrix.hpp +++ b/include/blast/math/register_matrix/RegisterMatrix.hpp @@ -571,14 +571,14 @@ namespace blast #pragma unroll for (size_t k = 0; k < j; ++k) { - SimdVecType const a_kj = (~A)(k, j).broadcast(); + SimdVecType const a_kj = A[k, j]; #pragma unroll for (size_t i = 0; i < RM; ++i) v_[i][j] = fnmadd(a_kj, v_[i][k], v_[i][j]); } - IntrinsicType const a_jj = (~A)(j, j).broadcast(); + SimdVecType const a_jj = A[j, j]; #pragma unroll for (size_t i = 0; i < RM; ++i) @@ -759,7 +759,7 @@ namespace blast #pragma unroll for (size_t j = 0; j < N; ++j) { - SimdVecType bx = bu(0, j).broadcast(); + SimdVecType const bx = bu[0, j]; #pragma unroll for (size_t i = 0; i < ii; ++i) @@ -796,7 +796,7 @@ namespace blast #pragma unroll for (size_t j = 0; j <= k; ++j) { - SimdVecType ax = au(0, j).broadcast(); + SimdVecType const ax = au[0, j]; #pragma unroll for (size_t i = 0; i < RM; ++i) diff --git a/include/blast/math/typetraits/MatrixPointer.hpp b/include/blast/math/typetraits/MatrixPointer.hpp index 7533262..9b1b42a 100644 --- a/include/blast/math/typetraits/MatrixPointer.hpp +++ b/include/blast/math/typetraits/MatrixPointer.hpp @@ -17,7 +17,6 @@ namespace blast p(i, j); p[i, j]; p.load(); - p.broadcast(); p.vmove(i); p.hmove(j); p.spacing(); diff --git a/include/blast/math/typetraits/VectorPointer.hpp b/include/blast/math/typetraits/VectorPointer.hpp index 9ad593a..3b00aa1 100644 --- a/include/blast/math/typetraits/VectorPointer.hpp +++ b/include/blast/math/typetraits/VectorPointer.hpp @@ -17,7 +17,6 @@ namespace blast p(i); p[i]; p.load(); - p.broadcast(); p.spacing(); p.trans(); ~p;