RFA: non-const libcalls
Richard Henderson
rth@redhat.com
Sat May 12 10:52:00 GMT 2001
On Sat, May 12, 2001 at 09:14:09AM -0300, Alexandre Oliva wrote:
> These
> +@code{MEM}s are used only in @code{LIBCALL}s, because they don't
> +introduce basic blocks.
Err, no. Basic blocks have nothing to do with this. These
mems are used only on CONST_CALL_P libcalls.
> +A register or memory region specified in a @code{clobber} in this list
> +is modified @emph{after} the execution of the @code{call_insn} (i.e.,
> +it's preserved during the execution of the @code{call_insn} itself, but
> +the called function is assumed to clobber it), while a register
> +specified in a @code{clobber} in the body of the @code{call_insn} is
> +clobbered before the insn completes execution (i.e., it's modified
> +before the callee starts executing).
This distinction is meaningless. The call pattern is atomic as far
as the compiler is concerned.
r~
More information about the Gcc-patches
mailing list