This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] profile feedback: -fprofile-use= and -fprofile-correction, correctness fixes and option semantic changes.
- From: "Seongbae Park (박성배, 朴成培)" <seongbae dot park at gmail dot com>
- To: "Richard Guenther" <richard dot guenther at gmail dot com>
- Cc: "Ralf Wildenhues" <Ralf dot Wildenhues at gmx dot de>, "Jan Hubicka" <jh at suse dot cz>, "Jan Hubicka" <hubicka at ucw dot cz>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 1 Apr 2008 19:29:48 -0700
- Subject: Re: [PATCH] profile feedback: -fprofile-use= and -fprofile-correction, correctness fixes and option semantic changes.
- References: <ab3a61990803201358l2da959c0t166e9bdfba53dd09@mail.gmail.com> <20080327002102.GA19577@atrey.karlin.mff.cuni.cz> <ab3a61990803261743o23ac57e7h68ddbbcf36aa5853@mail.gmail.com> <20080327085203.GE9479@kam.mff.cuni.cz> <ab3a61990803271616u6b69f7fbv2ebc9fb5283c9c18@mail.gmail.com> <20080329225710.GI9479@kam.mff.cuni.cz> <ab3a61990803311453x43333792i2572e761a95680b7@mail.gmail.com> <20080401225005.GA22415@ins.uni-bonn.de> <84fc9c000804011553k1279c44cu519b0ed875959205@mail.gmail.com>
2008/4/1 Richard Guenther <richard.guenther@gmail.com>:
>
> On Wed, Apr 2, 2008 at 12:50 AM, Ralf Wildenhues <Ralf.Wildenhues@gmx.de> wrote:
> > Hello Seongbae,
> >
> > * Seongbae Park (박성배, 朴成培) wrote on Mon, Mar 31, 2008 at 11:53:36PM CEST:
> >
> > > The patch updated per comment has been applied to the mainline as
> > > revision 133774.
> > [...]
> >
> > > ChangeLog
> > > 2008-03-31 Seongbae Park <seongbae.park@gmail.com>
> > >
> > > * Makefile.tpl (.NOTPARALLEL): Serialize stageprofile libiberty.
> > > * Makefile.in (.NOTPARALLEL): Regenerate.
> >
> > > +.NOTPARALLEL: all-stageprofile-libiberty
> > > +
> >
> > Not sure if you're aware of it, but with current GNU make, listing
> > prerequisites to .NOTPARALLEL doesn't have any effect; the above will
> > simply cause 'make' not to run any rules in this Makefile in parallel.
> >
> > Since this hurts parallel build performance, can't we formulate the
> > required ordering in terms or order-only dependencies? Something like
> >
> > all-stageprofile-libiberty: | $(targets_that_need_to_run_earlier)
> >
> > $(targets_that_need_to_run_later): | all-stageprofile-libiberty
> >
> > You may have to check that this doesn't expose the make bug, though:
> > <http://gcc.gnu.org/ml/gcc-patches/2008-03/msg01680.html>.
>
> Doh, and I thought the slow performance was my imagination ... ;)
>
> Seongbae, please do something about this quickly.
>
> Thanks,
> Richard.
Sorry about that. I've applied the following patch which reverts the
offending hunk.
Seongbae
Index: Makefile.in
===================================================================
--- Makefile.in (revision 133774)
+++ Makefile.in (working copy)
@@ -394,8 +394,6 @@ LDFLAGS_FOR_TARGET =
# This lives here to allow makefile fragments to contain dependencies.
all:
-.NOTPARALLEL: all-stageprofile-libiberty
-
#### host and target specific makefile fragments come in here.
@target_makefile_frag@
@alphaieee_frag@
Index: Makefile.tpl
===================================================================
--- Makefile.tpl (revision 133774)
+++ Makefile.tpl (working copy)
@@ -397,8 +397,6 @@ LDFLAGS_FOR_TARGET =
# This lives here to allow makefile fragments to contain dependencies.
all:
-.NOTPARALLEL: all-stageprofile-libiberty
-
#### host and target specific makefile fragments come in here.
@target_makefile_frag@
@alphaieee_frag@
ChangeLog:
2008-04-01 Seongbae Park <seongbae.park@gmail.com>
* Makefile.tpl (.NOTPARALLEL): Revert previous change.
* Makefile.in (.NOTPARALLEL): Ditto.