> > > > Hi Honza, here's the updated patch - I just wanted to verify if this is > > OK to commit. > > > > -- > > Regards, > > Dhruv > > > > -- >8 -- > > > > From eebeebb9ba1a6405dbeaaec3be5ce8eb403b94fc Mon Sep 17 00:00:00 2001 > > From: Dhruv Chawla <[email protected]> > > Date: Wed, 15 Oct 2025 22:08:23 -0700 > > Subject: [PATCH 1/3] AutoFDO: Implement streaming of file names from GCOV > > profile > > > > Signed-off-by: Dhruv Chawla <[email protected]> > > > > gcc/ChangeLog: > > > > * auto-profile.cc (AUTO_PROFILE_VERSION): Bump to 3. > > (class function_instance_descriptor): New class. > > (get_normalized_path): New function. > > (string_table::~string_table): Update to free filenames. > > (string_table::vector_): Rename to ... > > (string_table::symbol_names_): ... this. > > (string_table::map_): Rename to ... > > (string_table::symbol_name_map_): ... this. > > (string_table::filenames_): New member. > > (string_table::filename_map_): Likewise. > > (string_table::symbol_to_filename_map_): Likewise. > > (string_table::get_index): Update to lookup symbol_name_map_. > > (string_table::get_name): Rename to ... > > (string_table::get_symbol_name): ... this. > > (string_table::add_name): Rename to ... > > (string_table::add_symbol_name): ... this. > > (string_table::get_filename): New function. > > (string_table::get_filename_by_symbol): Likewise. > > (string_table::get_filename_index): Likewise. > > (string_table::add_filename): Likewise. > > (string_table::read): Read file names from the GCOV profile. > > (function_instance::offline): Call > > get_function_instance_by_descriptor. > > (string_table::get_cgraph_node): Call get_symbol_name and > > symbol_name. > > (function_instance::get_function_instance_by_decl): Likewise. > > (function_instance::get_cgraph_node): Likewise. > > (function_instance::merge): Likewise. > > (match_with_target): Likewise. > > (function_instance::match): Likewise. > > (function_instance::dump): Likewise. > > (function_instance::dump_inline_stack): Likewise. > > (function_instance::find_icall_target_map): Likewise. > > (autofdo_source_profile::offline_unrealized_inlines): Likewise. > > (autofdo_source_profile::offline_external_functions): Likewise. > > (function_instance::read_function_instance): Likewise. > > (afdo_indirect_call): > > Also call find_function_instance, add_function_instance and > > remove_function_instance. > > (autofdo_source_profile::read): Likewise. > > (autofdo_source_profile::get_function_instance_by_decl): Call > > find_function_instance. > > (autofdo_source_profile::get_function_instance_by_name_index): > > Rename to ... > > (autofdo_source_profile::get_function_instance_by_descriptor): > > ... this. > > (autofdo_source_profile::find_iter_for_function_instance): New > > function. > > (autofdo_source_profile::find_function_instance): Likewise. > > (autofdo_source_profile::add_function_instance): Likewise. > > (autofdo_source_profile::remove_function_instance): Likewise.
OK, thanks! Honza
