MCPcopy Create free account
hub / github.com/numpy/numpy / npyv_loadn_f64

Function npyv_loadn_f64

numpy/core/src/common/simd/avx2/memory.h:87–94  ·  view source on GitHub ↗

/ 64

Source from the content-addressed store, hash-verified

85{ return _mm256_castsi256_ps(npyv_loadn_u32((const npy_uint32*)ptr, stride)); }
86//// 64
87NPY_FINLINE npyv_f64 npyv_loadn_f64(const double *ptr, npy_intp stride)
88{
89 __m128d a0 = _mm_castsi128_pd(_mm_loadl_epi64((const __m128i*)ptr));
90 __m128d a2 = _mm_castsi128_pd(_mm_loadl_epi64((const __m128i*)(ptr + stride*2)));
91 __m128d a01 = _mm_loadh_pd(a0, ptr + stride);
92 __m128d a23 = _mm_loadh_pd(a2, ptr + stride*3);
93 return _mm256_insertf128_pd(_mm256_castpd128_pd256(a01), a23, 1);
94}
95NPY_FINLINE npyv_u64 npyv_loadn_u64(const npy_uint64 *ptr, npy_intp stride)
96{ return _mm256_castpd_si256(npyv_loadn_f64((const double*)ptr, stride)); }
97NPY_FINLINE npyv_s64 npyv_loadn_s64(const npy_int64 *ptr, npy_intp stride)

Callers 2

npyv_loadn_u64Function · 0.70
npyv_loadn_s64Function · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected