diff options
author | Ilia Mirkin <[email protected]> | 2016-01-23 08:37:03 -0500 |
---|---|---|
committer | Ilia Mirkin <[email protected]> | 2016-04-09 14:55:44 -0400 |
commit | cdb6fa91fa79c0c9a796730e9ecae320bebdb825 (patch) | |
tree | 5ed9af74040e585a4dab40e1aaa804da9ce7945b /src/gallium/drivers/nouveau/nvc0/nvc0_program.c | |
parent | 59ca92137b3841a65d9232bee1164bff1e6bd57d (diff) |
nvc0: handle the case where there are no framebuffer attachments
Signed-off-by: Ilia Mirkin <[email protected]>
Diffstat (limited to 'src/gallium/drivers/nouveau/nvc0/nvc0_program.c')
-rw-r--r-- | src/gallium/drivers/nouveau/nvc0/nvc0_program.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_program.c b/src/gallium/drivers/nouveau/nvc0/nvc0_program.c index db02fa2df5c..d3024f9fa06 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_program.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_program.c @@ -456,6 +456,13 @@ nvc0_fp_gen_header(struct nvc0_program *fp, struct nv50_ir_prog_info *info) fp->hdr[18] |= 0xf << info->out[i].slot[0]; } + /* There are no "regular" attachments, but the shader still needs to be + * executed. It seems like it wants to think that it has some color + * outputs in order to actually run. + */ + if (info->prop.fp.numColourResults == 0 && !info->prop.fp.writesDepth) + fp->hdr[18] |= 0xf; + fp->fp.early_z = info->prop.fp.earlyFragTests; return 0; |