mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-06 13:58:40 +00:00
debug info load gen, to easily key anything based on entire set of loaded debug info
This commit is contained in:
@@ -337,6 +337,13 @@ di2_close(DI2_Key key)
|
|||||||
////////////////////////////////
|
////////////////////////////////
|
||||||
//~ rjf: Debug Info Lookups
|
//~ rjf: Debug Info Lookups
|
||||||
|
|
||||||
|
internal U64
|
||||||
|
di2_load_gen(void)
|
||||||
|
{
|
||||||
|
U64 result = ins_atomic_u64_eval(&di2_shared->load_gen);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
internal DI2_KeyArray
|
internal DI2_KeyArray
|
||||||
di2_push_all_loaded_keys(Arena *arena)
|
di2_push_all_loaded_keys(Arena *arena)
|
||||||
{
|
{
|
||||||
@@ -804,6 +811,7 @@ di2_async_tick(void)
|
|||||||
MemoryCopyStruct(&node->rdi, &rdi_parsed);
|
MemoryCopyStruct(&node->rdi, &rdi_parsed);
|
||||||
node->completion_count += 1;
|
node->completion_count += 1;
|
||||||
node->working_count -= 1;
|
node->working_count -= 1;
|
||||||
|
ins_atomic_u64_inc_eval(&di2_shared->load_gen);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1062,6 +1070,9 @@ di2_search_artifact_create(String8 key, U64 gen, U64 *requested_gen, B32 *retry_
|
|||||||
U64 dst_idx = n->base_idx + range.min;
|
U64 dst_idx = n->base_idx + range.min;
|
||||||
MemoryCopy(&items.v[dst_idx], n->v, sizeof(n->v[0]) * dim_1u64(range));
|
MemoryCopy(&items.v[dst_idx], n->v, sizeof(n->v[0]) * dim_1u64(range));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//- rjf: sort items
|
||||||
|
|
||||||
}
|
}
|
||||||
scratch_end(scratch);
|
scratch_end(scratch);
|
||||||
access_close(access);
|
access_close(access);
|
||||||
|
|||||||
@@ -193,6 +193,7 @@ typedef struct DI2_Shared DI2_Shared;
|
|||||||
struct DI2_Shared
|
struct DI2_Shared
|
||||||
{
|
{
|
||||||
Arena *arena;
|
Arena *arena;
|
||||||
|
U64 load_gen;
|
||||||
|
|
||||||
// rjf: key -> path cache
|
// rjf: key -> path cache
|
||||||
U64 key2path_slots_count;
|
U64 key2path_slots_count;
|
||||||
@@ -255,6 +256,7 @@ internal void di2_close(DI2_Key key);
|
|||||||
////////////////////////////////
|
////////////////////////////////
|
||||||
//~ rjf: Debug Info Lookups
|
//~ rjf: Debug Info Lookups
|
||||||
|
|
||||||
|
internal U64 di2_load_gen(void);
|
||||||
internal DI2_KeyArray di2_push_all_loaded_keys(Arena *arena);
|
internal DI2_KeyArray di2_push_all_loaded_keys(Arena *arena);
|
||||||
internal RDI_Parsed *di2_rdi_from_key(Access *access, DI2_Key key, B32 high_priority, U64 endt_us);
|
internal RDI_Parsed *di2_rdi_from_key(Access *access, DI2_Key key, B32 high_priority, U64 endt_us);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user