> On 9 Jun 2025, at 9:43 am, Kugan Vivekanandarajah <kvivekana...@nvidia.com> 
> wrote:
>
>
>
> > On 7 Jun 2025, at 3:30 pm, Kugan Vivekanandarajah <kvivekana...@nvidia.com> 
> > wrote:
> >
> > Hi,
> >
> >
> > > On 6 Jun 2025, at 4:15 pm, Kugan Vivekanandarajah 
> > > <kvivekana...@nvidia.com> wrote:
> > >
> > > Hi Andrew,
> > >
> > >
> > >> On 6 Jun 2025, at 4:06 pm, Andrew Pinski <pins...@gmail.com> wrote:
> > >>
> > >> External email: Use caution opening links or attachments
> > >>
> > >>
> > >> On Thu, Jun 5, 2025 at 11:01 PM Kugan Vivekanandarajah
> > >> <kvivekana...@nvidia.com> wrote:
> > >>>
> > >>> Hi Andrew,
> > >>>
> > >>>> On 6 Jun 2025, at 8:18 am, Andrew Pinski <pins...@gmail.com> wrote:
> > >>>>
> > >>>> External email: Use caution opening links or attachments
> > >>>>
> > >>>>
> > >>>> On Wed, Jun 4, 2025 at 12:02 AM Kugan Vivekanandarajah
> > >>>> <kvivekana...@nvidia.com> wrote:
> > >>>>>
> > >>>>> This patch introduces a new testcase to verify the merging of profiles
> > >>>>> is performed for cloned functions.
> > >>>>>
> > >>>>> Since this is invoked very early, before the pass manager, we need to
> > >>>>> set up the dumping explicitly. This is similar to the handling in
> > >>>>> finish_optimization_passes.
> > >>>>>
> > >>>>> gcc/ChangeLog:
> > >>>>>
> > >>>>>      * auto-profile.cc (autofdo_source_profile::read): Dump message
> > >>>>>      while merging profile.
> > >>>>>      * pass_manager.h (get_pass_auto_profile): New.
> > >>>>>
> > >>>>> gcc/testsuite/ChangeLog:
> > >>>>>
> > >>>>>      * gcc.dg/tree-prof/clone-merge-1.c: New test.
> > >>>>
> > >>>> This new testcase fails if you don't have autofdo setup.
> > >>>> I think it needs:
> > >>>> /* { dg-require-profiling "-fauto-profile" } */
> > >>>
> > >>> Currently aarch64/gcc-auto-profile currently runs perf even when we do 
> > >>> not have BRBE (with a warning). This is what seems to be happening here.
> > >>> Tests currently rely on availability of create_gcov to decide if the 
> > >>> tests should be running. Without BRBE, we are not going to have
> > >>> good enough profile for the tests.
> > >>>
> > >>> I now get.
> > >>> ./gcc/testsuite/gcc/gcc.sum:UNSUPPORTED: 
> > >>> gcc.dg/tree-prof/clone-merge-1.c -fauto-profile: cannot run create_gcov
> > >>>
> > >>> Maybe we should fail when gcc-auto-profile warns? Let me try that.
> > >>
> > >> I was getting the failure on x86_64:
> > >> FAIL: gcc.dg/tree-prof/clone-merge-1.c execution,    -fprofile-use
> > >> -D_PROFILE_USE
> > >>
> > >> ```
> > >> + perf record -e cpu/event=0xC4,umask=0x20/pu -b -m8 -o
> > >> /bajas/pinskia/src/upstream-gcc-match/gcc/objdir/gcc/testsuite/gcc12/clone-merge-1.perf.data
> > >> /bajas/pinskia/src/upstream-gcc-match/gcc/objdir/gcc/testsuite/gcc12/clone-merge-1.x01
> > >> [ perf record: Woken up 1 times to write data ]
> > >> [ perf record: Captured and wrote 0.012 MB
> > >> /bajas/pinskia/src/upstream-gcc-match/gcc/objdir/gcc/testsuite/gcc12/clone-merge-1.perf.data
> > >> (15 samples) ]
> > >> /home/apinski/src/upstream-gcc-match/gcc/gcc/testsuite/../config/i386/gcc-auto-profile:
> > >> line 129: 2999953 Segmentation fault      (core dumped) perf record -e
> > >> $E -b "$@"
> > >> + set +x
> > >> Retrying without /p.
> > >> sed: -e expression #1, char 1: unknown command: `''
> > >> + exec perf record -e -b -m8 -o
> > >> /bajas/pinskia/src/upstream-gcc-match/gcc/objdir/gcc/testsuite/gcc12/clone-merge-1.perf.data
> > >> /bajas/pinskia/src/upstream-gcc-match/gcc/objdir/gcc/testsuite/gcc12/clone-merge-1.x01
> > >> event syntax error: '-b'
> > >>                    \___ parser error
> > >> Run 'perf list' for a list of valid events
> > >>
> > >> Usage: perf record [<options>] [<command>]
> > >>   or: perf record [<options>] -- <command> [<options>]
> > >>
> > >>   -e, --event <event>   event selector. use 'perf list' to list
> > >> available events
> > >> FAIL: gcc.dg/tree-prof/clone-merge-1.c execution,    -g 
> > >> -DFOR_AUTOFDO_TESTING
> > >> UNRESOLVED: gcc.dg/tree-prof/clone-merge-1.c compilation,
> > >> -fauto-profile -DFOR_AUTOFDO_TESTING -fearly-inlining
> > >> UNRESOLVED: gcc.dg/tree-prof/clone-merge-1.c execution,
> > >> -fauto-profile -DFOR_AUTOFDO_TESTING -fearly-inlining
> > >
>
> I committed the attached patch to fix this and a typo in merging as obvious.
>
> Thanks,
> Kugan
>
>

Attachment: 0001-AutoFDO-testsuite-Enable-clone-merge-1.c-only-for-fa.patch
Description: 0001-AutoFDO-testsuite-Enable-clone-merge-1.c-only-for-fa.patch

Reply via email to