platform/upstream/Vulkan-Tools.git
8 years agoSwapchain: Enhance validation of vkCreateSwapchainKHR().
Ian Elliott [Mon, 28 Dec 2015 22:23:57 +0000 (15:23 -0700)]
Swapchain: Enhance validation of vkCreateSwapchainKHR().

8 years agotri/cube: : Support the new VkCompositeAlphaFlagBitsKHR.
Ian Elliott [Mon, 28 Dec 2015 22:25:33 +0000 (15:25 -0700)]
tri/cube: : Support the new VkCompositeAlphaFlagBitsKHR.

8 years agoSwapchain: Replace implementation of presentModeStr()
Ian Elliott [Mon, 28 Dec 2015 22:04:49 +0000 (15:04 -0700)]
Swapchain: Replace implementation of presentModeStr()

8 years agoSwapchain: Rename deviceSwapchainExtensionEnabled->swapchainExtensionEnabled
Ian Elliott [Tue, 29 Dec 2015 23:45:49 +0000 (16:45 -0700)]
Swapchain: Rename deviceSwapchainExtensionEnabled->swapchainExtensionEnabled

8 years agoSwapchain: Rename swapchainExtensionEnabled->surfaceExtensionEnabled
Ian Elliott [Tue, 29 Dec 2015 23:44:39 +0000 (16:44 -0700)]
Swapchain: Rename swapchainExtensionEnabled->surfaceExtensionEnabled

8 years agoSwapchain: Start validating the new VkSurfaceKHR object.
Ian Elliott [Tue, 22 Dec 2015 19:18:12 +0000 (12:18 -0700)]
Swapchain: Start validating the new VkSurfaceKHR object.

Do so for Android as well as the Linux/Windows "platforms".

8 years agowindows Runtime installer: fix files that were 0 length.
David Pinedo [Wed, 6 Jan 2016 18:17:38 +0000 (11:17 -0700)]
windows Runtime installer: fix files that were 0 length.

Not sure why they were 0 length

8 years agolayers: Add documentation for new INVALID_ALIASING check in mem_tracker
Tobin Ehlis [Wed, 6 Jan 2016 17:03:38 +0000 (10:03 -0700)]
layers: Add documentation for new INVALID_ALIASING check in mem_tracker

8 years agolayers: Complete make-dependency fix
Mark Lobodzinski [Wed, 6 Jan 2016 17:56:16 +0000 (10:56 -0700)]
layers: Complete make-dependency fix

8 years agotoolchain: Add spirv-tools to Windows script
Cody Northrop [Wed, 30 Dec 2015 18:53:18 +0000 (11:53 -0700)]
toolchain: Add spirv-tools to Windows script

8 years agotoolchain: Update parameter parsing on Linux
Cody Northrop [Tue, 29 Dec 2015 23:25:10 +0000 (16:25 -0700)]
toolchain: Update parameter parsing on Linux

Lack of parameters builds everything, as before.

   ./update_external_sources.sh
   Building glslang, LunarGLASS, spirv-tools

Modified parameters:

   --glslang-only becomes --glslang

Current parameters:

   -g | --glslang      # enable glslang
   -l | --LunarGLASS   # enable LunarGLASS
   -s | --spirv-tools  # enable spirv-tools

Mix and match:

   ./update_external_sources.sh -g -s
   Building glslang (-g)
   Building spirv-tools (-s)

8 years agotoolchain: Add spirv-tools to update_external_sources.sh
Cody Northrop [Tue, 29 Dec 2015 21:42:24 +0000 (14:42 -0700)]
toolchain: Add spirv-tools to update_external_sources.sh

8 years agoAndroid build fixes.
Michael Lentine [Tue, 5 Jan 2016 17:10:15 +0000 (11:10 -0600)]
Android build fixes.

8 years agowindows RT installer: Remove include files. Cosmetic changes to nsi file.
David Pinedo [Wed, 6 Jan 2016 16:59:58 +0000 (09:59 -0700)]
windows RT installer: Remove include files. Cosmetic changes to nsi file.

8 years agolayers: Fix circular make depency
Mark Lobodzinski [Wed, 6 Jan 2016 00:17:55 +0000 (17:17 -0700)]
layers: Fix circular make depency

8 years agoglslang: move to latest version
GregF [Tue, 15 Dec 2015 19:03:48 +0000 (12:03 -0700)]
glslang: move to latest version

8 years agolayers: MR105, Add aliasing check for buffer/image overlap
Michael Lentine [Tue, 22 Dec 2015 23:30:09 +0000 (17:30 -0600)]
layers: MR105, Add aliasing check for buffer/image overlap

8 years agolayers: LX260, Clean up AccessMask validation message in DrawState
Mark Lobodzinski [Tue, 5 Jan 2016 20:35:29 +0000 (13:35 -0700)]
layers: LX260, Clean up AccessMask validation message in DrawState

8 years agodemos: Fix up dstAccessMasks and move pipeline barriers for present to bottom of...
Tony Barbour [Tue, 5 Jan 2016 16:59:05 +0000 (09:59 -0700)]
demos: Fix up dstAccessMasks and move pipeline barriers for present to bottom of pipe

8 years agolayers: LX255, Print readable version of VkAccessFlags
Mark Lobodzinski [Tue, 5 Jan 2016 18:32:53 +0000 (11:32 -0700)]
layers: LX255, Print readable version of VkAccessFlags

Also update related validation messages to indicate src/dest accessMask

8 years agolayers: LX249, Remove MSAA coherency checks from BeginRenderPass
Mark Lobodzinski [Thu, 31 Dec 2015 23:36:52 +0000 (16:36 -0700)]
layers: LX249, Remove MSAA coherency checks from BeginRenderPass

Don't see any language in the spec saying that sample counts need to be valid at
RP begin time. A PSO with matching MSAA state can be bound after the RP is
started.

8 years agoWindowsRTInstaller: Fix typo in command in nsi script
David Pinedo [Mon, 4 Jan 2016 23:38:15 +0000 (16:38 -0700)]
WindowsRTInstaller: Fix typo in command in nsi script

8 years agoWindows Runtime Installer: Initial creation in LoaderAndTools
David Pinedo [Mon, 4 Jan 2016 23:31:57 +0000 (16:31 -0700)]
Windows Runtime Installer: Initial creation in LoaderAndTools

8 years agoloader: Convert getenv on Windows to use GetEnvironmentVariable
Jon Ashburn [Mon, 4 Jan 2016 21:01:38 +0000 (14:01 -0700)]
loader: Convert getenv on Windows to use GetEnvironmentVariable

This allows loader to get updated  environment variables. That is after the CRT
has been initialized.

8 years agolayers: Enable fine-grained filtering of swapchain log messages
Mark Lobodzinski [Mon, 4 Jan 2016 22:54:59 +0000 (15:54 -0700)]
layers: Enable fine-grained filtering of swapchain log messages

8 years agolayers: Enable fine-grained filtering of generated layer log messages
Mark Lobodzinski [Mon, 4 Jan 2016 22:48:11 +0000 (15:48 -0700)]
layers: Enable fine-grained filtering of generated layer log messages

Layers object_tracker, threading, generic, basic, etc.

8 years agolayers: Enable fine-grained filtering of param_checker log messages
Mark Lobodzinski [Mon, 4 Jan 2016 20:48:15 +0000 (13:48 -0700)]
layers: Enable fine-grained filtering of param_checker log messages

8 years agolayers: Enable fine-grained filtering of mem_tracker log messages
Mark Lobodzinski [Mon, 4 Jan 2016 20:43:45 +0000 (13:43 -0700)]
layers: Enable fine-grained filtering of mem_tracker log messages

8 years agolayers: Enable fine-grained filtering of image layer log messages
Mark Lobodzinski [Mon, 4 Jan 2016 20:32:45 +0000 (13:32 -0700)]
layers: Enable fine-grained filtering of image layer log messages

8 years agolayers: Enable fine-grained filtering of device_limits log messages
Mark Lobodzinski [Mon, 4 Jan 2016 20:18:50 +0000 (13:18 -0700)]
layers: Enable fine-grained filtering of device_limits log messages

8 years agolayers: Enable fine-grained filtering of draw_state log messages
Mark Lobodzinski [Mon, 4 Jan 2016 20:18:10 +0000 (13:18 -0700)]
layers: Enable fine-grained filtering of draw_state log messages

Includes shader_checker messages

8 years agoloader: MR111, Fix memleaks
BogDan Vatra [Mon, 4 Jan 2016 12:05:49 +0000 (14:05 +0200)]
loader: MR111, Fix memleaks

[instance|dev] activated_layer_list is always allocated so, we need to always free it.

8 years agolayers: LX258, Fix draw_state infinite loop in ResetDescriptorPool
Mark Lobodzinski [Mon, 4 Jan 2016 16:40:19 +0000 (09:40 -0700)]
layers: LX258, Fix draw_state infinite loop in ResetDescriptorPool

8 years agomisc: For header vers 221; add deviceFeature drawIndirectFirstInstance
Jon Ashburn [Thu, 31 Dec 2015 19:47:52 +0000 (12:47 -0700)]
misc: For header vers 221; add deviceFeature drawIndirectFirstInstance

8 years agomisc: For header vers 220, fix BOTTOM_OF_PIPE typo
Jon Ashburn [Thu, 31 Dec 2015 19:32:16 +0000 (12:32 -0700)]
misc: For header vers 220, fix BOTTOM_OF_PIPE typo

8 years agomisc: Add barrier pipeline stage BOTTOM_OF_PIPE; for header vers 219
Jon Ashburn [Thu, 31 Dec 2015 19:14:37 +0000 (12:14 -0700)]
misc: Add barrier pipeline stage BOTTOM_OF_PIPE; for header vers 219
Use BOTTOM_PIPE for barrier for WSI presentation.

8 years agoheaders: debug_report ext and pipelineCache version additions for header 218
Jon Ashburn [Thu, 31 Dec 2015 16:25:47 +0000 (09:25 -0700)]
headers: debug_report ext and pipelineCache version additions for header 218

8 years agolayers: LX254, Fix typos in Image Layer error messages
Mark Lobodzinski [Thu, 31 Dec 2015 16:49:50 +0000 (09:49 -0700)]
layers: LX254, Fix typos in Image Layer error messages

8 years agolayers: Fix object_tracker name in validation documentation generate script
Jon Ashburn [Thu, 31 Dec 2015 16:44:26 +0000 (09:44 -0700)]
layers: Fix object_tracker name in validation documentation generate script

8 years agomisc: rename descriptorSetlayout pBinding; update to header vers 217
Jon Ashburn [Thu, 31 Dec 2015 01:01:16 +0000 (18:01 -0700)]
misc: rename descriptorSetlayout pBinding; update to header vers 217

8 years agomisc: Add pipeline stage flags to wait upon for queueSubmit semaphores; v216
Jon Ashburn [Wed, 30 Dec 2015 23:42:50 +0000 (16:42 -0700)]
misc: Add pipeline stage flags to wait upon for queueSubmit semaphores; v216

8 years agomisc: Changes to go to header v215 including vulkan.h version update
Jon Ashburn [Wed, 30 Dec 2015 21:52:49 +0000 (14:52 -0700)]
misc: Changes to go to header v215 including vulkan.h version update

8 years agomisc: Changes to go to header v214 including vulkan.h version update
Jon Ashburn [Wed, 30 Dec 2015 21:39:53 +0000 (14:39 -0700)]
misc: Changes to go to header v214 including vulkan.h version update

8 years agobump header version to 213.1
Jon Ashburn [Wed, 30 Dec 2015 21:09:31 +0000 (14:09 -0700)]
bump header version to 213.1

This includes WSI changes that are post vers 213 so that is why use 213.1

8 years agomisc: rename startXXX to firstXXX and add firstXXX param to setviewport/scissor
Jon Ashburn [Wed, 30 Dec 2015 21:06:55 +0000 (14:06 -0700)]
misc: rename startXXX to firstXXX and add firstXXX param to setviewport/scissor

Header file changes going to 213 version

8 years agolayers: Rename Layer/library/json files for consistency
Mark Lobodzinski [Wed, 30 Dec 2015 15:16:12 +0000 (08:16 -0700)]
layers: Rename Layer/library/json files for consistency

Renamed layers from (for example) xxx_DrawState to xxx_draw_state
Renamed JSON files
Renamed libraries
Renamed object_track.* to object_tracker.*
Renamed apidump.h to api_dump.h
Renamed screen_shot layer to screenshot
Renamed APIDump layer settings file options to ApiDump
Bug fixes here and there from prior renames

8 years agolayers: MR89, Fix gtests for android
Michael Lentine [Fri, 11 Dec 2015 18:49:51 +0000 (10:49 -0800)]
layers: MR89, Fix gtests for android

Conflicts:
layers/draw_state.cpp
layers/image.cpp
layers/mem_tracker.cpp

8 years agomisc: Bump header to 212.1
Jon Ashburn [Tue, 29 Dec 2015 21:57:48 +0000 (14:57 -0700)]
misc: Bump header to 212.1

Adds rest of version 212 changes (timestamp in DeviceLimits) that wasn't
in the 217 WSI header updates.

8 years agovktrace: version 217 WSI changes
Jon Ashburn [Tue, 29 Dec 2015 21:21:25 +0000 (14:21 -0700)]
vktrace: version 217 WSI changes

8 years agodemos: Fix win32_surface compile errors for demos and tests
Jon Ashburn [Fri, 25 Dec 2015 00:08:01 +0000 (17:08 -0700)]
demos: Fix win32_surface compile errors for demos and tests

8 years agonulldrv: Fix swapchain compile error
Jon Ashburn [Thu, 24 Dec 2015 23:59:07 +0000 (16:59 -0700)]
nulldrv: Fix swapchain compile error

8 years agodemos: Version 217 WSI changes.
Ian Elliott [Fri, 11 Dec 2015 22:52:12 +0000 (15:52 -0700)]
demos: Version 217 WSI changes.

8 years agolayers: Version 217 WSI changes.
Ian Elliott [Fri, 11 Dec 2015 22:03:05 +0000 (15:03 -0700)]
layers: Version 217 WSI changes.

8 years agonulldrv: Version 217 WSI changes.
Ian Elliott [Fri, 11 Dec 2015 20:31:36 +0000 (13:31 -0700)]
nulldrv: Version 217 WSI changes.

8 years agoloader: Version 217 WSI changes.
Ian Elliott [Fri, 11 Dec 2015 00:28:50 +0000 (17:28 -0700)]
loader: Version 217 WSI changes.

8 years agoWSI: Update "vulkan.h" with WSI contents of version 217.
Ian Elliott [Fri, 11 Dec 2015 00:11:21 +0000 (17:11 -0700)]
WSI: Update "vulkan.h" with WSI contents of version 217.

8 years agolayers: MR103, Improve image dependency validation
Michael Lentine [Tue, 22 Dec 2015 17:36:14 +0000 (11:36 -0600)]
layers: MR103, Improve image dependency validation

Remove duplicate dag creation and make sure image is valid if read first
in a subpass dag.

8 years agolayers: Fix windows build issue with drawstate merge requests
Mark Lobodzinski [Mon, 28 Dec 2015 22:51:07 +0000 (15:51 -0700)]
layers: Fix windows build issue with drawstate merge requests

8 years agolayers: MR101, Add DrawState validation of pDynamicOffsets
Tobin Ehlis [Thu, 17 Dec 2015 18:48:42 +0000 (11:48 -0700)]
layers: MR101, Add DrawState validation of pDynamicOffsets

At draw time, verify that any dynamic descriptors that are bound and used by the
pipeline do not overflow their buffer. This requires checking the combindation of
the pDynamicOffsets value from vkCmdBindDescriptorSets() for each descriptor
along with its offset and range from vkUpdateDescriptors() to makes sure this
combination doesn't overflow the buffer size.
Also added a test to hit this case along with some additional testing for
incorrect dynamicOffsetCount at vkCmdBindDescriptorSets() time.

Conflicts:
layers/draw_state.cpp

8 years agolayers: MR95, Add renderPass compatibility checks to DrawState
Tobin Ehlis [Wed, 16 Dec 2015 12:01:22 +0000 (05:01 -0700)]
layers: MR95, Add renderPass compatibility checks to DrawState

Add functions to check renderpass compatibility based on spec.
Add check for renderPass compatibility at vkBeginCommandBuffers() for a secondary
command buffer where a framebuffer is included. The renderPass for that framebuffer
must be compatible with the renderPass for the secondary command buffer.
Add checks for renderPass compatibility at time vkCmdExecuteCommands() is called.
If secondary command buffer renderPass is not compatible with active renderPass
from primary command buffer, flag an error.
Also added a check at vkCmdExecuteCommands() time to make sure that framebuffer
from active renderPass matches any framebuffer that was set in secondary command
buffer (if any).

Conflicts:
layers/draw_state.cpp

8 years agolayers: MR94, DrawState refactor to verify CmdBuffer RECORDING
Tobin Ehlis [Wed, 16 Dec 2015 15:19:42 +0000 (08:19 -0700)]
layers: MR94, DrawState refactor to verify CmdBuffer RECORDING

For all of the vkCmd* calls, we were checking to make CmdBuffer was in RECORDING
state and adding Cmd to internal tracking struct. It cleans up all of the vkCmd*
functions to do the RECORDING check inside of the addCmd() call.
This also fixes a few holes where we weren't doing the RECORDING state check.

Conflicts:
layers/draw_state.cpp
tests/layer_validation_tests.cpp

8 years agolayers: Fix DrawState BeginCommandBuffer check
Tobin Ehlis [Wed, 16 Dec 2015 14:17:23 +0000 (07:17 -0700)]
layers: Fix DrawState BeginCommandBuffer check

According to the spec, framebuffer parameter can be NULL when vkBeginCommandBuffer()
is called on a secondary command buffer, however it may result in lower performance.
Changed this ERROR to a PERF_WARN.

Conflicts:
layers/draw_state.cpp

8 years agolayers: Fix Drawstate issues with binding pipelines in/outside a renderpass
Mark Lobodzinski [Fri, 18 Dec 2015 22:35:38 +0000 (15:35 -0700)]
layers: Fix Drawstate issues with binding pipelines in/outside a renderpass

8 years agoloader: Don't override VK_LAYER_PATH for implicit layers
Jon Ashburn [Thu, 24 Dec 2015 20:58:35 +0000 (13:58 -0700)]
loader: Don't override VK_LAYER_PATH for implicit layers

8 years agoloader: Fix typo in CreateDevice so ICDs see filtered device extension list
Jon Ashburn [Thu, 24 Dec 2015 17:50:08 +0000 (10:50 -0700)]
loader: Fix typo in CreateDevice so ICDs see filtered device extension list

8 years agolayers: Add basic implicit layer JSON file as an example implicit layer
Jon Ashburn [Thu, 24 Dec 2015 17:11:10 +0000 (10:11 -0700)]
layers: Add basic implicit layer JSON file as an example implicit layer

8 years agoDemos: Fix name of MemTrack layer in tri.c demo
David Pinedo [Wed, 23 Dec 2015 20:43:48 +0000 (13:43 -0700)]
Demos: Fix name of MemTrack layer in tri.c demo

8 years agoFix Android layers build
Jesse Hall [Wed, 23 Dec 2015 05:27:55 +0000 (21:27 -0800)]
Fix Android layers build

Conflicts:
include/vulkan/vk_lunarg_debug_report.h

8 years agoloader: Properly filter ICD extensions
Courtney Goeltzenleuchter [Mon, 21 Dec 2015 23:41:47 +0000 (16:41 -0700)]
loader: Properly filter ICD extensions

As of NVIDIA driver 355.00.19, the ICD's CreateInstance
checks for invalid extension names and it turns out the
loader was passing on DEBUG_REPORT when it should have
been filtered out.
This change re-constructs the ICD's extension list to
do that filtering.

8 years agolayers: Fixes for issues resulting from MR87
Mark Lobodzinski [Fri, 18 Dec 2015 16:24:52 +0000 (09:24 -0700)]
layers: Fixes for issues resulting from MR87

8 years agolayers: MR87, Adding validation for image validity
Michael Lentine [Tue, 24 Nov 2015 23:55:33 +0000 (17:55 -0600)]
layers: MR87, Adding validation for image validity

Conflicts:
layers/mem_tracker.cpp

8 years agoBug 15314: Make clear for layers that the registry value must be 0.
Ian Elliott [Thu, 17 Dec 2015 17:22:33 +0000 (10:22 -0700)]
Bug 15314: Make clear for layers that the registry value must be 0.

8 years agoloader: Add support for implicit layers
Jon Ashburn [Fri, 18 Dec 2015 00:38:24 +0000 (17:38 -0700)]
loader: Add support for implicit layers

8 years agolayers: Remove vkCmdExecuteCommands checks that don't match spec
Tony Barbour [Thu, 17 Dec 2015 22:54:05 +0000 (15:54 -0700)]
layers: Remove vkCmdExecuteCommands checks that don't match spec

8 years agoloader: Fix erroneous call to loader_log previously added
Jon Ashburn [Thu, 17 Dec 2015 21:30:21 +0000 (14:30 -0700)]
loader: Fix erroneous call to loader_log previously added

8 years agolayers: bump debug_report version number
Jon Ashburn [Thu, 17 Dec 2015 21:27:03 +0000 (14:27 -0700)]
layers: bump debug_report version number

8 years agotri: remove unneeded cast
Courtney Goeltzenleuchter [Wed, 16 Dec 2015 23:42:59 +0000 (16:42 -0700)]
tri: remove unneeded cast

8 years agoloader: Fix compile error from rebase
Jon Ashburn [Thu, 17 Dec 2015 19:31:41 +0000 (12:31 -0700)]
loader: Fix compile error from rebase

8 years agoloader: Fix comment leader on def files
Courtney Goeltzenleuchter [Wed, 16 Dec 2015 21:57:27 +0000 (14:57 -0700)]
loader: Fix comment leader on def files

8 years agolayers: clean up mismatched sign warnings
Courtney Goeltzenleuchter [Wed, 16 Dec 2015 23:06:06 +0000 (16:06 -0700)]
layers: clean up mismatched sign warnings

8 years agolayers: clean up bool vs. VkBool32 warnings
Courtney Goeltzenleuchter [Wed, 16 Dec 2015 23:07:01 +0000 (16:07 -0700)]
layers: clean up bool vs. VkBool32 warnings

8 years agolayers: clean up path without return warning
Courtney Goeltzenleuchter [Wed, 16 Dec 2015 23:08:08 +0000 (16:08 -0700)]
layers: clean up path without return warning

8 years agomisc: fix comment
Courtney Goeltzenleuchter [Wed, 16 Dec 2015 23:08:44 +0000 (16:08 -0700)]
misc: fix comment

8 years agoloader: fix mismatch size warning
Courtney Goeltzenleuchter [Wed, 16 Dec 2015 23:19:46 +0000 (16:19 -0700)]
loader: fix mismatch size warning

8 years agoloader: correct compiler warning
Courtney Goeltzenleuchter [Thu, 17 Dec 2015 16:51:22 +0000 (09:51 -0700)]
loader: correct compiler warning

Fixed compiler warning of idx potentially being
undefined. Also added test to check if the code
took that path and return an error if that happens.

8 years agodemos: Fix compiler warnings
Courtney Goeltzenleuchter [Thu, 17 Dec 2015 16:53:29 +0000 (09:53 -0700)]
demos: Fix compiler warnings

gcc complains that return result is unused. This change
prevents the warning and should be a no-op otherwise.

8 years agodebug_report: Update extension name
Courtney Goeltzenleuchter [Thu, 10 Dec 2015 23:41:22 +0000 (16:41 -0700)]
debug_report: Update extension name

8 years agodebug_report: rename object type and error bits
Courtney Goeltzenleuchter [Wed, 9 Dec 2015 22:48:16 +0000 (15:48 -0700)]
debug_report: rename object type and error bits

Conflicts:
demos/tri.c
layers/device_limits.cpp
layers/draw_state.cpp
layers/image.cpp
layers/mem_tracker.cpp
layers/param_checker.cpp
layers/vk_layer_logging.h
loader/debug_report.c
tests/layer_validation_tests.cpp

8 years agoloader: save memory pointer before it's lost
Courtney Goeltzenleuchter [Wed, 9 Dec 2015 19:26:34 +0000 (12:26 -0700)]
loader: save memory pointer before it's lost

The first time a library is loaded the code will
allocate space for the list. But if the dlopen fails
the pointer for that wasn't being saved and the next
call would get a segfault on a null pointer.
Now save the new pointer so it doesn't get lost.

8 years agodebug_report: rename vk_lunarg_debug_report.h
Courtney Goeltzenleuchter [Wed, 9 Dec 2015 21:33:56 +0000 (14:33 -0700)]
debug_report: rename vk_lunarg_debug_report.h

8 years agovulkaninfo: Register a callback at CreateInstance
Courtney Goeltzenleuchter [Thu, 3 Dec 2015 20:50:49 +0000 (13:50 -0700)]
vulkaninfo: Register a callback at CreateInstance

Add the CreateInstance callback to demonstrate the use of that
limited-time callback mechanism.

8 years agoloader: Enable callbacks from loader_log
Courtney Goeltzenleuchter [Thu, 3 Dec 2015 20:48:01 +0000 (13:48 -0700)]
loader: Enable callbacks from loader_log

Need to have the instance pointer to find
the list of callbacks.
Anything that happens before CreateInstance is invisible to
the application. For that reason, I've left in the
environment variable logging.

8 years agoloader: use callbacks from CreateInstance
Courtney Goeltzenleuchter [Thu, 3 Dec 2015 20:45:51 +0000 (13:45 -0700)]
loader: use callbacks from CreateInstance

If an application links a VkDebugReportCreateInfo
structure to the InstanceCreateInfo structure the
loader will log the callback for the duration of
the CreateInstance call. This allows the app
to catch any loader issues detected at CreateInstance
time.

8 years agoloader: utils for managing debug report events
Courtney Goeltzenleuchter [Wed, 2 Dec 2015 22:29:33 +0000 (15:29 -0700)]
loader: utils for managing debug report events

Now need to create & destroy callbacks as part of
vkCreateInstance, so refactor debug_report entries
into API function and work function that can be
used from the loader.

Conflicts:
loader/debug_report.c

8 years agomisc: Update copyright statements
Courtney Goeltzenleuchter [Wed, 2 Dec 2015 21:53:22 +0000 (14:53 -0700)]
misc: Update copyright statements

8 years agoloader: Adjust internal naming to match API naming
Courtney Goeltzenleuchter [Wed, 2 Dec 2015 21:00:19 +0000 (14:00 -0700)]
loader: Adjust internal naming to match API naming

Now that we've settled on EnumerateInstance* and
EnumerateDevice* we can change the internal function
names in the loader that were global and physical_device
to instance and device to make it more clear what's
being used by the function.

8 years agocube: Update debug report support
Courtney Goeltzenleuchter [Tue, 1 Dec 2015 21:11:38 +0000 (14:11 -0700)]
cube: Update debug report support

Add break callback (it's been removed from the extension).
Grab function pointer for DebugReportMessageLUNARG.

8 years agolayers: Add support for DebugReportMessageLUNARG
Courtney Goeltzenleuchter [Tue, 1 Dec 2015 21:10:55 +0000 (14:10 -0700)]
layers: Add support for DebugReportMessageLUNARG

8 years agolayers: export debug_report extension
Courtney Goeltzenleuchter [Tue, 1 Dec 2015 21:08:28 +0000 (14:08 -0700)]
layers: export debug_report extension

Need the EnumerateInstanceExtensionProperties to report
support for the debug report extension as well as in
the json file because different platforms will use either
the json file (Windows & Linux) or the Enumerate call (Android).

8 years agolayers: declare support for DEBUG_REPORT extension
Courtney Goeltzenleuchter [Mon, 30 Nov 2015 19:14:06 +0000 (12:14 -0700)]
layers: declare support for DEBUG_REPORT extension

Have layers that support the debug_report extension
(all validation layers) include that extension in
it's extension list.