GregF [Fri, 11 Dec 2015 17:11:28 +0000 (10:11 -0700)]
SPV toolchain: update for SDK 0.10.1
Mark Lobodzinski [Fri, 11 Dec 2015 21:55:11 +0000 (14:55 -0700)]
layers: LX234, Fix memory validation for VK_WHOLE_SIZE in memory ranges
Mark Lobodzinski [Fri, 11 Dec 2015 18:56:07 +0000 (11:56 -0700)]
layers: LX232, Add contstructor for DrawState struct
PIPELINE_NODE was getting treated as POD with memcpy/memsets.
Mark Lobodzinski [Fri, 11 Dec 2015 18:23:07 +0000 (11:23 -0700)]
layers: LX231, Fix DeviceLimits windows JSON file
Mark Lobodzinski [Fri, 11 Dec 2015 18:17:49 +0000 (11:17 -0700)]
layers: LX230, Complete initialization of MEM_OBJ_INFO structure
Fields added to MemTracker struct were not initialized
Mark Lobodzinski [Fri, 11 Dec 2015 18:05:33 +0000 (11:05 -0700)]
layers: LX229, Fix swapchain layer imageArrayLayers caps check
Jon Ashburn [Fri, 11 Dec 2015 17:45:00 +0000 (10:45 -0700)]
loader: Fix bug where dynamic dispatch for layer dev exts needs to come later
GetDeviceProcAddr dynamic dispatch init was happening too soon before layer
device extension was enabled. Fix it.
Jon Ashburn [Fri, 11 Dec 2015 16:41:34 +0000 (09:41 -0700)]
loader: In CreateDevice trampoline code allow wrapped PhysicalDevice objects
It was assuming object was not wrapped. Now look up object in instance structure
based on dispatch table pointer.
Michael Worcester [Thu, 10 Dec 2015 18:06:24 +0000 (18:06 +0000)]
Add an 'all' debug flag
Jon Ashburn [Fri, 11 Dec 2015 02:12:21 +0000 (19:12 -0700)]
layers: Some debug_marker fixes for draw state
Jon Ashburn [Fri, 11 Dec 2015 01:20:52 +0000 (18:20 -0700)]
layers: Add device extension entrypoints to JSON bug #15012
Jon Ashburn [Fri, 11 Dec 2015 01:17:34 +0000 (18:17 -0700)]
loader: Add support for device extension entrypoints in layer JSON files
Bugzilla #15012
Jon Ashburn [Thu, 10 Dec 2015 15:51:10 +0000 (08:51 -0700)]
loader: Convert ext list helper functions to generic form
This allows future changes where the device and instance ext lists are different
types.
BogDan Vatra [Thu, 10 Dec 2015 07:35:08 +0000 (09:35 +0200)]
Fix crash: pApplicationInfo is not mandatory
Courtney Goeltzenleuchter [Thu, 19 Nov 2015 22:19:56 +0000 (15:19 -0700)]
nulldrv: Create icd json file for nulldrv
Courtney Goeltzenleuchter [Mon, 30 Nov 2015 19:16:05 +0000 (12:16 -0700)]
nulldrv: Add json for null driver
The null driver is useful for testing code changes in
layers and the loader that don't depend on a real ICD
so add a json file to make it easier to use.
Courtney Goeltzenleuchter [Tue, 17 Nov 2015 20:17:12 +0000 (13:17 -0700)]
misc: Update dependencies
Jon Ashburn [Tue, 8 Dec 2015 23:36:22 +0000 (16:36 -0700)]
demos: Fix bug in tri so it uses a realloc callback since it uses alloc callback
Mark Lobodzinski [Tue, 8 Dec 2015 20:47:14 +0000 (13:47 -0700)]
layers: LX222, suppress warning on partial CmdClearAttachment calls
Drawstate will warn if this call is made in a renderpass BEFORE making a draw
call. However, this is OK if only a subset of the attachment is being cleared.
David Pinedo [Tue, 8 Dec 2015 18:52:30 +0000 (11:52 -0700)]
Layers: changed one more doc file for new layer names
David Pinedo [Tue, 8 Dec 2015 00:49:43 +0000 (17:49 -0700)]
Loader doc: Modifed WindowsICDs.txt
Mark Lobodzinski [Mon, 7 Dec 2015 22:55:11 +0000 (15:55 -0700)]
layers: LX223, Properly handle NULL pipelineCache in pipeline create routines
ObjectTracker was choking on null compute pipeline caches. Disabled validation check
on null pipelineCaches for ONLY Create[Compute|Graphics]Pipelines APIs.
Mark Lobodzinski [Fri, 4 Dec 2015 17:11:56 +0000 (10:11 -0700)]
layers: Wrap up windows/test issues with DrawState/ShaderChecker merge
Tobin Ehlis [Thu, 3 Dec 2015 16:40:56 +0000 (09:40 -0700)]
layers: MR77, Add draw-time checks for descriptorSet compatibility
When PSO is created, gather the group of sets that are actually used by that PSO.
Then, at Draw time, verify that for each set used by the bound PSO, there is a
corresponding valid descriptorSet bound which also matches the associated
setLayout from the PSO's pipelineLayout. Added two more tests to the
DescriptorSetCompatibility test case to verify that these checks correctly fire.
Tobin Ehlis [Wed, 2 Dec 2015 20:53:34 +0000 (13:53 -0700)]
layers: MR75, Smart Merge of DrawState and ShaderChecker into DrawState layer
Cleaned up the merge to share data structs. Both layers had maps of descriptorSetLayouts,
pipelineLayouts and renderPasses so merged those into single map for each.
Tobin Ehlis [Tue, 1 Dec 2015 16:48:58 +0000 (09:48 -0700)]
layers: MR75, Merge DrawState and ShaderChecker into DrawState layer
This is the initial "dumb" merge where a few data structures are now duplicated
within DrawState. This is intentional to simplify the transition and a follow-on
commit will fix these inefficiencies.
Conflicts:
layers/draw_state.cpp
Tobin Ehlis [Tue, 1 Dec 2015 16:57:09 +0000 (09:57 -0700)]
tests: MR72, Add tests to verify validation layout compatibility checks
Conflicts:
layers/draw_state.cpp
Tony Barbour [Fri, 4 Dec 2015 20:24:39 +0000 (13:24 -0700)]
Make sure all createInfo is used creating instance
FslNopper [Tue, 1 Dec 2015 12:17:34 +0000 (13:17 +0100)]
Fixes, that build is possible with Xlib configuration.
Courtney Goeltzenleuchter [Thu, 3 Dec 2015 17:47:42 +0000 (10:47 -0700)]
misc: remove unneeded stdint.h and stdbool.h
All the necessary platform defines/includes are now part of
vk_platform.h, so don't need them in vk_icd.h
Mark Lobodzinski [Thu, 3 Dec 2015 22:42:32 +0000 (15:42 -0700)]
layers: Reenable memory barrier validation
Mark Lobodzinski [Wed, 2 Dec 2015 23:12:08 +0000 (16:12 -0700)]
layers: Fix WSI-related build warning in APIDump
Xcb parameter was uint32_t, interpreted as void*.
Mark Lobodzinski [Wed, 2 Dec 2015 20:26:07 +0000 (13:26 -0700)]
demos: Fix ObjectTracker error in cube demo
Jon Ashburn [Wed, 2 Dec 2015 14:57:09 +0000 (07:57 -0700)]
demos: Update vulkaninfo so it prints a single number for layer version
David Pinedo [Wed, 2 Dec 2015 00:25:01 +0000 (17:25 -0700)]
Doc: change api_version and layer names in documentation files
Jon Ashburn [Wed, 2 Dec 2015 00:11:02 +0000 (17:11 -0700)]
loader: Fix layer library_path bug
Cody Northrop [Mon, 30 Nov 2015 20:40:50 +0000 (13:40 -0700)]
toolchain: Add option to only build glslang
New usage:
update_external_sources.sh -g
or:
update_external_sources.sh --glslang-only
Building LunarGLASS by default takes a long time on systems that don't
need it.
Jon Ashburn [Tue, 1 Dec 2015 00:21:25 +0000 (17:21 -0700)]
loader: Add initialization of loader dispatch table for wsi device extensions
Since we had trampoline code for these, layers were getting skipped when called
thru the trampoline code.
Mark Lobodzinski [Mon, 30 Nov 2015 23:48:53 +0000 (16:48 -0700)]
layers: Disable image layout transition validation in DrawState
Caused too many invalid failure messages
Mark Lobodzinski [Fri, 27 Nov 2015 22:23:23 +0000 (15:23 -0700)]
layers: Fix swapchain layer errors
Part of bringing WSI to header version 210
Jon Ashburn [Mon, 30 Nov 2015 15:23:10 +0000 (08:23 -0700)]
loader: Fix WSI compilation error if not XCB
Jon Ashburn [Sat, 28 Nov 2015 00:57:12 +0000 (17:57 -0700)]
loader: Add documentation fo loader handling of VK_surface_*KHR extensions.
Document the special handling og vkSurfaceKHR objects.
Mark Lobodzinski [Thu, 26 Nov 2015 17:59:58 +0000 (10:59 -0700)]
wsi: Various fixes and Windows build issues
Jon Ashburn [Thu, 26 Nov 2015 00:55:49 +0000 (17:55 -0700)]
loader: Add terminator functions for Create*SurfaceKHR functions
These need to call down the chain for layer intercept.
Also remove DestroySurfaceKHR from ICD table.
Mark Lobodzinski [Wed, 25 Nov 2015 23:13:36 +0000 (16:13 -0700)]
vktrace: Renable trace/replay builds by default
Ian Elliott [Wed, 25 Nov 2015 21:43:02 +0000 (14:43 -0700)]
loader: Convert vkDestroySurfaceKHR() to have a terminator.
Mark Lobodzinski [Wed, 25 Nov 2015 20:26:15 +0000 (13:26 -0700)]
wsi: Moved definition of CreateXxxSurface extension to CMakefile
Removed component-specific definitions
Mark Lobodzinski [Wed, 25 Nov 2015 15:44:57 +0000 (08:44 -0700)]
layers: WSI extension fixes for APIDump
Mark Lobodzinski [Tue, 24 Nov 2015 22:50:44 +0000 (15:50 -0700)]
layers: Add WSI extensions to autogen code
Conflicts:
icd/common/icd.h
vulkan.py
Mark Lobodzinski [Tue, 24 Nov 2015 21:03:18 +0000 (14:03 -0700)]
vulkan: Add win32 and xcb extensions to vulkan.py
Conflicts:
vulkan.py
Jon Ashburn [Tue, 24 Nov 2015 23:40:36 +0000 (16:40 -0700)]
layers: Fix documentation file for new wsi surface ext
Mark Lobodzinski [Tue, 24 Nov 2015 22:49:46 +0000 (15:49 -0700)]
loader: Fix typo in wsi file
Ian Elliott [Tue, 24 Nov 2015 22:39:10 +0000 (15:39 -0700)]
loader: Add vkGetPhysicalDevice*PresentationSupportKHR()
These queries involve trampoline and terminator functions (the latter
of which calls the ICD's function).
Jon Ashburn [Tue, 24 Nov 2015 18:12:20 +0000 (11:12 -0700)]
vulkan: Fix parameter name for GetSwapchainImagesKHR
Mark Lobodzinski [Tue, 24 Nov 2015 19:04:15 +0000 (12:04 -0700)]
wsi: Fix windows build issues
Mark Lobodzinski [Tue, 24 Nov 2015 17:28:31 +0000 (10:28 -0700)]
layers: Fix build issue and fence warnings in ObjectTracker
Jon Ashburn [Tue, 24 Nov 2015 01:55:15 +0000 (18:55 -0700)]
layers: add DestroySurfaceKHR to instance dispatch table
Jon Ashburn [Tue, 24 Nov 2015 01:23:29 +0000 (18:23 -0700)]
misc: Add DestroySurfaceKHR to the codegen WSI surface extension
Conflicts:
vulkan.py
Ian Elliott [Tue, 24 Nov 2015 16:47:14 +0000 (09:47 -0700)]
WSI-ICD: Fix Windows compilation error.
Ian Elliott [Mon, 23 Nov 2015 23:18:59 +0000 (16:18 -0700)]
TEMPORARY: TURN OFF COMPILATION OF TRACE/REPLAY ... DON'T KEEP THIS!
Ian Elliott [Mon, 23 Nov 2015 22:25:28 +0000 (15:25 -0700)]
object_track: Remove some obsolete code
Ian Elliott [Mon, 23 Nov 2015 19:48:15 +0000 (12:48 -0700)]
demos: Some cleanup, including calling GIPA.
Includes Calling GIPA instead of GDPA for functions that moved to instance
extension.
Ian Elliott [Mon, 23 Nov 2015 17:17:23 +0000 (10:17 -0700)]
loader: Address Jon Ashburn's review comments.
It took a few commits (squashed down into 1) to get it correct. Includes:
Use loader_heap_{alloc|free}().
Try to deal correctly with initializing the vkCreate*SurfaceKHR()'s.
Ian Elliott [Fri, 20 Nov 2015 23:39:34 +0000 (16:39 -0700)]
swapchain: Can build after major updates for new WSI (works?)
Plus: Move 3 entrypoints from GDPA to GIPA
Ian Elliott [Fri, 20 Nov 2015 21:13:17 +0000 (14:13 -0700)]
layers: Convert most of the layers to the new WSI.
Ian Elliott [Fri, 20 Nov 2015 20:08:34 +0000 (13:08 -0700)]
demos: Enabled the appropriate platform-specific WSI extension.
Ian Elliott [Fri, 20 Nov 2015 18:55:46 +0000 (11:55 -0700)]
demos: Get compiling with new WSI extensions.
Conflicts:
demos/cube.c
demos/tri.c
demos/vulkaninfo.c
Ian Elliott [Thu, 19 Nov 2015 23:39:21 +0000 (16:39 -0700)]
loader: Add WSI "device" trampoline funcs (e.g. vkCreateSwapchainKHR).
This is because these entrypoints are now "statically defined" (i.e. the loader
on Windows, Linux, and Android will export these symbols directly, with no need
to call a GPA() function).
Ian Elliott [Thu, 19 Nov 2015 23:05:09 +0000 (16:05 -0700)]
loader: Add new vkGetPhysicalDeviceSurface*KHR() functions.
- vkGetPhysicalDeviceSurfaceCapabilitiesKHR()
- vkGetPhysicalDeviceSurfaceFormatsKHR()
- vkGetPhysicalDeviceSurfacePresentModesKHR()
Ian Elliott [Thu, 19 Nov 2015 20:14:05 +0000 (13:14 -0700)]
loader: Wrote vk{Create|Destroy}*SurfaceKHR() trampoline functions.
This is an area where the loader-ICD interface is different. Instead of the
trampoline function calling down a call-chain, For Windows and Linux, this
function actually fully implements the function. A VkSurfaceKHR is actually a
pointer to a platform-specific struct (declared in "vk_icd.h"). The memory for
the struct is allocated, and the struct is initialized. All ICDs and layers on
Windows and Linux are supposed to treat VkSurfaceKHR's (e.g. in other calls) as
such a pointer to a struct.
Also, per a Skype conversation with Jon Ashburn, there will be
per-WSI-extension sections of the file, with pairs of trampoline-terminator
functions right next to each other.
Ian Elliott [Thu, 19 Nov 2015 19:37:51 +0000 (12:37 -0700)]
loader: Export the trampoline code for vkGetPhysicalDeviceSurfaceSupportKHR
Also, fix which extension is used to enable this function.
Ian Elliott [Thu, 19 Nov 2015 18:58:08 +0000 (11:58 -0700)]
loader: Create defaults for which platforms WSI is supported on.
Windows: VK_USE_PLATFORM_WIN32_KHR
Linux: VK_USE_PLATFORM_XCB_KHR
Ian Elliott [Fri, 30 Oct 2015 23:45:05 +0000 (17:45 -0600)]
loader: Started plumbing the platform extensions.
Ian Elliott [Fri, 30 Oct 2015 21:28:23 +0000 (15:28 -0600)]
loader: Started porting loader to new WSI (GIPA missing).
Ian Elliott [Wed, 18 Nov 2015 22:32:38 +0000 (15:32 -0700)]
nulldrv: Get compiling.
Conflicts:
icd/common/icd.h
Ian Elliott [Wed, 18 Nov 2015 22:20:45 +0000 (15:20 -0700)]
loader: Get loader compiling.
Ian Elliott [Wed, 18 Nov 2015 21:57:08 +0000 (14:57 -0700)]
WSI: Eliminate a lot of references to WSI header files.
Conflicts:
include/vulkan/vk_layer.h
loader/loader.h
Ian Elliott [Wed, 18 Nov 2015 19:19:12 +0000 (12:19 -0700)]
WSI-ICD: Created per-platform structs for platform-specific info.
Per Khronos Bugzilla Bug 15077, on Windows and Linux, VkSurfaceKHR is treated
as a pointer to platform-specific structs that contain the platform-specific
connection and surface/window info. The Vulkan loader vkCreate*SurfaceKHR()
functions will fill in the struct. ICDs and layers will cast VkSurfaceKHR to a
pointer to the appropriate VkIcdSurface* struct.
Ian Elliott [Fri, 30 Oct 2015 17:45:42 +0000 (11:45 -0600)]
WSI-debug_report: Add VK_OBJECT_TYPE_SURFACE_KHR
Ian Elliott [Thu, 29 Oct 2015 22:35:06 +0000 (16:35 -0600)]
vulkan.py: Changes in previous WSI functions.
Ian Elliott [Wed, 18 Nov 2015 18:47:20 +0000 (11:47 -0700)]
nulldrv: WSI hand-edits
Ian Elliott [Wed, 18 Nov 2015 00:46:38 +0000 (17:46 -0700)]
loader: Hand-edits
Ian Elliott [Wed, 18 Nov 2015 00:29:40 +0000 (17:29 -0700)]
WSI: sed-generated changes to WSI code (not all that's needed).
Conflicts:
demos/cube.c
demos/tri.c
demos/vulkaninfo.c
icd/common/icd.h
loader/loader.h
Ian Elliott [Tue, 17 Nov 2015 23:53:14 +0000 (16:53 -0700)]
WSI: Remove old WSI headers (content now in "vulkan.h").
Ian Elliott [Wed, 18 Nov 2015 19:24:57 +0000 (12:24 -0700)]
WSI: Add WSI content to "vulkan.h" and "vk_platform.h".
This commit makes those files equal to the official 0.210.0 version of those
files.
Mark Lobodzinski [Tue, 10 Nov 2015 22:25:01 +0000 (15:25 -0700)]
layers: LX195, Drawstate ignores compute pipelines
Mark Lobodzinski [Mon, 30 Nov 2015 15:37:47 +0000 (08:37 -0700)]
layers: Update README file for new SDK releases
Chris Forbes [Thu, 26 Nov 2015 21:49:09 +0000 (10:49 +1300)]
layers/SC: Fix location counting for stages which take arrayed input.
Jeremy Hayes [Thu, 26 Nov 2015 20:32:58 +0000 (13:32 -0700)]
layers: Fix path for vulkan header.
Chris Forbes [Mon, 23 Nov 2015 22:13:29 +0000 (11:13 +1300)]
layers/SC: LX187: compute size of array and matrix types
This fixes spurious warnings previously emitted by SC when using
larger-than-vec4 types across the VI->VS interface.
Chris Forbes [Mon, 23 Nov 2015 22:13:21 +0000 (11:13 +1300)]
layers/SC: consider types larger than vec4 when collecting interfaces
This is required for proper handling of array or matrix types on the
VI->VS interface.
Chris Forbes [Mon, 23 Nov 2015 22:13:05 +0000 (11:13 +1300)]
layers/SC: fix a bogus leftover comment in descriptor validation
Chris Forbes [Tue, 24 Nov 2015 20:36:03 +0000 (09:36 +1300)]
layers: Use spirv.hpp from colocated glslang tree
Chris Forbes [Tue, 24 Nov 2015 19:32:46 +0000 (08:32 +1300)]
layers/SC: Delete disabled FS broadcast checking code
The support for collecting builtins on an interface is still kept
however -- we're likely to want to validate other builtin usage against
the pipeline config.
Michael Lentine [Tue, 24 Nov 2015 15:48:23 +0000 (09:48 -0600)]
Update param checker.
Verify that the app isn't making an empty draw.
Michael Lentine [Mon, 23 Nov 2015 23:52:53 +0000 (17:52 -0600)]
layers: Remove mem/object deletion ordering
Current the spec allows for deleting memory backing an option and then
subsequently deleting the object which throws an error.
Michael Lentine [Fri, 20 Nov 2015 17:48:52 +0000 (09:48 -0800)]
Update access bits for 210 header.
Jon Ashburn [Wed, 25 Nov 2015 15:25:11 +0000 (08:25 -0700)]
demos: Fix layer names for cube
David Pinedo [Tue, 24 Nov 2015 16:00:24 +0000 (09:00 -0700)]
Layers: changed layer names to conform to spec
GregF [Mon, 23 Nov 2015 22:14:18 +0000 (15:14 -0700)]
layers: port ShaderChecker layer to SPIR-V 1.0