* config/h8500/tm-h8500.h (REGISTER_BYTES, REGISTER_BYTE,

REGISTER_NAMES): update to new view.  (INIT_EXTRA_FRAME_INFO): No
	extra frame info now.
This commit is contained in:
Steve Chamberlain 1993-12-12 00:05:25 +00:00
parent 34f07efe01
commit 3b5b507559
1 changed files with 32 additions and 16 deletions

View File

@ -30,6 +30,9 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#undef TARGET_INT_BIT
#define TARGET_INT_BIT 16
#undef TARGET_LONG_BIT
#define TARGET_LONG_BIT 32
#undef TARGET_PTR_BIT
#define TARGET_PTR_BIT (minimum_mode ? 16 : 32)
@ -83,12 +86,12 @@ extern CORE_ADDR h8500_skip_prologue ();
/* Say how much memory is needed to store a copy of the register set */
#define REGISTER_BYTES (24)
#define REGISTER_BYTES (NUM_REGS * 4)
/* Index within `registers' of the first byte of the space for
register N. */
#define REGISTER_BYTE(N) (regoff[N])
#define REGISTER_BYTE(N) ((N)*4)
/* Number of bytes of storage in the actual machine representation
for register N. */
@ -116,9 +119,9 @@ struct type *h8500_register_virtual_type PARAMS ((int regno));
Entries beyond the first NUM_REGS are ignored. */
#define REGISTER_NAMES \
{"r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", \
"ccr","pc", \
"cp","dp","ep","tp" }
{"r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", \
"pr0", "pr1", "pr2","pr3","pr4","pr5","pr6","pr7","cp","dp","ep","tp","ccr","pc"}
/* Register numbers of various important registers.
Note that some of these values are "real" register numbers,
@ -137,18 +140,31 @@ struct type *h8500_register_virtual_type PARAMS ((int regno));
#define R6_REGNUM 6
#define R7_REGNUM 7
#define SP_REGNUM R7_REGNUM /* Contains address of top of stack */
#define FP_REGNUM R6_REGNUM /* Contains address of executing stack frame */
#define CCR_REGNUM 8 /* Contains processor status */
#define PC_REGNUM 9 /* Contains program counter */
#define PR0_REGNUM 8
#define PR1_REGNUM 9
#define PR2_REGNUM 10
#define PR3_REGNUM 11
#define PR4_REGNUM 12
#define PR5_REGNUM 13
#define PR6_REGNUM 14
#define PR7_REGNUM 15
#define SEG_C_REGNUM 10 /* Segment registers */
#define SEG_D_REGNUM 11
#define SEG_E_REGNUM 12
#define SEG_T_REGNUM 13
#define SEG_C_REGNUM 16 /* Segment registers */
#define SEG_D_REGNUM 17
#define SEG_E_REGNUM 18
#define SEG_T_REGNUM 19
#define NUM_REGS 14
#define CCR_REGNUM 20 /* Contains processor status */
#define PC_REGNUM 21 /* Contains program counter */
#define NUM_REGS 22
#define SP_REGNUM PR7_REGNUM /* Contains address of top of stack */
#define FP_REGNUM PR6_REGNUM /* Contains address of executing stack frame */
#define PTR_SIZE (minimum_mode ? 2: 4)
#define PTR_MASK (minimum_mode ? 0x0000ffff : 0x00ffffff)
@ -205,8 +221,8 @@ struct type *h8500_register_virtual_type PARAMS ((int regno));
CORE_ADDR h8500_frame_chain (/* FRAME thisframe */);
#define INIT_EXTRA_FRAME_INFO(fromleaf, fci) \
(fci)->frame |= read_register(SEG_T_REGNUM) << 16;
#define INIT_EXTRA_FRAME_INFO(fromleaf, fci) ;
/* (fci)->frame |= read_register(SEG_T_REGNUM) << 16;*/
#define FRAME_CHAIN(FRAME) h8500_frame_chain(FRAME)