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

Ben Avison bavison at riscosopen.org
Tue Feb 12 14:52:11 PST 2013


Since we're discussing bit-exactness, I have a related question. One
nice group of instructions in ARMv6 are capable of doing things like

   a += (b * c) + (d * e)

in a single cycle, where b, c, d and e are 16-bit quantities. This is
potentially useful for certain types of compositing - except that the
way rounding is currently done, ((t + (t >> 8)) >> 8) is assumed to be
applied after every multiply. If I do one of those fancy dual-multiply
instructions and then round the result, it will be technically more
accurate because the intermediate result was effectively held in 16-bit
precision, yet it won't match the exact bit pattern tested for by some
of the "make check" tests.

If the plan is to allow greater deviations, how can this be reconciled
with the tests that require bitwise exact results?

Ben


More information about the Pixman mailing list