[Mesa-dev] [PATCH 00/16] swr: rasterizer update

Tim Rowley timothy.o.rowley at intel.com
Thu Jun 15 18:37:01 UTC 2017


Highlights include: jit cache (disabled currently), work in progress
to shrink the vertex structure used in the frontend, and refactoring
to speed recompiles if simdintrin.h is changed.

Tim Rowley (16):
  swr/rast: Implement JIT shader caching to disk
  swr/rast: Fix invalid 16-bit format traits for A1R5G5B5
  swr/rast: Remove explicit primitive id slot in the vertex layout
  swr/rast: Rework attribute layout
  swr/rast: Add support to PA for variable sized vertices
  swr/rast: SIMD16 FE - improve calcDeterminantIntVertical
  swr/rast: Add support for dynamic vertex size for VS output
  swr/rast: Share vertex memory between VS input/output
  swr/rast: fix early z / query interaction
  swr/rast: Properly size GS stage scratch space
  swr/rast: gen_llvm_types.py support for SIMD256/SIMD512
  swr/rast: Don't transition hottile resolved --> dirty during store
    tiles
  swr/rast: Adjust cast for gcc warning
  swr/rast: Fix read-back of render target array index
  swr/rast: Refactor includes to limit simdintrin.h usage
  swr/rast: Fix read-back of viewport array index

 src/gallium/drivers/swr/Makefile.sources           |   3 +
 .../swr/rasterizer/codegen/gen_llvm_types.py       |  12 +-
 .../drivers/swr/rasterizer/codegen/knob_defs.py    |  17 +-
 .../swr/rasterizer/codegen/templates/gen_knobs.cpp |  64 +-
 src/gallium/drivers/swr/rasterizer/common/intrin.h | 169 ++++
 .../drivers/swr/rasterizer/common/simd16intrin.h   |  52 --
 .../drivers/swr/rasterizer/common/simdintrin.h     |  87 +-
 src/gallium/drivers/swr/rasterizer/core/api.cpp    |   4 +-
 src/gallium/drivers/swr/rasterizer/core/api.h      |   2 +-
 .../drivers/swr/rasterizer/core/backend.cpp        |   9 +-
 src/gallium/drivers/swr/rasterizer/core/backend.h  |   1 -
 src/gallium/drivers/swr/rasterizer/core/binner.cpp | 201 +++--
 src/gallium/drivers/swr/rasterizer/core/clip.cpp   |  24 +-
 src/gallium/drivers/swr/rasterizer/core/clip.h     |  67 +-
 src/gallium/drivers/swr/rasterizer/core/context.h  |   7 +-
 src/gallium/drivers/swr/rasterizer/core/fifo.hpp   |   4 +-
 .../drivers/swr/rasterizer/core/format_traits.h    |   2 +-
 .../drivers/swr/rasterizer/core/format_types.h     | 149 ++--
 .../drivers/swr/rasterizer/core/format_utils.h     | 882 ++++++++++++++++++++
 .../drivers/swr/rasterizer/core/frontend.cpp       | 121 +--
 src/gallium/drivers/swr/rasterizer/core/frontend.h |  41 +-
 .../drivers/swr/rasterizer/core/multisample.h      |  10 +-
 src/gallium/drivers/swr/rasterizer/core/pa.h       |  50 +-
 src/gallium/drivers/swr/rasterizer/core/pa_avx.cpp |   3 +-
 src/gallium/drivers/swr/rasterizer/core/state.h    |  91 +-
 .../drivers/swr/rasterizer/core/state_funcs.h      |  68 ++
 src/gallium/drivers/swr/rasterizer/core/utils.h    | 919 +--------------------
 .../drivers/swr/rasterizer/jitter/JitManager.cpp   | 219 ++++-
 .../drivers/swr/rasterizer/jitter/JitManager.h     |  29 +
 .../drivers/swr/rasterizer/jitter/blend_jit.cpp    |   7 +-
 .../drivers/swr/rasterizer/jitter/fetch_jit.cpp    |   6 +-
 .../drivers/swr/rasterizer/jitter/jit_api.h        |   1 +
 .../swr/rasterizer/jitter/streamout_jit.cpp        |   6 +-
 src/gallium/drivers/swr/swr_draw.cpp               |   4 +
 src/gallium/drivers/swr/swr_shader.cpp             | 102 ++-
 src/gallium/drivers/swr/swr_state.cpp              |  29 +-
 36 files changed, 1966 insertions(+), 1496 deletions(-)
 create mode 100644 src/gallium/drivers/swr/rasterizer/common/intrin.h
 create mode 100644 src/gallium/drivers/swr/rasterizer/core/format_utils.h
 create mode 100644 src/gallium/drivers/swr/rasterizer/core/state_funcs.h

-- 
2.7.4



More information about the mesa-dev mailing list