What should -fdump-tree-...-details include? (was Re: Patch ping)
Zdenek Dvorak
rakdver@atrey.karlin.mff.cuni.cz
Wed Jan 11 15:05:00 GMT 2006
Hello,
> [ Moved from gcc-patches ]
>
> On Tuesday 10 January 2006 11:26, Zdenek Dvorak wrote:
>
> > > > http://gcc.gnu.org/ml/gcc-patches/2005-12/msg00670.html
> > > > -- a patch to make dumps in several loop optimization passes
> > > > (ivopts, vectorizer, ...) easier to read, by having scev & data
> > > > dependence analysis dumps disabled by default
> > >
> > > Not completely OK. When I specify -details, I want every piece of
> > > information produced by the pass.
> > > It's fine with me if you want to add a specific -analysis switch that
> > > is orthogonal from -details. But with your patch, -details would not
> > > print everything in the scev and data dependence dumps.
> > >
> > > A simple tweak to this patch would give us both things. Make
> > > TDF_DETAILS include TDF_ANALYSIS in its bitmask. In fact, we could
> > > even have:
> > >
> > > #define TDF_DETAILS (1<<3) | TDF_ANALYSIS | TDF_STATS
> >
> > the point of this patch is that I want to be able to show everything
> > -details shows now, except for what -analysis does (because the dumps
> > covered by -analysis are almost never useful, except for the case there
> > is a bug in one of those analyses). I do not really care whether
> > -analysis dumps are shown by default, I just want to have a simple way
> > how to disable them while still preserving the other -details dumps. Is
> > that possible in the solution you propose?
> >
> Well, my intent with -details has always been to have the pass dump
> *everything* it knows how to dump. I never really wanted to filter it out
> in anyway. When you brought this up, I noticed that we never had
> TDF_STATS included in TDF_DETAILS (perhaps because very few passes use
> TDF_STATS), that's why I proposed adding it.
>
> You bring an interesting point, though. Should we allow each pass dictate
> the meaning of TDF_DETAILS? Or would it be better to have a universal
> meaning for it?
>
> My inclination is to have -details always show everything there is to show
> without any filtering. This gives us a universal switch to use when
> someone is not sure what information to dump. One can start with
> everything and then work down from there. If a pass wants to do something
> less than "dump everything", it should have other TDF_* flags.
my opinion is that with -details, the passes should dump as much as
possible while being readable, as this is the default level at that (at
least) I work when debugging. If someone wants to see everything, he
can use -all, I do not see much reasons to have -details duplicate this
behavior.
Zdenek
More information about the Gcc
mailing list