diff options
author | Zack Rusin <zackr@vmware.com> | 2013-08-13 01:42:37 -0400 |
---|---|---|
committer | Zack Rusin <zackr@vmware.com> | 2013-08-14 18:23:36 -0400 |
commit | 27cedd8aecccea808a35ef297477cac5fe87e476 (patch) | |
tree | ab37abf3b418f4125e8773826f69056c22db9f99 /src/gallium/drivers/llvmpipe/lp_rast_priv.h | |
parent | a3ae5dc7dd5c2f8893f86a920247e690e550ebd4 (diff) | |
download | external_mesa3d-27cedd8aecccea808a35ef297477cac5fe87e476.zip external_mesa3d-27cedd8aecccea808a35ef297477cac5fe87e476.tar.gz external_mesa3d-27cedd8aecccea808a35ef297477cac5fe87e476.tar.bz2 |
llvmpipe: fix pipeline statistics with a null ps
If the fragment shader is null then pixel shader invocations have
to be equal to zero. And if we're running a null ps then clipper
invocations and primitives should be equal to zero but only
if both stancil and depth testing are disabled.
Signed-off-by: Zack Rusin <zackr@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_rast_priv.h')
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_rast_priv.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_rast_priv.h b/src/gallium/drivers/llvmpipe/lp_rast_priv.h index b8bc99c..41fe097 100644 --- a/src/gallium/drivers/llvmpipe/lp_rast_priv.h +++ b/src/gallium/drivers/llvmpipe/lp_rast_priv.h @@ -100,6 +100,7 @@ struct lp_rasterizer_task /* occlude counter for visible pixels */ struct lp_jit_thread_data thread_data; uint64_t ps_invocations; + uint8_t ps_inv_multiplier; pipe_semaphore work_ready; pipe_semaphore work_done; @@ -308,7 +309,7 @@ lp_rast_shade_quads_all( struct lp_rasterizer_task *task, if ((x % TILE_SIZE) < task->width && (y % TILE_SIZE) < task->height) { /* not very accurate would need a popcount on the mask */ /* always count this not worth bothering? */ - task->ps_invocations++; + task->ps_invocations += 1 * variant->ps_inv_multiplier; /* run shader on 4x4 block */ BEGIN_JIT_CALL(state, task); |