Ian Elliott [Tue, 28 Apr 2015 19:22:33 +0000 (13:22 -0600)]
demos: tri/cube give error if can't find WSI extension.
Ian Elliott [Tue, 28 Apr 2015 17:35:02 +0000 (11:35 -0600)]
demos: Improve tri/cube error if incompatible driver found.
Ian Elliott [Tue, 28 Apr 2015 16:52:52 +0000 (10:52 -0600)]
demos: Use macros for the app name, and window name.
David Pinedo [Mon, 27 Apr 2015 22:36:17 +0000 (16:36 -0600)]
layers: Fix msvc++ iterator issues
Ian Elliott [Tue, 28 Apr 2015 16:33:11 +0000 (10:33 -0600)]
demos: Change app name for the console window.
Courtney Goeltzenleuchter [Mon, 27 Apr 2015 23:16:56 +0000 (17:16 -0600)]
draw_state: Fix another MSVC++ debug assert
Courtney Goeltzenleuchter [Mon, 27 Apr 2015 21:04:43 +0000 (15:04 -0600)]
draw_state: Fix Microsoft C++ iterator assert
The Microsoft Visual Studio vector library does not like this code:
delete (*ii).second->pCmds.back();
Internally, pCmds.back() does a pCmds.end() - 1 and since the
vector we are using (*ii).second->pCmds is not local, the library
throws an assert about the iterator being non-incrementable.
The assert if fixed by making a local copy of the vector and
working on that.
Courtney Goeltzenleuchter [Mon, 27 Apr 2015 21:00:47 +0000 (15:00 -0600)]
mem_tracker: Do not increment iterator after delete
The loop was blindly incrementing the iterator and
it should not. In the delete case the loop should
resume with the iterator returned
by the delete as it's the next element in the list.
Courtney Goeltzenleuchter [Mon, 27 Apr 2015 20:56:34 +0000 (14:56 -0600)]
cube: Disable rendering once we enter cleanup
Code was getting a segfault after clicking on the close
window button and a refresh is attempted as things are getting
shut down. If we use same demo->prepare flag to indicate
rendering is ready during shutdown we avoid the issue.
Courtney Goeltzenleuchter [Mon, 27 Apr 2015 17:16:35 +0000 (11:16 -0600)]
draw_state: Fix Microsoft C++ assert
The C++ runtime library was issuing an assert on the following line:
for (vector<CMD_NODE*>::iterator ii=pCB->pCmds.begin(); ii!=pCB->pCmds.end(); ++ii) {
It was complaining that the iterator ii was not compatible with the
pCmds.end(). Tracing down the assert, the C++ library did not like the
fact that we were accessing pCmds through a pointer (pCB). If we made a
local copy of the pCmds vector the assert went away.
David Pinedo [Mon, 27 Apr 2015 19:20:08 +0000 (13:20 -0600)]
Shader Checker Layer: make sure iterated list is of non-zero length
On MSVC++, need a check to make sure a list is of non-zero length
before attempting to iterate on it.
Jon Ashburn [Sat, 25 Apr 2015 00:15:00 +0000 (17:15 -0700)]
loader: Terminate chain of GetProcAddr() in driver if gpu obj is base
Fixes issue when driver doesn't implement an entrypoint of recursing
and unwrapping gpu object too many times.
Tobin Ehlis [Tue, 28 Apr 2015 23:27:16 +0000 (17:27 -0600)]
layers: Fix bug in APIDump where some void* members were having their address printed when APIDumpNoAddr was TRUE
Cody Northrop [Tue, 28 Apr 2015 19:31:42 +0000 (13:31 -0600)]
icd: Add support for one bit alpha BC1 formats
Tony Barbour [Tue, 28 Apr 2015 20:28:17 +0000 (14:28 -0600)]
layers: Add another routine to list that don't need use counts
Tony Barbour [Tue, 28 Apr 2015 20:15:53 +0000 (14:15 -0600)]
layers: Add 3 more routines to list that don't need use counts
Tobin Ehlis [Tue, 28 Apr 2015 16:58:20 +0000 (10:58 -0600)]
layers: Fix APIDump corner cases to not print addresses w/ NoAddr option
Tobin Ehlis [Mon, 27 Apr 2015 23:30:04 +0000 (17:30 -0600)]
layers: Add APIDump option to not parse parameter details
APIDumpDetailed will default to TRUE which prints details of struct parameters
Setting this to FALSE will only print API calls and immediate parameters.
Jon Ashburn [Fri, 24 Apr 2015 21:10:50 +0000 (14:10 -0700)]
loader: Fix bug on layer name prefix string length
Also add GetGlobalExtensionInfo to layer .def file
David Pinedo [Thu, 23 Apr 2015 14:16:57 +0000 (08:16 -0600)]
Demos: print error message when texture files can't be opened
Jon Ashburn [Fri, 24 Apr 2015 16:46:24 +0000 (09:46 -0700)]
Demos: restrict paint events from rendering until setup is finished on Windows
Tony Barbour [Thu, 23 Apr 2015 16:42:14 +0000 (10:42 -0600)]
dispatch: No need to save data from vkResetFences
Tony Barbour [Wed, 22 Apr 2015 23:02:11 +0000 (17:02 -0600)]
build: fix registry locations
Tobin Ehlis [Wed, 22 Apr 2015 19:59:43 +0000 (13:59 -0600)]
scripts: Update vk_helper.py to account for VK_BIT(#) enum values
Mark Lobodzinski [Wed, 22 Apr 2015 21:06:12 +0000 (15:06 -0600)]
layers: Added fence validation check to object_tracker
Validate that all fences in WaitForFences call have been submitted.
Mark Lobodzinski [Tue, 21 Apr 2015 21:33:04 +0000 (15:33 -0600)]
layers: Memtracker formatting changes.
Cleaned up alignment, made function definitions consistent,
shortened some line lengths.
Tony Barbour [Wed, 22 Apr 2015 17:36:22 +0000 (11:36 -0600)]
misc: Changes to fix warnings in Windows / VC++ build
Tony Barbour [Wed, 22 Apr 2015 15:02:32 +0000 (09:02 -0600)]
misc: Changes to clean up warnings in Release build
David Pinedo [Tue, 21 Apr 2015 20:45:16 +0000 (14:45 -0600)]
demos: create console for vulkaninfo iff needed
David Pinedo [Tue, 21 Apr 2015 20:44:02 +0000 (14:44 -0600)]
null driver: Change so it doesn't seg fault when running cube.
Courtney Goeltzenleuchter [Mon, 20 Apr 2015 18:48:54 +0000 (12:48 -0600)]
loader: Make sure max layer count is set properly
Courtney Goeltzenleuchter [Tue, 21 Apr 2015 15:31:23 +0000 (09:31 -0600)]
demos: update memory usage flags
Add memory usage flag parameter to prepare_texture
function so that images are allocated with proper usage
flags set.
Courtney Goeltzenleuchter [Tue, 21 Apr 2015 15:30:03 +0000 (09:30 -0600)]
demos: remove mem references before destroying
Need to do the staging texture destroy after removing
references to avoid referencing freed memory.
Courtney Goeltzenleuchter [Mon, 20 Apr 2015 17:04:54 +0000 (11:04 -0600)]
vkEnumerateLayers: Update to match upstream
The upstream vulkan.h header removed maxLayerCount parameter
from vkEnumerateLayers. This patch implements that change
for the sample driver and layers.
Mark Lobodzinski [Tue, 21 Apr 2015 23:15:36 +0000 (17:15 -0600)]
layers: Fixed arg selection in object tracker
Reordered args were causing object deletions and memory frees
to corrupt the object lists.
Tony Barbour [Tue, 21 Apr 2015 15:18:02 +0000 (09:18 -0600)]
layers: Using objects instead of pointers - rename pObj
Tony Barbour [Mon, 20 Apr 2015 22:28:46 +0000 (16:28 -0600)]
vulkan.h: Fix up warnings and use VkObject appropriately
Ian Elliott [Sat, 18 Apr 2015 03:23:34 +0000 (21:23 -0600)]
Make "vulkaninfo" a WIN32 program.
Courtney Goeltzenleuchter [Sat, 18 Apr 2015 02:48:17 +0000 (20:48 -0600)]
misc: Make headers match upstream
Mike Stroyan [Fri, 17 Apr 2015 18:36:38 +0000 (12:36 -0600)]
update to vulkan.h header version 90, bug 13529
Tony Barbour [Fri, 17 Apr 2015 22:39:58 +0000 (16:39 -0600)]
demos: Inform user and exit if vkCreateInstance fails
Tobin Ehlis [Fri, 17 Apr 2015 20:05:23 +0000 (14:05 -0600)]
demos: Fix vulkaninfo assertion based on new VK_WSI_LunarG extension name
Ian Elliott [Thu, 16 Apr 2015 21:23:05 +0000 (15:23 -0600)]
Win: tri/cube using WIN32 for Window creation, events, etc.
This was turned on using the nulldrv, and so it looks like it's doing the
correct things (very simply), but it's difficult to tell given that the nulldrv
doesn't actually draw anything.
Ian Elliott [Thu, 16 Apr 2015 17:57:46 +0000 (11:57 -0600)]
nulldrv: capable of running "cube"
The nulldrv has been broken for a long time. This commit enhances it enough to
run the "cube" demo. The 2 major categories of changes are:
- Add a simple, mostly-complete implementation of vkGetGpuInfo() (minus the new
WSI query).
- Add a simple implementation of vkGetFormatInfo().
- Add implementations of the new WSI entrypoints:
- vkGetDisplayInfoWSI()
- vkCreateSwapChainWSI()
- vkDestroySwapChainWSI()
- vkGetSwapChainInfoWSI()
- vkQueuePresentWSI()
- Later, other header-file-driven changes were made, including:
- Support vkGetGlobalExtensionInfo()
Chia-I Wu [Thu, 16 Apr 2015 14:02:10 +0000 (22:02 +0800)]
switch to VK_WSI_LunarG
Switch from VK_WSI_X11 to VK_WSI_LunarG
v2:
- split out glave changes
- redo mem_tracker changes
- rebase
Conflicts:
demos/cube.c
demos/tri.c
v3 (from Ian):
- Put "#if 0" around non-upstream members of VkDisplayPropertiesWSI.
Chia-I Wu [Thu, 16 Apr 2015 14:02:03 +0000 (22:02 +0800)]
update vk_wsi_lunarg.h ...
Except, remove non-upstream members of VkDisplayPropertiesWSI.
Tobin Ehlis [Fri, 17 Apr 2015 19:26:33 +0000 (13:26 -0600)]
layers: Fix bugs in APIDump to handle dynamic array printing
Mark Lobodzinski [Fri, 17 Apr 2015 16:44:25 +0000 (11:44 -0500)]
tests: Ensure vk_blit_test calls QueueAddMemReferences
The blit tests were skipping this step resulting in tons of memtracker
validation errors.
Mark Lobodzinski [Fri, 17 Apr 2015 19:11:39 +0000 (14:11 -0500)]
vulkan: Update vulkan.h for revision 89 -- Bug #13743
Generalizing the VkDescriptorSetLayoutChain object.
Tobin Ehlis [Fri, 17 Apr 2015 19:07:30 +0000 (13:07 -0600)]
layers: For ObjectTracker don't flag error for un-deleted Queues
Tobin Ehlis [Fri, 17 Apr 2015 19:00:55 +0000 (13:00 -0600)]
layers: Fix ObjectTracker to not flag error when PhysicalDevice not deleted b/c it can't be deleted.
Cody Northrop [Thu, 16 Apr 2015 19:41:56 +0000 (13:41 -0600)]
vulkan: Update vulkan.h for revision 88 -- Bug #13744
Rename some vkCmdBindDescriptorSets parameters and add a dynamic offset count.
v2: Add a check against dynamicOffsetCount before copying dset data.
Ian Elliott [Fri, 17 Apr 2015 18:11:54 +0000 (12:11 -0600)]
WSI header file changes pushed upstream.
The following commits were sent to the WSI TSG's subversion directory:
- Remove unnecessary "display" from VkDisplayFormatPropertiesWSI.
- Add WSI to end of VkSwapChainImageInfo.
- Make vkQueuePresentWSI's 2nd parameter be constant.
Chia-I Wu [Fri, 17 Apr 2015 03:33:20 +0000 (11:33 +0800)]
demos/tri: remove outdated code
It was reintroduced by one of the commits during rebase.
Jeremy Hayes [Fri, 17 Apr 2015 16:36:53 +0000 (10:36 -0600)]
layers: Add missing functions.
Ian Elliott [Fri, 17 Apr 2015 17:05:04 +0000 (11:05 -0600)]
Win: Eliminate compiler errors/warnings in "shader_checker.cpp"
Key error was MS's compiler not liking a variable named "interface". I renamed
it "sinterface", and the compiler was much happier.
Ian Elliott [Fri, 17 Apr 2015 00:31:46 +0000 (18:31 -0600)]
Win: Copy the "spirv.h" file for Windows builds (KLUDGE) ...
The Linux build requires that "glslang" be built in a directory next to the
Vulkan source. The Windows build (which doesn't build the Intel driver) does
not (at least not yet). The new "shader_checker" layer needs the "spirv.h"
file in a "SPIRV" directory.
To kludge around this for now, create a "spirv" directory in the "layers"
directory (that will be ignored on Linux, which looks at the capitalization of
files/dirs) which Windows will use to find the "spirv.h" file in.
Courtney Goeltzenleuchter [Thu, 16 Apr 2015 15:13:59 +0000 (09:13 -0600)]
bug-13668: Support for pipeline statistics queries
header #84
svn: 30459
Update PipelineStatisticsQuery to gather data based on
indicated statistics flags.
Updated with review feedback.
Ian Elliott [Fri, 17 Apr 2015 16:04:00 +0000 (10:04 -0600)]
nulldrv: Get compiling on Windows again.
Courtney Goeltzenleuchter [Fri, 17 Apr 2015 15:06:53 +0000 (09:06 -0600)]
license: Add MIT license statement to repo.
Tobin Ehlis [Fri, 17 Apr 2015 14:55:13 +0000 (08:55 -0600)]
layers: Add ShaderChecker as Validation layer
Tobin Ehlis [Fri, 17 Apr 2015 00:04:57 +0000 (18:04 -0600)]
demos: Update demos and tests to use vkGetGlobalExtensionInfo to check extensions
Courtney Goeltzenleuchter [Fri, 17 Apr 2015 03:44:35 +0000 (21:44 -0600)]
bug-13466: Note conflict with upstream on VkQueryResultFlags
Courtney Goeltzenleuchter [Fri, 17 Apr 2015 03:42:44 +0000 (21:42 -0600)]
misc: non-functional changes to match upstream header
Fix up white space and comments to exactly match upstream vulkan.h
Chia-I Wu [Fri, 17 Apr 2015 02:49:15 +0000 (10:49 +0800)]
loader: add a missing VKAPI
loader_gpa_internal() needs VKAPI.
Tony Barbour [Fri, 17 Apr 2015 01:23:13 +0000 (19:23 -0600)]
Bug 13632 Header 84 Add VkFlushMappedMemory
Tony Barbour [Fri, 17 Apr 2015 01:09:28 +0000 (19:09 -0600)]
Bug 13632 Header 84 Add offset and size to VkMapMemory
Chia-I Wu [Thu, 16 Apr 2015 18:00:54 +0000 (02:00 +0800)]
vulkan: Remove VkDescriptorSetLayoutChain from vkCmdBindDescriptorSets
This is part of r30446 on vulkan.h, discussed in bug 13632.
Meaty chunks of this commit done by Olv, basic hook up and testing by Cody.
Tony Barbour [Thu, 16 Apr 2015 21:59:00 +0000 (15:59 -0600)]
Bug 13632 Header 84 Assorted questions and comments on vulkan.h
Jon Ashburn [Wed, 15 Apr 2015 17:31:12 +0000 (11:31 -0600)]
misc: Change vkEnumerateGpus to vkEnumeratePhysicalDevices
Conflicts:
loader/loader.h
Tobin Ehlis [Thu, 16 Apr 2015 21:56:11 +0000 (15:56 -0600)]
layers: Fix bug in how dynamic array Counts were interpreted by APIDump
Ian Elliott [Fri, 17 Apr 2015 00:10:19 +0000 (18:10 -0600)]
nulldrv: Add vkCmdCopyQueryPoolResults()
Chris Forbes [Thu, 16 Apr 2015 22:13:28 +0000 (10:13 +1200)]
shader_checker: convert printf to debug output
Chris Forbes [Tue, 14 Apr 2015 18:59:41 +0000 (06:59 +1200)]
shader_checker: add plumbing for debug
Chris Forbes [Thu, 9 Apr 2015 23:41:20 +0000 (11:41 +1200)]
shader_checker: first pass at typechecks
Chris Forbes [Tue, 7 Apr 2015 22:37:20 +0000 (10:37 +1200)]
shader_checker: validate fs outputs against cb
Chris Forbes [Tue, 7 Apr 2015 22:36:37 +0000 (10:36 +1200)]
shader_checker: validate vertex attribs against vs inputs
Chris Forbes [Tue, 7 Apr 2015 22:19:16 +0000 (10:19 +1200)]
shader_checker: add validation of interface between vs and fs
Chris Forbes [Tue, 7 Apr 2015 22:16:45 +0000 (10:16 +1200)]
shader_checker: collect pipeline stages in vkCreateGraphicsPipeline
Chris Forbes [Tue, 7 Apr 2015 22:15:35 +0000 (10:15 +1200)]
shader_checker: add hook for xglCreateGraphicsPipeline
Chris Forbes [Mon, 13 Apr 2015 00:14:52 +0000 (12:14 +1200)]
shader_checker: collect interface definitions from shaders
Chris Forbes [Tue, 7 Apr 2015 22:11:59 +0000 (10:11 +1200)]
shader_checker: capture spir-v for every shader at vkCreateShader time
Chris Forbes [Thu, 2 Apr 2015 00:22:31 +0000 (13:22 +1300)]
shader_checker: initial plumbing
Jeremy Hayes [Wed, 15 Apr 2015 21:20:03 +0000 (15:20 -0600)]
vulkan: Rename bindInfo to pBindInfo.
Conflicts:
include/vulkan.h
layers/param_checker.cpp
Courtney Goeltzenleuchter [Thu, 16 Apr 2015 19:38:46 +0000 (13:38 -0600)]
bug 13632: Convert commands to plural form
part of multiple commits to implement bug #13632.
bug 13632
header version 82
svn version: 30446
This patch converts:
vkCmdBindVertexBuffer -> vkCmdBindVertexBuffers
vkQueueAddMemReference -> vkQueueAddMemReferences
vkQueueRemoveMemReference -> vkQueueRemoveMemReferences
Jeremy Hayes [Wed, 15 Apr 2015 20:17:56 +0000 (14:17 -0600)]
vulkan: Update object memory requirements (13723).
Mike Stroyan [Thu, 16 Apr 2015 20:11:54 +0000 (14:11 -0600)]
layers: Change threading layer file name.
Threading layer file name was ThreadingChecker.
That was inconsistent with the layer name.
Tobin Ehlis [Thu, 16 Apr 2015 18:51:37 +0000 (12:51 -0600)]
Add GetPhysicalDeviceExtensionInfo() function to API
Added function to driver, currently returning a count of 0 and VK_ERROR_INVALID_VALUE if an attempt it made to retrieve extension properties.
This change is slightly leading another so the first paramter is currently "VkPhysicalGpu" but should be migrated to "VkPhysicalDevice" when that change comes in.
Tobin Ehlis [Thu, 16 Apr 2015 17:17:12 +0000 (11:17 -0600)]
layers: Removing old GetExtensionSupport API call
Tobin Ehlis [Thu, 16 Apr 2015 16:04:35 +0000 (10:04 -0600)]
demos: Remove use of GetExtensionSupport API that's going away
Courtney Goeltzenleuchter [Thu, 16 Apr 2015 00:21:13 +0000 (18:21 -0600)]
bug 13466: Allow writing query results to buffer memory
Mark Lobodzinski [Thu, 16 Apr 2015 16:44:05 +0000 (11:44 -0500)]
vulkan: Updated vulkan.h for revision 79 -- Bug #13464
Implemented the changes required for adding fine-grained synchronization
to vkBindMemoryObject and related APIs.
Courtney Goeltzenleuchter [Thu, 16 Apr 2015 15:29:43 +0000 (09:29 -0600)]
glave: Disable, will update on separate branch
Mark Lobodzinski [Thu, 16 Apr 2015 13:52:00 +0000 (08:52 -0500)]
vulkan.h: V74. Unify memory pools. Bug #13633.
Simplify the memory API to use one pool for both image and buffer resources.
Tony Barbour [Mon, 13 Apr 2015 21:02:52 +0000 (15:02 -0600)]
vulkan.h: Rename parameters in vkCmdResolveImage calls
Tony Barbour [Mon, 13 Apr 2015 19:11:12 +0000 (13:11 -0600)]
intel: Fix xglCmdImageResolve doesn't properly support MSAA texture arrays
Conflicts:
icd/intel/cmd_meta.c
include/vulkan.h
Jon Ashburn [Thu, 16 Apr 2015 00:03:47 +0000 (18:03 -0600)]
misc: Remove validation level
bug 13686
Tobin Ehlis [Wed, 15 Apr 2015 23:19:18 +0000 (17:19 -0600)]
layers: Add ThreadingChecker as a Validation layer
Tobin Ehlis [Wed, 15 Apr 2015 23:04:03 +0000 (17:04 -0600)]
layers: Improve validate helpers treatment of flag enums
Mike Stroyan [Thu, 2 Apr 2015 17:59:05 +0000 (11:59 -0600)]
layers: Add threading checking layer
New layer checks for use of objects from multiple threads.