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
|
||||
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]);
|
||||
}
|
||||
*all_types_ptr = all_types__pre_typedefs;
|
||||
*all_types_ptr = *all_types__pre_typedefs_ptr;
|
||||
}
|
||||
lane_sync();
|
||||
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;
|
||||
};
|
||||
|
||||
//- 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_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);
|
||||
|
||||
Reference in New Issue
Block a user