v3dv: Stop using VK_OUTARRAY_MAKE()

We're trying to replace VK_OUTARRAY_MAKE() by VK_OUTARRAY_MAKE_TYPED()
so people don't get tempted to use it and make things incompatible with
MSVC (which doesn't support typeof()).

Suggested-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15522>
This commit is contained in:
Boris Brezillon 2022-03-23 13:28:36 +01:00 committed by Marge Bot
parent f82731d0d7
commit 56a2ccf058
2 changed files with 17 additions and 11 deletions

View file

@ -965,7 +965,8 @@ v3dv_EnumeratePhysicalDevices(VkInstance _instance,
VkPhysicalDevice *pPhysicalDevices)
{
V3DV_FROM_HANDLE(v3dv_instance, instance, _instance);
VK_OUTARRAY_MAKE(out, pPhysicalDevices, pPhysicalDeviceCount);
VK_OUTARRAY_MAKE_TYPED(VkPhysicalDevice, out,
pPhysicalDevices, pPhysicalDeviceCount);
VkResult result = instance_ensure_physical_device(instance);
if (result != VK_SUCCESS)
@ -975,7 +976,7 @@ v3dv_EnumeratePhysicalDevices(VkInstance _instance,
return VK_SUCCESS;
assert(instance->physicalDeviceCount == 1);
vk_outarray_append(&out, i) {
vk_outarray_append_typed(VkPhysicalDevice, &out, i) {
*i = v3dv_physical_device_to_handle(&instance->physicalDevice);
}
@ -989,8 +990,9 @@ v3dv_EnumeratePhysicalDeviceGroups(
VkPhysicalDeviceGroupProperties *pPhysicalDeviceGroupProperties)
{
V3DV_FROM_HANDLE(v3dv_instance, instance, _instance);
VK_OUTARRAY_MAKE(out, pPhysicalDeviceGroupProperties,
pPhysicalDeviceGroupCount);
VK_OUTARRAY_MAKE_TYPED(VkPhysicalDeviceGroupProperties, out,
pPhysicalDeviceGroupProperties,
pPhysicalDeviceGroupCount);
VkResult result = instance_ensure_physical_device(instance);
if (result != VK_SUCCESS)
@ -998,7 +1000,7 @@ v3dv_EnumeratePhysicalDeviceGroups(
assert(instance->physicalDeviceCount == 1);
vk_outarray_append(&out, p) {
vk_outarray_append_typed(VkPhysicalDeviceGroupProperties, &out, p) {
p->physicalDeviceCount = 1;
memset(p->physicalDevices, 0, sizeof(p->physicalDevices));
p->physicalDevices[0] =
@ -1697,9 +1699,10 @@ v3dv_GetPhysicalDeviceQueueFamilyProperties2(VkPhysicalDevice physicalDevice,
uint32_t *pQueueFamilyPropertyCount,
VkQueueFamilyProperties2 *pQueueFamilyProperties)
{
VK_OUTARRAY_MAKE(out, pQueueFamilyProperties, pQueueFamilyPropertyCount);
VK_OUTARRAY_MAKE_TYPED(VkQueueFamilyProperties2, out,
pQueueFamilyProperties, pQueueFamilyPropertyCount);
vk_outarray_append(&out, p) {
vk_outarray_append_typed(VkQueueFamilyProperties2, &out, p) {
p->queueFamilyProperties = v3dv_queue_family_properties;
vk_foreach_struct(s, p->pNext) {

View file

@ -291,10 +291,12 @@ v3dv_GetPhysicalDeviceFormatProperties2(VkPhysicalDevice physicalDevice,
switch ((unsigned)ext->sType) {
case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT: {
struct VkDrmFormatModifierPropertiesListEXT *list = (void *)ext;
VK_OUTARRAY_MAKE(out, list->pDrmFormatModifierProperties,
&list->drmFormatModifierCount);
VK_OUTARRAY_MAKE_TYPED(VkDrmFormatModifierPropertiesEXT, out,
list->pDrmFormatModifierProperties,
&list->drmFormatModifierCount);
if (pFormatProperties->formatProperties.linearTilingFeatures) {
vk_outarray_append(&out, mod_props) {
vk_outarray_append_typed(VkDrmFormatModifierPropertiesEXT,
&out, mod_props) {
mod_props->drmFormatModifier = DRM_FORMAT_MOD_LINEAR;
mod_props->drmFormatModifierPlaneCount = 1;
mod_props->drmFormatModifierTilingFeatures =
@ -302,7 +304,8 @@ v3dv_GetPhysicalDeviceFormatProperties2(VkPhysicalDevice physicalDevice,
}
}
if (pFormatProperties->formatProperties.optimalTilingFeatures) {
vk_outarray_append(&out, mod_props) {
vk_outarray_append_typed(VkDrmFormatModifierProperties2EXT,
&out, mod_props) {
mod_props->drmFormatModifier = DRM_FORMAT_MOD_BROADCOM_UIF;
mod_props->drmFormatModifierPlaneCount = 1;
mod_props->drmFormatModifierTilingFeatures =