[cairo] [PATCH][pixman] Test program for stressing the use of different formats and operators

Siarhei Siamashka siarhei.siamashka at gmail.com
Sun Jul 12 02:56:36 PDT 2009


Hi,

The code and overall method is mostly based on scaling-test. This one
focuses on trying to stress as many different color format and types
off composition operations as possible.

This is an initial implementation which may need more tuning. Also
not all color format and operator combinations are actually used.
The ones which crashed pixman or caused other problems even when
compiled without any cpu specific optimizations are enclosed
in '#if 0' blocks. Preferably they should be enabled later, once
the bugs in pixman core are fixed.

When cpu specific optimizations are disabled, this test provides
identical deterministic results on x86, PPC and ARM.

Script blitters-test-bisect.rb now works in non-stop mode, until
it finds any problem. This allows to run it for example overnight
in order to test a lot more variants of pixman calls and increase
chances of detecting problems in pixman. Just like with scaling-test,
running blitters-test binary alone with no command line arguments
runs a small predefined number of tests and compares checksum
with a reference value for quick verification.

The general overview of this testing method can be found here:
http://en.wikipedia.org/wiki/Fuzz_testing


The following optimized pixman functions have been found to produce results, 
at least different from C variant:

ARM NEON: neon_composite_over_n_8_0565, neon_composite_over_n_0565,
neon_composite_over_8888_0565

MMX: mmx_composite_over_n_8_0565, mmx_composite_over_n_8_8888,
mmx_composite_over_n_8888, mmx_composite_over_n_0565,
mmx_composite_src_n_8_8888, mmx_composite_in_n_8_8

VMX: vmx_combine_atop_u, vmx_combine_atop_reverse_u, vmx_combine_xor_u

-- 
Best regards,
Siarhei Siamashka
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Test-program-for-stressing-the-use-of-different-form.patch
Type: text/x-diff
Size: 23939 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20090712/0d9a78c1/attachment-0001.patch 


More information about the cairo mailing list