Module: Mesa
Branch: main
Commit: 76725452239e9e7740c0edd6a5f3663ab897c343
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=76725452239e9e7740c0edd6a5f3663ab897c343

Author: Mike Blumenkrantz <[email protected]>
Date:   Fri Jun 30 17:15:09 2023 -0400

gallium: move vertex stride to CSO

this simplifies code in most place and enables some optimizations in
frontends

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24117>

---

 src/asahi/lib/agx_nir_lower_vbo.c                  |  2 +-
 src/asahi/lib/agx_nir_lower_vbo.h                  |  2 +-
 src/gallium/auxiliary/draw/draw_context.c          |  2 +
 src/gallium/auxiliary/draw/draw_llvm.c             | 23 +++--
 src/gallium/auxiliary/draw/draw_llvm.h             |  5 +-
 src/gallium/auxiliary/draw/draw_private.h          |  1 +
 src/gallium/auxiliary/draw/draw_pt.c               | 18 ++--
 src/gallium/auxiliary/draw/draw_pt_fetch.c         |  5 +-
 .../auxiliary/draw/draw_pt_fetch_shade_emit.c      |  9 +-
 src/gallium/auxiliary/driver_trace/tr_dump_state.c |  2 +-
 src/gallium/auxiliary/hud/hud_context.c            | 24 ++++--
 src/gallium/auxiliary/hud/hud_private.h            |  1 +
 src/gallium/auxiliary/postprocess/pp_program.c     |  2 +
 src/gallium/auxiliary/util/u_blitter.c             |  6 +-
 src/gallium/auxiliary/util/u_draw.c                |  4 +-
 src/gallium/auxiliary/util/u_draw_quad.c           |  2 -
 src/gallium/auxiliary/util/u_dump_state.c          |  2 +-
 src/gallium/auxiliary/util/u_inlines.h             |  2 -
 src/gallium/auxiliary/util/u_tests.c               |  1 +
 src/gallium/auxiliary/util/u_threaded_context.c    |  1 -
 src/gallium/auxiliary/util/u_vbuf.c                | 99 ++++++++++++----------
 src/gallium/auxiliary/util/u_vertex_state_cache.c  |  1 -
 src/gallium/auxiliary/vl/vl_bicubic_filter.c       |  1 +
 src/gallium/auxiliary/vl/vl_compositor.c           |  4 +-
 src/gallium/auxiliary/vl/vl_compositor.h           |  2 +
 src/gallium/auxiliary/vl/vl_compositor_gfx.c       |  2 +-
 src/gallium/auxiliary/vl/vl_matrix_filter.c        |  1 +
 src/gallium/auxiliary/vl/vl_median_filter.c        |  1 +
 src/gallium/auxiliary/vl/vl_vertex_buffers.c       | 12 ++-
 src/gallium/drivers/asahi/agx_state.c              |  6 +-
 src/gallium/drivers/crocus/crocus_state.c          |  6 +-
 src/gallium/drivers/d3d12/d3d12_context.cpp        |  5 +-
 src/gallium/drivers/d3d12/d3d12_draw.cpp           | 13 ++-
 src/gallium/drivers/d3d12/d3d12_pipeline_state.h   |  4 +-
 src/gallium/drivers/etnaviv/etnaviv_emit.c         | 27 +++---
 src/gallium/drivers/etnaviv/etnaviv_internal.h     |  2 +-
 src/gallium/drivers/etnaviv/etnaviv_state.c        |  5 +-
 src/gallium/drivers/freedreno/a2xx/fd2_program.c   |  2 +-
 src/gallium/drivers/freedreno/a3xx/fd3_emit.c      |  2 +-
 src/gallium/drivers/freedreno/a4xx/fd4_emit.c      |  2 +-
 src/gallium/drivers/freedreno/a5xx/fd5_emit.c      |  2 +-
 src/gallium/drivers/freedreno/a6xx/fd6_context.cc  |  9 +-
 src/gallium/drivers/freedreno/a6xx/fd6_emit.cc     | 14 +--
 src/gallium/drivers/freedreno/freedreno_context.c  |  6 +-
 src/gallium/drivers/freedreno/freedreno_context.h  |  1 +
 src/gallium/drivers/freedreno/freedreno_state.c    |  6 +-
 src/gallium/drivers/iris/iris_state.c              | 35 +++++++-
 src/gallium/drivers/lima/lima_draw.c               |  4 +-
 src/gallium/drivers/nouveau/nv30/nv30_push.c       |  4 +-
 src/gallium/drivers/nouveau/nv30/nv30_state.h      |  1 +
 src/gallium/drivers/nouveau/nv30/nv30_vbo.c        | 17 ++--
 src/gallium/drivers/nouveau/nv50/nv50_push.c       |  4 +-
 src/gallium/drivers/nouveau/nv50/nv50_state.c      |  5 --
 src/gallium/drivers/nouveau/nv50/nv50_stateobj.h   |  2 +
 src/gallium/drivers/nouveau/nv50/nv50_vbo.c        | 23 +++--
 src/gallium/drivers/nouveau/nvc0/nvc0_state.c      |  5 --
 src/gallium/drivers/nouveau/nvc0/nvc0_stateobj.h   |  2 +
 src/gallium/drivers/nouveau/nvc0/nvc0_vbo.c        | 25 ++++--
 .../drivers/nouveau/nvc0/nvc0_vbo_translate.c      |  8 +-
 src/gallium/drivers/panfrost/pan_cmdstream.c       | 14 +--
 src/gallium/drivers/r300/r300_emit.c               | 30 +++----
 src/gallium/drivers/r300/r300_render.c             |  8 +-
 src/gallium/drivers/r600/evergreen_compute.c       |  1 -
 src/gallium/drivers/r600/evergreen_state.c         |  5 +-
 src/gallium/drivers/r600/r600_asm.c                |  3 +
 src/gallium/drivers/r600/r600_pipe.h               |  1 +
 src/gallium/drivers/r600/r600_pipe_common.c        |  1 -
 src/gallium/drivers/r600/r600_state.c              |  4 +-
 src/gallium/drivers/r600/r600_state_common.c       |  2 -
 src/gallium/drivers/radeonsi/si_state.c            | 10 +--
 src/gallium/drivers/radeonsi/si_state.h            |  1 +
 src/gallium/drivers/radeonsi/si_state_draw.cpp     | 11 +--
 src/gallium/drivers/radeonsi/si_state_shaders.cpp  |  2 +-
 src/gallium/drivers/svga/svga_context.h            |  1 +
 src/gallium/drivers/svga/svga_draw.c               |  4 +-
 src/gallium/drivers/svga/svga_pipe_vertex.c        |  2 +
 src/gallium/drivers/svga/svga_state_vdecl.c        |  8 +-
 src/gallium/drivers/svga/svga_swtnl_backend.c      |  1 -
 src/gallium/drivers/v3d/v3dx_draw.c                |  2 +-
 src/gallium/drivers/vc4/vc4_draw.c                 |  8 +-
 src/gallium/drivers/virgl/virgl_context.c          |  4 +-
 src/gallium/drivers/virgl/virgl_context.h          |  1 +
 src/gallium/drivers/virgl/virgl_encode.c           |  2 +-
 src/gallium/drivers/virgl/virgl_encode.h           |  1 +
 src/gallium/drivers/zink/zink_context.c            |  5 +-
 src/gallium/drivers/zink/zink_draw.cpp             | 11 +--
 src/gallium/drivers/zink/zink_program_state.hpp    |  4 +-
 src/gallium/drivers/zink/zink_state.c              |  8 +-
 src/gallium/drivers/zink/zink_types.h              |  1 +
 src/gallium/frontends/d3d10umd/Draw.cpp            |  3 +
 src/gallium/frontends/d3d10umd/InputAssembly.cpp   |  6 +-
 src/gallium/frontends/d3d10umd/State.h             |  1 +
 src/gallium/frontends/lavapipe/lvp_execute.c       | 22 +++--
 src/gallium/frontends/nine/buffer9.c               |  2 +-
 src/gallium/frontends/nine/device9.c               | 16 ++--
 src/gallium/frontends/nine/nine_csmt_helper.h      | 11 ++-
 src/gallium/frontends/nine/nine_state.c            | 26 ++++--
 src/gallium/frontends/nine/nine_state.h            |  5 +-
 src/gallium/frontends/nine/stateblock9.c           |  4 +-
 src/gallium/frontends/xa/xa_renderer.c             |  2 +
 src/gallium/include/pipe/p_state.h                 |  4 +-
 src/gallium/tests/trivial/quad-tex.c               |  2 +
 src/gallium/tests/trivial/tri.c                    |  2 +
 src/mesa/main/varray.c                             |  7 +-
 src/mesa/state_tracker/st_atom_array.cpp           | 15 ++--
 src/mesa/state_tracker/st_cb_drawtex.c             |  1 +
 src/mesa/state_tracker/st_context.c                |  3 +
 src/mesa/state_tracker/st_draw.c                   |  2 -
 src/mesa/state_tracker/st_pbo.c                    |  3 +-
 109 files changed, 448 insertions(+), 329 deletions(-)

Diff:   
http://cgit.freedesktop.org/mesa/mesa/diff/?id=76725452239e9e7740c0edd6a5f3663ab897c343

Reply via email to