Ryan Fleury
|
7d7edd7cf7
|
renormalize line endings
|
2025-09-17 15:21:24 -07:00 |
|
Ryan Fleury
|
6abdadcccb
|
garbage collect window states on quit as well
|
2025-09-17 14:50:06 -07:00 |
|
Ryan Fleury
|
0d15b8670b
|
eliminate bifurcated rw lock path based on exclusive mode; promote thread operations to base layer, use os layer as impl; first pass on moving file streaming layer to base layer's async wavefront
|
2025-09-17 14:47:55 -07:00 |
|
Ryan Fleury
|
99c989a3c3
|
first pass at setting up base layer async thread path
|
2025-09-17 10:06:21 -07:00 |
|
Ryan Fleury
|
443646b356
|
rdi make: fix incorrect base encoding offset initialization when pushing into new location chunk
|
2025-09-16 12:28:33 -07:00 |
|
Ryan Fleury
|
49bcb252d9
|
remove year from license
|
2025-09-16 11:51:10 -07:00 |
|
Ryan Fleury
|
c5a1da5c80
|
bump to 22
|
2025-09-16 11:48:00 -07:00 |
|
Ryan Fleury
|
3ab9f72c76
|
readme pass
|
2025-09-16 11:47:04 -07:00 |
|
Ryan Fleury
|
937c6c8bce
|
eliminate radcon, eliminate unused string helpers
|
2025-09-16 10:17:02 -07:00 |
|
Ryan Fleury
|
1b82c52803
|
only enable priority thread running on initial run loop; do not pay the cost every run loop iteration
|
2025-09-15 17:18:59 -07:00 |
|
Ryan Fleury
|
2a8ca37cb3
|
record & restore target window on runs
|
2025-09-15 14:10:30 -07:00 |
|
Ryan Fleury
|
c7bb49092f
|
radbin dump: isolate output bundling on lane 0
|
2025-09-15 13:28:43 -07:00 |
|
Ryan Fleury
|
cf94b3757e
|
wide rdi dumping
|
2025-09-15 13:02:32 -07:00 |
|
Ryan Fleury
|
26606d7895
|
do not strip enums/aliases on array index ops
|
2025-09-15 11:32:22 -07:00 |
|
Ryan Fleury
|
e021079d05
|
bump rdi encoding version
|
2025-09-09 08:28:08 -07:00 |
|
Ryan Fleury
|
80b65bc0fb
|
fix treatment of unitless pdbs
|
2025-09-08 16:06:45 -07:00 |
|
Ryan Fleury
|
40d6ce2f59
|
do not return zeroes for top-level structures in pdb parser; ensure you have a top-level readable pointer, always
|
2025-09-06 09:53:04 -07:00 |
|
Ryan Fleury
|
0c161f83c7
|
fix clang
|
2025-09-05 17:09:01 -07:00 |
|
Ryan Fleury
|
23a68faadd
|
rdim2 -> rdim; p2r2 -> p2r
|
2025-09-05 17:06:19 -07:00 |
|
Ryan Fleury
|
51ef166e60
|
eliminate all old conversion/baking code
|
2025-09-05 17:02:56 -07:00 |
|
Ryan Fleury
|
78530fb10d
|
merge p2r2 into original p2r, delete old conversion path; replace pdb -> breakpad converter & dependency on old converter
|
2025-09-05 16:35:35 -07:00 |
|
Ryan Fleury
|
a2b4e7bdc5
|
fix missing null voff in scope voff data section
|
2025-09-05 16:02:38 -07:00 |
|
Ryan Fleury
|
4eca7f7fea
|
source file / source line map baking
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
efb24fb0fa
|
checkpoint on src file / src line map baking
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
d2e6e5de5a
|
oops - fix non-allocation in previous part
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
15e9cda7d2
|
new location info baking, new constants baking
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
ee8dc27428
|
location data / location block baking
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
cd77ddb1b7
|
pdb converter - new location info building for all cases
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
6f9b22b258
|
plug in new location building code to pdb conversion
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
cc9f45299a
|
eliminate separate chunk list for location cases
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
fa05bbf2a5
|
udt member/enum-val layout & nested baking; use rio to pre-fault all commits
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
a84142ed77
|
re-nest enum vals & members into udts; we want to keep the building API flexible with order of member building, and we can assume ~statistically-uniform distribution across all udts, so it makes more sense to just parallelize on udts, and pay the small cost of an upfront per-lane layout.
|
2025-09-05 15:19:30 -07:00 |
|
Ryan Fleury
|
8b83e5ef48
|
more non-determinism & bug fixes in name map & idx run map building
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
4c3bb98c64
|
more determinism fixes
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
096b631e8a
|
remove debugging code
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
27f2acd45d
|
further progress/fixes on pdb -> rdi determinism
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
27d4793900
|
fix line table building non-determinism
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
f093ba9d35
|
fix src file path gathering determinism - was caused by interleaving each lane's non-inline and inline file paths - with different thread counts, these subdivisions will be different, so the order will change
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
6234fb0c49
|
fix incorrect scope voff serialization offsets
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
955f033043
|
fix incorrect idx run baking; slots need to be laid out based on *idx counts*, rather than *value counts*!
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
e276ce4fb3
|
stub out src file baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
57125fee1b
|
eliminate helpers from string map baking; no point in extra entry points for partial bakes
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
2f9006bb8a
|
bugfix name map baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
46ac437e86
|
name map baking / serialization
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
92f24a043d
|
idx runs baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
55b05301a4
|
expand scope vmap sorting -> all vmaps; do final vmap bakes; do first pass of scope (1 scope -> many locals, many voffs) layout / baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
cc0d707eb2
|
eliminate 'lane groups', since we can go wide on the sorts now
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
1d7cd4f4d2
|
cleanup / radix sort experimentation
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
a44fbb0909
|
parallel radix sort for scope vmap baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
8fe4b3524f
|
with sufficient threads, split baking threads into two groups: small # of threads to do expensive 'background' baking tasks, use the rest to do wide predictable baking stuff
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
f065ca33a2
|
location block baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
3b1aae44d0
|
location info baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
71cbdba76e
|
remove old section requirement part of rdi, since all sections are now fixed; unit/scope/global vmap baking; collapse chunk list impls
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
e4ac3febd0
|
finish new udt baking; pull members & enum vals out of sub-udt lists, makes it much harder to layout & parallelize - instead pull them aside into their own chunk lists, require that UDTs just point to their first member; that way we can go wide when baking UDT members/enum-vals
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
b8414c4bfd
|
type, first part of udt baking, string baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
ad4e57ec5a
|
idx run baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
b22f6d3544
|
fully wide name map baking, joining, & sorting
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
95e88e92e7
|
top-level info string baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
618233eba1
|
checkpoint on new baker; globals, threads, inline sites
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
595270bdab
|
path tree baking
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
b169090dc6
|
checkpoint on new rdi baking; line table baking, string map building, plug in radsort over bad radix sort; arena tweak to aovoid unnecessary zeroes
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
66ec3e834b
|
rdi baking: wide line table gathering/joining & sorting
|
2025-09-05 15:19:29 -07:00 |
|
Ryan Fleury
|
69d0da9586
|
checkpoint on moving all of radbin to wavefront-style, first step to going wide on rdi baking as well
|
2025-09-05 15:19:28 -07:00 |
|
Ryan Fleury
|
c35c14dadb
|
prefer last match to first in debug info, to gracefully avoid stale debug info in pdbs
|
2025-08-30 12:04:39 -07:00 |
|
Ryan Fleury
|
be5634c448
|
p2r2 - final conversion output bundling
|
2025-08-19 17:02:05 -07:00 |
|
Ryan Fleury
|
cdec8d5980
|
ctrl/demon: fastfail exception codes / notes; p2r2: finish symbol conversion etc. in new wavefront-style version
|
2025-08-19 16:47:12 -07:00 |
|
Ryan Fleury
|
cff69f287a
|
p2r2 more progress; src file line sequence equipping, sketch out symbol conversion - we unfortunately cannot currently easily subdivide units! we need to pull out the few 'record-range' concepts and make them flat first, e.g. proc base address for inline sites, frameproc info, etc.
|
2025-08-18 16:58:05 -07:00 |
|
Ryan Fleury
|
83d4afabd5
|
p2r2: types building
|
2025-08-18 16:28:22 -07:00 |
|
Ryan Fleury
|
0fa45fe71b
|
p2r2: reslice per-lane work; bucket subsets of units by record count, rather than assigning units to lanes
|
2025-08-18 15:24:25 -07:00 |
|
Ryan Fleury
|
55f21018df
|
unit conversion, line info conversion
|
2025-08-18 14:19:48 -07:00 |
|
Ryan Fleury
|
34cb8ded2c
|
better uniform lane range distribution when count / lanes is not cleanly divisible; plug in source file path gathering
|
2025-08-18 12:01:55 -07:00 |
|
Ryan Fleury
|
d52b6d7bca
|
go wide on msf stream extraction
|
2025-08-18 11:36:33 -07:00 |
|
Ryan Fleury
|
d0ece7bc57
|
hook up p2r2 to radbin
|
2025-08-18 11:26:05 -07:00 |
|
Ryan Fleury
|
c33dd2869a
|
define synchronization primitive interface in base layer, implement using os layer; convert all usage -> base layer; use base sync primitives in lane tctx info
|
2025-08-18 10:46:43 -07:00 |
|
Ryan Fleury
|
a48651471d
|
share-read in header analysis in radbin
|
2025-08-15 16:54:06 -07:00 |
|
Ryan Fleury
|
e566b2ed30
|
checkpoint on wavefront-style pdb -> rdi converter
|
2025-08-15 16:50:28 -07:00 |
|
Ryan Fleury
|
f1a1863d5c
|
set up base-layer tctx info for thread wavefront metadata
|
2025-08-15 12:16:58 -07:00 |
|
Ryan Fleury
|
f754b4c2db
|
fix pointer/array comparison paths not being enabled for not-equal; fix value arithmetic paths applying in type comparisons
|
2025-08-15 11:31:50 -07:00 |
|
Ryan Fleury
|
83650a5fe0
|
support unsigned -> unsigned int; support as-style casts in expressions; pack int alias in pdb-produced rdis
|
2025-08-15 10:56:42 -07:00 |
|
Ryan Fleury
|
36c626e375
|
Merge branch 'master' of https://github.com/EpicGames/raddebugger into dev
|
2025-08-14 11:31:43 -07:00 |
|
Ryan Fleury
|
7be1faaa9b
|
fix callstack cache lookup early out case
|
2025-08-13 14:13:10 -07:00 |
|
Ryan Fleury
|
5144ced282
|
turn off call stack tree macro for now
|
2025-08-13 13:46:02 -07:00 |
|
Ryan Fleury
|
6a8277536f
|
fix one-sided bounds check in text containing-scope binary search
|
2025-08-13 13:21:34 -07:00 |
|
Ryan Fleury
|
788df5f556
|
os: barrier
|
2025-08-12 10:12:05 -07:00 |
|
Ryan Fleury
|
a8f6142e63
|
eval/ir: do not strip enum types off when doing address operations
|
2025-08-11 16:18:39 -07:00 |
|
Ryan Fleury
|
36dcd65a83
|
first pass at call stack tree evaluation
|
2025-08-11 16:08:04 -07:00 |
|
Ryan Fleury
|
056604fb94
|
sketch out tline -> vline text wrapping cache types; first pass of async call stack tree builder
|
2025-08-11 13:46:06 -07:00 |
|
Ryan Fleury
|
e1d6b9f319
|
tweaks
|
2025-08-06 17:21:44 -07:00 |
|
Ryan Fleury
|
af5dcffdac
|
tie scope rendering to settings
|
2025-08-06 14:33:17 -07:00 |
|
Ryan Fleury
|
a227aff8f6
|
finish containing-scope visualization
|
2025-08-06 14:24:12 -07:00 |
|
Ryan Fleury
|
cd8c3a2172
|
enable read/write bits on just read data breakpoint on x64 - there is no way to do a read-only (without write) data breakpoint
|
2025-08-06 11:50:01 -07:00 |
|
Ryan Fleury
|
4c10e84e5f
|
fix txt cache scope lookup binary search
|
2025-08-05 21:17:50 -07:00 |
|
Ryan Fleury
|
01f60834e9
|
plug in text scope tree to code slice visualization
|
2025-08-05 16:36:59 -07:00 |
|
Ryan Fleury
|
230f452edb
|
text cache scope tree lookup paths
|
2025-08-05 16:11:49 -07:00 |
|
Ryan Fleury
|
5a5fd53bfa
|
scope tree / sorted scope endpoints parsing in text cache parsing
|
2025-08-05 14:28:49 -07:00 |
|
Ryan Fleury
|
c4374810cb
|
fix wrong void type in pdb -> rdi
|
2025-08-05 13:41:10 -07:00 |
|
Ryan Fleury
|
9cff2bc7dd
|
symbolof operation in eval
|
2025-08-05 10:21:42 -07:00 |
|
Ryan Fleury
|
1856c52e58
|
xxhash for ctrl layer
|
2025-08-05 09:27:38 -07:00 |
|
Ryan Fleury
|
31973ac2ac
|
eliminate extra type stuff in rdim, organize / reslice dwarf conversion code, start reading through dwarf conversion
|
2025-08-04 14:19:17 -07:00 |
|
Ryan Fleury
|
b31b4612e9
|
pre-emptive thread register cache updating on ctrl thread - cache reading/updating on ui thread should always be allowed to gracefully fail, since it is literally impossible on linux, but we can always rely on the ctrl thread to pipe the right thing through eventually.
|
2025-08-04 13:13:18 -07:00 |
|