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@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev