[Mesa-dev] [PATCH 20/31] swr/rast: Fix primitive replication issue in tesselation PA.

George Kyriazis george.kyriazis at intel.com
Tue Feb 13 22:42:38 UTC 2018


---
 src/gallium/drivers/swr/rasterizer/core/frontend.cpp | 4 ++--
 src/gallium/drivers/swr/rasterizer/core/pa.h         | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/swr/rasterizer/core/frontend.cpp b/src/gallium/drivers/swr/rasterizer/core/frontend.cpp
index 33533af..13c9f36 100644
--- a/src/gallium/drivers/swr/rasterizer/core/frontend.cpp
+++ b/src/gallium/drivers/swr/rasterizer/core/frontend.cpp
@@ -1338,7 +1338,7 @@ static void TessellationStages(
             tsData.ppIndices,
             tsData.NumPrimitives,
             tsState.postDSTopology,
-            numVertsPerPrim);
+            NumVertsPerPrim(tsState.postDSTopology, false));
 
         while (tessPa.HasWork())
         {
@@ -1431,7 +1431,7 @@ static void TessellationStages(
                         pfnClipFunc(pDC, tessPa, workerId, prim_simd16, GenMask(numPrims), primID, vViewportIdx, vRtIdx);
                     }
 #else
-                    // Gather data from the SVG if provided.
+                    // Gather data from the SGV if provided.
                     simdscalari vViewportIdx = SIMD::setzero_si();
                     simdscalari vRtIdx = SIMD::setzero_si();
                     SIMD::Vec4 svgAttrib[4];
diff --git a/src/gallium/drivers/swr/rasterizer/core/pa.h b/src/gallium/drivers/swr/rasterizer/core/pa.h
index c88b4bf..ed644c0 100644
--- a/src/gallium/drivers/swr/rasterizer/core/pa.h
+++ b/src/gallium/drivers/swr/rasterizer/core/pa.h
@@ -1330,6 +1330,7 @@ struct PA_TESS : PA_STATE
         SWR_ASSERT(slot < m_numAttributes);
         SWR_ASSERT(primIndex < PA_TESS::NumPrims());
 
+
         const float* pVertDataBase = (const float*)&m_pVertexData[slot * m_attributeStrideInVectors * 4];
         for (uint32_t i = 0; i < m_numVertsPerPrim; ++i)
         {
-- 
2.7.4



More information about the mesa-dev mailing list