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

2016-07-18 Thread Tim Rowley
Highlights are more avx512 work and api cleanup.

Tim Rowley (11):
  swr: [rasterizer core] viewport rounding for disabled scissor
  swr: [rasterizer core] avx512 work in progress initial step
  swr: [rasterizer jitter] rework vertex/instance ID storage in fetch
  swr: [rasterizer common] icc declspec definitions
  swr: [rasterizer] attribute swizzling and linkage
  swr: [rasterizer core] ensure adjacent topologies use the cut-aware PA
  swr: [rasterizer core] support range of values in TemplateArgUnroller
  swr: [rasterizer core] centroid correction
  swr: [rasterizer core] rename *_MAX enum values to *_COUNT
  swr: [rasterizer core] fix for possible int32 overflow condition
  swr: [rasterizer core] introduce simd16intrin.h

 src/gallium/drivers/swr/Makefile.sources   |   1 +
 src/gallium/drivers/swr/rasterizer/common/os.h |  18 +-
 .../drivers/swr/rasterizer/common/simd16intrin.h   | 717 +
 .../drivers/swr/rasterizer/common/simdintrin.h | 650 +++
 src/gallium/drivers/swr/rasterizer/core/api.cpp|  68 +-
 src/gallium/drivers/swr/rasterizer/core/api.h  |  13 -
 .../drivers/swr/rasterizer/core/backend.cpp|  44 +-
 src/gallium/drivers/swr/rasterizer/core/clip.h |   9 +-
 src/gallium/drivers/swr/rasterizer/core/context.h  |  11 +-
 .../drivers/swr/rasterizer/core/format_types.h | 194 +-
 .../drivers/swr/rasterizer/core/frontend.cpp   | 221 ---
 src/gallium/drivers/swr/rasterizer/core/knobs.h|  46 +-
 .../drivers/swr/rasterizer/core/multisample.h  |   4 +-
 src/gallium/drivers/swr/rasterizer/core/pa.h   |  18 +-
 .../drivers/swr/rasterizer/core/rasterizer.cpp |   8 +-
 src/gallium/drivers/swr/rasterizer/core/state.h|  40 +-
 src/gallium/drivers/swr/rasterizer/core/utils.h| 236 ++-
 .../drivers/swr/rasterizer/jitter/fetch_jit.cpp|  78 +--
 .../drivers/swr/rasterizer/jitter/fetch_jit.h  |  32 +-
 src/gallium/drivers/swr/swr_shader.cpp |  12 -
 src/gallium/drivers/swr/swr_state.cpp  |  13 +-
 src/gallium/drivers/swr/swr_state.h|   1 -
 22 files changed, 2133 insertions(+), 301 deletions(-)
 create mode 100644 src/gallium/drivers/swr/rasterizer/common/simd16intrin.h

-- 
1.9.1

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2016-05-05 Thread Cherniak, Bruce
Reviewed-by: Bruce Cherniak  

> On May 3, 2016, at 11:13 AM, Tim Rowley  wrote:
> 
> Smallish changes this time around, some changes that hopefully
> start improving coverity's opinion of the rasterizer, and a small
> performance tweak.
> 
> Tim Rowley (11):
>  swr: [rasterizer] Whitespace cleanup and misc changes
>  swr: [rasterizer core] Fix threadviz support in buckets
>  swr: [rasterizer core] Fix thread allocation
>  swr: [rasterizer jitter] Add asserts for supported formats in fetch
>shader
>  swr: [rasterizer memory] Add missing store tiles function
>  swr: [rasterizer jitter] Fix printing bugs for tracing.
>  swr: [rasterizer] Add support for X24_TYPELESS_G8_UINT format
>  swr: [rasterizer] Miscellaneous backend changes
>  swr: [rasterizer] Add SWR_ASSUME / SWR_ASSUME_ASSERT macros
>  swr: [rasterizer] Small warning cleanup
>  swr: [rasterizer core] Faster modulo operator in ProcessVerts
> 
> .../drivers/swr/rasterizer/common/formats.cpp  |  25 +++--
> .../drivers/swr/rasterizer/common/formats.h|   1 +
> src/gallium/drivers/swr/rasterizer/common/os.h |   1 +
> .../swr/rasterizer/common/rdtsc_buckets.cpp|  12 +++
> .../drivers/swr/rasterizer/common/rdtsc_buckets.h  |  12 +--
> .../drivers/swr/rasterizer/common/simdintrin.h |  20 
> .../drivers/swr/rasterizer/common/swr_assert.h |  50 +-
> src/gallium/drivers/swr/rasterizer/core/arena.h|  16 ++--
> .../drivers/swr/rasterizer/core/backend.cpp|  26 ++---
> src/gallium/drivers/swr/rasterizer/core/backend.h  |   7 +-
> .../drivers/swr/rasterizer/core/format_traits.h|  22 +
> .../drivers/swr/rasterizer/core/frontend.cpp   |   5 +-
> src/gallium/drivers/swr/rasterizer/core/pa.h   |   5 +-
> .../drivers/swr/rasterizer/core/rdtsc_core.cpp |   2 +-
> .../drivers/swr/rasterizer/core/threads.cpp|  64 +
> .../drivers/swr/rasterizer/jitter/JitManager.h |   7 --
> .../drivers/swr/rasterizer/jitter/blend_jit.h  |   1 -
> .../drivers/swr/rasterizer/jitter/builder_misc.cpp | 105 +
> .../drivers/swr/rasterizer/jitter/fetch_jit.cpp|   2 +
> .../drivers/swr/rasterizer/jitter/jit_api.h|   1 -
> .../drivers/swr/rasterizer/memory/StoreTile.cpp|   5 +-
> .../rasterizer/scripts/templates/knobs.template|   3 -
> src/gallium/drivers/swr/swr_state.h|   1 +
> 23 files changed, 225 insertions(+), 168 deletions(-)
> 
> -- 
> 1.9.1
> 
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2016-05-03 Thread Tim Rowley
Smallish changes this time around, some changes that hopefully
start improving coverity's opinion of the rasterizer, and a small
performance tweak.

Tim Rowley (11):
  swr: [rasterizer] Whitespace cleanup and misc changes
  swr: [rasterizer core] Fix threadviz support in buckets
  swr: [rasterizer core] Fix thread allocation
  swr: [rasterizer jitter] Add asserts for supported formats in fetch
shader
  swr: [rasterizer memory] Add missing store tiles function
  swr: [rasterizer jitter] Fix printing bugs for tracing.
  swr: [rasterizer] Add support for X24_TYPELESS_G8_UINT format
  swr: [rasterizer] Miscellaneous backend changes
  swr: [rasterizer] Add SWR_ASSUME / SWR_ASSUME_ASSERT macros
  swr: [rasterizer] Small warning cleanup
  swr: [rasterizer core] Faster modulo operator in ProcessVerts

 .../drivers/swr/rasterizer/common/formats.cpp  |  25 +++--
 .../drivers/swr/rasterizer/common/formats.h|   1 +
 src/gallium/drivers/swr/rasterizer/common/os.h |   1 +
 .../swr/rasterizer/common/rdtsc_buckets.cpp|  12 +++
 .../drivers/swr/rasterizer/common/rdtsc_buckets.h  |  12 +--
 .../drivers/swr/rasterizer/common/simdintrin.h |  20 
 .../drivers/swr/rasterizer/common/swr_assert.h |  50 +-
 src/gallium/drivers/swr/rasterizer/core/arena.h|  16 ++--
 .../drivers/swr/rasterizer/core/backend.cpp|  26 ++---
 src/gallium/drivers/swr/rasterizer/core/backend.h  |   7 +-
 .../drivers/swr/rasterizer/core/format_traits.h|  22 +
 .../drivers/swr/rasterizer/core/frontend.cpp   |   5 +-
 src/gallium/drivers/swr/rasterizer/core/pa.h   |   5 +-
 .../drivers/swr/rasterizer/core/rdtsc_core.cpp |   2 +-
 .../drivers/swr/rasterizer/core/threads.cpp|  64 +
 .../drivers/swr/rasterizer/jitter/JitManager.h |   7 --
 .../drivers/swr/rasterizer/jitter/blend_jit.h  |   1 -
 .../drivers/swr/rasterizer/jitter/builder_misc.cpp | 105 +
 .../drivers/swr/rasterizer/jitter/fetch_jit.cpp|   2 +
 .../drivers/swr/rasterizer/jitter/jit_api.h|   1 -
 .../drivers/swr/rasterizer/memory/StoreTile.cpp|   5 +-
 .../rasterizer/scripts/templates/knobs.template|   3 -
 src/gallium/drivers/swr/swr_state.h|   1 +
 23 files changed, 225 insertions(+), 168 deletions(-)

-- 
1.9.1

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2016-04-22 Thread Cherniak, Bruce
Reviewed-by: Bruce Cherniak  On Apr 14, 2016, at 2:53 PM, Tim Rowley  wrote:
> 
> Another batch of updates to the swr rasterizer.  No huge new features,
> but should fix at least one of the coverity flagged issues.
> 
> Tim Rowley (11):
>  swr: [rasterizer core] Use CS spill/fill size in core
>  swr: [rasterizer fetch] Add support for fetching non-uniform component
>formats
>  swr: [rasterizer core] Fix thread binding for 32-bit windows
>  swr: [rasterizer core] Fix global arena allocator bug
>  swr: [rasterizer core] Arena: make most allocated blocks the same size
>  swr: [rasterizer core] TemplateArgUnroller
>  swr: [rasterizer] Interpolation utility functions
>  swr: [rasterizer scripts] Knob scripts tweaks
>  swr: [rasterizer] Small cleanups
>  swr: [rasterizer core] CompleteDrawContext changes for gcc
>  swr: [rasterizer memory] Constify load tiles
> 
> .../drivers/swr/rasterizer/common/simdintrin.h |  51 +-
> src/gallium/drivers/swr/rasterizer/core/api.cpp|  45 +
> src/gallium/drivers/swr/rasterizer/core/api.h  |   6 +-
> src/gallium/drivers/swr/rasterizer/core/arena.h| 146 ++--
> .../drivers/swr/rasterizer/core/backend.cpp|   6 +-
> src/gallium/drivers/swr/rasterizer/core/context.h  |   1 +
> .../drivers/swr/rasterizer/core/frontend.cpp   | 123 +++--
> src/gallium/drivers/swr/rasterizer/core/frontend.h |  24 ++-
> src/gallium/drivers/swr/rasterizer/core/pa.h   |   6 +-
> src/gallium/drivers/swr/rasterizer/core/state.h|   2 -
> .../drivers/swr/rasterizer/core/threads.cpp|  31 +++-
> src/gallium/drivers/swr/rasterizer/core/utils.cpp  |  31 ++--
> src/gallium/drivers/swr/rasterizer/core/utils.h|  34 +++-
> .../drivers/swr/rasterizer/jitter/JitManager.cpp   |   6 -
> .../drivers/swr/rasterizer/jitter/fetch_jit.cpp| 190 -
> .../drivers/swr/rasterizer/jitter/jit_api.h|   3 +
> .../drivers/swr/rasterizer/memory/LoadTile.cpp |  12 +-
> .../drivers/swr/rasterizer/memory/StoreTile.cpp|   1 -
> .../drivers/swr/rasterizer/scripts/knob_defs.py|   4 +-
> .../rasterizer/scripts/templates/knobs.template|  25 ++-
> src/gallium/drivers/swr/swr_memory.h   |   2 +-
> 21 files changed, 544 insertions(+), 205 deletions(-)
> 
> -- 
> 1.9.1
> 
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2016-04-14 Thread Tim Rowley
Another batch of updates to the swr rasterizer.  No huge new features,
but should fix at least one of the coverity flagged issues.

Tim Rowley (11):
  swr: [rasterizer core] Use CS spill/fill size in core
  swr: [rasterizer fetch] Add support for fetching non-uniform component
formats
  swr: [rasterizer core] Fix thread binding for 32-bit windows
  swr: [rasterizer core] Fix global arena allocator bug
  swr: [rasterizer core] Arena: make most allocated blocks the same size
  swr: [rasterizer core] TemplateArgUnroller
  swr: [rasterizer] Interpolation utility functions
  swr: [rasterizer scripts] Knob scripts tweaks
  swr: [rasterizer] Small cleanups
  swr: [rasterizer core] CompleteDrawContext changes for gcc
  swr: [rasterizer memory] Constify load tiles

 .../drivers/swr/rasterizer/common/simdintrin.h |  51 +-
 src/gallium/drivers/swr/rasterizer/core/api.cpp|  45 +
 src/gallium/drivers/swr/rasterizer/core/api.h  |   6 +-
 src/gallium/drivers/swr/rasterizer/core/arena.h| 146 ++--
 .../drivers/swr/rasterizer/core/backend.cpp|   6 +-
 src/gallium/drivers/swr/rasterizer/core/context.h  |   1 +
 .../drivers/swr/rasterizer/core/frontend.cpp   | 123 +++--
 src/gallium/drivers/swr/rasterizer/core/frontend.h |  24 ++-
 src/gallium/drivers/swr/rasterizer/core/pa.h   |   6 +-
 src/gallium/drivers/swr/rasterizer/core/state.h|   2 -
 .../drivers/swr/rasterizer/core/threads.cpp|  31 +++-
 src/gallium/drivers/swr/rasterizer/core/utils.cpp  |  31 ++--
 src/gallium/drivers/swr/rasterizer/core/utils.h|  34 +++-
 .../drivers/swr/rasterizer/jitter/JitManager.cpp   |   6 -
 .../drivers/swr/rasterizer/jitter/fetch_jit.cpp| 190 -
 .../drivers/swr/rasterizer/jitter/jit_api.h|   3 +
 .../drivers/swr/rasterizer/memory/LoadTile.cpp |  12 +-
 .../drivers/swr/rasterizer/memory/StoreTile.cpp|   1 -
 .../drivers/swr/rasterizer/scripts/knob_defs.py|   4 +-
 .../rasterizer/scripts/templates/knobs.template|  25 ++-
 src/gallium/drivers/swr/swr_memory.h   |   2 +-
 21 files changed, 544 insertions(+), 205 deletions(-)

-- 
1.9.1

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2016-04-02 Thread Brian Paul

On 04/01/2016 06:22 PM, Tim Rowley wrote:

More development of the swr rasterizer.

Tim Rowley (11):
   swr: [rasterizer] Misc fixes identified by static code analysis
   swr: [rasterizer core] Affinitize thread scratch space to numa node of
 worker
   swr: [rasterizer common] win32 build fixups
   swr: [rasterizer core] Quantize depth to depth buffer precision prior
 to depth test/write. Fixes z-fighting issues.
   swr: [rasterizer] Ensure correct alignment of stack variables used as
 vectors
   swr: [rasterizer core] Replace all naked OSALIGN macro uses with
 OSALIGNSIMD / OSALIGNLINE
   swr: [rasterizer] Avoid segv in thread creation on machines with
 non-consecutive NUMA topology.
   swr: [rasterizer core] Add experimental support for hyper-threaded
 front-end
   swr: [rasterizer core] Put DRAW_CONTEXT on a diet
   swr: [rasterizer] Put in rudimentary garbage collection for the global
 arena allocator
   swr: [rasterizer core] warning cleanup


I don't know if one of your coworkers will be reviewing these patches.
If not, Acked-by: Brian Paul 


___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2016-04-01 Thread Tim Rowley
More development of the swr rasterizer.

Tim Rowley (11):
  swr: [rasterizer] Misc fixes identified by static code analysis
  swr: [rasterizer core] Affinitize thread scratch space to numa node of
worker
  swr: [rasterizer common] win32 build fixups
  swr: [rasterizer core] Quantize depth to depth buffer precision prior
to depth test/write. Fixes z-fighting issues.
  swr: [rasterizer] Ensure correct alignment of stack variables used as
vectors
  swr: [rasterizer core] Replace all naked OSALIGN macro uses with
OSALIGNSIMD / OSALIGNLINE
  swr: [rasterizer] Avoid segv in thread creation on machines with
non-consecutive NUMA topology.
  swr: [rasterizer core] Add experimental support for hyper-threaded
front-end
  swr: [rasterizer core] Put DRAW_CONTEXT on a diet
  swr: [rasterizer] Put in rudimentary garbage collection for the global
arena allocator
  swr: [rasterizer core] warning cleanup

 src/gallium/drivers/swr/rasterizer/common/os.h |  10 +-
 src/gallium/drivers/swr/rasterizer/core/api.cpp| 100 +++--
 src/gallium/drivers/swr/rasterizer/core/arena.h| 232 +++--
 .../drivers/swr/rasterizer/core/backend.cpp|  39 ++--
 src/gallium/drivers/swr/rasterizer/core/backend.h  |   2 +-
 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  |  47 +++--
 .../drivers/swr/rasterizer/core/depthstencil.h |  40 +++-
 .../drivers/swr/rasterizer/core/frontend.cpp   |  10 +-
 src/gallium/drivers/swr/rasterizer/core/knobs.h|   3 +
 src/gallium/drivers/swr/rasterizer/core/pa.h   |  14 +-
 .../drivers/swr/rasterizer/core/rasterizer.cpp |  16 +-
 src/gallium/drivers/swr/rasterizer/core/state.h|   1 +
 .../drivers/swr/rasterizer/core/threads.cpp| 141 ++---
 src/gallium/drivers/swr/rasterizer/core/threads.h  |   4 +-
 .../drivers/swr/rasterizer/core/tilemgr.cpp|  22 --
 src/gallium/drivers/swr/rasterizer/core/tilemgr.h  |   8 +-
 .../drivers/swr/rasterizer/scripts/knob_defs.py|  19 ++
 19 files changed, 506 insertions(+), 210 deletions(-)

-- 
1.9.1

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev