[ANNOUNCE] pixman release 0.26.0 now available
Søren Sandmann
sandmann at cs.au.dk
Sat May 26 14:44:17 PDT 2012
A new stable pixman release 0.26.0 is now available. Highlights of
this release:
* New support for MIPS DSPr2 ASE. [Nemanja Lukic]
* Improved performance with the iwMMXt instruction set. [Matt Turner]
* New support forthe Loongson SIMD instruction set. [Matt]
Performance results from a number of cairo based benchmarks:
Benchmark Improvement
evolution .............. image: 12.8 %
image16: 15.9 %
firefox-planet-gnome ... image: 14.4 %
image16: 10.0 %
gnome-terminal-vim ..... image: 16.5 %
image16: 15.7 %
gvim ................... image: 13.1 %
image16: 7.0 %
ocitysmap .............. image: 24.1 %
image16: 23.9 %
poppler ................ image: 18.7 %
image16: 17.5 %
swfdec-giant-steps ..... image: no change
image16: 35.3 %
swfdec-youtube ......... image: 23.5 %
image16: 12.4 %
xfce4-terminal-a1 ...... image: 26.9 %
image16: 28.8 %
Please see
http://mattst88.com/blog/2012/05/17/Optimizing%20pixman%20for%20Loongson:%20Process%20and%20Results/
for more information.
In addition to a number of bug fixes, cleanups and performance
improvements, this release also contains improved support for Android
and iOS thanks to Bobby Salazar.
Thanks to everybody who contributed to pixman 0.26.0, including Alan
Coopersmith, Andrea Canciani, Bobby Salazar, Chun-wei Fan, Colin
Walters, Ingmar Runge, Jeremy Huddleston, Matt Turner, Naohiro Aota,
Nemanja Lukic, and Søren Sandmann Pedersen,
Please send bug reports to pixman at lists.freedesktop.org or file them at
https://bugs.freedesktop.org/enter_bug.cgi?product=pixman
Thanks,
Søren
tar.gz:
http://cairographics.org/releases/pixman-0.26.0.tar.gz
http://xorg.freedesktop.org/archive/individual/lib/pixman-0.26.0.tar.gz
tar.bz2:
http://xorg.freedesktop.org/archive/individual/lib/pixman-0.26.0.tar.bz2
Hashes:
MD5: 6563b6400b9fa23b47fd52105faf72b4 pixman-0.26.0.tar.gz
MD5: d0c41a51db89efec669812e66a5582fa pixman-0.26.0.tar.bz2
SHA1: 6f45d76ce8ef4aa570d0f9cbcc1b8bcecc863ab7 pixman-0.26.0.tar.gz
SHA1: d772cf794ec5da0966eba3cb360919a0a5e0d23f pixman-0.26.0.tar.bz2
GPG signature:
http://cairographics.org/releases/pixman-0.26.0.tar.gz.sha1.asc
(signed by Søren Sandmann Pedersen <soren.sandmann at gmail.com>
Git:
git://git.freedesktop.org/git/pixman
tag: pixman-0.26.0
Log:
Alan Coopersmith (2):
Make mmx code compatible with Solaris Studio 12.3 compilers
Just use xmmintrin.h when building with Solaris Studio compilers
Andrea Canciani (6):
Remove useless checks for NULL before freeing
test: Cleanup includes
Use the ARRAY_LENGTH() macro when possible
test: Reuse the ARRAY_LENGTH() macro
demos: Consistently use G_N_ELEMENTS()
test: Produce autotools-looking report in the win32 build system
Bobby Salazar (2):
Android Runtime Detection Support For ARM NEON
iOS Runtime Detection Support For ARM NEON
Chun-wei Fan (1):
Just include xmmintrin.h on MSVC as well
Colin Walters (1):
autogen.sh: Support GNOME Build API
Ingmar Runge (1):
Fix MSVC compilation
Jeremy Huddleston (7):
configure.ac: Add an --enable-libpng option
Revert "Disable MMX when Clang is being used."
Silence a warning about unused pixman_have_mmx
Disable MMX when incompatible clang is being used.
Expand TLS support beyond __thread to __declspec(thread)
Fix a false-negative in MMX check
configure.ac: Fix a copy-paste-o in TLS detection
Matt Turner (41):
Use AC_LANG_SOURCE for iwMMXt configure program
Make sure to run AC_SUBST IWMMXT_CFLAGS
Convert while (w) to if (w) when possible
autoconf: use #error instead of error
mmx: enable over_x888_8_8888 on ARM/iwMMXt
mmx: Use _mm_mulhi_pu16
mmx: Use _mm_shuffle_pi16
mmx: fix typo in pix_add_mul on MSVC
Update .gitignore with more demos and tests
mmx: make store8888 take uint32_t *dest as argument
mmx: make load8888 take a pointer to data instead of the data itself
lowlevel-blt: add over_8888_8888
lowlevel-blt: add over_x888_n_8888
lowlevel-blt-bench: add in_8_8 and in_n_8_8
Use AC_LANG_SOURCE for DSPr2 configure program
mmx: enable over_n_0565 for b5g6r5
mmx: Use force_inline instead of __inline__ (bug 46906)
configure.ac: require >= gcc-4.5 for ARM iwMMXt
mmx: fix _mm_shuffle_pi16 function when compiling without optimization
configure.ac: fix iwMMXt/gcc version error message
mmx: add store function and use it in add_8888_8888
mmx: add load function and use it in add_8888_8888
mmx: make ldq_u take __m64* directly
mmx: compile on MIPS for Loongson MMI optimizations
mmx: remove unnecessary uint64_t<->__m64 conversions
mmx: simplify srcsrcsrcsrc calculation in over_n_8_0565
mmx: introduce is_equal, is_opaque, and is_zero functions
mmx: don't pack and unpack src unnecessarily
mmx: Use Loongson pinsrh instruction in pack_565
mmx: Use Loongson pextrh instruction in expand565
mmx: add r5g6b5 fetcher
mmx: add a8 fetcher
mmx: add x8f8g8b8 fetcher
mmx: add src_8888_0565
mmx: Use wpackhus in src_x888_0565 on iwMMXt
.gitignore: add demos/checkerboard and demos/quad2quad
configure.ac: make -march=loongson2f come before CFLAGS
mmx: add and use pack_4x565 function
configure.ac: Fix loongson-mmi out-of-tree builds
configure.ac: Rename loongson -> loongson-mmi
configure.ac: Fail the ARM/iwMMXt test if not compiling with -march=iwmmx
Naohiro Aota (1):
Don't use non-POSIX test
Nemanja Lukic (7):
MIPS: DSPr2: Basic infrastructure for MIPS architecture
MIPS: DSPr2: Added fast-paths for SRC operation.
MIPS: DSPr2: Added mips_dspr2_blt and mips_dspr2_fill routines.
MIPS: DSPr2: Added over_n_8888_8888_ca and over_n_8888_0565_ca fast paths
MIPS: DSPr2: Added over_n_8_8888 and over_n_8_0565 fast paths.
MIPS: DSPr2: Fix bug in over_n_8888_8888_ca/over_n_8888_0565_ca routines
MIPS: DSPr2: Added bilinear over_8888_8_8888 fast path.
Søren Sandmann Pedersen (49):
Post-release version bump to 0.25.1
region: Add pixman_region{,32}_clear() functions.
Modify gradient-test to show a bug in NONE processing
gradient-walker: For NONE repeats, when x < 0 or x > 1, set both colors t
pixman-image.c: Fix typo in pixman_image_set_transform()
Fix some signed overflow bugs
Add missing cast in _pixman_edge_multi_init()
Fix a bunch of signed overflow issues
In MUL_UNc() cast to comp2_t
Reject trapezoids where top (botttom) is above (below) the edges
Fix rounding for DIV_UNc()
test: In the alphamap test, also test that we get the right red value
Fix bugs with alpha maps
test/alphamap.c: Make dst and orig_dst more independent of each other
Get rid of delegates for combiners
Move the color_correct() function from composite.c to utils.c
Rename color_correct() to round_color()
test: Add a new "pixel_checker_t" object.
test: Port composite test over to use new pixel_checker_t object.
Revert "Reject trapezoids where top (botttom) is above (below) the edges"
mmx: Enable over_x888_8_8888() for x86 as well
mmx: Delete unused function in_over_full_src_alpha()
Disable MMX when Clang is being used.
Disable implementations mentioned in the PIXMAN_DISABLE environment varia
Move fetching for solid bits images to pixman-noop.c
pixman-accessors.h: Delete unused macros
pixman-access.c: Remove some unused macros
mmx: Squash a warning by making the argument to ldl_u() const
Pre-release version bump to 0.25.2
Post-release version bump to 0.25.3
Use "=a" and "=d" constraints for rdtsc inline assembly
demos: Add quad2quad program
demos: Add checkerboard demo
composite-test.c: Use similar gradient to the one in the PDF spec.
composite-test.c: Add a parrot image
Add the original parrot image.
Rename fast_composite_add_1000_1000 to _add_1_1()
gtk-utils.c: Don't include pixman-private.h
test/utils.c: Rename and export the pngify_pixels() function.
gtk-utils.c: In pixbuf_from_argb32() use a8r8g8b8_to_rgba_np()
test/utils.c: Clip values to the [0, 255] interval
bits_image_fetch_pixel_convolution(): Make sure channels are signed
Add Makefile.win32 and Makefile.win32.common to EXTRA_DIST
demos/Makefile.am: Add parrot.c to EXTRA_DIST
Pre-release version bump to 0.25.6
Post-release version bump to 0.25.7
demos: Add parrot.jpg to EXTRA_DIST
test: Composite with solid images instead of using pixman_image_fill_*
Pre-release version bump to 0.26.0
More information about the xorg-announce
mailing list