[ 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.

Thoughts?

Reply via email to