Mesa (master): draw: add main tessellation code
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Feb 28 08:53:33 UTC 2020
Module: Mesa
Branch: master
Commit: 0d02a7b8ca794a594c2e9cc5e6d63dc591593105
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0d02a7b8ca794a594c2e9cc5e6d63dc591593105
Author: Dave Airlie <airlied at redhat.com>
Date: Mon Feb 17 17:09:10 2020 +1000
draw: add main tessellation code
This is the bulk of the llvm shader builders and tessellation
execution code.
TCS uses a coroutine launcher like compute shaders to handle
barriers. It executes 4-wide with one input vertex per lane.
Tessellation happens before the TES is run.
TES is just a 4-wide launcher, one per primitive is executed,
with one lane per tessellation coordinate input.
Reviewed-by: Roland Scheidegger <sroland at vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3841>
---
src/gallium/auxiliary/Makefile.sources | 2 +
src/gallium/auxiliary/draw/draw_context.c | 31 +
src/gallium/auxiliary/draw/draw_context.h | 23 +
src/gallium/auxiliary/draw/draw_llvm.c | 1121 ++++++++++++++++++++++++++++-
src/gallium/auxiliary/draw/draw_llvm.h | 187 ++++-
src/gallium/auxiliary/draw/draw_private.h | 40 +-
src/gallium/auxiliary/draw/draw_tess.c | 630 ++++++++++++++++
src/gallium/auxiliary/draw/draw_tess.h | 90 +++
src/gallium/auxiliary/meson.build | 2 +
9 files changed, 2119 insertions(+), 7 deletions(-)
Diff: http://cgit.freedesktop.org/mesa/mesa/diff/?id=0d02a7b8ca794a594c2e9cc5e6d63dc591593105
More information about the mesa-commit
mailing list