diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2005-03-16 14:45:15 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2005-03-16 14:45:15 +0000 |
commit | a456b43276bbf9bd23b670ac4a334d1c926090b0 (patch) | |
tree | b1880a3e893b0506033714b4206841e710dcc5ea /gcc/tree-ssa-ccp.c | |
parent | 00c714edd62e0bb54959ecde206eba8722d6735a (diff) | |
download | gcc-a456b43276bbf9bd23b670ac4a334d1c926090b0.zip gcc-a456b43276bbf9bd23b670ac4a334d1c926090b0.tar.gz gcc-a456b43276bbf9bd23b670ac4a334d1c926090b0.tar.bz2 |
builtins.c (expand_movstr): Update a call to fold_builtin_strcpy.
* builtins.c (expand_movstr): Update a call to
fold_builtin_strcpy.
(expand_builtin_strncpy): Update a call to
fold_builtin_strncpy.
(fold_builtin_strcpy, fold_builtin_strncpy): Take decomosed
arguments of CALL_EXPR.
(fold_builtin_1): Update calls to fold_builtin_strcpy and
fold_builtin_strncpy.
* tree-ssa-ccp.c (ccp_fold_builtin): Likewise.
* tree.h: Update the prototypes of fold_builtin_strcpy and
fold_builtin_strncpy.
From-SVN: r96555
Diffstat (limited to 'gcc/tree-ssa-ccp.c')
-rw-r--r-- | gcc/tree-ssa-ccp.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c index b255020..a14cf7f 100644 --- a/gcc/tree-ssa-ccp.c +++ b/gcc/tree-ssa-ccp.c @@ -1999,12 +1999,20 @@ ccp_fold_builtin (tree stmt, tree fn) case BUILT_IN_STRCPY: if (strlen_val[1] && is_gimple_val (strlen_val[1])) - result = fold_builtin_strcpy (fn, strlen_val[1]); + { + tree fndecl = get_callee_fndecl (fn); + tree arglist = TREE_OPERAND (fn, 1); + result = fold_builtin_strcpy (fndecl, arglist, strlen_val[1]); + } break; case BUILT_IN_STRNCPY: if (strlen_val[1] && is_gimple_val (strlen_val[1])) - result = fold_builtin_strncpy (fn, strlen_val[1]); + { + tree fndecl = get_callee_fndecl (fn); + tree arglist = TREE_OPERAND (fn, 1); + result = fold_builtin_strncpy (fndecl, arglist, strlen_val[1]); + } break; case BUILT_IN_FPUTS: |