tools/apitrace.git
12 years agoRemove dead source line.
José Fonseca [Mon, 20 Feb 2012 22:19:26 +0000 (22:19 +0000)]
Remove dead source line.

12 years agoAdd missing commas.
José Fonseca [Mon, 20 Feb 2012 22:18:17 +0000 (22:18 +0000)]
Add missing commas.

Don't known how I missed this before commiting.

12 years agoTweak path splitting.
José Fonseca [Mon, 20 Feb 2012 22:18:02 +0000 (22:18 +0000)]
Tweak path splitting.

- Match dirname/basename semantics.
- Accept both / and \ on Windows (as MinGW and several other apps do).

12 years agoRe-implement tracediff.sh on Python.
José Fonseca [Sat, 18 Feb 2012 18:15:18 +0000 (18:15 +0000)]
Re-implement tracediff.sh on Python.

12 years agoUse getopt on apitrace pickle.
José Fonseca [Sat, 18 Feb 2012 15:40:59 +0000 (15:40 +0000)]
Use getopt on apitrace pickle.

12 years agoUse getopt on apitrace trace.
José Fonseca [Sat, 18 Feb 2012 15:33:42 +0000 (15:33 +0000)]
Use getopt on apitrace trace.

12 years agoMinor cleanup to apitrace trim command line option parsing.
José Fonseca [Sat, 18 Feb 2012 15:33:12 +0000 (15:33 +0000)]
Minor cleanup to apitrace trim command line option parsing.

12 years agoImplmenet GL_EXT_debug_marker on OpenGL ES contexts
José Fonseca [Wed, 15 Feb 2012 23:33:35 +0000 (23:33 +0000)]
Implmenet GL_EXT_debug_marker on OpenGL ES contexts

12 years agoMention apitrace trim in the documentation.
José Fonseca [Wed, 15 Feb 2012 07:18:22 +0000 (07:18 +0000)]
Mention apitrace trim in the documentation.

12 years agoConvert trim option parsing to getopt.
José Fonseca [Wed, 15 Feb 2012 07:13:31 +0000 (07:13 +0000)]
Convert trim option parsing to getopt.

12 years agoAllow to specify output file on retracediff
José Fonseca [Thu, 9 Feb 2012 14:35:27 +0000 (14:35 +0000)]
Allow to specify output file on retracediff

12 years agoFix highlight.py on Windows.
José Fonseca [Thu, 9 Feb 2012 14:04:17 +0000 (14:04 +0000)]
Fix highlight.py on Windows.

12 years agoSet binary mode when outputing PNM from glretrace via stdout.
José Fonseca [Thu, 9 Feb 2012 14:03:57 +0000 (14:03 +0000)]
Set binary mode when outputing PNM from glretrace via stdout.

12 years agoAllow to specify an alternative opengl32.dll when retracing.
José Fonseca [Thu, 9 Feb 2012 13:15:15 +0000 (13:15 +0000)]
Allow to specify an alternative opengl32.dll when retracing.

12 years agoRemove dead os::getTime() declaration.
José Fonseca [Thu, 9 Feb 2012 13:14:51 +0000 (13:14 +0000)]
Remove dead os::getTime() declaration.

12 years agoFlag a few wgl calls as verbose.
José Fonseca [Wed, 8 Feb 2012 17:14:40 +0000 (17:14 +0000)]
Flag a few wgl calls as verbose.

Convenient for tracediff

12 years agoIgnore glXSwapInterval* when retracing.
José Fonseca [Tue, 7 Feb 2012 10:36:53 +0000 (10:36 +0000)]
Ignore glXSwapInterval* when retracing.

12 years agoFix build with older DXSDK.
José Fonseca [Sat, 4 Feb 2012 08:56:15 +0000 (08:56 +0000)]
Fix build with older DXSDK.

12 years agoA few additions to win32 api.
José Fonseca [Fri, 3 Feb 2012 19:06:50 +0000 (19:06 +0000)]
A few additions to win32 api.

12 years agoTry all interfaces when wrapping REFIIDs.
José Fonseca [Fri, 3 Feb 2012 19:06:31 +0000 (19:06 +0000)]
Try all interfaces when wrapping REFIIDs.

12 years agoSupport const methods.
José Fonseca [Fri, 3 Feb 2012 19:05:54 +0000 (19:05 +0000)]
Support const methods.

Also several enhancements to C decl parser.

12 years agoBe more specific when invoking the interface methods.
José Fonseca [Fri, 3 Feb 2012 19:05:29 +0000 (19:05 +0000)]
Be more specific when invoking the interface methods.

There may be ambiguities.

12 years agoRecognize D3DUSAGE flags in resource descriptions.
José Fonseca [Fri, 3 Feb 2012 17:46:32 +0000 (17:46 +0000)]
Recognize D3DUSAGE flags in resource descriptions.

12 years agoRecognize D3DFMT_A2B10G10R10_XR_BIAS.
José Fonseca [Fri, 3 Feb 2012 09:56:24 +0000 (09:56 +0000)]
Recognize D3DFMT_A2B10G10R10_XR_BIAS.

12 years agoWarn when calling GL entry points without a current context.
José Fonseca [Thu, 2 Feb 2012 13:59:31 +0000 (13:59 +0000)]
Warn when calling GL entry points without a current context.

12 years agoEnsure function default argument matches template type.
José Fonseca [Wed, 1 Feb 2012 20:46:10 +0000 (20:46 +0000)]
Ensure function default argument matches template type.

Fixes the error "error: default argument for parameter of type
'_CGLPixelFormatAttribute' has type 'int'".

12 years agoCompute attrib pair lists size correctly.
José Fonseca [Wed, 1 Feb 2012 19:51:34 +0000 (19:51 +0000)]
Compute attrib pair lists size correctly.

Thanks to Brian Paul for spotting this.

12 years agoMake attrib pair lists explicit.
José Fonseca [Wed, 1 Feb 2012 19:50:40 +0000 (19:50 +0000)]
Make attrib pair lists explicit.

12 years agoTry to cope with unwrapped objects.
José Fonseca [Tue, 31 Jan 2012 20:14:31 +0000 (20:14 +0000)]
Try to cope with unwrapped objects.

12 years agoFix assertion failure.
José Fonseca [Tue, 31 Jan 2012 19:35:24 +0000 (19:35 +0000)]
Fix assertion failure.

12 years agoCleanup unicode support.
José Fonseca [Tue, 31 Jan 2012 15:10:13 +0000 (15:10 +0000)]
Cleanup unicode support.

12 years agoHandle IDirect3DVertexBuffer9::Lock's OffsetToLock param properly
José Fonseca [Tue, 31 Jan 2012 14:28:39 +0000 (14:28 +0000)]
Handle IDirect3DVertexBuffer9::Lock's OffsetToLock param properly

12 years agoIgnore Windows thread naming exceptions.
José Fonseca [Tue, 31 Jan 2012 12:29:54 +0000 (12:29 +0000)]
Ignore Windows thread naming exceptions.

12 years agoHandle more REFIID queries.
José Fonseca [Tue, 31 Jan 2012 12:19:57 +0000 (12:19 +0000)]
Handle more REFIID queries.

12 years agoAdd API::getAllInterfaces helper method.
José Fonseca [Tue, 31 Jan 2012 10:56:38 +0000 (10:56 +0000)]
Add API::getAllInterfaces helper method.

12 years agoImplement Rebuilder::visitInterface.
José Fonseca [Tue, 31 Jan 2012 10:55:49 +0000 (10:55 +0000)]
Implement Rebuilder::visitInterface.

12 years agos/all_types/getAllTypes/
José Fonseca [Tue, 31 Jan 2012 10:48:58 +0000 (10:48 +0000)]
s/all_types/getAllTypes/

12 years agoAllow to use newer DXSDKs w/ MinGW.
José Fonseca [Tue, 31 Jan 2012 10:11:57 +0000 (10:11 +0000)]
Allow to use newer DXSDKs w/ MinGW.

12 years agoAvoid hacking around argc / argv.
José Fonseca [Tue, 31 Jan 2012 10:02:52 +0000 (10:02 +0000)]
Avoid hacking around argc / argv.

12 years agoConver apitrace dump to getopt.
José Fonseca [Sat, 28 Jan 2012 13:54:52 +0000 (13:54 +0000)]
Conver apitrace dump to getopt.

12 years agoBundle BSD getopt.
José Fonseca [Fri, 21 Oct 2011 09:53:34 +0000 (10:53 +0100)]
Bundle BSD getopt.

12 years agoAdd simple CPU profiling support to glretrace.
Ryan C. Gordon [Sun, 8 Jan 2012 06:32:41 +0000 (01:32 -0500)]
Add simple CPU profiling support to glretrace.

This will note the time that each traced call required, and will dump
this information during the replay, giving a basic idea of where CPU
time was spent in the GL.

Signed-off-by: José Fonseca <jose.r.fonseca@gmail.com>
12 years agoCleanup options for apitrace trim.
José Fonseca [Fri, 27 Jan 2012 22:43:53 +0000 (22:43 +0000)]
Cleanup options for apitrace trim.

12 years agoCorrectly copy "out" arguments to the "leave" portion of the trace
Carl Worth [Thu, 17 Nov 2011 01:22:40 +0000 (17:22 -0800)]
Correctly copy "out" arguments to the "leave" portion of the trace

To do this, we take advantage of the new Arg struct to save, for each
arg, whether it was parsed after an ENTER event or after a LEAVE
event.

12 years agoRemove trace_copier.
José Fonseca [Fri, 27 Jan 2012 22:06:51 +0000 (22:06 +0000)]
Remove trace_copier.

It does pretty much the same as trace_writer_model.

12 years agoAdd "apitrace trim" command.
Carl Worth [Mon, 14 Nov 2011 22:50:07 +0000 (14:50 -0800)]
Add "apitrace trim" command.

This adds the functionality to read in a trace and create a new
"trimmed" trace as the output. There's not yet any functionality for
selecting pieces to trim out, so the implementation is currently just
a trace copier, (which is also the name of the new supporting class).

12 years agoEnsure stdin/stdout is in binary mode on windows when pickling.
José Fonseca [Fri, 27 Jan 2012 14:28:06 +0000 (14:28 +0000)]
Ensure stdin/stdout is in binary mode on windows when pickling.

12 years agoPickle more data types in binary.
José Fonseca [Fri, 27 Jan 2012 14:27:13 +0000 (14:27 +0000)]
Pickle more data types in binary.

12 years agoPython pickle output.
José Fonseca [Thu, 26 Jan 2012 20:32:59 +0000 (20:32 +0000)]
Python pickle output.

Proof of concept.

This allows to process traces w/ python extremely fast, so hopefully
this should enable allow to quickly implement complex analysis in Python,
with usable performance.

12 years agoAllow to use call sets instead of call numbers / frequencies.
José Fonseca [Thu, 26 Jan 2012 19:08:32 +0000 (19:08 +0000)]
Allow to use call sets instead of call numbers / frequencies.

Inspired on Carl Worth's --call=Range option, but:

- with the extra machinery to allow semantic divisors, in addition to numeric ones.

- allows reading the call numbers of a text file.

12 years agoRemove references to megaupload
José Fonseca [Fri, 20 Jan 2012 23:34:43 +0000 (23:34 +0000)]
Remove references to megaupload

12 years agoTrace data written via IDirect3DVertexBuffer9::Lock/Unlock
José Fonseca [Fri, 20 Jan 2012 19:16:17 +0000 (19:16 +0000)]
Trace data written via IDirect3DVertexBuffer9::Lock/Unlock

12 years agoIgnore alpha channels in window drawables until we are able to match the traced visuals.
José Fonseca [Fri, 20 Jan 2012 18:30:06 +0000 (18:30 +0000)]
Ignore alpha channels in window drawables until we are able to match the traced visuals.

12 years agoDrain Windows message queue.
José Fonseca [Fri, 20 Jan 2012 15:39:15 +0000 (15:39 +0000)]
Drain Windows message queue.

To prevent window from being considered non-responsive.

12 years agoMake os::getTime() inline and make time frequency OS-dependent variable.
José Fonseca [Thu, 19 Jan 2012 15:40:59 +0000 (15:40 +0000)]
Make os::getTime() inline and make time frequency OS-dependent variable.

Linux's  clock_gettime() implementation from Ryan C. Gordon.

12 years agoTrace IDirect3DQuery9::GetData data
José Fonseca [Thu, 19 Jan 2012 11:54:30 +0000 (11:54 +0000)]
Trace IDirect3DQuery9::GetData data

12 years agoFlag draw / fbo-binding calls.
José Fonseca [Thu, 19 Jan 2012 10:48:38 +0000 (10:48 +0000)]
Flag draw / fbo-binding calls.

12 years agoUpdate/correct bind glBindFramebuffer* names.
José Fonseca [Thu, 19 Jan 2012 10:48:09 +0000 (10:48 +0000)]
Update/correct bind glBindFramebuffer* names.

12 years agoTrace GL_NVX_gpu_memory_info parameters (issue #63).
José Fonseca [Thu, 19 Jan 2012 08:43:20 +0000 (08:43 +0000)]
Trace GL_NVX_gpu_memory_info parameters (issue #63).

12 years agoDocument out to trace applications inside gdb.
José Fonseca [Wed, 18 Jan 2012 16:15:30 +0000 (16:15 +0000)]
Document out to trace applications inside gdb.

When developing.

12 years agoFix bundled qjson include path.
José Fonseca [Wed, 18 Jan 2012 16:15:05 +0000 (16:15 +0000)]
Fix bundled qjson include path.

12 years agoDon't intercept SIGPIPE.
José Fonseca [Wed, 18 Jan 2012 14:10:50 +0000 (14:10 +0000)]
Don't intercept SIGPIPE.

More trouble than it's worth.

12 years agoActually set PTHREAD_MUTEX_RECURSIVE attr.
José Fonseca [Wed, 18 Jan 2012 13:13:37 +0000 (13:13 +0000)]
Actually set PTHREAD_MUTEX_RECURSIVE attr.

12 years agoForce our glxext.h headers to be included instead of the system ones.
José Fonseca [Wed, 18 Jan 2012 09:51:54 +0000 (09:51 +0000)]
Force our glxext.h headers to be included instead of the system ones.

Gl/glx.h often includes GL/glxext.h, which may be outdated.

So manipulate the include path so that our headers are found first.

12 years agoDistinguish linear pointers.
José Fonseca [Sun, 15 Jan 2012 14:24:10 +0000 (14:24 +0000)]
Distinguish linear pointers.

12 years agoAdd Function.argNames() method.
José Fonseca [Sun, 15 Jan 2012 13:57:03 +0000 (13:57 +0000)]
Add Function.argNames() method.

12 years agoHandle EXT_direct_state_access buffer mappings properly.
José Fonseca [Sun, 15 Jan 2012 13:56:28 +0000 (13:56 +0000)]
Handle EXT_direct_state_access buffer mappings properly.

12 years agoTrace GL_OES_mapbuffer mappings.
José Fonseca [Sun, 15 Jan 2012 13:30:43 +0000 (13:30 +0000)]
Trace GL_OES_mapbuffer mappings.

12 years agoFix GL_EXT_debug_marker spec.
José Fonseca [Sun, 15 Jan 2012 12:25:12 +0000 (12:25 +0000)]
Fix GL_EXT_debug_marker spec.

12 years agoCleanup/comment/format code.
José Fonseca [Sat, 14 Jan 2012 19:33:08 +0000 (19:33 +0000)]
Cleanup/comment/format code.

12 years agoRemove dead code.
José Fonseca [Sat, 14 Jan 2012 15:08:07 +0000 (15:08 +0000)]
Remove dead code.

12 years agoAdd a few more comments.
José Fonseca [Fri, 13 Jan 2012 23:21:10 +0000 (23:21 +0000)]
Add a few more comments.

12 years agoRetrace eglCreatePbufferSurface and eglDestroySurface properly.
José Fonseca [Fri, 13 Jan 2012 11:33:36 +0000 (11:33 +0000)]
Retrace eglCreatePbufferSurface and eglDestroySurface properly.

12 years agoTrace apps that dlopen("libEGL") and friends.
José Fonseca [Fri, 13 Jan 2012 11:33:03 +0000 (11:33 +0000)]
Trace apps that dlopen("libEGL") and friends.

12 years agoTweak the GLES extensions specs.
José Fonseca [Fri, 13 Jan 2012 10:49:17 +0000 (10:49 +0000)]
Tweak the GLES extensions specs.

12 years agoHandle ARB_ES2_compatibility parameters.
José Fonseca [Fri, 13 Jan 2012 10:46:17 +0000 (10:46 +0000)]
Handle ARB_ES2_compatibility parameters.

12 years agoFix build with older MinGW headers.
José Fonseca [Wed, 11 Jan 2012 11:17:08 +0000 (11:17 +0000)]
Fix build with older MinGW headers.

12 years agoMerge branch 'trace-threads'
José Fonseca [Tue, 10 Jan 2012 20:20:37 +0000 (20:20 +0000)]
Merge branch 'trace-threads'

12 years agoFix Win64 build.
José Fonseca [Tue, 10 Jan 2012 20:19:24 +0000 (20:19 +0000)]
Fix Win64 build.

12 years agoTrace GLX_MESA_swap_control.
José Fonseca [Tue, 10 Jan 2012 19:39:12 +0000 (19:39 +0000)]
Trace GLX_MESA_swap_control.

12 years agoHandle ARB_texture_compression parameters.
José Fonseca [Tue, 10 Jan 2012 19:24:34 +0000 (19:24 +0000)]
Handle ARB_texture_compression parameters.

12 years agoSupport all buffer targets from OpenGL 4.2.
José Fonseca [Tue, 10 Jan 2012 19:13:58 +0000 (19:13 +0000)]
Support all buffer targets from OpenGL 4.2.

12 years agoFix SnappyFile::rawGetc() on big endian hosts.
Michel Dänzer [Fri, 6 Jan 2012 13:20:00 +0000 (14:20 +0100)]
Fix SnappyFile::rawGetc() on big endian hosts.

Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: José Fonseca <jose.r.fonseca@gmail.com>
12 years agoMove mutex abstraction to os_thread.hpp.
José Fonseca [Tue, 27 Dec 2011 20:00:47 +0000 (20:00 +0000)]
Move mutex abstraction to os_thread.hpp.

12 years agoMove local writer definitions to a separate header file.
José Fonseca [Tue, 27 Dec 2011 19:02:57 +0000 (19:02 +0000)]
Move local writer definitions to a separate header file.

12 years agocmake: Link against pthread.
José Fonseca [Fri, 23 Dec 2011 15:39:10 +0000 (15:39 +0000)]
cmake: Link against pthread.

12 years agoMore helpful messages on exceptions inside apitrace code.
José Fonseca [Fri, 23 Dec 2011 03:22:53 +0000 (03:22 +0000)]
More helpful messages on exceptions inside apitrace code.

12 years agoUse AddVectoredExceptionHandler
José Fonseca [Fri, 23 Dec 2011 03:18:27 +0000 (03:18 +0000)]
Use AddVectoredExceptionHandler

Unlike SetUnhandledExceptionFilter it works for all threads.

12 years agoUse thread local storage to specify unique and low integer thread ids.
José Fonseca [Thu, 22 Dec 2011 22:19:40 +0000 (22:19 +0000)]
Use thread local storage to specify unique and low integer thread ids.

12 years agoFirst stab at tracing thread IDs.
José Fonseca [Thu, 22 Dec 2011 21:35:10 +0000 (21:35 +0000)]
First stab at tracing thread IDs.

12 years agoAdd missing OpenGL ES extensions
Arnaud Vrac [Mon, 19 Dec 2011 01:42:15 +0000 (02:42 +0100)]
Add missing OpenGL ES extensions

This does not include OpenGL ES 1.0 extensions that are not necessary
with Common and Lite profiles.

Signed-off-by: José Fonseca <jose.r.fonseca@gmail.com>
12 years agoMake eglretrace.cpp depend on gles api spec
Arnaud Vrac [Mon, 19 Dec 2011 01:46:01 +0000 (02:46 +0100)]
Make eglretrace.cpp depend on gles api spec

12 years agoMake X11 dependency optional on Linux
Arnaud Vrac [Mon, 19 Dec 2011 01:44:24 +0000 (02:44 +0100)]
Make X11 dependency optional on Linux

When X11 is not available retracer is not built

12 years agoParse static array types in prototypes in gltxt.py
Arnaud Vrac [Mon, 19 Dec 2011 01:39:41 +0000 (02:39 +0100)]
Parse static array types in prototypes in gltxt.py

12 years agoParse prototypes with no parameters in gltxt.py
Arnaud Vrac [Mon, 19 Dec 2011 01:39:10 +0000 (02:39 +0100)]
Parse prototypes with no parameters in gltxt.py

12 years agoParse C comments around prototypes in gltxt.py
Arnaud Vrac [Mon, 19 Dec 2011 01:37:45 +0000 (02:37 +0100)]
Parse C comments around prototypes in gltxt.py

12 years agoFilter to mitigate rasterization differences.
José Fonseca [Wed, 14 Dec 2011 23:18:49 +0000 (23:18 +0000)]
Filter to mitigate rasterization differences.

12 years agosnapdiff: Compare .bmp images too.
José Fonseca [Tue, 13 Dec 2011 15:53:49 +0000 (15:53 +0000)]
snapdiff: Compare .bmp images too.

Quite common too.

12 years agosnapdiff: Add option to consider alpha when comparing images.
José Fonseca [Tue, 13 Dec 2011 15:53:13 +0000 (15:53 +0000)]
snapdiff: Add option to consider alpha when comparing images.

12 years agoApproximate comparison for floats.
José Fonseca [Tue, 13 Dec 2011 08:29:55 +0000 (08:29 +0000)]
Approximate comparison for floats.