summaryrefslogtreecommitdiff
path: root/gcc/config/pdp11/pdp11.md
diff options
context:
space:
mode:
authorPaul Koning <ni1d@arrl.net>2010-11-20 14:11:32 -0500
committerPaul Koning <pkoning@gcc.gnu.org>2010-11-20 14:11:32 -0500
commit58dd8e861c8f05fac2263fa722fd846f7aacb423 (patch)
tree5438898281b6802861fe1345022684ff79a3694d /gcc/config/pdp11/pdp11.md
parenta9aa2c3ae2aa0ccb98a04cab88c52ac76107d74c (diff)
downloadgcc-58dd8e861c8f05fac2263fa722fd846f7aacb423.tar.gz
pdp11-protos.h (pdp11_initial_elimination_offset, [...]): New functions.
* config/pdp11/pdp11-protos.h (pdp11_initial_elimination_offset, pdp11_regno_reg_class): New functions. * config/pdp11/pdp11.md (define_constants): Add register numbers. * config/pdp11/pdp11.c (pdp11_regno_reg_class, pdp11_sp_frame_offset, pdp11_initial_elimination_offset): New functions. * config/pdp11/pdp11.h (FIXED_REGISTERS, CALL_USED_REGISTERS): Add frame pointer and argument pointer pseudo-registers. (ARG_POINTER_REGNUM): Define. (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Add frame pointer and argument pointer. (FIRST_PARM_OFFSET): Update for argument pointer. (INITIAL_FRAME_POINTER_OFFSET): Delete. (ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET): New macros. (REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_INDEX_P, REGISTER_NAMES): Add frame pointer and argument pointer. From-SVN: r166978
Diffstat (limited to 'gcc/config/pdp11/pdp11.md')
-rw-r--r--gcc/config/pdp11/pdp11.md9
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/config/pdp11/pdp11.md b/gcc/config/pdp11/pdp11.md
index 1176440179f..6f76458e41c 100644
--- a/gcc/config/pdp11/pdp11.md
+++ b/gcc/config/pdp11/pdp11.md
@@ -25,15 +25,20 @@
(define_constants
[
;; Register numbers
+ (R0_REGNUM 0)
(RETVAL_REGNUM 0)
- (FRAME_POINTER_REGNUM 5)
+ (HARD_FRAME_POINTER_REGNUM 5)
(STACK_POINTER_REGNUM 6)
(PC_REGNUM 7)
(AC0_REGNUM 8)
(AC3_REGNUM 11)
(AC4_REGNUM 12)
(AC5_REGNUM 13)
- (FIRST_PSEUDO_REGISTER 14)
+ ;; The next two are not physical registers but are used for addressing
+ ;; arguments.
+ (FRAME_POINTER_REGNUM 14)
+ (ARG_POINTER_REGNUM 15)
+ (FIRST_PSEUDO_REGISTER 16)
;; Branch offset limits, as byte offsets from instruction address
(MIN_BRANCH -254)
(MAX_BRANCH 256)