Commit Graph

63 Commits

Author SHA1 Message Date
Ryan Fleury 6a7420b7aa exception code filter project settings / ui 2025-04-26 14:50:49 -07:00
Ryan Fleury 20ba4a6af9 dead code elimination, user/project setting evaluation, work on color view ui 2025-04-21 14:57:31 -07:00
Ryan Fleury 2925161c3a sequence/table visualization test in mule 2025-04-17 16:29:38 -07:00
Ryan Fleury 559f1baae1 begin fitting settings into window evaluation 2025-04-17 16:05:31 -07:00
Ryan Fleury 2a45696294 matrix table visualization test 2025-04-16 11:02:04 -07:00
Ryan Fleury 7c668388eb hook up programmatic breakpoint state to trap list 2025-04-12 19:38:07 -07:00
Ryan Fleury 7ba027e841 sketch out new markup API for programmatic address/data breakpoints 2025-04-12 15:21:48 -07:00
Ryan Fleury 72aa479724 eliminate unnecessary usage of $. in mule auto view rules 2025-04-11 15:04:32 -07:00
Ryan Fleury e754380caa eval identifier resolution: allow implicitly mapping leaf identifiers to member accesses of overridden irtree 2025-04-11 15:02:54 -07:00
Ryan Fleury 83a31a5229 take out view rules from pins, since that is just in the expr itself now 2025-04-11 13:21:25 -07:00
Ryan Fleury abd33f7160 new (and successful :) ) story for 'parent/overridden irtrees'. basically, if we have a rule which maps some eval X's type from A -> B, we preserve the original ir-tree compilation of A in the 'history' when we inevitably produce the ir-tree compilation of B. this can be used for accesses on overridden evaluations, and it allows us to implement $ in auto view rules. 2025-04-11 11:58:43 -07:00
Ryan Fleury 59df09b39b re-enable auto view rules in mule 2025-04-10 16:53:36 -07:00
Ryan Fleury fbe747a8b4 further work on convergence, dead code elimination, and lens (view rule) calls 2025-04-10 14:29:57 -07:00
Ryan Fleury da69d9e91c more progress on new eval/view-rule integration; raddbg_entry_point markup feature 2025-04-10 14:29:55 -07:00
Ryan Fleury 0705ba0a96 begin plugging in view rules as formal call part of expression language 2025-04-07 08:01:33 -07:00
Ryan Fleury bca5169447 eliminate manual console creation & needs-console detection; use user-error mechanism for process creation failure 2025-03-31 16:38:18 -07:00
Ryan Fleury 833bee35e3 sketch out new auto view rules for new expression language idea 2025-03-28 15:50:19 -07:00
Ryan Fleury 160083835a add std::vector / auto-view-rule test to mule 2025-03-28 11:38:56 -07:00
Ryan Fleury 269efba455 fix treatment of floats in thread color rgba macro in raddbg_markup 2025-03-28 11:04:37 -07:00
Ryan Fleury 3911a66b30 fill out first pass implementations of raddbg_markup features; thread names, thread colors, format-string output-debug-string helper, attachment-checking 2025-03-28 10:56:41 -07:00
Ryan Fleury dc967f5274 fix treatment of 0-terminator in raddbg data section, fix encoding of auto view rules in raddbg data section 2025-03-26 16:28:13 -07:00
Ryan Fleury 03cbbac6d7 source-markup-defined auto-view-rules 2025-03-26 13:45:26 -07:00
Ryan Fleury 48f0702e05 fix source markup parsing, release notes for source-defined watch annotations 2025-03-26 11:49:15 -07:00
Ryan Fleury bd35ea83fc support for raddbg_pin markup on-the-fly watch pin annotations 2025-03-26 11:38:32 -07:00
Ryan Fleury c42e7837ac fix 64-bit bitfield type value evaluation mask/shift 2024-11-15 11:44:51 -08:00
Ryan Fleury e9666e2edd adjust disasm lexer to account for compiler-autogenerated symbol names 2024-10-24 11:41:59 -07:00
Ryan Fleury 78039c86a0 include no_addr in view rule system for docs/inheritance rules 2024-10-16 15:41:21 -07:00
Ryan Fleury ba0e4ea0c5 fix cross-module global evaluation with new multi-module-capable eval system 2024-10-13 19:25:42 -07:00
Ryan Fleury d0e0e35fb5 fix first-time startup not being parameterized by startup window 2024-10-09 14:25:28 -07:00
Ryan Fleury 22c4336375 finish trimming old view rule code; get 3d geometry viewer back in good shape and integrated as a full view 2024-08-28 11:36:44 -07:00
Ryan Fleury 6d30455e76 further progress on eliminating file entities; further entity simplification; set up external identifier resolution map for evaluating 'meta' variables; sketch out generalized entity serialization path 2024-08-13 11:39:25 -07:00
Ryan Fleury 607442b92a fix member lookup rules in new eval ir tree builder 2024-08-07 08:22:22 -07:00
Ryan Fleury 784a77bdff be a bit more forgiving in eval interpreter, to allow for graceful type (and thus empty bytecode) evaluation 2024-08-06 07:15:03 -07:00
Ryan Fleury b18e437337 git normalize all files 2024-07-26 11:13:47 -07:00
Ryan Fleury 926b5e3546 apply linux notes from martins; simplify build.sh; simplify some linux layer code; fix incorrect linux api usage; get gcc builds up and running 2024-07-23 14:31:10 -07:00
Ryan Fleury fa4d0bc262 ctrl: break debug string events apart if needed; enforce size cap on serialized ctrl events 2024-06-13 16:24:54 -07:00
Ryan Fleury 2419a00b11 fix cases where decorative disasm lines were being confused with non-decorative 2024-06-13 15:18:29 -07:00
Ryan Fleury 6e9b2bd107 extend rdi line info lookups with depth; fix bad panel deref in target view cmds 2024-06-13 15:18:29 -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 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 35b97d9c20 process name on stop-reason strings 2024-05-23 15:38:51 -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 0160d05e8a further tweaks to mule_peb_trample 2024-05-22 11:39:23 -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 9177299488 improve tab drag/drop 2024-04-28 17:29:41 -07:00
Ryan Fleury 7c3fabfc39 wchar test in mule_main 2024-03-29 10:13:29 -07:00
Ryan Fleury 7defce94c7 float codeview, msf, pdb layers up as regular codebase layers, and out of converter-specific code; clangify some builds 2024-02-13 09:51:50 -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 f75ee24a2b eval compiler: read through type modifiers in member access path 2024-01-20 10:14:48 -08:00