builtins.c (expand_builtin_stpcpy): Un-simplify decay of stpcpy to strcpy.

* builtins.c (expand_builtin_stpcpy): Un-simplify decay of stpcpy
to strcpy.

From-SVN: r84301
This commit is contained in:
Alexandre Oliva 2004-07-08 17:16:24 +00:00 committed by Alexandre Oliva
parent 652eb7440c
commit ad4319ec12
2 changed files with 11 additions and 1 deletions

View File

@ -1,5 +1,8 @@
2004-07-08 Alexandre Oliva <aoliva@redhat.com>
* builtins.c (expand_builtin_stpcpy): Un-simplify decay of stpcpy
to strcpy.
* expr.h (FUNCTION_ARG_PARTIAL_NREGS): Default to 0.
(FUNCTION_ARG_PASS_BY_REFERENCE): Likewise.
(FUNCTION_ARG_CALLEE_COPIES): Likewise.

View File

@ -3090,7 +3090,14 @@ expand_builtin_stpcpy (tree arglist, rtx target, enum machine_mode mode)
{
/* If return value is ignored, transform stpcpy into strcpy. */
if (target == const0_rtx)
return expand_builtin_strcpy (arglist, target, mode);
{
tree fn = implicit_built_in_decls[BUILT_IN_STRCPY];
if (!fn)
return 0;
return expand_expr (build_function_call_expr (fn, arglist),
target, mode, EXPAND_NORMAL);
}
if (!validate_arglist (arglist, POINTER_TYPE, POINTER_TYPE, VOID_TYPE))
return 0;