Courtney Goeltzenleuchter [Wed, 21 Dec 2016 23:24:34 +0000 (16:24 -0700)]
loader: Fix validation error
The string length validation will not detect strings
that exceed the max length.
For example, when i = max_length-1 and utf8[i] is a valid
character (>= 0x20 and < 0x7f) no error is thrown and
the next iteration will end the loop.
This change extends the loop and the if check to
catch this issue.
Jamie Madill [Wed, 21 Dec 2016 18:09:59 +0000 (13:09 -0500)]
loader: Fix Clang warning in table_ops.h
This fixes the following warning:
error: cast between incompatible calling conventions 'cdecl' and 'stdcall'; calls through this pointer may abort at runtime
This was revelated by building the loader with Clang on Windows in
32-bits mode. In 64-bits this warning doesn't appear, presumably due
to different calling conventions.
Change-Id: I7018be38859695436487f582f515bfb08ca28e06
Michael Jurka [Mon, 19 Dec 2016 15:31:43 +0000 (16:31 +0100)]
layers: Add missing <string> dependency
Change-Id: Ib3c74be1e1d3c168720aaef4dafed1a6a04c7d9b
Jeremy Hayes [Tue, 20 Dec 2016 22:20:25 +0000 (15:20 -0700)]
cmake: speed up the build
Remove old dependencies from cmake, which was causing long build times
even when nothing had changed.
Change-Id: Ie162606b54352306ae6400aa18e942d8cffb7782
Mike Weiblen [Tue, 20 Dec 2016 03:41:58 +0000 (20:41 -0700)]
layers: Update Valid Usage enums (VL-61, partial)
Update Valid Usage enums in a subsection of core_validation.cpp by
adding a parameter to helper functions insideRenderPass() and
outsideRenderPass(). Update that VU status in the database.
Fix a couple other typos.
This partially implements Jira task VL-61.
Change-Id: I8d1fe99a237c4cd22216a1236f47f72fffd4fd00
Mark Lobodzinski [Thu, 15 Dec 2016 21:14:28 +0000 (14:14 -0700)]
scripts: Remove enum/struct_validate_helper funcs
From vk_helper.py. These were not used in the codebase.
Change-Id: I3cc80e34eb831122ce8c54dbc004a003e02a47fe
Mark Lobodzinski [Thu, 15 Dec 2016 20:54:20 +0000 (13:54 -0700)]
layers: Remove unused header from threading/PV
vk_struct_validate_helper.h not used.
Change-Id: I19757e96900e0500f4db9355c38a497936706bba
Mark Lobodzinski [Thu, 15 Dec 2016 20:15:12 +0000 (13:15 -0700)]
layers: Remove redundant CreateRenderpass checks
From the image layer. The check for valid attachment layouts
and load/storeOps already performed in the parameter validation
layer. Also removed now-dead support function and unneeded
header file.
Change-Id: I4f1ad1ba899a712ba21ae32e3b3e2d947b640f4d
Mark Lobodzinski [Thu, 15 Dec 2016 20:06:55 +0000 (13:06 -0700)]
layers: Remove enum_validate_helper from PV
A single call was used, replaced with an internal generated function
call and removed the old include. Added note with validation error
ID.
Change-Id: Ied88daf5bab003269c44ef2bef8b2eb81a9e9094
Mark Lobodzinski [Wed, 14 Dec 2016 21:34:06 +0000 (14:34 -0700)]
layers: Remove unused threadchecker header file
Change-Id: I7906b82c1c9c0397113508da74348ea28fe21add
Chris Forbes [Mon, 19 Dec 2016 22:33:11 +0000 (11:33 +1300)]
layers: Remove cmds vector from GLOBAL_CB_NODE
Now that cmd buffer printing has been removed, the only use of this is
to distinguish between cmd buffers invalidated before and after a
complete recording. This should eventually be folded into the state
machine, but removing the vector of cmds is a first step.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Jamie Madill [Mon, 19 Dec 2016 20:59:18 +0000 (15:59 -0500)]
layers: Fix size_t-int cast warning in descriptor_sets
Discovered in VS2015.
Change-Id: I2a42209a9ee9bd0e8f3da21c0f1a613315d5a6ce
Tobin Ehlis [Mon, 19 Dec 2016 18:16:14 +0000 (11:16 -0700)]
layers:Clean up descriptor set layout on destroy
Erase destroyed descriptorSetLayout from map.
Tobin Ehlis [Mon, 19 Dec 2016 17:57:29 +0000 (10:57 -0700)]
layers:Add validation flag for DestroyBuffer()
Tobin Ehlis [Mon, 19 Dec 2016 17:53:58 +0000 (10:53 -0700)]
layers:Refactor DestroyBuffer()
Update DestroyBuffer() to use Pre/Post pattern. All of the state
updates are now only performed if call down chain is not skipped.
Tobin Ehlis [Mon, 19 Dec 2016 17:20:43 +0000 (10:20 -0700)]
layers:Add GetQueryPoolResults() validation flag
Tobin Ehlis [Mon, 19 Dec 2016 17:11:50 +0000 (10:11 -0700)]
layers:Refactor GetQueryPoolResults() to pre/post
Refactor GetQueryPoolResults() to use Pre/Post pattern. Pulled all of
the validation into PreCallValidate* function. There was only one
state update occuring so pulled that code into PostCallRecord function.
Tobin Ehlis [Fri, 16 Dec 2016 22:02:44 +0000 (15:02 -0700)]
layers:Add validation flag for DestroyQueryPool()
Tobin Ehlis [Fri, 16 Dec 2016 21:56:41 +0000 (14:56 -0700)]
layers:Refactor DestroyQueryPool
Refactor DestroyQueryPool() to use Pre/Post pattern. This moves the map
update to after the call down the chain which is where it should live
so that it only executes when validation passes.
Tobin Ehlis [Thu, 15 Dec 2016 21:36:56 +0000 (14:36 -0700)]
layers:Add validation flag for DestroySemaphore()
Tobin Ehlis [Thu, 15 Dec 2016 21:35:21 +0000 (14:35 -0700)]
layers:Add validation flag for DestroyFence()
Tobin Ehlis [Thu, 15 Dec 2016 21:32:22 +0000 (14:32 -0700)]
layers:Refactor DestroySemaphore
Refactor DestroySemaphore() to use Pre/Post pattern.
Tobin Ehlis [Thu, 15 Dec 2016 21:18:39 +0000 (14:18 -0700)]
layers:Refactor DestroyFence
Refactor DestroyFence() to use Pre/Post pattern.
Tobin Ehlis [Thu, 15 Dec 2016 18:37:02 +0000 (11:37 -0700)]
layers:Rename QUEUE_NODE to QUEUE_STATE
Tobin Ehlis [Thu, 15 Dec 2016 18:34:33 +0000 (11:34 -0700)]
layers:Refactor GetDeviceQueue
Move the state update for GetDeviceQueue into Post* function.
Jamie Madill [Tue, 13 Dec 2016 22:02:57 +0000 (17:02 -0500)]
layers: Make generators Python 2.7-compatible.
ANGLE and Chromium are fixed with Python 2.7, so we need to update
the generator to something that is compatible with 2.7 and 3.2.
The unicode handling is different between the two, so switch
scripts to use unicode literals (u'txt' instead of 'txt').
Change-Id: I1570a45e302a09bb1f99eabc84f50b2ec599944d
Mark Lobodzinski [Sun, 18 Dec 2016 16:42:23 +0000 (09:42 -0700)]
layers: Update VU database for scissor/vp checks
Updated status for 1430-1434444.
Change-Id: Ie31ff617dd30b1ef3850398ef100e874c3c1acb4
Mark Lobodzinski [Sun, 18 Dec 2016 16:43:01 +0000 (09:43 -0700)]
layers: Add scissor/viewport count checks
Change-Id: I35977325f662d3e4df84d02d2eefa4383fae9c05
Mark Lobodzinski [Thu, 15 Dec 2016 22:49:59 +0000 (15:49 -0700)]
layers: GH1261, Incorrect ParamValidation error msgs
Out-of-date dynamic state errors incorrectly specified that viewport
or scissor counts had to be greater than zero 'if the dynamic state
bit was not specified'. Removed this confusing condition.
Change-Id: Idf206e8671b04979b7a0f5e9597e4a7aec50333f
Tobin Ehlis [Mon, 19 Dec 2016 13:47:53 +0000 (06:47 -0700)]
scripts:Update unique error enums as of 12/19/16
Six updates and some new valid usages.
Cmd to do the update was:
python spec.py -update -remap 127-132:128-141:1465-1263:2168-1646,2:2373-1965
Mark Lobodzinski [Mon, 19 Dec 2016 16:41:16 +0000 (09:41 -0700)]
header: Update to Vulkan version 1.0.38
- header: Updated vulkan.h
- scripts: Updated generator.py
- scripts: Updated vk.xml
- scripts: Merged recent genvk.py changes into lvl_genvk.py
- layers: Updated json files
- loader: Updated SOVERSION to 38
- header: Updated vulkan.hpp
Change-Id: Id0f83c248169bd8b1e03a14c90a5f9b1661cfcc7
Mark Lobodzinski [Fri, 16 Dec 2016 20:20:57 +0000 (13:20 -0700)]
layers: Update error enum database
Signified coverage, LVTs for a handful of checks.
Change-Id: I0e0ac413f9b76793b325b96ef030ce4b90656315
Mark Lobodzinski [Fri, 16 Dec 2016 20:06:41 +0000 (13:06 -0700)]
layers: Remove redundant CV checks
These CreateGraphicsPipeline checks are covered in
parameter_validation.
Change-Id: I4c273aa2cd88791d2f6cfa7a5b6c48e629706a85
Mark Lobodzinski [Fri, 16 Dec 2016 20:08:00 +0000 (13:08 -0700)]
layers: Move new check into parameter validation
Added an old CreateGraphicsPipelines CV check into PV.
Change-Id: I68310859e4ffc926502549b46a2fcc82af0e3538
Tobin Ehlis [Thu, 15 Dec 2016 14:51:20 +0000 (07:51 -0700)]
layers:Refactor consecutive descriptor count
Refactor GetConsecutiveDescriptorCountFromBinding() to use the fact
that bindings are now stored in-order. No longer need to chase binding
order through the map, just get current binding index and then parse
rest of the binding array in-order.
Tobin Ehlis [Mon, 12 Dec 2016 22:59:34 +0000 (15:59 -0700)]
layers:Store DescriptorSetLayout class in-order
Sort the bindings in the internal data structure of the
DescriptorSetLayout class so that they're stored in binding order.
This commit keeps the interface and mapping structures the same.
Further commits will take more use of the fact that layout is now
stored in binding order.
Tony Barbour [Thu, 15 Dec 2016 19:12:29 +0000 (12:12 -0700)]
layers: Remove check for nonCoherentAtomSize
It's come to our attention that this check, while matching the spec,
may be a little overzealous and could cause a lot of existing code
to start failing validation. We plan to address this with the spec
working group, and we're removing the check for now.
Change-Id: I7159b72fe0a2e81bf75bccddc9939da7086992b7
Jamie Madill [Wed, 14 Dec 2016 22:21:43 +0000 (17:21 -0500)]
loader: Fix Clang warnings.
error: equality comparison with extraneous parentheses
error: comparison of array equal to a null pointer is always false
error: using namespace directive in global context in header
Change-Id: I52b5d9062653b9429b9c42b40eca54e71b6d794b
Mike Weiblen [Sat, 10 Dec 2016 00:36:28 +0000 (17:36 -0700)]
layers: Update Valid Usage enums (VL-70)
Reviewed the following 5 files' invocation of log_msg()
for opportunities to update for Valid Usage enums.
layers/threading.h
layers/vk_layer_logging.h
layers/descriptor_sets.cpp
layers/swapchain.cpp
layers/unique_objects.cpp
Split some composite checks apart, to better match the meaning of
individual VUs.
Added VU enums to a new file, and expanded the stats collection
script to include the new file.
Changed some placeholder uses of msgCode=="0" to
"VALIDATION_ERROR_UNDEFINED".
(0 is the value of the enum VALIDATION_ERROR_00000 which was misleading)
When Valid Usage enums were referenced, also updated the VU database.
Tweak #include order for Windows, to undo clang-format reordering.
Completes Jira task VL-70.
Change-Id: I550922b194e733f41316ae493098f70a54cbd64e
Jamie Madill [Thu, 15 Dec 2016 14:35:36 +0000 (09:35 -0500)]
layers: PR1276, Fix Clang compiler warnings
fixes
- error: using namespace directive in global context in header
- error: comparison of integers of different signs: 'uint32_t'
(aka 'unsigned int') and 'int'
Change-Id: If56d5b9c33f0de813fbb67120650a887eb9368b0
Mark Lobodzinski [Thu, 15 Dec 2016 14:42:57 +0000 (07:42 -0700)]
layers: Updated val error database with new checks
Updated status, applicable tests for errors 00669 and 02160.
Change-Id: Ia52d31f00820882fe2837928b6ab1702c57f26f5
Mark Lobodzinski [Wed, 14 Dec 2016 20:37:04 +0000 (13:37 -0700)]
layers: Updated error enums for sparse_binding checks
Change-Id: Ib76fcb782a54edf6e53d17fed0bcb25eecca22d9
Maciej Jesionowski [Wed, 14 Dec 2016 10:01:21 +0000 (11:01 +0100)]
layers: GH1260, SPARSE_BINDING_BIT validation
- add error message for size (error 00663)
- add error messages for buffer and image flags (error 00669 and 02160)
- remove obsolete TODOs
- fix a typo in vkCreateImage validation, add error code
Change-Id: I50d6111c4aed1b348119a9664ec299f7c2cb7884
Mike Schuchardt [Tue, 13 Dec 2016 21:04:57 +0000 (14:04 -0700)]
layers: Fix object tracker memory leak
Upon repeated calls, GetDisplayPlaneSupportedDisplaysKHR will call
CreateObject multiple times with the same VkDisplayKHR handle. Add a
check in CreateObject for an existing tracking object before allocating
a new one.
Change-Id: I50f634fbe8b7e69edbfeb4e6f0c050b7fccaa6e4
Jamie Madill [Wed, 14 Dec 2016 18:05:05 +0000 (13:05 -0500)]
scripts: Add quiet option option to vk_helper.py.
Chromium typically does not allow build steps to output anything
during a build. This option allows for ANGLE to suppress normal
script output during execution.
Change-Id: I72695a80a5f25e9a2cf3f01832f3de63ca95b091
Chris Forbes [Thu, 8 Dec 2016 22:00:21 +0000 (11:00 +1300)]
layers: Complain in AcquireNextImageKHR if the swapchain is replaced
V2: Tweak error language for Ian
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Thu, 8 Dec 2016 21:39:26 +0000 (10:39 +1300)]
layers: Track whether a swapchain has been replaced
If a swapchain is used as VkSwapchainCreateInfoKHR::oldSwapchain, then
it is replaced. This occurs even if the new swapchain creation fails.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Mark Young [Wed, 14 Dec 2016 00:19:32 +0000 (17:19 -0700)]
loader: Removed some unnecessary code.
Now that all WSI paths need the ICD structs, I can get rid of
a code path no longer used.
Change-Id: Ib5073cd2074fcd66453dae5b6c89870c81f7f958
Piers Daniell [Tue, 13 Dec 2016 23:51:49 +0000 (16:51 -0700)]
Allocate for real ICD surfaces for the VK_KHR_display extension
This was done for all the other WSI extensions, just not VK_KHR_display
Tobin Ehlis [Tue, 13 Dec 2016 19:39:44 +0000 (12:39 -0700)]
layers:Fix uninitialized variable
Zero-init the map_range variable before checking for aliasing of a
mapped memory region.
Tobin Ehlis [Tue, 13 Dec 2016 19:26:44 +0000 (12:26 -0700)]
layers:Fix typo
aliase->aliased
Tobin Ehlis [Tue, 13 Dec 2016 19:16:58 +0000 (12:16 -0700)]
layers:Warn on buffer/image aliasing
The Buffer-Image Granularity section of the spec details what must be
done to avoid having a linear buffer alias with a tiled image, but it
does not state that such aliasing is a definite error.
Demoting this check to a warning.
Mike Weiblen [Tue, 6 Dec 2016 17:28:00 +0000 (10:28 -0700)]
layers: Update Valid Usage enums in log_msg
Update Valid Usage enums in core_validation and update
their status in the VU database.
This completes Jira task VL-65.
Change-Id: I51ed327ad65f3a5d1f64bba01ad576c6656f88df
Mark Lobodzinski [Tue, 13 Dec 2016 17:54:48 +0000 (10:54 -0700)]
build: Disable clang-format header reordering
By default, clang-format will sort header files which often breaks
compilation. Added an option to the main, tests, and layers versions
of these files to disable header reordering.
Change-Id: Ic0cc5727b83d14d5f3962f3ecff7b6bf5e4c5fb9
Mark Lobodzinski [Mon, 12 Dec 2016 15:33:13 +0000 (08:33 -0700)]
layers: Add some val/state-update todos
Couple of routines combine state updates and validation, adding a
note for future work.
Change-Id: I417025bbcabfd3e80ccefe166bc6ea3497222753
Mark Lobodzinski [Tue, 13 Dec 2016 15:47:35 +0000 (08:47 -0700)]
layers: Update error database for new checks
Added 2510 and 2518.
Change-Id: I278bfe12d78c5239aa00f82ac4a1b35b5dcd58d0
Mark Lobodzinski [Mon, 12 Dec 2016 15:27:42 +0000 (08:27 -0700)]
layers: Update WaitEvents/PipelineBarrier for style
Variable names, clang-format.
Change-Id: I576bfd7944902bdf611b8a455eff83e43f56725b
Mark Lobodzinski [Sat, 10 Dec 2016 17:53:34 +0000 (10:53 -0700)]
layers: GH1233, Validate stagemask/queue compatibility
Any pipeline stage included in srcStageMask or dstStageMask must be
supported by the capabilities of the queue family specified by the
queueFamilyIndex member of the VkCommandPoolCreateInfo structure
that was used to create the VkCommandPool that commandBuffer was
allocated from, as specified in the table of supported pipeline
stages.
Change-Id: I02117e7f60910f2154765b90340d8127d6bce0cd
Mark Lobodzinski [Mon, 12 Dec 2016 21:53:27 +0000 (14:53 -0700)]
layers: Update err database w/new DisplayKHR checks
Change-Id: I844e06439b295a36873ccb07819a38c414fd5098
Mark Lobodzinski [Mon, 14 Nov 2016 17:32:41 +0000 (10:32 -0700)]
layers: Fill out OT validation for vk_display_KHR
Change-Id: I633fae1ba3bc076022eea6c4e599f617d0296534
Mark Lobodzinski [Mon, 14 Nov 2016 17:00:41 +0000 (10:00 -0700)]
layers: GH897, Add VK_KHR_display stubs to OT
Added extension enable and function stubs for VK_KHR_display
extension functions to object_tracker.
Change-Id: Iaee862efaadf4657271b74d75a289dbaf13af26c
Mark Young [Mon, 12 Dec 2016 23:14:55 +0000 (16:14 -0700)]
loader: Add support for 1.0.35 extension
Add support for the NVX_device_generated_commands. This was
necessary since it exposes one instance command (which takes
a VkPhysicalDevice).
Change-Id: I1da4c24ca0d385a6485581f55a1b19aa7ea51d24
Karl Schultz [Mon, 12 Dec 2016 23:43:44 +0000 (16:43 -0700)]
demos: Fix smoketest --c 20 hang on Linux
Fixes #1249.
When frame count is reached in ::on_frame(), inform the caller
that it is time to quit by calling Game::quit(), but go ahead
and finish submitting this frame, because the caller is waiting
on the fence.
Change-Id: If3d918f8a8b5bf3697e9569d045dbe7c8aec98e5
Cody Northrop [Mon, 12 Dec 2016 21:36:12 +0000 (14:36 -0700)]
android: Update windows script to request python3
Mark Lobodzinski [Mon, 12 Dec 2016 16:44:34 +0000 (09:44 -0700)]
header: Update to Vulkan version 1.0.37
- header: Updated vulkan.h
- scripts: Updated generator.py
- scripts: Updated vk.xml
- scripts: Merged recent genvk.py changes into lvl_genvk.py
- layers: Updated json files
- loader: Updated SOVERSION to 37
- header: Rebuilt and updated vulkan.hpp
- layers: Updated thread_checker for new functions
- scripts: Fix up vk_helper.py overzealous count detection
Change-Id: Ia10f5fc759166a09999f01e68bbcadb30ddf67f7
Mark Lobodzinski [Mon, 12 Dec 2016 19:05:44 +0000 (12:05 -0700)]
build: Update generate scripts to use python3
Upcoming header scripts require python3 -- updated
Windows and Linux android-generate scripts.
Change-Id: Iba3b44d0999b5c28b9fc83800a4d54d46cbc2a4c
Mark Lobodzinski [Mon, 5 Dec 2016 20:27:29 +0000 (13:27 -0700)]
scripts: Prevent bad dynamic array in vk_helper.py
An extension added some variables which defeat the mechanisms
used by the header-parsing scripts to identify dynamic arrays.
Change-Id: Idcf84f882b13bf5cc3be8b6bb48751db6922e01e
Mark Lobodzinski [Mon, 5 Dec 2016 14:38:41 +0000 (07:38 -0700)]
layers: Fix param_val codegen for arrays of structs
New extensions exposed a hole where arrays of structs were not
getting deferenced correctly.
Change-Id: Ia2474babee10f25c1446dfe58b5bd9778d3c9abc
Karl Schultz [Fri, 9 Dec 2016 23:34:16 +0000 (16:34 -0700)]
layers: Use resolved range to avoid long loops
Fixes #1251.
Use the resolvedRange instead of the raw range, which
could include VK_REMAINING_MIP_LEVELS and/or
VK_REMAINING_ARRAY_LAYERS, which are really big numbers.
This fixes a near-infinite loop issue when running the
input_attachment sample with validation.
Change-Id: I250118db74a6faaecd2b3cd4cb43f44c07ae436d
Tobin Ehlis [Mon, 12 Dec 2016 14:46:49 +0000 (07:46 -0700)]
scripts:Update unique error enums as of 12/12/16
One valid usage updated and a bunch of new valid usages.
Cmd to do the update was:
python spec.py -update -remap 2110-2499
Tobin Ehlis [Sat, 10 Dec 2016 00:11:13 +0000 (17:11 -0700)]
scripts:Update stats script for two error enums
Stats script wasn't handling the case where two unique error ids
appeared on the same line. This fixes that.
Tobin Ehlis [Fri, 9 Dec 2016 21:10:47 +0000 (14:10 -0700)]
scripts:Update stats script parser
Some tweaks to stats script validation error parsing to correctly
grab all the errors and ignore that noise.
Tobin Ehlis [Fri, 9 Dec 2016 21:05:59 +0000 (14:05 -0700)]
scripts:Update database for new checks
Checks were implemented for correct layouts in vkCmdClear*Image() funcs
in a previous commit. Updating the database file to reflect this fact
and also the testnames for these checks.
Mark Lobodzinski [Thu, 1 Dec 2016 22:11:53 +0000 (15:11 -0700)]
layers: Remove validation layer details doc
This information is covered in the VU database, source code, or other
layer documentation.
Change-Id: I99170e1ed699b372d00f4b8dcf9ef0fd40ec2ecf
Mark Lobodzinski [Thu, 1 Dec 2016 22:07:10 +0000 (15:07 -0700)]
scripts: Remove layer doc gen script
Change-Id: I4529546fadee343271db9ac2fa899bc9ee09dbf2
Tobin Ehlis [Mon, 5 Dec 2016 21:57:44 +0000 (14:57 -0700)]
scripts:Ignore VALIDATION_ERROR_UNDEFINED
VALIDATION_ERROR_UNDEFINED is a special case that shouldn't be recorded
as an actual check in the source.
Tobin Ehlis [Mon, 5 Dec 2016 21:50:03 +0000 (14:50 -0700)]
scripts:Update stats script to return 1 on error
This script will be integrated into the run_all_tests flow to replace
the old document validation. This update causes it to return 1 in
certain error conditions. It will initially flag errors when:
1. The number of checks declared in the header don't match the database
2. A check that's implemented in the database isn't found in source
3. A testname in database can't be found in the test source
Tobin Ehlis [Fri, 9 Dec 2016 19:15:26 +0000 (12:15 -0700)]
scripts:Make stats script work with python3
Just needed parens around the single print so that the
vk_validation_stats.py script will run with python3.
Mike Schuchardt [Wed, 7 Dec 2016 01:03:56 +0000 (18:03 -0700)]
layers: Add error enums to Destroy APIs
Add error enum parameters to DestroyObject helper function for use when
performing checks on the pAllocator parameter of vkDestroy* APIs. Add
error enum parameter to DeviceReportUndestroyedObjects helper function
for use when checking for undestroyed child objects.
Change-Id: I4e0960b8b14ecc30f67a1eea112aa80de9f4ca86
Mike Schuchardt [Tue, 6 Dec 2016 17:56:01 +0000 (10:56 -0700)]
layers: Add error enums to object tracker
Add the following validation error enums to object tracker helper
functions:
VALIDATION_ERROR_00097
VALIDATION_ERROR_00102
VALIDATION_ERROR_00920
VALIDATION_ERROR_00927
VALIDATION_ERROR_01651
Change-Id: Ic21fbaf14f29aef53b2b24d0aa4a8577d3a11927
Tony Barbour [Fri, 9 Dec 2016 20:14:58 +0000 (13:14 -0700)]
demos: Make DEMOS_WSI_SELECTION a variable, not an option
Change-Id: I8e10ce8df3d569c13f0adf6c09e5bd431279bc2d
Mark Young [Fri, 9 Dec 2016 18:55:35 +0000 (11:55 -0700)]
externals: Update glslang and spirv revs
Update Glslang, Spirv-Tools, and Spirv-Headers revisions to
the latest.
Change-Id: I288e117b3180689f2fd5455ec4f721962c39602c
Mark Lobodzinski [Fri, 9 Dec 2016 18:20:23 +0000 (11:20 -0700)]
layers: GH1244, Fix Compressed BufferImageCopy errs
CmdCopyBufferToImage and CmdCopyImageToBuffer were validating
compressed image attributes against the valid usage conditions
for uncompressed images. Added check for compressed images and
skipped this validation, and TODO for future compressed VU addition.
Change-Id: I09a7dc98cb0f925c7486ef9f2d6de31411c7ea1c
Karl Schultz [Fri, 9 Dec 2016 18:59:23 +0000 (11:59 -0700)]
build: Add Wayland and Mir dev libs to travis
Change-Id: I60b6b19417b0b68719b027ef36f6f3b9b3deef08
Tony Barbour [Fri, 9 Dec 2016 18:27:26 +0000 (11:27 -0700)]
demos: Add very limited Wayland support to vulkaninfo
Also allow only one WSI selection at a time
Change-Id: Ie7ca4f98c71a5097b7e07a4b5e2762b59606317c
Tony Barbour [Wed, 7 Dec 2016 23:13:35 +0000 (16:13 -0700)]
Cmake: Move all find_packages to base CMakeLists.txt
Change-Id: Id27307788c7c230e75d620f1bf5470b1450289f2
Tony Barbour [Wed, 7 Dec 2016 21:45:12 +0000 (14:45 -0700)]
Demos: Add Mir warnings and placeholders
Change-Id: I7e7ca30bd1452a216213c02a7aa29ce8829b2974
Tony Barbour [Wed, 7 Dec 2016 20:43:36 +0000 (13:43 -0700)]
Demos: Remove simultaneuos xlib and xcb support from cube*
Change-Id: I2f28dc3e21fc10ae96dde2dbfc7f3025efd9c2f0
Tony Barbour [Wed, 7 Dec 2016 19:12:45 +0000 (12:12 -0700)]
Demos: Add DEMOS_WSI_SELECTION to pick Linux wsi to use
Change-Id: Ic1fcc6cf888d94b84a43661aa33815948d85b701
Tony Barbour [Wed, 7 Dec 2016 17:19:21 +0000 (10:19 -0700)]
Cmake: Add files needed to build with Mir
Change-Id: I640e45db5d586a379674fb209e38075ba7f0cf29
Tony Barbour [Wed, 7 Dec 2016 18:18:19 +0000 (11:18 -0700)]
Cmake: Move WSI compile decision to subdirectories
Change-Id: I61ac8910200a1751a23aa92fe0e7d955ee9e03e5
Mark Lobodzinski [Fri, 9 Dec 2016 17:08:09 +0000 (10:08 -0700)]
layers: Update details doc for new LVT
Added RenderPassClearOpTooManyValues and new error enum.
Change-Id: I598e7adf3897996efcf2f9c3023521e710b06cc6
Slawomir Cygan [Mon, 28 Nov 2016 16:53:23 +0000 (17:53 +0100)]
layers: Warn if RenderPass clearvalues ignored
PR 1203:
Vulkan spec does permit clearValueCount to be greater than number of
values used by clear ops. However we have seen apps that pass garbage
as clearValueCount - the best we can do in this situation is to emit
a warning.
Change-Id: If52c02759410500e96976d91fd42a9b2a7e2df41
Cort [Thu, 8 Dec 2016 17:59:43 +0000 (09:59 -0800)]
Core validation: VerifyClearImageLayout review feedback
- follow variable name/case conventions
- Prepend calling function to error messages
- Simplify caller identification
Cort [Tue, 6 Dec 2016 01:33:49 +0000 (17:33 -0800)]
Core validation: VerifyClearImageLayout tweaks:
- Move test for invalid layouts before test for valid-but-non-matching layout
- Use unique error codes
- Pass caller function name to differentiate between color and depth/stencil clears
Slawomir Cygan [Mon, 28 Nov 2016 18:17:38 +0000 (19:17 +0100)]
Core validation: add an errror message when wrong layout is used for clearing
Mark Lobodzinski [Fri, 9 Dec 2016 15:04:51 +0000 (08:04 -0700)]
scripts: Remove vk-generate.py
No longer used for def-file or dispatch-table-helper generation.
Change-Id: I3864441e900ecb3ebc2e9fdf5cb4dfc785b2ad83
Mark Lobodzinski [Thu, 8 Dec 2016 15:52:56 +0000 (08:52 -0700)]
loader: Add CMake copy of def file to build dir
Change-Id: I377ef3e58b49c345fcc5ac8d10bdee7e4c059bed
Mark Lobodzinski [Thu, 8 Dec 2016 15:40:02 +0000 (08:40 -0700)]
layers: Change cmake to Copy def files to build dir
Change-Id: Ic963c7fc1383dd5a39844e366a9d3bb1ce1f8c93
Mark Lobodzinski [Wed, 7 Dec 2016 21:06:44 +0000 (14:06 -0700)]
loader: Check in loader Windows def file
Change-Id: I184ce5efa8cd27cbbf93babf52d4a6b9b4266a24