summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker/st_program.c
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2013-10-14 17:27:48 +1000
committerDave Airlie <[email protected]>2013-10-17 08:35:42 +0100
commit530afc82a117f5318820189db5fcd4bdad97f829 (patch)
treebade2871f8b696d7b4ef709f4dc4f9c61566abdc /src/mesa/state_tracker/st_program.c
parent038a9aab33070b9ff48bb082dd1c731d89e2f9b4 (diff)
st/mesa: handle layer and primitive id output and point size input
This fixes a number of piglit crashes when running on a hacked up llvmpipe. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker/st_program.c')
-rw-r--r--src/mesa/state_tracker/st_program.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c
index 5efd6141d0c..f010e1889f8 100644
--- a/src/mesa/state_tracker/st_program.c
+++ b/src/mesa/state_tracker/st_program.c
@@ -923,6 +923,10 @@ st_translate_geometry_program(struct st_context *st,
stgp->input_semantic_name[slot] = TGSI_SEMANTIC_CLIPDIST;
stgp->input_semantic_index[slot] = 1;
break;
+ case VARYING_SLOT_PSIZ:
+ stgp->input_semantic_name[slot] = TGSI_SEMANTIC_PSIZE;
+ stgp->input_semantic_index[slot] = 0;
+ break;
case VARYING_SLOT_TEX0:
case VARYING_SLOT_TEX1:
case VARYING_SLOT_TEX2:
@@ -1007,6 +1011,14 @@ st_translate_geometry_program(struct st_context *st,
gs_output_semantic_name[slot] = TGSI_SEMANTIC_CLIPDIST;
gs_output_semantic_index[slot] = 1;
break;
+ case VARYING_SLOT_LAYER:
+ gs_output_semantic_name[slot] = TGSI_SEMANTIC_LAYER;
+ gs_output_semantic_index[slot] = 0;
+ break;
+ case VARYING_SLOT_PRIMITIVE_ID:
+ gs_output_semantic_name[slot] = TGSI_SEMANTIC_PRIMID;
+ gs_output_semantic_index[slot] = 0;
+ break;
case VARYING_SLOT_TEX0:
case VARYING_SLOT_TEX1:
case VARYING_SLOT_TEX2: