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
Mark Lobodzinski [Wed, 7 Dec 2016 21:05:10 +0000 (14:05 -0700)]
layers: Check in layer Windows def files
Change-Id: I128479d5f4d5f9c25dd8902f7f0c2d8275e14c7b
Mark Lobodzinski [Tue, 6 Dec 2016 20:45:13 +0000 (13:45 -0700)]
build: Update Android cmake w/new dispatch_table gen
Change-Id: Id505439bf599ac04d2590e84e30ca29da9359f56
Mark Lobodzinski [Tue, 6 Dec 2016 20:14:55 +0000 (13:14 -0700)]
layers: Rename xml-codegen cmake macro
It's not just for layers anymore.
Change-Id: I05d7ed918b58273ca9328885f419f37fa7352791
Mark Lobodzinski [Tue, 6 Dec 2016 20:04:44 +0000 (13:04 -0700)]
layers: Enable new dispatch_table_helper generation
Change-Id: I88defbb803818af3e7242d3c587a8b8decb42ffd
Mark Lobodzinski [Tue, 6 Dec 2016 18:30:50 +0000 (11:30 -0700)]
scripts: Add dispatch table generator to lvl_genvk.py
Change-Id: I539b8248ef8fb151de702c7d5e1773d149ce5313
Mark Lobodzinski [Tue, 6 Dec 2016 18:14:50 +0000 (11:14 -0700)]
scripts: Add generator for dispatch_table_helper
vk-generate.py generated the vk_dispatch_table_helper.h file
based on the vulkan.py file. Added dispatch_table_generator.py,
which is an vk.xml-based generator to automatically pick up
API changes.
Change-Id: I93adae00566823ce8fc653a68f4b1b4079a998fc
Tony Barbour [Thu, 8 Dec 2016 21:30:55 +0000 (14:30 -0700)]
demos: Fix compile warning in smoke
Change-Id: I60ee7f881cfd2bd78de21fa14146ef5667e20cc6
Mike Weiblen [Wed, 7 Dec 2016 00:10:22 +0000 (17:10 -0700)]
layers: Update Valid Usage enums in log_msg
Update Valid Usage enums in CmdExecuteCommands() and their
status in the VU database.
This partially implements Jira task VL-65
Change-Id: Ia31dbf78ed93418ced6597401d77f3fa6488935e
Tobin Ehlis [Thu, 8 Dec 2016 20:32:05 +0000 (13:32 -0700)]
layers:Add undefined validation error enum
Add VALIDATION_ERROR_UNDEFINED to UNIQUE_VALIDATION_ERROR_CODE enum
with a value of "-1". This had been custom-defined in
object_tracker.cpp so removing it from there.
Karl Schultz [Thu, 8 Dec 2016 18:41:14 +0000 (11:41 -0700)]
docs: Add travis build status to README
Tobin Ehlis [Mon, 5 Dec 2016 16:24:37 +0000 (09:24 -0700)]
scripts:Update unique error enums as of 12/5/16
Various valid usage updates and additions.
Cmd to do update was:
python spec.py -update -remap 168-2059:1378-1203:1383-1206:1385-1207:\
1380-1204:1447-1268:1449-1269:1505-1310:1507-1311:1510-1313:1512-1314:\
1542-1753:1544-1755:1547-1758:1549-1760
Mark Lobodzinski [Mon, 5 Dec 2016 22:33:59 +0000 (15:33 -0700)]
scripts: Remove unused cmake option from vk_helper.py
Change-Id: Iafaf5c45a53ae702ecad8a387b11710ad60358f3
Mark Lobodzinski [Mon, 5 Dec 2016 22:27:44 +0000 (15:27 -0700)]
scripts: Remove unused vk_helper.py struct_wrappers
Change-Id: I9dcc1df2d979f1c36a88bb2d6181636c543431a1
Mark Lobodzinski [Mon, 5 Dec 2016 22:10:19 +0000 (15:10 -0700)]
scripts: Remove graphviz options from vk_helper.py
Change-Id: I8b7ff75f334e8c2f2e07c04b6183abcd96e662df
Mark Lobodzinski [Mon, 5 Dec 2016 14:38:58 +0000 (07:38 -0700)]
scripts: Remove no_addr options from vk_helper.py
This option was not used in any repo.
Change-Id: I133a1aaf34bd3e1a842150fc06f795eef8d1e606
Tobin Ehlis [Wed, 7 Dec 2016 18:20:02 +0000 (11:20 -0700)]
layers:RetireWorkOnQueue refactor fixes
Some updates based on review feedback.
Fix VerifyQueueStateToSeq to still validate across semaphore pairs in
the same fashion that RetireWorkOnQueue did.
Use a deque iterator rather than local copy.
Update some formatting.
Tobin Ehlis [Tue, 6 Dec 2016 21:47:52 +0000 (14:47 -0700)]
layers:Add validation flags
Added validation flags to allow for disabling of validation for:
vkWaitForFences
vkGetFenceStatus
vkDeviceWaitIdle
vkQueueWaitIdle
Tobin Ehlis [Tue, 6 Dec 2016 20:20:09 +0000 (13:20 -0700)]
layers:Refactor QueueWaitIdle
Update QueueWaitIdle in core_validation to use Pre/Post pattern.
Tobin Ehlis [Tue, 6 Dec 2016 20:08:18 +0000 (13:08 -0700)]
layers:Refactor DeviceWaitIdle
Update DeviceWaitIdle in core_validation to use Pre/Post pattern.
Tobin Ehlis [Tue, 6 Dec 2016 19:53:43 +0000 (12:53 -0700)]
layers:Refactor RetireWorkOnQueue
RetireWorkOnQueue() had one check that could cause a validation error.
The check makes sure that an unsignalled event does not precede a query
pool reset in a cmd buffer being retired.
This change splits out the check so that it can be hoisted prior to
calls down the chain, and the actual retirement of work on a queue then
only needs to take place after a call down the chain succeeds.
This initial commit separates these operations for fence retirement
and a follow-on commit will separate remaining operations for queue
retirement.
Tobin Ehlis [Tue, 6 Dec 2016 15:26:05 +0000 (08:26 -0700)]
layers:Refactor GetFenceStatus in core_validation
Refactor GetFenceStatus to use Pre/Post pattern.
Tobin Ehlis [Tue, 6 Dec 2016 14:38:48 +0000 (07:38 -0700)]
layers:Refactor WaitForFences in core_validation
Refactor WaitForFences to use Pre/Post pattern. This function currently
has a Post effect that can cause a validation error. Planning to remove
this in a follow-on commit.
Cody Northrop [Wed, 7 Dec 2016 09:58:34 +0000 (01:58 -0800)]
smoke: Don't load validation layers by default
This was an inadvertent change from
3f3748ad
Cody Northrop [Tue, 6 Dec 2016 18:24:47 +0000 (11:24 -0700)]
docs: Update Smoke command to invoke layers on Android
Cody Northrop [Fri, 2 Dec 2016 18:25:54 +0000 (11:25 -0700)]
smoke: Port arg parsing from Hologram
Cody Northrop [Fri, 2 Dec 2016 18:25:30 +0000 (11:25 -0700)]
smoke: Allow Android to specify layers other than standard_validation
Cody Northrop [Fri, 2 Dec 2016 18:23:28 +0000 (11:23 -0700)]
smoke: Add layers to Android APK
Peter Mackay [Fri, 21 Oct 2016 14:54:03 +0000 (15:54 +0100)]
build: Add Travis CI file
This initial revision only supports builds for Linux.
Pull Request #1082
Change-Id: I0200eb7ae33ff23af2014624ee399bfe1929aaa8
Jeremy Hayes [Fri, 2 Dec 2016 21:47:37 +0000 (14:47 -0700)]
layers: remove dead code
Change-Id: I152ce109cada7bee85678217f39819ffe51580b9
Mark Young [Fri, 2 Dec 2016 22:02:52 +0000 (15:02 -0700)]
loader: Modify debug_marker terminators
Modify the 2 debug marker terminators we use so that they don't call
into the ICD unless the ICD commands exist.
Change-Id: I72a96475f21d0fca572f3c5e6f5676782a8a4bf3
Mark Lobodzinski [Fri, 2 Dec 2016 22:33:18 +0000 (15:33 -0700)]
layers: Fix Windows build
STL min/max functions were causing windows build failures.
Change-Id: Ia153a5d6a3d245b645b5f829c3f076c023d865f1
Tobin Ehlis [Wed, 30 Nov 2016 17:19:14 +0000 (10:19 -0700)]
layers:Handle consecutive descriptor updates
Fixes #1165
According to spec descriptor updates should roll over to the next
binding number. If bindings were out of order, this was broken in
validation.
This fix corrects validation and state update for out-of-order
descriptor bindings by checking consecutive updates based on correct
binding count for consecutive bindings and by performing updates
on a per-binding basis, making sure to roll update over to the
correct next binding.
Also update the error message, related negative test, and database
file.
Tobin Ehlis [Thu, 1 Dec 2016 16:37:56 +0000 (09:37 -0700)]
layers:Handle NULL DebugMarker function ptrs
Fixes #1074
Object_tracker and parameter_checker intercept DebugMarker extension
functions which may not be supported by underlying device and
therefore could terminate with a NULL function call.
Updating these layers to handle this case by making sure that their
downstream function ptr is not null before calling down the chain.
If the downstream function ptr is null, considering that VK_SUCCESS
in the layers for functions with VkResult return code.
Tobin Ehlis [Thu, 1 Dec 2016 20:16:17 +0000 (13:16 -0700)]
layers:Kill print cmd buffer functions
Killing the printCB* functions that would dump details of command
buffers for a number of functions.
Tobin Ehlis [Thu, 1 Dec 2016 20:11:39 +0000 (13:11 -0700)]
layers:Kill print_mem_list function
Killing the print_mem_list function that would dump details of memory
allocations for a number of functions.
This function is a vestige of the original validation layers when
more debug info was useful. Now there are alternate tools and layers
that can produce this type of info so it's extraneous in the validation
layers.
Cody Northrop [Fri, 2 Dec 2016 16:28:42 +0000 (09:28 -0700)]
toolchain: Fix core count in script for macOS
This could also switch to using gnproc from brew if needed in the future.
Cody Northrop [Fri, 2 Dec 2016 16:10:20 +0000 (09:10 -0700)]
toolchain: Fix update script for macOS
readlink -f is not supported on macOS
brew is already a requirement to build for macOS
Karl Schultz [Fri, 2 Dec 2016 17:19:29 +0000 (10:19 -0700)]
tests: Update layer doc to reflect recent added checks
Mark Young [Fri, 2 Dec 2016 16:29:43 +0000 (09:29 -0700)]
externals: Update glslang and spirv-tools
Update glslang and spirv-tools repo commit IDs to the latest version.
spirv-headers was still at the latest, and therefore, didn't need to
be updated.
Change-Id: I9165868cc43d077e2936ed53fdd7dd0171844453
Mark Lobodzinski [Thu, 1 Dec 2016 21:51:56 +0000 (14:51 -0700)]
build: Removed obsolete ICD refs from android script
Change-Id: I38ddea801f3efb887eac9da469428d3476f7adc3
Mark Lobodzinski [Thu, 1 Dec 2016 21:50:29 +0000 (14:50 -0700)]
build: Removed ICD dirs from gitignore
Change-Id: I4e15f423964d101b1c0518bda9305f84b9ed35f9
Mark Lobodzinski [Thu, 1 Dec 2016 21:49:27 +0000 (14:49 -0700)]
build: Updated BUILD.md for ICD removal/whitespace
Change-Id: Iebd6eeadeb31c0947314c388043a21d11a900b26