summaryrefslogtreecommitdiff
path: root/gcc/regmove.c
diff options
context:
space:
mode:
authorsteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2012-12-05 23:16:52 +0000
committersteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2012-12-05 23:16:52 +0000
commit957b2bdc14598dcb7bfbcc757d876b295bc2e946 (patch)
tree7daa076305a95e822e50b52025fa432bc497750f /gcc/regmove.c
parent55ce3e896d5f96a31b01e1c1a9691b5282d23f2c (diff)
downloadgcc-957b2bdc14598dcb7bfbcc757d876b295bc2e946.tar.gz
* doc/tm.texi.in (TARGET_CLASS_LIKELY_SPILLED_P): Update documentation.
* doc/tm.texi: Regenerate. * regs.h (REG_LIVE_LENGTH): Update comments to not refer to no longer existing files global.c and local-alloc.c. * regmove.c (copy_src_to_dest): Likewise. * function.h (struct rtl_data): Likewise. * ira-color.c (allocno_priority_compare_func): Likewise. * regstat.c (regstat_compute_ri): Likewise. * config/epiphany/epiphany.h, config/vax/vax.h, config/cris/cris.h, config/h8300/h8300.h, config/alpha/alpha.h, config/sparc/sparc.h, config/rs6000/rs6000.h, config/pdp11/pdp11.h, config/pa/pa.h, config/v850/v850.h, config/mn10300/mn10300.h, config/m32r/m32r.h, config/i386/i386.h, config/mcore/mcore.h, config/sh/sh.h, config/arm/arm.h (REGNO_OK_FOR_BASE_P): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194229 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/regmove.c')
-rw-r--r--gcc/regmove.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/regmove.c b/gcc/regmove.c
index 29f6e6546b6..8dc2d54a674 100644
--- a/gcc/regmove.c
+++ b/gcc/regmove.c
@@ -616,10 +616,10 @@ copy_src_to_dest (rtx insn, rtx src, rtx dest)
int src_regno;
int dest_regno;
- /* A REG_LIVE_LENGTH of -1 indicates the register is equivalent to a constant
- or memory location and is used infrequently; a REG_LIVE_LENGTH of -2 is
- parameter when there is no frame pointer that is not allocated a register.
- For now, we just reject them, rather than incrementing the live length. */
+ /* A REG_LIVE_LENGTH of -1 indicates the register must not go into
+ a hard register, e.g. because it crosses as setjmp. See the
+ comment in regstat.c:regstat_bb_compute_ri. Don't try to apply
+ any transformations to such regs. */
if (REG_P (src)
&& REG_LIVE_LENGTH (REGNO (src)) > 0