| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
(sparc_fetch_instruction): New prototype.
* sparc-tdep.c: Update copyright year.
(sparc_fetch_instruction): Make global.
* sparc64-tdep.c: Update copyright year.
(sparc_fetch_instruction): Remove function.
(X_OP, X_RD, X_A, X_COND, X_OP2, X_IMM22, X_OP3, X_I, X_DISP22)
(X_DISP19): Really remove macros.
* sparc64-sol2-tdep.c: Update copyright year.
* sparc64fbsd-tdep.c: Likewise.
|
|
|
|
| |
* sparc-sol2-tdep.c (sparc_sol2_pc_in_sigtramp): Make global.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
sparc32_frame_cache'.
(sparc_analyze_prologue, sparc_frame_cache): New prototypes.
(sparc32_frame_cache): Adjust prototype.
* sparc-tdep.c (sparc_alloc_frame_cache): Rename from
sparc32_alloc_frame_cache. Use `struct sparc_frame_cache' instead
of `struct sparc32_frame_cache'.
(sparc_analyze_prologue): Rename from sparc32_analyze_prologue.
Use `struct sparc_frame_cache' instead of `struct
sparc32_frame_cache'.
(sparc32_skip_prologue): Use `struct sparc_frame_cache' instead of
`struct sparc32_frame_cache'. Call sparc_analyze_prologue instead
of sparc32_analyze_prologue.
(sparc_frame_cache): New function with generic code from...
(sparc32_frame_cache): ...here.
(sparc32_frame_this_id, sparc32_frame_prev_register)
(sparc32_frame_base_address): Use `struct sparc_frame_cache'
instead of `struct sparc32_frame_cache'.
* sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache)
(sparc32_sol2_sigtramp_frame_this_id)
(sparc32_sol2_sigtramp_frame_prev_register): Change return type to
`struct sparc_frame_cache *'.
* sparc-linux-tdep.c (sparc32_linux_sigtramp_frame_cache)
(sparc32_linux_sigtramp_frame_this_id)
(sparc32_linux_sigtramp_frame_prev_register): Change return type
to `struct sparc_frame_cache *'.
* sparc64-tdep.c (X_OP, X_RD, X_A, X_COND, X_OP2, X_IMM22, X_OP3)
(X_I, X_DISP22, X_DISP19): Remove macros.
(struct sparc64_frame_cache): Remove.
(sparc64_alloc_frame_cache, sparc64_analyze_prologue): Remove
functions.
(sparc64_skip_prologue): Use `struct sparc_frame_cache' instead of
`struct sparc64_frame_cache. Call sparc_analyze_prologue instead
of sparc64_analuze_prologue.
(sparc64_frame_this_id, sparc64_frame_prev_register,
sparc64_frame_base_address): Use `struct sparc_frame_cache'
instead of `struct sparc64_frame_cache.
(sparc64_frame_cache): Change return type to `struct
sparc_frame_cache *'. Simply call sparc_frame_cache.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sparcnbsd-nat.c: Rewrite.
* sparcnbsd-tdep.c (sparc32nbsd_gregset): Rename from
sparcnbsd_gregset.
(fetch_core_registers): Adjust.
(sparc32nbsd_init_abi): Rename from sparcnbsd_init_abi.
(sparc32nbsd_aout_init_abi): Rename from sparcbsd_aout_init_abi.
(sparc32nbsd_elf_init_abi): Rename from sparcbsd_elf_init_abi.
(_initialize_sparnbsd_tdep): Adjust.
* Makefile.in (ALLDEPFILES): Add sparcnbsd-nat.c.
(sparcnbsd-nat.o): New dependency.
* configure.host: Add sparc-*-netbsdelf*, sparc-*-netbsdaout* and
sparc-*-netbsd*.
* config/sparc/nm-nbsd.h: Don't include "regcache.h".
(CHILD_PREPARE_TO_STORE): Remove.
* config/sparc/nm-nbsdaout.h: Tweak some comments.
* config/sparc/nbsdelf.mh (NATDEPFILES): Add sparc-nat.o.
(XM_FILE): Delete.
* config/sparc/nbsdaout.mh (NATDEPFILES): Add sparc-nat.o
(XM_FILE): Delete.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(sparc32_pseudo_register_names): New variable.
(SPARC32_NUM_PSEUDO_REGS): New define.
(sparc32_register_name): Add support for psuedo-registers.
(sparc32_register_type): Add support double precision
floating-point registers.
(sparc32_pseudo_register_read, sparc32_pseudo_register_write): New
functions.
(sparc32_gdbarch_init): Set num_pseudo_regs, pseudo_register_read
and pseudo_register_write.
* sparc-tdep.h (sparc32_regnum): Add SPARC32_D0_REGNUM and
SPARC32_D30_REGNUM.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(sparc32_supply_gregset): Renamed from sparc_supply_gregset.
(sparc32_collect_gregset): Renamed from sparc_collect_gregset.
(sparc32_supply_fpregset): Renamed from sparc_supply_fpregset.
(sparc32_collect_fpregset): Renamed from sparc_collect_fpregset.
* sparc-tdep.c (sparc32_supply_gregset): Renamed from
sparc_supply_gregset.
(sparc32_collect_gregset): Renamed from sparc_collect_gregset.
(sparc32_supply_fpregset): Renamed from sparc_supply_fpregset.
(sparc32_collect_fpregset): Renamed from sparc_collect_fpregset.
* sparc-linux-tdep.c: Include "solib-svr4.h".
(sparc32_linux_svr4_fetch_link_map_offsets): New function.
(sparc32_linux_init_abi): Set solib_svr4_fetch_link_map_offsets.
* sparc-nat.h: New file.
* sparc-nat.c: Add some more comments. Include "sparc-nat.h".
(PTRACE_GETREGS): Define to PT_GETREGS if not already defined.
(PTRACE_SETREGS, PTRACE_GETFPREGS, PTRACE_SETFPREGS): Likewise.
(sparc_supply_gregset, sparc_collect_gregset,
sparc_supply_fpregset, sparc_collect_fpregset,
sparc_gregset_supplies_p, sparc_fpregset_supplies_p): New function
variables.
(sparc32_gregset_supplies_p): Rename from
sparc_gregset_supplies_p.
(sparc32_fpregset_supplies_p): Rename from
sparc_fpregset_supplies_p.
(fetch_inferior_registers): Deal with GNU/Linux LWPs.
(store_inferior_registers): Likewise. Work around peculiarity in
NetBSD when writing the floating-point registers.
(_initialize_sparc_nat): Initialize sparc_supply_gregset,
sparc_collect_gregset, sparc_supply_fpregset,
sparc_collect_fpregset, sparc_gregset_supplies_p and
sparc_fpregset_supplies_p if necessary.
* sparc-sol2-nat.c (supply_gregset): Call sparc32_supply_gregset
instead of sparc_supply_gregset.
(supply_fpregset, fill_gregset, fill_fpregset): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(sparc_sol2_supply_gregset, sparc_sol2_collect_gregset,
sparc_sol2_supply_fpregset, sparc_sol2_collect_fpregset): Remove
prototypes.
(sparc_supply_gregset, sparc_collect_gregset,
sparc_supply_fpregset, sparc_collect_fpregset): New prototypes.
(sparc32_sunos4_gregset, sparc32_sol2_gregset): New extern
declarations.
(sparc32_sol2_init_abi): Rename from sparc_sol2_init_abi.
* sparc-tdep.c (sparc_supply_gregset, sparc_collect_gregset,
sparc_supply_fpregset, sparc_collect_fpregset): New function.
(sparc32_sunos4_gregset): New variable.
* sparc-sol2-tdep.c (sparc_sol2_R_PSR, sparc_sol2_R_PC,
sparc_sol2_R_nPC, sparc_sol2_R_Y, sparc_sol2_R_WIM,
sparc_sol2_R_TBR): Remove variables.
(sparc_sol2_supply_gregset, sparc_sol2_collect_gregset,
sparc_sol2_supply_fpregset, sparc_sol2_collect_fpregset): Remove
functions.
(sparc32_sol2_gregset): New variable.
(sparc32_sol2_sigtramp_frame_cache): Rename from
sparc_sol2_sigtramp_frame_cache.
(sparc32_sol2_sigtramp_frame_this_id): Rename from
sparc_sol2_sigtramp_frame_this_id.
(sparc32_sol2_sigtramp_frame_prev_register): Rename from
sparc_sol2_sigtramp_frame_prev_register.
(sparc32_sol2_sigtramp_frame_unwind): Rename from
sparc_sol2_sigtramp_frame_unwind.
(sparc32_sol2_sigtramp_frame_sniffer): Rename from
sparc_sol2_sigtramp_frame_sniffer.
(sparc32_sol2_init_abi): Rename from sparc_sol2_init_abi.
(_initialize_sparc_sol2_tdep): Update.
* sparc-linux-tdep.c: New file.
* sparc-nat.o: Replace with new file.
* sparc-linux-nat.c: Remove file.
* config/sparc/linux.mh (XM_FILE, HOST_IPC): Remove.
(NATDEPFILES): Add sparc-sol2-nat.o and core-regset.o. Remove
sparc-linux-nat.o.
* config/sparc/linux.mt (TDEPFILES): Add sparc-sol2-tdep.o and
sparc-linux-tdep.o.
* config/sparc/nm-linux.h: Don't include "config/nm-svr4.h" and
"solib.h". Add protection against multiple inclusion.
(KERNEL_U_SIZE): Don't define.
(kernel_u_size): Remove prototype.
* config/sparc/tm-linux.h: Replace with new file.
* configure.tgt: Add sparc-*-linux*.
* configure.host: Add sparc-*-linux*.
* Makefile.in (ALLDEPFILES): Add sparc-linux-tdep.c and
sparc-nat.c.
(sparc-nat.o, sparc-linux-tdep.o): New dependencies.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sparc-tdep.h (struct sparc32_frame_cache): Add pc_regnum and
npc_regnum members.
* sparc-tdep.c (sparc_unwind_pc): Rename from sparc32_unwind_pc.
Get register numbers for %pc from `struct gdbarch_tdep' instead of
using 32-bit specific constants.
(sparc_software_single_step): Get register numbers from %pc and
%npc from `struct gdbarch_tdep'.
(sparc_write_pc): Rename from sparc32_write_pc. Get register
numbers from %pc and %npc from `struct gdbarch_tdep'.
(sparc32_gdbarch_init): Initialize TDEP->pc_regnum,
TDEP->npc_regnum and TDEP->plt_entry_size. Set write_pc to
sparc_write_pc, set unwind_pc to sparc_unwind_pc.
* sparc64-tdep.h: Fix typo in multiple inclusion guard. Include
"sparc-tdep.h".
(enum sparc_regnum): Remove.
(sparc_supply_rwindow, sparc_fill_rwindow): Remove prototypes.
(sparc64_init_abi): New prototype.
* sparc64-tdep.c: Include "inferior.h" and "sparc-tdep.h".
(struct gdbarch_tdep): Remove definition.
(SPARC64_NUM_REGS, SPARC64_NUM_PSEUDO_REGS): Use ARRAY_SIZE.
(sparc_breakpoint_from_pc, sparc64_unwind_pc,
sparc_unwind_dummy_id, sparc_extract_struct_value_address,
sparc_analyze_control_transfer, sparc_software_single_step,
sparc64_gdbarch_init, sparc_supply_rwindow, sparc_fill_rwindow,
_initialize_sparc64_tdep): Remove functions.
(sparc64_init_abi): New function.
* sparc64fbsd-tdep.c (sparc64fbsd_supply_reg): Call
sparc_supply_rwindow with correct number of arguments.
(sparc64fbsd_init_abi): Call sparc64_init_abi.
* sparcbsd-nat.c (store_inferior_registers): Call
sparc_collect_rwindow instead sparc_fill_rwindow.
* config/sparc/fbsd.mt (TDEPFILES): Add sparc-tdep.o and corelow.o.
* config/sparc/fbsd.mh (NATDEPFILES): Remove corelow.o.
* Makefile.in (sparc64_tdep_h): Add dependency on sparc-tdep.h.
(sparc64-tdep.o): Update dependencies.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.tgt: Remove support for old SPARC targets.
* configure.tgt: Remove support for old SPARC hosts.
* Makefile.in: Remove support for old SPARC hosts and targets.
(sparc-tdep.o): Update dependencies.
(sparc-sol2-tdep.o, sparc-sol2-nat.o): New dependencies.
* sparc-tdep.c, sparc-tdep.h: New implementation.
* sparc-sol2-tdep.c, sparc-sol2-nat.c: New files.
* config/sparc/sparc.mt: New files.
* config/sparc/sol2.mt, config/sparc/sol2.mh: New files.
* config/sparc/tm-sol2.h: New file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(sparc-linux-nat.o, sparc-nat.o, sparc-tdep.o, sparc64nbsd-nat.o)
(sparcnbsd-nat.o, sparcnbsd-tdep.o): Depend on $(sparc_tdep_h).
* sparc-linux-nat.c: Include "sparc-tdep.h".
* sparc-nat.c: Likewise.
* sparc-tdep.c: Likewise.
* sparc64nbsd-nat.c: Likewise.
* sparcnbsd-nat.c: Likewise.
* sparcnbsd-tdep.c: Likewise.
* sparc-tdep.h: New file.
* config/sparc/tm-sparc.h: Remove prototypes for sparc_y_regnum
and sparc_npc_regnum.
|
| |
|
|
* sparc-tdep.h: New file.
* sparc-tdep.c (elf-bfd.h): Include.
(SPARC_HAS_FPU, FP_REGISTER_BYTES, FP_MAX_REGNUM,
SPARC_INTREG_SIZE, DUMMY_REG_SAVE_OFFSET, gdbarch_tdep,
CALL_DUMMY_CALL_OFFSET): Move out to sparc-tdep.h
(sparc_dump_tdep): New function.
(_initialize_sparc_tdep): Use gdbarch_register instead of
register_gdbarch_init which is deprecated.
(process_note_abi_tag_sections, sparc_abi_handler,
sparc_abi_handler_list, sparc_gdbarch_register_os_abi): New.
(sparc_gdbarch_init): Determine elf os ident key based upon
either the elf header or by using process_note_abi_tag_sections.
Fix 'gdbarch already exists' test by comparing os_ident as well.
As the last action, invoke OS abi_handler if installed.
|