mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-14 17:28:07 +00:00
eliminate global rdim_shared; just use scratch data
This commit is contained in:
@@ -2601,6 +2601,11 @@ p2r_convert(Arena *arena, P2R_ConvertParams *params)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//- rjf: gather namespaces
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
//- rjf: store finalized type to this itype's slot
|
//- rjf: store finalized type to this itype's slot
|
||||||
itype_type_ptrs[itype] = dst_type;
|
itype_type_ptrs[itype] = dst_type;
|
||||||
}
|
}
|
||||||
@@ -4358,7 +4363,7 @@ p2r_convert(Arena *arena, P2R_ConvertParams *params)
|
|||||||
{
|
{
|
||||||
rdim_type_chunk_list_concat_in_place(all_types__pre_typedefs_ptr, &syms_typedefs[idx]);
|
rdim_type_chunk_list_concat_in_place(all_types__pre_typedefs_ptr, &syms_typedefs[idx]);
|
||||||
}
|
}
|
||||||
*all_types_ptr = all_types__pre_typedefs;
|
*all_types_ptr = *all_types__pre_typedefs_ptr;
|
||||||
}
|
}
|
||||||
lane_sync();
|
lane_sync();
|
||||||
all_locations = *all_locations_ptr;
|
all_locations = *all_locations_ptr;
|
||||||
|
|||||||
+504
-347
File diff suppressed because it is too large
Load Diff
@@ -60,106 +60,6 @@ struct RDIM_UnsortedJoinedLineTable
|
|||||||
RDIM_LineRec *line_recs;
|
RDIM_LineRec *line_recs;
|
||||||
};
|
};
|
||||||
|
|
||||||
//- rjf: shared state bundle
|
|
||||||
|
|
||||||
typedef struct RDIM_Shared RDIM_Shared;
|
|
||||||
struct RDIM_Shared
|
|
||||||
{
|
|
||||||
RDIM_ScopeVMapBakeResult baked_scope_vmap;
|
|
||||||
RDIM_UnitVMapBakeResult baked_unit_vmap;
|
|
||||||
RDIM_GlobalVMapBakeResult baked_global_vmap;
|
|
||||||
|
|
||||||
RDIM_BakePathTree *path_tree;
|
|
||||||
|
|
||||||
RDI_U64 line_tables_count;
|
|
||||||
RDI_U64 line_table_block_take_counter;
|
|
||||||
RDIM_LineTable **src_line_tables;
|
|
||||||
RDIM_UnsortedJoinedLineTable *unsorted_joined_line_tables;
|
|
||||||
|
|
||||||
RDIM_SortKey **sorted_line_table_keys;
|
|
||||||
|
|
||||||
RDIM_LineTableBakeResult baked_line_tables;
|
|
||||||
|
|
||||||
RDIM_BakeStringMapTight bake_strings;
|
|
||||||
|
|
||||||
RDIM_BakeIdxRunMap bake_idx_runs;
|
|
||||||
|
|
||||||
RDIM_StringBakeResult baked_strings;
|
|
||||||
|
|
||||||
RDIM_IndexRunBakeResult baked_idx_runs;
|
|
||||||
|
|
||||||
RDI_U64 *lane_name_map_node_counts[RDI_NameMapKind_COUNT];
|
|
||||||
RDI_U64 *lane_name_map_node_offs[RDI_NameMapKind_COUNT];
|
|
||||||
RDI_U64 name_map_node_counts[RDI_NameMapKind_COUNT];
|
|
||||||
RDI_U64 total_name_map_node_count;
|
|
||||||
RDIM_TopLevelNameMapBakeResult baked_top_level_name_maps;
|
|
||||||
RDIM_NameMapBakeResult baked_name_maps;
|
|
||||||
|
|
||||||
RDIM_BakeSrcLineMap *bake_src_line_maps;
|
|
||||||
|
|
||||||
RDI_U64 bake_src_line_map_take_counter;
|
|
||||||
RDIM_SortKey **bake_src_line_map_keys;
|
|
||||||
|
|
||||||
RDI_U64 *lane_chunk_src_file_num_counts; // [lane_count * src_file_chunk_count]
|
|
||||||
RDI_U64 *lane_chunk_src_file_voff_counts; // [lane_count * src_file_chunk_count]
|
|
||||||
RDI_U64 *lane_chunk_src_file_map_counts; // [lane_count * src_file_chunk_count]
|
|
||||||
RDI_U64 *lane_chunk_src_file_num_offs; // [lane_count * src_file_chunk_count]
|
|
||||||
RDI_U64 *lane_chunk_src_file_voff_offs; // [lane_count * src_file_chunk_count]
|
|
||||||
RDI_U64 *lane_chunk_src_file_map_offs; // [lane_count * src_file_chunk_count]
|
|
||||||
RDI_U64 *lane_chunk_src_file_checksum_counts[RDI_ChecksumKind_COUNT]; // [lane_count * src_file_chunk_count]
|
|
||||||
RDI_U64 *lane_chunk_src_file_checksum_offs[RDI_ChecksumKind_COUNT]; // [lane_count * src_file_chunk_count]
|
|
||||||
U64 total_checksum_counts[RDI_ChecksumKind_COUNT];
|
|
||||||
RDI_U64 total_src_map_line_count;
|
|
||||||
RDI_U64 total_src_map_voff_count;
|
|
||||||
|
|
||||||
RDIM_ChecksumBakeResult baked_checksums;
|
|
||||||
|
|
||||||
RDIM_SrcFileBakeResult baked_src_files;
|
|
||||||
|
|
||||||
RDI_U64 *member_chunk_lane_counts; // [lane_count * udt_chunk_count]
|
|
||||||
RDI_U64 *member_chunk_lane_offs; // [lane_count * udt_chunk_count]
|
|
||||||
RDI_U64 *enum_val_chunk_lane_counts; // [lane_count * udt_chunk_count]
|
|
||||||
RDI_U64 *enum_val_chunk_lane_offs; // [lane_count * udt_chunk_count]
|
|
||||||
|
|
||||||
RDIM_UDTBakeResult baked_udts;
|
|
||||||
|
|
||||||
RDI_U64 *location_case_chunk_lane_counts; // [lane_count * (scope_chunk_count + procedure_chunk_count)
|
|
||||||
RDI_U64 *location_case_chunk_lane_offs; // [lane_count * (scope_chunk_count + procedure_chunk_count)
|
|
||||||
RDI_U64 total_location_case_count;
|
|
||||||
|
|
||||||
RDIM_LocationBlockBakeResult baked_location_blocks;
|
|
||||||
|
|
||||||
RDIM_LocationBakeResult baked_locations;
|
|
||||||
|
|
||||||
RDI_U64 *scope_local_chunk_lane_counts; // [lane_count * scope_chunk_count]
|
|
||||||
RDI_U64 *scope_local_chunk_lane_offs; // [lane_count * scope_chunk_count]
|
|
||||||
RDI_U64 *scope_voff_chunk_lane_counts; // [lane_count * scope_chunk_count]
|
|
||||||
RDI_U64 *scope_voff_chunk_lane_offs; // [lane_count * scope_chunk_count]
|
|
||||||
|
|
||||||
RDIM_ScopeBakeResult baked_scopes;
|
|
||||||
|
|
||||||
RDIM_ProcedureBakeResult baked_procedures;
|
|
||||||
|
|
||||||
RDI_U64 *constant_data_chunk_lane_counts; // [lane_count * constant_chunk_count]
|
|
||||||
RDI_U64 *constant_data_chunk_lane_offs; // [lane_count * constant_chunk_count]
|
|
||||||
|
|
||||||
RDIM_ConstantsBakeResult baked_constants;
|
|
||||||
|
|
||||||
RDIM_UnitBakeResult baked_units;
|
|
||||||
RDIM_TypeNodeBakeResult baked_type_nodes;
|
|
||||||
RDIM_GlobalVariableBakeResult baked_global_variables;
|
|
||||||
RDIM_ThreadVariableBakeResult baked_thread_variables;
|
|
||||||
RDIM_InlineSiteBakeResult baked_inline_sites;
|
|
||||||
|
|
||||||
RDIM_BakePathNode **baked_file_path_src_nodes;
|
|
||||||
RDIM_FilePathBakeResult baked_file_paths;
|
|
||||||
|
|
||||||
RDIM_TopLevelInfoBakeResult baked_top_level_info;
|
|
||||||
RDIM_BinarySectionBakeResult baked_binary_sections;
|
|
||||||
};
|
|
||||||
|
|
||||||
global RDIM_Shared *rdim_shared = 0;
|
|
||||||
|
|
||||||
internal RDIM_DataModel rdim_data_model_from_os_arch(OperatingSystem os, RDI_Arch arch);
|
internal RDIM_DataModel rdim_data_model_from_os_arch(OperatingSystem os, RDI_Arch arch);
|
||||||
internal RDIM_TopLevelInfo rdim_make_top_level_info(String8 image_name, Arch arch, U64 exe_hash, RDIM_BinarySectionList sections);
|
internal RDIM_TopLevelInfo rdim_make_top_level_info(String8 image_name, Arch arch, U64 exe_hash, RDIM_BinarySectionList sections);
|
||||||
internal RDIM_BakeParams rdim_loose_from_rdi(Arena *arena, RDIM_SubsetFlags subset_flags, RDI_Parsed *rdi);
|
internal RDIM_BakeParams rdim_loose_from_rdi(Arena *arena, RDIM_SubsetFlags subset_flags, RDI_Parsed *rdi);
|
||||||
|
|||||||
Reference in New Issue
Block a user