mesa/src/gallium/auxiliary
Marek Olšák 211ec4226b cso_context: remove ability to restore VBs, const bufs, sampler views, images
This is meant to decrease CPU overhead and reduce the use of cso_context when
better solutions are possible.

These functions are removed. Gallium frontends should just use pipe_context:
- cso_set_sampler_views
- cso_set_shader_images
- cso_set_constant_buffer*

Additionally, vertex buffers are passed through cso_context but they are not
saved there. The only remaining role of cso_context with regard to vertex
buffers is to decide whether to go through u_vbuf or skip it. u_vbuf also
can't save and restore vertex buffers anymore.

This is how the states are restored for meta ops:
- in st/mesa, set st->dirty |= flags to re-bind whatever state has been
  touched
- outside of st/mesa, there is new interface st_context_iface::invalidate_-
 _state that external modules can use to essentially set st->dirty through
  it (like HUD)

Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Zoltán Böszörményi <zboszor@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8180>
2021-01-15 04:01:12 -05:00
..
cso_cache cso_context: remove ability to restore VBs, const bufs, sampler views, images 2021-01-15 04:01:12 -05:00
draw gallium/ntt: Take ownership of the NIR shader we're passed. 2021-01-12 19:46:22 +00:00
driver_ddebug aux/driver_ddebug: Normalize pid type from Haiku 2021-01-09 20:51:27 -06:00
driver_noop gallium: pass pipe_stencil_ref by value (it has only 2 bytes) 2020-12-22 12:01:38 +00:00
driver_rbug gallium: pass pipe_stencil_ref by value (it has only 2 bytes) 2020-12-22 12:01:38 +00:00
driver_trace gallium: inline pipe_depth_state to decrease DSA state size by 4 bytes 2020-12-22 12:01:38 +00:00
gallivm gallium/tgsi: Remove support for f64 src modifiers. 2021-01-13 22:52:10 +00:00
hud gallium/hud: don't use cso_context to restore VBs, constbuf 0 and sampler views 2021-01-15 04:01:12 -05:00
indices gallium: fix draw info setup in draw and utilities 2021-01-04 19:22:33 -05:00
nir gallium/ntt: Avoid referencing undefined channels of system values. 2021-01-14 15:59:22 -08:00
os os: Fix open result check. 2020-11-02 18:37:00 +00:00
pipe-loader drisw: Use debug_screen_wrap like everybody else 2021-01-04 22:28:17 +00:00
pipebuffer gallium: use list_is_linked 2020-12-18 01:46:00 +00:00
postprocess gallium/pp: don't use cso_context to restore VBs, constbuf 0 and sampler views 2021-01-15 04:01:12 -05:00
rbug rbug: Fix use of alloca() without #include "c99_alloca.h" 2019-10-25 16:04:34 +01:00
renderonly gallium: rename 'state tracker' to 'frontend' 2020-05-13 13:46:53 -04:00
rtasm util: don't include p_defines.h and u_pointer.h from gallium 2020-03-27 21:00:10 +00:00
target-helpers drisw: Use debug_screen_wrap like everybody else 2021-01-04 22:28:17 +00:00
tessellator tesselator: remove unused variable 2021-01-05 11:29:11 +00:00
tgsi gallium/tgsi: garbage collect unused TGSI_UTIL_SIGN_MODE. 2021-01-13 22:52:10 +00:00
translate gallium/util: remove empty file u_half.h 2020-10-06 21:07:11 -04:00
util cso_context: remove ability to restore VBs, const bufs, sampler views, images 2021-01-15 04:01:12 -05:00
vl gallium: inline pipe_depth_state to decrease DSA state size by 4 bytes 2020-12-22 12:01:38 +00:00
Android.mk android: fix build failure with libbacktrace 2020-12-11 10:41:14 +00:00
Makefile.sources android: gallium/aux: Add GPU tracepoint mechanism 2020-12-07 13:10:32 +00:00
meson.build gallium/aux: Split u_tracepoints.[ch] generation 2020-12-08 16:02:10 +00:00
SConscript gallium/aux: Update scons build for u_tracepoints.[ch] 2020-12-08 16:02:10 +00:00