diff options
Diffstat (limited to 'source/blender/compositor/operations')
-rw-r--r-- | source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp | 7 | ||||
-rw-r--r-- | source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp index 29ed4334412..c413e94c173 100644 --- a/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp @@ -85,6 +85,13 @@ void GaussianXBlurOperation::updateGauss() void GaussianXBlurOperation::executePixel(float output[4], int x, int y, void *data) { +#ifdef __SSE2__ +# if defined(_WIN32) && !defined(FREE_WINDOWS) + __declspec(align(16)) +# else + __attribute__((aligned(16))) +# endif +#endif float color_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f}; float multiplier_accum = 0.0f; MemoryBuffer *inputBuffer = (MemoryBuffer *)data; diff --git a/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp index 4b55333c08c..5c8c6399981 100644 --- a/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp @@ -84,6 +84,13 @@ void GaussianYBlurOperation::updateGauss() void GaussianYBlurOperation::executePixel(float output[4], int x, int y, void *data) { +#ifdef __SSE2__ +# if defined(_WIN32) && !defined(FREE_WINDOWS) + __declspec(align(16)) +# else + __attribute__((aligned(16))) +# endif +#endif float color_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f}; float multiplier_accum = 0.0f; MemoryBuffer *inputBuffer = (MemoryBuffer *)data; |