radv: provide a helper for comparing an image extents.
This just makes it easier to do the follow in cleanups of the surface. Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -614,7 +614,7 @@ static bool depth_view_can_fast_clear(const struct radv_image_view *iview,
|
||||
iview->base_mip == 0 &&
|
||||
iview->base_layer == 0 &&
|
||||
radv_layout_can_expclear(iview->image, layout) &&
|
||||
memcmp(&iview->extent, &iview->image->extent, sizeof(iview->extent)) == 0)
|
||||
!radv_image_extent_compare(iview->image, &iview->extent))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
@@ -858,7 +858,7 @@ emit_fast_color_clear(struct radv_cmd_buffer *cmd_buffer,
|
||||
if (iview->image->surface.level[0].mode < RADEON_SURF_MODE_1D)
|
||||
goto fail;
|
||||
|
||||
if (memcmp(&iview->extent, &iview->image->extent, sizeof(iview->extent)))
|
||||
if (!radv_image_extent_compare(iview->image, &iview->extent))
|
||||
goto fail;
|
||||
|
||||
if (clear_rect->rect.offset.x || clear_rect->rect.offset.y ||
|
||||
|
@@ -1284,6 +1284,15 @@ radv_sanitize_image_offset(const VkImageType imageType,
|
||||
}
|
||||
}
|
||||
|
||||
static inline bool
|
||||
radv_image_extent_compare(const struct radv_image *image,
|
||||
const VkExtent3D *extent)
|
||||
{
|
||||
if (memcmp(extent, &image->extent, sizeof(*extent)))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
struct radv_sampler {
|
||||
uint32_t state[4];
|
||||
};
|
||||
|
Reference in New Issue
Block a user