Commit Graph

  • f41f8dd719 Remove dbg_printf gingerBill 2024-02-12 14:33:57 +00:00
  • fa6b04ab24 Support String8 like strings gingerBill 2024-02-12 14:32:49 +00:00
  • 156615a3ba Add view rule slice gingerBill 2024-02-12 14:16:23 +00:00
  • 57a35c6b28 Make tabs 4-spaces (1 was too little) gingerBill 2024-02-12 12:35:43 +00:00
  • 4fde6addc4 raddbg_cons: parameterize bake ctx with bucket sizes; make initial prediction based on symbol count Ryan Fleury 2024-02-11 13:29:06 -08:00
  • 60b6e2d597 Merge branch 'dev' of https://github.com/EpicGames/raddebugger into dev Ryan Fleury 2024-02-11 09:23:37 -08:00
  • e5c35a4035 oops! fix wrong type fwd reference condition Ryan Fleury 2024-02-11 09:23:06 -08:00
  • 47bb3464e1 oops! Ryan Fleury 2024-02-11 09:23:06 -08:00
  • 2e8afad5f0 adjust conversion visualization; strip out old profiling markup Ryan Fleury 2024-02-10 19:40:19 -08:00
  • e7897f302f do some more fine tuning of symbol id hash functions used in pdb -> raddbg path; also eliminate unnecessary per-type work Ryan Fleury 2024-02-10 18:25:47 -08:00
  • c81ee6d9bc extend id -> handle cons APIs with separate hash channel, so usage code completely controls both unique IDs and how they're hashed; second pass at designing better local variable hashing function Ryan Fleury 2024-02-10 16:21:55 -08:00
  • 801518ea75 improve local map hash Ryan Fleury 2024-02-09 18:02:44 -08:00
  • ebfddabd0b raddbg cons: extend u64 -> ptr map api with separate channel for hash, which reduces scan space, independently from unique keys which were previously assumed to be a reasonable hash (which they weren't) Ryan Fleury 2024-02-09 16:59:42 -08:00
  • 6c872566af raddbg_from_pdb: greatly improve speed of line info combining pass; do not linearly scan for line numbers, use line as hash -> slot key and search only slots Ryan Fleury 2024-02-09 15:31:24 -08:00
  • 44d9b57eb5 track bucket collision counts, include in table diagnostics dump; finish moving pdb->raddbg conversion tables over to dynamic & heuristically chosen table sizes Ryan Fleury 2024-02-09 14:55:07 -08:00
  • 76ce8a79c2 Made ease of use scripts for building and cleaning build_scripts ed 2024-02-09 17:50:42 -05:00
  • 932db741fa Merge remote-tracking branch 'leidegre/feature/odin' into build_scripts ed 2024-02-09 16:08:40 -05:00
  • cdb53ebed0 pdb -> raddbg table diagnostic dumping Ryan Fleury 2024-02-09 12:54:51 -08:00
  • 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 Ryan Fleury 2024-02-09 11:50:04 -08:00
  • 7f357b264c os_gfx_win32: fix preservation of sign info in x/y lparams for mouse events Ryan Fleury 2024-02-08 17:05:24 -08:00
  • 11dd5fd21a fix dragging interpretation in ui box -> signal path Ryan Fleury 2024-02-08 15:10:53 -08:00
  • 77337f9e86 use globals, thread-locals, types, procedures in default panel layout Ryan Fleury 2024-02-08 10:37:08 -08:00
  • 95a6579f89 expand eval machine interpretation error codes; visualize Ryan Fleury 2024-02-08 10:28:41 -08:00
  • fed0a13aca eliminate leftover events system, since ui codepaths should now consume as many events as possible within a single frame Ryan Fleury 2024-02-08 10:09:51 -08:00
  • 6e3242848f wm_mousewheel and wm_mousehwheel report mouse coordinates in screen space, not client space; fix to account fo rthat Ryan Fleury 2024-02-08 10:05:29 -08:00
  • 2967d8be2a fix double assignment to strtable buckets_min in raddbg_pdb Ryan Fleury 2024-02-08 04:12:29 -08:00
  • 3a811e5e16 middle click -> close tabs Ryan Fleury 2024-02-07 16:49:05 -08:00
  • 0bced47404 eliminate old ui box -> signal path Ryan Fleury 2024-02-07 16:47:21 -08:00
  • 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. Ryan Fleury 2024-02-07 16:46:57 -08:00
  • b9cec99cd4 ui code -> extend 'active' system to all left/middle/right mouse buttons, rather than just min/max (left/right) Ryan Fleury 2024-02-07 14:20:21 -08:00
  • fb9e890653 fix utf8 encoding missing one bit shift axeldaguerre 2024-01-30 17:52:19 +01:00
  • 2c73c65878 remove debug Ryan Fleury 2024-02-07 13:35:34 -08:00
  • 390aab2699 raddbg from pdb: correctly parse several c13 files in single c13 subsection, rather than just assuming a single one Ryan Fleury 2024-02-07 13:35:14 -08:00
  • ccec64750d fix raddbg_dump build Ryan Fleury 2024-02-07 12:59:56 -08:00
  • 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 Ryan Fleury 2024-02-07 10:28:06 -08:00
  • c757388bb4 fix serialization/deserialization of top-level watch view rules v0.9.8-alpha Ryan Fleury 2024-02-06 15:38:42 -08:00
  • fb43eb9c72 default to no d3d11 debug features; use command line flag to enable Ryan Fleury 2024-02-06 14:59:41 -08:00
  • 9ef1b4b021 fix system processes lister fuzzy matching; fix ctrl layer locking modules on detach (demon was not reporting module string!) Ryan Fleury 2024-02-06 13:59:43 -08:00
  • 7305c12166 reset control context unwind count when submitting all runs Ryan Fleury 2024-02-06 13:48:05 -08:00
  • e3f18d3b87 fix mutable eval root key stability w.r.t. view rules & so on Ryan Fleury 2024-02-06 13:28:14 -08:00
  • 86e332f2ef allow compound macro expressions in eval system; poison used macro names, before descending Ryan Fleury 2024-02-06 11:55:51 -08:00
  • 6296d2bd96 first pass of watch window macros; fix active-but-disabled line edit rendering; other minor fixes Ryan Fleury 2024-02-06 11:47:52 -08:00
  • c2d96a8df6 pull out eval watch view cursor state; begin prepping for multirow table selection Ryan Fleury 2024-02-06 09:21:14 -08:00
  • c0cf0bf2da fix small visual issues with hover eval Ryan Fleury 2024-02-06 08:55:55 -08:00
  • 87ed6a8c62 per-run tls base vaddr cache; cleanup/fixes/improvements on fuzzy filtering of scheduler view Ryan Fleury 2024-02-06 08:48:09 -08:00
  • 0696eab974 address some jank with query view focuses intermixing with deselection/hover-eval/etc. Ryan Fleury 2024-02-06 07:35:48 -08:00
  • 9c02f947c7 show git commit id in window title & fatal exception dialog Martins Mozeiko 2024-02-05 15:08:51 -08:00
  • 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 Ryan Fleury 2024-02-05 14:36:33 -08:00
  • 95b8b71322 dedup multiple unwinder paths; just collapse down to using the ctrl one Ryan Fleury 2024-02-05 14:06:06 -08:00
  • ef317c1ffc procedures view Ryan Fleury 2024-02-05 13:58:19 -08:00
  • 9504946376 entity view filtering Ryan Fleury 2024-02-05 12:08:50 -08:00
  • e03e1dd136 eval lexer: same as last Ryan Fleury 2024-02-05 11:28:29 -08:00
  • 0b6b0947ed eval lexer: allow a few more corner cases of various compiler/linker-inserted identifiers, so that eval works in all cases Ryan Fleury 2024-02-05 11:26:37 -08:00
  • 38b8bfd6fb fix ordering of event consumption w/ filter box Ryan Fleury 2024-02-05 11:24:31 -08:00
  • 87e0e9a7e9 bugfix truncated string hover rule Ryan Fleury 2024-02-05 11:19:34 -08:00
  • 6e874c7449 syschar -> defwindowproc Ryan Fleury 2024-02-05 11:07:36 -08:00
  • 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. Ryan Fleury 2024-02-05 10:47:57 -08:00
  • 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 Ryan Fleury 2024-02-05 10:04:00 -08:00
  • f2c74cbcb2 float mousemove detection & ui mouse position rules down to ui core layer Ryan Fleury 2024-02-05 09:29:50 -08:00
  • f03f3e4421 robustify ctrl memory streaming cache & texture cache layer to unreasonably large sizes/dimensions Ryan Fleury 2024-02-05 09:24:00 -08:00
  • 95eea70682 fix failure condition in entry point detection Ryan Fleury 2024-02-05 08:54:45 -08:00
  • 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 Ryan Fleury 2024-02-05 08:41:18 -08:00
  • 0be4680ec9 os_gfx -> report mouse move events; still allow passive mouse interaction if window is unfocused, but have recently received mousemove events Ryan Fleury 2024-02-03 18:04:21 -08:00
  • 985a6f37e9 notes Ryan Fleury 2024-02-03 17:37:39 -08:00
  • f9e2aa99a9 fix padding calculation - prohibit all overlapping members Ryan Fleury 2024-02-03 09:56:24 -08:00
  • 509089d95d remain robust to busted range queries for ctrl process memory cache Ryan Fleury 2024-02-03 09:20:31 -08:00
  • 647558b140 fix plural language in singular scenarios Ryan Fleury 2024-02-02 17:28:22 -08:00
  • cbe842c5ec dont do padding members for unions, oops Ryan Fleury 2024-02-02 17:15:55 -08:00
  • f796f64c2f process memory read failuer visualization in eval watch view tables Ryan Fleury 2024-02-02 17:05:55 -08:00
  • 36d749ddb5 slightly stronger padding visualization Ryan Fleury 2024-02-02 16:46:54 -08:00
  • 7e589e8cd2 padding visualization Ryan Fleury 2024-02-02 16:42:08 -08:00
  • 708517a668 move fuzzy range match visualization into formal ui rendering path; write dedicated truncated fuzzy match rendering path; fixes some visual bugs & makes all fuzzy range match visualization consistent and not ad-hoc Ryan Fleury 2024-02-02 15:35:44 -08:00
  • 876d9338fc auto-close universal ctx menus when entities/tabs invalidate; some visual fixes Ryan Fleury 2024-02-02 14:13:00 -08:00
  • 6897c0bb57 only show mid-row cache line boundaries when unexpanded, since the expansion will show more precise info Ryan Fleury 2024-02-02 12:53:34 -08:00
  • 15e239a0dc cache line boundary visualization Ryan Fleury 2024-02-02 12:47:51 -08:00
  • 5d3aa301f0 enum type evaluation visualization - can now use watch windows to inspect all possible enum values Ryan Fleury 2024-02-02 11:50:21 -08:00
  • 847749337b eval parser: more coverage for c++-compiler-generated & various C++-style identifier names Ryan Fleury 2024-02-02 11:33:06 -08:00
  • 542753ddcc deduplicate editability/expandability determination path for viz row build Ryan Fleury 2024-02-02 11:12:20 -08:00
  • 9d8efa3a44 deduplicate common parts of viz row building Ryan Fleury 2024-02-02 11:03:14 -08:00
  • 410a340a09 oops -> carry over dbgi target with viz block splits Ryan Fleury 2024-02-02 10:13:39 -08:00
  • 8958b414e2 properly parameterize viz block & viz row building paths based on dbgi table target Ryan Fleury 2024-02-02 10:09:30 -08:00
  • ac895a85eb eliminate old eval watch view code Ryan Fleury 2024-02-02 09:30:22 -08:00
  • ad57a0d3e8 stop following expansion nodes at the first non-expanded one, when converting watch view selection coords when ancestor has been collapsed Ryan Fleury 2024-02-02 09:28:15 -08:00
  • 20ff4acecc simplify/collapse/deduplicate eval viz block building code; correctly build filtered-info-table-sorted expansions for filtered debug info table watches; eliminate special-case empty row in watch views, just feed everything through the viz blocks path Ryan Fleury 2024-02-01 17:05:08 -08:00
  • be4c52b7ef first part of collapsing globals/types/threadlocals path into being single viz block building path; more filtering ui work Ryan Fleury 2024-02-01 13:54:34 -08:00
  • 6740520bbe straighten out table coordinates <-> viz block coordinate space mappings, since search-backed tables no longer can assume those two things are the same; clang -> o2; fix clang build Ryan Fleury 2024-02-01 13:21:07 -08:00
  • 28fdd791ae extend eval viz blocks & windowed row build path with optional member info - use to extend watch type info visualization with size/offset information Ryan Fleury 2024-02-01 10:59:55 -08:00
  • d6608adf60 make msvc release build much faster Martins Mozeiko 2024-01-31 20:02:11 -08:00
  • 45b59e4cc4 apply fuzzy filtering correctly to globals/thread-locals/types views Ryan Fleury 2024-01-31 15:06:20 -08:00
  • 02979ba26c first pass at equipping frontend line edit with fuzzy match range visualization; shift new debug-info-range viz block -> viz row path to using a backing filtered item array to map the abstract index space into the debug info table spaces Ryan Fleury 2024-01-31 14:54:49 -08:00
  • f3f0e2a697 plug in basic, half-finished filtering functionality to watch/locals/registers/types/globals/threadlocals views Ryan Fleury 2024-01-31 14:35:14 -08:00
  • 630272ec37 expand dbgi asynchronous fuzzy matching system to allow selection of target table; this allows asynchronous fuzzy matching over types, globals, thread locals, and procedures Ryan Fleury 2024-01-31 14:22:12 -08:00
  • 41b853b874 simplify fuzzy matching path to a single query Ryan Fleury 2024-01-31 14:07:16 -08:00
  • 071ff82673 introduce general-purpose filtering path for tabs; control whether or not it is enabled via view spec flags. + feature flags for automatically bring up filtering box when typing Ryan Fleury 2024-01-31 14:01:53 -08:00
  • 9106190893 first pass at types view Ryan Fleury 2024-01-31 12:31:09 -08:00
  • 8602e5b23e first pass at thread-locals view Ryan Fleury 2024-01-31 12:24:57 -08:00
  • c8010b7542 first pass at globals view Ryan Fleury 2024-01-31 12:17:43 -08:00
  • edb204bc5f eliminate old expand-key-based eval history - ctrl process memory cache offers much better comprehensive replacement. also eliminate per-row and per-block eval views, since we've collapsed all eval views to one per list-of-watch-trees Ryan Fleury 2024-01-31 11:12:59 -08:00
  • 2bf8179fee eliminate old registers/locals view states Ryan Fleury 2024-01-31 10:49:47 -08:00
  • 4e9cf2ef89 eliminate old locals view path; dont constantly mutate root expressions, simply query locals & build blocks Ryan Fleury 2024-01-31 10:48:49 -08:00