gallium: move pipe_draw_info::index_bias to pipe_draw_start_count_bias
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Sun, 11 Apr 2021 14:26:29 +0000 (10:26 -0400)
committerMarge Bot <eric+marge@anholt.net>
Fri, 30 Apr 2021 03:59:19 +0000 (03:59 +0000)
commit4566383ae4bf28b99576ae9d293c50decc771888
tree89012d8247560473c1627f0ba82acaa6e1df6754
parent4fe6c8552603fb78ec06d3b28c4e9dd01a6bdce6
gallium: move pipe_draw_info::index_bias to pipe_draw_start_count_bias

this moves index_bias into the multidraw struct, enabling draws where the value
changes to be merged; the draw_info struct member is renamed and moved to the end
of the struct for tc use

u_vbuf still has some checks to split draws if index_bias changes, maybe
this can be removed at some point?

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10166>
57 files changed:
src/gallium/auxiliary/cso_cache/cso_context.c
src/gallium/auxiliary/draw/draw_pt.c
src/gallium/auxiliary/driver_ddebug/dd_draw.c
src/gallium/auxiliary/driver_trace/tr_dump_state.c
src/gallium/auxiliary/indices/u_primconvert.c
src/gallium/auxiliary/util/u_draw.c
src/gallium/auxiliary/util/u_draw.h
src/gallium/auxiliary/util/u_dump.h
src/gallium/auxiliary/util/u_dump_state.c
src/gallium/auxiliary/util/u_threaded_context.c
src/gallium/auxiliary/util/u_vbuf.c
src/gallium/drivers/d3d12/d3d12_draw.cpp
src/gallium/drivers/etnaviv/etnaviv_context.c
src/gallium/drivers/freedreno/a3xx/fd3_draw.c
src/gallium/drivers/freedreno/a4xx/fd4_draw.c
src/gallium/drivers/freedreno/a5xx/fd5_draw.c
src/gallium/drivers/freedreno/a6xx/fd6_draw.c
src/gallium/drivers/freedreno/ir3/ir3_const.h
src/gallium/drivers/iris/iris_draw.c
src/gallium/drivers/iris/iris_state.c
src/gallium/drivers/lima/lima_draw.c
src/gallium/drivers/nouveau/nv30/nv30_push.c
src/gallium/drivers/nouveau/nv30/nv30_vbo.c
src/gallium/drivers/nouveau/nv50/nv50_push.c
src/gallium/drivers/nouveau/nv50/nv50_vbo.c
src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c
src/gallium/drivers/nouveau/nvc0/nvc0_vbo_translate.c
src/gallium/drivers/panfrost/pan_context.c
src/gallium/drivers/r300/r300_render.c
src/gallium/drivers/r600/r600_state_common.c
src/gallium/drivers/radeonsi/si_pipe.h
src/gallium/drivers/radeonsi/si_state_draw.cpp
src/gallium/drivers/svga/svga_draw_elements.c
src/gallium/drivers/svga/svga_pipe_draw.c
src/gallium/drivers/svga/svga_swtnl_backend.c
src/gallium/drivers/swr/swr_draw.cpp
src/gallium/drivers/swr/swr_state.cpp
src/gallium/drivers/v3d/v3dx_draw.c
src/gallium/drivers/vc4/vc4_draw.c
src/gallium/drivers/virgl/virgl_encode.c
src/gallium/drivers/zink/zink_draw.c
src/gallium/frontends/lavapipe/lvp_cmd_buffer.c
src/gallium/frontends/lavapipe/lvp_execute.c
src/gallium/frontends/lavapipe/lvp_private.h
src/gallium/frontends/nine/device9.c
src/gallium/frontends/nine/nine_state.c
src/gallium/include/pipe/p_context.h
src/gallium/include/pipe/p_state.h
src/gallium/tests/graw/tri-instanced.c
src/mesa/main/dd.h
src/mesa/main/draw.c
src/mesa/main/draw.h
src/mesa/state_tracker/st_draw.c
src/mesa/state_tracker/st_draw_feedback.c
src/mesa/vbo/vbo_exec_draw.c
src/mesa/vbo/vbo_save_api.c
src/mesa/vbo/vbo_save_draw.c