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 |
|
Ryan Fleury
|
9c2bdf492f
|
ptrace register reading debugging
|
2025-08-04 12:36:04 -07:00 |
|
Ryan Fleury
|
209c5e96b8
|
bitmap view -> rich hover
|
2025-08-01 11:45:28 -07:00 |
|
Ryan Fleury
|
25963dc9b4
|
demon/linux: correct main module address range formation; further progress on event processing
|
2025-07-31 17:33:58 -07:00 |
|
Ryan Fleury
|
a323aec6d0
|
demon/linux: x64 trap writing
|
2025-07-31 15:10:25 -07:00 |
|
Ryan Fleury
|
7c99e79981
|
demon/linux: first pass port at x64 register writing
|
2025-07-31 14:54:28 -07:00 |
|
Ryan Fleury
|
1a19bf9663
|
render/d3d11: adjust allowed frame 'latency' (frames-in-queue) based on number of active windows, to not unnecessarily block if we have two windows to build frames for; demon/linux: sketch out register writing path, ensure reg read/write paths have slots for other architectures
|
2025-07-31 14:09:42 -07:00 |
|
Ryan Fleury
|
ad735dab5e
|
pull raddbg byte attachment aside into standalone section - this guarantees byte placement, does not rely on ordering, and does not require symbols
|
2025-07-31 13:15:37 -07:00 |
|
Ryan Fleury
|
9ef87e9d56
|
fix to match 32 -> 64 change in demon/win32
|
2025-07-29 14:22:23 -07:00 |
|
Ryan Fleury
|
7403a8ea3b
|
demon/linux: x64 register reading
|
2025-07-29 14:19:54 -07:00 |
|
Ryan Fleury
|
0e9f2ee03c
|
demon/linux: halting, sigstop cases
|
2025-07-28 17:47:50 -07:00 |
|
Ryan Fleury
|
64c2d98ede
|
demon/linux: sketch out signal interpretation, more ptrace study
|
2025-07-28 17:25:24 -07:00 |
|
Ryan Fleury
|
122c27eabe
|
do not funnel non-dwarf sections in dwarf input prep pass
|
2025-07-28 16:22:23 -07:00 |
|
Ryan Fleury
|
48f5df2523
|
cleanup pass over elf parsing; base addr calculation?
|
2025-07-28 16:13:45 -07:00 |
|
Ryan Fleury
|
09f9cc25df
|
os/linux: move-file-path impl
|
2025-07-28 14:54:48 -07:00 |
|
Ryan Fleury
|
2e8c0875c8
|
only use type-derived sizes in eval ranges when the evaluation is an offset, not a value
|
2025-07-28 14:34:46 -07:00 |
|
Ryan Fleury
|
5134d1ce4c
|
adjust eval -> space range mapping to fix a few edge cases
|
2025-07-28 14:32:47 -07:00 |
|
Ryan Fleury
|
c22ecf8e71
|
output clearing path
|
2025-07-28 12:05:37 -07:00 |
|
Ryan Fleury
|
97b4abd6de
|
measure os file write helper success by bytes written - do not assume the write completes if the file handle is valid
|
2025-07-28 11:36:43 -07:00 |
|
Ryan Fleury
|
9b28ab68f2
|
adjust open user/project path to be more robust in cases of loading corrupted data on startup
|
2025-07-28 11:26:55 -07:00 |
|
Ryan Fleury
|
e3a79dae86
|
apply slash insensitivity to fuzzy matches
|
2025-07-27 21:02:34 -07:00 |
|
Ryan Fleury
|
7dca3fd954
|
os/gfx/win32: fix bad alloc size in new utf16 clipboard path
|
2025-07-27 20:02:18 -07:00 |
|
Ryan Fleury
|
2e14f34cc8
|
derefence pointer/reference evaluations when generating block tree, to match expected behavior, & what the string iterator does
|
2025-07-25 16:11:17 -07:00 |
|
Ryan Fleury
|
cb68abe844
|
packed bits test in mule
|
2025-07-25 15:31:22 -07:00 |
|
Ryan Fleury
|
163b79e4c0
|
decay bitfield types in casting path, allow casting to integer types
|
2025-07-25 15:29:34 -07:00 |
|
Ryan Fleury
|
393c291f63
|
reflect casting changes to call-cast style
|
2025-07-25 15:19:35 -07:00 |
|
Ryan Fleury
|
1c2855a314
|
unwrap decorative type operators on casts when building ops for casting, to allow for graceful enum casting; gracefully skip struct/enum symbol name prefixes
|
2025-07-25 15:17:39 -07:00 |
|
Ryan Fleury
|
1d67eb42a2
|
os win32 -> upgrade clipboard paths for unicode
|
2025-07-25 14:27:38 -07:00 |
|
Ryan Fleury
|
4d7088d321
|
do not pre-emptively exit the debug event loop on timeout unless we actually have debug strings
|
2025-07-25 14:21:31 -07:00 |
|
Ryan Fleury
|
b5accc9105
|
apply floating flag to tooltip correctly
|
2025-07-25 14:00:23 -07:00 |
|
Ryan Fleury
|
c43697fb18
|
fix type debug info table evaluations; fix preference for auto-hook-applied lhs evaluation when doing member/array accesses
|
2025-07-25 13:29:08 -07:00 |
|
Ryan Fleury
|
81b51446a4
|
cap maximum frame latency
|
2025-07-25 11:26:08 -07:00 |
|
Ryan Fleury
|
955a5f01ca
|
fix normalized path allocation
|
2025-07-23 17:28:14 -07:00 |
|
Ryan Fleury
|
66d5d93fc9
|
build path tree via non-case-mutated (non-normalized) src file paths in rdi build; still sanitize paths, but do not normalize them until we actually have to build the normalized file path map build
|
2025-07-23 17:18:54 -07:00 |
|
Ryan Fleury
|
45d1f8e58b
|
clear overwritten path on cfg writes
|
2025-07-23 16:24:34 -07:00 |
|
Ryan Fleury
|
051bacf124
|
reflect cast changes in cast-calls
|
2025-07-23 16:05:30 -07:00 |
|
Ryan Fleury
|
3ae3f94db0
|
split unsigned => signed casting case from shrinking conversion truncation cast path
|
2025-07-23 16:04:59 -07:00 |
|
Ryan Fleury
|
a776f53379
|
skip block group row unpack paths when we're doing the special case of a root block row generation
|
2025-07-23 15:20:41 -07:00 |
|
Ryan Fleury
|
cf9d736ff5
|
promote register space -> primary space, on space reads
|
2025-07-23 15:00:05 -07:00 |
|
Ryan Fleury
|
38f769c00d
|
only apply truncation to integer types, oops
|
2025-07-23 14:36:20 -07:00 |
|
Ryan Fleury
|
cd64d959ef
|
apply integer truncation operations on both sign/size changes, rather than just size
|
2025-07-23 14:31:51 -07:00 |
|
Ryan Fleury
|
8d1de1b24c
|
report user errors from ctrl thread more vigorously
|
2025-07-23 14:06:17 -07:00 |
|
Ryan Fleury
|
a85284793b
|
be more robust to user/project paths passed via command line to raddbg; do not interpret them as targets
|
2025-07-23 14:03:39 -07:00 |
|
Ryan Fleury
|
87fa6b9239
|
fix <64-bit integer eval stringification path, to not interpret too many bits
|
2025-07-23 13:26:23 -07:00 |
|
Ryan Fleury
|
6026ac16d4
|
fix call stack flickering; do not timeout early if we need to fall back to stale results after requesting new call stack compute
|
2025-07-23 10:38:59 -07:00 |
|
Ryan Fleury
|
64a0682611
|
fix processing of select-alls in watch tabnles
|
2025-07-23 10:34:27 -07:00 |
|
Ryan Fleury
|
fcf3e73f5f
|
demon/linux: thread resuming in dmn_ctrl_run
|
2025-07-17 18:51:40 -07:00 |
|
Ryan Fleury
|
6fb406d6c5
|
demon/linux: launch event info coverage, module path strings, pipe deferred debug info events first on dmn_ctrl_run
|
2025-07-17 18:05:00 -07:00 |
|
Ryan Fleury
|
d5380998a7
|
os/linux: fix rwlock cv waits
|
2025-07-17 16:32:12 -07:00 |
|
Ryan Fleury
|
145ad87967
|
fix incorrect font metrics in freetype font provider
|
2025-07-17 15:18:02 -07:00 |
|
Ryan Fleury
|
eba2aff0f0
|
demon/linux: process read/write
|
2025-07-17 14:46:31 -07:00 |
|
Ryan Fleury
|
3466779d41
|
demon/linux: kill, detach, process iteration
|
2025-07-17 14:45:08 -07:00 |
|
Ryan Fleury
|
2db6b826a1
|
demon/linux: launching events/entity builds; access synchronization
|
2025-07-17 14:31:57 -07:00 |
|
Ryan Fleury
|
0610d5ae13
|
demon/linux: pid extraction, module extraction, most of launching path
|
2025-07-17 14:08:44 -07:00 |
|