aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-09-16Remove MIPS from vulkan validation layer buildndk-r21endk-r21dndk-r21cndk-r21bndk-r21-rc1ndk-r21-beta2ndk-r21-beta1ndk-r21ndk-sysroot-r21ndk-release-r21Cody Northrop
Change-Id: Ida2a4a0079c48d87c405baf44f3bbaec77bd9361
2019-09-16Merge commit '389f0cff96936f5131180d06aa8a89cf1057389c' into ↵Cody Northrop
merge-vulkan-1.1.121 Change-Id: I66f1cc07af72261ecaeb8076ad995fea4c48bb77
2019-08-27build: Update known good for 1.1.121 vulkan headerShannon McPherson
Changes: - Updated known good files - Generated new files using `generate_source.py` Updated: - `build-android/known_good.json` - `layers/generated/chassis.cpp` - `layers/generated/chassis.h` - `layers/generated/parameter_validation.cpp` - `layers/generated/vk_enum_string_helper.h` - `layers/generated/vk_extension_helper.h` - `layers/generated/vk_safe_struct.cpp` - `layers/generated/vk_safe_struct.h` - `layers/generated/vk_typemap_helper.h` - `layers/generated/vk_validation_error_messages.h` - `scripts/known_good.json` Change-Id: Ia9231361012e54d39347d083374d6f04a04adcb4
2019-08-27layers: Error if iub extension not enabledTony-LunarG
Change-Id: I9a026fcbf8a84af9bcea9963f1cd951f2b7fa4b4
2019-08-23layers:Fix struct paddingTobin Ehlis
Always pad lock struct out to next 64-bytes. On Windows x64 std::mutex may be 80 bytes and updated padding code handles case where sizeof(lock_t) is > 64.
2019-08-23gpu: Add positive test for inline uniform blocksTony-LunarG
Change-Id: I8a53fb3fbd7f0581b3aa882889806c230ef0f1bf
2019-08-23gpu: Don't validate inline uniform blocksTony-LunarG
Change-Id: I09ff4d07c6de3f7820d58c8edc8cbe13987113ea
2019-08-23layers: VST refactor various queriesJohn Zulauf
Validation and State tracking segregation and validation const cleaness implementations for: EnumeratePhysicalDevices GetAccelerationStructureMemoryRequirementsNV GetBufferMemoryRequirements GetBufferMemoryRequirements2 GetBufferMemoryRequirements2KHR GetDeviceQueue GetDeviceQueue2 GetImageMemoryRequirements GetImageMemoryRequirements2 GetImageMemoryRequirements2KHR GetImageSparseMemoryRequirements GetImageSparseMemoryRequirements2 GetImageSparseMemoryRequirements2KHR Change-Id: I0b8b1fb3af6568d58222b30439ae1bd1684c215d
2019-08-23layers: VST refactor CmdExecuteCommandsJohn Zulauf
Segregate state tracking and validation, including const clean up of validation, which in turn required a disentangle of three commingled VUID tests. CmdExecuteCommands Change-Id: I3fb416795dc0694706a70e03d9ebe26e6913a3c9
2019-08-23layers:Guard (std::min) to avoid Windows conflictTobin Ehlis
Putting parens around (std::min) avoids "error: expected unqualified-id" build error on Windows due to its built-in "min" macro.
2019-08-23layers:Explicitly scope some helpersTobin Ehlis
2019-08-23layers:Update shared_mutex checkTobin Ehlis
ANGLE build uses custom, older SDK that doesn't include shared_mutex to modifying the shared_mutex preprocessor checks to account for this config.
2019-08-22layers: Use vl_concurrent_unordered_map in ObjectLifetimesJeff Bolz
Use vl_concurrent_unordered_map for the object_maps, and remove most use of the single object_lifetime_mutex. object_lifetime_mutex is still used in a few cases like to protect access through ObjTrackState::child_objects. Use shared_ptr for the pointers to ObjTrackState in case of application bugs like destroying the same object twice, which could otherwise crash when accessing and freeing that pointer.
2019-08-22tests: Check for SPARSE support in TemporaryExternalSemaphoreJeff Bolz
2019-08-22layers: Remove QueueInfo tracking from ObjectLifetimesJeff Bolz
Move VUID-vkQueueBindSparse-queuetype to core validation and remove the QueueInfo tracking from ObjectLifetimes since it's no longer necessary.
2019-08-22layers: Re-ban ray tracing stages in render passPetr Kraus
per resolution in https://github.com/KhronosGroup/Vulkan-Docs/issues/1021
2019-08-22tests: Add VK_NV_fill_rectangleChris Mayer
Added test to ensure that wrong usage is detected when the extension is enabled. Enhanced existing PSOPolygonModeInvalid to make sure that using VK_POLYGON_MODE_FILL_RECTANGLE_NV causes an error if the extension is not enabled.
2019-08-22layers: Add VK_NV_fill_rectangleChris Mayer
Added support for VK_NV_fill_rectangle to the validation layers.
2019-08-22layers: Initialize safe_struct pointersPetr Kraus
otherwise they are not set to `nullptr` in default constructor, but still destroyed in destructor.
2019-08-22layers: Simplify safe_struct pNext copyPetr Kraus
2019-08-22layers: Eliminate const_cast in safe_struct stringPetr Kraus
2019-08-21layers: Replace non-const references with pointersPetr Kraus
in core layer device creation code. per Google style guide
2019-08-21layers: Fix leaked Features in device creationPetr Kraus
2019-08-21corechecks: Remove moved codePiers Daniell
Change-Id: Ia475cc39e8fdccd78a621ecde023af889f7e2362
2019-08-21stateless: Move parameter validation to statelessPiers Daniell
Change-Id: I2daeab394ad124abd942da9ddc6745494a3aad10
2019-08-21corechecks: Add VUs checking for indexTypeUint8Piers Daniell
Change-Id: I0e2015c1eaa69452a5b69f05eb1be923f92dba33
2019-08-21corechecks: Add support for VK_INDEX_TYPE_UINT8_EXTPiers Daniell
Change-Id: I546fb10e40445273c6cc5b0983fe9d8a11b823be
2019-08-20build: Update known good for 1.1.120 vulkan headerShannon McPherson
Changes: - Updated known good files - Generated new files using `generate_source.py` Updated: - `build-android/known_good.json` - `layers/generated/parameter_validation.cpp` - `layers/generated/vk_enum_string_helper.h` - `layers/generated/vk_validation_error_messages.h` - `scripts/known_good.json` Change-Id: I794b1285d642f9a81181d4ea12275eb924e3e675
2019-08-20tests: Fix shader group type for RT OOB testJason Macnak
Corrects the VkRayTracingShaderGroupTypeNV field for two shader groups: - shader group 2 should be PROCEDURAL_HIT since the geometry is AABBs - shader group 3 should be GENERAL since the group is for a callable Addresses usage concerns reported in https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/1162 Tested on laptop with GTX1060 and Nvidia's 436.02 game ready driver.
2019-08-20docs: Bump minimums to Ubuntu 16.04 and gcc 5.4.0Mike Weiblen
Change-Id: Ic40bf1485efed0bcd7cef8b039154ba5828fb59f
2019-08-20layers: Use concurrent_unordered_map in dispatcherJeff Bolz
Use a concurrent_unordered_map for object tracking in dispatch. Add a vl_concurrent_unordered_map class that acts like an unordered_map but internally synchronizes concurrent accesses, and split the locks into 2^N buckets. Change-Id: If639feb0c53315888e057b1d91ad5da10a9d65c1
2019-08-20layers: ThreadSafety cleanupsJeff Bolz
2019-08-20layers: Change ThreadSafety buckets to AoSJeff Bolz
Also use small_unordered_map for command_pool_map.
2019-08-20layers: Remove condition_variable from thread safety layerJeff Bolz
The condition variable was being signaled extremely frequently, but the case where we wait is extremely infrequent (app bug). So remove the condition variable and replace the wait with a polling loop. Change-Id: If5120d1e2a10dd99207224518ef4340c631fc93a
2019-08-20layers: Split thread-safety locking into bucketsJeff Bolz
Using buckets will reduce lock contention. Change-Id: I07687036b5c340a9b065b282c025cbc47f65ad39
2019-08-20tests: Add fragment density map validation codesByumjinConffx
It checks if there is image limit violations with fragment density map image format.
2019-08-20tests: Add RenderPassCreateInvalidFragmentDensityMapReferencesByumjinConffx
RenderPassCreateInvalidFragmentDensityMapReferences check the cases if render pass has invalid fragment density map references.
2019-08-20tests: Check fragment density map image limits violationByumjinConffx
Add test codes to check fragment density map image limits violation. Test CreateImageMaxLimitsViolation is needed to check that the current device supports VK_KHR_get_physical_device_properties2.
2019-08-20layers: Add VkImageCreateInfo-usage valByumjinConffx
Adds VkImageCreateInfo-usage validation codes for FragmentDensityMap.
2019-08-20layers: Add missing flags for VkCreateImageViewByumjinConffx
It should include VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT.
2019-08-20layers: Add fragmentDensityMapAttachment valByumjinConffx
Adds VUID-VkRenderPassFragmentDensityMapCreateInfoEXT-fragmentDensityMapAttachment validation codes for FragmentDensityMap.
2019-08-20layers: Add VkFramebufferCreateInfo-pAttachments valByumjinConffx
Adds VkFramebufferCreateInfo-pAttachments validation codes for FragmentDensityMap. VkPhysicalDeviceFragmentDensityMapPropertiesEXT member value is added to DeviceExtensionProperties to get maxFragmentDensityTexelSize values. Also, math library is needed for ceil function.
2019-08-20appveyor: Capture layer binaries as artifactsNuno Subtil
2019-08-20test: Added VK_NV_geometry_shader_passthroughChris Mayer
Added positive layer test to make sure that the usage of VK_NV_geometry_shader_passthrough does not cause any errors.
2019-08-20layers: Reduce dynamic memory allocationJeff Bolz
Reduce dynamic memory allocation in UpdateLastBoundDescriptorSets and UpdateDrawState. Skip map assignment in UpdateDrawState if it's not needed. Change UpdateLastBoundDescriptorSets to not take a vector parameter (passed by value). Change-Id: I10835a0d008a3296845ecd91f2f901d77651598c
2019-08-20tests: Add tests for VK_EXT_line_rasterizationJeff Bolz
2019-08-20layers: Validate VK_EXT_line_rasterizationJeff Bolz
2019-08-19layers: Migrate code from VulkanTools ALCamden
Change-Id: I79ffb6c1adb3d65d5c02f48dfdd6ec89a98dc42f
2019-08-19tests: Test subpass with read-only layoutunknown
Change-Id: Ife383fb7e8e68b8ac60cb2ccbe4a6a86738bc2db
2019-08-19layers: If layouts are read-only, no dependency.unknown
Change-Id: I1c9cc965ea5ec390fd49320597c6ea6a1ae8d394