diff options
author | Richard Henderson <rth@cygnus.com> | 1999-04-06 19:14:06 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 1999-04-06 19:14:06 -0700 |
commit | d22cba0ade5f4674235583b48ba750f7488738b4 (patch) | |
tree | c9aea157a5b1b0df0627efa82d2055379ed72c98 /gcc/expr.c | |
parent | 5b7c02b65b7d1176433d8b1f7fba7c294d16646d (diff) | |
download | gcc-d22cba0ade5f4674235583b48ba750f7488738b4.zip gcc-d22cba0ade5f4674235583b48ba750f7488738b4.tar.gz gcc-d22cba0ade5f4674235583b48ba750f7488738b4.tar.bz2 |
expr.c (expand_builtin): Use copy_to_mode_reg; don't force constants into a register.
* expr.c (expand_builtin) [BUILT_IN_RETURN_ADDRESS]: Use
copy_to_mode_reg; don't force constants into a register.
From-SVN: r26231
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -9131,8 +9131,9 @@ expand_builtin (exp, target, subtarget, mode, ignore) if (DECL_FUNCTION_CODE (fndecl) == BUILT_IN_FRAME_ADDRESS) return tem; - if (GET_CODE (tem) != REG) - tem = copy_to_reg (tem); + if (GET_CODE (tem) != REG + && ! CONSTANT_P (tem)) + tem = copy_to_mode_reg (Pmode, tem); return tem; } |