pixman: Branch '0.32' - 4 commits
Matt Turner
mattst88 at kemper.freedesktop.org
Sun Nov 17 17:49:45 PST 2013
configure.ac | 2 +-
pixman/pixman-x86.c | 2 +-
test/utils.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
New commits:
commit dae5a758e25157b7cb5c79b88ffc819343901dd7
Author: Matt Turner <mattst88 at gmail.com>
Date: Sun Nov 17 17:48:54 2013 -0800
Post-release version bump to 0.32.5
diff --git a/configure.ac b/configure.ac
index e682dd2..5a059f0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -54,7 +54,7 @@ AC_PREREQ([2.57])
m4_define([pixman_major], 0)
m4_define([pixman_minor], 32)
-m4_define([pixman_micro], 4)
+m4_define([pixman_micro], 5)
m4_define([pixman_version],[pixman_major.pixman_minor.pixman_micro])
commit 4b3a66b05ed69507b297ed62574fc97eb9472e1e
Author: Matt Turner <mattst88 at gmail.com>
Date: Sun Nov 17 17:46:52 2013 -0800
Pre-release version bump to 0.32.4
diff --git a/configure.ac b/configure.ac
index 8b1ab58..e682dd2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -54,7 +54,7 @@ AC_PREREQ([2.57])
m4_define([pixman_major], 0)
m4_define([pixman_minor], 32)
-m4_define([pixman_micro], 3)
+m4_define([pixman_micro], 4)
m4_define([pixman_version],[pixman_major.pixman_minor.pixman_micro])
commit 97a655d5cafc07e9185155c885b2d4564986ef85
Author: Søren Sandmann <ssp at redhat.com>
Date: Sat Nov 16 18:57:01 2013 -0500
test/utils.c: Make the stack unaligned only on 32 bit Windows
The call_test_function() contains some assembly that deliberately
causes the stack to be aligned to 32 bits rather than 128 bits on
x86-32. The intention is to catch bugs that surface when pixman is
called from code that only uses a 32 bit alignment.
However, recent versions of GCC apparently make the assumption (either
accidentally or deliberately) that that the incoming stack is aligned
to 128 bits, where older versions only seemed to make this assumption
when compiling with -msse2. This causes the vector code in the PRNG to
now segfault when called from call_test_function() on x86-32.
This patch fixes that by only making the stack unaligned on 32 bit
Windows, where it would definitely be incorrect for GCC to assume that
the incoming stack is aligned to 128 bits.
V2: Put "defined(...)" around __GNUC__
Reviewed-and-Tested-by: Matt Turner <mattst88 at gmail.com>
Bugzilla: https://bugs.gentoo.org/show_bug.cgi?id=491110
(cherry picked from commit f473fd1e7553a4e92a0d72bea360f05d005c9a88)
diff --git a/test/utils.c b/test/utils.c
index 281f6b4..ebe0ccc 100644
--- a/test/utils.c
+++ b/test/utils.c
@@ -648,7 +648,7 @@ call_test_function (uint32_t (*test_function)(int testnum, int verbose),
{
uint32_t retval;
-#if defined (__GNUC__) && (defined (__i386) || defined (__i386__))
+#if defined (__GNUC__) && defined (_WIN32) && (defined (__i386) || defined (__i386__))
__asm__ (
/* Deliberately avoid aligning the stack to 16 bytes */
"pushl %1\n\t"
commit 5a313af74e9afe7524909c019daebfded3bef1fa
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Tue Nov 12 12:59:42 2013 -0800
Fix the SSSE3 CPUID detection.
SSSE3 is detected by bit 9 of ECX, but we were checking bit 9 of EDX
which is APIC leading to SSSE3 routines being called on CPUs without
SSSE3.
Reviewed-by: Matt Turner <mattst88 at gmail.com>
(cherry picked from commit 8487dfbcd056eff066939dc253fcf361b391592a)
diff --git a/pixman/pixman-x86.c b/pixman/pixman-x86.c
index 6527760..05297c4 100644
--- a/pixman/pixman-x86.c
+++ b/pixman/pixman-x86.c
@@ -170,7 +170,7 @@ detect_cpu_features (void)
features |= X86_SSE;
if (d & (1 << 26))
features |= X86_SSE2;
- if (d & (1 << 9))
+ if (c & (1 << 9))
features |= X86_SSSE3;
/* Check for AMD specific features */
More information about the xorg-commit
mailing list