[PATCH] PR rtl-optimization/61047

Bernd Edlinger bernd.edlinger@hotmail.de
Thu Jun 12 08:42:00 GMT 2014


On  Thu, 12 Jun 2014 10:36:25, Eric Botcazou wrote:
>
>> Btw, I wonder if we can simply mark the MEMs generated from spill code
>> with MEM_NOTRAP_P so we can remove the special casing of
>> frame-pointer-based addresses from add while properly initializing
>> MEM_NOTRAP_p from rtx_addr_can_trap_p?
>
> Spill code generated by the compiler itself? That's quite restrictive.
>
>> I suppose it was added exactly to cover spill code?
>
> Nope, it was added for jump tables:
>
> 2003-04-22 Richard Henderson <rth@redhat.com>
>
> PR 8866
> * rtl.h (MEM_NOTRAP_P): New.
> (MEM_COPY_ATTRIBUTES): Copy it.
> * rtlanal.c (may_trap_p): Check it.
> * expr.c (do_tablejump): Set it.
> * doc/rtl.texi (Flags): Document it.
>
> * cfgrtl.c (try_redirect_by_replacing_jump): Revert last three changes.
>
> that is to say, for memory accesses that can nominally trap but for which we
> know that they actually don't.
>
> --
> Eric Botcazou

Btw I am not sure at all,  why argp-references can never be dangerous?
For instance in a struct with an array inside, passed as function argument?


Bernd.
 		 	   		  


More information about the Gcc-patches mailing list