diff options
author | Richard Sandiford <richard.sandiford@linaro.org> | 2011-10-12 07:46:58 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2011-10-12 07:46:58 +0000 |
commit | 2ba87a294f618e93699867f50f924758c60dab45 (patch) | |
tree | 4308de3c1a843d03ea183155046d08644a139ffe /gcc/expr.h | |
parent | e755e54342572456e16194c427933aef5fcfbb69 (diff) | |
download | gcc-2ba87a294f618e93699867f50f924758c60dab45.zip gcc-2ba87a294f618e93699867f50f924758c60dab45.tar.gz gcc-2ba87a294f618e93699867f50f924758c60dab45.tar.bz2 |
expr.h (copy_blkmode_to_reg): Declare.
gcc/
* expr.h (copy_blkmode_to_reg): Declare.
* expr.c (copy_blkmode_to_reg): New function.
(expand_assignment): Don't expand register RESULT_DECLs before
the lhs. Use copy_blkmode_to_reg to copy BLKmode values into a
RESULT_DECL register.
(expand_expr_real_1): Handle BLKmode decls when looking for promotion.
* stmt.c (expand_return): Move BLKmode-to-register code into
copy_blkmode_to_reg.
From-SVN: r179839
Diffstat (limited to 'gcc/expr.h')
-rw-r--r-- | gcc/expr.h | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -325,6 +325,8 @@ extern rtx copy_blkmode_from_reg (rtx, rtx, tree); Mode is TYPE_MODE of the non-promoted parameter, or VOIDmode. */ extern void use_reg_mode (rtx *, rtx, enum machine_mode); +extern rtx copy_blkmode_to_reg (enum machine_mode, tree); + /* Mark REG as holding a parameter for the next CALL_INSN. */ static inline void use_reg (rtx *fusage, rtx reg) |