Commit Graph

9345 Commits

Author SHA1 Message Date
Bartosz Taudul
6e3acecf54 Proper rounding for window size with fractional scaling.
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-10-24 22:09:38 +02:00
Bartosz Taudul
7b8d868bbd Merge pull request #1120 from siliceum/refactor/unify-module-caches
Unify module caches
2025-10-24 15:44:50 +02:00
Clément Grégoire
8ccc76c66b Use CopyStringFast in FormatImageName 2025-10-24 13:10:23 +02:00
Clément Grégoire
fe516e3596 IsKernelAddress helper 2025-10-24 13:10:23 +02:00
Clément Grégoire
2bdefc2aa3 Move drivers and modules caching to their own functions 2025-10-24 13:10:23 +02:00
Clément Grégoire
903cde50d9 Replace windows caches with ImageCache
- Introduce both s_imageCache and s_krnlCache on all platforms, even if unused (will be reused later to unify platforms handling)
- This means that what userland images that used to be unsorted are now sorted
2025-10-24 13:10:23 +02:00
Clément Grégoire
e1e9fb680d Rename TRACY_USE_IMAGE_CACHE to TRACY_HAS_DL_ITERATE_PHDR_TO_REFRESH_IMAGE_CACHE
Windows is already using a cache, and the only platforms that won't have one for now are those without dl_iterate_phdr.
2025-10-24 13:10:23 +02:00
Clément Grégoire
3b5b32d307 Replace hardcoded string duplication by CopyStringFast
This can be CopyStringFast since we allocated the cache on the same thread.
2025-10-24 13:10:22 +02:00
Clément Grégoire
32f94a05cb Support adding new entries and keeping the image cache sorted
Image cache will remain potentially unsorted until first access or `Sort` is called explicitely.
2025-10-24 12:54:35 +02:00
Clément Grégoire
0b814a2532 Split ImageCache to seperate platform specific so that it can be used on other platforms 2025-10-24 12:50:27 +02:00
Clément Grégoire
aa68c31780 Add path to ImageEntry in prevision of replacing KernelDriver use + add DestroyImageEntry for ImageEntry cleanup 2025-10-24 12:50:26 +02:00
Bartosz Taudul
32cc0e5121 Take scale into account when creating window. 2025-10-23 19:30:26 +02:00
Bartosz Taudul
7428defab6 Don't attach wayland surface before acking configure. 2025-10-21 22:55:19 +02:00
Bartosz Taudul
30267de474 Make sure symbols thread has time to enter into disconnected condition. 2025-10-21 20:42:44 +02:00
Bartosz Taudul
22dc5b1ca7 Merge pull request #1176 from redthing1/pr/fix/macos-dock-icon
fix window icon/dock integration with objc on macos
2025-10-17 11:30:32 +02:00
redthing1
2625468615 remove (void) unused markers 2025-10-16 20:22:17 -07:00
redthing1
9580ad46c3 fix window icon/dock integration with objc on macos 2025-10-16 14:00:18 -07:00
Clément Grégoire
385f72f9dc Rename ImageCache::Contains to ContainsImage
The name was a bit misleading as it could be mistaken to mean "The cache contains the address" and not as "has an image with this start address". ie: that it could be mistaken to do GetImageForAddress( startAddress ) != nullptr.
2025-10-11 14:13:33 +02:00
Clément Grégoire
12026dae5b Make ImageEntry m_startAddress/m_endAddress uint64_t as it will later be used in server, and thus not pointing to current process memory 2025-10-11 14:10:18 +02:00
Clément Grégoire
9665f7ac42 Move ImageEntry to header in prevision of sharing it with other CPP files in the future 2025-10-11 13:52:03 +02:00
Bartosz Taudul
027bc04279 Merge pull request #1168 from siliceum/fix/unintialized-pending-counts
Fix uninitialized Worker::m_pending* loaded traces.
2025-10-08 12:50:49 +02:00
Clément Grégoire
255f465a8f Fix uninitialized Worker::m_pending* loaded traces.
This was causing issues in the Infos -> Trace Statistics window as `GetCallstackFrameCount` uses `m_pendingCallstackFrames`. Just in case, init those all those variables where declared instead of constructor.
2025-10-08 07:47:51 +02:00
Bartosz Taudul
b6191ceddb Merge pull request #1160 from Voultapher/suppress-variable-shadowing-warnings
Suppress variable shadowing warnings
2025-10-07 19:23:41 +02:00
Lukas Bergdoll
5002c045e2 Make variable shadowing warning suppression optional 2025-10-03 11:57:18 +02:00
Bartosz Taudul
863bcc4635 Merge pull request #1161 from siliceum/doc/gpu-zone-and-ondemand
Document a classic mistake with Tracy's C GPU Zones API and `TRACY_ON_DEMAND`
2025-09-30 17:36:09 +02:00
Clément Grégoire
f5b3711163 Document a classic mistake with Tracy's C GPU Zones API and TRACY_ON_DEMAND 2025-09-30 15:08:42 +02:00
Lukas Bergdoll
abd7c4f317 Suppress variable shadowing warnings
This disables the warnings for MSVC, GCC and Clang in the ZoneScopedXX
macros.

The warnings produced are both a false positive since they didn't find a
bug *and* they don't happen in user written code, so the user couldn't
even do much about it. The previous workaround of using ZoneNamedXXX is
a poor solution since the Zone(Text|Name|etc.) macros all rely on the
`___tracy_scoped_zone` name.
2025-09-29 18:58:22 +02:00
Bartosz Taudul
0a5aa506b6 Update markdown manual. 2025-09-16 22:34:16 +02:00
Bartosz Taudul
a52a2db95d Merge pull request #1148 from siliceum/bugfix/cropper-display-issues
Fix#1147: Cropper now displays properly when docking windows
2025-09-11 18:44:36 +02:00
Bartosz Taudul
f998e3e2a9 Merge pull request #1151 from dpelle/make-ZoneNameF-less-error-prone
Make ZoneNameF() less error-prone by checking format against args
2025-09-11 12:30:03 +02:00
Bartosz Taudul
5cf408fc10 Cosmetics. 2025-09-11 00:57:22 +02:00
Bartosz Taudul
dcc46d2a72 Merge pull request #1149 from anderswk-ioi/master
Fix crash due to freeing elements of m_serialDequeue twice.
2025-09-11 00:56:50 +02:00
Dominique Pelle
5f36f3d2ec Make ZoneNameF() less error-prone by checking format against args
`ZoneNameF(fmt, ...)` was error-prone: if the format is inconsistent
with arguments, the code compiled fine without errors or warnings.
Use gcc/clang `__attribute__((format(printf, fmt_idx, arg_idx)))`
function attribute, so that `ZoneNameF(fmt, ...)` can now check
at compilation time the consistency between the format and the
arguments.

See https://gcc.gnu.org/onlinedocs/gcc-3.1/gcc/Function-Attributes.html
2025-09-10 20:26:57 +02:00
Anders Wang Kristensen
355a11f47f Missing initialization of dequeueStatus 2025-09-10 14:43:28 +02:00
Anders Wang Kristensen
f21f8d6ad2 Fix crash due to freeing elements of m_serialDequeue twice.
In Profiler::DequeueSerial if AppendData fails part way through m_serialDequeue then the elements could be freed again in Profiler::ClearSerial, which leads to memory corruption in rpmalloc.
2025-09-10 12:56:47 +02:00
Clément Grégoire
4be2e88292 Rework the way the cropper computes its sizes and position
- No long assumes timelines are on the left of the window
- Derive circle size from cropper width
2025-09-09 16:15:36 +02:00
Clément Grégoire
d61e4aee6c Fix cropper line position and draw order
No longer using the `ForegroundDrawList` by simply moving draw after zones.
2025-09-09 16:13:04 +02:00
Clément Grégoire
2396733f89 Fix timeline cropper triggered on hover of other windows 2025-09-09 14:29:50 +02:00
Bartosz Taudul
6e214cab0a Merge pull request #1146 from whouishere/fix-non-glibc-stat64
Fix usage of stat64 on non-glibc Linux
2025-09-05 16:50:15 +02:00
whouishere
a755cfab78 Fix usage of stat64 on non-glibc Linux 2025-09-05 10:22:02 -03:00
Bartosz Taudul
981717f3ef Workaround libwayland regression.
ddd348da7e
2025-08-25 17:08:21 +02:00
Bartosz Taudul
67ba5b7727 Fix possible crash. 2025-08-23 21:22:32 +02:00
Bartosz Taudul
69836f3166 Merge pull request #1108 from siliceum/feature/thread-cropping
Allow to limit zone depth
2025-08-22 18:12:14 +02:00
Bartosz Taudul
47d0654bc9 Merge pull request #1140 from mcourteaux/config-ghostzones
Configuration of defaults.
2025-08-22 18:07:32 +02:00
Martijn Courteaux
62e062ee82 Fix highlight on the asteriks label. 2025-08-22 16:08:23 +02:00
Martijn Courteaux
fbcd3c1ae2 Make markers subtle, and only clear when you hover the save-defaults button. 2025-08-22 13:05:21 +02:00
Clément Grégoire
a0ab47efad Fix lambda indent 2025-08-22 10:54:44 +02:00
Martijn Courteaux
ae523c9bbf Explain that you can also reset the values by deleting the config file. 2025-08-21 21:15:36 +02:00
Martijn Courteaux
278251f483 I always forget the manual. 2025-08-21 18:03:06 +02:00
Martijn Courteaux
039ea797fc Improve wording. 2025-08-21 17:58:00 +02:00