From e893b3a3672287f266a355e5b78ad7115e880292 Mon Sep 17 00:00:00 2001 From: Ilia Mirkin Date: Sun, 5 Mar 2017 18:24:44 -0500 Subject: [PATCH] swr: support layer output in geometry shaders This makes bin/gl-3.2-layered-rendering-gl-layer-render fail only with 2DMS_ARRAY, which is expected given the lackluster MSAA support. However all the regular types pass. Signed-off-by: Ilia Mirkin Reviewed-by: Bruce Cherniak --- src/gallium/drivers/swr/swr_shader.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/drivers/swr/swr_shader.cpp b/src/gallium/drivers/swr/swr_shader.cpp index a449c58..a61ed9c 100644 --- a/src/gallium/drivers/swr/swr_shader.cpp +++ b/src/gallium/drivers/swr/swr_shader.cpp @@ -391,6 +391,8 @@ BuilderSWR::swr_gs_llvm_emit_vertex(const struct lp_build_tgsi_gs_iface *gs_base attribSlot = VERTEX_POINT_SIZE_SLOT; else if (iface->info->output_semantic_name[attrib] == TGSI_SEMANTIC_PRIMID) attribSlot = VERTEX_PRIMID_SLOT; + else if (iface->info->output_semantic_name[attrib] == TGSI_SEMANTIC_LAYER) + attribSlot = VERTEX_RTAI_SLOT; Value *vOffsetsAttrib = ADD(vOffsets, MUL(vVertexSlot, VIMMED1((uint32_t)sizeof(simdvertex)))); -- 2.7.4