Mesa (master): swr: [rasterizer core] fix cast for stencil clear value

Tim Rowley torowley at kemper.freedesktop.org
Wed Nov 23 02:13:56 UTC 2016


Module: Mesa
Branch: master
Commit: 9c13cc94518b3dfb70774695de4191a551a5a7fa
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9c13cc94518b3dfb70774695de4191a551a5a7fa

Author: Tim Rowley <timothy.o.rowley at intel.com>
Date:   Tue Nov 22 19:50:55 2016 -0600

swr: [rasterizer core] fix cast for stencil clear value

Bad type cast for stencil clear value was picking up structure
padding bytes.

Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>

---

 src/gallium/drivers/swr/rasterizer/core/backend.cpp | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/swr/rasterizer/core/backend.cpp b/src/gallium/drivers/swr/rasterizer/core/backend.cpp
index 0ec64fc..24779d4 100644
--- a/src/gallium/drivers/swr/rasterizer/core/backend.cpp
+++ b/src/gallium/drivers/swr/rasterizer/core/backend.cpp
@@ -271,7 +271,7 @@ void ProcessClearBE(DRAW_CONTEXT *pDC, uint32_t workerId, uint32_t macroTile, vo
         {
             HOTTILE *pHotTile = pContext->pHotTileMgr->GetHotTile(pContext, pDC, macroTile, SWR_ATTACHMENT_STENCIL, true, numSamples);
 
-            pHotTile->clearData[0] = *(DWORD*)&pClear->clearStencil;
+            pHotTile->clearData[0] = pClear->clearStencil;
             pHotTile->state = HOTTILE_CLEAR;
         }
 
@@ -322,9 +322,8 @@ void ProcessClearBE(DRAW_CONTEXT *pDC, uint32_t workerId, uint32_t macroTile, vo
 
         if (pClear->attachmentMask & SWR_ATTACHMENT_STENCIL_BIT)
         {
-            uint32_t value = pClear->clearStencil;
             DWORD clearData[4];
-            clearData[0] = *(DWORD*)&value;
+            clearData[0] = pClear->clearStencil;
             PFN_CLEAR_TILES pfnClearTiles = sClearTilesTable[KNOB_STENCIL_HOT_TILE_FORMAT];
 
             pfnClearTiles(pDC, SWR_ATTACHMENT_STENCIL, macroTile, clearData, pClear->rect);




More information about the mesa-commit mailing list