Commit Graph

3448 Commits

Author SHA1 Message Date
Ryan Fleury ec39cefc9e correctly decompress rdis in radbin dumping path; do not compress zero-sized sections in rdi make 2025-10-13 12:47:46 -07:00
Ryan Fleury 87edc583bf define ctrl entity eval spaces once, in ctrl layer - nest in rd layer 2025-10-13 12:40:28 -07:00
Ryan Fleury 6bcbf5909d correctly handle bitfield type operators in eval viz string iterator 2025-10-13 11:23:49 -07:00
Ryan Fleury b41bf5b39e update readme 2025-10-10 16:20:34 -07:00
Ryan Fleury b9be24a17d fix releasing of nil gpu buffer handles 2025-10-10 15:53:56 -07:00
Ryan Fleury c934892006 bump version to v0.9.23 2025-10-10 14:55:07 -07:00
Ryan Fleury b09e539534 fix build script for pgo 2025-10-10 14:35:13 -07:00
Ryan Fleury 8e452f10ac v0.9.22-alpha changelog 2025-10-10 13:50:47 -07:00
Ryan Fleury ac378b0ac2 switch in file menu 2025-10-10 13:10:02 -07:00
Ryan Fleury 7fcba83282 use debug info to infer language for files from including-unit language, if we cannot deduce it from extensions / settings (e.g. C++ .inl files) 2025-10-10 13:08:43 -07:00
Ryan Fleury bd9372f07c use current working directory as working directory for command line targets 2025-10-10 12:56:24 -07:00
Nikita Smith 43fcc21490 clang build fixes 2025-10-10 10:19:47 -07:00
Nikita Smith 3bd89b1fad switch over to new MD5 hash lib 2025-10-10 10:15:22 -07:00
Nikita Smith 061b5c5955 added CFA instruction parser, interpreter, and a dumper 2025-10-10 10:09:46 -07:00
Ryan Fleury c738768e41 demon/win32: do not assume actual_read is valid after a failed process memory read 2025-10-09 16:05:13 -07:00
Ryan Fleury da44e89a92 fix clang build 2025-10-09 13:57:41 -07:00
Ryan Fleury 9022efd3ab new strategy - allow artifact creation to report a completed generation which differs from the requested generation, thus preventing duplicate gen requests (in the case of ctrl process memory) 2025-10-09 11:24:48 -07:00
Ryan Fleury 28bb158c61 revert last change - that will forever-retry those reads! need a slightly different retry mechanism 2025-10-09 11:10:14 -07:00
Ryan Fleury fe6eff9d3b pass requested gen to artifact creation hooks, use to retry ctrl memory reads on many successive mem gen bumps - prevents spurious duplicate hashes in content store history 2025-10-09 10:40:31 -07:00
Ryan Fleury 4268c1de76 bump load gen on dbgi close also 2025-10-08 15:59:56 -07:00
Ryan Fleury 96477c65dd switch to martins hash 2025-10-08 12:58:59 -07:00
Nikita Smith 7eb64dbd13 metagen does not have this macro... 2025-10-07 20:42:52 -07:00
Nikita Smith e1986c9594 clang fixes 2025-10-07 20:37:00 -07:00
Nikita Smith 401d7b47df factor out C++ ABI exception handling 2025-10-07 20:28:06 -07:00
Nikita Smith 3560c7d3e7 dump CIE and FDE 2025-10-07 18:16:32 -07:00
Nikita Smith e4f6c0fc8e helper for querying arch bittness in byte size 2025-10-07 18:16:31 -07:00
Nikita Smith 7cf3eaf73f parsers for CIE and FDE 2025-10-07 18:16:31 -07:00
Nikita Smith 62ae5ca3f5 stringify format and cfa opcodes enums 2025-10-07 18:16:31 -07:00
Nikita Smith fb0d42e6d8 extend stb_sprintf.h with formatter for Rng1U64 via %r 2025-10-07 18:16:31 -07:00
Ryan Fleury 9e110bbe6d resolve register space -> primary module space in all visualizers which work on, broadly speaking, ranges of memory 2025-10-07 17:23:58 -07:00
Ryan Fleury fb825247ed resolve register-space evaluations to primary-module space evaluations in the visualizers 2025-10-07 17:20:44 -07:00
Ryan Fleury 7ff5764696 store successful queries keyed by target section as well, to avoid different table evals having different success states - fixes autocomplete flicker 2025-10-07 16:57:05 -07:00
Ryan Fleury d2feaa5f56 oops, fix dbgi search arenas leak! 2025-10-07 16:45:02 -07:00
Ryan Fleury 166b84cf30 eliminate content-layer-specific u128 hash 2025-10-07 16:24:54 -07:00
Ryan Fleury cd26bf1bcc only submit empty ctrl process memory artifacts if we have no other history; only retry on mem gen tears & valid ranges 2025-10-07 16:06:59 -07:00
Ryan Fleury ec69ebff35 fix tick-deferred command mechanism in debug engine 2025-10-07 15:50:52 -07:00
Ryan Fleury 783988c0ac expand ctrl process memory cache access to allow waiting for fresh results, rather than any results; use when doing a ctrl process memory write, to prefer viewing less stale data on exact frame. also expand trap net generation with success bit, use to retry stepping commands across frames if process memory reads are hindered. abort after N retries. 2025-10-07 15:44:35 -07:00
Ryan Fleury 2cc7f45ec1 promote register values to primary module space values for memory view specifically 2025-10-07 15:06:46 -07:00
Ryan Fleury f67cf8b59d remove incorrect space promotion rule 2025-10-07 14:51:34 -07:00
Ryan Fleury ec978d8d46 do not use complex register union types for common registers; just use primitive integer types instead 2025-10-07 14:41:51 -07:00
Ryan Fleury ab841035c0 preserve operand size info for shift operations, use along with typegroup to do correct sign preservation on shifts 2025-10-07 14:20:36 -07:00
Ryan Fleury f60ccb60f1 do not attach last successful filter to view state, since does not apply in all cases - fix artifact staleness default marker (if we do not get an artifact at all, then it is stale) 2025-10-07 12:09:14 -07:00
Ryan Fleury 0f0e36d40b disambiguate rip identifier in disasm base address calculation 2025-10-07 11:45:09 -07:00
Ryan Fleury 2acf77ad9e fix impossible disasm loading condition; do not go wide on dbgi matching unless we have significant-enough dbgis 2025-10-07 11:34:30 -07:00
Ryan Fleury fadef8a886 log source of dwarf info more specifically 2025-10-07 11:03:18 -07:00
Ryan Fleury fe8608ee1c more verbose logging in radbin 2025-10-07 10:37:15 -07:00
Ryan Fleury d20cce536a rdim bake parameter joining, source rdi bake parameters from *all* inputs, and not mutually-exclusive dwarf vs. pdb cases 2025-10-07 10:20:19 -07:00
Ryan Fleury b02a815a27 flush dwm on resize; use WS_EX_NOREDIRECTIONBITMAP window flag to avoid dwm bug 2025-10-06 17:34:19 -07:00
Ryan Fleury 2a7177861b remove extra watch row column cases - simplify most cases down to expr / eval. use extra 'note' for watch window cells to annotate type info - this sacrifices the full type evaluation cell, and instead uses a small extra bit of text to denote the type for quick reading. but this full type cell is not needed in most cases, and it can always be reobtained with an explicit typeof evaluation. 2025-10-06 17:06:00 -07:00
Ryan Fleury 6f4e78d06c do not try to release failed-creation textures 2025-10-06 14:55:51 -07:00