[Mesa-dev] [PATCH 00/20] GL compute shaders for radeonsi
Bas Nieuwenhuizen
bas at basnieuwenhuizen.nl
Sat Apr 2 13:10:43 UTC 2016
This series implements OpenGL compute shader for radeonsi. It
is based off master + Nicolai Hähnle's SSBO patches.
It depends on two patches for LLVM that have not
been committed yet:
- D18340
- D18559
The series is also available as the si-compute-shader branches of
- https://github.com/BNieuwenhuizen/llvm
- https://github.com/BNieuwenhuizen/mesa
Bas Nieuwenhuizen (20):
radeonsi: set shader calling conventions
radeonsi: lower compute shader arguments
radeonsi: add shared memory
radeonsi: implement shared memory load/store
radeonsi: implement shared atomics
radeonsi: set maximum work group size based on block size
radeonsi: update shader count for compute shaders
radeonsi: implement TGSI compute shader creation
radeonsi: split input upload off from si_launch_grid
radeonsi: don't pass scratch buffer to user SGPRs
radeonsi: do per cs setup for compute shaders once per cs
radeonsi: rework compute scratch buffer
radeonsi: only emit compute shader state when switching shaders
radeonsi: implement TGSI compute dispatch
radeonsi: split texture decompression for compute shaders
radeonsi: split setting graphics and compute descriptors
radeonsi: do not do two full flushes on every compute dispatch
radeonsi: clean up compute flush
mesa/st: enable compute shaders if images are also supported
radeonsi: enable TGSI support cap for compute shaders
docs/GL3.txt | 4 +-
docs/relnotes/11.3.0.html | 1 +
src/gallium/drivers/radeon/r600_pipe_common.c | 21 +-
src/gallium/drivers/radeon/radeon_llvm.h | 3 +
src/gallium/drivers/radeon/radeon_llvm_emit.c | 17 +-
.../drivers/radeon/radeon_setup_tgsi_llvm.c | 4 +
src/gallium/drivers/radeonsi/si_blit.c | 13 +-
src/gallium/drivers/radeonsi/si_compute.c | 557 ++++++++++++---------
src/gallium/drivers/radeonsi/si_descriptors.c | 60 ++-
src/gallium/drivers/radeonsi/si_hw_context.c | 2 +
src/gallium/drivers/radeonsi/si_pipe.c | 4 +-
src/gallium/drivers/radeonsi/si_pipe.h | 11 +-
src/gallium/drivers/radeonsi/si_shader.c | 252 +++++++++-
src/gallium/drivers/radeonsi/si_shader.h | 10 +
src/gallium/drivers/radeonsi/si_state.c | 6 +-
src/gallium/drivers/radeonsi/si_state.h | 10 +-
src/gallium/drivers/radeonsi/si_state_draw.c | 31 +-
src/mesa/state_tracker/st_extensions.c | 6 +-
18 files changed, 708 insertions(+), 304 deletions(-)
--
2.7.4
More information about the mesa-dev
mailing list