* arm-tdep.c (arm_make_prologue_cache): Use trad_frame_addr_p to
test if the register has been saved on the stack.
(arm_scan_prologue_cache): When analysing the instruction
"str lr, [sp, #-4]", save the address where lr has been stored.
order. Remove spurious whitespace.
(struct gdbarch_tdep): add st0_regnum and mm0_regnum members.
(i386_sse_regnum_p, i386_mxcsr_regnum_p): Remove prototypes.
* i386-tdep.c (MM0_REGNUM): Remove define.
(i386_mmx_regnum_p): Add gdbarch argument.
(i386_sse_regnum_p, i386_mxcsr_regnum_p): Add gdbarch argument.
Rewrite using new macro definitions for FPU/SSE registers.
(i386_fp_regnum_p, i386_fpc_regnum_p): Rewrite using new macro
definitions from i387-tdep.h.
(i386_register_name): Update.
(i386_stab_reg_to_regnum, i386_dwarf_reg_to_regnum): Update to use
new macro definitions for FPU/SSE registers.
(i386_extract_return_value): Determine whether floating-point
registers are present by examining REGCACHE's architecture.
(i386_store_return_value): Likewise. Use I386_MAX_REGISTER_SIZE
instead of FPU_REG_RAW_SIZE. Use new macro definitions for
FPU/SSE registers.
(i386_register_type): Update.
(i386_mmx_regnum_to_fp_regnum): Rewrite using new macro
definitions for FPU registers. Use REGCACHE's architecture to
determine the appropriate register numbers.
(i386_pseudo_register_read, i386_pseudo_register_write,
i386_register_reggroup_p): Update.
(i386_gdbarch_init): Initialize TDEP->st0_regnum and
TDEP->mm0_regnum.
* i387-tdep.h (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM,
I387_FTAG_REGNUM, I387_FISEG_REGNUM, I387_FIOFF_REGNUM,
I387_FOSEG_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM,
I387_XMM0_REGNUM, I387_MXCSR_REGNUM): New defines.
(i387_supply_fsave, i387_fill_fsave, i387_supply_fxsave,
i387_fill_fxsave): Change type of fsave/fxsave argument from `char
*' to `void *'.
* i387-tdep.c (i387_print_float_info, fsave_offset, FSAVE_ADDR,
i387_supply_fsave, i387_fill_fsave, fxsave_offset, FXSAVE_ADDR,
i387_supply_fxsave, i387_fill_fxsave): Update to use new macro
definitions for FPU/SSE registers.
(FXSAVE_MXCSR_ADDR): New define.
* x86-64-tdep.c (x86_64_init_abi): Override TDEP->st0_regnum and
TDEP->mm0_regnum.
(I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Remove defines.
(I387_ST0_REGNUM): Define.
* NEWS: Mention the new backtrace mechanism, DWARF 2 CFI, hosted
file I/O, multi-arch, TLS and NPTL, DWARF 2 Location Expressions,
and Java.
* PROBLEMS: Mention that mips*-*-*, powerpc*-*-*, sparc*-*-* and
arm*-*-* do not use the new frame code.
(struct sh_frame_cache): New structure.
(GET_SOURCE_REG): New macro extracting source register of an opcode.
(GET_TARGET_REG): Ditto but target register.
(GET_PUSHED_REG): Remove.
(IS_MOV_ARG_TO_REG): New macro.
(IS_MOV_ARG_TO_IND_R14): New macro.
(IS_MOV_ARG_TO_IND_R14_WITH_DISP): New macro.
(IS_MOVW_PCREL_TO_REG): New macro.
(IS_MOVL_PCREL_TO_REG): New macro.
(IS_SUB_REG_FROM_SP): New macro.
(IS_ARG_MOV): Remove.
(IS_MOV_TO_R14): Remove.
(IS_RESTORE_FP): New macro.
(IS_RTS): New macro.
(IS_LDS): New macro.
(IS_MOV_FP_SP): New macro.
(IS_ADD_REG_TO_FP): New macro.
(IS_ADD_IMM_FP): New macro.
(sh_skip_prologue_hard_way): Remove.
(sh_saved_pc_after_call): Remove.
(sh_frame_chain): Remove.
(sh_find_callers_reg): Remove.
(sh_nofp_frame_init_saved_regs): Remove.
(sh_fp_frame_init_saved_regs): Remove.
(sh_init_extra_frame_info): Remove.
(sh_analyze_prologue): New function.
(sh_skip_prologue): Remove deprecated code. Rely on new function
sh_analyze_prologue when after_prologue fails.
(sh_frame_saved_pc): Remove.
(sh_alloc_frame_cache): New function.
(sh_frame_cache): Ditto.
(sh_frame_prev_register): Ditto.
(sh_frame_this_id): Ditto.
(sh_frame_unwind): New structure defining the heuristic frame
sniffer interface.
(sh_frame_sniffer): New function.
(sh_unwind_sp): Ditto.
(sh_unwind_pc): Ditto.
(sh_unwind_dummy_id): Ditto.
(sh_frame_base_address): Ditto.
(sh_frame_base): New structure defining new frame base code.
(sh_in_function_epilogue_p): New function.
(sh_gdbarch_init): Restructure and simplify to eliminate deprecated
code and to call all new code instead. Initialize dwarf2 and
heuristic frame sniffer.
language-specific info for printing, prefixifying, dumping, and
evaluating expressions.
(exp_descriptor_standard): Declare new variable.
(print_subexp): Make global and declare here (from expprint.c).
(dump_subexp): Ditto.
(dump_subexp_body_standard): Declare.
(operator_length_standard): Declare.
(op_name_standard): Declare.
(print_subexp): Declare.
(print_subexp_standard): Declare.
* language.h (struct language_defn): Add la_exp_desc field to hold
pointer to table for language-specific operators.
Remove evaluate_exp field, which is now in struct exp_descriptor.
* parse.c (operator_length): Move most code to new
operator_length_standard function. Use language-specific information.
(operator_length_standard): New function taking most code from
operator_length.
(exp_descriptor_standard): New constant.
* expression.h (enum exp_opcode): Add definitions of OP_EXTENDED0
and OP_EXTENDED_LAST.
* expprint.c (print_subexp): Use language-specific print_subexp.
Make global; remove static declaration.
Move most code to print_subexp_standard.
(print_subexp_standard): New function, containing code formerly in
print_subexp.
(op_name): Add expression to argument signature.
Use langauge-specific op_name.
Move most code to op_name_standard.
(op_name_standard): New function, containing code formerly in op_name.
(dump_subexp): Use new version of op_name function.
Use language-specific dump_subexp_body, and move most existing code to
dump_subexp_body_standard.
(dump_raw_expression): Use new op_name interface.
(dump_subexp_body): Move most code to dump_subexp_body_standard.
(dump_subexp_body_standard): New function, containing code formerly
in dump_subexp_body.
* language.c (unknown_language): Add default la_exp_desc field and
remove evaluate_exp field.
(auto_language): Ditto.
(local_language): Ditto.
* f-lang.c (f_language_defn): Ditto.
* c-lang.c (c_language_defn): Ditto.
(cplus_language_defn): Ditto.
(asm_language_defn): Ditto.
(minimal_language_defn): Ditto.
* p-lang.c (pascal_language_defn): Ditto.
* m2-lang.c (m2_language_defn): Ditto.
* objc-lang.c (objc_language_defn): Ditto.
* jv-lang.c (exp_descriptor_java): New variable, containing
Java-specific expression evaluator.
(java_language_defn): Add la_exp_desc field and remove evaluate_exp
field.
* scm-lang.c (exp_descriptor_scm): New variable, containing
Scheme-specific expression evaluator.
(scm_language_defn): Add la_exp_desc field and remove evaluate_exp
field.
* objc-lang.c (print_object_command): Take evaluate_exp from the
la_exp_desc field.
* Makefile.in (eval.o): Add dependency on parser-defs.h.
* eval.c: Include parser-defs.h for the full declaration of
la_exp_desc's type.
(evaluate_subexp): Get evaluate_exp out of la_exp_desc field.
* parse.c (length_of_subexp): Use operator_length to get operator
lengths and arities for operators.
Move most code to new operator_length function.
(operator_length): New function absorbing most code from
length_of_subexp.
(prefixify_subexp): Remove large case and use operator_length instead.
(parse_exp_1): Use renamings:
dump_prefix_expression => dump_raw_expression and
dump_postfix_expression => dump_prefix_expression.
* expression.h (dump_prefix_expression): Rename to ...
(dump_raw_expression): New name.
(dump_postfix_expression): Rename to ...
(dump_prefix_expression): New name.
* expprint.c (dump_subexp): Make global. Add comment.
Move most existing code to dump_subexp_body.
(dump_subexp_body): New function.
(dump_prefix_expression): Rename to dump_raw_expression.
Remove attempt to print the expression via print_expression: it can't
work before the expression is prefixified.
(dump_raw_expression): Renamed from dump_prefix_expression.
(dump_postfix_expression): Rename to dump_prefix_expression, since
that's what it does.
Remove 'note' parameter, since this routine must be used on
prefixified expression.
(dump_prefix_expression): Renamed from dump_postfix_expression.
array of unspecified length, make sure to choose the upper bound
so that the array's total length comes out to be zero --- that's
how we represent such arrays.
* utils.c (align_up, align_down): New functions.
* defs.h (align_up, align_down): Declare.
* ppc-sysv-tdep.c (align_up, align_down): Delete functions.
* s390-tdep.c: Replace "round_up" and "round_down" with "align_up"
and "align_down".
(round_up, round_down): Delete functions.
* mips-tdep.c: Replace ROUND_UP and ROUND_DOWN with "align_up" and
"align_down".
(ROUND_DOWN, ROUND_UP): Delete macros.
(mips_dump_tdep): Do not print "ROUND_UP" or "ROUND_DOWN".
* h8300-tdep.c: Replace "round_up" and "round_down" with
"align_up" and "align_down".
(round_up, round_down): Delete macros.
* frv-tdep.c: Replace ROUND_UP and ROUND_DOWN with "align_up" and
"align_down".
(ROUND_UP, ROUND_DOWN): Delete macros.
* gdbarch.h, gdbarch.c: Regenerate.
(stabs_argument_has_addr): New architecture method.
* arch-utils.h (default_stabs_argument_has_addr): New prototype.
* arch-utils.c: Include "buildsym.h".
(default_stabs_argument_has_addr): New function.
* stabsread.c (define_symbol): Use stabs_argument_has_addr
instead of DEPRECATED_REG_STRUCT_HAS_ADDR.
* ppc-linux-tdep.c (ppc_linux_init_abi): Set the 32 bit
"use_struct_convention" to "ppc_linux_use_struct_convention".
(ppc_linux_use_struct_convention): New function.
* rs6000-tdep.c (rs6000_use_struct_convention): New function.
(rs6000_gdbarch_init): For AIX, set "use_struct_convention" to
"rs6000_use_struct_convention".
* ppc-tdep.h (ppc_sysv_abi_broken_use_struct_convention): Delete
declaration.
* ppc-sysv-tdep.c (ppc_sysv_abi_broken_use_struct_convention):
Delete function.
_initialize_am64fbsd_nat.
* gdbarch.sh (DEPRECATED_REG_STRUCT_HAS_ADDR): Add comment.
(stabs_argument_has_addr): New architecture method.
* arch-utils.h (default_stabs_argument_has_addr): New prototype.
* arch-utils.c: Include "buildsym.h".
(default_stabs_argument_has_addr): New function.
* stabsread.c (define_symbol): Use stabs_argument_has_addr
instead of DEPRECATED_REG_STRUCT_HAS_ADDR.
registers since gdb will not operate correctly without this. Restore include
file ordering munged in previous change.
* config/i386/tm-cygwin.h: Remove HAVE_SSE_REGS define.
defined by the system headers.
* config/i386/tm-cygwin.h: Check for CONTEXT_EXTENDED_REGISTERS rather than
HAVE_CONTEXT_EXTENDED_REGISTERS, since the latter actually exists.
symbol types are, by definition, in the .data section, so it is
correct to use SECT_OFF_DATA (objfile) here, not data_sect_index.
If there is no .data section, there should be no N_DATA or N_DATA
| N_EXT symbols.
* top.c (quit_target): New static helper function.
(quit_force): Moved code to quit_target(). Call quit_target()
via catch_errors() to catch errors during quit.
* rs6000-tdep.c (rs6000_push_dummy_call): Use
regcache_raw_write_signed to set SP_REGNUM, move the operation to
near the function's end.
(rs6000_gdbarch_init): Do not set "deprecated_dummy_write_sp".
* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Use
regcache_raw_write_signed to set SP_REGNUM.
* dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and
highpc initialization here out of scan_partial_symbols.
(scan_partial_symbols): Restructure into a recursive version,
calling add_partial_namespace and add_partial_enumeration when
appropriate.
(add_partial_namespace): New.
(add_partial_enumeration, locate_pdi_sibling): Ditto.
* rs6000-tdep.c (ppc_push_return_address): Delete function.
(rs6000_push_dummy_call): Set LR to BP_ADDR.
(rs6000_gdbarch_init): Do not set deprecated_push_return_address.
* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Do not set the deprecated
methods "max_register_raw_size", "max_register_virtual_size" or
"register_virtual_size".
The old method would drag in the entire array, then look for the
single element. This method just gets the right element out instead.
Saves memory, and saves a crash for array with (*) as one of the
dimensions when it would previously have allocated (unsigned int) -1 bytes.
(sh64-tdep.o): Add dependencies.
* configure.tgt: Add FIXME to sh-*-linux*.
* sh-tdep.c: Move sh64 support to sh64-tdep.c.
(sh_gdbarch_init): Always set correct sh_show_regs function
pointer. Call sh64_gdbarch_init() if machine type is sh5.
* sh-tdep.h: Move sh64 support to sh64-tdep.c.
* sh64-tdep.c: New file, containing all sh64 related code from
sh-tdep.c.
* config/sh/embed.mt (TDEPFILES): Add sh64-tdep.o.
* config/sh/linux.mt (TDEPFILES): Ditto.
* config/sh/nbsd.mt (TDEPFILES): Ditto.
* config/sh/tm-sh.h: Drop REGISTER_TYPE definition.
* config/sh/wince.mt (TDEPFILES): Ditto.
"gdb_assert.h". Various coding style fixes.
(derive_stack_segment, derive_heap_segment): Replace check for
non-null BOTTOM and TOP with gdb_assert.
(derive_heap_segment): Replace check for successful creation of
ZERO with gdb_assert.
(make_mem_sec): Use bfd_section_lma to set OSEC->lma.
* thread-db.c (verbose_dlsym): New function.
(thread_db_load): Use verbose_dlsym
(thread_db_new_objfile): Print that libthread_db was loaded, and
that thread debugging was enabled.
* disasm.c (fprintf_disasm): New function.
(gdb_disassemble_info): Call "init_disassemble_info", instead of
INIT_DISASSEMBLE_INFO_NO_ARCH. Do not initialize "insn_sets",
reverts 2003-08-14 change.
(_initialize_disasm): Call "init_disassemble_info", instead of
INIT_DISASSEMBLE_INFO_NO_ARCH.
arm_frame_chain. Take NEXT_FRAME and CACHE arguments.
Use the cache instead of DEPRECATED_FRAME_SAVED_PC.
(arm_minimal_frame_info): Renamed from arm_init_extra_frame_info.
Take NEXT_FRAME and CACHE arguments. Call
FRAMELESS_FUNCTION_INVOCATION instead of checking FROMLEAF argument.
Set unwound_pc in CACHE instead of modifying the frame argument.
Don't bother checking the frame type when looking for sigtramp
frames.
(arm_make_prologue_cache, arm_frame_chain)
(arm_init_extra_frame_info): New functions.
(struct arm_prologue_cache): Renamed from frame_extra_info. Add
unwound_sp, unwound_pc, and saved_regs.
(thumb_scan_prologue): Take a cache instead of the frame.
(arm_scan_prologue): Likewise.
(arm_frame_chain): Create a temporary cache for arm_scan_prologue
instead of a temporary frame.
(arm_init_extra_frame_info): Allocate and use a cache.
(arm_frame_saved_pc, arm_pop_frame): Use the cache.
Only define PTRACE_GET_THREAD_AREA is not already defined.
Various style fixes in code and comments and some additional
spelling fixes in comments. Move after functions dealing with
debug registers.
* x86-64-linux-nat.c (ps_get_thread_area): Don't define as extern.
Fix coding-style.
* x86-64-linux-nat.c: Include "i386-linux-tdep.h" and "amd64.h".
Change "register array" to "register cache" in comments.
(x86_64_linux_gregset64_reg_offset): New variable.
(GETREGS_SUPPLIES): Remove macro.
(supply_gregset): Call amd64_supply_native_gregset instead of
x86_64_linux_supply_gregset.
(fill_gregset): Rename `regno' to `regnum'. Call
amd64_collect_native_gregset instead of x86_64_linux_fill_gregset.
(store_regs): Rename `regno' to `regnum'.
(store_fpregs): Rename `regno' to `regnum'.
(fetch_inferior_registers): Rename `regno' to `regnum'. Use
amd64_native_gregset_supplies_p instead of GREGSET_SUPPLIES.
Reorganize function a bit.
(store_inferior_registers): Rename `regno' to `regnum'. Use
amd64_native_gregset_supplies_p instead of GREGSET_SUPPLIES.
Reorganize function a bit.
(_initialize_x86_64_linux_nat): New function.
* config/i386/x86-64linux.mh.
* amd64-nat.c: New file.
* amd64fbsd-nat.c: Include "amd64-nat.h".
(REG_ADDR, GETREGS_SUPPLIES): Remove macros.
(amd64fbsd32_r_reg_offset): New variable.
(supply_gregset): Simply call amd64_supply_native_gregset.
(fill_gregset): Rename `regno' to `regnum'. Simply call
amd64_collect_native_gregset.
(fill_fpregset): Rename `regno' to `regnum'.
(fetch_inferior_registers): Rename `regno' to `regnum'. Replace
usage of GETREGS_SUPPLIES with amd64_native_gregset_supplies_p.
Use `struct reg' and `struct fpreg' instead of `gregset_t' and
`fpregset_t'. Call amd64_supply_native_gregset instead of
supply_gregset. Call x86_64_supply_fxsave instead of
supply_fpregset.
(store_inferior_registers): Rename `regno' to `regnum'. Replace
usage of GETREGS_SUPPLIES with amd64_native_gregset_supplies_p.
Use `struct reg' and `struct fpreg' instead of `gregset_t' and
`fpregset_t'. Call amd64_collect_native_gregset instead of
fill_gregset. Call x86_64_collect_fxsave instead of
fill_fpregset.
(_initialize_am64fbsd_nat): Initialize
amd64_native_gregset32_reg_offset and
amd64_native_gregset64_reg_offset.
* config/i386/fbsd64.mh (NATDEPFILES): Add amd64-nat.o.
* mips-tdep.c (gdb_print_insn_mips): Set the disassembler's
flavour and disassembler options.
(_initialize_mips_tdep): Do not set deprecated_tm_print_insn.
(mips_gdbarch_init): Set "print_insn". Delete initialization of
deprecated_tm_print_insn_info.
* Makefile.in (cris-tdep.o): Update dependencies.
* cris-tdep.c: Include "gdb_assert.h".
(cris_gdbarch_init): Set print_insn.
(_initialize_cris_tdep): Do not set deprecated_tm_print_insn.
(cris_delayed_get_disassembler): Simplify, directly call the
disassembler returned by cris_get_disassembler.
* hppa-tdep.c (hppa_gdbarch_init): Set print_insn.
(_initialize_hppa_tdep): Do not set deprecated_tm_print_insn.
* ns32k-tdep.c (ns32k_gdbarch_init): Set print_insn.
(_initialize_ns32k_tdep): Do not set deprecated_tm_print_insn.
* mn10300-tdep.c (mn10300_gdbarch_init): Set print_insn.
(_initialize_mn10300_tdep): Do not set deprecated_tm_print_insn.
* mcore-tdep.c (mcore_gdbarch_init): Set print_insn.
(_initialize_mcore_tdep): Do not set deprecated_tm_print_insn.
* frv-tdep.c (frv_gdbarch_init): Set print_insn.
(_initialize_frv_tdep): Do not set deprecated_tm_print_insn.
* sparc-tdep.c (sparc_gdbarch_init): Set print_insn.
(gdb_print_insn_sparc): Delete function.
(_initialize_sparc_tdep): Do not set deprecated_tm_print_insn or
deprecated_tm_print_insn_info.
* v850-tdep.c (v850_gdbarch_init): Set print_insn.
(_initialize_v850_tdep): Do not set deprecated_tm_print_insn.
(v850_gdbarch_init): Do not set deprecated_tm_print_insn_info.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Set print_insn.
(_initialize_xstormy16_tdep): Do not set deprecated_tm_print_insn.
* s390-tdep.c (gdb_print_insn_s390): Delete function.
(_initialize_s390_tdep): Do not set deprecated_tm_print_insn.
(s390_gdbarch_init): Set print_insn.
* ppc-linux-tdep.c (ppc64_call_dummy_address): Delete function.
(ppc_linux_init_abi): For PPC64, do not set call_dummy_address.
* infcall.c (call_function_by_hand): Convert the entry point
address into a code address.
(enable_break): Pass SEC_CODE as the SECT_FLAGS argument to
bfd_lookup_symbol, since we only want symbols in code sections.
(look_for_base): Pass zero as the SECT_FLAGS argument to
bfd_lookup_symbol, since we're not concerned about which section
the symbol is in.
* ia64-tdep.c (pseudo_regs): New enum that lists gr32-gr127, p0-p63,
bof, and nat0-nat127 as pseudo-registers.
(ia64_frame_cache): New struct used to cache frame info.
(ia64_register_reggroup_p): New routine used to override default
register grouping so registers without names are still saved and
restored.
(ia64_dwarf_reg_to_regnum): New routine to map gr32-gr127 to their
pseudo values.
(ia64_pseudo_register_read): New routine to read pseudo-registers.
(ia64_pseudo_register_write): New routine to write pseudo-registers.
(ia64_alloc_frame_cache): New routine to create a new
ia64_frame_cache.
(examine_prologue): Change prototype to add next_frame pointer.
Assume frameless until otherwise proven. Verify that the cfm for
current frame matches the cfm that should occur for the prologues
alloc insn and if equal, mark as not frameless. At end of routine,
if not frameless, calculate registers for the previous frame and store
in the cache, if a cache is provided.
(ia64_skip_prologue): Use new prototype when calling examine_prologue
and pass 0 for next_frame.
(ia64_store_return_value): Change to use convert_typed_floating()
instead of calling ia64_convert_to_raw().
(ia64_extract_return_value): Change to use convert_typed_floating()
instead of calling ia64_convert_to_virtual().
(ia64_frame_cache): New routine to support new frame model.
(ia64_frame_this_id, ia64_frame_prev_register): Ditto.
(ia64_frame_sniffer): Ditto.
(ia64_sigtramp_frame_init_saved_regs): Ditto.
(ia64_sigtramp_frame_cache, ia64_sigtramp_frame_this_id): Ditto.
(ia64_sigtramp_frame_prev_register): Ditto.
(ia64_sigtramp_frame_sniffer): Ditto.
(ia64_frame_base_address): Ditto.
(ia64_extract_struct_value_address): Change to issue error message.
(ia64_frame_align): New routine to align sp.
(ia64_push_dummy_call): New routine based on ia64_push_arguments().
(ia64_push_arguments): Removed. Logic moved to
ia64_push_dummy_call().
(ia64_push_return_address): Ditto.
(ia64_unwind_dummy_id): New function.
(ia64_unwind_pc): Ditto.
(ia64_convert_register_p): Ditto.
(ia64_register_to_value): Ditto.
(ia64_value_to_register): Ditto.
(ia64_pop_frame, ia64_pop_frame_regular): Removed.
(ia64_register_byte, ia64_register_raw_size): Ditto.
(ia64_register_virtual_size, ia64_register_virtual_byte): Ditto.
(ia64_saved_pc_after_call): Ditto.
(ia64_frame_chain, ia64_frame_saved_pc): Ditto.
(ia64_frame_init_saved_regs, ia64_get_saved_register): Ditto.
(ia64_register_convertible, ia64_register_convert_to_virtual): Ditto.
(ia64_register_convert_to_raw): Ditto.
(ia64_store_struct_return, ia64_call_dummy_words): Ditto.
(ia64_init_extra_frame_info): Ditto.
(ia64_frame_args_address, ia64_frame_locals_address): Ditto.
(ia64_gdbarch_init): Remove registering of deprecated functions that
are no longer used. Add registration of new gdbarch functions.
Remove registering deprecated_write_sp. Replace
set_gdbarch_register_virtual_type() with set_gdbarch_register_type().
Delete set_gdbarch_deprecated_register_convertible(),
set_gdbarch_deprecated_register_convert_to_virtual(), and
set_gdbarch_deprecated_register_convert_to_raw() calls. Remove
set_gdbarch_deprecated_register_size(),
set_gdbarch_deprecated_register_bytes(),
set_gdbarch_pcregnum(),
set_gdbarch_deprecated_register_byte(),
set_gdbarch_deprecated_register_raw_size(),
set_gdbarch_deprecated_max_register_raw_size(),
set_gdbarch_deprecated_register_virtual_size(),
and set_gdbarch_deprecated_max_register_virtual_size() calls.
Replace set_gdbarch_deprecated_extract_return_value() with
set_gdbarch_extract_return_value(). Remove calls to:
set_gdbarch_deprecated_saved_pc_after_call();
set_gdbarch_deprecated_frame_chain(),
set_gdbarch_deprecated_frame_saved_pc(),
set_gdbarch_deprecated_frame_init_saved_regs(),
set_gdbarch_deprecated_get_saved_register(),
set_gdbarch_deprecated_call_dummy_words(),
set_gdbarch_deprecated_sizeof_call_dummy_words(),
set_gdbarch_deprecated_init_extra_frame_info(),
set_gdbarch_deprecated_frame_args_address(),
set_gdbarch_deprecated_frame_locals_address(),
and set_gdbarch_deprecated_dummy_write_sp().
Add set_gdbarch_convert_register_p(),
set_gdbarch_register_to_value(),
set_gdbarch_value_to_register(),
set_gdbarch_push_dummy_call(),
set_gdbarch_frame_align(),
set_gdbarch_unwind_dummy_id(),
set_gdbarch_unwind_pc(),
frame_unwind_append_sniffer(),
frame_unwind_append_sniffer(),
and frame_base_set_default().
* configure.tgt: Document need for special "mipsisa64" handling.
(mipsisa64*-*-linux64): Handle as target linux64.
(mipsisa64*-*-*): Handle as target embed64.
(set_screen_size): New prototype.
(init_page_info): Simplify by fetching the screen size from
Readline. Call set_screen_size.
(set_screen_size): New function.
(set_width): Add missing whitespace in comment.
(set_width_command): Call set_screen_size.
(set_height_command): New function.
(initialize_utils): Fix formatting. Make "set height" command
call set_height_command. Remove redundant code that turns off
pagination if output isn't a terminal. Remove redundant call to
set_width_command.
(sparc64_supply_rwindow, sparc64_fill_rwindow): Remove prototypes.
(sparc_supply_rwindow, sparc_fill_rwindow): New prototypes.
* sparc64-tdep.c (sparc64_pseudo_register_read): Add missing
`case' keyword.
(sparc64_register_info): Give the reister with number
SPARC64_STATE_REGNUM a name.
(sparc64_pseudo_register_write): Add support for %cwp, %pstate,
%asi and %ccr.
(sparc64_push_dummy_call): Take BIAS into account when checking
stcak alignment.
(sparc_software_single_step): Remove assertions that check whether
NPC and NNPC were zero.
(sparc_supply_rwindow): Make public. Merge functionality with
sparc64_supply_rwindow.
(sparc_fill_rwindow): Make public. Merge functionality with
sparc64_fill_rwindow.
(sparc64_supply_rwindow, sparc64_fill_rwindow): Remove.
* sparc64fbsd-nat.c (_initialize_sparc64fbsd_nat): Set
SPARCBSD_FPREG_SUPPLIES_P to sparc64fbsd_fpreg_supplies_p.
* sparc64fbsd-tdep.c (sparc64fbsd_supply_reg): Call
sparc_supply_rwindow instead of sparc64_supply_rwindow.
(register_objfile_data, set_objfile_data, objfile_data): New
prototypes.
* objfiles.c (objfile_alloc_data, objfile_free_data): New
prototypes.
(allocate_objfile): Call objfile_alloc_data.
(free_objfile): Call objfile_free_data.
(struct objfile_data): New.
(struct objfile_data_registration): New.
(struct objfile_data_registry): New.
(objfile_data_registry): New variable.
(register_objfile_data): New function.
(objfile_alloc_data, objfile_free_data): New functions.
(set_objfile_data, objfile_data): New functions.
* dwarf2-frame.c (dwarf2_frame_data): New variable.
(dwarf2_frame_find_fde, add_fde): Use new per-objfile data mechanism.
(_initialize_dwarf2_frame): New function and prototype.
* tracepoint.c (trace_dump_command): Trace break address
is subject to DECR_PC_AFTER_BREAK.
(set_traceframe_context): Make "trace_line" an int.
Fixes suggested by Mark Newman <mark.newman@lmco.com>
* sh-tdep.h (struct gdbarch_tdep): New member FLOAT_ARGLAST_REG.
* sh-tdep.c (sh_gdbarch_init): For sh2e, sh3e, and sh4, set
FLOAT_ARG0_REGNUM and FLOAT_ARGLAST_REGNUM, to be used for
argument passing.
(sh_push_dummy_call_fpu, sh_push_dummy_call_nofpu): New
functions, replace sh_push_dummy_call.
(sh_gdbarch_init): Set push_dummy_call to one of new methods.