This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: MEM_NONTRAP_P and push/pop alias set (Was: Re: [attn port maintainers] fix 23671)
- From: Joern RENNECKE <joern dot rennecke at st dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Fri, 02 Sep 2005 13:34:36 +0100
- Subject: Re: MEM_NONTRAP_P and push/pop alias set (Was: Re: [attn port maintainers] fix 23671)
- References: <43175BFD.9000003@st.com> <20050901211807.GA18480@redhat.com>
Richard Henderson wrote:
As a practical short-term concern, rtx_addr_can_trap_p will not return
true for any stack based reference, including push/pop. So for 4.1,
nothing need be done. Longer term, the answer to the "what does notrap
Actually, the SHcompact save / restores use neither stack nor frame
pointer in
their MEMs.
a specific alias set. We already have gen_const_mem for readonly
memory, so maybe that could be gen_pushpop_mem.
I agree completely. This should be done before a lot of target
code gets uglified.
Hmm, I've just found we already have a get_frame_alias_set. So I'm
working on
a patch to for a new function get_frame_mem, which sets MEM_NOTRAP_P
and sets the alias set to get_frame_alias_set (), and to use this in all
the places
of the target-independent code where get_frame_alias_set is currently used
(unless the address looks fishy).
There are many more places in the target-specific code, but I can't
really test all
the targets, so I'll leave patching that code up to the target maintainers.