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
866c7de6
Commit
866c7de6
authored
Nov 01, 2022
by
Jacek Caban
Committed by
Alexandre Julliard
Nov 11, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winevulkan: Don't generate private thunk prototypes for PE-only functions.
parent
ee4c61a1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
4 additions
and
8 deletions
+4
-8
make_vulkan
dlls/winevulkan/make_vulkan
+4
-5
vulkan_thunks.h
dlls/winevulkan/vulkan_thunks.h
+0
-3
No files found.
dlls/winevulkan/make_vulkan
View file @
866c7de6
...
...
@@ -2,6 +2,7 @@
# Wine Vulkan generator
#
# Copyright 2017-2018 Roderick Colenbrander
# Copyright 2022 Jacek Caban for CodeWeavers
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
...
...
@@ -645,11 +646,9 @@ class VkFunction(object):
def
needs_dispatch
(
self
):
return
self
.
dispatch
def
needs_thunk
(
self
):
return
self
.
thunk_type
!=
ThunkType
.
NONE
def
needs_private_thunk
(
self
):
return
self
.
thunk_type
==
ThunkType
.
PRIVATE
return
self
.
needs_exposing
()
and
self
.
loader_thunk_type
!=
ThunkType
.
NONE
and
\
self
.
thunk_type
!=
ThunkType
.
PUBLIC
def
needs_exposing
(
self
):
# The function needs exposed if at-least one extension isn't both UNSUPPORTED and UNEXPOSED
...
...
@@ -2556,7 +2555,7 @@ class VkGenerator(object):
# Generate prototypes for device and instance functions requiring a custom implementation.
f
.
write
(
"/* Functions for which we have custom implementations outside of the thunks. */
\n
"
)
for
vk_func
in
self
.
registry
.
funcs
.
values
():
if
not
vk_func
.
needs_
exposing
()
or
vk_func
.
thunk_type
==
ThunkType
.
PUBLIC
:
if
not
vk_func
.
needs_
private_thunk
()
:
continue
f
.
write
(
"{0};
\n
"
.
format
(
vk_func
.
prototype
(
prefix
=
prefix
,
postfix
=
"DECLSPEC_HIDDEN"
,
is_thunk
=
True
)))
...
...
dlls/winevulkan/vulkan_thunks.h
View file @
866c7de6
...
...
@@ -31,17 +31,14 @@ void wine_vkDestroySurfaceKHR(VkInstance instance, VkSurfaceKHR surface, const V
VkResult
wine_vkEnumerateDeviceExtensionProperties
(
VkPhysicalDevice
physicalDevice
,
const
char
*
pLayerName
,
uint32_t
*
pPropertyCount
,
VkExtensionProperties
*
pProperties
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkEnumerateDeviceLayerProperties
(
VkPhysicalDevice
physicalDevice
,
uint32_t
*
pPropertyCount
,
VkLayerProperties
*
pProperties
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkEnumerateInstanceExtensionProperties
(
const
char
*
pLayerName
,
uint32_t
*
pPropertyCount
,
VkExtensionProperties
*
pProperties
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkEnumerateInstanceLayerProperties
(
uint32_t
*
pPropertyCount
,
VkLayerProperties
*
pProperties
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkEnumerateInstanceVersion
(
uint32_t
*
pApiVersion
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkEnumeratePhysicalDeviceGroups
(
VkInstance
instance
,
uint32_t
*
pPhysicalDeviceGroupCount
,
VkPhysicalDeviceGroupProperties
*
pPhysicalDeviceGroupProperties
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkEnumeratePhysicalDeviceGroupsKHR
(
VkInstance
instance
,
uint32_t
*
pPhysicalDeviceGroupCount
,
VkPhysicalDeviceGroupProperties
*
pPhysicalDeviceGroupProperties
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkEnumeratePhysicalDevices
(
VkInstance
instance
,
uint32_t
*
pPhysicalDeviceCount
,
VkPhysicalDevice
*
pPhysicalDevices
)
DECLSPEC_HIDDEN
;
void
wine_vkFreeCommandBuffers
(
VkDevice
device
,
VkCommandPool
commandPool
,
uint32_t
commandBufferCount
,
const
VkCommandBuffer
*
pCommandBuffers
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkGetCalibratedTimestampsEXT
(
VkDevice
device
,
uint32_t
timestampCount
,
const
VkCalibratedTimestampInfoEXT
*
pTimestampInfos
,
uint64_t
*
pTimestamps
,
uint64_t
*
pMaxDeviation
)
DECLSPEC_HIDDEN
;
PFN_vkVoidFunction
wine_vkGetDeviceProcAddr
(
VkDevice
device
,
const
char
*
pName
)
DECLSPEC_HIDDEN
;
void
wine_vkGetDeviceQueue
(
VkDevice
device
,
uint32_t
queueFamilyIndex
,
uint32_t
queueIndex
,
VkQueue
*
pQueue
)
DECLSPEC_HIDDEN
;
void
wine_vkGetDeviceQueue2
(
VkDevice
device
,
const
VkDeviceQueueInfo2
*
pQueueInfo
,
VkQueue
*
pQueue
)
DECLSPEC_HIDDEN
;
PFN_vkVoidFunction
wine_vkGetInstanceProcAddr
(
VkInstance
instance
,
const
char
*
pName
)
DECLSPEC_HIDDEN
;
VkResult
wine_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT
(
VkPhysicalDevice
physicalDevice
,
uint32_t
*
pTimeDomainCount
,
VkTimeDomainEXT
*
pTimeDomains
)
DECLSPEC_HIDDEN
;
void
wine_vkGetPhysicalDeviceExternalBufferProperties
(
VkPhysicalDevice
physicalDevice
,
const
VkPhysicalDeviceExternalBufferInfo
*
pExternalBufferInfo
,
VkExternalBufferProperties
*
pExternalBufferProperties
)
DECLSPEC_HIDDEN
;
void
wine_vkGetPhysicalDeviceExternalBufferPropertiesKHR
(
VkPhysicalDevice
physicalDevice
,
const
VkPhysicalDeviceExternalBufferInfo
*
pExternalBufferInfo
,
VkExternalBufferProperties
*
pExternalBufferProperties
)
DECLSPEC_HIDDEN
;
...
...
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