pixman: Branch 'master' - 2 commits
Andrea Canciani
ranma42 at kemper.freedesktop.org
Sun Aug 28 22:39:19 PDT 2011
pixman/pixman-region.c | 4 ++++
test/Makefile.win32 | 5 ++++-
test/lowlevel-blt-bench.c | 6 ++----
3 files changed, 10 insertions(+), 5 deletions(-)
New commits:
commit 4ffa077487cb71ab17d12c37d298ca8a17e5bf35
Author: Andrea Canciani <ranma42 at gmail.com>
Date: Sat Aug 13 16:18:17 2011 +0200
Workaround bug in llvm-gcc
llvm-gcc (shipped in Apple XCode 4.1.1 as the default compiler or in
the 2.9 release of LLVM) performs an invalid optimization which
unifies the empty_region and the bad_region structures because they
have the same content.
A bugreport has been filed against Apple Developers Tool for this
issue. This commit works around this bug by making one of the two
structures volatile, so that it cannot be merged.
Fixes region-contains-test.
diff --git a/pixman/pixman-region.c b/pixman/pixman-region.c
index 9ff5157..47beb52 100644
--- a/pixman/pixman-region.c
+++ b/pixman/pixman-region.c
@@ -102,7 +102,11 @@
static const box_type_t PREFIX (_empty_box_) = { 0, 0, 0, 0 };
static const region_data_type_t PREFIX (_empty_data_) = { 0, 0 };
+#if defined (__llvm__) && !defined (__clang__)
+static const volatile region_data_type_t PREFIX (_broken_data_) = { 0, 0 };
+#else
static const region_data_type_t PREFIX (_broken_data_) = { 0, 0 };
+#endif
static box_type_t *pixman_region_empty_box =
(box_type_t *)&PREFIX (_empty_box_);
commit a1ebff0dcbb52cd9eba2bf953b3ba251df6dd787
Author: Andrea Canciani <ranma42 at gmail.com>
Date: Wed Jun 29 14:14:38 2011 +0200
win32: Build benchmarks
Add the makefile rules needed to compile lowlevel-blt-bench on win32
and fix the compilation errors.
diff --git a/test/Makefile.win32 b/test/Makefile.win32
index c71afe1..a62b6fc 100644
--- a/test/Makefile.win32
+++ b/test/Makefile.win32
@@ -35,6 +35,7 @@ SOURCES = \
scaling-test.c \
affine-test.c \
composite.c \
+ lowlevel-blt-bench.c \
utils.c
TESTS = \
@@ -56,6 +57,8 @@ TESTS = \
$(CFG_VAR)/affine-test.exe \
$(CFG_VAR)/composite.exe
+BENCHMARKS = \
+ $(CFG_VAR)/lowlevel-blt-bench.exe
OBJECTS = $(patsubst %.c, $(CFG_VAR)/%.obj, $(SOURCES))
@@ -66,7 +69,7 @@ $(CFG_VAR)/%.obj: %.c
$(CFG_VAR)/%.exe: $(CFG_VAR)/%.obj
$(LINK) /NOLOGO /OUT:$@ $< $(CFG_VAR)/utils.obj $(TEST_LDADD)
-all: $(OBJECTS) $(TESTS)
+all: $(OBJECTS) $(TESTS) $(BENCHMARKS)
@exit 0
clean:
diff --git a/test/lowlevel-blt-bench.c b/test/lowlevel-blt-bench.c
index b00e487..099e434 100644
--- a/test/lowlevel-blt-bench.c
+++ b/test/lowlevel-blt-bench.c
@@ -26,11 +26,9 @@
#include <stdlib.h>
#include <string.h>
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
+#define PIXMAN_USE_INTERNAL_API
+#include <pixman.h>
-#include "pixman-private.h"
#include "utils.h"
#define SOLID_FLAG 1
More information about the xorg-commit
mailing list