-
79561bc0
by Jose Fonseca
at 2021-04-09T09:55:10+01:00
github-actions: Ignore appveyor branches.
-
d0552240
by Jose Fonseca
at 2021-04-09T12:46:45+01:00
appveyor: Also use build-msvc.ps1.
And cache Qt downloads.
-
39f73ade
by Jose Fonseca
at 2021-04-09T12:47:18+01:00
cmake: Use GITHUB_REF for CPACK_PACKAGE_VERSION.
-
d8854888
by Jose Fonseca
at 2021-04-10T08:33:21+01:00
libbacktrace: Add an .editorconfig.
To match indent.
-
40109aa3
by Jose Fonseca
at 2021-04-10T09:04:41+01:00
ci: Indent build-msvc.ps1.
-
bcd6c6ca
by Jose Fonseca
at 2021-04-10T09:10:34+01:00
ci: Better choice of debug/release MSVC builds.
-
88135f88
by Jose Fonseca
at 2021-04-10T09:10:58+01:00
appveyor: Let build-msvc.ps1 choose the config.
-
e84a507d
by Jose Fonseca
at 2021-04-10T09:11:26+01:00
github-actions: Upload artifacts on tagged builds.
-
45f5b82d
by Jose Fonseca
at 2021-04-10T09:24:26+01:00
appveyor: Don't set Python PATH.
CMake is discovering a different Python anyway.
-
f1ff6764
by Jose Fonseca
at 2021-04-10T14:00:53+01:00
thirdparty: Use MinGW's wrl/client.h header.
-
e2d2ff6a
by Jose Fonseca
at 2021-04-11T12:44:46+01:00
Remove Android remains.
Android support has long been gone.
-
2be0bc8d
by Jose Fonseca
at 2021-04-11T13:40:53+01:00
ci: Move build-mingw.sh to ci.
To make it easier to be invoked by hand.
-
d8e1925d
by Jose Fonseca
at 2021-04-12T15:33:03+01:00
ci: Fix MinGW's CMAKE_FIND_ROOT_PATH.
-
6a138da5
by Jose Fonseca
at 2021-04-12T15:33:11+01:00
ci: Skip CMake reconfiguration unless necessary.
-
b01a1fb2
by Jose Fonseca
at 2021-04-12T15:33:15+01:00
cmake: Show CTest output on terminal.
-
8c7ee559
by Jose Fonseca
at 2021-04-13T07:30:53+01:00
os: Use C++11 threads with MSVC.
The issues with exceptions disabled seem to be now gone.
-
348209d2
by Jose Fonseca
at 2021-04-13T14:23:44+01:00
ci: Use ccache when installed.
-
685c4a6f
by Jose Fonseca
at 2021-04-13T14:32:29+01:00
gitignore: Ignore *.log
-
c6d7b744
by Jose Fonseca
at 2021-04-13T14:39:41+01:00
cmake: Don't skip tests when cross-compiling if emulator is set.
-
a34b6952
by Jose Fonseca
at 2021-04-13T14:43:37+01:00
os: Drop C++11 -> posix thread emulation.
We only need to emulate MinGW.
-
a0905e86
by Jose Fonseca
at 2021-04-13T14:47:37+01:00
os: Use Win32 condition variable support.
We don't need to support pre-Vista, and Wine support seems alright now.
-
2d6d8f19
by Jose Fonseca
at 2021-04-13T17:53:50+01:00
os: Emulate C++11 threads on MinGW.
-
f3306538
by Jose Fonseca
at 2021-04-13T18:13:53+01:00
os: Deprecate the threading primitives.
-
efb74aba
by Jose Fonseca
at 2021-04-13T21:38:49+01:00
gui: Stop including .moc files.
It avoids all the
"SRC:/gui/xxx.cpp"
includes the moc file "xxx.moc", but does not contain a Q_OBJECT, Q_GADGET or Q_NAMESPACE macro.
automoc warnings, and per https://stackoverflow.com/a/34929627 it's not
necessary since all our Q_OBJECTS are in headers.
-
eb27172d
by Jose Fonseca
at 2021-04-13T22:51:30+01:00
retrace: Avoid switch warnings.
-
d6a7b666
by Jose Fonseca
at 2021-04-14T12:38:33+01:00
retrace: Log call number on the first Ctrl-C/Break event.
It's useful to debug hung traces on Windows.
-
b5775444
by Jose Fonseca
at 2021-04-14T12:38:33+01:00
retrace: Revamp IDXGIKeyedMutex handling.
It seems We can't safely emulate D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX
with D3D11_RESOURCE_MISC_SHARED without introducing race conditions with
applications which use IDXGIKeyedMutex to synchronize multiple contexts
in a single process (e.g, IE11.)
But we can't blindly honour IDXGIKeyedMutex either without introducing
deadlocks with applications which use IDXGIKeyedMutex to synchronize
contexts across multiple processes (e.g, WarThunder.)
So compromise here by always trying to honour IDXGIKeyedMutex methods,
but never deadlocking.
-
f497bc38
by Jose Fonseca
at 2021-04-15T10:45:43+01:00
cmake: Improve MinGW posix threads detection.
-
d0090c38
by Jose Fonseca
at 2021-04-15T12:45:29+01:00
helpers: Replace com_ptr with ComPtr.
-
bf3e1ac1
by Jose Fonseca
at 2021-04-15T12:46:01+01:00
retrace: Replace com_ptr with ComPtr.
-
7ea8c7c9
by Jose Fonseca
at 2021-04-15T17:19:25+01:00
inject: Avoid infinite recursion with NVIDIA OpenGL Windows driver.
-
fac2cf4c
by Jose Fonseca
at 2021-04-17T08:27:56+01:00
cmake: Define snappy as imported target.
-
8672c59f
by Jose Fonseca
at 2021-04-17T14:56:38+01:00
cmake: Use zlib as imported target.
-
4e25405e
by Jose Fonseca
at 2021-04-17T14:57:12+01:00
cmake: Use libpng as imported module.
-
2494e2da
by Jose Fonseca
at 2021-04-17T14:57:13+01:00
gitignore: Ignore .cache.
-
1d84ed42
by Jose Fonseca
at 2021-04-17T14:57:13+01:00
github-actions: Install thirdparty development packages.
-
3b4a698d
by Jose Fonseca
at 2021-04-17T14:57:13+01:00
cmake: Use system brotli where available.
-
c92cded6
by Jose Fonseca
at 2021-04-17T14:57:13+01:00
cmake: Use system's gtest where available.
-
adf7812c
by Jose Fonseca
at 2021-04-17T14:57:13+01:00
cmake: Silence static library warning on CI builds.
Also make it less verbose.
-
5db68706
by Jose Fonseca
at 2021-04-17T14:57:13+01:00
cmake: Cleanup remaining of thirdparty libraries.
-
13b1b1aa
by Jose Fonseca
at 2021-04-17T15:27:31+01:00
retrace: Avoid mhook on Wine.
-
8404199a
by Jose Fonseca
at 2021-04-18T08:16:40+01:00
github-actions: Fetch submodules recursively.
-
4d518386
by Jose Fonseca
at 2021-04-18T08:17:53+01:00
appveyor: Clone submodules recursively.
-
244fdf4b
by Jose Fonseca
at 2021-04-18T08:18:32+01:00
cmake: Move zlib CMakeLists.txt out of tree.
In anticipation to import zlib as a git submodule.
-
44e49728
by Jose Fonseca
at 2021-04-18T08:21:33+01:00
zlib: Re-import as a git submodule.
-
9f96b3aa
by Jose Fonseca
at 2021-04-18T08:22:18+01:00
gui: Remove unused variable.
-
d04911b8
by Jose Fonseca
at 2021-04-18T08:22:56+01:00
cmake: Improve target optimization.
-
a378a973
by Jose Fonseca
at 2021-04-18T08:23:08+01:00
snappy: Move CMakelist.txt out of tree.
-
6376cb28
by Jose Fonseca
at 2021-04-18T08:36:41+01:00
snappy: Re-import as a git submodule.
-
e36745a1
by Jose Fonseca
at 2021-04-18T08:43:08+01:00
brotli: Move CMakelists.txt out of tree.
-
66088255
by Jose Fonseca
at 2021-04-18T08:50:47+01:00
brotli: Re-import as a git submodule.
-
f96f759b
by Jose Fonseca
at 2021-04-18T08:51:23+01:00
libpng: Move CMakeLists.txt out of tree.
-
23a873fd
by Jose Fonseca
at 2021-04-18T08:51:33+01:00
libpng: Re-import as a git submodule.
Use a github mirror because SourceForge git servers don't support
shallow clones.
-
86ca853e
by Jose Fonseca
at 2021-04-18T08:51:44+01:00
libpng: Generate pnglibconf.h.
-
3e6b7cc3
by Jose Fonseca
at 2021-04-18T08:51:47+01:00
gtest: Move CMake logic to its own file.
-
91fe111d
by Jose Fonseca
at 2021-04-18T08:53:08+01:00
gtest: Reimport as a git submodule.
-
4f5adcd2
by Jose Fonseca
at 2021-04-18T08:53:16+01:00
cmake: Use seperate scopes for each thirdparty components.
-
78eac3b3
by Jose Fonseca
at 2021-04-18T08:53:18+01:00
libbacktrace: Move CMakeLists.txt out of tree.
-
cff3cc58
by Jose Fonseca
at 2021-04-18T08:53:20+01:00
libbacktrace: Workaround ctest leaking file descriptors with an external Python script.
-
b1c99dbd
by Jose Fonseca
at 2021-04-18T08:53:34+01:00
libbacktrace: Re-import as a git submodule.
-
318d9fb7
by Jose Fonseca
at 2021-04-18T08:53:43+01:00
libbacktrace: Package license.
-
4679e9d8
by Jose Fonseca
at 2021-04-18T09:35:50+01:00
gitignore: Ignore dxsdk-master.
-
77ccf159
by Jose Fonseca
at 2021-04-18T09:42:30+01:00
gltrace: Avoid unused function warning.
-
6ef85f7f
by Jose Fonseca
at 2021-04-18T11:25:35+01:00
cmake: Use target_sources.
-
035e40de
by Jose Fonseca
at 2021-04-19T08:57:51+01:00
os: Use C++11 [[noreturn]] attribute.
-
71102294
by Gert Wollny
at 2021-04-20T14:57:11+01:00
glretrace: use current context profile when creating a drawable
When glXMakeCurrent is called for the first time it might create a new
drawable, and its profile should correspond to the one specified for the
context.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
81dfede7
by Gert Wollny
at 2021-04-20T14:57:11+01:00
WIP: glretrace: use samples value recorded in trace to set MSAA samples
Check the calls that configure the framebuffer format and use the
requested samples value unless this value was set from the command
line.
v2: Store the samples value per fbconfig and not globally
v3: * Use 1 as sample number if none were given.
* Also check glXGetFBConfigAttrib for sample count
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
480ade75
by Jose Fonseca
at 2021-04-20T15:01:27+01:00
directxtex: Enforce C++11 standard to avoid warnings.
-
fb1293f2
by Jose Fonseca
at 2021-04-20T15:01:27+01:00
inject,wrappers: Stop trying to overwrite assert.
It doesn't seem to work reliably anymore, causing linkers to
fail with duplicate symbol errors.
-
0154fc4e
by Jose Fonseca
at 2021-04-20T15:01:27+01:00
cmake: Allow to use Address Sanitizer with MSVC too.
-
e613dc7a
by Jose Fonseca
at 2021-04-20T15:01:27+01:00
cmake: Use CMAKE_MSVC_RUNTIME_LIBRARY.
-
9d5ba9b0
by Jose Fonseca
at 2021-04-23T14:23:48+01:00
snappy: Generate snappy-stubs-public.h into config subdir.
To allow multiple builds from the same source tree to co-exist with less
conflict, and not dirty the snappy submodule.
-
9afee6f8
by Jose Fonseca
at 2021-04-23T14:23:54+01:00
glretrace: Use static buffer for holding fake process name.
-
8fd68a11
by Jose Fonseca
at 2021-04-23T14:24:00+01:00
Shorten GitHub URLs in error messages.
-
9d895199
by Jose Fonseca
at 2021-04-23T14:24:02+01:00
scripts: Ignore glXGetFBConfigAttrib when diffing.
There can be loads of these.
-
c664cbae
by Jose Fonseca
at 2021-04-24T07:32:41+01:00
glretrace: Honour --headless on DRI drivers.
-
d4612f97
by Jose Fonseca
at 2021-04-25T17:29:12+01:00
ci: Download qttools too, for qtwindeploy.
-
b2f90146
by Jose Fonseca
at 2021-04-25T17:29:18+01:00
ci: Build, check, and package in one swoop.
-
978bd06e
by Jose Fonseca
at 2021-04-25T17:29:29+01:00
cmake: Use new Qt find_package syntax.
-
935f7aaa
by Jose Fonseca
at 2021-04-30T14:42:33+01:00
cmake: Better error message when git submodules are missing.
Fixes https://github.com/apitrace/apitrace/issues/733
-
93e33e5f
by Jose Fonseca
at 2021-05-04T12:15:14+01:00
glretrace: Handle errors on glUseProgram more gracefully.
Fixes https://github.com/apitrace/apitrace/issues/679
-
4326a3b6
by Jose Fonseca
at 2021-05-04T13:19:22+01:00
d3d8trace/d3d9trace: Handle D3DFVF_xxx better.
By carefully ordering the D3DFVF_xxx symbols we can get the right names
to be matched.
Fixes https://github.com/apitrace/apitrace/issues/684
-
7f7f3cfb
by Jose Fonseca
at 2021-05-04T15:10:18+01:00
d3d8trace: Handle IDirect3DDevice8::SetVertexShader better.
Fixes https://github.com/apitrace/apitrace/issues/684
-
92992553
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Move recoding state to global variable
With that we don't need to pass the recording list and
the state of whether we recording around.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
79b36ee9
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Fix use of BindVertexArray and buffer binding
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
5726c43a
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: support texture loading from unpack buffers
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
a5047526
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Clean texture target type when texture is deleted
In addition, report the call when texture bind targets not match
-
1616111c
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Fix mapRange method name
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
7246bd37
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Fix handling of glBindBufferBase and glBindBufferRange
The calls bind to the indexed binding point *and* to the generic
binding point.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
0016f290
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Make it easier to track incorrect mappings
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
f716d2f7
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Add a few more buffer calls
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
d5c0e800
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Add more program calls
These are actually relevant and fixed trimming Shadow Warrior
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
9fdcaa4e
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: Only handle existing objects in destroy
the GLES CTS has glDelete calls that may try to delete zero objects, since
the spec says that these are to be ignored we should ignore them too.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
ee2f9d15
by Gert Wollny
at 2021-05-11T13:28:50+02:00
gltrim: always keep glXGetFBConfigAttrib
The call is needed to capture the samples value for MSAA, so the trimming
should keep it.
Fixes: 81dfede7f193567650894cabf2c54b1d35a370ce
WIP: glretrace: use samples value recorded in trace to set MSAA samples
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
17042475
by Tomeu Vizoso
at 2021-05-11T13:29:40+02:00
retrace: Get --loop to work without rewinding
This way we can benefit from the higher compression rates of Brotli when
doing performance tracking with --loop.
Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Closes: #729
-
f4570921
by Andres Gomez
at 2021-05-12T14:39:11+01:00
retrace: remove redundant comparison for the --driver option values
Found upon inspection.
Fixes: 93ac817a ("d3dretrace: Partial support for choosing discrete/integrated GPU.")
Signed-off-by: Andres Gomez <agomez@igalia.com>
-
a4aba4e0
by Jose Fonseca
at 2021-05-13T11:50:25+01:00
dispatch: Fork glproc_{gl,egl}.cpp for tracing/retracing.
These functions need to do quite different things when tracing vs
retracing. In particular there are a lot of awkard things done when
tracing, that simply get in the way when retracing.
-
64f37795
by Jose Fonseca
at 2021-05-13T11:50:25+01:00
glretrace: Symplify gl dispatch.
-
a451e3ab
by Tomeu Vizoso
at 2021-05-20T17:22:02+01:00
retrace: Handle timestamp counter roll-overs
Ask the OpenGL implementation what resolution it supports and handle any
roll overs that could have happened.
Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
-
4977712b
by Gert Wollny
at 2021-05-20T18:31:03+02:00
gltrim: Avoid segfault when the vertex array is unbound
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
387bab98
by Gert Wollny
at 2021-05-20T18:31:03+02:00
gltrim: OpenGL 2.1 allows a texture to be created with the bind call
So add the texture object on bind if it doesn't exist
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
bb530f1e
by Gert Wollny
at 2021-05-20T18:31:03+02:00
gltrim: Handle more calls
- glRenderMode,
- glPushAttrib, glPopAttrib, glClientPushAttrib, glPopClientAttrib
- glNamedProgramLocalParameter
- glNamedProgramEnvParameter
- glActiveStencilFace
- glMultiTexCoord
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
52fc20b4
by Gert Wollny
at 2021-05-20T18:31:03+02:00
gltrim: Fix fbo handling
* The binding pointsmust not be translated before calling
bindToTarget
* GL_ZERO can alsways be bound as read buffer
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
30dee522
by Gert Wollny
at 2021-05-20T18:31:03+02:00
gltrim: Support GL_PARAMETER_BUFFER
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
66dc7bff
by Gert Wollny
at 2021-06-14T19:51:10+01:00
specs/glxapi: Make GLX_SAMPELES and GLX_SAMPLE_BUFFERS accept int
The call to glXChooseFBConfig defines the attrib_list as pointer to int.
Fixes replaying and traces of "Lifeless Planet"
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
65424193
by Gert Wollny
at 2021-06-15T09:55:23+02:00
gltrim: Handle glNormalPointer, glMultiTexCoord and a few glX calls
This is required for trimming "Sir, You Are Being Hunted"
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
47b88da9
by Andres Gomez
at 2021-06-15T14:50:44+01:00
cli: fix dump-images help typos.
Fixes: 4edd6294 ("glretrace, dump-images: Accept --call-nos=no to get snapshots with call numbers")
Signed-off-by: Andres Gomez <tanty@igalia.com>
-
fd71f9c2
by Gert Wollny
at 2021-07-01T16:46:21+01:00
workflows: Update package list on ubuntu64*
Apparently Ubuntu may also drop package versions in LTS
distros, so always run "apt-get update" before trying to
install packages.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
c3a3cc37
by Ruslan Kabatsayev
at 2021-07-01T17:04:18+01:00
Fix dumping vertex attributes
When AttribDesc::AttribDesc fills in the data fields, it tries to find
number of columns from size and type only. This works OK for uniforms
(and presumably feedback transform attributes), because they can have
type like GL_FLOAT_VEC3, but this fails for vertex attributes, where
types can only be scalar (those acceptable to glVertexAttribPointer).
This patch special-cases filling in the data fields for vertex
attributes, which then lets qapitrace show the correct structure of
vertex buffers.
-
a49dd7b6
by Gert Wollny
at 2021-07-02T14:57:12+02:00
gltrim: Cache function names that have already been to callbacks
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
2ecc2c06
by Gert Wollny
at 2021-07-02T14:57:12+02:00
gltrim: Add a sanity check for functions names and log deviations
Since we don't check the complete function name when picking the handler
we might end up using an inappropriate handler if a function is currently
not listed, but a handler is registered for another function that happens
to have the same function name prefix.
Hence, check for common suffixes of GL function names, and print out what
handler is used when the suffix of the string is not in the expected list..
Clean up the function call mapping to give less suffix warnings.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
37ca765c
by Gert Wollny
at 2021-07-02T14:57:12+02:00
gltrim: use the prefix of a name strictly
We don't want to have a handler glFooBar to handle glFooNoBar, so
check that the complete prefix was used.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
790bacec
by Gert Wollny
at 2021-07-02T14:57:12+02:00
gltrim: don't log unhandled frame end calls
These calls are actually handled, only differenty.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
9dc6aa79
by Gert Wollny
at 2021-07-02T14:57:12+02:00
gltrim: Always record glColorPointer instead of recording it as state call
Fixes trimming "Anna"
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
06281be3
by Gert Wollny
at 2021-07-02T14:57:12+02:00
gltrim: Add support for some glTexture calls
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
75e83879
by Gert Wollny
at 2021-07-02T14:57:12+02:00
gltrim: handle glPrimitiveRestartIndex and glXCreatePBuffer
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
b3d2f4f6
by Gert Wollny
at 2021-07-02T14:57:12+02:00
gltrim: Add support for glBindSamplers
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
0973afe0
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
common: Fix a narrowing warning in String::format
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
ab46a613
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
trace: Fix a narrowing warning in parse_arg
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
fd97e723
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
trace: Fix narrowing bitmask enums
MSVC treats some enums as signed here for some reason which causes some to emit warnings.
Explicitly cast to unsigned long long to avoid a warning.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
0b23ef0b
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
trace: Add resultOverride to implementWrapperInterfaceMethodBody
When tracing D3D12, sometimes we want to fake a result to the application (eg. descriptor handles and virtual addresses) and never actually call the appropriate function.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
762c02ab
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
trace: Handle anonymous unions where not every type has a member
This assertion isn't true in polymorphic anonymous unions where not every type has an element in the union. (ie. D3D12_INDIRECT_ARGUMENT_DESC)
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
60160d29
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
specs: Define LONG_PTR and ULONG_PTR
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
4daa5cf9
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
specs: Expose DXGIGetDebugInterface
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
d7c7fa06
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
specs: Expose DXGIGetDebugInterface1
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
99f8ef84
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
specs: Expose CompatValue (DXGI)
Needed by D3D11On12.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
5b5d4e5b
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
wrappers: Add ordinals to DXGI exports
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
0001ff61
by Joshua Ashton
at 2021-07-08T16:53:38+01:00
wrappers: Add ordinals to D3D11 exports
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
cb3a85cc
by Jose Fonseca
at 2021-07-08T17:05:06+01:00
cmake: Allow to build with MinGW POSIX threads.
Win32 threads are still preferable, but MPOSIX threads seems to be
getting more prevalent among some Linux distros.
Fixes https://github.com/apitrace/apitrace/pull/750
-
2a4517f9
by Jose Fonseca
at 2021-07-09T09:44:27+01:00
specs: Fix GL_ARB_robustness/GL_KHR_robustness spec.
bufsize is in bytes. And we were missing a few GL_KHR_robustness
entrypoints.
-
a8a7dae1
by Jose Fonseca
at 2021-07-09T10:39:21+01:00
ci: Use newer CMake on Ubuntu 18.04 docker image.
Similar to 4b016517834281a49a125adab002a3babadbb996.
-
d4c352f1
by Jose Fonseca
at 2021-07-09T10:42:44+01:00
cmake: Require CMake 3.15.0.
This fixes CMP0091 policy, which wasn't been enacted, probably due to
being predicated by MSVC conditional, causing DLL MSVCRT being used
instead of statically linked one.
-
9d42f667
by Ruslan Kabatsayev
at 2021-07-09T13:43:13+01:00
Fix calculation of vertex attribute count
Current code relies on there being only one attribute per stride, and
gives wrong results when this assumption is broken. This patch fixes
this and closes #751.
-
4b0f76d2
by Gert Wollny
at 2021-07-29T18:50:09+02:00
glretrace: Don't try to get pointer for buffer '0' in DeleteBuffers
glDeleteBuffers ignores non-existing buffers names, and especially '0',
but calling glGetNamedBufferPointerv on a non-existing buffer results in
an error 'GL_INVALID_OPERATION'. To avoid this error skip over buffer '0'
when handling the region pointers.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
da076550
by Gert Wollny
at 2021-07-29T18:50:27+02:00
gltrim: Add dependencies for objects that are created and deleted together
In addition add some tracking of creation/deletion for better debuggig
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
74caedf3
by Gert Wollny
at 2021-07-29T18:50:27+02:00
gltrim: move some declarations around
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
e6b690c6
by Gert Wollny
at 2021-07-29T18:50:27+02:00
gltrim: track the current context
This is needed for traces that use shared contexts, like e.g. Blender 3D
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
1c6829a6
by Gert Wollny
at 2021-07-29T18:50:27+02:00
gltrim: Move VertexArray handling to a per-context base
vertex arrays are not shareable, so track them on a+
per-context base.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
2922e6c9
by Gert Wollny
at 2021-07-29T18:50:27+02:00
gltrim: Move program pipelines to a per-context handling
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
fdd12b82
by Gert Wollny
at 2021-07-29T18:50:27+02:00
gltrim: Handle fbos on a per context base
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
21114407
by Erico Nunes
at 2021-09-01T14:54:11+01:00
egltrace: Support eglSetDamageRegionKHR
>From EGL_KHR_partial_update:
https://www.khronos.org/registry/EGL/extensions/KHR/EGL_KHR_partial_update.txt
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
-
8feead50
by Joshua Ashton
at 2021-09-01T14:55:41+01:00
dxgi: Define IDXGIFactory7
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
92cf39ab
by Joshua Ashton
at 2021-09-01T14:55:41+01:00
dxgiretrace: Handle non-default adapters for EnumAdapterByGpuPreference
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
807d5a97
by Joshua Ashton
at 2021-09-01T14:55:41+01:00
dxgiretrace: Handle EnumAdapterByLuid
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
81e66749
by Joshua Ashton
at 2021-09-01T14:55:41+01:00
retrace: Fix intersects call on 64-bit
This was being narrowed and producing incorrect results
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
d28a9808
by Jose Fonseca
at 2021-09-01T16:35:53+01:00
gltrace: Avoid __libc_dlsym and __libc_dlopen_mode on GLIBC 2.34.
These GLIBC_PRIVATE symbols are gone from GLIBC 2.34 due to the merge of
libdl.so onto libc.so.
This means apitrace can't defend against infinite recursion when
used with Steam Overlay, but at least it should work otherwise.
Fixes https://github.com/apitrace/apitrace/issues/756
-
2a83ddd4
by Gert Wollny
at 2021-10-29T16:26:39+01:00
replay: Always execute glRead(n)Pixels and glGetTex(n|ure)Image
These calls are critical for a performance analysis and should
be executed.
v2: make the execution unconditional and use the generic call emission
code (José)
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
1ee59916
by Joshua Ashton
at 2021-11-10T18:41:27+00:00
retrace: Remove wine check for process name spoofing
This works now, we need it.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
4d62f5e6
by Joshua Ashton
at 2021-11-10T18:41:27+00:00
retrace: Add support for spoofing GetModuleFileNameW
We use this in DXVK for app profiles so we need this to be spoofed like this too on retrace.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
764c9786
by Joshua Ashton
at 2021-11-10T18:48:01+00:00
cmake: Fix linking against winpthreads
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
5ef3dbbe
by Jose Fonseca
at 2022-04-08T02:53:42+01:00
cmake: Require Qt 5.2.1.
Fixes https://github.com/apitrace/apitrace/issues/779
-
cf5f7525
by Gert Wollny
at 2022-04-08T11:07:33+09:00
frametrim: check parameter of gl*ctiveTexture for sanity
Otherwise we might get negative values that are not allowed.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
891ac5c3
by Gert Wollny
at 2022-04-08T11:07:33+09:00
frametrim: Handle listBase, LogicOp, and RasterPos*
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
47f69020
by Gert Wollny
at 2022-04-08T11:10:17+09:00
retrace: Decode more attribute formats
Decode GL_INT_2_10_10_10_REV, GL_UNSIGNED_INT_2_10_10_10_REV, and
GL_UNSIGNED_INT_10F_11F_11F_REV attribute types.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
8e353903
by Gert Wollny
at 2022-04-08T11:10:17+09:00
config: fall back to the driver values for certain strings
getConfigString returns NULL if no config was read, but the c_str() of
an empty string is not NULL, so with a config file that doesn't specify
these strings the returned values will be empty, and we end up with false
reporting. Therefore, and return NULL if the strings are empty.
-
57e93049
by Gert Wollny
at 2022-04-08T11:10:17+09:00
config: Make it possible to override buffer offset alignments
These values have a wide range of valid values, and are often different
on different hardware. So in order to be able to replay a trace that was
captured on one type of hardware on another type of hardware, make it
possible to set the alignments explicitely when tracing.
-
fcfcfbf5
by Jose Fonseca
at 2022-04-08T03:21:18+01:00
github: Use windows-2019 env until we upgrade.
-
8746c255
by Joshua Ashton
at 2022-04-08T11:38:47+09:00
thirdparty: Use DirectXMath as a submodule
Fixes building on modern MinGW which partially provides some older version.
Fixes code to compile with this under MinGW which has some weird define for no overloads on GCC for some reason.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
-
9525dab9
by Erico Nunes
at 2022-04-08T14:30:09+09:00
egltrace: implement eglSetDamageRegion on retrace
Before this, the calls were recorded in the trace but not
reproduced while playing the trace.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
-
1a03a40d
by Erico Nunes
at 2022-04-08T14:30:09+09:00
egltrace: implement eglSwapBuffersWithDamage on retrace
Before this, the calls were recorded in the trace but not
reproduced while playing the trace.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
-
2397f88f
by Jose Fonseca
at 2022-04-13T15:15:58+09:00
git: Use shallow DirectXMath clone.
-
710162aa
by Jose Fonseca
at 2022-04-13T15:15:58+09:00
docs: Use HTTPS links where available.
-
85e620ec
by remoe
at 2022-04-29T09:25:44+01:00
Interpret CGLGetPBuffer pbuffer argument correctly.
The pbuffer argument is a pointer to a pbuffer, not a straight pbuffer.
Fixes #740.
v2: Cleanup. -- Jose Fonseca <jose.r.fonseca@gmail.com>
-
c54d9956
by Jose Fonseca
at 2022-04-29T11:29:49+01:00
appveyor: Update GitHub deployment token.
-
2d06351b
by David Heidelberg
at 2022-05-19T14:31:16+01:00
frametrim: fix active texture check compare
Fixes:
```
26916: glActiveTexture Invalid texture unit 34015 specified, ignoring call
```
Found-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
-
6ff6c1b3
by Gert Wollny
at 2022-05-19T14:33:03+01:00
gltrim: handle glFramebufferTexture3D and glMultiDrawElements
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
-
0152b1f4
by David Heidelberg
at 2022-05-19T14:34:07+01:00
implement ARB_create_context_no_error for GLX and WGL
Fixes warnings as:
```
apitrace: warning: glXCreateContextAttribsARB: unknown key 0x31B3, interpreting value as int
```
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
-
5acd4231
by Jose Fonseca
at 2022-05-19T15:21:42+01:00
specs: Better EGL_EXT_image_dma_buf_import support.
-
eb75ee03
by Jose Fonseca
at 2022-05-20T10:28:45+01:00
cli: Munge non-ASCII characters when pickling.
It's not a comprehensive fix, but at least ensures the generated Python
pickle stream is valid.
Fixes https://github.com/apitrace/apitrace/issues/781
-
9352fc02
by Gert Wollny
at 2022-05-20T15:14:48+01:00
wrappers/glcaps: Check config availablility before dereferencing
Fixes: https://github.com/apitrace/apitrace/issues/786