platform/upstream/Vulkan-LoaderAndValidationLayers.git
9 years agotests: Change BIL to SPV in golden image filenames
Cody Northrop [Tue, 17 Mar 2015 21:59:48 +0000 (15:59 -0600)]
tests: Change BIL to SPV in golden image filenames

9 years agoSPIR-V: Change BIL to SPV in all source files
Cody Northrop [Tue, 17 Mar 2015 21:55:58 +0000 (15:55 -0600)]
SPIR-V: Change BIL to SPV in all source files

9 years agoicd: Rename icd-bil.h to icd-spv.h
Cody Northrop [Tue, 17 Mar 2015 20:54:35 +0000 (14:54 -0600)]
icd: Rename icd-bil.h to icd-spv.h

9 years agofix cube demo for .spv filenames
Steve K [Tue, 17 Mar 2015 16:18:08 +0000 (10:18 -0600)]
fix cube demo for .spv filenames

9 years agoFix compilation errors and warnings for latest SPIRV headers.
Steve K [Tue, 17 Mar 2015 15:40:23 +0000 (09:40 -0600)]
Fix compilation errors and warnings for latest SPIRV headers.

9 years agocompiler: Turn off decomposition of clamp for now
Cody Northrop [Tue, 17 Mar 2015 20:35:49 +0000 (14:35 -0600)]
compiler: Turn off decomposition of clamp for now

9 years agoRevert "misc: Explicitly run python for generated code"
Jon Ashburn [Tue, 17 Mar 2015 23:54:58 +0000 (17:54 -0600)]
Revert "misc: Explicitly run python for generated code"

This reverts commit 10e987d610d43b37556df9b12349f9ffc8cb30c4.

9 years agomisc: Explicitly run python for generated code
Jon Ashburn [Tue, 17 Mar 2015 23:34:20 +0000 (16:34 -0700)]
misc: Explicitly run python for generated code
On windows if multiple python versions installed, then command line args
for python scripts fail.  This works around python issue

9 years agolayers: Added fence tracking for command buffer completion
Mark Lobodzinski [Tue, 17 Mar 2015 15:53:12 +0000 (10:53 -0500)]
layers: Added fence tracking for command buffer completion

Cleaned up MemTracker fence tracking for command buffer completions,
fixed several issues with local fences.

9 years agolayers: Reduce unmeaningful error messages for memtracker
Mark Lobodzinski [Thu, 5 Mar 2015 16:07:53 +0000 (10:07 -0600)]
layers: Reduce unmeaningful error messages for memtracker

It is a common case for a command buffer not to have a fence associated
with it -- no reason to call these cases out as errors.

9 years agolayers: MemTracker add check to verify CB complete prior to Reset
Tobin Ehlis [Wed, 4 Mar 2015 15:38:22 +0000 (08:38 -0700)]
layers: MemTracker add check to verify CB complete prior to Reset

If CB fence has not completed on call to Begin or Reset CB, flag validation error.

Various improvements to make sure the CB fence is getting reset as appropriate if the fence completes or is destroyed.

9 years agoglave: Fix build to correctly generate xgl_enum_string_helper.h dependency
Tobin Ehlis [Mon, 16 Mar 2015 17:55:56 +0000 (11:55 -0600)]
glave: Fix build to correctly generate xgl_enum_string_helper.h dependency

9 years agolayers: Update DrawState to use generated struct size functions
Tobin Ehlis [Mon, 16 Mar 2015 16:44:40 +0000 (10:44 -0600)]
layers: Update DrawState to use generated struct size functions

Update struct size codegen to handle callback void* case and ppMemBarriers void** cases conservatively for now.

9 years agoglave: Use generated code to get pAppInfo struct size
Tobin Ehlis [Mon, 16 Mar 2015 14:21:33 +0000 (08:21 -0600)]
glave: Use generated code to get pAppInfo struct size

9 years agoglave: Update more trace custom code to use generated struct sizing code instead
Tobin Ehlis [Fri, 13 Mar 2015 13:18:05 +0000 (07:18 -0600)]
glave: Update more trace custom code to use generated struct sizing code instead

9 years agoglave: Add codgen helper for struct size calculation and use for trace packet creation
Tobin Ehlis [Thu, 12 Mar 2015 20:50:40 +0000 (14:50 -0600)]
glave: Add codgen helper for struct size calculation and use for trace packet creation

9 years agointel: update layout code from ilo
Chia-I Wu [Fri, 6 Mar 2015 22:01:45 +0000 (06:01 +0800)]
intel: update layout code from ilo

The new code has Gen8 support and minor bug fixes.  It also switched from
INTEL_TILING_x to GEN6_TILING_x.

9 years agointel: call intel_bo_set_tiling() on presentable images
Chia-I Wu [Fri, 6 Mar 2015 22:00:46 +0000 (06:00 +0800)]
intel: call intel_bo_set_tiling() on presentable images

KMD does not need to be smart anymore.

9 years agoglave: Codegen cleanup for tracing code to add/finalize ptrs in packet
Tobin Ehlis [Wed, 11 Mar 2015 23:19:54 +0000 (17:19 -0600)]
glave: Codegen cleanup for tracing code to add/finalize ptrs in packet

9 years agoglave: Simplify codegen for trace packet sizing
Tobin Ehlis [Tue, 10 Mar 2015 17:04:17 +0000 (11:04 -0600)]
glave: Simplify codegen for trace packet sizing

9 years agoglvdebug_xgl: Pass updated settings to the replay worker. This allows us to add and...
Peter Lohrmann [Tue, 3 Mar 2015 20:28:44 +0000 (12:28 -0800)]
glvdebug_xgl: Pass updated settings to the replay worker. This allows us to add and remove enabled layers without having to re-open the trace file.

9 years agoglave-generate: Replace asserts with proper error detection and error logging.
Peter Lohrmann [Tue, 10 Mar 2015 22:30:36 +0000 (15:30 -0700)]
glave-generate: Replace asserts with proper error detection and error logging.

* On Linux debug builds, the asserts cause the debugger to abort, but the code wasn't handling the error case safely anyway, so even a release build would likely crash.
* These situations were being hit if trying to load a trace file from an earlier header version, but are likely to be conditions we'll see when new developers start to use the API.
* With these changes, the error is properly reported and error return values propogated so that the UI detects the invalid file and reports an error to the user.
* The new glv_LogError(..) messages get printed to the console, but are not yet passed to the UI. This will be done as part of a larger change sometime in the future.

9 years agoglvdebug: Move trace file loading to a separate thread.
Peter Lohrmann [Tue, 10 Mar 2015 20:11:20 +0000 (13:11 -0700)]
glvdebug: Move trace file loading to a separate thread.

* Add a glvdebug_QTraceFileLoader class to perform the file loading; execute it on the TraceLoaderThread.
* When the file loading is complete, TraceFileLoaded(..) is signaled indicating if the load was successful, the trace file info, and the path to the controller that was used to load the file.
* The main UI's onTraceFileLoaded(..) slot is called on the main thread.
** The controller's settings are now updated in the main thread after the trace file is successfully loaded.
** The controller library is now loaded once in the loader thread for interpretting packets, and a second time in the main thread for controlling the UI and replaying.
** The UI is updated based on the controller and the loaded trace file.

* Some logical rework had to be done around 'Generate Trace' functionality so that the dialog would be shown again if the generated trace file could not be loaded.
** Keep a boolean that indicates that the user is generating a trace.
** If the boolean is true and the generated trace file fails to load, then respawn the Generate Trace Dialog.
** If a trace file is successfully loaded then set the boolean to false.
** If the user says they don't want to load the trace, then set the boolean to false.

9 years agoglvdebug: Enable 'Stop' button while replayer is paused.
Peter Lohrmann [Mon, 9 Mar 2015 19:36:08 +0000 (12:36 -0700)]
glvdebug: Enable 'Stop' button while replayer is paused.

* Previously the user had to 'Continue' the replayer, then click 'Stop'.
* There a few things that can only take effect if the replayer is stopped (ie, changing replay settings), and most often the user will do this while the replayer is paused. This allows them to more easily stop and restart the replayer.
* Also disables all replayer buttons when the 'Pause' button is pressed, to ensure that the user doesn't put the system in a bad state while waiting for the replay to respond to the 'Pause' event.

9 years agoglvdebug: additional error protection around invalid packets. * This can occur if...
Peter Lohrmann [Mon, 9 Mar 2015 19:01:13 +0000 (12:01 -0700)]
glvdebug: additional error protection around invalid packets. * This can occur if using a trace file based on an older API header version if new entrypoints have been added to the latest API header.

9 years agoglave: Fix createRenderpass replay restore of remapped FB
Jon Ashburn [Mon, 9 Mar 2015 17:33:40 +0000 (11:33 -0600)]
glave: Fix createRenderpass replay restore of remapped FB

9 years agoWin/glvdebug: Remove assert for lack of dot on Windows.
Ian Elliott [Fri, 6 Mar 2015 23:41:01 +0000 (16:41 -0700)]
Win/glvdebug: Remove assert for lack of dot on Windows.

Use the same error as on Linux when dot can't be found.  This seems to allow
the debugger to be fully functional on Windows.

9 years agoWin/C11: Use _align_malloc() on Windows, align_alloc() elsewhere.
Ian Elliott [Fri, 6 Mar 2015 21:34:47 +0000 (14:34 -0700)]
Win/C11: Use _align_malloc() on Windows, align_alloc() elsewhere.

9 years agoWin/Glave: Update Glave's README.md file.
Ian Elliott [Fri, 6 Mar 2015 21:29:19 +0000 (14:29 -0700)]
Win/Glave: Update Glave's README.md file.

9 years agolayers: Improve PresentableImage memory handling in mem/objecttracker
Mark Lobodzinski [Thu, 5 Mar 2015 18:39:33 +0000 (12:39 -0600)]
layers: Improve PresentableImage memory handling in mem/objecttracker

Add handling to eliminate meaningless error reporting for the
xglWsiX11CreatePresentableImage memory resources.

9 years agoWin: Fix compiler warning--explicitly use a float when needed.
Ian Elliott [Fri, 6 Mar 2015 20:56:52 +0000 (13:56 -0700)]
Win: Fix compiler warning--explicitly use a float when needed.

Otherwise, a double is assumed, and a warning is generated that the double is
being "truncated" into a float.

9 years agoWin: Fix warnings for parameter of getLayerOptionEnum()
Ian Elliott [Fri, 6 Mar 2015 20:50:05 +0000 (13:50 -0700)]
Win: Fix warnings for parameter of getLayerOptionEnum()

9 years agoWin: Fix a compiler warning in "icd/common"
Ian Elliott [Fri, 6 Mar 2015 20:49:44 +0000 (13:49 -0700)]
Win: Fix a compiler warning in "icd/common"

9 years agotests: Update framework to initialize clear color to black
Tobin Ehlis [Fri, 6 Mar 2015 20:16:37 +0000 (13:16 -0700)]
tests: Update framework to initialize clear color to black

9 years agoUpdate xgl_helper to handle all of the dynamic arrays
Tobin Ehlis [Fri, 6 Mar 2015 17:38:25 +0000 (10:38 -0700)]
Update xgl_helper to handle all of the dynamic arrays

9 years agoWin/glvdebug: The glvdebug_xgl library depends on Qt5Svgd.dll
Ian Elliott [Fri, 6 Mar 2015 20:04:43 +0000 (13:04 -0700)]
Win/glvdebug: The glvdebug_xgl library depends on Qt5Svgd.dll

9 years agointel: add support for xglPinSystemMemory()
Chia-I Wu [Fri, 6 Mar 2015 19:10:13 +0000 (12:10 -0700)]
intel: add support for xglPinSystemMemory()

The updated kmd supports intel_winsys_import_userptr() for pinning.

9 years agointel: update kmd
Chia-I Wu [Thu, 5 Mar 2015 23:19:42 +0000 (16:19 -0700)]
intel: update kmd

intel_winsys_import_userptr() was added.

intel_winsys_read_reset_stats() was renamed to intel_winsys_get_reset_stats().

intel_bo_reference()/intel_bo_unreference() was replaced by
intel_bo_ref()/intel_bo_unref().

intel_winsys_alloc_buffer() was renamed to intel_winsys_alloc_bo().  The
old intel_winsys_alloc_bo() was removed and intel_bo_set_tiling() was
added.

9 years agoglave: Remove unnecessary dot dump.
Jeremy Hayes [Fri, 6 Mar 2015 19:58:13 +0000 (12:58 -0700)]
glave: Remove unnecessary dot dump.

9 years agoWin/glvdebug: Update the BUILD.md dependencies.
Ian Elliott [Fri, 6 Mar 2015 18:37:07 +0000 (11:37 -0700)]
Win/glvdebug: Update the BUILD.md dependencies.

Update the BUILD.md dependencies in order to build Glave debugger/GUI on
Windows.

9 years agointel: emit 3DSTATE_PUSH_CONSTANT_ALLOC_x in intel_cmd_begin()
Chia-I Wu [Fri, 27 Feb 2015 21:35:08 +0000 (14:35 -0700)]
intel: emit 3DSTATE_PUSH_CONSTANT_ALLOC_x in intel_cmd_begin()

Emit it once per command buffer.

9 years agointel: emit FB-dependent states conditionally
Chia-I Wu [Fri, 27 Feb 2015 21:59:50 +0000 (14:59 -0700)]
intel: emit FB-dependent states conditionally

Emit 3DSTATE_MULTISAMPLE, 3DSTATE_DRAWING_RECTANGLE, 3DSTATE_DEPTH_BUFFER, etc
only when the render pass changed.

9 years agointel: determine 3DSTATE_MULTISAMPLE from intel_fb
Chia-I Wu [Mon, 2 Mar 2015 18:19:33 +0000 (11:19 -0700)]
intel: determine 3DSTATE_MULTISAMPLE from intel_fb

9 years agointel: add intel_pipeline_init_default_sample_patterns()
Chia-I Wu [Mon, 2 Mar 2015 17:51:39 +0000 (10:51 -0700)]
intel: add intel_pipeline_init_default_sample_patterns()

Initialize sample patterns once, not every time a PSO is created.

9 years agointel: update genhw headers
Chia-I Wu [Thu, 5 Mar 2015 22:43:16 +0000 (15:43 -0700)]
intel: update genhw headers

Lots of renames and Gen8 support.  Changes verified by "gcc -E" and diff to
have some confidence that I did not mess up.

9 years agoWin/glvdebug: Use a "\\" instead of "/" for Windows path separator.
Ian Elliott [Thu, 5 Mar 2015 22:45:47 +0000 (15:45 -0700)]
Win/glvdebug: Use a "\\" instead of "/" for Windows path separator.

9 years agonulldrv: build it on Linux
Chia-I Wu [Thu, 5 Mar 2015 21:22:56 +0000 (14:22 -0700)]
nulldrv: build it on Linux

It compiles!

9 years agonulldrv: fix gcc errors/warnings
Chia-I Wu [Thu, 5 Mar 2015 21:26:54 +0000 (14:26 -0700)]
nulldrv: fix gcc errors/warnings

The only functional change should be that _aligned_malloc() is replaced by
malloc().  It does not seem to matter.

9 years agoicd: remove stale function declarations
Chia-I Wu [Wed, 4 Mar 2015 18:19:59 +0000 (11:19 -0700)]
icd: remove stale function declarations

Remove declarations of

  icdDbgRegisterMsgCallback()
  icdDbgUnregisterMsgCallback()
  icdDbgSetGlobalOption()

9 years agoicd: remove unused icd-alloc.[ch]
Chia-I Wu [Sun, 22 Feb 2015 06:41:03 +0000 (14:41 +0800)]
icd: remove unused icd-alloc.[ch]

9 years agonulldrv: remove icd-alloc.h dependency
Chia-I Wu [Sun, 22 Feb 2015 06:40:25 +0000 (14:40 +0800)]
nulldrv: remove icd-alloc.h dependency

9 years agointel: use intel_alloc()/intel_free() everywhere
Chia-I Wu [Sun, 22 Feb 2015 06:09:00 +0000 (14:09 +0800)]
intel: use intel_alloc()/intel_free() everywhere

Make intel_handle available in the functions that icd_alloc()/icd_free() is
still called, and convert them to use intel_alloc()/intel_free().

9 years agointel: use intel_alloc()/intel_free() when possible
Chia-I Wu [Sun, 22 Feb 2015 05:49:15 +0000 (13:49 +0800)]
intel: use intel_alloc()/intel_free() when possible

There are still a few places that intel_handle is not readily available and we
are stuck with icd_alloc()/icd_free().  They will be fixed later.

9 years agointel: add intel_{alloc,free,logv,log}()
Chia-I Wu [Mon, 19 Jan 2015 03:14:00 +0000 (11:14 +0800)]
intel: add intel_{alloc,free,logv,log}()

They are per-instance equivalents of icd_{alloc,free,logv,log}().  They also
require us to embed a pointer to icd_instance in intel_handle.

9 years agoicd: add support for per-instance DRM enumeration
Chia-I Wu [Fri, 20 Feb 2015 20:41:57 +0000 (13:41 -0700)]
icd: add support for per-instance DRM enumeration

Add icd_instance to DRM enumeration functions, and use it for memory
allocation or logging.

9 years agointel: make intel_instance own an icd_instance
Chia-I Wu [Sat, 21 Feb 2015 06:19:23 +0000 (14:19 +0800)]
intel: make intel_instance own an icd_instance

intel_instance is now correctly allocated by icd_instance.

9 years agoicd: add generic icd_instance
Chia-I Wu [Sat, 21 Feb 2015 06:00:17 +0000 (14:00 +0800)]
icd: add generic icd_instance

It provides memory allocation and logging support.

9 years agointel: make intel_base_create() take a intel_handle
Chia-I Wu [Sun, 22 Feb 2015 05:19:54 +0000 (13:19 +0800)]
intel: make intel_base_create() take a intel_handle

With this change, we now create intel_dev using

  dev = intel_base_create(&gpu->handle, ...);

instead of

  dev = intel_base_create(NULL, ...);

The calls to intel_dev_log() in base_dbg_copy_create_info() are removed.  One
of them is replaced an assert() and the other should have been called in
intel_mem_alloc().

9 years agoWin: Fix compilation errors.
Ian Elliott [Thu, 5 Mar 2015 19:28:53 +0000 (12:28 -0700)]
Win: Fix compilation errors.

9 years agoWin/glvdebug: Need libGLESv2d.dll and libEGLd.dll to work on Window.
Ian Elliott [Thu, 5 Mar 2015 19:11:38 +0000 (12:11 -0700)]
Win/glvdebug: Need libGLESv2d.dll and libEGLd.dll to work on Window.

9 years agoWin/glvdebug: Eliminate dead code.
Ian Elliott [Wed, 4 Mar 2015 23:33:28 +0000 (16:33 -0700)]
Win/glvdebug: Eliminate dead code.

9 years agoWin/glvdebug: Changes needed to compile glvdebug on Windows.
Ian Elliott [Wed, 4 Mar 2015 22:39:21 +0000 (15:39 -0700)]
Win/glvdebug: Changes needed to compile glvdebug on Windows.

9 years agoWin: Require CMake 3.0+, and look for Qt 5.3 in default location.
Ian Elliott [Wed, 4 Mar 2015 20:48:59 +0000 (13:48 -0700)]
Win: Require CMake 3.0+, and look for Qt 5.3 in default location.

CMake 3.0+ has the ability to "find_package(Qt5".  Thus, we will require at
least this version for Windows.

CMake still isn't smart enough to go looking for Qt 5.3, and another
modification is to look to see whether it's installed (on Windows) in the
default location.  If so, set Qt5_DIR to point to it.

9 years agotests: Remove Opengl / Glut dependencies
Tony Barbour [Wed, 25 Feb 2015 00:20:27 +0000 (17:20 -0700)]
tests: Remove Opengl / Glut dependencies

9 years agotests: Use buffers format when writing PPM files
Tony Barbour [Wed, 25 Feb 2015 18:25:11 +0000 (11:25 -0700)]
tests: Use buffers format when writing PPM files

Also change tests to use BGRA by default

Also change WritePPM to use BGRA format

9 years agotests: Use XGL to --show-images instead of OpenGL/Glut
Tony Barbour [Wed, 25 Feb 2015 19:28:39 +0000 (12:28 -0700)]
tests: Use XGL to --show-images instead of OpenGL/Glut

9 years agotests: Move environment object into sharable file
Tony Barbour [Mon, 2 Mar 2015 23:38:52 +0000 (16:38 -0700)]
tests: Move environment object into sharable file

9 years agolayers: Fix Windows build issue
Courtney Goeltzenleuchter [Wed, 4 Mar 2015 22:47:34 +0000 (15:47 -0700)]
layers: Fix Windows build issue

9 years agoobject-tracker: Do not track GPU object
Courtney Goeltzenleuchter [Wed, 4 Mar 2015 18:21:23 +0000 (11:21 -0700)]
object-tracker: Do not track GPU object

The GPU object is not something that is created by the app
and thus object tracker layer does not have to track it.

9 years agolayers: allocate enough space for pointer sprintf
Mike Stroyan [Tue, 3 Mar 2015 23:54:24 +0000 (16:54 -0700)]
layers: allocate enough space for pointer sprintf

9 years agomemTracker: Use local GetProcAddr rather than auto generated one
Jon Ashburn [Mon, 2 Mar 2015 23:51:38 +0000 (16:51 -0700)]
memTracker: Use local GetProcAddr rather than auto generated one

Clean up pass through  functions.  Generated GetProcAddr  requires drawState
to implement all entrypoints so don't use this generated GPA.

9 years agodrawState: Use local GetProcAddr rather than auto generated one
Jon Ashburn [Mon, 2 Mar 2015 18:32:24 +0000 (11:32 -0700)]
drawState: Use local GetProcAddr rather than auto generated one

Clean up pass through  functions.  Generated GetProcAddr  requires drawState
to implement all entrypoints so don't use this generated GPA.

9 years agolayers: if no settings file or call overrides make callback override loging
Jon Ashburn [Tue, 3 Mar 2015 22:07:15 +0000 (15:07 -0700)]
layers: if no settings file or call overrides make callback override loging

Default debugAction in layers is to log based on variable init. Make the
overrides work as follows:
1) app calls xglRegisterMsgCallback()
2) settings file
3) Glave (or app) calls to setlayerOption()

9 years agolayers: Correctly set last bound PSO in DrawState layer
Tobin Ehlis [Tue, 3 Mar 2015 20:58:42 +0000 (13:58 -0700)]
layers: Correctly set last bound PSO in DrawState layer

9 years agoglave: Fix from Peter to step by packet index
Tobin Ehlis [Tue, 3 Mar 2015 21:01:43 +0000 (14:01 -0700)]
glave: Fix from Peter to step by packet index

9 years agoglave: Fix svg resize behavior.
Jeremy Hayes [Mon, 2 Mar 2015 18:21:39 +0000 (11:21 -0700)]
glave: Fix svg resize behavior.

9 years agoWin: Cannot use the "dot" functionality yet on Windows.
Ian Elliott [Tue, 3 Mar 2015 16:50:57 +0000 (09:50 -0700)]
Win: Cannot use the "dot" functionality yet on Windows.

9 years agolayers: Made mem_tracker thread-safe
Mark Lobodzinski [Tue, 3 Mar 2015 02:23:52 +0000 (20:23 -0600)]
layers: Made mem_tracker thread-safe

Brought up to par with DrawState and ObjectTracker.

9 years agoFix "xcb_nvidia.c" for use of the nulldrv.
Ian Elliott [Tue, 3 Mar 2015 00:49:02 +0000 (17:49 -0700)]
Fix "xcb_nvidia.c" for use of the nulldrv.

We're using "XGL_DRIVERS_PATH" for the env var.

9 years agoTurn on ability to trace on Windows with NVIDIA driver.
Ian Elliott [Mon, 2 Mar 2015 21:05:18 +0000 (14:05 -0700)]
Turn on ability to trace on Windows with NVIDIA driver.

I can now trace the "tri" and "cube" demos.  Two changes were needed:

1) Must link the programs against XGL.dll instead of XGL.lib (the "XGL" library
   instead of "XGLstatic").

2) The glv_MessageStream_SetupHostSocket() function needed to "create" the
   lock/critical section that's used in the Glave interconnect code.

9 years agoAdd NOMINMAX and VC_EXTRALEAN to some windows files
Piers Daniell [Sun, 1 Mar 2015 16:32:56 +0000 (09:32 -0700)]
Add NOMINMAX and VC_EXTRALEAN to some windows files

This avoids these headers leaking conflicting Windows symbols to
non-Windows code.

9 years agoImprove compatibility of XCB_nvidia and Source2
Piers Daniell [Sun, 1 Mar 2015 14:50:14 +0000 (07:50 -0700)]
Improve compatibility of XCB_nvidia and Source2

9 years agoWin/xcb_nvidia: Remove compiler warnings with xcb_nvidia.
Ian Elliott [Fri, 27 Feb 2015 18:14:56 +0000 (11:14 -0700)]
Win/xcb_nvidia: Remove compiler warnings with xcb_nvidia.

9 years agoWin/glave: Remove new compiler warnings on Windows.
Ian Elliott [Fri, 27 Feb 2015 18:10:59 +0000 (11:10 -0700)]
Win/glave: Remove new compiler warnings on Windows.

Compiling the glvtrace_xgl64.dll library on Windows (see prior commit) resulted
in new warnings, some of which seemed serious (e.g. using "sizeof(void)", which
is 1 on Linux, with GCC, but is 0 on Windows).

9 years agoWin/glave: Compile/link the glvtrace_xgl64.dll library on Windows.
Ian Elliott [Fri, 27 Feb 2015 00:01:30 +0000 (17:01 -0700)]
Win/glave: Compile/link the glvtrace_xgl64.dll library on Windows.

9 years agoLinux: Must use "__linux__" instead of "PLATFORM_LINUX".
Ian Elliott [Thu, 26 Feb 2015 21:34:52 +0000 (14:34 -0700)]
Linux: Must use "__linux__" instead of "PLATFORM_LINUX".

There are some places (e.g. glave) where PLATFORM_LINUX is #define'd, but
normally we need to rely on "__linux__", which is #define'd by the compiler
(i.e. we can rely on it being there).

9 years agoxcb_nvidia: Hack in ability to use registry instead of getenv().
Ian Elliott [Thu, 26 Feb 2015 20:52:52 +0000 (13:52 -0700)]
xcb_nvidia: Hack in ability to use registry instead of getenv().

Trying to make it easy/quick to change between ICDs, which the registry allows.
Need to clean this up sometime.

9 years agodemos/cube: use a single layout
Chia-I Wu [Mon, 23 Feb 2015 17:41:08 +0000 (10:41 -0700)]
demos/cube: use a single layout

Conflicts:
demos/cube.c

9 years agoGet the trace player to work with Windows
Piers Daniell [Tue, 24 Feb 2015 20:58:47 +0000 (13:58 -0700)]
Get the trace player to work with Windows

This change modifies many of the generators to use "#if
defined(PLATFORM_LINUX) || defined(XCB_NVIDIA)" to choose between using
XCB or WIN32 native.

9 years agoxcb: Deal with case of getenv() returning NULL.
Ian Elliott [Fri, 20 Feb 2015 21:12:18 +0000 (14:12 -0700)]
xcb: Deal with case of getenv() returning NULL.

At least on Windows, getenv() returns NULL when the environment variable is not
found.  This causes a problem inside of "xcb_nvidia.cpp" when a C++ std::string
is assigned the return value of getenv().

9 years agoModify xcb_nvidia/nulldrv to also support nulldrv.
Ian Elliott [Thu, 19 Feb 2015 21:26:19 +0000 (14:26 -0700)]
Modify xcb_nvidia/nulldrv to also support nulldrv.

This allows LunarG and others without the NVIDIA XGL driver to use the nulldrv
on Windows.

9 years agoUpdate tri and cube with stage
Piers Daniell [Mon, 23 Feb 2015 23:23:13 +0000 (16:23 -0700)]
Update tri and cube with stage

These changes were cherry-picked from nvidia-dev-20150218 and
KhronosGroup/GDC-stable.

9 years agoRevert "misc: Add xglRecordMemoryRange entrypoint and use it in Glave"
Jon Ashburn [Tue, 3 Mar 2015 00:12:31 +0000 (17:12 -0700)]
Revert "misc: Add xglRecordMemoryRange entrypoint and use it in Glave"

This reverts commit fea3e5fc1ef2f3c9e4f06ab5a8d682f89b76377e.

9 years agolayers: Update last global DS in DrawState when UpdateDescriptors is called
Tobin Ehlis [Mon, 2 Mar 2015 23:09:15 +0000 (16:09 -0700)]
layers: Update last global DS in DrawState when UpdateDescriptors is called

9 years agolayers: DrawState Cmd Buffer tracking improvements
Tobin Ehlis [Mon, 2 Mar 2015 17:16:40 +0000 (10:16 -0700)]
layers: DrawState Cmd Buffer tracking improvements

Add DbgMarker cmds to cmd buffer instruction linked list
Display last 10 touched CBs in dot file
Highlight last touched CB in dot file with green color

9 years agomisc: Add xglRecordMemoryRange entrypoint and use it in Glave
Jon Ashburn [Fri, 27 Feb 2015 19:53:41 +0000 (12:53 -0700)]
misc: Add xglRecordMemoryRange entrypoint and use it in Glave

9 years agoglvdebug: Disable the timeline when replay is in progress.
Peter Lohrmann [Mon, 2 Mar 2015 17:41:29 +0000 (09:41 -0800)]
glvdebug: Disable the timeline when replay is in progress.

* Currently the timeline doesn't appear any different when it is disabled, but the user cannot interact with it, which is the intent.

9 years agoglvdebug_xgl: Draw State Diagram and Command Buffer Diagram are now only added or...
Peter Lohrmann [Mon, 2 Mar 2015 17:36:28 +0000 (09:36 -0800)]
glvdebug_xgl: Draw State Diagram and Command Buffer Diagram are now only added or enabled if the associated SVG diagram has been generated.

* This should help prevent empty windows from appearing in the UI.
* Also fix a regression that was causing most of the UI to be enabled during replay, when it should have been disabled so that the user could not navigate between API Calls.

9 years agoglvdebug: Add method for qcontroller to enable/disable state viewer tabs.
Peter Lohrmann [Mon, 2 Mar 2015 17:04:28 +0000 (09:04 -0800)]
glvdebug: Add method for qcontroller to enable/disable state viewer tabs.

* glvdebug_xgl now uses this to properly disable the Draw State Diagram and Cmd Buffer Diagram during replay, and
to re-enable them if an updated svg diagram is available after pausing.

9 years agoglvdebug_xgl: Improve performance of appling settings while a ProxyModel is being...
Peter Lohrmann [Mon, 2 Mar 2015 16:29:23 +0000 (08:29 -0800)]
glvdebug_xgl: Improve performance of appling settings while a ProxyModel is being used.

* If the ProxyModel (currently either GroupByThreads or GroupByFrames) is not changed when the settings are applied,
then don't reset the ProxyModel's source model. This was causing the tree to get recreated unexpectedly, which can
take significant time on a large trace file.