Skip to content

Commit 25beda5

Browse files
committed
mask off more work based on subset flags from baker
1 parent d9d321c commit 25beda5

File tree

3 files changed

+26
-9
lines changed

3 files changed

+26
-9
lines changed

src/lib_rdi_make/rdi_make.h

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -325,28 +325,37 @@ X(Types, types)\
325325
X(UDTs, udts)\
326326
X(LineInfo, line_info)\
327327
X(InlineLineInfo, inline_line_info)\
328-
X(GlobalVariableNameMap, global_variable_name_map)\
329-
X(ThreadVariableNameMap, thread_variable_name_map)\
330-
X(ProcedureNameMap, procedure_name_map)\
331-
X(ConstantNameMap, constant_name_map)\
332-
X(TypeNameMap, type_name_map)\
333-
X(LinkNameProcedureNameMap, link_name_procedure_name_map)\
334-
X(NormalSourcePathNameMap, normal_source_path_name_map)\
328+
Y(GlobalVariableNameMap, global_variable_name_map)\
329+
Y(ThreadVariableNameMap, thread_variable_name_map)\
330+
Y(ProcedureNameMap, procedure_name_map)\
331+
Y(ConstantNameMap, constant_name_map)\
332+
Y(TypeNameMap, type_name_map)\
333+
Y(LinkNameProcedureNameMap, link_name_procedure_name_map)\
334+
Y(NormalSourcePathNameMap, normal_source_path_name_map)\
335335

336336
typedef enum RDIM_Subset
337337
{
338338
#define X(name, name_lower) RDIM_Subset_##name,
339+
#define Y(name, name_lower) RDIM_Subset_##name,
339340
RDIM_Subset_XList
340341
#undef X
342+
#undef Y
341343
}
342344
RDIM_Subset;
343345

344346
typedef U32 RDIM_SubsetFlags;
345347
enum
346348
{
347349
#define X(name, name_lower) RDIM_SubsetFlag_##name = (1<<RDIM_Subset_##name),
350+
#define Y(name, name_lower) RDIM_SubsetFlag_##name = (1<<RDIM_Subset_##name),
348351
RDIM_Subset_XList
349352
#undef X
353+
#undef Y
354+
#define X(name, name_lower)
355+
#define Y(name, name_lower) |RDIM_SubsetFlag_##name
356+
RDIM_SubsetFlag_NameMaps = 0 RDIM_Subset_XList,
357+
#undef X
358+
#undef Y
350359
RDIM_SubsetFlag_All = 0xffffffffu,
351360
};
352361

src/radbin/radbin.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -563,8 +563,10 @@ rb_thread_entry_point(void *p)
563563

564564
fprintf(stderr, "RAD DEBUG INFO SUBSET NAMES\n\n");
565565
#define X(name, name_lower) fprintf(stderr, " - " #name_lower "\n");
566+
#define Y(name, name_lower) X(name, name_lower)
566567
RDIM_Subset_XList
567568
#undef X
569+
#undef Y
568570
}break;
569571
case OutputKind_Breakpad:
570572
{
@@ -589,16 +591,20 @@ rb_thread_entry_point(void *p)
589591
{
590592
if(0){}
591593
#define X(name, name_lower) else if(str8_match(n->string, str8_lit(#name_lower), 0)) { subset_flags |= RDIM_SubsetFlag_##name; }
594+
#define Y(name, name_lower) X(name, name_lower)
592595
RDIM_Subset_XList
593596
#undef X
597+
#undef Y
594598
}
595599
String8List omit_names = cmd_line_strings(cmdline, str8_lit("omit"));
596600
for(String8Node *n = omit_names.first; n != 0; n = n->next)
597601
{
598602
if(0){}
599603
#define X(name, name_lower) else if(str8_match(n->string, str8_lit(#name_lower), 0)) { subset_flags &= ~RDIM_SubsetFlag_##name; }
604+
#define Y(name, name_lower) X(name, name_lower)
600605
RDIM_Subset_XList
601606
#undef X
607+
#undef Y
602608
}
603609
}break;
604610
case OutputKind_Breakpad:

src/rdi_make/rdi_make_local.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1212,7 +1212,9 @@ rdim_bake(Arena *arena, RDIM_BakeParams *params)
12121212
//////////////////////////////////////////////////////////////
12131213
//- rjf: @rdim_bake_stage build index runs
12141214
//
1215-
ProfScope("build index runs")
1215+
B32 need_index_runs = (!!(params->subset_flags & RDIM_SubsetFlag_NameMaps) ||
1216+
!!(params->subset_flags & RDIM_SubsetFlag_Types));
1217+
if(need_index_runs) ProfScope("build index runs")
12161218
{
12171219
Temp scratch = scratch_begin(&arena, 1);
12181220

@@ -1501,7 +1503,7 @@ rdim_bake(Arena *arena, RDIM_BakeParams *params)
15011503
//////////////////////////////////////////////////////////////
15021504
//- rjf: @rdim_bake_stage bake idx runs
15031505
//
1504-
ProfScope("bake idx runs")
1506+
if(need_index_runs) ProfScope("bake idx runs")
15051507
{
15061508
// rjf: set up
15071509
if(lane_idx() == 0)

0 commit comments

Comments
 (0)