diff options
author | Tim Rowley <[email protected]> | 2016-03-29 10:58:43 -0600 |
---|---|---|
committer | Tim Rowley <[email protected]> | 2016-04-12 11:52:05 -0500 |
commit | 32a8653ad2cef2fba70b33ee62adc6f5d9d427d8 (patch) | |
tree | cf33cf8e625eac1ae4b58d90772918a50d4284d8 | |
parent | e1871c4459bbd291e6356e971c6aa2becf4ecb96 (diff) |
swr: [rasterizer] Ensure correct alignment of stack variables used as vectors
Acked-by: Brian Paul <[email protected]>
-rw-r--r-- | src/gallium/drivers/swr/rasterizer/common/os.h | 4 | ||||
-rw-r--r-- | src/gallium/drivers/swr/rasterizer/core/knobs.h | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/gallium/drivers/swr/rasterizer/common/os.h b/src/gallium/drivers/swr/rasterizer/common/os.h index 427ebc1b3cc..180a0560822 100644 --- a/src/gallium/drivers/swr/rasterizer/common/os.h +++ b/src/gallium/drivers/swr/rasterizer/common/os.h @@ -193,9 +193,7 @@ typedef KILOBYTE MEGABYTE[1024]; typedef MEGABYTE GIGABYTE[1024]; #define OSALIGNLINE(RWORD) OSALIGN(RWORD, 64) -#if KNOB_SIMD_WIDTH == 8 -#define OSALIGNSIMD(RWORD) OSALIGN(RWORD, 32) -#endif +#define OSALIGNSIMD(RWORD) OSALIGN(RWORD, KNOB_SIMD_BYTES) #include "common/swr_assert.h" diff --git a/src/gallium/drivers/swr/rasterizer/core/knobs.h b/src/gallium/drivers/swr/rasterizer/core/knobs.h index d7feb86273d..55a22a67f4c 100644 --- a/src/gallium/drivers/swr/rasterizer/core/knobs.h +++ b/src/gallium/drivers/swr/rasterizer/core/knobs.h @@ -45,14 +45,17 @@ #define KNOB_ARCH_ISA AVX #define KNOB_ARCH_STR "AVX" #define KNOB_SIMD_WIDTH 8 +#define KNOB_SIMD_BYTES 32 #elif (KNOB_ARCH == KNOB_ARCH_AVX2) #define KNOB_ARCH_ISA AVX2 #define KNOB_ARCH_STR "AVX2" #define KNOB_SIMD_WIDTH 8 +#define KNOB_SIMD_BYTES 32 #elif (KNOB_ARCH == KNOB_ARCH_AVX512) #define KNOB_ARCH_ISA AVX512F #define KNOB_ARCH_STR "AVX512" #define KNOB_SIMD_WIDTH 16 +#define KNOB_SIMD_BYTES 64 #error "AVX512 not yet supported" #else #error "Unknown architecture" |