~kiko/pixman/trunk

Viewing all changes in revision 2071.

  • Committer: Maarten Lankhorst
  • Author(s): Basile Clement
  • Date: 2019-02-11 11:48:21 UTC
  • Revision ID: git-v1:a32fc4faf9defc6c18cf1cca7075ef3866fd5de6
Implement floating point gradient computation, v2.

This patch modifies the gradient walker to be able to generate floating
point values directly in addition to a8r8g8b8 32 bit values.  This is
then used by the various gradient implementations to render in floating
point when asked to do so, instead of rendering to a8r8g8b8 and then
expanding to floating point as they were doing previously.

Changes since v1 (mlankhorst):
- Implement pixman_gradient_walker_pixel_32 without calling
  pixman_gradient_walker_pixel_float, to prevent performance degradation.
  Suggested by Adam Jackson.
- Fix whitespace errors.
- Remove unnecessary function prototypes in pixman-private.h

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
[mlankhorst: Add comment about pixman_contract_from_float,
             based on Basille's suggestion]
Acked-by: Basile Clement <basile-pixman@clement.pm>

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: