Commit 1c11abc4 by Kazu Hirata Committed by Kazu Hirata

h8300.h (CONDITIONAL_REGISTER_USAGE): Replace a hard coded register number with…

h8300.h (CONDITIONAL_REGISTER_USAGE): Replace a hard coded register number with an appropriate macro.

	* config/h8300/h8300.h (CONDITIONAL_REGISTER_USAGE): Replace a
	hard coded register number with an appropriate macro.
	(HARD_REGNO_MODE_OK): Likewise.
	(ARG_POINTER_REGNUM): Likewise.
	(STATIC_CHAIN_REGNUM): Likewise.
	(RETURN_ADDRESS_POINTER_REGNUM): Likewise.
	* config/h8300/h8300.md (define_constants): Define more
	register numbers.

From-SVN: r49819
parent bd4bf6f8
2002-02-17 Kazu Hirata <kazu@hxi.com>
* config/h8300/h8300.h (CONDITIONAL_REGISTER_USAGE): Replace a
hard coded register number with an appropriate macro.
(HARD_REGNO_MODE_OK): Likewise.
(ARG_POINTER_REGNUM): Likewise.
(STATIC_CHAIN_REGNUM): Likewise.
(RETURN_ADDRESS_POINTER_REGNUM): Likewise.
* config/h8300/h8300.md (define_constants): Define more
register numbers.
2002-02-17 Philipp Thomas <pthomas@suse.de> 2002-02-17 Philipp Thomas <pthomas@suse.de>
* config/i386/i386.h: Don't mark empty strings for translation. * config/i386/i386.h: Don't mark empty strings for translation.
......
...@@ -294,10 +294,10 @@ extern int target_flags; ...@@ -294,10 +294,10 @@ extern int target_flags;
#define REG_ALLOC_ORDER \ #define REG_ALLOC_ORDER \
{ 2, 3, 0, 1, 4, 5, 6, 8, 7, 9, 10} { 2, 3, 0, 1, 4, 5, 6, 8, 7, 9, 10}
#define CONDITIONAL_REGISTER_USAGE \ #define CONDITIONAL_REGISTER_USAGE \
{ \ { \
if (!TARGET_MAC) \ if (!TARGET_MAC) \
fixed_regs[8] = call_used_regs[8] = 1; \ fixed_regs[MAC_REG] = call_used_regs[MAC_REG] = 1; \
} }
/* Return number of consecutive hard regs needed starting at reg REGNO /* Return number of consecutive hard regs needed starting at reg REGNO
...@@ -322,7 +322,7 @@ extern int target_flags; ...@@ -322,7 +322,7 @@ extern int target_flags;
#define HARD_REGNO_MODE_OK(REGNO, MODE) \ #define HARD_REGNO_MODE_OK(REGNO, MODE) \
(TARGET_H8300 \ (TARGET_H8300 \
? ((((REGNO) & 1) == 0) || ((MODE) == HImode) || ((MODE) == QImode)) \ ? ((((REGNO) & 1) == 0) || ((MODE) == HImode) || ((MODE) == QImode)) \
: (REGNO) == 8 ? (MODE) == SImode : 1) : (REGNO) == MAC_REG ? (MODE) == SImode : 1)
/* Value is 1 if it is a good idea to tie two pseudo registers /* Value is 1 if it is a good idea to tie two pseudo registers
when one has mode MODE1 and one has mode MODE2. when one has mode MODE1 and one has mode MODE2.
...@@ -355,14 +355,14 @@ extern int target_flags; ...@@ -355,14 +355,14 @@ extern int target_flags;
#define FRAME_POINTER_REQUIRED 0 #define FRAME_POINTER_REQUIRED 0
/* Base register for access to arguments of the function. */ /* Base register for access to arguments of the function. */
#define ARG_POINTER_REGNUM 9 #define ARG_POINTER_REGNUM AP_REG
/* Register in which static-chain is passed to a function. */ /* Register in which static-chain is passed to a function. */
#define STATIC_CHAIN_REGNUM 3 #define STATIC_CHAIN_REGNUM SC_REG
/* Fake register that holds the address on the stack of the /* Fake register that holds the address on the stack of the
current function's return address. */ current function's return address. */
#define RETURN_ADDRESS_POINTER_REGNUM 10 #define RETURN_ADDRESS_POINTER_REGNUM RAP_REG
/* A C expression whose value is RTL representing the value of the return /* A C expression whose value is RTL representing the value of the return
address for the frame COUNT steps up from the current frame. address for the frame COUNT steps up from the current frame.
......
...@@ -51,8 +51,12 @@ ...@@ -51,8 +51,12 @@
;; ---------------------------------------------------------------------- ;; ----------------------------------------------------------------------
(define_constants (define_constants
[(FP_REG 6) [(SC_REG 3)
(SP_REG 7)]) (FP_REG 6)
(SP_REG 7)
(MAC_REG 8)
(AP_REG 9)
(RAP_REG 10)])
;; ---------------------------------------------------------------------- ;; ----------------------------------------------------------------------
;; ATTRIBUTES ;; ATTRIBUTES
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment