Shannon McPherson [Thu, 29 Mar 2018 17:38:06 +0000 (11:38 -0600)]
demos: Fix format of conditionals
Change-Id: I6c9d5d089107cb8f616084e59c0eb3f002ef2688
John Zulauf [Wed, 28 Mar 2018 15:55:03 +0000 (09:55 -0600)]
layers: Correct non-dispatchable type handling
Update threading layer non-dispatchable type handling to reflect updates
to the vulkan header for Linux/x32 memory model support. Includes new
static asserts to detect future mismatches.
Change-Id: Ieb1ae335978cf43083b4a17634d06cd7066ed144
John Zulauf [Sun, 25 Mar 2018 01:52:19 +0000 (19:52 -0600)]
layers: Eliminate false positive on ownership xfer
Add logic that correctly ignores the src(dst)StageMask for barrier
operations that are resource acquire(release) operations. When barrier
operations transfer ownership they envitably run on two different queue
families which may have incompatible capabilities. For release
operations dstStageMask should be ignored. For acquire operations the
srcStageMask should be.
Note: this can only be done if *all* operations for a barrier command
are of one type, as the *StageMasks are specified at the command level.
Change-Id: I6c238ab121eaa1230e66716120d37204740408d6
Chris Forbes [Mon, 21 Aug 2017 18:27:08 +0000 (11:27 -0700)]
layers: Skip layout transition in release op
Chris Forbes [Fri, 18 Aug 2017 22:00:48 +0000 (15:00 -0700)]
layers: Avoid a redundant CB lookup
Lenny Komow [Thu, 29 Mar 2018 19:25:38 +0000 (13:25 -0600)]
loader: Fix GetDeviceProcAddr with terminators
Fix a bug where vkGetDeviceProcAddr would return a valid pointer for
any device command that used a custom terminator, even if it was part
of an extension which wasn't enabled
Change-Id: I3b088fe0c850fbaa5f7285ced81552273bc38e7e
Mike Schuchardt [Thu, 29 Mar 2018 16:12:04 +0000 (10:12 -0600)]
tests: macOS CMake fixes for Xcode generator
Put icd and test layer json files in $<CONFIG> directory when using
Xcode generator so layer tests can be executed and debugged from within
Xcode.
Change-Id: I079a89ea065ddeec98ce95766e284220c67b1859
Lenny Komow [Wed, 28 Mar 2018 20:31:32 +0000 (14:31 -0600)]
loader: Make assembly offsets use offsetof macro
Change-Id: I52d749e51e38b321d4fab4e0288c055ccdefe66f
Mark Lobodzinski [Wed, 28 Mar 2018 20:24:46 +0000 (14:24 -0600)]
layers: Fix DestDescPool data race
Data was destroyed after the down-chain call, which left the
possibility that before the items could be removed from the data
structure that they might be reused which would corrupt validation.
Fixed by destroying inside the lock before the down-chain call.
Change-Id: Icbc994ef043a1108c84474879617d4ada694b74b
Mark Lobodzinski [Wed, 28 Mar 2018 20:20:07 +0000 (14:20 -0600)]
layers: Remove unnecessary destCmdPool null check
Change-Id: I69bb77b1874fa2148ab7902e71e57a15589ba684
Francois Duranleau [Tue, 27 Mar 2018 18:42:24 +0000 (14:42 -0400)]
layers: Fix command buffer allocation ABA bug
In core validation layer's DestroyCommandPool API entry function, the
ext layer's API call is executed outside of the lock, and before the
command pool's command buffers are erased from the layer's command
buffer map. That means that between next layer's call and the time the
lock is regained, any other thread can allocate other command buffers.
In particular, it may reuse the memory freed the command, and then the
core validation layer will not insert a new entry in the command buffer
map. So after the lock in regained and the command pool's command
buffers are erased from the map, leaving those allocated with no state,
leading to either crashes or assertions later on. The fix is to move the
release of command buffers before releasing the lock the first, before
calling the next layer's function, such that they will be removed from
the map before any other thread might reuse those addresses.
Mark Young [Wed, 21 Mar 2018 19:35:34 +0000 (13:35 -0600)]
layers: Fix gh #2504 and compiler warnings
Remove extraneous objecgt info from the validation logging message.
Extra object logging was added accidentally in my change to
incorporate VK_EXT_debug_utils.
Fix output of Debug Utils messenger output for validation layers
to list individual objects.
Also, fixed a few compiler warnings that were appearing on Linux.
Change-Id: I043d7f734683dfa79fe7a26a5973975bde011cce
Mark Lobodzinski [Tue, 27 Mar 2018 21:31:16 +0000 (15:31 -0600)]
build: Add submodule init to update externals scripts
Change-Id: I78e35a0daaa5a62e432858861378543d412a77c7
Mark Lobodzinski [Tue, 27 Mar 2018 20:53:16 +0000 (14:53 -0600)]
build: Add gtest as a submodule
Change-Id: I9a5c440bd81f48afd24961a52595d0ca995cb7bf
Lenny Komow [Mon, 12 Mar 2018 23:53:17 +0000 (17:53 -0600)]
loader: Fix up missing 1.1 function exports
mchock-nv [Sat, 10 Mar 2018 00:59:15 +0000 (16:59 -0800)]
loader: Add missing core entrypoints to trampoline.c
The entrypoints associated with VK_KHR_descriptor_update_template didn't
make it into the trampoline file when the extension was promoted to
core. This change adds them.
See Issue #2476
Change-Id: I676720ae152f78fbb16cda93e92cd8ced0446e03
Mike Schuchardt [Tue, 27 Mar 2018 20:13:24 +0000 (14:13 -0600)]
scripts: Remove noisy debug in codegen
Mike Schuchardt [Mon, 26 Mar 2018 19:14:25 +0000 (13:14 -0600)]
icd: Add json file for running on macOS
Dave Houlton [Mon, 26 Mar 2018 23:08:30 +0000 (17:08 -0600)]
layers: fix copyimage checks broken by spec change
Changes to 'core' spec between 1.0.68 and .71 split some CmdCopyImage
VUIDs into two. This updates the existing checks/tests and adds test
coverage for the new VUIDs.
Change-Id: I9efd0de2c830dca5b7214168d5339bf2fd9fdf08
Chris Forbes [Fri, 23 Mar 2018 04:13:46 +0000 (21:13 -0700)]
Validate line width for topology reaching rasterizer rather than input
Mark Lobodzinski [Mon, 26 Mar 2018 21:31:25 +0000 (15:31 -0600)]
layers: Fix CV typo in error message
GH issue #2511 -- FrameBuffer->Framebuffer.
Change-Id: Ic8de4604a7615708df9f55d5f0f0d0d7724a5d6d
Mark Lobodzinski [Tue, 20 Mar 2018 19:44:19 +0000 (13:44 -0600)]
header: Update to version 1.1.71 of the Vulkan hdr
- updated vulkan_core.h
- updated vulkan-android.h
- updated vk.xml
- updated validusage.json
- updated layer json files
- updated vulkan.hpp
- updated vuid_mapping.py
- marked 27 VUIDs as complete
Change-Id: Ia5abee76e5346b3a1b769664033d91403946f7a9
Mark Lobodzinski [Sat, 24 Mar 2018 19:24:18 +0000 (13:24 -0600)]
scripts: Fix safe_struct Android versioning issue
The VK_ANDROID_external_memory_android_hardware_buffer extension uses
an android structure that is undefined before android 'O'. Worked around
this issue by defining a dummy structure for earlier android OS versions.
Change-Id: If515920d3b1707cbeb6a0377827c680d93d516ff
Jeremy Kniager [Mon, 26 Mar 2018 19:33:19 +0000 (13:33 -0600)]
docs: Move vkjson_info section from BUILD.md
Moved the vkjson_info section from the Android
usage section in BUILD.md to its own file
libs/vkjson/README.md
Change-Id: I80ea8762c78e76fae43d2ca07820f46f7aef4c0c
Jeremy Kniager [Fri, 23 Mar 2018 18:01:12 +0000 (12:01 -0600)]
docs: Move documentation to repos
Moved the following documentation from
LunarHub-Docs to LVL:
api_dump_layer.md
core_validation_layer.md
object_tracker_layer.md
parameter_validation_layer.md
threading_layer.md
unique_objects_layer.md
Change-Id: I448aaec1081f25468d115477748415e1a612d719
Chris Forbes [Wed, 14 Mar 2018 16:28:35 +0000 (09:28 -0700)]
layers: Consider storage block using new storage class to be a writable descriptor
Shannon McPherson [Wed, 21 Feb 2018 18:41:11 +0000 (11:41 -0700)]
demos: Remove logo absolute path
Change-Id: I3949187010ddd870e4f4535b8a1d247b84cac96d
Petr Kraus [Wed, 14 Mar 2018 18:58:16 +0000 (19:58 +0100)]
tests: Update and complete VkImage creation tests
Petr Kraus [Tue, 13 Mar 2018 11:31:39 +0000 (12:31 +0100)]
layers: Move sparseBinding feature vs flag check
Petr Kraus [Tue, 13 Mar 2018 11:31:27 +0000 (12:31 +0100)]
layers: Check CUBE to have 6+ layers
Petr Kraus [Tue, 13 Mar 2018 11:31:08 +0000 (12:31 +0100)]
layers: Fix 1D height and depth extent check
Liam Middlebrook [Mon, 19 Mar 2018 19:28:04 +0000 (12:28 -0700)]
layers: Fix Superfluous inttypes.h Includes
The files that explicitly include <inttypes.h> are C++ files. The
convention for including C header files in C++ programs is to use a
special C++ header file that wraps the C header file. For example
<inttypes.h> would be included as <cinttypes>.
In vk_layer_logging.h:34 <cinttypes> is included.
In buffer_validation.cpp and parameter_validation_utils.cpp
"vk_layer_logging.h" is directly included.
In core_validation.cpp "vk_layer_logging.h" is indirectly included via
core_validation.h
This change removes the invalid and superfluous use of C header files
from the aforementioned C++ files.
Change-Id: I1bed9ea4bf6c3bb98ac5ae05ad227c0da58acb2c
Reviewed-by: dkoch
Reviewed-by: ddadap
James Le Cuirot [Thu, 15 Mar 2018 22:25:19 +0000 (22:25 +0000)]
build: Don't require glslang if not building layers
John Zulauf [Mon, 5 Mar 2018 17:36:21 +0000 (10:36 -0700)]
layers: Update CmdPushConstant Valid Usages
Updated the core validation layer and matching units to reflect changes
to the valid usage statements in the Vulkan specification to better
support the use of overlapping push constant ranges. The following
valid usage was removed from the specification and the core validation
layer.
VUID-vkCmdPushConstants-stageFlags-00367 VALIDATION_ERROR_1bc002de
Two new valid usages have been added to the core validation layer.
VALIDATION_ERROR_1bc00e06 VUID-vkCmdPushConstants-offset-01795
VALIDATION_ERROR_1bc00e08 VUID-vkCmdPushConstants-offset-01796
The individual unit tests within the larger InvalidPushConstants test
case have been updated to reflect the changes to the valid usage checks.
Change-Id: I9bba3efa19f96c52e82b328bee64f8f2fbb10342
John Zulauf [Fri, 16 Mar 2018 17:52:57 +0000 (11:52 -0600)]
layers: Add alias support to kVulkanObjectTypes
Updated vk_object_types.h generation to correctly handle promoted and
alias handle types.
Change-Id: I3d655b0f408a6cee08bf3d1ce453d9c5aac61376
John Zulauf [Mon, 12 Mar 2018 21:48:06 +0000 (15:48 -0600)]
layers: Fix enum cross reference to handle missing
Modify enum cross reference table creation to handle missing items from
VK_DEBUG_REPORT_OBJECT_TYPE_ list, as it is no longer being updated.
Change-Id: I112a08f82249c446757495309699c80fe7094635
Gabríel Arthúr Pétursson [Sun, 18 Mar 2018 01:50:54 +0000 (01:50 +0000)]
layers: Fix memleak of instance object in object tracker layer
CreateInstance calls CreateObject for the instance. There was no
corresponding DestroyObject in DestroyInstance.
Gabríel Arthúr Pétursson [Sun, 18 Mar 2018 17:34:01 +0000 (17:34 +0000)]
layers: Fix incorrect generation of get_debug_report_enum
There is no corresponding DebugReportObjectType enum for
kVulkanObjectTypeDebugUtilsMessengerEXT, so map it to the unknown type.
The generation script skipped over this enum, causing buffer overflow
faults in the VkLayerTest.ValidationCacheTestBadMerge test.
Gabríel Arthúr Pétursson [Sun, 18 Mar 2018 20:21:11 +0000 (20:21 +0000)]
layers: Fix allocator mismatch in unwrapped extension structs chain
The safe_* structs are allocated using C++'s new allocator in
CreateUnwrappedExtensionStructs, but were freed using free().
This mismatch is undefined behavior.
Fix by having FreeUnwrappedExtensionStructs call delete on the correct
safe class.
Mark Lobodzinski [Fri, 16 Mar 2018 20:20:58 +0000 (14:20 -0600)]
layers: Fix queue bits for CmdWriteTimeStamp
Transfer queue is called out but was omitted. Verified all other
Cmd queue flag cases as well.
Change-Id: I8fdb1385326d9862407f7b5c426c2b6bdb4f663e
Tobin Ehlis [Fri, 16 Mar 2018 13:54:24 +0000 (07:54 -0600)]
layers:Check for descriptor with invalid sampler
Fixes #2485
Verify that a descriptor's sampler is still valid at draw time. We had
a validation hole here where we missed this case if the sampler was
destroyed before the related descriptor was bound to a cmd buffer. This
plugs that hole by making sure all sampler descriptors used at draw
time still have a valid sampler.
Mark Lobodzinski [Thu, 8 Mar 2018 21:25:05 +0000 (14:25 -0700)]
scripts: Remove helper-generator struct_size source
This was unused in this repository.
Change-Id: I3e3375139cf2718e4aff4ee2237bc1d756cd0205
Mark Lobodzinski [Thu, 8 Mar 2018 21:24:33 +0000 (14:24 -0700)]
scripts: Remove lvl_genvk.py struct_size defs
Change-Id: I8a26ef87ab3a15fb582258e11841abc87f107e9f
Mark Lobodzinski [Thu, 8 Mar 2018 21:29:38 +0000 (14:29 -0700)]
android: Removed building of struct_size helpers
Change-Id: I2e3fee12a8b25f5ae3251687b64d7359a6572db6
Mark Lobodzinski [Thu, 8 Mar 2018 21:07:22 +0000 (14:07 -0700)]
layers: Removed build of struct_size helpers
These are no longer used in this repository.
Change-Id: I07c5402d3e7f9b4578eabe274d0e7b6b76ca6186
Tobin Ehlis [Mon, 12 Mar 2018 17:26:39 +0000 (11:26 -0600)]
layers:Check secondary command buffer renderArea
Fixes #2480
Fixes #1501
Add delayed function call to verify secondary command buffer renderArea
against vkCmdClearAttachments() rects at vkCmdExecuteCommands() time.
Updated the lambda function container for delayed secondary command
buffer checks to include a reference to the primary command buffer.
Add lambda call at vkCmdClearAttachments() for secondary command buffer
and pass in primary command buffer reference so that area restriction
can be appropriately checked at vkCmdExecuteCommands() time when
renderArea of renderPass is known.
Tobin Ehlis [Mon, 12 Mar 2018 14:19:33 +0000 (08:19 -0600)]
layers:Consistent parens for function names
Add "()" where missing on a couple of output strings for
vkCmdClearAttachments function.
Petr Kraus [Wed, 14 Mar 2018 18:53:58 +0000 (19:53 +0100)]
layers: Downgrade maxResourceSize check to warning
Petr Kraus [Sat, 10 Mar 2018 01:39:47 +0000 (02:39 +0100)]
layers: Update VkViewport check to 1.1
Lenny Komow [Fri, 9 Mar 2018 17:18:32 +0000 (10:18 -0700)]
loader: Remove old declaration for KHX extension
Mike Schuchardt [Fri, 9 Mar 2018 16:02:56 +0000 (09:02 -0700)]
scripts: helper_file_generator.py cleanup
- Remove list as set anti-pattern
- Remove conditional that could never evaluate to False
Mike Schuchardt [Fri, 9 Mar 2018 15:39:43 +0000 (08:39 -0700)]
scripts: Merge upstream verbosity changes
From Vulkan-Docs /src/spec/genvk.py
Mike Schuchardt [Thu, 8 Mar 2018 19:57:02 +0000 (12:57 -0700)]
demos: Fix cube build on android
- Add generated files to include path
- Use messageSeverity to determine android log priority
- Prefix ANativeWindow with struct to match vulkan_android.h
Change-Id: I1c29c41a95614701455074cdf7be49f47505a0fc
Mike Schuchardt [Wed, 7 Mar 2018 23:19:13 +0000 (16:19 -0700)]
header: 1.1.70 update
Change-Id: Ifa07a957e3c0e51c9b5c00b6c9d7fff04905c8ab
David Pinedo [Wed, 28 Feb 2018 23:20:42 +0000 (16:20 -0700)]
scripts: Roundup strings sizes in struct to multiple of 4
vktrace layer needs strings sizes to be multiple of 4 for
data alignment in the trace file.
Mark Lobodzinski [Thu, 1 Mar 2018 15:50:21 +0000 (08:50 -0700)]
layers: Fix CmdDispatchBaseKHX rename in PV
Mark Lobodzinski [Wed, 28 Feb 2018 21:04:56 +0000 (14:04 -0700)]
layers: Update unique_objects changes for 1.1
Mark Lobodzinski [Wed, 28 Feb 2018 20:38:45 +0000 (13:38 -0700)]
layers: Make unique_objects ID map global
Increasingly, instance objects are referenced by device-level APIs.
Made unique ID map global, shared across all instances and devices.
Change-Id: I5b62e7b95ec25a2a8b390d46024b43c29f2199ce
Mike Schuchardt [Wed, 28 Feb 2018 21:24:26 +0000 (14:24 -0700)]
scripts: Remove unreleased extension names
Change-Id: Ia0270edcd17a8b8a33e390f781b7357208e7a676
Lenny Komow [Mon, 26 Feb 2018 22:29:58 +0000 (15:29 -0700)]
build: Avoid using CMAKE_BINARY_DIR
Using CMAKE_BINARY_DIR was breaking the use of this repo as a
submodule because the top level binary directory is different when
build as part of another repo.
Mike Schuchardt [Fri, 23 Feb 2018 22:29:23 +0000 (15:29 -0700)]
layers: Fix typo in CV downchain call
Change-Id: I8d7ecbb1f4e63b9c4bc1ee9b53ea65c34fb2352d
Lenny Komow [Fri, 23 Feb 2018 23:18:36 +0000 (16:18 -0700)]
demos: Fix cube note building on windows
Mike Schuchardt [Fri, 23 Feb 2018 21:14:28 +0000 (14:14 -0700)]
layers: Add remaining core_validation aliases
vkBindBufferMemory2
vkGetBufferMemoryRequirements2
vkGetImageMemoryRequirements2
vkGetImageSparseMemoryRequirements2
vkGetPhysicalDeviceSparseImageFormatProperties2
vkBindImageMemory2
Change-Id: I1fb1a476e680c2d601a9b72029358b8b42950ed1
Mike Schuchardt [Fri, 23 Feb 2018 19:44:05 +0000 (12:44 -0700)]
demos: Fix compile error in cube.c
Change-Id: I9ff2429f6f2b79795bbc57e376decae8c0dae630
Mark Young [Wed, 21 Feb 2018 22:30:27 +0000 (15:30 -0700)]
helper: Fix compilation warning
Adding vk_enum_string_helper.h produced a warning that
GetPhysDevFeatureString was unused. Made it inline (as all
the other commands are in that header) and it made the compiler
happy.
Change-Id: I9452ddfc8de4af4c88b95e380b9520d9f59796da
Mark Young [Wed, 21 Feb 2018 22:29:41 +0000 (15:29 -0700)]
cube: Use string_VkObjectType
Use the existing string_VkObjectType utility found in
vk_enum_string_helper.h instead of the manually defined
DebugAnnotObjectToString function.
Change-Id: I9e9ecfc1c512ec1b9b98cce2f846c565ac98ecbf
Mark Young [Fri, 10 Nov 2017 17:05:14 +0000 (10:05 -0700)]
cube: Update to use VK_EXT_debug_utils
Update cube to use VK_EXT_debug_utils instead of
VK_EXT_debug_report.
Change-Id: I238072855abdf09c9d33a66b3a7cc0beecc0e8c7
Mike Schuchardt [Thu, 22 Feb 2018 17:46:31 +0000 (10:46 -0700)]
layers: Update VUIDs for 1.1
- Add new VUIDs to database and vuid_mapping.py
- Remove deleted VUIDs from database
- Update vuid_mapping.py to disregard KHR/KHX suffix
- Update spec.py json comparison to update more fields from existing
VUIDs and delete entries for removed VUIDs
- Update layers and tests that were pointing to deleted VUIDs to use
replacements
- Revert vuid_mapping.py and run_all_tests.sh workarounds for undefined
private VUIDs
Change-Id: Ie6c5b01237d5917be66a35337e3dbaf42fea3b00
Lenny Komow [Fri, 23 Feb 2018 18:28:38 +0000 (11:28 -0700)]
Revert "loader: Only return ext pointers if ext is enabled"
This reverts commit
4537090525b430e2bc059cc59c7de3c80a7e7e6e.
Lenny Komow [Thu, 22 Feb 2018 20:05:55 +0000 (13:05 -0700)]
layers: Bump layer json files to 1.1.69
Lenny Komow [Thu, 22 Feb 2018 18:54:18 +0000 (11:54 -0700)]
loader: Fix debug_report not returning NULL
Fix a bug where debug_report would be treated as an unknown extension
if it was used without being enabled.
Lenny Komow [Thu, 22 Feb 2018 18:28:16 +0000 (11:28 -0700)]
loader: Only return ext pointers if ext is enabled
The loader previously returned valid pointers to functions from
VK_KHR_swapchain and VK_KHR_display_swapchain even if the extensions
weren't enabled. This change fixed that.
Mike Schuchardt [Wed, 21 Feb 2018 22:59:17 +0000 (15:59 -0700)]
header: Update to 1.1.69 private header
Change-Id: If9fc0f065f77ecff14123f665e603e6f2595d571
Yiwei Zhang [Wed, 14 Feb 2018 22:39:46 +0000 (14:39 -0800)]
layers: add GetDeviceQueue2() support
This change add GetDeviceQueue2() support to object tracker and core
validation layers.
Lenny Komow [Thu, 15 Feb 2018 18:35:59 +0000 (11:35 -0700)]
layers: Fix wrong format specifier in layer log
Lenny Komow [Wed, 14 Feb 2018 00:35:28 +0000 (17:35 -0700)]
loader: Fix MSVC uninitialize variable warning
Lenny Komow [Tue, 13 Feb 2018 22:58:47 +0000 (15:58 -0700)]
loader: Extend pre-instance intercepts for 1.1
Add the ability to intercept vkEnumerateInstanceVersion through the
pre-instance intercept mechanism
Mike Schuchardt [Wed, 7 Feb 2018 21:47:01 +0000 (14:47 -0700)]
scripts: Fix xlib_xrandr platform name
Change-Id: I3aa8e929d394322ebfcfbf2a59846b2adae057e3
Mike Schuchardt [Tue, 6 Feb 2018 23:56:31 +0000 (16:56 -0700)]
Device group extension rename
VK_KHX_device_group/VK_KHX_device_group_creation are now KHR
Change-Id: I2ade2e7162718a4683c9365ae177891285f177b4
Mike Schuchardt [Thu, 28 Dec 2017 18:23:48 +0000 (11:23 -0700)]
scripts: Update codegen to work with new aliasing
Change-Id: I3739f7b7b6eb17a5e3e1bc9cc18e74569cb50f95
Tom Cooper [Thu, 25 Jan 2018 14:07:53 +0000 (14:07 +0000)]
Fix vkGetDeviceQueue2 segfault when returned vkQueue is VK_NULL_HANDLE
This affects the Loader.
Change-Id: I05a3feb87781be773f30327601a2bf86a53ae115
Mark Young [Thu, 9 Nov 2017 17:37:04 +0000 (10:37 -0700)]
Implement initial VK_EXT_debug_utils changes
This affects the loader, scripts, and layers and introduces the
changes to support the VK_EXT_debug_utils extension.
Change-Id: Ia5336f63e85b00f1e59416c06aacd4ae331fd692
Lenny Komow [Wed, 8 Nov 2017 22:11:00 +0000 (15:11 -0700)]
build: Bump linux loader version to 1.1
Lenny Komow [Tue, 7 Nov 2017 18:26:49 +0000 (11:26 -0700)]
docs: Update loader doc for 1.0 ICD handling
The 1.1 loader has to handle 1.0 ICDs specially during instance
creation. This commit documents that behavior.
Lenny Komow [Tue, 7 Nov 2017 17:42:19 +0000 (10:42 -0700)]
loader: Update 1.0 checking mechanism
The loader will now get vkEnumerateInstanceVersion from the ICD by
calling the ICD's GetInstanceProcAddr function.
Lenny Komow [Fri, 3 Nov 2017 20:37:11 +0000 (14:37 -0600)]
loader: Disable emulation for 1.1 core functions
Disable emulation for physical device functions when they are used
as core 1.1. The emulation will still be used if they are used as the
original instance extensions.
Lenny Komow [Fri, 3 Nov 2017 19:14:32 +0000 (13:14 -0600)]
loader: Check vkEnumerateInstanceVersion in ICD
The loader will now check vkEnumerateInstanceVersion in each ICD
before creating an instance to determine if the loader needs to
change the apiVersion field.
Shannon McPherson [Mon, 30 Oct 2017 22:36:40 +0000 (16:36 -0600)]
demos: Update Vulkan Instance Version reporting
Mark Lobodzinski [Fri, 27 Oct 2017 19:22:23 +0000 (13:22 -0600)]
layers: Enable 1.0 exts moved to 1.1 core
Also plumbed api_version into CV and PV for validation and enabling
the appropriate 1.0 extensions by default in 1.1.
Mark Lobodzinski [Wed, 25 Oct 2017 22:41:20 +0000 (16:41 -0600)]
layers: Update core_validation for aliases
Also refactored for pre/post architecture.
CreateDescriptorUpdateTemplate[KHR]
DestroyDescriptorUpdateTemplate[KHR]
UpdateDescriptorSetWithTemplate[KHR]
GetPhysicalDeviceQueueFamilyProperties2[KHR]
EnumeratePhysicalDeviceGroups[KHR]
Mark Lobodzinski [Wed, 25 Oct 2017 22:56:42 +0000 (16:56 -0600)]
layers: Updated unique objects layer for aliases
UpdateDescriptorSetWithTemplate[KHR]
CreateDescriptorUpdateTemplate[KHR]
DestroyDescriptorUpdateTemplate[KHR]
Mark Lobodzinski [Wed, 25 Oct 2017 22:57:04 +0000 (16:57 -0600)]
layers: Updated Object Tracker layer for aliases
GetPhysicalDeviceQueueFamilyProperties2[KHR]
Mark Lobodzinski [Wed, 25 Oct 2017 21:26:28 +0000 (15:26 -0600)]
layers: Handle aliasing in parameter validation
Lenny Komow [Thu, 26 Oct 2017 17:08:27 +0000 (11:08 -0600)]
loader: Remove repeated function from vulkan.def
Lenny Komow [Wed, 25 Oct 2017 21:26:15 +0000 (15:26 -0600)]
loader: Re-add old 1.1 loader work
vkEnumerateInstanceVersion got removed, as did the checks for layer
versions when we rebased off of github. This adds them back in.
Lenny Komow [Wed, 11 Oct 2017 21:39:38 +0000 (15:39 -0600)]
loader: Fix crash in VK_KHR_surface
The VkSurfaceKHR object in vkGetDeviceGroupSurfacePresentModesKHR was
not getting properly unwrapped. As a result, an invalid surface handle
was being passed to the drivers (usually resulting in a crash).
Lenny Komow [Wed, 11 Oct 2017 19:39:33 +0000 (13:39 -0600)]
loader: Fix loader using stale VkApplicationInfo
Fix a bug where the loader could crash because it used a
VkApplicationInfo struct after the struct had gone out of scope.
Lenny Komow [Wed, 11 Oct 2017 15:25:19 +0000 (09:25 -0600)]
loader: Remove version check from vkCreateInstance
Lenny Komow [Wed, 11 Oct 2017 15:20:52 +0000 (09:20 -0600)]
loader: Fix crash with null VkApplicationInfo
Fix a crash when creating an instance where
pCreateInfo->pApplicationInfo is set to null.
Lenny Komow [Tue, 10 Oct 2017 19:50:20 +0000 (13:50 -0600)]
loader: Fix crash in aliased extensions