Mesa (master): gallium: move pipe_draw_info::index_bias to pipe_draw_start_count_bias

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Apr 30 04:22:59 UTC 2021


Module: Mesa
Branch: master
Commit: 4566383ae4bf28b99576ae9d293c50decc771888
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4566383ae4bf28b99576ae9d293c50decc771888

Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Sun Apr 11 10:26:29 2021 -0400

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 at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10166>

---

 src/gallium/auxiliary/cso_cache/cso_context.c      |   2 +
 src/gallium/auxiliary/draw/draw_pt.c               |  22 ++--
 src/gallium/auxiliary/driver_ddebug/dd_draw.c      |   2 +-
 src/gallium/auxiliary/driver_trace/tr_dump_state.c |   2 +-
 src/gallium/auxiliary/indices/u_primconvert.c      |   2 +-
 src/gallium/auxiliary/util/u_draw.c                |   2 +-
 src/gallium/auxiliary/util/u_draw.h                |   6 +-
 src/gallium/auxiliary/util/u_dump.h                |   2 +-
 src/gallium/auxiliary/util/u_dump_state.c          |   4 +-
 src/gallium/auxiliary/util/u_threaded_context.c    |  44 +++++--
 src/gallium/auxiliary/util/u_vbuf.c                |   8 +-
 src/gallium/drivers/d3d12/d3d12_draw.cpp           |   4 +-
 src/gallium/drivers/etnaviv/etnaviv_context.c      |   4 +-
 src/gallium/drivers/freedreno/a3xx/fd3_draw.c      |   6 +-
 src/gallium/drivers/freedreno/a4xx/fd4_draw.c      |   2 +-
 src/gallium/drivers/freedreno/a5xx/fd5_draw.c      |   2 +-
 src/gallium/drivers/freedreno/a6xx/fd6_draw.c      |   2 +-
 src/gallium/drivers/freedreno/ir3/ir3_const.h      |   2 +-
 src/gallium/drivers/iris/iris_draw.c               |   2 +-
 src/gallium/drivers/iris/iris_state.c              |   2 +-
 src/gallium/drivers/lima/lima_draw.c               |   2 +-
 src/gallium/drivers/nouveau/nv30/nv30_push.c       |   4 +-
 src/gallium/drivers/nouveau/nv30/nv30_vbo.c        |   2 +-
 src/gallium/drivers/nouveau/nv50/nv50_push.c       |   6 +-
 src/gallium/drivers/nouveau/nv50/nv50_vbo.c        |   4 +-
 src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c        |   6 +-
 .../drivers/nouveau/nvc0/nvc0_vbo_translate.c      |  18 +--
 src/gallium/drivers/panfrost/pan_context.c         |   8 +-
 src/gallium/drivers/r300/r300_render.c             |  30 ++---
 src/gallium/drivers/r600/r600_state_common.c       |   2 +-
 src/gallium/drivers/radeonsi/si_pipe.h             |   2 +-
 src/gallium/drivers/radeonsi/si_state_draw.cpp     | 129 ++++++++++++++++-----
 src/gallium/drivers/svga/svga_draw_elements.c      |   4 +-
 src/gallium/drivers/svga/svga_pipe_draw.c          |   2 +-
 src/gallium/drivers/svga/svga_swtnl_backend.c      |   2 +-
 src/gallium/drivers/swr/swr_draw.cpp               |   2 +-
 src/gallium/drivers/swr/swr_state.cpp              |  11 +-
 src/gallium/drivers/v3d/v3dx_draw.c                |   4 +-
 src/gallium/drivers/vc4/vc4_draw.c                 |   9 +-
 src/gallium/drivers/virgl/virgl_encode.c           |   2 +-
 src/gallium/drivers/zink/zink_draw.c               |   2 +-
 src/gallium/frontends/lavapipe/lvp_cmd_buffer.c    |   2 +-
 src/gallium/frontends/lavapipe/lvp_execute.c       |   1 -
 src/gallium/frontends/lavapipe/lvp_private.h       |   1 -
 src/gallium/frontends/nine/device9.c               |   2 +-
 src/gallium/frontends/nine/nine_state.c            |   6 +-
 src/gallium/include/pipe/p_context.h               |   2 +-
 src/gallium/include/pipe/p_state.h                 |   8 +-
 src/gallium/tests/graw/tri-instanced.c             |   1 +
 src/mesa/main/dd.h                                 |   5 +-
 src/mesa/main/draw.c                               |  93 ++++-----------
 src/mesa/main/draw.h                               |   1 -
 src/mesa/state_tracker/st_draw.c                   |  67 ++---------
 src/mesa/state_tracker/st_draw_feedback.c          |   2 +-
 src/mesa/vbo/vbo_exec_draw.c                       |   1 -
 src/mesa/vbo/vbo_save_api.c                        |   1 +
 src/mesa/vbo/vbo_save_draw.c                       |   1 -
 57 files changed, 277 insertions(+), 290 deletions(-)

Diff:   http://cgit.freedesktop.org/mesa/mesa/diff/?id=4566383ae4bf28b99576ae9d293c50decc771888


More information about the mesa-commit mailing list