platform/upstream/Vulkan-Tools.git
22 months agoAdd TIZEN_SUPPPORT_XDG_DECORATION definition 59/276659/1 accepted/tizen_7.0_unified accepted/tizen_7.0_unified_hotfix tizen_7.0 tizen_7.0_hotfix accepted/tizen/7.0/unified/20221110.055908 accepted/tizen/7.0/unified/hotfix/20221116.110558 accepted/tizen/unified/20220623.052339 submit/tizen/20220623.022445 tizen_7.0_m2_release
SooChan Lim [Thu, 23 Jun 2022 02:06:31 +0000 (11:06 +0900)]
Add TIZEN_SUPPPORT_XDG_DECORATION definition

not to build xdg_decoration codes.

Change-Id: I32cd5485d7de480ed61c61d9cc4bb1f50eec52ee

22 months agoRemove the use of xdg_wm_base protocol 58/276658/1
SooChan Lim [Thu, 23 Jun 2022 01:58:57 +0000 (10:58 +0900)]
Remove the use of xdg_wm_base protocol

add TIZEN_SUPPPORT_XDG_WM_BASE definition not to build xdg_wm_base
codes.

Change-Id: I2f0953ec877b1c87bba4dce0e562e043820b59a7

22 months agoRevert "Revert "Revert "spec: armv7hl add to ExcludeArch temporarily""" 76/276276/1 submit/tizen/20220620.061834
Jinbong [Tue, 14 Jun 2022 01:12:34 +0000 (10:12 +0900)]
Revert "Revert "Revert "spec: armv7hl add to ExcludeArch temporarily"""

This reverts commit 5ab0b0a0077d91ca12e3f609f824abbcbf05caac.

Change-Id: Ib52cc18cd03da96b0ed2fc16f18b9bfe6f0d1719

22 months agoRevert "Revert "spec: armv7hl add to ExcludeArch temporarily"" 48/276248/1 accepted/tizen/unified/20220614.093239 submit/tizen/20220613.104856 submit/tizen/20220614.015421
Gwanglim Lee [Mon, 13 Jun 2022 10:43:22 +0000 (19:43 +0900)]
Revert "Revert "spec: armv7hl add to ExcludeArch temporarily""

This reverts commit 31310d81b7ad05a0e97f27d90ba9be12a51e11eb.

Change-Id: I4d149cb5fade35f3d240feaece37728291300339

22 months agoRevert "spec: armv7hl add to ExcludeArch temporarily" 80/276080/1 accepted/tizen/unified/20220610.134734 submit/tizen/20220609.091423
Joonbum Ko [Thu, 9 Jun 2022 09:04:26 +0000 (18:04 +0900)]
Revert "spec: armv7hl add to ExcludeArch temporarily"

This reverts commit d68764be5dd94da586863465467b5836290f9954.

Change-Id: Iacfda452a3aef7467274860d936d2bf335e92df5

22 months agoMerge "Fix build error" into tizen
Joonbum Ko [Thu, 9 Jun 2022 08:52:57 +0000 (08:52 +0000)]
Merge "Fix build error" into tizen

22 months agoFix build error 77/276077/1
Xuelian Bai [Thu, 9 Jun 2022 07:47:04 +0000 (15:47 +0800)]
Fix build error

Fix following error:
/home/abuild/rpmbuild/BUILD/vulkan-tools-1.3.208/cube/
xdg-decoration-client-header.h:79:1: error: unterminated comment

Change-Id: I10fb5f7ed92d37beccaab33a349bae50232b677e
Signed-off-by: Xuelian Bai <xuelian.baiwq@samsung.com>
22 months agospec: armv7hl add to ExcludeArch temporarily 57/276057/1 submit/tizen/20220607.045230 submit/tizen/20220609.070600
Joonbum Ko [Thu, 9 Jun 2022 05:02:37 +0000 (14:02 +0900)]
spec: armv7hl add to ExcludeArch temporarily

 - [TO-DO] : Fix build errors on armv7hl arch and revert this patch

Change-Id: Ie7e7b6b9626c02de34ff119c4f97951a4a2fac3c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoFix vkcube issue 72/274472/4 submit/tizen/20220506.015933 submit/tizen/20220509.032328
Xuelian Bai [Fri, 29 Apr 2022 00:58:05 +0000 (08:58 +0800)]
Fix vkcube issue

xdg-wm-base isn't supported by e20, so replace it by wl_shell

Change-Id: Ic0c84d9ce301ed6c44995ad181318b9a79fdf919
Signed-off-by: Xuelian Bai <xuelian.baiwq@samsung.com>
2 years agoUpgrade to v1.3.208 31/272931/1
Xuelian Bai [Mon, 28 Mar 2022 06:17:48 +0000 (14:17 +0800)]
Upgrade to v1.3.208

Change-Id: I59a7e25b26f42a2fcf43dedd84d982c53e13ede3

2 years agoFix building errors from TV
Xuelian Bai [Thu, 24 Mar 2022 06:06:14 +0000 (14:06 +0800)]
Fix building errors from TV

1. Fix -Werror=shadow in cube.cpp
2. Ignore other errors in vulkaninfo.h

Change-Id: I479267a9582e7786e22f5b04b21e523e7e2e4428
Signed-off-by: Xuelian Bai <xuelian.baiwq@samsung.com>
2 years agobump to 1.2.179
SooChan Lim [Sun, 6 Jun 2021 23:08:37 +0000 (08:08 +0900)]
bump to 1.2.179

Change-Id: I6c381678675343b7980d7bd27ae406220afea829
Signed-off-by: SooChan Lim <sc1.lim@samsung.com>
2 years agoscripts: change time to time_process
SooChan Lim [Tue, 12 Jan 2021 01:18:58 +0000 (10:18 +0900)]
scripts: change time to time_process

It fixes build break due to python upgrade.

Change-Id: I0f354983142e33eb908a23f7f6eb232d63cab040

2 years agoadd the spec file
SooChan Lim [Fri, 30 Nov 2018 05:27:50 +0000 (14:27 +0900)]
add the spec file

2 years agobuild: Update to header 1.3.208 upstream/1.3.208
Mike Schuchardt [Tue, 15 Mar 2022 19:07:50 +0000 (12:07 -0700)]
build: Update to header 1.3.208

- Update known-good
- Generate source

2 years agobuild: Update to header 1.3.207
Mike Schuchardt [Tue, 8 Mar 2022 18:33:43 +0000 (10:33 -0800)]
build: Update to header 1.3.207

- Update known-good
- Generate source

2 years agoUpdate known_good.json
Richard S. Wright Jr [Mon, 28 Feb 2022 23:18:03 +0000 (18:18 -0500)]
Update known_good.json

Updated MoltenVK to 1.1.8

2 years agobuild: Add install target for vkcube-wayland
Tony-LunarG [Thu, 17 Feb 2022 21:22:24 +0000 (14:22 -0700)]
build: Add install target for vkcube-wayland

2 years agobuild: Update to header 1.3.206
Mike Schuchardt [Fri, 18 Feb 2022 18:05:58 +0000 (10:05 -0800)]
build: Update to header 1.3.206

- Update known-good
- Generate source

2 years agoMake device selection output constistent
Jeremy Hayes [Wed, 9 Feb 2022 22:04:42 +0000 (15:04 -0700)]
Make device selection output constistent

Make vkcube print a string for device type, which is consistent with
vkcubepp.

2 years agovulkaninfo: Enable portability extension for device groups
Mike Schuchardt [Wed, 9 Feb 2022 20:07:26 +0000 (12:07 -0800)]
vulkaninfo: Enable portability extension for device groups

Expand previous change to include device group creation. Also added some
VK_ENABLE_BETA_EXTENSIONS guards around the portability identifiers.

2 years agovulkaninfo: Enable portability subset extension if present
Charles Giessen [Tue, 8 Feb 2022 17:20:25 +0000 (10:20 -0700)]
vulkaninfo: Enable portability subset extension if present

If this extension is present, it must be enabled when creating a VkDevice.

2 years agobuild: Update to header 1.3.205
Mike Schuchardt [Mon, 7 Feb 2022 18:28:53 +0000 (10:28 -0800)]
build: Update to header 1.3.205

- Update known-good
- Generate source

2 years agoUpdated MoltenVK known good tag to 1.1.7
Richard S. Wright Jr [Mon, 7 Feb 2022 16:57:41 +0000 (11:57 -0500)]
Updated MoltenVK known good tag to 1.1.7

2 years agovulkaninfo: remove redundant str() in script
Charles Giessen [Wed, 2 Feb 2022 22:11:11 +0000 (15:11 -0700)]
vulkaninfo: remove redundant str() in script

2 years agovulkaninfo: Use """ where appropriate in script
Charles Giessen [Wed, 2 Feb 2022 22:04:10 +0000 (15:04 -0700)]
vulkaninfo: Use """ where appropriate in script

2 years agovulkaninfo: Use single quote in generation script
Charles Giessen [Wed, 2 Feb 2022 21:46:23 +0000 (14:46 -0700)]
vulkaninfo: Use single quote in generation script

2 years agovulkaninfo: Use constants in pythong script
Charles Giessen [Wed, 2 Feb 2022 21:35:21 +0000 (14:35 -0700)]
vulkaninfo: Use constants in pythong script

2 years agovulkaninfo: Update generated copyright
Charles Giessen [Wed, 2 Feb 2022 21:32:39 +0000 (14:32 -0700)]
vulkaninfo: Update generated copyright

2 years agovulkaninfo: Support structs from multiple extensions
Charles Giessen [Tue, 4 Jan 2022 20:42:31 +0000 (14:42 -0600)]
vulkaninfo: Support structs from multiple extensions

VkPhysicalDeviceIDProperties can come from 1.1 but also from support for
multiple extensions. This makes the autogen properly check that one of the
required extensions is supported.

2 years agovulkaninfo: Make chain iterators optional
Charles Giessen [Mon, 20 Dec 2021 23:35:36 +0000 (17:35 -0600)]
vulkaninfo: Make chain iterators optional

Some of the pNext chains didn't make use of the generic chain printers. Since they aren't
being used in code, it is good to disable the generation of those printers.

2 years agovulkaninfo: Remove set width in json functions
Charles Giessen [Mon, 20 Dec 2021 22:36:01 +0000 (16:36 -0600)]
vulkaninfo: Remove set width in json functions

Set width does nothing inside json printers, removing it since it isn't necessary.

2 years agovulkaninfo: bitmask printers check for 0 value
Charles Giessen [Tue, 30 Nov 2021 05:44:05 +0000 (22:44 -0700)]
vulkaninfo: bitmask printers check for 0 value

Only generate the early exit if there doesn't exist an bitmask which has a
value of 0. For example, VK_RESOLVE_MODE_NONE has a value of 0, but it would
never be printed without this special case.

2 years agovulkaninfo: Use enum names in switches
Charles Giessen [Tue, 30 Nov 2021 05:16:33 +0000 (22:16 -0700)]
vulkaninfo: Use enum names in switches

Replace numeric values with the textual version, this makes it easier to read
the code and verify that it is correct.

2 years agovulkaninfo: Put value in unknown flag strings
Charles Giessen [Tue, 30 Nov 2021 04:42:51 +0000 (21:42 -0700)]
vulkaninfo: Put value in unknown flag strings

This makes unknown flags put the value of the flag bits in the returned string
so that if an error does occur, users can see which value(s) were returned.

2 years agovulkaninfo: Remove redundant parameter in GgpuDumpQueueProps
Charles Giessen [Tue, 30 Nov 2021 00:21:03 +0000 (17:21 -0700)]
vulkaninfo: Remove redundant parameter in GgpuDumpQueueProps

2 years agovulkaninfo: Chain printers use correct version
Charles Giessen [Tue, 30 Nov 2021 00:16:24 +0000 (17:16 -0700)]
vulkaninfo: Chain printers use correct version

Previously the version used was up to the caller of the chain printer function
to provide, but this was unnecessary as the printer should always use the
version of the type (instance or gpu) of printer in question. If both are
specified, it uses the gpu version since that implies physical_device functions.

2 years agovulkaninfo: Use gpu version only for AppGpu
Charles Giessen [Mon, 29 Nov 2021 23:15:55 +0000 (16:15 -0700)]
vulkaninfo: Use gpu version only for AppGpu

The api version of the GPU should solely be based on the GPU version reported
by VkPhysicalDeviceProperties. The need to guard against the instance version
should be explicit where necessary and not implicitely pulled into the version
of the GPU.

2 years agovulkaninfo: min_key_width now set in the object stack
Charles Giessen [Mon, 29 Nov 2021 22:33:23 +0000 (15:33 -0700)]
vulkaninfo: min_key_width now set in the object stack

Previously if a key-value pair wanted to be printed with padding, so the
output would be aligned, it would have to pass in the width into each and
every printer statement. This commit makes the min_key_width value set
per object (in the object_stack) so it can be set after the object is started
and re-used over and over. This simplifies the code gen and useability of
the Printer class.

2 years agovulkaninfo: Refactor printer to use stack for data
Charles Giessen [Mon, 29 Nov 2021 22:06:59 +0000 (15:06 -0700)]
vulkaninfo: Refactor printer to use stack for data

The output printer kept track of variables that should of been per object or
array in a single variable for the entire output. This commit refactors
the code to store data in a new StackNode struct such that pushing and poping
the stack is how to save and restore the top node's properties, such as the
indent, min_width, and if it is an array or object. It allows behavior such
as a parent object ignoring the width output but its children respecting it.

2 years agovulkaninfo: Simplify WSI macro defines
Charles Giessen [Wed, 17 Nov 2021 01:56:13 +0000 (18:56 -0700)]
vulkaninfo: Simplify WSI macro defines

Create a single macro define which is used everywhere rather than have 5
different places with the same giant macro if block.

2 years agovulkaninfo: Use better casting where possible
Charles Giessen [Wed, 17 Nov 2021 01:23:28 +0000 (18:23 -0700)]
vulkaninfo: Use better casting where possible

Use static_cast instead of reinterpret_cast or C style casts. This allows
better type checking and more idiomatic C++.

2 years agovulkaninfo: Fix spelling mistakes
Charles Giessen [Wed, 17 Nov 2021 01:20:49 +0000 (18:20 -0700)]
vulkaninfo: Fix spelling mistakes

2 years agovulkaninfo: Use filename in json output desc
Charles Giessen [Sun, 14 Nov 2021 21:21:44 +0000 (14:21 -0700)]
vulkaninfo: Use filename in json output desc

Query the current file name so it can be used when printing out the description
for the json formats. This is relevant because the windows SDK alters the name
of vulkaninfo to vulkaninoSDK and we want this to be present in the output.

2 years agovulkaninfo: Support QueueProperties pNext chain
Charles Giessen [Sun, 14 Nov 2021 20:32:30 +0000 (13:32 -0700)]
vulkaninfo: Support QueueProperties pNext chain

Make the autogen and vulkaninfo source code support printing of the pNext chain
in VkQueueProperties2KHR. Several structs were added to this chain recently and
are helpful information to be printed. This required special casing the output
so that it only prints the elements that are 'valid' and modifying the chain
printer to unset the next header flag.

2 years agovulkaninfo: Add Device & driver UUID to summary
Charles Giessen [Sun, 14 Nov 2021 18:57:28 +0000 (11:57 -0700)]
vulkaninfo: Add Device & driver UUID to summary

The Device and Driver UUID is identifying information that is useful to have at
a glance. Adding it to the summary would help anyone needing to determine what
their device & driver is without searching the entire vulkaninfo output first.

2 years agovulkaninfo: Return non-zero from failure
Charles Giessen [Sun, 14 Nov 2021 18:43:21 +0000 (11:43 -0700)]
vulkaninfo: Return non-zero from failure

If vulkaninfo fails for whatever reason, including vulkan API calls, vulkaninfo
should return 1 so that CI systems can detect if something is amiss. Previously,
while vulkaninfo would recover from a failure (finishing any json/html files that
were being printed) it would print 0, which is counter intuitive.

2 years agovulkaninfo: Prevent WinCRT debug popups
Charles Giessen [Sun, 14 Nov 2021 18:32:31 +0000 (11:32 -0700)]
vulkaninfo: Prevent WinCRT debug popups

Add the necessary winCRT calls to prevent debug popups from occuring when
vulkaninfo crashes. This is necessary to prevent hangs in CI, where these
popups can and do occur.

2 years agovulkan tools: Fix image usage error reported by validation layers
ziga-lunarg [Wed, 2 Feb 2022 22:27:34 +0000 (23:27 +0100)]
vulkan tools: Fix image usage error reported by validation layers

2 years agovulkaninfo: Generate pNext chain properly
Charles Giessen [Tue, 1 Feb 2022 20:23:00 +0000 (13:23 -0700)]
vulkaninfo: Generate pNext chain properly

Generate a structure that contains all the structures in the pNext chain as
members rather than relying on malloc to allocate memory for them.

2 years agovulkaninfo: Fix padding for integer dot product
Charles Giessen [Tue, 1 Feb 2022 20:21:30 +0000 (13:21 -0700)]
vulkaninfo: Fix padding for integer dot product

The 1.3 update forgot to rename
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR to
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES as this
is the non-aliased name. Without it, the fix wouldn't be applied.

2 years agobuild: Add build target for vkcube-wayland
Tony-LunarG [Thu, 13 Jan 2022 23:33:24 +0000 (16:33 -0700)]
build: Add build target for vkcube-wayland

2 years agomockicd: Fix queue destruction for multiple devices
nyorain [Fri, 21 Jan 2022 15:09:49 +0000 (16:09 +0100)]
mockicd: Fix queue destruction for multiple devices

2 years agoFix DestroyCommandPool command buffer leak
nyorain [Fri, 21 Jan 2022 15:06:11 +0000 (16:06 +0100)]
Fix DestroyCommandPool command buffer leak

2 years agoFix FreeCommandBuffers leak
nyorain [Fri, 21 Jan 2022 14:47:40 +0000 (15:47 +0100)]
Fix FreeCommandBuffers leak

2 years agovulkaninfo: Update to 1.3
Charles Giessen [Fri, 24 Sep 2021 20:09:58 +0000 (14:09 -0600)]
vulkaninfo: Update to 1.3

Only changes are making the autogen print all required structs, and
moving from using the EXT version of tool properties to the core version.

2 years agobuild: Update to header 1.3.204
Mike Schuchardt [Tue, 25 Jan 2022 18:38:49 +0000 (10:38 -0800)]
build: Update to header 1.3.204

- Update known-good
- Generate source

2 years agoAdd support for building on ChromeOS
Alexis Hetu [Tue, 25 Jan 2022 15:10:27 +0000 (10:10 -0500)]
Add support for building on ChromeOS

2 years agocmake/FindWaylandProtocols: fix wayland protocol path generation for cross compile
SupervisedThinking [Tue, 23 Nov 2021 12:18:49 +0000 (13:18 +0100)]
cmake/FindWaylandProtocols: fix wayland protocol path generation for cross compile

2 years agobuild: Add dependency on wayland-protocols
Tony-LunarG [Thu, 13 Jan 2022 17:44:28 +0000 (10:44 -0700)]
build: Add dependency on wayland-protocols

2 years agobuild: Update to header 1.2.203
Mike Schuchardt [Tue, 4 Jan 2022 18:12:40 +0000 (10:12 -0800)]
build: Update to header 1.2.203

- Update known-good
- Generate source

2 years agoFix error messages upon failure to connect to window systems.
C Stout [Fri, 20 Aug 2021 20:19:01 +0000 (13:19 -0700)]
Fix error messages upon failure to connect to window systems.

Change-Id: I650958a8b2607eb3402eb6531909881d4a2ccc0f

2 years agoscripts: Fix codegen to support VK_KHR_format_feature_flags2
Lionel Landwerlin [Thu, 9 Dec 2021 15:43:51 +0000 (17:43 +0200)]
scripts: Fix codegen to support VK_KHR_format_feature_flags2

If the implementation reports that it supports this feature, it should
fill out VkFormatProperties3KHR properly.

2 years agoci: Use windows-latest in github actions
Charles Giessen [Wed, 1 Dec 2021 18:31:27 +0000 (11:31 -0700)]
ci: Use windows-latest in github actions

2 years agobuild: Update to header 1.2.201
Mike Schuchardt [Wed, 1 Dec 2021 17:55:34 +0000 (09:55 -0800)]
build: Update to header 1.2.201

- Update known-good
- Generate source

2 years agovkcube/vkcubepp: Add option to force validation errors
Mark Young [Tue, 30 Nov 2021 23:38:25 +0000 (16:38 -0700)]
vkcube/vkcubepp: Add option to force validation errors

During tests, it's hard to determine if the --validation option is
actually working properly.  So add an option (--force_errors) to
intentionally force a few validation error messages to make sure
that validation is working properly.

2 years agovulkaninfo: Rename trivially_optional to vulkaninfo_optional
Charles Giessen [Thu, 18 Nov 2021 21:17:02 +0000 (14:17 -0700)]
vulkaninfo: Rename trivially_optional to vulkaninfo_optional

Expand the scope of the type to allow non trivial types. This helped make the implementation of
parsing command line arguments much cleaner.

2 years agovulkaninfo: Fixup argument parsing for --output
Charles Giessen [Wed, 17 Nov 2021 23:13:26 +0000 (16:13 -0700)]
vulkaninfo: Fixup argument parsing for --output

There were a few edge cases which weren't well handled. Examples include
providing a filename and using the vkconfig_output but would ignore the file
name; the filename not being picked up for none file outputs like json and
text. Ammended the wait_for_console_destroy() to only run when not printing
to a file.

2 years agovulkaninfo: Error check --output
Charles Giessen [Wed, 17 Nov 2021 02:51:45 +0000 (19:51 -0700)]
vulkaninfo: Error check --output

Make sure the following argument is a filename and not another argument.

Also:
Add `--text` as it makes sense to have it as an explicit flag even if it
is the default.
Move --summary to the top, since its the most useful thing to know at a
glance.

2 years agovulkaninfo: Allow specifying file output
Charles Giessen [Mon, 21 Jun 2021 16:16:38 +0000 (10:16 -0600)]
vulkaninfo: Allow specifying file output

Use `-o <filename>` or `--output <filename>` to specify the filename of which
vulkaninfo will write to in the current directory.

2 years agovulkaninfo: Refactor main function
Charles Giessen [Sat, 19 Jun 2021 00:32:32 +0000 (18:32 -0600)]
vulkaninfo: Refactor main function

The main funciton was a chonky 300+ lines of code, this commit pulls out some
of the sections into their own functions to make it easier to read. It also
simplifies the logic in many places by doing so.

2 years agovulkaninfo: Remove unecessary surface macro guards
Charles Giessen [Fri, 18 Jun 2021 22:32:40 +0000 (16:32 -0600)]
vulkaninfo: Remove unecessary surface macro guards

Many of the macro guards in vulkaninfo are unecessary due to not directly
touching the contents of the surfaces outside of already guarded functions.
Thus, there is little point in having guards for stuff that is always able
to compile.

2 years agovulkaninfo: Fix formatting
Charles Giessen [Fri, 18 Jun 2021 22:32:20 +0000 (16:32 -0600)]
vulkaninfo: Fix formatting

2 years agovulkaninfo: Refactor Win32 function loading
Charles Giessen [Fri, 18 Jun 2021 22:30:10 +0000 (16:30 -0600)]
vulkaninfo: Refactor Win32 function loading

The only reason there were global booleans to decide which output to use was due to the macro
WAIT_FOR_CONSOLE_DESTROY. This commit restructures how the win32 function loading operates so
that such globals are no longer necessary. It introduces an OutputCategory enum to declare which
output format to use.

2 years agobuild: Update to header 1.2.200
Mike Schuchardt [Mon, 29 Nov 2021 18:18:41 +0000 (10:18 -0800)]
build: Update to header 1.2.200

- Update known-good
- Generate source

2 years agoscripts: initialize properties for VK_EXT_fragment_density_map2
janharaldfredriksen-arm [Wed, 15 Jul 2020 15:29:59 +0000 (17:29 +0200)]
scripts: initialize properties for VK_EXT_fragment_density_map2

2 years agoUpdate known_good.json
Richard S. Wright Jr [Wed, 17 Nov 2021 23:04:43 +0000 (18:04 -0500)]
Update known_good.json

Updated MoltenVK to 1.1.6 release

2 years agovulkaninfo: Make printing ToolProperties optional
Charles Giessen [Wed, 17 Nov 2021 02:10:15 +0000 (19:10 -0700)]
vulkaninfo: Make printing ToolProperties optional

This field has caused numerous crashes and has generally been more trouble than
its worth to have as a default output. Now, a new command line argument is
needed to get vulkaninfo to print tooling info.

2 years agovulkaninfo: Use DebugReport callback
Charles Giessen [Mon, 28 Jun 2021 21:30:52 +0000 (15:30 -0600)]
vulkaninfo: Use DebugReport callback

Add a debug callback to vkCreateInstance to debug instance failures,
since there are occassionally errors introduced
which yield validation messages that are currently being missed.

2 years agobuild: Update to header 1.2.199
Mike Schuchardt [Tue, 16 Nov 2021 19:02:56 +0000 (11:02 -0800)]
build: Update to header 1.2.199

- Update known-good
- Generate source

2 years agovulkaninfo: Prevent drivers writing out of bounds
Charles Giessen [Mon, 15 Nov 2021 22:50:36 +0000 (15:50 -0700)]
vulkaninfo: Prevent drivers writing out of bounds

The structure VkPhysicalDeviceShaderIntegerDotProdcutFeaturesKHR contains only a single
feature boolean flag. However, before the final version was published to the public, it
had many boolean flag values. Pre-release drivers often contain support for unpublished
extensions, such as VK_KHR_shader_integer_dot_product. Because the final version was
much smaller than the pre-release version, several drivers try to write to members that
do not exist in the final version, which cause out of bounds writes to the features struct
that vulkaninfo passes into the driver.

By increasing the size of the features struct allocation manually, we can prevent potential
crashes from OOBs writes from drivers.

2 years agobuild: Update to header 1.2.198
Mike Schuchardt [Tue, 9 Nov 2021 19:42:36 +0000 (11:42 -0800)]
build: Update to header 1.2.198

- Update known-good
- Generate source (no change)

2 years agobuild: Update to header 1.2.197
Mike Schuchardt [Wed, 3 Nov 2021 16:23:42 +0000 (09:23 -0700)]
build: Update to header 1.2.197

- Update known-good
- Generate source

2 years agobuild: Update to header 1.2.196
Mike Schuchardt [Thu, 14 Oct 2021 17:13:58 +0000 (10:13 -0700)]
build: Update to header 1.2.196

- Update known-good
- Generate source

2 years agovkcube: Reorder setting of pipeline stage flags
Eleni Maria Stea [Sat, 2 Oct 2021 20:32:06 +0000 (23:32 +0300)]
vkcube: Reorder setting of pipeline stage flags

Pipeline stage flags should be set before assigned to pWaitDstStageMask
in VkSubmitInfo.

2 years agobuild: Update to header 1.2.195
Mike Schuchardt [Tue, 5 Oct 2021 18:21:19 +0000 (11:21 -0700)]
build: Update to header 1.2.195

- Update known-good
- Generate source

2 years agovulkaninfo: Generate vulkaninfo.rc file
Charles Giessen [Tue, 28 Sep 2021 20:46:31 +0000 (14:46 -0600)]
vulkaninfo: Generate vulkaninfo.rc file

Previously whenever a SDK was being built, it would have to manually find and
replace the vulkaninfo.rc file with the appropriate values. This commit makes
it simpler by providing a CMake build argument which allows setting the version
to use from the command line.

2 years agobuild: Update to header 1.2.194
Mike Schuchardt [Tue, 28 Sep 2021 16:48:35 +0000 (09:48 -0700)]
build: Update to header 1.2.194

- Update known-good
- Generate source

2 years agoscripts: Fix codegen with hard-coded enum indices
Mike Schuchardt [Tue, 28 Sep 2021 16:45:09 +0000 (09:45 -0700)]
scripts: Fix codegen with hard-coded enum indices

Currently some of the generators use a fixed child index to locate
extension enums, which will break if comment blocks are added near the
top of an extension definition. This change makes the enum lookup more
robust by searching for the expected enum name instead of using a
hard-coded offset.

2 years agobuild: Update update_deps
Charles Giessen [Tue, 28 Sep 2021 19:25:26 +0000 (13:25 -0600)]
build: Update update_deps

Bring forward the update_deps script in this repo to match VVL

2 years agoci: Add android build to github actions
Mike Schuchardt [Thu, 23 Sep 2021 17:44:34 +0000 (10:44 -0700)]
ci: Add android build to github actions

Change-Id: I1ef9815548f7483ddc712c76210cf938e70c3eae

2 years agobuild: Remove unused components from android build
Mike Schuchardt [Wed, 22 Sep 2021 22:20:31 +0000 (15:20 -0700)]
build: Remove unused components from android build

When Vulkan-Tools split off from Vulkan-LoaderAndValidationLayers it
inherited the android build scripts, most of which are not relevant to
the projects left in this repo. Also update BUILD.md with latest android
toolchain and remove references to the validation layers.

Change-Id: If982829fc20e14156c52a8f364ef7294733f62cd

2 years agoscripts: Use f-strings in vulkaninfo generator
Charles Giessen [Fri, 17 Sep 2021 20:06:29 +0000 (14:06 -0600)]
scripts: Use f-strings in vulkaninfo generator

f-strings are a python feature which allow more natural formatting of text, making
the code easier to read and work with.

2 years agovulkaninf: Support 64 bit flags
Charles Giessen [Fri, 17 Sep 2021 19:43:50 +0000 (13:43 -0600)]
vulkaninf: Support 64 bit flags

64 bit flags use the bitvalues field instead of the requires field in the XML
to specify the flagbits name. Thus the autogen needed to account for that.
In addition, if a flag was promoted to core, the autogen didn't use the core
version, this commit also fixes that.

2 years agobuild: Update to header 1.2.193
Mike Schuchardt [Tue, 21 Sep 2021 17:50:43 +0000 (10:50 -0700)]
build: Update to header 1.2.193

- Update known-good
- Generate source

2 years agobuild: Update to header 1.2.192
Mike Schuchardt [Wed, 15 Sep 2021 16:23:07 +0000 (09:23 -0700)]
build: Update to header 1.2.192

- Update known-good
- Generate source

2 years agoscripts: Ignore compatibility constants in wrapper
Mike Schuchardt [Wed, 15 Sep 2021 15:53:19 +0000 (08:53 -0700)]
scripts: Ignore compatibility constants in wrapper

When the working group changes the name of a constant:

  VK_KHR_MAINTENANCE1_SPEC_VERSION ->
  VK_KHR_MAINTENANCE_1_SPEC_VERSION

they will still #define the original name to maintain backward
compatibility with existing code that uses it:

  #define VK_KHR_MAINTENANCE_1_SPEC_VERSION 2
  #define VK_KHR_MAINTENANCE_1_EXTENSION_NAME "VK_KHR_maintenance1"
  #define VK_KHR_MAINTENANCE1_SPEC_VERSION  VK_KHR_MAINTENANCE_1_SPEC_VERSION
  #define VK_KHR_MAINTENANCE1_EXTENSION_NAME VK_KHR_MAINTENANCE_1_EXTENSION_NAME

In this case, we need to ignore the non-numeric _SPEC_VERSION and
unquoted _EXTENSION_NAME constants because they don't define a separate
extension.

2 years agobuild: Update to header 1.2.191
Mike Schuchardt [Wed, 8 Sep 2021 22:24:35 +0000 (15:24 -0700)]
build: Update to header 1.2.191

- Update known-good
- Generate source

2 years agovulkaninfo: Fix error message when gpus.size()==0
Vladimir Panteleev [Sat, 4 Sep 2021 06:16:46 +0000 (06:16 +0000)]
vulkaninfo: Fix error message when gpus.size()==0

Avoid an amusing and slightly misleading error message:

"The selected gpu (0) is not a valid GPU index. The available GPUs are
in the range of 0 to 18446744073709551615."

2 years agoUpdate known good to the latest MoltenVK tag
Richard S. Wright Jr [Fri, 3 Sep 2021 20:46:26 +0000 (16:46 -0400)]
Update known good to the latest MoltenVK tag