Ryan Fleury
|
ebc19ded62
|
font provider dwrite c++ -> c
|
2024-06-01 19:24:47 -07:00 |
|
Ryan Fleury
|
aff3da8256
|
move font provider directwrite backend to using martins' auto-generated dwrite c declarations, get it almost off C++ entirely
|
2024-06-01 19:24:47 -07:00 |
|
Ryan Fleury
|
c1764cee07
|
adjust builds to new rdi library setup
|
2024-06-01 19:24:46 -07:00 |
|
Ryan Fleury
|
cc58703185
|
reorganize generated & handwritten library (relocatable) rad debug info format files; separate from codebase-local tools for managing or internally including the libraries
|
2024-06-01 19:24:46 -07:00 |
|
Ryan Fleury
|
6a57555882
|
lld no_aslr
|
2024-06-01 19:24:46 -07:00 |
|
Ryan Fleury
|
cdf0b67354
|
clean up metaprogram multiline string line endings; fix rdi_from_pdb build
|
2024-06-01 19:24:46 -07:00 |
|
Ryan Fleury
|
45f69b6f98
|
further progress on metacode-driven generation of rdi headers; metaprogram xlist generation; getting rdi_dump up-to-speed
|
2024-06-01 19:24:46 -07:00 |
|
Ryan Fleury
|
47df50b6dc
|
generation folder output override in metaprogram
|
2024-06-01 19:24:46 -07:00 |
|
Ryan Fleury
|
f50b54cff7
|
complete metacodification of rdi format info into tables
|
2024-06-01 19:24:46 -07:00 |
|
Ryan Fleury
|
8492693df2
|
initial pass of moving rdi definitions to metacode tables
|
2024-06-01 19:24:45 -07:00 |
|
Ryan Fleury
|
7f87f89aa8
|
rdi_dump: stringize source file's path
|
2024-06-01 19:22:30 -07:00 |
|
Ryan Fleury
|
729a5a9392
|
clean up & merge inline binary annotation decoders
|
2024-06-01 19:22:29 -07:00 |
|
Ryan Fleury
|
2c9a6f996d
|
fix zero expression child nodes, commonly produced via partially typed expressions
|
2024-06-01 10:58:49 -07:00 |
|
Ryan Fleury
|
59e71eb5cc
|
drive iteration in win32 file system api; fix some root-level behaviors of file browser
|
2024-05-31 12:20:14 -07:00 |
|
Ryan Fleury
|
d3adfdeced
|
deduplicate debug string event generation; log ctrl messages
|
2024-05-31 11:17:59 -07:00 |
|
Ryan Fleury
|
ed8731c093
|
correctly handle copy path in new multicursor-able watch view controls
|
2024-05-31 10:47:46 -07:00 |
|
Ryan Fleury
|
6d4b4b1526
|
time-based exit path for demon win32 event consumption loop, to not overly-aggressively-buffer things
|
2024-05-30 07:10:21 -07:00 |
|
Ryan Fleury
|
9fbcd1ec36
|
Merge branch 'dev'
|
2024-05-30 07:06:53 -07:00 |
|
Ryan Fleury
|
da54fd1217
|
majorly improve outputdebugstring performance
|
2024-05-30 07:06:29 -07:00 |
|
Ryan Fleury
|
34bba95839
|
import todo notes from awkwardly aggressive user feedback
|
2024-05-29 21:25:47 -07:00 |
|
Ryan Fleury
|
89c8f84498
|
more tweaks with new double-margin; do not try to display non-printable ascii characters in watch
|
2024-05-29 12:25:03 -07:00 |
|
Ryan Fleury
|
c426818364
|
draw line between priority & catchall marging
|
2024-05-29 11:53:48 -07:00 |
|
Ryan Fleury
|
62fa397e29
|
split code slice margin into two parts - priority, and catchall. priority for selected thread so it is always necessarily visible, and catchall for other threads, breakpoints, watch pins, etc. also tweak targets view behavior to prioritize selection as the common path, and to make checkboxes less idiosyncratic
|
2024-05-29 11:51:04 -07:00 |
|
Ryan Fleury
|
0e179f3844
|
fix clips, occlusion, for ui-tree-wide truncated text tooltips
|
2024-05-29 10:56:46 -07:00 |
|
Ryan Fleury
|
f808e8ae29
|
adjust force-contain on tooltips; we don't want it for drag/drop, we do for tooltips, so use active interaction as a proxy
|
2024-05-29 10:43:14 -07:00 |
|
Ryan Fleury
|
8f446d1f9a
|
pass over callstack view to display function type info and properly display richer/weirder C++ symbol names
|
2024-05-29 10:36:22 -07:00 |
|
Ryan Fleury
|
e073ff3218
|
more notes on the multithreaded access violation stuff!
|
2024-05-29 08:31:24 -07:00 |
|
Ryan Fleury
|
2512d07c72
|
correctly roll-back late-hits for int3s
|
2024-05-29 08:08:44 -07:00 |
|
Ryan Fleury
|
f65cf5436e
|
fix code off -> instruction idx lookup - fixes busted instruction pointer drawing in disassembly view
|
2024-05-29 08:03:06 -07:00 |
|
Ryan Fleury
|
5778e75d66
|
oops - do not zero unwind cache node after adding it, zero it before adding it
|
2024-05-28 21:45:14 -07:00 |
|
Ryan Fleury
|
e80008cb7e
|
do not animate disasm load when running
|
2024-05-28 07:34:10 -07:00 |
|
Ryan Fleury
|
68d3f17ecb
|
do not snap-to-thread on soft-halts
|
2024-05-28 07:30:54 -07:00 |
|
Ryan Fleury
|
e541fce2bc
|
fix non-enumeration of 0 tex2dfmt
|
2024-05-28 06:13:14 -07:00 |
|
Ryan Fleury
|
8319850666
|
fix precision tab alignment issue
|
2024-05-28 06:10:12 -07:00 |
|
Ryan Fleury
|
d04ee598b2
|
use lower level unwinding path with more generous time allowance, rather than passive cache query, for step-out
|
2024-05-26 14:35:57 -07:00 |
|
Ryan Fleury
|
15f5894c60
|
choose debug info key timestamps from debug info path, rather than module timestamp; the module should be allowed to be newer
|
2024-05-26 13:25:03 -07:00 |
|
Ryan Fleury
|
05c751a61a
|
fix filesystem lister names
|
2024-05-26 12:47:47 -07:00 |
|
Ryan Fleury
|
dd7cce2c3a
|
some progress on the bitmap view rule
|
2024-05-24 21:20:44 -07:00 |
|
Ryan Fleury
|
b1e1752229
|
oops
|
2024-05-24 17:19:46 -07:00 |
|
Ryan Fleury
|
bddc9c97d9
|
get rdi_dump off dbgi layer, actually, super bad idea; just dedup decompression code
|
2024-05-24 17:18:31 -07:00 |
|
Ryan Fleury
|
325474fc49
|
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev
|
2024-05-24 16:35:09 -07:00 |
|
Ryan Fleury
|
50d401e4ce
|
formalize tab size in all ui codepaths, per-box; pick 4*columnsize by default in text views
|
2024-05-24 16:34:42 -07:00 |
|
Ryan Fleury
|
1dbbd351d7
|
formalize tab size in all ui codepaths, per-box; pick 4*columnsize by default in text views
|
2024-05-24 16:33:30 -07:00 |
|
Ryan Fleury
|
f214b7d5f2
|
eliminate tab picker ui
|
2024-05-24 15:17:36 -07:00 |
|
Ryan Fleury
|
d716159faf
|
feed base column & tab width through all font rendering paths; use temporary constants
|
2024-05-24 15:12:40 -07:00 |
|
Ryan Fleury
|
5074b7f62e
|
expand f_push_run_from_... to basing its tab-advance logic on what base column it is starting at - currently assume this is 0, basically doing the most naive tab alignment version that will work for leading spaces but for nothing else, and also assume 4-space tab width for now
|
2024-05-24 14:40:07 -07:00 |
|
Ryan Fleury
|
7e0611e7f1
|
recent projects history & opener
|
2024-05-24 14:03:07 -07:00 |
|
Ryan Fleury
|
fd7085b690
|
do not settle for empty unwinds
|
2024-05-24 13:37:31 -07:00 |
|
Ryan Fleury
|
5f76fcfb6b
|
filter panel tabs by project, if applicable; move all tab controls & so on to working based on this filtering mechanism
|
2024-05-24 13:33:47 -07:00 |
|
Ryan Fleury
|
9e778b30b6
|
begin tracking per-tab project info; fix dasm cache request dequeue incorrect cv broadcast
|
2024-05-24 12:58:54 -07:00 |
|
Ryan Fleury
|
15a1f81545
|
profile -> project
|
2024-05-24 12:35:51 -07:00 |
|
Ryan Fleury
|
f7ad44a0d7
|
fix new-file query completion
|
2024-05-24 12:16:30 -07:00 |
|
Ryan Fleury
|
9349ac9e72
|
eliminate weird rollback/re-adjust rules for threads hitting int3s - rollback should only ever happen for temporary traps, e.g. user breakpoints or stepping. the fact that the thread shows *after* the trap later is a visualization issue, not a functionality issue
|
2024-05-24 08:20:10 -07:00 |
|
Ryan Fleury
|
489ae56223
|
fix moduleless unwinding and find-threads without debug info
|
2024-05-23 16:17:31 -07:00 |
|
Ryan Fleury
|
35b97d9c20
|
process name on stop-reason strings
|
2024-05-23 15:38:51 -07:00 |
|
Ryan Fleury
|
bafc2170ca
|
do not consume passthrough --s in command line parser
|
2024-05-23 15:21:53 -07:00 |
|
Ryan Fleury
|
6837d8d71a
|
move rdi_dump over to dbgi layer
|
2024-05-23 15:16:53 -07:00 |
|
Ryan Fleury
|
35c599dea3
|
raddbgi -> rdi
|
2024-05-23 15:09:53 -07:00 |
|
Ryan Fleury
|
dc5dda3f71
|
visualize handle basic types
|
2024-05-23 14:47:42 -07:00 |
|
Ryan Fleury
|
fdfee37228
|
oops - only d3d11 flush on resize
|
2024-05-23 14:45:32 -07:00 |
|
Ryan Fleury
|
ece414c575
|
prioritize title-bar-client-areas over built-in window borders; expand top bar rect a bit to ensure edge of window coverage
|
2024-05-23 14:40:23 -07:00 |
|
Ryan Fleury
|
f431ac7f80
|
rewrite ipc communication; do ipc message reception on separate thread, wake up main thread; fix various robustness issues. do not necessarily initialize slower-to-initialize layers in conversion/ipc instances
|
2024-05-23 14:34:01 -07:00 |
|
Ryan Fleury
|
e850f6fc93
|
c++ module extensions
|
2024-05-23 12:39:14 -07:00 |
|
Ryan Fleury
|
68a9802357
|
re-implement keyboard-driven path for opening dedicated view rule tabs
|
2024-05-23 11:36:51 -07:00 |
|
Ryan Fleury
|
905d04ab0b
|
adjust disasm window limits; too often hitting non-read-only memory
|
2024-05-23 11:34:23 -07:00 |
|
Ryan Fleury
|
bc40d1c0b0
|
rewrite frontend unwind cache to always preserve stale results until a new unwind successfully completes
|
2024-05-23 11:16:34 -07:00 |
|
Ryan Fleury
|
f26b4c3b06
|
eliminate path-tree-based keying of debug info on frontend; use dbgi-layer-defined debug info keys, which can be more robust to changes to the same debug info path across time (e.g. during hot reloads
|
2024-05-23 10:30:23 -07:00 |
|
Ryan Fleury
|
68a92e910a
|
eliminate old dbgi layer
|
2024-05-23 08:26:16 -07:00 |
|
Ryan Fleury
|
1621dc0637
|
correct nil rdi top-level-info
|
2024-05-23 07:54:28 -07:00 |
|
Ryan Fleury
|
21fcfd28a4
|
appease clang
|
2024-05-23 07:38:30 -07:00 |
|
Ryan Fleury
|
4a3d439c44
|
adjust symbol lister to apply to all loaded debug infos, rather than just the selected thread's debug info
|
2024-05-23 07:34:24 -07:00 |
|
Ryan Fleury
|
30f8e1675e
|
new multi-dbgi-capable fuzzy search layer first pass
|
2024-05-23 07:01:34 -07:00 |
|
Ryan Fleury
|
c17072053b
|
adjust d3d11 resize path
|
2024-05-22 15:27:39 -07:00 |
|
Ryan Fleury
|
a5e2235fc6
|
fix deadlocks on di_close contending with passive scoped dbgi access
|
2024-05-22 11:54:27 -07:00 |
|
Ryan Fleury
|
0160d05e8a
|
further tweaks to mule_peb_trample
|
2024-05-22 11:39:23 -07:00 |
|
Ryan Fleury
|
7a4e939886
|
fix incorrectly referring to root entity for debug info if missing; fix thread register cache issues; fix new dbgi layer issues
|
2024-05-22 11:13:08 -07:00 |
|
Ryan Fleury
|
b33559b081
|
tweaks to mule_peb_trample
|
2024-05-21 12:40:21 -07:00 |
|
Ryan Fleury
|
b74db17375
|
peb trampling mule
|
2024-05-21 11:29:19 -07:00 |
|
Ryan Fleury
|
a019115b95
|
get ctrl and debug frontend layers onto new pdb-path-based debug info loader layer; sketch out standalone fuzzy search layer, to replace old dbgi searching functionality; shift all debug frontend code from referring to debug info via 'binaries' to referring to debug info via 'dbgis', just file entities at the location of o.g. debug info
|
2024-05-21 10:08:28 -07:00 |
|
Ryan Fleury
|
b9ac104276
|
begin stitching new dbgi layer usage code into ctrl layer; keep track of per-module preferred pdb paths via event-synchronized ctrl entity tree; still need conversion
|
2024-05-20 17:15:11 -07:00 |
|
Ryan Fleury
|
6e41bdf11b
|
first pass at loader portion of new dbgi layer replacement; set up ctrl entity for per-module debug info selection path info
|
2024-05-20 16:28:52 -07:00 |
|
Ryan Fleury
|
49eb834e2b
|
eliminate old unwind code
|
2024-05-20 12:58:02 -07:00 |
|
Ryan Fleury
|
fd6befecc3
|
get tls address calculation off of binary parsing path; do based on in-process memory
|
2024-05-20 12:55:20 -07:00 |
|
Ryan Fleury
|
5342fab86b
|
bugfix in new unwinder; applying stack ptr read & unwind when doing epilog unwinds
|
2024-05-20 11:12:29 -07:00 |
|
Ryan Fleury
|
9919ac59bb
|
move module image info parse / cache management to ctrl thread, directly tie to module lifetime as ctrl thread sees it; reduce load from each unwind
|
2024-05-20 10:58:45 -07:00 |
|
Ryan Fleury
|
2d1fcd7475
|
fix some unwanted frontend unwind cache behavior; fix staleness calculation in ctrl process memory cache
|
2024-05-20 08:23:41 -07:00 |
|
Ryan Fleury
|
393fb9e5f2
|
eliminate old unwinder usage code; more regression fixing
|
2024-05-17 15:07:21 -07:00 |
|
Ryan Fleury
|
301cf6b7ac
|
regression fixes, better integration, and tightening up the new unwinder
|
2024-05-17 14:15:11 -07:00 |
|
Ryan Fleury
|
578a56d231
|
further progress on new unwinder
|
2024-05-16 17:12:37 -07:00 |
|
Ryan Fleury
|
33ab26dfb3
|
begin porting unwinder to ctrl layer, just built purely on in-process memory, and getting completely off of parsed binary image artifacts
|
2024-05-16 15:39:57 -07:00 |
|
Ryan Fleury
|
8901dd30ec
|
eliminate old pending entity code; do not build missing entity interface if data is actually present (but frontend cache still suggests missing)
|
2024-05-16 10:35:56 -07:00 |
|
Ryan Fleury
|
e1a5d131c8
|
fix clang... sigh
|
2024-05-15 15:41:03 -07:00 |
|
Ryan Fleury
|
55c1674ec6
|
notes
|
2024-05-15 13:38:38 -07:00 |
|
Ryan Fleury
|
364a2160af
|
correctly register jit debugger exe; collect jit_debug_info into dmn win32; notes
|
2024-05-15 13:25:20 -07:00 |
|
Ryan Fleury
|
56afe8ca60
|
watch window reordering
|
2024-05-15 11:57:46 -07:00 |
|
Ryan Fleury
|
6e039430a5
|
mouse controls for new watch window editing mechanism
|
2024-05-15 11:22:05 -07:00 |
|
Ryan Fleury
|
f1af166fd4
|
expand ui events to contain semantic 'controls' info, to eliminate most hardcoded escs/returns/f2s/etc; formalize these things as proper commands; keyboard-driven expansions; other various fixes
|
2024-05-15 10:53:26 -07:00 |
|
Ryan Fleury
|
03844d81d2
|
further progress on watch window pass; multi-cursor, multi-selection, autocomplete lister, etc
|
2024-05-15 09:26:16 -07:00 |
|
Ryan Fleury
|
aa73e62240
|
fix clang
|
2024-05-14 16:31:34 -07:00 |
|
Ryan Fleury
|
16de33245c
|
first half of first pass at multi-cursor watch window
|
2024-05-14 16:25:24 -07:00 |
|