Module: Mesa Branch: master Commit: 96ffee2d02a9cbf7ff0042b3083376724b68ed36 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=96ffee2d02a9cbf7ff0042b3083376724b68ed36
Author: Eric Anholt <[email protected]> Date: Thu Nov 10 17:50:34 2016 -0800 vc4: Mark threaded FSes as non-singlethread in the CL. --- src/gallium/drivers/vc4/vc4_context.h | 2 ++ src/gallium/drivers/vc4/vc4_draw.c | 3 ++- src/gallium/drivers/vc4/vc4_program.c | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/vc4/vc4_context.h b/src/gallium/drivers/vc4/vc4_context.h index 3a8ae82..db9e82d 100644 --- a/src/gallium/drivers/vc4/vc4_context.h +++ b/src/gallium/drivers/vc4/vc4_context.h @@ -163,6 +163,8 @@ struct vc4_compiled_shader { */ bool failed; + bool fs_threaded; + uint8_t num_inputs; /* Byte offsets for the start of the vertex attributes 0-7, and the diff --git a/src/gallium/drivers/vc4/vc4_draw.c b/src/gallium/drivers/vc4/vc4_draw.c index c5afc0c..13db9da 100644 --- a/src/gallium/drivers/vc4/vc4_draw.c +++ b/src/gallium/drivers/vc4/vc4_draw.c @@ -155,7 +155,8 @@ vc4_emit_gl_shader_state(struct vc4_context *vc4, /* VC4_DIRTY_PRIM_MODE | VC4_DIRTY_RASTERIZER */ cl_u16(&shader_rec, VC4_SHADER_FLAG_ENABLE_CLIPPING | - VC4_SHADER_FLAG_FS_SINGLE_THREAD | + (vc4->prog.fs->fs_threaded ? + 0 : VC4_SHADER_FLAG_FS_SINGLE_THREAD) | ((info->mode == PIPE_PRIM_POINTS && vc4->rasterizer->base.point_size_per_vertex) ? VC4_SHADER_FLAG_VS_POINT_SIZE : 0)); diff --git a/src/gallium/drivers/vc4/vc4_program.c b/src/gallium/drivers/vc4/vc4_program.c index d2281ce..3c30f8c 100644 --- a/src/gallium/drivers/vc4/vc4_program.c +++ b/src/gallium/drivers/vc4/vc4_program.c @@ -2543,6 +2543,8 @@ vc4_get_compiled_shader(struct vc4_context *vc4, enum qstage stage, sizeof(uint64_t)); } + shader->fs_threaded = c->fs_threaded; + /* Copy the compiler UBO range state to the compiled shader, dropping * out arrays that were never referenced by an indirect load. * _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
