aboutsummaryrefslogtreecommitdiff
path: root/pixman
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2012-09-17 16:16:11 +0200
committermarha <marha@users.sourceforge.net>2012-09-17 16:16:11 +0200
commitc72f683c50e774b21967f0121245a286539fa555 (patch)
treefa5e86f04a33b8bcebf937d1966052ccf1fefbeb /pixman
parent86fb7e4a298199b30bd16565569a9b3dfe7a1f11 (diff)
parente3c4aa34268f99562e66b43a7d9efcd16ca072e6 (diff)
downloadvcxsrv-c72f683c50e774b21967f0121245a286539fa555.tar.gz
vcxsrv-c72f683c50e774b21967f0121245a286539fa555.tar.bz2
vcxsrv-c72f683c50e774b21967f0121245a286539fa555.zip
Merge remote-tracking branch 'origin/released'
Conflicts: mesalib/src/mesa/main/syncobj.h pixman/pixman/pixman-mmx.c
Diffstat (limited to 'pixman')
-rw-r--r--pixman/Makefile.win3214
-rw-r--r--pixman/Makefile.win32.common4
-rw-r--r--pixman/pixman/Makefile.win322
-rw-r--r--pixman/pixman/pixman-mmx.c5
-rw-r--r--pixman/test/Makefile.win3210
5 files changed, 21 insertions, 14 deletions
diff --git a/pixman/Makefile.win32 b/pixman/Makefile.win32
index 91cd12a52..c3ca3bc59 100644
--- a/pixman/Makefile.win32
+++ b/pixman/Makefile.win32
@@ -3,23 +3,23 @@ default: all
top_srcdir = .
include $(top_srcdir)/Makefile.win32.common
-# Recursive targets
-pixman_r:
+all: pixman test
+
+pixman:
@$(MAKE) -C pixman -f Makefile.win32
-test_r:
+test:
@$(MAKE) -C test -f Makefile.win32
clean_r:
@$(MAKE) -C pixman -f Makefile.win32 clean
@$(MAKE) -C test -f Makefile.win32 clean
-check_r:
+check:
@$(MAKE) -C test -f Makefile.win32 check
-# Base targets
-all: test_r
clean: clean_r
-check: check_r
+
+.PHONY: all pixman test clean check
diff --git a/pixman/Makefile.win32.common b/pixman/Makefile.win32.common
index 56c3593d2..777f94ce2 100644
--- a/pixman/Makefile.win32.common
+++ b/pixman/Makefile.win32.common
@@ -46,9 +46,11 @@ endif
endif
-$(CFG_VAR)/%.obj: %.c $(BUILT_SOURCES)
+$(CFG_VAR)/%.obj: %.c $(libpixman_headers)
@mkdir -p $(CFG_VAR)
@$(CC) -c $(PIXMAN_CFLAGS) -Fo"$@" $<
clean: inform
@$(RM) $(CFG_VAR)/*.{exe,ilk,lib,obj,pdb} $(BUILT_SOURCES) || exit 0
+
+.PHONY: inform clean
diff --git a/pixman/pixman/Makefile.win32 b/pixman/pixman/Makefile.win32
index 381f2cd9d..57ed7a5dc 100644
--- a/pixman/pixman/Makefile.win32
+++ b/pixman/pixman/Makefile.win32
@@ -64,3 +64,5 @@ endif
# pixman linking
$(CFG_VAR)/$(LIBRARY).lib: $(OBJECTS)
@$(AR) $(PIXMAN_ARFLAGS) -OUT:$@ $^
+
+.PHONY: all informMMX informSSE2
diff --git a/pixman/pixman/pixman-mmx.c b/pixman/pixman/pixman-mmx.c
index dfca50954..cde5026a3 100644
--- a/pixman/pixman/pixman-mmx.c
+++ b/pixman/pixman/pixman-mmx.c
@@ -3575,7 +3575,6 @@ do { \
/* fetch 2x2 pixel block into 2 mmx registers */ \
__m64 t = ldq_u ((__m64 *)&src_top [pixman_fixed_to_int (vx)]); \
__m64 b = ldq_u ((__m64 *)&src_bottom [pixman_fixed_to_int (vx)]); \
- vx += unit_x; \
/* vertical interpolation */ \
t_hi = _mm_mullo_pi16 (_mm_unpackhi_pi8 (t, mm_zero), mm_wt); \
t_lo = _mm_mullo_pi16 (_mm_unpacklo_pi8 (t, mm_zero), mm_wt); \
@@ -3583,6 +3582,7 @@ do { \
b_lo = _mm_mullo_pi16 (_mm_unpacklo_pi8 (b, mm_zero), mm_wb); \
hi = _mm_add_pi16 (t_hi, b_hi); \
lo = _mm_add_pi16 (t_lo, b_lo); \
+ vx += unit_x; \
if (BILINEAR_INTERPOLATION_BITS < 8) \
{ \
__m64 p, q; \
@@ -3590,7 +3590,6 @@ do { \
__m64 mm_wh = _mm_add_pi16 (mm_addc7, _mm_xor_si64 (mm_xorc7, \
_mm_srli_pi16 (mm_x, \
16 - BILINEAR_INTERPOLATION_BITS))); \
- mm_x = _mm_add_pi16 (mm_x, mm_ux); \
/* horizontal interpolation */ \
p = _mm_unpacklo_pi16 (lo, hi); \
q = _mm_unpackhi_pi16 (lo, hi); \
@@ -3605,7 +3604,6 @@ do { \
16 - BILINEAR_INTERPOLATION_BITS)); \
__m64 mm_wh_hi = _mm_srli_pi16 (mm_x, \
16 - BILINEAR_INTERPOLATION_BITS); \
- mm_x = _mm_add_pi16 (mm_x, mm_ux); \
/* horizontal interpolation */ \
mm_lo_lo = _mm_mullo_pi16 (lo, mm_wh_lo); \
mm_lo_hi = _mm_mullo_pi16 (hi, mm_wh_hi); \
@@ -3616,6 +3614,7 @@ do { \
hi = _mm_add_pi32 (_mm_unpackhi_pi16 (mm_lo_lo, mm_hi_lo), \
_mm_unpackhi_pi16 (mm_lo_hi, mm_hi_hi)); \
} \
+ mm_x = _mm_add_pi16 (mm_x, mm_ux); \
/* shift and pack the result */ \
hi = _mm_srli_pi32 (hi, BILINEAR_INTERPOLATION_BITS * 2); \
lo = _mm_srli_pi32 (lo, BILINEAR_INTERPOLATION_BITS * 2); \
diff --git a/pixman/test/Makefile.win32 b/pixman/test/Makefile.win32
index c88d0872a..b6254a3cf 100644
--- a/pixman/test/Makefile.win32
+++ b/pixman/test/Makefile.win32
@@ -16,9 +16,9 @@ OBJECTS = $(patsubst %.c, $(CFG_VAR)/%.obj, $(SOURCES))
TESTS = $(patsubst %, $(CFG_VAR)/%.exe, $(TESTPROGRAMS))
BENCHS = $(patsubst %, $(CFG_VAR)/%.exe, $(BENCHMARKS))
-all: inform $(TESTS) $(BENCHS)
+all: pixman inform $(TESTS) $(BENCHS)
-check: inform $(TESTS)
+check: pixman inform $(TESTS)
@failures=0 ; \
total=0 ; \
for test in $(TESTS) ; \
@@ -46,5 +46,9 @@ $(CFG_VAR)/libutils.lib: $(libutils_OBJECTS)
$(CFG_VAR)/%.exe: $(CFG_VAR)/%.obj $(TEST_LDADD)
@$(LD) $(PIXMAN_LDFLAGS) -OUT:$@ $^
-$(top_builddir)/pixman/$(CFG_VAR)/$(LIBRARY).lib:
+$(top_builddir)/pixman/$(CFG_VAR)/$(LIBRARY).lib: pixman
+
+pixman:
@$(MAKE) -C $(top_builddir)/pixman -f Makefile.win32
+
+.PHONY: all check pixman