Timo Aaltonen pushed to branch upstream-unstable at X Strike Force / app / 
apitrace


Commits:
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
5726c43a by Gert Wollny at 2021-05-11T13:28:50+02:00
gltrim: support texture loading from unpack buffers

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
f716d2f7 by Gert Wollny at 2021-05-11T13:28:50+02:00
gltrim: Add a few more buffer calls

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
30dee522 by Gert Wollny at 2021-05-20T18:31:03+02:00
gltrim: Support GL_PARAMETER_BUFFER

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
06281be3 by Gert Wollny at 2021-07-02T14:57:12+02:00
gltrim: Add support for some glTexture calls

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
75e83879 by Gert Wollny at 2021-07-02T14:57:12+02:00
gltrim: handle glPrimitiveRestartIndex and glXCreatePBuffer

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
b3d2f4f6 by Gert Wollny at 2021-07-02T14:57:12+02:00
gltrim: Add support for glBindSamplers

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
60160d29 by Joshua Ashton at 2021-07-08T16:53:38+01:00
specs: Define LONG_PTR and ULONG_PTR

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
4daa5cf9 by Joshua Ashton at 2021-07-08T16:53:38+01:00
specs: Expose DXGIGetDebugInterface

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
d7c7fa06 by Joshua Ashton at 2021-07-08T16:53:38+01:00
specs: Expose DXGIGetDebugInterface1

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
99f8ef84 by Joshua Ashton at 2021-07-08T16:53:38+01:00
specs: Expose CompatValue (DXGI)

Needed by D3D11On12.

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
5b5d4e5b by Joshua Ashton at 2021-07-08T16:53:38+01:00
wrappers: Add ordinals to DXGI exports

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
0001ff61 by Joshua Ashton at 2021-07-08T16:53:38+01:00
wrappers: Add ordinals to D3D11 exports

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
74caedf3 by Gert Wollny at 2021-07-29T18:50:27+02:00
gltrim: move some declarations around

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
8feead50 by Joshua Ashton at 2021-09-01T14:55:41+01:00
dxgi: Define IDXGIFactory7

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
92cf39ab by Joshua Ashton at 2021-09-01T14:55:41+01:00
dxgiretrace: Handle non-default adapters for EnumAdapterByGpuPreference

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
807d5a97 by Joshua Ashton at 2021-09-01T14:55:41+01:00
dxgiretrace: Handle EnumAdapterByLuid

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
764c9786 by Joshua Ashton at 2021-11-10T18:48:01+00:00
cmake: Fix linking against winpthreads

Signed-off-by: Joshua Ashton <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
891ac5c3 by Gert Wollny at 2022-04-08T11:07:33+09:00
frametrim: Handle listBase, LogicOp, and RasterPos*

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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 <[email protected]>
Reviewed-by: Gert Wollny <[email protected]>
Signed-off-by: David Heidelberg <[email protected]>

- - - - -
6ff6c1b3 by Gert Wollny at 2022-05-19T14:33:03+01:00
gltrim: handle glFramebufferTexture3D and glMultiDrawElements

Signed-off-by: Gert Wollny <[email protected]>

- - - - -
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 <[email protected]>

- - - - -
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

- - - - -


30 changed files:

- .editorconfig
- − .github/scripts/build-mingw.sh
- .github/workflows/build.yml
- .gitignore
- .gitmodules
- CMakeLists.txt
- README.markdown
- appveyor.yml
- + ci/build-mingw.sh
- ci/build-msvc.ps1
- ci/docker/ubuntu-18.04.Dockerfile
- cli/CMakeLists.txt
- cli/cli_dump_images.cpp
- cli/pickle.hpp
- − cmake/FindSNAPPY.cmake
- + cmake/toolchain/mingw32.cmake
- + cmake/toolchain/mingw64.cmake
- thirdparty/mingw/wrl/wrl/client.h → compat/cxx11-threads/condition_variable
- wrappers/assert.cpp → compat/cxx11-threads/mutex
- + compat/cxx11-threads/thread
- compat/cxx_compat.hpp
- compat/winsdk_compat.h
- dispatch/CMakeLists.txt
- docs/BUGS.markdown
- docs/INSTALL.markdown
- docs/USAGE.markdown
- frametrim/ft_dependecyobject.cpp
- frametrim/ft_dependecyobject.hpp
- frametrim/ft_frametrimmer.cpp
- gui/CMakeLists.txt


The diff was not included because it is too large.


View it on GitLab: 
https://salsa.debian.org/xorg-team/app/apitrace/-/compare/03e4e9d2cab4f1a61d3f589785641a73dff027c5...9352fc02bba106fbbeef9e8452ef34643c0d0764

-- 
View it on GitLab: 
https://salsa.debian.org/xorg-team/app/apitrace/-/compare/03e4e9d2cab4f1a61d3f589785641a73dff027c5...9352fc02bba106fbbeef9e8452ef34643c0d0764
You're receiving this email because of your account on salsa.debian.org.


Reply via email to