This is the mail archive of the gcc-patches@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: [PATCH] Remove special-casing of PTR_IS_REF_ALL pointers from alias analysis


> a pointer to "int" can access "foo" and a pointer to "float" can 
> access "foo".  through a pointer of "foo" you cannot access a
> bare "int" or "float" object.  Thus the access p->a is
> more "precise" than an access *q (with int *q).

But the ACCESS is still there, unchanged.  The issue is what ALIAS SET
is to be used.  The alias set that will conflict with the least other
references, which is what I'd call "the most precise", is the alias set
for "int".

> On the tree level we take advantage of the fact that foo is not a
> subset of int, but int is a subset of foo.  If the RTL level doesn't
> ask questions that allows to take advantage of that distinction -
> too bad.

I don't follow.  Obviously, a lot of information is used to determine
whether two things can conflict.  ONE of those things is the alias set
and that's the only one we're talking about here.


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