summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/nouveau/nv50/nv50_program.c
diff options
context:
space:
mode:
authorIlia Mirkin <imirkin@alum.mit.edu>2014-01-15 03:47:48 -0500
committerMaarten Lankhorst <maarten.lankhorst@canonical.com>2014-01-27 16:40:42 +0100
commit70a07ac35269c037adb2b724df28357b7f87efb1 (patch)
tree4607ddf32e1fa6065b97b504b94190c2f74112ac /src/gallium/drivers/nouveau/nv50/nv50_program.c
parent7c624148a699eb660565498ff91685be4d0f1c35 (diff)
downloadexternal_mesa3d-70a07ac35269c037adb2b724df28357b7f87efb1.zip
external_mesa3d-70a07ac35269c037adb2b724df28357b7f87efb1.tar.gz
external_mesa3d-70a07ac35269c037adb2b724df28357b7f87efb1.tar.bz2
nv50: handle gl_Layer writes in GP
Marks gl_Layer as only having one component, and makes sure to keep track of where it is and emit it in the output map, since it is not an input to the FP. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Diffstat (limited to 'src/gallium/drivers/nouveau/nv50/nv50_program.c')
-rw-r--r--src/gallium/drivers/nouveau/nv50/nv50_program.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/nv50/nv50_program.c b/src/gallium/drivers/nouveau/nv50/nv50_program.c
index f46f240..82e1b8a 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_program.c
+++ b/src/gallium/drivers/nouveau/nv50/nv50_program.c
@@ -103,6 +103,10 @@ nv50_vertprog_assign_slots(struct nv50_ir_prog_info *info)
case TGSI_SEMANTIC_BCOLOR:
prog->vp.bfc[info->out[i].si] = i;
break;
+ case TGSI_SEMANTIC_LAYER:
+ prog->gp.has_layer = true;
+ prog->gp.layerid = n;
+ break;
default:
break;
}
@@ -331,6 +335,7 @@ nv50_program_translate(struct nv50_program *prog, uint16_t chipset)
prog->vp.clpd[1] = map_undef;
prog->vp.psiz = map_undef;
prog->gp.primid = 0x80;
+ prog->gp.has_layer = 0;
info->driverPriv = prog;