Fix bug #590: NEON Duplicate lane load

This commit is contained in:
Simon Pilgrim 2013-06-23 14:13:21 +02:00
parent bea4a67c92
commit fab0235369

View File

@ -191,15 +191,15 @@ template<> EIGEN_STRONG_INLINE Packet4i ploadu<Packet4i>(const int* from) { EI
template<> EIGEN_STRONG_INLINE Packet4f ploaddup<Packet4f>(const float* from) template<> EIGEN_STRONG_INLINE Packet4f ploaddup<Packet4f>(const float* from)
{ {
float32x2_t lo, hi; float32x2_t lo, hi;
lo = vdup_n_f32(*from); lo = vld1_dup_f32(from);
hi = vdup_n_f32(*(from+1)); hi = vld1_dup_f32(from+1);
return vcombine_f32(lo, hi); return vcombine_f32(lo, hi);
} }
template<> EIGEN_STRONG_INLINE Packet4i ploaddup<Packet4i>(const int* from) template<> EIGEN_STRONG_INLINE Packet4i ploaddup<Packet4i>(const int* from)
{ {
int32x2_t lo, hi; int32x2_t lo, hi;
lo = vdup_n_s32(*from); lo = vld1_dup_s32(from);
hi = vdup_n_s32(*(from+1)); hi = vld1_dup_s32(from+1);
return vcombine_s32(lo, hi); return vcombine_s32(lo, hi);
} }