Bartosz Taudul
99544f4655
Clamp previous ghost zones to current sample time.
2020-06-11 12:18:44 +02:00
Bartosz Taudul
191ff93822
Optimize DXT1 index order fixing.
2020-06-11 03:04:09 +02:00
Bartosz Taudul
d1ef8ea90b
Set owner of file dialogs on windows.
2020-06-10 01:52:17 +02:00
Bartosz Taudul
e932cbe162
Add missing OpenCL mentions.
2020-06-09 18:17:43 +02:00
Bartosz Taudul
8bbc40beb2
Bump version, protocol for D3D12.
2020-06-09 11:20:50 +02:00
Andrew Depke
39479b8d93
Merge branch 'master' into master
2020-06-08 23:50:20 -06:00
Bartosz Taudul
929d399995
Fix determination of line width.
2020-06-08 14:02:11 +02:00
Andrew Depke
3282a8d27c
Added server support for D3D12 contexts
2020-06-07 00:40:08 -06:00
Bartosz Taudul
c384ec132f
Fix position of source separator line.
2020-06-06 20:50:24 +02:00
Bartosz Taudul
9c49ee3dd3
Don't mark windows as write-modified when only reading data.
2020-06-06 20:46:46 +02:00
Bartosz Taudul
d35d9b60ff
Bump protocol and version for OpenCL support.
2020-06-06 14:57:48 +02:00
Bartosz Taudul
57f1ef05c7
Merge pull request #31 from mcleary/opencl-support
...
Add OpenCL trace support
2020-06-06 14:56:29 +02:00
Bartosz Taudul
ecfeb01aad
Set source view content width to max value, regardless of clipping.
2020-06-06 12:37:05 +02:00
Bartosz Taudul
a3a7183293
Disable inclusion of non-windows in ctrl-tab list.
2020-06-05 19:23:27 +02:00
Bartosz Taudul
16b116ee83
Enable horizontal scrollbar in source view.
2020-06-05 19:04:12 +02:00
Thales Sabino
a46f83364e
Add OpenCL trace support
...
- Adds the file TracyOpenCL.hpp which contains the API to annotate OpenCL applications
- It works in a similar fashion to the Vulkan annotations
- Adds an example OpenCL application in examples/OpenCLVectorAdd
- Adds "OpenCL Context" to the UI
- Manual entry for annotating OpenCL zones
2020-06-05 10:15:47 +01:00
Bartosz Taudul
71d789063e
Show only relevant options in asm view.
2020-06-04 19:59:13 +02:00
Bartosz Taudul
3fbc2c8036
Increase buffer size.
2020-06-04 19:54:11 +02:00
Bartosz Taudul
e19a981b8c
Fix display of unknown source locations in asm view.
2020-06-04 19:39:43 +02:00
Bartosz Taudul
ce2e01bcd7
Skip processing uarch data if AT&T mode is enabled.
2020-06-04 19:30:44 +02:00
Bartosz Taudul
adc2c12a67
Clear asm data when opening just source view.
2020-06-04 19:20:24 +02:00
Bartosz Taudul
c52936855e
Don't read beyond buffer end.
2020-06-04 02:46:46 +02:00
Bartosz Taudul
917da8cff3
Properly terminate combo table.
2020-06-04 02:41:45 +02:00
Bartosz Taudul
f227bb4d9c
Update instruction tables to "may 2020".
2020-06-03 21:17:52 +02:00
Bartosz Taudul
9e500bc897
Handle merging inlined ghost zones.
2020-05-31 21:47:52 +02:00
Bartosz Taudul
994b88f898
Ghost index is only available is statistics are enabled.
2020-05-31 15:24:11 +02:00
Bartosz Taudul
067189c355
Extract ghost zone adding to a separate function.
2020-05-31 14:51:33 +02:00
Bartosz Taudul
d9e97ce772
Add postponed ghost zones when frame data becomes available.
2020-05-31 14:31:39 +02:00
Bartosz Taudul
1154343a20
Don't add ghost zones if full callstack data isn't available.
2020-05-31 14:17:54 +02:00
Bartosz Taudul
de5f8df9d3
UpdateSampleStatistics() returns if all samples were processed.
...
This effectively is a check if all frames in a callstack are available.
2020-05-31 14:05:16 +02:00
Bartosz Taudul
7ce915c4f6
Allow display of symbol address in statistics view.
2020-05-30 15:39:34 +02:00
Bartosz Taudul
5955efabb0
Use combo box for smart/entry/sample location selection.
2020-05-30 15:39:34 +02:00
jmanc3
e22ece8e79
Added support for horizontal scrolling.
2020-05-27 21:11:49 -05:00
Bartosz Taudul
54a029356d
Explicitly store GPU context type.
2020-05-27 18:16:53 +02:00
Bartosz Taudul
4f3934ae6a
Use correct symbol address.
2020-05-26 02:08:30 +02:00
Bartosz Taudul
898a10ef82
Display base function is symbol as '[ - self - ]'.
2020-05-25 21:42:01 +02:00
Bartosz Taudul
bdba77c0f5
Allow displaying self zone time in frames overview.
2020-05-25 01:15:06 +02:00
Bartosz Taudul
74a79a6921
Add zone child time getter with clamping to time range.
2020-05-25 01:14:44 +02:00
Bartosz Taudul
7ceb4005cd
Don't use alloca in inlined functions inside a loop.
2020-05-24 16:17:54 +02:00
Bartosz Taudul
2b304581cf
Implement transfer of integral values for zones.
2020-05-24 16:13:09 +02:00
Bartosz Taudul
45a9878193
Don't depend on zero-termination of source code.
2020-05-23 17:07:23 +02:00
Bartosz Taudul
d3b60f913d
Extend "first frame" time.
2020-05-23 16:52:58 +02:00
Bartosz Taudul
0b900c0a3c
Add crash popup.
2020-05-23 16:40:15 +02:00
Bartosz Taudul
18b2e3e5be
Don't depend on View in Worker.
2020-05-23 15:53:58 +02:00
Bartosz Taudul
2f35c785ee
Save/load cached source files.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
5b96809f6f
Add notification when source file is loaded from cache.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
dc0f2db3f2
CheckString() doesn't check if string query is still pending.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
ee22cf3b0c
Use cached source files.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
d470202bca
Cached source files accessor.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
964d65fd3b
Cache callstack/symbol/code source files.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
f7341141cf
Cache zone source location source files.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
97a5957adc
Display source file cache stats.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
ae1155852a
Source file cache plumbing.
2020-05-23 15:44:18 +02:00
Bartosz Taudul
f38464cf55
Rename SymbolCodeData to MemoryBlock.
2020-05-23 14:54:16 +02:00
Bartosz Taudul
d052e4c79d
Substitution-less source file validator.
2020-05-23 14:54:16 +02:00
Bartosz Taudul
fa2559b3f0
Add StringRef hasher, comparator.
2020-05-23 14:54:16 +02:00
Bartosz Taudul
670a292416
Report whether string is available, or if a query was dispatched.
2020-05-23 13:08:57 +02:00
Bartosz Taudul
619523b43e
Symbol might not have ip statistics.
2020-05-21 19:20:20 +02:00
Bartosz Taudul
e9c13b254b
Get exclusive samples count for a proper symbol.
...
If inlines are grouped under a base symbol, the base symbol data
includes all the inline sample counts. This was interfering with control
logic determining if sample parents window can be displayed.
2020-05-19 19:10:40 +02:00
Bartosz Taudul
e376866436
Check for exclusive samples in inlined symbols list.
2020-05-19 19:06:01 +02:00
Bartosz Taudul
883264c0df
Fix typo.
2020-05-18 18:25:49 +02:00
Bartosz Taudul
f9ff6f4161
Clamping is not needed.
2020-05-15 02:30:52 +02:00
Bartosz Taudul
f6663b187a
Add ghost zone label to ghost zone tooltips.
2020-05-15 02:27:48 +02:00
Bartosz Taudul
ad3cac8578
Incorporate thread colors in ghost zones.
2020-05-15 02:25:28 +02:00
Bartosz Taudul
23de7cb294
Improve source file tooltip.
2020-05-15 01:39:14 +02:00
Bartosz Taudul
03c3a3e7c7
Select proper operand for LEA processing in AT&T mode.
2020-05-15 01:37:08 +02:00
Bartosz Taudul
992fba7e07
Move profiler FPS display to upper-right corner.
2020-05-14 17:53:46 +02:00
Bartosz Taudul
ba9b35dc3b
Don't memcpy to nullptr.
2020-05-14 17:38:48 +02:00
Bartosz Taudul
c8ff8540f9
Sleep when connection attempt fails.
2020-05-14 02:27:57 +02:00
Bartosz Taudul
7ea9c4baf2
Proper locking for queue/in-flight queries.
2020-05-13 18:52:20 +02:00
Bartosz Taudul
7d57a2ea6d
Cast to correct type.
2020-05-13 18:38:40 +02:00
Bartosz Taudul
3f3378e13a
Fix typo.
2020-05-13 18:37:37 +02:00
Bartosz Taudul
8e11cd5ebb
Add support for custom text in ImportEventTimeline.
2020-05-12 11:44:36 +02:00
Bartosz Taudul
1c8aece53c
No saving if there's no file selector.
2020-05-11 22:13:07 +02:00
Bartosz Taudul
e330b96b3d
Allow saving only lines within jump range.
2020-05-11 21:59:45 +02:00
Bartosz Taudul
0790e92cad
Support saving asm range.
2020-05-11 21:12:43 +02:00
Bartosz Taudul
9d5d116014
Extract asm saving to a separate function.
2020-05-11 21:08:50 +02:00
Dmitry Ivanov
8f509dd41a
Make TracySourceView.cpp build with somewhat old clang
...
This was the only issue preventing build on macOS High Sierra with whatever version of clang it has.
2020-05-11 16:23:50 +02:00
Bartosz Taudul
dafecf2a19
Allow enumerating asm lines from a given base instruction.
2020-05-11 13:35:49 +02:00
Bartosz Taudul
8a7913c095
Update xxh3 to master @ ea9c098e93.
2020-05-11 02:33:12 +02:00
Bartosz Taudul
e9f93f5bc7
Send lean frame images.
2020-05-10 20:16:08 +02:00
Bartosz Taudul
03b5dfacd6
Send lean callstack samples.
2020-05-10 20:00:51 +02:00
Bartosz Taudul
09388f3c99
Send lean callstack allocs.
2020-05-10 19:56:36 +02:00
Bartosz Taudul
5a774c82cc
Send lean callstacks.
2020-05-10 19:43:12 +02:00
Bartosz Taudul
f0ade07be8
Send lean memory callstacks.
2020-05-10 19:28:08 +02:00
Bartosz Taudul
2dc07fca0b
Send lean allocated source locations.
2020-05-10 19:20:59 +02:00
Bartosz Taudul
50c66174dd
Add ability to show callstack to an asm line.
2020-05-10 16:56:38 +02:00
Bartosz Taudul
2f8e817e16
Make PackPointer() part of worker's interface.
2020-05-10 16:56:13 +02:00
Bartosz Taudul
d84495d0e1
Mark inline symbols.
2020-05-10 16:13:19 +02:00
Bartosz Taudul
fdd50840a7
Add a function for showing sample parents.
2020-05-10 16:07:45 +02:00
Bartosz Taudul
dee808dd1b
Display jump labels in the UI.
2020-05-09 15:14:33 +02:00
Bartosz Taudul
2543bb5e63
Shorter jump labels.
2020-05-09 15:14:25 +02:00
Bartosz Taudul
0de39a1d33
Construct location table during disassembly.
2020-05-09 14:58:06 +02:00
Bartosz Taudul
8cbd209ede
Display number of selected lines.
2020-05-09 13:53:11 +02:00
Bartosz Taudul
8caf6b02c6
Allow switching between Intel and AT&T assembly syntax.
2020-05-09 12:58:09 +02:00
Bartosz Taudul
ad4387a0c0
Implement saving disassembly to a file.
2020-05-09 02:37:18 +02:00
Bartosz Taudul
8b56dd5468
Prevent division by zero.
2020-05-08 01:55:03 +02:00
Bartosz Taudul
70818b49b9
Force connection popup boolean should decay.
2020-05-08 01:49:15 +02:00
Bartosz Taudul
5b29e65bc5
Initial value of DecayValue might be active.
2020-05-08 01:48:37 +02:00
Bartosz Taudul
2da6c6b6f5
Fix enforced connection popup position wrt viewports.
2020-05-07 15:27:11 +02:00
Bartosz Taudul
2ca6b6f2fe
Implement display of grouped instruction pointer statistics.
2020-05-07 02:33:37 +02:00
Bartosz Taudul
15454d2253
Select microarchitecture basing on cpuid.
2020-05-07 00:53:31 +02:00
Bartosz Taudul
eab3adfa1d
Display CPU info.
2020-05-06 19:18:17 +02:00
Bartosz Taudul
6fda74e281
Save/load cpu id.
2020-05-06 19:18:17 +02:00
Rokas Kupstys
e40f0c4f2e
Fix MinGW build.
2020-05-05 13:23:46 +03:00
ikrima
1b5879e176
ImGui Multiviewport fixes
...
- set ImGuiConfigFlags_ViewportsEnable
- correct render loop logic with viewport api calls, SetNextWindowViewport(), UpdatePlatformWindows(), RenderPlatformWindowsDefault()
- Fix: coords in abs space now, SetNextWindowPos()
NOTE:
- I have viewports turned on by default so you can easy test (comment out io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable; and you get old behavior)
- Jankiness with multiviewports isn't bc perf hit; it's bc profiler reduces it's tick rate when it's not in focus. So, that bit of logic needs to be updated if you really care
- I haven't encountered any issues over past week but discount that by 50% since i'm new to tracy. No promises some UI wasn't regresssed
- Key things to watch out for is enabling viewports turns ImGui into using absolute monitor coords instead of window coords (ie SetPosition(0,0) => monitor top left, not window top/left
2020-05-04 02:17:15 -07:00
Bartosz Taudul
74e55f584c
Small toggle button.
2020-05-03 20:49:21 +02:00
Bartosz Taudul
d99129f0e4
Move ToggleButton() out of TracyView.cpp.
2020-05-03 20:40:53 +02:00
Bartosz Taudul
88b2b04b0d
Display running threads in CPU usage tooltip.
2020-05-03 14:34:22 +02:00
Bartosz Taudul
fb801fa484
Extract time value at mouse cursor to a variable.
2020-05-03 14:34:05 +02:00
Bartosz Taudul
9d94cdbb52
Parametrize color highlighting.
2020-05-03 14:33:47 +02:00
Bartosz Taudul
3aed0ba150
Unformatted colored text printing with uint32 color.
2020-05-03 14:33:11 +02:00
Bartosz Taudul
b69bf49082
Separate thread context data getter.
2020-05-03 14:21:27 +02:00
Bartosz Taudul
222d3d661e
Change "go to frame" window to popup.
2020-05-03 13:54:37 +02:00
Bartosz Taudul
d4e490f47e
Keep frames graph at the top of the window (not in dock space).
2020-05-03 13:30:05 +02:00
Bartosz Taudul
bb043f96ee
Use internal NoTabBar flag for central node.
2020-05-03 13:29:51 +02:00
Bartosz Taudul
e3acb635a3
Tune up work area window padding.
2020-05-03 13:27:58 +02:00
Bartosz Taudul
32aa23822b
Disable docking in central node.
2020-05-03 13:23:48 +02:00
Bartosz Taudul
3350a78cd8
Put work area in center docking node.
2020-05-03 13:23:26 +02:00
Bartosz Taudul
73fda0b188
Disable docking in the main window.
2020-05-03 13:21:34 +02:00
Bartosz Taudul
e7e3d1105c
Register usage is only available in capstone 4.x.
2020-05-02 03:09:16 +02:00
Bartosz Taudul
2e75990b6c
Fix wrong indent.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
e132849fe2
Don't highlight lines with no dependencies.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
95c9259193
Draw register dependency decorations on scroll bar.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
50a5cce985
Reduce search range.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
0fdb5e6592
Calculate register dependency data.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
93f255e95b
Invalidate asm line selection when disassembly is performed.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
654dc2b901
Detect conditional jumps.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
4390aa1015
Print register data in asm lines.
2020-05-01 22:39:54 +02:00
Bartosz Taudul
f4b06ed1fc
Register line selection.
2020-05-01 20:35:09 +02:00
Bartosz Taudul
8b2b2f650f
Add space for register data in each asm line.
2020-05-01 20:35:09 +02:00
Bartosz Taudul
bb4b08e8cf
Don't display operands, if none.
2020-05-01 16:15:33 +02:00
Bartosz Taudul
47b8f052bd
Include flags register.
2020-05-01 16:14:27 +02:00
Bartosz Taudul
611bfe49df
Display list of read and write registers.
2020-05-01 13:20:19 +02:00
Bartosz Taudul
8014fce6e1
Store list of read and write registers for each asm instruction.
2020-05-01 13:01:47 +02:00
Bartosz Taudul
38116b88a5
Create x86 common register mapping table.
2020-05-01 13:01:47 +02:00
Bartosz Taudul
b74caae685
Handle ending a zone twice.
2020-04-30 19:05:13 +02:00
Bartosz Taudul
a40ba8f4e9
Switch query queue icon to satellite dish.
2020-04-30 18:41:08 +02:00
Bartosz Taudul
035bb2236d
Always preserve order of queries.
2020-04-30 02:25:25 +02:00
Bartosz Taudul
8fa0a4dc9e
Update mbps data block after terminating connection.
2020-04-29 02:36:38 +02:00
Bartosz Taudul
2175fa6701
Shorten labels.
2020-04-27 19:21:32 +02:00
Bartosz Taudul
83d6566020
Optional visualization of uarch latency.
2020-04-27 19:21:32 +02:00
Bartosz Taudul
d6e633edd0
Fix typo.
2020-04-27 16:10:43 +02:00
Bartosz Taudul
adc60bf394
Separate uarch data retrieval from tooltip display.
2020-04-27 15:31:32 +02:00
Bartosz Taudul
abd00e28b8
Hackish support for LEA variants.
2020-04-27 00:59:49 +02:00
Bartosz Taudul
70605fc8ed
Workaround issues with operand width mismatch.
2020-04-27 00:59:49 +02:00
Bartosz Taudul
5da60b53d0
Add micro architecture tooltips.
2020-04-27 00:59:49 +02:00
Bartosz Taudul
800f740fd5
Add micro architecture data.
2020-04-27 00:59:49 +02:00
Bartosz Taudul
f43755625c
Add uarch selection UI.
2020-04-26 15:00:40 +02:00
Bartosz Taudul
6266d482ae
Be explicit about displaying machine code.
2020-04-26 14:51:58 +02:00
Bartosz Taudul
dba594a857
Store CPU architecture.
2020-04-26 14:23:16 +02:00
Bartosz Taudul
5ae2c415b7
Draw a line indicating zeroth column of source code.
2020-04-25 13:52:21 +02:00
Bartosz Taudul
6b831173e4
Don't display asm counts if no asm available.
2020-04-25 13:51:58 +02:00
Bartosz Taudul
78a56640c3
Open connection popup when a connection is established.
2020-04-25 13:14:27 +02:00
Bartosz Taudul
368caddd00
Separate coloring for types and special values.
2020-04-25 01:01:10 +02:00
Bartosz Taudul
51659ed123
Enable syntax highlighting.
2020-04-25 00:21:15 +02:00
Bartosz Taudul
21506386c4
Allow specification of end address in TextColoredUnformatted.
2020-04-25 00:21:15 +02:00
Bartosz Taudul
3e583b1373
Add C++ tokenizer.
2020-04-25 00:21:15 +02:00
Bartosz Taudul
c87c464f23
Use proper symbol address.
2020-04-24 16:16:53 +02:00
Bartosz Taudul
747f26ef74
Display used CPUs as range, if possible.
2020-04-24 02:02:16 +02:00
Bartosz Taudul
170aeea864
Remove CPU topology tooltip from zone info window.
2020-04-24 01:44:25 +02:00
Bartosz Taudul
9a77a59cb2
Display sample percentage columns only if there's data.
2020-04-24 00:49:38 +02:00
Bartosz Taudul
865593146a
Fix skipping symbol code.
2020-04-19 23:34:34 +02:00
Bartosz Taudul
e48095062b
Allow displaying machine code bytes in disassembly.
2020-04-19 16:07:24 +02:00
Bartosz Taudul
afb9bdce86
Store instruction lengths.
2020-04-19 16:07:24 +02:00
Bartosz Taudul
421f0895b7
Filter invalid jumps.
2020-04-19 16:07:24 +02:00
Bartosz Taudul
ea00efa857
Display disassembly failure notification.
2020-04-19 16:07:24 +02:00
Bartosz Taudul
b157d4c161
Detect disassembly failures.
2020-04-19 14:40:36 +02:00
Bartosz Taudul
c78e11872c
Fix jump arrow mouse hover detection.
2020-04-19 14:28:59 +02:00
Bartosz Taudul
1f3b6d01ab
Cosmetics.
2020-04-19 14:10:26 +02:00
Bartosz Taudul
91ad77d86a
Save/load source substitutions.
2020-04-18 14:25:04 +02:00
Bartosz Taudul
7a6bc6f554
Substitute source file names in source view.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
01d7fefe52
Perform source file name substitution.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
47cfb4ae35
Expose source substitution interface.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
5f22e35c26
Add UI for source location substitutions.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
b937ad101f
Fix handling of ImGui ID stack.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
c79c052528
Display percentage numbers of sample composition times.
2020-04-17 19:28:38 +02:00
Bartosz Taudul
db9557fc84
Use separate texture compression context for saving traces.
2020-04-14 20:07:30 +02:00
Bartosz Taudul
c2dd3913d7
Cleanup context switch data.
2020-04-14 02:34:28 +02:00
Bartosz Taudul
9fc76990e1
Copy proper amount of memory.
2020-04-14 02:22:48 +02:00
Bartosz Taudul
366153a94f
No signed left shifts.
2020-04-14 02:22:48 +02:00
Bartosz Taudul
c54dc10464
Cleanup zone children vectors.
2020-04-14 02:22:47 +02:00
Bartosz Taudul
55f582faaf
Use correct print format specifier.
2020-04-14 02:22:47 +02:00
Bartosz Taudul
dd0fb49098
Fix typo.
2020-04-14 02:22:47 +02:00
Bartosz Taudul
b0a58d4664
Don't shift left negative values.
2020-04-14 02:22:47 +02:00
Bartosz Taudul
5233f8d4ad
Mark source lines which generated assembly.
2020-04-13 17:47:41 +02:00
Bartosz Taudul
2d25e969e9
Fix time span indicators visual jitter.
2020-04-13 15:00:54 +02:00
Bartosz Taudul
a2c4f8c2d1
Prominently expose profiler memory usage.
2020-04-13 14:41:05 +02:00
Bartosz Taudul
b8647f968a
Don't animate threads on first frame.
2020-04-12 23:41:18 +02:00
Bartosz Taudul
a074d18dfa
Don't display source files, if none available.
2020-04-12 23:26:02 +02:00
Bartosz Taudul
5fd5091efd
Fix handling of unknown symbols.
2020-04-12 23:18:38 +02:00
Bartosz Taudul
3398c969ac
Disable scrollbar for source view window.
2020-04-12 17:11:51 +02:00
Bartosz Taudul
ef56c7fa7c
Display source files time composition in selected function/symbol.
2020-04-12 17:08:58 +02:00
Bartosz Taudul
078014826b
Fix detection of hovering over source lines.
2020-04-12 16:21:03 +02:00
Bartosz Taudul
0794cf56ff
Sort inline functions list by time spent in function.
2020-04-12 16:13:39 +02:00
Bartosz Taudul
a0f7cb41c3
Merge building inline symbol list with stats collection.
2020-04-12 16:11:24 +02:00
Bartosz Taudul
de18dd46b6
Don't build inline symbols list, if not needed.
2020-04-12 16:05:49 +02:00
Bartosz Taudul
633902cce5
Display inline functions time composition in symbol.
2020-04-12 16:05:01 +02:00
Bartosz Taudul
58cf97ef5d
Display wall time in addition to sample counts.
2020-04-11 22:14:56 +02:00
Bartosz Taudul
c4bddf59e2
Allow access to sampling data before instrumentation is ready.
2020-04-11 18:21:46 +02:00
Bartosz Taudul
6c76c8098b
Draw hotness markers next to sample percentage counts.
2020-04-11 01:59:15 +02:00
Bartosz Taudul
2c11418d33
Calculate max sample counts during ip map creation.
2020-04-11 01:34:44 +02:00
Bartosz Taudul
5bc01124c2
Draw jump range and target on scroll bar, when highlighted.
2020-04-10 23:31:25 +02:00
Bartosz Taudul
ca66dc9ba0
More code deduplication.
2020-04-10 23:13:51 +02:00
Bartosz Taudul
ac37898331
Go to white-hot color for ip count over max.
2020-04-10 23:10:26 +02:00
Bartosz Taudul
126a587aa3
Less code duplication.
2020-04-10 23:07:52 +02:00
Bartosz Taudul
61828070c5
Display tooltip for sample percentage.
2020-04-10 23:03:47 +02:00
Bartosz Taudul
895e06d778
Draw asm line hotness.
2020-04-10 17:27:57 +02:00
Bartosz Taudul
f6400880b0
Scroll bar decorations for asm lines.
2020-04-10 17:27:57 +02:00
Bartosz Taudul
bcfd32e49f
Decorate source scroll bar with line hotness.
2020-04-10 17:27:57 +02:00
Bartosz Taudul
e51844eba3
Decorate source scroll bar with selected and highlighted line.
2020-04-10 16:56:56 +02:00
Bartosz Taudul
a6c0ac4273
Tighten assembly counts in source view.
2020-04-10 00:40:31 +02:00
Bartosz Taudul
14ec7ea6cd
Tighten line numbers in source view.
2020-04-10 00:37:46 +02:00
Bartosz Taudul
497e73182a
Ditto for source navigation.
2020-04-09 23:28:51 +02:00
Bartosz Taudul
072fed288a
Use left and right mouse buttons for asm navigation.
...
Left click on source line just selects the line and the corresponding
asm lines.
Right click does the above and focuses asm view on the first selected
line.
2020-04-09 23:12:17 +02:00
Bartosz Taudul
47d56f6259
Proper scaling of instruction pointer counts.
2020-04-09 22:52:44 +02:00
Bartosz Taudul
f0c7a751c1
Context-sensitive auto-selection of stats mode in source view.
2020-04-09 22:37:49 +02:00
Bartosz Taudul
9d2c03bc5b
Allow showing sample data for whole symbol.
2020-04-09 22:23:57 +02:00
Bartosz Taudul
a2385a8b24
Use correct address range.
2020-04-09 22:21:21 +02:00
Bartosz Taudul
0e1c9e2cd1
Highlight source line corresponding to hovered asm line.
2020-04-09 22:02:06 +02:00
Bartosz Taudul
0791871955
Highlight asm lines for hovered source line.
2020-04-09 21:57:28 +02:00
Bartosz Taudul
1e965edb54
Don't separate inlines by default.
2020-04-09 19:44:42 +02:00
Bartosz Taudul
a339d397ce
Don't select addresses outside symbol.
2020-04-09 14:10:07 +02:00
Bartosz Taudul
241f59b59f
Sprinkle some icons.
2020-04-09 02:33:02 +02:00
Bartosz Taudul
554366ad9f
Search for address within current symbol.
2020-04-09 02:12:49 +02:00
Bartosz Taudul
d2ebc58be3
Set sensible combo box heights.
2020-04-09 02:09:54 +02:00
Bartosz Taudul
0f42dc2e4c
Fix source-less sample count calculations.
2020-04-09 02:04:22 +02:00
Bartosz Taudul
3177865fc2
Follow jump by clicking on jump arrows.
2020-04-09 02:02:06 +02:00
Bartosz Taudul
a715df6338
Tighten assembly source location display.
2020-04-09 01:52:22 +02:00
Bartosz Taudul
6dd765c101
Tighten mnemonic display.
2020-04-09 01:45:38 +02:00
Bartosz Taudul
bae08c27c8
Tighter assembly address display.
2020-04-09 01:31:27 +02:00
Bartosz Taudul
643c0867ed
Add jump arrows tooltip.
2020-04-09 01:09:57 +02:00
Bartosz Taudul
2cd789662b
Handle source-less asm lines selection.
2020-04-08 23:59:21 +02:00
Bartosz Taudul
08c58fe8e3
Separate asm lines selection.
2020-04-08 23:59:10 +02:00
Bartosz Taudul
25346c7a55
Disable movement in source view sub-children.
2020-04-08 23:32:36 +02:00
Bartosz Taudul
450229f5e4
Only change assembly target line when necessary.
2020-04-08 23:30:42 +02:00
Bartosz Taudul
3a1f980a36
Prevent opening obsolete source files.
2020-04-08 23:07:59 +02:00
Bartosz Taudul
3e2260bdcb
Add color boxes to file selection.
2020-04-08 23:06:38 +02:00
Bartosz Taudul
d300d17f9e
Match source and assembly selection.
2020-04-08 22:57:42 +02:00
Bartosz Taudul
bb338a1c97
Symbol file selector.
2020-04-08 22:25:36 +02:00
Bartosz Taudul
a1bad4b7be
Build list of symbol source files.
2020-04-08 22:18:00 +02:00
Bartosz Taudul
0551cd8e44
Switching between source files from asm view.
2020-04-08 22:10:58 +02:00
Bartosz Taudul
3f01d3bcb1
Selection of inlined function within symbol.
2020-04-08 22:04:33 +02:00
Bartosz Taudul
006919ec55
Mixed source/assembly symbol view.
2020-04-08 22:04:00 +02:00
Bartosz Taudul
b353e8752d
Display inlined function stats within symbols.
2020-04-08 19:09:47 +02:00
Bartosz Taudul
b05625d444
Display count of inlined functions in symbols.
2020-04-08 17:17:45 +02:00
Bartosz Taudul
51d5ef5b4e
Allow merging inlined function stats into base symbol.
2020-04-08 17:12:15 +02:00
Bartosz Taudul
02e1a7669c
Add offset-less GetSymbolForAddress().
2020-04-08 16:55:49 +02:00
Bartosz Taudul
a34cfacb5c
Stabilize symbol sorting.
2020-04-08 15:55:34 +02:00
Bartosz Taudul
fe98921e4c
Add UI for disabling inlines in sample statistics.
2020-04-08 15:52:53 +02:00
Bartosz Taudul
f59f4f266e
Add inline symbols list accessor.
2020-04-08 15:34:14 +02:00
Bartosz Taudul
2a06f1545b
Store count of proper and inline symbols in trace dump.
2020-04-08 12:52:06 +02:00
Bartosz Taudul
1da1d31e1c
Store list of inline symbols.
2020-04-08 12:44:12 +02:00
Bartosz Taudul
a7fffe7e13
Separate opening source and symbol views.
2020-04-08 02:12:09 +02:00
Bartosz Taudul
09cf160088
Split source and symbol views in SourceView.
2020-04-08 01:58:23 +02:00
Bartosz Taudul
1c0ec60b23
Don't try to display assembly line counts if no symbol is selected.
2020-04-08 01:48:22 +02:00
Bartosz Taudul
2ad3f9b51f
Index data is already available.
2020-04-05 15:09:13 +02:00
Bartosz Taudul
f1f4f48c38
Perform rate distortion optimization on frame images.
2020-04-05 15:04:18 +02:00
Bartosz Taudul
b19d5731ac
Move DXT1 index fixup to texture compression class.
2020-04-05 14:05:43 +02:00
Bartosz Taudul
6d435e08c8
Handle nullptr in FindStringIdx.
2020-04-04 14:42:00 +02:00
Bartosz Taudul
38bfa7bdb6
Include return instructions in jump out list.
2020-04-04 14:30:48 +02:00
Bartosz Taudul
8c260c9d12
Draw jump outs from symbols.
2020-04-04 14:30:47 +02:00
Bartosz Taudul
268af5b67c
Adapt to DPI scaling.
2020-04-04 14:30:47 +02:00
Bartosz Taudul
78a0773f38
Collect jumps outside symbol.
2020-04-04 13:51:55 +02:00
Bartosz Taudul
e02e595eec
Align jump arrows to pixels.
2020-04-04 13:42:19 +02:00
Bartosz Taudul
aae161e31a
Draw jumps in assembly view.
2020-04-04 03:41:10 +02:00
Bartosz Taudul
bda5c1d13e
Ignore out-of-symbol jumps.
2020-04-04 03:13:21 +02:00
Bartosz Taudul
f2b044438d
Don't print empty text, just advance cursor.
2020-04-04 02:45:01 +02:00
Bartosz Taudul
3711a66592
Calculate jump table.
2020-04-04 02:25:12 +02:00
Bartosz Taudul
b016d9e295
Going from source location to assembly line.
2020-04-02 13:10:18 +02:00
Bartosz Taudul
252e02ba2e
One more place where server queue is handled.
2020-04-02 12:15:50 +02:00
Bartosz Taudul
700f189921
Wait for server query queue to drain before terminating.
2020-04-02 12:15:04 +02:00
Bartosz Taudul
562e675a0e
Save/load code location data.
2020-04-02 12:12:10 +02:00
Bartosz Taudul
50d9932378
Display number of assembly instructions for each line.
2020-04-02 02:35:41 +02:00
Bartosz Taudul
2b8cf5d132
Add addressess accessor.
2020-04-02 02:17:22 +02:00
Bartosz Taudul
22e9135ab1
Retrieve file name string idx in source view.
2020-04-02 02:15:10 +02:00
Bartosz Taudul
16686739f6
Rebuild string map on trace load.
2020-04-02 02:15:00 +02:00
Bartosz Taudul
e7f4f58886
StringIdx search from string.
2020-04-02 02:08:00 +02:00
Bartosz Taudul
387fdb30b0
Map source location to assembly instructions.
2020-04-02 02:01:58 +02:00
Bartosz Taudul
9f0a6b8231
Make pdqsort always available.
2020-04-02 02:00:21 +02:00
Bartosz Taudul
d3c278cb02
Make source location display optional.
2020-04-02 01:37:56 +02:00
Bartosz Taudul
39cb9f4a32
Display source locations in assembly view.
2020-04-02 01:32:23 +02:00
Bartosz Taudul
b2c2bfc2aa
Move HSV color conversion to a separate source file.
2020-04-02 01:04:59 +02:00
Bartosz Taudul
2303f18d39
Add guards to source view header.
2020-04-02 01:02:42 +02:00
Bartosz Taudul
59a49f0698
Jump from assembly to source line.
2020-04-02 00:53:27 +02:00
Bartosz Taudul
327e30fe7c
Add source file location tooltip for assembly instructions.
...
This has bad UX, better solution is needed.
2020-04-02 00:39:17 +02:00
Bartosz Taudul
d204742bb8
Accessor for getting source file, line from address.
2020-04-02 00:31:53 +02:00
Bartosz Taudul
2dd5912fee
Cosmetics.
2020-04-02 00:31:41 +02:00
Bartosz Taudul
6392e4d38d
Display number of received code locations.
2020-04-02 00:00:46 +02:00
Bartosz Taudul
c8d1f4d3d6
Add code locations size accessor.
2020-04-01 22:38:47 +02:00
Bartosz Taudul
0ec89e9aae
Store code address -> source file+line mapping.
2020-04-01 22:37:19 +02:00
Bartosz Taudul
b2a8b53efa
Query source location of each assembly instruction.
2020-04-01 21:43:03 +02:00
Bartosz Taudul
9e8089ec1a
Improve handling of query queue.
2020-04-01 21:05:25 +02:00
Bartosz Taudul
b6ce693ede
Include inline parents when filtering sample statistics.
2020-04-01 13:24:32 +02:00
Bartosz Taudul
0f2095f84a
Add missing break.
2020-04-01 13:10:26 +02:00
Bartosz Taudul
57779a8ed9
Cosmetics.
2020-03-31 20:44:44 +02:00
Bartosz Taudul
d08f3a6ea0
Check for samples, not ghost zones.
2020-03-31 02:20:34 +02:00
Bartosz Taudul
b957087456
Add "smart" symbol location to sampled statistics.
2020-03-30 23:58:42 +02:00
Bartosz Taudul
eb48d24182
Store context switch data for threads with ghost zones.
2020-03-30 23:41:21 +02:00
Bartosz Taudul
0ad24f6485
Display graphical representation of line percentage.
2020-03-30 22:49:06 +02:00
Bartosz Taudul
44096dfcf2
Move DrawTextContrast() to TracyImGui.hpp.
2020-03-30 22:39:34 +02:00
Bartosz Taudul
c1ed44bd35
Common percentage printing function.
2020-03-30 22:26:45 +02:00
Bartosz Taudul
11aedf2b27
Proper processing of symbol locations in live capture.
2020-03-30 17:10:59 +02:00
Bartosz Taudul
6fe5d0575f
Add parent symbol for inlined symbols in sampled statistics.
2020-03-30 02:50:34 +02:00
Bartosz Taudul
17a5faa5e0
Display parent symbol for inline symbols in source view.
2020-03-30 02:46:29 +02:00
Bartosz Taudul
30771bf7cb
Gather failure data before terminating connection.
2020-03-29 23:01:57 +02:00
Bartosz Taudul
48e4d33bea
Support call stacks longer than 255 entries.
2020-03-28 18:04:33 +01:00
Bartosz Taudul
d43461584a
Don't jump out to symbols without source and code.
2020-03-28 15:11:23 +01:00
Bartosz Taudul
2e1aa844fe
Don't try to open invalid files.
2020-03-28 15:06:36 +01:00
Bartosz Taudul
78eb774822
Assembly addresses can be displayed relative to symbol.
2020-03-28 14:42:47 +01:00
Bartosz Taudul
9837e06816
Implement cross-symbol jumping.
2020-03-28 14:27:29 +01:00
Bartosz Taudul
013bb5a4f2
Use generic group categories.
2020-03-28 14:00:21 +01:00
Bartosz Taudul
86aad15e0c
Display jump/call target address.
2020-03-28 01:36:51 +01:00
Bartosz Taudul
28db0f6227
Wait for data to be ready.
2020-03-28 01:17:35 +01:00
Bartosz Taudul
8dba099a56
Revert "Base address is not needed."
...
This reverts commit 058369bc7a
.
2020-03-28 00:57:41 +01:00
Bartosz Taudul
22cae56ab1
Decode jump/call addresses.
2020-03-28 00:53:48 +01:00
Bartosz Taudul
fd3b9ca1e5
No need to format string.
2020-03-27 23:59:09 +01:00
Bartosz Taudul
17009b315f
Remove unused variable.
2020-03-27 23:59:03 +01:00
Bartosz Taudul
86ca85f39d
Initialize variable.
2020-03-27 23:58:49 +01:00
Bartosz Taudul
058369bc7a
Base address is not needed.
2020-03-27 23:58:25 +01:00
Bartosz Taudul
5249eb4428
Fix init order.
2020-03-27 23:57:23 +01:00
Bartosz Taudul
5675044443
Display image name, if source file is unknown.
2020-03-27 21:54:40 +01:00
Bartosz Taudul
d065d28244
Allow assembly view in all calls to SetTextEditorFile.
2020-03-27 21:46:57 +01:00
Bartosz Taudul
78ea40d70c
Check for asm/source availability in SetTextEditorFile.
2020-03-27 21:46:57 +01:00
Bartosz Taudul
efbf13fcd4
Don't store inlined symbols locations.
2020-03-27 21:16:23 +01:00
Bartosz Taudul
45b8622bc9
Search for base address when if symbol address is inlined.
2020-03-27 21:04:23 +01:00
Bartosz Taudul
31a1517d2f
Display disassembly of inlined symbols.
2020-03-27 17:59:41 +01:00
Bartosz Taudul
720ed0460b
Differentiate between symbol and base address.
2020-03-27 17:59:16 +01:00
Bartosz Taudul
992f4c8c2d
Implement search for symbol base from address.
2020-03-27 17:39:42 +01:00
Bartosz Taudul
4c381e13e9
Store list of symbol locations.
2020-03-27 17:34:51 +01:00
Bartosz Taudul
52a853b26f
Don't show invalid contents warning for disassembly.
2020-03-27 17:14:46 +01:00
Bartosz Taudul
a466362938
Use proper function to send terminate query.
2020-03-27 02:02:36 +01:00
Bartosz Taudul
51bae7855d
Display number of in-flight queries.
2020-03-27 02:00:26 +01:00
Bartosz Taudul
089681267f
Allow viewing assembly without corresponding source code.
2020-03-27 01:47:06 +01:00
Bartosz Taudul
10ca8b5440
Assembly display is not dependant on sample data.
2020-03-27 01:24:50 +01:00
Bartosz Taudul
2a54f2df5d
Reverse the fileselector compile option.
2020-03-26 23:11:26 +01:00
Bartosz Taudul
d495431f24
Reverse the root window compile option.
2020-03-26 23:08:29 +01:00
Bartosz Taudul
58bb5d40c5
Remove support for non-extended font builds.
2020-03-26 23:04:44 +01:00
Bartosz Taudul
c098a03d8f
Implement listing all symbols.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
e58b9e870e
Use explicit data structure to store symbol list data.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
7018caadb9
Add UI for control of displaying all symbols.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
696c351e6a
Allow listing symbols, even if no sampling data has been gathered.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
e6b0bfc90d
Display "no entries" message in statistics menu, if appropriate.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
ef96ecd9b8
Use shorter descriptions.
2020-03-26 22:09:56 +01:00
Bartosz Taudul
2db117a7ac
Disassemble symbols even if source file has not changed.
2020-03-26 02:23:43 +01:00
Bartosz Taudul
3de4283bd2
Display code size in source file view window.
2020-03-26 02:23:09 +01:00
Bartosz Taudul
6a96b5f1dc
Use better wording.
2020-03-26 02:18:24 +01:00
Bartosz Taudul
4f417854e5
Display disassembly.
2020-03-26 00:18:38 +01:00
Bartosz Taudul
b091c0d4a8
Hide unknown symbols by default in sample statistics.
2020-03-25 23:44:48 +01:00
Bartosz Taudul
7ac03be43b
Fix braino.
2020-03-25 22:50:13 +01:00