Commit graph

133 commits

Author SHA1 Message Date
Jim Blandy
ae83b20d8f Correct and expand handling of `movm' instruction, and register
saves in general.
* config/mn10300/tm-mn10300.h (D0_REGNUM, A0_REGNUM, MDRQ_REGNUM,
MCRH_REGNUM, MCRL_REGNUM, MCVF_REGNUM): New definitions.
(enum movm_register_bits): New enum.
* mn10300-tdep.c (set_movm_offsets): Use symbolic names for the
bits, not hex literals.  Handle the `other', `exreg0', and
`exother' bits.  Correct handling of `exreg1': it saves r4, r5,
r6, and r7, not r2, r3, r4, and r5.
(saved_regs_size): New function.
(mn10300_frame_chain, mn10300_frame_saved_pc): Use it, instead
of computing the same thing inline, incorrectly.
2001-05-09 02:44:01 +00:00
Jim Blandy
bf4b70a5e8 * mn10300-tdep.c (mn10300_gdbarch_init): We do have a
dummy_breakpoint_offset; it's zero.
2001-05-09 02:27:47 +00:00
Jim Blandy
ee9f9641e0 * mn10300-tdep.c (mn10300_pop_frame): Split the mn10300-specific
stuff out into mn10300_pop_frame_regular, and use
generic_pop_current_frame.  This lets us share code, and also
makes this function's prototype match that expected by gdbarch.
Make this function static.
(mn10300_pop_frame_regular): New function.
(mn10300_gdbarch_init): Register mn10300_pop_frame as the
gdbarch's pop_frame method.
* config/mn10300/tm-mn10300.h (POP_FRAME): Delete definition.
(mn10300_pop_frame): Delete declaration.
2001-05-09 02:22:35 +00:00
Jim Blandy
2ac51b362b * mn10300-tdep.c (mn10300_saved_pc_after_call,
mn10300_extract_return_value,
mn10300_extract_struct_value_address, mn10300_store_return_value,
mn10300_use_struct_convention, mn10300_breakpoint_from_pc,
mn10300_frame_chain, mn10300_skip_prologue,
mn10300_push_arguments, mn10300_push_return_address,
mn10300_store_struct_return, mn10300_frame_saved_pc,
mn10300_init_extra_frame_info, mn10300_frame_init_saved_regs):
Make these functions static; they should only be visible to the
outside world as gdbarch methods.
2001-05-09 02:19:06 +00:00
Jim Blandy
584f96a8e0 * mn10300-tdep.c (mn10300_gdbarch_init): Put the gdbarch methods
in some rational order.
2001-05-09 02:09:48 +00:00
Jim Blandy
82d983b66b * mn10300-tdep.c (mn10300_gdbarch_init): Rather than using
generic_pc_in_call_dummy, use pc_in_call_dummy_at_entry_point.
2001-05-09 02:07:36 +00:00
Jim Blandy
ad8fe2ce84 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.
2001-05-09 02:04:26 +00:00
Kevin Buettner
b6ba6518e9 Update/correct copyright notices. 2001-03-06 08:22:02 +00:00
Andrew Cagney
4e052eda91 Create new file regcache.h. Update all uses. 2001-03-01 01:39:22 +00:00
Andrew Cagney
8e65ff28b0 Add __FILE__ and __LINE__ parameter to internal_error() /
internal_verror().
2001-02-08 06:03:54 +00:00
Andrew Cagney
f6df245f76 Add formatted register info.
Convert more of mn10300 to multi-arch.
Fix mips vs mn10300
2000-08-12 03:28:42 +00:00
Andrew Cagney
9122588356 Enable multi-arch for the mn10300. 2000-08-11 07:54:49 +00:00
Kevin Buettner
fba45db2fa Protoization. 2000-07-30 01:48:28 +00:00
Kevin Buettner
a14ed312fd PARAMS removal. 2000-05-28 01:12:42 +00:00
Jason Molenda
c2d11a7da0 import gdb-1999-12-06 snapshot 1999-12-07 03:56:43 +00:00
Jason Molenda
c2c6d25f0d import gdb-1999-09-21 1999-09-22 03:28:34 +00:00
Jason Molenda
c5aa993b1f import gdb-1999-07-07 post reformat 1999-07-07 20:19:36 +00:00
Jason Molenda
43ff13b418 import gdb-1999-07-05 snapshot 1999-07-05 17:58:44 +00:00
Jason Molenda
0f71a2f66f import gdb-1999-06-14 snapshot 1999-06-14 18:08:47 +00:00
Stan Shebs
7a292a7adf import gdb-19990422 snapshot 1999-04-26 18:34:20 +00:00
Stan Shebs
c906108c21 Initial creation of sourceware repository 1999-04-16 01:35:26 +00:00
Stan Shebs
071ea11e85 Initial creation of sourceware repository 1999-04-16 01:34:07 +00:00
Andrew Cagney
9ddf9aa9be CARP:
Rename REGISTER_NAMES{} -> REGISTER_NAME().
1998-12-10 06:10:03 +00:00
Andrew Cagney
afcad54a90 CARP: *BREAKPOINT*
Convert mn10300, MIPS and powerpc/rs6000 targets to use
BREAKPOINT_FROM_PC
Delete global variable memory_breakpoint_size.  Use BREAKPOINT_FROM_PC
instead.
1998-11-24 13:49:00 +00:00
Andrew Cagney
98760eab33 CARP: Convert macro definitions of USE_STRUCT_CONVENTION into target
specific functions.
1998-11-23 12:35:23 +00:00
Mark Alexander
11ac795258 * config/mn10300/tm-mn10300.h (FP_REGNUM): Redefine to be a
pseudo-register, not the same as a3.
	(D2_REGNUM, D3_REGNUM, A2_REGNUM, A3_REGNUM): Define.
	* mn10300-tdep.c (fix_frame_pointer): New function.
	(set_movm_offsets): Use register number macros instead of
	hard-coded constants.
	(mn10300_analyze_prologue): Fix to handle redefinition of FP_REGNUM.
	(mn10300_frame_chain):  Fix to handle redefinition of FP_REGNUM;
	use register number macros instead of hard-coded constants;
	add missing parameter to call of mn10300_analyze_prologue.
	(mn10300_frame_saved_pc): Use register number macros instead of
	hard-coded constants.
1998-09-03 22:59:13 +00:00
Mark Alexander
5ef103c0b9 * mn10300-tdep.c (mn10300_analyze_prologue): Undo previous fix
for setting frame address in optimized code; made unnecessary
	by compiler fixes.
1998-07-27 22:41:21 +00:00
Jeff Law
b5b59a3c3c * mn10300-tdep.c (mn10300_frame_chain): Account for space saved
by am33 register saves.
        (mn10300_frame_saved_pc): Similarly.
1998-07-27 14:55:51 +00:00
Mark Alexander
52e4073c5f * mn10300-tdep.c (set_movm_offsets): New helper function
for mn10300_analyze_prologue.
	(mn10300_analyze_prologue): Simplify by factoring out common code.
	Fix bugs in setting frame address for optimized code.
	Use read_memory_nobpt instead of target_read_memory.
1998-07-24 14:48:41 +00:00
Geoffrey Noer
e385d6e03e Committing sanitize changes 1997-02-02 06:49:44 +00:00
Geoffrey Noer
95efddf268 Tue Jan 21 17:03:26 1997 Geoffrey Noer <noer@cygnus.com>
* mn10300-tdep.c: wrote/fixed implementations of
        mn10300_frame_chain, mn10300_init_extra_frame_info,
        mn10300_frame_saved_pc
        * config/mn10300/tm-mn10300.h: redefine INIT_EXTRA_FRAME_INFO
        and INIT_FRAME_PC macros
        Backtracing starting to work correctly.
1997-01-22 01:33:58 +00:00
Geoffrey Noer
3de7693865 Fri Jan 3 14:20:05 1997 Geoffrey Noer <noer@cygnus.com>
* mn10300-tdep.c (mn10300_push_arguments): rewrote
        also removed code elsewhere that made use of RP_REGNUM
1997-01-03 22:23:08 +00:00
Geoffrey Noer
ddc2888e6b Mon Dec 9 00:14:49 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: fix register names
        * mn10300-tdep.c: new skeleton tdep for mn10300
1996-12-09 08:33:27 +00:00