[Mesa-dev] [PATCH v3 0/6] OpenSWR driver addition

Roland Scheidegger sroland at vmware.com
Mon Feb 29 21:47:17 UTC 2016


Am 29.02.2016 um 22:07 schrieb Rowley, Timothy O:
> Modest ping: haven’t had any comments on these patches for a few
> days.
Patches look ok to me (for the parts I looked at and commented on).

> I don’t have freedesktop git write privileges, so once the patches
> are cleared it would be great if someone could push them.

I don't think that's going to work. A driver needs to be maintained, and
a complete driver where the maintainer doesn't have commit access sounds
like a bad idea to me. You should probably apply for git access, unless
you can find someone else who wants to work on the driver...

Roland


> 
> Thanks.
> 
> -Tim
> 
>> On Feb 24, 2016, at 9:20 PM, Rowley, Timothy O
>> <timothy.o.rowley at intel.com> wrote:
>> 
>> Updating parts 3 through 6 (1 and 2 are still current) based on
>> review comments.  Since we're only targeting linux at the moment,
>> I've removed the scons build and libgl-gdi changes to simplify the
>> review process.  In the future when we get windows working as well
>> we'll get the scons build system changes ready for review.
>> 
>> Tim Rowley (6): OpenSWR driver OpenSWR rasterizer gallium/auxilary:
>> more __cplusplus exports gallium/target-helpers: add OpenSWR
>> driver mesa/build: add OpenSWR to build gallium/docs - add OpenSWR
>> documentation
>> 
>> configure.ac                                       |   38 + 
>> m4/ax_cxx_compile_stdcxx.m4                        |  558 ++ 
>> src/gallium/Makefile.am                            |    6 + 
>> src/gallium/auxiliary/gallivm/lp_bld_flow.h        |    7 + 
>> src/gallium/auxiliary/gallivm/lp_bld_init.h        |    7 + 
>> src/gallium/auxiliary/gallivm/lp_bld_sample.h      |    6 + 
>> src/gallium/auxiliary/gallivm/lp_bld_tgsi.h        |    8 + 
>> .../auxiliary/target-helpers/inline_sw_helper.h    |   12 +- 
>> src/gallium/auxiliary/util/u_dl.h                  |    6 + 
>> src/gallium/docs/source/drivers/openswr.rst        |   21 + 
>> src/gallium/docs/source/drivers/openswr/faq.rst    |  141 + 
>> src/gallium/docs/source/drivers/openswr/knobs.rst  |  114 + 
>> .../docs/source/drivers/openswr/profiling.rst      |   67 + 
>> src/gallium/docs/source/drivers/openswr/usage.rst  |   38 + 
>> src/gallium/drivers/swr/.clang-format              |   64 + 
>> src/gallium/drivers/swr/Makefile.am                |   31 + 
>> src/gallium/drivers/swr/Makefile.sources           |   23 + 
>> src/gallium/drivers/swr/Makefile.sources-arch      |  111 + 
>> src/gallium/drivers/swr/avx/Makefile.am            |   99 + 
>> src/gallium/drivers/swr/avx2/Makefile.am           |   99 + 
>> .../drivers/swr/rasterizer/common/containers.hpp   |  208 + 
>> .../drivers/swr/rasterizer/common/formats.cpp      | 5469
>> ++++++++++++++++++++ .../drivers/swr/rasterizer/common/formats.h
>> |  251 + src/gallium/drivers/swr/rasterizer/common/isa.hpp  |  235
>> + src/gallium/drivers/swr/rasterizer/common/os.h     |  221 + 
>> .../swr/rasterizer/common/rdtsc_buckets.cpp        |  188 + 
>> .../drivers/swr/rasterizer/common/rdtsc_buckets.h  |  229 + 
>> .../swr/rasterizer/common/rdtsc_buckets_shared.h   |  167 + 
>> .../drivers/swr/rasterizer/common/simdintrin.h     |  787 +++ 
>> .../drivers/swr/rasterizer/common/swr_assert.cpp   |  238 + 
>> .../drivers/swr/rasterizer/common/swr_assert.h     |  109 + 
>> src/gallium/drivers/swr/rasterizer/core/api.cpp    | 1511 ++++++ 
>> src/gallium/drivers/swr/rasterizer/core/api.h      |  500 ++ 
>> src/gallium/drivers/swr/rasterizer/core/arena.cpp  |  166 + 
>> src/gallium/drivers/swr/rasterizer/core/arena.h    |   69 + 
>> .../drivers/swr/rasterizer/core/backend.cpp        | 1899 +++++++ 
>> src/gallium/drivers/swr/rasterizer/core/backend.h  |   59 + 
>> src/gallium/drivers/swr/rasterizer/core/blend.h    |  318 ++ 
>> src/gallium/drivers/swr/rasterizer/core/clip.cpp   |  201 + 
>> src/gallium/drivers/swr/rasterizer/core/clip.h     |  868 ++++ 
>> src/gallium/drivers/swr/rasterizer/core/context.h  |  495 ++ 
>> .../drivers/swr/rasterizer/core/depthstencil.h     |  245 + 
>> src/gallium/drivers/swr/rasterizer/core/fifo.hpp   |  136 + 
>> .../swr/rasterizer/core/format_conversion.h        |  196 + 
>> .../drivers/swr/rasterizer/core/format_traits.h    | 3548
>> +++++++++++++ .../drivers/swr/rasterizer/core/format_types.h     |
>> 1075 ++++ .../drivers/swr/rasterizer/core/frontend.cpp       | 2345
>> +++++++++ src/gallium/drivers/swr/rasterizer/core/frontend.h |  327
>> ++ src/gallium/drivers/swr/rasterizer/core/knobs.h    |  142 + 
>> .../drivers/swr/rasterizer/core/knobs_init.h       |   98 + 
>> .../drivers/swr/rasterizer/core/multisample.cpp    |   51 + 
>> .../drivers/swr/rasterizer/core/multisample.h      |  620 +++ 
>> src/gallium/drivers/swr/rasterizer/core/pa.h       | 1208 +++++ 
>> src/gallium/drivers/swr/rasterizer/core/pa_avx.cpp | 1177 +++++ 
>> .../drivers/swr/rasterizer/core/rasterizer.cpp     | 1393 +++++ 
>> .../drivers/swr/rasterizer/core/rasterizer.h       |   35 + 
>> .../drivers/swr/rasterizer/core/rdtsc_core.cpp     |   91 + 
>> .../drivers/swr/rasterizer/core/rdtsc_core.h       |  177 + 
>> src/gallium/drivers/swr/rasterizer/core/state.h    | 1027 ++++ 
>> .../drivers/swr/rasterizer/core/tessellator.h      |   88 + 
>> .../drivers/swr/rasterizer/core/threads.cpp        |  962 ++++ 
>> src/gallium/drivers/swr/rasterizer/core/threads.h  |   63 + 
>> .../drivers/swr/rasterizer/core/tilemgr.cpp        |  105 + 
>> src/gallium/drivers/swr/rasterizer/core/tilemgr.h  |  390 ++ 
>> src/gallium/drivers/swr/rasterizer/core/utils.cpp  |  148 + 
>> src/gallium/drivers/swr/rasterizer/core/utils.h    |  831 +++ 
>> .../drivers/swr/rasterizer/jitter/JitManager.cpp   |  313 ++ 
>> .../drivers/swr/rasterizer/jitter/JitManager.h     |  186 + 
>> .../drivers/swr/rasterizer/jitter/blend_jit.cpp    |  772 +++ 
>> .../drivers/swr/rasterizer/jitter/blend_jit.h      |   93 + 
>> .../drivers/swr/rasterizer/jitter/builder.cpp      |   71 + 
>> .../drivers/swr/rasterizer/jitter/builder.h        |   71 + 
>> .../drivers/swr/rasterizer/jitter/builder_math.h   |   34 + 
>> .../drivers/swr/rasterizer/jitter/builder_misc.cpp | 1447 ++++++ 
>> .../drivers/swr/rasterizer/jitter/builder_misc.h   |  149 + 
>> .../drivers/swr/rasterizer/jitter/fetch_jit.cpp    | 1431 +++++ 
>> .../drivers/swr/rasterizer/jitter/fetch_jit.h      |  128 + 
>> .../drivers/swr/rasterizer/jitter/jit_api.h        |  108 + 
>> .../jitter/scripts/gen_llvm_ir_macros.py           |  401 ++ 
>> .../rasterizer/jitter/scripts/gen_llvm_types.py    |  341 ++ 
>> .../swr/rasterizer/jitter/streamout_jit.cpp        |  357 ++ 
>> .../drivers/swr/rasterizer/jitter/streamout_jit.h  |   94 + 
>> .../drivers/swr/rasterizer/memory/ClearTile.cpp    |  287 + 
>> .../drivers/swr/rasterizer/memory/Convert.h        |  698 +++ 
>> .../drivers/swr/rasterizer/memory/LoadTile.cpp     |  396 ++ 
>> .../drivers/swr/rasterizer/memory/StoreTile.cpp    | 1717 ++++++ 
>> .../swr/rasterizer/memory/TilingFunctions.h        |  581 +++ 
>> .../drivers/swr/rasterizer/memory/tilingtraits.h   |  263 + 
>> .../drivers/swr/rasterizer/scripts/gen_knobs.py    |   79 + 
>> .../drivers/swr/rasterizer/scripts/knob_defs.py    |  226 + 
>> .../swr/rasterizer/scripts/mako/__init__.py        |    8 + 
>> .../swr/rasterizer/scripts/mako/_ast_util.py       |  845 +++ 
>> .../drivers/swr/rasterizer/scripts/mako/ast.py     |  178 + 
>> .../drivers/swr/rasterizer/scripts/mako/cache.py   |  238 + 
>> .../drivers/swr/rasterizer/scripts/mako/cmd.py     |   62 + 
>> .../drivers/swr/rasterizer/scripts/mako/codegen.py | 1237 +++++ 
>> .../drivers/swr/rasterizer/scripts/mako/compat.py  |  174 + 
>> .../swr/rasterizer/scripts/mako/exceptions.py      |  373 ++ 
>> .../drivers/swr/rasterizer/scripts/mako/filters.py |  201 + 
>> .../drivers/swr/rasterizer/scripts/mako/lexer.py   |  441 ++ 
>> .../drivers/swr/rasterizer/scripts/mako/lookup.py  |  359 ++ 
>> .../swr/rasterizer/scripts/mako/parsetree.py       |  594 +++ 
>> .../drivers/swr/rasterizer/scripts/mako/pygen.py   |  299 ++ 
>> .../swr/rasterizer/scripts/mako/pyparser.py        |  232 + 
>> .../drivers/swr/rasterizer/scripts/mako/runtime.py |  878 ++++ 
>> .../swr/rasterizer/scripts/mako/template.py        |  705 +++ 
>> .../drivers/swr/rasterizer/scripts/mako/util.py    |  360 ++ 
>> .../rasterizer/scripts/templates/knobs.template    |  141 + 
>> src/gallium/drivers/swr/swr_clear.cpp              |  142 + 
>> src/gallium/drivers/swr/swr_context.cpp            |  407 ++ 
>> src/gallium/drivers/swr/swr_context.h              |  182 + 
>> src/gallium/drivers/swr/swr_context_llvm.h         |  124 + 
>> src/gallium/drivers/swr/swr_draw.cpp               |  271 + 
>> src/gallium/drivers/swr/swr_fence.cpp              |  143 + 
>> src/gallium/drivers/swr/swr_fence.h                |   70 + 
>> src/gallium/drivers/swr/swr_loader.cpp             |   67 + 
>> src/gallium/drivers/swr/swr_memory.h               |   99 + 
>> src/gallium/drivers/swr/swr_public.h               |   46 + 
>> src/gallium/drivers/swr/swr_query.cpp              |  334 ++ 
>> src/gallium/drivers/swr/swr_query.h                |   46 + 
>> src/gallium/drivers/swr/swr_resource.h             |   97 + 
>> src/gallium/drivers/swr/swr_scratch.cpp            |  116 + 
>> src/gallium/drivers/swr/swr_scratch.h              |   63 + 
>> src/gallium/drivers/swr/swr_screen.cpp             |  746 +++ 
>> src/gallium/drivers/swr/swr_screen.h               |   52 + 
>> src/gallium/drivers/swr/swr_shader.cpp             |  591 +++ 
>> src/gallium/drivers/swr/swr_shader.h               |   60 + 
>> src/gallium/drivers/swr/swr_state.cpp              | 1370 +++++ 
>> src/gallium/drivers/swr/swr_state.h                |  307 ++ 
>> src/gallium/drivers/swr/swr_tex_sample.cpp         |  338 ++ 
>> src/gallium/drivers/swr/swr_tex_sample.h           |   47 + 
>> src/gallium/targets/libgl-xlib/Makefile.am         |    5 + 
>> src/gallium/targets/osmesa/Makefile.am             |    6 + 133
>> files changed, 55418 insertions(+), 1 deletion(-) create mode
>> 100644 m4/ax_cxx_compile_stdcxx.m4 create mode 100644
>> src/gallium/docs/source/drivers/openswr.rst create mode 100644
>> src/gallium/docs/source/drivers/openswr/faq.rst create mode 100644
>> src/gallium/docs/source/drivers/openswr/knobs.rst create mode
>> 100644 src/gallium/docs/source/drivers/openswr/profiling.rst create
>> mode 100644 src/gallium/docs/source/drivers/openswr/usage.rst 
>> create mode 100644 src/gallium/drivers/swr/.clang-format create
>> mode 100644 src/gallium/drivers/swr/Makefile.am create mode 100644
>> src/gallium/drivers/swr/Makefile.sources create mode 100644
>> src/gallium/drivers/swr/Makefile.sources-arch create mode 100644
>> src/gallium/drivers/swr/avx/Makefile.am create mode 100644
>> src/gallium/drivers/swr/avx2/Makefile.am create mode 100644
>> src/gallium/drivers/swr/rasterizer/common/containers.hpp create
>> mode 100644 src/gallium/drivers/swr/rasterizer/common/formats.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/common/formats.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/common/isa.hpp create
>> mode 100644 src/gallium/drivers/swr/rasterizer/common/os.h create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/common/rdtsc_buckets.cpp create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/common/rdtsc_buckets.h create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/common/rdtsc_buckets_shared.h 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/common/simdintrin.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/common/swr_assert.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/common/swr_assert.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/api.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/api.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/arena.cpp create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/arena.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/backend.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/backend.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/blend.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/clip.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/clip.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/context.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/depthstencil.h 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/fifo.hpp create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/format_conversion.h create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/core/format_traits.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/format_types.h 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/frontend.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/frontend.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/knobs.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/knobs_init.h 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/multisample.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/multisample.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/pa.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/pa_avx.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/rasterizer.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/rasterizer.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/rdtsc_core.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/rdtsc_core.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/state.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/tessellator.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/threads.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/threads.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/tilemgr.cpp create
>> mode 100644 src/gallium/drivers/swr/rasterizer/core/tilemgr.h 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/core/utils.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/core/utils.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/jitter/JitManager.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/JitManager.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/jitter/blend_jit.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/blend_jit.h create mode
>> 100644 src/gallium/drivers/swr/rasterizer/jitter/builder.cpp create
>> mode 100644 src/gallium/drivers/swr/rasterizer/jitter/builder.h 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/builder_math.h create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/builder_misc.h create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/fetch_jit.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/jitter/fetch_jit.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/jitter/jit_api.h 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/scripts/gen_llvm_ir_macros.py
>>
>> 
create mode 100644
src/gallium/drivers/swr/rasterizer/jitter/scripts/gen_llvm_types.py
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/streamout_jit.cpp create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/jitter/streamout_jit.h create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/memory/ClearTile.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/memory/Convert.h create
>> mode 100644 src/gallium/drivers/swr/rasterizer/memory/LoadTile.cpp 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/memory/StoreTile.cpp create mode
>> 100644 src/gallium/drivers/swr/rasterizer/memory/TilingFunctions.h 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/memory/tilingtraits.h create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/gen_knobs.py create mode
>> 100644 src/gallium/drivers/swr/rasterizer/scripts/knob_defs.py 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/__init__.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/_ast_util.py create
>> mode 100644 src/gallium/drivers/swr/rasterizer/scripts/mako/ast.py 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/cache.py create
>> mode 100644 src/gallium/drivers/swr/rasterizer/scripts/mako/cmd.py 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/codegen.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/compat.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/exceptions.py 
>> create mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/filters.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/lexer.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/lookup.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/parsetree.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/pygen.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/pyparser.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/runtime.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/template.py create
>> mode 100644
>> src/gallium/drivers/swr/rasterizer/scripts/mako/util.py create mode
>> 100644
>> src/gallium/drivers/swr/rasterizer/scripts/templates/knobs.template
>>
>> 
create mode 100644 src/gallium/drivers/swr/swr_clear.cpp
>> create mode 100644 src/gallium/drivers/swr/swr_context.cpp create
>> mode 100644 src/gallium/drivers/swr/swr_context.h create mode
>> 100644 src/gallium/drivers/swr/swr_context_llvm.h create mode
>> 100644 src/gallium/drivers/swr/swr_draw.cpp create mode 100644
>> src/gallium/drivers/swr/swr_fence.cpp create mode 100644
>> src/gallium/drivers/swr/swr_fence.h create mode 100644
>> src/gallium/drivers/swr/swr_loader.cpp create mode 100644
>> src/gallium/drivers/swr/swr_memory.h create mode 100644
>> src/gallium/drivers/swr/swr_public.h create mode 100644
>> src/gallium/drivers/swr/swr_query.cpp create mode 100644
>> src/gallium/drivers/swr/swr_query.h create mode 100644
>> src/gallium/drivers/swr/swr_resource.h create mode 100644
>> src/gallium/drivers/swr/swr_scratch.cpp create mode 100644
>> src/gallium/drivers/swr/swr_scratch.h create mode 100644
>> src/gallium/drivers/swr/swr_screen.cpp create mode 100644
>> src/gallium/drivers/swr/swr_screen.h create mode 100644
>> src/gallium/drivers/swr/swr_shader.cpp create mode 100644
>> src/gallium/drivers/swr/swr_shader.h create mode 100644
>> src/gallium/drivers/swr/swr_state.cpp create mode 100644
>> src/gallium/drivers/swr/swr_state.h create mode 100644
>> src/gallium/drivers/swr/swr_tex_sample.cpp create mode 100644
>> src/gallium/drivers/swr/swr_tex_sample.h
>> 
>> -- 1.9.1
>> 
> 
> _______________________________________________ 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