------- Additional Comments From law at redhat dot com 2005-07-07 07:34 -------
Subject: Re: [4.0/4.1 Regression] Wrong code
with SSA dominator optimizations
On Wed, 2005-07-06 at 13:31 +0000, pinskia at gcc dot gnu dot org wrote:
> ------- Additional Comments From pinskia at gcc dot gnu dot org 2005-07-06
> 13:31 -------
> This also fails too:
> volatile int x;
>
> int main ()
> {
> volatile int *vip;
> vip = &x;
> volatile int *cvip;
> cvip = vip;
>
> if (vip != cvip) return -1;
> return 0;
> }
This is actually a generic problem with fold and operand_equal_p. Given
two nodes &x and &x, operand_equal_p may return false... Which in turn
causes the conditional to be incorrectly optimized.
Jeff
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22321