@@ -24,7 +24,7 @@ namespace nda {
2424
2525 simd_type (const value_t *v, simd_aligned_memory) : value(_mm512_load_epi32(v)) {}
2626
27- simd_type (const value_t *v, simd_unaligned_memory) : value(_mm512_load_epi64 (v)) {}
27+ simd_type (const value_t *v, simd_unaligned_memory) : value(_mm512_loadu_epi64 (v)) {}
2828
2929 simd_type (simd_zero_initialize) : value(_mm512_setzero_epi32()) {}
3030
@@ -55,7 +55,7 @@ namespace nda {
5555 const simd_i8 hi_2 (_mm512_extracti64x4_epi64 (rhs.value , 1 ));
5656 const simd_i8 lo = lo_1 / lo_2;
5757 const simd_i8 hi = hi_1 / hi_2;
58- return simd_type{_mm512_inserti64x4 (_mm512_castsi256_si512 (lo. value ), hi. value , 1 )};
58+ return simd_type{_mm512_inserti64x4 (_mm512_castsi256_si512 (lo), hi, 1 )};
5959 }
6060
6161 simd_type &operator +=(const simd_type &other) {
@@ -233,15 +233,6 @@ namespace nda {
233233 lhs.store (x.data ());
234234 rhs.store (y.data ());
235235 for (int i = 0 ; i < static_cast <int >(size ()); i++) { x[i] = x[i] / y[i]; }
236- return simd_type{x.data (), 0 };
237- }
238-
239- simd_type operator /(const simd_type &other) const {
240- alignas (alignment ()) std::array<value_t , size ()> x{};
241- alignas (alignment ()) std::array<value_t , size ()> y{};
242- this ->store (x.data ());
243- other.store (y.data ());
244- for (int i = 0 ; i < size (); i++) { x[i] = x[i] / y[i]; }
245236 return simd_type{x.data (), simd_aligned_memory_t };
246237 }
247238
@@ -757,17 +748,17 @@ namespace nda {
757748
758749 explicit simd_type (const intrinsic_t &v) : value(v) {}
759750
760- simd_type (const value_t *v, simd_aligned_memory) : value(_mm512_load_ps(reinterpret_cast < const scalar_t *>(v) )) {}
751+ simd_type (const value_t *v, simd_aligned_memory) : value(_mm512_load_ps(v )) {}
761752
762753 simd_type (const scalar_t *v, simd_aligned_memory) : value(_mm512_load_ps(v)) {}
763754
764- simd_type (const value_t *v, simd_unaligned_memory) : value(_mm512_loadu_ps(reinterpret_cast < const scalar_t *>(v) )) {}
755+ simd_type (const value_t *v, simd_unaligned_memory) : value(_mm512_loadu_ps(v )) {}
765756
766757 simd_type (const scalar_t *v, simd_unaligned_memory) : value(_mm512_loadu_ps(v)) {}
767758
768759 simd_type (simd_zero_initialize) : value(_mm512_setzero_ps()) {}
769760
770- simd_type (const std::array<value_t , 8 > &v) : value(_mm512_loadu_ps(reinterpret_cast < const scalar_t *>( v.data() ))) {}
761+ simd_type (const std::array<value_t , 8 > &v) : value(_mm512_loadu_ps(v.data())) {}
771762
772763 simd_type (const std::array<scalar_t , 16 > &v) : value(_mm512_loadu_ps(v.data())) {}
773764
0 commit comments