Chris Forbes [Tue, 15 Nov 2016 19:58:32 +0000 (08:58 +1300)]
layers: Improve wording of attachment-index-out-of-range error
This wasn't correct for the == case.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
joey-lunarg [Mon, 7 Nov 2016 18:27:00 +0000 (11:27 -0700)]
vulkaninfo: Fix variable, struct and function names
Cleanup to match Google c++ style guide.
Change-Id: Ifecbf5c8680159684e24a184421e907d1d815627
joey-lunarg [Wed, 2 Nov 2016 20:36:19 +0000 (14:36 -0600)]
vulkaninfo: Add surface present modes
Change-Id: Icb6c30a81743cf5854fd7ecc974d87e814be856d
Jeremy Hayes [Fri, 18 Nov 2016 18:59:55 +0000 (11:59 -0700)]
demos: fix validation error
Change-Id: Idd89d98bf8932c07df2c1452f27d2f3002fb2d8a
Jeremy Hayes [Wed, 16 Nov 2016 21:54:41 +0000 (14:54 -0700)]
demos: call DeviceWaitIdle before DestroyDevice
Change-Id: Ic5819027b706e8c5d66ae78d0d0da1133c16085b
Jeremy Hayes [Wed, 16 Nov 2016 21:47:13 +0000 (14:47 -0700)]
demos: make present mode a command line option
Change-Id: I0dedd685225f5aecaba968ba81da487e5d05da26
Jeremy Hayes [Wed, 16 Nov 2016 21:15:25 +0000 (14:15 -0700)]
demos: move staging texture to demo struct
Change-Id: I8b0319d0f0bab8aba6c41e8fa324f0a9f7128baf
Jeremy Hayes [Wed, 16 Nov 2016 20:42:08 +0000 (13:42 -0700)]
demos: move cmd bfr creation out of layout util
Change-Id: I01c4f59497f4ac22f2a96bda535c7965d34156d8
Mark Lobodzinski [Fri, 18 Nov 2016 15:36:15 +0000 (08:36 -0700)]
header: Update header files to version 1.0.34
- Updated vulkan.h
- Updated vk.xml
- updated windows/linux *.json files
- updated Linux SOVERSION
- updated vulkan.hpp
Change-Id: I288e2646445aec88aa4a3a9243dd65293fe1028a
Tobin Ehlis [Thu, 17 Nov 2016 20:51:54 +0000 (13:51 -0700)]
layers:Check reqs before call to BindImageMemory
There's an implicit spec requirement that GetImageMemoryRequirements()
should be called prior to calling BindImageMemory() b/c various return
values from GetImageMemoryRequirements() are expected to be complied
with.
This change adds a warning if GetImageMemoryRequirements() has not
been called prior to BindImageMemory(). In this case it will make the
call itself in order to populate internal state tracking.
Tobin Ehlis [Thu, 17 Nov 2016 20:39:57 +0000 (13:39 -0700)]
layers:Check reqs before call to BindBufferMemory
There's an implicit spec requirement that GetBufferMemoryRequirements()
should be called prior to calling BindBufferMemory() b/c various return
values from GetBufferMemoryRequirements() are expected to be complied
with.
This change adds a warning if GetBufferMemoryRequirements() has not
been called prior to BindBufferMemory(). In this case it will make the
call itself in order to populate internal state tracking.
Tobin Ehlis [Wed, 16 Nov 2016 16:30:23 +0000 (09:30 -0700)]
layers:Rename BUFFER_NODE->BUFFER_STATE
Tobin Ehlis [Tue, 15 Nov 2016 22:37:18 +0000 (15:37 -0700)]
layers:Check all memory bindings
There are a few places in the code where we assume that an image or
buffer doesn't have a sparse binding. These cases break with sparse
bindings.
To fix I added a function to BINDING class to retrieve all memory
bindings and then updated a few spots with bad assumption to make use
of this new GetBoundMemory() function.
Tobin Ehlis [Wed, 16 Nov 2016 16:01:28 +0000 (09:01 -0700)]
layers:Check buffer offset against required size
Fixes #1030
Use the required memory size instead of bound memory size when
validating the offset into a memory buffer. This will correctly handle
both sparse and non-sparse cases.
Tobin Ehlis [Wed, 16 Nov 2016 15:57:22 +0000 (08:57 -0700)]
layers:Save memory requirements
Add memory requirements member to the BINDABLE class and save memory
requirements for images and buffers in their respective
Get*MemoryRequirements() functions.
David Pinedo [Thu, 17 Nov 2016 22:03:16 +0000 (15:03 -0700)]
codegen: change script to handle NV ext structs
Modified vk_helper.py to handle NV-specific structures
Mark Lobodzinski [Thu, 17 Nov 2016 17:56:14 +0000 (10:56 -0700)]
layers: GH949, Fix ObjTrkr to destroy NULL handles
ObjectTracker emitted errors when a destroy/free call was made with
VK_NULL_HANDLE, which *is* allowed by the spec.
Change-Id: I2b4e19999e539d68b5856139566d4a7a8a530ca6
Tobin Ehlis [Thu, 17 Nov 2016 17:50:52 +0000 (10:50 -0700)]
layers:Fix descriptor dynamic offset handling
Fixes #1162
The dynamic offsets passed in at descriptor bind time are ordered based
on the binding order and any consecutive array indicies within those
bindings. When we validate the dynamic offsets at draw time, we were
using the entire dynamic offset array, but only the active bindings.
If we had an inactive dynamic binding before the end of the bindings
we would use the wrong offsets.
This change fixes the issue by creating a mapping between bindings and
dynamic offset array indicies at descriptor layout creation time. At
draw time the mapping is then used to lookup the correct dynamic offset
array index for a given binding.
Mark Lobodzinski [Thu, 17 Nov 2016 17:20:12 +0000 (10:20 -0700)]
Revert "layers: Update vulkan.py with new extensions"
This reverts commit
f504ff6e45bb15a0517a8de2e2d75e90df7e4627.
This caused huge issues in the VulkanTools repo, reverting for
now.
Mark Lobodzinski [Wed, 16 Nov 2016 21:53:26 +0000 (14:53 -0700)]
layers: Update vulkan.py with new extensions
Change-Id: I1b0623587d7d02849ece97de00ddb1c6bad58819
Mark Lobodzinski [Wed, 16 Nov 2016 22:34:26 +0000 (15:34 -0700)]
header: Update header files to version 1.0.33
- Updated vulkan.h
- Updated vk.xml
- updated windows/linux *.json files
- updated Linux SOVERSION
- updated vulkan.hpp
Change-Id: I8128a610d1cd24a1ac49712f28d566f712f4cc94
Rene Lindsay [Thu, 17 Nov 2016 01:52:55 +0000 (18:52 -0700)]
docs: add libxkbcommon dependency (Keyboard handling)
Mark Lobodzinski [Tue, 15 Nov 2016 16:40:32 +0000 (09:40 -0700)]
layers: Update error enum database
Updated status for new MappedMemoryRanges device limits checks.
Change-Id: Id5e1973fa2b7d798abfa3e54f751b69c1b29f2d1
Mark Lobodzinski [Mon, 14 Nov 2016 23:28:01 +0000 (16:28 -0700)]
layers: GH329, Add MappedMemoryRanges limits checks
When VkMappedMemoryRange structures are used, the offset and size
members must be a multiple of the device limit nonCoherentAtomSize.
Added these checks in core_validation.
Change-Id: If7eded4c52d31c1a25740ac08ec5434c93c5cecc
Mark Lobodzinski [Tue, 15 Nov 2016 14:59:58 +0000 (07:59 -0700)]
layers: Fixup MappedMemRanges call ordering
Moved validation out of API calls.
Change-Id: I95f3b24d69d469ea98b7c955bbab56c9b47ad487
Mark Lobodzinski [Tue, 15 Nov 2016 14:48:49 +0000 (07:48 -0700)]
layers: Fixup MappedMemory variable names for style
Change-Id: I4f8aae213753dc69ae28a945d7f34cff2af7ccd9
Mark Lobodzinski [Tue, 15 Nov 2016 20:55:22 +0000 (13:55 -0700)]
layers: Fixup validateMemoryIsMapped for style
Var names.
Change-Id: I69b441f986c017f2d34a62669c8b3e7511a2dd5f
Mark Lobodzinski [Tue, 15 Nov 2016 15:56:03 +0000 (08:56 -0700)]
layers: Update ValidateMemIsMapped error enums
Plumbed in VU error enums, updated tests and database.
Change-Id: I114d269c686cddd6b1d3acb098d0b2f5fe4fdc17
Mark Lobodzinski [Tue, 15 Nov 2016 20:40:03 +0000 (13:40 -0700)]
layers: Updated error database for new check
Vertex attribute formats, 1413.
Change-Id: Ieddd05c0f40a643db074ade79659f9c09699c436
Mark Lobodzinski [Wed, 16 Nov 2016 18:12:30 +0000 (11:12 -0700)]
layers: GH1143, Validate vertex attribute formats
Formats specified as vertex attributes (createGraphicsPipelines->
pCreateInfos->pVertexInputState->pVertexAttributeDescriptions.format)
must have the VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT set.
Change-Id: I907c37e2edbcfb7bcb405f912cea8d215acccb11
Mark Lobodzinski [Wed, 16 Nov 2016 19:12:56 +0000 (12:12 -0700)]
layers: Save PDev in device's layer data
Needed for physical-device calls or to access data belonging to
the physical device.
Change-Id: I2a1f6eadcaf82c2247a68c91c39d97ef3284b22a
Mark Lobodzinski [Wed, 16 Nov 2016 17:11:02 +0000 (10:11 -0700)]
layers: Update CGP var names for style
Changed CreateGraphicsPipeline local vars to match style guidelines.
Change-Id: I3204ce878b37ef3cb0ce58ecff00d65a4fed4f28
Mark Lobodzinski [Wed, 16 Nov 2016 17:05:30 +0000 (10:05 -0700)]
layers: Move val to PreCallCreateGraphicsPipelines
In core validation, created a pre-call function and moved the
validation calls into it.
Change-Id: Ib7831c3d2f36628e24b90083be902ac724f25483
Mark Lobodzinski [Wed, 16 Nov 2016 16:51:44 +0000 (09:51 -0700)]
layers: Remove verifyPipeLlineCreateState unused parm
Core-validation, device was unused.
Change-Id: Ia02ff0a3c9ce85c69b175c3e80b101dd2ddc8214
Jeremy Hayes [Tue, 15 Nov 2016 22:41:47 +0000 (15:41 -0700)]
layers: update valid usage
Change-Id: Ia46300db1e9140e0547c3e089cef17f774b44cf3
Tony Barbour [Mon, 14 Nov 2016 21:46:33 +0000 (14:46 -0700)]
demos: Enable building combinations of xcb and xlib
Change-Id: I055c12e8c93d05db747239df46611386eb8b8278
Tobin Ehlis [Tue, 15 Nov 2016 17:18:56 +0000 (10:18 -0700)]
scripts:Update unique error enums as of 11/15/16
2 new checks and 1 deleted check.
Cmd line was "python spec.py -update"
joey-lunarg [Mon, 14 Nov 2016 22:20:43 +0000 (15:20 -0700)]
demos: Fix compiler warning in smoketest
Replaced snprintf with stringstream.
Karl Schultz [Fri, 11 Nov 2016 23:09:47 +0000 (16:09 -0700)]
layers: gh125 Add check for memory obj max count
Fixes #125
Change-Id: I1b0b4eb2894494dc6df9c8dd1beab6f3645a707c
Cody Northrop [Mon, 14 Nov 2016 22:48:08 +0000 (15:48 -0700)]
android: Add default core count in case ncpus not available
qnope [Thu, 10 Nov 2016 17:56:51 +0000 (18:56 +0100)]
layers: GH1141, Fix host-bit/PREINITIALIZED warning
Validation layers [core_validation] give a warning when transitioning
an image layout from PREINITIALIZED with srcAccessMask = 0. Since the
barrier should be done implicitly when the commandBuffer is submitted,
the message from the validation layers is incorrect.
Change-Id: I0ebc9f300b029237d4d3527e411d88f64c485ac4
Cody Northrop [Thu, 3 Nov 2016 20:44:55 +0000 (14:44 -0600)]
android: Move external under build-android
Cody Northrop [Thu, 3 Nov 2016 20:35:08 +0000 (14:35 -0600)]
android: Build toolchain with more cores
Cody Northrop [Thu, 3 Nov 2016 20:34:17 +0000 (14:34 -0600)]
android: Pull known good toolchain versions
This includes pulling libSPIRV-Tools-opt into the build
to satisfy new shaderc revision.
Mark Young [Mon, 14 Nov 2016 22:03:34 +0000 (15:03 -0700)]
loader: Fix pointer dereference issue.
I was setting a value after the object containing it was deleted.
Change-Id: I8c41d454d3f9c89144e876c5b9feaf32af6e2500
Karl Schultz [Mon, 14 Nov 2016 18:53:08 +0000 (11:53 -0700)]
vulkaninfo: Fix unused label err for Windows
Also other rework of previous commit for vulkaninfo:
- remove label and goto
- make Xcb and Xlib display open failure handling more consistent.
Change-Id: Ibfa5cc6f591b987eda26d1ff7059a44dd41c220f
Mark Young [Mon, 7 Nov 2016 20:27:02 +0000 (13:27 -0700)]
loader: gh1120/gh1134 - Object wrapping issues
First issue was that we needed to override vkGetDeviceProcAddr. Instead
of allowing this to always go directly to the ICD, we needed to intercept
a few commands because they require a loader trampoline and terminator
call. Most commands still return a pointer directly to ICD command.
GH1120 - Unwrap both the physical device handles and the
KHR_surface handles in the loader during both the trampoline and
terminator calls for DebugMarker commands. This has to be done since the
values given to an application are the loader trampoline versions, and the
values given to the last layer is the loader terminator versions.
GH1134 - We were passing down the wrong device object to the ICD functions
when querying the ICD command function address and comparing it in the
override functions.
Thanks to Baldur (Mr. Renderdoc) for discovering this, testing my
fixes, and resolving several bugs.
Change-Id: I7618d71ffee6c53d9842758210a9261f6b3a1797
Awais Belal [Fri, 11 Nov 2016 10:13:40 +0000 (15:13 +0500)]
vulkaninfo: fix segfault when DISPLAY is not set
Both xlib and xcb interfaces expect the DISPLAY environment
variable to be set before creation of a window and the
display creation mechanism would segfault if that is
not the case and won't provide the user with details on
what has to be done to correct the problem.
We now handle such scenarios and exit cleanly after
providing the user with some details.
Signed-off-by: Awais Belal <awais_belal@mentor.com>
Mark Lobodzinski [Mon, 14 Nov 2016 15:18:09 +0000 (08:18 -0700)]
layers: GH321, vkAllocateMemory return code handling
If a custom allocator is used and fails, validation will continue,
using a null pointer and leading to invalid/unuseful validation
errors. Added a check for a good return code.
Change-Id: I2a91f2e9b3b951296b1e452364c863bca6b67b9f
Mark Lobodzinski [Fri, 11 Nov 2016 22:27:12 +0000 (15:27 -0700)]
layers: Add null checks to RetireWorkOnQueue
API misuse was causing invalid object dereferences and crashes.
Change-Id: I81ff28b029b984a106a6c60063810e61a07cb945
Mark Young [Fri, 11 Nov 2016 16:31:55 +0000 (09:31 -0700)]
loader: Fix failure on ICD loading
Piers (Nvidia) discovered a bug where the ICD would fail in different ways
depending on which ICD failed to load properly during the vkCreateInstance
call. If the first ICD failed, but the second one succeeded, everything
would work fine, if the second failed, but the first succeeded, it would
fail completely because the last ICD failed.
Change-Id: I9f63146e60baf1ff310c948d8ef84c645519c075
Mark Lobodzinski [Thu, 10 Nov 2016 16:12:57 +0000 (09:12 -0700)]
layers: Enable destroy_msg_callback dbg msgs
These DEBUG_REPORT_DEBUG messages would never get printed as the
active_flags were zeroed out before the log_msg call. Temporarily
used the current callback's flags.
Change-Id: If1cc8ac2edb7dad9964049a7b755b4666f562104
Mark Lobodzinski [Thu, 10 Nov 2016 16:10:08 +0000 (09:10 -0700)]
layers: GH1129, Fix debug report flags
When a debug report callback was created, destroyed, and re-created using
different flags, the flags controlling enabled message types could not be
unset. Fixed to clear message flags when installing a new debug callback.
Change-Id: If784fc41bf413c814343101bf4083c45224d6d8b
Mark Young [Fri, 11 Nov 2016 18:21:11 +0000 (11:21 -0700)]
external: Update glslang and spirv-tools revisions
Change-Id: I8eec3ac1a1dedc14fac79ba47a10998842a8ffe4
Tony Barbour [Thu, 10 Nov 2016 23:45:15 +0000 (16:45 -0700)]
demos: Call DeviceWaitIdle before DestroyDevice
Complying with best practice from Vulkan Programming Guide
page 31 - Shutting Down Cleanly
Change-Id: I19640071d26f765ffc0a2f5e5fc4d60920395e0b
Lenny Komow [Fri, 11 Nov 2016 01:36:05 +0000 (18:36 -0700)]
winsdk: Fix missing file extension in runtime
Change-Id: I251663fb2932823d387af11e94bcd1e2586e0772
Jeremy Hayes [Thu, 10 Nov 2016 20:24:47 +0000 (13:24 -0700)]
demos: fix gcc warning
Change-Id: I9f4371334bf958bb01e89621008b6e569002d9a1
Jeremy Hayes [Thu, 3 Nov 2016 16:49:44 +0000 (10:49 -0600)]
layers: update valid usage
Change-Id: Id7556ddc1be59ee7fe5ab9273257cbc399724a3e
joey-lunarg [Thu, 3 Nov 2016 20:27:05 +0000 (14:27 -0600)]
demos: Fix argument consistency for smoketest
All arguments now have double-dashes
Change-Id: I19548d60a008cc259326efb1b62b6fd9d3bbdd70
joey-lunarg [Thu, 3 Nov 2016 19:49:49 +0000 (13:49 -0600)]
demos: Add testing features for smoke
Smoketest will now output # of frames rendered and elapsed ms.
Command line argument added to limit the rendered frames,
usage: 'smoketest --c <framecount>'
Change-Id: Id6bc0186169b6511823c4406be655f6d8ca18324
joey-lunarg [Thu, 3 Nov 2016 19:45:54 +0000 (13:45 -0600)]
demos: Add Game class file for smoke
Change-Id: I385f8fd0676f665b1d774f38767b5691ddae6f7a
Mike Weiblen [Tue, 1 Nov 2016 05:59:10 +0000 (23:59 -0600)]
layers: GH1092 sync CreateGraphicsPipeline enums
Update enum error database with status of implemented checks
inside CreateGraphicsPipeline().
Change-Id: Ie74b51cb65db7c8bff5e40c90617781269bc95a9
Mike Weiblen [Tue, 1 Nov 2016 03:04:10 +0000 (21:04 -0600)]
layers: GH934 Bounds checking on SetViewport
Add viewport bounds checking.
Change-Id: I8ec8a663c5ce3d90447f8f6228ce3ed8fcbb4454
Jeremy Hayes [Tue, 8 Nov 2016 22:52:05 +0000 (15:52 -0700)]
demos: fix cubepp fence creation
Change-Id: I8019075d3ba7e44cfaf78f6b242cc2e4a8b6505f
Lenny Komow [Mon, 7 Nov 2016 22:20:54 +0000 (15:20 -0700)]
winsdk: Set runtime to use parameterized build
Change-Id: I2f315a25667219620f5dcc3c36ad66d225134eef
Lenny Komow [Mon, 7 Nov 2016 18:40:00 +0000 (11:40 -0700)]
loader: Parameterize locations of drivers/layers
Change-Id: I79c16e01f336b3cf90ec7e6e66901ad363502e7b
Lenny Komow [Mon, 7 Nov 2016 17:44:23 +0000 (10:44 -0700)]
build: Allow the use of a custom-named vulkan dll
Change-Id: Ibeae30386ca2a91717d6b4c3039ada884003a1a4
Lenny Komow [Fri, 4 Nov 2016 16:38:39 +0000 (10:38 -0600)]
winsdk: Parameterize ConfigureRT program
Change-Id: I2f869d5a71fb6c5411aa2ab6a3b133c37fb52a09
Lenny Komow [Thu, 3 Nov 2016 21:43:59 +0000 (15:43 -0600)]
winsdk: Parameterize runtime NSIS script
Change-Id: If1d767f29b6189a44e3f942ab96a55062a2f9cb7
Mark Young [Mon, 7 Nov 2016 23:26:17 +0000 (16:26 -0700)]
loader: Remove warning on missing implicit layer
If the Implicit Layer registry location was missing, validation
would throw a warning. This is not correct behavior as many systems will
not have Implicit layers. Modify so the warning/error is only thrown if
either a driver manifest path, or an explicit layer path.
Change-Id: Ideccc730e0b1c613c4cc58c5f64ae31ba19bc05c
Chris Forbes [Mon, 7 Nov 2016 23:17:12 +0000 (12:17 +1300)]
layers: Adjust doc to describe PV EXTENSION_NOT_ENABLED
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Mon, 7 Nov 2016 19:45:03 +0000 (08:45 +1300)]
layers: Avoid calling functions not produced by the pv codegen
Still need to investigate why the generator doesn't produce everything
it should, but this should be enough to get us going.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Thu, 3 Nov 2016 20:16:04 +0000 (09:16 +1300)]
layers: Fix unused variable breaking android build
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 22:28:19 +0000 (11:28 +1300)]
layers: Move platform entrypoints into main list in PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 21:18:35 +0000 (10:18 +1300)]
layers: Do extension checks for KHR_display in PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 21:18:18 +0000 (10:18 +1300)]
layers: Add tracking for VK_KHR_display extension in PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 21:15:31 +0000 (10:15 +1300)]
layers: Move display swapchain entrypoint into main block
This used to be separate because the FPs were only conditionally
returned. Now we always return them.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 20:53:59 +0000 (09:53 +1300)]
layers: s/skip_call/skip/ in PV
V2: slight tweak for upstream change to PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 20:51:48 +0000 (09:51 +1300)]
layers: Introduce require_instance_extension in PV
More noise going away.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 20:29:52 +0000 (09:29 +1300)]
layers: Introduce require_device_extension function in PV
This gets rid of a bit of redundancy.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 05:34:25 +0000 (18:34 +1300)]
layers: Move swapchain and surface extension enable checks to PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 04:56:50 +0000 (17:56 +1300)]
layers: Use uniform initialization better in PV::layer_data
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 04:54:21 +0000 (17:54 +1300)]
layers: Rename device ext flags to match extensions in PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 04:43:34 +0000 (17:43 +1300)]
layers: Move enable checks for KHR_surface to PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 04:36:42 +0000 (17:36 +1300)]
layers: Rename ambiguous 'wsi_enabled' to 'surface_enabled' in PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 04:32:51 +0000 (17:32 +1300)]
layers: Remove dead plumbing for platform extension enables
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 03:58:15 +0000 (16:58 +1300)]
layers: Move platform WSI extension checks from swapchain to PV
We want to do all extension checks in PV-- we'll return a good FP for
anything we recognize, and complain upfront if the appropriate extension
wasn't enabled.
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 03:21:28 +0000 (16:21 +1300)]
layers: Remove mdd() from PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Chris Forbes [Wed, 2 Nov 2016 03:13:01 +0000 (16:13 +1300)]
layers: Remove one remaining use of mid() in PV
Signed-off-by: Chris Forbes <chrisforbes@google.com>
Tobin Ehlis [Thu, 3 Nov 2016 16:46:44 +0000 (10:46 -0600)]
layers:Handle secondary cmd buffer transitions
When recording a secondary command buffer into a primary command buffer
record any image layout transitions from the secondary cb into the
primary cb.
At QueueSubmit time we validate the layouts at the primary cmd buffer
level so this change will allow that code to correctly work if
layout transitions occur in the secondary command buffer.
Tobin Ehlis [Thu, 3 Nov 2016 13:26:28 +0000 (07:26 -0600)]
layers:Set framebuffer for secondary cmd buffer
If a secondary cmd buffer is inheriting state, need to update the
activeFramebuffer in same way we update active renderPass and subpass.
Mark Young [Thu, 3 Nov 2016 20:27:13 +0000 (14:27 -0600)]
loader: Rename icd and physical device vars
Clean up the names of the icd and physical device structs, lists, and
variables used throughout the loader. Before, it was hard to tell where
the item was to be used appropriately. Now, the names include a hint as
to where they are expected to be allocated, freed, and used.
Also, fixed a bug where we were using a trampoline item in a terminator
function, which caused issues. Thanks to Piers @ Nvidia for discovering
this.
Change-Id: If98628a5496e9f645eff94b73e80ae7f8408f7b4
Karl Schultz [Thu, 3 Nov 2016 18:31:41 +0000 (12:31 -0600)]
layers: GH1115 Add missing VK_LAYER_EXPORT decorations
Functions in the vk_layer_extension_utils file were
not getting exported correctly.
Change-Id: If1bf6456cb8e79a1b6292ea76bd72e3e89a2b430
Mark Lobodzinski [Wed, 2 Nov 2016 21:49:08 +0000 (15:49 -0600)]
loader: Remove vk-loader-generate.py
Loader-specific version of this script was unnecessary. Moved this
functionality into vk-generate.py.
Change-Id: I2f2b7de7a6fdf368d3090c587f7fe78c31176a85
Mark Lobodzinski [Wed, 2 Nov 2016 21:43:04 +0000 (15:43 -0600)]
loader: Use vk-generate.py instead of loader version
Modify cmake to use non-loader-specific script.
Change-Id: Ibe1008badc9380fa399daf207e57438114d0b1e0
Mark Lobodzinski [Wed, 2 Nov 2016 21:25:26 +0000 (15:25 -0600)]
scripts: Extend vk-generate for 'all' parameter
A different script is used to generate the loader's windows
def file (loader\vk-loader-generate.py). Added the ability for the
main script to also create the loader's def file.
Change-Id: Ib5caaefe85f84489e3a9f70e20104c27f070c0e8
Tobin Ehlis [Mon, 31 Oct 2016 19:27:36 +0000 (13:27 -0600)]
scripts:Initial version of validation stats script
Adding vk_validation_stat.py script to display validation stats.
It parses the database file, unique enum header, source, and testfiles
and reports on the total number of checks and any discrepancies between
the database file and what's actually implemented.
Karl Schultz [Wed, 2 Nov 2016 19:50:35 +0000 (13:50 -0600)]
docs: Remove references to "this repo"
Remove references to "this repository" in the loader and layers design doc since this file can appear on web sites, etc.
Mike Weiblen [Mon, 31 Oct 2016 17:05:56 +0000 (11:05 -0600)]
layers: GH934 Bounds checking on SetScissor
Change-Id: I3b14cc79f851eb66401da659cb0dade9888d84a8
Mark Young [Wed, 2 Nov 2016 15:37:08 +0000 (09:37 -0600)]
loader: Fix icd reference in WSI code
Piers Daniell (Nvidia) found a nasty bug where the loader code
was incorrectly incrementing through the ICDs as if the list was
an array. This may fix some multi-GPU issues he has found.
Change-Id: I42dd4a153c3226ac36b82f4cda8ad21bea8b2f66