diff options
author | Jim Blandy <jimb@codesourcery.com> | 2001-05-09 02:04:26 +0000 |
---|---|---|
committer | Jim Blandy <jimb@codesourcery.com> | 2001-05-09 02:04:26 +0000 |
commit | 1f1b2baed3e105af5ee03cb968f3daf53999606e (patch) | |
tree | 002e95519dd3fbaafd9b0f91119e044949b9a00a /gdb/config/mn10300 | |
parent | 0385a380c49dfcc46431d2350c1b8f8997b27a84 (diff) | |
download | gdb-1f1b2baed3e105af5ee03cb968f3daf53999606e.tar.gz |
Use gdbarch for most target parameters for the MN10300, rather
than the tm-*.h file.
* config/mn10300/tm-mn10300.h (MAX_REGISTER_VIRTUAL_SIZE,
REGISTER_BYTES, FP_REGNUM, BREAKPOINT_FROM_PC,
FUNCTION_START_OFFSET, DECR_PC_AFTER_BREAK, INNER_THAN,
SAVED_PC_AFTER_CALL, INIT_EXTRA_FRAME_INFO, FRAME_INIT_SAVED_REGS,
FRAME_CHAIN, FRAME_CHAIN_VALID, FRAME_SAVED_PC,
EXTRACT_RETURN_VALUE, EXTRACT_STRUCT_VALUE_ADDRESS,
STORE_RETURN_VALUE, STORE_STRUCT_RETURN, SKIP_PROLOGUE,
FRAME_ARGS_SKIP, FRAME_ARGS_ADDRESS, FRAME_LOCALS_ADDRESS,
FRAME_NUM_ARGS, POP_FRAME, USE_GENERIC_DUMMY_FRAMES, CALL_DUMMY,
CALL_DUMMY_START_OFFSET, CALL_DUMMY_BREAKPOINT_OFFSET,
CALL_DUMMY_LOCATION, FIX_CALL_DUMMY, CALL_DUMMY_ADDRESS,
TARGET_READ_FP, PUSH_RETURN_ADDRESS, PUSH_DUMMY_FRAME,
SAVE_DUMMY_FRAME_TOS, PUSH_ARGUMENTS, PC_IN_CALL_DUMMY,
REG_STRUCT_HAS_ADDR, USE_STRUCT_CONVENTION, GET_SAVED_REGISTER):
Delete definitions. We register gdbarch methods for these now.
(struct frame_info, struct type, struct value): Delete forward
declarations of these types; they're no longer necessary, since we
don't have function declarations here any more.
* mn10300-tdep.c: #include "arch-utils.h", to get declarations for
some default gdbarch methods.
(mn10300_store_struct_return): Return void, as expected by
gdbarch.
(mn10300_init_extra_frame_info): Take initial `fromleaf' argument,
as expected by gdbarch.
(mn10300_frame_init_saved_regs): Provide dummy definition for
this, as required by gdbarch.
(mn10300_gdbarch_init): Add mn10300_call_dummy_words, as expected
by gdbarch. Register gdbarch methods or values for all the stuff
removed from tm-10300.h, listed above.
Diffstat (limited to 'gdb/config/mn10300')
-rw-r--r-- | gdb/config/mn10300/tm-mn10300.h | 102 |
1 files changed, 0 insertions, 102 deletions
diff --git a/gdb/config/mn10300/tm-mn10300.h b/gdb/config/mn10300/tm-mn10300.h index 33e22ba1dbd..0f8ee7125a2 100644 --- a/gdb/config/mn10300/tm-mn10300.h +++ b/gdb/config/mn10300/tm-mn10300.h @@ -43,10 +43,6 @@ #define REGISTER_RAW_SIZE(REG) 4 #endif -#define MAX_REGISTER_VIRTUAL_SIZE 4 - -#define REGISTER_BYTES (NUM_REGS * REGISTER_SIZE) - #define D2_REGNUM 2 #define D3_REGNUM 3 #define A2_REGNUM 6 @@ -59,111 +55,13 @@ #define LAR_REGNUM 13 #define E0_REGNUM 15 -/* Pseudo register that contains true address of executing stack frame */ -#define FP_REGNUM 31 - -/* BREAKPOINT_FROM_PC uses the program counter value to determine the - breakpoint that should be used */ -extern breakpoint_from_pc_fn mn10300_breakpoint_from_pc; -#define BREAKPOINT_FROM_PC(pcptr, lenptr) mn10300_breakpoint_from_pc (pcptr, lenptr) - -#define FUNCTION_START_OFFSET 0 - -#define DECR_PC_AFTER_BREAK 0 - -#define INNER_THAN(lhs,rhs) ((lhs) < (rhs)) - -extern CORE_ADDR mn10300_saved_pc_after_call (struct frame_info *frame); -#define SAVED_PC_AFTER_CALL(frame) \ - mn10300_saved_pc_after_call (frame) - -struct frame_info; -struct type; -struct value; - -extern void mn10300_init_extra_frame_info (struct frame_info *); -#define INIT_EXTRA_FRAME_INFO(fromleaf, fi) mn10300_init_extra_frame_info (fi) #define INIT_FRAME_PC /* Not necessary */ -#define FRAME_INIT_SAVED_REGS(fi) /* handled by init_extra_frame_info */ - -extern CORE_ADDR mn10300_frame_chain (struct frame_info *); -#define FRAME_CHAIN(fi) mn10300_frame_chain (fi) -#define FRAME_CHAIN_VALID(FP, FI) generic_file_frame_chain_valid (FP, FI) - extern CORE_ADDR mn10300_find_callers_reg (struct frame_info *, int); -extern CORE_ADDR mn10300_frame_saved_pc (struct frame_info *); -#define FRAME_SAVED_PC(FI) (mn10300_frame_saved_pc (FI)) - -/* Extract from an array REGBUF containing the (raw) register state - a function return value of type TYPE, and copy that, in virtual format, - into VALBUF. */ - -extern void mn10300_extract_return_value (struct type *type, char *regbuf, - char *valbuf); -#define EXTRACT_RETURN_VALUE(TYPE, REGBUF, VALBUF) \ - mn10300_extract_return_value (TYPE, REGBUF, VALBUF) - -CORE_ADDR mn10300_extract_struct_value_address (char *regbuf); -#define EXTRACT_STRUCT_VALUE_ADDRESS(REGBUF) \ - mn10300_extract_struct_value_address (REGBUF) - -void mn10300_store_return_value (struct type *type, char *valbuf); -#define STORE_RETURN_VALUE(TYPE, VALBUF) \ - mn10300_store_return_value (TYPE, VALBUF) - - -extern CORE_ADDR mn10300_store_struct_return (CORE_ADDR addr, CORE_ADDR sp); -#define STORE_STRUCT_RETURN(STRUCT_ADDR, SP) \ - (mn10300_store_struct_return (STRUCT_ADDR, SP)) - -extern CORE_ADDR mn10300_skip_prologue (CORE_ADDR); -#define SKIP_PROLOGUE(pc) (mn10300_skip_prologue (pc)) - -#define FRAME_ARGS_SKIP 0 - -#define FRAME_ARGS_ADDRESS(fi) ((fi)->frame) -#define FRAME_LOCALS_ADDRESS(fi) ((fi)->frame) -#define FRAME_NUM_ARGS(fi) (-1) extern void mn10300_pop_frame (struct frame_info *); #define POP_FRAME mn10300_pop_frame (get_current_frame ()) -#define USE_GENERIC_DUMMY_FRAMES 1 -#define CALL_DUMMY {0} -#define CALL_DUMMY_START_OFFSET (0) -#define CALL_DUMMY_BREAKPOINT_OFFSET (0) -#define CALL_DUMMY_LOCATION AT_ENTRY_POINT -#define FIX_CALL_DUMMY(DUMMY, START, FUNADDR, NARGS, ARGS, TYPE, GCCP) -#define CALL_DUMMY_ADDRESS() entry_point_address () - -#define TARGET_READ_FP() read_sp () - -extern CORE_ADDR mn10300_push_return_address (CORE_ADDR, CORE_ADDR); -#define PUSH_RETURN_ADDRESS(PC, SP) mn10300_push_return_address (PC, SP) - -#define PUSH_DUMMY_FRAME generic_push_dummy_frame () -#define SAVE_DUMMY_FRAME_TOS(SP) generic_save_dummy_frame_tos (SP) - -extern CORE_ADDR -mn10300_push_arguments (int, struct value **, CORE_ADDR, - int, CORE_ADDR); -#define PUSH_ARGUMENTS(NARGS, ARGS, SP, STRUCT_RETURN, STRUCT_ADDR) \ - (mn10300_push_arguments (NARGS, ARGS, SP, STRUCT_RETURN, STRUCT_ADDR)) - -#define PC_IN_CALL_DUMMY(PC, SP, FP) generic_pc_in_call_dummy (PC, SP, FP) - -#define REG_STRUCT_HAS_ADDR(gcc_p,TYPE) \ - (TYPE_LENGTH (TYPE) > 8) - -extern use_struct_convention_fn mn10300_use_struct_convention; -#define USE_STRUCT_CONVENTION(GCC_P, TYPE) mn10300_use_struct_convention (GCC_P, TYPE) - -/* override the default get_saved_register function with - one that takes account of generic CALL_DUMMY frames */ -#define GET_SAVED_REGISTER(raw_buffer, optimized, addrp, frame, regnum, lval) \ - generic_get_saved_register (raw_buffer, optimized, addrp, frame, regnum, lval) - /* Cons up virtual frame pointer for trace */ extern void mn10300_virtual_frame_pointer (CORE_ADDR, long *, long *); #define TARGET_VIRTUAL_FRAME_POINTER(PC, REGP, OFFP) \ |