[Pixman] [PATCH] Add a version of bilinear_interpolation for precision <=4

2013-01-24 Thread Jeff Muizelaar
Having 4 or fewer bits means we can do two components at a time in a single 32 bit register. Here are the results for firefox-fishtank on a Pandaboard with 4.6.3 and PIXMAN_DISABLE="arm-neon" Before: [ # ] backend test min(s) median(s) stddev. count [ 0]image

Re: [Pixman] Pixman glyph compositing

2013-01-24 Thread Bill Spitzak
If these are individual glyphs I think you are going to have a problem if any glyphs extend outside the box defined by their escapement. Either these pixels will get clipped off, or portions of neighboring glyphs will get erased. So I think you have to composite glyphs at some point as though

[Pixman] [PATCH 1/1] Improve L1 and L2 benchmark tests for caches that don't use allocate-on-write

2013-01-24 Thread Ben Avison
In particular this affects single-core ARMs (e.g. ARM11, Cortex-A8), which are usually configured this way. For other CPUs, this should only add a constant time, which will be cancelled out by the EXCLUDE_OVERHEAD runs. The problems were caused by cachelines becoming permanently evicted from the c

[Pixman] [PATCH 7/7] utils.c: Increase acceptable deviation to 0.0064 in pixel_checker_t

2013-01-24 Thread Søren Sandmann
From: Søren Sandmann Pedersen The check-formats programs reveals that the 8 bit pipeline cannot meet the current 0.004 acceptable deviation specified in utils.c, so we have to increase it. Some of the failing pixels were captured in pixel-test, which with this commit now passes. == a4r4g4b4 DISJ

[Pixman] [PATCH 6/7] test: Add new pixel-test regression test

2013-01-24 Thread Søren Sandmann
From: Søren Sandmann Pedersen This test program contains a table of individual operator/pixel combinations. For each pixel combination, images of various sizes are filled with the pixels and then composited. The result is then verified against the output of do_composite(). If the result doesn't m

[Pixman] [PATCH 5/7] a1-trap-test: Add tests for operator_name and format_name()

2013-01-24 Thread Søren Sandmann
From: Søren Sandmann Pedersen The check-formats.c test depends on the exact format of the strings returned from these functions, so add a test here. a1-trap-test isn't the ideal place, but it seems like overkill to add a new test just for these trivial checks. --- test/a1-trap-test.c |8 +++

[Pixman] [PATCH 4/7] test: Add new check-formats utility

2013-01-24 Thread Søren Sandmann
From: Søren Sandmann Pedersen Given an operator and two formats, this program will composite and check all pixels where the red and blue channels are 0. That is, if the two formats are a8r8g8b8 and a4r4g4b4, all source pixels matching the mask 0xff00ff00 are composited with the given operat

[Pixman] [PATCH 3/7] utils.[ch]: Add pixel_checker_get_masks()

2013-01-24 Thread Søren Sandmann
From: Søren Sandmann Pedersen This function returns the a, r, g, and b masks corresponding to the pixel checker's format. --- test/utils.c | 17 + test/utils.h |7 +++ 2 files changed, 24 insertions(+), 0 deletions(-) diff --git a/test/utils.c b/test/utils.c index eed2

[Pixman] [PATCH 2/7] test/utils.[ch]: Add pixel_checker_convert_pixel_to_color()

2013-01-24 Thread Søren Sandmann
From: Søren Sandmann Pedersen This function takes a pixel in the format corresponding to the pixel checker, and converts to a color_t. --- test/utils.c | 36 test/utils.h |4 2 files changed, 40 insertions(+), 0 deletions(-) diff --git a/test/util

[Pixman] [PATCH 1/7] test: Move do_composite() function from composite.c to utils.c

2013-01-24 Thread Søren Sandmann
From: Søren Sandmann Pedersen So that it can be used in other tests. --- test/composite.c | 277 -- test/utils.c | 277 ++ test/utils.h |8 ++ 3 files changed, 285 insertions(+),

[Pixman] [PATCH 0/7] Tolerance based test program check-formats

2013-01-24 Thread Søren Sandmann
The following patches add a new program check-formats to the test directory that takes an operator and two formats and then uses the reference composite function from composite.c to verify that all pixels where the red and blue channels are zero composite correctly. This reveals that in many cases

Re: [Pixman] Pixman glyph compositing

2013-01-24 Thread Søren Sandmann
David Herrmann writes: >> You could speed this up by caching the glyphs in a pixman_glyphs_t >> structure and then using pixman_composite_glyphs(), or if you are sure >> that your glyphs will never overlap each other, >> pixman_composite_glyphs_no_mask(). > > I already cache the glyphs in a hash-

Re: [Pixman] Pixman glyph compositing

2013-01-24 Thread David Herrmann
Hi Soren On Thu, Jan 24, 2013 at 12:43 AM, Søren Sandmann wrote: > David Herrmann writes: > >> While working on kmscon the main rendering task I am faced with is >> blending a glyph into the main framebuffer with a constant foreground >> and background color. The code I have been using is a per-

Re: [Pixman] Pixman glyph compositing

2013-01-24 Thread David Herrmann
Hi Chris On Wed, Jan 23, 2013 at 11:00 PM, Chris Wilson wrote: > On Wed, Jan 23, 2013 at 08:50:18PM +0100, David Herrmann wrote: >> Hi >> >> While working on kmscon the main rendering task I am faced with is >> blending a glyph into the main framebuffer with a constant foreground >> and backgroun