mesa: Changes to 'gallium-0.2'

Robert Ellison papillo at kemper.freedesktop.org
Thu Sep 18 07:28:45 UTC 2008


The branch, gallium-0.2 has been updated
        Commits at: http://cgit.freedesktop.org/mesa/mesa/log/?h=gallium-0.2

Summary of changes:
 src/gallium/auxiliary/rtasm/rtasm_ppc_spe.c      |   41 ++-
 src/gallium/auxiliary/rtasm/rtasm_ppc_spe.h      |    8 +
 src/gallium/drivers/cell/ppu/cell_gen_fragment.c |  546 +++++++++++++---------
 3 files changed, 377 insertions(+), 218 deletions(-)

       via  f8bba34d4e12ef4c620cac881a4b697a1e668377 (commit)
      from  f631093ce76ad14dee63293761d7da7b7b42fc6d (commit)


- Commits -----------------------------------------------
commit f8bba34d4e12ef4c620cac881a4b697a1e668377
Author: Robert Ellison <papillo at tungstengraphics.com>
Date:   Thu Sep 18 01:29:41 2008 -0600

    CELL: finish fragment ops blending (except for unusual D3D modes)
    
    - Added new "macro" functions spe_float_min() and spe_float_max()
      to rtasm_ppc_spe.{ch}.  These emit instructions that cause
      the minimum or maximum of each element in a vector of floats
      to be saved in the destination register.
    
    - Major changes to cell_gen_fragment.c to implement all the blending
      modes (except for the mysterious D3D-based PIPE_BLENDFACTOR_SRC1_COLOR,
      PIPE_BLENDFACTOR_SRC1_ALPHA, PIPE_BLENDFACTOR_INV_SRC1_COLOR, and
      PIPE_BLENDFACTOR_INV_SRC1_ALPHA).
    
    - Some revamping of code in cell_gen_fragment.c: use the new spe_float_min()
      and spe_float_max() functions (instead of expanding these calculations
      inline via macros); create and use an inline utility function for handling
      "optional" register allocation (for the {1,1,1,1} vector, and the
      blend color vectors) instead of expanding with macros; use the Float
      Multiply and Subtract (fnms) instruction to simplify and optimize many
      blending calculations.

---------------------------------




More information about the mesa-commit mailing list