diff options
Diffstat (limited to 'source')
3 files changed, 10 insertions, 18 deletions
diff --git a/source/blender/blenlib/BLI_compiler_attrs.h b/source/blender/blenlib/BLI_compiler_attrs.h index 4c548654e33..2b6baa0d67b 100644 --- a/source/blender/blenlib/BLI_compiler_attrs.h +++ b/source/blender/blenlib/BLI_compiler_attrs.h @@ -94,10 +94,16 @@ /* Use to suppress '-Wimplicit-fallthrough' (in place of 'break'). */ #if defined(__GNUC__) && (__GNUC__ >= 7) /* gcc7.0+ only */ -#define ATTR_FALLTHROUGH __attribute__((fallthrough)) +# define ATTR_FALLTHROUGH __attribute__((fallthrough)) #else -#define ATTR_FALLTHROUGH ((void)0) +# define ATTR_FALLTHROUGH ((void)0) #endif +/* Declare the memory alignment in Bytes. */ +#if defined(_WIN32) && !defined(FREE_WINDOWS) +# define ATTR_ALIGN(x) __declspec(align(x)) +#else +# define ATTR_ALIGN(x) __attribute__((aligned(x))) +#endif #endif /* __BLI_COMPILER_ATTRS_H__ */ diff --git a/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp index c413e94c173..4d05ece7ef0 100644 --- a/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianXBlurOperation.cpp @@ -85,14 +85,7 @@ 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 ATTR_ALIGN(16) color_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f}; float multiplier_accum = 0.0f; MemoryBuffer *inputBuffer = (MemoryBuffer *)data; float *buffer = inputBuffer->getBuffer(); diff --git a/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp b/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp index 5c8c6399981..3203914b5a7 100644 --- a/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp +++ b/source/blender/compositor/operations/COM_GaussianYBlurOperation.cpp @@ -84,14 +84,7 @@ 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 ATTR_ALIGN(16) color_accum[4] = {0.0f, 0.0f, 0.0f, 0.0f}; float multiplier_accum = 0.0f; MemoryBuffer *inputBuffer = (MemoryBuffer *)data; float *buffer = inputBuffer->getBuffer(); |