[Mesa-dev] [PATCH 21/26] i965: Make fs_visitor::emit_urb_writes set EOT for TES as well.
Kristian Høgsberg
hoegsberg at gmail.com
Fri Dec 11 13:02:45 PST 2015
Kenneth Graunke <kenneth at whitecape.org> writes:
> Tessellation evaluation shaders work almost identically to vertex
> shaders - we have a set of URB writes at the end of the program, and the
> last one should terminate it.
>
> Geometry shaders really are the special case, where multiple
> EmitVertex() calls trigger URB writes in the middle of the program.
>
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Kristian Høgsberg <krh at bitplanet.net>
> ---
> src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
> index a9a20aa..0582e78 100644
> --- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
> @@ -870,7 +870,7 @@ fs_visitor::emit_urb_writes(const fs_reg &gs_vertex_count)
> header_size);
>
> fs_inst *inst = abld.emit(opcode, reg_undef, payload);
> - inst->eot = last && stage == MESA_SHADER_VERTEX;
> + inst->eot = last && stage != MESA_SHADER_GEOMETRY;
> inst->mlen = length + header_size;
> inst->offset = urb_offset;
> urb_offset = starting_urb_offset + slot + 1;
> --
> 2.6.2
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list