gallium: add PIPE_CAP_TGSI_CAN_READ_OUTPUTS
authorNicolai Hähnle <nicolai.haehnle@amd.com>
Fri, 18 Nov 2016 19:49:54 +0000 (20:49 +0100)
committerNicolai Hähnle <nicolai.haehnle@amd.com>
Wed, 30 Nov 2016 08:09:50 +0000 (09:09 +0100)
commit611166b8ed08ce39f835385b8e08e37754edcf7b
tree2e25a22d6fa87c50ac39711980ad05d0186e1c82
parentabc887faa108b52f1e622ac8c1a3e30c4f317475
gallium: add PIPE_CAP_TGSI_CAN_READ_OUTPUTS

Drivers that support this benefit by saving one lowering pass in the
GLSL-to-TGSI conversion.

radeonsi already supports this because all outputs are stored in temporary
variables before the export (except for TCS outputs, which have always
been readable in TGSI anyway due to their special semantics).

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
17 files changed:
src/gallium/docs/source/screen.rst
src/gallium/drivers/freedreno/freedreno_screen.c
src/gallium/drivers/i915/i915_screen.c
src/gallium/drivers/ilo/ilo_screen.c
src/gallium/drivers/llvmpipe/lp_screen.c
src/gallium/drivers/nouveau/nv30/nv30_screen.c
src/gallium/drivers/nouveau/nv50/nv50_screen.c
src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
src/gallium/drivers/r300/r300_screen.c
src/gallium/drivers/r600/r600_pipe.c
src/gallium/drivers/radeonsi/si_pipe.c
src/gallium/drivers/softpipe/sp_screen.c
src/gallium/drivers/svga/svga_screen.c
src/gallium/drivers/swr/swr_screen.cpp
src/gallium/drivers/vc4/vc4_screen.c
src/gallium/drivers/virgl/virgl_screen.c
src/gallium/include/pipe/p_defines.h