diff options
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/swr/rasterizer/core/api.cpp | 2 | ||||
-rw-r--r-- | src/gallium/drivers/swr/rasterizer/core/context.h | 8 | ||||
-rw-r--r-- | src/gallium/drivers/swr/rasterizer/core/threads.cpp | 4 |
3 files changed, 7 insertions, 7 deletions
diff --git a/src/gallium/drivers/swr/rasterizer/core/api.cpp b/src/gallium/drivers/swr/rasterizer/core/api.cpp index 2423aa7378f..84abf1e9040 100644 --- a/src/gallium/drivers/swr/rasterizer/core/api.cpp +++ b/src/gallium/drivers/swr/rasterizer/core/api.cpp @@ -192,7 +192,7 @@ void QueueWork(SWR_CONTEXT *pContext) if (IsDraw) { - InterlockedIncrement((volatile LONG*)&pContext->drawsOutstandingFE); + InterlockedIncrement(&pContext->drawsOutstandingFE); } _ReadWriteBarrier(); diff --git a/src/gallium/drivers/swr/rasterizer/core/context.h b/src/gallium/drivers/swr/rasterizer/core/context.h index 94085e59998..971367c2488 100644 --- a/src/gallium/drivers/swr/rasterizer/core/context.h +++ b/src/gallium/drivers/swr/rasterizer/core/context.h @@ -408,12 +408,12 @@ struct DRAW_CONTEXT bool dependent; // Backend work is dependent on all previous BE bool isCompute; // Is this DC a compute context? bool cleanupState; // True if this is the last draw using an entry in the state ring. - volatile bool doneFE; // Is FE work done for this draw? FE_WORK FeWork; + volatile OSALIGNLINE(bool) doneFE; // Is FE work done for this draw? volatile OSALIGNLINE(uint32_t) FeLock; - volatile int32_t threadsDone; + volatile OSALIGNLINE(uint32_t) threadsDone; SYNC_DESC retireCallback; // Call this func when this DC is retired. @@ -504,9 +504,9 @@ struct SWR_CONTEXT // Scratch space for workers. uint8_t** ppScratch; - volatile int32_t drawsOutstandingFE; + volatile OSALIGNLINE(uint32_t) drawsOutstandingFE; - CachingAllocator cachingArenaAllocator; + OSALIGNLINE(CachingAllocator) cachingArenaAllocator; uint32_t frameCount; uint32_t lastFrameChecked; diff --git a/src/gallium/drivers/swr/rasterizer/core/threads.cpp b/src/gallium/drivers/swr/rasterizer/core/threads.cpp index 4c223171be5..682f0539e06 100644 --- a/src/gallium/drivers/swr/rasterizer/core/threads.cpp +++ b/src/gallium/drivers/swr/rasterizer/core/threads.cpp @@ -393,7 +393,7 @@ INLINE void ExecuteCallbacks(SWR_CONTEXT* pContext, uint32_t workerId, DRAW_CONT // inlined-only version INLINE int32_t CompleteDrawContextInl(SWR_CONTEXT* pContext, uint32_t workerId, DRAW_CONTEXT* pDC) { - int32_t result = InterlockedDecrement((volatile LONG*)&pDC->threadsDone); + int32_t result = static_cast<int32_t>(InterlockedDecrement(&pDC->threadsDone)); SWR_ASSERT(result >= 0); AR_FLUSH(pDC->drawId); @@ -639,7 +639,7 @@ INLINE void CompleteDrawFE(SWR_CONTEXT* pContext, uint32_t workerId, DRAW_CONTEX _mm_mfence(); pDC->doneFE = true; - InterlockedDecrement((volatile LONG*)&pContext->drawsOutstandingFE); + InterlockedDecrement(&pContext->drawsOutstandingFE); } void WorkOnFifoFE(SWR_CONTEXT *pContext, uint32_t workerId, uint32_t &curDrawFE) |