[ast-optimizer-branch] gcc.dg/struct-alias-1.c failure

Daniel Berlin dberlin@dberlin.org
Tue Jun 11 12:50:00 GMT 2002


On Tuesday, June 11, 2002, at 03:41  PM, Diego Novillo wrote:

> Jason,
>
> We are now failing struct-alias-1.c because we don't do constant
> propagation on trees.  The simplifier is turning:
>
>   s.x = 0;
>   if (s.x != 0)
>     link_error ();
>
> into
>
>   s.x = 0;
>   T.2 = s.x;
>   if (T.2 != 0)
>     link_error ();
>
> which confuses the RTL constant propagator.  It doesn't realize
> that T.2 is always 0 and leaves the call to link_error() in the
> code.

Wow, that's sad.

>
> I wouldn't worry for the time being.  We will eventually fix it
> when we enable constant propagation on trees.
>

Does that pass still work at all, or do i need to completely rework it?
I don't have it in my tree anymore.

I do have a tree-ssa copy-prop pass that is only a couple hundred lines of code i could contribute that should also fix the above case.

>
> Diego.
>



More information about the Gcc mailing list