summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/tgsi
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/auxiliary/tgsi')
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_scan.c5
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_scan.h1
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_strings.c3
3 files changed, 8 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/tgsi/tgsi_scan.c b/src/gallium/auxiliary/tgsi/tgsi_scan.c
index 0230267a5de..d331257cc4f 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_scan.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_scan.c
@@ -217,6 +217,11 @@ tgsi_scan_shader(const struct tgsi_token *tokens,
TGSI_SEMANTIC_VIEWPORT_INDEX) {
info->writes_viewport_index = TRUE;
}
+ if (procType == TGSI_PROCESSOR_GEOMETRY &&
+ fulldecl->Semantic.Name ==
+ TGSI_SEMANTIC_LAYER) {
+ info->writes_layer = TRUE;
+ }
}
}
diff --git a/src/gallium/auxiliary/tgsi/tgsi_scan.h b/src/gallium/auxiliary/tgsi/tgsi_scan.h
index 676abf0c9a9..a5b70244bd7 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_scan.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_scan.h
@@ -76,6 +76,7 @@ struct tgsi_shader_info
boolean pixel_center_integer;
boolean color0_writes_all_cbufs;
boolean writes_viewport_index;
+ boolean writes_layer;
unsigned num_written_clipdistance;
/**
diff --git a/src/gallium/auxiliary/tgsi/tgsi_strings.c b/src/gallium/auxiliary/tgsi/tgsi_strings.c
index 6abf9272a26..d8caae5a606 100644
--- a/src/gallium/auxiliary/tgsi/tgsi_strings.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_strings.c
@@ -79,7 +79,8 @@ const char *tgsi_semantic_names[TGSI_SEMANTIC_COUNT] =
"THREAD_ID",
"TEXCOORD",
"PCOORD",
- "VIEWPORT_INDEX"
+ "VIEWPORT_INDEX",
+ "LAYER"
};
const char *tgsi_texture_names[TGSI_TEXTURE_COUNT] =