diff --git a/rtengine/curves.h b/rtengine/curves.h index 23a2aa0c3..f10e9d5fc 100644 --- a/rtengine/curves.h +++ b/rtengine/curves.h @@ -943,9 +943,9 @@ inline void StandardToneCurve::BatchApply( } #ifdef __SSE2__ - vfloat tmpr; - vfloat tmpg; - vfloat tmpb; + float tmpr[4] ALIGNED16; + float tmpg[4] ALIGNED16; + float tmpb[4] ALIGNED16; float mv = lutToneCurve[MAXVALF]; for (; i + 3 < end; i += 4) { __m128 r_val = LVF(r[i]); @@ -1130,9 +1130,9 @@ inline void WeightedStdToneCurve::BatchApply(const size_t start, const size_t en const vfloat zd5v = F2V(0.5f); const vfloat zd25v = F2V(0.25f); - vfloat tmpr; - vfloat tmpg; - vfloat tmpb; + float tmpr[4] ALIGNED16; + float tmpg[4] ALIGNED16; + float tmpb[4] ALIGNED16; for (; i + 3 < end; i += 4) { vfloat r_val = LIMV(LVF(r[i]), ZEROV, c65535v); diff --git a/rtengine/improcfun.cc b/rtengine/improcfun.cc index b15240509..231262a06 100644 --- a/rtengine/improcfun.cc +++ b/rtengine/improcfun.cc @@ -3791,9 +3791,9 @@ void ImProcFunctions::rgbProc (Imagefloat* working, LabImage* lab, PipetteBuffer } } } else { - vfloat tmpr; - vfloat tmpg; - vfloat tmpb; + float tmpr[4] ALIGNED16; + float tmpg[4] ALIGNED16; + float tmpb[4] ALIGNED16; for (int i = istart, ti = 0; i < tH; i++, ti++) { int j = jstart, tj = 0;