Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
b04d0915
Commit
b04d0915
authored
Nov 03, 2022
by
Georg Lehmann
Committed by
Alexandre Julliard
Nov 03, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winevulkan: Update to VK spec version 1.3.233.
parent
5f46d556
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
444 additions
and
3 deletions
+444
-3
loader_thunks.c
dlls/winevulkan/loader_thunks.c
+54
-0
loader_thunks.h
dlls/winevulkan/loader_thunks.h
+38
-0
make_vulkan
dlls/winevulkan/make_vulkan
+1
-1
vulkan_thunks.c
dlls/winevulkan/vulkan_thunks.c
+207
-0
vulkan_thunks.h
dlls/winevulkan/vulkan_thunks.h
+21
-0
winevulkan.json
dlls/winevulkan/winevulkan.json
+1
-1
vulkan.h
include/wine/vulkan.h
+122
-1
No files found.
dlls/winevulkan/loader_thunks.c
View file @
b04d0915
...
...
@@ -766,6 +766,18 @@ void WINAPI vkCmdCopyImageToBuffer2KHR(VkCommandBuffer commandBuffer, const VkCo
assert
(
!
status
);
}
void
WINAPI
vkCmdCopyMemoryIndirectNV
(
VkCommandBuffer
commandBuffer
,
VkDeviceAddress
copyBufferAddress
,
uint32_t
copyCount
,
uint32_t
stride
)
{
struct
vkCmdCopyMemoryIndirectNV_params
params
;
NTSTATUS
status
;
params
.
commandBuffer
=
commandBuffer
;
params
.
copyBufferAddress
=
copyBufferAddress
;
params
.
copyCount
=
copyCount
;
params
.
stride
=
stride
;
status
=
p_vk_direct_unix_call
(
unix_handle
,
unix_vkCmdCopyMemoryIndirectNV
,
&
params
);
assert
(
!
status
);
}
void
WINAPI
vkCmdCopyMemoryToAccelerationStructureKHR
(
VkCommandBuffer
commandBuffer
,
const
VkCopyMemoryToAccelerationStructureInfoKHR
*
pInfo
)
{
struct
vkCmdCopyMemoryToAccelerationStructureKHR_params
params
;
...
...
@@ -776,6 +788,21 @@ void WINAPI vkCmdCopyMemoryToAccelerationStructureKHR(VkCommandBuffer commandBuf
assert
(
!
status
);
}
void
WINAPI
vkCmdCopyMemoryToImageIndirectNV
(
VkCommandBuffer
commandBuffer
,
VkDeviceAddress
copyBufferAddress
,
uint32_t
copyCount
,
uint32_t
stride
,
VkImage
dstImage
,
VkImageLayout
dstImageLayout
,
const
VkImageSubresourceLayers
*
pImageSubresources
)
{
struct
vkCmdCopyMemoryToImageIndirectNV_params
params
;
NTSTATUS
status
;
params
.
commandBuffer
=
commandBuffer
;
params
.
copyBufferAddress
=
copyBufferAddress
;
params
.
copyCount
=
copyCount
;
params
.
stride
=
stride
;
params
.
dstImage
=
dstImage
;
params
.
dstImageLayout
=
dstImageLayout
;
params
.
pImageSubresources
=
pImageSubresources
;
status
=
p_vk_direct_unix_call
(
unix_handle
,
unix_vkCmdCopyMemoryToImageIndirectNV
,
&
params
);
assert
(
!
status
);
}
void
WINAPI
vkCmdCopyMemoryToMicromapEXT
(
VkCommandBuffer
commandBuffer
,
const
VkCopyMemoryToMicromapInfoEXT
*
pInfo
)
{
struct
vkCmdCopyMemoryToMicromapEXT_params
params
;
...
...
@@ -861,6 +888,29 @@ void WINAPI vkCmdDebugMarkerInsertEXT(VkCommandBuffer commandBuffer, const VkDeb
assert
(
!
status
);
}
void
WINAPI
vkCmdDecompressMemoryIndirectCountNV
(
VkCommandBuffer
commandBuffer
,
VkDeviceAddress
indirectCommandsAddress
,
VkDeviceAddress
indirectCommandsCountAddress
,
uint32_t
stride
)
{
struct
vkCmdDecompressMemoryIndirectCountNV_params
params
;
NTSTATUS
status
;
params
.
commandBuffer
=
commandBuffer
;
params
.
indirectCommandsAddress
=
indirectCommandsAddress
;
params
.
indirectCommandsCountAddress
=
indirectCommandsCountAddress
;
params
.
stride
=
stride
;
status
=
p_vk_direct_unix_call
(
unix_handle
,
unix_vkCmdDecompressMemoryIndirectCountNV
,
&
params
);
assert
(
!
status
);
}
void
WINAPI
vkCmdDecompressMemoryNV
(
VkCommandBuffer
commandBuffer
,
uint32_t
decompressRegionCount
,
const
VkDecompressMemoryRegionNV
*
pDecompressMemoryRegions
)
{
struct
vkCmdDecompressMemoryNV_params
params
;
NTSTATUS
status
;
params
.
commandBuffer
=
commandBuffer
;
params
.
decompressRegionCount
=
decompressRegionCount
;
params
.
pDecompressMemoryRegions
=
pDecompressMemoryRegions
;
status
=
p_vk_direct_unix_call
(
unix_handle
,
unix_vkCmdDecompressMemoryNV
,
&
params
);
assert
(
!
status
);
}
void
WINAPI
vkCmdDispatch
(
VkCommandBuffer
commandBuffer
,
uint32_t
groupCountX
,
uint32_t
groupCountY
,
uint32_t
groupCountZ
)
{
struct
vkCmdDispatch_params
params
;
...
...
@@ -5969,7 +6019,9 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{
"vkCmdCopyImageToBuffer"
,
vkCmdCopyImageToBuffer
},
{
"vkCmdCopyImageToBuffer2"
,
vkCmdCopyImageToBuffer2
},
{
"vkCmdCopyImageToBuffer2KHR"
,
vkCmdCopyImageToBuffer2KHR
},
{
"vkCmdCopyMemoryIndirectNV"
,
vkCmdCopyMemoryIndirectNV
},
{
"vkCmdCopyMemoryToAccelerationStructureKHR"
,
vkCmdCopyMemoryToAccelerationStructureKHR
},
{
"vkCmdCopyMemoryToImageIndirectNV"
,
vkCmdCopyMemoryToImageIndirectNV
},
{
"vkCmdCopyMemoryToMicromapEXT"
,
vkCmdCopyMemoryToMicromapEXT
},
{
"vkCmdCopyMicromapEXT"
,
vkCmdCopyMicromapEXT
},
{
"vkCmdCopyMicromapToMemoryEXT"
,
vkCmdCopyMicromapToMemoryEXT
},
...
...
@@ -5978,6 +6030,8 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{
"vkCmdDebugMarkerBeginEXT"
,
vkCmdDebugMarkerBeginEXT
},
{
"vkCmdDebugMarkerEndEXT"
,
vkCmdDebugMarkerEndEXT
},
{
"vkCmdDebugMarkerInsertEXT"
,
vkCmdDebugMarkerInsertEXT
},
{
"vkCmdDecompressMemoryIndirectCountNV"
,
vkCmdDecompressMemoryIndirectCountNV
},
{
"vkCmdDecompressMemoryNV"
,
vkCmdDecompressMemoryNV
},
{
"vkCmdDispatch"
,
vkCmdDispatch
},
{
"vkCmdDispatchBase"
,
vkCmdDispatchBase
},
{
"vkCmdDispatchBaseKHR"
,
vkCmdDispatchBaseKHR
},
...
...
dlls/winevulkan/loader_thunks.h
View file @
b04d0915
...
...
@@ -80,7 +80,9 @@ enum unix_call
unix_vkCmdCopyImageToBuffer
,
unix_vkCmdCopyImageToBuffer2
,
unix_vkCmdCopyImageToBuffer2KHR
,
unix_vkCmdCopyMemoryIndirectNV
,
unix_vkCmdCopyMemoryToAccelerationStructureKHR
,
unix_vkCmdCopyMemoryToImageIndirectNV
,
unix_vkCmdCopyMemoryToMicromapEXT
,
unix_vkCmdCopyMicromapEXT
,
unix_vkCmdCopyMicromapToMemoryEXT
,
...
...
@@ -89,6 +91,8 @@ enum unix_call
unix_vkCmdDebugMarkerBeginEXT
,
unix_vkCmdDebugMarkerEndEXT
,
unix_vkCmdDebugMarkerInsertEXT
,
unix_vkCmdDecompressMemoryIndirectCountNV
,
unix_vkCmdDecompressMemoryNV
,
unix_vkCmdDispatch
,
unix_vkCmdDispatchBase
,
unix_vkCmdDispatchBaseKHR
,
...
...
@@ -1044,12 +1048,31 @@ struct vkCmdCopyImageToBuffer2KHR_params
const
VkCopyImageToBufferInfo2
*
pCopyImageToBufferInfo
;
};
struct
vkCmdCopyMemoryIndirectNV_params
{
VkCommandBuffer
commandBuffer
;
VkDeviceAddress
copyBufferAddress
;
uint32_t
copyCount
;
uint32_t
stride
;
};
struct
vkCmdCopyMemoryToAccelerationStructureKHR_params
{
VkCommandBuffer
commandBuffer
;
const
VkCopyMemoryToAccelerationStructureInfoKHR
*
pInfo
;
};
struct
vkCmdCopyMemoryToImageIndirectNV_params
{
VkCommandBuffer
commandBuffer
;
VkDeviceAddress
copyBufferAddress
;
uint32_t
copyCount
;
uint32_t
stride
;
VkImage
DECLSPEC_ALIGN
(
8
)
dstImage
;
VkImageLayout
dstImageLayout
;
const
VkImageSubresourceLayers
*
pImageSubresources
;
};
struct
vkCmdCopyMemoryToMicromapEXT_params
{
VkCommandBuffer
commandBuffer
;
...
...
@@ -1103,6 +1126,21 @@ struct vkCmdDebugMarkerInsertEXT_params
const
VkDebugMarkerMarkerInfoEXT
*
pMarkerInfo
;
};
struct
vkCmdDecompressMemoryIndirectCountNV_params
{
VkCommandBuffer
commandBuffer
;
VkDeviceAddress
indirectCommandsAddress
;
VkDeviceAddress
indirectCommandsCountAddress
;
uint32_t
stride
;
};
struct
vkCmdDecompressMemoryNV_params
{
VkCommandBuffer
commandBuffer
;
uint32_t
decompressRegionCount
;
const
VkDecompressMemoryRegionNV
*
pDecompressMemoryRegions
;
};
struct
vkCmdDispatch_params
{
VkCommandBuffer
commandBuffer
;
...
...
dlls/winevulkan/make_vulkan
View file @
b04d0915
...
...
@@ -64,7 +64,7 @@ from enum import Enum
LOGGER
=
logging
.
Logger
(
"vulkan"
)
LOGGER
.
addHandler
(
logging
.
StreamHandler
())
VK_XML_VERSION
=
"1.3.23
0
"
VK_XML_VERSION
=
"1.3.23
3
"
WINE_VK_VERSION
=
(
1
,
3
)
# Filenames to create.
...
...
dlls/winevulkan/vulkan_thunks.c
View file @
b04d0915
...
...
@@ -671,6 +671,28 @@ static inline void convert_VkCuLaunchInfoNVX_win32_to_host(const VkCuLaunchInfoN
}
#endif
/* USE_STRUCT_CONVERSION */
#if defined(USE_STRUCT_CONVERSION)
static
inline
VkDecompressMemoryRegionNV_host
*
convert_VkDecompressMemoryRegionNV_array_win32_to_host
(
struct
conversion_context
*
ctx
,
const
VkDecompressMemoryRegionNV
*
in
,
uint32_t
count
)
{
VkDecompressMemoryRegionNV_host
*
out
;
unsigned
int
i
;
if
(
!
in
||
!
count
)
return
NULL
;
out
=
conversion_context_alloc
(
ctx
,
count
*
sizeof
(
*
out
));
for
(
i
=
0
;
i
<
count
;
i
++
)
{
out
[
i
].
srcAddress
=
in
[
i
].
srcAddress
;
out
[
i
].
dstAddress
=
in
[
i
].
dstAddress
;
out
[
i
].
compressedSize
=
in
[
i
].
compressedSize
;
out
[
i
].
decompressedSize
=
in
[
i
].
decompressedSize
;
out
[
i
].
decompressionMethod
=
in
[
i
].
decompressionMethod
;
}
return
out
;
}
#endif
/* USE_STRUCT_CONVERSION */
#if !defined(USE_STRUCT_CONVERSION)
static
inline
VkCommandBuffer
*
convert_VkCommandBuffer_array_win64_to_host
(
struct
conversion_context
*
ctx
,
const
VkCommandBuffer
*
in
,
uint32_t
count
)
{
...
...
@@ -3393,6 +3415,38 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(struct conversion_context *ctx,
break
;
}
case
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV
:
{
const
VkPhysicalDeviceCopyMemoryIndirectFeaturesNV
*
in
=
(
const
VkPhysicalDeviceCopyMemoryIndirectFeaturesNV
*
)
in_header
;
VkPhysicalDeviceCopyMemoryIndirectFeaturesNV
*
out
;
if
(
!
(
out
=
conversion_context_alloc
(
ctx
,
sizeof
(
*
out
))))
return
VK_ERROR_OUT_OF_HOST_MEMORY
;
out
->
sType
=
in
->
sType
;
out
->
pNext
=
NULL
;
out
->
indirectCopy
=
in
->
indirectCopy
;
out_header
->
pNext
=
(
VkBaseOutStructure
*
)
out
;
out_header
=
out_header
->
pNext
;
break
;
}
case
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV
:
{
const
VkPhysicalDeviceMemoryDecompressionFeaturesNV
*
in
=
(
const
VkPhysicalDeviceMemoryDecompressionFeaturesNV
*
)
in_header
;
VkPhysicalDeviceMemoryDecompressionFeaturesNV
*
out
;
if
(
!
(
out
=
conversion_context_alloc
(
ctx
,
sizeof
(
*
out
))))
return
VK_ERROR_OUT_OF_HOST_MEMORY
;
out
->
sType
=
in
->
sType
;
out
->
pNext
=
NULL
;
out
->
memoryDecompression
=
in
->
memoryDecompression
;
out_header
->
pNext
=
(
VkBaseOutStructure
*
)
out
;
out_header
=
out_header
->
pNext
;
break
;
}
case
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV
:
{
const
VkPhysicalDeviceShadingRateImageFeaturesNV
*
in
=
(
const
VkPhysicalDeviceShadingRateImageFeaturesNV
*
)
in_header
;
...
...
@@ -5154,6 +5208,38 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(struct conversion_context *ctx,
break
;
}
case
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM
:
{
const
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM
*
in
=
(
const
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM
*
)
in_header
;
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM
*
out
;
if
(
!
(
out
=
conversion_context_alloc
(
ctx
,
sizeof
(
*
out
))))
return
VK_ERROR_OUT_OF_HOST_MEMORY
;
out
->
sType
=
in
->
sType
;
out
->
pNext
=
NULL
;
out
->
shaderCoreBuiltins
=
in
->
shaderCoreBuiltins
;
out_header
->
pNext
=
(
VkBaseOutStructure
*
)
out
;
out_header
=
out_header
->
pNext
;
break
;
}
case
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV
:
{
const
VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV
*
in
=
(
const
VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV
*
)
in_header
;
VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV
*
out
;
if
(
!
(
out
=
conversion_context_alloc
(
ctx
,
sizeof
(
*
out
))))
return
VK_ERROR_OUT_OF_HOST_MEMORY
;
out
->
sType
=
in
->
sType
;
out
->
pNext
=
NULL
;
out
->
rayTracingInvocationReorder
=
in
->
rayTracingInvocationReorder
;
out_header
->
pNext
=
(
VkBaseOutStructure
*
)
out
;
out_header
=
out_header
->
pNext
;
break
;
}
default:
FIXME
(
"Application requested a linked structure of type %u.
\n
"
,
in_header
->
sType
);
}
...
...
@@ -7043,6 +7129,32 @@ static NTSTATUS thunk32_vkCmdCopyImageToBuffer2KHR(void *args)
#if !defined(USE_STRUCT_CONVERSION)
static
NTSTATUS
thunk64_vkCmdCopyMemoryIndirectNV
(
void
*
args
)
{
struct
vkCmdCopyMemoryIndirectNV_params
*
params
=
args
;
TRACE
(
"%p, 0x%s, %u, %u
\n
"
,
params
->
commandBuffer
,
wine_dbgstr_longlong
(
params
->
copyBufferAddress
),
params
->
copyCount
,
params
->
stride
);
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
device
->
funcs
.
p_vkCmdCopyMemoryIndirectNV
(
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
command_buffer
,
params
->
copyBufferAddress
,
params
->
copyCount
,
params
->
stride
);
return
STATUS_SUCCESS
;
}
#else
/* USE_STRUCT_CONVERSION */
static
NTSTATUS
thunk32_vkCmdCopyMemoryIndirectNV
(
void
*
args
)
{
struct
vkCmdCopyMemoryIndirectNV_params
*
params
=
args
;
TRACE
(
"%p, 0x%s, %u, %u
\n
"
,
params
->
commandBuffer
,
wine_dbgstr_longlong
(
params
->
copyBufferAddress
),
params
->
copyCount
,
params
->
stride
);
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
device
->
funcs
.
p_vkCmdCopyMemoryIndirectNV
(
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
command_buffer
,
params
->
copyBufferAddress
,
params
->
copyCount
,
params
->
stride
);
return
STATUS_SUCCESS
;
}
#endif
/* USE_STRUCT_CONVERSION */
#if !defined(USE_STRUCT_CONVERSION)
static
NTSTATUS
thunk64_vkCmdCopyMemoryToAccelerationStructureKHR
(
void
*
args
)
{
struct
vkCmdCopyMemoryToAccelerationStructureKHR_params
*
params
=
args
;
...
...
@@ -7071,6 +7183,32 @@ static NTSTATUS thunk32_vkCmdCopyMemoryToAccelerationStructureKHR(void *args)
#if !defined(USE_STRUCT_CONVERSION)
static
NTSTATUS
thunk64_vkCmdCopyMemoryToImageIndirectNV
(
void
*
args
)
{
struct
vkCmdCopyMemoryToImageIndirectNV_params
*
params
=
args
;
TRACE
(
"%p, 0x%s, %u, %u, 0x%s, %#x, %p
\n
"
,
params
->
commandBuffer
,
wine_dbgstr_longlong
(
params
->
copyBufferAddress
),
params
->
copyCount
,
params
->
stride
,
wine_dbgstr_longlong
(
params
->
dstImage
),
params
->
dstImageLayout
,
params
->
pImageSubresources
);
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
device
->
funcs
.
p_vkCmdCopyMemoryToImageIndirectNV
(
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
command_buffer
,
params
->
copyBufferAddress
,
params
->
copyCount
,
params
->
stride
,
params
->
dstImage
,
params
->
dstImageLayout
,
params
->
pImageSubresources
);
return
STATUS_SUCCESS
;
}
#else
/* USE_STRUCT_CONVERSION */
static
NTSTATUS
thunk32_vkCmdCopyMemoryToImageIndirectNV
(
void
*
args
)
{
struct
vkCmdCopyMemoryToImageIndirectNV_params
*
params
=
args
;
TRACE
(
"%p, 0x%s, %u, %u, 0x%s, %#x, %p
\n
"
,
params
->
commandBuffer
,
wine_dbgstr_longlong
(
params
->
copyBufferAddress
),
params
->
copyCount
,
params
->
stride
,
wine_dbgstr_longlong
(
params
->
dstImage
),
params
->
dstImageLayout
,
params
->
pImageSubresources
);
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
device
->
funcs
.
p_vkCmdCopyMemoryToImageIndirectNV
(
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
command_buffer
,
params
->
copyBufferAddress
,
params
->
copyCount
,
params
->
stride
,
params
->
dstImage
,
params
->
dstImageLayout
,
params
->
pImageSubresources
);
return
STATUS_SUCCESS
;
}
#endif
/* USE_STRUCT_CONVERSION */
#if !defined(USE_STRUCT_CONVERSION)
static
NTSTATUS
thunk64_vkCmdCopyMemoryToMicromapEXT
(
void
*
args
)
{
struct
vkCmdCopyMemoryToMicromapEXT_params
*
params
=
args
;
...
...
@@ -7287,6 +7425,63 @@ static NTSTATUS thunk32_vkCmdDebugMarkerInsertEXT(void *args)
#if !defined(USE_STRUCT_CONVERSION)
static
NTSTATUS
thunk64_vkCmdDecompressMemoryIndirectCountNV
(
void
*
args
)
{
struct
vkCmdDecompressMemoryIndirectCountNV_params
*
params
=
args
;
TRACE
(
"%p, 0x%s, 0x%s, %u
\n
"
,
params
->
commandBuffer
,
wine_dbgstr_longlong
(
params
->
indirectCommandsAddress
),
wine_dbgstr_longlong
(
params
->
indirectCommandsCountAddress
),
params
->
stride
);
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
device
->
funcs
.
p_vkCmdDecompressMemoryIndirectCountNV
(
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
command_buffer
,
params
->
indirectCommandsAddress
,
params
->
indirectCommandsCountAddress
,
params
->
stride
);
return
STATUS_SUCCESS
;
}
#else
/* USE_STRUCT_CONVERSION */
static
NTSTATUS
thunk32_vkCmdDecompressMemoryIndirectCountNV
(
void
*
args
)
{
struct
vkCmdDecompressMemoryIndirectCountNV_params
*
params
=
args
;
TRACE
(
"%p, 0x%s, 0x%s, %u
\n
"
,
params
->
commandBuffer
,
wine_dbgstr_longlong
(
params
->
indirectCommandsAddress
),
wine_dbgstr_longlong
(
params
->
indirectCommandsCountAddress
),
params
->
stride
);
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
device
->
funcs
.
p_vkCmdDecompressMemoryIndirectCountNV
(
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
command_buffer
,
params
->
indirectCommandsAddress
,
params
->
indirectCommandsCountAddress
,
params
->
stride
);
return
STATUS_SUCCESS
;
}
#endif
/* USE_STRUCT_CONVERSION */
#if !defined(USE_STRUCT_CONVERSION)
static
NTSTATUS
thunk64_vkCmdDecompressMemoryNV
(
void
*
args
)
{
struct
vkCmdDecompressMemoryNV_params
*
params
=
args
;
TRACE
(
"%p, %u, %p
\n
"
,
params
->
commandBuffer
,
params
->
decompressRegionCount
,
params
->
pDecompressMemoryRegions
);
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
device
->
funcs
.
p_vkCmdDecompressMemoryNV
(
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
command_buffer
,
params
->
decompressRegionCount
,
params
->
pDecompressMemoryRegions
);
return
STATUS_SUCCESS
;
}
#else
/* USE_STRUCT_CONVERSION */
static
NTSTATUS
thunk32_vkCmdDecompressMemoryNV
(
void
*
args
)
{
struct
vkCmdDecompressMemoryNV_params
*
params
=
args
;
VkDecompressMemoryRegionNV_host
*
pDecompressMemoryRegions_host
;
struct
conversion_context
ctx
;
TRACE
(
"%p, %u, %p
\n
"
,
params
->
commandBuffer
,
params
->
decompressRegionCount
,
params
->
pDecompressMemoryRegions
);
init_conversion_context
(
&
ctx
);
pDecompressMemoryRegions_host
=
convert_VkDecompressMemoryRegionNV_array_win32_to_host
(
&
ctx
,
params
->
pDecompressMemoryRegions
,
params
->
decompressRegionCount
);
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
device
->
funcs
.
p_vkCmdDecompressMemoryNV
(
wine_cmd_buffer_from_handle
(
params
->
commandBuffer
)
->
command_buffer
,
params
->
decompressRegionCount
,
pDecompressMemoryRegions_host
);
free_conversion_context
(
&
ctx
);
return
STATUS_SUCCESS
;
}
#endif
/* USE_STRUCT_CONVERSION */
#if !defined(USE_STRUCT_CONVERSION)
static
NTSTATUS
thunk64_vkCmdDispatch
(
void
*
args
)
{
struct
vkCmdDispatch_params
*
params
=
args
;
...
...
@@ -19120,6 +19315,7 @@ static const char * const vk_device_extensions[] =
"VK_AMD_shader_trinary_minmax"
,
"VK_AMD_texture_gather_bias_lod"
,
"VK_ARM_rasterization_order_attachment_access"
,
"VK_ARM_shader_core_builtins"
,
"VK_EXT_4444_formats"
,
"VK_EXT_astc_decode_mode"
,
"VK_EXT_attachment_feedback_loop_layout"
,
...
...
@@ -19289,6 +19485,7 @@ static const char * const vk_device_extensions[] =
"VK_NV_clip_space_w_scaling"
,
"VK_NV_compute_shader_derivatives"
,
"VK_NV_cooperative_matrix"
,
"VK_NV_copy_memory_indirect"
,
"VK_NV_corner_sampled_image"
,
"VK_NV_coverage_reduction_mode"
,
"VK_NV_dedicated_allocation"
,
...
...
@@ -19305,10 +19502,12 @@ static const char * const vk_device_extensions[] =
"VK_NV_glsl_shader"
,
"VK_NV_inherited_viewport_scissor"
,
"VK_NV_linear_color_attachment"
,
"VK_NV_memory_decompression"
,
"VK_NV_mesh_shader"
,
"VK_NV_optical_flow"
,
"VK_NV_present_barrier"
,
"VK_NV_ray_tracing"
,
"VK_NV_ray_tracing_invocation_reorder"
,
"VK_NV_ray_tracing_motion_blur"
,
"VK_NV_representative_fragment_test"
,
"VK_NV_sample_mask_override_coverage"
,
...
...
@@ -19481,7 +19680,9 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk64_vkCmdCopyImageToBuffer
,
thunk64_vkCmdCopyImageToBuffer2
,
thunk64_vkCmdCopyImageToBuffer2KHR
,
thunk64_vkCmdCopyMemoryIndirectNV
,
thunk64_vkCmdCopyMemoryToAccelerationStructureKHR
,
thunk64_vkCmdCopyMemoryToImageIndirectNV
,
thunk64_vkCmdCopyMemoryToMicromapEXT
,
thunk64_vkCmdCopyMicromapEXT
,
thunk64_vkCmdCopyMicromapToMemoryEXT
,
...
...
@@ -19490,6 +19691,8 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk64_vkCmdDebugMarkerBeginEXT
,
thunk64_vkCmdDebugMarkerEndEXT
,
thunk64_vkCmdDebugMarkerInsertEXT
,
thunk64_vkCmdDecompressMemoryIndirectCountNV
,
thunk64_vkCmdDecompressMemoryNV
,
thunk64_vkCmdDispatch
,
thunk64_vkCmdDispatchBase
,
thunk64_vkCmdDispatchBaseKHR
,
...
...
@@ -20002,7 +20205,9 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk32_vkCmdCopyImageToBuffer
,
thunk32_vkCmdCopyImageToBuffer2
,
thunk32_vkCmdCopyImageToBuffer2KHR
,
thunk32_vkCmdCopyMemoryIndirectNV
,
thunk32_vkCmdCopyMemoryToAccelerationStructureKHR
,
thunk32_vkCmdCopyMemoryToImageIndirectNV
,
thunk32_vkCmdCopyMemoryToMicromapEXT
,
thunk32_vkCmdCopyMicromapEXT
,
thunk32_vkCmdCopyMicromapToMemoryEXT
,
...
...
@@ -20011,6 +20216,8 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk32_vkCmdDebugMarkerBeginEXT
,
thunk32_vkCmdDebugMarkerEndEXT
,
thunk32_vkCmdDebugMarkerInsertEXT
,
thunk32_vkCmdDecompressMemoryIndirectCountNV
,
thunk32_vkCmdDecompressMemoryNV
,
thunk32_vkCmdDispatch
,
thunk32_vkCmdDispatchBase
,
thunk32_vkCmdDispatchBaseKHR
,
...
...
dlls/winevulkan/vulkan_thunks.h
View file @
b04d0915
...
...
@@ -568,6 +568,19 @@ typedef VkCuLaunchInfoNVX VkCuLaunchInfoNVX_host;
#endif
#if defined(USE_STRUCT_CONVERSION)
typedef
struct
VkDecompressMemoryRegionNV_host
{
VkDeviceAddress
srcAddress
;
VkDeviceAddress
dstAddress
;
VkDeviceSize
compressedSize
;
VkDeviceSize
decompressedSize
;
VkMemoryDecompressionMethodFlagsNV
decompressionMethod
;
}
VkDecompressMemoryRegionNV_host
;
#else
typedef
VkDecompressMemoryRegionNV
VkDecompressMemoryRegionNV_host
;
#endif
#if defined(USE_STRUCT_CONVERSION)
typedef
struct
VkIndirectCommandsStreamNV_host
{
VkBuffer
buffer
;
...
...
@@ -2005,7 +2018,9 @@ struct vulkan_device_funcs
void
(
*
p_vkCmdCopyImageToBuffer
)(
VkCommandBuffer
,
VkImage
,
VkImageLayout
,
VkBuffer
,
uint32_t
,
const
VkBufferImageCopy_host
*
);
void
(
*
p_vkCmdCopyImageToBuffer2
)(
VkCommandBuffer
,
const
VkCopyImageToBufferInfo2_host
*
);
void
(
*
p_vkCmdCopyImageToBuffer2KHR
)(
VkCommandBuffer
,
const
VkCopyImageToBufferInfo2_host
*
);
void
(
*
p_vkCmdCopyMemoryIndirectNV
)(
VkCommandBuffer
,
VkDeviceAddress
,
uint32_t
,
uint32_t
);
void
(
*
p_vkCmdCopyMemoryToAccelerationStructureKHR
)(
VkCommandBuffer
,
const
VkCopyMemoryToAccelerationStructureInfoKHR_host
*
);
void
(
*
p_vkCmdCopyMemoryToImageIndirectNV
)(
VkCommandBuffer
,
VkDeviceAddress
,
uint32_t
,
uint32_t
,
VkImage
,
VkImageLayout
,
const
VkImageSubresourceLayers
*
);
void
(
*
p_vkCmdCopyMemoryToMicromapEXT
)(
VkCommandBuffer
,
const
VkCopyMemoryToMicromapInfoEXT_host
*
);
void
(
*
p_vkCmdCopyMicromapEXT
)(
VkCommandBuffer
,
const
VkCopyMicromapInfoEXT_host
*
);
void
(
*
p_vkCmdCopyMicromapToMemoryEXT
)(
VkCommandBuffer
,
const
VkCopyMicromapToMemoryInfoEXT_host
*
);
...
...
@@ -2014,6 +2029,8 @@ struct vulkan_device_funcs
void
(
*
p_vkCmdDebugMarkerBeginEXT
)(
VkCommandBuffer
,
const
VkDebugMarkerMarkerInfoEXT
*
);
void
(
*
p_vkCmdDebugMarkerEndEXT
)(
VkCommandBuffer
);
void
(
*
p_vkCmdDebugMarkerInsertEXT
)(
VkCommandBuffer
,
const
VkDebugMarkerMarkerInfoEXT
*
);
void
(
*
p_vkCmdDecompressMemoryIndirectCountNV
)(
VkCommandBuffer
,
VkDeviceAddress
,
VkDeviceAddress
,
uint32_t
);
void
(
*
p_vkCmdDecompressMemoryNV
)(
VkCommandBuffer
,
uint32_t
,
const
VkDecompressMemoryRegionNV_host
*
);
void
(
*
p_vkCmdDispatch
)(
VkCommandBuffer
,
uint32_t
,
uint32_t
,
uint32_t
);
void
(
*
p_vkCmdDispatchBase
)(
VkCommandBuffer
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
);
void
(
*
p_vkCmdDispatchBaseKHR
)(
VkCommandBuffer
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
);
...
...
@@ -2516,7 +2533,9 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdCopyImageToBuffer) \
USE_VK_FUNC(vkCmdCopyImageToBuffer2) \
USE_VK_FUNC(vkCmdCopyImageToBuffer2KHR) \
USE_VK_FUNC(vkCmdCopyMemoryIndirectNV) \
USE_VK_FUNC(vkCmdCopyMemoryToAccelerationStructureKHR) \
USE_VK_FUNC(vkCmdCopyMemoryToImageIndirectNV) \
USE_VK_FUNC(vkCmdCopyMemoryToMicromapEXT) \
USE_VK_FUNC(vkCmdCopyMicromapEXT) \
USE_VK_FUNC(vkCmdCopyMicromapToMemoryEXT) \
...
...
@@ -2525,6 +2544,8 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdDebugMarkerBeginEXT) \
USE_VK_FUNC(vkCmdDebugMarkerEndEXT) \
USE_VK_FUNC(vkCmdDebugMarkerInsertEXT) \
USE_VK_FUNC(vkCmdDecompressMemoryIndirectCountNV) \
USE_VK_FUNC(vkCmdDecompressMemoryNV) \
USE_VK_FUNC(vkCmdDispatch) \
USE_VK_FUNC(vkCmdDispatchBase) \
USE_VK_FUNC(vkCmdDispatchBaseKHR) \
...
...
dlls/winevulkan/winevulkan.json
View file @
b04d0915
...
...
@@ -2,6 +2,6 @@
"file_format_version"
:
"1.0.0"
,
"ICD"
:
{
"library_path"
:
".
\\
winevulkan.dll"
,
"api_version"
:
"1.3.23
0
"
"api_version"
:
"1.3.23
3
"
}
}
include/wine/vulkan.h
View file @
b04d0915
...
...
@@ -532,6 +532,10 @@
#define VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME "VK_EXT_non_seamless_cube_map"
#define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION 1
#define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME "VK_QCOM_fragment_density_map_offset"
#define VK_NV_COPY_MEMORY_INDIRECT_SPEC_VERSION 1
#define VK_NV_COPY_MEMORY_INDIRECT_EXTENSION_NAME "VK_NV_copy_memory_indirect"
#define VK_NV_MEMORY_DECOMPRESSION_SPEC_VERSION 1
#define VK_NV_MEMORY_DECOMPRESSION_EXTENSION_NAME "VK_NV_memory_decompression"
#define VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION 1
#define VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME "VK_NV_linear_color_attachment"
#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION 1
...
...
@@ -554,8 +558,12 @@
#define VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME "VK_EXT_pipeline_protected_access"
#define VK_QCOM_TILE_PROPERTIES_SPEC_VERSION 1
#define VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME "VK_QCOM_tile_properties"
#define VK_NV_RAY_TRACING_INVOCATION_REORDER_SPEC_VERSION 1
#define VK_NV_RAY_TRACING_INVOCATION_REORDER_EXTENSION_NAME "VK_NV_ray_tracing_invocation_reorder"
#define VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION 1
#define VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME "VK_EXT_mutable_descriptor_type"
#define VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION 2
#define VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME "VK_ARM_shader_core_builtins"
#define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13
#define VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME "VK_KHR_acceleration_structure"
#define VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION 1
...
...
@@ -580,7 +588,7 @@
#define VK_API_VERSION_1_1 VK_MAKE_API_VERSION(0, 1, 1, 0)
#define VK_API_VERSION_1_2 VK_MAKE_API_VERSION(0, 1, 2, 0)
#define VK_API_VERSION_1_3 VK_MAKE_API_VERSION(0, 1, 3, 0)
#define VK_HEADER_VERSION 23
0
#define VK_HEADER_VERSION 23
3
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;
#define VK_USE_64_BIT_PTR_DEFINES 0
...
...
@@ -763,6 +771,7 @@ typedef VkFlags VkInstanceCreateFlags;
typedef
VkFlags
VkMacOSSurfaceCreateFlagsMVK
;
typedef
VkFlags
VkMemoryAllocateFlags
;
typedef
VkMemoryAllocateFlags
VkMemoryAllocateFlagsKHR
;
typedef
VkFlags64
VkMemoryDecompressionMethodFlagsNV
;
typedef
VkFlags
VkMemoryHeapFlags
;
typedef
VkFlags
VkMemoryMapFlags
;
typedef
VkFlags
VkMemoryPropertyFlags
;
...
...
@@ -2671,6 +2680,10 @@ typedef enum VkMemoryAllocateFlagBits
}
VkMemoryAllocateFlagBits
;
typedef
VkMemoryAllocateFlagBits
VkMemoryAllocateFlagBitsKHR
;
typedef
VkFlags64
VkMemoryDecompressionMethodFlagBitsNV
;
static
const
VkMemoryDecompressionMethodFlagBitsNV
VK_MEMORY_DECOMPRESSION_METHOD_GDEFLATE_1_0_BIT_NV
=
0x00000001ull
;
typedef
enum
VkMemoryHeapFlagBits
{
VK_MEMORY_HEAP_DEVICE_LOCAL_BIT
=
0x00000001
,
...
...
@@ -3334,6 +3347,13 @@ typedef enum VkRasterizationOrderAMD
VK_RASTERIZATION_ORDER_AMD_MAX_ENUM
=
0x7fffffff
,
}
VkRasterizationOrderAMD
;
typedef
enum
VkRayTracingInvocationReorderModeNV
{
VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_NV
=
0
,
VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_NV
=
1
,
VK_RAY_TRACING_INVOCATION_REORDER_MODE_NV_MAX_ENUM
=
0x7fffffff
,
}
VkRayTracingInvocationReorderModeNV
;
typedef
enum
VkRayTracingShaderGroupTypeKHR
{
VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR
=
0
,
...
...
@@ -4189,6 +4209,10 @@ typedef enum VkStructureType
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM
=
1000425000
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM
=
1000425001
,
VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM
=
1000425002
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV
=
1000426000
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV
=
1000426001
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV
=
1000427000
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV
=
1000427001
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV
=
1000430000
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT
=
1000437000
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM
=
1000440000
,
...
...
@@ -4215,6 +4239,10 @@ typedef enum VkStructureType
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT
=
1000466000
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM
=
1000484000
,
VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM
=
1000484001
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV
=
1000490000
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV
=
1000490001
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM
=
1000497000
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM
=
1000497001
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES
=
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES
,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES
=
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES
,
VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT
=
VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT
,
...
...
@@ -5215,6 +5243,13 @@ typedef struct VkCopyDescriptorSet
uint32_t
descriptorCount
;
}
VkCopyDescriptorSet
;
typedef
struct
VkCopyMemoryIndirectCommandNV
{
VkDeviceAddress
srcAddress
;
VkDeviceAddress
dstAddress
;
VkDeviceSize
WINE_VK_ALIGN
(
8
)
size
;
}
VkCopyMemoryIndirectCommandNV
;
typedef
struct
VkCopyMicromapInfoEXT
{
VkStructureType
sType
;
...
...
@@ -5334,6 +5369,15 @@ typedef struct VkDebugUtilsObjectTagInfoEXT
const
void
*
pTag
;
}
VkDebugUtilsObjectTagInfoEXT
;
typedef
struct
VkDecompressMemoryRegionNV
{
VkDeviceAddress
srcAddress
;
VkDeviceAddress
dstAddress
;
VkDeviceSize
WINE_VK_ALIGN
(
8
)
compressedSize
;
VkDeviceSize
WINE_VK_ALIGN
(
8
)
decompressedSize
;
VkMemoryDecompressionMethodFlagsNV
decompressionMethod
;
}
VkDecompressMemoryRegionNV
;
typedef
struct
VkDedicatedAllocationBufferCreateInfoNV
{
VkStructureType
sType
;
...
...
@@ -6724,6 +6768,20 @@ typedef struct VkPhysicalDeviceCooperativeMatrixPropertiesNV
VkShaderStageFlags
cooperativeMatrixSupportedStages
;
}
VkPhysicalDeviceCooperativeMatrixPropertiesNV
;
typedef
struct
VkPhysicalDeviceCopyMemoryIndirectFeaturesNV
{
VkStructureType
sType
;
void
*
pNext
;
VkBool32
indirectCopy
;
}
VkPhysicalDeviceCopyMemoryIndirectFeaturesNV
;
typedef
struct
VkPhysicalDeviceCopyMemoryIndirectPropertiesNV
{
VkStructureType
sType
;
void
*
pNext
;
VkQueueFlags
supportedQueues
;
}
VkPhysicalDeviceCopyMemoryIndirectPropertiesNV
;
typedef
struct
VkPhysicalDeviceCornerSampledImageFeaturesNV
{
VkStructureType
sType
;
...
...
@@ -7601,6 +7659,21 @@ typedef struct VkPhysicalDeviceMemoryBudgetPropertiesEXT
VkDeviceSize
WINE_VK_ALIGN
(
8
)
heapUsage
[
VK_MAX_MEMORY_HEAPS
];
}
VkPhysicalDeviceMemoryBudgetPropertiesEXT
;
typedef
struct
VkPhysicalDeviceMemoryDecompressionFeaturesNV
{
VkStructureType
sType
;
void
*
pNext
;
VkBool32
memoryDecompression
;
}
VkPhysicalDeviceMemoryDecompressionFeaturesNV
;
typedef
struct
VkPhysicalDeviceMemoryDecompressionPropertiesNV
{
VkStructureType
sType
;
void
*
pNext
;
VkMemoryDecompressionMethodFlagsNV
decompressionMethods
;
uint64_t
WINE_VK_ALIGN
(
8
)
maxDecompressionIndirectCount
;
}
VkPhysicalDeviceMemoryDecompressionPropertiesNV
;
typedef
struct
VkPhysicalDeviceMemoryPriorityFeaturesEXT
{
VkStructureType
sType
;
...
...
@@ -7985,6 +8058,20 @@ typedef struct VkPhysicalDeviceRayQueryFeaturesKHR
VkBool32
rayQuery
;
}
VkPhysicalDeviceRayQueryFeaturesKHR
;
typedef
struct
VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV
{
VkStructureType
sType
;
void
*
pNext
;
VkBool32
rayTracingInvocationReorder
;
}
VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV
;
typedef
struct
VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV
{
VkStructureType
sType
;
void
*
pNext
;
VkRayTracingInvocationReorderModeNV
rayTracingInvocationReorderReorderingHint
;
}
VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV
;
typedef
struct
VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR
{
VkStructureType
sType
;
...
...
@@ -8161,6 +8248,22 @@ typedef struct VkPhysicalDeviceShaderClockFeaturesKHR
VkBool32
shaderDeviceClock
;
}
VkPhysicalDeviceShaderClockFeaturesKHR
;
typedef
struct
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM
{
VkStructureType
sType
;
void
*
pNext
;
VkBool32
shaderCoreBuiltins
;
}
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM
;
typedef
struct
VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM
{
VkStructureType
sType
;
void
*
pNext
;
uint64_t
WINE_VK_ALIGN
(
8
)
shaderCoreMask
;
uint32_t
shaderCoreCount
;
uint32_t
shaderWarpsPerCore
;
}
VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM
;
typedef
struct
VkPhysicalDeviceShaderCoreProperties2AMD
{
VkStructureType
sType
;
...
...
@@ -10385,6 +10488,16 @@ typedef struct VkCopyMemoryToAccelerationStructureInfoKHR
VkCopyAccelerationStructureModeKHR
mode
;
}
VkCopyMemoryToAccelerationStructureInfoKHR
;
typedef
struct
VkCopyMemoryToImageIndirectCommandNV
{
VkDeviceAddress
srcAddress
;
uint32_t
bufferRowLength
;
uint32_t
bufferImageHeight
;
VkImageSubresourceLayers
imageSubresource
;
VkOffset3D
imageOffset
;
VkExtent3D
imageExtent
;
}
VkCopyMemoryToImageIndirectCommandNV
;
typedef
struct
VkCopyMemoryToMicromapInfoEXT
{
VkStructureType
sType
;
...
...
@@ -11224,7 +11337,9 @@ typedef void (VKAPI_PTR *PFN_vkCmdCopyImage2KHR)(VkCommandBuffer, const VkCopyIm
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyImageToBuffer
)(
VkCommandBuffer
,
VkImage
,
VkImageLayout
,
VkBuffer
,
uint32_t
,
const
VkBufferImageCopy
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyImageToBuffer2
)(
VkCommandBuffer
,
const
VkCopyImageToBufferInfo2
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyImageToBuffer2KHR
)(
VkCommandBuffer
,
const
VkCopyImageToBufferInfo2
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyMemoryIndirectNV
)(
VkCommandBuffer
,
VkDeviceAddress
,
uint32_t
,
uint32_t
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyMemoryToAccelerationStructureKHR
)(
VkCommandBuffer
,
const
VkCopyMemoryToAccelerationStructureInfoKHR
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyMemoryToImageIndirectNV
)(
VkCommandBuffer
,
VkDeviceAddress
,
uint32_t
,
uint32_t
,
VkImage
,
VkImageLayout
,
const
VkImageSubresourceLayers
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyMemoryToMicromapEXT
)(
VkCommandBuffer
,
const
VkCopyMemoryToMicromapInfoEXT
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyMicromapEXT
)(
VkCommandBuffer
,
const
VkCopyMicromapInfoEXT
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdCopyMicromapToMemoryEXT
)(
VkCommandBuffer
,
const
VkCopyMicromapToMemoryInfoEXT
*
);
...
...
@@ -11233,6 +11348,8 @@ typedef void (VKAPI_PTR *PFN_vkCmdCuLaunchKernelNVX)(VkCommandBuffer, const VkCu
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdDebugMarkerBeginEXT
)(
VkCommandBuffer
,
const
VkDebugMarkerMarkerInfoEXT
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdDebugMarkerEndEXT
)(
VkCommandBuffer
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdDebugMarkerInsertEXT
)(
VkCommandBuffer
,
const
VkDebugMarkerMarkerInfoEXT
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdDecompressMemoryIndirectCountNV
)(
VkCommandBuffer
,
VkDeviceAddress
,
VkDeviceAddress
,
uint32_t
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdDecompressMemoryNV
)(
VkCommandBuffer
,
uint32_t
,
const
VkDecompressMemoryRegionNV
*
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdDispatch
)(
VkCommandBuffer
,
uint32_t
,
uint32_t
,
uint32_t
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdDispatchBase
)(
VkCommandBuffer
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
);
typedef
void
(
VKAPI_PTR
*
PFN_vkCmdDispatchBaseKHR
)(
VkCommandBuffer
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
,
uint32_t
);
...
...
@@ -11742,7 +11859,9 @@ void VKAPI_CALL vkCmdCopyImage2KHR(VkCommandBuffer commandBuffer, const VkCopyIm
void
VKAPI_CALL
vkCmdCopyImageToBuffer
(
VkCommandBuffer
commandBuffer
,
VkImage
srcImage
,
VkImageLayout
srcImageLayout
,
VkBuffer
dstBuffer
,
uint32_t
regionCount
,
const
VkBufferImageCopy
*
pRegions
);
void
VKAPI_CALL
vkCmdCopyImageToBuffer2
(
VkCommandBuffer
commandBuffer
,
const
VkCopyImageToBufferInfo2
*
pCopyImageToBufferInfo
);
void
VKAPI_CALL
vkCmdCopyImageToBuffer2KHR
(
VkCommandBuffer
commandBuffer
,
const
VkCopyImageToBufferInfo2
*
pCopyImageToBufferInfo
);
void
VKAPI_CALL
vkCmdCopyMemoryIndirectNV
(
VkCommandBuffer
commandBuffer
,
VkDeviceAddress
copyBufferAddress
,
uint32_t
copyCount
,
uint32_t
stride
);
void
VKAPI_CALL
vkCmdCopyMemoryToAccelerationStructureKHR
(
VkCommandBuffer
commandBuffer
,
const
VkCopyMemoryToAccelerationStructureInfoKHR
*
pInfo
);
void
VKAPI_CALL
vkCmdCopyMemoryToImageIndirectNV
(
VkCommandBuffer
commandBuffer
,
VkDeviceAddress
copyBufferAddress
,
uint32_t
copyCount
,
uint32_t
stride
,
VkImage
dstImage
,
VkImageLayout
dstImageLayout
,
const
VkImageSubresourceLayers
*
pImageSubresources
);
void
VKAPI_CALL
vkCmdCopyMemoryToMicromapEXT
(
VkCommandBuffer
commandBuffer
,
const
VkCopyMemoryToMicromapInfoEXT
*
pInfo
);
void
VKAPI_CALL
vkCmdCopyMicromapEXT
(
VkCommandBuffer
commandBuffer
,
const
VkCopyMicromapInfoEXT
*
pInfo
);
void
VKAPI_CALL
vkCmdCopyMicromapToMemoryEXT
(
VkCommandBuffer
commandBuffer
,
const
VkCopyMicromapToMemoryInfoEXT
*
pInfo
);
...
...
@@ -11751,6 +11870,8 @@ void VKAPI_CALL vkCmdCuLaunchKernelNVX(VkCommandBuffer commandBuffer, const VkCu
void
VKAPI_CALL
vkCmdDebugMarkerBeginEXT
(
VkCommandBuffer
commandBuffer
,
const
VkDebugMarkerMarkerInfoEXT
*
pMarkerInfo
);
void
VKAPI_CALL
vkCmdDebugMarkerEndEXT
(
VkCommandBuffer
commandBuffer
);
void
VKAPI_CALL
vkCmdDebugMarkerInsertEXT
(
VkCommandBuffer
commandBuffer
,
const
VkDebugMarkerMarkerInfoEXT
*
pMarkerInfo
);
void
VKAPI_CALL
vkCmdDecompressMemoryIndirectCountNV
(
VkCommandBuffer
commandBuffer
,
VkDeviceAddress
indirectCommandsAddress
,
VkDeviceAddress
indirectCommandsCountAddress
,
uint32_t
stride
);
void
VKAPI_CALL
vkCmdDecompressMemoryNV
(
VkCommandBuffer
commandBuffer
,
uint32_t
decompressRegionCount
,
const
VkDecompressMemoryRegionNV
*
pDecompressMemoryRegions
);
void
VKAPI_CALL
vkCmdDispatch
(
VkCommandBuffer
commandBuffer
,
uint32_t
groupCountX
,
uint32_t
groupCountY
,
uint32_t
groupCountZ
);
void
VKAPI_CALL
vkCmdDispatchBase
(
VkCommandBuffer
commandBuffer
,
uint32_t
baseGroupX
,
uint32_t
baseGroupY
,
uint32_t
baseGroupZ
,
uint32_t
groupCountX
,
uint32_t
groupCountY
,
uint32_t
groupCountZ
);
void
VKAPI_CALL
vkCmdDispatchBaseKHR
(
VkCommandBuffer
commandBuffer
,
uint32_t
baseGroupX
,
uint32_t
baseGroupY
,
uint32_t
baseGroupZ
,
uint32_t
groupCountX
,
uint32_t
groupCountY
,
uint32_t
groupCountZ
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment