Report appropriate values of VkDebugUtilsMessageTypeFlagsEXT
for debug util messages generated within MoltenVK.
This commit is contained in:
parent
b4ae2bc1d8
commit
cfe259fce2
@ -31,6 +31,7 @@ Released TBD
|
||||
- Fix query pool wait block when query is not encoded to be written to.
|
||||
- Fix `vkUpdateDescriptorSetWithTemplate()` for inline block descriptors.
|
||||
- Fix retrieval of accurate `vkGetRefreshCycleDurationGOOGLE()` across multiple display screens.
|
||||
- Report appropriate values of `VkDebugUtilsMessageTypeFlagsEXT` for debug util messages generated within MoltenVK.
|
||||
- Update _macOS Cube_ demo to demonstrate optimizing the swapchain across multiple display screens.
|
||||
- Update `VK_MVK_MOLTENVK_SPEC_VERSION` to version `35`.
|
||||
|
||||
|
@ -183,6 +183,7 @@ protected:
|
||||
NSArray<id<MTLDevice>>* getAvailableMTLDevicesArray();
|
||||
VkDebugReportFlagsEXT getVkDebugReportFlagsFromLogLevel(MVKConfigLogLevel logLevel);
|
||||
VkDebugUtilsMessageSeverityFlagBitsEXT getVkDebugUtilsMessageSeverityFlagBitsFromLogLevel(MVKConfigLogLevel logLevel);
|
||||
VkDebugUtilsMessageTypeFlagsEXT getVkDebugUtilsMessageTypesFlagBitsFromLogLevel(MVKConfigLogLevel logLevel);
|
||||
MVKEntryPoint* getEntryPoint(const char* pName);
|
||||
void logVersions();
|
||||
VkResult verifyLayers(uint32_t count, const char* const* names);
|
||||
|
@ -208,15 +208,11 @@ void MVKInstance::debugReportMessage(MVKVulkanAPIObject* mvkAPIObj, MVKConfigLog
|
||||
}
|
||||
|
||||
if (_hasDebugUtilsMessengers) {
|
||||
VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity = getVkDebugUtilsMessageSeverityFlagBitsFromLogLevel(logLevel);
|
||||
uint64_t objectHandle = (uint64_t)(mvkAPIObj ? mvkAPIObj->getVkHandle() : nullptr);
|
||||
VkObjectType objectType = mvkAPIObj ? mvkAPIObj->getVkObjectType() : VK_OBJECT_TYPE_UNKNOWN;
|
||||
|
||||
VkDebugUtilsObjectNameInfoEXT duObjName = {
|
||||
.sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT,
|
||||
.pNext = nullptr,
|
||||
.objectType = objectType,
|
||||
.objectHandle = objectHandle,
|
||||
.objectType = mvkAPIObj ? mvkAPIObj->getVkObjectType() : VK_OBJECT_TYPE_UNKNOWN,
|
||||
.objectHandle = (uint64_t)(mvkAPIObj ? mvkAPIObj->getVkHandle() : nullptr),
|
||||
.pObjectName = mvkAPIObj ? mvkAPIObj->getDebugName().UTF8String : nullptr
|
||||
};
|
||||
VkDebugUtilsMessengerCallbackDataEXT dumcbd = {
|
||||
@ -233,7 +229,9 @@ void MVKInstance::debugReportMessage(MVKVulkanAPIObject* mvkAPIObj, MVKConfigLog
|
||||
.objectCount = 1,
|
||||
.pObjects = &duObjName
|
||||
};
|
||||
debugUtilsMessage(messageSeverity, VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT, &dumcbd);
|
||||
debugUtilsMessage(getVkDebugUtilsMessageSeverityFlagBitsFromLogLevel(logLevel),
|
||||
getVkDebugUtilsMessageTypesFlagBitsFromLogLevel(logLevel),
|
||||
&dumcbd);
|
||||
}
|
||||
}
|
||||
|
||||
@ -265,6 +263,18 @@ VkDebugUtilsMessageSeverityFlagBitsEXT MVKInstance::getVkDebugUtilsMessageSeveri
|
||||
}
|
||||
}
|
||||
|
||||
VkDebugUtilsMessageTypeFlagsEXT MVKInstance::getVkDebugUtilsMessageTypesFlagBitsFromLogLevel(MVKConfigLogLevel logLevel) {
|
||||
switch (logLevel) {
|
||||
case MVK_CONFIG_LOG_LEVEL_DEBUG:
|
||||
case MVK_CONFIG_LOG_LEVEL_INFO:
|
||||
case MVK_CONFIG_LOG_LEVEL_WARNING:
|
||||
return VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT;
|
||||
case MVK_CONFIG_LOG_LEVEL_ERROR:
|
||||
default:
|
||||
return VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#pragma mark Object Creation
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user