This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: function.c patch for ia64 cross compiler abort
- To: rth at cygnus dot com
- Subject: Re: function.c patch for ia64 cross compiler abort
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- Date: Sat, 26 Aug 00 13:43:09 EDT
- Cc: gcc-patches at gcc dot gnu dot org
When the backend dumps a register to memory during expansion.
See the ia64 movtf pattern.
That code looks *very* problematic. For one thing, gen_mem_addressof
doesn't guarantee it stays in memory. For another, that code then
makes an outer MEM and that *also* doesn't have either MEM_ALIAS_SET
or the status bits set.
I think this whole mechanism needs to be revisited. I'm not sure what's
trying to be done here, but there has to be a better way of doing it, perhaps
using a variant of use the code in expand_expr for ADDR_EXPR: