Commit 9f8337e6 by Alexis Hetu Committed by Alexis Hétu

Support for VK_KHR_create_renderpass2

This cl adds support for the VK_KHR_create_renderpass2. It doesn't add any new functionality and ignores any new performance hints that are part of this extension, but it properly supports the new API entries that are part of this extension. Bug: b/148884281 Tests: dEQP-VK.* Change-Id: I15d9d00658e65380f4e93e59299a8c5e5212f95e Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/40988 Presubmit-Ready: Alexis Hétu <sugoi@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Tested-by: 's avatarAlexis Hétu <sugoi@google.com> Reviewed-by: 's avatarAntonio Maiorano <amaiorano@google.com>
parent b7e6d8e3
......@@ -320,6 +320,15 @@ static const std::vector<std::pair<const char *, std::unordered_map<std::string,
{
MAKE_VULKAN_DEVICE_ENTRY(vkGetDescriptorSetLayoutSupportKHR),
} },
// VK_KHR_create_renderpass2
{
VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME,
{
MAKE_VULKAN_DEVICE_ENTRY(vkCreateRenderPass2KHR),
MAKE_VULKAN_DEVICE_ENTRY(vkCmdBeginRenderPass2KHR),
MAKE_VULKAN_DEVICE_ENTRY(vkCmdNextSubpass2KHR),
MAKE_VULKAN_DEVICE_ENTRY(vkCmdEndRenderPass2KHR),
} },
// VK_EXT_line_rasterization
{
VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME,
......
......@@ -25,9 +25,11 @@ class RenderPass : public Object<RenderPass, VkRenderPass>
{
public:
RenderPass(const VkRenderPassCreateInfo *pCreateInfo, void *mem);
RenderPass(const VkRenderPassCreateInfo2KHR *pCreateInfo, void *mem);
void destroy(const VkAllocationCallbacks *pAllocator);
static size_t ComputeRequiredAllocationSize(const VkRenderPassCreateInfo *pCreateInfo);
static size_t ComputeRequiredAllocationSize(const VkRenderPassCreateInfo2KHR *pCreateInfo);
void getRenderAreaGranularity(VkExtent2D *pGranularity) const;
......@@ -93,6 +95,8 @@ private:
uint32_t *attachmentViewMasks = nullptr;
void MarkFirstUse(int attachment, int subpass);
template<class T>
void init(const T *pCreateInfo, void *mem);
};
static inline RenderPass *Cast(VkRenderPass object)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment