[Mesa-dev] [PATCH 00/32] update swr rasterizer

Cherniak, Bruce bruce.cherniak at intel.com
Mon Mar 20 18:37:02 UTC 2017


Looks like “patchwork” got a bit confused by v2, but the intended patch-set applies cleanly and looks good.

Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com>

> On Mar 16, 2017, at 2:09 PM, Tim Rowley <timothy.o.rowley at intel.com> wrote:
> 
> Hightlights include: lots of simd16 work, assert rework, and autogen
> changes (scripts centralized, one file added, two removed).
> 
> v2:
> * adjust scons build system along with automake
> * separate backend template comment style change
> * only one declaration of gBackendPixelRateTable
> * prefix template and generated files with gen_
> 
> Tim Rowley (32):
>  swr: [rasterizer core] Support sparse numa id values on all OSes
>  swr: [rasterizer core] Finish SIMD16 PA OPT except tesselation
>  swr: [rasterizer core] Finish SIMD16 PA OPT including tesselation
>  swr: [rasterizer core] backend.h declares gBackendPixelRateTable
>  swr: [rasterizer core/scripts] Autogen backend initialization
>    function(s)
>  swr: [rasterizer archrast] Add additional API events
>  swr: [rasterizer core] Implement SIMD16 GS and STREAMOUT
>  swr: [rasterizer archrast] Fix performance issue with archrast stats
>  swr: [rasterizer common] Add InterpolateComponentFlat utility
>  swr: [rasterizer core] Fix RECT_LIST primitive assembly
>  swr: [rasterizer archrast/scripts] Further archrast cleanups
>  swr: [rasterizer archrast] Remove redundant data from archrast files
>  swr: [rasterizer archrast/core/scripts] Fix archrast multithreading
>    issue
>  swr: [rasterizer core] Implement double pumped SIMD16 TESS
>  swr: [rasterizer archrast] Fix the early and late depthstencil events
>  swr: [rasterizer] Backend code adjustments
>  swr: [rasterizer] Slight assert refactoring
>  swr: [rasterizer core] Allow no arguments to SWR_INVALID macro
>  swr: [rasterizer core/common] Fix the native AVX512 build under ICC
>  swr: [rasterizer core] Fix typo in SIMD16 code path
>  swr: [rasterizer] Convert more SWR_ASSERT(false, ...) to
>    SWR_INVALID(...)
>  swr: [rasterizer jitter] Fix LogicOp blend jit after assert changes
>  swr: [rasterizer core] SIMD16 Frontend WIP - fix tesselation crashes
>  swr: [rasterizer core] Fix trifan regression from 886a196cf2
>  swr: [rasterizer scripts] Put codegen scripts into a separate
>    directory
>  swr: [rasterizer codegen] Quiet gen_backends.py execution
>  swr: [rasterizer codegen] Rewrite gen_llvm_ir_macros.py to use mako
>  swr: [rasterizer codegen] Change backend template comment style
>  swr: [rasterizer codegen] Fix generation of knobs
>  swr: [rasterizer codegen] Rewrite gen_llvm_types.py to use mako
>  swr: [rasterizer codegen] Remove BOM from knob_defs.py
>  swr: [rasterizer] Cleanup naming of codegen files
> 
> src/gallium/drivers/swr/.gitignore                 |   21 +-
> src/gallium/drivers/swr/Makefile.am                |  204 +--
> src/gallium/drivers/swr/SConscript                 |   79 +-
> .../drivers/swr/rasterizer/archrast/archrast.cpp   |  282 ++-
> .../drivers/swr/rasterizer/archrast/archrast.h     |    3 +-
> .../drivers/swr/rasterizer/archrast/eventmanager.h |   14 +-
> .../drivers/swr/rasterizer/archrast/events.proto   |  234 +--
> .../{scripts => codegen}/gen_archrast.py           |   60 +-
> .../drivers/swr/rasterizer/codegen/gen_backends.py |  127 ++
> .../rasterizer/{scripts => codegen}/gen_knobs.py   |    4 +-
> .../swr/rasterizer/codegen/gen_llvm_ir_macros.py   |  286 +++
> .../{jitter/scripts => codegen}/gen_llvm_types.py  |  206 +--
> .../rasterizer/{scripts => codegen}/knob_defs.py   |    2 +-
> .../{scripts => codegen}/mako/__init__.py          |    0
> .../{scripts => codegen}/mako/_ast_util.py         |    0
> .../rasterizer/{scripts => codegen}/mako/ast.py    |    0
> .../rasterizer/{scripts => codegen}/mako/cache.py  |    0
> .../rasterizer/{scripts => codegen}/mako/cmd.py    |    0
> .../{scripts => codegen}/mako/codegen.py           |    0
> .../rasterizer/{scripts => codegen}/mako/compat.py |    0
> .../{scripts => codegen}/mako/exceptions.py        |    0
> .../{scripts => codegen}/mako/filters.py           |    0
> .../rasterizer/{scripts => codegen}/mako/lexer.py  |    0
> .../rasterizer/{scripts => codegen}/mako/lookup.py |    0
> .../{scripts => codegen}/mako/parsetree.py         |    0
> .../rasterizer/{scripts => codegen}/mako/pygen.py  |    0
> .../{scripts => codegen}/mako/pyparser.py          |    0
> .../{scripts => codegen}/mako/runtime.py           |    0
> .../{scripts => codegen}/mako/template.py          |    0
> .../rasterizer/{scripts => codegen}/mako/util.py   |    0
> .../templates/gen_ar_event.cpp}                    |    4 +-
> .../templates/gen_ar_event.hpp}                    |    0
> .../templates/gen_ar_eventhandler.hpp}             |    4 +-
> .../templates/gen_ar_eventhandlerfile.hpp}         |    4 +-
> .../rasterizer/codegen/templates/gen_backend.cpp   |   41 +
> .../rasterizer/codegen/templates/gen_builder.hpp   |   50 +
> .../templates/gen_knobs.cpp}                       |   62 +-
> .../swr/rasterizer/codegen/templates/gen_llvm.hpp  |   73 +
> .../drivers/swr/rasterizer/common/simd16intrin.h   |   26 +-
> .../drivers/swr/rasterizer/common/simdintrin.h     |   24 +-
> .../drivers/swr/rasterizer/common/swr_assert.cpp   |  331 ++--
> .../drivers/swr/rasterizer/common/swr_assert.h     |   74 +-
> src/gallium/drivers/swr/rasterizer/core/api.cpp    |   23 +-
> .../drivers/swr/rasterizer/core/backend.cpp        |  239 +--
> src/gallium/drivers/swr/rasterizer/core/backend.h  |  285 ++-
> src/gallium/drivers/swr/rasterizer/core/binner.cpp |    4 +-
> src/gallium/drivers/swr/rasterizer/core/blend.h    |    6 +-
> src/gallium/drivers/swr/rasterizer/core/clip.cpp   |    4 +-
> src/gallium/drivers/swr/rasterizer/core/clip.h     |    4 +-
> src/gallium/drivers/swr/rasterizer/core/context.h  |    3 +
> .../drivers/swr/rasterizer/core/format_types.h     |   78 +-
> .../drivers/swr/rasterizer/core/frontend.cpp       |  439 ++++-
> src/gallium/drivers/swr/rasterizer/core/pa.h       |  152 +-
> src/gallium/drivers/swr/rasterizer/core/pa_avx.cpp | 1885 +++++++++++++++++---
> .../drivers/swr/rasterizer/core/rasterizer.cpp     |    2 +-
> src/gallium/drivers/swr/rasterizer/core/state.h    |    4 +-
> .../drivers/swr/rasterizer/core/tessellator.h      |    6 +-
> .../drivers/swr/rasterizer/core/threads.cpp        |   86 +-
> .../drivers/swr/rasterizer/core/tilemgr.cpp        |    2 +-
> .../drivers/swr/rasterizer/jitter/JitManager.cpp   |    6 +-
> .../drivers/swr/rasterizer/jitter/blend_jit.cpp    |   49 +-
> .../drivers/swr/rasterizer/jitter/builder.h        |    4 +-
> .../drivers/swr/rasterizer/jitter/builder_misc.cpp |    4 +-
> .../drivers/swr/rasterizer/jitter/fetch_jit.cpp    |   36 +-
> .../drivers/swr/rasterizer/jitter/fetch_jit.h      |    2 +-
> .../jitter/scripts/gen_llvm_ir_macros.py           |  431 -----
> .../swr/rasterizer/jitter/streamout_jit.cpp        |    2 +-
> .../drivers/swr/rasterizer/memory/Convert.h        |   10 +-
> .../drivers/swr/rasterizer/memory/LoadTile.cpp     |    8 +-
> .../drivers/swr/rasterizer/memory/StoreTile.cpp    |    2 +-
> .../swr/rasterizer/memory/TilingFunctions.h        |    6 +-
> .../drivers/swr/rasterizer/memory/tilingtraits.h   |   20 +-
> src/gallium/drivers/swr/swr_shader.cpp             |    4 +-
> src/gallium/drivers/swr/swr_state.cpp              |    4 +-
> src/gallium/drivers/swr/swr_tex_sample.cpp         |    4 +-
> 75 files changed, 3972 insertions(+), 2057 deletions(-)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/gen_archrast.py (73%)
> create mode 100644 src/gallium/drivers/swr/rasterizer/codegen/gen_backends.py
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/gen_knobs.py (94%)
> create mode 100644 src/gallium/drivers/swr/rasterizer/codegen/gen_llvm_ir_macros.py
> rename src/gallium/drivers/swr/rasterizer/{jitter/scripts => codegen}/gen_llvm_types.py (60%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/knob_defs.py (99%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/__init__.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/_ast_util.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/ast.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/cache.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/cmd.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/codegen.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/compat.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/exceptions.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/filters.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/lexer.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/lookup.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/parsetree.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/pygen.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/pyparser.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/runtime.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/template.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts => codegen}/mako/util.py (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts/templates/ar_event_cpp.template => codegen/templates/gen_ar_event.cpp} (96%)
> rename src/gallium/drivers/swr/rasterizer/{scripts/templates/ar_event_h.template => codegen/templates/gen_ar_event.hpp} (100%)
> rename src/gallium/drivers/swr/rasterizer/{scripts/templates/ar_eventhandler_h.template => codegen/templates/gen_ar_eventhandler.hpp} (94%)
> rename src/gallium/drivers/swr/rasterizer/{scripts/templates/ar_eventhandlerfile_h.template => codegen/templates/gen_ar_eventhandlerfile.hpp} (97%)
> create mode 100644 src/gallium/drivers/swr/rasterizer/codegen/templates/gen_backend.cpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/codegen/templates/gen_builder.hpp
> rename src/gallium/drivers/swr/rasterizer/{scripts/templates/knobs.template => codegen/templates/gen_knobs.cpp} (90%)
> create mode 100644 src/gallium/drivers/swr/rasterizer/codegen/templates/gen_llvm.hpp
> delete mode 100644 src/gallium/drivers/swr/rasterizer/jitter/scripts/gen_llvm_ir_macros.py
> 
> -- 
> 2.7.4
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev



More information about the mesa-dev mailing list