correctly register jit debugger exe; collect jit_debug_info into dmn win32; notes

This commit is contained in:
Ryan Fleury
2024-05-15 13:25:20 -07:00
parent 56afe8ca60
commit 364a2160af
3 changed files with 30 additions and 16 deletions
+17
View File
@@ -1242,6 +1242,23 @@ dmn_ctrl_attach(DMN_CtrlCtx *ctx, U32 pid)
{
result = 1;
dmn_w32_shared->new_process_pending = 1;
#if 0
// TODO(rjf): JIT debugging info
{
typedef struct JIT_DEBUG_INFO JIT_DEBUG_INFO;
struct JIT_DEBUG_INFO
{
DWORD dwSize;
DWORD dwProcessorArchitecture;
DWORD dwThreadID;
DWORD dwReserved0;
ULONG64 lpExceptionAddress;
ULONG64 lpExceptionRecord;
ULONG64 lpContextRecord;
};
}
#endif
}
return result;
}
+4 -2
View File
@@ -8720,9 +8720,11 @@ df_core_begin_frame(Arena *arena, DF_CmdList *cmds, F32 dt)
case DF_CoreCmdKind_RegisterAsJITDebugger:
{
#if OS_WINDOWS
String8 path_to_debugger_binary = os_string_from_system_path(scratch.arena, OS_SystemPath_Binary);
char filename_cstr[MAX_PATH] = {0};
GetModuleFileName(0, filename_cstr, sizeof(filename_cstr));
String8 debugger_binary_path = str8_cstring(filename_cstr);
String8 name8 = str8_lit("Debugger");
String8 data8 = push_str8f(scratch.arena, "%S --jit_pid:%%ld --jit_code:%%ld --jit_addr:0x%%p", path_to_debugger_binary);
String8 data8 = push_str8f(scratch.arena, "%S --jit_pid:%%ld --jit_code:%%ld --jit_addr:0x%%p", debugger_binary_path);
String16 name16 = str16_from_8(scratch.arena, name8);
String16 data16 = str16_from_8(scratch.arena, data8);
B32 likely_not_in_admin_mode = 0;
+9 -14
View File
@@ -5,20 +5,12 @@
//~ rjf: Frontend/UI Pass Tasks
//
// [ ] editing multiple bindings for commands
//
// [ ] n-row table selection, in watch window & other UIs, multi-selection
// ctrl+C
// [x] UI_NavActions, OS_Event -> UI_Event (single event stream)
//
// [x] better discoverability for view rules - have better help hover tooltip,
// info on arguments, and better autocomplete lister
//
// [x] source view -> floating margin/line-nums
// [ ] theme colors -> more explicit about e.g. opaque backgrounds vs. floating
// & scrollbars etc.
// [ ] target/breakpoint/watch-pin reordering
// [x] watch window reordering
// [x] standard way to filter
// [ ] visualize remapped files (via path map)
// [ ] theme lister -> fonts & font sizes
// [ ] font lister
@@ -34,9 +26,6 @@
// that you use to tag them. Just some way that would make it easier to
// focus on your own threads.
//
// [x] autocomplete lister should respect position in edited expression,
// tabbing through should autocomplete but not exit, etc.
//
// [ ] it would be nice to have "show in explorer" for right click on source
// file tab (opens explorer & selects the file)
//
@@ -44,8 +33,6 @@
// different color? can I turn it off? And why sometimes digits in number
// start with brighter color, but sometimes with darker - shouldn't it
// always have the same color ordering?
//
// [ ] pipe failure-to-launch errors back to frontend
////////////////////////////////
//~ rjf: Hot, High Priority Tasks (Complete Unusability, Crashes, Fire-Worthy)
@@ -391,7 +378,15 @@
////////////////////////////////
//~ rjf: Recently Completed Task Log
//
//
// [x] UI_NavActions, OS_Event -> UI_Event (single event stream)
// [x] better discoverability for view rules - have better help hover tooltip,
// info on arguments, and better autocomplete lister
// [x] source view -> floating margin/line-nums
// [x] watch window reordering
// [x] standard way to filter
// [x] autocomplete lister should respect position in edited expression,
// tabbing through should autocomplete but not exit, etc.
// [x] pipe failure-to-launch errors back to frontend
#ifndef RADDBG_H
#define RADDBG_H