Ryan Fleury
|
9c7fd0a411
|
metagen: simplify & straighten out table generation further; raddbgi_cons: fix incorrect str8_list_join
|
2024-02-13 11:38:43 -08:00 |
|
Ryan Fleury
|
348e93162a
|
metagen: simplify & unify error gathering & printing path
|
2024-02-13 11:26:31 -08:00 |
|
Ryan Fleury
|
1d9dc2b9a9
|
metagen: simplify data tables
|
2024-02-13 11:16:45 -08:00 |
|
Ryan Fleury
|
742d2387e2
|
metagen: simplify metacode structs
|
2024-02-13 11:00:58 -08:00 |
|
Ryan Fleury
|
ea840a71e8
|
metagen: simplify enum generation; reading/organization pass over raddbgi_from_pdb
|
2024-02-13 10:55:06 -08:00 |
|
Ryan Fleury
|
4a9e5512f6
|
fix this_function_name macro
|
2024-02-13 09:56:46 -08:00 |
|
Ryan Fleury
|
ac30c8a84b
|
add codeview/msf/pdb notes to readme
|
2024-02-13 09:53:52 -08: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
|
017116aee9
|
formalize codebase's library exports; document in README
|
2024-02-13 09:27:52 -08:00 |
|
Ryan Fleury
|
8c70b5efc9
|
raddbgi_cons: get building standalone, without base layer; complete first pass of librarification
|
2024-02-13 08:58:10 -08:00 |
|
Ryan Fleury
|
4aa2cb655b
|
further progress on raddbgi cons librarification
|
2024-02-12 21:05:05 -08:00 |
|
Ryan Fleury
|
440dcf21a2
|
further raddbg_cons librarification
|
2024-02-12 20:32:20 -08:00 |
|
Ryan Fleury
|
2a85e1d37d
|
raddbgi cons: more overrides work
|
2024-02-12 19:10:31 -08:00 |
|
Ryan Fleury
|
7022c58018
|
begin libraryifying raddbgi_cons; switch to raddbgi_format types, or overrideable base-layer-style types; just override & include in codebase-local inclusion sites. next step is to break out this stuff, along with stringization, into a raddbgi helper layer
|
2024-02-12 16:17:54 -08:00 |
|
Ryan Fleury
|
840e1da5f3
|
update github workflows to new debug info naming
|
2024-02-12 15:26:06 -08:00 |
|
Ryan Fleury
|
02825f3b3e
|
move raddbgi stringize into standalone layer
|
2024-02-12 15:22:41 -08:00 |
|
Ryan Fleury
|
cf19b13b78
|
dump -> raddbgidump
|
2024-02-12 15:19:20 -08:00 |
|
Ryan Fleury
|
ad4003e70d
|
cons -> raddbgic
|
2024-02-12 15:17:23 -08:00 |
|
Ryan Fleury
|
5c33c410d3
|
flatten cons api; eliminate private/public distinction
|
2024-02-12 15:11:20 -08:00 |
|
Ryan Fleury
|
d35bdf2128
|
adjust readme for new debug info naming convention
|
2024-02-12 15:08:40 -08:00 |
|
Ryan Fleury
|
aa2a0948ba
|
raddbg -> raddbgi
|
2024-02-12 15:03:13 -08:00 |
|
Ryan Fleury
|
4b68967fbe
|
raddbg format stuff -> raddbgi; partial naming/organization over raddbgi_cons
|
2024-02-12 14:29:24 -08:00 |
|
Ryan Fleury
|
cc26a22e40
|
apply cancel/ok ordering note from jeff
|
2024-02-12 10:33:04 -08:00 |
|
Ryan Fleury
|
4fde6addc4
|
raddbg_cons: parameterize bake ctx with bucket sizes; make initial prediction based on symbol count
|
2024-02-11 13:29:06 -08:00 |
|
Ryan Fleury
|
60b6e2d597
|
Merge branch 'dev' of https://github.com/EpicGames/raddebugger into dev
|
2024-02-11 09:23:37 -08:00 |
|
Ryan Fleury
|
e5c35a4035
|
oops! fix wrong type fwd reference condition
|
2024-02-11 09:23:16 -08:00 |
|
Ryan Fleury
|
47bb3464e1
|
oops!
|
2024-02-11 09:23:06 -08:00 |
|
Ryan Fleury
|
2e8afad5f0
|
adjust conversion visualization; strip out old profiling markup
|
2024-02-10 19:40:19 -08:00 |
|
Ryan Fleury
|
e7897f302f
|
do some more fine tuning of symbol id hash functions used in pdb -> raddbg path; also eliminate unnecessary per-type work
|
2024-02-10 18:25:47 -08:00 |
|
Ryan Fleury
|
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
|
2024-02-10 16:21:55 -08:00 |
|
Ryan Fleury
|
801518ea75
|
improve local map hash
|
2024-02-09 18:02:44 -08:00 |
|
Ryan Fleury
|
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)
|
2024-02-09 16:59:42 -08:00 |
|
Ryan Fleury
|
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
|
2024-02-09 15:31:24 -08:00 |
|
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 |
|
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 |
|
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 |
|
Ryan Fleury
|
647558b140
|
fix plural language in singular scenarios
|
2024-02-02 17:28:22 -08:00 |
|
Ryan Fleury
|
cbe842c5ec
|
dont do padding members for unions, oops
|
2024-02-02 17:15:55 -08:00 |
|
Ryan Fleury
|
f796f64c2f
|
process memory read failuer visualization in eval watch view tables
|
2024-02-02 17:05:55 -08:00 |
|
Ryan Fleury
|
36d749ddb5
|
slightly stronger padding visualization
|
2024-02-02 16:46:54 -08:00 |
|
Ryan Fleury
|
7e589e8cd2
|
padding visualization
|
2024-02-02 16:42:08 -08:00 |
|
Ryan Fleury
|
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
|
2024-02-02 15:35:44 -08:00 |
|
Ryan Fleury
|
876d9338fc
|
auto-close universal ctx menus when entities/tabs invalidate; some visual fixes
|
2024-02-02 14:13:00 -08:00 |
|
Ryan Fleury
|
6897c0bb57
|
only show mid-row cache line boundaries when unexpanded, since the expansion will show more precise info
|
2024-02-02 12:53:34 -08:00 |
|
Ryan Fleury
|
15e239a0dc
|
cache line boundary visualization
|
2024-02-02 12:47:51 -08:00 |
|
Ryan Fleury
|
5d3aa301f0
|
enum type evaluation visualization - can now use watch windows to inspect all possible enum values
|
2024-02-02 11:50:21 -08:00 |
|
Ryan Fleury
|
847749337b
|
eval parser: more coverage for c++-compiler-generated & various C++-style identifier names
|
2024-02-02 11:33:06 -08:00 |
|
Ryan Fleury
|
542753ddcc
|
deduplicate editability/expandability determination path for viz row build
|
2024-02-02 11:12:20 -08:00 |
|
Ryan Fleury
|
9d8efa3a44
|
deduplicate common parts of viz row building
|
2024-02-02 11:03:14 -08:00 |
|
Ryan Fleury
|
410a340a09
|
oops -> carry over dbgi target with viz block splits
|
2024-02-02 10:13:39 -08:00 |
|
Ryan Fleury
|
8958b414e2
|
properly parameterize viz block & viz row building paths based on dbgi table target
|
2024-02-02 10:09:30 -08:00 |
|
Ryan Fleury
|
ac895a85eb
|
eliminate old eval watch view code
|
2024-02-02 09:30:22 -08:00 |
|
Ryan Fleury
|
ad57a0d3e8
|
stop following expansion nodes at the first non-expanded one, when converting watch view selection coords when ancestor has been collapsed
|
2024-02-02 09:28:15 -08:00 |
|
Ryan Fleury
|
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
|
2024-02-01 17:05:08 -08:00 |
|
Ryan Fleury
|
be4c52b7ef
|
first part of collapsing globals/types/threadlocals path into being single viz block building path; more filtering ui work
|
2024-02-01 13:54:34 -08:00 |
|