anv: Refactor anv_GetImageSubresourceLayout()

Its helper function, anv_surface_get_subresource_layout(), was not very
helpful. So fold it into the main function.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
This commit is contained in:
Chad Versace
2017-11-06 19:35:43 -08:00
parent 69e3f0b02e
commit 2a4798ad98

View File

@@ -677,12 +677,18 @@ VkResult anv_BindImageMemory2KHR(
return VK_SUCCESS;
}
static void
anv_surface_get_subresource_layout(struct anv_image *image,
struct anv_surface *surface,
const VkImageSubresource *subresource,
VkSubresourceLayout *layout)
void anv_GetImageSubresourceLayout(
VkDevice device,
VkImage _image,
const VkImageSubresource* subresource,
VkSubresourceLayout* layout)
{
ANV_FROM_HANDLE(anv_image, image, _image);
const struct anv_surface *surface =
get_surface(image, subresource->aspectMask);
assert(__builtin_popcount(subresource->aspectMask) == 1);
/* If we are on a non-zero mip level or array slice, we need to
* calculate a real offset.
*/
@@ -696,22 +702,6 @@ anv_surface_get_subresource_layout(struct anv_image *image,
layout->size = surface->isl.size;
}
void anv_GetImageSubresourceLayout(
VkDevice device,
VkImage _image,
const VkImageSubresource* pSubresource,
VkSubresourceLayout* pLayout)
{
ANV_FROM_HANDLE(anv_image, image, _image);
assert(__builtin_popcount(pSubresource->aspectMask) == 1);
anv_surface_get_subresource_layout(image,
get_surface(image,
pSubresource->aspectMask),
pSubresource, pLayout);
}
/**
* This function determines the optimal buffer to use for a given
* VkImageLayout and other pieces of information needed to make that