diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bb162518d71..e3211698fc8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-07-16 Steve Ellcey + + * builtins.c (expand_builtin_stpcpy): Do not create temporary + reg with VOIDmode. + 2004-07-16 Segher Boessenkool * config/rs6000/eabi.asm (__eabi_convert): Fix typo (cmpi vs. cmpwi). 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);