Commit Graph

116 Commits

Author SHA1 Message Date
Ryan Fleury ab9885bc7d fix clang build 2025-03-25 16:54:12 -07:00
Ryan Fleury c4f4b5ff01 merge 2025-03-25 16:21:51 -07:00
Ryan Fleury cc4c889a99 bump format encoding version; add breakpad converter to ci; remove unused code 2025-03-21 11:39:53 -07:00
Ryan Fleury 4316325b33 demon win32: only alloc console when launching target if the exe is not a windows gui pe subsystem 2025-03-19 16:08:29 -07:00
Nikita Smith 6c5d2a05cb moved platform depended code from OS layer to linkers IO 2025-02-25 14:41:34 -08:00
Nikita Smith d5ab121183 pre-allocate file size before write 2025-02-25 14:41:34 -08:00
Nikita Smith bbce89eada added /RAD_WRITE_TEMP_FILES
When enabled linker writes image and debug info to temporary files
and renames them after all writes are done.
2025-02-25 14:41:34 -08:00
Ryan Fleury 4f99a76ace commit window placement/etc. to cfg tree, pass through all monitor/pos/size/fullscreen/maximize info to initialization 2025-02-21 10:57:32 -08:00
Ryan Fleury cc966deb7c eliminate 'watch' as a view ui rule, move formally into just being a regular view ui build. hook up user file saving. fix metadesk parser - newlines must terminate *all* active implicit set parsing work. 2025-02-20 17:25:38 -08:00
Ryan Fleury a8f72dd5f1 progress on per-view searching operation - will be specialized & used for replacements for finding text, for going to line/address, and filtering in query views 2025-02-19 11:33:16 -08:00
Ryan Fleury 9805f8cd20 begin work on lister-flavored watch windows; begin on using that for the query ui 2025-02-19 08:37:34 -08:00
Nikita Smith 409905c983 yank out shared mutex impl
Initially shared mutex was needed to lock cores so thread pool
executes one parallel for at a time but on machine with high core count
we cant saturate processor all the time so we switched to shared semaphore
and block thread when all cores are busy.
2025-01-25 11:46:25 -08:00
Ryan Fleury 16a717d684 further elimination of entity-based code; more simplification/moving to cfg; begin sketching out expanded eval-viz block tree, such that each block can have its own table topology (will be useful to collapse/simplify/expand the capabilities of watch views) 2025-01-22 09:22:06 -08:00
Nikita Smith e1e7fb745e win32 shared mutex impl and linux stubs 2025-01-20 21:36:43 -08:00
Ryan Fleury 6ce8046029 part 1: new cfg data structure & caches to replace rd_entity, rd_window, rd_panel, rd_view, etc. 2025-01-09 17:31:02 -08:00
Nikita Smith 0d0a6d3980 fixed compile error in Linux entry point 2025-01-08 03:26:04 -08:00
Ryan Fleury 8f91ec4f88 fix __va_args__ nonsense in rdi_from_dwarf; fix incorrect mask check in linux os_file_open 2024-12-16 11:41:23 -08:00
Ryan Fleury ac54281062 fix nccalcsize in fullscreen mode 2024-12-16 10:59:35 -08:00
alektron 0c86580e1e Further simplify WM_NCCALCSIZE handling; 2024-12-01 08:21:58 -08:00
alektron b4cbaa0171 Simplify borderless window code and improve resizing behavior and style (e.g. dropshadow); 2024-12-01 08:21:58 -08:00
Ryan Fleury adbd7fbc97 fix is-zoomed behavior in nccalcsize 2024-11-20 10:44:54 -08:00
Ryan Fleury cb4232469e adjust nccalcsize window message; we just need to coax windows into doing the copy in order to avoid resize artifacts. still not perfect, can get into a weird state, and we may need to do more full size calculation in some cases 2024-11-19 16:59:20 -08:00
Nikita Smith bd4f82c8e8 cursed early return 2024-11-08 16:46:11 -08:00
Nikita Smith e297460697 add necessary Linux impls for linker
NOTE: Current OS API for semaphores doesn't work well with Linux/pthreads
way, for example, on Linux it's up to user program to allocate shared memory
and store there sem_t and detect when to release it. (Windows does this under
the hood when process that created shared semaphore exits)
2024-11-08 11:43:05 -08:00
Nikita Smith d114a0e961 tidy up guid on linux 2024-11-08 11:43:05 -08:00
Ryan Fleury 158dd742ad eliminate entry point 'mode'/type; just gather argc/argv as part of command line parse 2024-11-08 10:33:28 -08:00
Nikita Smith daeb08e79f moved os_folder_exists to the main layer and deleted win32 layer from linker folder 2024-11-07 13:55:15 -08:00
Nikita Smith ef5287d2a9 switch to os_full_path_from_path 2024-11-07 13:41:47 -08:00
Nikita Smith db04792073 moved getter for process start time w32 2024-11-07 13:33:37 -08:00
Nikita Smith 214be8c433 moved Guid struct and related helpers to base 2024-11-07 11:54:25 -08:00
Nikita Smith 0dd05169ee add ability to override entry point type 2024-11-07 11:54:25 -08:00
Ryan Fleury 1621e504ce first half pass at new dbgi fuzzy searching functionality; distributes search amongst sub-tasks 2024-11-05 15:07:06 -08:00
Ryan Fleury 44b8c9e87c eliminate r/w lock promotion concept 2024-11-04 13:30:10 -08:00
Nikita Smith e085dae636 pass over atomic operations
- use cast to volatile trick for atomic loads on x64 windows
- removed unnecessary includes on windows
- upgraded clang and gcc code paths to use modern atomics

Removed WIN32_LEAN_AND_MEAN because we were already compiling without it
and there is code path in os_gfx_win32.c that relies on including full
windows.h
2024-10-30 15:42:39 -07:00
Ryan Fleury d0b97a3010 first pass at more comprehensive async layer, for replacing task system & providing single mechanism for async work, which is currently done ad-hoc in various layers 2024-10-29 16:27:21 -07:00
Ryan Fleury 4769d0a8d4 narrow scope of name resolution for debugger collections; default launching to not attach to child processes, set up msgs to parameterize this 2024-10-28 15:37:28 -07:00
Ryan Fleury e376ad8113 stdout/stderr/stdin file path overrides for targets 2024-10-17 11:25:47 -07:00
Nikita Smith 2b407b5861 changed write file to accept 1MiB blocks to improve file write speed on windows 2024-10-16 22:27:46 -07:00
Martins Mozeiko 9c016004c2 Setup symbol path in win32 exception handler to the .exe folder
Otherwise it was trying lookup .pdb files only in the current folder,
as that is how .exe's are built (/pdbaltpath). This change now makes
exception handler to load .pdb from the same folder as where .exe is.
2024-10-16 14:13:26 -07:00
Ryan Fleury 4671458e8e further debugging / logging / work on tester, trynig to get to the bottom of nondeterministic rdi generation 2024-10-15 17:41:18 -07:00
Ryan Fleury e61dfd793a stdout redirection support in os command line launch helper; do rdi dumps in determinism test 2024-10-15 12:20:25 -07:00
Ryan Fleury 97abec11a2 begin setting up tester for automated tests 2024-10-15 11:46:07 -07:00
Ryan Fleury 0d50157239 fixes with path map application; further completeness of file drop completion menu; fix of set-next-statement 2024-10-10 12:03:11 -07:00
Ryan Fleury 0c6912ed78 sketch out meta-evaluation for file path maps; have an extra drop-completion ui step when drag/dropping exes, so you can easily drag/drop exes from explorer and add them as targets (the likely common case), but also allowing viewing them with the memory viewer 2024-10-10 09:03:38 -07:00
Ryan Fleury 9c5d9caa32 pass over help menu; typeof in eval 2024-10-10 07:44:26 -07:00
Ryan Fleury 3720634a62 scroll output to bottom by default (not yet configurable) 2024-10-07 17:45:57 -07:00
Ryan Fleury 534a727b7c unminimize on exception hit 2024-10-07 17:33:10 -07:00
Ryan Fleury e825c0f5b5 keep 64mb reserve size default if possible with large pages enabling 2024-09-17 13:46:11 -07:00
Ryan Fleury 5dd89f350d --large_pages option; allow dynamic override of arena defaults 2024-09-17 13:41:56 -07:00
Ryan Fleury 4b382777e9 fix debug engine incorrectly using visual run state to soft halt, when ctrl thread did not necessarily report it was running; was leading to 'phantom halts'; other small fixes, dead code elimination, and begin sketching out proper cross-window drag/drop 2024-09-16 17:09:41 -07:00