gallium: initialize the killmask register to zero before running shader
authorBrian <brian.paul@tungstengraphics.com>
Tue, 19 Feb 2008 23:28:25 +0000 (16:28 -0700)
committerBrian <brian.paul@tungstengraphics.com>
Tue, 19 Feb 2008 23:28:25 +0000 (16:28 -0700)
This fixes mysterious missing fragments when running with SSE.

src/gallium/drivers/softpipe/sp_fs_sse.c

index b18772f4e6df2a0bea4575dd5dc06bc3c2b46559..53050b78230022bfb3270a89de555b527db3ce1e 100644 (file)
@@ -124,6 +124,9 @@ fs_sse_run( struct sp_fragment_shader *base,
                       (float)quad->x0, (float)quad->y0, 
                       machine->Temps);
 
+   /* init kill mask */
+   machine->Temps[TGSI_EXEC_TEMP_KILMASK_I].xyzw[TGSI_EXEC_TEMP_KILMASK_C].u[0] = 0x0;
+
    shader->func( machine->Inputs,
                 machine->Outputs,
                 machine->Consts,