diff --git a/app/node/math/math/mathbase.cpp b/app/node/math/math/mathbase.cpp index 4723a9db9..420ad4ac9 100644 --- a/app/node/math/math/mathbase.cpp +++ b/app/node/math/math/mathbase.cpp @@ -167,42 +167,58 @@ void MathNodeBase::PushVector(NodeValueTable *output, olive::NodeValue::Type typ } } +void MathNodeBase::PerformAllOnFloatBuffer(Operation operation, float *a, float b, int start, int end) +{ + for (int j=start;jdata(i), number, 0, job.samples()->sample_count()); #else - for (int j=0;jsample_count();j++) { - job.samples()->data(i)[j] = PerformAll(operation, job.samples()->data(i)[j], number); - } + PerformAllOnFloatBuffer(operation, job.samples()->data(i), number, 0, job.samples()->sample_count()); #endif } } diff --git a/app/node/math/math/mathbase.h b/app/node/math/math/mathbase.h index 2a8c291a0..940bbee21 100644 --- a/app/node/math/math/mathbase.h +++ b/app/node/math/math/mathbase.h @@ -102,6 +102,7 @@ protected: static T PerformAddSubMultDiv(Operation operation, T a, U b); #ifdef Q_PROCESSOR_X86 + static void PerformAllOnFloatBuffer(Operation operation, float *a, float b, int start, int end); static void PerformAllOnFloatBufferSSE(Operation operation, float *a, float b, int start, int end); #endif