This series adds tokens and updates some helper gallium functions to know about tessellation. This provides no actual support for tessellation in either core or drivers, however this will make it possible to work on the core and driver pieces without crazy interdependencies, as well as be landed separately and without (direct) dependency.
Most of these patches have existed for about a year already, and have been part of my and Marek's trees enabling tessellation in the nvc0 and radeonsi drivers. I've taken this opportunity to fix up and fold some of them though. This should be pretty safe to land, since even if I messed something up, having this in-tree will make it easier for others to identify and fix any issues collaboratively. Ilia Mirkin (11): gallium: add tessellation shader types gallium: add new PATCHES primitive type gallium: add new semantics for tessellation gallium: add interfaces for controlling tess program state gallium: add tessellation shader properties gallium: add patch_vertices to draw info gallium: add set_tess_state to configure default tessellation parameters tgsi/scan: allow scanning tessellation shaders tgsi/sanity: set implicit in/out array sizes based on patch sizes tgsi/ureg: allow ureg_dst to have dimension indices tgsi/dump: fix declaration printing of tessellation inputs/outputs Marek Olšák (8): gallium: bump shader input and output limits trace: implement new tessellation functions gallium/util: print patch_vertices in util_dump_draw_info gallium/u_blitter: disable tessellation for all operations gallium/cso: add support for tessellation shaders gallium/cso: set NULL shaders at context destruction gallium: disable tessellation shaders for meta ops tgsi/ureg: use correct limit for max input count src/gallium/auxiliary/cso_cache/cso_context.c | 100 ++++++++++++++++++++++++++ src/gallium/auxiliary/cso_cache/cso_context.h | 12 ++++ src/gallium/auxiliary/hud/hud_context.c | 6 ++ src/gallium/auxiliary/postprocess/pp_run.c | 6 ++ src/gallium/auxiliary/tgsi/tgsi_dump.c | 20 +++++- src/gallium/auxiliary/tgsi/tgsi_info.c | 4 ++ src/gallium/auxiliary/tgsi/tgsi_sanity.c | 36 ++++++++-- src/gallium/auxiliary/tgsi/tgsi_scan.c | 6 +- src/gallium/auxiliary/tgsi/tgsi_strings.c | 19 ++++- src/gallium/auxiliary/tgsi/tgsi_strings.h | 2 +- src/gallium/auxiliary/tgsi/tgsi_ureg.c | 26 ++++++- src/gallium/auxiliary/tgsi/tgsi_ureg.h | 59 +++++++++++++-- src/gallium/auxiliary/util/u_blit.c | 6 ++ src/gallium/auxiliary/util/u_blitter.c | 27 +++++++ src/gallium/auxiliary/util/u_blitter.h | 16 ++++- src/gallium/auxiliary/util/u_dump_state.c | 2 + src/gallium/docs/source/context.rst | 5 ++ src/gallium/docs/source/tgsi.rst | 70 ++++++++++++++++++ src/gallium/drivers/trace/tr_context.c | 26 +++++++ src/gallium/drivers/trace/tr_dump_state.c | 2 + src/gallium/include/pipe/p_context.h | 14 ++++ src/gallium/include/pipe/p_defines.h | 16 ++++- src/gallium/include/pipe/p_shader_tokens.h | 18 ++++- src/gallium/include/pipe/p_state.h | 6 +- src/mesa/state_tracker/st_cb_bitmap.c | 8 ++- src/mesa/state_tracker/st_cb_clear.c | 6 ++ src/mesa/state_tracker/st_cb_drawpixels.c | 8 ++- src/mesa/state_tracker/st_cb_drawtex.c | 6 ++ 28 files changed, 501 insertions(+), 31 deletions(-) -- 2.0.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev