mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-06-12 23:31:38 -07:00
mask off more work based on subset flags from baker
This commit is contained in:
@@ -325,19 +325,21 @@ X(Types, types)\
|
||||
X(UDTs, udts)\
|
||||
X(LineInfo, line_info)\
|
||||
X(InlineLineInfo, inline_line_info)\
|
||||
X(GlobalVariableNameMap, global_variable_name_map)\
|
||||
X(ThreadVariableNameMap, thread_variable_name_map)\
|
||||
X(ProcedureNameMap, procedure_name_map)\
|
||||
X(ConstantNameMap, constant_name_map)\
|
||||
X(TypeNameMap, type_name_map)\
|
||||
X(LinkNameProcedureNameMap, link_name_procedure_name_map)\
|
||||
X(NormalSourcePathNameMap, normal_source_path_name_map)\
|
||||
Y(GlobalVariableNameMap, global_variable_name_map)\
|
||||
Y(ThreadVariableNameMap, thread_variable_name_map)\
|
||||
Y(ProcedureNameMap, procedure_name_map)\
|
||||
Y(ConstantNameMap, constant_name_map)\
|
||||
Y(TypeNameMap, type_name_map)\
|
||||
Y(LinkNameProcedureNameMap, link_name_procedure_name_map)\
|
||||
Y(NormalSourcePathNameMap, normal_source_path_name_map)\
|
||||
|
||||
typedef enum RDIM_Subset
|
||||
{
|
||||
#define X(name, name_lower) RDIM_Subset_##name,
|
||||
#define Y(name, name_lower) RDIM_Subset_##name,
|
||||
RDIM_Subset_XList
|
||||
#undef X
|
||||
#undef Y
|
||||
}
|
||||
RDIM_Subset;
|
||||
|
||||
@@ -345,8 +347,15 @@ typedef U32 RDIM_SubsetFlags;
|
||||
enum
|
||||
{
|
||||
#define X(name, name_lower) RDIM_SubsetFlag_##name = (1<<RDIM_Subset_##name),
|
||||
#define Y(name, name_lower) RDIM_SubsetFlag_##name = (1<<RDIM_Subset_##name),
|
||||
RDIM_Subset_XList
|
||||
#undef X
|
||||
#undef Y
|
||||
#define X(name, name_lower)
|
||||
#define Y(name, name_lower) |RDIM_SubsetFlag_##name
|
||||
RDIM_SubsetFlag_NameMaps = 0 RDIM_Subset_XList,
|
||||
#undef X
|
||||
#undef Y
|
||||
RDIM_SubsetFlag_All = 0xffffffffu,
|
||||
};
|
||||
|
||||
|
||||
@@ -563,8 +563,10 @@ rb_thread_entry_point(void *p)
|
||||
|
||||
fprintf(stderr, "RAD DEBUG INFO SUBSET NAMES\n\n");
|
||||
#define X(name, name_lower) fprintf(stderr, " - " #name_lower "\n");
|
||||
#define Y(name, name_lower) X(name, name_lower)
|
||||
RDIM_Subset_XList
|
||||
#undef X
|
||||
#undef Y
|
||||
}break;
|
||||
case OutputKind_Breakpad:
|
||||
{
|
||||
@@ -589,16 +591,20 @@ rb_thread_entry_point(void *p)
|
||||
{
|
||||
if(0){}
|
||||
#define X(name, name_lower) else if(str8_match(n->string, str8_lit(#name_lower), 0)) { subset_flags |= RDIM_SubsetFlag_##name; }
|
||||
#define Y(name, name_lower) X(name, name_lower)
|
||||
RDIM_Subset_XList
|
||||
#undef X
|
||||
#undef Y
|
||||
}
|
||||
String8List omit_names = cmd_line_strings(cmdline, str8_lit("omit"));
|
||||
for(String8Node *n = omit_names.first; n != 0; n = n->next)
|
||||
{
|
||||
if(0){}
|
||||
#define X(name, name_lower) else if(str8_match(n->string, str8_lit(#name_lower), 0)) { subset_flags &= ~RDIM_SubsetFlag_##name; }
|
||||
#define Y(name, name_lower) X(name, name_lower)
|
||||
RDIM_Subset_XList
|
||||
#undef X
|
||||
#undef Y
|
||||
}
|
||||
}break;
|
||||
case OutputKind_Breakpad:
|
||||
|
||||
@@ -1212,7 +1212,9 @@ rdim_bake(Arena *arena, RDIM_BakeParams *params)
|
||||
//////////////////////////////////////////////////////////////
|
||||
//- rjf: @rdim_bake_stage build index runs
|
||||
//
|
||||
ProfScope("build index runs")
|
||||
B32 need_index_runs = (!!(params->subset_flags & RDIM_SubsetFlag_NameMaps) ||
|
||||
!!(params->subset_flags & RDIM_SubsetFlag_Types));
|
||||
if(need_index_runs) ProfScope("build index runs")
|
||||
{
|
||||
Temp scratch = scratch_begin(&arena, 1);
|
||||
|
||||
@@ -1501,7 +1503,7 @@ rdim_bake(Arena *arena, RDIM_BakeParams *params)
|
||||
//////////////////////////////////////////////////////////////
|
||||
//- rjf: @rdim_bake_stage bake idx runs
|
||||
//
|
||||
ProfScope("bake idx runs")
|
||||
if(need_index_runs) ProfScope("bake idx runs")
|
||||
{
|
||||
// rjf: set up
|
||||
if(lane_idx() == 0)
|
||||
|
||||
Reference in New Issue
Block a user