diff --git a/Grid/simd/Grid_a64fx-fixedsize.h b/Grid/simd/Grid_a64fx-fixedsize.h index deeb5c78..a8c2b978 100644 --- a/Grid/simd/Grid_a64fx-fixedsize.h +++ b/Grid/simd/Grid_a64fx-fixedsize.h @@ -436,7 +436,7 @@ struct PrecisionChange { vecf sb_v = svcvt_f32_x(pg1d, b); return svuzp1(sa_v, sb_v); } - static inline void StoD (vecf s,vecd &a,vecd &b) { + static inline void StoD (svfloat32_t s,svfloat64_t &a,svfloat64_t &b) { pred pg1d = acle::pg1(); vecf sa_v = svzip1(s, s); vecf sb_v = svzip2(s, s); diff --git a/Grid/simd/Grid_vector_types.h b/Grid/simd/Grid_vector_types.h index c38fdd9e..03cda20d 100644 --- a/Grid/simd/Grid_vector_types.h +++ b/Grid/simd/Grid_vector_types.h @@ -967,7 +967,7 @@ accelerator_inline void precisionChange(vRealD *out,vRealF *in,int nvec) // 961 | Optimization::PrecisionChange::StoD(in[m].v,out[n].v,out[n+1].v); // | ~~~~~~~^ // Optimization::PrecisionChange::StoD(in[m].v,out[n].v,out[n+1].v); - Optimization::PrecisionChange::StoD(in[m].v,&out[n].v,&out[n+1].v); + Optimization::PrecisionChange::StoD(in[m].v,out[n].v,out[n+1].v); } } accelerator_inline void precisionChange(vRealD *out,vRealH *in,int nvec)