This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


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.







Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]