aboutsummaryrefslogtreecommitdiff
path: root/layers/device_limits.cpp
AgeCommit message (Collapse)Author
2015-11-20layers: LX196, validate createImage paramters against format limitsMark Lobodzinski
Relocated some validation from DeviceLimits layer to Image layer, added additional per-format limit validation for CreateImage parameters.
2015-11-06bug 15085: queue creation naming issuesChia-I Wu
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
2015-11-06bug 15068: Use hardfp calling convention on Android for 32-bit ARM targetsChia-I Wu
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
2015-11-05layers: Fix printf formatsMichael Lentine
Add validation to printf format strings
2015-11-04misc: Update author informationCourtney Goeltzenleuchter
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.
2015-11-04misc: switch copyright to ValveCourtney Goeltzenleuchter
2015-11-04misc: Remove Vulkan name from CopyrightCourtney Goeltzenleuchter
2015-11-03bug 15045: vkGetPhysicalDeviceImageFormatProperties for unsupported formats ↵Chia-I Wu
(WIP) Change the return type of vkGetPhysicalDeviceImageFormatProperties. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=15045
2015-11-03bug 14537: vkGetPhysicalDeviceImageFormatProperties doesn't express all ↵Chia-I Wu
limitations (WIP) Use VkSampleCountFlagBits exclusively. Note that it can be casted to integer. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14537
2015-11-02bug 14921 part 1: sed renamesChia-I Wu
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
2015-11-02bug 14918 part 2: some simple renames (WIP)Chia-I Wu
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
2015-11-02bug 12921: Memory callback (WIP)Chia-I Wu
The per-object allocator is ignored for now. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=12921
2015-11-02bug 14892: 'count' parameters and members named inconsistently in many cases ↵Chia-I Wu
(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
2015-10-26bug-14258: Make descriptor pools and command pools more consistentCourtney Goeltzenleuchter
2015-10-23bug-14786: minor renamesCourtney Goeltzenleuchter
2015-10-23Bug 14621: Change vkGet* functions to not return VkResultCourtney Goeltzenleuchter
2015-10-23bug-14642: Rename queueRecordCount to requestedQueueCountCourtney Goeltzenleuchter
2015-10-09layers: Remove dependency between calls to vkCreateImage and ↵Tony Barbour
vkGetPhysicalDeviceProperties
2015-10-08layers: Fix Windows compiler warningsCourtney Goeltzenleuchter
2015-10-08layers: clean up includesCourtney Goeltzenleuchter
2015-10-08layers: Add DEBUG_OUTPUT support to device_limitsCourtney Goeltzenleuchter
2015-10-08intel,layers,tests: move cmd_meta errors to validationMike Stroyan
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.
2015-10-08layers: DrawState migrate device and instance dispatch tables into layer ↵Tobin Ehlis
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.
2015-10-08layers: In DeviceLimits move dispatch table to layer data structTobin Ehlis
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.
2015-10-07layers: Remove obsolete dbg message logging headerJon Ashburn
2015-10-06layers: Fix DeviceLimits error return codesMark Lobodzinski
2015-09-29layers: Intercept vkEnumerateInstance[Layer|Extension]Properties() funcs in ↵Tobin Ehlis
DeviceLimits
2015-09-29Fix windows build issues in cube.c and device_limits.cppTobin Ehlis
2015-09-29layers: DeviceLimits device feature checks and dead code removalTobin Ehlis
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.
2015-09-28layers: Add constructors for layer_dataCody Northrop
2015-09-23bug 14365: make separate viewport and scissor cmdsCourtney Goeltzenleuchter
2015-09-23bug 14365: replace dynamic state objectsCourtney Goeltzenleuchter
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...
2015-09-22intel: Removed ICD validation checks from img.cMark Lobodzinski
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.
2015-09-22layers: DeviceLimits warns if queue properties not queried prior to ↵Tobin Ehlis
vkCreateDevice()
2015-09-17bug 14509: Rename Layer and Extension queriesCourtney Goeltzenleuchter
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14509 https://gitlab.khronos.org/vulkan/vulkan/merge_requests/334
2015-09-16layers: Fix layer STDOUT loggingTobin Ehlis
2015-09-11bug 14537: Improve VkImageFormatPropertiesCourtney Goeltzenleuchter
2015-09-10vulkan.h: Change return types of some functions to voidMark Lobodzinski
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.
2015-09-09layers: Initial framework for DeviceLimits layerTobin Ehlis
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.