diff options
author | Roland Scheidegger <[email protected]> | 2014-12-31 17:39:57 +0100 |
---|---|---|
committer | Roland Scheidegger <[email protected]> | 2015-01-05 17:58:38 +0100 |
commit | b59c7ed0ab1ac5b6d9f8d409f1a90401ab7775b6 (patch) | |
tree | afe49946f645196706a00e2e31d039b3b6c5ba68 /src/gallium/auxiliary/util | |
parent | 21a280f87c5c884eea7a2043d6ed10cdbab57a3e (diff) |
gallium/util: fix crash with daz detection on x86
The code used PIPE_ALIGN_VAR for the variable used by fxsave, however this
does not work if the stack isn't aligned. Hence use PIPE_ALIGN_STACK function
decoration to fix the segfault which can happen if stack alignment is only
4 bytes.
This fixes https://bugs.freedesktop.org/show_bug.cgi?id=87658.
Cc: "10.4" <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary/util')
-rw-r--r-- | src/gallium/auxiliary/util/u_cpu_detect.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/util/u_cpu_detect.c b/src/gallium/auxiliary/util/u_cpu_detect.c index 5d9db59d16b..28197f4a9d8 100644 --- a/src/gallium/auxiliary/util/u_cpu_detect.c +++ b/src/gallium/auxiliary/util/u_cpu_detect.c @@ -272,7 +272,7 @@ static INLINE uint64_t xgetbv(void) #if defined(PIPE_ARCH_X86) -static INLINE boolean sse2_has_daz(void) +PIPE_ALIGN_STACK static INLINE boolean sse2_has_daz(void) { struct { uint32_t pad1[7]; |