| Age | Commit message (Collapse) | Author |
|
Relocated some validation from DeviceLimits layer to Image layer,
added additional per-format limit validation for CreateImage parameters.
|
|
Manually rename arraySize and
s/queuePriorityCount/queueCount/g
s/requestedQueueCount/queueCreateInfoCount/g
s/pRequestedQueues/pQueueCreateInfos/g
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=15085
Conflicts:
layers/draw_state.cpp
|
|
Update python scripts.
s/(VKAPI \*/(VKAPI_PTR */g
s/void VKAPI\b/VKAPI_ATTR void VKAPI_CALL/g
s/VkResult VKAPI\b/VKAPI_ATTR VkResult VKAPI_CALL/g
s/PFN_vkVoidFunction VKAPI\b/VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL/g
s/void\* VKAPI\b/VKAPI_ATTR void* VKAPI_CALL/g
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=15068
|
|
Add validation to printf format strings
|
|
Author information was added to any file
with the standard license text.
Authors were added that added/changed >= 3%
of the lines of a file.
|
|
|
|
|
|
(WIP)
Change the return type of vkGetPhysicalDeviceImageFormatProperties.
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=15045
|
|
limitations (WIP)
Use VkSampleCountFlagBits exclusively. Note that it can be casted to integer.
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14537
|
|
Workaround header bug (ALLOC_INFO vs AllocateInfo) in vk_helper.py. This
affects the debug extensions as well.
s/NONDISP/NON_DISPATCHABLE/g
s/CmdBuffer/CommandBuffer/g
s/cmdBuffer/commandBuffer/g
s/CMD_BUFFER/COMMAND_BUFFER/g
s/AllocMemory/AllocateMemory/g
s/AllocDescriptorSets/AllocateDescriptorSets/g
s/AllocCommandBuffers/AllocateCommandBuffers/g
s/VkAllocCallbacks/VkAllocationCallbacks/g
s/VkSystemAllocScope/VkSystemAllocationScope/g
s/allocScope/allocationScope/g
s/allocType/allocationType/g
s/pfnAlloc\b/pfnAllocation/g
s/pfnRealloc\b/pfnReallocation/g
s/VK_SYSTEM_ALLOC_/VK_SYSTEM_ALLOCATION_/g
s/extName/extensionName/g
s/implVersion/implementationVersion/g
s/pAppInfo/pApplicationInfo/g
s/pMem\b/pMemory/g
s/VkMemoryAllocInfo/VkMemoryAllocateInfo/g
s/VkDescriptorSetAllocInfo/VkDescriptorSetAllocateInfo/g
s/CmdPool/CommandPool/g
s/cmdPool/commandPool/g
s/CMD_POOL/COMMAND_POOL/g
s/VkCommandBufferAllocInfo/VkCommandBufferAllocateInfo/g
s/maxTessellationGenLevel/maxTessellationGenerationLevel/g
s/maxFragmentDualSourceAttachments/maxFragmentDualSrcAttachments/g
s/destSubpass/dstSubpass/g
s/destStageMask/dstStageMask/g
s/dualSourceBlend/dualSrcBlend/g
s/destBlendColor/dstBlendColor/g
s/destBlendAlpha/dstBlendAlpha/g
s/VK_FORMAT_NUM/VK_FORMAT_RANGE_SIZE/g
s/VK_DYNAMIC_STATE_NUM/VK_DYNAMIC_STATE_RANGE_SIZE/g
s/pAppName/pApplicationName/g
s/appVersion/applicationVersion/g
s/numLevels/levelCount/g
s/numLayers/layerCount/g
s/destOffset/dstOffset/g
s/destSubresource/dstSubresource/g
s/VK_IMAGE_LAYOUT_TRANSFER_SOURCE_OPTIMAL/VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL/g
s/VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL/VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL/g
s/VK_IMAGE_USAGE_TRANSFER_SOURCE_BIT/VK_IMAGE_USAGE_TRANSFER_SRC_BIT/g
s/VK_IMAGE_USAGE_TRANSFER_DESTINATION_BIT/VK_IMAGE_USAGE_TRANSFER_DST_BIT/g
s/destBuffer/dstBuffer/g
s/destQueueFamilyIndex/dstQueueFamilyIndex/g
s/destSet/dstSet/g
s/destBinding/dstBinding/g
s/destArrayElement/dstArrayElement/g
s/VK_BLEND_DEST_COLOR/VK_BLEND_DST_COLOR/g
s/VK_BLEND_ONE_MINUS_DEST_COLOR/VK_BLEND_ONE_MINUS_DST_COLOR/g
s/VK_BLEND_DEST_ALPHA/VK_BLEND_DST_ALPHA/g
s/VK_BLEND_ONE_MINUS_DEST_ALPHA/VK_BLEND_ONE_MINUS_DST_ALPHA/g
s/VK_FORMAT_FEATURE_BLIT_SOURCE_BIT/VK_FORMAT_FEATURE_BLIT_SRC_BIT/g
s/VK_FORMAT_FEATURE_BLIT_DESTINATION_BIT/VK_FORMAT_FEATURE_BLIT_DST_BIT/g
s/VK_BUFFER_USAGE_TRANSFER_SOURCE_BIT/VK_BUFFER_USAGE_TRANSFER_SRC_BIT/g
s/VK_BUFFER_USAGE_TRANSFER_DESTINATION_BIT/VK_BUFFER_USAGE_TRANSFER_DST_BIT/g
s/VK_COMPARE_OP_LESS_EQUAL/VK_COMPARE_OP_LESS_OR_EQUAL/g
s/VK_COMPARE_OP_GREATER_EQUAL/VK_COMPARE_OP_GREATER_OR_EQUAL/g
s/VkPipelineRasterStateCreateInfo/VkPipelineRasterizationStateCreateInfo/g
s/rasterSamples/rasterizationSamples/g
s/pRasterState/pRasterizationState/g
s/VK_FRONT_FACE_CCW/VK_FRONT_FACE_COUNTER_CLOCKWISE/g
s/VK_FRONT_FACE_CW/VK_FRONT_FACE_CLOCKWISE/g
s/VK_PRIMITIVE_TOPOLOGY_LINE_LIST_ADJ/VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY/g
s/VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_ADJ/VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY/g
s/VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_ADJ/VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY/g
s/VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_ADJ/VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY/g
s/VK_STENCIL_OP_INC_CLAMP/VK_STENCIL_OP_INCREMENT_AND_CLAMP/g
s/VK_STENCIL_OP_DEC_CLAMP/VK_STENCIL_OP_DECREMENT_AND_CLAMP/g
s/VK_STENCIL_OP_INC_WRAP/VK_STENCIL_OP_INCREMENT_AND_WRAP/g
s/VK_STENCIL_OP_DEC_WRAP/VK_STENCIL_OP_DECREMENT_AND_WRAP/g
s/VK_LOGIC_OP_NOOP/VK_LOGIC_OP_NO_OP/g
s/VK_LOGIC_OP_EQUIV\b/VK_LOGIC_OP_EQUIVALENT/g
s/memBarrierCount/memoryBarrierCount/g
s/ppMemBarriers/ppMemoryBarriers/g
s/destImage/dstImage/g
s/destImageLayout/dstImageLayout/g
s/destCache/dstCache/g
s/memOffset/memoryOffset/g
s/vk_print_vkmemoryallocinfo/vk_print_vkmemoryallocateinfo/g
s/pAllocInfo/pAllocateInfo/g
s/memRangeCount/memoryRangeCount/g
s/pMemRanges/pMemoryRanges/g
s/VK_IMAGE_TYPE_NUM/VK_IMAGE_TYPE_RANGE_SIZE/g
s/VK_PIPELINE_BIND_POINT_NUM/VK_PIPELINE_BIND_POINT_RANGE_SIZE/g
s/vk_size_vkdescriptorsetallocinfo/vk_size_vkdescriptorsetallocateinfo/g
s/remap_cmdbuffers/remap_commandbuffers/g
s/remap_cmdpool/remap_commandpool/g
s/add_to_cmdbuffers_map/add_to_commandbuffers_map/g
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14921
a
|
|
s/VK_QUEUE_SPARSE_MEMMGR_BIT/VK_QUEUE_SPARSE_BINDING_BIT/g
s/VK_SPARSE_IMAGE_FMT_/VK_SPARSE_IMAGE_FORMAT_/g
s/maxTexelBufferSize/maxTexelBufferElements/g
s/residencyStandard2DMSBlockShape/residencyStandard2DMultisampleBlockShape/g
s/formatProps/formatProperties/g
s/strideInBytes/stride/g
s/offsetInBytes/offset/g
s/blendConst\b/blendConstants/g
s/fillSize/size/g
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14918
|
|
The per-object allocator is ignored for now.
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=12921
|
|
(WIP)
s/waitSemCount/waitSemaphoreCount/g
s/signalSemCount/signalSemaphoreCount/g
s/cmdBufferCount/commandBufferCount/g
s/queueFamilyCount/queueFamilyIndexCount/g
s/layerCount/enabledLayerNameCount/g
s/extensionCount/enabledExtensionNameCount/g
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14892
|
|
|
|
|
|
|
|
|
|
vkGetPhysicalDeviceProperties
|
|
|
|
|
|
|
|
Add checks for alignment in DeviceLimits layer.
Add checks for type, format and sample count in Images layer.
Remove such checks from intel icd.
Add new validations to layer_validation_tests.
|
|
data struct
This is first part of cleaning up DrawState. Need to migrate its global maps into the layer data struct as well so they are per device/instance and then single map look-up with get both layer data and dispatch tables.
|
|
All instance dispatch calls are made via instance_dispatch_table in layer data struct.
All device dispatch calls are made via device_dispatch_table in the layer data struct.
This saves map look-ups as a single call can be made to get the per device/instance layer data, including the dispatch table.
|
|
|
|
|
|
DeviceLimits
|
|
|
|
Refactored DeviceLimits to store maps in the layer_data struct in order to reduce map look-ups.
Added new checks and documentation related to Features checking. If specific features are requested at vkCreateDevice() time by the app, then they are checked against the supported features of the physical device. Requesting unsupported features cause validation errors. If the user did not query features and is asking for any unsupported features, then a warning message recommending that they query features is also printed along with the error(s) for unsupported features.
|
|
|
|
|
|
This is phase 1 of the replacement of dynamic state objects.
In this commit we remove the create and destroy functions
and rename the CmdBind... with CmdSet...
|
|
Moved validation into device_limits layer, created layer utils
files for format utilities, added validation tests, updated validation
doc, updated test framework to call GetPhysicalDeviceProperties.
|
|
vkCreateDevice()
|
|
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14509
https://gitlab.khronos.org/vulkan/vulkan/merge_requests/334
|
|
|
|
|
|
Functions that should be thought of as "impossible to fail in the face
of valid parameters" have had their return types changed to void.
This includes all of the vkDestroy functions, vkFreeMemory, and vkUnmapMemory.
vkUpdateDescriptorSets is also included, because of the frequency the function
is expected to be called.
|
|
This includes many initial entrypoints and setting up function intercepts with only a few actual checks to begin. DeviceLimits layer is intended to capture two broad categories of errors:
1. Incorrect use of APIs to query device capabilities
2. Attempt to use API functionality beyond the capability of the underlying device
DeviceLimits stores its own internal record of underlying device capabilities and flag errors if requests are made beyond those limits.
Initial checks and documentation include verification of EnumeratePhysicalDevices call and some basic queue create/get validation.
|