vkd3d: Fix MSVC build.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
This commit is contained in:
Hans-Kristian Arntzen 2021-08-31 11:26:01 +02:00
parent 00e4397467
commit b54a1a6c2b
4 changed files with 15 additions and 9 deletions

View File

@ -271,4 +271,10 @@ static inline void *void_ptr_offset(void *ptr, size_t offset)
return ((char*)ptr) + offset; return ((char*)ptr) + offset;
} }
#ifdef _MSC_VER
#define VKD3D_THREAD_LOCAL __declspec(thread)
#else
#define VKD3D_THREAD_LOCAL __thread
#endif
#endif /* __VKD3D_COMMON_H */ #endif /* __VKD3D_COMMON_H */

View File

@ -3457,7 +3457,7 @@ static void STDMETHODCALLTYPE d3d12_device_CreateShaderResourceView(d3d12_device
device, unsafe_impl_from_ID3D12Resource(resource), desc); device, unsafe_impl_from_ID3D12Resource(resource), desc);
} }
__thread struct D3D12_UAV_INFO *d3d12_uav_info = NULL; VKD3D_THREAD_LOCAL struct D3D12_UAV_INFO *d3d12_uav_info = NULL;
static void STDMETHODCALLTYPE d3d12_device_CreateUnorderedAccessView(d3d12_device_iface *iface, static void STDMETHODCALLTYPE d3d12_device_CreateUnorderedAccessView(d3d12_device_iface *iface,
ID3D12Resource *resource, ID3D12Resource *counter_resource, ID3D12Resource *resource, ID3D12Resource *counter_resource,

View File

@ -198,7 +198,7 @@ static HRESULT STDMETHODCALLTYPE d3d12_device_vkd3d_ext_GetCudaSurfaceObject(ID3
return S_OK; return S_OK;
} }
extern __thread struct D3D12_UAV_INFO *d3d12_uav_info; extern VKD3D_THREAD_LOCAL struct D3D12_UAV_INFO *d3d12_uav_info;
static HRESULT STDMETHODCALLTYPE d3d12_device_vkd3d_ext_CaptureUAVInfo(ID3D12DeviceExt *iface, D3D12_UAV_INFO *uav_info) static HRESULT STDMETHODCALLTYPE d3d12_device_vkd3d_ext_CaptureUAVInfo(ID3D12DeviceExt *iface, D3D12_UAV_INFO *uav_info)
{ {

View File

@ -278,15 +278,15 @@ VK_DEVICE_EXT_PFN(vkQueuePresentKHR)
VK_DEVICE_EXT_PFN(vkCmdWriteBufferMarkerAMD) VK_DEVICE_EXT_PFN(vkCmdWriteBufferMarkerAMD)
/* VK_NVX_binary_import */ /* VK_NVX_binary_import */
VK_DEVICE_EXT_PFN(vkCreateCuModuleNVX); VK_DEVICE_EXT_PFN(vkCreateCuModuleNVX)
VK_DEVICE_EXT_PFN(vkCreateCuFunctionNVX); VK_DEVICE_EXT_PFN(vkCreateCuFunctionNVX)
VK_DEVICE_EXT_PFN(vkDestroyCuModuleNVX); VK_DEVICE_EXT_PFN(vkDestroyCuModuleNVX)
VK_DEVICE_EXT_PFN(vkDestroyCuFunctionNVX); VK_DEVICE_EXT_PFN(vkDestroyCuFunctionNVX)
VK_DEVICE_EXT_PFN(vkCmdCuLaunchKernelNVX); VK_DEVICE_EXT_PFN(vkCmdCuLaunchKernelNVX)
/* VK_NVX_image_view_handle */ /* VK_NVX_image_view_handle */
VK_DEVICE_EXT_PFN(vkGetImageViewHandleNVX); VK_DEVICE_EXT_PFN(vkGetImageViewHandleNVX)
VK_DEVICE_EXT_PFN(vkGetImageViewAddressNVX); VK_DEVICE_EXT_PFN(vkGetImageViewAddressNVX)
#undef VK_INSTANCE_PFN #undef VK_INSTANCE_PFN
#undef VK_INSTANCE_EXT_PFN #undef VK_INSTANCE_EXT_PFN