[Mesa-dev] [PATCH 0/4] Multiple viewports in Gallium
Zack Rusin
zackr at vmware.com
Thu May 23 13:33:39 PDT 2013
This series adds support for multiple viewports/scissors
to gallium and implements it in llvmpipe. All the other
drivers still support just a single viewport/scissor
combo and their behavior should be exactly the same as
it was.
Zack Rusin (4):
gallium: Add support for multiple viewports
draw: implement support for multiple viewports
util/blitter: make sure the blitter can restore all viewports
llvmpipe: implement support for multiple viewports
src/gallium/auxiliary/cso_cache/cso_context.c | 37 ++++++++++-----
src/gallium/auxiliary/cso_cache/cso_context.h | 9 ++--
src/gallium/auxiliary/draw/draw_cliptest_tmp.h | 10 +++-
src/gallium/auxiliary/draw/draw_context.c | 50 +++++++++++++++-----
src/gallium/auxiliary/draw/draw_context.h | 5 +-
src/gallium/auxiliary/draw/draw_gs.c | 11 ++++-
src/gallium/auxiliary/draw/draw_gs.h | 1 +
src/gallium/auxiliary/draw/draw_pipe_clip.c | 11 ++++-
src/gallium/auxiliary/draw/draw_private.h | 9 ++--
.../draw/draw_pt_fetch_shade_pipeline_llvm.c | 4 +-
src/gallium/auxiliary/draw/draw_vs.c | 7 ---
src/gallium/auxiliary/draw/draw_vs_variant.c | 33 +++++++++++--
src/gallium/auxiliary/hud/hud_context.c | 6 +--
src/gallium/auxiliary/postprocess/pp_run.c | 6 +--
src/gallium/auxiliary/tgsi/tgsi_scan.c | 6 +++
src/gallium/auxiliary/tgsi/tgsi_scan.h | 1 +
src/gallium/auxiliary/tgsi/tgsi_strings.c | 3 +-
src/gallium/auxiliary/util/u_blit.c | 12 ++---
src/gallium/auxiliary/util/u_blitter.c | 10 ++--
src/gallium/auxiliary/util/u_blitter.h | 24 ++++++----
src/gallium/auxiliary/util/u_gen_mipmap.c | 6 +--
src/gallium/auxiliary/vl/vl_compositor.c | 4 +-
src/gallium/auxiliary/vl/vl_idct.c | 4 +-
src/gallium/auxiliary/vl/vl_matrix_filter.c | 2 +-
src/gallium/auxiliary/vl/vl_mc.c | 2 +-
src/gallium/auxiliary/vl/vl_median_filter.c | 2 +-
src/gallium/auxiliary/vl/vl_zscan.c | 2 +-
src/gallium/docs/source/context.rst | 8 ++--
src/gallium/drivers/freedreno/freedreno_resource.c | 4 +-
src/gallium/drivers/freedreno/freedreno_state.c | 10 ++--
src/gallium/drivers/galahad/glhd_context.c | 16 ++++---
src/gallium/drivers/i915/i915_state.c | 12 +++--
src/gallium/drivers/i915/i915_surface.c | 4 +-
src/gallium/drivers/identity/id_context.c | 22 +++++----
src/gallium/drivers/ilo/ilo_blit.c | 2 +-
src/gallium/drivers/ilo/ilo_state.c | 14 +++---
src/gallium/drivers/llvmpipe/lp_context.h | 9 +++-
src/gallium/drivers/llvmpipe/lp_screen.c | 2 +
src/gallium/drivers/llvmpipe/lp_setup.c | 34 ++++++++-----
src/gallium/drivers/llvmpipe/lp_setup.h | 5 +-
src/gallium/drivers/llvmpipe/lp_setup_context.h | 9 ++--
src/gallium/drivers/llvmpipe/lp_setup_line.c | 12 +++--
src/gallium/drivers/llvmpipe/lp_setup_point.c | 12 +++--
src/gallium/drivers/llvmpipe/lp_setup_tri.c | 17 +++++--
src/gallium/drivers/llvmpipe/lp_state_clip.c | 24 ++++++----
src/gallium/drivers/llvmpipe/lp_state_derived.c | 15 +++++-
src/gallium/drivers/llvmpipe/lp_surface.c | 4 +-
src/gallium/drivers/noop/noop_state.c | 14 +++---
src/gallium/drivers/nv30/nv30_draw.c | 2 +-
src/gallium/drivers/nv30/nv30_miptree.c | 4 +-
src/gallium/drivers/nv30/nv30_state.c | 14 +++---
src/gallium/drivers/nv50/nv50_state.c | 16 ++++---
src/gallium/drivers/nvc0/nvc0_state.c | 14 +++---
src/gallium/drivers/r300/r300_blit.c | 4 +-
src/gallium/drivers/r300/r300_context.c | 2 +-
src/gallium/drivers/r300/r300_state.c | 16 ++++---
src/gallium/drivers/r600/evergreen_state.c | 5 +-
src/gallium/drivers/r600/r600_blit.c | 4 +-
src/gallium/drivers/r600/r600_state.c | 7 +--
src/gallium/drivers/r600/r600_state_common.c | 9 ++--
src/gallium/drivers/radeonsi/r600_blit.c | 2 +-
src/gallium/drivers/radeonsi/si_state.c | 14 +++---
src/gallium/drivers/rbug/rbug_context.c | 22 +++++----
src/gallium/drivers/softpipe/sp_screen.c | 2 +
src/gallium/drivers/softpipe/sp_state_clip.c | 16 ++++---
src/gallium/drivers/softpipe/sp_surface.c | 4 +-
src/gallium/drivers/svga/svga_pipe_blit.c | 4 +-
src/gallium/drivers/svga/svga_pipe_misc.c | 18 +++----
src/gallium/drivers/svga/svga_swtnl_state.c | 2 +-
src/gallium/drivers/trace/tr_context.c | 28 ++++++-----
src/gallium/include/pipe/p_context.h | 10 ++--
src/gallium/include/pipe/p_defines.h | 3 +-
src/gallium/include/pipe/p_shader_tokens.h | 3 +-
src/gallium/include/pipe/p_state.h | 1 +
src/gallium/state_trackers/vega/renderer.c | 10 ++--
src/gallium/state_trackers/xa/xa_renderer.c | 2 +-
src/gallium/state_trackers/xorg/xorg_renderer.c | 2 +-
src/gallium/tests/graw/fs-test.c | 2 +-
src/gallium/tests/graw/graw_util.h | 2 +-
src/gallium/tests/graw/gs-test.c | 2 +-
src/gallium/tests/graw/quad-sample.c | 2 +-
src/gallium/tests/graw/shader-leak.c | 2 +-
src/gallium/tests/graw/tri-gs.c | 2 +-
src/gallium/tests/graw/tri-instanced.c | 2 +-
src/gallium/tests/graw/vs-test.c | 2 +-
src/gallium/tests/trivial/quad-tex.c | 2 +-
src/gallium/tests/trivial/tri.c | 2 +-
src/mesa/state_tracker/st_atom_scissor.c | 2 +-
src/mesa/state_tracker/st_atom_viewport.c | 2 +-
src/mesa/state_tracker/st_cb_bitmap.c | 6 +--
src/mesa/state_tracker/st_cb_clear.c | 6 +--
src/mesa/state_tracker/st_cb_drawpixels.c | 6 +--
src/mesa/state_tracker/st_cb_drawtex.c | 6 +--
src/mesa/state_tracker/st_draw_feedback.c | 2 +-
94 files changed, 508 insertions(+), 308 deletions(-)
--
1.7.10.4
More information about the mesa-dev
mailing list