Commit graph

47 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
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
af4e72e9d0 * config/mn10300/tm-mn10300.h (mn10300_find_callers_reg): Delete
unused declaration.
2001-05-09 02:16:38 +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
Matthew Hiller
2edb46b1ea 2001-03-02 Matt Hiller <hiller@redhat.com>
* config/mn10300/tm-mn10300.h (E0_REGNUM): Correct to 15.
2001-03-02 22:41:05 +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
a14ed312fd PARAMS removal. 2000-05-28 01:12:42 +00:00
Jason Molenda
d9fcf2fb1c import gdb-2000-02-01 snapshot 2000-02-02 00:21:19 +00:00
Jason Molenda
c4093a6ab3 import gdb-1999-12-13 snapshot 1999-12-14 01:06:04 +00:00
Stan Shebs
d4f3574e77 import gdb-1999-09-08 snapshot 1999-09-09 00:02:17 +00:00
Jason Molenda
104c1213b4 import gdb-1999-08-30 snapshot 1999-08-31 01:14:27 +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
Jason Molenda
392a587b05 import gdb-1999-05-25 snapshot 1999-05-25 18:09:09 +00:00
Stan Shebs
b83266a0e1 import gdb-19990504 snapshot 1999-05-05 14:45:51 +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
Jeff Law
b041460dbe am33 sanitize changes 1999-01-26 14:52:15 +00:00
Andrew Cagney
aaa3c096db CARP:
Re-do TARGET_PRINT_INSN_INFO, TARGET_PRINT_INSN, TARGET_ARCHITECTURE,
TARGET_ARCHITECTURE_AUTO, TARGET_BYTE_ORDER_SELECTABLE_P,
TARGET_BYTE_ORDER so that they can all be overriden.

Document.

Convert mn10300 and PPC targets.
1998-12-13 23:28:46 +00:00
Andrew Cagney
86a51f415d CARP: Mechanism to replace EXTRA_FRAME_INFO.
Add two pointers (saved_regs, extra_info) to struct frame_info.
Introduce new macro FRAME_INIT_SAVED_REGS which replaces
FRAME_FIND_SAVED_REGS.

Document.

Use in mn10300 and rs6000 targets. Fix side effects on ALPHA, MIPS,
Z8K and SPARC targets.
1998-12-12 02:50:39 +00:00
Andrew Cagney
9ddf9aa9be CARP:
Rename REGISTER_NAMES{} -> REGISTER_NAME().
1998-12-10 06:10:03 +00:00
Andrew Cagney
3a0c96a996 CARP:
Rewrite INNER_THAN so that it takes parameters.
1998-11-28 22:53:04 +00:00
Michael Snyder
4183a62a97 Tue Nov 24 15:46:33 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* config/mn10300/tm-mn10300.h (TARGET_VIRTUAL_FRAME_POINTER):
        new target macro.
        * mn10300-tdep.c (mn10300_virtual_frame_pointer): new function.
        * tracepoint.c (encode_actions): Use the new target macro to
        determine the virtual frame pointer, for collecting locals/args.
        (add_local_symbols, collect_symbol): add a register/offset pair of
        arguments so that the virtual frame pointer can be passed in.
1998-11-24 23:50:20 +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
Jeff Law
f05bd277cf * mn10300-tdep.c (mn10300_generic_register_names): New variable.
(set_machine_hook): New function.  Copy the appropriate register
        names into reg_names.
        (_initialize_mn10300_tdep): Set up to call set_machine_hook.
        * tm-mn10300 (NUM_REGS): Bump to 32.
        (REGISTER_NAMES): Updated accordingly.

start-sanitize-am33
        * mn10300-tdep.c (am33_register_names): New variable.
        (mn10300_analyze_prologue): Handle regs saved by am33 prologues.
        * tm-mn10300.h (E0_REGNUM): Define.
end-sanitize-am33

Initial am33 support.
1998-07-09 22:23:18 +00:00
Jeff Law
157d3d5daa * config/mn10300/tm-mn10300.h (EXTRACT_STRUCT_VALUE_ADDRESS): The
structure value address is found in $a0 now.
        * config/mn10200/tm-mn10200.h (EXTRACT_STRUCT_VALUE_ADDRESS): Likewise.
Fixes some struct.exp failures.
1997-04-25 06:14:15 +00:00
Jeff Law
726229db59 * config/mn10300/tm-mn10300.h (STORE_RETURN_VALUE): Pointers are
returned in $a0.
        (EXTRACT_RETURN_VALUE): Likewise.

        * mn10300-tdep.c (mn10300_analyze_prologue): Check for a return
        insn at "pc", not "fi->pc".
1997-04-24 19:35:11 +00:00
Jeff Law
fc8d57c2dc * mn10300-tdep.c: Almost completely rewritten based on mn10200
port.
        * config/mn10300/tm-mn10300.h: Likewise.

                === gdb Summary ===

# of expected passes            3890
# of unexpected failures        8
# of expected failures          39
# of unresolved testcases       1
1997-04-09 17:43:26 +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
1bb1df85cb Thu Jan 16 14:10:41 1997 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: fix BREAKPOINT definition
1997-01-16 22:14:19 +00:00
Geoffrey Noer
6c009684d9 Tue Jan 14 16:01:06 1997 Geoffrey Noer <noer@cygnus.com>
* mn10300-tdep.c: made a lot more generic, ripping out code
        from copied target (no more mn10300_scan_prologue,
        init_extra_frame_info, and mn10300_fix_call_dummy calls)
        * config/mn10300/tm-mn10300.h: undefine INIT_EXTRA_FRAME_INFO
        and INIT_FRAME_PC macros
1997-01-15 00:06:41 +00:00
Geoffrey Noer
4efc404588 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
        * config/mn10300/tm-mn10300.h: ripped out RP_REGNUM, V0_REGNUM,
        ARG0_REGNUM, ARGLAST_REGNUM (all not appropriate for mn10300
        arch.), redefined SAVED_PC_AFTER_CALL, EXTRACT_RETURN_VALUE,
        EXTRACT_STRUCT_VALUE_ADDRESS, STORE_RETURN_VALUE
1997-01-03 22:34:52 +00:00
Geoffrey Noer
fb0b06b0cf small fix 1996-12-31 23:30:48 +00:00
Geoffrey Noer
a2bfe134c1 Tue Dec 31 15:19:32 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: more small register fixes
1996-12-31 23:21:34 +00:00
Angela Marie Thomas
72e83496c1 add missing Do-last: 1996-12-17 19:45:09 +00:00
Geoffrey Noer
4da0f856e2 Mon Dec 9 17:34:05 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/tm-mn10300.h: more small register fixes
        * mn10300-tdep.c: filled in from another target
1996-12-10 01:41:16 +00:00
Geoffrey Noer
578d1f4493 additional register stuff 1996-12-09 09:11:45 +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
Geoffrey Noer
021b78fb68 fixed sanitize files 1996-12-05 00:37:33 +00:00
Geoffrey Noer
6823374b90 Wed Dec 4 16:34:05 1996 Geoffrey Noer <noer@cygnus.com>
* config/mn10300/mn10300.mt
        * config/mn10300/tm-mn10300.h: new config files for mn10300
        processor
1996-12-05 00:36:45 +00:00