This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [CFG] Unrolling fixes


> Hello.
> 
> > > Index: basic-block.h
> > > ===================================================================
> > > RCS file: /cvs/gcc/gcc/gcc/basic-block.h,v
> > > retrieving revision 1.127.2.25
> > > diff -c -3 -p -r1.127.2.25 basic-block.h
> > > *** basic-block.h	8 May 2002 12:02:37 -0000	1.127.2.25
> > > --- basic-block.h	13 May 2002 19:54:54 -0000
> > > *************** typedef struct basic_block_def {
> > > *** 233,238 ****
> > > --- 233,239 ----
> > >   #define BB_REACHABLE		4
> > >   /* Used by dfs_enumerate_from; keep this one zero!  */
> > >   #define BB_VISITED		8
> > > + #define BB_SUPERBLOCK		16
> > 
> > What is this used for?
> 
> To mark blocks that may contain jumps inside them (namely those created
> by force_operand in unroll_loop_runtime_iterations).

I see, then I would probably preffer this to be done with interface specific
to cfglayout.   I will install your sollution and try to figure out if I can
come with something better.
> 
> I hope so too; but if I remember well, we had some problems with this (you
> fixed them). It won't spoil anything if we are a bit careful (it is a generally
> useful function, so we should not restrict our attention to how it is used just
> now).
OK, lets keep there the return value and comment that it should not fail for
anything except abnormals.  It is nice way of handling abnormals anyway
(alternative is to crash directly in cfglayout, but definitly not to ignore it)

Honza
> 
> Zdenek


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]