aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-11-17layers:Check all memory bindingsTobin Ehlis
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.
2016-11-17layers:Check buffer offset against required sizeTobin Ehlis
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.
2016-11-17layers:Save memory requirementsTobin Ehlis
Add memory requirements member to the BINDABLE class and save memory requirements for images and buffers in their respective Get*MemoryRequirements() functions.
2016-11-17codegen: change script to handle NV ext structsDavid Pinedo
Modified vk_helper.py to handle NV-specific structures
2016-11-17layers: GH949, Fix ObjTrkr to destroy NULL handlesMark Lobodzinski
ObjectTracker emitted errors when a destroy/free call was made with VK_NULL_HANDLE, which *is* allowed by the spec. Change-Id: I2b4e19999e539d68b5856139566d4a7a8a530ca6
2016-11-17layers:Fix descriptor dynamic offset handlingTobin Ehlis
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.
2016-11-17Revert "layers: Update vulkan.py with new extensions"Mark Lobodzinski
This reverts commit f504ff6e45bb15a0517a8de2e2d75e90df7e4627. This caused huge issues in the VulkanTools repo, reverting for now.
2016-11-17layers: Update vulkan.py with new extensionsMark Lobodzinski
Change-Id: I1b0623587d7d02849ece97de00ddb1c6bad58819
2016-11-17header: Update header files to version 1.0.33Mark Lobodzinski
- Updated vulkan.h - Updated vk.xml - updated windows/linux *.json files - updated Linux SOVERSION - updated vulkan.hpp Change-Id: I8128a610d1cd24a1ac49712f28d566f712f4cc94
2016-11-16docs: add libxkbcommon dependency (Keyboard handling)Rene Lindsay
2016-11-16layers: Update error enum databaseMark Lobodzinski
Updated status for new MappedMemoryRanges device limits checks. Change-Id: Id5e1973fa2b7d798abfa3e54f751b69c1b29f2d1
2016-11-16layers: GH329, Add MappedMemoryRanges limits checksMark Lobodzinski
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
2016-11-16layers: Fixup MappedMemRanges call orderingMark Lobodzinski
Moved validation out of API calls. Change-Id: I95f3b24d69d469ea98b7c955bbab56c9b47ad487
2016-11-16layers: Fixup MappedMemory variable names for styleMark Lobodzinski
Change-Id: I4f8aae213753dc69ae28a945d7f34cff2af7ccd9
2016-11-16layers: Fixup validateMemoryIsMapped for styleMark Lobodzinski
Var names. Change-Id: I69b441f986c017f2d34a62669c8b3e7511a2dd5f
2016-11-16layers: Update ValidateMemIsMapped error enumsMark Lobodzinski
Plumbed in VU error enums, updated tests and database. Change-Id: I114d269c686cddd6b1d3acb098d0b2f5fe4fdc17
2016-11-16layers: Updated error database for new checkMark Lobodzinski
Vertex attribute formats, 1413. Change-Id: Ieddd05c0f40a643db074ade79659f9c09699c436
2016-11-16layers: GH1143, Validate vertex attribute formatsMark Lobodzinski
Formats specified as vertex attributes (createGraphicsPipelines-> pCreateInfos->pVertexInputState->pVertexAttributeDescriptions.format) must have the VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT set. Change-Id: I907c37e2edbcfb7bcb405f912cea8d215acccb11
2016-11-16layers: Save PDev in device's layer dataMark Lobodzinski
Needed for physical-device calls or to access data belonging to the physical device. Change-Id: I2a1f6eadcaf82c2247a68c91c39d97ef3284b22a
2016-11-16layers: Update CGP var names for styleMark Lobodzinski
Changed CreateGraphicsPipeline local vars to match style guidelines. Change-Id: I3204ce878b37ef3cb0ce58ecff00d65a4fed4f28
2016-11-16layers: Move val to PreCallCreateGraphicsPipelinesMark Lobodzinski
In core validation, created a pre-call function and moved the validation calls into it. Change-Id: Ib7831c3d2f36628e24b90083be902ac724f25483
2016-11-16layers: Remove verifyPipeLlineCreateState unused parmMark Lobodzinski
Core-validation, device was unused. Change-Id: Ia02ff0a3c9ce85c69b175c3e80b101dd2ddc8214
2016-11-16layers: update valid usageJeremy Hayes
Change-Id: Ia46300db1e9140e0547c3e089cef17f774b44cf3
2016-11-15demos: Enable building combinations of xcb and xlibTony Barbour
Change-Id: I055c12e8c93d05db747239df46611386eb8b8278
2016-11-15scripts:Update unique error enums as of 11/15/16Tobin Ehlis
2 new checks and 1 deleted check. Cmd line was "python spec.py -update"
2016-11-15demos: Fix compiler warning in smoketestjoey-lunarg
Replaced snprintf with stringstream.
2016-11-14layers: gh125 Add check for memory obj max countKarl Schultz
Fixes #125 Change-Id: I1b0b4eb2894494dc6df9c8dd1beab6f3645a707c
2016-11-14android: Add default core count in case ncpus not availableCody Northrop
2016-11-14layers: GH1141, Fix host-bit/PREINITIALIZED warningqnope
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
2016-11-14android: Move external under build-androidCody Northrop
2016-11-14android: Build toolchain with more coresCody Northrop
2016-11-14android: Pull known good toolchain versionsCody Northrop
This includes pulling libSPIRV-Tools-opt into the build to satisfy new shaderc revision.
2016-11-14loader: Fix pointer dereference issue.Mark Young
I was setting a value after the object containing it was deleted. Change-Id: I8c41d454d3f9c89144e876c5b9feaf32af6e2500
2016-11-14vulkaninfo: Fix unused label err for WindowsKarl Schultz
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
2016-11-14loader: gh1120/gh1134 - Object wrapping issuesMark Young
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
2016-11-14vulkaninfo: fix segfault when DISPLAY is not setAwais Belal
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>
2016-11-14layers: GH321, vkAllocateMemory return code handlingMark Lobodzinski
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
2016-11-14layers: Add null checks to RetireWorkOnQueueMark Lobodzinski
API misuse was causing invalid object dereferences and crashes. Change-Id: I81ff28b029b984a106a6c60063810e61a07cb945
2016-11-11loader: Fix failure on ICD loadingMark Young
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
2016-11-11layers: Enable destroy_msg_callback dbg msgsMark Lobodzinski
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
2016-11-11layers: GH1129, Fix debug report flagsMark Lobodzinski
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
2016-11-11external: Update glslang and spirv-tools revisionsMark Young
Change-Id: I8eec3ac1a1dedc14fac79ba47a10998842a8ffe4
2016-11-11demos: Call DeviceWaitIdle before DestroyDeviceTony Barbour
Complying with best practice from Vulkan Programming Guide page 31 - Shutting Down Cleanly Change-Id: I19640071d26f765ffc0a2f5e5fc4d60920395e0b
2016-11-10winsdk: Fix missing file extension in runtimeLenny Komow
Change-Id: I251663fb2932823d387af11e94bcd1e2586e0772
2016-11-10demos: fix gcc warningJeremy Hayes
Change-Id: I9f4371334bf958bb01e89621008b6e569002d9a1
2016-11-10layers: update valid usageJeremy Hayes
Change-Id: Id7556ddc1be59ee7fe5ab9273257cbc399724a3e
2016-11-10demos: Fix argument consistency for smoketestjoey-lunarg
All arguments now have double-dashes Change-Id: I19548d60a008cc259326efb1b62b6fd9d3bbdd70
2016-11-10demos: Add testing features for smokejoey-lunarg
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
2016-11-10demos: Add Game class file for smokejoey-lunarg
Change-Id: I385f8fd0676f665b1d774f38767b5691ddae6f7a
2016-11-09layers: GH1092 sync CreateGraphicsPipeline enumsMike Weiblen
Update enum error database with status of implemented checks inside CreateGraphicsPipeline(). Change-Id: Ie74b51cb65db7c8bff5e40c90617781269bc95a9