Age | Commit message (Collapse) | Author | Files | Lines |
|
* configure.tgt: Add mn10300 to list of mulit-arch targets.
* config/mn10300/tm-mn10300.h: Delete file. Move contents ...
* mn10300-tdep.c: To here.
|
|
* mn10300-tdep.c (mn10300_gdbarch_init): Initialize pc_regnum and
sp_regnum.
|
|
* mn10300-tdep.c (mn10300_gdbarch_init): Initialize init_frame_pc.
|
|
* gdbarch.sh (TARGET_VIRTUAL_FRAME_POINTER): Add.
* gdbarch.h, gdbarch.c: Regenerate.
* arch-utils.h (legacy_virtual_frame_pointer): Declare.
* arch-utils.c: Include "gdb_assert.h".
(legacy_virtual_frame_pointer): Define.
* Makefile.in (arch-utils.o): Depends on gdb_assert.h.
* tracepoint.c (encode_actions): Make frame_reg an int. Make
frame_offset a LONGEST.
* ax-gdb.c (gen_frame_args_address): Ditto.
(gen_frame_locals_address): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Initialize
virtual_frame_pointer.
(mn10300_virtual_frame_pointer): Make static. Update parameter
list to match function signature.
* config/mn10300/tm-mn10300.h (TARGET_VIRTUAL_FRAME_POINTER): Delete.
|
|
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.
|
|
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.
|
|
unused declaration.
|
|
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.
|
|
|
|
* config/mn10300/tm-mn10300.h (E0_REGNUM): Correct to 15.
|
|
Convert more of mn10300 to multi-arch.
Fix mips vs mn10300
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
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.
|
|
Rename REGISTER_NAMES{} -> REGISTER_NAME().
|
|
Rewrite INNER_THAN so that it takes parameters.
|
|
* 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.
|
|
Convert mn10300, MIPS and powerpc/rs6000 targets to use
BREAKPOINT_FROM_PC
Delete global variable memory_breakpoint_size. Use BREAKPOINT_FROM_PC
instead.
|
|
specific functions.
|
|
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.
|
|
(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.
|
|
structure value address is found in $a0 now.
* config/mn10200/tm-mn10200.h (EXTRACT_STRUCT_VALUE_ADDRESS): Likewise.
Fixes some struct.exp failures.
|
|
returned in $a0.
(EXTRACT_RETURN_VALUE): Likewise.
* mn10300-tdep.c (mn10300_analyze_prologue): Check for a return
insn at "pc", not "fi->pc".
|
|
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
|
|
* 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.
|
|
* config/mn10300/tm-mn10300.h: fix BREAKPOINT definition
|
|
* 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
|
|
* 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
|
|
|
|
* config/mn10300/tm-mn10300.h: more small register fixes
|
|
* config/mn10300/tm-mn10300.h: more small register fixes
* mn10300-tdep.c: filled in from another target
|
|
|
|
* config/mn10300/tm-mn10300.h: fix register names
* mn10300-tdep.c: new skeleton tdep for mn10300
|
|
* config/mn10300/mn10300.mt
* config/mn10300/tm-mn10300.h: new config files for mn10300
processor
|