aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2004-07-09 19:21:12 -0700
committerRichard Henderson <rth@gcc.gnu.org>2004-07-09 19:21:12 -0700
commitf3a096e85c5feacb2fe5e55bbcc607aa0545a0b7 (patch)
treebe03de63c62861ac911ec3443d502f80da74720a /gcc
parent21f56031ca49d7c142075e533a40a42fd2af296d (diff)
downloadgcc-f3a096e85c5feacb2fe5e55bbcc607aa0545a0b7.zip
gcc-f3a096e85c5feacb2fe5e55bbcc607aa0545a0b7.tar.gz
gcc-f3a096e85c5feacb2fe5e55bbcc607aa0545a0b7.tar.bz2
* builtins.c (expand_builtin_stpcpy): Don't modify len.
From-SVN: r84435
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/builtins.c6
2 files changed, 7 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bac8a76..3fb67e7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2004-07-09 Richard Henderson <rth@redhat.com>
+
+ * builtins.c (expand_builtin_stpcpy): Don't modify len.
+
2004-07-10 Kelley Cook <kcook@gcc.gnu.org>
* flags.h: Delete redundant prototypes that are being generated
diff --git a/gcc/builtins.c b/gcc/builtins.c
index dd39967..91d3c87 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -3102,7 +3102,7 @@ expand_builtin_stpcpy (tree arglist, rtx target, enum machine_mode mode)
return 0;
else
{
- tree dst, src, len;
+ tree dst, src, len, lenp1;
tree narglist;
rtx ret;
@@ -3117,8 +3117,8 @@ expand_builtin_stpcpy (tree arglist, rtx target, enum machine_mode mode)
target, /*endp=*/2);
dst = TREE_VALUE (arglist);
- len = fold (size_binop (PLUS_EXPR, len, ssize_int (1)));
- narglist = build_tree_list (NULL_TREE, len);
+ lenp1 = size_binop (PLUS_EXPR, len, ssize_int (1));
+ narglist = build_tree_list (NULL_TREE, lenp1);
narglist = tree_cons (NULL_TREE, src, narglist);
narglist = tree_cons (NULL_TREE, dst, narglist);
ret = expand_builtin_mempcpy (narglist, target, mode, /*endp=*/2);