Mesa (main): radv: pass an image view to vi_get_fast_clear_parameters()
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Aug 10 08:46:40 UTC 2021
Module: Mesa
Branch: main
Commit: 6b1afe33b24a011b2bd01f1346b25ebc357e6e00
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6b1afe33b24a011b2bd01f1346b25ebc357e6e00
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Wed Apr 28 17:01:13 2021 +0200
radv: pass an image view to vi_get_fast_clear_parameters()
image_format was unused.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10518>
---
src/amd/vulkan/radv_meta_clear.c | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/src/amd/vulkan/radv_meta_clear.c b/src/amd/vulkan/radv_meta_clear.c
index df9fd02d482..4b783b39b99 100644
--- a/src/amd/vulkan/radv_meta_clear.c
+++ b/src/amd/vulkan/radv_meta_clear.c
@@ -1424,8 +1424,8 @@ enum {
};
static void
-vi_get_fast_clear_parameters(struct radv_device *device, VkFormat image_format,
- VkFormat view_format, const VkClearColorValue *clear_value,
+vi_get_fast_clear_parameters(struct radv_device *device, const struct radv_image_view *iview,
+ const VkClearColorValue *clear_value,
uint32_t *reset_value, bool *can_avoid_fast_clear_elim)
{
bool values[4] = {0};
@@ -1438,12 +1438,12 @@ vi_get_fast_clear_parameters(struct radv_device *device, VkFormat image_format,
*reset_value = RADV_DCC_CLEAR_REG;
- const struct util_format_description *desc = vk_format_description(view_format);
- if (view_format == VK_FORMAT_B10G11R11_UFLOAT_PACK32 ||
- view_format == VK_FORMAT_R5G6B5_UNORM_PACK16 || view_format == VK_FORMAT_B5G6R5_UNORM_PACK16)
+ const struct util_format_description *desc = vk_format_description(iview->vk_format);
+ if (iview->vk_format == VK_FORMAT_B10G11R11_UFLOAT_PACK32 ||
+ iview->vk_format == VK_FORMAT_R5G6B5_UNORM_PACK16 || iview->vk_format == VK_FORMAT_B5G6R5_UNORM_PACK16)
extra_channel = -1;
else if (desc->layout == UTIL_FORMAT_LAYOUT_PLAIN) {
- if (vi_alpha_is_on_msb(device, view_format))
+ if (vi_alpha_is_on_msb(device, iview->vk_format))
extra_channel = desc->nr_channels - 1;
else
extra_channel = 0;
@@ -1552,8 +1552,8 @@ radv_can_fast_clear_color(struct radv_cmd_buffer *cmd_buffer, const struct radv_
bool can_avoid_fast_clear_elim;
uint32_t reset_value;
- vi_get_fast_clear_parameters(cmd_buffer->device, iview->image->vk_format, iview->vk_format,
- &clear_value, &reset_value, &can_avoid_fast_clear_elim);
+ vi_get_fast_clear_parameters(cmd_buffer->device, iview, &clear_value, &reset_value,
+ &can_avoid_fast_clear_elim);
if (iview->image->info.levels > 1) {
if (cmd_buffer->device->physical_device->rad_info.chip_class >= GFX9) {
@@ -1616,8 +1616,8 @@ radv_fast_clear_color(struct radv_cmd_buffer *cmd_buffer, const struct radv_imag
uint32_t reset_value;
bool can_avoid_fast_clear_elim;
- vi_get_fast_clear_parameters(cmd_buffer->device, iview->image->vk_format, iview->vk_format,
- &clear_value, &reset_value, &can_avoid_fast_clear_elim);
+ vi_get_fast_clear_parameters(cmd_buffer->device, iview, &clear_value, &reset_value,
+ &can_avoid_fast_clear_elim);
if (radv_image_has_cmask(iview->image)) {
flush_bits = radv_clear_cmask(cmd_buffer, iview->image, &range, cmask_clear_value);
More information about the mesa-commit
mailing list