[Mesa-dev] [PATCH 0/6] Gallivm GS and related cleanups

Zack Rusin zackr at vmware.com
Tue Mar 26 09:38:50 PDT 2013


This set implements code generation of geometry shaders in
the LLVM paths. There are some cleanups that will follow
(e.g. changing the input array to handle lp_native vectors
and not TGSI_NUM_CHANNELS) but all the simple examples
are working and as far as I can tell there's no regressions
in the common code so we can push it now.

Zack Rusin (6):
  graw/gs: add missing max output vertices to all tests
  draw/llvm: Remove unused gs_constants from jit_context
  draw/gs: Abstract the portions of GS that are tgsi specific
  draw/gs: Fetch more than one primitive per invocation
  gallium/llvm: implement geometry shaders in the llvm paths
  gallivm: implement breakc and implicit primitive flushing

 src/gallium/auxiliary/draw/draw_context.c          |   17 +-
 src/gallium/auxiliary/draw/draw_context.h          |    5 +
 src/gallium/auxiliary/draw/draw_gs.c               |  585 +++++++++++++++-----
 src/gallium/auxiliary/draw/draw_gs.h               |   41 +-
 src/gallium/auxiliary/draw/draw_llvm.c             |  584 +++++++++++++++++--
 src/gallium/auxiliary/draw/draw_llvm.h             |  176 +++++-
 .../draw/draw_pt_fetch_shade_pipeline_llvm.c       |   77 ++-
 src/gallium/auxiliary/gallivm/lp_bld_tgsi.h        |   33 +-
 src/gallium/auxiliary/gallivm/lp_bld_tgsi_action.c |    1 +
 src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c    |  209 ++++++-
 src/gallium/drivers/llvmpipe/lp_state_fs.c         |    4 +-
 src/gallium/tests/graw/geometry-shader/add-mix.txt |    1 +
 src/gallium/tests/graw/geometry-shader/add.txt     |    1 +
 .../tests/graw/geometry-shader/mov-cb-2d.txt       |    1 +
 src/gallium/tests/graw/geometry-shader/mov.txt     |    1 +
 15 files changed, 1511 insertions(+), 225 deletions(-)

-- 
1.7.10.4



More information about the mesa-dev mailing list