Commit Graph

287 Commits

Author SHA1 Message Date
Ryan Fleury 44d9b57eb5 track bucket collision counts, include in table diagnostics dump; finish moving pdb->raddbg conversion tables over to dynamic & heuristically chosen table sizes 2024-02-09 14:55:07 -08:00
Ryan Fleury cdb53ebed0 pdb -> raddbg table diagnostic dumping 2024-02-09 12:59:06 -08:00
Ryan Fleury 2d63234c92 eliminate static, absurdly large table sizes in all cases in pdb->raddbg path; markup & diagnostics of table sizes vs. counts, to begin gathering data for table size prediction path 2024-02-09 11:50:04 -08:00
Ryan Fleury 7f357b264c os_gfx_win32: fix preservation of sign info in x/y lparams for mouse events 2024-02-08 17:05:24 -08:00
Ryan Fleury 11dd5fd21a fix dragging interpretation in ui box -> signal path 2024-02-08 15:10:53 -08:00
Ryan Fleury 77337f9e86 use globals, thread-locals, types, procedures in default panel layout 2024-02-08 10:37:08 -08:00
Ryan Fleury 95a6579f89 expand eval machine interpretation error codes; visualize 2024-02-08 10:28:41 -08:00
Ryan Fleury fed0a13aca eliminate leftover events system, since ui codepaths should now consume as many events as possible within a single frame 2024-02-08 10:09:51 -08:00
Ryan Fleury 6e3242848f wm_mousewheel and wm_mousehwheel report mouse coordinates in screen space, not client space; fix to account fo rthat 2024-02-08 10:05:29 -08:00
Ryan Fleury 2967d8be2a fix double assignment to strtable buckets_min in raddbg_pdb 2024-02-08 04:12:29 -08:00
Ryan Fleury 3a811e5e16 middle click -> close tabs 2024-02-07 16:49:05 -08:00
Ryan Fleury 0bced47404 eliminate old ui box -> signal path 2024-02-07 16:47:21 -08:00
Ryan Fleury c637ad6ede rewrite ui box -> signal path for less lossy event processing & correctness; also extend to use all 3 mouse buttons. eliminate ui signal bitfields, just use flags & helper macros everywhere. 2024-02-07 16:46:57 -08:00
Ryan Fleury b9cec99cd4 ui code -> extend 'active' system to all left/middle/right mouse buttons, rather than just min/max (left/right) 2024-02-07 14:20:21 -08:00
axeldaguerre fb9e890653 fix utf8 encoding missing one bit shift
For Unicode code point in the highest range, 1 bit shift operation on the 4th byte is missing, giving a wrong encoding
2024-02-07 13:54:58 -08:00
Ryan Fleury 2c73c65878 remove debug 2024-02-07 13:35:34 -08:00
Ryan Fleury 390aab2699 raddbg from pdb: correctly parse several c13 files in single c13 subsection, rather than just assuming a single one 2024-02-07 13:35:14 -08:00
Ryan Fleury ccec64750d fix raddbg_dump build 2024-02-07 12:59:56 -08:00
Ryan Fleury e637f7237c straighten out a few key stability issues in eval watch views; editing expressions will no longer eliminate view rules; stale view rules will no longer find their way into inserted expressions 2024-02-07 10:32:24 -08:00
Ryan Fleury c757388bb4 fix serialization/deserialization of top-level watch view rules 2024-02-06 15:38:42 -08:00
Ryan Fleury fb43eb9c72 default to no d3d11 debug features; use command line flag to enable 2024-02-06 14:59:41 -08:00
Ryan Fleury 9ef1b4b021 fix system processes lister fuzzy matching; fix ctrl layer locking modules on detach (demon was not reporting module string!) 2024-02-06 13:59:43 -08:00
Ryan Fleury 7305c12166 reset control context unwind count when submitting all runs 2024-02-06 13:48:05 -08:00
Ryan Fleury e3f18d3b87 fix mutable eval root key stability w.r.t. view rules & so on 2024-02-06 13:28:14 -08:00
Ryan Fleury 86e332f2ef allow compound macro expressions in eval system; poison used macro names, before descending 2024-02-06 11:55:51 -08:00
Ryan Fleury 6296d2bd96 first pass of watch window macros; fix active-but-disabled line edit rendering; other minor fixes 2024-02-06 11:47:52 -08:00
Ryan Fleury c2d96a8df6 pull out eval watch view cursor state; begin prepping for multirow table selection 2024-02-06 09:21:14 -08:00
Ryan Fleury c0cf0bf2da fix small visual issues with hover eval 2024-02-06 08:55:55 -08:00
Ryan Fleury 87ed6a8c62 per-run tls base vaddr cache; cleanup/fixes/improvements on fuzzy filtering of scheduler view 2024-02-06 08:48:09 -08:00
Ryan Fleury 0696eab974 address some jank with query view focuses intermixing with deselection/hover-eval/etc. 2024-02-06 07:35:51 -08:00
Martins Mozeiko 9c02f947c7 show git commit id in window title & fatal exception dialog 2024-02-06 07:30:58 -08:00
Ryan Fleury 816bf195c2 more filtering coverage; fuzzy filtering on search tags as well as entity display string; display a few known frames from callstack in thread entity description buttons 2024-02-05 14:36:33 -08:00
Ryan Fleury 95b8b71322 dedup multiple unwinder paths; just collapse down to using the ctrl one 2024-02-05 14:06:06 -08:00
Ryan Fleury ef317c1ffc procedures view 2024-02-05 13:58:19 -08:00
Ryan Fleury 9504946376 entity view filtering 2024-02-05 12:08:50 -08:00
Ryan Fleury e03e1dd136 eval lexer: same as last 2024-02-05 11:28:29 -08:00
Ryan Fleury 0b6b0947ed eval lexer: allow a few more corner cases of various compiler/linker-inserted identifiers, so that eval works in all cases 2024-02-05 11:26:37 -08:00
Ryan Fleury 38b8bfd6fb fix ordering of event consumption w/ filter box 2024-02-05 11:24:31 -08:00
Ryan Fleury 87e0e9a7e9 bugfix truncated string hover rule 2024-02-05 11:19:34 -08:00
Ryan Fleury 6e874c7449 syschar -> defwindowproc 2024-02-05 11:07:36 -08:00
Ryan Fleury d2d3d14c41 demon/win32: roll back on all hit traps, even if explicit. the previous implementation would silently skip threads past explicit traps that they hit, as a way of implicitly storing the fact that trap exceptions had been reported, and the user could continue past them. this resulted in incorrect instruction pointer display in those circumstances. this change adjusts this, so that after a trap exception of any kind, the instruction pointer is ALWAYS rolled back. to ensure that the trap is not repeatedly hit, if the associated exception has already been reported, to allow the user to e.g. step over traps (this is the behavior of Visual Studio), additional state is stored per-thread-entity, which allows a subsequent demon_os_run to adjust RIPs past their previously reported traps before running again. 2024-02-05 10:47:57 -08:00
Ryan Fleury 2359c82fba extend ctrl process memory cache with waiting mechanism; employ to wait for changes to propagate through process memory cache, when forcibly mutating debuggee process memory 2024-02-05 10:04:00 -08:00
Ryan Fleury f2c74cbcb2 float mousemove detection & ui mouse position rules down to ui core layer 2024-02-05 09:29:50 -08:00
Ryan Fleury f03f3e4421 robustify ctrl memory streaming cache & texture cache layer to unreasonably large sizes/dimensions 2024-02-05 09:24:00 -08:00
Ryan Fleury 95eea70682 fix failure condition in entry point detection 2024-02-05 08:54:45 -08:00
Ryan Fleury 762013899f switch entry point detection/trap strategy to finding *all* possible candidates, and trapping all of them, rather than forcing the ctrl thread to decide on one specific entry point voff 2024-02-05 08:41:18 -08:00
Ryan Fleury 0be4680ec9 os_gfx -> report mouse move events; still allow passive mouse interaction if window is unfocused, but have recently received mousemove events 2024-02-03 18:04:21 -08:00
Ryan Fleury 985a6f37e9 notes 2024-02-03 17:37:39 -08:00
Ryan Fleury f9e2aa99a9 fix padding calculation - prohibit all overlapping members 2024-02-03 09:56:24 -08:00
Ryan Fleury 509089d95d remain robust to busted range queries for ctrl process memory cache 2024-02-03 09:20:31 -08:00