From: Tim Rowley Date: Wed, 4 May 2016 21:04:39 +0000 (-0600) Subject: swr: [rasterizer core] move variable query outside loop X-Git-Tag: upstream/17.1.0~9668 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a0747c4ce3b0dd89fbaa7f4dc4237df4ea7a97e3;p=platform%2Fupstream%2Fmesa.git swr: [rasterizer core] move variable query outside loop Reviewed-by: Bruce Cherniak --- diff --git a/src/gallium/drivers/swr/rasterizer/core/frontend.cpp b/src/gallium/drivers/swr/rasterizer/core/frontend.cpp index c13280e..6bb9b12 100644 --- a/src/gallium/drivers/swr/rasterizer/core/frontend.cpp +++ b/src/gallium/drivers/swr/rasterizer/core/frontend.cpp @@ -1575,6 +1575,7 @@ void BinTriangles( const SWR_RASTSTATE& rastState = state.rastState; const SWR_FRONTEND_STATE& feState = state.frontendState; const SWR_GS_STATE& gsState = state.gsState; + MacroTileMgr *pTileMgr = pDC->pTileMgr; // Simple wireframe mode for debugging purposes only @@ -1783,6 +1784,7 @@ void BinTriangles( _simd_store_si((simdscalari*)aRTAI, _simd_setzero_si()); } + // scan remaining valid triangles and bin each separately while (_BitScanForward(&triIndex, triMask)) { @@ -1835,7 +1837,6 @@ void BinTriangles( ProcessUserClipDist<3>(pa, triIndex, rastState.clipDistanceMask, desc.pUserClipBuffer); } - MacroTileMgr *pTileMgr = pDC->pTileMgr; for (uint32_t y = aMTTop[triIndex]; y <= aMTBottom[triIndex]; ++y) { for (uint32_t x = aMTLeft[triIndex]; x <= aMTRight[triIndex]; ++x)