[Mesa-dev] [PATCH 1/4] radv: avoid casting warnings on 32bit

Grazvydas Ignotas notasas at gmail.com
Sun Mar 5 21:04:50 UTC 2017


Use the same helpers as for other handle<->pointer conversions.

Signed-off-by: Grazvydas Ignotas <notasas at gmail.com>
---
 src/amd/vulkan/radv_device.c  | 5 ++---
 src/amd/vulkan/radv_private.h | 3 +++
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index eaf610c..8f8e0ce 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -2027,7 +2027,7 @@ VkResult radv_CreateSemaphore(
 	if (!sem)
 		return VK_ERROR_OUT_OF_HOST_MEMORY;
 
-	*pSemaphore = (VkSemaphore)sem;
+	*pSemaphore = radeon_winsys_sem_to_handle(sem);
 	return VK_SUCCESS;
 }
 
@@ -2037,11 +2037,10 @@ void radv_DestroySemaphore(
 	const VkAllocationCallbacks*                pAllocator)
 {
 	RADV_FROM_HANDLE(radv_device, device, _device);
-	struct radeon_winsys_sem *sem;
+	RADV_FROM_HANDLE(radeon_winsys_sem, sem, _semaphore);
 	if (!_semaphore)
 		return;
 
-	sem = (struct radeon_winsys_sem *)_semaphore;
 	device->ws->destroy_sem(sem);
 }
 
diff --git a/src/amd/vulkan/radv_private.h b/src/amd/vulkan/radv_private.h
index 37549c5..0d4c379 100644
--- a/src/amd/vulkan/radv_private.h
+++ b/src/amd/vulkan/radv_private.h
@@ -1326,6 +1326,8 @@ struct radv_fence {
 	bool signalled;
 };
 
+struct radeon_winsys_sem;
+
 #define RADV_DEFINE_HANDLE_CASTS(__radv_type, __VkType)		\
 								\
 	static inline struct __radv_type *			\
@@ -1382,5 +1384,6 @@ RADV_DEFINE_NONDISP_HANDLE_CASTS(radv_query_pool, VkQueryPool)
 RADV_DEFINE_NONDISP_HANDLE_CASTS(radv_render_pass, VkRenderPass)
 RADV_DEFINE_NONDISP_HANDLE_CASTS(radv_sampler, VkSampler)
 RADV_DEFINE_NONDISP_HANDLE_CASTS(radv_shader_module, VkShaderModule)
+RADV_DEFINE_NONDISP_HANDLE_CASTS(radeon_winsys_sem, VkSemaphore)
 
 #endif /* RADV_PRIVATE_H */
-- 
2.7.4



More information about the mesa-dev mailing list