Commit 2c63b83c by Tobin Ehlis Committed by Commit Bot

Vulkan:Enable DebugUtils extension for Android

Enable DebugUtils Vulkan extension for Android. This rolls VK Validation Layer dep forward to include a fix that allows this extension to work correctly with Android loader. Here's the Validation layer fix: https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/1464 Bug: angleproject:3852 Change-Id: I74c55c0a66a7ee4db3b623221c8fb6c4433a39af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1985175 Commit-Queue: Tobin Ehlis <tobine@google.com> Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent cbbb3aaf
...@@ -167,7 +167,7 @@ const char *GetStoreOpShorthand(uint32_t storeOp) ...@@ -167,7 +167,7 @@ const char *GetStoreOpShorthand(uint32_t storeOp)
return "D"; return "D";
} }
} }
#if !defined(ANGLE_PLATFORM_ANDROID)
void MakeDebugUtilsLabel(GLenum source, const char *marker, VkDebugUtilsLabelEXT *label) void MakeDebugUtilsLabel(GLenum source, const char *marker, VkDebugUtilsLabelEXT *label)
{ {
static constexpr angle::ColorF kLabelColors[6] = { static constexpr angle::ColorF kLabelColors[6] = {
...@@ -187,7 +187,7 @@ void MakeDebugUtilsLabel(GLenum source, const char *marker, VkDebugUtilsLabelEXT ...@@ -187,7 +187,7 @@ void MakeDebugUtilsLabel(GLenum source, const char *marker, VkDebugUtilsLabelEXT
label->pLabelName = marker; label->pLabelName = marker;
kLabelColors[colorIndex].writeData(label->color); kLabelColors[colorIndex].writeData(label->color);
} }
#endif
constexpr VkSubpassContents kRenderPassContents = constexpr VkSubpassContents kRenderPassContents =
CommandBuffer::ExecutesInline() ? VK_SUBPASS_CONTENTS_INLINE CommandBuffer::ExecutesInline() ? VK_SUBPASS_CONTENTS_INLINE
: VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS; : VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS;
...@@ -737,7 +737,7 @@ angle::Result CommandGraphNode::visitAndExecute(vk::Context *context, ...@@ -737,7 +737,7 @@ angle::Result CommandGraphNode::visitAndExecute(vk::Context *context,
case CommandGraphNodeFunction::InsertDebugMarker: case CommandGraphNodeFunction::InsertDebugMarker:
ASSERT(!mOutsideRenderPassCommands.valid() && !mInsideRenderPassCommands.valid()); ASSERT(!mOutsideRenderPassCommands.valid() && !mInsideRenderPassCommands.valid());
#if !defined(ANGLE_PLATFORM_ANDROID)
if (vkCmdInsertDebugUtilsLabelEXT) if (vkCmdInsertDebugUtilsLabelEXT)
{ {
VkDebugUtilsLabelEXT label; VkDebugUtilsLabelEXT label;
...@@ -745,12 +745,11 @@ angle::Result CommandGraphNode::visitAndExecute(vk::Context *context, ...@@ -745,12 +745,11 @@ angle::Result CommandGraphNode::visitAndExecute(vk::Context *context,
vkCmdInsertDebugUtilsLabelEXT(primaryCommandBuffer->getHandle(), &label); vkCmdInsertDebugUtilsLabelEXT(primaryCommandBuffer->getHandle(), &label);
} }
#endif
break; break;
case CommandGraphNodeFunction::PushDebugMarker: case CommandGraphNodeFunction::PushDebugMarker:
ASSERT(!mOutsideRenderPassCommands.valid() && !mInsideRenderPassCommands.valid()); ASSERT(!mOutsideRenderPassCommands.valid() && !mInsideRenderPassCommands.valid());
#if !defined(ANGLE_PLATFORM_ANDROID)
if (vkCmdBeginDebugUtilsLabelEXT) if (vkCmdBeginDebugUtilsLabelEXT)
{ {
VkDebugUtilsLabelEXT label; VkDebugUtilsLabelEXT label;
...@@ -758,17 +757,15 @@ angle::Result CommandGraphNode::visitAndExecute(vk::Context *context, ...@@ -758,17 +757,15 @@ angle::Result CommandGraphNode::visitAndExecute(vk::Context *context,
vkCmdBeginDebugUtilsLabelEXT(primaryCommandBuffer->getHandle(), &label); vkCmdBeginDebugUtilsLabelEXT(primaryCommandBuffer->getHandle(), &label);
} }
#endif
break; break;
case CommandGraphNodeFunction::PopDebugMarker: case CommandGraphNodeFunction::PopDebugMarker:
ASSERT(!mOutsideRenderPassCommands.valid() && !mInsideRenderPassCommands.valid()); ASSERT(!mOutsideRenderPassCommands.valid() && !mInsideRenderPassCommands.valid());
#if !defined(ANGLE_PLATFORM_ANDROID)
if (vkCmdEndDebugUtilsLabelEXT) if (vkCmdEndDebugUtilsLabelEXT)
{ {
vkCmdEndDebugUtilsLabelEXT(primaryCommandBuffer->getHandle()); vkCmdEndDebugUtilsLabelEXT(primaryCommandBuffer->getHandle());
} }
#endif
break; break;
case CommandGraphNodeFunction::HostAvailabilityOperation: case CommandGraphNodeFunction::HostAvailabilityOperation:
......
...@@ -696,15 +696,10 @@ angle::Result RendererVk::initialize(DisplayVk *displayVk, ...@@ -696,15 +696,10 @@ angle::Result RendererVk::initialize(DisplayVk *displayVk,
ExtensionNameList enabledInstanceExtensions; ExtensionNameList enabledInstanceExtensions;
enabledInstanceExtensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME); enabledInstanceExtensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME);
enabledInstanceExtensions.push_back(wsiExtension); enabledInstanceExtensions.push_back(wsiExtension);
#if defined(ANGLE_PLATFORM_ANDROID)
// TODO: Enable DebugUtils on Android
// http://anglebug.com/3852
bool enableDebugUtils = false;
#else
bool enableDebugUtils = bool enableDebugUtils =
mEnableValidationLayers && mEnableValidationLayers &&
ExtensionFound(VK_EXT_DEBUG_UTILS_EXTENSION_NAME, instanceExtensionNames); ExtensionFound(VK_EXT_DEBUG_UTILS_EXTENSION_NAME, instanceExtensionNames);
#endif
bool enableDebugReport = bool enableDebugReport =
mEnableValidationLayers && !enableDebugUtils && mEnableValidationLayers && !enableDebugUtils &&
ExtensionFound(VK_EXT_DEBUG_REPORT_EXTENSION_NAME, instanceExtensionNames); ExtensionFound(VK_EXT_DEBUG_REPORT_EXTENSION_NAME, instanceExtensionNames);
......
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