pass over pre-emptive debug info conversion heuristic, to be friendlier to ue-style root project directories, with what feels like 1000s and 1000s of sub-directories with DLLs hidden in various folders

This commit is contained in:
Ryan Fleury
2024-11-13 14:40:08 -08:00
parent b03c1766c6
commit dcec3c07d9
4 changed files with 172 additions and 41 deletions
+18
View File
@@ -824,6 +824,22 @@ struct CTRL_ModuleImageInfoCache
CTRL_ModuleImageInfoCacheStripe *stripes;
};
////////////////////////////////
//~ rjf: Touched Debug Info Directory Cache
typedef struct CTRL_DbgDirNode CTRL_DbgDirNode;
struct CTRL_DbgDirNode
{
CTRL_DbgDirNode *first;
CTRL_DbgDirNode *last;
CTRL_DbgDirNode *next;
CTRL_DbgDirNode *prev;
CTRL_DbgDirNode *parent;
String8 name;
U64 search_count;
U64 child_count;
};
////////////////////////////////
//~ rjf: Wakeup Hook Function Types
@@ -880,6 +896,8 @@ struct CTRL_State
CTRL_MetaEvalArray user_meta_evals;
U64 exception_code_filters[(CTRL_ExceptionCodeKind_COUNT+63)/64];
U64 process_counter;
Arena *dbg_dir_arena;
CTRL_DbgDirNode *dbg_dir_root;
// rjf: user -> memstream ring buffer
U64 u2ms_ring_size;