Mesa (master): gallium: remove pipe_index_buffer and set_index_buffer

Marek Olšák mareko at kemper.freedesktop.org
Wed May 10 17:25:46 UTC 2017


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

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Sun Apr  2 16:24:39 2017 +0200

gallium: remove pipe_index_buffer and set_index_buffer

pipe_draw_info::indexed is replaced with index_size. index_size == 0 means
non-indexed.

Instead of pipe_index_buffer::offset, pipe_draw_info::start is used.
For indexed indirect draws, pipe_draw_info::start is added to the indirect
start. This is the only case when "start" affects indirect draws.

pipe_draw_info::index is a union. Use either index::resource or
index::user depending on the value of pipe_draw_info::has_user_indices.

v2: fixes for nine, svga

---

 src/gallium/auxiliary/cso_cache/cso_context.c      |  16 ---
 src/gallium/auxiliary/cso_cache/cso_context.h      |   4 -
 src/gallium/auxiliary/draw/draw_context.c          |   3 -
 src/gallium/auxiliary/draw/draw_pt.c               |   6 +-
 src/gallium/auxiliary/indices/u_primconvert.c      |  56 +++------
 src/gallium/auxiliary/indices/u_primconvert.h      |   2 -
 src/gallium/auxiliary/util/u_draw.c                |   6 +-
 src/gallium/auxiliary/util/u_draw.h                |   9 +-
 src/gallium/auxiliary/util/u_dump.h                |   3 -
 src/gallium/auxiliary/util/u_dump_state.c          |  23 +---
 src/gallium/auxiliary/util/u_helpers.c             |  44 ++-----
 src/gallium/auxiliary/util/u_helpers.h             |  11 +-
 src/gallium/auxiliary/util/u_index_modify.c        |  24 ++--
 src/gallium/auxiliary/util/u_index_modify.h        |   7 +-
 src/gallium/auxiliary/util/u_prim_restart.c        |  54 ++++-----
 src/gallium/auxiliary/util/u_prim_restart.h        |   9 +-
 src/gallium/auxiliary/util/u_vbuf.c                | 135 ++++++++-------------
 src/gallium/auxiliary/util/u_vbuf.h                |   2 -
 src/gallium/docs/source/context.rst                |   6 +-
 src/gallium/drivers/ddebug/dd_context.c            |  12 --
 src/gallium/drivers/ddebug/dd_draw.c               |  29 +++--
 src/gallium/drivers/ddebug/dd_pipe.h               |   1 -
 src/gallium/drivers/etnaviv/etnaviv_context.c      |  29 +++--
 src/gallium/drivers/etnaviv/etnaviv_context.h      |   1 -
 src/gallium/drivers/etnaviv/etnaviv_emit.c         |   3 +-
 src/gallium/drivers/etnaviv/etnaviv_state.c        |  29 -----
 src/gallium/drivers/freedreno/a2xx/fd2_draw.c      |   3 +-
 src/gallium/drivers/freedreno/a3xx/fd3_draw.c      |   5 +-
 src/gallium/drivers/freedreno/a3xx/fd3_emit.c      |   2 +-
 src/gallium/drivers/freedreno/a4xx/fd4_draw.c      |  13 +-
 src/gallium/drivers/freedreno/a4xx/fd4_draw.h      |  17 ++-
 src/gallium/drivers/freedreno/a4xx/fd4_emit.c      |   2 +-
 src/gallium/drivers/freedreno/a5xx/fd5_draw.c      |  11 +-
 src/gallium/drivers/freedreno/a5xx/fd5_draw.h      |  17 ++-
 src/gallium/drivers/freedreno/freedreno_context.h  |   6 +-
 src/gallium/drivers/freedreno/freedreno_draw.c     |  20 ++-
 src/gallium/drivers/freedreno/freedreno_draw.h     |  14 +--
 src/gallium/drivers/freedreno/freedreno_resource.c |   4 -
 src/gallium/drivers/freedreno/freedreno_state.c    |  19 ---
 src/gallium/drivers/freedreno/ir3/ir3_shader.c     |   2 +-
 src/gallium/drivers/i915/i915_context.c            |  10 +-
 src/gallium/drivers/i915/i915_context.h            |   1 -
 src/gallium/drivers/i915/i915_state.c              |  12 --
 src/gallium/drivers/llvmpipe/lp_context.h          |   1 -
 src/gallium/drivers/llvmpipe/lp_draw_arrays.c      |  16 +--
 src/gallium/drivers/llvmpipe/lp_state_vertex.c     |  13 --
 src/gallium/drivers/noop/noop_state.c              |   6 -
 src/gallium/drivers/nouveau/nv30/nv30_context.c    |   7 --
 src/gallium/drivers/nouveau/nv30/nv30_context.h    |   1 -
 src/gallium/drivers/nouveau/nv30/nv30_draw.c       |  12 +-
 src/gallium/drivers/nouveau/nv30/nv30_push.c       |  16 +--
 src/gallium/drivers/nouveau/nv30/nv30_resource.c   |   4 -
 src/gallium/drivers/nouveau/nv30/nv30_state.c      |  18 ---
 src/gallium/drivers/nouveau/nv30/nv30_vbo.c        |  31 ++---
 src/gallium/drivers/nouveau/nv50/nv50_context.c    |  14 ---
 src/gallium/drivers/nouveau/nv50/nv50_context.h    |   1 -
 src/gallium/drivers/nouveau/nv50/nv50_push.c       |  12 +-
 src/gallium/drivers/nouveau/nv50/nv50_state.c      |  24 ----
 src/gallium/drivers/nouveau/nv50/nv50_vbo.c        |  30 +++--
 src/gallium/drivers/nouveau/nvc0/nvc0_context.c    |  13 --
 src/gallium/drivers/nouveau/nvc0/nvc0_context.h    |   3 +-
 src/gallium/drivers/nouveau/nvc0/nvc0_state.c      |  26 ----
 .../drivers/nouveau/nvc0/nvc0_state_validate.c     |   3 -
 src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c        |  71 +++++------
 .../drivers/nouveau/nvc0/nvc0_vbo_translate.c      |  30 ++---
 src/gallium/drivers/r300/r300_context.h            |   3 +-
 src/gallium/drivers/r300/r300_render.c             |  33 +++--
 src/gallium/drivers/r300/r300_render_translate.c   |   8 +-
 src/gallium/drivers/r300/r300_state.c              |  33 -----
 src/gallium/drivers/r600/r600_pipe.h               |   3 -
 src/gallium/drivers/r600/r600_state_common.c       |  87 +++++--------
 src/gallium/drivers/radeonsi/si_pipe.h             |   1 -
 src/gallium/drivers/radeonsi/si_state.c            |  19 ---
 src/gallium/drivers/radeonsi/si_state_draw.c       |  91 +++++++-------
 src/gallium/drivers/rbug/rbug_context.c            |  20 ---
 src/gallium/drivers/softpipe/sp_context.h          |   1 -
 src/gallium/drivers/softpipe/sp_draw_arrays.c      |  16 +--
 src/gallium/drivers/softpipe/sp_state_vertex.c     |  14 ---
 src/gallium/drivers/svga/svga_context.h            |   1 -
 src/gallium/drivers/svga/svga_pipe_draw.c          |  36 +++---
 src/gallium/drivers/svga/svga_pipe_vertex.c        |  10 --
 src/gallium/drivers/svga/svga_swtnl.h              |   4 +-
 src/gallium/drivers/svga/svga_swtnl_draw.c         |  13 +-
 src/gallium/drivers/swr/swr_context.h              |   1 -
 src/gallium/drivers/swr/swr_draw.cpp               |   2 +-
 src/gallium/drivers/swr/swr_state.cpp              |  42 +++----
 src/gallium/drivers/trace/tr_context.c             |  19 ---
 src/gallium/drivers/trace/tr_dump_state.c          |  25 +---
 src/gallium/drivers/trace/tr_dump_state.h          |   2 -
 src/gallium/drivers/vc4/vc4_context.h              |   3 +-
 src/gallium/drivers/vc4/vc4_draw.c                 |  20 +--
 src/gallium/drivers/vc4/vc4_resource.c             |  11 +-
 src/gallium/drivers/vc4/vc4_resource.h             |   5 +-
 src/gallium/drivers/vc4/vc4_state.c                |  19 ---
 src/gallium/drivers/virgl/virgl_context.c          |  39 ++----
 src/gallium/drivers/virgl/virgl_context.h          |   1 -
 src/gallium/drivers/virgl/virgl_encode.c           |   6 +-
 src/gallium/drivers/virgl/virgl_encode.h           |   9 +-
 src/gallium/include/pipe/p_context.h               |   4 -
 src/gallium/include/pipe/p_state.h                 |  38 +++---
 src/gallium/state_trackers/nine/device9.c          |  27 +++--
 src/gallium/state_trackers/nine/indexbuffer9.c     |  15 ++-
 src/gallium/state_trackers/nine/indexbuffer9.h     |   7 +-
 src/gallium/state_trackers/nine/nine_state.c       |  56 ++++-----
 src/gallium/state_trackers/nine/nine_state.h       |   9 +-
 src/mesa/state_tracker/st_draw.c                   |  77 +++++-------
 src/mesa/state_tracker/st_draw_feedback.c          |  20 ++-
 107 files changed, 667 insertions(+), 1217 deletions(-)

Diff:   http://cgit.freedesktop.org/mesa/mesa/diff/?id=330d0607ed60fd3edca192e54b4246310f06652f



More information about the mesa-commit mailing list