Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
d3d9_debugging [2014/10/25 15:44] okias |
d3d9_debugging [2022/07/11 10:41] (current) |
||
---|---|---|---|
Line 3: | Line 3: | ||
Compile both Mesa-3D and Wine with **CFLAGS** and **CXXFLAGS** set to debug. | Compile both Mesa-3D and Wine with **CFLAGS** and **CXXFLAGS** set to debug. | ||
- | < | + | < |
* **-Og** is better than -O0 and disable optimalization which interferes with debug (gcc >= 4.8) | * **-Og** is better than -O0 and disable optimalization which interferes with debug (gcc >= 4.8) | ||
- | * **-ggdb, -pg, -g** adds debug information to code | + | * **-ggdb, -g** adds debug information to code |
- | * * if wine build fails, rebuild after removing -pg | + | |
* **-gdwarf-2, | * **-gdwarf-2, | ||
+ | * you can also add **-pg** for profiling. Beware - may cause compilation issues. | ||
Also configure Mesa-3D with < | Also configure Mesa-3D with < | ||
Line 15: | Line 15: | ||
A problem can be located in either wine or Mesa. | A problem can be located in either wine or Mesa. | ||
- | If it's in mesa, you'll need to use | + | If it's in mesa, you'll need to use [[https:// |
- | * the **NINE_DEBUG** variable, to know what the D3D9 ST is doing. Pass **NINE_DEBUG=help** to get all options. | + | |
- | * the **NINE_TGSI_DUMP=1** variable for dumping generated TGSI code. | + | |
- | * the **TGSI_PRINT_SANITY=1** variable will precisely check TGSI and assert in case of errors | + | |
- | * the **D3D_ALWAYS_SOFTWARE=1** will run it on CPU instead of GPU... //extremly slow// | + | |
when you comparing logs from ALWAYS_SOFTWARE, | when you comparing logs from ALWAYS_SOFTWARE, | ||
Line 32: | Line 28: | ||
== APITrace == | == APITrace == | ||
{{ : | {{ : | ||
+ | * **For apitrace to work, you need to use the no_external_dll branch of iXit/ | ||
* For debugging Windows applications you'll need to use APITrace compiled for Windows | * For debugging Windows applications you'll need to use APITrace compiled for Windows | ||
* The Windows version is almost always required for replaying | * The Windows version is almost always required for replaying | ||
- | | + | When uploading APITrace .trace file, please repack it with brotli (best compression -> '' |
- | * [[http:// | + | |
+ | * [[http:// |