From d7081828cc62df7efbc23ca1037a42d69dab94a7 Mon Sep 17 00:00:00 2001 From: Ilia Mirkin Date: Sun, 13 Jul 2014 14:26:05 -0400 Subject: [PATCH] tgsi/dump: fix declaration printing of tessellation inputs/outputs MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit mareko: only output second dimension for non-patch semantics Signed-off-by: Ilia Mirkin Reviewed-by: Roland Scheidegger Signed-off-by: Marek Olšák --- src/gallium/auxiliary/tgsi/tgsi_dump.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/gallium/auxiliary/tgsi/tgsi_dump.c b/src/gallium/auxiliary/tgsi/tgsi_dump.c index 13d67691897..27d410853bf 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_dump.c +++ b/src/gallium/auxiliary/tgsi/tgsi_dump.c @@ -271,14 +271,30 @@ iter_declaration( struct tgsi_full_declaration *decl ) { struct dump_ctx *ctx = (struct dump_ctx *)iter; + boolean patch = decl->Semantic.Name == TGSI_SEMANTIC_PATCH || + decl->Semantic.Name == TGSI_SEMANTIC_TESSINNER || + decl->Semantic.Name == TGSI_SEMANTIC_TESSOUTER || + decl->Semantic.Name == TGSI_SEMANTIC_PRIMID; TXT( "DCL " ); TXT(tgsi_file_name(decl->Declaration.File)); - /* all geometry shader inputs are two dimensional */ + /* all geometry shader inputs and non-patch tessellation shader inputs are + * two dimensional + */ if (decl->Declaration.File == TGSI_FILE_INPUT && - iter->processor.Processor == TGSI_PROCESSOR_GEOMETRY) { + (iter->processor.Processor == TGSI_PROCESSOR_GEOMETRY || + (!patch && + (iter->processor.Processor == TGSI_PROCESSOR_TESSCTRL || + iter->processor.Processor == TGSI_PROCESSOR_TESSEVAL)))) { + TXT("[]"); + } + + /* all non-patch tess ctrl shader outputs are two dimensional */ + if (decl->Declaration.File == TGSI_FILE_OUTPUT && + !patch && + iter->processor.Processor == TGSI_PROCESSOR_TESSCTRL) { TXT("[]"); } -- 2.30.2