[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

pixman: Changes to 'debian-experimental'



 .gitignore                       |    2 
 CODING_STYLE                     |   23 
 ChangeLog                        | 1909 +++++++++++++++++++++++++++++++++++++++
 README                           |   10 
 configure.ac                     |  274 ++++-
 debian/changelog                 |   15 
 debian/control                   |    2 
 debian/libpixman-1-0.symbols     |    4 
 debian/rules                     |   14 
 pixman/Makefile.am               |    5 
 pixman/pixman-access.c           |  309 ++++--
 pixman/pixman-arm-neon-asm.S     |  336 ++++++
 pixman/pixman-arm-neon-asm.h     |   59 +
 pixman/pixman-arm-neon.c         |   30 
 pixman/pixman-arm-simd-asm.S     |    2 
 pixman/pixman-arm-simd.c         |   16 
 pixman/pixman-bits-image.c       |  644 +++++++++----
 pixman/pixman-combine.c.template |   45 
 pixman/pixman-combine.h.template |  152 +--
 pixman/pixman-compiler.h         |   39 
 pixman/pixman-conical-gradient.c |   60 -
 pixman/pixman-cpu.c              |   25 
 pixman/pixman-fast-path.c        |  470 +++------
 pixman/pixman-fast-path.h        |  445 +++++++++
 pixman/pixman-general.c          |   65 -
 pixman/pixman-image.c            |  146 ++
 pixman/pixman-linear-gradient.c  |  200 +---
 pixman/pixman-mmx.c              |  110 +-
 pixman/pixman-private.h          |  136 +-
 pixman/pixman-radial-gradient.c  |  464 +++++----
 pixman/pixman-region.c           |   60 -
 pixman/pixman-region16.c         |    4 
 pixman/pixman-region32.c         |    4 
 pixman/pixman-solid-fill.c       |    9 
 pixman/pixman-sse2.c             | 1302 +++++++++++++-------------
 pixman/pixman.c                  |  757 ++++++++-------
 pixman/pixman.h                  |   16 
 test/Makefile.am                 |   35 
 test/affine-test.c               |  261 +++++
 test/alpha-loop.c                |   29 
 test/alphamap.c                  |  257 ++++-
 test/blitters-test-bisect.rb     |   43 
 test/blitters-test.c             |  167 +--
 test/composite-test.c            |    5 
 test/composite.c                 |  260 ++---
 test/fuzzer-find-diff.pl         |   68 +
 test/gradient-crash-test.c       |  117 ++
 test/gtk-utils.c                 |    2 
 test/lowlevel-blt-bench.c        |  712 ++++++++++++++
 test/region-translate-test.c     |   30 
 test/scaling-crash-test.c        |  209 ++++
 test/scaling-test-bisect.rb      |   38 
 test/scaling-test.c              |   95 -
 test/utils.c                     |  279 +++++
 test/utils.h                     |   77 +
 55 files changed, 8042 insertions(+), 2805 deletions(-)

New commits:
commit 2da37f260eb06607cbb60897ee9e5fb1d0418f4e
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 23:14:13 2010 +0200

    Upload to experimental.

diff --git a/debian/changelog b/debian/changelog
index a61ab51..d29de84 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-pixman (0.19.6-1) UNRELEASED; urgency=low
+pixman (0.19.6-1) experimental; urgency=low
 
   * New upstream release.
   * Bump SHLIBS_VERSION from 0.18.0 to 0.19.4 for newly-added functions.
@@ -11,7 +11,7 @@ pixman (0.19.6-1) UNRELEASED; urgency=low
   * Enable the testsuite.
   * Add myself to Uploaders.
 
- -- Cyril Brulebois <kibi@debian.org>  Wed, 27 Oct 2010 22:11:26 +0200
+ -- Cyril Brulebois <kibi@debian.org>  Wed, 27 Oct 2010 23:14:00 +0200
 
 pixman (0.18.4-1) experimental; urgency=low
 

commit 3a4ab94548f5d8d4e6a571282fda85a9aad929a7
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 22:57:19 2010 +0200

    Add myself to Uploaders.

diff --git a/debian/changelog b/debian/changelog
index df60ba9..a61ab51 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -9,6 +9,7 @@ pixman (0.19.6-1) UNRELEASED; urgency=low
     to pick it accidentally, by passing --disable-gtk. (That's only for
     test purposes, but would require pixman-1 itself.)
   * Enable the testsuite.
+  * Add myself to Uploaders.
 
  -- Cyril Brulebois <kibi@debian.org>  Wed, 27 Oct 2010 22:11:26 +0200
 
diff --git a/debian/control b/debian/control
index 5060e7a..f5a882c 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,7 @@ Source: pixman
 Section: devel
 Priority: optional
 Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
-Uploaders: David Nusinow <dnusinow@debian.org>
+Uploaders: David Nusinow <dnusinow@debian.org>, Cyril Brulebois <kibi@debian.org>
 Build-Depends: debhelper (>= 5), automake, autoconf, libtool, pkg-config, quilt
 Standards-Version: 3.8.3
 Vcs-Git: git://git.debian.org/git/pkg-xorg/lib/pixman

commit a74572e2e1c03149ebd386dadd339802e868e4d1
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 22:56:49 2010 +0200

    Enable the testsuite.

diff --git a/debian/changelog b/debian/changelog
index 95e1596..df60ba9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -8,6 +8,7 @@ pixman (0.19.6-1) UNRELEASED; urgency=low
   * As of pixman-0.19.2-5-g5b99710, Gtk+ is auto-detected, make sure not
     to pick it accidentally, by passing --disable-gtk. (That's only for
     test purposes, but would require pixman-1 itself.)
+  * Enable the testsuite.
 
  -- Cyril Brulebois <kibi@debian.org>  Wed, 27 Oct 2010 22:11:26 +0200
 
diff --git a/debian/rules b/debian/rules
index fc14a8b..c938be2 100755
--- a/debian/rules
+++ b/debian/rules
@@ -52,6 +52,7 @@ build: build-stamp
 build-stamp: config-stamp
 	dh_testdir
 	cd build && $(MAKE)
+	cd build && $(MAKE) check
 
 	touch $@
 

commit 990c9e2447e962c455e2f7b14a53b184b71cb341
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 22:50:42 2010 +0200

    Pass --disable-gtk to ./configure
    
    As of pixman-0.19.2-5-g5b99710, Gtk+ is auto-detected, make sure not to
    pick it accidentally, by passing --disable-gtk. (That's only for test
    purposes, but would require pixman-1 itself.)

diff --git a/debian/changelog b/debian/changelog
index 791e95e..95e1596 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,6 +5,9 @@ pixman (0.19.6-1) UNRELEASED; urgency=low
   * Update symbols file with newly-added functions.
   * Add -c4 to the dh_makeshlibs call, to ensure the build breaks if
     unexpected symbol-related changes happened.
+  * As of pixman-0.19.2-5-g5b99710, Gtk+ is auto-detected, make sure not
+    to pick it accidentally, by passing --disable-gtk. (That's only for
+    test purposes, but would require pixman-1 itself.)
 
  -- Cyril Brulebois <kibi@debian.org>  Wed, 27 Oct 2010 22:11:26 +0200
 
diff --git a/debian/rules b/debian/rules
index 87411df..fc14a8b 100755
--- a/debian/rules
+++ b/debian/rules
@@ -5,6 +5,9 @@ include /usr/share/quilt/quilt.make
 PACKAGE = libpixman-1-0
 SHLIBS_VERSION = 0.19.4
 
+# Disable Gtk+ autodetection:
+confflags = --disable-gtk
+
 CFLAGS = -Wall -g
 ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
 	CFLAGS += -O0

commit 6cba95bcd3cdd82b60fcf03c36a4c3e3ff2f93ba
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 22:37:19 2010 +0200

    Bump SHLIBS_VERSION from 0.18.0 to 0.19.4 for newly-added functions.

diff --git a/debian/changelog b/debian/changelog
index 329bbc3..791e95e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
 pixman (0.19.6-1) UNRELEASED; urgency=low
 
   * New upstream release.
+  * Bump SHLIBS_VERSION from 0.18.0 to 0.19.4 for newly-added functions.
   * Update symbols file with newly-added functions.
   * Add -c4 to the dh_makeshlibs call, to ensure the build breaks if
     unexpected symbol-related changes happened.
diff --git a/debian/rules b/debian/rules
index 4711ec2..87411df 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,7 +3,7 @@
 include /usr/share/quilt/quilt.make
 
 PACKAGE = libpixman-1-0
-SHLIBS_VERSION = 0.18.0
+SHLIBS_VERSION = 0.19.4
 
 CFLAGS = -Wall -g
 ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))

commit 4504e5e3e28c914b1b47d507fa5377b5e0e6594b
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 22:35:22 2010 +0200

    Kill extra tabs.

diff --git a/debian/rules b/debian/rules
index 6c0200b..4711ec2 100755
--- a/debian/rules
+++ b/debian/rules
@@ -49,14 +49,14 @@ build: build-stamp
 build-stamp: config-stamp
 	dh_testdir
 	cd build && $(MAKE)
-	
+
 	touch $@
 
 clean: unpatch
 	dh_testdir
 	dh_testroot
 	rm -f autogen-stamp config-stamp build-stamp install-stamp
-	
+
 	rm -f config.cache config.log config.status
 	rm -f */config.cache */config.log */config.status
 	rm -f conftest* */conftest*
@@ -65,7 +65,7 @@ clean: unpatch
 	find -name Makefile.in -delete
 	rm -f compile config.guess config.sub configure depcomp install-sh
 	rm -f ltmain.sh missing INSTALL aclocal.m4 config.h.in
-	
+
 	dh_clean
 
 install: install-stamp

commit ebabb2f2ce14c6a953c8a9e8ec79c2cd5b0026c3
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 22:34:42 2010 +0200

    Add -c4 to the dh_makeshlibs call, to ensure the build breaks if unexpected symbol-related changes happened.

diff --git a/debian/changelog b/debian/changelog
index e2732ba..329bbc3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,8 @@ pixman (0.19.6-1) UNRELEASED; urgency=low
 
   * New upstream release.
   * Update symbols file with newly-added functions.
+  * Add -c4 to the dh_makeshlibs call, to ensure the build breaks if
+    unexpected symbol-related changes happened.
 
  -- Cyril Brulebois <kibi@debian.org>  Wed, 27 Oct 2010 22:11:26 +0200
 
diff --git a/debian/rules b/debian/rules
index 8fa2158..6c0200b 100755
--- a/debian/rules
+++ b/debian/rules
@@ -90,7 +90,7 @@ binary-arch: install
 	dh_strip --dbg-package=$(PACKAGE)-dbg
 	dh_compress
 	dh_fixperms
-	dh_makeshlibs -p$(PACKAGE) --add-udeb $(PACKAGE)-udeb -V"$(PACKAGE) (>= $(SHLIBS_VERSION))"
+	dh_makeshlibs -p$(PACKAGE) --add-udeb $(PACKAGE)-udeb -V"$(PACKAGE) (>= $(SHLIBS_VERSION))" -- -c4
 	dh_installdeb
 	dh_shlibdeps
 	dh_gencontrol

commit 7cad3fd3f3f5a49284b24d939df1107942cb5a03
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 22:30:57 2010 +0200

    Update symbols file with newly-added functions.

diff --git a/debian/changelog b/debian/changelog
index f188cc6..e2732ba 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
 pixman (0.19.6-1) UNRELEASED; urgency=low
 
   * New upstream release.
+  * Update symbols file with newly-added functions.
 
  -- Cyril Brulebois <kibi@debian.org>  Wed, 27 Oct 2010 22:11:26 +0200
 
diff --git a/debian/libpixman-1-0.symbols b/debian/libpixman-1-0.symbols
index fb93e59..a7ae4b4 100644
--- a/debian/libpixman-1-0.symbols
+++ b/debian/libpixman-1-0.symbols
@@ -29,9 +29,11 @@ libpixman-1.so.0 libpixman-1-0 #MINVER#
  pixman_image_create_solid_fill@Base 0
  pixman_image_fill_boxes@Base 0.18.0
  pixman_image_fill_rectangles@Base 0.15.14
+ pixman_image_get_component_alpha@Base 0.19.6
  pixman_image_get_data@Base 0
  pixman_image_get_depth@Base 0
  pixman_image_get_destroy_data@Base 0.18.0
+ pixman_image_get_format@Base 0.19.6
  pixman_image_get_height@Base 0
  pixman_image_get_stride@Base 0
  pixman_image_get_width@Base 0
@@ -64,6 +66,7 @@ libpixman-1.so.0 libpixman-1-0 #MINVER#
  pixman_region32_init_rects@Base 0.11.2
  pixman_region32_init_with_extents@Base 0.11.2
  pixman_region32_intersect@Base 0.11.2
+ pixman_region32_intersect_rect@Base 0.19.6
  pixman_region32_inverse@Base 0.11.2
  pixman_region32_n_rects@Base 0.11.2
  pixman_region32_not_empty@Base 0.11.2
@@ -86,6 +89,7 @@ libpixman-1.so.0 libpixman-1-0 #MINVER#
  pixman_region_init_rects@Base 0
  pixman_region_init_with_extents@Base 0
  pixman_region_intersect@Base 0
+ pixman_region_intersect_rect@Base 0.19.6
  pixman_region_inverse@Base 0
  pixman_region_n_rects@Base 0
  pixman_region_not_empty@Base 0

commit 865f80fd773eda54448db368b4077ee1db6f6bee
Author: Cyril Brulebois <kibi@debian.org>
Date:   Wed Oct 27 22:13:24 2010 +0200

    Update changelogs.

diff --git a/ChangeLog b/ChangeLog
index 367554f..b80f15d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,1064 @@
+commit 3193481ee64ab0cc9feb64c96d92bf034d44e1f4
+Merge: d105134 97336fa
+Author: Cyril Brulebois <kibi@debian.org>
+Date:   Wed Oct 27 20:55:24 2010 +0200
+
+    Merge remote branch 'origin/upstream-experimental' into upstream-experimental
+    
+    Use -s ours to move to upstream's pixman-0.19.6 tag.
+
+commit d1051340155a099a523e71377b1d889eec8b972e
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Wed Oct 20 16:25:55 2010 -0400
+
+    Pre-release version bump to 0.19.6
+
+commit a966cd04c16ad0c34b0f17e9021a4f3532575ca4
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Tue Oct 12 15:38:20 2010 +0200
+
+    Fix an overflow in the new radial gradient code
+    
+    huge-radial in the cairo test suite pointed out an undocumented
+    overflow in the radial gradient code.
+    By casting to pixman_fixed_48_16_t before doing the operations,
+    the overflow can be avoided.
+
+commit 70658f0a6bd451a21fbb43df7865a7dac95abe24
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Wed Oct 20 16:09:44 2010 -0400
+
+    Remove the class field from source_image_t
+    
+    The linear gradient was the only image type that relied on the class
+    being stored in the image struct itself. With the previous changes, it
+    doesn't need that anymore, so we can delete the field.
+
+commit 741c30d9d9cf445fa2e3a2c43d37c221d49831b4
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Wed Oct 20 21:24:32 2010 +0200
+
+    Remove unused enum value
+    
+    The new linear gradient code doesn't use SOURCE_IMAGE_CLASS_VERTICAL
+    anymore and it was not used anywhere else.
+
+commit 9b72fd1b857494ea928795c89a4f827e56fe26d3
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Mon Oct 18 22:21:52 2010 +0200
+
+    Make classification consistent with rasterization
+    
+    Use the same computations to classify the gradient and to
+    rasterize it.
+    This improves the correctness of the classification by
+    avoiding integer division.
+
+commit 1d4f2d71facd5f2bbce74fbe3407ccea6cf4bea1
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Wed Aug 11 09:58:05 2010 +0200
+
+    Improve precision of linear gradients
+    
+    Integer division (without keeping the remainder) can discard a lot
+    of information. Doing the division maths in floating point (and
+    paying attention to error propagation) allows to greatly improve
+    the precision of linear gradients.
+
+commit f6ab20ca6604739b82311fc078d6ce850f43adc0
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Tue Oct 12 09:52:53 2010 +0200
+
+    Add comments about errors
+    
+    Explain how errors are introduced in the computation performed for
+    radial gradients.
+
+commit 1ca715ed1e6914e9bd9f050065e827d7a9e2efc9
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Sun Aug 15 09:07:33 2010 +0200
+
+    Draw radial gradients with PDF semantics
+    
+    Change radial gradient computations and definition to reflect the
+    radial gradients in PDF specifications (see section 8.7.4.5.4,
+    Type 3 (Radial) Shadings of the PDF Reference Manual).
+    
+    Instead of having a valid interpolation parameter value for every
+    point of the plane, define it only for points withing the area
+    covered by the family of circles generated by interpolating or
+    extrapolating the start and end circles.
+    
+    Points outside this area are now transparent black (rgba 0 0 0 0).
+    Points within this area have the color assiciated with the maximum
+    value of the interpolation parameter in that point (if multiple
+    solutions exist within the range specified by the extend mode).
+
+commit e46be417cebac984a858da05e61d924889695c9e
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Fri Oct 8 07:44:20 2010 -0400
+
+    Plug leak in the alphamap test.
+    
+    The images are being created with non-NULL data, so we have to free it
+    outselves. This is important because the Cygwin tinderbox is running
+    out of memory and produces this:
+    
+        mmap failed on 20000 1507328
+        mmap failed on 40000 1507328
+        mmap failed on 20000 1507328
+        mmap failed on 40000 1507328
+        mmap failed on 40000 1507328
+        mmap failed on 40000 1507328
+    
+    http://tinderbox.x.org/builds/2010-10-05-0014/logs/pixman/#check
+
+commit 6ed7164de5f74b752d85834b53e89810f1d0a560
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Wed Oct 6 02:40:39 2010 -0400
+
+    Add no-op combiners for DST and the CA versions of the HSL operators.
+    
+    We already exit early for DST, but for the HSL operators with
+    component alpha, we crash at the moment. Fix that by adding a dummy
+    combine_dst() function.
+
+commit 233b27257b63ecd502c6392e5ef3a7f736f14365
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Oct 5 11:05:25 2010 -0400
+
+    test: Add some more colors to the color table in composite.c
+    
+    Specifically, add transparent black and superluminescent white with
+    alpha = 0.
+
+commit 3f7da59352b604bd6974230d0b149e8e7da77b5c
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Oct 5 09:49:45 2010 -0400
+
+    test: Parallize composite.c with OpenMP
+    
+    Each test uses the test number as the random number seed; if it
+    didn't, all the threads would run the same tests since they would all
+    start from the same seed.
+
+commit a10ccc9f303ca6b4577afe68cc6b2d8840de5a27
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun Mar 7 11:26:16 2010 -0500
+
+    test: Change composite so that it tests randomly generated images
+    
+    Previously this test would try to exhaustively test all combinations
+    of formats and operators, which meant that it would take hours to run.
+    Instead, generate images randomly and test compositing those.
+    
+    Cc: chris@chris-wilson.co.uk
+
+commit 55e4065cbbc5ffe2ce1986b51ef63e8a0b50fccb
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun Mar 7 11:24:30 2010 -0500
+
+    test: Fix eval_diff() so that it provides useful error values.
+    
+    Previously, this function would evaluate the error under the
+    assumption that the format was 565 or wider. This patch changes it to
+    take the actual format into account.
+    
+    With that fixed, we can turn on testing for the rest of the formats.
+    
+    Cc: chris@chris-wilson.co.uk
+
+commit fe411cf2ac4d5b26a319b906dee87e0cc69d2ad6
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun Mar 7 10:31:04 2010 -0500
+
+    test: Fix bug in color_correct() in composite.c
+    
+    This function was using the number of bits in a channel as if it were
+    a mask, which lead to many spurious errors. With that fixed, we can
+    turn on testing for all formats where all channels have 5 or more
+    bits.
+    
+    Cc: chris@chris-wilson.co.uk
+
+commit 4e89a5b7f3b039fcc86dff7fb8bec79884c913e8
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Oct 5 11:08:42 2010 -0400
+
+    Remove broken optimizations in combine_disjoint_over_u()
+    
+    The first broken optimization is that it checks "a != 0x00" where it
+    should check "s != 0x00". The other is that it skips the computation
+    when alpha is 0xff. That is wrong because in the formula:
+    
+         min (1, (1 - Aa)/Ab)
+    
+    the render specification states that if Ab is 0, the quotient is
+    defined to positive infinity. That is the case even if (1 - Aa) is 0.
+
+commit 8d76c1b3391e1165aaf9e0f331749aee1394f62c
+Author: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date:   Mon Oct 4 04:49:08 2010 +0300
+
+    ARM: restore fallback to ARMv6 implementation from NEON in the delegate chain
+    
+    After fast path cache introduction, the overhead of having this fallback is
+    insignificant. On the other hand, some of the ARM assembly optimizations (for
+    example nearest neighbor scaling) do not need NEON.
+
+commit c748650d700c2f18f1587f06ada3b58d6ddc18d3
+Author: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date:   Wed Sep 8 09:30:23 2010 +0300
+
+    Use more unrolling for scaled src_0565_0565 with nearest filter
+    
+    Benchmark from Intel Core i7 860:
+    
+        == before ==
+        op=1, src_fmt=10020565, dst_fmt=10020565, speed=1335.29 MPix/s
+    
+        == after ==
+        op=1, src_fmt=10020565, dst_fmt=10020565, speed=1550.96 MPix/s
+    
+        == performance of nonscaled src_0565_0565 operation as a reference ==
+        op=1, src_fmt=10020565, dst_fmt=10020565, speed=2401.31 MPix/s
+    
+    Benchmark from ARM Cortex-A8:
+    
+        == before ==
+        op=1, src_fmt=10020565, dst_fmt=10020565, speed=81.79 MPix/s
+    
+        == after ==
+        op=1, src_fmt=10020565, dst_fmt=10020565, speed=89.55 MPix/s
+    
+        == performance of nonscaled src_0565_0565 operation as a reference ==
+        op=1, src_fmt=10020565, dst_fmt=10020565, speed=197.44 MPix/s
+
+commit a520c15e1134d9e801bc2ab461a3c5ade60544f2
+Author: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date:   Thu Sep 23 23:41:50 2010 +0300
+
+    ARM: added 'neon_composite_out_reverse_8_0565' fast path
+    
+    == before ==
+    
+        outrev_8_0565 =  L1:  22.91  L2:  22.40  M: 18.75 ( 10.47%)
+                         HT: 12.62   VT: 12.22   R: 11.32  RT:  5.30 (  58Kops/s)
+    
+    == after ==
+    
+        outrev_8_0565 =  L1: 176.27  L2: 151.70  M:108.79 ( 60.81%)
+                         HT: 50.43   VT: 37.16   R: 32.26  RT:  9.62 (  97Kops/s)
+
+commit d8820360f79d07e03c91ecd201880bc6b1706f19
+Author: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date:   Thu Sep 23 22:28:55 2010 +0300
+
+    ARM: added 'neon_composite_add_0565_8_0565' fast path
+    
+    == before ==
+    
+        add_0565_8_0565 =  L1:  14.05  L2:  14.03  M: 11.57 ( 12.94%)
+                           HT:  8.31   VT:  8.10   R:  7.47  RT:  3.64 (  42Kops/s)
+    
+    == after ==
+    
+        add_0565_8_0565 =  L1: 123.36  L2:  94.70  M: 74.36 ( 83.15%)
+                           HT: 31.17   VT:  23.97  R: 21.06  RT:  6.42 (  70Kops/s)
+
+commit 2f6c7b4f9d36261d2efe494a925faf063376ba30
+Author: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date:   Fri May 21 16:31:03 2010 +0300
+
+    ARM: NEON: added forgotten cache preload for over_n_8888/over_n_0565
+    
+    Prefetch provides up to 40-50% better performance when working
+    with large images and/or when having lots of L2 cache misses
+    on ARM Cortex-A8 @ 720MHz:
+    
+    == before ==
+    
+        over_n_8888 =  L1: 225.83  L2: 181.02  M: 55.57 ( 41.41%)
+                       HT: 38.96   VT: 36.92   R: 32.84  RT: 14.15 ( 123Kops/s)
+    
+        over_n_0565 =  L1: 153.91  L2: 149.69  M: 83.17 ( 30.95%)
+                       HT: 50.41   VT: 49.15   R: 40.56  RT: 15.45 ( 131Kops/s)
+    
+    == after ==
+    
+        over_n_8888 =  L1: 222.39  L2: 170.95  M: 76.86 ( 57.27%)
+                       HT: 58.80   VT: 53.03   R: 45.51  RT: 14.13 ( 124Kops/s)
+    
+        over_n_0565 =  L1: 151.87  L2: 149.54  M:125.63 ( 46.80%)
+                       HT: 67.85   VT: 57.54   R: 50.21  RT: 15.32 ( 130Kops/s)
+
+commit b924bb1f8191cc7c386d8211d9822aeeaadcab44
+Author: Mika Yrjola <mika.yrjola@movial.com>
+Date:   Fri Oct 1 16:17:50 2010 +0300
+
+    Fix "syntax error: empty declaration" warnings.
+    
+    These minor changes should fix a large number of
+    macro declaration - related "syntax error:  empty declaration" warnings
+    which are seen while compiling the code with the Solaris Studio
+    compiler.
+
+commit 73c1fefa1b99efa36b74599f455df9426209378e
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 28 00:51:07 2010 -0400
+
+    Delete simple repeat code
+    
+    This was supposedly an optimization, but it has pathological cases
+    where it definitely isn't. For example a 1 x n image will cause it to
+    have terrible memory access patterns and to generate a ton of modulus
+    operations.
+    
+    Since no one has ever measured whether it actually is an improvement,
+    and since it is doing the repeating at the wrong the stage in the
+    pipeline, and since with the previous commit it can't be triggered
+    anymore because we now require SAMPLES_COVER_CLIP for regular fast
+    paths, just delete it.
+
+commit a4d1c9d3831751008db61a48d6a6cb12ed33f314
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 28 00:42:25 2010 -0400
+
+    Fix bug in FAST_PATH_STD_FAST_PATH
+    
+    The standard fast paths deal with two kinds of images: solids and
+    bits. These two image types require different flags, but
+    PIXMAN_STD_FAST_PATH uses the same ones for both.
+    
+    This patch makes it so that solid images just get the standard flags,
+    while bits images must be untransformed contain the destination clip
+    within the sample grid.
+    
+    This means that the old FAST_PATH_COVERS_CLIP flag is now not used
+    anymore, so it can be deleted.
+
+commit 10e13135c3538f0909f27eaacc17e9e13f199a7c
+Author: Dmitri Vorobiev <dmitri.vorobiev@movial.com>
+Date:   Tue Sep 28 14:42:02 2010 +0300
+
+    Some clean-ups in fence_malloc() and fence_free()
+    
+    This patch removes an unnecessary typecast of MAP_FAILED,
+    replaces an erroneous free() by the correct munmap() in the
+    error path for a failing mprotect(), and, finally, removes
+    redundant calls to mprotect() that aren't necessary, because
+    munmap() doesn't call for any specific memory protection.
+
+commit ba693d2e88b6f4c871d804fb62d7435915c85dfc
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 28 02:52:02 2010 -0400
+
+    Fix search-and-replace issue in lowlevel-blt-bench.c
+
+commit 77d3e5f6ff719f53398b5675e5219d0e3b9746c1
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Fri Sep 17 09:21:09 2010 -0400
+
+    Rename all the fast paths with _8000 in their names to _8
+    
+    This inconsistent naming somehow survived the refactoring from a while
+    back.
+
+commit ba69989374fe9cbe5151c5aac7b824da0806f94a
+Author: Liu Xinyun <xinyun.liu@intel.com>
+Date:   Sat Sep 25 14:56:38 2010 +0800
+
+    Remove cache prefetch code.
+    
+    The performance is decreased with cache prefetch, especially for
+    ATOM. So remove these code. Following is the experiment.
+    
+    old: 0.19.5-with-cache-prefetch
+    new: 0.19.5-without-cache-prefetch
+    
+    CPU: Intel Atom N270@1.6GHz
+    OS: MeeGo (32 bits)
+    Speedups
+    ========
+    image-rgba                    poppler-0    17125.68 (17279.58 0.92%) -> 14765.36 (15926.49 3.54%):  1.16x speedup
+    image-rgba                  ocitysmap-0    9008.25 (9040.41 7.50%) -> 8277.94 (8343.09 5.44%):  1.09x speedup
+    image-rgba          xfce4-terminal-a1-0    18020.76 (18230.68 0.97%) -> 16703.77 (16712.42 1.22%):  1.08x speedup
+    image-rgba         gnome-terminal-vim-0    25081.38 (25133.38 0.24%) -> 23407.47 (23652.98 0.54%):  1.07x speedup
+    image-rgba          firefox-talos-gfx-0    57916.97 (57973.20 0.11%) -> 54556.64 (54624.55 0.39%):  1.06x speedup
+    image-rgba       firefox-planet-gnome-0    102377.47 (103496.63 0.70%) -> 96816.65 (97075.54 0.15%):  1.06x speedup
+    image-rgba         swfdec-giant-steps-0    12376.24 (12616.84 1.02%) -> 11705.30 (11825.20 1.06%):  1.06x speedup
+    
+    CPU: Intel Core(TM)2 Duo CPU T9600@2.80GHz
+    OS: Ubuntu 10.04 (64bits)
+    Speedups
+    ========
+    image-rgba                  ocitysmap-0    2671.46 (2691.82 8.55%) -> 2296.20 (2307.26 5.77%):  1.16x speedup
+    image-rgba         swfdec-giant-steps-0    1614.55 (1615.18 1.68%) -> 1532.84 (1538.52 0.72%):  1.05x speedup
+    
+    Signed-off-by: Liu Xinyun <xinyun.liu@intel.com>
+    Signed-off-by: Chen Miaobo <miaobo.chen@intel.com>
+
+commit 56777f3f675869806cd30bcd21a5b39d788507cb
+Author: Dmitri Vorobiev <dmitri.vorobiev@movial.com>
+Date:   Wed Sep 22 12:34:57 2010 +0300
+
+    Use <sys/mman.h> macros only when they are available
+    
+    Not all systems are regular Unices, so let's be careful with the
+    mmap()-related stuff, which might be unavailable. This patch makes
+    sure that mmap() and friends is used only when the <sys/mman.h>
+    header is found.
+
+commit 39524a4687391c68f4177e8671f4b2bd39e05850
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 21 14:20:43 2010 -0400
+
+    Revert "add enable-cache-prefetch option"
+    
+    Revert this accidentally committed patch.
+    
+    This reverts commit 19ea0e16b958e5abe491365c203293ab372f3586.
+
+commit e97da2104967f4c99aed40e89f3e0141ceed7040
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 21 14:12:00 2010 -0400
+
+    If MAP_ANONYMOUS is not defined, define it to MAP_ANON.
+    
+    This hopefully fixes the build failure on OS X.
+
+commit 19ea0e16b958e5abe491365c203293ab372f3586
+Author: Liu Xinyun <xinyun.liu@intel.com>
+Date:   Wed Sep 22 00:15:10 2010 +0800
+
+    add enable-cache-prefetch option
+    
+    OK. here is the work to clear all cache prefetch. Please review it. 3x
+    
+    On Tue, Sep 21, 2010 at 11:36:30PM +0800, Soeren Sandmann wrote:
+    > Liu Xinyun <xinyun.liu@intel.com> writes:
+    >
+    > >    This patch is to add a new configuration option: enable-cache-prefetch,
+    > > which is default yes.
+    > >
+    > >    Here is a link which talks on cache issue.
+    > >    http://lists.freedesktop.org/archives/pixman/2010-June/000218.html
+    > >
+    > >    When disable it on Atom CPU(configured with --enable-cache-prefetch=no),
+    > > it will have a little performance gain. Here is the patch.
+    >
+    > I think the cache prefetch code should just be deleted outright. No
+    > benchmarks that I'm aware of show it to be an improvement.
+    >
+    >
+    > Thanks,
+    > Soren
+    
+    >From bca2192ef524bcae4eea84d0ffed9e8c4855675f Mon Sep 17 00:00:00 2001
+    From: Liu Xinyun <xinyun.liu@intel.com>
+    Date: Wed, 22 Sep 2010 00:11:56 +0800
+    Subject: [PATCH] remove cache prefetch
+
+commit edd173396604b052fd76971d0efa0c8db40cf1f3
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 21 10:18:44 2010 -0400
+
+    Post-release version bump to 0.19.5
+
+commit e5b3a6e7105af590d72e2ae986f9985f71cc88f5
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 21 10:11:34 2010 -0400
+
+    Pre-release version bump to 0.19.4
+
+commit 0742ba41646853a5edf90c2f3102f49b248321ee
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 21 10:05:52 2010 -0400
+
+    compute_composite_region32: Zero extents before returning FALSE.
+    
+    If the extents of the composite region are broken such that x2 <= x1
+    or y2 <= y1, then we need to zero the extents before returning so that
+    the region won't be completely broken when calling
+    pixman_region32_fini().
+
+commit 7cd4f2fa201c4dc846153c022423e3dced2cfb13
+Author: Jonathan Morton <jonathan.morton@movial.com>
+Date:   Fri Sep 17 17:52:23 2010 +0300
+
+    Add a lowlevel blitter benchmark
+    
+    This test is a modified version of Siarhei's compositor throughput
+    benchmark.  It's expanded with explicit reporting of memory bandwidth
+    consumption for the M-test, and with an additional 8x8-random test
+    intended to determine peak ops/sec capability.  There are also quite a
+    lot more operations tested for.
+
+commit eab3a77877b0e850c46f95dacffb31994e6a7e41
+Author: Dmitri Vorobiev <dmitri.vorobiev@movial.com>
+Date:   Fri Sep 17 17:52:22 2010 +0300
+
+    Add noinline macro
+    
+    This patch adds a noinline macro, which expands to compiler-dependent
+    keywords that tell the compiler to never inline a function.
+
+commit cab3261c0da6e833d803a7f3ccab600adca7abe1
+Author: Dmitri Vorobiev <dmitri.vorobiev@movial.com>
+Date:   Fri Sep 17 17:52:21 2010 +0300
+
+    Add gettime() routine to test utils
+    
+    Impending benchmark code will need a function to get current time
+    in seconds, and this patch introduces such routine. We try to use
+    the POSIX gettimeofday() function when available, and fall back to
+    clock() when not.
+
+commit fd3c87d460a6d1803880d17af416cce344a086c4
+Author: Dmitri Vorobiev <dmitri.vorobiev@movial.com>
+Date:   Fri Sep 17 17:52:20 2010 +0300
+
+    Move aligned_malloc() to utils
+    
+    The aligned_malloc() routine will be used in more than one test utility.
+    At least, a low-level blitter benchmark needs it. Therefore, let's make
+    this function a part of common test utilities code.
+
+commit f474783607e51183d31814972d0f055907876079
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Sep 16 10:33:23 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_normal_r5g6b5
+
+commit 91521d30ab9b033a35fb7797e4566d575ad1c1dc
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Sep 16 10:33:10 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_reflect_r5g6b5
+
+commit 372d7b954aee4f3a2ad94ed8484a2b4084db0c7c
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Sep 16 10:33:00 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_none_r5g6b5
+
+commit a826ae0e3a0279557e892856ef1333971b105d01
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Sep 16 10:32:44 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_pad_r5g6b5
+
+commit c5238bd1809433af5b0efc3add23c1ccb4da884c
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Sep 16 10:32:27 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_normal_a8
+
+commit d12daefcdb8845e539309df46b08916829a86d9c
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Sep 16 10:32:12 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_reflect_a8
+
+commit 9388be32932898ed424c8916a57a6201f995416b
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Sep 16 10:31:57 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_none_a8
+
+commit 8e4d4e8d110c379cb85f53752660c6b2fab33d5e
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Sep 16 10:31:45 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_pad_a8
+
+commit ce1f6c50b4ddf8f7c48a3b272c19d281beca4b34
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Aug 28 02:41:20 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_normal_x8r8g8b8
+
+commit 83f2ee3e958a02fc85a2dc6eddc048b63d74cd5c
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Aug 28 02:41:08 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_reflect_x8r8g8b8
+
+commit be37ae331c6e5e9539b0c1eac6e196366532df29
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Aug 28 02:40:56 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_none_x8r8g8b8
+
+commit 5f8a9bebc04deb55de79e7443578779a93b8cfa6
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Aug 28 02:40:46 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_pad_x8r8g8b8
+
+commit c59584cb862ef8774a2ef1eabb87fef18506d10f
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Aug 28 02:40:16 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_normal_a8r8g8b8
+
+commit 2292cff304fd5aad6dbcc86342a57ea523136de6
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Aug 28 02:40:03 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_reflect_a8r8g8b8
+
+commit 8b29162693adc30dbb5c0f60098d2853c3942c36
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Aug 28 02:39:51 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_none_a8r8g8b8
+
+commit e8555874e122f6e113f85e37059932457ee509cb
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Aug 28 02:39:37 2010 -0400
+
+    Enable bits_image_fetch_bilinear_affine_pad_a8r8g8b8
+
+commit f9778c15e9c01c02e0002edfc4d4a1d517d14d87
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun May 23 04:44:33 2010 -0400
+
+    Use a macro to generate some {a,x}8r8g8b8, a8, and r5g6b5 bilinear fetchers.
+    
+    There are versions for all combinations of x8r8g8b8/a8r8g8b8 and
+    pad/repeat/none/normal repeat modes. The bulk of each scaler is an
+    inline function that takes a format and a repeat mode as parameters.
+    
+    The new scalers are all commented out, but the next commits will
+    enable them one at a time to facilitate bisecting.
+
+commit 6d1e10a8b5c456ee501a309f5cf2f801efcf63b0
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Wed Jul 14 16:27:27 2010 -0400
+
+    test: Add affine-test
+    
+    This test tests compositing with various affine transformations. It is
+    almost identical to scaling-test, except that it also applies a random
+    rotation in addition to the random scaling and translation.
+
+commit 4fa33537d7093ac759b7ded1718a628dacd2aff4
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun Sep 12 06:07:41 2010 -0400
+
+    analyze_extents: Fast path for non-transformed BITS images


Reply to: