mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-06-23 04:04:59 -07:00
adjust conversion visualization; strip out old profiling markup
This commit is contained in:
@@ -1802,6 +1802,7 @@ df_entity_alloc(DF_StateDeltaHistory *hist, DF_Entity *parent, DF_EntityKind kin
|
||||
df_state->entities_id_gen += 1;
|
||||
entity->id = df_state->entities_id_gen;
|
||||
entity->generation += 1;
|
||||
entity->alloc_time_us = os_now_microseconds();
|
||||
|
||||
// rjf: dirtify caches
|
||||
df_state->kind_alloc_gens[kind] += 1;
|
||||
|
||||
@@ -430,6 +430,7 @@ struct DF_Entity
|
||||
DF_EntityFlags flags;
|
||||
DF_EntityID id;
|
||||
U64 generation;
|
||||
U64 alloc_time_us;
|
||||
B32 deleted;
|
||||
F32 alive_t;
|
||||
|
||||
@@ -1226,6 +1227,7 @@ read_only global DF_Entity df_g_nil_entity =
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
|
||||
// rjf: allocationless, simple equipment
|
||||
{0},
|
||||
|
||||
+12
-9
@@ -4408,17 +4408,20 @@ df_window_update_and_render(Arena *arena, OS_EventList *events, DF_Window *ws, D
|
||||
for(DF_EntityNode *n = tasks.first; n != 0; n = n->next)
|
||||
{
|
||||
DF_Entity *task = n->entity;
|
||||
String8 raddbg_path = task->name;
|
||||
String8 raddbg_name = str8_skip_last_slash(raddbg_path);
|
||||
String8 task_text = push_str8f(scratch.arena, "Creating %S...", raddbg_name);
|
||||
UI_Key key = ui_key_from_stringf(ui_key_zero(), "task_%p", task);
|
||||
UI_Box *box = ui_build_box_from_key(UI_BoxFlag_DrawHotEffects|UI_BoxFlag_DrawText|UI_BoxFlag_DrawBorder|UI_BoxFlag_DrawBackground|UI_BoxFlag_Clickable, key);
|
||||
UI_Signal sig = ui_signal_from_box(box);
|
||||
if(ui_hovering(sig)) UI_Tooltip
|
||||
if(task->alloc_time_us + 500000 < os_now_microseconds())
|
||||
{
|
||||
ui_label(raddbg_path);
|
||||
String8 raddbg_path = task->name;
|
||||
String8 raddbg_name = str8_skip_last_slash(raddbg_path);
|
||||
String8 task_text = push_str8f(scratch.arena, "Creating %S...", raddbg_name);
|
||||
UI_Key key = ui_key_from_stringf(ui_key_zero(), "task_%p", task);
|
||||
UI_Box *box = ui_build_box_from_key(UI_BoxFlag_DrawHotEffects|UI_BoxFlag_DrawText|UI_BoxFlag_DrawBorder|UI_BoxFlag_DrawBackground|UI_BoxFlag_Clickable, key);
|
||||
UI_Signal sig = ui_signal_from_box(box);
|
||||
if(ui_hovering(sig)) UI_Tooltip
|
||||
{
|
||||
ui_label(raddbg_path);
|
||||
}
|
||||
ui_box_equip_display_string(box, task_text);
|
||||
}
|
||||
ui_box_equip_display_string(box, task_text);
|
||||
}
|
||||
scratch_end(scratch);
|
||||
}
|
||||
|
||||
@@ -1322,7 +1322,6 @@ cons_type_list_push(Arena *arena, CONS_TypeList *list, CONS_Type *type){
|
||||
|
||||
static CONS_Symbol*
|
||||
cons_symbol_handle_from_user_id(CONS_Root *root, U64 symbol_user_id, U64 symbol_user_id_hash){
|
||||
ProfBeginFunction();
|
||||
CONS__U64ToPtrLookup lookup = {0};
|
||||
cons__u64toptr_lookup(&root->symbol_map, symbol_user_id, symbol_user_id_hash, &lookup);
|
||||
|
||||
@@ -1337,13 +1336,11 @@ cons_symbol_handle_from_user_id(CONS_Root *root, U64 symbol_user_id, U64 symbol_
|
||||
cons__u64toptr_insert(root->arena, &root->symbol_map, symbol_user_id, symbol_user_id_hash, &lookup, result);
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
static void
|
||||
cons_symbol_set_info(CONS_Root *root, CONS_Symbol *symbol, CONS_SymbolInfo *info){
|
||||
ProfBeginFunction();
|
||||
CONS_SymbolKind kind = info->kind;
|
||||
|
||||
if (symbol->kind != CONS_SymbolKind_NULL){
|
||||
@@ -1416,7 +1413,7 @@ cons_symbol_set_info(CONS_Root *root, CONS_Symbol *symbol, CONS_SymbolInfo *info
|
||||
map = cons__name_map_for_kind(root, RADDBG_NameMapKind_Procedures);
|
||||
}break;
|
||||
}
|
||||
if(map != 0) ProfScope("save name map")
|
||||
if(map != 0)
|
||||
{
|
||||
cons__name_map_add_pair(root, map, symbol->name, symbol->idx);
|
||||
}
|
||||
@@ -1428,14 +1425,12 @@ cons_symbol_set_info(CONS_Root *root, CONS_Symbol *symbol, CONS_SymbolInfo *info
|
||||
cons__name_map_add_pair(root, map, symbol->link_name, symbol->idx);
|
||||
}
|
||||
}
|
||||
ProfEnd();
|
||||
}
|
||||
|
||||
// scopes
|
||||
|
||||
static CONS_Scope*
|
||||
cons_scope_handle_from_user_id(CONS_Root *root, U64 scope_user_id, U64 scope_user_id_hash){
|
||||
ProfBeginFunction();
|
||||
CONS__U64ToPtrLookup lookup = {0};
|
||||
cons__u64toptr_lookup(&root->scope_map, scope_user_id, scope_user_id_hash, &lookup);
|
||||
|
||||
@@ -1451,7 +1446,6 @@ cons_scope_handle_from_user_id(CONS_Root *root, U64 scope_user_id, U64 scope_use
|
||||
cons__u64toptr_insert(root->arena, &root->scope_map, scope_user_id, scope_user_id_hash, &lookup, result);
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
@@ -1485,7 +1479,6 @@ cons_scope_add_voff_range(CONS_Root *root, CONS_Scope *scope, U64 voff_first, U6
|
||||
|
||||
static CONS_Local*
|
||||
cons_local_handle_from_user_id(CONS_Root *root, U64 local_user_id, U64 local_user_id_hash){
|
||||
ProfBeginFunction();
|
||||
CONS__U64ToPtrLookup lookup = {0};
|
||||
cons__u64toptr_lookup(&root->local_map, local_user_id, local_user_id_hash, &lookup);
|
||||
|
||||
@@ -1498,7 +1491,6 @@ cons_local_handle_from_user_id(CONS_Root *root, U64 local_user_id, U64 local_use
|
||||
cons__u64toptr_insert(root->arena, &root->local_map, local_user_id, local_user_id_hash, &lookup, result);
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
@@ -1711,14 +1703,12 @@ cons__type_udt_from_record_type(CONS_Root *root, CONS_Type *type){
|
||||
|
||||
static void
|
||||
cons__scope_recursive_set_symbol(CONS_Scope *scope, CONS_Symbol *symbol){
|
||||
ProfBeginFunction();
|
||||
scope->symbol = symbol;
|
||||
for (CONS_Scope *node = scope->first_child;
|
||||
node != 0;
|
||||
node = node->next_sibling){
|
||||
cons__scope_recursive_set_symbol(node, symbol);
|
||||
}
|
||||
ProfEnd();
|
||||
}
|
||||
|
||||
// name maps
|
||||
@@ -1739,7 +1729,6 @@ cons__name_map_for_kind(CONS_Root *root, RADDBG_NameMapKind kind){
|
||||
|
||||
static void
|
||||
cons__name_map_add_pair(CONS_Root *root, CONS__NameMap *map, String8 string, U32 idx){
|
||||
ProfBeginFunction();
|
||||
|
||||
// hash
|
||||
U64 hash = raddbg_hash(string.str, string.size);
|
||||
@@ -1796,7 +1785,6 @@ cons__name_map_add_pair(CONS_Root *root, CONS__NameMap *map, String8 string, U32
|
||||
match->idx_count += 1;
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
}
|
||||
|
||||
// u64 to ptr map
|
||||
@@ -1830,7 +1818,6 @@ cons__u64toptr_lookup(CONS__U64ToPtrMap *map, U64 key, U64 hash, CONS__U64ToPtrL
|
||||
static void
|
||||
cons__u64toptr_insert(Arena *arena, CONS__U64ToPtrMap *map, U64 key, U64 hash,
|
||||
CONS__U64ToPtrLookup *lookup, void *ptr){
|
||||
ProfBeginFunction();
|
||||
if (lookup->fill_node != 0){
|
||||
CONS__U64ToPtrNode *node = lookup->fill_node;
|
||||
U32 k = lookup->fill_k;
|
||||
@@ -1851,7 +1838,6 @@ cons__u64toptr_insert(Arena *arena, CONS__U64ToPtrMap *map, U64 key, U64 hash,
|
||||
map->pair_count += 1;
|
||||
map->bucket_collision_count += (node->next != 0);
|
||||
}
|
||||
ProfEnd();
|
||||
}
|
||||
|
||||
// str8 to ptr map
|
||||
@@ -1865,7 +1851,6 @@ cons__str8toptr_init(Arena *arena, CONS__Str8ToPtrMap *map, U64 bucket_count)
|
||||
|
||||
static void*
|
||||
cons__str8toptr_lookup(CONS__Str8ToPtrMap *map, String8 key, U64 hash){
|
||||
ProfBeginFunction();
|
||||
void *result = 0;
|
||||
U64 bucket_idx = hash%map->buckets_count;
|
||||
for (CONS__Str8ToPtrNode *node = map->buckets[bucket_idx];
|
||||
@@ -1876,13 +1861,11 @@ cons__str8toptr_lookup(CONS__Str8ToPtrMap *map, String8 key, U64 hash){
|
||||
break;
|
||||
}
|
||||
}
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
static void
|
||||
cons__str8toptr_insert(Arena *arena, CONS__Str8ToPtrMap *map, String8 key, U64 hash, void *ptr){
|
||||
ProfBeginFunction();
|
||||
U64 bucket_idx = hash%map->buckets_count;
|
||||
|
||||
CONS__Str8ToPtrNode *node = push_array(arena, CONS__Str8ToPtrNode, 1);
|
||||
@@ -1893,7 +1876,6 @@ cons__str8toptr_insert(Arena *arena, CONS__Str8ToPtrMap *map, String8 key, U64 h
|
||||
node->ptr = ptr;
|
||||
map->bucket_collision_count += (node->next != 0);
|
||||
map->pair_count += 1;
|
||||
ProfEnd();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -416,11 +416,10 @@ pdbconv_type_resolve_fwd(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
|
||||
static CONS_Type*
|
||||
pdbconv_type_resolve_itype(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
ProfBeginFunction();
|
||||
B32 is_basic = (itype < 0x1000);
|
||||
|
||||
// convert fwd references to real types
|
||||
if(is_basic) ProfScope("fwd map get")
|
||||
if(is_basic)
|
||||
{
|
||||
CV_TypeId resolved_itype = pdbconv_type_fwd_map_get(&ctx->fwd_map, itype);
|
||||
if(resolved_itype != 0)
|
||||
@@ -430,19 +429,16 @@ pdbconv_type_resolve_itype(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
}
|
||||
|
||||
// type handle from id
|
||||
ProfBegin("id -> handle");
|
||||
CONS_Type *result = cons_type_from_id(ctx->root, itype, itype);
|
||||
ProfEnd();
|
||||
|
||||
// basic type
|
||||
if(result == 0 && is_basic) ProfScope("basic type")
|
||||
if(result == 0 && is_basic)
|
||||
{
|
||||
result = pdbconv_type_cons_basic(ctx, itype);
|
||||
}
|
||||
|
||||
// leaf decode
|
||||
if(result == 0 && (ctx->leaf->itype_first <= itype && itype < ctx->leaf->itype_opl))
|
||||
ProfScope("leaf decode")
|
||||
{
|
||||
result = pdbconv_type_cons_leaf_record(ctx, itype);
|
||||
}
|
||||
@@ -453,7 +449,6 @@ pdbconv_type_resolve_itype(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
result = cons_type_nil(ctx->root);
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
@@ -1197,8 +1192,6 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
switch (range->hdr.kind){
|
||||
case CV_LeafKind_MODIFIER:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_MODIFIER");
|
||||
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafModifier) <= cap){
|
||||
CV_LeafModifier *modifier = (CV_LeafModifier*)first;
|
||||
@@ -1219,14 +1212,10 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
result = direct_type;
|
||||
}
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_POINTER:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_POINTER");
|
||||
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafPointer) <= cap){
|
||||
CV_LeafPointer *pointer = (CV_LeafPointer*)first;
|
||||
@@ -1269,14 +1258,10 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
result = cons_type_modifier(ctx->root, ptr_type, modifier_flags);
|
||||
}
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_PROCEDURE:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_PROCEDURE");
|
||||
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafProcedure) <= cap){
|
||||
CV_LeafProcedure *procedure = (CV_LeafProcedure*)first;
|
||||
@@ -1294,14 +1279,10 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
|
||||
scratch_end(scratch);
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_MFUNCTION:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_MFUNCTION");
|
||||
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafMFunction) <= cap){
|
||||
CV_LeafMFunction *mfunction = (CV_LeafMFunction*)first;
|
||||
@@ -1327,25 +1308,20 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
|
||||
scratch_end(scratch);
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_BITFIELD:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_BITFIELD");
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafBitField) <= cap){
|
||||
CV_LeafBitField *bit_field = (CV_LeafBitField*)first;
|
||||
CONS_Type *direct_type = pdbconv_type_resolve_and_check(ctx, bit_field->itype);
|
||||
result = cons_type_bitfield(ctx->root, direct_type, bit_field->pos, bit_field->len);
|
||||
}
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_ARRAY:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_ARRAY");
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafArray) <= cap){
|
||||
CV_LeafArray *array = (CV_LeafArray*)first;
|
||||
@@ -1365,14 +1341,11 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
// build type
|
||||
result = cons_type_array(ctx->root, direct_type, count);
|
||||
}
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_CLASS:
|
||||
case CV_LeafKind_STRUCTURE:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_CLASS/CV_LeafKind_STRUCTURE");
|
||||
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafStruct) <= cap){
|
||||
CV_LeafStruct *lf_struct = (CV_LeafStruct*)first;
|
||||
@@ -1414,13 +1387,11 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
}
|
||||
}
|
||||
}
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_CLASS2:
|
||||
case CV_LeafKind_STRUCT2:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_CLASS2/CV_LeafKind_STRUCT2");
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafStruct2) <= cap){
|
||||
CV_LeafStruct2 *lf_struct = (CV_LeafStruct2*)first;
|
||||
@@ -1467,12 +1438,10 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
}
|
||||
}
|
||||
}
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_UNION:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_UNION");
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafUnion) <= cap){
|
||||
CV_LeafUnion *lf_union = (CV_LeafUnion*)first;
|
||||
@@ -1507,12 +1476,10 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
}
|
||||
}
|
||||
}
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
case CV_LeafKind_ENUM:
|
||||
{
|
||||
ProfBegin("CV_LeafKind_ENUM");
|
||||
// TODO(allen): error if bad range
|
||||
if (sizeof(CV_LeafEnum) <= cap){
|
||||
CV_LeafEnum *lf_enum = (CV_LeafEnum*)first;
|
||||
@@ -1542,7 +1509,6 @@ pdbconv_type_cons_leaf_record(PDBCONV_Ctx *ctx, CV_TypeId itype){
|
||||
}
|
||||
}
|
||||
}
|
||||
ProfEnd();
|
||||
}break;
|
||||
|
||||
// discard cases - we currently discard these these intentionally
|
||||
@@ -1922,7 +1888,8 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
// current state
|
||||
CONS_Scope *current_scope = pdbconv_symbol_current_scope(ctx);
|
||||
CONS_Symbol *current_procedure = 0;
|
||||
if (current_scope != 0){
|
||||
if(current_scope != 0)
|
||||
{
|
||||
current_procedure = current_scope->symbol;
|
||||
}
|
||||
|
||||
@@ -1932,7 +1899,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
default:{}break;
|
||||
|
||||
case CV_SymKind_END:
|
||||
ProfScope("CV_SymKind_END")
|
||||
//ProfScope("CV_SymKind_END")
|
||||
{
|
||||
// pop scope stack
|
||||
pdbconv_symbol_pop_scope(ctx);
|
||||
@@ -1941,7 +1908,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_FRAMEPROC:
|
||||
ProfScope("CV_SymKind_FRAMEPROC")
|
||||
//ProfScope("CV_SymKind_FRAMEPROC")
|
||||
{
|
||||
if (sizeof(CV_SymFrameproc) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -1952,7 +1919,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_BLOCK32:
|
||||
ProfScope("CV_SymKind_BLOCK32")
|
||||
//ProfScope("CV_SymKind_BLOCK32")
|
||||
{
|
||||
if (sizeof(CV_SymBlock32) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -1980,7 +1947,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
|
||||
case CV_SymKind_LDATA32:
|
||||
case CV_SymKind_GDATA32:
|
||||
ProfScope("CV_SymKind_LDATA32/CV_SymKind_GDATA32")
|
||||
//ProfScope("CV_SymKind_LDATA32/CV_SymKind_GDATA32")
|
||||
{
|
||||
if (sizeof(CV_SymData32) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2043,7 +2010,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
|
||||
case CV_SymKind_LPROC32:
|
||||
case CV_SymKind_GPROC32:
|
||||
ProfScope("CV_SymKind_LPROC32/CV_SymKind_GPROC32")
|
||||
//ProfScope("CV_SymKind_LPROC32/CV_SymKind_GPROC32")
|
||||
{
|
||||
if (sizeof(CV_SymProc32) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2225,7 +2192,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
|
||||
case CV_SymKind_LTHREAD32:
|
||||
case CV_SymKind_GTHREAD32:
|
||||
ProfScope("CV_SymKind_LTHREAD32/CV_SymKind_GTHREAD32")
|
||||
//ProfScope("CV_SymKind_LTHREAD32/CV_SymKind_GTHREAD32")
|
||||
{
|
||||
if (sizeof(CV_SymThread32) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2278,7 +2245,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_LOCAL:
|
||||
ProfScope("CV_SymKind_LOCAL")
|
||||
//ProfScope("CV_SymKind_LOCAL")
|
||||
{
|
||||
if (sizeof(CV_SymLocal) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2337,7 +2304,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_DEFRANGE_REGISTER:
|
||||
ProfScope("CV_SymKind_DEFRANGE_REGISTER")
|
||||
//ProfScope("CV_SymKind_DEFRANGE_REGISTER")
|
||||
{
|
||||
if (sizeof(CV_SymDefrangeRegister) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2370,7 +2337,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_DEFRANGE_FRAMEPOINTER_REL:
|
||||
ProfScope("CV_SymKind_DEFRANGE_FRAMEPOINTER_REL")
|
||||
//ProfScope("CV_SymKind_DEFRANGE_FRAMEPOINTER_REL")
|
||||
{
|
||||
if (sizeof(CV_SymDefrangeFramepointerRel) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2410,7 +2377,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_DEFRANGE_SUBFIELD_REGISTER:
|
||||
ProfScope("CV_SymKind_DEFRANGE_SUBFIELD_REGISTER")
|
||||
//ProfScope("CV_SymKind_DEFRANGE_SUBFIELD_REGISTER")
|
||||
{
|
||||
if (sizeof(CV_SymDefrangeSubfieldRegister) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2447,7 +2414,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_DEFRANGE_FRAMEPOINTER_REL_FULL_SCOPE:
|
||||
ProfScope("CV_SymKind_DEFRANGE_FRAMEPOINTER_REL_FULL_SCOPE")
|
||||
//ProfScope("CV_SymKind_DEFRANGE_FRAMEPOINTER_REL_FULL_SCOPE")
|
||||
{
|
||||
if (sizeof(CV_SymDefrangeFramepointerRelFullScope) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2483,7 +2450,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_DEFRANGE_REGISTER_REL:
|
||||
ProfScope("CV_SymKind_DEFRANGE_REGISTER_REL")
|
||||
//ProfScope("CV_SymKind_DEFRANGE_REGISTER_REL")
|
||||
{
|
||||
if (sizeof(CV_SymDefrangeRegisterRel) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2525,7 +2492,7 @@ pdbconv_symbol_cons(PDBCONV_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id){
|
||||
}break;
|
||||
|
||||
case CV_SymKind_FILESTATIC:
|
||||
ProfScope("CV_SymKind_FILESTATIC")
|
||||
//ProfScope("CV_SymKind_FILESTATIC")
|
||||
{
|
||||
if (sizeof(CV_SymFileStatic) > cap){
|
||||
// TODO(allen): error
|
||||
@@ -2656,7 +2623,6 @@ pdbconv_symbol_frame_proc_write(PDBCONV_Ctx *ctx,CONS_Symbol *key,PDBCONV_FrameP
|
||||
|
||||
static PDBCONV_FrameProcData*
|
||||
pdbconv_symbol_frame_proc_read(PDBCONV_Ctx *ctx, CONS_Symbol *key){
|
||||
ProfBeginFunction();
|
||||
U64 key_int = IntFromPtr(key);
|
||||
PDBCONV_FrameProcMap *map = &ctx->frame_proc_map;
|
||||
U32 bucket_idx = key_int%map->buckets_count;
|
||||
@@ -2672,7 +2638,6 @@ pdbconv_symbol_frame_proc_read(PDBCONV_Ctx *ctx, CONS_Symbol *key){
|
||||
}
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
@@ -2747,7 +2712,6 @@ pdbconv_known_global_hash(String8 name, U64 voff){
|
||||
|
||||
static B32
|
||||
pdbconv_known_global_lookup(PDBCONV_KnownGlobalSet *set, String8 name, U64 voff){
|
||||
ProfBeginFunction();
|
||||
U64 hash = pdbconv_known_global_hash(name, voff);
|
||||
U64 bucket_idx = hash%set->buckets_count;
|
||||
|
||||
@@ -2764,13 +2728,11 @@ pdbconv_known_global_lookup(PDBCONV_KnownGlobalSet *set, String8 name, U64 voff)
|
||||
}
|
||||
|
||||
B32 result = (match != 0);
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
static void
|
||||
pdbconv_known_global_insert(Arena *arena, PDBCONV_KnownGlobalSet *set, String8 name, U64 voff){
|
||||
ProfBeginFunction();
|
||||
U64 hash = pdbconv_known_global_hash(name, voff);
|
||||
U64 bucket_idx = hash%set->buckets_count;
|
||||
|
||||
@@ -2795,7 +2757,6 @@ pdbconv_known_global_insert(Arena *arena, PDBCONV_KnownGlobalSet *set, String8 n
|
||||
set->global_count += 1;
|
||||
set->bucket_collision_count += (node->next != 0);
|
||||
}
|
||||
ProfEnd();
|
||||
}
|
||||
|
||||
// location info helpers
|
||||
@@ -2807,7 +2768,6 @@ pdbconv_location_from_addr_reg_off(PDBCONV_Ctx *ctx,
|
||||
U32 reg_byte_pos,
|
||||
S64 offset,
|
||||
B32 extra_indirection){
|
||||
ProfBeginFunction();
|
||||
CONS_Location *result = 0;
|
||||
if (0 <= offset && offset <= (S64)max_U16){
|
||||
if (extra_indirection){
|
||||
@@ -2832,7 +2792,6 @@ pdbconv_location_from_addr_reg_off(PDBCONV_Ctx *ctx,
|
||||
result = cons_location_addr_bytecode_stream(ctx->root, &bytecode);
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
@@ -2949,7 +2908,6 @@ pdbconv_link_name_save(Arena *arena, PDBCONV_LinkNameMap *map, U64 voff, String8
|
||||
|
||||
static String8
|
||||
pdbconv_link_name_find(PDBCONV_LinkNameMap *map, U64 voff){
|
||||
ProfBeginFunction();
|
||||
U64 hash = (voff >> 3) ^ ((7 & voff) << 6);
|
||||
U64 bucket_idx = hash%map->buckets_count;
|
||||
|
||||
@@ -2963,7 +2921,6 @@ pdbconv_link_name_find(PDBCONV_LinkNameMap *map, U64 voff){
|
||||
}
|
||||
}
|
||||
|
||||
ProfEnd();
|
||||
return(result);
|
||||
}
|
||||
|
||||
|
||||
@@ -777,8 +777,6 @@ pdb_leaf_data_from_tpi(PDB_TpiParsed *tpi){
|
||||
static CV_TypeIdArray
|
||||
pdb_tpi_itypes_from_name(Arena *arena, PDB_TpiHashParsed *tpi_hash, CV_LeafParsed *leaf,
|
||||
String8 name, B32 compare_unique_name, U32 output_cap){
|
||||
ProfBegin("pdb_tpi_itypes_from_name");
|
||||
|
||||
U32 hash = pdb_string_hash1(name);
|
||||
U32 bucket_idx = ((tpi_hash->bucket_mask != 0) ?
|
||||
hash&tpi_hash->bucket_mask :
|
||||
@@ -964,16 +962,12 @@ pdb_tpi_itypes_from_name(Arena *arena, PDB_TpiHashParsed *tpi_hash, CV_LeafParse
|
||||
|
||||
scratch_end(scratch);
|
||||
|
||||
ProfEnd();
|
||||
|
||||
return(result);
|
||||
}
|
||||
|
||||
static CV_TypeId
|
||||
pdb_tpi_first_itype_from_name(PDB_TpiHashParsed *tpi_hash, CV_LeafParsed *tpi_leaf,
|
||||
String8 name, B32 compare_unique_name){
|
||||
ProfBegin("pdb_tpi_first_itype_from_name");
|
||||
|
||||
Temp scratch = scratch_begin(0, 0);
|
||||
CV_TypeIdArray array = pdb_tpi_itypes_from_name(scratch.arena, tpi_hash, tpi_leaf,
|
||||
name, compare_unique_name, 1);
|
||||
@@ -983,8 +977,6 @@ pdb_tpi_first_itype_from_name(PDB_TpiHashParsed *tpi_hash, CV_LeafParsed *tpi_le
|
||||
}
|
||||
|
||||
scratch_end(scratch);
|
||||
ProfEnd();
|
||||
|
||||
return(result);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user