~cairo.admin/+junk/pixman-packaging

Viewing all changes in revision 1943.

  • Committer: Søren Sandmann
  • Author(s): Ben Avison
  • Date: 2014-04-22 00:34:26 UTC
  • Revision ID: git-v1:73d2f8b61ae5e320a7795c29b6041b7885cf2953
ARMv6: Support for very variable-hungry composite operations

Previously, the variable ARGS_STACK_OFFSET was available to extract values
from function arguments during the init macro. Now this changes dynamically
around stack operations in the function as a whole so that arguments can be
accessed at any point. It is also joined by LOCALS_STACK_OFFSET, which
allows access to space reserved on the stack during the init macro.

On top of this, composite macros now have the option of using all of WK0-WK3
registers rather than just the subset it was told to use; this requires the
pixel count to be spilled to the stack over the leading pixels at the start
of each line. Thus, at best, each composite operation can use 11 registers,
plus any pointer registers not required for the composite type, plus as much
stack space as it needs, divided up into constants and variables as necessary.

expand all expand all

Show diffs side-by-side

added added

removed removed

Lines of Context: