Use the ImageView's format in clear operations

Added support for using the ImageView's format
to perform clear operations.

Bug b/119620767

Tests: dEQP-VK.image.mutable.*_draw_copy

Change-Id: I3ea6d3264435bbd8390c7a8907e0c7a54c4c6783
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28508
Tested-by: Alexis Hétu <sugoi@google.com>
Presubmit-Ready: Alexis Hétu <sugoi@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Chris Forbes <chrisforbes@google.com>
diff --git a/src/Vulkan/VkFormat.h b/src/Vulkan/VkFormat.h
index 5721d06..24a3724 100644
--- a/src/Vulkan/VkFormat.h
+++ b/src/Vulkan/VkFormat.h
@@ -45,6 +45,7 @@
 	bool isSRGBwritable() const;
 	bool isFloatFormat() const;
 
+	bool isCompatible(const Format& other) const;
 	bool isCompressed() const;
 	int blockWidth() const;
 	int blockHeight() const;
@@ -68,6 +69,8 @@
 	bool isRGBComponent(int component) const;
 
 private:
+	VkFormat compatibleFormat() const;
+
 	VkFormat format = VK_FORMAT_UNDEFINED;
 };