swr: [rasterizer core] don't attempt to load another RTAI when storing
authorIlia Mirkin <imirkin@alum.mit.edu>
Thu, 17 Nov 2016 02:33:29 +0000 (21:33 -0500)
committerIlia Mirkin <imirkin@alum.mit.edu>
Thu, 1 Dec 2016 01:34:55 +0000 (20:34 -0500)
Since we don't pass a renderTargetArrayIndex in, and the current hot
tile may be for a different index, we may end up loading the RTAI=0 into
the hot tile for no reason.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tim Rowley <timothy.o.rowley@intel.com>
src/gallium/drivers/swr/rasterizer/core/backend.cpp

index 911dd5efe6e6ba1c369b0f926282e121902679b1..71655f1072a69ab62160967bbad386bfcfd396dc 100644 (file)
@@ -354,7 +354,7 @@ void ProcessStoreTileBE(DRAW_CONTEXT *pDC, uint32_t workerId, uint32_t macroTile
     MacroTileMgr::getTileIndices(macroTile, x, y);
 
     // Only need to store the hottile if it's been rendered to...
-    HOTTILE *pHotTile = pContext->pHotTileMgr->GetHotTile(pContext, pDC, macroTile, attachment, false);
+    HOTTILE *pHotTile = pContext->pHotTileMgr->GetHotTileNoLoad(pContext, pDC, macroTile, attachment, false);
     if (pHotTile)
     {
         // clear if clear is pending (i.e., not rendered to), then mark as dirty for store.