avx: fix aliasing issue in simde_mm_maskload_pd
Fixes
@@ -3429,7 +3429,9 @@ simde_mm_maskload_pd (const simde_float64 mem_addr[HEDLEY_ARRAY_PARAM(4)], simde
SIMDE_VECTORIZE
for (size_t i = 0 ; i < (sizeof(r_.f64) / sizeof(r_.f64[0])) ; i++) {
- r_.i64[i] = HEDLEY_REINTERPRET_CAST(int64_t const*, mem_addr)[i] & (mask_.i64[i] >> 63);
+ int64_t tmp;
+ memcpy(&tmp, &(mem_addr[i]), sizeof(simde_float64));
+ r_.i64[i] = tmp & (mask_.i64[i] >> 63);
}
return simde__m128d_from_private(r_);
