[PATCH] gprof: Copy a simple test from glibc
H.J. Lu
hjl.tools@gmail.com
Mon Mar 31 16:37:24 GMT 2025
On Mon, Mar 31, 2025 at 9:35 AM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> On Mon, Mar 31, 2025 at 9:30 AM H.J. Lu <hjl.tools@gmail.com> wrote:
> >
> > On Mon, Mar 31, 2025 at 9:21 AM H.J. Lu <hjl.tools@gmail.com> wrote:
> > >
> > > On Mon, Mar 31, 2025 at 9:18 AM H.J. Lu <hjl.tools@gmail.com> wrote:
> > > >
> > > > On Mon, Mar 31, 2025 at 9:00 AM Jan Beulich <jbeulich@suse.com> wrote:
> > > > >
> > > > > On 31.03.2025 17:02, H.J. Lu wrote:
> > > > > > On Mon, Mar 31, 2025 at 12:56 AM Jan Beulich <jbeulich@suse.com> wrote:
> > > > > >>
> > > > > >> On 28.03.2025 16:23, H.J. Lu wrote:
> > > > > >>> On Fri, Mar 28, 2025 at 1:46 AM Jan Beulich <jbeulich@suse.com> wrote:
> > > > > >>>>
> > > > > >>>> On 07.03.2025 00:00, H.J. Lu wrote:
> > > > > >>>>> Copy a simple gprof test from glibc to test the basic gprof functionality.
> > > > > >>>>>
> > > > > >>>>> PR gprof/32764
> > > > > >>>>> * Makefile.am (SUBDIRS): Add testsuite
> > > > > >>>>> * configure.ac (AC_CONFIG_FILES): Removed.
> > > > > >>>>> (AC_OUTPUT): Add Makefile testsuite/Makefile
> > > > > >>>>> po/Makefile.in:po/Make-in.
> > > > > >>>>> (AM_CONDITIONAL): Add NATIVE.
> > > > > >>>>> * Makefile.in: Regenerated.
> > > > > >>>>> * configure: Likewise.
> > > > > >>>>> * testsuite/Makefile.am: New file.
> > > > > >>>>> * testsuite/tst-gmon-gprof.sh: Likewise.
> > > > > >>>>> * testsuite/tst-gmon.c: Likewise.
> > > > > >>>>> * testsuite/Makefile.in: Generated.
> > > > > >>>>
> > > > > >>>> This and the other new test fail for me on both x86-64 systems I tried - the
> > > > > >>>> f3 line isn't present in gprof output. I fear I don't have the time to
> > > > > >>>> investigate from grounds up. IOW either I need pointers that make
> > > > > >>>> investigation reasonably easy, or I'll propose to disable the tests again
> > > > > >>>> until this is sorted. The one thing I did check is that the object file has
> > > > > >>>> all the supposed calls to mcount(). If it matters, one system is using gcc5,
> > > > > >>>> the other gcc7.
> > > > > >>>
> > > > > >>> These tests work for me with gcc 5.4.1 and 7.4.1. Please try
> > > > > >>>
> > > > > >>> https://sourceware.org/pipermail/binutils/2025-March/140257.html
> > > > > >>
> > > > > >> Well, tst-gmon.o clearly had debug info (incl .debug_line) already. So no
> > > > > >> difference there. Ftaod tst-gmon similarly has debug info (incl .debug_line).
> > > > > >> Must be something else, possibly in gprof itself.
> > > > > >
> > > > > > Can you send me your gprof build directory, including tests?
> > > > >
> > > > > This is the state of the directory after the failure (plus the disassembly of
> > > > > the object file that I used to do the minimal checking that I mentioned). If
> > > > > by "including tests" you mean yet something else, please be specific.
> > > > >
> > > >
> > > > Please send me the whole gprof build directory, like
> > > >
> > > > aarch64.o cg_print.o fsf_callg_bl.c hertz.o source.o
> > > > alpha.o config.cache fsf_callg_bl.o hist.o sparc.o
> > > > basic_blocks.o config.log gconfig.h i386.o stamp-h1
> > > > bsd_callg_bl.c config.status gmon_io.o libtool sym_ids.o
> > > > bsd_callg_bl.o config.texi gprof Makefile symtab.o
> > > > call_graph.o corefile.o gprof.1 mips.o testsuite
> > > > cg_arcs.o flat_bl.c gprof.info po utils.o
> > > > cg_dfn.o flat_bl.o gprof.o search_list.o vax.o
> > > >
> > >
> > > You used GCC: (SUSE Linux) 4.8.5, not gcc5 nor gcc7 as
> > > you said earlier.
> > >
> >
> > GCC 4.8.5 works for me. My tst-gmon.o has R_X86_64_PLT32 and
> > yours has R_X86_64_PC32. I don't think it matters here. Which glibc
> > do you have? It may be a glibc bug.
> >
>
> No need for the whole gprof directory. I used your tst-gmon.o with
> GCC 4.8.5. It works correctly. It looks like your glibc is buggy.
>
> --
> H.J.
Please verify if this glibc bug:
https://sourceware.org/bugzilla/show_bug.cgi?id=28153
is the cause.
--
H.J.
More information about the Binutils
mailing list