aboutsummaryrefslogtreecommitdiff
path: root/gdb/m68klinux-tdep.c
AgeCommit message (Collapse)AuthorFilesLines
2004-07-202004-07-20 Andrew Cagney <cagney@gnu.org>Andrew Cagney1-1/+1
* breakpoint.c (deprecated_read_memory_nobpt): Rename read_memory_nobpt. * sparc-linux-tdep.c (sparc_linux_sigtramp_start): Update. * s390-tdep.c (s390_readinstruction, s390_in_function_epilogue_p) (s390_sigtramp_frame_sniffer): Update. * mn10300-tdep.c (mn10300_analyze_prologue): Update. * mipsnbsd-tdep.c (mipsnbsd_sigtramp_offset): Update. * mips-tdep.c (mips_fetch_instruction, mips16_fetch_instruction) (mips32_fetch_instruction): Update. * mcore-tdep.c (get_insn): Update. * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Update. * i386nbsd-tdep.c (i386nbsd_sigtramp_offset): Update. * i386ly-tdep.c (i386lynx_saved_pc_after_call): Update. * i386-linux-tdep.c (i386_linux_sigtramp_start) (i386_linux_rt_sigtramp_start): Update. * i386-linux-nat.c (child_resume): Update. * hppa-tdep.c (skip_prologue_hard_way, hppa_frame_cache): Update. * hppa-linux-tdep.c (insns_match_pattern): Update. * gdbcore.h: Update. * frv-tdep.c (frv_gdbarch_adjust_breakpoint_address): Update. * frame.c (safe_frame_unwind_memory): Update. * amd64-linux-tdep.c (amd64_linux_sigtramp_start): Update. * alphanbsd-tdep.c (alphanbsd_sigtramp_offset): Update. * alpha-tdep.c (alpha_read_insn): Update.
2004-05-03* m68k-tdep.h (struct gdbarch_tdep): Add memberMark Kettenis1-108/+10
struct_value_regnum. (m68k_svr4_init_abi): New prototype. * m68k-tdep.c: Include "floatformat.h". Add comment about all the different calling conventions. (m68k_extract_return_value): Remove code dealing with single-field structs. (m68k_store_return_value): Remove code dealing with single-field structs. Correctly store return values of 5, 6, 7 or 8 bytes. (m68k_extract_struct_value_address): Remove function. (m68k_svr4_extract_return_value,m68k_svr4_store_return_value) (m68k_reg_struct_return_p, m68k_return_value) (m68k_svr4_return_value): New functions. (m68k_use_struct_convention): Remove function. (m68k_push_dummy_call): Use new struct_value_regnum member of `struct gdbarch_tdep' instead of hardcoded register number to store STRUCT_ADDR. (m68k_svr4_init_abi): New function. (m68k_gdbarch_init): Don't set extract_return_value, store_return_values, deprecated_extract_struct_value_address and use_struct_convention. Set return_value instead. Initialize new struct_value_regnum member of `struct gdbarch_tdep'. * m68klinux-tdep.c: Update copyright year. (m68k_linux_extract_return_value, m68k_linux_store_return_value) (m68k_linux_extract_struct_value_address): Remove function. (m68k_linux_init_abi): Don't set extract_return_value, store_return_values, deprecated_extract_struct_value_address and use_struct_convention. Call m68k_svr4_init_abi but override the new struct_value_regnum member of `struct gdbarch_tdep'. * Makefile.in (m68k-tdep.o): Update dependencies.
2004-05-012004-05-01 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-4/+98
* Makefile.in (m68klinux-nat.o): Update dependencies. * m68klinux-tdep.c: Include "trad-frame.h" and "frame-unwind.h". (m68k_linux_sigtramp_frame_cache) (m68k_linux_sigtramp_frame_this_id) (m68k_linux_sigtramp_frame_prev_register) (m68k_linux_sigtramp_frame_unwind) (m68k_linux_sigtramp_frame_sniffer) (struct m68k_linux_sigtramp_info, m68k_linux_init_abi): Code from m68k-tdep.h and m68k-tdep.c, add "linux" to function and variable names, use trad-frame.h. * m68k-tdep.h (struct gdbarch_tdep): Delete get_sigtramp_info. (struct m68k_sigtramp_info): Delete. * m68k-tdep.c (m68k_sigtramp_frame_cache) (m68k_sigtramp_frame_this_id, m68k_sigtramp_frame_prev_register) (m68k_sigtramp_frame_unwind, m68k_sigtramp_frame_sniffer) (m68k_gdbarch_init): Delete all the sigtramp code, moved to "m68klinux-tdep.c".
2004-03-232004-03-23 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-1/+1
* gdbarch.sh (PC_IN_SIGTRAMP): Change to a function with predicate, deprecate. * gdbarch.h, gdbarch.c: Re-generate. * alpha-linux-tdep.c (alpha_linux_init_abi): Update. * alpha-osf1-tdep.c (alpha_osf1_init_abi): Update. * alpha-tdep.c (alpha_sigtramp_frame_sniffer): Update. * alphafbsd-tdep.c (alphafbsd_init_abi): Update. * alphanbsd-tdep.c (alphanbsd_init_abi): Update. * amd64-linux-tdep.c (amd64_linux_init_abi): Update. * amd64-tdep.c (amd64_sigtramp_frame_sniffer): Update. * amd64nbsd-tdep.c (amd64nbsd_init_abi): Update. * amd64obsd-tdep.c (amd64obsd_init_abi): Update. * arm-tdep.c (arm_sigtramp_unwind_sniffer): Update. * blockframe.c (find_pc_partial_function): Update. * breakpoint.c (bpstat_what): Update. * frame.c (frame_type_from_pc, legacy_get_prev_frame): Update. * frv-linux-tdep.c (frv_linux_init_abi): Update. * frv-tdep.c (frv_sigtramp_frame_sniffer): Update. * hppa-hpux-tdep.c (hppa_hpux_init_abi): Update. * i386-interix-tdep.c (i386_interix_init_abi): Update. * i386-linux-tdep.c (i386_linux_init_abi): Update. * i386-nto-tdep.c (i386nto_init_abi): Update. * i386-sol2-tdep.c (i386_sol2_init_abi): Update. * i386-tdep.c (i386_sigtramp_frame_sniffer) (i386_svr4_init_abi, i386_go32_init_abi, i386_gdbarch_init): Update. * i386bsd-tdep.c (i386bsd_init_abi): Update. * i386nbsd-tdep.c (i386nbsd_init_abi): Update. * i386obsd-tdep.c (i386obsd_init_abi): Update. * ia64-tdep.c (ia64_sigtramp_frame_sniffer): Update. * infrun.c (pc_in_sigtramp): Update. * m68k-tdep.c (m68k_sigtramp_frame_sniffer): Update. * m68klinux-tdep.c (m68k_linux_init_abi): Update. * mips-tdep.c (mips_gdbarch_init): Update. * mipsnbsd-tdep.c (mipsnbsd_init_abi): Update. * ppc-linux-tdep.c: Update comment. * ppcnbsd-tdep.c (ppcnbsd_init_abi): Update. * shnbsd-tdep.c (shnbsd_init_abi): Update. * sparc-linux-tdep.c (sparc32_linux_init_abi): Update. * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Update. * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Update. * sparc64fbsd-tdep.c (sparc64fbsd_init_abi): Update. * sparc64nbsd-tdep.c (sparc64nbsd_init_abi): Update. * sparc64obsd-tdep.c (sparc64obsd_init_abi): Update. * sparcnbsd-tdep.c (sparc32nbsd_init_abi): Update. * sparcobsd-tdep.c (sparc32obsd_init_abi): Update. Index: doc/ChangeLog 2004-03-23 Andrew Cagney <cagney@redhat.com> * gdbint.texinfo (Target Architecture Definition): Deprecate references to PC_IN_SIGTRAMP.
2004-01-262004-01-26 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+1
* gdbarch.sh (EXTRACT_STRUCT_VALUE_ADDRESS): Deprecate. Add comments mentioning extract_returned_value_address. * infcmd.c (print_return_value): Update. Add comments on extract_returned_value_address. * stack.c (return_command): Add comments on extract_returned_value_address. * values.c: Update comment. * m32r-tdep.c: Update comment. * sparc-tdep.c: Update comment. * ia64-tdep.c (ia64_use_struct_convention): Update comment. * xstormy16-tdep.c (xstormy16_gdbarch_init): Update. * sh64-tdep.c (sh64_gdbarch_init): Update. * sh-tdep.c (sh_gdbarch_init): Update. * s390-tdep.c (s390_gdbarch_init): Update. * rs6000-tdep.c (rs6000_gdbarch_init): Update. * m68klinux-tdep.c (m68k_linux_init_abi): Update. * m68k-tdep.c (m68k_gdbarch_init): Update. * m68hc11-tdep.c (m68hc11_gdbarch_init): Update. * m32r-tdep.c (m32r_gdbarch_init): Update. * ia64-tdep.c (ia64_gdbarch_init): Update. * h8300-tdep.c (h8300_gdbarch_init): Update. * frv-tdep.c (frv_gdbarch_init): Update. * arm-tdep.c (arm_gdbarch_init): Update. * alpha-tdep.c (alpha_gdbarch_init): Update. Index: doc/ChangeLog 2004-01-26 Andrew Cagney <cagney@redhat.com> * gdbint.texinfo (Target Architecture Definition): Rename EXTRACT_STRUCT_VALUE_ADDRESS to DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS.
2003-07-09 * m68k-tdep.h (enum struct_return): Define.Andreas Schwab1-0/+1
(struct gdbarch_tdep): Add struct_return. * m68k-tdep.c (m68k_push_dummy_call): Non-scalars bigger than 4 bytes are padded to the right, not to the left. Pass struct value address in register %a1, not on stack. (m68k_use_struct_convention): New function. (m68k_gdbarch_init): Set use_struct_convention. Initialize struct_return in tdep to pcc_struct_return. * m68klinux-tdep.c (m68k_linux_init_abi): Set struct_return to reg_struct_return.
2003-07-07 * Makefile.in (m68k-tdep.o, m68klinux-tdep.o): UpdateAndreas Schwab1-82/+167
dependencies. * m68k-tdep.c (NUM_FREGS): Delete. (SIG_PC_FP_OFFSET): Delete. (TARGET_M68K): Delete. (P_MOVEAL_SP_FP, P_ADDAW_SP, P_ADDAL_SP, P_SUBQW_SP, P_SUBQL_SP, P_LEA_SP_SP, P_LEA_PC_A5, P_FMOVEMX_SP, P_MOVEL_SP, P_MOVEML_SP): Define. (P_MOVL_SP_FP, P_MOVL, P_JSR, P_BSR, P_LEAL, P_MOVML, P_FMOVM, P_TRAP): Delete. (m68k_register_raw_size): Delete. (m68k_register_virtual_size): Delete. (m68k_register_type): Renamed from m68k_register_virtual_type and add gdbarch argument. (m68k_store_struct_return): Delete. (m68k_deprecated_extract_return_value): Delete. (m68k_deprecated_extract_struct_value_address): Delete. (m68k_frame_chain): Delete. (m68k_frame_saved_pc): Delete. (m68k_fix_call_dummy): Delete. (m68k_push_dummy_frame): Delete. (m68k_pop_frame): Delete. (m68k_extract_return_value): New function. (m68k_store_return_value): Rewrite using regcache. (m68k_extract_struct_value_address): Rewrite using regcache. (m68k_push_dummy_call): New function. (struct m68k_frame_cache): Define. (m68k_alloc_frame_cache): New function. (m68k_analyze_frame_setup): New function. (m68k_analyze_register_saves): New function. (m68k_analyze_prologue): New function. (m68k_skip_prologue): Rewrite using above functions. (m68k_unwind_pc): New function. (m68k_frame_cache): New function. (m68k_frame_this_id): New function. (m68k_frame_prev_register): New function. (m68k_frame_unwind): New variable. (m68k_frame_p): New function. (m68k_sigtramp_frame_cache): New function. (m68k_sigtramp_frame_this_id): New function. (m68k_sigtramp_frame_prev_register): New function. (m68k_sigtramp_frame_unwind): New variable. (m68k_sigtramp_frame_p): New function. (m68k_frame_base_address): New function. (m68k_frame_base): New function. (m68k_unwind_dummy_id): New function. (fill_gregset): Use regcache_collect. (fill_fpregset): Likewise. (m68k_saved_pc_after_call): Only define if SYSCALL_TRAP is defined. (m68k_gdbarch_init): Don't define call_dummy_words. Don't set deprecated_init_frame_pc, deprecated_store_struct_return, deprecated_extract_return_value, deprecated_store_return_value, deprecated_frame_chain, deprecated_frame_saved_pc, deprecated_frame_init_saved_regs, deprecated_register_raw_size, deprecated_register_virtual_size, deprecated_max_register_raw_size, deprecated_max_register_virtual_size, deprecated_register_virtual_type, deprecated_register_size, deprecated_register_byte, deprecated_register_bytes, deprecated_fp_regnum, deprecated_use_generic_dummy_frames, call_dummy_location, deprecated_call_dummy_breakpoint_offset, deprecated_pc_in_call_dummy, deprecated_call_dummy_length, deprecated_call_dummy_start_offset, deprecated_call_dummy_words, deprecated_sizeof_call_dummy_words, deprecated_fix_call_dummy, deprecated_push_dummy_frame, deprecated_pop_frame, deprecated_dummy_write_sp. Set deprecated_saved_pc_after_call only if SYSCALL_TRAP is defined. Set extract_return_value, store_return_value, extract_struct_value_address, register_type, push_dummy_call, unwind_dummy_id, unwind_pc. Add two frame unwind predicates. * m68k-tdep.h (M68K_D1_REGNUM, M68K_NUM_REGS, M68K_MAX_REGISTER_SIZE): Define. (struct m68k_sigtramp_info): Define. (struct gdbarch_tdep): Add get_sigtramp_info. * m68klinux-nat.c (fetch_register): Use register_size instead of REGISTER_RAW_SIZE. Don't put assignment in if. (store_register): Likewise. (fetch_inferior_registers): Likewise. (store_inferior_registers): Likewise. * m68klinux-tdep.c (m68k_linux_sigtramp_saved_pc): Delete. (m68k_linux_frame_saved_pc): Delete. (m68k_linux_sigcontext_reg_offset, m68k_linux_ucontext_reg_offset): Define. (m68k_linux_get_sigtramp_info): New function. (m68k_linux_extract_return_value): Rewrite using regcache. (m68k_linux_store_return_value): Likewise. (m68k_linux_extract_struct_value_address): Likewise. (m68k_linux_init_abi): Set get_sigtramp_info in tdep structure. Don't set deprecated_frame_saved_pc, deprecated_extract_return_value, deprecated_store_return_value, deprecated_extract_struct_value_address. Set extract_return_value, store_return_value, extract_struct_value_address.
2003-06-112003-06-11 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-4/+4
* gdbarch.sh (DEPRECATED_REGISTER_CONVERTIBLE): Deprecate REGISTER_CONVERTIBLE. (DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL): Same. (DEPRECATED_REGISTER_CONVERT_TO_RAW): Same, make "from" constant. * gdbarch.h, gdbarch.c: Re-generate. * arch-utils.h (deprecated_register_convertible_not): Rename generic_register_convertible_not. * arch-utils.c (deprecated_register_convertible_not): Rename generic_register_convertible. (legacy_convert_register_p, legacy_register_to_value): Update. * sh-tdep.c (sh64_push_arguments): Update. * m68klinux-tdep.c (m68k_linux_extract_return_value): Update. * config/m68k/tm-delta68.h (DEPRECATED_EXTRACT_RETURN_VALUE): Update. * m68klinux-tdep.c (m68k_linux_store_return_value): Update. * config/m68k/tm-delta68.h (DEPRECATED_STORE_RETURN_VALUE): Update. * arch-utils.c (legacy_value_to_register): Update. * rs6000-tdep.c (rs6000_gdbarch_init): Update. (rs6000_register_convert_to_raw): Make parameter "from" const. * mips-tdep.c (mips_gdbarch_init): Update. (mips_register_convert_to_raw): Make parameter"virt_buf" const. * infcmd.c (default_print_registers_info): Update. * ia64-tdep.c (ia64_gdbarch_init): Update. (ia64_register_convert_to_raw): Make parameter "from" const. * i386-tdep.c (i386_gdbarch_init): Update. (i386_register_convert_to_raw): Update.
2003-05-25 * m68k-tdep.c (m68k_register_raw_size): Remove cast.Andreas Schwab1-3/+22
(m68k_register_virtual_size): Likewise. (altos_skip_prologue): Remove obsolete function. (isi_frame_num_args): Likewise. (news_frame_num_args): Likewise. (m68k_fix_call_dummy): Make static. (m68k_push_dummy_frame): Likewise. (m68k_pop_frame): Likewise. (m68k_skip_prologue): Likewise. (m68k_frame_init_saved_regs): Likewise. (m68k_saved_pc_after_call): Likewise. (m68k_get_longjmp_target): Make multi-arch. (m68k_gdbarch_init): Allocate and initialize gdbarch_tdep structure. Register m68k_get_longjmp_target if enabled. * m68k-tdep.h (struct gdbarch_tdep): Define. * config/m68k/tm-m68k.h: Don't include "regcache.h". * Makefile.in (config.status): Also depend on configure.tgt and configure.host. (m68klinux-tdep.o): Update dependencies. * configure.tgt (m68*-*-linux*): Set gdb_multi_arch to 1. * m68klinux-tdep.c (M68K_LINUX_JB_ELEMENT_SIZE): Define. (M68K_LINUX_JB_PC): Define. (m68k_linux_pc_in_sigtramp): Renamed from m68k_linux_in_sigtramp and take additional parameter. (m68k_linux_sigtramp_saved_pc): Update. (m68k_linux_init_abi): Set jb_pc and jb_elt_size. Register m68k_linux_pc_in_sigtramp, in_plt_section, find_solib_trampoline_target. * config/m68k/tm-linux.h: Don't include any tm headers. (START_INFERIOR_TRAPS_EXPECTED): Remove definition. (JB_ELEMENT_SIZE): Likewise. (JB_PC): Likewise. (GET_LONGJMP_TARGET): Likewise. (IN_SIGTRAMP): Likewise. (SVR4_SHARED_LIBS): Define this and include "solib.h".
2003-05-20 * Makefile.in (m68k-tdep.o, m68klinux-tdep.o): UpdateAndreas Schwab1-6/+42
dependencies. * m68k-tdep.c (m68k_gdbarch_init): Call gdbarch_init_osabi at the end. * m68klinux-tdep.c (m68k_linux_init_abi): New function. (_initialize_m68k_linux_tdep): New function. (m68k_linux_frame_saved_pc): Make static. (m68k_linux_extract_return_value): Likewise. (m68k_linux_store_return_value): Likewise. (m68k_linux_extract_struct_value_address): Likewise. * config/m68k/tm-linux.h (DEPRECATED_EXTRACT_RETURN_VALUE): Remove. (DEPRECATED_STORE_RETURN_VALUE): Remove. (DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS): Remove. (DEPRECATED_FRAME_SAVED_PC): Remove.
2003-05-18 * Makefile (m68klinux-nat.o, m68klinux-tdep.o): UpdateAndreas Schwab1-6/+51
dependencies. * config/m68k/tm-linux.h (DEPRECATED_EXTRACT_RETURN_VALUE): Define as m68k_linux_extract_return_value. (DEPRECATED_STORE_RETURN_VALUE): Define as m68k_linux_store_return_value. (DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS): Define as m68k_linux_extract_struct_value_address. * m68klinux-tdep.c (m68k_linux_sigtramp_saved_pc): Use get_next_frame, get_frame_base, get_frame_pc. (m68k_linux_frame_saved_pc): Use get_frame_base. (m68k_linux_extract_return_value): New function. (m68k_linux_store_return_value): New function. (m68k_linux_extract_struct_value_address): New function. * config/m68k/tm-m68k.h: Declare m68k_get_longjmp_target.
2002-11-29 * m68k-tdep.c (m68k_frame_chain, m68k_frame_saved_pc)Andreas Schwab1-8/+10
(altos_skip_prologue, delta68_frame_saved_pc, isi_frame_num_args) (delta68_frame_num_args, news_frame_num_args, m68k_skip_prologue) (m68k_frame_init_saved_regs, m68k_saved_pc_after_call): Use read_memory_unsigned_integer instead of read_memory_integer when dealing with addresses and instruction opcodes. * m68klinux-tdep.c (m68k_linux_sigtramp_saved_pc) (m68k_linux_frame_saved_pc): Likewise.
2002-11-19 * m68klinux-nat.c (IS_SIGTRAMP, IS_RT_SIGTRAMP)Andreas Schwab1-0/+124
(m68k_linux_in_sigtramp, SIGCONTEXT_PC_OFFSET) (UCONTEXT_PC_OFFSET, m68k_linux_sigtramp_saved_pc) (m68k_linux_frame_saved_pc): Move to ... * m68klinux-tdep.c: ... here. New file. * Makefile.in (m68klinux-tdep.o): Add dependencies. * config/m68k/linux.mt (TDEPFILES): Add m68klinux-tdep.o.