]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Fix name mismatch for fortran.
authorhongtao.liu <hongtao.liu@intel.com>
Tue, 14 Jan 2025 00:13:22 +0000 (01:13 +0100)
committerliuhongt <hongtao.liu@intel.com>
Wed, 7 May 2025 08:11:36 +0000 (01:11 -0700)
Function name in afdo_string_table is step3d_t_tile.
but DECL_ASSEMBLER_NAME (edge->callee->decl))) gets
__step3d_t_mod_MOD_step3d_t_tile, Looks like the prefix is not in the
debug string table.
The patch uses
afdo_string_table->get_index_by_decl (edge->callee->decl) instead.

gcc/ChangeLog:

PR gcov-profile/118508
* auto-profile.cc
(autofdo_source_profile::get_callsite_total_count): Fix name
mismatch for fortran.

gcc/auto-profile.cc

index 7e0e8c66124e6aa697b6f4a9405c66f7c7c44951..9966d9312e37cccfb41fb422f244318e8c66b580 100644 (file)
@@ -848,8 +848,8 @@ autofdo_source_profile::get_callsite_total_count (
 
   function_instance *s = get_function_instance_by_inline_stack (stack);
   if (s == NULL
-      || afdo_string_table->get_index (IDENTIFIER_POINTER (
-             DECL_ASSEMBLER_NAME (edge->callee->decl))) != s->name ())
+      ||(afdo_string_table->get_index_by_decl (edge->callee->decl)
+        != s->name()))
     return 0;
 
   return s->total_count ();