diff options
author | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-16 17:19:20 +0000 |
---|---|---|
committer | sje <sje@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-16 17:19:20 +0000 |
commit | 7ac873244e5544a55e421690c6c20ba575f3068d (patch) | |
tree | 4b65dae0f463441bd2948bd2f68799cd7bcab2ab /gcc/builtins.c | |
parent | 975582444fffc1bb0686ebb3ae5062a2faddf75e (diff) | |
download | gcc-7ac873244e5544a55e421690c6c20ba575f3068d.tar.gz |
* builtins.c (expand_builtin_stpcpy): Do not create temporary
reg with VOIDmode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84825 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r-- | gcc/builtins.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c index 58eafd403af..d83b0de27de 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -3130,7 +3130,12 @@ expand_builtin_stpcpy (tree arglist, rtx target, enum machine_mode mode) if (ret) { if (! target) - target = gen_reg_rtx (mode); + { + if (mode != VOIDmode) + target = gen_reg_rtx (mode); + else + target = gen_reg_rtx (GET_MODE (ret)); + } if (GET_MODE (target) != GET_MODE (ret)) ret = gen_lowpart (GET_MODE (target), ret); |