Mesa (master): swr/rast: Switch intrinsic usage to SIMDLib

Tim Rowley torowley at kemper.freedesktop.org
Fri Jun 30 19:18:03 UTC 2017


Module: Mesa
Branch: master
Commit: fc4f6c44c479a97b9cad5d08f0d9cd71a8e1e5f8
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fc4f6c44c479a97b9cad5d08f0d9cd71a8e1e5f8

Author: Tim Rowley <timothy.o.rowley at intel.com>
Date:   Thu Jun 15 15:24:07 2017 -0500

swr/rast: Switch intrinsic usage to SIMDLib

Switch from a macro-based simd intrinsics layer to a more C++
implementation, which also adds AVX512 optimizations to 128-bit
and 256-bit SIMD.

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

---

 src/gallium/drivers/swr/Makefile.sources           |   13 +
 src/gallium/drivers/swr/rasterizer/common/intrin.h |  102 +-
 .../drivers/swr/rasterizer/common/simd16intrin.h   | 1223 +++----------------
 .../drivers/swr/rasterizer/common/simdintrin.h     | 1257 ++++----------------
 .../drivers/swr/rasterizer/common/simdlib.hpp      |  550 +++++++++
 .../swr/rasterizer/common/simdlib_128_avx.inl      |  545 +++++++++
 .../swr/rasterizer/common/simdlib_128_avx2.inl     |   68 ++
 .../swr/rasterizer/common/simdlib_128_avx512.inl   |  408 +++++++
 .../swr/rasterizer/common/simdlib_256_avx.inl      |  757 ++++++++++++
 .../swr/rasterizer/common/simdlib_256_avx2.inl     |  234 ++++
 .../swr/rasterizer/common/simdlib_256_avx512.inl   |  409 +++++++
 .../swr/rasterizer/common/simdlib_512_avx512.inl   |  682 +++++++++++
 .../rasterizer/common/simdlib_512_avx512_masks.inl |   27 +
 .../swr/rasterizer/common/simdlib_512_emu.inl      |  842 +++++++++++++
 .../rasterizer/common/simdlib_512_emu_masks.inl    |   28 +
 .../swr/rasterizer/common/simdlib_interface.hpp    |  428 +++++++
 .../swr/rasterizer/common/simdlib_types.hpp        |  377 ++++++
 .../drivers/swr/rasterizer/core/backend_impl.h     |   56 +-
 src/gallium/drivers/swr/rasterizer/core/binner.cpp |  283 ++---
 src/gallium/drivers/swr/rasterizer/core/clip.cpp   |    6 +-
 src/gallium/drivers/swr/rasterizer/core/clip.h     |   10 +-
 src/gallium/drivers/swr/rasterizer/core/context.h  |    2 +-
 .../swr/rasterizer/core/format_conversion.h        |    8 +-
 .../drivers/swr/rasterizer/core/format_types.h     |   30 +-
 .../drivers/swr/rasterizer/core/format_utils.h     |  268 ++---
 .../drivers/swr/rasterizer/core/frontend.cpp       |    6 +-
 src/gallium/drivers/swr/rasterizer/core/frontend.h |    4 +-
 src/gallium/drivers/swr/rasterizer/core/pa.h       |   16 +-
 src/gallium/drivers/swr/rasterizer/core/pa_avx.cpp |  106 +-
 .../drivers/swr/rasterizer/memory/StoreTile.h      |  156 +--
 30 files changed, 6222 insertions(+), 2679 deletions(-)

Diff:   http://cgit.freedesktop.org/mesa/mesa/diff/?id=fc4f6c44c479a97b9cad5d08f0d9cd71a8e1e5f8



More information about the mesa-commit mailing list