From: Ilia Mirkin Date: Sun, 5 Mar 2017 23:24:44 +0000 (-0500) Subject: swr: support layer output in geometry shaders X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e893b3a3672287f266a355e5b78ad7115e880292;p=mesa.git 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 --- diff --git a/src/gallium/drivers/swr/swr_shader.cpp b/src/gallium/drivers/swr/swr_shader.cpp index a449c58ed95..a61ed9c3519 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))));