aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/vax
diff options
context:
space:
mode:
authorBernd Edlinger <bernd.edlinger@hotmail.de>2016-09-20 15:28:02 +0000
committerBernd Edlinger <edlinger@gcc.gnu.org>2016-09-20 15:28:02 +0000
commit978fc7d446e520481934ea675f006b88043c8d24 (patch)
treeb02621fc31e7a46c281f918f1705e06476d4e282 /gcc/config/vax
parentf5bd4ad831ce28b148a216c49be675127c1b947c (diff)
downloadgcc-978fc7d446e520481934ea675f006b88043c8d24.zip
gcc-978fc7d446e520481934ea675f006b88043c8d24.tar.gz
gcc-978fc7d446e520481934ea675f006b88043c8d24.tar.bz2
vax.h (ELIMINABLE_REGS): Define.
2016-09-20 Bernd Edlinger <bernd.edlinger@hotmail.de> * config/var/vax.h (ELIMINABLE_REGS): Define. (INITIAL_ELIMINATION_OFFSET): Define. From-SVN: r240269
Diffstat (limited to 'gcc/config/vax')
-rw-r--r--gcc/config/vax/vax.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/config/vax/vax.h b/gcc/config/vax/vax.h
index 77d9e7f..427c352 100644
--- a/gcc/config/vax/vax.h
+++ b/gcc/config/vax/vax.h
@@ -333,6 +333,16 @@ enum reg_class { NO_REGS, ALL_REGS, LIM_REG_CLASSES };
} \
while (0)
+/* This macro specifies a table of register pairs used to eliminate
+ unneeded registers that point into the stack frame. */
+#define ELIMINABLE_REGS {{FRAME_POINTER_REGNUM, STACK_POINTER_REGNUM}}
+
+/* On the VAX, FRAME_POINTER_REQUIRED is always 1, so the definition of this
+ macro doesn't matter for register eliminations, but it should still
+ give realistic data for rtx_addr_can_trap_p. */
+#define INITIAL_ELIMINATION_OFFSET(FROM, TO, OFFSET) \
+ ((OFFSET) = get_frame_size ())
+
/* EXIT_IGNORE_STACK should be nonzero if, when returning from a function,
the stack pointer does not matter. The value is tested only in
functions that have frame pointers.