summaryrefslogtreecommitdiff
path: root/gcc/config/pdp11/pdp11.c
diff options
context:
space:
mode:
authorPaul Koning <pkoning@gcc.gnu.org>2018-10-03 14:31:52 -0400
committerPaul Koning <pkoning@gcc.gnu.org>2018-10-03 14:31:52 -0400
commit0a7eb8dfc5dcc74f2084d12e4fe57a07c5817b13 (patch)
treeebaf35f1a064e0506d7694adc51a0ae1ce570bdd /gcc/config/pdp11/pdp11.c
parentf707a0378804335b425fe541488a39aa642ca550 (diff)
downloadgcc-0a7eb8dfc5dcc74f2084d12e4fe57a07c5817b13.tar.gz
Enable LRA register allocator for PDP11.
* config/pdp11/constraints.md (Q): Use define_memory_constraints. (R): Likewise. (D): Likewise. * config/pdp11/pdp11.c (pdp11_lra_p): New function. * config/pdp11/pdp11.opt (-mlra): New option. * doc/invoke.texi (PDP-11 Options): Document -mlra. From-SVN: r264819
Diffstat (limited to 'gcc/config/pdp11/pdp11.c')
-rw-r--r--gcc/config/pdp11/pdp11.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/config/pdp11/pdp11.c b/gcc/config/pdp11/pdp11.c
index 62c653fd8a1..f80a8783d8e 100644
--- a/gcc/config/pdp11/pdp11.c
+++ b/gcc/config/pdp11/pdp11.c
@@ -230,7 +230,7 @@ static bool pdp11_scalar_mode_supported_p (scalar_mode);
#define TARGET_PREFERRED_OUTPUT_RELOAD_CLASS pdp11_preferred_output_reload_class
#undef TARGET_LRA_P
-#define TARGET_LRA_P hook_bool_void_false
+#define TARGET_LRA_P pdp11_lra_p
#undef TARGET_LEGITIMATE_ADDRESS_P
#define TARGET_LEGITIMATE_ADDRESS_P pdp11_legitimate_address_p
@@ -991,6 +991,12 @@ pdp11_assemble_integer (rtx x, unsigned int size, int aligned_p)
}
+static bool
+pdp11_lra_p (void)
+{
+ return TARGET_LRA;
+}
+
/* Register to register moves are cheap if both are general
registers. */
static int