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
Cody Northrop [Fri, 16 Feb 2018 14:45:27 +0000 (07:45 -0700)]
android: Update shaderc known-good
20180216
Dave Houlton [Wed, 7 Feb 2018 17:51:23 +0000 (10:51 -0700)]
layers: clang-format only
Whole-file clang-format of layers .h and .cpp files
Change-Id: I683ad38fa9bced371a923b86d8cc916f2c2aa947
Dave Houlton [Wed, 7 Feb 2018 00:49:16 +0000 (17:49 -0700)]
tests: clang-format only
No code changes, just full clang-format.
Change-Id: I096d1b5509897bd642545e3369ccd83ca2849441
Norbert Garnys [Tue, 13 Feb 2018 15:32:03 +0000 (16:32 +0100)]
loader: Don't add duplicate JSON files from Khronos registry path.
To make sure we avoid enumerating old JSON files/drivers that might be present
in the non-device specific area of the registry when a newer device specific
JSON file is present, do a check before adding.
Find the file name, without path, of the JSON file found in the non-device
specific registry location. If the same JSON file name is already found in
the list, don't add it again.
Tobin Ehlis [Thu, 8 Feb 2018 21:10:35 +0000 (14:10 -0700)]
layers:Verify sparse image metadata is bound
Any image for which sparse memory requirements are bound, flag if that
image requires metadata. When binding sparse memory, for any image that
requires metadata and no metadata was bound, issue a warning.
Tobin Ehlis [Thu, 8 Feb 2018 20:30:56 +0000 (13:30 -0700)]
layers:Add sparse mem warning if reqs not checked
If vkQueueBindSparse() is called to bind sparse memory to an image,
trigger a warning if the user has not queried sparse requirements for
that image.
Tobin Ehlis [Thu, 8 Feb 2018 18:19:10 +0000 (11:19 -0700)]
layers:Track sparse image requirements
Add image state tracking for if sparse memory requirements have been
queried and when they are queried, save the requirements.
Tobin Ehlis [Thu, 8 Feb 2018 15:59:22 +0000 (08:59 -0700)]
layers:Adding intercepts for sparse binding
Intercept vkGetImageSparseMemoryRequirements() and
vkGetPhysicalDeviceSparseImageFormatProperties() functions and their
2KHR equivalents in core_validation in preparation for adding sparse
checks. Initially just pass-through intercepts.
Jeremy Kniager [Thu, 25 Jan 2018 18:41:20 +0000 (11:41 -0700)]
layers: fix unexpected errors in layer tests
Adjusted to not conflict with PR #2387
Change-Id: I7afc90577cb269070beda4f33bb04ab2a2c28f40
Tobin Ehlis [Tue, 13 Feb 2018 16:35:47 +0000 (09:35 -0700)]
layers:Fix spelling truely->truly
Lenny Komow [Tue, 13 Feb 2018 17:30:02 +0000 (10:30 -0700)]
loader: Fix loader skipping layer files
Fix a bug where having a json file in the layer path that isn't a
valid layer would cause the other valid layers to be skipped
Change-Id: I8346bd223358f271a48799d249d3b3a941dd31f8
Tobin Ehlis [Tue, 13 Feb 2018 14:41:17 +0000 (07:41 -0700)]
layers:Fix typo databate->database
Tobin Ehlis [Tue, 13 Feb 2018 14:36:54 +0000 (07:36 -0700)]
layers:Remove TODO comments
After discussion in Khronos, explicit VUIDs for these descriptor set
lifetime cases are not going to be added to the spec. There are no
similar VUs for related object lifetime cases so will continue using
the existing VUIDs for valid descriptor set handles which is a
reasonable compromise.
Slawomir Cygan [Thu, 25 Jan 2018 12:51:17 +0000 (13:51 +0100)]
loader: link with OneCore umbrella library
This change makes loader use OneCore umbrella[2] library, common
to all Windows 10 devices and required with for Universal
Windows drivers[1].
As this change may not be compatible with previous versions of
Windows, it's enabled via CMAKE option:
-DENABLE_WIN10_ONECORE=1
[2] https://msdn.microsoft.com/en-us/library/windows/desktop/mt654039(v=vs.85).aspx
[1] https://docs.microsoft.com/en-us/windows-hardware/drivers/develop/getting-started-with-universal-drivers
Change-Id: Ib677face131ab2edb3e8cd2f764fe4e0ca44cecc
Slawomir Cygan [Thu, 25 Jan 2018 12:48:54 +0000 (13:48 +0100)]
loader: use Unicode functions from cfgmgr32.lib
This change improves loader compatibility with Universal
Windows drivers[1]: do not use removed ANSI-based functions,
use Unicode equivalentsexposed in umbrella[2] library.
[1] https://docs.microsoft.com/en-us/windows-hardware/drivers/develop/getting-started-with-universal-drivers
[2] https://msdn.microsoft.com/en-us/library/windows/desktop/mt654039(v=vs.85).aspx
Change-Id: I8ead9c46815d15e1b2f2226eb30110c8efa4ec75
Slawomir Cygan [Wed, 24 Jan 2018 14:34:15 +0000 (15:34 +0100)]
loader: remove references to shlwapi.lib
This change improves loader compatibility with Universal
Windows drivers[1]: shlwapi.lib is not a part of allowed APIs.
It seems PathFileExists call was already redundant as
ERROR_MOD_NOT_FOUND was already returned by the loader in
cse of wrong dll path.
PathIsRelative is replaced by equivalent check.
[1] https://docs.microsoft.com/en-us/windows-hardware/drivers/develop/getting-started-with-universal-drivers
Change-Id: I36854f38078670ac033e8bd415dbf368391e8448
Lenny Komow [Thu, 8 Feb 2018 17:55:26 +0000 (10:55 -0700)]
winsdk: Update runtime installer copyright to 2018
Change-Id: If27613c85c754d4a54f5afa4dd3a6976695b227e
Mark Lobodzinski [Wed, 7 Feb 2018 23:33:33 +0000 (16:33 -0700)]
build: Add min supported compiler versions to BUILD.md
Change-Id: I694aaf18e3f4f1d458fa2a4f84f84c4553e93a0a
Mark Lobodzinski [Wed, 7 Feb 2018 17:00:22 +0000 (10:00 -0700)]
layers: Avoid warnings in vk_layer_logging.h
This file was often included in files where only a subset of the
functions were called, resulting in -Wunused_function warnings from
GCC. Made these functions inline to avoid the warnings.
Change-Id: Iaa3765ee51a290f0dd82d1a6a91116b6e1eec2c1
Petr Kraus [Tue, 6 Feb 2018 03:33:38 +0000 (04:33 +0100)]
demos: Let vulkaninfo accept empty DISPLAY variable
Cody Northrop [Tue, 6 Feb 2018 22:12:36 +0000 (15:12 -0700)]
android: Update to shaderc known-good revisions
Mark Lobodzinski [Tue, 6 Feb 2018 17:05:06 +0000 (10:05 -0700)]
external: Update glslang commit ID, fix LVT
Updated glslang revision to TOT, fixed layer validation test for
new spirv-validator message output.
Change-Id: I8c31d6cfc09cf73f4235b2159e3fe4e6ec289330
Karl Schultz [Tue, 6 Feb 2018 13:12:35 +0000 (06:12 -0700)]
build: Adjust travis config for VT updates
- VT update external script no longer accepts jsoncpp flag
so remove call to build it. The script now builds it all the time.
- Add back cmake flag to turn off LVL layers build. LVL should
now build the layer utils even with layer build disabled. VT
needs the layer utils to build devsim.
Change-Id: I1c5421d4b5553b3d39f68f075ee5850588696775
Dave Houlton [Fri, 2 Feb 2018 23:32:41 +0000 (16:32 -0700)]
clang-format whitespace (sigh)
Change-Id: I52d956163900465e434f68aa185618a2469f243f
Dave Houlton [Wed, 31 Jan 2018 20:01:42 +0000 (13:01 -0700)]
tests: Add test for new CreateImage VUs
Add ImageCreateInfoStructErrors positive test, provokes new
ImageCreateInfo struct VU errors.
Change-Id: Ia7b2b955ded6b4851d936758047eeb7462e630cc
Dave Houlton [Tue, 30 Jan 2018 22:03:43 +0000 (15:03 -0700)]
tests: Fix existing tests that hit new VUs
Fix existing tests that were inadvertently triggering the
newly added valid usage checks.
Change-Id: I0a6baa4df36c2316070e73f8959d55b4ca6a30f8
Dave Houlton [Mon, 29 Jan 2018 20:39:56 +0000 (13:39 -0700)]
layers: Add CreateImage valid usage checks
Adds 17 valid usage checks of ImageCreateInfo struct. 13 in core
validation, 4 in parameter validation.
Change-Id: I4bfe195f88d5e14237c1b01c5aca2de7c578aa67
Mark Lobodzinski [Fri, 2 Feb 2018 20:58:41 +0000 (13:58 -0700)]
build: Move layer_utils build to top-level cmake
DevSim requires this library, but it is only built in LVL if LAYERS
are built. Moved the generation of this library out of the layers
cmake file and into the root cmake file.
Change-Id: I1c633e981fa1843cfb49204d2ac130beb8d99dfc
Mark Lobodzinski [Fri, 2 Feb 2018 18:40:50 +0000 (11:40 -0700)]
icd: Remove dead code from CMakeLists.txt
Change-Id: I6b60b2e71568a3a88a3366b04ab7cf911fa05526