[binutils-gdb] gprof: speed up line-by-line for MIPS/PowerPC/RISCV/SuperH
Alan Modra
amodra@sourceware.org
Sat Mar 1 00:47:53 GMT 2025
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=b6539282a9378cc2587b480c3fc5c75adabf6301
commit b6539282a9378cc2587b480c3fc5c75adabf6301
Author: Richard Allen <rsaxvc@gmail.com>
Date: Sun Feb 16 16:50:02 2025 -0600
gprof: speed up line-by-line for MIPS/PowerPC/RISCV/SuperH
Roughly halves the number of bfd_find_nearest_line() calls,
about 40% less time for a few different large ELF files.
Signed-off-by: Richard Allen <rsaxvc@gmail.com>
Diff:
---
gprof/corefile.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/gprof/corefile.c b/gprof/corefile.c
index bd8e60d4e68..6ecb55d62f4 100644
--- a/gprof/corefile.c
+++ b/gprof/corefile.c
@@ -255,6 +255,13 @@ core_init (const char * aout_name)
offset_to_code = 2;
break;
+ case bfd_arch_mips:/* and microMIPS */
+ case bfd_arch_powerpc:/* and VLE */
+ case bfd_arch_riscv:/* and RVC */
+ case bfd_arch_sh:
+ insn_boundary = 2;
+ break;
+
case bfd_arch_alpha:
insn_boundary = 4;
break;
More information about the Binutils-cvs
mailing list