[PATCH] Make alias_sets_conflict_p less conservative

Richard Guenther rguenther@suse.de
Wed Mar 5 10:00:00 GMT 2008


On Tue, 4 Mar 2008, Richard Kenner wrote:

> > This is because the the type based rules (at least for C) say "access
> > through pointer char can validly alias anything" but not "access
> > through pointer to anything can validly alias char".
> 
> I note there is no char * in sight there.  Are we, by some chance, assigning
> char to alias set zero? That seems wrong.  Rather char * should be
> marked as type-pointed-to-can-alias-all.

Yes, char is assigned alias set zero.  And this is correct.

  char a[4];
  int *p;

an access through *p conflicts with a.  (note there is no char * involved
here)

Richard.



More information about the Gcc-patches mailing list