platform/upstream/Vulkan-LoaderAndValidationLayers.git
7 years agolayers: Wire up ranged-enum PV VUIDs
Mark Lobodzinski [Wed, 28 Jun 2017 17:47:22 +0000 (11:47 -0600)]
layers: Wire up ranged-enum PV VUIDs

Change-Id: I334357b239a6f2ad28fad226306897606814095a

7 years agolayers: Wire in VUIDS for count/array implicit checks
Mark Lobodzinski [Wed, 28 Jun 2017 16:54:55 +0000 (10:54 -0600)]
layers: Wire in VUIDS for count/array implicit checks

Change-Id: I7957ffe9696f86d1a4cc402b612884e6bd2aa590

7 years agoscripts: Update vuid_mapping for missing variables
Mark Lobodzinski [Wed, 28 Jun 2017 16:54:26 +0000 (10:54 -0600)]
scripts: Update vuid_mapping for missing variables

Change-Id: I762509eb848351db7cd5fffbddbac94f8f8aaf0b

7 years agoheader: Update to version 1.0.53 of the vulkan hdr
Mark Lobodzinski [Wed, 28 Jun 2017 20:58:27 +0000 (14:58 -0600)]
header: Update to version 1.0.53 of the vulkan hdr

- updated vulkan.h
- updated reg.py
- updated vk.xml
- updated vk_validation_error_database.txt
- updated vk_validation_error_messages.h
- updated vuid_mapping.py
- updated vulkan.hpp
- fixed error database vuid parser issue
- updated error DB with new VUIDS

Change-Id: I4744f4278981cf808b1b3c9fcf9cf6f5793f1338

7 years agobuild: Fix build on non-x86 Linux systems
Lenny Komow [Thu, 29 Jun 2017 21:40:12 +0000 (15:40 -0600)]
build: Fix build on non-x86 Linux systems

Change-Id: I5a35e1bb5f1f9bf9b773588e1a20c24da78ddc35

7 years agolayers: More CmdBlitImage VU checks
Dave Houlton [Fri, 9 Jun 2017 23:08:32 +0000 (17:08 -0600)]
layers: More CmdBlitImage VU checks

Add 11 more VU checks to CmdBlitImage.  Fix layer_validation_tests
errors exposed by these new checks, add new tests for the new checks.
Update database file and clang-format the modified source files.

Change-Id: I3457dd0a31e04ab001bc8fb5bf638eb3f990f5d9

7 years agodemos: Use do-while instead of clunky while
Tony Barbour [Thu, 29 Jun 2017 19:34:41 +0000 (13:34 -0600)]
demos: Use do-while instead of clunky while

When acquiring swapchain images

Change-Id: I8c502e06490f73fc5c9cd8057cd12869a66ea942

7 years agolayers: Add names to objects and print in validation
Tony Barbour [Mon, 19 Jun 2017 22:50:37 +0000 (16:50 -0600)]
layers: Add names to objects and print in validation

Change-Id: Ie6587c26c8528ffac5698b8cb3ca2c4cc86b1dfd

layers: Fill out the rest of debug marker calls

Change-Id: I0c4085e36e5c06e11c0c09d1ca126ae6db35526d

7 years agoloader: Add validation for apiVersion
Mark Young [Wed, 19 Apr 2017 01:52:18 +0000 (19:52 -0600)]
loader: Add validation for apiVersion

Add a check to determine if the API version being requested can be
handled by the loader.  If it can't, then we return incompatible driver.
If we can, we continue along our merry way.

An addendum is that we also bumped the Loader/ICD interface version.
This was requested by Nvidia so that the ICDs know that we pay attention
to the version in the loader.  If they don't see the new Loader/ICD
interface version, they will handle the failing on all non-1.0 API
requests.

Change-Id: Icb7dd45e754c9f6a6c8186198333bacc68077b93

7 years agolayers: Update error db for missed check
Mark Lobodzinski [Wed, 28 Jun 2017 17:50:42 +0000 (11:50 -0600)]
layers: Update error db for missed check

Was causing CI to fail.

Change-Id: I38a86432718ff21dd7cf58055b55102190c76937

7 years agolayers: Add VUIDs for some -parameter implicit checks
Mark Lobodzinski [Tue, 27 Jun 2017 19:22:05 +0000 (13:22 -0600)]
layers: Add VUIDs for some -parameter implicit checks

Modified generator script and updated the VUID database.

Change-Id: I78da826981521170f1fa620ca0b91be0d4624cc7

7 years agoscripts: Add missing funcs/structs to mapping table
Mark Lobodzinski [Tue, 27 Jun 2017 19:21:03 +0000 (13:21 -0600)]
scripts: Add missing funcs/structs to mapping table

Change-Id: I124e31e436ec193a6bf55348654c6a99e6daeadc

7 years agolayers: Plumb in PV implicit requiredbits vuids
Mark Lobodzinski [Mon, 26 Jun 2017 22:27:15 +0000 (16:27 -0600)]
layers: Plumb in PV implicit requiredbits vuids

Change-Id: I6a9296d7f7bd73bf90855b32c522ab9d2b8bb04a

7 years agoscripts: Add missing variable names to vuid_mapping
Mark Lobodzinski [Mon, 26 Jun 2017 22:04:27 +0000 (16:04 -0600)]
scripts: Add missing variable names to vuid_mapping

Change-Id: Ib6fb0e6d9bb7d2a75bb0bd751a2ec75a161569ea

7 years agoscripts: Output VUID for PV pNext errors
Mark Lobodzinski [Mon, 26 Jun 2017 20:03:16 +0000 (14:03 -0600)]
scripts: Output VUID for PV pNext errors

Change-Id: I79be1658f827682330e1a9ea6abd9931b0121211

7 years agolayers: Add VUID parameter to pNext validation
Mark Lobodzinski [Mon, 26 Jun 2017 19:05:57 +0000 (13:05 -0600)]
layers: Add VUID parameter to pNext validation

In parameter_validation, plumbed VUID value through to validation
routine, added VUIDs for manual PV functions, updated generator to
compute correct VUID.

Change-Id: Ida15c874ba63826902fe93869cecac87415e0259

7 years agoscripts: Update vuid_mapping for missing structs
Mark Lobodzinski [Mon, 26 Jun 2017 19:05:22 +0000 (13:05 -0600)]
scripts: Update vuid_mapping for missing structs

Change-Id: I7f3850738de4ac7bf5dc0bc58285267c3e6044ae

7 years agolayers: Clarify message for unknown pNext type
Mark Lobodzinski [Mon, 26 Jun 2017 17:32:30 +0000 (11:32 -0600)]
layers: Clarify message for unknown pNext type

Change-Id: I6f7ed5cdfc20401237833c670a8bbc83ce98579e

7 years agobuild: Enable control flow guard on Windows
Slawomir Cygan [Wed, 14 Jun 2017 17:15:31 +0000 (19:15 +0200)]
build: Enable control flow guard on Windows

This enables the 'Control Flow Guard' security feature, which
prevents memory corruption vulnerabilites by placing a restriction
on where application can execute from.

The change is applied to both VulkanRT and it's NSIS installer.

WARN:  This change requires re-patching and rebuillding NSIS with
attached patch.
WARN#2: This change requires Visual Studion 2015 or vs140 toolset to
take effect.

Control Flow Guard documentation:
https://msdn.microsoft.com/en-us/library/windows/desktop/mt637065(v=vs.85).aspx

Change-Id: I7683c0570087d994961c79fb64419509f83536a8

7 years agolayers: Don't copy all the image subresources every submit
Chris Forbes [Tue, 27 Jun 2017 00:57:39 +0000 (17:57 -0700)]
layers: Don't copy all the image subresources every submit

The set of subresources touched by this submission is likely to be very
small compared to the complete set we're tracking. It doesn't make any
sense to copy this entire hashtable in each submit call.

Instead, maintain an overlay table with the submission's modifications
in it.

Saves approx 12s in an internal workload.

7 years agolayers: Declare aliases for std::mutex and its RAII wrappers
Chris Forbes [Mon, 26 Jun 2017 19:11:16 +0000 (12:11 -0700)]
layers: Declare aliases for std::mutex and its RAII wrappers

I want to be able to swap out std::mutex for something the VS
concurrency profiler can see, so let's get all the mentions of it to one
place.

7 years agoscripts: Updated validation_stats error output
Mark Lobodzinski [Tue, 27 Jun 2017 15:38:15 +0000 (09:38 -0600)]
scripts: Updated validation_stats error output

Change-Id: I41f592c8fa7a9180d5bd07446d965fa9eb287558

7 years agolayers: Add sType VUIDs to Parameter Validation
Mark Lobodzinski [Wed, 21 Jun 2017 18:21:45 +0000 (12:21 -0600)]
layers: Add sType VUIDs to Parameter Validation

- Updated validation check to accept VUID
- Modified PV codegen to calculate VUIDs for sType checks
- Modified PV codegen to verify VUIDs are valid enums before using
- Updated error database for 65 new VUIDs covered

Change-Id: Ia964822d5a12db0da9c8b425e0ccb72d1bd550a8

7 years agoscripts: Add parameter_validation.h to doc validator
Mark Lobodzinski [Wed, 21 Jun 2017 20:44:14 +0000 (14:44 -0600)]
scripts: Add parameter_validation.h to doc validator

As the python script doesn't know where the generated source ends up,
added a search of the build, dbuild, and release layers dirs. This
generated file contains LOTS of VUIDs.

Change-Id: I767ae2c3af11a0686ee629edb9964b294b5f7e08

7 years agoscripts: Remove noisy print from vuid_mapping.py
Mark Lobodzinski [Wed, 21 Jun 2017 18:21:34 +0000 (12:21 -0600)]
scripts: Remove noisy print from vuid_mapping.py

This script is now used in all builds and was bogging things down.

Change-Id: Ifd8c7d4c5328ce093e1dd9a111536936e1320ca0

7 years agoscripts: Remove unnecessary library from vuid script
Mark Lobodzinski [Fri, 23 Jun 2017 14:38:50 +0000 (08:38 -0600)]
scripts: Remove unnecessary library from vuid script

BeautifulSoup4 caused build farm issues. Seems that this lib is
not necessary.

Change-Id: I2463fbc1bc8f8f7ceec86bfbc823f21b5bb64c37

7 years agoscripts: Update vuid_mapping.py with new APIs
Mark Lobodzinski [Wed, 21 Jun 2017 17:54:54 +0000 (11:54 -0600)]
scripts: Update vuid_mapping.py with new APIs

Change-Id: I67ae851149973455f5a2f7c156f5f2d87f0dd51e

7 years agoloader: Fix handling of JSON
Mark Young [Mon, 26 Jun 2017 20:03:08 +0000 (14:03 -0600)]
loader: Fix handling of JSON

If a JSON layer manifest file says it contained device extensions
but didn't provide a list, or the list was malformed, it caused
issues.

Change-Id: I94b97b190aca35f9464918eb7195486566becaa0

7 years agoscripts: Move layer scripts into scripts directory
Mark Lobodzinski [Wed, 21 Jun 2017 19:41:00 +0000 (13:41 -0600)]
scripts: Move layer scripts into scripts directory

Simplifies sharing code among python modules, keeps everything together.

- Moved python scripts out of layers dir into scripts dir
- Updated relative paths for input/output files in layers dir
- Updated doc validation tests to use correct paths

Change-Id: I57e6ad6f551d4fb652583315fe3dccb23b187db1

7 years agobuild: Exit with return code in update_external bat
Tony Barbour [Wed, 21 Jun 2017 16:22:05 +0000 (10:22 -0600)]
build: Exit with return code in update_external bat

Change-Id: Idf9d85d36c66a63de0c07322a367b45cfe84e3de

7 years agobuild: Fix assembler warning on Win64
Lenny Komow [Thu, 22 Jun 2017 17:45:47 +0000 (11:45 -0600)]
build: Fix assembler warning on Win64

Change-Id: I234f65c3422628c7a66c53e01044045126c4a7b2

7 years agotests: Skip test for 14a004dc if all offsets are valid
Cort Stratton [Fri, 16 Jun 2017 16:25:23 +0000 (09:25 -0700)]
tests: Skip test for 14a004dc if all offsets are valid

(but first try to artificially lower the attribute offset limit
using LUNARG_device_profile_api)

Also fixes some unexpected VU errors in this test that were
exposed when the main test accidentally passed. Fixes #1781.

7 years agoloader: Modify VK_EXT_debug_marker scripts
Mark Young [Tue, 20 Jun 2017 16:59:42 +0000 (10:59 -0600)]
loader: Modify VK_EXT_debug_marker scripts

There's a discussion of whether or not to make the pointers in
VK_EXT_debug_marker const.  If that happens, the current loader
would break.  Fix the loader so that it would work with
constant pointers.

Change-Id: I105c22d9e6228a8ab68b1bca69514ec227f988ea

7 years agolayers: Do the bulk of pipeline validation unlocked
Chris Forbes [Wed, 21 Jun 2017 20:28:53 +0000 (13:28 -0700)]
layers: Do the bulk of pipeline validation unlocked

7 years agolayers: Rename verifyPipelineCreateState to match new role
Chris Forbes [Wed, 21 Jun 2017 20:23:37 +0000 (13:23 -0700)]
layers: Rename verifyPipelineCreateState to match new role

7 years agolayers: Inline pre-validate into CreateGraphicsPipelines
Chris Forbes [Wed, 21 Jun 2017 20:21:13 +0000 (13:21 -0700)]
layers: Inline pre-validate into CreateGraphicsPipelines

All this did was loop over the pipelines and call a function.

7 years agolayers: Move vertex format validation down a level
Chris Forbes [Wed, 21 Jun 2017 20:18:26 +0000 (13:18 -0700)]
layers: Move vertex format validation down a level

7 years agolayers: Remove pointless instance lookup in pipeline creation
Chris Forbes [Wed, 21 Jun 2017 20:09:52 +0000 (13:09 -0700)]
layers: Remove pointless instance lookup in pipeline creation

7 years agolayers: pass pipe_state vector by const ref
Chris Forbes [Wed, 21 Jun 2017 20:08:55 +0000 (13:08 -0700)]
layers: pass pipe_state vector by const ref

7 years agolayers: Unlock CreateGraphicsPipelines a bit earlier
Chris Forbes [Wed, 21 Jun 2017 20:06:44 +0000 (13:06 -0700)]
layers: Unlock CreateGraphicsPipelines a bit earlier

7 years agolayers: test against maxVertexInputBindingStride should be >, not >=
Cort Stratton [Wed, 21 Jun 2017 22:09:50 +0000 (15:09 -0700)]
layers: test against maxVertexInputBindingStride should be >, not >=

7 years agotests: Handle device extensions provided by layers
Tony Barbour [Wed, 21 Jun 2017 18:06:58 +0000 (12:06 -0600)]
tests: Handle device extensions provided by layers

Change-Id: I59891fe1d1d7d2a95868fa0bfd4fb2aae5c2adda

7 years agobuild: Update Travis-CI config
Cody Northrop [Wed, 21 Jun 2017 18:36:23 +0000 (12:36 -0600)]
build: Update Travis-CI config

Container updates for 2017Q2:

https://blog.travis-ci.com/2017-06-21-trusty-updates-2017-Q2-launch

7 years agolayers: Don't accidentally copy pipeline layout again in SC
Chris Forbes [Wed, 21 Jun 2017 18:34:16 +0000 (11:34 -0700)]
layers: Don't accidentally copy pipeline layout again in SC

7 years agolayers:Make DSLayout const in shared_ptrs
Tobin Ehlis [Wed, 21 Jun 2017 16:16:10 +0000 (10:16 -0600)]
layers:Make DSLayout const in shared_ptrs

Declare DescriptorSetLayout's const for shared_ptrs in Pipeline layout
and DSAllocate structs.

7 years agolayers:IsCompatible uses raw DSLayout ptr
Tobin Ehlis [Wed, 21 Jun 2017 16:08:52 +0000 (10:08 -0600)]
layers:IsCompatible uses raw DSLayout ptr

Update IsCompatible calls for DescriptorSetLayout class to use raw ptrs
instead of shared_ptr as the calls just temporarily use the ptr and
don't affect ptr ownership.

7 years agolayers:Set DescriptorSetLayout in DS to const
Tobin Ehlis [Wed, 21 Jun 2017 15:56:13 +0000 (09:56 -0600)]
layers:Set DescriptorSetLayout in DS to const

The DescriptorSetLayout pointed to by shared_ptr in DescriptorSet is
const so add const across uses as appropriate.

7 years agolayers:Pass shared_ptr by const ref
Tobin Ehlis [Wed, 21 Jun 2017 15:26:04 +0000 (09:26 -0600)]
layers:Pass shared_ptr by const ref

DescriptorSetLayout shared_ptr will always survive the lifetime of the
DescriptorSet constructor so pass by const ref.

7 years agolayers:Use make_shared for share_ptr creation
Tobin Ehlis [Wed, 21 Jun 2017 14:17:00 +0000 (08:17 -0600)]
layers:Use make_shared for share_ptr creation

std::make_shared is more efficient for shared_ptr creation, using a
single heap allocation for both the object and control logic, vs. two
separate allocations of using "new" w/ shared_ptr constructor.

7 years agolayers:Migrate DSLayout to shared_ptr
Tobin Ehlis [Tue, 20 Jun 2017 14:30:39 +0000 (08:30 -0600)]
layers:Migrate DSLayout to shared_ptr

Update Descriptor Set Layout copy in Descriptor Set, as well as various
ptr references to use shared_ptr.
This fixes some potential memory leaks and makes Descriptor Set class
lighter weight.

7 years agolayers:Used shared_ptr for DSLayout
Tobin Ehlis [Mon, 19 Jun 2017 22:38:57 +0000 (16:38 -0600)]
layers:Used shared_ptr for DSLayout

Modify DescriptorSetLayout map to use shared_ptr. Will follow-on with
changes to Descriptor Set class that share the ptrs.

7 years agotests:Remove unused result var
Tobin Ehlis [Mon, 19 Jun 2017 22:34:20 +0000 (16:34 -0600)]
tests:Remove unused result var

7 years agoscripts:Skip doc validation if src dir not found
Tobin Ehlis [Tue, 20 Jun 2017 20:16:15 +0000 (14:16 -0600)]
scripts:Skip doc validation if src dir not found

Fixes #1878

If vkvalidatelayerdoc script is not run from a directly two levels
below the layer source, then just skip running it. Print out a message
on how to run doc validation manually for those interested.

7 years agolayers: GH1889, check for CLAMP_TO_EDGE ext enable
Mark Lobodzinski [Tue, 20 Jun 2017 14:43:57 +0000 (08:43 -0600)]
layers: GH1889, check for CLAMP_TO_EDGE ext enable

Using this addressing mode in CreateSampler should generate an error
if the extension is not enabled.
Also added layer validation test for this check and updated the error
database.

Change-Id: If0a434976aa4bb30ab23ff6babb95df3af7a4efd

7 years agobuild: Quote asm arg to allow bld w/spaces in path
Karl Schultz [Tue, 20 Jun 2017 19:53:39 +0000 (13:53 -0600)]
build: Quote asm arg to allow bld w/spaces in path

Put quotes around an assembler argument in CMake file
to reenable building this repo on a path that contains
space characters.

Change-Id: Ic89737f4611161ec0bf4fe53ea59d9e2cd553d9b

7 years agodemos: Add missing break
Jeremy Hayes [Tue, 20 Jun 2017 17:25:02 +0000 (11:25 -0600)]
demos: Add missing break

Treat suboptimal as success.

Change-Id: I18f0e8592e212c4d1f99294de24cac945bcdb7c3

7 years agodon't copy vector of pipelines everywhere
Chris Forbes [Tue, 20 Jun 2017 00:58:09 +0000 (17:58 -0700)]
don't copy vector of pipelines everywhere

7 years agolayers: Avoid renderpass lookup in verifyPipelineCreateState
Chris Forbes [Tue, 20 Jun 2017 00:21:50 +0000 (17:21 -0700)]
layers: Avoid renderpass lookup in verifyPipelineCreateState

7 years agolayers: Move pipeline renderpass/subpass validation earlier
Chris Forbes [Tue, 20 Jun 2017 00:03:01 +0000 (17:03 -0700)]
layers: Move pipeline renderpass/subpass validation earlier

7 years agodemos: Destroy instance after closing Xlib connection
Karl Schultz [Tue, 20 Jun 2017 17:27:59 +0000 (11:27 -0600)]
demos: Destroy instance after closing Xlib connection

In the cube demos, destroy the instance after closing the
display system connection.  It is possible for the driver to
register callback functions with a library like Xlib.  If the
driver is unloaded when Xlib calls those callback functions,
a segfault results.

Fixes #1894

Change-Id: Ieb25a00f727c4ac05ff24b41c3582b293abf4b95

7 years agodemos: Update cubepp
Jeremy Hayes [Wed, 14 Jun 2017 21:07:32 +0000 (15:07 -0600)]
demos: Update cubepp

Modify correct uniform buffer for next frame.
Fix fence sync after new throttling scheme.
Select alpha based on capabilities in cube.
Add uniform buffer per swapchain image to cube.
Cube updated to use triple buffering.

Change-Id: Ia929bde0e6c3c2129dc9164a65696af1ee0c0329

7 years agolayers: check attachment finalLayout for invalid values
Cort Stratton [Fri, 16 Jun 2017 17:31:06 +0000 (10:31 -0700)]
layers: check attachment finalLayout for invalid values

7 years agolayers: Further removal of CMD_TYPE plumbing
Chris Forbes [Sat, 17 Jun 2017 00:56:01 +0000 (17:56 -0700)]
layers: Further removal of CMD_TYPE plumbing

7 years agoRemove dead cmd_type param from PreCallRecordCmdClearImage
Chris Forbes [Fri, 16 Jun 2017 23:42:35 +0000 (16:42 -0700)]
Remove dead cmd_type param from PreCallRecordCmdClearImage

7 years agoRemove last cmd machinery
Chris Forbes [Fri, 16 Jun 2017 23:30:28 +0000 (16:30 -0700)]
Remove last cmd machinery

This isn't useful now.

7 years agolayers: Split CB_INVALID state
Chris Forbes [Fri, 16 Jun 2017 22:51:00 +0000 (15:51 -0700)]
layers: Split CB_INVALID state

There are really two states here:
- Had a complete recording that was valid at some point, but not now.
- Fouled during recording

7 years agolayers: Move validate_functions clear into resetCB
Chris Forbes [Fri, 16 Jun 2017 22:14:46 +0000 (15:14 -0700)]
layers: Move validate_functions clear into resetCB

7 years agolayers: Remove dead TODO for MT/CV merge
Chris Forbes [Fri, 16 Jun 2017 21:32:13 +0000 (14:32 -0700)]
layers: Remove dead TODO for MT/CV merge

7 years agobuild: Enable linux 32-bit builds with ASFLAGS
Lenny Komow [Fri, 16 Jun 2017 17:14:31 +0000 (11:14 -0600)]
build: Enable linux 32-bit builds with ASFLAGS

Change-Id: Ic88fdb9d6c0f23a0b345c82852826a9c1abb8097

7 years agoscripts:Temporarily disable doc validation
Tobin Ehlis [Fri, 16 Jun 2017 15:35:47 +0000 (09:35 -0600)]
scripts:Temporarily disable doc validation

Doc validation makes some directory assumptions that are fragile.
Temporarily disabling doc validation from run_all_tests scripts while
I figure out a better solution for how to organize the script and make
sure it can access all the files it needs.

7 years agolayers: Remove debug code from vk_layer_table.cpp
Mark Lobodzinski [Fri, 16 Jun 2017 16:21:19 +0000 (10:21 -0600)]
layers: Remove debug code from vk_layer_table.cpp

Change-Id: I146461055a1f925ed17c1433c8451aa8a65c5578

7 years agolayers: Fix memory leak in instance destroy_dispatch_table
Józef Kucia [Fri, 16 Jun 2017 09:52:21 +0000 (11:52 +0200)]
layers: Fix memory leak in instance destroy_dispatch_table

Change-Id: I8152960f30f73a997386aa9bf3561d2e0e8b408d

7 years agolayers: Fix memory leak in device destroy_dispatch_table
Józef Kucia [Fri, 16 Jun 2017 09:52:21 +0000 (11:52 +0200)]
layers: Fix memory leak in device destroy_dispatch_table

Change-Id: I14aa005db87caab3cbb28a4e06b1d2a76c931341

7 years agobuild: Do not overwrite CMAKE_ASM-ATT_FLAGS
Józef Kucia [Fri, 16 Jun 2017 11:28:14 +0000 (13:28 +0200)]
build: Do not overwrite CMAKE_ASM-ATT_FLAGS

Allows passing flags to assembler in order to build 32-bit targets
on 64-bit platforms.

A 32-bit build can be produced by passing -DCMAKE_ASM-ATT_FLAGS=--32
to cmake.

7 years agotests: Remove commented out source code
Mark Lobodzinski [Wed, 14 Jun 2017 16:14:07 +0000 (10:14 -0600)]
tests: Remove commented out source code

Change-Id: I44a68dfb8b7015b348553d2f538e84e4b5dadc43

7 years agotests: GH1827, Enabled/supported extensions in tests
Mark Lobodzinski [Wed, 14 Jun 2017 16:04:38 +0000 (10:04 -0600)]
tests: GH1827, Enabled/supported extensions in tests

Also split up imagecopy test for correct operation with extensions.

Change-Id: I08b97c770e0840d83be904c9f18b48b396c25fa3

7 years agotests: Add missing parms to InitFramework call
Mark Lobodzinski [Wed, 14 Jun 2017 18:12:26 +0000 (12:12 -0600)]
tests: Add missing parms to InitFramework call

If using InitFramework() instead of Init(), the debug_function and
error_monitor arguments are required for full functionality.

Change-Id: I50a5fd81ee9412ad857d1334bf19664d27d1d309

7 years agoscripts:Include string.h in ext helper
Tobin Ehlis [Wed, 14 Jun 2017 15:43:04 +0000 (09:43 -0600)]
scripts:Include string.h in ext helper

vk_extension_helper.h uses strcmp so add include of string.h to make
sure this dependency is correctly met.

7 years agotests: Fix device_profile_api return types
Tony Barbour [Fri, 9 Jun 2017 14:44:19 +0000 (08:44 -0600)]
tests: Fix device_profile_api return types

Change-Id: Iaf039fb68cd20f66fe7f9150e9f695938ce2e70f

7 years agotests: Copy device_profile_api json from source
Tony Barbour [Mon, 5 Jun 2017 19:31:25 +0000 (13:31 -0600)]
tests: Copy device_profile_api json from source

Change-Id: I0277023275f4265ed260d350daaa25a272bd806c

7 years agolayers: Clean up missing checks list for vkCreateBuffer
Chris Forbes [Wed, 14 Jun 2017 19:38:01 +0000 (12:38 -0700)]
layers: Clean up missing checks list for vkCreateBuffer

7 years agotests: Doc validator test changes
Mark Lobodzinski [Mon, 12 Jun 2017 18:04:40 +0000 (12:04 -0600)]
tests: Doc validator test changes

Add doc validator back into Windows run-all-tests script.
Add terse_mode option to win/lin run_all_tests scripts

Change-Id: I4fa02ba5caad374a599c2fed42b8661bdb083a77

7 years agolayers: Allow suppression of doctest output
Mark Lobodzinski [Mon, 12 Jun 2017 18:02:38 +0000 (12:02 -0600)]
layers: Allow suppression of doctest output

Added checking in the doc validator script to look for a 'terse_mode'
option which suppresses its informational/warning messages.

Change-Id: I986fb6070b0de53d56e45f5da4b05211203a1b8e

7 years agoloader: Fix alloc issue
Mark Young [Thu, 15 Jun 2017 14:36:58 +0000 (08:36 -0600)]
loader: Fix alloc issue

We were allocating the wrong struct for the dispatch table object
when creating the instance.  This left us using invalid memory
when using the physical device extension trampolines.

Change-Id: I9939a8c9fe320b0d07592ab4beb5b6faaba40383

7 years agobuild: Fix ninja build
Lenny Komow [Wed, 14 Jun 2017 21:08:45 +0000 (15:08 -0600)]
build: Fix ninja build

A previous change of mine broke the ninja build in the loader. This
commit resolves that by fixing the include path

Change-Id: Iaabf3488b323bb3d2d0e40a7d555769c528e61e3

7 years agodemos: Modify correct uniform buffer for next frame
Tony Barbour [Wed, 14 Jun 2017 17:59:55 +0000 (11:59 -0600)]
demos: Modify correct uniform buffer for next frame

Change-Id: I78b8f5ef63fb2c14a3ce431f3e6f6a809e65972f

7 years agolayers: Remove dead comment about interface block handling
Chris Forbes [Wed, 14 Jun 2017 00:36:26 +0000 (17:36 -0700)]
layers: Remove dead comment about interface block handling

7 years agoloader: Fix unknown phys dev trampolines on linux
Lenny Komow [Fri, 9 Jun 2017 21:21:06 +0000 (15:21 -0600)]
loader: Fix unknown phys dev trampolines on linux

Change-Id: I6a8de7feb44587601cc72342f996a26f8ae6bcd8

7 years agoloader: Fix unknown phys dev trampolines on win32
Lenny Komow [Thu, 8 Jun 2017 22:41:02 +0000 (16:41 -0600)]
loader: Fix unknown phys dev trampolines on win32

Convert unknown physical device extension trampolines to assembly
on windows. This is necessary because the previous method relied on
compiler optimizations that were not being run by MSVC, even with
full optimizations enabled.

Change-Id: Ibefa6ed24f8c91b1e723fab9c1cfd3039fabd64b

7 years agolayers: Fix SC interface matching over complex types
Chris Forbes [Tue, 13 Jun 2017 20:59:41 +0000 (13:59 -0700)]
layers: Fix SC interface matching over complex types

7 years agotests: Add test for complex types problem
Chris Forbes [Tue, 13 Jun 2017 01:25:30 +0000 (18:25 -0700)]
tests: Add test for complex types problem

7 years agotests: Add positive check for deleted DSLayouts
Mark Lobodzinski [Tue, 13 Jun 2017 20:07:35 +0000 (14:07 -0600)]
tests: Add positive check for deleted DSLayouts

Deleting DescriptorSetLayouts before associated DescriptorSets
previously caused crashes.

Change-Id: I21fda3826e5836d4885e6baa8807937223117fd3

7 years agolayers: Use copies of layout data for descriptorsets
Mark Lobodzinski [Tue, 13 Jun 2017 19:00:05 +0000 (13:00 -0600)]
layers: Use copies of layout data for descriptorsets

DescriptrSets used pointers to descriptorsetlayout data, which caused
invalid references if the layouts were deleted before the descriptor
sets. Changed the layer to copy the data.

Change-Id: I671f1efed2aa0986f3a370b51f2f96c07b555af7

7 years agoexternal: update external revisions
Jeremy Hayes [Mon, 12 Jun 2017 21:25:25 +0000 (15:25 -0600)]
external: update external revisions

Change-Id: I076eb49526ea8b54bde2d584c5779c8251e56a3e

7 years agolayers: Use correct tracking for display planes query
Chris Forbes [Mon, 12 Jun 2017 22:45:11 +0000 (15:45 -0700)]
layers: Use correct tracking for display planes query

7 years agolayers: Untangle validate & update in CmdCopyQueryPoolResults
Chris Forbes [Mon, 12 Jun 2017 19:51:32 +0000 (12:51 -0700)]
layers: Untangle validate & update in CmdCopyQueryPoolResults

7 years agolayers: Split validate & update of CmdWriteTimestamp
Chris Forbes [Mon, 12 Jun 2017 19:46:39 +0000 (12:46 -0700)]
layers: Split validate & update of CmdWriteTimestamp

7 years agolayers: Split validate & update of CmdEndQuery
Chris Forbes [Mon, 12 Jun 2017 19:46:20 +0000 (12:46 -0700)]
layers: Split validate & update of CmdEndQuery

7 years agolayers: Untangle validate & update of CmdBeginQuery
Chris Forbes [Mon, 12 Jun 2017 19:41:47 +0000 (12:41 -0700)]
layers: Untangle validate & update of CmdBeginQuery

7 years agolayers: Convert all the std::bind to lambdas
Chris Forbes [Mon, 12 Jun 2017 18:40:36 +0000 (11:40 -0700)]
layers: Convert all the std::bind to lambdas