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

pixman: Changes to 'debian-unstable'



Rebased ref, commits from common ancestor:
commit afde156de55a2326ca27dafe806d1b0debe84b16
Author: Cyril Brulebois <kibi@debian.org>
Date:   Tue Nov 1 16:06:39 2011 +0100

    Document what happened: pixman went to sid…

diff --git a/debian/changelog b/debian/changelog
index 7bebde7..ce1fae0 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-pixman (0.23.8-1) experimental; urgency=low
+pixman (0.23.8-1) unstable; urgency=low
 
   * New upstream release.
 

commit 39102f8b3e7f36ad912fc95596dcd0a61ae2bab0
Author: Cyril Brulebois <kibi@debian.org>
Date:   Tue Nov 1 12:29:25 2011 +0100

    Upload to experimental.

diff --git a/debian/changelog b/debian/changelog
index e2f7f36..7bebde7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,8 @@
-pixman (0.23.8-1) UNRELEASED; urgency=low
+pixman (0.23.8-1) experimental; urgency=low
 
   * New upstream release.
 
- -- Cyril Brulebois <kibi@debian.org>  Tue, 01 Nov 2011 12:28:45 +0100
+ -- Cyril Brulebois <kibi@debian.org>  Tue, 01 Nov 2011 12:29:16 +0100
 
 pixman (0.23.6-1) experimental; urgency=low
 

commit bfad5455b6885b09fb8a63a7384f077fc0a45741
Author: Cyril Brulebois <kibi@debian.org>
Date:   Tue Nov 1 12:28:58 2011 +0100

    Bump changelogs.

diff --git a/ChangeLog b/ChangeLog
index 6a10342..fa61d98 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,201 @@
+commit a0f1b565811388b0567c845b9b7063d5b93d325e
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sat Oct 29 05:33:44 2011 -0400
+
+    Pre-release version bump to 0.23.8
+
+commit 498138c293a2abce44ce122114852f4e6c5b87fe
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Oct 25 08:45:34 2011 -0400
+
+    Fix use of uninitialized fields reported by valgrind
+    
+    In pixman-noop.c and pixman-sse2.c, we are accessing
+    image->bits.width/height without first making sure the image is a bits
+    image. The warning is harmless because we never act on this
+    information without checking that the image is a8r8g8b8, but valgrind
+    does warn about it.
+    
+    In pixman-noop.c, just reorder the clauses in the if statement; in
+    pixman-sse2.c require images to have the FAST_PATH_BITS_IMAGE flag
+    set.
+
+commit 6131707e8fc39187d1d358481f7c57c57cfab206
+Merge: 3d4d705 ec7c9c2
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Oct 20 09:13:12 2011 -0400
+
+    Merge branch 'gradients'
+
+commit 3d4d705d2ffa4aeab3dc02a23c2aadbea1374a3f
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Tue Oct 18 21:50:18 2011 +0900
+
+    ARM: NEON: Fix assembly typo error in src_n_8_8888
+    
+    Binutils 2.21 does not complain about missing comma between ARM
+    register and alignement specifier in vld/vst instructions which
+    causes build error on binutils 2.20.
+
+commit 19f118f41f8725f22395d31eac5670cb350b55ec
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Mon Sep 26 18:33:27 2011 +0900
+
+    ARM: NEON: Standard fast path src_n_8_8
+    
+    Performance numbers of before/after on cortex-a8 @ 1GHz
+    
+    - before
+    L1:  28.05  L2:  28.26  M: 26.97 (  4.48%)  HT: 19.79  VT: 19.14  R: 17.61  RT:  9.88 ( 101Kops/s)
+    
+    - after
+    L1:1430.28  L2:1252.10  M:421.93 ( 75.48%)  HT:170.16  VT:138.03  R:145.86  RT: 35.51 ( 255Kops/s)
+
+commit 4db9e2bc13d3ed26416f249e57acec4b41f58b7f
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Mon Sep 26 17:03:54 2011 +0900
+
+    ARM: NEON: Standard fast path src_n_8_8888
+    
+    Performance numbers of before/after on cortex-a8 @ 1GHz
+    
+    - before
+    L1:  32.39  L2:  31.79  M: 30.84 ( 13.77%)  HT: 21.58  VT: 19.75  R: 18.83  RT: 10.46 ( 106Kops/s)
+    
+    - after
+    L1: 516.25  L2: 372.00  M:193.49 ( 85.59%)  HT:136.93  VT:109.10  R:104.48  RT: 34.77 ( 253Kops/s)
+
+commit 26659de6cd2775c83a9a6e6660324d5baacf61f9
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Mon Sep 26 19:04:53 2011 +0900
+
+    ARM: NEON: Instruction scheduling of bilinear over_8888_8_8888
+    
+    Instructions are reordered to eliminate pipeline stalls and get
+    better memory access.
+    
+    Performance of before/after on cortex-a8 @ 1GHz
+    
+    << 2000 x 2000 with scale factor close to 1.x >>
+    before : 40.53 Mpix/s
+    after  : 50.76 Mpix/s
+
+commit 4481920f405e47b3a92811a8cb06afbd37dee01b
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Wed Sep 21 15:52:13 2011 +0900
+
+    ARM: NEON: Instruction scheduling of bilinear over_8888_8888
+    
+    Instructions are reordered to eliminate pipeline stalls and get
+    better memory access.
+    
+    Performance of before/after on cortex-a8 @ 1GHz
+    
+    << 2000 x 2000 with scale factor close to 1.x >>
+    before : 50.43 Mpix/s
+    after  : 61.09 Mpix/s
+
+commit 1cd916f3a5ebeb943f66eecf0b8ce99af0b95d11
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Fri Sep 23 00:03:22 2011 +0900
+
+    ARM: NEON: Replace old bilinear scanline generator with new template
+    
+    Bilinear scanline functions in pixman-arm-neon-asm-bilinear.S can
+    be replaced with new template just by wrapping existing macros.
+
+commit 6682b2b3597c9f431900bfe7b1b42dfbe006bae5
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Tue Sep 20 21:32:35 2011 +0900
+
+    ARM: NEON: Bilinear macro template for instruction scheduling
+    
+    This macro template takes 6 code blocks.
+    
+    1. process_last_pixel
+    2. process_two_pixels
+    3. process_four_pixels
+    4. process_pixblock_head
+    5. process_pixblock_tail
+    6. process_pixblock_tail_head
+    
+    process_last_pixel does not need to update horizontal weight. This
+    is done by the template. two and four code block should update
+    horizontal weight inside of them. head/tail/tail_head blocks
+    consist unrolled core loop. You can apply instruction scheduling
+    to the tail_head blocks.
+    
+    You can also specify size of the pixel block. Supported size is 4
+    and 8. If you want to use mask, give BILINEAR_FLAG_USE_MASK flags
+    to the template, then you can use register MASK. When using d8~d15
+    registers, give BILINEAR_FLAG_USE_ALL_NEON_REGS to make sure
+    registers are properly saved on the stack and later restored.
+
+commit b5e4355fa4973e3edd4abeb11bdc47c42371cc76
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Tue Sep 20 19:46:25 2011 +0900
+
+    ARM: NEON: Some cleanup of bilinear scanline functions
+    
+    Use STRIDE and initial horizontal weight update is done before
+    entering interpolation loop. Cache preload for mask and dst.
+
+commit ec7c9c2b6865b48b8bd14e4509538f8fcbe93463
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Fri Oct 14 09:04:48 2011 -0400
+
+    Simplify gradient_walker_reset()
+    
+    The code that searches for the closest color stop to the given
+    position is duplicated across the various repeat modes. Replace the
+    switch with two if/else constructions, and put the search code between
+    them.
+
+commit 2d0da8ab8d8fef60ed1bbb9d6b75f66577c3f85d
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Fri Oct 14 09:02:14 2011 -0400
+
+    Use sentinels instead of special casing first and last stops
+    
+    When storing the gradient stops internally, allocate two more stops,
+    one before the beginning of the stop list and one after the
+    end. Initialize those stops based on the repeat property of the
+    gradient.
+    
+    This allows gradient_walker_reset() to be simplified because it can
+    now simply pick the two closest stops to the position without special
+    casing the first and last stops.
+
+commit 84d6ca7c891601b019d4862a556ed98b7e6fe525
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Fri Oct 14 07:42:00 2011 -0400
+
+    gradient walker: Correct types and fix formatting
+    
+    The type of pos in gradient_walker_reset() and gradient_walker_pixel()
+    is pixman_fixed_48_16_t and not pixman_fixed_32_32. The types of the
+    positions in the walker struct are pixman_fixed_t and not int32_t, and
+    need_reset is a boolean, not an integer. The spread field should be
+    called repeat and have the type pixman_repeat_t.
+    
+    Also fix some formatting issues, make gradient_walker_reset() static,
+    and delete the pointless PIXMAN_GRADIENT_WALKER_NEED_RESET() macro.
+
+commit ace225b53dee88d134753ac901f26ba3db6781da
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Oct 11 16:12:24 2011 -0400
+
+    Add stable release / development snapshot to draft release notes
+    
+    This will hopefully serve as a reminder to me that I should put this
+    information in the release notes.
+
+commit bb7142d361d56d66ac40debb60a7c4d099764ba8
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Oct 11 06:10:39 2011 -0400
+
+    Post-release version bump to 0.23.7
+
 commit e20ac40bd30484f0f711b52d0c1993ef08760284
 Author: Søren Sandmann Pedersen <ssp@redhat.com>
 Date:   Tue Oct 11 06:00:51 2011 -0400
diff --git a/debian/changelog b/debian/changelog
index af38044..e2f7f36 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+pixman (0.23.8-1) UNRELEASED; urgency=low
+
+  * New upstream release.
+
+ -- Cyril Brulebois <kibi@debian.org>  Tue, 01 Nov 2011 12:28:45 +0100
+
 pixman (0.23.6-1) experimental; urgency=low
 
   [ Rico Tzschichholz ]

commit a0f1b565811388b0567c845b9b7063d5b93d325e
Author: Søren Sandmann Pedersen <ssp@redhat.com>
Date:   Sat Oct 29 05:33:44 2011 -0400

    Pre-release version bump to 0.23.8

diff --git a/configure.ac b/configure.ac
index 6c88c84..0552563 100644
--- a/configure.ac
+++ b/configure.ac
@@ -54,7 +54,7 @@ AC_PREREQ([2.57])
 
 m4_define([pixman_major], 0)
 m4_define([pixman_minor], 23)
-m4_define([pixman_micro], 7)
+m4_define([pixman_micro], 8)
 
 m4_define([pixman_version],[pixman_major.pixman_minor.pixman_micro])
 

commit 498138c293a2abce44ce122114852f4e6c5b87fe
Author: Søren Sandmann Pedersen <ssp@redhat.com>
Date:   Tue Oct 25 08:45:34 2011 -0400

    Fix use of uninitialized fields reported by valgrind
    
    In pixman-noop.c and pixman-sse2.c, we are accessing
    image->bits.width/height without first making sure the image is a bits
    image. The warning is harmless because we never act on this
    information without checking that the image is a8r8g8b8, but valgrind
    does warn about it.
    
    In pixman-noop.c, just reorder the clauses in the if statement; in
    pixman-sse2.c require images to have the FAST_PATH_BITS_IMAGE flag
    set.

diff --git a/pixman/pixman-noop.c b/pixman/pixman-noop.c
index 906a491..f4012d8 100644
--- a/pixman/pixman-noop.c
+++ b/pixman/pixman-noop.c
@@ -76,12 +76,12 @@ noop_src_iter_init (pixman_implementation_t *imp, pixman_iter_t *iter)
     {
 	iter->get_scanline = _pixman_iter_get_scanline_noop;
     }
-    else if ((iter->flags & ITER_NARROW)				&&
+    else if (image->common.extended_format_code == PIXMAN_a8r8g8b8	&&
+	     (iter->flags & ITER_NARROW)				&&
 	     (image->common.flags & FLAGS) == FLAGS			&&
 	     iter->x >= 0 && iter->y >= 0				&&
 	     iter->x + iter->width <= image->bits.width			&&
-	     iter->y + iter->height <= image->bits.height		&&
-	     image->common.extended_format_code == PIXMAN_a8r8g8b8)
+	     iter->y + iter->height <= image->bits.height)
     {
 	iter->buffer =
 	    image->bits.bits + iter->y * image->bits.rowstride + iter->x;
diff --git a/pixman/pixman-sse2.c b/pixman/pixman-sse2.c
index c419511..8adf541 100644
--- a/pixman/pixman-sse2.c
+++ b/pixman/pixman-sse2.c
@@ -5982,7 +5982,7 @@ sse2_src_iter_init (pixman_implementation_t *imp, pixman_iter_t *iter)
     int height = iter->height;
 
 #define FLAGS								\
-    (FAST_PATH_STANDARD_FLAGS | FAST_PATH_ID_TRANSFORM)
+    (FAST_PATH_STANDARD_FLAGS | FAST_PATH_ID_TRANSFORM | FAST_PATH_BITS_IMAGE)
 
     if ((iter->flags & ITER_NARROW)				&&
 	(image->common.flags & FLAGS) == FLAGS			&&

commit 40a04cb1b667494d55d12e2647b2f99cbed9fa4d
Author: Julien Cristau <jcristau@debian.org>
Date:   Sat Oct 22 11:09:17 2011 +0200

    Upload to experimental

diff --git a/debian/changelog b/debian/changelog
index 8c67100..af38044 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,9 @@
-pixman (0.23.6-1) UNRELEASED; urgency=low
+pixman (0.23.6-1) experimental; urgency=low
 
+  [ Rico Tzschichholz ]
   * New upstream release.
 
- -- Rico Tzschichholz <ricotz@ubuntu.com>  Wed, 19 Oct 2011 17:25:30 +0200
+ -- Julien Cristau <jcristau@debian.org>  Sat, 22 Oct 2011 11:09:04 +0200
 
 pixman (0.23.2-1) experimental; urgency=low
 

commit bdfdaaff5dd42cc91b61928b0771481eab000923
Author: Rico Tzschichholz <ricotz@t-online.de>
Date:   Wed Oct 19 17:44:08 2011 +0200

    Bump changelogs.

diff --git a/ChangeLog b/ChangeLog
index e5bd9e2..6a10342 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,952 @@
+commit e20ac40bd30484f0f711b52d0c1993ef08760284
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Oct 11 06:00:51 2011 -0400
+
+    Pre-release version bump to 0.23.6
+
+commit a43946a51fbbdc76be1af9bc25fe7c5c2a6314bb
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Thu Sep 22 18:42:38 2011 +0900
+
+    Simple repeat: Extend too short source scanlines into temporary buffer
+    
+    Too short scanlines can cause repeat handling overhead and optimized
+    pixman composite functions usually process a bunch of pixels in a
+    single loop iteration it might be beneficial to pre-extend source
+    scanlines. The temporary buffers will usually reside in cache, so
+    accessing them should be quite efficient.
+
+commit eaff774a3f8af6651a245711b9ab8af3211eeb10
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Mon Aug 29 21:44:36 2011 +0900
+
+    Simple repeat fast path
+    
+    We can implement simple repeat by stitching existing fast path
+    functions. First lookup COVER_CLIP function for given input and
+    then stitch horizontally using the function.
+
+commit a258e33fcb6cf08a2ef76e374cb92a12c9adb171
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Thu Sep 22 16:33:02 2011 +0900
+
+    Move _pixman_lookup_composite_function() to pixman-utils.c
+
+commit fc62785aabbe890b656c9cbaa57f2e65e74bbcc2
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Mon Jun 27 21:17:04 2011 +0000
+
+    Add src, mask, and dest flags to the composite args struct.
+    
+    These flags are useful in the various compositing routines, and the
+    flags stored in the image structs are missing some bits of information
+    that can only be computed when pixman_image_composite() is called.
+
+commit fa6523d13ae9b7986bb890df5ad66e8599bc3ed8
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Thu Sep 22 16:26:55 2011 +0900
+
+    Add new fast path flag FAST_PATH_BITS_IMAGE
+    
+    This fast path flag indicate that type of the image is bits image.
+
+commit 7272e2fcd2ff8e546cef19929cd370ae2f946135
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Thu Sep 22 16:20:03 2011 +0900
+
+    init/fini functions for pixman_image_t
+    
+    pixman_image_t itself can be on stack or heap. So segregating
+    init/fini from create/unref can be useful when we want to use
+    pixman_image_t on stack or other memory.
+
+commit 4dcf1b0107334857e1f0bb203c34efed1146535c
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Wed Sep 7 23:00:29 2011 +0900
+
+    sse2: Bilinear scaled over_8888_8_8888
+
+commit 81050f2784407b260a1897efa921631a19eeec6b
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Wed Sep 7 22:57:29 2011 +0900
+
+    sse2: Bilinear scaled over_8888_8888
+
+commit d67c0b883daeeaacf3f21f1ddbdcf9ecf94fac43
+Author: Taekyun Kim <tkq.kim@samsung.com>
+Date:   Wed Sep 7 22:51:46 2011 +0900
+
+    sse2: Macros for assembling bilinear interpolation code fractions
+    
+    Primitive bilinear interpolation code is reusable to implement other
+    bilinear functions.
+    
+    BILINEAR_DECLARE_VARIABLES
+    - Declare variables needed to interpolate src pixels.
+    
+    BILINEAR_INTERPOLATE_ONE_PIXEL
+    - Interpolate one pixel and advance to next pixel
+    
+    BILINEAR_SKIP_ONE_PIXEL
+    - Skip interpolation and just advance to next pixel
+      This is useful for skipping zero mask
+
+commit 741eb8462c3ff72cbf2d9acfeb1e97208a414fcd
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Thu Oct 6 17:56:09 2011 -0400
+
+    Correct the minimum gcc version needed for iwmmxt
+    
+    Spotted by Søren Sandmann.
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 0a34277180d29f471a2554afc2e2b682fee33c79
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Wed Oct 5 22:54:36 2011 -0400
+
+    Make sure iwMMXt is only detected on ARM
+    
+    iwMMXt is incorrectly detected on x86 and amd64. This happens because
+    the test uses standard _mm_* intrinsic functions which it compiles with
+    -march=iwmmxt, but when the user has set CFLAGS=-march=k8 for instance,
+    no error is generated from -march=iwmmxt, even though it's not a valid
+    flag on x86/amd64. Passing CFLAGS=-march=native does not override the
+    -march=iwmmxt flag though, which is why it wasn't noticed before.
+    
+    So, just #error out in the test if the __arm__ preprocessor directive
+    isn't defined.
+    
+    Fixes https://bugs.gentoo.org/show_bug.cgi?id=385179
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 879b7c21e45b092272e689e05dc867f6260e258f
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Sep 27 11:32:13 2011 -0400
+
+    Don't include stdint.h in scaling-helpers-test.
+    
+    Fixes bug 41257.
+
+commit 01c2dcbe6936a868651160d2617d783d5b8d3d7d
+Author: Benjamin Otte <otte@redhat.com>
+Date:   Wed Sep 14 17:52:03 2011 +0200
+
+    build: replace @VAR@ with $(VAR) in makefiles
+
+commit 100f16eae94a54fbb9ee1f44fa3c34602ba25c4d
+Author: Benjamin Otte <otte@redhat.com>
+Date:   Wed Sep 14 17:01:51 2011 +0200
+
+    tests: Add PNG_CFLAGS/LIBS to tests
+    
+    PNG flags were accidentally included by gdk-pixbuf. This has been fixed
+    recently, so we need to make sure to include it ourselves.
+
+commit d1313febbec2124ee175cd323a338caa3c1a8fc2
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Thu Sep 22 15:28:00 2011 -0400
+
+    mmx: optimize unaligned 64-bit ARM/iwmmxt loads
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 7ab94c5f99cc524ddfbbcedca4304ec7943f74e1
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Sun Jul 31 22:42:24 2011 -0400
+
+    mmx: compile on ARM for iwmmxt optimizations
+    
+    Check in configure for at least gcc-4.6, since gcc-4.7 (and hopefully
+    4.6) will be the eariest version capable of compiling the _mm_*
+    intrinsics on ARM/iwmmxt. Even for suitable compile versions I use
+    _mm_srli_si64 which is known to cause unpatched compilers to fail.
+    
+    Select iwmmxt at runtime only after NEON, since we expect the NEON
+    optimizations to be more capable and faster than iwmmxt.
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit f66887d9eae9646c838d518020168b1403705b1e
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Sun Sep 4 14:11:46 2011 -0400
+
+    mmx: prepare pixman-mmx.c to be compiled for ARM/iwmmxt
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 7c6d5d1999989187b60f1e0e82e55ed55238eb27
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Thu Sep 8 20:33:45 2011 +0200
+
+    mmx: fix unaligned accesses
+    
+    Simply return *p in the unaligned access functions, since alignment
+    constraints are very relaxed on x86 and this allows us to generate
+    identical code as before.
+    
+    Tested with the test suite, lowlevel-blit-test, and cairo-perf-trace on
+    ARM and Alpha with no unaligned accesses found.
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 5d98abb14ca9042af6d0ec7c14c8398cf4046b80
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Thu Sep 22 15:39:53 2011 -0400
+
+    mmx: wrap x86/MMX inline assembly in ifdef USE_X86_MMX
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 02c1f1a022e86ced69fc91376232d75d5d6583c5
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Sun Jul 31 20:20:12 2011 +0000
+
+    mmx: rename USE_MMX to USE_X86_MMX
+    
+    This will make upcoming ARM usage of pixman-mmx.c unambiguous.
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 57fd8c37aa3148b1d70bad65e1a49721e9a47d7e
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Fri Sep 23 14:10:52 2011 -0400
+
+    mmx: convert while (w) to if (w) when possible
+    
+    gcc isn't able to see that w is no greater than 1, so it generates
+    unnecessary loop instructions with while (w).
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 38a7aae1d9c8e1e41de22f9c3846dfc975af6838
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Fri Sep 9 15:33:14 2011 +0200
+
+    mmx: fix formats in commented code
+    
+    b8r8g8 is apparently no longer supported sometime since this code was
+    commented.
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit b6b77488a0259da3662edf68568e78806ca97444
+Author: Matt Turner <mattst88@gmail.com>
+Date:   Fri Sep 9 15:34:04 2011 +0200
+
+    lowlevel-blt: add over_x888_8_8888
+    
+    Signed-off-by: Matt Turner <mattst88@gmail.com>
+
+commit 9126f36b964c71b83c69235df4c3a46ab81ab5d5
+Author: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date:   Sun May 22 22:51:00 2011 +0300
+
+    BILINEAR->NEAREST filter optimization for simple rotation and translation
+    
+    Simple rotation and translation are the additional cases when BILINEAR
+    filter can be safely reduced to NEAREST.
+
+commit ad5c6bbb36c1c5e72313f7c7bc7c6e6b7e79daba
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun Sep 4 02:53:39 2011 -0400
+
+    Strength-reduce BILINEAR filter to NEAREST filter for identity transforms
+    
+    An image with a bilinear filter and an identity transform is
+    equivalent to one with a nearest filter, so there is no reason the
+    standard fast paths shouldn't be usable.
+    
+    But because a BILINEAR filter samples a 2x2 pixel block in the source
+    image, FAST_PATH_SAMPLES_COVER_CLIP can't be set in the case where the
+    source area is the entire image, because some compositing operations
+    might then read pixels outside the image.
+    
+    This patch fixes the problem by splitting the
+    FAST_PATH_SAMPLES_COVER_CLIP flag into two separate flags
+    FAST_PATH_SAMPLES_COVER_CLIP_NEAREST and
+    FAST_PATH_SAMPLES_COVER_CLIP_BILINEAR that indicate that the clip
+    covers the samples taking into account NEAREST/BILINEAR filters
+    respectively.
+    
+    All the existing compositing operations that require
+    FAST_PATH_SAMPLES_COVER_CLIP then have their flags modified to pick
+    either COVER_CLIP_NEAREST or COVER_CLIP_BILINEAR depending on which
+    filter they depend on.
+    
+    In compute_image_info() both COVER_CILP_NEAREST and
+    COVER_CLIP_BILINEAR can be set depending on how much room there is
+    around the clip rectangle.
+    
+    Finally, images with an identity transform and a bilinear filter get
+    FAST_PATH_NEAREST_FILTER set as well as FAST_PATH_BILINEAR_FILTER.
+    
+    Performance measurementas with render_bench against Xephyr:
+    
+    Before
+    
+    *** ROUND 1 ***
+    ---------------------------------------------------------------
+    Test: Test Xrender doing non-scaled Over blends
+    Time: 5.720 sec.
+    ---------------------------------------------------------------
+    Test: Test Xrender (offscreen) doing non-scaled Over blends
+    Time: 5.149 sec.
+    ---------------------------------------------------------------
+    Test: Test Imlib2 doing non-scaled Over blends
+    Time: 6.237 sec.
+    
+    After:
+    
+    *** ROUND 1 ***
+    ---------------------------------------------------------------
+    Test: Test Xrender doing non-scaled Over blends
+    Time: 4.947 sec.
+    ---------------------------------------------------------------
+    Test: Test Xrender (offscreen) doing non-scaled Over blends
+    Time: 4.487 sec.
+    ---------------------------------------------------------------
+    Test: Test Imlib2 doing non-scaled Over blends
+    Time: 6.235 sec.
+
+commit eb2e7ed81b324af730c1a7639c9ca9ed60152875
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Mon Sep 5 14:43:25 2011 -0400
+
+    test: Occasionally use a BILINEAR filter in blitters-test
+    
+    To test that reductions of BILINEAR->NEAREST for identity
+    transformations happen correctly, occasionally use a bilinear filter
+    in blitters test.
+
+commit 2a9f88430e7088eccfbbbd6c6b4f4e534126b1e1
+Author: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date:   Sun May 22 22:16:38 2011 +0300
+
+    test: better coverage for BILINEAR->NEAREST filter optimization
+    
+    The upcoming optimization which is going to be able to replace BILINEAR filter
+    with NEAREST where appropriate needs to analyze the transformation matrix
+    and not to make any mistakes.
+    
+    The changes to affine-test include:
+    1. Higher chance of using the same scale factor for x and y axes. This can help
+       to stress some special cases (for example the case when both x and y scale
+       factors are integer). The same applies to x/y translation.
+    2. Introduced a small chance for "corrupting" transformation matrix by flipping
+       random bits. This supposedly can help to identify the cases when some of the
+       fast paths or other code logic is wrongly activated due to insufficient checks.
+
+commit 054922e2fce1f8d9db4b9b756e54b0fa5655956d
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Mon Sep 5 00:19:51 2011 -0400
+
+    Eliminate compute_sample_extents() function
+    
+    In analyze_extents(), instead of calling compute_sample_extents() call
+    compute_transformed_extents() and inline the remaining part of
+    compute_sample_extents(). The upcoming bilinear->nearest optimization
+    will do something different with these two pieces of code.
+
+commit 577b6c46fd39c43c2c328fed48854b50b9e85e5b
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun Sep 4 17:43:29 2011 -0400
+
+    Split computation of sample area into own function
+    
+    compute_sample_extents() have two parts: one that computes the
+    transformed extents, and one that checks whether the computed extents
+    fit within the 16.16 coordinate space.
+    
+    Split the first part into its own function
+    compute_transformed_extents().
+
+commit 5064f1803136cbc28d1e9f636feb2ff8ccfbdded
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun Sep 4 17:17:53 2011 -0400
+
+    Remove x and y coordinates from analyze_extents() and compute_sample_extents()
+    
+    These coordinates were only ever used for subtracting from the extents
+    box to put it into the coordinate space of the image, so we might as
+    well do this coordinate translation only once before entering the
+    functions.
+
+commit dbcb4af60d8c688eaaa027c3c5bce9527a410465
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Aug 16 06:13:59 2011 -0400
+
+    Use MAKE_ACCESSORS() to generate accessors for paletted formats
+    
+    Add support in convert_pixel_from_a8r8g8b8() and
+    convert_pixel_to_a8r8g8b8() for conversion to/from paletted formats,
+    then use MAKE_ACCESSORS() to generate accessors for the indexed
+    formats: c8, g8, g4, c4, g1
+
+commit c82c2c38538f5c3f25cf81ad697040d2332d64de
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Sun May 30 12:36:58 2010 -0400
+
+    Use MAKE_ACCESSORS() to generate accessors for the a1 format.
+    
+    Add FETCH_1 and STORE_1 macros and use them to add support for 1bpp
+    pixels to fetch_and_convert_pixel() and convert_and_store_pixel(),
+    then use MAKE_ACCESSORS() to generate the accessors for the a1
+    format. (Not the g1 format as it is indexed).
+
+commit 2114dd8aa1f292541e55b6b84152732b37c1c1eb
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Tue Aug 16 14:38:44 2011 -0400
+
+    Use MAKE_ACCESSORS() to generate accessors for 24bpp formats
+    
+    Add FETCH_24 and STORE_24 macros and use them to add support for 24bpp
+    pixels in fetch_and_convert_pixel() and
+    convert_and_store_pixel(). Then use MAKE_ACCESSORS() to generate
+    accessors for the 24 bpp formats:
+    
+        r8g8b8
+        b8g8r8
+
+commit f19f5daa1b111368bcf75435dce12483e08756f2
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Aug 18 05:09:07 2011 -0400
+
+    Use MAKE_ACCESSORS() to generate accessors for 4 bpp RGB formats
+    
+    Use FETCH_4 and STORE_4 macros to add support for 4bpp pixels to
+    fetch_and_convert_pixel() and convert_and_store_pixel(), then use
+    MAKE_ACCESSORS() to generate accessors for 4 bpp formats, except g4 and
+    c4 which are indexed:
+    
+        a4
+        r1g2b1
+        b1g2r1
+        a1r1g1b1
+        a1b1g1r1
+
+commit af78fe24e41c30b5c9b3da4449813c75f760c845
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Aug 18 08:13:58 2011 -0400
+
+    Use MAKE_ACCESSORS() to generate accessors for 8bpp RGB formats
+    
+    Add support for 8 bpp formats to fetch_and_convert_pixel() and
+    convert_and_store_pixel(), then use MAKE_ACCESSORS() to generate the
+    accessors for all the 8 bpp formats, except g8 and c8, which are
+    indexed:
+    
+        a8
+        r3g3b2
+        b2g3r3
+        a2r2g2b2
+        a2b2g2r2
+        x4a4
+
+commit 5e1b9f897532ac0fa220880bf94dd660c837afe9
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Aug 18 08:13:44 2011 -0400
+
+    Use MAKE_ACCESSORS() to generate accessors for all the 16bpp formats
+    
+    Add support for 16bpp pixels to fetch_and_convert_pixel() and
+    convert_and_store_pixel(), then use MAKE_ACCESSORS() to generate
+    accessors for all the 16bpp formats:
+    
+        r5g6b5
+        b5g6r5
+        a1r5g5b5
+        x1r5g5b5
+        a1b5g5r5
+        x1b5g5r5
+        a4r4g4b4
+        x4r4g4b4
+        a4b4g4r4
+        x4b4g4r4
+
+commit a77597bcb8d10afd66980b8db8839049181b3743
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Thu Aug 18 08:13:30 2011 -0400
+
+    Use MAKE_ACCESSORS() to generate all the 32 bit accessors
+    
+    Add support for 32bpp formats in fetch_and_convert_pixel() and
+    convert_and_store_pixel(), then use MAKE_ACCESSORS() to generate
+    accessors for all the 32 bpp formats:
+    
+        a8r8g8b8
+        x8r8g8b8
+        a8b8g8r8
+        x8b8g8r8
+        x14r6g6b6
+        b8g8r8a8
+        b8g8r8x8
+        r8g8b8x8
+        r8g8b8a8
+
+commit 814af33df3e9892e4fc790c7ccd2702ce2b8ea97
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Wed Aug 17 17:27:58 2011 -0400
+
+    Add initial version of the MAKE_ACCESSORS() macro
+    
+    This macro will eventually allow the fetchers and storers to be
+    generated automatically. For now, it's just a skeleton that doesn't
+    actually do anything.
+
+commit 5cae7a3fe6e148d2bb42b86efb7daf27dbf12ee0
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Mon Aug 15 18:42:38 2011 -0400
+
+    Add general pixel converter
+    
+    This function can convert between any <= 32 bpp formats. Nothing uses
+    it yet.
+
+commit 22f54dde6bbf87251a0b4ad93bacbdaa7cb508d8
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Mon Aug 15 10:22:05 2011 -0400
+
+    Add a generic unorm_to_unorm() conversion utility
+    
+    This function can convert between normalized numbers of different
+    depths. When converting to higher bit depths, it will replicate the
+    existing bits, when converting to lower bit depths, it will simply
+    truncate.
+    
+    This function replaces the expand16() function in pixman-utils.c
+
+commit d842669a467be490bb0a40000d0c0fccea0b1b85
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Mon Sep 19 09:08:33 2011 -0400
+
+    A few tweaks to a comment in pixman-combine.c.template
+    
+    Include a link to
+    
+    	http://marc.info/?l=xfree-render&m=99792000027857&w=2
+    
+    where Keith explains how the disjoint/conjoint operators work.
+
+commit 3432e1a3444a55f71e294da7d350957a8e1232c3
+Author: Jon TURNEY <jon.turney@dronecode.org.uk>
+Date:   Mon Sep 19 06:17:58 2011 -0400
+
+    Fix build on cygwin after commit efdf65c0c4fff551fb3cd9104deda9adb6261e22
+    
+    libutils depends on pixman and so needs to preceed it in the link order
+    
+    Found by tinderbox, see [1]
+    
+    [1] http://tinderbox.freedesktop.org/builds/2011-09-15-0005/logs/pixman/#build
+    
+    Signed-off-by: Jon TURNEY <jon.turney at dronecode.org.uk>
+
+commit f9faf4df440366ed36b197dc09b1c2b51af3387b
+Author: Søren Sandmann Pedersen <ssp@redhat.com>
+Date:   Mon Sep 12 23:17:39 2011 -0400
+
+    test: Use smaller boxes in region_contains_test()
+    
+    The boxes used region_contains_test() sometimes overflow causing
+    
+        *** BUG ***
+        In pixman_region32_union_rect: Invalid rectangle passed
+        Set a breakpoint on '_pixman_log_error' to debug
+    
+    messages to be printed when pixman is compiled with DEBUG. Fix this by
+    dividing the x, y, w, h coordinates by 4 to prevent overflows.
+
+commit 9623b478f7e872af36ca77af5cc9e85f5ea132cf
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Sun Sep 4 21:33:05 2011 +0200
+
+    build-win32: Add 'check' target
+    
+    On win32 the tests are built but they are not run automatically by the
+    build system.
+    
+    A minimal 'check' target (depending on the tests being built) can
+    simply run them and log to the console their success/failure.
+
+commit 479d0944851fffda7ed860523feb388fec028545
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Sun Sep 4 13:52:53 2011 -0700
+
+    test: Do not include config.h unless HAVE_CONFIG_H is defined
+    
+    The win32 build system does not generate config.h and correctly runs
+    the compiler without defining HAVE_CONFIG_H. Nevertheless some files
+    include config.h without checking for its availability, breaking the
+    build from a clean directory:
+    
+    test\utils.h(2) : fatal error C1083: Cannot open include file:
+    'config.h': No such file or directory
+    ...
+
+commit d46a9f3acef21b50639c64f190a0de7eca21747c
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Sun Sep 4 21:56:20 2011 +0200
+
+    build-win32: Add root Makefile.win32
+    
+    Add Makefile.win32 to the pixman root. This makefile can recursively
+    run the other ones to compile the library or the test suite.
+
+commit a76b78c2daa61900572014070d3e856a460fd554
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Sun Sep 4 18:00:38 2011 +0200
+
+    build-win32: Share targets and variables across win32 makefiles
+    
+    The win32 build system repeatedly defines some basic variables
+    (notably program names and flags) and C sources compilation rules.
+    
+    They can be factored out to a common Makefile, to be included in every
+    other Makefile.win32.
+
+commit efdf65c0c4fff551fb3cd9104deda9adb6261e22
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Sun Sep 4 20:07:42 2011 +0200
+
+    build: Reuse test sources
+    
+    Makefile.am and Makefile.win32 should not duplicate content, as this
+    leads to breaking the build when they are not kept in sync.
+    
+    This can be avoided by listing sources, headers and common build
+    variables/rules in a Makefile.sources file.
+    
+    In order to further simplify the test makefiles, the utility functions
+    are now in a static library, which gets linked to all the tests and
+    benchmarks.
+
+commit a4f95d083b1aa644923d79e7b61df6c2eacca7c2
+Author: Andrea Canciani <ranma42@gmail.com>
+Date:   Sun Sep 4 09:41:41 2011 -0700
+
+    build: Reuse sources and pixman-combine build rules


Reply to: