This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Bug in CFG or CD-DCE?
- From: Diego Novillo <dnovillo at redhat dot com>
- To: Steven Bosscher <stevenb at suse dot de>
- Cc: "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>
- Date: Mon, 12 Jul 2004 19:59:36 -0400
- Subject: Re: Bug in CFG or CD-DCE?
- Organization: Red Hat Canada
- References: <1089676479.3222.157.camel@localhost.localdomain>
On Mon, 2004-07-12 at 19:54, Diego Novillo wrote:
> Steven,
>
> I ran into this problem with the collection of patches I've got to
> replace the dominator pass. In execute/builtin-bitops-1.c, we get to
> the pass prior to CD-DCE with the program looking somewhat like this:
>
> --------------------------------------------------------------------
> <bb 0>:
> T.66_61 = -000000001; [LIVE]
> T.67_62 = T.66_61 & 1; [LIVE]
> if (T.67_62 != 0) goto <L39>; else goto <L38>; [LIVE]
>
> <L39>:;
> i_3 = 0; [DEAD]
> goto <bb 12> (<L26>);
>
> <L38>:;
> i_55 = 0; [DEAD]
>
> [ ... ]
>
> <L40>:;
> <D1756>_63 = 0; [DEAD]
>
> <L22>:;
> exit (0); [LIVE]
>
Sorry. Bad cut-n-paste. Block <L40> does *not* fall through to <L22>.
It should look like:
<L40>:;
<D1756>_63 = 0; [DEAD]
[ ... ]
<L22>:;
exit (0); [LIVE]
Diego.