This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: new alias sets from the backend
- To: law at cygnus dot com, Richard Henderson <rth at cygnus dot com>
- Subject: Re: new alias sets from the backend
- From: Richard Henderson <rth at cygnus dot com>
- Date: Wed, 30 Sep 1998 16:02:01 -0700
- Cc: mark at markmitchell dot com, egcs-patches at cygnus dot com
- References: <19980920235600.A12353@dot.cygnus.com> <29035.907124777@hurl.cygnus.com>
- Reply-To: Richard Henderson <rth at cygnus dot com>
On Tue, Sep 29, 1998 at 09:06:17PM -0600, Jeffrey A Law wrote:
> My only concern is trying to guarantee that if we pass a pointer in a
> va_list...
So the pointer is an unnamed argument?
> ... and we us va_arg to get that pointer out of the stack
In which case the loading of the pointer should not be moved
due to the alias set match.
The only question then is what to do with
if ((MEM_IN_STRUCT_P (mem) && varies (mem_addr))
|| (MEM_IN_STRUCT_P (x) && varies (x_addr)))
return 0;
which still affects va_arg stuff. Does this stuff buy us
anything anymore?
> Though I would hope basic data dependence would catch it.
I'm positive that it will.
r~