Mark Young [Thu, 9 Nov 2017 17:37:04 +0000 (10:37 -0700)]
Implement initial VK_EXT_debug_utils changes
This affects the loader, scripts, and layers and introduces the
changes to support the VK_EXT_debug_utils extension.
Change-Id: Ia5336f63e85b00f1e59416c06aacd4ae331fd692
Lenny Komow [Wed, 8 Nov 2017 22:11:00 +0000 (15:11 -0700)]
build: Bump linux loader version to 1.1
Lenny Komow [Tue, 7 Nov 2017 18:26:49 +0000 (11:26 -0700)]
docs: Update loader doc for 1.0 ICD handling
The 1.1 loader has to handle 1.0 ICDs specially during instance
creation. This commit documents that behavior.
Lenny Komow [Tue, 7 Nov 2017 17:42:19 +0000 (10:42 -0700)]
loader: Update 1.0 checking mechanism
The loader will now get vkEnumerateInstanceVersion from the ICD by
calling the ICD's GetInstanceProcAddr function.
Lenny Komow [Fri, 3 Nov 2017 20:37:11 +0000 (14:37 -0600)]
loader: Disable emulation for 1.1 core functions
Disable emulation for physical device functions when they are used
as core 1.1. The emulation will still be used if they are used as the
original instance extensions.
Lenny Komow [Fri, 3 Nov 2017 19:14:32 +0000 (13:14 -0600)]
loader: Check vkEnumerateInstanceVersion in ICD
The loader will now check vkEnumerateInstanceVersion in each ICD
before creating an instance to determine if the loader needs to
change the apiVersion field.
Shannon McPherson [Mon, 30 Oct 2017 22:36:40 +0000 (16:36 -0600)]
demos: Update Vulkan Instance Version reporting
Mark Lobodzinski [Fri, 27 Oct 2017 19:22:23 +0000 (13:22 -0600)]
layers: Enable 1.0 exts moved to 1.1 core
Also plumbed api_version into CV and PV for validation and enabling
the appropriate 1.0 extensions by default in 1.1.
Mark Lobodzinski [Wed, 25 Oct 2017 22:41:20 +0000 (16:41 -0600)]
layers: Update core_validation for aliases
Also refactored for pre/post architecture.
CreateDescriptorUpdateTemplate[KHR]
DestroyDescriptorUpdateTemplate[KHR]
UpdateDescriptorSetWithTemplate[KHR]
GetPhysicalDeviceQueueFamilyProperties2[KHR]
EnumeratePhysicalDeviceGroups[KHR]
Mark Lobodzinski [Wed, 25 Oct 2017 22:56:42 +0000 (16:56 -0600)]
layers: Updated unique objects layer for aliases
UpdateDescriptorSetWithTemplate[KHR]
CreateDescriptorUpdateTemplate[KHR]
DestroyDescriptorUpdateTemplate[KHR]
Mark Lobodzinski [Wed, 25 Oct 2017 22:57:04 +0000 (16:57 -0600)]
layers: Updated Object Tracker layer for aliases
GetPhysicalDeviceQueueFamilyProperties2[KHR]
Mark Lobodzinski [Wed, 25 Oct 2017 21:26:28 +0000 (15:26 -0600)]
layers: Handle aliasing in parameter validation
Lenny Komow [Thu, 26 Oct 2017 17:08:27 +0000 (11:08 -0600)]
loader: Remove repeated function from vulkan.def
Lenny Komow [Wed, 25 Oct 2017 21:26:15 +0000 (15:26 -0600)]
loader: Re-add old 1.1 loader work
vkEnumerateInstanceVersion got removed, as did the checks for layer
versions when we rebased off of github. This adds them back in.
Lenny Komow [Wed, 11 Oct 2017 21:39:38 +0000 (15:39 -0600)]
loader: Fix crash in VK_KHR_surface
The VkSurfaceKHR object in vkGetDeviceGroupSurfacePresentModesKHR was
not getting properly unwrapped. As a result, an invalid surface handle
was being passed to the drivers (usually resulting in a crash).
Lenny Komow [Wed, 11 Oct 2017 19:39:33 +0000 (13:39 -0600)]
loader: Fix loader using stale VkApplicationInfo
Fix a bug where the loader could crash because it used a
VkApplicationInfo struct after the struct had gone out of scope.
Lenny Komow [Wed, 11 Oct 2017 15:25:19 +0000 (09:25 -0600)]
loader: Remove version check from vkCreateInstance
Lenny Komow [Wed, 11 Oct 2017 15:20:52 +0000 (09:20 -0600)]
loader: Fix crash with null VkApplicationInfo
Fix a crash when creating an instance where
pCreateInfo->pApplicationInfo is set to null.
Lenny Komow [Tue, 10 Oct 2017 19:50:20 +0000 (13:50 -0600)]
loader: Fix crash in aliased extensions
Lenny Komow [Mon, 2 Oct 2017 21:08:53 +0000 (15:08 -0600)]
loader: Update loader for Vulkan 1.1
Lenny Komow [Tue, 3 Oct 2017 19:59:21 +0000 (13:59 -0600)]
loader: Update functions names
Lenny Komow [Tue, 3 Oct 2017 16:11:24 +0000 (10:11 -0600)]
loader: Update vkEnumerateInstanceVersion for 1.1
Lenny Komow [Mon, 2 Oct 2017 23:11:05 +0000 (17:11 -0600)]
loader: Add new core 1.1 entry points
Lenny Komow [Mon, 2 Oct 2017 21:58:17 +0000 (15:58 -0600)]
loader: Fix windows build
Lenny Komow [Mon, 2 Oct 2017 21:32:55 +0000 (15:32 -0600)]
loader: Fix loader marking 1.1 cmds as required
Lenny Komow [Mon, 2 Oct 2017 21:08:53 +0000 (15:08 -0600)]
loader: Move manual KHR exts to core
Mark Lobodzinski [Mon, 23 Oct 2017 21:31:56 +0000 (15:31 -0600)]
loader: Update vulkan version location
Mark Lobodzinski [Tue, 24 Oct 2017 19:41:18 +0000 (13:41 -0600)]
scripts: Update generators for 1.1
Mark Lobodzinski [Thu, 28 Sep 2017 21:57:07 +0000 (15:57 -0600)]
layers: Fix unique_objects for renamed safe structs
Mark Lobodzinski [Thu, 28 Sep 2017 21:18:18 +0000 (15:18 -0600)]
layers: Fixed issues due to safe struct renames
Mark Lobodzinski [Thu, 28 Sep 2017 21:12:02 +0000 (15:12 -0600)]
scripts: Avoid duplicates in enum string helper
Mark Lobodzinski [Thu, 28 Sep 2017 21:11:38 +0000 (15:11 -0600)]
scripts: Fix loader extension generator
Was incorrectly creating device/instance dispatch tables.
Mike Schuchardt [Thu, 20 Jul 2017 17:16:48 +0000 (11:16 -0600)]
scripts: Private repo VUID workaround
Workarounds for private codegen and tests so they can run without having
to update the VUID mapping or database
Change-Id: Idf71df859f55888103f93f863fc73a0c7a01de2c
Mark Lobodzinski [Mon, 18 Sep 2017 22:28:27 +0000 (16:28 -0600)]
header: KHX->KHR name changes
Mark Lobodzinski [Mon, 18 Sep 2017 21:13:54 +0000 (15:13 -0600)]
scripts: Update lvl_genvk.py with 1.1 changes
Mark Lobodzinski [Mon, 18 Sep 2017 20:15:09 +0000 (14:15 -0600)]
scripts: Allow for skipping version_1_1 features
Treat 1.1 features as 1.0, instead of as an extension.
Mark Lobodzinski [Tue, 6 Mar 2018 15:12:19 +0000 (08:12 -0700)]
docs: Update Contributing.md for msg output info
Change-Id: Iab9831c798970334808c5d0784e1e5128f05c6f6
Jeremy Kniager [Tue, 27 Feb 2018 23:50:02 +0000 (16:50 -0700)]
vulkaninfo: Add extension output
Added output for extension structures:
VkPhysicalDevice16BitStorageFeaturesKHR
VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR
VkPhysicalDeviceVariablePointerFeaturesKHR
VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT
VkPhysicalDeviceBlendOperationAdvancedProper-
tiesEXT
VkPhysicalDevicePointClippingPropertiesKHR
VkPhysicalDevicePushDescriptorPropertiesKHR
VkPhysicalDeviceDiscardRectanglePropertiesEXT.
Change-Id: I5718ab765f48fb0d65ddecd6718f0c14e814e715
Chris Forbes [Wed, 7 Mar 2018 20:57:48 +0000 (12:57 -0800)]
layers: Add support for StorageBuffer storage class
Add basic support for storage buffers using the StorageBuffer storage
class rather than UniformConstant + BufferBlock decoration.
Chris Forbes [Wed, 7 Mar 2018 19:38:08 +0000 (11:38 -0800)]
layers: Require appropriate feature enabled for writable descriptors
Chris Forbes [Wed, 7 Mar 2018 19:37:45 +0000 (11:37 -0800)]
layers: Determine whether a shader uses any writable descriptors
Dave Houlton [Fri, 2 Feb 2018 23:18:52 +0000 (16:18 -0700)]
layers: Param validation checks multiplane bits
Update parameter validation checks to recognize the new aspect flag
bits added by VK_KHR_sampler_ycbcr_conversion extension
(VK_IMAGE_ASPECT_PLANE_n_BIT_KHR). Update core validation checks to
avoid false positives when copying multiplane images.
Change-Id: I6fb19ff76386ce55f3b44b0301ba7cd7f7e88547
John Zulauf [Tue, 6 Mar 2018 23:44:43 +0000 (16:44 -0700)]
layers: Cleanup naming for layout compatibiity
Type and variable names have been clarified for the pipeline layout
array of descriptor set layouts based on reviewer feedback.
Change-Id: I6b191b2121db87285f7fd50810991340c02475c4
John Zulauf [Fri, 16 Feb 2018 20:09:39 +0000 (13:09 -0700)]
layers: Improve pipeline layout compat updates
Replaced existing "compatible for set N" and descriptor set binding
update/disturb logic with one using the cannonical form dictionaries and
implementing all of the disturb before and after rules. Also applied
this update/disturb logic to PushDescriptors recording.
Change-Id: I950c8e5d56c2dbc81fc52136af5a22882cfbc7a4
John Zulauf [Fri, 16 Feb 2018 20:08:47 +0000 (13:08 -0700)]
layers: Add canonical/unique ID to pipeline layout
Add unique ID's to pipeline layout needed for pipeline layout
compatibilty revamp in subsequent commit. Refactor unique ID support
into common Dictionary implementation.
Change-Id: I0d864c8ef3b3406d6444aed4d73078d25d5eb26f
John Zulauf [Fri, 16 Feb 2018 20:07:24 +0000 (13:07 -0700)]
layers: Store PushConstant ranges in dictionary
For rapid compatiblity checks, create unique ID's for PushConstant
ranges.
Change-Id: Ie33372e2428e453e610e292b2917801225c11020
John Zulauf [Fri, 16 Feb 2018 20:00:34 +0000 (13:00 -0700)]
layers: Give compatible DSL unique ids
Store compatible DescriptorSetLayout definitions in a dictionary with
unique IDs. Use IDs for trivial accept compatibility validation.
Change-Id: I1085a354d36d1a733f79adb4459decf8cf0a55c1
John Zulauf [Fri, 16 Feb 2018 19:58:37 +0000 (12:58 -0700)]
layers: Split DescriptorSetLayout data structure
In preparing for use of "common definiton" id's split the
DescriptorSetLayout data structure into handle specific and common (def)
components. Object interface is preserved.
Change-Id: I5c6b1e726aa70de548c65a5f5ad08726b0a7507b
Martin Herkt [Tue, 6 Mar 2018 21:44:13 +0000 (22:44 +0100)]
layers/vk_layer_config.cpp: fix win32 include case
Fixes mingw-w64 compilation on case-sensitive file systems.
Mike Schuchardt [Wed, 7 Mar 2018 00:39:05 +0000 (17:39 -0700)]
docs: Update brew package list
Starting around Feb 27 2018, "python" installs python 3.x instead of
2.x. Also remove git which should be present from the Xcode command
line tools and python2 which should be present in the base macOS
install.
John Zulauf [Fri, 2 Mar 2018 16:24:43 +0000 (09:24 -0700)]
tests: Add unit tests for dedicated memory binding
Added unit tests for the following valid usage checks w.r.t. binding
dedicated allocations to buffers and images.
VALIDATION_ERROR_17000bc8 VUID-vkBindBufferMemory-memory-01508
VALIDATION_ERROR_17400bca VUID-vkBindImageMemory-memory-01509
As same code path checks the BindImage2/BufferMemory2, but has no
matching valid usage, no tests are added for those cases.
Change-Id: Id8845d3cdb85731142ca0dca381a5e9157118a25
John Zulauf [Fri, 2 Mar 2018 16:13:09 +0000 (09:13 -0700)]
layers: Add VU checks for dedicated buffers/images
Add validation for the following valid usage for binding dedicated
allocations to buffers and images.
VALIDATION_ERROR_17000bc8 VUID-vkBindBufferMemory-memory-01508
VALIDATION_ERROR_17400bca VUID-vkBindImageMemory-memory-01509
The same code path checks the BindImage2/BufferMemory2, but there are no
matching VUID at this time.
Change-Id: I8b700059d8c0acdfabf0b30be3dca20f616b3be1
Karl Schultz [Tue, 12 Dec 2017 15:33:01 +0000 (10:33 -0500)]
macOS: Add macOS support
Tobin Ehlis [Fri, 2 Mar 2018 14:43:50 +0000 (07:43 -0700)]
layers:Add VUIDs for VK_KHR_incremental_present
Ran across this old TODO when cleaning up branches. Add in the
appropriate VUIDs, update DB, and kill TODO comment.
Nico Weber [Thu, 1 Mar 2018 14:55:46 +0000 (09:55 -0500)]
build: Fix -Wmicrosoft-cast warnings with clang-cl
MSVC allows implicit conversion from function pointers to void*.
The C++ standard doesn't allow this, and clang-cl emits a warning
when this is done. This change fixes these warnings in
Vulkan-LoaderAndValidationLayers.
Arguably, loader_platform_get_proc_address() should return a
FARPROC so that the compiler can help checking calling conventions,
but this is the simplest fix that unblocks us.
This is needed for https://crbug.com/550065
Petr Kraus [Tue, 27 Feb 2018 20:20:23 +0000 (21:20 +0100)]
tests: Add tests for vkCmdSetScissor
+ increase coverage of `VkRect2D` tests.
Petr Kraus [Tue, 27 Feb 2018 20:15:55 +0000 (21:15 +0100)]
layers: Rewrite pv_vkCmdSetScissor checks
- tweaks to completeness, correctness and quality of msg logs
- add `multiViewport` related check
- protect against `NULL` ptr `pScissors`
- make overflow check more robust (remove u32->i32 cast)
- correct veid db
Petr Kraus [Tue, 27 Feb 2018 20:00:14 +0000 (21:00 +0100)]
tests: Add missing dyn. multiVieport tests in db
Petr Kraus [Tue, 27 Feb 2018 19:51:20 +0000 (20:51 +0100)]
layers: Conform to gstyle in pv_vkCmdSetVieport
Mark Lobodzinski [Wed, 28 Feb 2018 20:38:45 +0000 (13:38 -0700)]
layers: Make unique_objects ID map global
Increasingly, instance objects are referenced by device-level APIs.
Made unique ID map global, shared across all instances and devices.
Change-Id: I5b62e7b95ec25a2a8b390d46024b43c29f2199ce
Mark Lobodzinski [Thu, 1 Mar 2018 17:25:58 +0000 (10:25 -0700)]
scripts: Mod spec.py to use local validusage.json
This script by default used the latest version of validusage.json from
the web. Changed to use the local copy checked into the repo. Used the
json-file option to fetch from a non-default location, removed the
-json arg and the URL option entirely.
Change-Id: Id088b08c8e66a3cdfca2b9e771797bffe941e5d3
Mark Lobodzinski [Tue, 27 Feb 2018 16:19:15 +0000 (09:19 -0700)]
scripts: Add validusage.json to LVL repo
In the future, this file will be updated as part of the Vulkan
header update process, and will be used as part of managing VUID
identifiers and lifetimes.
Change-Id: I6e29c1148e8752147310649a5ccfd99f385c0f46
Jeremy Kniager [Fri, 19 Jan 2018 17:55:01 +0000 (10:55 -0700)]
layers: Add VU check for VkSwapchainCreateInfoKHR
Added validation check for zero values in
imageExtent of VkSwapchainCreateInfoKHR.
No test included for this VU check as there is
currently no clean method for creating a
VkSurfaceKHR object in
layer_validation_tests.cpp.
Change-Id: I5b04543a837d1f1f7d8c20cec4f446df503a81ce
Jeremy Kniager [Fri, 19 Jan 2018 17:52:34 +0000 (10:52 -0700)]
demos: Fix bug cube.c
Fixed cube.c crashing on Windows when minimized.
Change-Id: Ia4a6578f7da6c1f7a10977b8343099df4c5c69fb
Shannon McPherson [Wed, 28 Feb 2018 17:59:22 +0000 (10:59 -0700)]
demos: Redirect error messages to stderr
Change-Id: Ib704cdc15eb681d1aa1c0a6cde55af5a9bdf3f0e
Tobin Ehlis [Mon, 26 Feb 2018 17:55:57 +0000 (10:55 -0700)]
layers:Merge common loops
Can increment resources for secondary command buffers in the same loop
where image layouts are updated.
Karl Schultz [Tue, 27 Feb 2018 17:47:00 +0000 (10:47 -0700)]
docs: fix markdown lint issues in BUILD.md
Mark Lobodzinski [Wed, 21 Feb 2018 22:31:52 +0000 (15:31 -0700)]
docs: Remove osx-specific func from Linux instrs
Fixed a pre-existing typo in the android instructions for Linux.
Change-Id: I7ceea88d07a69a60fc1afe4b2facf3e03f0da0e5
Mark Lobodzinski [Mon, 19 Feb 2018 23:31:41 +0000 (16:31 -0700)]
docs: Reorg and update BUILD.md
Also changed to one-sentence-per-line markdown style.
Change-Id: I41d6fcb8fa4a07711f19325c350950d5be3e269c
Mark Lobodzinski [Mon, 26 Feb 2018 23:09:11 +0000 (16:09 -0700)]
layers: Removed obsolete (and duplicate) VUIDs
Removed old source, tests, and database entries for checks
09c0012a
and
09c00136 (VUID-VkImageCopy-srcSubresource-00149 and
VUID-VkImageCopy-dstSubresource-00155) which were removed as part
of gitlab issue #812.
Change-Id: I8da71e2dc5b993a442ae1c4f6036266b59069a4f
Mark Lobodzinski [Mon, 26 Feb 2018 23:01:22 +0000 (16:01 -0700)]
layers: Fix a couple of old typos
Change-Id: I05d9c71a21136b790039fce05a2b4d9472537a2a
Mark Lobodzinski [Mon, 26 Feb 2018 22:57:35 +0000 (15:57 -0700)]
layers: Remove buffer image_xfer_granularity checks
These checks are obsolete and have been removed from the spec.
Change-Id: If0c47096029775c53493ba2a5b3d3ee58211f4b3
Jeff Bolz [Wed, 14 Feb 2018 20:26:18 +0000 (14:26 -0600)]
build: Fix line endings in update resources script
Used tr -d to remove line endings for external_revisions files in
update_external_sources.sh script.
Note: Also fixed comment
Change-Id: I9a467d60acc27eeced1f48e46c3bc5624c47ab23
Dave Houlton [Thu, 22 Feb 2018 23:25:16 +0000 (16:25 -0700)]
layers: Record 3D image slice layouts
Fixes a bug in image layout state handling that appeared with
khr_maintenance1. When a 3D image which was created with the
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR flag is transitioned
between layouts, we now also record a transition for each depth
slice, treating it as an array layer subresource.
The actual fix is just two lines within TransitionImageLayouts().
Also included are some debug-enabling refactoring to distinguish
layout state updates vs additions, and support for new aspect
mask bits.
Change-Id: Ibb5131a6dba8fcdeafe5e6d94af2decf751842ec
Mike Weiblen [Fri, 23 Feb 2018 20:26:08 +0000 (13:26 -0700)]
build: Modify .gitattributes for unix line endings
Shell scripts were forced to a carriage-return line ending -- changed
this to a line feed line ending.
Change-Id: I98b738e4f09ccc622632194586435e5ee6d855eb
Chris Forbes [Fri, 23 Feb 2018 18:16:17 +0000 (10:16 -0800)]
tweak travis config to make it easier to see which profile is failing
Chris Forbes [Fri, 23 Feb 2018 17:11:06 +0000 (09:11 -0800)]
layers: Fix miscounting of descriptors for multiple stages
Descriptors are not intended to count multiple times against the
maxDescriptorSet* limits if they are accessible from multiple stages.
Required adjusting various subtests in CreatePipelineLayout*.
Also fixed some related issues in those tests:
- Input attachments are ONLY accessible to the fragment stage.
- Various assumptions about divisibility of the maxDescriptorSet* limits
There are still many robustness issues in these tests -- it appears we
don't hit them with real implementations, but still wrong.
Chris Forbes [Sat, 17 Feb 2018 00:59:23 +0000 (16:59 -0800)]
layers: Fix validation of shader pipelines when a stage is broken
Present-but-broken stages need to still be considered present for
the purposes of walking `producer` forward. Otherwise a broken GS will
for example cause us to get confused and try to match the VS interface
against the FS.
Bug: #1600, others.
Shannon McPherson [Tue, 20 Feb 2018 02:06:12 +0000 (19:06 -0700)]
demos: Clang format and update const correctness
Change-Id: Ic48d19b6e67c153db0cd86ff6390076d52d3f16f
Shannon McPherson [Thu, 25 Jan 2018 18:10:51 +0000 (11:10 -0700)]
demos: Update/alter console and json output paths
Json is now sent to stdout instead of a file. Html and json output are
now the only two output paths that can exist in the same instance.
Change-Id: I2d28d9b996c11535bf170e7e25b5acd8f57276e1
Shannon McPherson [Mon, 8 Jan 2018 20:33:27 +0000 (13:33 -0700)]
demos: Add Windows functionality
Also, bug fixes.
Change-Id: I6828ea2958cc05342d9ab5a5438c032080bb849d
Shannon McPherson [Wed, 21 Feb 2018 18:00:17 +0000 (11:00 -0700)]
demos: Change post-increment to pre-increment
Change-Id: I2bc7a4d207330892c29fa8053705db0548963c00
Shannon McPherson [Thu, 4 Jan 2018 23:23:31 +0000 (16:23 -0700)]
demos: Add functionality on Linux for single GPU
Vulkaninfo JSON output appears as expected in Linux environment.
Implemented on a system with a single GPU.
Change-Id: I3179b3d479270c71a9f7955b41d19924baf10bfb
Shannon McPherson [Fri, 15 Dec 2017 23:30:46 +0000 (16:30 -0700)]
demos: Implement JSON coverage for more Vk objs
Change-Id: I6584027b83e4d55e2ad99680f7f3645a45285917
Shannon McPherson [Mon, 4 Dec 2017 23:54:20 +0000 (16:54 -0700)]
demos: surfaceCapabilities output; gpu select
User can now specify which GPU they want to save information for
Change-Id: Iac60fc883b32677bc2a59f4b3143aa727e3732cb
Mike Schuchardt [Wed, 21 Feb 2018 16:03:34 +0000 (09:03 -0700)]
scripts: Strip xref markup from vu error messages
Convert asciidoctor xref markup from "<<anchor, text>>" to "text" for VU
error messages. Longer term plan is to modify the upstream validusage
build target in Vulkan-Docs to emit plain text to begin with.
Change-Id: I6ca6ffb4701df27c9c1666598fbeceb0f3a03216
Mark Lobodzinski [Tue, 20 Feb 2018 16:37:55 +0000 (09:37 -0700)]
header: Update to version 1.0.69 of the Vulkan hdr
- updated vulkan.h
- updated vk.xml
- updated layer json files
- updated vulkan.hpp
- updated validation_error_database.txt
- updated vk_validation_error_messages.h
- updated vuid_mapping.py
Note that the VU text in the database file contains artifacts from
the registry/VUID toolchain. These will be addressed in a follow-on
patch set.
Change-Id: I6994ec17a6edcb6c9028c792c68863cd39f1fc56
John Zulauf [Tue, 20 Feb 2018 21:33:18 +0000 (14:33 -0700)]
layers: Convert 2 barrier checks to VUID notation
Converted two validation checks for image and buffer barriers to the
VALIDATION_ERROR_xxxxxxxx / VUID notation and changed unit tests to
also specify desired failure in same form.
VALIDATION_ERROR_0a00095c VUID-VkImageMemoryBarrier-newLayout-01198
VALIDATION_ERROR_0180094a VUID-VkBufferMemoryBarrier-size-01189
Change-Id: I20387bfec89872825f7311e443105aecacb84000
John Zulauf [Tue, 20 Feb 2018 19:19:28 +0000 (12:19 -0700)]
layers: Fix and convert buffer barrier size check
Change buffer barrier size check to compare against the created size of
the buffer, not the memory requirements size, and add VUID info to
validation. Update test to reflect validation changes.
Change-Id: Ib61d6bcd0df449bacd063ece44426ba6196b62e6
John Zulauf [Mon, 19 Feb 2018 23:32:08 +0000 (16:32 -0700)]
layers: A memory binding validation for barriers
Add validation to ensure non-sparse resources are bound to memory before
being referenced in a barrier command.
Change-Id: I007200833d19a96e92ef61a91851c6395b8b9c57
Dave Houlton [Fri, 16 Feb 2018 18:02:26 +0000 (11:02 -0700)]
demos: clang-format only
Apply a whole-file clang-format to LVL demos folder.
Change-Id: I5f7fc8b67e7f3f3eeaa34a2ae757004fb7334743
Mike Weiblen [Tue, 13 Feb 2018 20:56:13 +0000 (13:56 -0700)]
demos: ensure DISPLAY envar is valid
If the DISPLAY environment variable is unset or null, the cube demo will
emit "Cannot find a compatible Vulkan installable client driver (ICD)."
That message is not helpful when attempting to resolve the issue, since
the problem is with the envar, not the ICD.
Change-Id: Idf145cf0da906a4a8352b5bb136f88d9c1bca90d
Mark Lobodzinski [Fri, 16 Feb 2018 18:24:21 +0000 (11:24 -0700)]
layers: Handle multiple GetSwapchainImages calls
Unique Objects was fixed to prevent uniquifying duplicate image objects
for multiple GetSwapchainImageKHR calls.
Change-Id: I14bc3d8145a37b74adcdef68970b3dffc539d511
Mark Lobodzinski [Fri, 16 Feb 2018 16:58:07 +0000 (09:58 -0700)]
layers: Move U_O:DestroySwapchain out of codegen
This function in the unique_objects layer will need to clean up some
swapchain image index tracking information and so will now be
manually written.
Change-Id: I306fdd9f7a3c75c21b82fe21951804bd86259781
John Zulauf [Mon, 19 Feb 2018 17:09:35 +0000 (10:09 -0700)]
layers: Fix linux compilation errors of isnan
Added std:: to isnan invocation.
Change-Id: I1353c4116497a88625a12e4003121716ec66a4f0
Petr Kraus [Tue, 9 Jan 2018 23:19:16 +0000 (00:19 +0100)]
tests: Implement VkViewport tests
Petr Kraus [Tue, 9 Jan 2018 21:09:51 +0000 (22:09 +0100)]
tests: Add dynamic multiViewport test
Petr Kraus [Tue, 9 Jan 2018 21:09:42 +0000 (22:09 +0100)]
tests: Implement vkCmdSetViewport tests
Petr Kraus [Tue, 9 Jan 2018 21:09:25 +0000 (22:09 +0100)]
layers: Reimplement vkCmdSetViewport param val.
Petr Kraus [Tue, 9 Jan 2018 21:09:09 +0000 (22:09 +0100)]
layers: Implement `VkViewport` parameter_validation