aboutsummaryrefslogtreecommitdiff
path: root/layers/draw_state.cpp
AgeCommit message (Collapse)Author
2015-11-18layers: Remove invalid depth/stencil validation checkMark Lobodzinski
2015-11-17layers: Fix invalid depth/stencil attachment index validationMark Lobodzinski
Was validating against color attachment index instead of attachment index for depth/stencil ClearAttachment calls.
2015-11-17layers: Fix Dota 2 crash in draw_state layerMark Lobodzinski
Memsetting STL vectors again -- added default constructor to struct.
2015-11-12layers: Add missing null-check in DrawStateMark Lobodzinski
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-06layers: Add DrawState check for correct dynamicOffsetCountTobin Ehlis
At vkCmdBindDescriptorSets() time, the dynamicOffsetCount must match the actual count of dynamic descriptors that are being bound. If not, validation flags an error of type DRAWSTATE_INVALID_DYNAMIC_OFFSET_COUNT.
2015-11-05layers: Fix printf formatsMichael Lentine
Add validation to printf format strings
2015-11-04layers: Fix some bugs in the memory barrier validation codeMark Lobodzinski
Fix some merge-request related issues in DrawState
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-04layers: Add Secondary Command Buffer Validation.Michael Lentine
Merge Request 51 Conflicts: layers/draw_state.cpp
2015-11-03layers: Fix some merge-related issues in demos and testsMark Lobodzinski
2015-11-03Add validation for masks in barriersMichael Lentine
2015-11-03Add layout validation for mapped images.Michael Lentine
2015-11-03Add validation for barriers within render passes.Michael Lentine
Conflicts: layers/draw_state.cpp
2015-11-03Add layout validation.Michael Lentine
This changes adds tracking of the current layout for each image. When the image is used the current layout is verified to be legal and optimal for the command. Conflicts: layers/draw_state.cpp
2015-11-03misc: Cleanup Windows compiler warningsCourtney Goeltzenleuchter
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-03bug 15022: Need a way to specify dummy descriptors for unused bindings (WIP)Chia-I Wu
Add binding to VkDescriptorSetLayoutBinding. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=15022
2015-11-03bug 14987: Document dependency of Vulkan API spec on SPIR-V spec (WIP)Chia-I Wu
s/VK_PRIMITIVE_TOPOLOGY_PATCH\b/VK_PRIMITIVE_TOPOLOGY_PATCH_LIST/g https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14987
2015-11-03bug 14608: VkShaderModule object lifetime (WIP)Chia-I Wu
Remove VkShader. We add a simple cache to intel_shader_module in place of intel_shader. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14608
2015-11-03bug 14887: Documenting Valid Behavior in the Spec (WIP)Chia-I Wu
MR544 introduced header changes accidentally and MR573 fixed some of them. Not sure if this pBindings-to-pBinding rename is intensional or not. s/pBindings/pBinding/g https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14887
2015-11-03layers: Allow calling down chain with vkEnumerateDeviceExtensionPropertiesJon Ashburn
2015-11-03layers: Remove resetting of result value in DrawStateMark Lobodzinski
2015-11-02bug 14918 part 3: sed renamesChia-I Wu
s/VK_MAX_PHYSICAL_DEVICE_NAME\b/VK_MAX_PHYSICAL_DEVICE_NAME_SIZE/g s/VK_UUID_LENGTH/VK_UUID_SIZE/g s/VK_MAX_EXTENSION_NAME\b/VK_MAX_EXTENSION_NAME_SIZE/g s/VK_MAX_DESCRIPTION\b/VK_MAX_DESCRIPTION_SIZE/g s/VK_STRUCTURE_TYPE_PIPELINE_RASTER_STATE_CREATE_INFO/VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO/g s/VK_CHANNEL_SWIZZLE/VK_COMPONENT_SWIZZLE/g s/VkChannelSwizzle/VkComponentSwizzle/g s/VK_VERTEX_INPUT_STEP_RATE/VK_VERTEX_INPUT_RATE/g s/VkVertexInputStepRate/VkVertexInputRate/g s/VK_FILL_MODE_SOLID/VK_POLYGON_MODE_FILL/g s/VK_FILL_MODE_WIREFRAME/VK_POLYGON_MODE_LINE/g s/VK_FILL_MODE_POINTS/VK_POLYGON_MODE_POINT/g s/VkFillMode/VkPolygonMode/g s/fillMode/polygonMode/g s/VkBlend\b/VkBlendFactor/g s/VK_BLEND_ZERO/VK_BLEND_FACTOR_ZERO/g s/VK_BLEND_ONE/VK_BLEND_FACTOR_ONE/g s/VK_BLEND_SRC/VK_BLEND_FACTOR_SRC/g s/VK_BLEND_DST/VK_BLEND_FACTOR_DST/g s/VK_BLEND_CONSTANT/VK_BLEND_FACTOR_CONSTANT/g s/VK_RENDER_PASS_CONTENTS/VK_SUBPASS_CONTENTS/g s/VkRenderPassContents/VkSubpassContents/g s/VK_QUEUE_DMA_BIT/VK_QUEUE_TRANSFER_BIT/g s/VK_CHANNEL_/VK_COLOR_COMPONENT_/g s/VkChannelFlagBits/VkColorComponentFlagBits/g s/VK_QUERY_CONTROL_CONSERVATIVE_BIT/VK_QUERY_CONTROL_PRECISE_BIT/g s/occlusionQueryNonConservative/occlusionQueryPrecise/g s/recommendedBufferCopyOffsetAlignment/optimalBufferCopyOffsetAlignment/g s/recommendedBufferCopyRowPitchAlignment/optimalBufferCopyRowPitchAlignment/g s/stencilCompareMask/compareMask/g s/stencilWriteMask/writeMask/g s/stencilReference/reference/g s/VkImageSubresourceCopy/VkImageSubresourceLayers/g s/typeCount/poolSizeCount/g s/pTypeCounts/pPoolSizes/g s/VkDescriptorTypeCount/VkDescriptorPoolSize/g s/srcBlendColor/srcColorBlendFactor/g s/dstBlendColor/dstColorBlendFactor/g s/blendOpColor/colorBlendOp/g s/srcBlendAlpha/srcAlphaBlendFactor/g s/dstBlendAlpha/dstAlphaBlendFactor/g s/blendOpAlpha/alphaBlendOp/g s/channelWriteMask/colorWriteMask/g s/stencilFailOp/failOp/g s/stencilPassOp/passOp/g s/stencilDepthFailOp/depthFailOp/g s/stencilCompareOp/compareOp/g s/stencilCompareMask/compareMask/g s/stencilWriteMask/writeMask/g s/stencilReference/reference/g s/originX/x/g s/originY/y/g s/stepRate/inputRate/g s/VkChannelMapping/VkComponentMapping/g
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-02MR 542: Remaining items from the cleanup bug (WIP)Chia-I Wu
depthStencilAttachment is replaced by pDepthStencilAttachment. s/VK_CULL_MODE_FRONT\b/VK_CULL_MODE_FRONT_BIT/g s/VK_CULL_MODE_BACK\b/VK_CULL_MODE_BACK_BIT/g s/VK_SAMPLER_ADDRESS_MODE_WRAP\b/VK_SAMPLER_ADDRESS_MODE_REPEAT/g s/VK_SAMPLER_ADDRESS_MODE_MIRROR\b/VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT/g s/VK_SAMPLER_ADDRESS_MODE_CLAMP\b/VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE/g s/VK_SAMPLER_ADDRESS_MODE_MIRROR_ONCE\b/VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE/g s/VK_SAMPLER_ADDRESS_MODE_CLAMP_BORDER\b/VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER/g https://gitlab.khronos.org/vulkan/vulkan/merge_requests/542
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 14892 part 2: rename more "count" (WIP)Chia-I Wu
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14892
2015-11-02bug 14918 part1: consistency/cleanup ideas (from jbolz/pdaniell/dkoch) (WIP)Chia-I Wu
Change alignment types and replace byRegion by VkDependencyFlags. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14918
2015-11-02bug 14543: rename VkTex* enums to VkTexture* similarly for VK_TEX_* to ↵Chia-I Wu
VK_TEXTURE_* (WIP) s/VK_TEX_FILTER_/VK_FILTER_/g s/VkTexFilter/VkFilter/g s/VK_TEX_MIPMAP_MODE_/VK_SAMPLER_MIPMAP_MODE_/g s/VkTexMipmapMode/VkSamplerMipmapMode/g s/VK_TEX_ADDRESS_MODE_/VK_SAMPLER_ADDRESS_MODE_/g s/VkTexAddressMode/VkSamplerAddressMode/g s/mipMode/mipmapMode/g https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14543
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-11-02layers: Use descriptor type to decide which pointer to freeTony Barbour
2015-10-30bug 14876: Can timestamps be written inside a renderpass? (WIP)Chia-I Wu
Timestamps are written to a query pool. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14876
2015-10-30bug 14362: VK_NULL_HANDLE does not work in C (WIP)Chia-I Wu
Drop type safety on 32-bit. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14362
2015-10-30bug 14864: Remove redundant VkPipelineShaderStageCreateInfo.stage field? (WIP)Chia-I Wu
Removed. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14864
2015-10-30bug 14868: Replace VkTimestampType with VkPipelineStageFlagBits (WIP)Chia-I Wu
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14868
2015-10-30bug 14855: vkGetPipelineCacheSize is unique (consistency issue) (WIP)Chia-I Wu
Update vkGetPipelineCacheData() to replace vkGetPipelineCacheSize(). https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14855
2015-10-30bug 14365: Rename slopeScaledDepthBias to depthBiasSlopeScaled (WIP)Chia-I Wu
s/slopeScaledDepthBias/depthBiasSlopeFactor/g s/depthBias\b/depthBiasConstantFactor/g https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14365
2015-10-30bug 14844: Query Pool issues (WIP)Chia-I Wu
We did not and still do not honor the stride nor flags. https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14844
2015-10-28layers: Add DrawState validation for copy descriptor updatesTobin Ehlis
2015-10-28layers: Simplify descriptor validation in DrawStateTobin Ehlis
Many descriptor validation helper functions were returning skipCall based on the potential for a bad update structure type. However, at the beginning of update validation, we validate that the update type is ok. Therefore, the other helper functions don't need to continually repeat this check, and can be simplified to return relevant values directly.
2015-10-28layers: Improve DrawState write descriptor updateTobin Ehlis
Validate that stageFlags are the same for a single write update. Validate that all sampler updates from a single write update are either immutable or non-immutable. Refactor update contents check to have a loop per switch case instead of switching for each loop iteration. Added two new validation errors: DRAWSTATE_DESCRIPTOR_STAGEFLAGS_MISMATCH DRAWSTATE_INCONSISTENT_IMMUTABLE_SAMPLER_UPDATE
2015-10-28layers: Remove DrawState g_lastBoundDescriptorSet variable - it's no longer usedTobin Ehlis
2015-10-27draw_state: Fix enum in validate_draw_state_flagsCody Northrop
DRAWSTATE_STENCIL_NOT_BOUND -> DRAWSTATE_SCISSOR_NOT_BOUND
2015-10-27windows: Fix vector resizing in draw_stateCody Northrop
2015-10-27layers: Improve DrawState Descriptor validationTobin Ehlis
Adding further validation for the contents of vkUpdateDescriptorSets() call. Make sure that provided sampler/image/buffer data is consistent with type and layout of the update. For imageView updates, make sure that aspect bits are set correctly for Color and DS images and make sure that the imageLayout is compatible with the underlying image format. This results in 4 new validation checks: DRAWSTATE_SAMPLER_DESCRIPTOR_ERROR DRAWSTATE_IMAGEVIEW_DESCRIPTOR_ERROR DRAWSTATE_BUFFERVIEW_DESCRIPTOR_ERROR DRAWSTATE_BUFFERINFO_DESCRIPTOR_ERROR Each of the new checks has a basic check to verify that the underlying Vk object (sampler, imageview, bufferview, buffer) for the respective type of check is valid. The ImageView error also includes cases where format of the image is not consistent with the layout (Color vs DS). Also added some enhancements to existing check: DRAWSTATE_INVALID_IMAGE_ASPECT - verify D&S bits not both set, but that one is for a DS layout, verify COLOR bit set for Color layout This change included adding and/or enhancing the tracking in DrawState for image[View] and buffer[View]. There is documentation for each of the new checks. There are new tests added for each of the new error cases as well as the ASPECT error case.