This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
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