From: Jason Ekstrand Date: Fri, 24 Mar 2017 23:20:18 +0000 (-0700) Subject: anv: Make anv_get_layerCount a macro X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1b8fa8dd794c22aba43b16470e75ecaebf902b11;p=mesa.git anv: Make anv_get_layerCount a macro Reviewed-by: Lionel Landwerlin Cc: "13.0 17.0" --- diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index 27c887c65cc..74e80e8d537 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -1828,13 +1828,13 @@ anv_layout_to_aux_usage(const struct gen_device_info * const devinfo, const struct anv_image *image, const VkImageAspectFlags aspects, const VkImageLayout layout); -static inline uint32_t -anv_get_layerCount(const struct anv_image *image, - const VkImageSubresourceRange *range) -{ - return range->layerCount == VK_REMAINING_ARRAY_LAYERS ? - image->array_size - range->baseArrayLayer : range->layerCount; -} + +/* This is defined as a macro so that it works for both + * VkImageSubresourceRange and VkImageSubresourceLayers + */ +#define anv_get_layerCount(_image, _range) \ + ((_range)->layerCount == VK_REMAINING_ARRAY_LAYERS ? \ + (_image)->array_size - (_range)->baseArrayLayer : (_range)->layerCount) static inline uint32_t anv_get_levelCount(const struct anv_image *image,