This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: identifying a BB representing a self-loop
- From: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- To: sean yang <seanatpurdue at hotmail dot com>
- Cc: dberlin at dberlin dot org, gcc at gcc dot gnu dot org
- Date: Sun, 21 May 2006 09:37:53 +0200
- Subject: Re: identifying a BB representing a self-loop
- References: <BAY105-F153C6424D245EECF42929DC0A70@phx.gbl>
Hello,
> >> If we compile this by "#gcc -c -O -da demo.c, we can see there are only
> >> three BBs. Actually, BB1 is a self-looped basic block. But this loop
> >> information is not explicitly expressed.
> >>
> >
> >What do you mean "not explicitly expressed".
> >
> >If you call the loop finding routines (flow_loops_find), and look in the
> >result loop information, does it not give you a loop with a single node?
>
> I meant that there is no edge like BB1-->BB1, if BB1 itself is a loop. For
> example,
but in your original example, this edge *is* present:
> Basic block 1
> Successors: 1 2
Zdenek