198944Sobrien/* *INDENT-OFF* */ /* THIS FILE IS GENERATED */ 246283Sdfr 398944Sobrien/* Dynamic architecture support for GDB, the GNU debugger. 446283Sdfr 5130803Smarcel Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free 6130803Smarcel Software Foundation, Inc. 7130803Smarcel 898944Sobrien This file is part of GDB. 946283Sdfr 1098944Sobrien This program is free software; you can redistribute it and/or modify 1198944Sobrien it under the terms of the GNU General Public License as published by 1298944Sobrien the Free Software Foundation; either version 2 of the License, or 1398944Sobrien (at your option) any later version. 1446283Sdfr 1598944Sobrien This program is distributed in the hope that it will be useful, 1698944Sobrien but WITHOUT ANY WARRANTY; without even the implied warranty of 1798944Sobrien MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1898944Sobrien GNU General Public License for more details. 1946283Sdfr 2098944Sobrien You should have received a copy of the GNU General Public License 2198944Sobrien along with this program; if not, write to the Free Software 2298944Sobrien Foundation, Inc., 59 Temple Place - Suite 330, 2398944Sobrien Boston, MA 02111-1307, USA. */ 2498944Sobrien 2598944Sobrien/* This file was created with the aid of ``gdbarch.sh''. 2698944Sobrien 2798944Sobrien The Bourne shell script ``gdbarch.sh'' creates the files 2898944Sobrien ``new-gdbarch.c'' and ``new-gdbarch.h and then compares them 2998944Sobrien against the existing ``gdbarch.[hc]''. Any differences found 3098944Sobrien being reported. 3198944Sobrien 3298944Sobrien If editing this file, please also run gdbarch.sh and merge any 3398944Sobrien changes into that script. Conversely, when making sweeping changes 3498944Sobrien to this file, modifying gdbarch.sh and using its output may prove 3598944Sobrien easier. */ 3698944Sobrien 3798944Sobrien 3846283Sdfr#include "defs.h" 3998944Sobrien#include "arch-utils.h" 4098944Sobrien 4146283Sdfr#include "gdbcmd.h" 4298944Sobrien#include "inferior.h" /* enum CALL_DUMMY_LOCATION et.al. */ 4398944Sobrien#include "symcat.h" 4446283Sdfr 4598944Sobrien#include "floatformat.h" 4646283Sdfr 4798944Sobrien#include "gdb_assert.h" 48130803Smarcel#include "gdb_string.h" 4998944Sobrien#include "gdb-events.h" 50130803Smarcel#include "reggroups.h" 51130803Smarcel#include "osabi.h" 52130803Smarcel#include "gdb_obstack.h" 5346283Sdfr 5498944Sobrien/* Static function declarations */ 5598944Sobrien 5698944Sobrienstatic void alloc_gdbarch_data (struct gdbarch *); 5798944Sobrien 5846283Sdfr/* Non-zero if we want to trace architecture code. */ 5946283Sdfr 6046283Sdfr#ifndef GDBARCH_DEBUG 6146283Sdfr#define GDBARCH_DEBUG 0 6246283Sdfr#endif 6346283Sdfrint gdbarch_debug = GDBARCH_DEBUG; 6446283Sdfr 6546283Sdfr 6698944Sobrien/* Maintain the struct gdbarch object */ 6746283Sdfr 6898944Sobrienstruct gdbarch 6998944Sobrien{ 70130803Smarcel /* Has this architecture been fully initialized? */ 71130803Smarcel int initialized_p; 72130803Smarcel 73130803Smarcel /* An obstack bound to the lifetime of the architecture. */ 74130803Smarcel struct obstack *obstack; 75130803Smarcel 7698944Sobrien /* basic architectural information */ 7798944Sobrien const struct bfd_arch_info * bfd_arch_info; 7898944Sobrien int byte_order; 79130803Smarcel enum gdb_osabi osabi; 8098944Sobrien 8198944Sobrien /* target specific vector. */ 8298944Sobrien struct gdbarch_tdep *tdep; 8398944Sobrien gdbarch_dump_tdep_ftype *dump_tdep; 8498944Sobrien 8598944Sobrien /* per-architecture data-pointers */ 8698944Sobrien unsigned nr_data; 8798944Sobrien void **data; 8898944Sobrien 8998944Sobrien /* per-architecture swap-regions */ 9098944Sobrien struct gdbarch_swap *swap; 9198944Sobrien 9298944Sobrien /* Multi-arch values. 9398944Sobrien 9498944Sobrien When extending this structure you must: 9598944Sobrien 9698944Sobrien Add the field below. 9798944Sobrien 9898944Sobrien Declare set/get functions and define the corresponding 9998944Sobrien macro in gdbarch.h. 10098944Sobrien 10198944Sobrien gdbarch_alloc(): If zero/NULL is not a suitable default, 10298944Sobrien initialize the new field. 10398944Sobrien 10498944Sobrien verify_gdbarch(): Confirm that the target updated the field 10598944Sobrien correctly. 10698944Sobrien 10798944Sobrien gdbarch_dump(): Add a fprintf_unfiltered call so that the new 10898944Sobrien field is dumped out 10998944Sobrien 11098944Sobrien ``startup_gdbarch()'': Append an initial value to the static 11198944Sobrien variable (base values on the host's c-type system). 11298944Sobrien 11398944Sobrien get_gdbarch(): Implement the set/get functions (probably using 11498944Sobrien the macro's as shortcuts). 11598944Sobrien 11698944Sobrien */ 11798944Sobrien 11898944Sobrien int short_bit; 11998944Sobrien int int_bit; 12098944Sobrien int long_bit; 12198944Sobrien int long_long_bit; 12298944Sobrien int float_bit; 12398944Sobrien int double_bit; 12498944Sobrien int long_double_bit; 12598944Sobrien int ptr_bit; 12698944Sobrien int addr_bit; 12798944Sobrien int bfd_vma_bit; 12898944Sobrien int char_signed; 12998944Sobrien gdbarch_read_pc_ftype *read_pc; 13098944Sobrien gdbarch_write_pc_ftype *write_pc; 13198944Sobrien gdbarch_read_sp_ftype *read_sp; 13298944Sobrien gdbarch_virtual_frame_pointer_ftype *virtual_frame_pointer; 133130803Smarcel gdbarch_pseudo_register_read_ftype *pseudo_register_read; 134130803Smarcel gdbarch_pseudo_register_write_ftype *pseudo_register_write; 13598944Sobrien int num_regs; 13698944Sobrien int num_pseudo_regs; 13798944Sobrien int sp_regnum; 13898944Sobrien int pc_regnum; 139130803Smarcel int ps_regnum; 14098944Sobrien int fp0_regnum; 14198944Sobrien gdbarch_stab_reg_to_regnum_ftype *stab_reg_to_regnum; 14298944Sobrien gdbarch_ecoff_reg_to_regnum_ftype *ecoff_reg_to_regnum; 14398944Sobrien gdbarch_dwarf_reg_to_regnum_ftype *dwarf_reg_to_regnum; 14498944Sobrien gdbarch_sdb_reg_to_regnum_ftype *sdb_reg_to_regnum; 14598944Sobrien gdbarch_dwarf2_reg_to_regnum_ftype *dwarf2_reg_to_regnum; 14698944Sobrien gdbarch_register_name_ftype *register_name; 147130803Smarcel gdbarch_register_type_ftype *register_type; 148130803Smarcel gdbarch_deprecated_register_virtual_type_ftype *deprecated_register_virtual_type; 149130803Smarcel int deprecated_register_bytes; 150130803Smarcel gdbarch_deprecated_register_byte_ftype *deprecated_register_byte; 151130803Smarcel gdbarch_deprecated_register_raw_size_ftype *deprecated_register_raw_size; 152130803Smarcel gdbarch_deprecated_register_virtual_size_ftype *deprecated_register_virtual_size; 153130803Smarcel int deprecated_max_register_raw_size; 154130803Smarcel int deprecated_max_register_virtual_size; 155130803Smarcel gdbarch_unwind_dummy_id_ftype *unwind_dummy_id; 156130803Smarcel gdbarch_deprecated_save_dummy_frame_tos_ftype *deprecated_save_dummy_frame_tos; 157130803Smarcel int deprecated_fp_regnum; 158130803Smarcel gdbarch_deprecated_target_read_fp_ftype *deprecated_target_read_fp; 159130803Smarcel gdbarch_push_dummy_call_ftype *push_dummy_call; 160130803Smarcel gdbarch_deprecated_push_arguments_ftype *deprecated_push_arguments; 161130803Smarcel int deprecated_use_generic_dummy_frames; 162130803Smarcel gdbarch_deprecated_push_return_address_ftype *deprecated_push_return_address; 163130803Smarcel gdbarch_deprecated_dummy_write_sp_ftype *deprecated_dummy_write_sp; 164130803Smarcel int deprecated_register_size; 165130803Smarcel int call_dummy_location; 166130803Smarcel CORE_ADDR deprecated_call_dummy_start_offset; 167130803Smarcel CORE_ADDR deprecated_call_dummy_breakpoint_offset; 168130803Smarcel int deprecated_call_dummy_length; 169130803Smarcel LONGEST * deprecated_call_dummy_words; 170130803Smarcel int deprecated_sizeof_call_dummy_words; 171130803Smarcel gdbarch_deprecated_fix_call_dummy_ftype *deprecated_fix_call_dummy; 172130803Smarcel gdbarch_push_dummy_code_ftype *push_dummy_code; 173130803Smarcel gdbarch_deprecated_push_dummy_frame_ftype *deprecated_push_dummy_frame; 174130803Smarcel gdbarch_deprecated_do_registers_info_ftype *deprecated_do_registers_info; 175130803Smarcel gdbarch_print_registers_info_ftype *print_registers_info; 17698944Sobrien gdbarch_print_float_info_ftype *print_float_info; 177130803Smarcel gdbarch_print_vector_info_ftype *print_vector_info; 17898944Sobrien gdbarch_register_sim_regno_ftype *register_sim_regno; 17998944Sobrien gdbarch_register_bytes_ok_ftype *register_bytes_ok; 18098944Sobrien gdbarch_cannot_fetch_register_ftype *cannot_fetch_register; 18198944Sobrien gdbarch_cannot_store_register_ftype *cannot_store_register; 18298944Sobrien gdbarch_get_longjmp_target_ftype *get_longjmp_target; 183130803Smarcel gdbarch_deprecated_pc_in_call_dummy_ftype *deprecated_pc_in_call_dummy; 184130803Smarcel gdbarch_deprecated_init_frame_pc_first_ftype *deprecated_init_frame_pc_first; 185130803Smarcel gdbarch_deprecated_init_frame_pc_ftype *deprecated_init_frame_pc; 18698944Sobrien int believe_pcc_promotion; 18798944Sobrien int believe_pcc_promotion_type; 188130803Smarcel gdbarch_deprecated_get_saved_register_ftype *deprecated_get_saved_register; 189130803Smarcel gdbarch_deprecated_register_convertible_ftype *deprecated_register_convertible; 190130803Smarcel gdbarch_deprecated_register_convert_to_virtual_ftype *deprecated_register_convert_to_virtual; 191130803Smarcel gdbarch_deprecated_register_convert_to_raw_ftype *deprecated_register_convert_to_raw; 192130803Smarcel gdbarch_convert_register_p_ftype *convert_register_p; 193130803Smarcel gdbarch_register_to_value_ftype *register_to_value; 194130803Smarcel gdbarch_value_to_register_ftype *value_to_register; 19598944Sobrien gdbarch_pointer_to_address_ftype *pointer_to_address; 19698944Sobrien gdbarch_address_to_pointer_ftype *address_to_pointer; 19798944Sobrien gdbarch_integer_to_address_ftype *integer_to_address; 198130803Smarcel gdbarch_deprecated_pop_frame_ftype *deprecated_pop_frame; 199130803Smarcel gdbarch_deprecated_store_struct_return_ftype *deprecated_store_struct_return; 200130803Smarcel gdbarch_return_value_ftype *return_value; 20198944Sobrien gdbarch_return_value_on_stack_ftype *return_value_on_stack; 20298944Sobrien gdbarch_extract_return_value_ftype *extract_return_value; 20398944Sobrien gdbarch_store_return_value_ftype *store_return_value; 204130803Smarcel gdbarch_deprecated_extract_return_value_ftype *deprecated_extract_return_value; 205130803Smarcel gdbarch_deprecated_store_return_value_ftype *deprecated_store_return_value; 20698944Sobrien gdbarch_use_struct_convention_ftype *use_struct_convention; 207130803Smarcel gdbarch_deprecated_extract_struct_value_address_ftype *deprecated_extract_struct_value_address; 208130803Smarcel gdbarch_deprecated_frame_init_saved_regs_ftype *deprecated_frame_init_saved_regs; 209130803Smarcel gdbarch_deprecated_init_extra_frame_info_ftype *deprecated_init_extra_frame_info; 21098944Sobrien gdbarch_skip_prologue_ftype *skip_prologue; 21198944Sobrien gdbarch_inner_than_ftype *inner_than; 21298944Sobrien gdbarch_breakpoint_from_pc_ftype *breakpoint_from_pc; 213130803Smarcel gdbarch_adjust_breakpoint_address_ftype *adjust_breakpoint_address; 21498944Sobrien gdbarch_memory_insert_breakpoint_ftype *memory_insert_breakpoint; 21598944Sobrien gdbarch_memory_remove_breakpoint_ftype *memory_remove_breakpoint; 21698944Sobrien CORE_ADDR decr_pc_after_break; 21798944Sobrien CORE_ADDR function_start_offset; 21898944Sobrien gdbarch_remote_translate_xfer_address_ftype *remote_translate_xfer_address; 21998944Sobrien CORE_ADDR frame_args_skip; 220130803Smarcel gdbarch_deprecated_frameless_function_invocation_ftype *deprecated_frameless_function_invocation; 221130803Smarcel gdbarch_deprecated_frame_chain_ftype *deprecated_frame_chain; 222130803Smarcel gdbarch_deprecated_frame_chain_valid_ftype *deprecated_frame_chain_valid; 223130803Smarcel gdbarch_deprecated_frame_saved_pc_ftype *deprecated_frame_saved_pc; 224130803Smarcel gdbarch_unwind_pc_ftype *unwind_pc; 225130803Smarcel gdbarch_unwind_sp_ftype *unwind_sp; 226130803Smarcel gdbarch_deprecated_frame_args_address_ftype *deprecated_frame_args_address; 227130803Smarcel gdbarch_deprecated_frame_locals_address_ftype *deprecated_frame_locals_address; 228130803Smarcel gdbarch_deprecated_saved_pc_after_call_ftype *deprecated_saved_pc_after_call; 22998944Sobrien gdbarch_frame_num_args_ftype *frame_num_args; 230130803Smarcel gdbarch_deprecated_stack_align_ftype *deprecated_stack_align; 231130803Smarcel gdbarch_frame_align_ftype *frame_align; 232130803Smarcel gdbarch_deprecated_reg_struct_has_addr_ftype *deprecated_reg_struct_has_addr; 233130803Smarcel gdbarch_stabs_argument_has_addr_ftype *stabs_argument_has_addr; 234130803Smarcel int frame_red_zone_size; 23598944Sobrien int parm_boundary; 23698944Sobrien const struct floatformat * float_format; 23798944Sobrien const struct floatformat * double_format; 23898944Sobrien const struct floatformat * long_double_format; 23998944Sobrien gdbarch_convert_from_func_ptr_addr_ftype *convert_from_func_ptr_addr; 24098944Sobrien gdbarch_addr_bits_remove_ftype *addr_bits_remove; 24198944Sobrien gdbarch_smash_text_address_ftype *smash_text_address; 24298944Sobrien gdbarch_software_single_step_ftype *software_single_step; 24398944Sobrien gdbarch_print_insn_ftype *print_insn; 24498944Sobrien gdbarch_skip_trampoline_code_ftype *skip_trampoline_code; 245130803Smarcel gdbarch_skip_solib_resolver_ftype *skip_solib_resolver; 24698944Sobrien gdbarch_in_solib_call_trampoline_ftype *in_solib_call_trampoline; 247130803Smarcel gdbarch_in_solib_return_trampoline_ftype *in_solib_return_trampoline; 248130803Smarcel gdbarch_pc_in_sigtramp_ftype *pc_in_sigtramp; 249130803Smarcel gdbarch_sigtramp_start_ftype *sigtramp_start; 250130803Smarcel gdbarch_sigtramp_end_ftype *sigtramp_end; 25198944Sobrien gdbarch_in_function_epilogue_p_ftype *in_function_epilogue_p; 25298944Sobrien gdbarch_construct_inferior_arguments_ftype *construct_inferior_arguments; 25398944Sobrien gdbarch_elf_make_msymbol_special_ftype *elf_make_msymbol_special; 25498944Sobrien gdbarch_coff_make_msymbol_special_ftype *coff_make_msymbol_special; 255130803Smarcel const char * name_of_malloc; 256130803Smarcel int cannot_step_breakpoint; 257130803Smarcel int have_nonsteppable_watchpoint; 258130803Smarcel gdbarch_address_class_type_flags_ftype *address_class_type_flags; 259130803Smarcel gdbarch_address_class_type_flags_to_name_ftype *address_class_type_flags_to_name; 260130803Smarcel gdbarch_address_class_name_to_type_flags_ftype *address_class_name_to_type_flags; 261130803Smarcel gdbarch_register_reggroup_p_ftype *register_reggroup_p; 262130803Smarcel gdbarch_fetch_pointer_argument_ftype *fetch_pointer_argument; 263130803Smarcel gdbarch_regset_from_core_section_ftype *regset_from_core_section; 26498944Sobrien}; 26598944Sobrien 26698944Sobrien 26798944Sobrien/* The default architecture uses host values (for want of a better 26898944Sobrien choice). */ 26998944Sobrien 27098944Sobrienextern const struct bfd_arch_info bfd_default_arch_struct; 27198944Sobrien 27298944Sobrienstruct gdbarch startup_gdbarch = 27398944Sobrien{ 274130803Smarcel 1, /* Always initialized. */ 275130803Smarcel NULL, /* The obstack. */ 27698944Sobrien /* basic architecture information */ 277130803Smarcel &bfd_default_arch_struct, /* bfd_arch_info */ 278130803Smarcel BFD_ENDIAN_BIG, /* byte_order */ 279130803Smarcel GDB_OSABI_UNKNOWN, /* osabi */ 28098944Sobrien /* target specific vector and its dump routine */ 28198944Sobrien NULL, NULL, 28298944Sobrien /*per-architecture data-pointers and swap regions */ 28398944Sobrien 0, NULL, NULL, 28498944Sobrien /* Multi-arch values */ 285130803Smarcel 8 * sizeof (short), /* short_bit */ 286130803Smarcel 8 * sizeof (int), /* int_bit */ 287130803Smarcel 8 * sizeof (long), /* long_bit */ 288130803Smarcel 8 * sizeof (LONGEST), /* long_long_bit */ 289130803Smarcel 8 * sizeof (float), /* float_bit */ 290130803Smarcel 8 * sizeof (double), /* double_bit */ 291130803Smarcel 8 * sizeof (long double), /* long_double_bit */ 292130803Smarcel 8 * sizeof (void*), /* ptr_bit */ 293130803Smarcel 8 * sizeof (void*), /* addr_bit */ 294130803Smarcel 8 * sizeof (void*), /* bfd_vma_bit */ 295130803Smarcel 1, /* char_signed */ 296130803Smarcel 0, /* read_pc */ 297130803Smarcel 0, /* write_pc */ 298130803Smarcel 0, /* read_sp */ 299130803Smarcel 0, /* virtual_frame_pointer */ 300130803Smarcel 0, /* pseudo_register_read */ 301130803Smarcel 0, /* pseudo_register_write */ 302130803Smarcel 0, /* num_regs */ 303130803Smarcel 0, /* num_pseudo_regs */ 304130803Smarcel -1, /* sp_regnum */ 305130803Smarcel -1, /* pc_regnum */ 306130803Smarcel -1, /* ps_regnum */ 307130803Smarcel 0, /* fp0_regnum */ 308130803Smarcel 0, /* stab_reg_to_regnum */ 309130803Smarcel 0, /* ecoff_reg_to_regnum */ 310130803Smarcel 0, /* dwarf_reg_to_regnum */ 311130803Smarcel 0, /* sdb_reg_to_regnum */ 312130803Smarcel 0, /* dwarf2_reg_to_regnum */ 313130803Smarcel 0, /* register_name */ 314130803Smarcel 0, /* register_type */ 315130803Smarcel 0, /* deprecated_register_virtual_type */ 316130803Smarcel 0, /* deprecated_register_bytes */ 317130803Smarcel generic_register_byte, /* deprecated_register_byte */ 318130803Smarcel generic_register_size, /* deprecated_register_raw_size */ 319130803Smarcel generic_register_size, /* deprecated_register_virtual_size */ 320130803Smarcel 0, /* deprecated_max_register_raw_size */ 321130803Smarcel 0, /* deprecated_max_register_virtual_size */ 322130803Smarcel 0, /* unwind_dummy_id */ 323130803Smarcel 0, /* deprecated_save_dummy_frame_tos */ 324130803Smarcel -1, /* deprecated_fp_regnum */ 325130803Smarcel 0, /* deprecated_target_read_fp */ 326130803Smarcel 0, /* push_dummy_call */ 327130803Smarcel 0, /* deprecated_push_arguments */ 328130803Smarcel 0, /* deprecated_use_generic_dummy_frames */ 329130803Smarcel 0, /* deprecated_push_return_address */ 330130803Smarcel 0, /* deprecated_dummy_write_sp */ 331130803Smarcel 0, /* deprecated_register_size */ 332130803Smarcel 0, /* call_dummy_location */ 333130803Smarcel 0, /* deprecated_call_dummy_start_offset */ 334130803Smarcel 0, /* deprecated_call_dummy_breakpoint_offset */ 335130803Smarcel 0, /* deprecated_call_dummy_length */ 336130803Smarcel 0, /* deprecated_call_dummy_words */ 337130803Smarcel 0, /* deprecated_sizeof_call_dummy_words */ 338130803Smarcel 0, /* deprecated_fix_call_dummy */ 339130803Smarcel 0, /* push_dummy_code */ 340130803Smarcel 0, /* deprecated_push_dummy_frame */ 341130803Smarcel 0, /* deprecated_do_registers_info */ 342130803Smarcel default_print_registers_info, /* print_registers_info */ 343130803Smarcel 0, /* print_float_info */ 344130803Smarcel 0, /* print_vector_info */ 345130803Smarcel 0, /* register_sim_regno */ 346130803Smarcel 0, /* register_bytes_ok */ 347130803Smarcel 0, /* cannot_fetch_register */ 348130803Smarcel 0, /* cannot_store_register */ 349130803Smarcel 0, /* get_longjmp_target */ 350130803Smarcel generic_pc_in_call_dummy, /* deprecated_pc_in_call_dummy */ 351130803Smarcel 0, /* deprecated_init_frame_pc_first */ 352130803Smarcel 0, /* deprecated_init_frame_pc */ 353130803Smarcel 0, /* believe_pcc_promotion */ 354130803Smarcel 0, /* believe_pcc_promotion_type */ 355130803Smarcel 0, /* deprecated_get_saved_register */ 356130803Smarcel 0, /* deprecated_register_convertible */ 357130803Smarcel 0, /* deprecated_register_convert_to_virtual */ 358130803Smarcel 0, /* deprecated_register_convert_to_raw */ 359130803Smarcel 0, /* convert_register_p */ 360130803Smarcel 0, /* register_to_value */ 361130803Smarcel 0, /* value_to_register */ 362130803Smarcel 0, /* pointer_to_address */ 363130803Smarcel 0, /* address_to_pointer */ 364130803Smarcel 0, /* integer_to_address */ 365130803Smarcel 0, /* deprecated_pop_frame */ 366130803Smarcel 0, /* deprecated_store_struct_return */ 367130803Smarcel 0, /* return_value */ 368130803Smarcel 0, /* return_value_on_stack */ 369130803Smarcel 0, /* extract_return_value */ 370130803Smarcel 0, /* store_return_value */ 371130803Smarcel 0, /* deprecated_extract_return_value */ 372130803Smarcel 0, /* deprecated_store_return_value */ 373130803Smarcel 0, /* use_struct_convention */ 374130803Smarcel 0, /* deprecated_extract_struct_value_address */ 375130803Smarcel 0, /* deprecated_frame_init_saved_regs */ 376130803Smarcel 0, /* deprecated_init_extra_frame_info */ 377130803Smarcel 0, /* skip_prologue */ 378130803Smarcel 0, /* inner_than */ 379130803Smarcel 0, /* breakpoint_from_pc */ 380130803Smarcel 0, /* adjust_breakpoint_address */ 381130803Smarcel 0, /* memory_insert_breakpoint */ 382130803Smarcel 0, /* memory_remove_breakpoint */ 383130803Smarcel 0, /* decr_pc_after_break */ 384130803Smarcel 0, /* function_start_offset */ 385130803Smarcel generic_remote_translate_xfer_address, /* remote_translate_xfer_address */ 386130803Smarcel 0, /* frame_args_skip */ 387130803Smarcel 0, /* deprecated_frameless_function_invocation */ 388130803Smarcel 0, /* deprecated_frame_chain */ 389130803Smarcel 0, /* deprecated_frame_chain_valid */ 390130803Smarcel 0, /* deprecated_frame_saved_pc */ 391130803Smarcel 0, /* unwind_pc */ 392130803Smarcel 0, /* unwind_sp */ 393130803Smarcel get_frame_base, /* deprecated_frame_args_address */ 394130803Smarcel get_frame_base, /* deprecated_frame_locals_address */ 395130803Smarcel 0, /* deprecated_saved_pc_after_call */ 396130803Smarcel 0, /* frame_num_args */ 397130803Smarcel 0, /* deprecated_stack_align */ 398130803Smarcel 0, /* frame_align */ 399130803Smarcel 0, /* deprecated_reg_struct_has_addr */ 400130803Smarcel default_stabs_argument_has_addr, /* stabs_argument_has_addr */ 401130803Smarcel 0, /* frame_red_zone_size */ 402130803Smarcel 0, /* parm_boundary */ 403130803Smarcel 0, /* float_format */ 404130803Smarcel 0, /* double_format */ 405130803Smarcel 0, /* long_double_format */ 406130803Smarcel convert_from_func_ptr_addr_identity, /* convert_from_func_ptr_addr */ 407130803Smarcel 0, /* addr_bits_remove */ 408130803Smarcel 0, /* smash_text_address */ 409130803Smarcel 0, /* software_single_step */ 410130803Smarcel 0, /* print_insn */ 411130803Smarcel 0, /* skip_trampoline_code */ 412130803Smarcel generic_skip_solib_resolver, /* skip_solib_resolver */ 413130803Smarcel 0, /* in_solib_call_trampoline */ 414130803Smarcel 0, /* in_solib_return_trampoline */ 415130803Smarcel 0, /* pc_in_sigtramp */ 416130803Smarcel 0, /* sigtramp_start */ 417130803Smarcel 0, /* sigtramp_end */ 418130803Smarcel generic_in_function_epilogue_p, /* in_function_epilogue_p */ 419130803Smarcel construct_inferior_arguments, /* construct_inferior_arguments */ 420130803Smarcel 0, /* elf_make_msymbol_special */ 421130803Smarcel 0, /* coff_make_msymbol_special */ 422130803Smarcel "malloc", /* name_of_malloc */ 423130803Smarcel 0, /* cannot_step_breakpoint */ 424130803Smarcel 0, /* have_nonsteppable_watchpoint */ 425130803Smarcel 0, /* address_class_type_flags */ 426130803Smarcel 0, /* address_class_type_flags_to_name */ 427130803Smarcel 0, /* address_class_name_to_type_flags */ 428130803Smarcel default_register_reggroup_p, /* register_reggroup_p */ 429130803Smarcel 0, /* fetch_pointer_argument */ 430130803Smarcel 0, /* regset_from_core_section */ 43198944Sobrien /* startup_gdbarch() */ 43298944Sobrien}; 43398944Sobrien 43498944Sobrienstruct gdbarch *current_gdbarch = &startup_gdbarch; 43598944Sobrien 43698944Sobrien/* Create a new ``struct gdbarch'' based on information provided by 43798944Sobrien ``struct gdbarch_info''. */ 43898944Sobrien 43998944Sobrienstruct gdbarch * 44098944Sobriengdbarch_alloc (const struct gdbarch_info *info, 44198944Sobrien struct gdbarch_tdep *tdep) 44298944Sobrien{ 44398944Sobrien /* NOTE: The new architecture variable is named ``current_gdbarch'' 44498944Sobrien so that macros such as TARGET_DOUBLE_BIT, when expanded, refer to 44598944Sobrien the current local architecture and not the previous global 44698944Sobrien architecture. This ensures that the new architectures initial 44798944Sobrien values are not influenced by the previous architecture. Once 44898944Sobrien everything is parameterised with gdbarch, this will go away. */ 449130803Smarcel struct gdbarch *current_gdbarch; 450130803Smarcel 451130803Smarcel /* Create an obstack for allocating all the per-architecture memory, 452130803Smarcel then use that to allocate the architecture vector. */ 453130803Smarcel struct obstack *obstack = XMALLOC (struct obstack); 454130803Smarcel obstack_init (obstack); 455130803Smarcel current_gdbarch = obstack_alloc (obstack, sizeof (*current_gdbarch)); 45698944Sobrien memset (current_gdbarch, 0, sizeof (*current_gdbarch)); 457130803Smarcel current_gdbarch->obstack = obstack; 45898944Sobrien 45998944Sobrien alloc_gdbarch_data (current_gdbarch); 46098944Sobrien 46198944Sobrien current_gdbarch->tdep = tdep; 46298944Sobrien 46398944Sobrien current_gdbarch->bfd_arch_info = info->bfd_arch_info; 46498944Sobrien current_gdbarch->byte_order = info->byte_order; 465130803Smarcel current_gdbarch->osabi = info->osabi; 46698944Sobrien 46798944Sobrien /* Force the explicit initialization of these. */ 46898944Sobrien current_gdbarch->short_bit = 2*TARGET_CHAR_BIT; 46998944Sobrien current_gdbarch->int_bit = 4*TARGET_CHAR_BIT; 47098944Sobrien current_gdbarch->long_bit = 4*TARGET_CHAR_BIT; 47198944Sobrien current_gdbarch->long_long_bit = 2*TARGET_LONG_BIT; 47298944Sobrien current_gdbarch->float_bit = 4*TARGET_CHAR_BIT; 47398944Sobrien current_gdbarch->double_bit = 8*TARGET_CHAR_BIT; 47498944Sobrien current_gdbarch->long_double_bit = 8*TARGET_CHAR_BIT; 47598944Sobrien current_gdbarch->ptr_bit = TARGET_INT_BIT; 47698944Sobrien current_gdbarch->bfd_vma_bit = TARGET_ARCHITECTURE->bits_per_address; 47798944Sobrien current_gdbarch->char_signed = -1; 47898944Sobrien current_gdbarch->write_pc = generic_target_write_pc; 47998944Sobrien current_gdbarch->virtual_frame_pointer = legacy_virtual_frame_pointer; 48098944Sobrien current_gdbarch->num_regs = -1; 48198944Sobrien current_gdbarch->sp_regnum = -1; 48298944Sobrien current_gdbarch->pc_regnum = -1; 483130803Smarcel current_gdbarch->ps_regnum = -1; 48498944Sobrien current_gdbarch->fp0_regnum = -1; 48598944Sobrien current_gdbarch->stab_reg_to_regnum = no_op_reg_to_regnum; 48698944Sobrien current_gdbarch->ecoff_reg_to_regnum = no_op_reg_to_regnum; 48798944Sobrien current_gdbarch->dwarf_reg_to_regnum = no_op_reg_to_regnum; 48898944Sobrien current_gdbarch->sdb_reg_to_regnum = no_op_reg_to_regnum; 48998944Sobrien current_gdbarch->dwarf2_reg_to_regnum = no_op_reg_to_regnum; 490130803Smarcel current_gdbarch->deprecated_register_byte = generic_register_byte; 491130803Smarcel current_gdbarch->deprecated_register_raw_size = generic_register_size; 492130803Smarcel current_gdbarch->deprecated_register_virtual_size = generic_register_size; 493130803Smarcel current_gdbarch->deprecated_fp_regnum = -1; 494130803Smarcel current_gdbarch->deprecated_use_generic_dummy_frames = 1; 495130803Smarcel current_gdbarch->call_dummy_location = AT_ENTRY_POINT; 496130803Smarcel current_gdbarch->deprecated_call_dummy_words = legacy_call_dummy_words; 497130803Smarcel current_gdbarch->deprecated_sizeof_call_dummy_words = legacy_sizeof_call_dummy_words; 498130803Smarcel current_gdbarch->print_registers_info = default_print_registers_info; 499130803Smarcel current_gdbarch->register_sim_regno = legacy_register_sim_regno; 50098944Sobrien current_gdbarch->cannot_fetch_register = cannot_register_not; 50198944Sobrien current_gdbarch->cannot_store_register = cannot_register_not; 502130803Smarcel current_gdbarch->deprecated_pc_in_call_dummy = generic_pc_in_call_dummy; 503130803Smarcel current_gdbarch->convert_register_p = legacy_convert_register_p; 504130803Smarcel current_gdbarch->register_to_value = legacy_register_to_value; 505130803Smarcel current_gdbarch->value_to_register = legacy_value_to_register; 50698944Sobrien current_gdbarch->pointer_to_address = unsigned_pointer_to_address; 50798944Sobrien current_gdbarch->address_to_pointer = unsigned_address_to_pointer; 50898944Sobrien current_gdbarch->return_value_on_stack = generic_return_value_on_stack_not; 509130803Smarcel current_gdbarch->extract_return_value = legacy_extract_return_value; 510130803Smarcel current_gdbarch->store_return_value = legacy_store_return_value; 51198944Sobrien current_gdbarch->use_struct_convention = generic_use_struct_convention; 51298944Sobrien current_gdbarch->memory_insert_breakpoint = default_memory_insert_breakpoint; 51398944Sobrien current_gdbarch->memory_remove_breakpoint = default_memory_remove_breakpoint; 51498944Sobrien current_gdbarch->remote_translate_xfer_address = generic_remote_translate_xfer_address; 515130803Smarcel current_gdbarch->deprecated_frame_args_address = get_frame_base; 516130803Smarcel current_gdbarch->deprecated_frame_locals_address = get_frame_base; 517130803Smarcel current_gdbarch->stabs_argument_has_addr = default_stabs_argument_has_addr; 518130803Smarcel current_gdbarch->convert_from_func_ptr_addr = convert_from_func_ptr_addr_identity; 51998944Sobrien current_gdbarch->addr_bits_remove = core_addr_identity; 52098944Sobrien current_gdbarch->smash_text_address = core_addr_identity; 52198944Sobrien current_gdbarch->skip_trampoline_code = generic_skip_trampoline_code; 522130803Smarcel current_gdbarch->skip_solib_resolver = generic_skip_solib_resolver; 52398944Sobrien current_gdbarch->in_solib_call_trampoline = generic_in_solib_call_trampoline; 524130803Smarcel current_gdbarch->in_solib_return_trampoline = generic_in_solib_return_trampoline; 525130803Smarcel current_gdbarch->pc_in_sigtramp = legacy_pc_in_sigtramp; 52698944Sobrien current_gdbarch->in_function_epilogue_p = generic_in_function_epilogue_p; 52798944Sobrien current_gdbarch->construct_inferior_arguments = construct_inferior_arguments; 52898944Sobrien current_gdbarch->elf_make_msymbol_special = default_elf_make_msymbol_special; 52998944Sobrien current_gdbarch->coff_make_msymbol_special = default_coff_make_msymbol_special; 530130803Smarcel current_gdbarch->name_of_malloc = "malloc"; 531130803Smarcel current_gdbarch->register_reggroup_p = default_register_reggroup_p; 53298944Sobrien /* gdbarch_alloc() */ 53398944Sobrien 53498944Sobrien return current_gdbarch; 53598944Sobrien} 53698944Sobrien 53798944Sobrien 538130803Smarcel/* Allocate extra space using the per-architecture obstack. */ 539130803Smarcel 540130803Smarcelvoid * 541130803Smarcelgdbarch_obstack_zalloc (struct gdbarch *arch, long size) 542130803Smarcel{ 543130803Smarcel void *data = obstack_alloc (arch->obstack, size); 544130803Smarcel memset (data, 0, size); 545130803Smarcel return data; 546130803Smarcel} 547130803Smarcel 548130803Smarcel 54998944Sobrien/* Free a gdbarch struct. This should never happen in normal 55098944Sobrien operation --- once you've created a gdbarch, you keep it around. 55198944Sobrien However, if an architecture's init function encounters an error 55298944Sobrien building the structure, it may need to clean up a partially 55398944Sobrien constructed gdbarch. */ 55498944Sobrien 55598944Sobrienvoid 55698944Sobriengdbarch_free (struct gdbarch *arch) 55798944Sobrien{ 558130803Smarcel struct obstack *obstack; 55998944Sobrien gdb_assert (arch != NULL); 560130803Smarcel gdb_assert (!arch->initialized_p); 561130803Smarcel obstack = arch->obstack; 562130803Smarcel obstack_free (obstack, 0); /* Includes the ARCH. */ 563130803Smarcel xfree (obstack); 56498944Sobrien} 56598944Sobrien 56698944Sobrien 567130803Smarcel/* Ensure that all values in a GDBARCH are reasonable. */ 56898944Sobrien 569130803Smarcel/* NOTE/WARNING: The parameter is called ``current_gdbarch'' so that it 570130803Smarcel just happens to match the global variable ``current_gdbarch''. That 571130803Smarcel way macros refering to that variable get the local and not the global 572130803Smarcel version - ulgh. Once everything is parameterised with gdbarch, this 573130803Smarcel will go away. */ 574130803Smarcel 57598944Sobrienstatic void 576130803Smarcelverify_gdbarch (struct gdbarch *current_gdbarch) 57798944Sobrien{ 57898944Sobrien struct ui_file *log; 57998944Sobrien struct cleanup *cleanups; 58098944Sobrien long dummy; 58198944Sobrien char *buf; 58298944Sobrien log = mem_fileopen (); 58398944Sobrien cleanups = make_cleanup_ui_file_delete (log); 58498944Sobrien /* fundamental */ 585130803Smarcel if (current_gdbarch->byte_order == BFD_ENDIAN_UNKNOWN) 58698944Sobrien fprintf_unfiltered (log, "\n\tbyte-order"); 587130803Smarcel if (current_gdbarch->bfd_arch_info == NULL) 58898944Sobrien fprintf_unfiltered (log, "\n\tbfd_arch_info"); 58998944Sobrien /* Check those that need to be defined for the given multi-arch level. */ 59098944Sobrien /* Skip verify of short_bit, invalid_p == 0 */ 59198944Sobrien /* Skip verify of int_bit, invalid_p == 0 */ 59298944Sobrien /* Skip verify of long_bit, invalid_p == 0 */ 59398944Sobrien /* Skip verify of long_long_bit, invalid_p == 0 */ 59498944Sobrien /* Skip verify of float_bit, invalid_p == 0 */ 59598944Sobrien /* Skip verify of double_bit, invalid_p == 0 */ 59698944Sobrien /* Skip verify of long_double_bit, invalid_p == 0 */ 59798944Sobrien /* Skip verify of ptr_bit, invalid_p == 0 */ 598130803Smarcel if (current_gdbarch->addr_bit == 0) 599130803Smarcel current_gdbarch->addr_bit = TARGET_PTR_BIT; 60098944Sobrien /* Skip verify of bfd_vma_bit, invalid_p == 0 */ 601130803Smarcel if (current_gdbarch->char_signed == -1) 602130803Smarcel current_gdbarch->char_signed = 1; 603130803Smarcel /* Skip verify of read_pc, has predicate */ 60498944Sobrien /* Skip verify of write_pc, invalid_p == 0 */ 605130803Smarcel /* Skip verify of read_sp, has predicate */ 60698944Sobrien /* Skip verify of virtual_frame_pointer, invalid_p == 0 */ 607130803Smarcel /* Skip verify of pseudo_register_read, has predicate */ 608130803Smarcel /* Skip verify of pseudo_register_write, has predicate */ 60998944Sobrien if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) 610130803Smarcel && (current_gdbarch->num_regs == -1)) 61198944Sobrien fprintf_unfiltered (log, "\n\tnum_regs"); 61298944Sobrien /* Skip verify of num_pseudo_regs, invalid_p == 0 */ 613130803Smarcel /* Skip verify of sp_regnum, invalid_p == 0 */ 614130803Smarcel /* Skip verify of pc_regnum, invalid_p == 0 */ 615130803Smarcel /* Skip verify of ps_regnum, invalid_p == 0 */ 61698944Sobrien /* Skip verify of fp0_regnum, invalid_p == 0 */ 61798944Sobrien /* Skip verify of stab_reg_to_regnum, invalid_p == 0 */ 61898944Sobrien /* Skip verify of ecoff_reg_to_regnum, invalid_p == 0 */ 61998944Sobrien /* Skip verify of dwarf_reg_to_regnum, invalid_p == 0 */ 62098944Sobrien /* Skip verify of sdb_reg_to_regnum, invalid_p == 0 */ 62198944Sobrien /* Skip verify of dwarf2_reg_to_regnum, invalid_p == 0 */ 622130803Smarcel /* Skip verify of register_type, has predicate */ 623130803Smarcel /* Skip verify of deprecated_register_virtual_type, has predicate */ 624130803Smarcel /* Skip verify of deprecated_register_byte, has predicate */ 625130803Smarcel /* Skip verify of deprecated_register_raw_size, has predicate */ 626130803Smarcel /* Skip verify of deprecated_register_virtual_size, has predicate */ 627130803Smarcel /* Skip verify of deprecated_max_register_raw_size, has predicate */ 628130803Smarcel /* Skip verify of deprecated_max_register_virtual_size, has predicate */ 629130803Smarcel /* Skip verify of unwind_dummy_id, has predicate */ 630130803Smarcel /* Skip verify of deprecated_save_dummy_frame_tos, has predicate */ 631130803Smarcel /* Skip verify of deprecated_fp_regnum, invalid_p == 0 */ 632130803Smarcel /* Skip verify of deprecated_target_read_fp, has predicate */ 633130803Smarcel /* Skip verify of push_dummy_call, has predicate */ 634130803Smarcel /* Skip verify of deprecated_push_arguments, has predicate */ 635130803Smarcel /* Skip verify of deprecated_use_generic_dummy_frames, invalid_p == 0 */ 636130803Smarcel /* Skip verify of deprecated_push_return_address, has predicate */ 637130803Smarcel /* Skip verify of deprecated_dummy_write_sp, has predicate */ 638130803Smarcel /* Skip verify of call_dummy_location, invalid_p == 0 */ 639130803Smarcel /* Skip verify of deprecated_call_dummy_words, invalid_p == 0 */ 640130803Smarcel /* Skip verify of deprecated_sizeof_call_dummy_words, invalid_p == 0 */ 641130803Smarcel /* Skip verify of deprecated_fix_call_dummy, has predicate */ 642130803Smarcel /* Skip verify of push_dummy_code, has predicate */ 643130803Smarcel /* Skip verify of deprecated_push_dummy_frame, has predicate */ 644130803Smarcel /* Skip verify of deprecated_do_registers_info, has predicate */ 645130803Smarcel /* Skip verify of print_registers_info, invalid_p == 0 */ 646130803Smarcel /* Skip verify of print_float_info, has predicate */ 647130803Smarcel /* Skip verify of print_vector_info, has predicate */ 64898944Sobrien /* Skip verify of register_sim_regno, invalid_p == 0 */ 64998944Sobrien /* Skip verify of register_bytes_ok, has predicate */ 65098944Sobrien /* Skip verify of cannot_fetch_register, invalid_p == 0 */ 65198944Sobrien /* Skip verify of cannot_store_register, invalid_p == 0 */ 65298944Sobrien /* Skip verify of get_longjmp_target, has predicate */ 653130803Smarcel /* Skip verify of deprecated_pc_in_call_dummy, has predicate */ 654130803Smarcel /* Skip verify of deprecated_init_frame_pc_first, has predicate */ 655130803Smarcel /* Skip verify of deprecated_init_frame_pc, has predicate */ 656130803Smarcel /* Skip verify of deprecated_get_saved_register, has predicate */ 657130803Smarcel /* Skip verify of deprecated_register_convertible, has predicate */ 658130803Smarcel /* Skip verify of deprecated_register_convert_to_virtual, invalid_p == 0 */ 659130803Smarcel /* Skip verify of deprecated_register_convert_to_raw, invalid_p == 0 */ 660130803Smarcel /* Skip verify of convert_register_p, invalid_p == 0 */ 661130803Smarcel /* Skip verify of register_to_value, invalid_p == 0 */ 662130803Smarcel /* Skip verify of value_to_register, invalid_p == 0 */ 66398944Sobrien /* Skip verify of pointer_to_address, invalid_p == 0 */ 66498944Sobrien /* Skip verify of address_to_pointer, invalid_p == 0 */ 66598944Sobrien /* Skip verify of integer_to_address, has predicate */ 666130803Smarcel /* Skip verify of deprecated_pop_frame, has predicate */ 667130803Smarcel /* Skip verify of deprecated_store_struct_return, has predicate */ 668130803Smarcel /* Skip verify of return_value, has predicate */ 66998944Sobrien /* Skip verify of return_value_on_stack, invalid_p == 0 */ 670130803Smarcel /* Skip verify of extract_return_value, invalid_p == 0 */ 671130803Smarcel /* Skip verify of store_return_value, invalid_p == 0 */ 67298944Sobrien /* Skip verify of use_struct_convention, invalid_p == 0 */ 673130803Smarcel /* Skip verify of deprecated_extract_struct_value_address, has predicate */ 674130803Smarcel /* Skip verify of deprecated_frame_init_saved_regs, has predicate */ 675130803Smarcel /* Skip verify of deprecated_init_extra_frame_info, has predicate */ 67698944Sobrien if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) 677130803Smarcel && (current_gdbarch->skip_prologue == 0)) 67898944Sobrien fprintf_unfiltered (log, "\n\tskip_prologue"); 67998944Sobrien if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) 680130803Smarcel && (current_gdbarch->inner_than == 0)) 68198944Sobrien fprintf_unfiltered (log, "\n\tinner_than"); 682130803Smarcel if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) 683130803Smarcel && (current_gdbarch->breakpoint_from_pc == 0)) 684130803Smarcel fprintf_unfiltered (log, "\n\tbreakpoint_from_pc"); 685130803Smarcel /* Skip verify of adjust_breakpoint_address, has predicate */ 68698944Sobrien /* Skip verify of memory_insert_breakpoint, invalid_p == 0 */ 68798944Sobrien /* Skip verify of memory_remove_breakpoint, invalid_p == 0 */ 688130803Smarcel /* Skip verify of decr_pc_after_break, invalid_p == 0 */ 689130803Smarcel /* Skip verify of function_start_offset, invalid_p == 0 */ 69098944Sobrien /* Skip verify of remote_translate_xfer_address, invalid_p == 0 */ 691130803Smarcel /* Skip verify of frame_args_skip, invalid_p == 0 */ 692130803Smarcel /* Skip verify of deprecated_frameless_function_invocation, has predicate */ 693130803Smarcel /* Skip verify of deprecated_frame_chain, has predicate */ 694130803Smarcel /* Skip verify of deprecated_frame_chain_valid, has predicate */ 695130803Smarcel /* Skip verify of deprecated_frame_saved_pc, has predicate */ 696130803Smarcel /* Skip verify of unwind_pc, has predicate */ 697130803Smarcel /* Skip verify of unwind_sp, has predicate */ 698130803Smarcel /* Skip verify of deprecated_frame_args_address, has predicate */ 699130803Smarcel /* Skip verify of deprecated_frame_locals_address, has predicate */ 700130803Smarcel /* Skip verify of deprecated_saved_pc_after_call, has predicate */ 701130803Smarcel /* Skip verify of frame_num_args, has predicate */ 702130803Smarcel /* Skip verify of deprecated_stack_align, has predicate */ 703130803Smarcel /* Skip verify of frame_align, has predicate */ 704130803Smarcel /* Skip verify of deprecated_reg_struct_has_addr, has predicate */ 705130803Smarcel /* Skip verify of stabs_argument_has_addr, invalid_p == 0 */ 706130803Smarcel if (current_gdbarch->float_format == 0) 707130803Smarcel current_gdbarch->float_format = default_float_format (current_gdbarch); 708130803Smarcel if (current_gdbarch->double_format == 0) 709130803Smarcel current_gdbarch->double_format = default_double_format (current_gdbarch); 710130803Smarcel if (current_gdbarch->long_double_format == 0) 711130803Smarcel current_gdbarch->long_double_format = default_double_format (current_gdbarch); 71298944Sobrien /* Skip verify of convert_from_func_ptr_addr, invalid_p == 0 */ 71398944Sobrien /* Skip verify of addr_bits_remove, invalid_p == 0 */ 71498944Sobrien /* Skip verify of smash_text_address, invalid_p == 0 */ 71598944Sobrien /* Skip verify of software_single_step, has predicate */ 716130803Smarcel if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) 717130803Smarcel && (current_gdbarch->print_insn == 0)) 718130803Smarcel fprintf_unfiltered (log, "\n\tprint_insn"); 71998944Sobrien /* Skip verify of skip_trampoline_code, invalid_p == 0 */ 720130803Smarcel /* Skip verify of skip_solib_resolver, invalid_p == 0 */ 72198944Sobrien /* Skip verify of in_solib_call_trampoline, invalid_p == 0 */ 722130803Smarcel /* Skip verify of in_solib_return_trampoline, invalid_p == 0 */ 723130803Smarcel /* Skip verify of pc_in_sigtramp, invalid_p == 0 */ 724130803Smarcel /* Skip verify of sigtramp_start, has predicate */ 725130803Smarcel /* Skip verify of sigtramp_end, has predicate */ 72698944Sobrien /* Skip verify of in_function_epilogue_p, invalid_p == 0 */ 72798944Sobrien /* Skip verify of construct_inferior_arguments, invalid_p == 0 */ 72898944Sobrien /* Skip verify of elf_make_msymbol_special, invalid_p == 0 */ 72998944Sobrien /* Skip verify of coff_make_msymbol_special, invalid_p == 0 */ 730130803Smarcel /* Skip verify of name_of_malloc, invalid_p == 0 */ 731130803Smarcel /* Skip verify of cannot_step_breakpoint, invalid_p == 0 */ 732130803Smarcel /* Skip verify of have_nonsteppable_watchpoint, invalid_p == 0 */ 733130803Smarcel /* Skip verify of address_class_type_flags, has predicate */ 734130803Smarcel /* Skip verify of address_class_type_flags_to_name, has predicate */ 735130803Smarcel /* Skip verify of address_class_name_to_type_flags, has predicate */ 736130803Smarcel /* Skip verify of register_reggroup_p, invalid_p == 0 */ 737130803Smarcel /* Skip verify of fetch_pointer_argument, has predicate */ 738130803Smarcel /* Skip verify of regset_from_core_section, has predicate */ 73998944Sobrien buf = ui_file_xstrdup (log, &dummy); 74098944Sobrien make_cleanup (xfree, buf); 74198944Sobrien if (strlen (buf) > 0) 74298944Sobrien internal_error (__FILE__, __LINE__, 74398944Sobrien "verify_gdbarch: the following are invalid ...%s", 74498944Sobrien buf); 74598944Sobrien do_cleanups (cleanups); 74698944Sobrien} 74798944Sobrien 74898944Sobrien 74998944Sobrien/* Print out the details of the current architecture. */ 75098944Sobrien 75198944Sobrien/* NOTE/WARNING: The parameter is called ``current_gdbarch'' so that it 75298944Sobrien just happens to match the global variable ``current_gdbarch''. That 75398944Sobrien way macros refering to that variable get the local and not the global 75498944Sobrien version - ulgh. Once everything is parameterised with gdbarch, this 75598944Sobrien will go away. */ 75698944Sobrien 75798944Sobrienvoid 758130803Smarcelgdbarch_dump (struct gdbarch *current_gdbarch, struct ui_file *file) 75998944Sobrien{ 76098944Sobrien fprintf_unfiltered (file, 76198944Sobrien "gdbarch_dump: GDB_MULTI_ARCH = %d\n", 76298944Sobrien GDB_MULTI_ARCH); 763130803Smarcel fprintf_unfiltered (file, 764130803Smarcel "gdbarch_dump: convert_from_func_ptr_addr = 0x%08lx\n", 765130803Smarcel (long) current_gdbarch->convert_from_func_ptr_addr); 766130803Smarcel fprintf_unfiltered (file, 767130803Smarcel "gdbarch_dump: gdbarch_frame_align_p() = %d\n", 768130803Smarcel gdbarch_frame_align_p (current_gdbarch)); 769130803Smarcel fprintf_unfiltered (file, 770130803Smarcel "gdbarch_dump: frame_align = 0x%08lx\n", 771130803Smarcel (long) current_gdbarch->frame_align); 772130803Smarcel fprintf_unfiltered (file, 773130803Smarcel "gdbarch_dump: gdbarch_regset_from_core_section_p() = %d\n", 774130803Smarcel gdbarch_regset_from_core_section_p (current_gdbarch)); 775130803Smarcel fprintf_unfiltered (file, 776130803Smarcel "gdbarch_dump: regset_from_core_section = 0x%08lx\n", 777130803Smarcel (long) current_gdbarch->regset_from_core_section); 778130803Smarcel fprintf_unfiltered (file, 779130803Smarcel "gdbarch_dump: gdbarch_return_value_p() = %d\n", 780130803Smarcel gdbarch_return_value_p (current_gdbarch)); 781130803Smarcel fprintf_unfiltered (file, 782130803Smarcel "gdbarch_dump: return_value = 0x%08lx\n", 783130803Smarcel (long) current_gdbarch->return_value); 784130803Smarcel fprintf_unfiltered (file, 785130803Smarcel "gdbarch_dump: in_function_epilogue_p = 0x%08lx\n", 786130803Smarcel (long) current_gdbarch->in_function_epilogue_p); 787130803Smarcel fprintf_unfiltered (file, 788130803Smarcel "gdbarch_dump: register_reggroup_p = 0x%08lx\n", 789130803Smarcel (long) current_gdbarch->register_reggroup_p); 790130803Smarcel fprintf_unfiltered (file, 791130803Smarcel "gdbarch_dump: stabs_argument_has_addr = 0x%08lx\n", 792130803Smarcel (long) current_gdbarch->stabs_argument_has_addr); 793130803Smarcel fprintf_unfiltered (file, 794130803Smarcel "gdbarch_dump: gdbarch_pseudo_register_read_p() = %d\n", 795130803Smarcel gdbarch_pseudo_register_read_p (current_gdbarch)); 796130803Smarcel fprintf_unfiltered (file, 797130803Smarcel "gdbarch_dump: pseudo_register_read = 0x%08lx\n", 798130803Smarcel (long) current_gdbarch->pseudo_register_read); 799130803Smarcel fprintf_unfiltered (file, 800130803Smarcel "gdbarch_dump: gdbarch_pseudo_register_write_p() = %d\n", 801130803Smarcel gdbarch_pseudo_register_write_p (current_gdbarch)); 802130803Smarcel fprintf_unfiltered (file, 803130803Smarcel "gdbarch_dump: pseudo_register_write = 0x%08lx\n", 804130803Smarcel (long) current_gdbarch->pseudo_register_write); 805130803Smarcel fprintf_unfiltered (file, 806130803Smarcel "gdbarch_dump: gdbarch_address_class_name_to_type_flags_p() = %d\n", 807130803Smarcel gdbarch_address_class_name_to_type_flags_p (current_gdbarch)); 808130803Smarcel fprintf_unfiltered (file, 809130803Smarcel "gdbarch_dump: address_class_name_to_type_flags = 0x%08lx\n", 810130803Smarcel (long) current_gdbarch->address_class_name_to_type_flags); 811130803Smarcel#ifdef ADDRESS_CLASS_TYPE_FLAGS_P 812130803Smarcel fprintf_unfiltered (file, 813130803Smarcel "gdbarch_dump: %s # %s\n", 814130803Smarcel "ADDRESS_CLASS_TYPE_FLAGS_P()", 815130803Smarcel XSTRING (ADDRESS_CLASS_TYPE_FLAGS_P ())); 816130803Smarcel fprintf_unfiltered (file, 817130803Smarcel "gdbarch_dump: ADDRESS_CLASS_TYPE_FLAGS_P() = %d\n", 818130803Smarcel ADDRESS_CLASS_TYPE_FLAGS_P ()); 819130803Smarcel#endif 820130803Smarcel#ifdef ADDRESS_CLASS_TYPE_FLAGS 821130803Smarcel fprintf_unfiltered (file, 822130803Smarcel "gdbarch_dump: %s # %s\n", 823130803Smarcel "ADDRESS_CLASS_TYPE_FLAGS(byte_size, dwarf2_addr_class)", 824130803Smarcel XSTRING (ADDRESS_CLASS_TYPE_FLAGS (byte_size, dwarf2_addr_class))); 825130803Smarcel fprintf_unfiltered (file, 826130803Smarcel "gdbarch_dump: ADDRESS_CLASS_TYPE_FLAGS = <0x%08lx>\n", 827130803Smarcel (long) current_gdbarch->address_class_type_flags 828130803Smarcel /*ADDRESS_CLASS_TYPE_FLAGS ()*/); 829130803Smarcel#endif 830130803Smarcel fprintf_unfiltered (file, 831130803Smarcel "gdbarch_dump: gdbarch_address_class_type_flags_to_name_p() = %d\n", 832130803Smarcel gdbarch_address_class_type_flags_to_name_p (current_gdbarch)); 833130803Smarcel fprintf_unfiltered (file, 834130803Smarcel "gdbarch_dump: address_class_type_flags_to_name = 0x%08lx\n", 835130803Smarcel (long) current_gdbarch->address_class_type_flags_to_name); 83698944Sobrien#ifdef ADDRESS_TO_POINTER 83798944Sobrien fprintf_unfiltered (file, 83898944Sobrien "gdbarch_dump: %s # %s\n", 83998944Sobrien "ADDRESS_TO_POINTER(type, buf, addr)", 84098944Sobrien XSTRING (ADDRESS_TO_POINTER (type, buf, addr))); 841130803Smarcel fprintf_unfiltered (file, 842130803Smarcel "gdbarch_dump: ADDRESS_TO_POINTER = <0x%08lx>\n", 843130803Smarcel (long) current_gdbarch->address_to_pointer 844130803Smarcel /*ADDRESS_TO_POINTER ()*/); 84546283Sdfr#endif 84698944Sobrien#ifdef ADDR_BITS_REMOVE 84798944Sobrien fprintf_unfiltered (file, 84898944Sobrien "gdbarch_dump: %s # %s\n", 84998944Sobrien "ADDR_BITS_REMOVE(addr)", 85098944Sobrien XSTRING (ADDR_BITS_REMOVE (addr))); 851130803Smarcel fprintf_unfiltered (file, 852130803Smarcel "gdbarch_dump: ADDR_BITS_REMOVE = <0x%08lx>\n", 853130803Smarcel (long) current_gdbarch->addr_bits_remove 854130803Smarcel /*ADDR_BITS_REMOVE ()*/); 85546283Sdfr#endif 856130803Smarcel fprintf_unfiltered (file, 857130803Smarcel "gdbarch_dump: gdbarch_adjust_breakpoint_address_p() = %d\n", 858130803Smarcel gdbarch_adjust_breakpoint_address_p (current_gdbarch)); 859130803Smarcel fprintf_unfiltered (file, 860130803Smarcel "gdbarch_dump: adjust_breakpoint_address = 0x%08lx\n", 861130803Smarcel (long) current_gdbarch->adjust_breakpoint_address); 86298944Sobrien#ifdef BELIEVE_PCC_PROMOTION 86398944Sobrien fprintf_unfiltered (file, 86498944Sobrien "gdbarch_dump: BELIEVE_PCC_PROMOTION # %s\n", 86598944Sobrien XSTRING (BELIEVE_PCC_PROMOTION)); 86698944Sobrien fprintf_unfiltered (file, 86798944Sobrien "gdbarch_dump: BELIEVE_PCC_PROMOTION = %d\n", 86898944Sobrien BELIEVE_PCC_PROMOTION); 86998944Sobrien#endif 87098944Sobrien#ifdef BELIEVE_PCC_PROMOTION_TYPE 87198944Sobrien fprintf_unfiltered (file, 87298944Sobrien "gdbarch_dump: BELIEVE_PCC_PROMOTION_TYPE # %s\n", 87398944Sobrien XSTRING (BELIEVE_PCC_PROMOTION_TYPE)); 87498944Sobrien fprintf_unfiltered (file, 87598944Sobrien "gdbarch_dump: BELIEVE_PCC_PROMOTION_TYPE = %d\n", 87698944Sobrien BELIEVE_PCC_PROMOTION_TYPE); 87798944Sobrien#endif 87898944Sobrien#ifdef BREAKPOINT_FROM_PC 87998944Sobrien fprintf_unfiltered (file, 88098944Sobrien "gdbarch_dump: %s # %s\n", 88198944Sobrien "BREAKPOINT_FROM_PC(pcptr, lenptr)", 88298944Sobrien XSTRING (BREAKPOINT_FROM_PC (pcptr, lenptr))); 883130803Smarcel fprintf_unfiltered (file, 884130803Smarcel "gdbarch_dump: BREAKPOINT_FROM_PC = <0x%08lx>\n", 885130803Smarcel (long) current_gdbarch->breakpoint_from_pc 886130803Smarcel /*BREAKPOINT_FROM_PC ()*/); 88798944Sobrien#endif 888130803Smarcel#ifdef CALL_DUMMY_LOCATION 88998944Sobrien fprintf_unfiltered (file, 890130803Smarcel "gdbarch_dump: CALL_DUMMY_LOCATION # %s\n", 891130803Smarcel XSTRING (CALL_DUMMY_LOCATION)); 892130803Smarcel fprintf_unfiltered (file, 893130803Smarcel "gdbarch_dump: CALL_DUMMY_LOCATION = %d\n", 894130803Smarcel CALL_DUMMY_LOCATION); 895130803Smarcel#endif 896130803Smarcel#ifdef CANNOT_FETCH_REGISTER 897130803Smarcel fprintf_unfiltered (file, 89898944Sobrien "gdbarch_dump: %s # %s\n", 899130803Smarcel "CANNOT_FETCH_REGISTER(regnum)", 900130803Smarcel XSTRING (CANNOT_FETCH_REGISTER (regnum))); 901130803Smarcel fprintf_unfiltered (file, 902130803Smarcel "gdbarch_dump: CANNOT_FETCH_REGISTER = <0x%08lx>\n", 903130803Smarcel (long) current_gdbarch->cannot_fetch_register 904130803Smarcel /*CANNOT_FETCH_REGISTER ()*/); 90598944Sobrien#endif 906130803Smarcel#ifdef CANNOT_STEP_BREAKPOINT 90798944Sobrien fprintf_unfiltered (file, 908130803Smarcel "gdbarch_dump: CANNOT_STEP_BREAKPOINT # %s\n", 909130803Smarcel XSTRING (CANNOT_STEP_BREAKPOINT)); 910130803Smarcel fprintf_unfiltered (file, 911130803Smarcel "gdbarch_dump: CANNOT_STEP_BREAKPOINT = %d\n", 912130803Smarcel CANNOT_STEP_BREAKPOINT); 91398944Sobrien#endif 914130803Smarcel#ifdef CANNOT_STORE_REGISTER 91598944Sobrien fprintf_unfiltered (file, 916130803Smarcel "gdbarch_dump: %s # %s\n", 917130803Smarcel "CANNOT_STORE_REGISTER(regnum)", 918130803Smarcel XSTRING (CANNOT_STORE_REGISTER (regnum))); 91998944Sobrien fprintf_unfiltered (file, 920130803Smarcel "gdbarch_dump: CANNOT_STORE_REGISTER = <0x%08lx>\n", 921130803Smarcel (long) current_gdbarch->cannot_store_register 922130803Smarcel /*CANNOT_STORE_REGISTER ()*/); 92398944Sobrien#endif 924130803Smarcel#ifdef COFF_MAKE_MSYMBOL_SPECIAL 92598944Sobrien fprintf_unfiltered (file, 926130803Smarcel "gdbarch_dump: %s # %s\n", 927130803Smarcel "COFF_MAKE_MSYMBOL_SPECIAL(val, msym)", 928130803Smarcel XSTRING (COFF_MAKE_MSYMBOL_SPECIAL (val, msym))); 929130803Smarcel fprintf_unfiltered (file, 930130803Smarcel "gdbarch_dump: COFF_MAKE_MSYMBOL_SPECIAL = <0x%08lx>\n", 931130803Smarcel (long) current_gdbarch->coff_make_msymbol_special 932130803Smarcel /*COFF_MAKE_MSYMBOL_SPECIAL ()*/); 93398944Sobrien#endif 93498944Sobrien fprintf_unfiltered (file, 935130803Smarcel "gdbarch_dump: construct_inferior_arguments = 0x%08lx\n", 936130803Smarcel (long) current_gdbarch->construct_inferior_arguments); 937130803Smarcel#ifdef CONVERT_REGISTER_P 93898944Sobrien fprintf_unfiltered (file, 939130803Smarcel "gdbarch_dump: %s # %s\n", 940130803Smarcel "CONVERT_REGISTER_P(regnum, type)", 941130803Smarcel XSTRING (CONVERT_REGISTER_P (regnum, type))); 942130803Smarcel fprintf_unfiltered (file, 943130803Smarcel "gdbarch_dump: CONVERT_REGISTER_P = <0x%08lx>\n", 944130803Smarcel (long) current_gdbarch->convert_register_p 945130803Smarcel /*CONVERT_REGISTER_P ()*/); 94698944Sobrien#endif 947130803Smarcel#ifdef DECR_PC_AFTER_BREAK 94898944Sobrien fprintf_unfiltered (file, 949130803Smarcel "gdbarch_dump: DECR_PC_AFTER_BREAK # %s\n", 950130803Smarcel XSTRING (DECR_PC_AFTER_BREAK)); 95198944Sobrien fprintf_unfiltered (file, 952130803Smarcel "gdbarch_dump: DECR_PC_AFTER_BREAK = %ld\n", 953130803Smarcel (long) DECR_PC_AFTER_BREAK); 95498944Sobrien#endif 955130803Smarcel#ifdef DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET 95698944Sobrien fprintf_unfiltered (file, 957130803Smarcel "gdbarch_dump: DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET # %s\n", 958130803Smarcel XSTRING (DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET)); 959130803Smarcel fprintf_unfiltered (file, 960130803Smarcel "gdbarch_dump: DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET = %ld\n", 961130803Smarcel (long) DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET); 96298944Sobrien#endif 963130803Smarcel#ifdef DEPRECATED_CALL_DUMMY_LENGTH 96498944Sobrien fprintf_unfiltered (file, 965130803Smarcel "gdbarch_dump: DEPRECATED_CALL_DUMMY_LENGTH # %s\n", 966130803Smarcel XSTRING (DEPRECATED_CALL_DUMMY_LENGTH)); 96798944Sobrien fprintf_unfiltered (file, 968130803Smarcel "gdbarch_dump: DEPRECATED_CALL_DUMMY_LENGTH = %d\n", 969130803Smarcel DEPRECATED_CALL_DUMMY_LENGTH); 97098944Sobrien#endif 971130803Smarcel#ifdef DEPRECATED_CALL_DUMMY_START_OFFSET 97298944Sobrien fprintf_unfiltered (file, 973130803Smarcel "gdbarch_dump: DEPRECATED_CALL_DUMMY_START_OFFSET # %s\n", 974130803Smarcel XSTRING (DEPRECATED_CALL_DUMMY_START_OFFSET)); 97598944Sobrien fprintf_unfiltered (file, 976130803Smarcel "gdbarch_dump: DEPRECATED_CALL_DUMMY_START_OFFSET = %ld\n", 977130803Smarcel (long) DEPRECATED_CALL_DUMMY_START_OFFSET); 97898944Sobrien#endif 979130803Smarcel#ifdef DEPRECATED_CALL_DUMMY_WORDS 98098944Sobrien fprintf_unfiltered (file, 981130803Smarcel "gdbarch_dump: DEPRECATED_CALL_DUMMY_WORDS # %s\n", 982130803Smarcel XSTRING (DEPRECATED_CALL_DUMMY_WORDS)); 98398944Sobrien fprintf_unfiltered (file, 984130803Smarcel "gdbarch_dump: DEPRECATED_CALL_DUMMY_WORDS = 0x%08lx\n", 985130803Smarcel (long) DEPRECATED_CALL_DUMMY_WORDS); 98698944Sobrien#endif 987130803Smarcel#ifdef DEPRECATED_DO_REGISTERS_INFO_P 98898944Sobrien fprintf_unfiltered (file, 98998944Sobrien "gdbarch_dump: %s # %s\n", 990130803Smarcel "DEPRECATED_DO_REGISTERS_INFO_P()", 991130803Smarcel XSTRING (DEPRECATED_DO_REGISTERS_INFO_P ())); 992130803Smarcel fprintf_unfiltered (file, 993130803Smarcel "gdbarch_dump: DEPRECATED_DO_REGISTERS_INFO_P() = %d\n", 994130803Smarcel DEPRECATED_DO_REGISTERS_INFO_P ()); 99598944Sobrien#endif 996130803Smarcel#ifdef DEPRECATED_DO_REGISTERS_INFO 99798944Sobrien fprintf_unfiltered (file, 99898944Sobrien "gdbarch_dump: %s # %s\n", 999130803Smarcel "DEPRECATED_DO_REGISTERS_INFO(reg_nr, fpregs)", 1000130803Smarcel XSTRING (DEPRECATED_DO_REGISTERS_INFO (reg_nr, fpregs))); 1001130803Smarcel fprintf_unfiltered (file, 1002130803Smarcel "gdbarch_dump: DEPRECATED_DO_REGISTERS_INFO = <0x%08lx>\n", 1003130803Smarcel (long) current_gdbarch->deprecated_do_registers_info 1004130803Smarcel /*DEPRECATED_DO_REGISTERS_INFO ()*/); 100598944Sobrien#endif 1006130803Smarcel#ifdef DEPRECATED_DUMMY_WRITE_SP_P 100798944Sobrien fprintf_unfiltered (file, 100898944Sobrien "gdbarch_dump: %s # %s\n", 1009130803Smarcel "DEPRECATED_DUMMY_WRITE_SP_P()", 1010130803Smarcel XSTRING (DEPRECATED_DUMMY_WRITE_SP_P ())); 1011130803Smarcel fprintf_unfiltered (file, 1012130803Smarcel "gdbarch_dump: DEPRECATED_DUMMY_WRITE_SP_P() = %d\n", 1013130803Smarcel DEPRECATED_DUMMY_WRITE_SP_P ()); 101498944Sobrien#endif 1015130803Smarcel#ifdef DEPRECATED_DUMMY_WRITE_SP 101698944Sobrien fprintf_unfiltered (file, 101798944Sobrien "gdbarch_dump: %s # %s\n", 1018130803Smarcel "DEPRECATED_DUMMY_WRITE_SP(val)", 1019130803Smarcel XSTRING (DEPRECATED_DUMMY_WRITE_SP (val))); 1020130803Smarcel fprintf_unfiltered (file, 1021130803Smarcel "gdbarch_dump: DEPRECATED_DUMMY_WRITE_SP = <0x%08lx>\n", 1022130803Smarcel (long) current_gdbarch->deprecated_dummy_write_sp 1023130803Smarcel /*DEPRECATED_DUMMY_WRITE_SP ()*/); 102498944Sobrien#endif 1025130803Smarcel#ifdef DEPRECATED_EXTRACT_RETURN_VALUE 1026130803Smarcel fprintf_unfiltered (file, 1027130803Smarcel "gdbarch_dump: %s # %s\n", 1028130803Smarcel "DEPRECATED_EXTRACT_RETURN_VALUE(type, regbuf, valbuf)", 1029130803Smarcel XSTRING (DEPRECATED_EXTRACT_RETURN_VALUE (type, regbuf, valbuf))); 1030130803Smarcel fprintf_unfiltered (file, 1031130803Smarcel "gdbarch_dump: DEPRECATED_EXTRACT_RETURN_VALUE = <0x%08lx>\n", 1032130803Smarcel (long) current_gdbarch->deprecated_extract_return_value 1033130803Smarcel /*DEPRECATED_EXTRACT_RETURN_VALUE ()*/); 103498944Sobrien#endif 1035130803Smarcel#ifdef DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P 103698944Sobrien fprintf_unfiltered (file, 103798944Sobrien "gdbarch_dump: %s # %s\n", 1038130803Smarcel "DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P()", 1039130803Smarcel XSTRING (DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P ())); 1040130803Smarcel fprintf_unfiltered (file, 1041130803Smarcel "gdbarch_dump: DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P() = %d\n", 1042130803Smarcel DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P ()); 104398944Sobrien#endif 1044130803Smarcel#ifdef DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS 104598944Sobrien fprintf_unfiltered (file, 1046130803Smarcel "gdbarch_dump: %s # %s\n", 1047130803Smarcel "DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS(regcache)", 1048130803Smarcel XSTRING (DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS (regcache))); 104998944Sobrien fprintf_unfiltered (file, 1050130803Smarcel "gdbarch_dump: DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS = <0x%08lx>\n", 1051130803Smarcel (long) current_gdbarch->deprecated_extract_struct_value_address 1052130803Smarcel /*DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS ()*/); 105398944Sobrien#endif 1054130803Smarcel#ifdef DEPRECATED_FIX_CALL_DUMMY_P 105598944Sobrien fprintf_unfiltered (file, 105698944Sobrien "gdbarch_dump: %s # %s\n", 1057130803Smarcel "DEPRECATED_FIX_CALL_DUMMY_P()", 1058130803Smarcel XSTRING (DEPRECATED_FIX_CALL_DUMMY_P ())); 1059130803Smarcel fprintf_unfiltered (file, 1060130803Smarcel "gdbarch_dump: DEPRECATED_FIX_CALL_DUMMY_P() = %d\n", 1061130803Smarcel DEPRECATED_FIX_CALL_DUMMY_P ()); 106298944Sobrien#endif 1063130803Smarcel#ifdef DEPRECATED_FIX_CALL_DUMMY 1064130803Smarcel fprintf_unfiltered (file, 1065130803Smarcel "gdbarch_dump: %s # %s\n", 1066130803Smarcel "DEPRECATED_FIX_CALL_DUMMY(dummy, pc, fun, nargs, args, type, gcc_p)", 1067130803Smarcel XSTRING (DEPRECATED_FIX_CALL_DUMMY (dummy, pc, fun, nargs, args, type, gcc_p))); 1068130803Smarcel fprintf_unfiltered (file, 1069130803Smarcel "gdbarch_dump: DEPRECATED_FIX_CALL_DUMMY = <0x%08lx>\n", 1070130803Smarcel (long) current_gdbarch->deprecated_fix_call_dummy 1071130803Smarcel /*DEPRECATED_FIX_CALL_DUMMY ()*/); 107298944Sobrien#endif 1073130803Smarcel#ifdef DEPRECATED_FP_REGNUM 107498944Sobrien fprintf_unfiltered (file, 1075130803Smarcel "gdbarch_dump: DEPRECATED_FP_REGNUM # %s\n", 1076130803Smarcel XSTRING (DEPRECATED_FP_REGNUM)); 1077130803Smarcel fprintf_unfiltered (file, 1078130803Smarcel "gdbarch_dump: DEPRECATED_FP_REGNUM = %d\n", 1079130803Smarcel DEPRECATED_FP_REGNUM); 1080130803Smarcel#endif 1081130803Smarcel#ifdef DEPRECATED_FRAMELESS_FUNCTION_INVOCATION_P 1082130803Smarcel fprintf_unfiltered (file, 108398944Sobrien "gdbarch_dump: %s # %s\n", 1084130803Smarcel "DEPRECATED_FRAMELESS_FUNCTION_INVOCATION_P()", 1085130803Smarcel XSTRING (DEPRECATED_FRAMELESS_FUNCTION_INVOCATION_P ())); 1086130803Smarcel fprintf_unfiltered (file, 1087130803Smarcel "gdbarch_dump: DEPRECATED_FRAMELESS_FUNCTION_INVOCATION_P() = %d\n", 1088130803Smarcel DEPRECATED_FRAMELESS_FUNCTION_INVOCATION_P ()); 108998944Sobrien#endif 1090130803Smarcel#ifdef DEPRECATED_FRAMELESS_FUNCTION_INVOCATION 1091130803Smarcel fprintf_unfiltered (file, 1092130803Smarcel "gdbarch_dump: %s # %s\n", 1093130803Smarcel "DEPRECATED_FRAMELESS_FUNCTION_INVOCATION(fi)", 1094130803Smarcel XSTRING (DEPRECATED_FRAMELESS_FUNCTION_INVOCATION (fi))); 1095130803Smarcel fprintf_unfiltered (file, 1096130803Smarcel "gdbarch_dump: DEPRECATED_FRAMELESS_FUNCTION_INVOCATION = <0x%08lx>\n", 1097130803Smarcel (long) current_gdbarch->deprecated_frameless_function_invocation 1098130803Smarcel /*DEPRECATED_FRAMELESS_FUNCTION_INVOCATION ()*/); 109998944Sobrien#endif 1100130803Smarcel#ifdef DEPRECATED_FRAME_ARGS_ADDRESS_P 110198944Sobrien fprintf_unfiltered (file, 110298944Sobrien "gdbarch_dump: %s # %s\n", 1103130803Smarcel "DEPRECATED_FRAME_ARGS_ADDRESS_P()", 1104130803Smarcel XSTRING (DEPRECATED_FRAME_ARGS_ADDRESS_P ())); 1105130803Smarcel fprintf_unfiltered (file, 1106130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_ARGS_ADDRESS_P() = %d\n", 1107130803Smarcel DEPRECATED_FRAME_ARGS_ADDRESS_P ()); 110898944Sobrien#endif 1109130803Smarcel#ifdef DEPRECATED_FRAME_ARGS_ADDRESS 111098944Sobrien fprintf_unfiltered (file, 111198944Sobrien "gdbarch_dump: %s # %s\n", 1112130803Smarcel "DEPRECATED_FRAME_ARGS_ADDRESS(fi)", 1113130803Smarcel XSTRING (DEPRECATED_FRAME_ARGS_ADDRESS (fi))); 1114130803Smarcel fprintf_unfiltered (file, 1115130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_ARGS_ADDRESS = <0x%08lx>\n", 1116130803Smarcel (long) current_gdbarch->deprecated_frame_args_address 1117130803Smarcel /*DEPRECATED_FRAME_ARGS_ADDRESS ()*/); 111898944Sobrien#endif 1119130803Smarcel#ifdef DEPRECATED_FRAME_CHAIN_P 112098944Sobrien fprintf_unfiltered (file, 112198944Sobrien "gdbarch_dump: %s # %s\n", 1122130803Smarcel "DEPRECATED_FRAME_CHAIN_P()", 1123130803Smarcel XSTRING (DEPRECATED_FRAME_CHAIN_P ())); 1124130803Smarcel fprintf_unfiltered (file, 1125130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_CHAIN_P() = %d\n", 1126130803Smarcel DEPRECATED_FRAME_CHAIN_P ()); 112798944Sobrien#endif 1128130803Smarcel#ifdef DEPRECATED_FRAME_CHAIN 112998944Sobrien fprintf_unfiltered (file, 113098944Sobrien "gdbarch_dump: %s # %s\n", 1131130803Smarcel "DEPRECATED_FRAME_CHAIN(frame)", 1132130803Smarcel XSTRING (DEPRECATED_FRAME_CHAIN (frame))); 1133130803Smarcel fprintf_unfiltered (file, 1134130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_CHAIN = <0x%08lx>\n", 1135130803Smarcel (long) current_gdbarch->deprecated_frame_chain 1136130803Smarcel /*DEPRECATED_FRAME_CHAIN ()*/); 113798944Sobrien#endif 1138130803Smarcel#ifdef DEPRECATED_FRAME_CHAIN_VALID_P 1139130803Smarcel fprintf_unfiltered (file, 1140130803Smarcel "gdbarch_dump: %s # %s\n", 1141130803Smarcel "DEPRECATED_FRAME_CHAIN_VALID_P()", 1142130803Smarcel XSTRING (DEPRECATED_FRAME_CHAIN_VALID_P ())); 1143130803Smarcel fprintf_unfiltered (file, 1144130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_CHAIN_VALID_P() = %d\n", 1145130803Smarcel DEPRECATED_FRAME_CHAIN_VALID_P ()); 114698944Sobrien#endif 1147130803Smarcel#ifdef DEPRECATED_FRAME_CHAIN_VALID 114898944Sobrien fprintf_unfiltered (file, 114998944Sobrien "gdbarch_dump: %s # %s\n", 1150130803Smarcel "DEPRECATED_FRAME_CHAIN_VALID(chain, thisframe)", 1151130803Smarcel XSTRING (DEPRECATED_FRAME_CHAIN_VALID (chain, thisframe))); 1152130803Smarcel fprintf_unfiltered (file, 1153130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_CHAIN_VALID = <0x%08lx>\n", 1154130803Smarcel (long) current_gdbarch->deprecated_frame_chain_valid 1155130803Smarcel /*DEPRECATED_FRAME_CHAIN_VALID ()*/); 115698944Sobrien#endif 1157130803Smarcel#ifdef DEPRECATED_FRAME_INIT_SAVED_REGS_P 1158130803Smarcel fprintf_unfiltered (file, 1159130803Smarcel "gdbarch_dump: %s # %s\n", 1160130803Smarcel "DEPRECATED_FRAME_INIT_SAVED_REGS_P()", 1161130803Smarcel XSTRING (DEPRECATED_FRAME_INIT_SAVED_REGS_P ())); 1162130803Smarcel fprintf_unfiltered (file, 1163130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_INIT_SAVED_REGS_P() = %d\n", 1164130803Smarcel DEPRECATED_FRAME_INIT_SAVED_REGS_P ()); 116598944Sobrien#endif 1166130803Smarcel#ifdef DEPRECATED_FRAME_INIT_SAVED_REGS 116798944Sobrien fprintf_unfiltered (file, 116898944Sobrien "gdbarch_dump: %s # %s\n", 1169130803Smarcel "DEPRECATED_FRAME_INIT_SAVED_REGS(frame)", 1170130803Smarcel XSTRING (DEPRECATED_FRAME_INIT_SAVED_REGS (frame))); 1171130803Smarcel fprintf_unfiltered (file, 1172130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_INIT_SAVED_REGS = <0x%08lx>\n", 1173130803Smarcel (long) current_gdbarch->deprecated_frame_init_saved_regs 1174130803Smarcel /*DEPRECATED_FRAME_INIT_SAVED_REGS ()*/); 117598944Sobrien#endif 1176130803Smarcel#ifdef DEPRECATED_FRAME_LOCALS_ADDRESS_P 117798944Sobrien fprintf_unfiltered (file, 1178130803Smarcel "gdbarch_dump: %s # %s\n", 1179130803Smarcel "DEPRECATED_FRAME_LOCALS_ADDRESS_P()", 1180130803Smarcel XSTRING (DEPRECATED_FRAME_LOCALS_ADDRESS_P ())); 118198944Sobrien fprintf_unfiltered (file, 1182130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_LOCALS_ADDRESS_P() = %d\n", 1183130803Smarcel DEPRECATED_FRAME_LOCALS_ADDRESS_P ()); 118498944Sobrien#endif 1185130803Smarcel#ifdef DEPRECATED_FRAME_LOCALS_ADDRESS 118698944Sobrien fprintf_unfiltered (file, 118798944Sobrien "gdbarch_dump: %s # %s\n", 1188130803Smarcel "DEPRECATED_FRAME_LOCALS_ADDRESS(fi)", 1189130803Smarcel XSTRING (DEPRECATED_FRAME_LOCALS_ADDRESS (fi))); 1190130803Smarcel fprintf_unfiltered (file, 1191130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_LOCALS_ADDRESS = <0x%08lx>\n", 1192130803Smarcel (long) current_gdbarch->deprecated_frame_locals_address 1193130803Smarcel /*DEPRECATED_FRAME_LOCALS_ADDRESS ()*/); 119498944Sobrien#endif 1195130803Smarcel#ifdef DEPRECATED_FRAME_SAVED_PC_P 1196130803Smarcel fprintf_unfiltered (file, 1197130803Smarcel "gdbarch_dump: %s # %s\n", 1198130803Smarcel "DEPRECATED_FRAME_SAVED_PC_P()", 1199130803Smarcel XSTRING (DEPRECATED_FRAME_SAVED_PC_P ())); 1200130803Smarcel fprintf_unfiltered (file, 1201130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_SAVED_PC_P() = %d\n", 1202130803Smarcel DEPRECATED_FRAME_SAVED_PC_P ()); 120398944Sobrien#endif 1204130803Smarcel#ifdef DEPRECATED_FRAME_SAVED_PC 120598944Sobrien fprintf_unfiltered (file, 120698944Sobrien "gdbarch_dump: %s # %s\n", 1207130803Smarcel "DEPRECATED_FRAME_SAVED_PC(fi)", 1208130803Smarcel XSTRING (DEPRECATED_FRAME_SAVED_PC (fi))); 1209130803Smarcel fprintf_unfiltered (file, 1210130803Smarcel "gdbarch_dump: DEPRECATED_FRAME_SAVED_PC = <0x%08lx>\n", 1211130803Smarcel (long) current_gdbarch->deprecated_frame_saved_pc 1212130803Smarcel /*DEPRECATED_FRAME_SAVED_PC ()*/); 121398944Sobrien#endif 1214130803Smarcel#ifdef DEPRECATED_GET_SAVED_REGISTER_P 1215130803Smarcel fprintf_unfiltered (file, 1216130803Smarcel "gdbarch_dump: %s # %s\n", 1217130803Smarcel "DEPRECATED_GET_SAVED_REGISTER_P()", 1218130803Smarcel XSTRING (DEPRECATED_GET_SAVED_REGISTER_P ())); 1219130803Smarcel fprintf_unfiltered (file, 1220130803Smarcel "gdbarch_dump: DEPRECATED_GET_SAVED_REGISTER_P() = %d\n", 1221130803Smarcel DEPRECATED_GET_SAVED_REGISTER_P ()); 122298944Sobrien#endif 1223130803Smarcel#ifdef DEPRECATED_GET_SAVED_REGISTER 122498944Sobrien fprintf_unfiltered (file, 1225130803Smarcel "gdbarch_dump: %s # %s\n", 1226130803Smarcel "DEPRECATED_GET_SAVED_REGISTER(raw_buffer, optimized, addrp, frame, regnum, lval)", 1227130803Smarcel XSTRING (DEPRECATED_GET_SAVED_REGISTER (raw_buffer, optimized, addrp, frame, regnum, lval))); 122898944Sobrien fprintf_unfiltered (file, 1229130803Smarcel "gdbarch_dump: DEPRECATED_GET_SAVED_REGISTER = <0x%08lx>\n", 1230130803Smarcel (long) current_gdbarch->deprecated_get_saved_register 1231130803Smarcel /*DEPRECATED_GET_SAVED_REGISTER ()*/); 123298944Sobrien#endif 1233130803Smarcel#ifdef DEPRECATED_INIT_EXTRA_FRAME_INFO_P 123498944Sobrien fprintf_unfiltered (file, 1235130803Smarcel "gdbarch_dump: %s # %s\n", 1236130803Smarcel "DEPRECATED_INIT_EXTRA_FRAME_INFO_P()", 1237130803Smarcel XSTRING (DEPRECATED_INIT_EXTRA_FRAME_INFO_P ())); 123898944Sobrien fprintf_unfiltered (file, 1239130803Smarcel "gdbarch_dump: DEPRECATED_INIT_EXTRA_FRAME_INFO_P() = %d\n", 1240130803Smarcel DEPRECATED_INIT_EXTRA_FRAME_INFO_P ()); 124198944Sobrien#endif 1242130803Smarcel#ifdef DEPRECATED_INIT_EXTRA_FRAME_INFO 124398944Sobrien fprintf_unfiltered (file, 124498944Sobrien "gdbarch_dump: %s # %s\n", 1245130803Smarcel "DEPRECATED_INIT_EXTRA_FRAME_INFO(fromleaf, frame)", 1246130803Smarcel XSTRING (DEPRECATED_INIT_EXTRA_FRAME_INFO (fromleaf, frame))); 1247130803Smarcel fprintf_unfiltered (file, 1248130803Smarcel "gdbarch_dump: DEPRECATED_INIT_EXTRA_FRAME_INFO = <0x%08lx>\n", 1249130803Smarcel (long) current_gdbarch->deprecated_init_extra_frame_info 1250130803Smarcel /*DEPRECATED_INIT_EXTRA_FRAME_INFO ()*/); 125198944Sobrien#endif 1252130803Smarcel#ifdef DEPRECATED_INIT_FRAME_PC_P 125398944Sobrien fprintf_unfiltered (file, 125498944Sobrien "gdbarch_dump: %s # %s\n", 1255130803Smarcel "DEPRECATED_INIT_FRAME_PC_P()", 1256130803Smarcel XSTRING (DEPRECATED_INIT_FRAME_PC_P ())); 1257130803Smarcel fprintf_unfiltered (file, 1258130803Smarcel "gdbarch_dump: DEPRECATED_INIT_FRAME_PC_P() = %d\n", 1259130803Smarcel DEPRECATED_INIT_FRAME_PC_P ()); 126098944Sobrien#endif 1261130803Smarcel#ifdef DEPRECATED_INIT_FRAME_PC 126298944Sobrien fprintf_unfiltered (file, 1263130803Smarcel "gdbarch_dump: %s # %s\n", 1264130803Smarcel "DEPRECATED_INIT_FRAME_PC(fromleaf, prev)", 1265130803Smarcel XSTRING (DEPRECATED_INIT_FRAME_PC (fromleaf, prev))); 126698944Sobrien fprintf_unfiltered (file, 1267130803Smarcel "gdbarch_dump: DEPRECATED_INIT_FRAME_PC = <0x%08lx>\n", 1268130803Smarcel (long) current_gdbarch->deprecated_init_frame_pc 1269130803Smarcel /*DEPRECATED_INIT_FRAME_PC ()*/); 127098944Sobrien#endif 1271130803Smarcel#ifdef DEPRECATED_INIT_FRAME_PC_FIRST_P 127298944Sobrien fprintf_unfiltered (file, 127398944Sobrien "gdbarch_dump: %s # %s\n", 1274130803Smarcel "DEPRECATED_INIT_FRAME_PC_FIRST_P()", 1275130803Smarcel XSTRING (DEPRECATED_INIT_FRAME_PC_FIRST_P ())); 1276130803Smarcel fprintf_unfiltered (file, 1277130803Smarcel "gdbarch_dump: DEPRECATED_INIT_FRAME_PC_FIRST_P() = %d\n", 1278130803Smarcel DEPRECATED_INIT_FRAME_PC_FIRST_P ()); 127998944Sobrien#endif 1280130803Smarcel#ifdef DEPRECATED_INIT_FRAME_PC_FIRST 128198944Sobrien fprintf_unfiltered (file, 128298944Sobrien "gdbarch_dump: %s # %s\n", 1283130803Smarcel "DEPRECATED_INIT_FRAME_PC_FIRST(fromleaf, prev)", 1284130803Smarcel XSTRING (DEPRECATED_INIT_FRAME_PC_FIRST (fromleaf, prev))); 1285130803Smarcel fprintf_unfiltered (file, 1286130803Smarcel "gdbarch_dump: DEPRECATED_INIT_FRAME_PC_FIRST = <0x%08lx>\n", 1287130803Smarcel (long) current_gdbarch->deprecated_init_frame_pc_first 1288130803Smarcel /*DEPRECATED_INIT_FRAME_PC_FIRST ()*/); 128998944Sobrien#endif 1290130803Smarcel#ifdef DEPRECATED_MAX_REGISTER_RAW_SIZE_P 129198944Sobrien fprintf_unfiltered (file, 129298944Sobrien "gdbarch_dump: %s # %s\n", 1293130803Smarcel "DEPRECATED_MAX_REGISTER_RAW_SIZE_P()", 1294130803Smarcel XSTRING (DEPRECATED_MAX_REGISTER_RAW_SIZE_P ())); 1295130803Smarcel fprintf_unfiltered (file, 1296130803Smarcel "gdbarch_dump: DEPRECATED_MAX_REGISTER_RAW_SIZE_P() = %d\n", 1297130803Smarcel DEPRECATED_MAX_REGISTER_RAW_SIZE_P ()); 129898944Sobrien#endif 1299130803Smarcel#ifdef DEPRECATED_MAX_REGISTER_RAW_SIZE 1300130803Smarcel fprintf_unfiltered (file, 1301130803Smarcel "gdbarch_dump: DEPRECATED_MAX_REGISTER_RAW_SIZE # %s\n", 1302130803Smarcel XSTRING (DEPRECATED_MAX_REGISTER_RAW_SIZE)); 1303130803Smarcel fprintf_unfiltered (file, 1304130803Smarcel "gdbarch_dump: DEPRECATED_MAX_REGISTER_RAW_SIZE = %d\n", 1305130803Smarcel DEPRECATED_MAX_REGISTER_RAW_SIZE); 130698944Sobrien#endif 1307130803Smarcel#ifdef DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P 130898944Sobrien fprintf_unfiltered (file, 130998944Sobrien "gdbarch_dump: %s # %s\n", 1310130803Smarcel "DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P()", 1311130803Smarcel XSTRING (DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P ())); 1312130803Smarcel fprintf_unfiltered (file, 1313130803Smarcel "gdbarch_dump: DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P() = %d\n", 1314130803Smarcel DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P ()); 131598944Sobrien#endif 1316130803Smarcel#ifdef DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE 131798944Sobrien fprintf_unfiltered (file, 1318130803Smarcel "gdbarch_dump: DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE # %s\n", 1319130803Smarcel XSTRING (DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE)); 1320130803Smarcel fprintf_unfiltered (file, 1321130803Smarcel "gdbarch_dump: DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE = %d\n", 1322130803Smarcel DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE); 1323130803Smarcel#endif 1324130803Smarcel#ifdef DEPRECATED_PC_IN_CALL_DUMMY_P 1325130803Smarcel fprintf_unfiltered (file, 132698944Sobrien "gdbarch_dump: %s # %s\n", 1327130803Smarcel "DEPRECATED_PC_IN_CALL_DUMMY_P()", 1328130803Smarcel XSTRING (DEPRECATED_PC_IN_CALL_DUMMY_P ())); 1329130803Smarcel fprintf_unfiltered (file, 1330130803Smarcel "gdbarch_dump: DEPRECATED_PC_IN_CALL_DUMMY_P() = %d\n", 1331130803Smarcel DEPRECATED_PC_IN_CALL_DUMMY_P ()); 133298944Sobrien#endif 1333130803Smarcel#ifdef DEPRECATED_PC_IN_CALL_DUMMY 133498944Sobrien fprintf_unfiltered (file, 133598944Sobrien "gdbarch_dump: %s # %s\n", 1336130803Smarcel "DEPRECATED_PC_IN_CALL_DUMMY(pc, sp, frame_address)", 1337130803Smarcel XSTRING (DEPRECATED_PC_IN_CALL_DUMMY (pc, sp, frame_address))); 1338130803Smarcel fprintf_unfiltered (file, 1339130803Smarcel "gdbarch_dump: DEPRECATED_PC_IN_CALL_DUMMY = <0x%08lx>\n", 1340130803Smarcel (long) current_gdbarch->deprecated_pc_in_call_dummy 1341130803Smarcel /*DEPRECATED_PC_IN_CALL_DUMMY ()*/); 134298944Sobrien#endif 1343130803Smarcel#ifdef DEPRECATED_POP_FRAME_P 134498944Sobrien fprintf_unfiltered (file, 1345130803Smarcel "gdbarch_dump: %s # %s\n", 1346130803Smarcel "DEPRECATED_POP_FRAME_P()", 1347130803Smarcel XSTRING (DEPRECATED_POP_FRAME_P ())); 134898944Sobrien fprintf_unfiltered (file, 1349130803Smarcel "gdbarch_dump: DEPRECATED_POP_FRAME_P() = %d\n", 1350130803Smarcel DEPRECATED_POP_FRAME_P ()); 135198944Sobrien#endif 1352130803Smarcel#ifdef DEPRECATED_POP_FRAME 135398944Sobrien fprintf_unfiltered (file, 135498944Sobrien "gdbarch_dump: %s # %s\n", 1355130803Smarcel "DEPRECATED_POP_FRAME(-)", 1356130803Smarcel XSTRING (DEPRECATED_POP_FRAME (-))); 1357130803Smarcel fprintf_unfiltered (file, 1358130803Smarcel "gdbarch_dump: DEPRECATED_POP_FRAME = <0x%08lx>\n", 1359130803Smarcel (long) current_gdbarch->deprecated_pop_frame 1360130803Smarcel /*DEPRECATED_POP_FRAME ()*/); 136198944Sobrien#endif 1362130803Smarcel#ifdef DEPRECATED_PUSH_ARGUMENTS_P 136398944Sobrien fprintf_unfiltered (file, 136498944Sobrien "gdbarch_dump: %s # %s\n", 1365130803Smarcel "DEPRECATED_PUSH_ARGUMENTS_P()", 1366130803Smarcel XSTRING (DEPRECATED_PUSH_ARGUMENTS_P ())); 1367130803Smarcel fprintf_unfiltered (file, 1368130803Smarcel "gdbarch_dump: DEPRECATED_PUSH_ARGUMENTS_P() = %d\n", 1369130803Smarcel DEPRECATED_PUSH_ARGUMENTS_P ()); 137098944Sobrien#endif 1371130803Smarcel#ifdef DEPRECATED_PUSH_ARGUMENTS 1372130803Smarcel fprintf_unfiltered (file, 1373130803Smarcel "gdbarch_dump: %s # %s\n", 1374130803Smarcel "DEPRECATED_PUSH_ARGUMENTS(nargs, args, sp, struct_return, struct_addr)", 1375130803Smarcel XSTRING (DEPRECATED_PUSH_ARGUMENTS (nargs, args, sp, struct_return, struct_addr))); 1376130803Smarcel fprintf_unfiltered (file, 1377130803Smarcel "gdbarch_dump: DEPRECATED_PUSH_ARGUMENTS = <0x%08lx>\n", 1378130803Smarcel (long) current_gdbarch->deprecated_push_arguments 1379130803Smarcel /*DEPRECATED_PUSH_ARGUMENTS ()*/); 138098944Sobrien#endif 1381130803Smarcel#ifdef DEPRECATED_PUSH_DUMMY_FRAME_P 138298944Sobrien fprintf_unfiltered (file, 138398944Sobrien "gdbarch_dump: %s # %s\n", 1384130803Smarcel "DEPRECATED_PUSH_DUMMY_FRAME_P()", 1385130803Smarcel XSTRING (DEPRECATED_PUSH_DUMMY_FRAME_P ())); 1386130803Smarcel fprintf_unfiltered (file, 1387130803Smarcel "gdbarch_dump: DEPRECATED_PUSH_DUMMY_FRAME_P() = %d\n", 1388130803Smarcel DEPRECATED_PUSH_DUMMY_FRAME_P ()); 138998944Sobrien#endif 1390130803Smarcel#ifdef DEPRECATED_PUSH_DUMMY_FRAME 1391130803Smarcel fprintf_unfiltered (file, 1392130803Smarcel "gdbarch_dump: %s # %s\n", 1393130803Smarcel "DEPRECATED_PUSH_DUMMY_FRAME(-)", 1394130803Smarcel XSTRING (DEPRECATED_PUSH_DUMMY_FRAME (-))); 1395130803Smarcel fprintf_unfiltered (file, 1396130803Smarcel "gdbarch_dump: DEPRECATED_PUSH_DUMMY_FRAME = <0x%08lx>\n", 1397130803Smarcel (long) current_gdbarch->deprecated_push_dummy_frame 1398130803Smarcel /*DEPRECATED_PUSH_DUMMY_FRAME ()*/); 139998944Sobrien#endif 1400130803Smarcel#ifdef DEPRECATED_PUSH_RETURN_ADDRESS_P 140198944Sobrien fprintf_unfiltered (file, 140298944Sobrien "gdbarch_dump: %s # %s\n", 1403130803Smarcel "DEPRECATED_PUSH_RETURN_ADDRESS_P()", 1404130803Smarcel XSTRING (DEPRECATED_PUSH_RETURN_ADDRESS_P ())); 1405130803Smarcel fprintf_unfiltered (file, 1406130803Smarcel "gdbarch_dump: DEPRECATED_PUSH_RETURN_ADDRESS_P() = %d\n", 1407130803Smarcel DEPRECATED_PUSH_RETURN_ADDRESS_P ()); 140898944Sobrien#endif 1409130803Smarcel#ifdef DEPRECATED_PUSH_RETURN_ADDRESS 1410130803Smarcel fprintf_unfiltered (file, 1411130803Smarcel "gdbarch_dump: %s # %s\n", 1412130803Smarcel "DEPRECATED_PUSH_RETURN_ADDRESS(pc, sp)", 1413130803Smarcel XSTRING (DEPRECATED_PUSH_RETURN_ADDRESS (pc, sp))); 1414130803Smarcel fprintf_unfiltered (file, 1415130803Smarcel "gdbarch_dump: DEPRECATED_PUSH_RETURN_ADDRESS = <0x%08lx>\n", 1416130803Smarcel (long) current_gdbarch->deprecated_push_return_address 1417130803Smarcel /*DEPRECATED_PUSH_RETURN_ADDRESS ()*/); 141898944Sobrien#endif 1419130803Smarcel#ifdef DEPRECATED_REGISTER_BYTE_P 142098944Sobrien fprintf_unfiltered (file, 142198944Sobrien "gdbarch_dump: %s # %s\n", 1422130803Smarcel "DEPRECATED_REGISTER_BYTE_P()", 1423130803Smarcel XSTRING (DEPRECATED_REGISTER_BYTE_P ())); 1424130803Smarcel fprintf_unfiltered (file, 1425130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_BYTE_P() = %d\n", 1426130803Smarcel DEPRECATED_REGISTER_BYTE_P ()); 142798944Sobrien#endif 1428130803Smarcel#ifdef DEPRECATED_REGISTER_BYTE 1429130803Smarcel fprintf_unfiltered (file, 1430130803Smarcel "gdbarch_dump: %s # %s\n", 1431130803Smarcel "DEPRECATED_REGISTER_BYTE(reg_nr)", 1432130803Smarcel XSTRING (DEPRECATED_REGISTER_BYTE (reg_nr))); 1433130803Smarcel fprintf_unfiltered (file, 1434130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_BYTE = <0x%08lx>\n", 1435130803Smarcel (long) current_gdbarch->deprecated_register_byte 1436130803Smarcel /*DEPRECATED_REGISTER_BYTE ()*/); 143798944Sobrien#endif 1438130803Smarcel#ifdef DEPRECATED_REGISTER_BYTES 1439130803Smarcel fprintf_unfiltered (file, 1440130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_BYTES # %s\n", 1441130803Smarcel XSTRING (DEPRECATED_REGISTER_BYTES)); 1442130803Smarcel fprintf_unfiltered (file, 1443130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_BYTES = %d\n", 1444130803Smarcel DEPRECATED_REGISTER_BYTES); 1445130803Smarcel#endif 1446130803Smarcel#ifdef DEPRECATED_REGISTER_CONVERTIBLE_P 1447130803Smarcel fprintf_unfiltered (file, 1448130803Smarcel "gdbarch_dump: %s # %s\n", 1449130803Smarcel "DEPRECATED_REGISTER_CONVERTIBLE_P()", 1450130803Smarcel XSTRING (DEPRECATED_REGISTER_CONVERTIBLE_P ())); 1451130803Smarcel fprintf_unfiltered (file, 1452130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_CONVERTIBLE_P() = %d\n", 1453130803Smarcel DEPRECATED_REGISTER_CONVERTIBLE_P ()); 1454130803Smarcel#endif 1455130803Smarcel#ifdef DEPRECATED_REGISTER_CONVERTIBLE 1456130803Smarcel fprintf_unfiltered (file, 1457130803Smarcel "gdbarch_dump: %s # %s\n", 1458130803Smarcel "DEPRECATED_REGISTER_CONVERTIBLE(nr)", 1459130803Smarcel XSTRING (DEPRECATED_REGISTER_CONVERTIBLE (nr))); 1460130803Smarcel fprintf_unfiltered (file, 1461130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_CONVERTIBLE = <0x%08lx>\n", 1462130803Smarcel (long) current_gdbarch->deprecated_register_convertible 1463130803Smarcel /*DEPRECATED_REGISTER_CONVERTIBLE ()*/); 1464130803Smarcel#endif 1465130803Smarcel#ifdef DEPRECATED_REGISTER_CONVERT_TO_RAW 1466130803Smarcel fprintf_unfiltered (file, 1467130803Smarcel "gdbarch_dump: %s # %s\n", 1468130803Smarcel "DEPRECATED_REGISTER_CONVERT_TO_RAW(type, regnum, from, to)", 1469130803Smarcel XSTRING (DEPRECATED_REGISTER_CONVERT_TO_RAW (type, regnum, from, to))); 1470130803Smarcel fprintf_unfiltered (file, 1471130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_CONVERT_TO_RAW = <0x%08lx>\n", 1472130803Smarcel (long) current_gdbarch->deprecated_register_convert_to_raw 1473130803Smarcel /*DEPRECATED_REGISTER_CONVERT_TO_RAW ()*/); 1474130803Smarcel#endif 1475130803Smarcel#ifdef DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL 1476130803Smarcel fprintf_unfiltered (file, 1477130803Smarcel "gdbarch_dump: %s # %s\n", 1478130803Smarcel "DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL(regnum, type, from, to)", 1479130803Smarcel XSTRING (DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL (regnum, type, from, to))); 1480130803Smarcel fprintf_unfiltered (file, 1481130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL = <0x%08lx>\n", 1482130803Smarcel (long) current_gdbarch->deprecated_register_convert_to_virtual 1483130803Smarcel /*DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL ()*/); 1484130803Smarcel#endif 1485130803Smarcel#ifdef DEPRECATED_REGISTER_RAW_SIZE_P 1486130803Smarcel fprintf_unfiltered (file, 1487130803Smarcel "gdbarch_dump: %s # %s\n", 1488130803Smarcel "DEPRECATED_REGISTER_RAW_SIZE_P()", 1489130803Smarcel XSTRING (DEPRECATED_REGISTER_RAW_SIZE_P ())); 1490130803Smarcel fprintf_unfiltered (file, 1491130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_RAW_SIZE_P() = %d\n", 1492130803Smarcel DEPRECATED_REGISTER_RAW_SIZE_P ()); 1493130803Smarcel#endif 1494130803Smarcel#ifdef DEPRECATED_REGISTER_RAW_SIZE 1495130803Smarcel fprintf_unfiltered (file, 1496130803Smarcel "gdbarch_dump: %s # %s\n", 1497130803Smarcel "DEPRECATED_REGISTER_RAW_SIZE(reg_nr)", 1498130803Smarcel XSTRING (DEPRECATED_REGISTER_RAW_SIZE (reg_nr))); 1499130803Smarcel fprintf_unfiltered (file, 1500130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_RAW_SIZE = <0x%08lx>\n", 1501130803Smarcel (long) current_gdbarch->deprecated_register_raw_size 1502130803Smarcel /*DEPRECATED_REGISTER_RAW_SIZE ()*/); 1503130803Smarcel#endif 1504130803Smarcel#ifdef DEPRECATED_REGISTER_SIZE 1505130803Smarcel fprintf_unfiltered (file, 1506130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_SIZE # %s\n", 1507130803Smarcel XSTRING (DEPRECATED_REGISTER_SIZE)); 1508130803Smarcel fprintf_unfiltered (file, 1509130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_SIZE = %d\n", 1510130803Smarcel DEPRECATED_REGISTER_SIZE); 1511130803Smarcel#endif 1512130803Smarcel#ifdef DEPRECATED_REGISTER_VIRTUAL_SIZE_P 1513130803Smarcel fprintf_unfiltered (file, 1514130803Smarcel "gdbarch_dump: %s # %s\n", 1515130803Smarcel "DEPRECATED_REGISTER_VIRTUAL_SIZE_P()", 1516130803Smarcel XSTRING (DEPRECATED_REGISTER_VIRTUAL_SIZE_P ())); 1517130803Smarcel fprintf_unfiltered (file, 1518130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_VIRTUAL_SIZE_P() = %d\n", 1519130803Smarcel DEPRECATED_REGISTER_VIRTUAL_SIZE_P ()); 1520130803Smarcel#endif 1521130803Smarcel#ifdef DEPRECATED_REGISTER_VIRTUAL_SIZE 1522130803Smarcel fprintf_unfiltered (file, 1523130803Smarcel "gdbarch_dump: %s # %s\n", 1524130803Smarcel "DEPRECATED_REGISTER_VIRTUAL_SIZE(reg_nr)", 1525130803Smarcel XSTRING (DEPRECATED_REGISTER_VIRTUAL_SIZE (reg_nr))); 1526130803Smarcel fprintf_unfiltered (file, 1527130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_VIRTUAL_SIZE = <0x%08lx>\n", 1528130803Smarcel (long) current_gdbarch->deprecated_register_virtual_size 1529130803Smarcel /*DEPRECATED_REGISTER_VIRTUAL_SIZE ()*/); 1530130803Smarcel#endif 1531130803Smarcel#ifdef DEPRECATED_REGISTER_VIRTUAL_TYPE_P 1532130803Smarcel fprintf_unfiltered (file, 1533130803Smarcel "gdbarch_dump: %s # %s\n", 1534130803Smarcel "DEPRECATED_REGISTER_VIRTUAL_TYPE_P()", 1535130803Smarcel XSTRING (DEPRECATED_REGISTER_VIRTUAL_TYPE_P ())); 1536130803Smarcel fprintf_unfiltered (file, 1537130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_VIRTUAL_TYPE_P() = %d\n", 1538130803Smarcel DEPRECATED_REGISTER_VIRTUAL_TYPE_P ()); 1539130803Smarcel#endif 1540130803Smarcel#ifdef DEPRECATED_REGISTER_VIRTUAL_TYPE 1541130803Smarcel fprintf_unfiltered (file, 1542130803Smarcel "gdbarch_dump: %s # %s\n", 1543130803Smarcel "DEPRECATED_REGISTER_VIRTUAL_TYPE(reg_nr)", 1544130803Smarcel XSTRING (DEPRECATED_REGISTER_VIRTUAL_TYPE (reg_nr))); 1545130803Smarcel fprintf_unfiltered (file, 1546130803Smarcel "gdbarch_dump: DEPRECATED_REGISTER_VIRTUAL_TYPE = <0x%08lx>\n", 1547130803Smarcel (long) current_gdbarch->deprecated_register_virtual_type 1548130803Smarcel /*DEPRECATED_REGISTER_VIRTUAL_TYPE ()*/); 1549130803Smarcel#endif 1550130803Smarcel#ifdef DEPRECATED_REG_STRUCT_HAS_ADDR_P 1551130803Smarcel fprintf_unfiltered (file, 1552130803Smarcel "gdbarch_dump: %s # %s\n", 1553130803Smarcel "DEPRECATED_REG_STRUCT_HAS_ADDR_P()", 1554130803Smarcel XSTRING (DEPRECATED_REG_STRUCT_HAS_ADDR_P ())); 1555130803Smarcel fprintf_unfiltered (file, 1556130803Smarcel "gdbarch_dump: DEPRECATED_REG_STRUCT_HAS_ADDR_P() = %d\n", 1557130803Smarcel DEPRECATED_REG_STRUCT_HAS_ADDR_P ()); 1558130803Smarcel#endif 1559130803Smarcel#ifdef DEPRECATED_REG_STRUCT_HAS_ADDR 1560130803Smarcel fprintf_unfiltered (file, 1561130803Smarcel "gdbarch_dump: %s # %s\n", 1562130803Smarcel "DEPRECATED_REG_STRUCT_HAS_ADDR(gcc_p, type)", 1563130803Smarcel XSTRING (DEPRECATED_REG_STRUCT_HAS_ADDR (gcc_p, type))); 1564130803Smarcel fprintf_unfiltered (file, 1565130803Smarcel "gdbarch_dump: DEPRECATED_REG_STRUCT_HAS_ADDR = <0x%08lx>\n", 1566130803Smarcel (long) current_gdbarch->deprecated_reg_struct_has_addr 1567130803Smarcel /*DEPRECATED_REG_STRUCT_HAS_ADDR ()*/); 1568130803Smarcel#endif 1569130803Smarcel#ifdef DEPRECATED_SAVED_PC_AFTER_CALL_P 1570130803Smarcel fprintf_unfiltered (file, 1571130803Smarcel "gdbarch_dump: %s # %s\n", 1572130803Smarcel "DEPRECATED_SAVED_PC_AFTER_CALL_P()", 1573130803Smarcel XSTRING (DEPRECATED_SAVED_PC_AFTER_CALL_P ())); 1574130803Smarcel fprintf_unfiltered (file, 1575130803Smarcel "gdbarch_dump: DEPRECATED_SAVED_PC_AFTER_CALL_P() = %d\n", 1576130803Smarcel DEPRECATED_SAVED_PC_AFTER_CALL_P ()); 1577130803Smarcel#endif 1578130803Smarcel#ifdef DEPRECATED_SAVED_PC_AFTER_CALL 1579130803Smarcel fprintf_unfiltered (file, 1580130803Smarcel "gdbarch_dump: %s # %s\n", 1581130803Smarcel "DEPRECATED_SAVED_PC_AFTER_CALL(frame)", 1582130803Smarcel XSTRING (DEPRECATED_SAVED_PC_AFTER_CALL (frame))); 1583130803Smarcel fprintf_unfiltered (file, 1584130803Smarcel "gdbarch_dump: DEPRECATED_SAVED_PC_AFTER_CALL = <0x%08lx>\n", 1585130803Smarcel (long) current_gdbarch->deprecated_saved_pc_after_call 1586130803Smarcel /*DEPRECATED_SAVED_PC_AFTER_CALL ()*/); 1587130803Smarcel#endif 1588130803Smarcel#ifdef DEPRECATED_SAVE_DUMMY_FRAME_TOS_P 1589130803Smarcel fprintf_unfiltered (file, 1590130803Smarcel "gdbarch_dump: %s # %s\n", 1591130803Smarcel "DEPRECATED_SAVE_DUMMY_FRAME_TOS_P()", 1592130803Smarcel XSTRING (DEPRECATED_SAVE_DUMMY_FRAME_TOS_P ())); 1593130803Smarcel fprintf_unfiltered (file, 1594130803Smarcel "gdbarch_dump: DEPRECATED_SAVE_DUMMY_FRAME_TOS_P() = %d\n", 1595130803Smarcel DEPRECATED_SAVE_DUMMY_FRAME_TOS_P ()); 1596130803Smarcel#endif 1597130803Smarcel#ifdef DEPRECATED_SAVE_DUMMY_FRAME_TOS 1598130803Smarcel fprintf_unfiltered (file, 1599130803Smarcel "gdbarch_dump: %s # %s\n", 1600130803Smarcel "DEPRECATED_SAVE_DUMMY_FRAME_TOS(sp)", 1601130803Smarcel XSTRING (DEPRECATED_SAVE_DUMMY_FRAME_TOS (sp))); 1602130803Smarcel fprintf_unfiltered (file, 1603130803Smarcel "gdbarch_dump: DEPRECATED_SAVE_DUMMY_FRAME_TOS = <0x%08lx>\n", 1604130803Smarcel (long) current_gdbarch->deprecated_save_dummy_frame_tos 1605130803Smarcel /*DEPRECATED_SAVE_DUMMY_FRAME_TOS ()*/); 1606130803Smarcel#endif 1607130803Smarcel#ifdef DEPRECATED_SIZEOF_CALL_DUMMY_WORDS 1608130803Smarcel fprintf_unfiltered (file, 1609130803Smarcel "gdbarch_dump: DEPRECATED_SIZEOF_CALL_DUMMY_WORDS # %s\n", 1610130803Smarcel XSTRING (DEPRECATED_SIZEOF_CALL_DUMMY_WORDS)); 1611130803Smarcel fprintf_unfiltered (file, 1612130803Smarcel "gdbarch_dump: DEPRECATED_SIZEOF_CALL_DUMMY_WORDS = %d\n", 1613130803Smarcel DEPRECATED_SIZEOF_CALL_DUMMY_WORDS); 1614130803Smarcel#endif 1615130803Smarcel#ifdef DEPRECATED_STACK_ALIGN_P 1616130803Smarcel fprintf_unfiltered (file, 1617130803Smarcel "gdbarch_dump: %s # %s\n", 1618130803Smarcel "DEPRECATED_STACK_ALIGN_P()", 1619130803Smarcel XSTRING (DEPRECATED_STACK_ALIGN_P ())); 1620130803Smarcel fprintf_unfiltered (file, 1621130803Smarcel "gdbarch_dump: DEPRECATED_STACK_ALIGN_P() = %d\n", 1622130803Smarcel DEPRECATED_STACK_ALIGN_P ()); 1623130803Smarcel#endif 1624130803Smarcel#ifdef DEPRECATED_STACK_ALIGN 1625130803Smarcel fprintf_unfiltered (file, 1626130803Smarcel "gdbarch_dump: %s # %s\n", 1627130803Smarcel "DEPRECATED_STACK_ALIGN(sp)", 1628130803Smarcel XSTRING (DEPRECATED_STACK_ALIGN (sp))); 1629130803Smarcel fprintf_unfiltered (file, 1630130803Smarcel "gdbarch_dump: DEPRECATED_STACK_ALIGN = <0x%08lx>\n", 1631130803Smarcel (long) current_gdbarch->deprecated_stack_align 1632130803Smarcel /*DEPRECATED_STACK_ALIGN ()*/); 1633130803Smarcel#endif 1634130803Smarcel#ifdef DEPRECATED_STORE_RETURN_VALUE 1635130803Smarcel fprintf_unfiltered (file, 1636130803Smarcel "gdbarch_dump: %s # %s\n", 1637130803Smarcel "DEPRECATED_STORE_RETURN_VALUE(type, valbuf)", 1638130803Smarcel XSTRING (DEPRECATED_STORE_RETURN_VALUE (type, valbuf))); 1639130803Smarcel fprintf_unfiltered (file, 1640130803Smarcel "gdbarch_dump: DEPRECATED_STORE_RETURN_VALUE = <0x%08lx>\n", 1641130803Smarcel (long) current_gdbarch->deprecated_store_return_value 1642130803Smarcel /*DEPRECATED_STORE_RETURN_VALUE ()*/); 1643130803Smarcel#endif 1644130803Smarcel#ifdef DEPRECATED_STORE_STRUCT_RETURN_P 1645130803Smarcel fprintf_unfiltered (file, 1646130803Smarcel "gdbarch_dump: %s # %s\n", 1647130803Smarcel "DEPRECATED_STORE_STRUCT_RETURN_P()", 1648130803Smarcel XSTRING (DEPRECATED_STORE_STRUCT_RETURN_P ())); 1649130803Smarcel fprintf_unfiltered (file, 1650130803Smarcel "gdbarch_dump: DEPRECATED_STORE_STRUCT_RETURN_P() = %d\n", 1651130803Smarcel DEPRECATED_STORE_STRUCT_RETURN_P ()); 1652130803Smarcel#endif 1653130803Smarcel#ifdef DEPRECATED_STORE_STRUCT_RETURN 1654130803Smarcel fprintf_unfiltered (file, 1655130803Smarcel "gdbarch_dump: %s # %s\n", 1656130803Smarcel "DEPRECATED_STORE_STRUCT_RETURN(addr, sp)", 1657130803Smarcel XSTRING (DEPRECATED_STORE_STRUCT_RETURN (addr, sp))); 1658130803Smarcel fprintf_unfiltered (file, 1659130803Smarcel "gdbarch_dump: DEPRECATED_STORE_STRUCT_RETURN = <0x%08lx>\n", 1660130803Smarcel (long) current_gdbarch->deprecated_store_struct_return 1661130803Smarcel /*DEPRECATED_STORE_STRUCT_RETURN ()*/); 1662130803Smarcel#endif 1663130803Smarcel#ifdef DEPRECATED_TARGET_READ_FP_P 1664130803Smarcel fprintf_unfiltered (file, 1665130803Smarcel "gdbarch_dump: %s # %s\n", 1666130803Smarcel "DEPRECATED_TARGET_READ_FP_P()", 1667130803Smarcel XSTRING (DEPRECATED_TARGET_READ_FP_P ())); 1668130803Smarcel fprintf_unfiltered (file, 1669130803Smarcel "gdbarch_dump: DEPRECATED_TARGET_READ_FP_P() = %d\n", 1670130803Smarcel DEPRECATED_TARGET_READ_FP_P ()); 1671130803Smarcel#endif 1672130803Smarcel#ifdef DEPRECATED_TARGET_READ_FP 1673130803Smarcel fprintf_unfiltered (file, 1674130803Smarcel "gdbarch_dump: %s # %s\n", 1675130803Smarcel "DEPRECATED_TARGET_READ_FP()", 1676130803Smarcel XSTRING (DEPRECATED_TARGET_READ_FP ())); 1677130803Smarcel fprintf_unfiltered (file, 1678130803Smarcel "gdbarch_dump: DEPRECATED_TARGET_READ_FP = <0x%08lx>\n", 1679130803Smarcel (long) current_gdbarch->deprecated_target_read_fp 1680130803Smarcel /*DEPRECATED_TARGET_READ_FP ()*/); 1681130803Smarcel#endif 1682130803Smarcel#ifdef DEPRECATED_USE_GENERIC_DUMMY_FRAMES 1683130803Smarcel fprintf_unfiltered (file, 1684130803Smarcel "gdbarch_dump: DEPRECATED_USE_GENERIC_DUMMY_FRAMES # %s\n", 1685130803Smarcel XSTRING (DEPRECATED_USE_GENERIC_DUMMY_FRAMES)); 1686130803Smarcel fprintf_unfiltered (file, 1687130803Smarcel "gdbarch_dump: DEPRECATED_USE_GENERIC_DUMMY_FRAMES = %d\n", 1688130803Smarcel DEPRECATED_USE_GENERIC_DUMMY_FRAMES); 1689130803Smarcel#endif 1690130803Smarcel#ifdef DWARF2_REG_TO_REGNUM 1691130803Smarcel fprintf_unfiltered (file, 1692130803Smarcel "gdbarch_dump: %s # %s\n", 1693130803Smarcel "DWARF2_REG_TO_REGNUM(dwarf2_regnr)", 1694130803Smarcel XSTRING (DWARF2_REG_TO_REGNUM (dwarf2_regnr))); 1695130803Smarcel fprintf_unfiltered (file, 1696130803Smarcel "gdbarch_dump: DWARF2_REG_TO_REGNUM = <0x%08lx>\n", 1697130803Smarcel (long) current_gdbarch->dwarf2_reg_to_regnum 1698130803Smarcel /*DWARF2_REG_TO_REGNUM ()*/); 1699130803Smarcel#endif 1700130803Smarcel#ifdef DWARF_REG_TO_REGNUM 1701130803Smarcel fprintf_unfiltered (file, 1702130803Smarcel "gdbarch_dump: %s # %s\n", 1703130803Smarcel "DWARF_REG_TO_REGNUM(dwarf_regnr)", 1704130803Smarcel XSTRING (DWARF_REG_TO_REGNUM (dwarf_regnr))); 1705130803Smarcel fprintf_unfiltered (file, 1706130803Smarcel "gdbarch_dump: DWARF_REG_TO_REGNUM = <0x%08lx>\n", 1707130803Smarcel (long) current_gdbarch->dwarf_reg_to_regnum 1708130803Smarcel /*DWARF_REG_TO_REGNUM ()*/); 1709130803Smarcel#endif 1710130803Smarcel#ifdef ECOFF_REG_TO_REGNUM 1711130803Smarcel fprintf_unfiltered (file, 1712130803Smarcel "gdbarch_dump: %s # %s\n", 1713130803Smarcel "ECOFF_REG_TO_REGNUM(ecoff_regnr)", 1714130803Smarcel XSTRING (ECOFF_REG_TO_REGNUM (ecoff_regnr))); 1715130803Smarcel fprintf_unfiltered (file, 1716130803Smarcel "gdbarch_dump: ECOFF_REG_TO_REGNUM = <0x%08lx>\n", 1717130803Smarcel (long) current_gdbarch->ecoff_reg_to_regnum 1718130803Smarcel /*ECOFF_REG_TO_REGNUM ()*/); 1719130803Smarcel#endif 1720130803Smarcel#ifdef ELF_MAKE_MSYMBOL_SPECIAL 1721130803Smarcel fprintf_unfiltered (file, 1722130803Smarcel "gdbarch_dump: %s # %s\n", 1723130803Smarcel "ELF_MAKE_MSYMBOL_SPECIAL(sym, msym)", 1724130803Smarcel XSTRING (ELF_MAKE_MSYMBOL_SPECIAL (sym, msym))); 1725130803Smarcel fprintf_unfiltered (file, 1726130803Smarcel "gdbarch_dump: ELF_MAKE_MSYMBOL_SPECIAL = <0x%08lx>\n", 1727130803Smarcel (long) current_gdbarch->elf_make_msymbol_special 1728130803Smarcel /*ELF_MAKE_MSYMBOL_SPECIAL ()*/); 1729130803Smarcel#endif 1730130803Smarcel#ifdef EXTRACT_RETURN_VALUE 1731130803Smarcel fprintf_unfiltered (file, 1732130803Smarcel "gdbarch_dump: %s # %s\n", 1733130803Smarcel "EXTRACT_RETURN_VALUE(type, regcache, valbuf)", 1734130803Smarcel XSTRING (EXTRACT_RETURN_VALUE (type, regcache, valbuf))); 1735130803Smarcel fprintf_unfiltered (file, 1736130803Smarcel "gdbarch_dump: EXTRACT_RETURN_VALUE = <0x%08lx>\n", 1737130803Smarcel (long) current_gdbarch->extract_return_value 1738130803Smarcel /*EXTRACT_RETURN_VALUE ()*/); 1739130803Smarcel#endif 1740130803Smarcel#ifdef FETCH_POINTER_ARGUMENT_P 1741130803Smarcel fprintf_unfiltered (file, 1742130803Smarcel "gdbarch_dump: %s # %s\n", 1743130803Smarcel "FETCH_POINTER_ARGUMENT_P()", 1744130803Smarcel XSTRING (FETCH_POINTER_ARGUMENT_P ())); 1745130803Smarcel fprintf_unfiltered (file, 1746130803Smarcel "gdbarch_dump: FETCH_POINTER_ARGUMENT_P() = %d\n", 1747130803Smarcel FETCH_POINTER_ARGUMENT_P ()); 1748130803Smarcel#endif 1749130803Smarcel#ifdef FETCH_POINTER_ARGUMENT 1750130803Smarcel fprintf_unfiltered (file, 1751130803Smarcel "gdbarch_dump: %s # %s\n", 1752130803Smarcel "FETCH_POINTER_ARGUMENT(frame, argi, type)", 1753130803Smarcel XSTRING (FETCH_POINTER_ARGUMENT (frame, argi, type))); 1754130803Smarcel fprintf_unfiltered (file, 1755130803Smarcel "gdbarch_dump: FETCH_POINTER_ARGUMENT = <0x%08lx>\n", 1756130803Smarcel (long) current_gdbarch->fetch_pointer_argument 1757130803Smarcel /*FETCH_POINTER_ARGUMENT ()*/); 1758130803Smarcel#endif 1759130803Smarcel#ifdef FP0_REGNUM 1760130803Smarcel fprintf_unfiltered (file, 1761130803Smarcel "gdbarch_dump: FP0_REGNUM # %s\n", 1762130803Smarcel XSTRING (FP0_REGNUM)); 1763130803Smarcel fprintf_unfiltered (file, 1764130803Smarcel "gdbarch_dump: FP0_REGNUM = %d\n", 1765130803Smarcel FP0_REGNUM); 1766130803Smarcel#endif 1767130803Smarcel#ifdef FRAME_ARGS_SKIP 1768130803Smarcel fprintf_unfiltered (file, 1769130803Smarcel "gdbarch_dump: FRAME_ARGS_SKIP # %s\n", 1770130803Smarcel XSTRING (FRAME_ARGS_SKIP)); 1771130803Smarcel fprintf_unfiltered (file, 1772130803Smarcel "gdbarch_dump: FRAME_ARGS_SKIP = %ld\n", 1773130803Smarcel (long) FRAME_ARGS_SKIP); 1774130803Smarcel#endif 1775130803Smarcel#ifdef FRAME_NUM_ARGS_P 1776130803Smarcel fprintf_unfiltered (file, 1777130803Smarcel "gdbarch_dump: %s # %s\n", 1778130803Smarcel "FRAME_NUM_ARGS_P()", 1779130803Smarcel XSTRING (FRAME_NUM_ARGS_P ())); 1780130803Smarcel fprintf_unfiltered (file, 1781130803Smarcel "gdbarch_dump: FRAME_NUM_ARGS_P() = %d\n", 1782130803Smarcel FRAME_NUM_ARGS_P ()); 1783130803Smarcel#endif 1784130803Smarcel#ifdef FRAME_NUM_ARGS 1785130803Smarcel fprintf_unfiltered (file, 1786130803Smarcel "gdbarch_dump: %s # %s\n", 1787130803Smarcel "FRAME_NUM_ARGS(frame)", 1788130803Smarcel XSTRING (FRAME_NUM_ARGS (frame))); 1789130803Smarcel fprintf_unfiltered (file, 1790130803Smarcel "gdbarch_dump: FRAME_NUM_ARGS = <0x%08lx>\n", 1791130803Smarcel (long) current_gdbarch->frame_num_args 1792130803Smarcel /*FRAME_NUM_ARGS ()*/); 1793130803Smarcel#endif 1794130803Smarcel#ifdef FRAME_RED_ZONE_SIZE 1795130803Smarcel fprintf_unfiltered (file, 1796130803Smarcel "gdbarch_dump: FRAME_RED_ZONE_SIZE # %s\n", 1797130803Smarcel XSTRING (FRAME_RED_ZONE_SIZE)); 1798130803Smarcel fprintf_unfiltered (file, 1799130803Smarcel "gdbarch_dump: FRAME_RED_ZONE_SIZE = %d\n", 1800130803Smarcel FRAME_RED_ZONE_SIZE); 1801130803Smarcel#endif 1802130803Smarcel#ifdef FUNCTION_START_OFFSET 1803130803Smarcel fprintf_unfiltered (file, 1804130803Smarcel "gdbarch_dump: FUNCTION_START_OFFSET # %s\n", 1805130803Smarcel XSTRING (FUNCTION_START_OFFSET)); 1806130803Smarcel fprintf_unfiltered (file, 1807130803Smarcel "gdbarch_dump: FUNCTION_START_OFFSET = %ld\n", 1808130803Smarcel (long) FUNCTION_START_OFFSET); 1809130803Smarcel#endif 1810130803Smarcel#ifdef GET_LONGJMP_TARGET_P 1811130803Smarcel fprintf_unfiltered (file, 1812130803Smarcel "gdbarch_dump: %s # %s\n", 1813130803Smarcel "GET_LONGJMP_TARGET_P()", 1814130803Smarcel XSTRING (GET_LONGJMP_TARGET_P ())); 1815130803Smarcel fprintf_unfiltered (file, 1816130803Smarcel "gdbarch_dump: GET_LONGJMP_TARGET_P() = %d\n", 1817130803Smarcel GET_LONGJMP_TARGET_P ()); 1818130803Smarcel#endif 1819130803Smarcel#ifdef GET_LONGJMP_TARGET 1820130803Smarcel fprintf_unfiltered (file, 1821130803Smarcel "gdbarch_dump: %s # %s\n", 1822130803Smarcel "GET_LONGJMP_TARGET(pc)", 1823130803Smarcel XSTRING (GET_LONGJMP_TARGET (pc))); 1824130803Smarcel fprintf_unfiltered (file, 1825130803Smarcel "gdbarch_dump: GET_LONGJMP_TARGET = <0x%08lx>\n", 1826130803Smarcel (long) current_gdbarch->get_longjmp_target 1827130803Smarcel /*GET_LONGJMP_TARGET ()*/); 1828130803Smarcel#endif 1829130803Smarcel#ifdef HAVE_NONSTEPPABLE_WATCHPOINT 1830130803Smarcel fprintf_unfiltered (file, 1831130803Smarcel "gdbarch_dump: HAVE_NONSTEPPABLE_WATCHPOINT # %s\n", 1832130803Smarcel XSTRING (HAVE_NONSTEPPABLE_WATCHPOINT)); 1833130803Smarcel fprintf_unfiltered (file, 1834130803Smarcel "gdbarch_dump: HAVE_NONSTEPPABLE_WATCHPOINT = %d\n", 1835130803Smarcel HAVE_NONSTEPPABLE_WATCHPOINT); 1836130803Smarcel#endif 183798944Sobrien#ifdef INNER_THAN 183898944Sobrien fprintf_unfiltered (file, 183998944Sobrien "gdbarch_dump: %s # %s\n", 184098944Sobrien "INNER_THAN(lhs, rhs)", 184198944Sobrien XSTRING (INNER_THAN (lhs, rhs))); 1842130803Smarcel fprintf_unfiltered (file, 1843130803Smarcel "gdbarch_dump: INNER_THAN = <0x%08lx>\n", 1844130803Smarcel (long) current_gdbarch->inner_than 1845130803Smarcel /*INNER_THAN ()*/); 184698944Sobrien#endif 1847130803Smarcel#ifdef INTEGER_TO_ADDRESS_P 1848130803Smarcel fprintf_unfiltered (file, 1849130803Smarcel "gdbarch_dump: %s # %s\n", 1850130803Smarcel "INTEGER_TO_ADDRESS_P()", 1851130803Smarcel XSTRING (INTEGER_TO_ADDRESS_P ())); 1852130803Smarcel fprintf_unfiltered (file, 1853130803Smarcel "gdbarch_dump: INTEGER_TO_ADDRESS_P() = %d\n", 1854130803Smarcel INTEGER_TO_ADDRESS_P ()); 1855130803Smarcel#endif 185698944Sobrien#ifdef INTEGER_TO_ADDRESS 185798944Sobrien fprintf_unfiltered (file, 185898944Sobrien "gdbarch_dump: %s # %s\n", 185998944Sobrien "INTEGER_TO_ADDRESS(type, buf)", 186098944Sobrien XSTRING (INTEGER_TO_ADDRESS (type, buf))); 1861130803Smarcel fprintf_unfiltered (file, 1862130803Smarcel "gdbarch_dump: INTEGER_TO_ADDRESS = <0x%08lx>\n", 1863130803Smarcel (long) current_gdbarch->integer_to_address 1864130803Smarcel /*INTEGER_TO_ADDRESS ()*/); 186598944Sobrien#endif 186698944Sobrien#ifdef IN_SOLIB_CALL_TRAMPOLINE 186798944Sobrien fprintf_unfiltered (file, 186898944Sobrien "gdbarch_dump: %s # %s\n", 186998944Sobrien "IN_SOLIB_CALL_TRAMPOLINE(pc, name)", 187098944Sobrien XSTRING (IN_SOLIB_CALL_TRAMPOLINE (pc, name))); 187198944Sobrien fprintf_unfiltered (file, 1872130803Smarcel "gdbarch_dump: IN_SOLIB_CALL_TRAMPOLINE = <0x%08lx>\n", 1873130803Smarcel (long) current_gdbarch->in_solib_call_trampoline 1874130803Smarcel /*IN_SOLIB_CALL_TRAMPOLINE ()*/); 187598944Sobrien#endif 1876130803Smarcel#ifdef IN_SOLIB_RETURN_TRAMPOLINE 187798944Sobrien fprintf_unfiltered (file, 1878130803Smarcel "gdbarch_dump: %s # %s\n", 1879130803Smarcel "IN_SOLIB_RETURN_TRAMPOLINE(pc, name)", 1880130803Smarcel XSTRING (IN_SOLIB_RETURN_TRAMPOLINE (pc, name))); 188198944Sobrien fprintf_unfiltered (file, 1882130803Smarcel "gdbarch_dump: IN_SOLIB_RETURN_TRAMPOLINE = <0x%08lx>\n", 1883130803Smarcel (long) current_gdbarch->in_solib_return_trampoline 1884130803Smarcel /*IN_SOLIB_RETURN_TRAMPOLINE ()*/); 188598944Sobrien#endif 188698944Sobrien#ifdef MEMORY_INSERT_BREAKPOINT 188798944Sobrien fprintf_unfiltered (file, 188898944Sobrien "gdbarch_dump: %s # %s\n", 188998944Sobrien "MEMORY_INSERT_BREAKPOINT(addr, contents_cache)", 189098944Sobrien XSTRING (MEMORY_INSERT_BREAKPOINT (addr, contents_cache))); 1891130803Smarcel fprintf_unfiltered (file, 1892130803Smarcel "gdbarch_dump: MEMORY_INSERT_BREAKPOINT = <0x%08lx>\n", 1893130803Smarcel (long) current_gdbarch->memory_insert_breakpoint 1894130803Smarcel /*MEMORY_INSERT_BREAKPOINT ()*/); 189598944Sobrien#endif 189698944Sobrien#ifdef MEMORY_REMOVE_BREAKPOINT 189798944Sobrien fprintf_unfiltered (file, 189898944Sobrien "gdbarch_dump: %s # %s\n", 189998944Sobrien "MEMORY_REMOVE_BREAKPOINT(addr, contents_cache)", 190098944Sobrien XSTRING (MEMORY_REMOVE_BREAKPOINT (addr, contents_cache))); 190198944Sobrien fprintf_unfiltered (file, 1902130803Smarcel "gdbarch_dump: MEMORY_REMOVE_BREAKPOINT = <0x%08lx>\n", 1903130803Smarcel (long) current_gdbarch->memory_remove_breakpoint 1904130803Smarcel /*MEMORY_REMOVE_BREAKPOINT ()*/); 190598944Sobrien#endif 1906130803Smarcel#ifdef NAME_OF_MALLOC 190798944Sobrien fprintf_unfiltered (file, 1908130803Smarcel "gdbarch_dump: NAME_OF_MALLOC # %s\n", 1909130803Smarcel XSTRING (NAME_OF_MALLOC)); 191098944Sobrien fprintf_unfiltered (file, 1911130803Smarcel "gdbarch_dump: NAME_OF_MALLOC = %s\n", 1912130803Smarcel NAME_OF_MALLOC); 191398944Sobrien#endif 191498944Sobrien#ifdef NUM_PSEUDO_REGS 191598944Sobrien fprintf_unfiltered (file, 191698944Sobrien "gdbarch_dump: NUM_PSEUDO_REGS # %s\n", 191798944Sobrien XSTRING (NUM_PSEUDO_REGS)); 191898944Sobrien fprintf_unfiltered (file, 191998944Sobrien "gdbarch_dump: NUM_PSEUDO_REGS = %d\n", 192098944Sobrien NUM_PSEUDO_REGS); 192198944Sobrien#endif 192298944Sobrien#ifdef NUM_REGS 192398944Sobrien fprintf_unfiltered (file, 192498944Sobrien "gdbarch_dump: NUM_REGS # %s\n", 192598944Sobrien XSTRING (NUM_REGS)); 192698944Sobrien fprintf_unfiltered (file, 192798944Sobrien "gdbarch_dump: NUM_REGS = %d\n", 192898944Sobrien NUM_REGS); 192998944Sobrien#endif 193098944Sobrien#ifdef PARM_BOUNDARY 193198944Sobrien fprintf_unfiltered (file, 193298944Sobrien "gdbarch_dump: PARM_BOUNDARY # %s\n", 193398944Sobrien XSTRING (PARM_BOUNDARY)); 193498944Sobrien fprintf_unfiltered (file, 193598944Sobrien "gdbarch_dump: PARM_BOUNDARY = %d\n", 193698944Sobrien PARM_BOUNDARY); 193798944Sobrien#endif 1938130803Smarcel#ifdef PC_IN_SIGTRAMP 193998944Sobrien fprintf_unfiltered (file, 194098944Sobrien "gdbarch_dump: %s # %s\n", 1941130803Smarcel "PC_IN_SIGTRAMP(pc, name)", 1942130803Smarcel XSTRING (PC_IN_SIGTRAMP (pc, name))); 1943130803Smarcel fprintf_unfiltered (file, 1944130803Smarcel "gdbarch_dump: PC_IN_SIGTRAMP = <0x%08lx>\n", 1945130803Smarcel (long) current_gdbarch->pc_in_sigtramp 1946130803Smarcel /*PC_IN_SIGTRAMP ()*/); 194798944Sobrien#endif 194898944Sobrien#ifdef PC_REGNUM 194998944Sobrien fprintf_unfiltered (file, 195098944Sobrien "gdbarch_dump: PC_REGNUM # %s\n", 195198944Sobrien XSTRING (PC_REGNUM)); 195298944Sobrien fprintf_unfiltered (file, 195398944Sobrien "gdbarch_dump: PC_REGNUM = %d\n", 195498944Sobrien PC_REGNUM); 195598944Sobrien#endif 195698944Sobrien#ifdef POINTER_TO_ADDRESS 195798944Sobrien fprintf_unfiltered (file, 195898944Sobrien "gdbarch_dump: %s # %s\n", 195998944Sobrien "POINTER_TO_ADDRESS(type, buf)", 196098944Sobrien XSTRING (POINTER_TO_ADDRESS (type, buf))); 196198944Sobrien fprintf_unfiltered (file, 1962130803Smarcel "gdbarch_dump: POINTER_TO_ADDRESS = <0x%08lx>\n", 1963130803Smarcel (long) current_gdbarch->pointer_to_address 1964130803Smarcel /*POINTER_TO_ADDRESS ()*/); 196598944Sobrien#endif 196698944Sobrien fprintf_unfiltered (file, 1967130803Smarcel "gdbarch_dump: gdbarch_print_float_info_p() = %d\n", 1968130803Smarcel gdbarch_print_float_info_p (current_gdbarch)); 196998944Sobrien fprintf_unfiltered (file, 1970130803Smarcel "gdbarch_dump: print_float_info = 0x%08lx\n", 1971130803Smarcel (long) current_gdbarch->print_float_info); 197298944Sobrien fprintf_unfiltered (file, 1973130803Smarcel "gdbarch_dump: print_registers_info = 0x%08lx\n", 1974130803Smarcel (long) current_gdbarch->print_registers_info); 197598944Sobrien fprintf_unfiltered (file, 1976130803Smarcel "gdbarch_dump: gdbarch_print_vector_info_p() = %d\n", 1977130803Smarcel gdbarch_print_vector_info_p (current_gdbarch)); 197898944Sobrien fprintf_unfiltered (file, 1979130803Smarcel "gdbarch_dump: print_vector_info = 0x%08lx\n", 1980130803Smarcel (long) current_gdbarch->print_vector_info); 1981130803Smarcel#ifdef PS_REGNUM 198298944Sobrien fprintf_unfiltered (file, 1983130803Smarcel "gdbarch_dump: PS_REGNUM # %s\n", 1984130803Smarcel XSTRING (PS_REGNUM)); 1985130803Smarcel fprintf_unfiltered (file, 1986130803Smarcel "gdbarch_dump: PS_REGNUM = %d\n", 1987130803Smarcel PS_REGNUM); 198898944Sobrien#endif 198998944Sobrien fprintf_unfiltered (file, 1990130803Smarcel "gdbarch_dump: gdbarch_push_dummy_call_p() = %d\n", 1991130803Smarcel gdbarch_push_dummy_call_p (current_gdbarch)); 1992130803Smarcel fprintf_unfiltered (file, 1993130803Smarcel "gdbarch_dump: push_dummy_call = 0x%08lx\n", 1994130803Smarcel (long) current_gdbarch->push_dummy_call); 1995130803Smarcel fprintf_unfiltered (file, 1996130803Smarcel "gdbarch_dump: gdbarch_push_dummy_code_p() = %d\n", 1997130803Smarcel gdbarch_push_dummy_code_p (current_gdbarch)); 1998130803Smarcel fprintf_unfiltered (file, 1999130803Smarcel "gdbarch_dump: push_dummy_code = 0x%08lx\n", 2000130803Smarcel (long) current_gdbarch->push_dummy_code); 2001130803Smarcel#ifdef REGISTER_BYTES_OK_P 2002130803Smarcel fprintf_unfiltered (file, 200398944Sobrien "gdbarch_dump: %s # %s\n", 2004130803Smarcel "REGISTER_BYTES_OK_P()", 2005130803Smarcel XSTRING (REGISTER_BYTES_OK_P ())); 200698944Sobrien fprintf_unfiltered (file, 2007130803Smarcel "gdbarch_dump: REGISTER_BYTES_OK_P() = %d\n", 2008130803Smarcel REGISTER_BYTES_OK_P ()); 200998944Sobrien#endif 201098944Sobrien#ifdef REGISTER_BYTES_OK 201198944Sobrien fprintf_unfiltered (file, 201298944Sobrien "gdbarch_dump: %s # %s\n", 201398944Sobrien "REGISTER_BYTES_OK(nr_bytes)", 201498944Sobrien XSTRING (REGISTER_BYTES_OK (nr_bytes))); 201598944Sobrien fprintf_unfiltered (file, 2016130803Smarcel "gdbarch_dump: REGISTER_BYTES_OK = <0x%08lx>\n", 2017130803Smarcel (long) current_gdbarch->register_bytes_ok 2018130803Smarcel /*REGISTER_BYTES_OK ()*/); 201998944Sobrien#endif 202098944Sobrien#ifdef REGISTER_NAME 202198944Sobrien fprintf_unfiltered (file, 202298944Sobrien "gdbarch_dump: %s # %s\n", 202398944Sobrien "REGISTER_NAME(regnr)", 202498944Sobrien XSTRING (REGISTER_NAME (regnr))); 202598944Sobrien fprintf_unfiltered (file, 2026130803Smarcel "gdbarch_dump: REGISTER_NAME = <0x%08lx>\n", 2027130803Smarcel (long) current_gdbarch->register_name 2028130803Smarcel /*REGISTER_NAME ()*/); 202998944Sobrien#endif 203098944Sobrien#ifdef REGISTER_SIM_REGNO 203198944Sobrien fprintf_unfiltered (file, 203298944Sobrien "gdbarch_dump: %s # %s\n", 203398944Sobrien "REGISTER_SIM_REGNO(reg_nr)", 203498944Sobrien XSTRING (REGISTER_SIM_REGNO (reg_nr))); 203598944Sobrien fprintf_unfiltered (file, 2036130803Smarcel "gdbarch_dump: REGISTER_SIM_REGNO = <0x%08lx>\n", 2037130803Smarcel (long) current_gdbarch->register_sim_regno 2038130803Smarcel /*REGISTER_SIM_REGNO ()*/); 203998944Sobrien#endif 2040130803Smarcel#ifdef REGISTER_TO_VALUE 204198944Sobrien fprintf_unfiltered (file, 204298944Sobrien "gdbarch_dump: %s # %s\n", 2043130803Smarcel "REGISTER_TO_VALUE(frame, regnum, type, buf)", 2044130803Smarcel XSTRING (REGISTER_TO_VALUE (frame, regnum, type, buf))); 204598944Sobrien fprintf_unfiltered (file, 2046130803Smarcel "gdbarch_dump: REGISTER_TO_VALUE = <0x%08lx>\n", 2047130803Smarcel (long) current_gdbarch->register_to_value 2048130803Smarcel /*REGISTER_TO_VALUE ()*/); 204998944Sobrien#endif 205098944Sobrien fprintf_unfiltered (file, 2051130803Smarcel "gdbarch_dump: gdbarch_register_type_p() = %d\n", 2052130803Smarcel gdbarch_register_type_p (current_gdbarch)); 205398944Sobrien fprintf_unfiltered (file, 2054130803Smarcel "gdbarch_dump: register_type = 0x%08lx\n", 2055130803Smarcel (long) current_gdbarch->register_type); 2056130803Smarcel fprintf_unfiltered (file, 2057130803Smarcel "gdbarch_dump: remote_translate_xfer_address = 0x%08lx\n", 2058130803Smarcel (long) current_gdbarch->remote_translate_xfer_address); 205998944Sobrien#ifdef RETURN_VALUE_ON_STACK 206098944Sobrien fprintf_unfiltered (file, 206198944Sobrien "gdbarch_dump: %s # %s\n", 206298944Sobrien "RETURN_VALUE_ON_STACK(type)", 206398944Sobrien XSTRING (RETURN_VALUE_ON_STACK (type))); 2064130803Smarcel fprintf_unfiltered (file, 2065130803Smarcel "gdbarch_dump: RETURN_VALUE_ON_STACK = <0x%08lx>\n", 2066130803Smarcel (long) current_gdbarch->return_value_on_stack 2067130803Smarcel /*RETURN_VALUE_ON_STACK ()*/); 206898944Sobrien#endif 2069130803Smarcel#ifdef SDB_REG_TO_REGNUM 207098944Sobrien fprintf_unfiltered (file, 207198944Sobrien "gdbarch_dump: %s # %s\n", 2072130803Smarcel "SDB_REG_TO_REGNUM(sdb_regnr)", 2073130803Smarcel XSTRING (SDB_REG_TO_REGNUM (sdb_regnr))); 2074130803Smarcel fprintf_unfiltered (file, 2075130803Smarcel "gdbarch_dump: SDB_REG_TO_REGNUM = <0x%08lx>\n", 2076130803Smarcel (long) current_gdbarch->sdb_reg_to_regnum 2077130803Smarcel /*SDB_REG_TO_REGNUM ()*/); 207898944Sobrien#endif 2079130803Smarcel#ifdef SIGTRAMP_END_P 208098944Sobrien fprintf_unfiltered (file, 208198944Sobrien "gdbarch_dump: %s # %s\n", 2082130803Smarcel "SIGTRAMP_END_P()", 2083130803Smarcel XSTRING (SIGTRAMP_END_P ())); 2084130803Smarcel fprintf_unfiltered (file, 2085130803Smarcel "gdbarch_dump: SIGTRAMP_END_P() = %d\n", 2086130803Smarcel SIGTRAMP_END_P ()); 208798944Sobrien#endif 2088130803Smarcel#ifdef SIGTRAMP_END 2089130803Smarcel fprintf_unfiltered (file, 2090130803Smarcel "gdbarch_dump: %s # %s\n", 2091130803Smarcel "SIGTRAMP_END(pc)", 2092130803Smarcel XSTRING (SIGTRAMP_END (pc))); 2093130803Smarcel fprintf_unfiltered (file, 2094130803Smarcel "gdbarch_dump: SIGTRAMP_END = <0x%08lx>\n", 2095130803Smarcel (long) current_gdbarch->sigtramp_end 2096130803Smarcel /*SIGTRAMP_END ()*/); 209798944Sobrien#endif 2098130803Smarcel#ifdef SIGTRAMP_START_P 209998944Sobrien fprintf_unfiltered (file, 210098944Sobrien "gdbarch_dump: %s # %s\n", 2101130803Smarcel "SIGTRAMP_START_P()", 2102130803Smarcel XSTRING (SIGTRAMP_START_P ())); 2103130803Smarcel fprintf_unfiltered (file, 2104130803Smarcel "gdbarch_dump: SIGTRAMP_START_P() = %d\n", 2105130803Smarcel SIGTRAMP_START_P ()); 210698944Sobrien#endif 2107130803Smarcel#ifdef SIGTRAMP_START 210898944Sobrien fprintf_unfiltered (file, 2109130803Smarcel "gdbarch_dump: %s # %s\n", 2110130803Smarcel "SIGTRAMP_START(pc)", 2111130803Smarcel XSTRING (SIGTRAMP_START (pc))); 211298944Sobrien fprintf_unfiltered (file, 2113130803Smarcel "gdbarch_dump: SIGTRAMP_START = <0x%08lx>\n", 2114130803Smarcel (long) current_gdbarch->sigtramp_start 2115130803Smarcel /*SIGTRAMP_START ()*/); 211698944Sobrien#endif 211798944Sobrien#ifdef SKIP_PROLOGUE 211898944Sobrien fprintf_unfiltered (file, 211998944Sobrien "gdbarch_dump: %s # %s\n", 212098944Sobrien "SKIP_PROLOGUE(ip)", 212198944Sobrien XSTRING (SKIP_PROLOGUE (ip))); 2122130803Smarcel fprintf_unfiltered (file, 2123130803Smarcel "gdbarch_dump: SKIP_PROLOGUE = <0x%08lx>\n", 2124130803Smarcel (long) current_gdbarch->skip_prologue 2125130803Smarcel /*SKIP_PROLOGUE ()*/); 212698944Sobrien#endif 2127130803Smarcel fprintf_unfiltered (file, 2128130803Smarcel "gdbarch_dump: skip_solib_resolver = 0x%08lx\n", 2129130803Smarcel (long) current_gdbarch->skip_solib_resolver); 213098944Sobrien#ifdef SKIP_TRAMPOLINE_CODE 213198944Sobrien fprintf_unfiltered (file, 213298944Sobrien "gdbarch_dump: %s # %s\n", 213398944Sobrien "SKIP_TRAMPOLINE_CODE(pc)", 213498944Sobrien XSTRING (SKIP_TRAMPOLINE_CODE (pc))); 2135130803Smarcel fprintf_unfiltered (file, 2136130803Smarcel "gdbarch_dump: SKIP_TRAMPOLINE_CODE = <0x%08lx>\n", 2137130803Smarcel (long) current_gdbarch->skip_trampoline_code 2138130803Smarcel /*SKIP_TRAMPOLINE_CODE ()*/); 213998944Sobrien#endif 214098944Sobrien#ifdef SMASH_TEXT_ADDRESS 214198944Sobrien fprintf_unfiltered (file, 214298944Sobrien "gdbarch_dump: %s # %s\n", 214398944Sobrien "SMASH_TEXT_ADDRESS(addr)", 214498944Sobrien XSTRING (SMASH_TEXT_ADDRESS (addr))); 2145130803Smarcel fprintf_unfiltered (file, 2146130803Smarcel "gdbarch_dump: SMASH_TEXT_ADDRESS = <0x%08lx>\n", 2147130803Smarcel (long) current_gdbarch->smash_text_address 2148130803Smarcel /*SMASH_TEXT_ADDRESS ()*/); 214998944Sobrien#endif 2150130803Smarcel#ifdef SOFTWARE_SINGLE_STEP_P 2151130803Smarcel fprintf_unfiltered (file, 2152130803Smarcel "gdbarch_dump: %s # %s\n", 2153130803Smarcel "SOFTWARE_SINGLE_STEP_P()", 2154130803Smarcel XSTRING (SOFTWARE_SINGLE_STEP_P ())); 2155130803Smarcel fprintf_unfiltered (file, 2156130803Smarcel "gdbarch_dump: SOFTWARE_SINGLE_STEP_P() = %d\n", 2157130803Smarcel SOFTWARE_SINGLE_STEP_P ()); 2158130803Smarcel#endif 215998944Sobrien#ifdef SOFTWARE_SINGLE_STEP 216098944Sobrien fprintf_unfiltered (file, 216198944Sobrien "gdbarch_dump: %s # %s\n", 216298944Sobrien "SOFTWARE_SINGLE_STEP(sig, insert_breakpoints_p)", 216398944Sobrien XSTRING (SOFTWARE_SINGLE_STEP (sig, insert_breakpoints_p))); 2164130803Smarcel fprintf_unfiltered (file, 2165130803Smarcel "gdbarch_dump: SOFTWARE_SINGLE_STEP = <0x%08lx>\n", 2166130803Smarcel (long) current_gdbarch->software_single_step 2167130803Smarcel /*SOFTWARE_SINGLE_STEP ()*/); 216898944Sobrien#endif 216998944Sobrien#ifdef SP_REGNUM 217098944Sobrien fprintf_unfiltered (file, 217198944Sobrien "gdbarch_dump: SP_REGNUM # %s\n", 217298944Sobrien XSTRING (SP_REGNUM)); 217398944Sobrien fprintf_unfiltered (file, 217498944Sobrien "gdbarch_dump: SP_REGNUM = %d\n", 217598944Sobrien SP_REGNUM); 217698944Sobrien#endif 217798944Sobrien#ifdef STAB_REG_TO_REGNUM 217898944Sobrien fprintf_unfiltered (file, 217998944Sobrien "gdbarch_dump: %s # %s\n", 218098944Sobrien "STAB_REG_TO_REGNUM(stab_regnr)", 218198944Sobrien XSTRING (STAB_REG_TO_REGNUM (stab_regnr))); 218298944Sobrien fprintf_unfiltered (file, 2183130803Smarcel "gdbarch_dump: STAB_REG_TO_REGNUM = <0x%08lx>\n", 2184130803Smarcel (long) current_gdbarch->stab_reg_to_regnum 2185130803Smarcel /*STAB_REG_TO_REGNUM ()*/); 218698944Sobrien#endif 218798944Sobrien#ifdef STORE_RETURN_VALUE 218898944Sobrien fprintf_unfiltered (file, 218998944Sobrien "gdbarch_dump: %s # %s\n", 2190130803Smarcel "STORE_RETURN_VALUE(type, regcache, valbuf)", 2191130803Smarcel XSTRING (STORE_RETURN_VALUE (type, regcache, valbuf))); 219298944Sobrien fprintf_unfiltered (file, 2193130803Smarcel "gdbarch_dump: STORE_RETURN_VALUE = <0x%08lx>\n", 2194130803Smarcel (long) current_gdbarch->store_return_value 2195130803Smarcel /*STORE_RETURN_VALUE ()*/); 219698944Sobrien#endif 219798944Sobrien#ifdef TARGET_ADDR_BIT 219898944Sobrien fprintf_unfiltered (file, 219998944Sobrien "gdbarch_dump: TARGET_ADDR_BIT # %s\n", 220098944Sobrien XSTRING (TARGET_ADDR_BIT)); 220198944Sobrien fprintf_unfiltered (file, 220298944Sobrien "gdbarch_dump: TARGET_ADDR_BIT = %d\n", 220398944Sobrien TARGET_ADDR_BIT); 220498944Sobrien#endif 220598944Sobrien#ifdef TARGET_ARCHITECTURE 220698944Sobrien fprintf_unfiltered (file, 220798944Sobrien "gdbarch_dump: TARGET_ARCHITECTURE # %s\n", 220898944Sobrien XSTRING (TARGET_ARCHITECTURE)); 220998944Sobrien if (TARGET_ARCHITECTURE != NULL) 221098944Sobrien fprintf_unfiltered (file, 221198944Sobrien "gdbarch_dump: TARGET_ARCHITECTURE = %s\n", 221298944Sobrien TARGET_ARCHITECTURE->printable_name); 221398944Sobrien#endif 221498944Sobrien#ifdef TARGET_BFD_VMA_BIT 221598944Sobrien fprintf_unfiltered (file, 221698944Sobrien "gdbarch_dump: TARGET_BFD_VMA_BIT # %s\n", 221798944Sobrien XSTRING (TARGET_BFD_VMA_BIT)); 221898944Sobrien fprintf_unfiltered (file, 221998944Sobrien "gdbarch_dump: TARGET_BFD_VMA_BIT = %d\n", 222098944Sobrien TARGET_BFD_VMA_BIT); 222198944Sobrien#endif 222298944Sobrien#ifdef TARGET_BYTE_ORDER 222398944Sobrien fprintf_unfiltered (file, 222498944Sobrien "gdbarch_dump: TARGET_BYTE_ORDER # %s\n", 222598944Sobrien XSTRING (TARGET_BYTE_ORDER)); 222698944Sobrien fprintf_unfiltered (file, 222798944Sobrien "gdbarch_dump: TARGET_BYTE_ORDER = %ld\n", 222898944Sobrien (long) TARGET_BYTE_ORDER); 222998944Sobrien#endif 223098944Sobrien#ifdef TARGET_CHAR_SIGNED 223198944Sobrien fprintf_unfiltered (file, 223298944Sobrien "gdbarch_dump: TARGET_CHAR_SIGNED # %s\n", 223398944Sobrien XSTRING (TARGET_CHAR_SIGNED)); 223498944Sobrien fprintf_unfiltered (file, 223598944Sobrien "gdbarch_dump: TARGET_CHAR_SIGNED = %d\n", 223698944Sobrien TARGET_CHAR_SIGNED); 223798944Sobrien#endif 223898944Sobrien#ifdef TARGET_DOUBLE_BIT 223998944Sobrien fprintf_unfiltered (file, 224098944Sobrien "gdbarch_dump: TARGET_DOUBLE_BIT # %s\n", 224198944Sobrien XSTRING (TARGET_DOUBLE_BIT)); 224298944Sobrien fprintf_unfiltered (file, 224398944Sobrien "gdbarch_dump: TARGET_DOUBLE_BIT = %d\n", 224498944Sobrien TARGET_DOUBLE_BIT); 224598944Sobrien#endif 224698944Sobrien#ifdef TARGET_DOUBLE_FORMAT 224798944Sobrien fprintf_unfiltered (file, 224898944Sobrien "gdbarch_dump: TARGET_DOUBLE_FORMAT # %s\n", 224998944Sobrien XSTRING (TARGET_DOUBLE_FORMAT)); 225098944Sobrien fprintf_unfiltered (file, 2251130803Smarcel "gdbarch_dump: TARGET_DOUBLE_FORMAT = %s\n", 2252130803Smarcel (TARGET_DOUBLE_FORMAT)->name); 225398944Sobrien#endif 225498944Sobrien#ifdef TARGET_FLOAT_BIT 225598944Sobrien fprintf_unfiltered (file, 225698944Sobrien "gdbarch_dump: TARGET_FLOAT_BIT # %s\n", 225798944Sobrien XSTRING (TARGET_FLOAT_BIT)); 225898944Sobrien fprintf_unfiltered (file, 225998944Sobrien "gdbarch_dump: TARGET_FLOAT_BIT = %d\n", 226098944Sobrien TARGET_FLOAT_BIT); 226198944Sobrien#endif 226298944Sobrien#ifdef TARGET_FLOAT_FORMAT 226398944Sobrien fprintf_unfiltered (file, 226498944Sobrien "gdbarch_dump: TARGET_FLOAT_FORMAT # %s\n", 226598944Sobrien XSTRING (TARGET_FLOAT_FORMAT)); 226698944Sobrien fprintf_unfiltered (file, 2267130803Smarcel "gdbarch_dump: TARGET_FLOAT_FORMAT = %s\n", 2268130803Smarcel (TARGET_FLOAT_FORMAT)->name); 226998944Sobrien#endif 227098944Sobrien#ifdef TARGET_INT_BIT 227198944Sobrien fprintf_unfiltered (file, 227298944Sobrien "gdbarch_dump: TARGET_INT_BIT # %s\n", 227398944Sobrien XSTRING (TARGET_INT_BIT)); 227498944Sobrien fprintf_unfiltered (file, 227598944Sobrien "gdbarch_dump: TARGET_INT_BIT = %d\n", 227698944Sobrien TARGET_INT_BIT); 227798944Sobrien#endif 227898944Sobrien#ifdef TARGET_LONG_BIT 227998944Sobrien fprintf_unfiltered (file, 228098944Sobrien "gdbarch_dump: TARGET_LONG_BIT # %s\n", 228198944Sobrien XSTRING (TARGET_LONG_BIT)); 228298944Sobrien fprintf_unfiltered (file, 228398944Sobrien "gdbarch_dump: TARGET_LONG_BIT = %d\n", 228498944Sobrien TARGET_LONG_BIT); 228598944Sobrien#endif 228698944Sobrien#ifdef TARGET_LONG_DOUBLE_BIT 228798944Sobrien fprintf_unfiltered (file, 228898944Sobrien "gdbarch_dump: TARGET_LONG_DOUBLE_BIT # %s\n", 228998944Sobrien XSTRING (TARGET_LONG_DOUBLE_BIT)); 229098944Sobrien fprintf_unfiltered (file, 229198944Sobrien "gdbarch_dump: TARGET_LONG_DOUBLE_BIT = %d\n", 229298944Sobrien TARGET_LONG_DOUBLE_BIT); 229398944Sobrien#endif 229498944Sobrien#ifdef TARGET_LONG_DOUBLE_FORMAT 229598944Sobrien fprintf_unfiltered (file, 229698944Sobrien "gdbarch_dump: TARGET_LONG_DOUBLE_FORMAT # %s\n", 229798944Sobrien XSTRING (TARGET_LONG_DOUBLE_FORMAT)); 229898944Sobrien fprintf_unfiltered (file, 2299130803Smarcel "gdbarch_dump: TARGET_LONG_DOUBLE_FORMAT = %s\n", 2300130803Smarcel (TARGET_LONG_DOUBLE_FORMAT)->name); 230198944Sobrien#endif 230298944Sobrien#ifdef TARGET_LONG_LONG_BIT 230398944Sobrien fprintf_unfiltered (file, 230498944Sobrien "gdbarch_dump: TARGET_LONG_LONG_BIT # %s\n", 230598944Sobrien XSTRING (TARGET_LONG_LONG_BIT)); 230698944Sobrien fprintf_unfiltered (file, 230798944Sobrien "gdbarch_dump: TARGET_LONG_LONG_BIT = %d\n", 230898944Sobrien TARGET_LONG_LONG_BIT); 230998944Sobrien#endif 2310130803Smarcel#ifdef TARGET_OSABI 2311130803Smarcel fprintf_unfiltered (file, 2312130803Smarcel "gdbarch_dump: TARGET_OSABI # %s\n", 2313130803Smarcel XSTRING (TARGET_OSABI)); 2314130803Smarcel fprintf_unfiltered (file, 2315130803Smarcel "gdbarch_dump: TARGET_OSABI = %ld\n", 2316130803Smarcel (long) TARGET_OSABI); 2317130803Smarcel#endif 231898944Sobrien#ifdef TARGET_PRINT_INSN 231998944Sobrien fprintf_unfiltered (file, 232098944Sobrien "gdbarch_dump: %s # %s\n", 232198944Sobrien "TARGET_PRINT_INSN(vma, info)", 232298944Sobrien XSTRING (TARGET_PRINT_INSN (vma, info))); 2323130803Smarcel fprintf_unfiltered (file, 2324130803Smarcel "gdbarch_dump: TARGET_PRINT_INSN = <0x%08lx>\n", 2325130803Smarcel (long) current_gdbarch->print_insn 2326130803Smarcel /*TARGET_PRINT_INSN ()*/); 232798944Sobrien#endif 232898944Sobrien#ifdef TARGET_PTR_BIT 232998944Sobrien fprintf_unfiltered (file, 233098944Sobrien "gdbarch_dump: TARGET_PTR_BIT # %s\n", 233198944Sobrien XSTRING (TARGET_PTR_BIT)); 233298944Sobrien fprintf_unfiltered (file, 233398944Sobrien "gdbarch_dump: TARGET_PTR_BIT = %d\n", 233498944Sobrien TARGET_PTR_BIT); 233598944Sobrien#endif 2336130803Smarcel#ifdef TARGET_READ_PC_P 233798944Sobrien fprintf_unfiltered (file, 233898944Sobrien "gdbarch_dump: %s # %s\n", 2339130803Smarcel "TARGET_READ_PC_P()", 2340130803Smarcel XSTRING (TARGET_READ_PC_P ())); 2341130803Smarcel fprintf_unfiltered (file, 2342130803Smarcel "gdbarch_dump: TARGET_READ_PC_P() = %d\n", 2343130803Smarcel TARGET_READ_PC_P ()); 234498944Sobrien#endif 234598944Sobrien#ifdef TARGET_READ_PC 234698944Sobrien fprintf_unfiltered (file, 234798944Sobrien "gdbarch_dump: %s # %s\n", 234898944Sobrien "TARGET_READ_PC(ptid)", 234998944Sobrien XSTRING (TARGET_READ_PC (ptid))); 2350130803Smarcel fprintf_unfiltered (file, 2351130803Smarcel "gdbarch_dump: TARGET_READ_PC = <0x%08lx>\n", 2352130803Smarcel (long) current_gdbarch->read_pc 2353130803Smarcel /*TARGET_READ_PC ()*/); 235498944Sobrien#endif 2355130803Smarcel#ifdef TARGET_READ_SP_P 2356130803Smarcel fprintf_unfiltered (file, 2357130803Smarcel "gdbarch_dump: %s # %s\n", 2358130803Smarcel "TARGET_READ_SP_P()", 2359130803Smarcel XSTRING (TARGET_READ_SP_P ())); 2360130803Smarcel fprintf_unfiltered (file, 2361130803Smarcel "gdbarch_dump: TARGET_READ_SP_P() = %d\n", 2362130803Smarcel TARGET_READ_SP_P ()); 2363130803Smarcel#endif 236498944Sobrien#ifdef TARGET_READ_SP 236598944Sobrien fprintf_unfiltered (file, 236698944Sobrien "gdbarch_dump: %s # %s\n", 236798944Sobrien "TARGET_READ_SP()", 236898944Sobrien XSTRING (TARGET_READ_SP ())); 2369130803Smarcel fprintf_unfiltered (file, 2370130803Smarcel "gdbarch_dump: TARGET_READ_SP = <0x%08lx>\n", 2371130803Smarcel (long) current_gdbarch->read_sp 2372130803Smarcel /*TARGET_READ_SP ()*/); 237398944Sobrien#endif 237498944Sobrien#ifdef TARGET_SHORT_BIT 237598944Sobrien fprintf_unfiltered (file, 237698944Sobrien "gdbarch_dump: TARGET_SHORT_BIT # %s\n", 237798944Sobrien XSTRING (TARGET_SHORT_BIT)); 237898944Sobrien fprintf_unfiltered (file, 237998944Sobrien "gdbarch_dump: TARGET_SHORT_BIT = %d\n", 238098944Sobrien TARGET_SHORT_BIT); 238198944Sobrien#endif 238298944Sobrien#ifdef TARGET_VIRTUAL_FRAME_POINTER 238398944Sobrien fprintf_unfiltered (file, 238498944Sobrien "gdbarch_dump: %s # %s\n", 238598944Sobrien "TARGET_VIRTUAL_FRAME_POINTER(pc, frame_regnum, frame_offset)", 238698944Sobrien XSTRING (TARGET_VIRTUAL_FRAME_POINTER (pc, frame_regnum, frame_offset))); 238798944Sobrien fprintf_unfiltered (file, 2388130803Smarcel "gdbarch_dump: TARGET_VIRTUAL_FRAME_POINTER = <0x%08lx>\n", 2389130803Smarcel (long) current_gdbarch->virtual_frame_pointer 2390130803Smarcel /*TARGET_VIRTUAL_FRAME_POINTER ()*/); 239198944Sobrien#endif 239298944Sobrien#ifdef TARGET_WRITE_PC 239398944Sobrien fprintf_unfiltered (file, 239498944Sobrien "gdbarch_dump: %s # %s\n", 239598944Sobrien "TARGET_WRITE_PC(val, ptid)", 239698944Sobrien XSTRING (TARGET_WRITE_PC (val, ptid))); 239798944Sobrien fprintf_unfiltered (file, 2398130803Smarcel "gdbarch_dump: TARGET_WRITE_PC = <0x%08lx>\n", 2399130803Smarcel (long) current_gdbarch->write_pc 2400130803Smarcel /*TARGET_WRITE_PC ()*/); 240198944Sobrien#endif 240298944Sobrien fprintf_unfiltered (file, 2403130803Smarcel "gdbarch_dump: gdbarch_unwind_dummy_id_p() = %d\n", 2404130803Smarcel gdbarch_unwind_dummy_id_p (current_gdbarch)); 240598944Sobrien fprintf_unfiltered (file, 2406130803Smarcel "gdbarch_dump: unwind_dummy_id = 0x%08lx\n", 2407130803Smarcel (long) current_gdbarch->unwind_dummy_id); 2408130803Smarcel fprintf_unfiltered (file, 2409130803Smarcel "gdbarch_dump: gdbarch_unwind_pc_p() = %d\n", 2410130803Smarcel gdbarch_unwind_pc_p (current_gdbarch)); 2411130803Smarcel fprintf_unfiltered (file, 2412130803Smarcel "gdbarch_dump: unwind_pc = 0x%08lx\n", 2413130803Smarcel (long) current_gdbarch->unwind_pc); 2414130803Smarcel fprintf_unfiltered (file, 2415130803Smarcel "gdbarch_dump: gdbarch_unwind_sp_p() = %d\n", 2416130803Smarcel gdbarch_unwind_sp_p (current_gdbarch)); 2417130803Smarcel fprintf_unfiltered (file, 2418130803Smarcel "gdbarch_dump: unwind_sp = 0x%08lx\n", 2419130803Smarcel (long) current_gdbarch->unwind_sp); 242098944Sobrien#ifdef USE_STRUCT_CONVENTION 242198944Sobrien fprintf_unfiltered (file, 242298944Sobrien "gdbarch_dump: %s # %s\n", 242398944Sobrien "USE_STRUCT_CONVENTION(gcc_p, value_type)", 242498944Sobrien XSTRING (USE_STRUCT_CONVENTION (gcc_p, value_type))); 2425130803Smarcel fprintf_unfiltered (file, 2426130803Smarcel "gdbarch_dump: USE_STRUCT_CONVENTION = <0x%08lx>\n", 2427130803Smarcel (long) current_gdbarch->use_struct_convention 2428130803Smarcel /*USE_STRUCT_CONVENTION ()*/); 242998944Sobrien#endif 2430130803Smarcel#ifdef VALUE_TO_REGISTER 2431130803Smarcel fprintf_unfiltered (file, 2432130803Smarcel "gdbarch_dump: %s # %s\n", 2433130803Smarcel "VALUE_TO_REGISTER(frame, regnum, type, buf)", 2434130803Smarcel XSTRING (VALUE_TO_REGISTER (frame, regnum, type, buf))); 2435130803Smarcel fprintf_unfiltered (file, 2436130803Smarcel "gdbarch_dump: VALUE_TO_REGISTER = <0x%08lx>\n", 2437130803Smarcel (long) current_gdbarch->value_to_register 2438130803Smarcel /*VALUE_TO_REGISTER ()*/); 2439130803Smarcel#endif 244098944Sobrien if (current_gdbarch->dump_tdep != NULL) 244198944Sobrien current_gdbarch->dump_tdep (current_gdbarch, file); 244298944Sobrien} 244346283Sdfr 244498944Sobrienstruct gdbarch_tdep * 244598944Sobriengdbarch_tdep (struct gdbarch *gdbarch) 244698944Sobrien{ 244798944Sobrien if (gdbarch_debug >= 2) 244898944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_tdep called\n"); 244998944Sobrien return gdbarch->tdep; 245098944Sobrien} 245146283Sdfr 245298944Sobrien 245398944Sobrienconst struct bfd_arch_info * 245498944Sobriengdbarch_bfd_arch_info (struct gdbarch *gdbarch) 245546283Sdfr{ 2456130803Smarcel gdb_assert (gdbarch != NULL); 245798944Sobrien if (gdbarch_debug >= 2) 245898944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_bfd_arch_info called\n"); 245998944Sobrien return gdbarch->bfd_arch_info; 246046283Sdfr} 246146283Sdfr 246298944Sobrienint 246398944Sobriengdbarch_byte_order (struct gdbarch *gdbarch) 246446283Sdfr{ 2465130803Smarcel gdb_assert (gdbarch != NULL); 246698944Sobrien if (gdbarch_debug >= 2) 246798944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_byte_order called\n"); 246898944Sobrien return gdbarch->byte_order; 246946283Sdfr} 247046283Sdfr 2471130803Smarcelenum gdb_osabi 2472130803Smarcelgdbarch_osabi (struct gdbarch *gdbarch) 2473130803Smarcel{ 2474130803Smarcel gdb_assert (gdbarch != NULL); 2475130803Smarcel if (gdbarch_debug >= 2) 2476130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_osabi called\n"); 2477130803Smarcel return gdbarch->osabi; 2478130803Smarcel} 2479130803Smarcel 248098944Sobrienint 248198944Sobriengdbarch_short_bit (struct gdbarch *gdbarch) 248246283Sdfr{ 2483130803Smarcel gdb_assert (gdbarch != NULL); 248498944Sobrien /* Skip verify of short_bit, invalid_p == 0 */ 248598944Sobrien if (gdbarch_debug >= 2) 248698944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_short_bit called\n"); 248798944Sobrien return gdbarch->short_bit; 248846283Sdfr} 248946283Sdfr 249098944Sobrienvoid 249198944Sobrienset_gdbarch_short_bit (struct gdbarch *gdbarch, 249298944Sobrien int short_bit) 249398944Sobrien{ 249498944Sobrien gdbarch->short_bit = short_bit; 249598944Sobrien} 249698944Sobrien 249798944Sobrienint 249898944Sobriengdbarch_int_bit (struct gdbarch *gdbarch) 249998944Sobrien{ 2500130803Smarcel gdb_assert (gdbarch != NULL); 250198944Sobrien /* Skip verify of int_bit, invalid_p == 0 */ 250298944Sobrien if (gdbarch_debug >= 2) 250398944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_int_bit called\n"); 250498944Sobrien return gdbarch->int_bit; 250598944Sobrien} 250698944Sobrien 250798944Sobrienvoid 250898944Sobrienset_gdbarch_int_bit (struct gdbarch *gdbarch, 250998944Sobrien int int_bit) 251098944Sobrien{ 251198944Sobrien gdbarch->int_bit = int_bit; 251298944Sobrien} 251398944Sobrien 251498944Sobrienint 251598944Sobriengdbarch_long_bit (struct gdbarch *gdbarch) 251698944Sobrien{ 2517130803Smarcel gdb_assert (gdbarch != NULL); 251898944Sobrien /* Skip verify of long_bit, invalid_p == 0 */ 251998944Sobrien if (gdbarch_debug >= 2) 252098944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_long_bit called\n"); 252198944Sobrien return gdbarch->long_bit; 252298944Sobrien} 252398944Sobrien 252498944Sobrienvoid 252598944Sobrienset_gdbarch_long_bit (struct gdbarch *gdbarch, 252698944Sobrien int long_bit) 252798944Sobrien{ 252898944Sobrien gdbarch->long_bit = long_bit; 252998944Sobrien} 253098944Sobrien 253198944Sobrienint 253298944Sobriengdbarch_long_long_bit (struct gdbarch *gdbarch) 253398944Sobrien{ 2534130803Smarcel gdb_assert (gdbarch != NULL); 253598944Sobrien /* Skip verify of long_long_bit, invalid_p == 0 */ 253698944Sobrien if (gdbarch_debug >= 2) 253798944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_long_long_bit called\n"); 253898944Sobrien return gdbarch->long_long_bit; 253998944Sobrien} 254098944Sobrien 254198944Sobrienvoid 254298944Sobrienset_gdbarch_long_long_bit (struct gdbarch *gdbarch, 254398944Sobrien int long_long_bit) 254498944Sobrien{ 254598944Sobrien gdbarch->long_long_bit = long_long_bit; 254698944Sobrien} 254798944Sobrien 254898944Sobrienint 254998944Sobriengdbarch_float_bit (struct gdbarch *gdbarch) 255098944Sobrien{ 2551130803Smarcel gdb_assert (gdbarch != NULL); 255298944Sobrien /* Skip verify of float_bit, invalid_p == 0 */ 255398944Sobrien if (gdbarch_debug >= 2) 255498944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_float_bit called\n"); 255598944Sobrien return gdbarch->float_bit; 255698944Sobrien} 255798944Sobrien 255898944Sobrienvoid 255998944Sobrienset_gdbarch_float_bit (struct gdbarch *gdbarch, 256098944Sobrien int float_bit) 256198944Sobrien{ 256298944Sobrien gdbarch->float_bit = float_bit; 256398944Sobrien} 256498944Sobrien 256598944Sobrienint 256698944Sobriengdbarch_double_bit (struct gdbarch *gdbarch) 256798944Sobrien{ 2568130803Smarcel gdb_assert (gdbarch != NULL); 256998944Sobrien /* Skip verify of double_bit, invalid_p == 0 */ 257098944Sobrien if (gdbarch_debug >= 2) 257198944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_double_bit called\n"); 257298944Sobrien return gdbarch->double_bit; 257398944Sobrien} 257498944Sobrien 257598944Sobrienvoid 257698944Sobrienset_gdbarch_double_bit (struct gdbarch *gdbarch, 257798944Sobrien int double_bit) 257898944Sobrien{ 257998944Sobrien gdbarch->double_bit = double_bit; 258098944Sobrien} 258198944Sobrien 258298944Sobrienint 258398944Sobriengdbarch_long_double_bit (struct gdbarch *gdbarch) 258498944Sobrien{ 2585130803Smarcel gdb_assert (gdbarch != NULL); 258698944Sobrien /* Skip verify of long_double_bit, invalid_p == 0 */ 258798944Sobrien if (gdbarch_debug >= 2) 258898944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_long_double_bit called\n"); 258998944Sobrien return gdbarch->long_double_bit; 259098944Sobrien} 259198944Sobrien 259298944Sobrienvoid 259398944Sobrienset_gdbarch_long_double_bit (struct gdbarch *gdbarch, 259498944Sobrien int long_double_bit) 259598944Sobrien{ 259698944Sobrien gdbarch->long_double_bit = long_double_bit; 259798944Sobrien} 259898944Sobrien 259998944Sobrienint 260098944Sobriengdbarch_ptr_bit (struct gdbarch *gdbarch) 260198944Sobrien{ 2602130803Smarcel gdb_assert (gdbarch != NULL); 260398944Sobrien /* Skip verify of ptr_bit, invalid_p == 0 */ 260498944Sobrien if (gdbarch_debug >= 2) 260598944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_ptr_bit called\n"); 260698944Sobrien return gdbarch->ptr_bit; 260798944Sobrien} 260898944Sobrien 260998944Sobrienvoid 261098944Sobrienset_gdbarch_ptr_bit (struct gdbarch *gdbarch, 261198944Sobrien int ptr_bit) 261298944Sobrien{ 261398944Sobrien gdbarch->ptr_bit = ptr_bit; 261498944Sobrien} 261598944Sobrien 261698944Sobrienint 261798944Sobriengdbarch_addr_bit (struct gdbarch *gdbarch) 261898944Sobrien{ 2619130803Smarcel gdb_assert (gdbarch != NULL); 2620130803Smarcel /* Check variable changed from pre-default. */ 2621130803Smarcel gdb_assert (gdbarch->addr_bit != 0); 262298944Sobrien if (gdbarch_debug >= 2) 262398944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_addr_bit called\n"); 262498944Sobrien return gdbarch->addr_bit; 262598944Sobrien} 262698944Sobrien 262798944Sobrienvoid 262898944Sobrienset_gdbarch_addr_bit (struct gdbarch *gdbarch, 262998944Sobrien int addr_bit) 263098944Sobrien{ 263198944Sobrien gdbarch->addr_bit = addr_bit; 263298944Sobrien} 263398944Sobrien 263498944Sobrienint 263598944Sobriengdbarch_bfd_vma_bit (struct gdbarch *gdbarch) 263698944Sobrien{ 2637130803Smarcel gdb_assert (gdbarch != NULL); 263898944Sobrien /* Skip verify of bfd_vma_bit, invalid_p == 0 */ 263998944Sobrien if (gdbarch_debug >= 2) 264098944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_bfd_vma_bit called\n"); 264198944Sobrien return gdbarch->bfd_vma_bit; 264298944Sobrien} 264398944Sobrien 264498944Sobrienvoid 264598944Sobrienset_gdbarch_bfd_vma_bit (struct gdbarch *gdbarch, 264698944Sobrien int bfd_vma_bit) 264798944Sobrien{ 264898944Sobrien gdbarch->bfd_vma_bit = bfd_vma_bit; 264998944Sobrien} 265098944Sobrien 265198944Sobrienint 265298944Sobriengdbarch_char_signed (struct gdbarch *gdbarch) 265398944Sobrien{ 2654130803Smarcel gdb_assert (gdbarch != NULL); 2655130803Smarcel /* Check variable changed from pre-default. */ 2656130803Smarcel gdb_assert (gdbarch->char_signed != -1); 265798944Sobrien if (gdbarch_debug >= 2) 265898944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_char_signed called\n"); 265998944Sobrien return gdbarch->char_signed; 266098944Sobrien} 266198944Sobrien 266298944Sobrienvoid 266398944Sobrienset_gdbarch_char_signed (struct gdbarch *gdbarch, 266498944Sobrien int char_signed) 266598944Sobrien{ 266698944Sobrien gdbarch->char_signed = char_signed; 266798944Sobrien} 266898944Sobrien 2669130803Smarcelint 2670130803Smarcelgdbarch_read_pc_p (struct gdbarch *gdbarch) 2671130803Smarcel{ 2672130803Smarcel gdb_assert (gdbarch != NULL); 2673130803Smarcel return gdbarch->read_pc != NULL; 2674130803Smarcel} 2675130803Smarcel 267698944SobrienCORE_ADDR 267798944Sobriengdbarch_read_pc (struct gdbarch *gdbarch, ptid_t ptid) 267898944Sobrien{ 2679130803Smarcel gdb_assert (gdbarch != NULL); 2680130803Smarcel gdb_assert (gdbarch->read_pc != NULL); 268198944Sobrien if (gdbarch_debug >= 2) 268298944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_read_pc called\n"); 268398944Sobrien return gdbarch->read_pc (ptid); 268498944Sobrien} 268598944Sobrien 268698944Sobrienvoid 268798944Sobrienset_gdbarch_read_pc (struct gdbarch *gdbarch, 268898944Sobrien gdbarch_read_pc_ftype read_pc) 268998944Sobrien{ 269098944Sobrien gdbarch->read_pc = read_pc; 269198944Sobrien} 269298944Sobrien 269398944Sobrienvoid 269498944Sobriengdbarch_write_pc (struct gdbarch *gdbarch, CORE_ADDR val, ptid_t ptid) 269598944Sobrien{ 2696130803Smarcel gdb_assert (gdbarch != NULL); 2697130803Smarcel gdb_assert (gdbarch->write_pc != NULL); 269898944Sobrien if (gdbarch_debug >= 2) 269998944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_write_pc called\n"); 270098944Sobrien gdbarch->write_pc (val, ptid); 270198944Sobrien} 270298944Sobrien 270398944Sobrienvoid 270498944Sobrienset_gdbarch_write_pc (struct gdbarch *gdbarch, 270598944Sobrien gdbarch_write_pc_ftype write_pc) 270698944Sobrien{ 270798944Sobrien gdbarch->write_pc = write_pc; 270898944Sobrien} 270998944Sobrien 2710130803Smarcelint 2711130803Smarcelgdbarch_read_sp_p (struct gdbarch *gdbarch) 271298944Sobrien{ 2713130803Smarcel gdb_assert (gdbarch != NULL); 2714130803Smarcel return gdbarch->read_sp != NULL; 271598944Sobrien} 271698944Sobrien 271798944SobrienCORE_ADDR 271898944Sobriengdbarch_read_sp (struct gdbarch *gdbarch) 271998944Sobrien{ 2720130803Smarcel gdb_assert (gdbarch != NULL); 2721130803Smarcel gdb_assert (gdbarch->read_sp != NULL); 272298944Sobrien if (gdbarch_debug >= 2) 272398944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_read_sp called\n"); 272498944Sobrien return gdbarch->read_sp (); 272598944Sobrien} 272698944Sobrien 272798944Sobrienvoid 272898944Sobrienset_gdbarch_read_sp (struct gdbarch *gdbarch, 272998944Sobrien gdbarch_read_sp_ftype read_sp) 273098944Sobrien{ 273198944Sobrien gdbarch->read_sp = read_sp; 273298944Sobrien} 273398944Sobrien 273498944Sobrienvoid 273598944Sobriengdbarch_virtual_frame_pointer (struct gdbarch *gdbarch, CORE_ADDR pc, int *frame_regnum, LONGEST *frame_offset) 273698944Sobrien{ 2737130803Smarcel gdb_assert (gdbarch != NULL); 2738130803Smarcel gdb_assert (gdbarch->virtual_frame_pointer != NULL); 273998944Sobrien if (gdbarch_debug >= 2) 274098944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_virtual_frame_pointer called\n"); 274198944Sobrien gdbarch->virtual_frame_pointer (pc, frame_regnum, frame_offset); 274298944Sobrien} 274398944Sobrien 274498944Sobrienvoid 274598944Sobrienset_gdbarch_virtual_frame_pointer (struct gdbarch *gdbarch, 274698944Sobrien gdbarch_virtual_frame_pointer_ftype virtual_frame_pointer) 274798944Sobrien{ 274898944Sobrien gdbarch->virtual_frame_pointer = virtual_frame_pointer; 274998944Sobrien} 275098944Sobrien 275198944Sobrienint 2752130803Smarcelgdbarch_pseudo_register_read_p (struct gdbarch *gdbarch) 275398944Sobrien{ 2754130803Smarcel gdb_assert (gdbarch != NULL); 2755130803Smarcel return gdbarch->pseudo_register_read != NULL; 275698944Sobrien} 275798944Sobrien 275898944Sobrienvoid 2759130803Smarcelgdbarch_pseudo_register_read (struct gdbarch *gdbarch, struct regcache *regcache, int cookednum, void *buf) 276098944Sobrien{ 2761130803Smarcel gdb_assert (gdbarch != NULL); 2762130803Smarcel gdb_assert (gdbarch->pseudo_register_read != NULL); 276398944Sobrien if (gdbarch_debug >= 2) 2764130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_pseudo_register_read called\n"); 2765130803Smarcel gdbarch->pseudo_register_read (gdbarch, regcache, cookednum, buf); 276698944Sobrien} 276798944Sobrien 276898944Sobrienvoid 2769130803Smarcelset_gdbarch_pseudo_register_read (struct gdbarch *gdbarch, 2770130803Smarcel gdbarch_pseudo_register_read_ftype pseudo_register_read) 277198944Sobrien{ 2772130803Smarcel gdbarch->pseudo_register_read = pseudo_register_read; 277398944Sobrien} 277498944Sobrien 277598944Sobrienint 2776130803Smarcelgdbarch_pseudo_register_write_p (struct gdbarch *gdbarch) 277798944Sobrien{ 2778130803Smarcel gdb_assert (gdbarch != NULL); 2779130803Smarcel return gdbarch->pseudo_register_write != NULL; 278098944Sobrien} 278198944Sobrien 278298944Sobrienvoid 2783130803Smarcelgdbarch_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache, int cookednum, const void *buf) 278498944Sobrien{ 2785130803Smarcel gdb_assert (gdbarch != NULL); 2786130803Smarcel gdb_assert (gdbarch->pseudo_register_write != NULL); 278798944Sobrien if (gdbarch_debug >= 2) 2788130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_pseudo_register_write called\n"); 2789130803Smarcel gdbarch->pseudo_register_write (gdbarch, regcache, cookednum, buf); 279098944Sobrien} 279198944Sobrien 279298944Sobrienvoid 2793130803Smarcelset_gdbarch_pseudo_register_write (struct gdbarch *gdbarch, 2794130803Smarcel gdbarch_pseudo_register_write_ftype pseudo_register_write) 279598944Sobrien{ 2796130803Smarcel gdbarch->pseudo_register_write = pseudo_register_write; 279798944Sobrien} 279898944Sobrien 279998944Sobrienint 280098944Sobriengdbarch_num_regs (struct gdbarch *gdbarch) 280198944Sobrien{ 2802130803Smarcel gdb_assert (gdbarch != NULL); 2803130803Smarcel /* Check variable changed from pre-default. */ 2804130803Smarcel gdb_assert (gdbarch->num_regs != -1); 280598944Sobrien if (gdbarch_debug >= 2) 280698944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_num_regs called\n"); 280798944Sobrien return gdbarch->num_regs; 280898944Sobrien} 280998944Sobrien 281098944Sobrienvoid 281198944Sobrienset_gdbarch_num_regs (struct gdbarch *gdbarch, 281298944Sobrien int num_regs) 281398944Sobrien{ 281498944Sobrien gdbarch->num_regs = num_regs; 281598944Sobrien} 281698944Sobrien 281798944Sobrienint 281898944Sobriengdbarch_num_pseudo_regs (struct gdbarch *gdbarch) 281998944Sobrien{ 2820130803Smarcel gdb_assert (gdbarch != NULL); 282198944Sobrien /* Skip verify of num_pseudo_regs, invalid_p == 0 */ 282298944Sobrien if (gdbarch_debug >= 2) 282398944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_num_pseudo_regs called\n"); 282498944Sobrien return gdbarch->num_pseudo_regs; 282598944Sobrien} 282698944Sobrien 282798944Sobrienvoid 282898944Sobrienset_gdbarch_num_pseudo_regs (struct gdbarch *gdbarch, 282998944Sobrien int num_pseudo_regs) 283098944Sobrien{ 283198944Sobrien gdbarch->num_pseudo_regs = num_pseudo_regs; 283298944Sobrien} 283398944Sobrien 283498944Sobrienint 283598944Sobriengdbarch_sp_regnum (struct gdbarch *gdbarch) 283698944Sobrien{ 2837130803Smarcel gdb_assert (gdbarch != NULL); 2838130803Smarcel /* Skip verify of sp_regnum, invalid_p == 0 */ 283998944Sobrien if (gdbarch_debug >= 2) 284098944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_sp_regnum called\n"); 284198944Sobrien return gdbarch->sp_regnum; 284298944Sobrien} 284398944Sobrien 284498944Sobrienvoid 284598944Sobrienset_gdbarch_sp_regnum (struct gdbarch *gdbarch, 284698944Sobrien int sp_regnum) 284798944Sobrien{ 284898944Sobrien gdbarch->sp_regnum = sp_regnum; 284998944Sobrien} 285098944Sobrien 285198944Sobrienint 2852130803Smarcelgdbarch_pc_regnum (struct gdbarch *gdbarch) 285398944Sobrien{ 2854130803Smarcel gdb_assert (gdbarch != NULL); 2855130803Smarcel /* Skip verify of pc_regnum, invalid_p == 0 */ 285698944Sobrien if (gdbarch_debug >= 2) 2857130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_pc_regnum called\n"); 2858130803Smarcel return gdbarch->pc_regnum; 285998944Sobrien} 286098944Sobrien 286198944Sobrienvoid 2862130803Smarcelset_gdbarch_pc_regnum (struct gdbarch *gdbarch, 2863130803Smarcel int pc_regnum) 286498944Sobrien{ 2865130803Smarcel gdbarch->pc_regnum = pc_regnum; 286698944Sobrien} 286798944Sobrien 286898944Sobrienint 2869130803Smarcelgdbarch_ps_regnum (struct gdbarch *gdbarch) 287098944Sobrien{ 2871130803Smarcel gdb_assert (gdbarch != NULL); 2872130803Smarcel /* Skip verify of ps_regnum, invalid_p == 0 */ 287398944Sobrien if (gdbarch_debug >= 2) 2874130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_ps_regnum called\n"); 2875130803Smarcel return gdbarch->ps_regnum; 287698944Sobrien} 287798944Sobrien 287898944Sobrienvoid 2879130803Smarcelset_gdbarch_ps_regnum (struct gdbarch *gdbarch, 2880130803Smarcel int ps_regnum) 288198944Sobrien{ 2882130803Smarcel gdbarch->ps_regnum = ps_regnum; 288398944Sobrien} 288498944Sobrien 288598944Sobrienint 288698944Sobriengdbarch_fp0_regnum (struct gdbarch *gdbarch) 288798944Sobrien{ 2888130803Smarcel gdb_assert (gdbarch != NULL); 288998944Sobrien /* Skip verify of fp0_regnum, invalid_p == 0 */ 289098944Sobrien if (gdbarch_debug >= 2) 289198944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_fp0_regnum called\n"); 289298944Sobrien return gdbarch->fp0_regnum; 289398944Sobrien} 289498944Sobrien 289598944Sobrienvoid 289698944Sobrienset_gdbarch_fp0_regnum (struct gdbarch *gdbarch, 289798944Sobrien int fp0_regnum) 289898944Sobrien{ 289998944Sobrien gdbarch->fp0_regnum = fp0_regnum; 290098944Sobrien} 290198944Sobrien 290298944Sobrienint 290398944Sobriengdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch, int stab_regnr) 290498944Sobrien{ 2905130803Smarcel gdb_assert (gdbarch != NULL); 2906130803Smarcel gdb_assert (gdbarch->stab_reg_to_regnum != NULL); 290798944Sobrien if (gdbarch_debug >= 2) 290898944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_stab_reg_to_regnum called\n"); 290998944Sobrien return gdbarch->stab_reg_to_regnum (stab_regnr); 291098944Sobrien} 291198944Sobrien 291298944Sobrienvoid 291398944Sobrienset_gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch, 291498944Sobrien gdbarch_stab_reg_to_regnum_ftype stab_reg_to_regnum) 291598944Sobrien{ 291698944Sobrien gdbarch->stab_reg_to_regnum = stab_reg_to_regnum; 291798944Sobrien} 291898944Sobrien 291998944Sobrienint 292098944Sobriengdbarch_ecoff_reg_to_regnum (struct gdbarch *gdbarch, int ecoff_regnr) 292198944Sobrien{ 2922130803Smarcel gdb_assert (gdbarch != NULL); 2923130803Smarcel gdb_assert (gdbarch->ecoff_reg_to_regnum != NULL); 292498944Sobrien if (gdbarch_debug >= 2) 292598944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_ecoff_reg_to_regnum called\n"); 292698944Sobrien return gdbarch->ecoff_reg_to_regnum (ecoff_regnr); 292798944Sobrien} 292898944Sobrien 292998944Sobrienvoid 293098944Sobrienset_gdbarch_ecoff_reg_to_regnum (struct gdbarch *gdbarch, 293198944Sobrien gdbarch_ecoff_reg_to_regnum_ftype ecoff_reg_to_regnum) 293298944Sobrien{ 293398944Sobrien gdbarch->ecoff_reg_to_regnum = ecoff_reg_to_regnum; 293498944Sobrien} 293598944Sobrien 293698944Sobrienint 293798944Sobriengdbarch_dwarf_reg_to_regnum (struct gdbarch *gdbarch, int dwarf_regnr) 293898944Sobrien{ 2939130803Smarcel gdb_assert (gdbarch != NULL); 2940130803Smarcel gdb_assert (gdbarch->dwarf_reg_to_regnum != NULL); 294198944Sobrien if (gdbarch_debug >= 2) 294298944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_dwarf_reg_to_regnum called\n"); 294398944Sobrien return gdbarch->dwarf_reg_to_regnum (dwarf_regnr); 294498944Sobrien} 294598944Sobrien 294698944Sobrienvoid 294798944Sobrienset_gdbarch_dwarf_reg_to_regnum (struct gdbarch *gdbarch, 294898944Sobrien gdbarch_dwarf_reg_to_regnum_ftype dwarf_reg_to_regnum) 294998944Sobrien{ 295098944Sobrien gdbarch->dwarf_reg_to_regnum = dwarf_reg_to_regnum; 295198944Sobrien} 295298944Sobrien 295398944Sobrienint 295498944Sobriengdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch, int sdb_regnr) 295598944Sobrien{ 2956130803Smarcel gdb_assert (gdbarch != NULL); 2957130803Smarcel gdb_assert (gdbarch->sdb_reg_to_regnum != NULL); 295898944Sobrien if (gdbarch_debug >= 2) 295998944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_sdb_reg_to_regnum called\n"); 296098944Sobrien return gdbarch->sdb_reg_to_regnum (sdb_regnr); 296198944Sobrien} 296298944Sobrien 296398944Sobrienvoid 296498944Sobrienset_gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch, 296598944Sobrien gdbarch_sdb_reg_to_regnum_ftype sdb_reg_to_regnum) 296698944Sobrien{ 296798944Sobrien gdbarch->sdb_reg_to_regnum = sdb_reg_to_regnum; 296898944Sobrien} 296998944Sobrien 297098944Sobrienint 297198944Sobriengdbarch_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, int dwarf2_regnr) 297298944Sobrien{ 2973130803Smarcel gdb_assert (gdbarch != NULL); 2974130803Smarcel gdb_assert (gdbarch->dwarf2_reg_to_regnum != NULL); 297598944Sobrien if (gdbarch_debug >= 2) 297698944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_dwarf2_reg_to_regnum called\n"); 297798944Sobrien return gdbarch->dwarf2_reg_to_regnum (dwarf2_regnr); 297898944Sobrien} 297998944Sobrien 298098944Sobrienvoid 298198944Sobrienset_gdbarch_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, 298298944Sobrien gdbarch_dwarf2_reg_to_regnum_ftype dwarf2_reg_to_regnum) 298398944Sobrien{ 298498944Sobrien gdbarch->dwarf2_reg_to_regnum = dwarf2_reg_to_regnum; 298598944Sobrien} 298698944Sobrien 2987130803Smarcelconst char * 298898944Sobriengdbarch_register_name (struct gdbarch *gdbarch, int regnr) 298998944Sobrien{ 2990130803Smarcel gdb_assert (gdbarch != NULL); 2991130803Smarcel gdb_assert (gdbarch->register_name != NULL); 299298944Sobrien if (gdbarch_debug >= 2) 299398944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_register_name called\n"); 299498944Sobrien return gdbarch->register_name (regnr); 299598944Sobrien} 299698944Sobrien 299798944Sobrienvoid 299898944Sobrienset_gdbarch_register_name (struct gdbarch *gdbarch, 299998944Sobrien gdbarch_register_name_ftype register_name) 300098944Sobrien{ 300198944Sobrien gdbarch->register_name = register_name; 300298944Sobrien} 300398944Sobrien 300498944Sobrienint 3005130803Smarcelgdbarch_register_type_p (struct gdbarch *gdbarch) 300698944Sobrien{ 3007130803Smarcel gdb_assert (gdbarch != NULL); 3008130803Smarcel return gdbarch->register_type != NULL; 3009130803Smarcel} 3010130803Smarcel 3011130803Smarcelstruct type * 3012130803Smarcelgdbarch_register_type (struct gdbarch *gdbarch, int reg_nr) 3013130803Smarcel{ 3014130803Smarcel gdb_assert (gdbarch != NULL); 3015130803Smarcel gdb_assert (gdbarch->register_type != NULL); 301698944Sobrien if (gdbarch_debug >= 2) 3017130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_register_type called\n"); 3018130803Smarcel return gdbarch->register_type (gdbarch, reg_nr); 301998944Sobrien} 302098944Sobrien 302198944Sobrienvoid 3022130803Smarcelset_gdbarch_register_type (struct gdbarch *gdbarch, 3023130803Smarcel gdbarch_register_type_ftype register_type) 302498944Sobrien{ 3025130803Smarcel gdbarch->register_type = register_type; 302698944Sobrien} 302798944Sobrien 302898944Sobrienint 3029130803Smarcelgdbarch_deprecated_register_virtual_type_p (struct gdbarch *gdbarch) 303098944Sobrien{ 3031130803Smarcel gdb_assert (gdbarch != NULL); 3032130803Smarcel return gdbarch->deprecated_register_virtual_type != NULL; 3033130803Smarcel} 3034130803Smarcel 3035130803Smarcelstruct type * 3036130803Smarcelgdbarch_deprecated_register_virtual_type (struct gdbarch *gdbarch, int reg_nr) 3037130803Smarcel{ 3038130803Smarcel gdb_assert (gdbarch != NULL); 3039130803Smarcel gdb_assert (gdbarch->deprecated_register_virtual_type != NULL); 304098944Sobrien if (gdbarch_debug >= 2) 3041130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_virtual_type called\n"); 3042130803Smarcel return gdbarch->deprecated_register_virtual_type (reg_nr); 304398944Sobrien} 304498944Sobrien 304598944Sobrienvoid 3046130803Smarcelset_gdbarch_deprecated_register_virtual_type (struct gdbarch *gdbarch, 3047130803Smarcel gdbarch_deprecated_register_virtual_type_ftype deprecated_register_virtual_type) 304898944Sobrien{ 3049130803Smarcel gdbarch->deprecated_register_virtual_type = deprecated_register_virtual_type; 305098944Sobrien} 305198944Sobrien 305298944Sobrienint 3053130803Smarcelgdbarch_deprecated_register_bytes (struct gdbarch *gdbarch) 305498944Sobrien{ 3055130803Smarcel gdb_assert (gdbarch != NULL); 305698944Sobrien if (gdbarch_debug >= 2) 3057130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_bytes called\n"); 3058130803Smarcel return gdbarch->deprecated_register_bytes; 305998944Sobrien} 306098944Sobrien 306198944Sobrienvoid 3062130803Smarcelset_gdbarch_deprecated_register_bytes (struct gdbarch *gdbarch, 3063130803Smarcel int deprecated_register_bytes) 306498944Sobrien{ 3065130803Smarcel gdbarch->deprecated_register_bytes = deprecated_register_bytes; 306698944Sobrien} 306798944Sobrien 306898944Sobrienint 3069130803Smarcelgdbarch_deprecated_register_byte_p (struct gdbarch *gdbarch) 307098944Sobrien{ 3071130803Smarcel gdb_assert (gdbarch != NULL); 3072130803Smarcel return gdbarch->deprecated_register_byte != generic_register_byte; 3073130803Smarcel} 3074130803Smarcel 3075130803Smarcelint 3076130803Smarcelgdbarch_deprecated_register_byte (struct gdbarch *gdbarch, int reg_nr) 3077130803Smarcel{ 3078130803Smarcel gdb_assert (gdbarch != NULL); 3079130803Smarcel gdb_assert (gdbarch->deprecated_register_byte != NULL); 3080130803Smarcel /* Do not check predicate: gdbarch->deprecated_register_byte != generic_register_byte, allow call. */ 308198944Sobrien if (gdbarch_debug >= 2) 3082130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_byte called\n"); 3083130803Smarcel return gdbarch->deprecated_register_byte (reg_nr); 308498944Sobrien} 308598944Sobrien 308698944Sobrienvoid 3087130803Smarcelset_gdbarch_deprecated_register_byte (struct gdbarch *gdbarch, 3088130803Smarcel gdbarch_deprecated_register_byte_ftype deprecated_register_byte) 308998944Sobrien{ 3090130803Smarcel gdbarch->deprecated_register_byte = deprecated_register_byte; 309198944Sobrien} 309298944Sobrien 309398944Sobrienint 3094130803Smarcelgdbarch_deprecated_register_raw_size_p (struct gdbarch *gdbarch) 309598944Sobrien{ 3096130803Smarcel gdb_assert (gdbarch != NULL); 3097130803Smarcel return gdbarch->deprecated_register_raw_size != generic_register_size; 3098130803Smarcel} 3099130803Smarcel 3100130803Smarcelint 3101130803Smarcelgdbarch_deprecated_register_raw_size (struct gdbarch *gdbarch, int reg_nr) 3102130803Smarcel{ 3103130803Smarcel gdb_assert (gdbarch != NULL); 3104130803Smarcel gdb_assert (gdbarch->deprecated_register_raw_size != NULL); 3105130803Smarcel /* Do not check predicate: gdbarch->deprecated_register_raw_size != generic_register_size, allow call. */ 310698944Sobrien if (gdbarch_debug >= 2) 3107130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_raw_size called\n"); 3108130803Smarcel return gdbarch->deprecated_register_raw_size (reg_nr); 310998944Sobrien} 311098944Sobrien 311198944Sobrienvoid 3112130803Smarcelset_gdbarch_deprecated_register_raw_size (struct gdbarch *gdbarch, 3113130803Smarcel gdbarch_deprecated_register_raw_size_ftype deprecated_register_raw_size) 311498944Sobrien{ 3115130803Smarcel gdbarch->deprecated_register_raw_size = deprecated_register_raw_size; 311698944Sobrien} 311798944Sobrien 311898944Sobrienint 3119130803Smarcelgdbarch_deprecated_register_virtual_size_p (struct gdbarch *gdbarch) 312098944Sobrien{ 3121130803Smarcel gdb_assert (gdbarch != NULL); 3122130803Smarcel return gdbarch->deprecated_register_virtual_size != generic_register_size; 3123130803Smarcel} 3124130803Smarcel 3125130803Smarcelint 3126130803Smarcelgdbarch_deprecated_register_virtual_size (struct gdbarch *gdbarch, int reg_nr) 3127130803Smarcel{ 3128130803Smarcel gdb_assert (gdbarch != NULL); 3129130803Smarcel gdb_assert (gdbarch->deprecated_register_virtual_size != NULL); 3130130803Smarcel /* Do not check predicate: gdbarch->deprecated_register_virtual_size != generic_register_size, allow call. */ 313198944Sobrien if (gdbarch_debug >= 2) 3132130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_virtual_size called\n"); 3133130803Smarcel return gdbarch->deprecated_register_virtual_size (reg_nr); 313498944Sobrien} 313598944Sobrien 313698944Sobrienvoid 3137130803Smarcelset_gdbarch_deprecated_register_virtual_size (struct gdbarch *gdbarch, 3138130803Smarcel gdbarch_deprecated_register_virtual_size_ftype deprecated_register_virtual_size) 313998944Sobrien{ 3140130803Smarcel gdbarch->deprecated_register_virtual_size = deprecated_register_virtual_size; 314198944Sobrien} 314298944Sobrien 314398944Sobrienint 3144130803Smarcelgdbarch_deprecated_max_register_raw_size_p (struct gdbarch *gdbarch) 314598944Sobrien{ 3146130803Smarcel gdb_assert (gdbarch != NULL); 3147130803Smarcel return gdbarch->deprecated_max_register_raw_size != 0; 3148130803Smarcel} 3149130803Smarcel 3150130803Smarcelint 3151130803Smarcelgdbarch_deprecated_max_register_raw_size (struct gdbarch *gdbarch) 3152130803Smarcel{ 3153130803Smarcel gdb_assert (gdbarch != NULL); 315498944Sobrien if (gdbarch_debug >= 2) 3155130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_max_register_raw_size called\n"); 3156130803Smarcel return gdbarch->deprecated_max_register_raw_size; 315798944Sobrien} 315898944Sobrien 315998944Sobrienvoid 3160130803Smarcelset_gdbarch_deprecated_max_register_raw_size (struct gdbarch *gdbarch, 3161130803Smarcel int deprecated_max_register_raw_size) 316298944Sobrien{ 3163130803Smarcel gdbarch->deprecated_max_register_raw_size = deprecated_max_register_raw_size; 316498944Sobrien} 316598944Sobrien 3166130803Smarcelint 3167130803Smarcelgdbarch_deprecated_max_register_virtual_size_p (struct gdbarch *gdbarch) 316898944Sobrien{ 3169130803Smarcel gdb_assert (gdbarch != NULL); 3170130803Smarcel return gdbarch->deprecated_max_register_virtual_size != 0; 3171130803Smarcel} 3172130803Smarcel 3173130803Smarcelint 3174130803Smarcelgdbarch_deprecated_max_register_virtual_size (struct gdbarch *gdbarch) 3175130803Smarcel{ 3176130803Smarcel gdb_assert (gdbarch != NULL); 317798944Sobrien if (gdbarch_debug >= 2) 3178130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_max_register_virtual_size called\n"); 3179130803Smarcel return gdbarch->deprecated_max_register_virtual_size; 318098944Sobrien} 318198944Sobrien 318298944Sobrienvoid 3183130803Smarcelset_gdbarch_deprecated_max_register_virtual_size (struct gdbarch *gdbarch, 3184130803Smarcel int deprecated_max_register_virtual_size) 318598944Sobrien{ 3186130803Smarcel gdbarch->deprecated_max_register_virtual_size = deprecated_max_register_virtual_size; 318798944Sobrien} 318898944Sobrien 3189130803Smarcelint 3190130803Smarcelgdbarch_unwind_dummy_id_p (struct gdbarch *gdbarch) 319198944Sobrien{ 3192130803Smarcel gdb_assert (gdbarch != NULL); 3193130803Smarcel return gdbarch->unwind_dummy_id != NULL; 3194130803Smarcel} 3195130803Smarcel 3196130803Smarcelstruct frame_id 3197130803Smarcelgdbarch_unwind_dummy_id (struct gdbarch *gdbarch, struct frame_info *info) 3198130803Smarcel{ 3199130803Smarcel gdb_assert (gdbarch != NULL); 3200130803Smarcel gdb_assert (gdbarch->unwind_dummy_id != NULL); 320198944Sobrien if (gdbarch_debug >= 2) 3202130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_unwind_dummy_id called\n"); 3203130803Smarcel return gdbarch->unwind_dummy_id (gdbarch, info); 320498944Sobrien} 320598944Sobrien 320698944Sobrienvoid 3207130803Smarcelset_gdbarch_unwind_dummy_id (struct gdbarch *gdbarch, 3208130803Smarcel gdbarch_unwind_dummy_id_ftype unwind_dummy_id) 320998944Sobrien{ 3210130803Smarcel gdbarch->unwind_dummy_id = unwind_dummy_id; 321198944Sobrien} 321298944Sobrien 3213130803Smarcelint 3214130803Smarcelgdbarch_deprecated_save_dummy_frame_tos_p (struct gdbarch *gdbarch) 3215130803Smarcel{ 3216130803Smarcel gdb_assert (gdbarch != NULL); 3217130803Smarcel return gdbarch->deprecated_save_dummy_frame_tos != NULL; 3218130803Smarcel} 3219130803Smarcel 322098944Sobrienvoid 3221130803Smarcelgdbarch_deprecated_save_dummy_frame_tos (struct gdbarch *gdbarch, CORE_ADDR sp) 322298944Sobrien{ 3223130803Smarcel gdb_assert (gdbarch != NULL); 3224130803Smarcel gdb_assert (gdbarch->deprecated_save_dummy_frame_tos != NULL); 322598944Sobrien if (gdbarch_debug >= 2) 3226130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_save_dummy_frame_tos called\n"); 3227130803Smarcel gdbarch->deprecated_save_dummy_frame_tos (sp); 322898944Sobrien} 322998944Sobrien 323098944Sobrienvoid 3231130803Smarcelset_gdbarch_deprecated_save_dummy_frame_tos (struct gdbarch *gdbarch, 3232130803Smarcel gdbarch_deprecated_save_dummy_frame_tos_ftype deprecated_save_dummy_frame_tos) 323398944Sobrien{ 3234130803Smarcel gdbarch->deprecated_save_dummy_frame_tos = deprecated_save_dummy_frame_tos; 323598944Sobrien} 323698944Sobrien 323798944Sobrienint 3238130803Smarcelgdbarch_deprecated_fp_regnum (struct gdbarch *gdbarch) 323998944Sobrien{ 3240130803Smarcel gdb_assert (gdbarch != NULL); 3241130803Smarcel /* Skip verify of deprecated_fp_regnum, invalid_p == 0 */ 324298944Sobrien if (gdbarch_debug >= 2) 3243130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_fp_regnum called\n"); 3244130803Smarcel return gdbarch->deprecated_fp_regnum; 324598944Sobrien} 324698944Sobrien 324798944Sobrienvoid 3248130803Smarcelset_gdbarch_deprecated_fp_regnum (struct gdbarch *gdbarch, 3249130803Smarcel int deprecated_fp_regnum) 325098944Sobrien{ 3251130803Smarcel gdbarch->deprecated_fp_regnum = deprecated_fp_regnum; 325298944Sobrien} 325398944Sobrien 325498944Sobrienint 3255130803Smarcelgdbarch_deprecated_target_read_fp_p (struct gdbarch *gdbarch) 325698944Sobrien{ 3257130803Smarcel gdb_assert (gdbarch != NULL); 3258130803Smarcel return gdbarch->deprecated_target_read_fp != NULL; 325998944Sobrien} 326098944Sobrien 3261130803SmarcelCORE_ADDR 3262130803Smarcelgdbarch_deprecated_target_read_fp (struct gdbarch *gdbarch) 3263130803Smarcel{ 3264130803Smarcel gdb_assert (gdbarch != NULL); 3265130803Smarcel gdb_assert (gdbarch->deprecated_target_read_fp != NULL); 3266130803Smarcel if (gdbarch_debug >= 2) 3267130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_target_read_fp called\n"); 3268130803Smarcel return gdbarch->deprecated_target_read_fp (); 3269130803Smarcel} 3270130803Smarcel 3271130803Smarcelvoid 3272130803Smarcelset_gdbarch_deprecated_target_read_fp (struct gdbarch *gdbarch, 3273130803Smarcel gdbarch_deprecated_target_read_fp_ftype deprecated_target_read_fp) 3274130803Smarcel{ 3275130803Smarcel gdbarch->deprecated_target_read_fp = deprecated_target_read_fp; 3276130803Smarcel} 3277130803Smarcel 327898944Sobrienint 3279130803Smarcelgdbarch_push_dummy_call_p (struct gdbarch *gdbarch) 328098944Sobrien{ 3281130803Smarcel gdb_assert (gdbarch != NULL); 3282130803Smarcel return gdbarch->push_dummy_call != NULL; 3283130803Smarcel} 3284130803Smarcel 3285130803SmarcelCORE_ADDR 3286130803Smarcelgdbarch_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr) 3287130803Smarcel{ 3288130803Smarcel gdb_assert (gdbarch != NULL); 3289130803Smarcel gdb_assert (gdbarch->push_dummy_call != NULL); 329098944Sobrien if (gdbarch_debug >= 2) 3291130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_push_dummy_call called\n"); 3292130803Smarcel return gdbarch->push_dummy_call (gdbarch, func_addr, regcache, bp_addr, nargs, args, sp, struct_return, struct_addr); 329398944Sobrien} 329498944Sobrien 329598944Sobrienvoid 3296130803Smarcelset_gdbarch_push_dummy_call (struct gdbarch *gdbarch, 3297130803Smarcel gdbarch_push_dummy_call_ftype push_dummy_call) 329898944Sobrien{ 3299130803Smarcel gdbarch->push_dummy_call = push_dummy_call; 330098944Sobrien} 330198944Sobrien 330298944Sobrienint 3303130803Smarcelgdbarch_deprecated_push_arguments_p (struct gdbarch *gdbarch) 330498944Sobrien{ 3305130803Smarcel gdb_assert (gdbarch != NULL); 3306130803Smarcel return gdbarch->deprecated_push_arguments != NULL; 3307130803Smarcel} 3308130803Smarcel 3309130803SmarcelCORE_ADDR 3310130803Smarcelgdbarch_deprecated_push_arguments (struct gdbarch *gdbarch, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr) 3311130803Smarcel{ 3312130803Smarcel gdb_assert (gdbarch != NULL); 3313130803Smarcel gdb_assert (gdbarch->deprecated_push_arguments != NULL); 331498944Sobrien if (gdbarch_debug >= 2) 3315130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_push_arguments called\n"); 3316130803Smarcel return gdbarch->deprecated_push_arguments (nargs, args, sp, struct_return, struct_addr); 331798944Sobrien} 331898944Sobrien 331998944Sobrienvoid 3320130803Smarcelset_gdbarch_deprecated_push_arguments (struct gdbarch *gdbarch, 3321130803Smarcel gdbarch_deprecated_push_arguments_ftype deprecated_push_arguments) 332298944Sobrien{ 3323130803Smarcel gdbarch->deprecated_push_arguments = deprecated_push_arguments; 332498944Sobrien} 332598944Sobrien 332698944Sobrienint 3327130803Smarcelgdbarch_deprecated_use_generic_dummy_frames (struct gdbarch *gdbarch) 332898944Sobrien{ 3329130803Smarcel gdb_assert (gdbarch != NULL); 3330130803Smarcel /* Skip verify of deprecated_use_generic_dummy_frames, invalid_p == 0 */ 333198944Sobrien if (gdbarch_debug >= 2) 3332130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_use_generic_dummy_frames called\n"); 3333130803Smarcel return gdbarch->deprecated_use_generic_dummy_frames; 333498944Sobrien} 333598944Sobrien 333698944Sobrienvoid 3337130803Smarcelset_gdbarch_deprecated_use_generic_dummy_frames (struct gdbarch *gdbarch, 3338130803Smarcel int deprecated_use_generic_dummy_frames) 333998944Sobrien{ 3340130803Smarcel gdbarch->deprecated_use_generic_dummy_frames = deprecated_use_generic_dummy_frames; 334198944Sobrien} 334298944Sobrien 334398944Sobrienint 3344130803Smarcelgdbarch_deprecated_push_return_address_p (struct gdbarch *gdbarch) 334598944Sobrien{ 3346130803Smarcel gdb_assert (gdbarch != NULL); 3347130803Smarcel return gdbarch->deprecated_push_return_address != NULL; 334898944Sobrien} 334998944Sobrien 3350130803SmarcelCORE_ADDR 3351130803Smarcelgdbarch_deprecated_push_return_address (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR sp) 3352130803Smarcel{ 3353130803Smarcel gdb_assert (gdbarch != NULL); 3354130803Smarcel gdb_assert (gdbarch->deprecated_push_return_address != NULL); 3355130803Smarcel if (gdbarch_debug >= 2) 3356130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_push_return_address called\n"); 3357130803Smarcel return gdbarch->deprecated_push_return_address (pc, sp); 3358130803Smarcel} 3359130803Smarcel 3360130803Smarcelvoid 3361130803Smarcelset_gdbarch_deprecated_push_return_address (struct gdbarch *gdbarch, 3362130803Smarcel gdbarch_deprecated_push_return_address_ftype deprecated_push_return_address) 3363130803Smarcel{ 3364130803Smarcel gdbarch->deprecated_push_return_address = deprecated_push_return_address; 3365130803Smarcel} 3366130803Smarcel 336798944Sobrienint 3368130803Smarcelgdbarch_deprecated_dummy_write_sp_p (struct gdbarch *gdbarch) 336998944Sobrien{ 3370130803Smarcel gdb_assert (gdbarch != NULL); 3371130803Smarcel return gdbarch->deprecated_dummy_write_sp != NULL; 3372130803Smarcel} 3373130803Smarcel 3374130803Smarcelvoid 3375130803Smarcelgdbarch_deprecated_dummy_write_sp (struct gdbarch *gdbarch, CORE_ADDR val) 3376130803Smarcel{ 3377130803Smarcel gdb_assert (gdbarch != NULL); 3378130803Smarcel gdb_assert (gdbarch->deprecated_dummy_write_sp != NULL); 337998944Sobrien if (gdbarch_debug >= 2) 3380130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_dummy_write_sp called\n"); 3381130803Smarcel gdbarch->deprecated_dummy_write_sp (val); 338298944Sobrien} 338398944Sobrien 338498944Sobrienvoid 3385130803Smarcelset_gdbarch_deprecated_dummy_write_sp (struct gdbarch *gdbarch, 3386130803Smarcel gdbarch_deprecated_dummy_write_sp_ftype deprecated_dummy_write_sp) 338798944Sobrien{ 3388130803Smarcel gdbarch->deprecated_dummy_write_sp = deprecated_dummy_write_sp; 338998944Sobrien} 339098944Sobrien 339198944Sobrienint 3392130803Smarcelgdbarch_deprecated_register_size (struct gdbarch *gdbarch) 339398944Sobrien{ 3394130803Smarcel gdb_assert (gdbarch != NULL); 339598944Sobrien if (gdbarch_debug >= 2) 3396130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_size called\n"); 3397130803Smarcel return gdbarch->deprecated_register_size; 339898944Sobrien} 339998944Sobrien 340098944Sobrienvoid 3401130803Smarcelset_gdbarch_deprecated_register_size (struct gdbarch *gdbarch, 3402130803Smarcel int deprecated_register_size) 340398944Sobrien{ 3404130803Smarcel gdbarch->deprecated_register_size = deprecated_register_size; 340598944Sobrien} 340698944Sobrien 340798944Sobrienint 340898944Sobriengdbarch_call_dummy_location (struct gdbarch *gdbarch) 340998944Sobrien{ 3410130803Smarcel gdb_assert (gdbarch != NULL); 3411130803Smarcel /* Skip verify of call_dummy_location, invalid_p == 0 */ 341298944Sobrien if (gdbarch_debug >= 2) 341398944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_call_dummy_location called\n"); 341498944Sobrien return gdbarch->call_dummy_location; 341598944Sobrien} 341698944Sobrien 341798944Sobrienvoid 341898944Sobrienset_gdbarch_call_dummy_location (struct gdbarch *gdbarch, 341998944Sobrien int call_dummy_location) 342098944Sobrien{ 342198944Sobrien gdbarch->call_dummy_location = call_dummy_location; 342298944Sobrien} 342398944Sobrien 342498944SobrienCORE_ADDR 3425130803Smarcelgdbarch_deprecated_call_dummy_start_offset (struct gdbarch *gdbarch) 342698944Sobrien{ 3427130803Smarcel gdb_assert (gdbarch != NULL); 342898944Sobrien if (gdbarch_debug >= 2) 3429130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_start_offset called\n"); 3430130803Smarcel return gdbarch->deprecated_call_dummy_start_offset; 343198944Sobrien} 343298944Sobrien 343398944Sobrienvoid 3434130803Smarcelset_gdbarch_deprecated_call_dummy_start_offset (struct gdbarch *gdbarch, 3435130803Smarcel CORE_ADDR deprecated_call_dummy_start_offset) 343698944Sobrien{ 3437130803Smarcel gdbarch->deprecated_call_dummy_start_offset = deprecated_call_dummy_start_offset; 343898944Sobrien} 343998944Sobrien 344098944SobrienCORE_ADDR 3441130803Smarcelgdbarch_deprecated_call_dummy_breakpoint_offset (struct gdbarch *gdbarch) 344298944Sobrien{ 3443130803Smarcel gdb_assert (gdbarch != NULL); 344498944Sobrien if (gdbarch_debug >= 2) 3445130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_breakpoint_offset called\n"); 3446130803Smarcel return gdbarch->deprecated_call_dummy_breakpoint_offset; 344798944Sobrien} 344898944Sobrien 344998944Sobrienvoid 3450130803Smarcelset_gdbarch_deprecated_call_dummy_breakpoint_offset (struct gdbarch *gdbarch, 3451130803Smarcel CORE_ADDR deprecated_call_dummy_breakpoint_offset) 345298944Sobrien{ 3453130803Smarcel gdbarch->deprecated_call_dummy_breakpoint_offset = deprecated_call_dummy_breakpoint_offset; 345498944Sobrien} 345598944Sobrien 3456130803Smarcelint 3457130803Smarcelgdbarch_deprecated_call_dummy_length (struct gdbarch *gdbarch) 345898944Sobrien{ 3459130803Smarcel gdb_assert (gdbarch != NULL); 346098944Sobrien if (gdbarch_debug >= 2) 3461130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_length called\n"); 3462130803Smarcel return gdbarch->deprecated_call_dummy_length; 346398944Sobrien} 346498944Sobrien 346598944Sobrienvoid 3466130803Smarcelset_gdbarch_deprecated_call_dummy_length (struct gdbarch *gdbarch, 3467130803Smarcel int deprecated_call_dummy_length) 346898944Sobrien{ 3469130803Smarcel gdbarch->deprecated_call_dummy_length = deprecated_call_dummy_length; 347098944Sobrien} 347198944Sobrien 3472130803SmarcelLONGEST * 3473130803Smarcelgdbarch_deprecated_call_dummy_words (struct gdbarch *gdbarch) 3474130803Smarcel{ 3475130803Smarcel gdb_assert (gdbarch != NULL); 3476130803Smarcel /* Skip verify of deprecated_call_dummy_words, invalid_p == 0 */ 3477130803Smarcel if (gdbarch_debug >= 2) 3478130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_words called\n"); 3479130803Smarcel return gdbarch->deprecated_call_dummy_words; 3480130803Smarcel} 3481130803Smarcel 3482130803Smarcelvoid 3483130803Smarcelset_gdbarch_deprecated_call_dummy_words (struct gdbarch *gdbarch, 3484130803Smarcel LONGEST * deprecated_call_dummy_words) 3485130803Smarcel{ 3486130803Smarcel gdbarch->deprecated_call_dummy_words = deprecated_call_dummy_words; 3487130803Smarcel} 3488130803Smarcel 348998944Sobrienint 3490130803Smarcelgdbarch_deprecated_sizeof_call_dummy_words (struct gdbarch *gdbarch) 349198944Sobrien{ 3492130803Smarcel gdb_assert (gdbarch != NULL); 3493130803Smarcel /* Skip verify of deprecated_sizeof_call_dummy_words, invalid_p == 0 */ 349498944Sobrien if (gdbarch_debug >= 2) 3495130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_sizeof_call_dummy_words called\n"); 3496130803Smarcel return gdbarch->deprecated_sizeof_call_dummy_words; 349798944Sobrien} 349898944Sobrien 349998944Sobrienvoid 3500130803Smarcelset_gdbarch_deprecated_sizeof_call_dummy_words (struct gdbarch *gdbarch, 3501130803Smarcel int deprecated_sizeof_call_dummy_words) 350298944Sobrien{ 3503130803Smarcel gdbarch->deprecated_sizeof_call_dummy_words = deprecated_sizeof_call_dummy_words; 350498944Sobrien} 350598944Sobrien 350698944Sobrienint 3507130803Smarcelgdbarch_deprecated_fix_call_dummy_p (struct gdbarch *gdbarch) 350898944Sobrien{ 3509130803Smarcel gdb_assert (gdbarch != NULL); 3510130803Smarcel return gdbarch->deprecated_fix_call_dummy != NULL; 3511130803Smarcel} 3512130803Smarcel 3513130803Smarcelvoid 3514130803Smarcelgdbarch_deprecated_fix_call_dummy (struct gdbarch *gdbarch, char *dummy, CORE_ADDR pc, CORE_ADDR fun, int nargs, struct value **args, struct type *type, int gcc_p) 3515130803Smarcel{ 3516130803Smarcel gdb_assert (gdbarch != NULL); 3517130803Smarcel gdb_assert (gdbarch->deprecated_fix_call_dummy != NULL); 351898944Sobrien if (gdbarch_debug >= 2) 3519130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_fix_call_dummy called\n"); 3520130803Smarcel gdbarch->deprecated_fix_call_dummy (dummy, pc, fun, nargs, args, type, gcc_p); 352198944Sobrien} 352298944Sobrien 352398944Sobrienvoid 3524130803Smarcelset_gdbarch_deprecated_fix_call_dummy (struct gdbarch *gdbarch, 3525130803Smarcel gdbarch_deprecated_fix_call_dummy_ftype deprecated_fix_call_dummy) 352698944Sobrien{ 3527130803Smarcel gdbarch->deprecated_fix_call_dummy = deprecated_fix_call_dummy; 352898944Sobrien} 352998944Sobrien 353098944Sobrienint 3531130803Smarcelgdbarch_push_dummy_code_p (struct gdbarch *gdbarch) 353298944Sobrien{ 3533130803Smarcel gdb_assert (gdbarch != NULL); 3534130803Smarcel return gdbarch->push_dummy_code != NULL; 3535130803Smarcel} 3536130803Smarcel 3537130803SmarcelCORE_ADDR 3538130803Smarcelgdbarch_push_dummy_code (struct gdbarch *gdbarch, CORE_ADDR sp, CORE_ADDR funaddr, int using_gcc, struct value **args, int nargs, struct type *value_type, CORE_ADDR *real_pc, CORE_ADDR *bp_addr) 3539130803Smarcel{ 3540130803Smarcel gdb_assert (gdbarch != NULL); 3541130803Smarcel gdb_assert (gdbarch->push_dummy_code != NULL); 354298944Sobrien if (gdbarch_debug >= 2) 3543130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_push_dummy_code called\n"); 3544130803Smarcel return gdbarch->push_dummy_code (gdbarch, sp, funaddr, using_gcc, args, nargs, value_type, real_pc, bp_addr); 354598944Sobrien} 354698944Sobrien 354798944Sobrienvoid 3548130803Smarcelset_gdbarch_push_dummy_code (struct gdbarch *gdbarch, 3549130803Smarcel gdbarch_push_dummy_code_ftype push_dummy_code) 355098944Sobrien{ 3551130803Smarcel gdbarch->push_dummy_code = push_dummy_code; 355298944Sobrien} 355398944Sobrien 355498944Sobrienint 3555130803Smarcelgdbarch_deprecated_push_dummy_frame_p (struct gdbarch *gdbarch) 355698944Sobrien{ 3557130803Smarcel gdb_assert (gdbarch != NULL); 3558130803Smarcel return gdbarch->deprecated_push_dummy_frame != NULL; 3559130803Smarcel} 3560130803Smarcel 3561130803Smarcelvoid 3562130803Smarcelgdbarch_deprecated_push_dummy_frame (struct gdbarch *gdbarch) 3563130803Smarcel{ 3564130803Smarcel gdb_assert (gdbarch != NULL); 3565130803Smarcel gdb_assert (gdbarch->deprecated_push_dummy_frame != NULL); 356698944Sobrien if (gdbarch_debug >= 2) 3567130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_push_dummy_frame called\n"); 3568130803Smarcel gdbarch->deprecated_push_dummy_frame (); 356998944Sobrien} 357098944Sobrien 357198944Sobrienvoid 3572130803Smarcelset_gdbarch_deprecated_push_dummy_frame (struct gdbarch *gdbarch, 3573130803Smarcel gdbarch_deprecated_push_dummy_frame_ftype deprecated_push_dummy_frame) 357498944Sobrien{ 3575130803Smarcel gdbarch->deprecated_push_dummy_frame = deprecated_push_dummy_frame; 357698944Sobrien} 357798944Sobrien 3578130803Smarcelint 3579130803Smarcelgdbarch_deprecated_do_registers_info_p (struct gdbarch *gdbarch) 358098944Sobrien{ 3581130803Smarcel gdb_assert (gdbarch != NULL); 3582130803Smarcel return gdbarch->deprecated_do_registers_info != NULL; 3583130803Smarcel} 3584130803Smarcel 3585130803Smarcelvoid 3586130803Smarcelgdbarch_deprecated_do_registers_info (struct gdbarch *gdbarch, int reg_nr, int fpregs) 3587130803Smarcel{ 3588130803Smarcel gdb_assert (gdbarch != NULL); 3589130803Smarcel gdb_assert (gdbarch->deprecated_do_registers_info != NULL); 359098944Sobrien if (gdbarch_debug >= 2) 3591130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_do_registers_info called\n"); 3592130803Smarcel gdbarch->deprecated_do_registers_info (reg_nr, fpregs); 359398944Sobrien} 359498944Sobrien 359598944Sobrienvoid 3596130803Smarcelset_gdbarch_deprecated_do_registers_info (struct gdbarch *gdbarch, 3597130803Smarcel gdbarch_deprecated_do_registers_info_ftype deprecated_do_registers_info) 359898944Sobrien{ 3599130803Smarcel gdbarch->deprecated_do_registers_info = deprecated_do_registers_info; 360098944Sobrien} 360198944Sobrien 3602130803Smarcelvoid 3603130803Smarcelgdbarch_print_registers_info (struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, int regnum, int all) 3604130803Smarcel{ 3605130803Smarcel gdb_assert (gdbarch != NULL); 3606130803Smarcel gdb_assert (gdbarch->print_registers_info != NULL); 3607130803Smarcel if (gdbarch_debug >= 2) 3608130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_print_registers_info called\n"); 3609130803Smarcel gdbarch->print_registers_info (gdbarch, file, frame, regnum, all); 3610130803Smarcel} 3611130803Smarcel 3612130803Smarcelvoid 3613130803Smarcelset_gdbarch_print_registers_info (struct gdbarch *gdbarch, 3614130803Smarcel gdbarch_print_registers_info_ftype print_registers_info) 3615130803Smarcel{ 3616130803Smarcel gdbarch->print_registers_info = print_registers_info; 3617130803Smarcel} 3618130803Smarcel 361998944Sobrienint 3620130803Smarcelgdbarch_print_float_info_p (struct gdbarch *gdbarch) 362198944Sobrien{ 3622130803Smarcel gdb_assert (gdbarch != NULL); 3623130803Smarcel return gdbarch->print_float_info != NULL; 3624130803Smarcel} 3625130803Smarcel 3626130803Smarcelvoid 3627130803Smarcelgdbarch_print_float_info (struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, const char *args) 3628130803Smarcel{ 3629130803Smarcel gdb_assert (gdbarch != NULL); 3630130803Smarcel gdb_assert (gdbarch->print_float_info != NULL); 363198944Sobrien if (gdbarch_debug >= 2) 3632130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_print_float_info called\n"); 3633130803Smarcel gdbarch->print_float_info (gdbarch, file, frame, args); 363498944Sobrien} 363598944Sobrien 363698944Sobrienvoid 3637130803Smarcelset_gdbarch_print_float_info (struct gdbarch *gdbarch, 3638130803Smarcel gdbarch_print_float_info_ftype print_float_info) 363998944Sobrien{ 3640130803Smarcel gdbarch->print_float_info = print_float_info; 364198944Sobrien} 364298944Sobrien 364398944Sobrienint 3644130803Smarcelgdbarch_print_vector_info_p (struct gdbarch *gdbarch) 364598944Sobrien{ 3646130803Smarcel gdb_assert (gdbarch != NULL); 3647130803Smarcel return gdbarch->print_vector_info != NULL; 3648130803Smarcel} 3649130803Smarcel 3650130803Smarcelvoid 3651130803Smarcelgdbarch_print_vector_info (struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, const char *args) 3652130803Smarcel{ 3653130803Smarcel gdb_assert (gdbarch != NULL); 3654130803Smarcel gdb_assert (gdbarch->print_vector_info != NULL); 365598944Sobrien if (gdbarch_debug >= 2) 3656130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_print_vector_info called\n"); 3657130803Smarcel gdbarch->print_vector_info (gdbarch, file, frame, args); 365898944Sobrien} 365998944Sobrien 366098944Sobrienvoid 3661130803Smarcelset_gdbarch_print_vector_info (struct gdbarch *gdbarch, 3662130803Smarcel gdbarch_print_vector_info_ftype print_vector_info) 366398944Sobrien{ 3664130803Smarcel gdbarch->print_vector_info = print_vector_info; 366598944Sobrien} 366698944Sobrien 366798944Sobrienint 3668130803Smarcelgdbarch_register_sim_regno (struct gdbarch *gdbarch, int reg_nr) 366998944Sobrien{ 3670130803Smarcel gdb_assert (gdbarch != NULL); 3671130803Smarcel gdb_assert (gdbarch->register_sim_regno != NULL); 367298944Sobrien if (gdbarch_debug >= 2) 3673130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_register_sim_regno called\n"); 3674130803Smarcel return gdbarch->register_sim_regno (reg_nr); 367598944Sobrien} 367698944Sobrien 367798944Sobrienvoid 3678130803Smarcelset_gdbarch_register_sim_regno (struct gdbarch *gdbarch, 3679130803Smarcel gdbarch_register_sim_regno_ftype register_sim_regno) 368098944Sobrien{ 3681130803Smarcel gdbarch->register_sim_regno = register_sim_regno; 368298944Sobrien} 368398944Sobrien 3684130803Smarcelint 3685130803Smarcelgdbarch_register_bytes_ok_p (struct gdbarch *gdbarch) 3686130803Smarcel{ 3687130803Smarcel gdb_assert (gdbarch != NULL); 3688130803Smarcel return gdbarch->register_bytes_ok != NULL; 3689130803Smarcel} 3690130803Smarcel 3691130803Smarcelint 3692130803Smarcelgdbarch_register_bytes_ok (struct gdbarch *gdbarch, long nr_bytes) 3693130803Smarcel{ 3694130803Smarcel gdb_assert (gdbarch != NULL); 3695130803Smarcel gdb_assert (gdbarch->register_bytes_ok != NULL); 3696130803Smarcel if (gdbarch_debug >= 2) 3697130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_register_bytes_ok called\n"); 3698130803Smarcel return gdbarch->register_bytes_ok (nr_bytes); 3699130803Smarcel} 3700130803Smarcel 370198944Sobrienvoid 3702130803Smarcelset_gdbarch_register_bytes_ok (struct gdbarch *gdbarch, 3703130803Smarcel gdbarch_register_bytes_ok_ftype register_bytes_ok) 370498944Sobrien{ 3705130803Smarcel gdbarch->register_bytes_ok = register_bytes_ok; 3706130803Smarcel} 3707130803Smarcel 3708130803Smarcelint 3709130803Smarcelgdbarch_cannot_fetch_register (struct gdbarch *gdbarch, int regnum) 3710130803Smarcel{ 3711130803Smarcel gdb_assert (gdbarch != NULL); 3712130803Smarcel gdb_assert (gdbarch->cannot_fetch_register != NULL); 371398944Sobrien if (gdbarch_debug >= 2) 3714130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_cannot_fetch_register called\n"); 3715130803Smarcel return gdbarch->cannot_fetch_register (regnum); 371698944Sobrien} 371798944Sobrien 371898944Sobrienvoid 3719130803Smarcelset_gdbarch_cannot_fetch_register (struct gdbarch *gdbarch, 3720130803Smarcel gdbarch_cannot_fetch_register_ftype cannot_fetch_register) 372198944Sobrien{ 3722130803Smarcel gdbarch->cannot_fetch_register = cannot_fetch_register; 372398944Sobrien} 372498944Sobrien 3725130803Smarcelint 3726130803Smarcelgdbarch_cannot_store_register (struct gdbarch *gdbarch, int regnum) 3727130803Smarcel{ 3728130803Smarcel gdb_assert (gdbarch != NULL); 3729130803Smarcel gdb_assert (gdbarch->cannot_store_register != NULL); 3730130803Smarcel if (gdbarch_debug >= 2) 3731130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_cannot_store_register called\n"); 3732130803Smarcel return gdbarch->cannot_store_register (regnum); 3733130803Smarcel} 3734130803Smarcel 373598944Sobrienvoid 3736130803Smarcelset_gdbarch_cannot_store_register (struct gdbarch *gdbarch, 3737130803Smarcel gdbarch_cannot_store_register_ftype cannot_store_register) 373898944Sobrien{ 3739130803Smarcel gdbarch->cannot_store_register = cannot_store_register; 3740130803Smarcel} 3741130803Smarcel 3742130803Smarcelint 3743130803Smarcelgdbarch_get_longjmp_target_p (struct gdbarch *gdbarch) 3744130803Smarcel{ 3745130803Smarcel gdb_assert (gdbarch != NULL); 3746130803Smarcel return gdbarch->get_longjmp_target != NULL; 3747130803Smarcel} 3748130803Smarcel 3749130803Smarcelint 3750130803Smarcelgdbarch_get_longjmp_target (struct gdbarch *gdbarch, CORE_ADDR *pc) 3751130803Smarcel{ 3752130803Smarcel gdb_assert (gdbarch != NULL); 3753130803Smarcel gdb_assert (gdbarch->get_longjmp_target != NULL); 375498944Sobrien if (gdbarch_debug >= 2) 3755130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_get_longjmp_target called\n"); 3756130803Smarcel return gdbarch->get_longjmp_target (pc); 375798944Sobrien} 375898944Sobrien 375998944Sobrienvoid 3760130803Smarcelset_gdbarch_get_longjmp_target (struct gdbarch *gdbarch, 3761130803Smarcel gdbarch_get_longjmp_target_ftype get_longjmp_target) 376298944Sobrien{ 3763130803Smarcel gdbarch->get_longjmp_target = get_longjmp_target; 376498944Sobrien} 376598944Sobrien 3766130803Smarcelint 3767130803Smarcelgdbarch_deprecated_pc_in_call_dummy_p (struct gdbarch *gdbarch) 3768130803Smarcel{ 3769130803Smarcel gdb_assert (gdbarch != NULL); 3770130803Smarcel return gdbarch->deprecated_pc_in_call_dummy != generic_pc_in_call_dummy; 3771130803Smarcel} 3772130803Smarcel 3773130803Smarcelint 3774130803Smarcelgdbarch_deprecated_pc_in_call_dummy (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR sp, CORE_ADDR frame_address) 3775130803Smarcel{ 3776130803Smarcel gdb_assert (gdbarch != NULL); 3777130803Smarcel gdb_assert (gdbarch->deprecated_pc_in_call_dummy != NULL); 3778130803Smarcel /* Do not check predicate: gdbarch->deprecated_pc_in_call_dummy != generic_pc_in_call_dummy, allow call. */ 3779130803Smarcel if (gdbarch_debug >= 2) 3780130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_pc_in_call_dummy called\n"); 3781130803Smarcel return gdbarch->deprecated_pc_in_call_dummy (pc, sp, frame_address); 3782130803Smarcel} 3783130803Smarcel 378498944Sobrienvoid 3785130803Smarcelset_gdbarch_deprecated_pc_in_call_dummy (struct gdbarch *gdbarch, 3786130803Smarcel gdbarch_deprecated_pc_in_call_dummy_ftype deprecated_pc_in_call_dummy) 378798944Sobrien{ 3788130803Smarcel gdbarch->deprecated_pc_in_call_dummy = deprecated_pc_in_call_dummy; 3789130803Smarcel} 3790130803Smarcel 3791130803Smarcelint 3792130803Smarcelgdbarch_deprecated_init_frame_pc_first_p (struct gdbarch *gdbarch) 3793130803Smarcel{ 3794130803Smarcel gdb_assert (gdbarch != NULL); 3795130803Smarcel return gdbarch->deprecated_init_frame_pc_first != NULL; 3796130803Smarcel} 3797130803Smarcel 3798130803SmarcelCORE_ADDR 3799130803Smarcelgdbarch_deprecated_init_frame_pc_first (struct gdbarch *gdbarch, int fromleaf, struct frame_info *prev) 3800130803Smarcel{ 3801130803Smarcel gdb_assert (gdbarch != NULL); 3802130803Smarcel gdb_assert (gdbarch->deprecated_init_frame_pc_first != NULL); 380398944Sobrien if (gdbarch_debug >= 2) 3804130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_init_frame_pc_first called\n"); 3805130803Smarcel return gdbarch->deprecated_init_frame_pc_first (fromleaf, prev); 380698944Sobrien} 380798944Sobrien 380898944Sobrienvoid 3809130803Smarcelset_gdbarch_deprecated_init_frame_pc_first (struct gdbarch *gdbarch, 3810130803Smarcel gdbarch_deprecated_init_frame_pc_first_ftype deprecated_init_frame_pc_first) 381198944Sobrien{ 3812130803Smarcel gdbarch->deprecated_init_frame_pc_first = deprecated_init_frame_pc_first; 381398944Sobrien} 381498944Sobrien 381598944Sobrienint 3816130803Smarcelgdbarch_deprecated_init_frame_pc_p (struct gdbarch *gdbarch) 3817130803Smarcel{ 3818130803Smarcel gdb_assert (gdbarch != NULL); 3819130803Smarcel return gdbarch->deprecated_init_frame_pc != NULL; 3820130803Smarcel} 3821130803Smarcel 3822130803SmarcelCORE_ADDR 3823130803Smarcelgdbarch_deprecated_init_frame_pc (struct gdbarch *gdbarch, int fromleaf, struct frame_info *prev) 3824130803Smarcel{ 3825130803Smarcel gdb_assert (gdbarch != NULL); 3826130803Smarcel gdb_assert (gdbarch->deprecated_init_frame_pc != NULL); 3827130803Smarcel if (gdbarch_debug >= 2) 3828130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_init_frame_pc called\n"); 3829130803Smarcel return gdbarch->deprecated_init_frame_pc (fromleaf, prev); 3830130803Smarcel} 3831130803Smarcel 3832130803Smarcelvoid 3833130803Smarcelset_gdbarch_deprecated_init_frame_pc (struct gdbarch *gdbarch, 3834130803Smarcel gdbarch_deprecated_init_frame_pc_ftype deprecated_init_frame_pc) 3835130803Smarcel{ 3836130803Smarcel gdbarch->deprecated_init_frame_pc = deprecated_init_frame_pc; 3837130803Smarcel} 3838130803Smarcel 3839130803Smarcelint 384098944Sobriengdbarch_believe_pcc_promotion (struct gdbarch *gdbarch) 384198944Sobrien{ 3842130803Smarcel gdb_assert (gdbarch != NULL); 384398944Sobrien if (gdbarch_debug >= 2) 384498944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_believe_pcc_promotion called\n"); 384598944Sobrien return gdbarch->believe_pcc_promotion; 384698944Sobrien} 384798944Sobrien 384898944Sobrienvoid 384998944Sobrienset_gdbarch_believe_pcc_promotion (struct gdbarch *gdbarch, 385098944Sobrien int believe_pcc_promotion) 385198944Sobrien{ 385298944Sobrien gdbarch->believe_pcc_promotion = believe_pcc_promotion; 385398944Sobrien} 385498944Sobrien 385598944Sobrienint 385698944Sobriengdbarch_believe_pcc_promotion_type (struct gdbarch *gdbarch) 385798944Sobrien{ 3858130803Smarcel gdb_assert (gdbarch != NULL); 385998944Sobrien if (gdbarch_debug >= 2) 386098944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_believe_pcc_promotion_type called\n"); 386198944Sobrien return gdbarch->believe_pcc_promotion_type; 386298944Sobrien} 386398944Sobrien 386498944Sobrienvoid 386598944Sobrienset_gdbarch_believe_pcc_promotion_type (struct gdbarch *gdbarch, 386698944Sobrien int believe_pcc_promotion_type) 386798944Sobrien{ 386898944Sobrien gdbarch->believe_pcc_promotion_type = believe_pcc_promotion_type; 386998944Sobrien} 387098944Sobrien 387198944Sobrienint 3872130803Smarcelgdbarch_deprecated_get_saved_register_p (struct gdbarch *gdbarch) 387398944Sobrien{ 3874130803Smarcel gdb_assert (gdbarch != NULL); 3875130803Smarcel return gdbarch->deprecated_get_saved_register != NULL; 387698944Sobrien} 387798944Sobrien 387898944Sobrienvoid 3879130803Smarcelgdbarch_deprecated_get_saved_register (struct gdbarch *gdbarch, char *raw_buffer, int *optimized, CORE_ADDR *addrp, struct frame_info *frame, int regnum, enum lval_type *lval) 388098944Sobrien{ 3881130803Smarcel gdb_assert (gdbarch != NULL); 3882130803Smarcel gdb_assert (gdbarch->deprecated_get_saved_register != NULL); 3883130803Smarcel if (gdbarch_debug >= 2) 3884130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_get_saved_register called\n"); 3885130803Smarcel gdbarch->deprecated_get_saved_register (raw_buffer, optimized, addrp, frame, regnum, lval); 388698944Sobrien} 388798944Sobrien 388898944Sobrienvoid 3889130803Smarcelset_gdbarch_deprecated_get_saved_register (struct gdbarch *gdbarch, 3890130803Smarcel gdbarch_deprecated_get_saved_register_ftype deprecated_get_saved_register) 389198944Sobrien{ 3892130803Smarcel gdbarch->deprecated_get_saved_register = deprecated_get_saved_register; 389398944Sobrien} 389498944Sobrien 3895130803Smarcelint 3896130803Smarcelgdbarch_deprecated_register_convertible_p (struct gdbarch *gdbarch) 389798944Sobrien{ 3898130803Smarcel gdb_assert (gdbarch != NULL); 3899130803Smarcel return gdbarch->deprecated_register_convertible != NULL; 390098944Sobrien} 390198944Sobrien 390298944Sobrienint 3903130803Smarcelgdbarch_deprecated_register_convertible (struct gdbarch *gdbarch, int nr) 390498944Sobrien{ 3905130803Smarcel gdb_assert (gdbarch != NULL); 3906130803Smarcel gdb_assert (gdbarch->deprecated_register_convertible != NULL); 390798944Sobrien if (gdbarch_debug >= 2) 3908130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_convertible called\n"); 3909130803Smarcel return gdbarch->deprecated_register_convertible (nr); 391098944Sobrien} 391198944Sobrien 391298944Sobrienvoid 3913130803Smarcelset_gdbarch_deprecated_register_convertible (struct gdbarch *gdbarch, 3914130803Smarcel gdbarch_deprecated_register_convertible_ftype deprecated_register_convertible) 391598944Sobrien{ 3916130803Smarcel gdbarch->deprecated_register_convertible = deprecated_register_convertible; 391798944Sobrien} 391898944Sobrien 391998944Sobrienvoid 3920130803Smarcelgdbarch_deprecated_register_convert_to_virtual (struct gdbarch *gdbarch, int regnum, struct type *type, char *from, char *to) 392198944Sobrien{ 3922130803Smarcel gdb_assert (gdbarch != NULL); 3923130803Smarcel gdb_assert (gdbarch->deprecated_register_convert_to_virtual != NULL); 392498944Sobrien if (gdbarch_debug >= 2) 3925130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_convert_to_virtual called\n"); 3926130803Smarcel gdbarch->deprecated_register_convert_to_virtual (regnum, type, from, to); 392798944Sobrien} 392898944Sobrien 392998944Sobrienvoid 3930130803Smarcelset_gdbarch_deprecated_register_convert_to_virtual (struct gdbarch *gdbarch, 3931130803Smarcel gdbarch_deprecated_register_convert_to_virtual_ftype deprecated_register_convert_to_virtual) 393298944Sobrien{ 3933130803Smarcel gdbarch->deprecated_register_convert_to_virtual = deprecated_register_convert_to_virtual; 393498944Sobrien} 393598944Sobrien 393698944Sobrienvoid 3937130803Smarcelgdbarch_deprecated_register_convert_to_raw (struct gdbarch *gdbarch, struct type *type, int regnum, const char *from, char *to) 393898944Sobrien{ 3939130803Smarcel gdb_assert (gdbarch != NULL); 3940130803Smarcel gdb_assert (gdbarch->deprecated_register_convert_to_raw != NULL); 394198944Sobrien if (gdbarch_debug >= 2) 3942130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_convert_to_raw called\n"); 3943130803Smarcel gdbarch->deprecated_register_convert_to_raw (type, regnum, from, to); 394498944Sobrien} 394598944Sobrien 394698944Sobrienvoid 3947130803Smarcelset_gdbarch_deprecated_register_convert_to_raw (struct gdbarch *gdbarch, 3948130803Smarcel gdbarch_deprecated_register_convert_to_raw_ftype deprecated_register_convert_to_raw) 394998944Sobrien{ 3950130803Smarcel gdbarch->deprecated_register_convert_to_raw = deprecated_register_convert_to_raw; 395198944Sobrien} 395298944Sobrien 395398944Sobrienint 3954130803Smarcelgdbarch_convert_register_p (struct gdbarch *gdbarch, int regnum, struct type *type) 395598944Sobrien{ 3956130803Smarcel gdb_assert (gdbarch != NULL); 3957130803Smarcel gdb_assert (gdbarch->convert_register_p != NULL); 3958130803Smarcel if (gdbarch_debug >= 2) 3959130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_convert_register_p called\n"); 3960130803Smarcel return gdbarch->convert_register_p (regnum, type); 396198944Sobrien} 396298944Sobrien 396398944Sobrienvoid 3964130803Smarcelset_gdbarch_convert_register_p (struct gdbarch *gdbarch, 3965130803Smarcel gdbarch_convert_register_p_ftype convert_register_p) 396698944Sobrien{ 3967130803Smarcel gdbarch->convert_register_p = convert_register_p; 396898944Sobrien} 396998944Sobrien 397098944Sobrienvoid 3971130803Smarcelgdbarch_register_to_value (struct gdbarch *gdbarch, struct frame_info *frame, int regnum, struct type *type, void *buf) 397298944Sobrien{ 3973130803Smarcel gdb_assert (gdbarch != NULL); 3974130803Smarcel gdb_assert (gdbarch->register_to_value != NULL); 3975130803Smarcel if (gdbarch_debug >= 2) 3976130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_register_to_value called\n"); 3977130803Smarcel gdbarch->register_to_value (frame, regnum, type, buf); 397898944Sobrien} 397998944Sobrien 3980130803Smarcelvoid 3981130803Smarcelset_gdbarch_register_to_value (struct gdbarch *gdbarch, 3982130803Smarcel gdbarch_register_to_value_ftype register_to_value) 398398944Sobrien{ 3984130803Smarcel gdbarch->register_to_value = register_to_value; 398598944Sobrien} 398698944Sobrien 398798944Sobrienvoid 3988130803Smarcelgdbarch_value_to_register (struct gdbarch *gdbarch, struct frame_info *frame, int regnum, struct type *type, const void *buf) 398998944Sobrien{ 3990130803Smarcel gdb_assert (gdbarch != NULL); 3991130803Smarcel gdb_assert (gdbarch->value_to_register != NULL); 399298944Sobrien if (gdbarch_debug >= 2) 3993130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_value_to_register called\n"); 3994130803Smarcel gdbarch->value_to_register (frame, regnum, type, buf); 399598944Sobrien} 399698944Sobrien 399798944Sobrienvoid 3998130803Smarcelset_gdbarch_value_to_register (struct gdbarch *gdbarch, 3999130803Smarcel gdbarch_value_to_register_ftype value_to_register) 400098944Sobrien{ 4001130803Smarcel gdbarch->value_to_register = value_to_register; 400298944Sobrien} 400398944Sobrien 400498944SobrienCORE_ADDR 4005130803Smarcelgdbarch_pointer_to_address (struct gdbarch *gdbarch, struct type *type, const void *buf) 400698944Sobrien{ 4007130803Smarcel gdb_assert (gdbarch != NULL); 4008130803Smarcel gdb_assert (gdbarch->pointer_to_address != NULL); 400998944Sobrien if (gdbarch_debug >= 2) 401098944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_pointer_to_address called\n"); 401198944Sobrien return gdbarch->pointer_to_address (type, buf); 401298944Sobrien} 401398944Sobrien 401498944Sobrienvoid 401598944Sobrienset_gdbarch_pointer_to_address (struct gdbarch *gdbarch, 401698944Sobrien gdbarch_pointer_to_address_ftype pointer_to_address) 401798944Sobrien{ 401898944Sobrien gdbarch->pointer_to_address = pointer_to_address; 401998944Sobrien} 402098944Sobrien 402198944Sobrienvoid 402298944Sobriengdbarch_address_to_pointer (struct gdbarch *gdbarch, struct type *type, void *buf, CORE_ADDR addr) 402398944Sobrien{ 4024130803Smarcel gdb_assert (gdbarch != NULL); 4025130803Smarcel gdb_assert (gdbarch->address_to_pointer != NULL); 402698944Sobrien if (gdbarch_debug >= 2) 402798944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_address_to_pointer called\n"); 402898944Sobrien gdbarch->address_to_pointer (type, buf, addr); 402998944Sobrien} 403098944Sobrien 403198944Sobrienvoid 403298944Sobrienset_gdbarch_address_to_pointer (struct gdbarch *gdbarch, 403398944Sobrien gdbarch_address_to_pointer_ftype address_to_pointer) 403498944Sobrien{ 403598944Sobrien gdbarch->address_to_pointer = address_to_pointer; 403698944Sobrien} 403798944Sobrien 403898944Sobrienint 403998944Sobriengdbarch_integer_to_address_p (struct gdbarch *gdbarch) 404098944Sobrien{ 4041130803Smarcel gdb_assert (gdbarch != NULL); 4042130803Smarcel return gdbarch->integer_to_address != NULL; 404398944Sobrien} 404498944Sobrien 404598944SobrienCORE_ADDR 404698944Sobriengdbarch_integer_to_address (struct gdbarch *gdbarch, struct type *type, void *buf) 404798944Sobrien{ 4048130803Smarcel gdb_assert (gdbarch != NULL); 4049130803Smarcel gdb_assert (gdbarch->integer_to_address != NULL); 405098944Sobrien if (gdbarch_debug >= 2) 405198944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_integer_to_address called\n"); 405298944Sobrien return gdbarch->integer_to_address (type, buf); 405398944Sobrien} 405498944Sobrien 405598944Sobrienvoid 405698944Sobrienset_gdbarch_integer_to_address (struct gdbarch *gdbarch, 405798944Sobrien gdbarch_integer_to_address_ftype integer_to_address) 405898944Sobrien{ 405998944Sobrien gdbarch->integer_to_address = integer_to_address; 406098944Sobrien} 406198944Sobrien 406298944Sobrienint 4063130803Smarcelgdbarch_deprecated_pop_frame_p (struct gdbarch *gdbarch) 406498944Sobrien{ 4065130803Smarcel gdb_assert (gdbarch != NULL); 4066130803Smarcel return gdbarch->deprecated_pop_frame != NULL; 406798944Sobrien} 406898944Sobrien 406998944Sobrienvoid 4070130803Smarcelgdbarch_deprecated_pop_frame (struct gdbarch *gdbarch) 407198944Sobrien{ 4072130803Smarcel gdb_assert (gdbarch != NULL); 4073130803Smarcel gdb_assert (gdbarch->deprecated_pop_frame != NULL); 407498944Sobrien if (gdbarch_debug >= 2) 4075130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_pop_frame called\n"); 4076130803Smarcel gdbarch->deprecated_pop_frame (); 407798944Sobrien} 407898944Sobrien 407998944Sobrienvoid 4080130803Smarcelset_gdbarch_deprecated_pop_frame (struct gdbarch *gdbarch, 4081130803Smarcel gdbarch_deprecated_pop_frame_ftype deprecated_pop_frame) 408298944Sobrien{ 4083130803Smarcel gdbarch->deprecated_pop_frame = deprecated_pop_frame; 408498944Sobrien} 408598944Sobrien 4086130803Smarcelint 4087130803Smarcelgdbarch_deprecated_store_struct_return_p (struct gdbarch *gdbarch) 408898944Sobrien{ 4089130803Smarcel gdb_assert (gdbarch != NULL); 4090130803Smarcel return gdbarch->deprecated_store_struct_return != NULL; 409198944Sobrien} 409298944Sobrien 409398944Sobrienvoid 4094130803Smarcelgdbarch_deprecated_store_struct_return (struct gdbarch *gdbarch, CORE_ADDR addr, CORE_ADDR sp) 409598944Sobrien{ 4096130803Smarcel gdb_assert (gdbarch != NULL); 4097130803Smarcel gdb_assert (gdbarch->deprecated_store_struct_return != NULL); 409898944Sobrien if (gdbarch_debug >= 2) 4099130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_store_struct_return called\n"); 4100130803Smarcel gdbarch->deprecated_store_struct_return (addr, sp); 410198944Sobrien} 410298944Sobrien 410398944Sobrienvoid 4104130803Smarcelset_gdbarch_deprecated_store_struct_return (struct gdbarch *gdbarch, 4105130803Smarcel gdbarch_deprecated_store_struct_return_ftype deprecated_store_struct_return) 410698944Sobrien{ 4107130803Smarcel gdbarch->deprecated_store_struct_return = deprecated_store_struct_return; 410898944Sobrien} 410998944Sobrien 411098944Sobrienint 4111130803Smarcelgdbarch_return_value_p (struct gdbarch *gdbarch) 411298944Sobrien{ 4113130803Smarcel gdb_assert (gdbarch != NULL); 4114130803Smarcel return gdbarch->return_value != NULL; 411598944Sobrien} 411698944Sobrien 4117130803Smarcelenum return_value_convention 4118130803Smarcelgdbarch_return_value (struct gdbarch *gdbarch, struct type *valtype, struct regcache *regcache, void *readbuf, const void *writebuf) 411998944Sobrien{ 4120130803Smarcel gdb_assert (gdbarch != NULL); 4121130803Smarcel gdb_assert (gdbarch->return_value != NULL); 412298944Sobrien if (gdbarch_debug >= 2) 4123130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_return_value called\n"); 4124130803Smarcel return gdbarch->return_value (gdbarch, valtype, regcache, readbuf, writebuf); 412598944Sobrien} 412698944Sobrien 412798944Sobrienvoid 4128130803Smarcelset_gdbarch_return_value (struct gdbarch *gdbarch, 4129130803Smarcel gdbarch_return_value_ftype return_value) 413098944Sobrien{ 4131130803Smarcel gdbarch->return_value = return_value; 413298944Sobrien} 413398944Sobrien 4134130803Smarcelint 4135130803Smarcelgdbarch_return_value_on_stack (struct gdbarch *gdbarch, struct type *type) 413698944Sobrien{ 4137130803Smarcel gdb_assert (gdbarch != NULL); 4138130803Smarcel gdb_assert (gdbarch->return_value_on_stack != NULL); 413998944Sobrien if (gdbarch_debug >= 2) 4140130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_return_value_on_stack called\n"); 4141130803Smarcel return gdbarch->return_value_on_stack (type); 414298944Sobrien} 414398944Sobrien 414498944Sobrienvoid 4145130803Smarcelset_gdbarch_return_value_on_stack (struct gdbarch *gdbarch, 4146130803Smarcel gdbarch_return_value_on_stack_ftype return_value_on_stack) 414798944Sobrien{ 4148130803Smarcel gdbarch->return_value_on_stack = return_value_on_stack; 414998944Sobrien} 415098944Sobrien 415198944Sobrienvoid 4152130803Smarcelgdbarch_extract_return_value (struct gdbarch *gdbarch, struct type *type, struct regcache *regcache, void *valbuf) 415398944Sobrien{ 4154130803Smarcel gdb_assert (gdbarch != NULL); 4155130803Smarcel gdb_assert (gdbarch->extract_return_value != NULL); 415698944Sobrien if (gdbarch_debug >= 2) 4157130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_extract_return_value called\n"); 4158130803Smarcel gdbarch->extract_return_value (type, regcache, valbuf); 415998944Sobrien} 416098944Sobrien 416198944Sobrienvoid 4162130803Smarcelset_gdbarch_extract_return_value (struct gdbarch *gdbarch, 4163130803Smarcel gdbarch_extract_return_value_ftype extract_return_value) 416498944Sobrien{ 4165130803Smarcel gdbarch->extract_return_value = extract_return_value; 416698944Sobrien} 416798944Sobrien 416898944Sobrienvoid 4169130803Smarcelgdbarch_store_return_value (struct gdbarch *gdbarch, struct type *type, struct regcache *regcache, const void *valbuf) 417098944Sobrien{ 4171130803Smarcel gdb_assert (gdbarch != NULL); 4172130803Smarcel gdb_assert (gdbarch->store_return_value != NULL); 417398944Sobrien if (gdbarch_debug >= 2) 417498944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_store_return_value called\n"); 4175130803Smarcel gdbarch->store_return_value (type, regcache, valbuf); 417698944Sobrien} 417798944Sobrien 417898944Sobrienvoid 417998944Sobrienset_gdbarch_store_return_value (struct gdbarch *gdbarch, 418098944Sobrien gdbarch_store_return_value_ftype store_return_value) 418198944Sobrien{ 418298944Sobrien gdbarch->store_return_value = store_return_value; 418398944Sobrien} 418498944Sobrien 4185130803Smarcelvoid 4186130803Smarcelgdbarch_deprecated_extract_return_value (struct gdbarch *gdbarch, struct type *type, char *regbuf, char *valbuf) 418798944Sobrien{ 4188130803Smarcel gdb_assert (gdbarch != NULL); 4189130803Smarcel gdb_assert (gdbarch->deprecated_extract_return_value != NULL); 4190130803Smarcel if (gdbarch_debug >= 2) 4191130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_extract_return_value called\n"); 4192130803Smarcel gdbarch->deprecated_extract_return_value (type, regbuf, valbuf); 419398944Sobrien} 419498944Sobrien 4195130803Smarcelvoid 4196130803Smarcelset_gdbarch_deprecated_extract_return_value (struct gdbarch *gdbarch, 4197130803Smarcel gdbarch_deprecated_extract_return_value_ftype deprecated_extract_return_value) 419898944Sobrien{ 4199130803Smarcel gdbarch->deprecated_extract_return_value = deprecated_extract_return_value; 4200130803Smarcel} 4201130803Smarcel 4202130803Smarcelvoid 4203130803Smarcelgdbarch_deprecated_store_return_value (struct gdbarch *gdbarch, struct type *type, char *valbuf) 4204130803Smarcel{ 4205130803Smarcel gdb_assert (gdbarch != NULL); 4206130803Smarcel gdb_assert (gdbarch->deprecated_store_return_value != NULL); 420798944Sobrien if (gdbarch_debug >= 2) 4208130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_store_return_value called\n"); 4209130803Smarcel gdbarch->deprecated_store_return_value (type, valbuf); 421098944Sobrien} 421198944Sobrien 421298944Sobrienvoid 4213130803Smarcelset_gdbarch_deprecated_store_return_value (struct gdbarch *gdbarch, 4214130803Smarcel gdbarch_deprecated_store_return_value_ftype deprecated_store_return_value) 421598944Sobrien{ 4216130803Smarcel gdbarch->deprecated_store_return_value = deprecated_store_return_value; 421798944Sobrien} 421898944Sobrien 421998944Sobrienint 422098944Sobriengdbarch_use_struct_convention (struct gdbarch *gdbarch, int gcc_p, struct type *value_type) 422198944Sobrien{ 4222130803Smarcel gdb_assert (gdbarch != NULL); 4223130803Smarcel gdb_assert (gdbarch->use_struct_convention != NULL); 422498944Sobrien if (gdbarch_debug >= 2) 422598944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_use_struct_convention called\n"); 422698944Sobrien return gdbarch->use_struct_convention (gcc_p, value_type); 422798944Sobrien} 422898944Sobrien 422998944Sobrienvoid 423098944Sobrienset_gdbarch_use_struct_convention (struct gdbarch *gdbarch, 423198944Sobrien gdbarch_use_struct_convention_ftype use_struct_convention) 423298944Sobrien{ 423398944Sobrien gdbarch->use_struct_convention = use_struct_convention; 423498944Sobrien} 423598944Sobrien 4236130803Smarcelint 4237130803Smarcelgdbarch_deprecated_extract_struct_value_address_p (struct gdbarch *gdbarch) 4238130803Smarcel{ 4239130803Smarcel gdb_assert (gdbarch != NULL); 4240130803Smarcel return gdbarch->deprecated_extract_struct_value_address != NULL; 4241130803Smarcel} 4242130803Smarcel 4243130803SmarcelCORE_ADDR 4244130803Smarcelgdbarch_deprecated_extract_struct_value_address (struct gdbarch *gdbarch, struct regcache *regcache) 4245130803Smarcel{ 4246130803Smarcel gdb_assert (gdbarch != NULL); 4247130803Smarcel gdb_assert (gdbarch->deprecated_extract_struct_value_address != NULL); 4248130803Smarcel if (gdbarch_debug >= 2) 4249130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_extract_struct_value_address called\n"); 4250130803Smarcel return gdbarch->deprecated_extract_struct_value_address (regcache); 4251130803Smarcel} 4252130803Smarcel 425398944Sobrienvoid 4254130803Smarcelset_gdbarch_deprecated_extract_struct_value_address (struct gdbarch *gdbarch, 4255130803Smarcel gdbarch_deprecated_extract_struct_value_address_ftype deprecated_extract_struct_value_address) 425698944Sobrien{ 4257130803Smarcel gdbarch->deprecated_extract_struct_value_address = deprecated_extract_struct_value_address; 4258130803Smarcel} 4259130803Smarcel 4260130803Smarcelint 4261130803Smarcelgdbarch_deprecated_frame_init_saved_regs_p (struct gdbarch *gdbarch) 4262130803Smarcel{ 4263130803Smarcel gdb_assert (gdbarch != NULL); 4264130803Smarcel return gdbarch->deprecated_frame_init_saved_regs != NULL; 4265130803Smarcel} 4266130803Smarcel 4267130803Smarcelvoid 4268130803Smarcelgdbarch_deprecated_frame_init_saved_regs (struct gdbarch *gdbarch, struct frame_info *frame) 4269130803Smarcel{ 4270130803Smarcel gdb_assert (gdbarch != NULL); 4271130803Smarcel gdb_assert (gdbarch->deprecated_frame_init_saved_regs != NULL); 427298944Sobrien if (gdbarch_debug >= 2) 4273130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_init_saved_regs called\n"); 4274130803Smarcel gdbarch->deprecated_frame_init_saved_regs (frame); 427598944Sobrien} 427698944Sobrien 427798944Sobrienvoid 4278130803Smarcelset_gdbarch_deprecated_frame_init_saved_regs (struct gdbarch *gdbarch, 4279130803Smarcel gdbarch_deprecated_frame_init_saved_regs_ftype deprecated_frame_init_saved_regs) 428098944Sobrien{ 4281130803Smarcel gdbarch->deprecated_frame_init_saved_regs = deprecated_frame_init_saved_regs; 428298944Sobrien} 428398944Sobrien 428498944Sobrienint 4285130803Smarcelgdbarch_deprecated_init_extra_frame_info_p (struct gdbarch *gdbarch) 428698944Sobrien{ 4287130803Smarcel gdb_assert (gdbarch != NULL); 4288130803Smarcel return gdbarch->deprecated_init_extra_frame_info != NULL; 428998944Sobrien} 429098944Sobrien 429198944Sobrienvoid 4292130803Smarcelgdbarch_deprecated_init_extra_frame_info (struct gdbarch *gdbarch, int fromleaf, struct frame_info *frame) 429398944Sobrien{ 4294130803Smarcel gdb_assert (gdbarch != NULL); 4295130803Smarcel gdb_assert (gdbarch->deprecated_init_extra_frame_info != NULL); 429698944Sobrien if (gdbarch_debug >= 2) 4297130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_init_extra_frame_info called\n"); 4298130803Smarcel gdbarch->deprecated_init_extra_frame_info (fromleaf, frame); 429998944Sobrien} 430098944Sobrien 430198944Sobrienvoid 4302130803Smarcelset_gdbarch_deprecated_init_extra_frame_info (struct gdbarch *gdbarch, 4303130803Smarcel gdbarch_deprecated_init_extra_frame_info_ftype deprecated_init_extra_frame_info) 430498944Sobrien{ 4305130803Smarcel gdbarch->deprecated_init_extra_frame_info = deprecated_init_extra_frame_info; 430698944Sobrien} 430798944Sobrien 430898944SobrienCORE_ADDR 430998944Sobriengdbarch_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR ip) 431098944Sobrien{ 4311130803Smarcel gdb_assert (gdbarch != NULL); 4312130803Smarcel gdb_assert (gdbarch->skip_prologue != NULL); 431398944Sobrien if (gdbarch_debug >= 2) 431498944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_skip_prologue called\n"); 431598944Sobrien return gdbarch->skip_prologue (ip); 431698944Sobrien} 431798944Sobrien 431898944Sobrienvoid 431998944Sobrienset_gdbarch_skip_prologue (struct gdbarch *gdbarch, 432098944Sobrien gdbarch_skip_prologue_ftype skip_prologue) 432198944Sobrien{ 432298944Sobrien gdbarch->skip_prologue = skip_prologue; 432398944Sobrien} 432498944Sobrien 432598944Sobrienint 432698944Sobriengdbarch_inner_than (struct gdbarch *gdbarch, CORE_ADDR lhs, CORE_ADDR rhs) 432798944Sobrien{ 4328130803Smarcel gdb_assert (gdbarch != NULL); 4329130803Smarcel gdb_assert (gdbarch->inner_than != NULL); 433098944Sobrien if (gdbarch_debug >= 2) 433198944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_inner_than called\n"); 433298944Sobrien return gdbarch->inner_than (lhs, rhs); 433398944Sobrien} 433498944Sobrien 433598944Sobrienvoid 433698944Sobrienset_gdbarch_inner_than (struct gdbarch *gdbarch, 433798944Sobrien gdbarch_inner_than_ftype inner_than) 433898944Sobrien{ 433998944Sobrien gdbarch->inner_than = inner_than; 434098944Sobrien} 434198944Sobrien 4342130803Smarcelconst unsigned char * 434398944Sobriengdbarch_breakpoint_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr, int *lenptr) 434498944Sobrien{ 4345130803Smarcel gdb_assert (gdbarch != NULL); 4346130803Smarcel gdb_assert (gdbarch->breakpoint_from_pc != NULL); 434798944Sobrien if (gdbarch_debug >= 2) 434898944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_breakpoint_from_pc called\n"); 434998944Sobrien return gdbarch->breakpoint_from_pc (pcptr, lenptr); 435098944Sobrien} 435198944Sobrien 435298944Sobrienvoid 435398944Sobrienset_gdbarch_breakpoint_from_pc (struct gdbarch *gdbarch, 435498944Sobrien gdbarch_breakpoint_from_pc_ftype breakpoint_from_pc) 435598944Sobrien{ 435698944Sobrien gdbarch->breakpoint_from_pc = breakpoint_from_pc; 435798944Sobrien} 435898944Sobrien 435998944Sobrienint 4360130803Smarcelgdbarch_adjust_breakpoint_address_p (struct gdbarch *gdbarch) 4361130803Smarcel{ 4362130803Smarcel gdb_assert (gdbarch != NULL); 4363130803Smarcel return gdbarch->adjust_breakpoint_address != NULL; 4364130803Smarcel} 4365130803Smarcel 4366130803SmarcelCORE_ADDR 4367130803Smarcelgdbarch_adjust_breakpoint_address (struct gdbarch *gdbarch, CORE_ADDR bpaddr) 4368130803Smarcel{ 4369130803Smarcel gdb_assert (gdbarch != NULL); 4370130803Smarcel gdb_assert (gdbarch->adjust_breakpoint_address != NULL); 4371130803Smarcel if (gdbarch_debug >= 2) 4372130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_adjust_breakpoint_address called\n"); 4373130803Smarcel return gdbarch->adjust_breakpoint_address (gdbarch, bpaddr); 4374130803Smarcel} 4375130803Smarcel 4376130803Smarcelvoid 4377130803Smarcelset_gdbarch_adjust_breakpoint_address (struct gdbarch *gdbarch, 4378130803Smarcel gdbarch_adjust_breakpoint_address_ftype adjust_breakpoint_address) 4379130803Smarcel{ 4380130803Smarcel gdbarch->adjust_breakpoint_address = adjust_breakpoint_address; 4381130803Smarcel} 4382130803Smarcel 4383130803Smarcelint 438498944Sobriengdbarch_memory_insert_breakpoint (struct gdbarch *gdbarch, CORE_ADDR addr, char *contents_cache) 438598944Sobrien{ 4386130803Smarcel gdb_assert (gdbarch != NULL); 4387130803Smarcel gdb_assert (gdbarch->memory_insert_breakpoint != NULL); 438898944Sobrien if (gdbarch_debug >= 2) 438998944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_memory_insert_breakpoint called\n"); 439098944Sobrien return gdbarch->memory_insert_breakpoint (addr, contents_cache); 439198944Sobrien} 439298944Sobrien 439398944Sobrienvoid 439498944Sobrienset_gdbarch_memory_insert_breakpoint (struct gdbarch *gdbarch, 439598944Sobrien gdbarch_memory_insert_breakpoint_ftype memory_insert_breakpoint) 439698944Sobrien{ 439798944Sobrien gdbarch->memory_insert_breakpoint = memory_insert_breakpoint; 439898944Sobrien} 439998944Sobrien 440098944Sobrienint 440198944Sobriengdbarch_memory_remove_breakpoint (struct gdbarch *gdbarch, CORE_ADDR addr, char *contents_cache) 440298944Sobrien{ 4403130803Smarcel gdb_assert (gdbarch != NULL); 4404130803Smarcel gdb_assert (gdbarch->memory_remove_breakpoint != NULL); 440598944Sobrien if (gdbarch_debug >= 2) 440698944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_memory_remove_breakpoint called\n"); 440798944Sobrien return gdbarch->memory_remove_breakpoint (addr, contents_cache); 440898944Sobrien} 440998944Sobrien 441098944Sobrienvoid 441198944Sobrienset_gdbarch_memory_remove_breakpoint (struct gdbarch *gdbarch, 441298944Sobrien gdbarch_memory_remove_breakpoint_ftype memory_remove_breakpoint) 441398944Sobrien{ 441498944Sobrien gdbarch->memory_remove_breakpoint = memory_remove_breakpoint; 441598944Sobrien} 441698944Sobrien 441798944SobrienCORE_ADDR 441898944Sobriengdbarch_decr_pc_after_break (struct gdbarch *gdbarch) 441998944Sobrien{ 4420130803Smarcel gdb_assert (gdbarch != NULL); 4421130803Smarcel /* Skip verify of decr_pc_after_break, invalid_p == 0 */ 442298944Sobrien if (gdbarch_debug >= 2) 442398944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_decr_pc_after_break called\n"); 442498944Sobrien return gdbarch->decr_pc_after_break; 442598944Sobrien} 442698944Sobrien 442798944Sobrienvoid 442898944Sobrienset_gdbarch_decr_pc_after_break (struct gdbarch *gdbarch, 442998944Sobrien CORE_ADDR decr_pc_after_break) 443098944Sobrien{ 443198944Sobrien gdbarch->decr_pc_after_break = decr_pc_after_break; 443298944Sobrien} 443398944Sobrien 443498944SobrienCORE_ADDR 443598944Sobriengdbarch_function_start_offset (struct gdbarch *gdbarch) 443698944Sobrien{ 4437130803Smarcel gdb_assert (gdbarch != NULL); 4438130803Smarcel /* Skip verify of function_start_offset, invalid_p == 0 */ 443998944Sobrien if (gdbarch_debug >= 2) 444098944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_function_start_offset called\n"); 444198944Sobrien return gdbarch->function_start_offset; 444298944Sobrien} 444398944Sobrien 444498944Sobrienvoid 444598944Sobrienset_gdbarch_function_start_offset (struct gdbarch *gdbarch, 444698944Sobrien CORE_ADDR function_start_offset) 444798944Sobrien{ 444898944Sobrien gdbarch->function_start_offset = function_start_offset; 444998944Sobrien} 445098944Sobrien 445198944Sobrienvoid 4452130803Smarcelgdbarch_remote_translate_xfer_address (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR gdb_addr, int gdb_len, CORE_ADDR *rem_addr, int *rem_len) 445398944Sobrien{ 4454130803Smarcel gdb_assert (gdbarch != NULL); 4455130803Smarcel gdb_assert (gdbarch->remote_translate_xfer_address != NULL); 445698944Sobrien if (gdbarch_debug >= 2) 445798944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_remote_translate_xfer_address called\n"); 4458130803Smarcel gdbarch->remote_translate_xfer_address (gdbarch, regcache, gdb_addr, gdb_len, rem_addr, rem_len); 445998944Sobrien} 446098944Sobrien 446198944Sobrienvoid 446298944Sobrienset_gdbarch_remote_translate_xfer_address (struct gdbarch *gdbarch, 446398944Sobrien gdbarch_remote_translate_xfer_address_ftype remote_translate_xfer_address) 446498944Sobrien{ 446598944Sobrien gdbarch->remote_translate_xfer_address = remote_translate_xfer_address; 446698944Sobrien} 446798944Sobrien 446898944SobrienCORE_ADDR 446998944Sobriengdbarch_frame_args_skip (struct gdbarch *gdbarch) 447098944Sobrien{ 4471130803Smarcel gdb_assert (gdbarch != NULL); 4472130803Smarcel /* Skip verify of frame_args_skip, invalid_p == 0 */ 447398944Sobrien if (gdbarch_debug >= 2) 447498944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_frame_args_skip called\n"); 447598944Sobrien return gdbarch->frame_args_skip; 447698944Sobrien} 447798944Sobrien 447898944Sobrienvoid 447998944Sobrienset_gdbarch_frame_args_skip (struct gdbarch *gdbarch, 448098944Sobrien CORE_ADDR frame_args_skip) 448198944Sobrien{ 448298944Sobrien gdbarch->frame_args_skip = frame_args_skip; 448398944Sobrien} 448498944Sobrien 448598944Sobrienint 4486130803Smarcelgdbarch_deprecated_frameless_function_invocation_p (struct gdbarch *gdbarch) 448798944Sobrien{ 4488130803Smarcel gdb_assert (gdbarch != NULL); 4489130803Smarcel return gdbarch->deprecated_frameless_function_invocation != NULL; 4490130803Smarcel} 4491130803Smarcel 4492130803Smarcelint 4493130803Smarcelgdbarch_deprecated_frameless_function_invocation (struct gdbarch *gdbarch, struct frame_info *fi) 4494130803Smarcel{ 4495130803Smarcel gdb_assert (gdbarch != NULL); 4496130803Smarcel gdb_assert (gdbarch->deprecated_frameless_function_invocation != NULL); 449798944Sobrien if (gdbarch_debug >= 2) 4498130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frameless_function_invocation called\n"); 4499130803Smarcel return gdbarch->deprecated_frameless_function_invocation (fi); 450098944Sobrien} 450198944Sobrien 450298944Sobrienvoid 4503130803Smarcelset_gdbarch_deprecated_frameless_function_invocation (struct gdbarch *gdbarch, 4504130803Smarcel gdbarch_deprecated_frameless_function_invocation_ftype deprecated_frameless_function_invocation) 450598944Sobrien{ 4506130803Smarcel gdbarch->deprecated_frameless_function_invocation = deprecated_frameless_function_invocation; 450798944Sobrien} 450898944Sobrien 4509130803Smarcelint 4510130803Smarcelgdbarch_deprecated_frame_chain_p (struct gdbarch *gdbarch) 4511130803Smarcel{ 4512130803Smarcel gdb_assert (gdbarch != NULL); 4513130803Smarcel return gdbarch->deprecated_frame_chain != NULL; 4514130803Smarcel} 4515130803Smarcel 451698944SobrienCORE_ADDR 4517130803Smarcelgdbarch_deprecated_frame_chain (struct gdbarch *gdbarch, struct frame_info *frame) 451898944Sobrien{ 4519130803Smarcel gdb_assert (gdbarch != NULL); 4520130803Smarcel gdb_assert (gdbarch->deprecated_frame_chain != NULL); 452198944Sobrien if (gdbarch_debug >= 2) 4522130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_chain called\n"); 4523130803Smarcel return gdbarch->deprecated_frame_chain (frame); 452498944Sobrien} 452598944Sobrien 452698944Sobrienvoid 4527130803Smarcelset_gdbarch_deprecated_frame_chain (struct gdbarch *gdbarch, 4528130803Smarcel gdbarch_deprecated_frame_chain_ftype deprecated_frame_chain) 452998944Sobrien{ 4530130803Smarcel gdbarch->deprecated_frame_chain = deprecated_frame_chain; 453198944Sobrien} 453298944Sobrien 453398944Sobrienint 4534130803Smarcelgdbarch_deprecated_frame_chain_valid_p (struct gdbarch *gdbarch) 453598944Sobrien{ 4536130803Smarcel gdb_assert (gdbarch != NULL); 4537130803Smarcel return gdbarch->deprecated_frame_chain_valid != NULL; 4538130803Smarcel} 4539130803Smarcel 4540130803Smarcelint 4541130803Smarcelgdbarch_deprecated_frame_chain_valid (struct gdbarch *gdbarch, CORE_ADDR chain, struct frame_info *thisframe) 4542130803Smarcel{ 4543130803Smarcel gdb_assert (gdbarch != NULL); 4544130803Smarcel gdb_assert (gdbarch->deprecated_frame_chain_valid != NULL); 454598944Sobrien if (gdbarch_debug >= 2) 4546130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_chain_valid called\n"); 4547130803Smarcel return gdbarch->deprecated_frame_chain_valid (chain, thisframe); 454898944Sobrien} 454998944Sobrien 455098944Sobrienvoid 4551130803Smarcelset_gdbarch_deprecated_frame_chain_valid (struct gdbarch *gdbarch, 4552130803Smarcel gdbarch_deprecated_frame_chain_valid_ftype deprecated_frame_chain_valid) 455398944Sobrien{ 4554130803Smarcel gdbarch->deprecated_frame_chain_valid = deprecated_frame_chain_valid; 455598944Sobrien} 455698944Sobrien 4557130803Smarcelint 4558130803Smarcelgdbarch_deprecated_frame_saved_pc_p (struct gdbarch *gdbarch) 4559130803Smarcel{ 4560130803Smarcel gdb_assert (gdbarch != NULL); 4561130803Smarcel return gdbarch->deprecated_frame_saved_pc != NULL; 4562130803Smarcel} 4563130803Smarcel 456498944SobrienCORE_ADDR 4565130803Smarcelgdbarch_deprecated_frame_saved_pc (struct gdbarch *gdbarch, struct frame_info *fi) 456698944Sobrien{ 4567130803Smarcel gdb_assert (gdbarch != NULL); 4568130803Smarcel gdb_assert (gdbarch->deprecated_frame_saved_pc != NULL); 456998944Sobrien if (gdbarch_debug >= 2) 4570130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_saved_pc called\n"); 4571130803Smarcel return gdbarch->deprecated_frame_saved_pc (fi); 457298944Sobrien} 457398944Sobrien 457498944Sobrienvoid 4575130803Smarcelset_gdbarch_deprecated_frame_saved_pc (struct gdbarch *gdbarch, 4576130803Smarcel gdbarch_deprecated_frame_saved_pc_ftype deprecated_frame_saved_pc) 457798944Sobrien{ 4578130803Smarcel gdbarch->deprecated_frame_saved_pc = deprecated_frame_saved_pc; 457998944Sobrien} 458098944Sobrien 4581130803Smarcelint 4582130803Smarcelgdbarch_unwind_pc_p (struct gdbarch *gdbarch) 4583130803Smarcel{ 4584130803Smarcel gdb_assert (gdbarch != NULL); 4585130803Smarcel return gdbarch->unwind_pc != NULL; 4586130803Smarcel} 4587130803Smarcel 458898944SobrienCORE_ADDR 4589130803Smarcelgdbarch_unwind_pc (struct gdbarch *gdbarch, struct frame_info *next_frame) 459098944Sobrien{ 4591130803Smarcel gdb_assert (gdbarch != NULL); 4592130803Smarcel gdb_assert (gdbarch->unwind_pc != NULL); 459398944Sobrien if (gdbarch_debug >= 2) 4594130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_unwind_pc called\n"); 4595130803Smarcel return gdbarch->unwind_pc (gdbarch, next_frame); 459698944Sobrien} 459798944Sobrien 459898944Sobrienvoid 4599130803Smarcelset_gdbarch_unwind_pc (struct gdbarch *gdbarch, 4600130803Smarcel gdbarch_unwind_pc_ftype unwind_pc) 460198944Sobrien{ 4602130803Smarcel gdbarch->unwind_pc = unwind_pc; 460398944Sobrien} 460498944Sobrien 4605130803Smarcelint 4606130803Smarcelgdbarch_unwind_sp_p (struct gdbarch *gdbarch) 4607130803Smarcel{ 4608130803Smarcel gdb_assert (gdbarch != NULL); 4609130803Smarcel return gdbarch->unwind_sp != NULL; 4610130803Smarcel} 4611130803Smarcel 461298944SobrienCORE_ADDR 4613130803Smarcelgdbarch_unwind_sp (struct gdbarch *gdbarch, struct frame_info *next_frame) 461498944Sobrien{ 4615130803Smarcel gdb_assert (gdbarch != NULL); 4616130803Smarcel gdb_assert (gdbarch->unwind_sp != NULL); 461798944Sobrien if (gdbarch_debug >= 2) 4618130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_unwind_sp called\n"); 4619130803Smarcel return gdbarch->unwind_sp (gdbarch, next_frame); 462098944Sobrien} 462198944Sobrien 462298944Sobrienvoid 4623130803Smarcelset_gdbarch_unwind_sp (struct gdbarch *gdbarch, 4624130803Smarcel gdbarch_unwind_sp_ftype unwind_sp) 462598944Sobrien{ 4626130803Smarcel gdbarch->unwind_sp = unwind_sp; 462798944Sobrien} 462898944Sobrien 4629130803Smarcelint 4630130803Smarcelgdbarch_deprecated_frame_args_address_p (struct gdbarch *gdbarch) 4631130803Smarcel{ 4632130803Smarcel gdb_assert (gdbarch != NULL); 4633130803Smarcel return gdbarch->deprecated_frame_args_address != get_frame_base; 4634130803Smarcel} 4635130803Smarcel 463698944SobrienCORE_ADDR 4637130803Smarcelgdbarch_deprecated_frame_args_address (struct gdbarch *gdbarch, struct frame_info *fi) 463898944Sobrien{ 4639130803Smarcel gdb_assert (gdbarch != NULL); 4640130803Smarcel gdb_assert (gdbarch->deprecated_frame_args_address != NULL); 4641130803Smarcel /* Do not check predicate: gdbarch->deprecated_frame_args_address != get_frame_base, allow call. */ 464298944Sobrien if (gdbarch_debug >= 2) 4643130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_args_address called\n"); 4644130803Smarcel return gdbarch->deprecated_frame_args_address (fi); 464598944Sobrien} 464698944Sobrien 464798944Sobrienvoid 4648130803Smarcelset_gdbarch_deprecated_frame_args_address (struct gdbarch *gdbarch, 4649130803Smarcel gdbarch_deprecated_frame_args_address_ftype deprecated_frame_args_address) 465098944Sobrien{ 4651130803Smarcel gdbarch->deprecated_frame_args_address = deprecated_frame_args_address; 465298944Sobrien} 465398944Sobrien 465498944Sobrienint 4655130803Smarcelgdbarch_deprecated_frame_locals_address_p (struct gdbarch *gdbarch) 4656130803Smarcel{ 4657130803Smarcel gdb_assert (gdbarch != NULL); 4658130803Smarcel return gdbarch->deprecated_frame_locals_address != get_frame_base; 4659130803Smarcel} 4660130803Smarcel 4661130803SmarcelCORE_ADDR 4662130803Smarcelgdbarch_deprecated_frame_locals_address (struct gdbarch *gdbarch, struct frame_info *fi) 4663130803Smarcel{ 4664130803Smarcel gdb_assert (gdbarch != NULL); 4665130803Smarcel gdb_assert (gdbarch->deprecated_frame_locals_address != NULL); 4666130803Smarcel /* Do not check predicate: gdbarch->deprecated_frame_locals_address != get_frame_base, allow call. */ 4667130803Smarcel if (gdbarch_debug >= 2) 4668130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_locals_address called\n"); 4669130803Smarcel return gdbarch->deprecated_frame_locals_address (fi); 4670130803Smarcel} 4671130803Smarcel 4672130803Smarcelvoid 4673130803Smarcelset_gdbarch_deprecated_frame_locals_address (struct gdbarch *gdbarch, 4674130803Smarcel gdbarch_deprecated_frame_locals_address_ftype deprecated_frame_locals_address) 4675130803Smarcel{ 4676130803Smarcel gdbarch->deprecated_frame_locals_address = deprecated_frame_locals_address; 4677130803Smarcel} 4678130803Smarcel 4679130803Smarcelint 4680130803Smarcelgdbarch_deprecated_saved_pc_after_call_p (struct gdbarch *gdbarch) 4681130803Smarcel{ 4682130803Smarcel gdb_assert (gdbarch != NULL); 4683130803Smarcel return gdbarch->deprecated_saved_pc_after_call != NULL; 4684130803Smarcel} 4685130803Smarcel 4686130803SmarcelCORE_ADDR 4687130803Smarcelgdbarch_deprecated_saved_pc_after_call (struct gdbarch *gdbarch, struct frame_info *frame) 4688130803Smarcel{ 4689130803Smarcel gdb_assert (gdbarch != NULL); 4690130803Smarcel gdb_assert (gdbarch->deprecated_saved_pc_after_call != NULL); 4691130803Smarcel if (gdbarch_debug >= 2) 4692130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_saved_pc_after_call called\n"); 4693130803Smarcel return gdbarch->deprecated_saved_pc_after_call (frame); 4694130803Smarcel} 4695130803Smarcel 4696130803Smarcelvoid 4697130803Smarcelset_gdbarch_deprecated_saved_pc_after_call (struct gdbarch *gdbarch, 4698130803Smarcel gdbarch_deprecated_saved_pc_after_call_ftype deprecated_saved_pc_after_call) 4699130803Smarcel{ 4700130803Smarcel gdbarch->deprecated_saved_pc_after_call = deprecated_saved_pc_after_call; 4701130803Smarcel} 4702130803Smarcel 4703130803Smarcelint 4704130803Smarcelgdbarch_frame_num_args_p (struct gdbarch *gdbarch) 4705130803Smarcel{ 4706130803Smarcel gdb_assert (gdbarch != NULL); 4707130803Smarcel return gdbarch->frame_num_args != NULL; 4708130803Smarcel} 4709130803Smarcel 4710130803Smarcelint 471198944Sobriengdbarch_frame_num_args (struct gdbarch *gdbarch, struct frame_info *frame) 471298944Sobrien{ 4713130803Smarcel gdb_assert (gdbarch != NULL); 4714130803Smarcel gdb_assert (gdbarch->frame_num_args != NULL); 471598944Sobrien if (gdbarch_debug >= 2) 471698944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_frame_num_args called\n"); 471798944Sobrien return gdbarch->frame_num_args (frame); 471898944Sobrien} 471998944Sobrien 472098944Sobrienvoid 472198944Sobrienset_gdbarch_frame_num_args (struct gdbarch *gdbarch, 472298944Sobrien gdbarch_frame_num_args_ftype frame_num_args) 472398944Sobrien{ 472498944Sobrien gdbarch->frame_num_args = frame_num_args; 472598944Sobrien} 472698944Sobrien 472798944Sobrienint 4728130803Smarcelgdbarch_deprecated_stack_align_p (struct gdbarch *gdbarch) 472998944Sobrien{ 4730130803Smarcel gdb_assert (gdbarch != NULL); 4731130803Smarcel return gdbarch->deprecated_stack_align != NULL; 473298944Sobrien} 473398944Sobrien 473498944SobrienCORE_ADDR 4735130803Smarcelgdbarch_deprecated_stack_align (struct gdbarch *gdbarch, CORE_ADDR sp) 473698944Sobrien{ 4737130803Smarcel gdb_assert (gdbarch != NULL); 4738130803Smarcel gdb_assert (gdbarch->deprecated_stack_align != NULL); 473998944Sobrien if (gdbarch_debug >= 2) 4740130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_stack_align called\n"); 4741130803Smarcel return gdbarch->deprecated_stack_align (sp); 474298944Sobrien} 474398944Sobrien 474498944Sobrienvoid 4745130803Smarcelset_gdbarch_deprecated_stack_align (struct gdbarch *gdbarch, 4746130803Smarcel gdbarch_deprecated_stack_align_ftype deprecated_stack_align) 474798944Sobrien{ 4748130803Smarcel gdbarch->deprecated_stack_align = deprecated_stack_align; 474998944Sobrien} 475098944Sobrien 475198944Sobrienint 4752130803Smarcelgdbarch_frame_align_p (struct gdbarch *gdbarch) 475398944Sobrien{ 4754130803Smarcel gdb_assert (gdbarch != NULL); 4755130803Smarcel return gdbarch->frame_align != NULL; 4756130803Smarcel} 4757130803Smarcel 4758130803SmarcelCORE_ADDR 4759130803Smarcelgdbarch_frame_align (struct gdbarch *gdbarch, CORE_ADDR address) 4760130803Smarcel{ 4761130803Smarcel gdb_assert (gdbarch != NULL); 4762130803Smarcel gdb_assert (gdbarch->frame_align != NULL); 476398944Sobrien if (gdbarch_debug >= 2) 4764130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_frame_align called\n"); 4765130803Smarcel return gdbarch->frame_align (gdbarch, address); 476698944Sobrien} 476798944Sobrien 476898944Sobrienvoid 4769130803Smarcelset_gdbarch_frame_align (struct gdbarch *gdbarch, 4770130803Smarcel gdbarch_frame_align_ftype frame_align) 477198944Sobrien{ 4772130803Smarcel gdbarch->frame_align = frame_align; 477398944Sobrien} 477498944Sobrien 477598944Sobrienint 4776130803Smarcelgdbarch_deprecated_reg_struct_has_addr_p (struct gdbarch *gdbarch) 477798944Sobrien{ 4778130803Smarcel gdb_assert (gdbarch != NULL); 4779130803Smarcel return gdbarch->deprecated_reg_struct_has_addr != NULL; 478098944Sobrien} 478198944Sobrien 478298944Sobrienint 4783130803Smarcelgdbarch_deprecated_reg_struct_has_addr (struct gdbarch *gdbarch, int gcc_p, struct type *type) 478498944Sobrien{ 4785130803Smarcel gdb_assert (gdbarch != NULL); 4786130803Smarcel gdb_assert (gdbarch->deprecated_reg_struct_has_addr != NULL); 478798944Sobrien if (gdbarch_debug >= 2) 4788130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_reg_struct_has_addr called\n"); 4789130803Smarcel return gdbarch->deprecated_reg_struct_has_addr (gcc_p, type); 479098944Sobrien} 479198944Sobrien 479298944Sobrienvoid 4793130803Smarcelset_gdbarch_deprecated_reg_struct_has_addr (struct gdbarch *gdbarch, 4794130803Smarcel gdbarch_deprecated_reg_struct_has_addr_ftype deprecated_reg_struct_has_addr) 479598944Sobrien{ 4796130803Smarcel gdbarch->deprecated_reg_struct_has_addr = deprecated_reg_struct_has_addr; 479798944Sobrien} 479898944Sobrien 479998944Sobrienint 4800130803Smarcelgdbarch_stabs_argument_has_addr (struct gdbarch *gdbarch, struct type *type) 480198944Sobrien{ 4802130803Smarcel gdb_assert (gdbarch != NULL); 4803130803Smarcel gdb_assert (gdbarch->stabs_argument_has_addr != NULL); 4804130803Smarcel if (gdbarch_debug >= 2) 4805130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_stabs_argument_has_addr called\n"); 4806130803Smarcel return gdbarch->stabs_argument_has_addr (gdbarch, type); 480798944Sobrien} 480898944Sobrien 480998944Sobrienvoid 4810130803Smarcelset_gdbarch_stabs_argument_has_addr (struct gdbarch *gdbarch, 4811130803Smarcel gdbarch_stabs_argument_has_addr_ftype stabs_argument_has_addr) 481298944Sobrien{ 4813130803Smarcel gdbarch->stabs_argument_has_addr = stabs_argument_has_addr; 4814130803Smarcel} 4815130803Smarcel 4816130803Smarcelint 4817130803Smarcelgdbarch_frame_red_zone_size (struct gdbarch *gdbarch) 4818130803Smarcel{ 4819130803Smarcel gdb_assert (gdbarch != NULL); 482098944Sobrien if (gdbarch_debug >= 2) 4821130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_frame_red_zone_size called\n"); 4822130803Smarcel return gdbarch->frame_red_zone_size; 482398944Sobrien} 482498944Sobrien 482598944Sobrienvoid 4826130803Smarcelset_gdbarch_frame_red_zone_size (struct gdbarch *gdbarch, 4827130803Smarcel int frame_red_zone_size) 482898944Sobrien{ 4829130803Smarcel gdbarch->frame_red_zone_size = frame_red_zone_size; 483098944Sobrien} 483198944Sobrien 483298944Sobrienint 483398944Sobriengdbarch_parm_boundary (struct gdbarch *gdbarch) 483498944Sobrien{ 4835130803Smarcel gdb_assert (gdbarch != NULL); 483698944Sobrien if (gdbarch_debug >= 2) 483798944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_parm_boundary called\n"); 483898944Sobrien return gdbarch->parm_boundary; 483998944Sobrien} 484098944Sobrien 484198944Sobrienvoid 484298944Sobrienset_gdbarch_parm_boundary (struct gdbarch *gdbarch, 484398944Sobrien int parm_boundary) 484498944Sobrien{ 484598944Sobrien gdbarch->parm_boundary = parm_boundary; 484698944Sobrien} 484798944Sobrien 484898944Sobrienconst struct floatformat * 484998944Sobriengdbarch_float_format (struct gdbarch *gdbarch) 485098944Sobrien{ 4851130803Smarcel gdb_assert (gdbarch != NULL); 485298944Sobrien if (gdbarch_debug >= 2) 485398944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_float_format called\n"); 485498944Sobrien return gdbarch->float_format; 485598944Sobrien} 485698944Sobrien 485798944Sobrienvoid 485898944Sobrienset_gdbarch_float_format (struct gdbarch *gdbarch, 485998944Sobrien const struct floatformat * float_format) 486098944Sobrien{ 486198944Sobrien gdbarch->float_format = float_format; 486298944Sobrien} 486398944Sobrien 486498944Sobrienconst struct floatformat * 486598944Sobriengdbarch_double_format (struct gdbarch *gdbarch) 486698944Sobrien{ 4867130803Smarcel gdb_assert (gdbarch != NULL); 486898944Sobrien if (gdbarch_debug >= 2) 486998944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_double_format called\n"); 487098944Sobrien return gdbarch->double_format; 487198944Sobrien} 487298944Sobrien 487398944Sobrienvoid 487498944Sobrienset_gdbarch_double_format (struct gdbarch *gdbarch, 487598944Sobrien const struct floatformat * double_format) 487698944Sobrien{ 487798944Sobrien gdbarch->double_format = double_format; 487898944Sobrien} 487998944Sobrien 488098944Sobrienconst struct floatformat * 488198944Sobriengdbarch_long_double_format (struct gdbarch *gdbarch) 488298944Sobrien{ 4883130803Smarcel gdb_assert (gdbarch != NULL); 488498944Sobrien if (gdbarch_debug >= 2) 488598944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_long_double_format called\n"); 488698944Sobrien return gdbarch->long_double_format; 488798944Sobrien} 488898944Sobrien 488998944Sobrienvoid 489098944Sobrienset_gdbarch_long_double_format (struct gdbarch *gdbarch, 489198944Sobrien const struct floatformat * long_double_format) 489298944Sobrien{ 489398944Sobrien gdbarch->long_double_format = long_double_format; 489498944Sobrien} 489598944Sobrien 489698944SobrienCORE_ADDR 4897130803Smarcelgdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch, CORE_ADDR addr, struct target_ops *targ) 489898944Sobrien{ 4899130803Smarcel gdb_assert (gdbarch != NULL); 4900130803Smarcel gdb_assert (gdbarch->convert_from_func_ptr_addr != NULL); 490198944Sobrien if (gdbarch_debug >= 2) 490298944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_convert_from_func_ptr_addr called\n"); 4903130803Smarcel return gdbarch->convert_from_func_ptr_addr (gdbarch, addr, targ); 490498944Sobrien} 490598944Sobrien 490698944Sobrienvoid 490798944Sobrienset_gdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch, 490898944Sobrien gdbarch_convert_from_func_ptr_addr_ftype convert_from_func_ptr_addr) 490998944Sobrien{ 491098944Sobrien gdbarch->convert_from_func_ptr_addr = convert_from_func_ptr_addr; 491198944Sobrien} 491298944Sobrien 491398944SobrienCORE_ADDR 491498944Sobriengdbarch_addr_bits_remove (struct gdbarch *gdbarch, CORE_ADDR addr) 491598944Sobrien{ 4916130803Smarcel gdb_assert (gdbarch != NULL); 4917130803Smarcel gdb_assert (gdbarch->addr_bits_remove != NULL); 491898944Sobrien if (gdbarch_debug >= 2) 491998944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_addr_bits_remove called\n"); 492098944Sobrien return gdbarch->addr_bits_remove (addr); 492198944Sobrien} 492298944Sobrien 492398944Sobrienvoid 492498944Sobrienset_gdbarch_addr_bits_remove (struct gdbarch *gdbarch, 492598944Sobrien gdbarch_addr_bits_remove_ftype addr_bits_remove) 492698944Sobrien{ 492798944Sobrien gdbarch->addr_bits_remove = addr_bits_remove; 492898944Sobrien} 492998944Sobrien 493098944SobrienCORE_ADDR 493198944Sobriengdbarch_smash_text_address (struct gdbarch *gdbarch, CORE_ADDR addr) 493298944Sobrien{ 4933130803Smarcel gdb_assert (gdbarch != NULL); 4934130803Smarcel gdb_assert (gdbarch->smash_text_address != NULL); 493598944Sobrien if (gdbarch_debug >= 2) 493698944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_smash_text_address called\n"); 493798944Sobrien return gdbarch->smash_text_address (addr); 493898944Sobrien} 493998944Sobrien 494098944Sobrienvoid 494198944Sobrienset_gdbarch_smash_text_address (struct gdbarch *gdbarch, 494298944Sobrien gdbarch_smash_text_address_ftype smash_text_address) 494398944Sobrien{ 494498944Sobrien gdbarch->smash_text_address = smash_text_address; 494598944Sobrien} 494698944Sobrien 494798944Sobrienint 494898944Sobriengdbarch_software_single_step_p (struct gdbarch *gdbarch) 494998944Sobrien{ 4950130803Smarcel gdb_assert (gdbarch != NULL); 4951130803Smarcel return gdbarch->software_single_step != NULL; 495298944Sobrien} 495398944Sobrien 495498944Sobrienvoid 495598944Sobriengdbarch_software_single_step (struct gdbarch *gdbarch, enum target_signal sig, int insert_breakpoints_p) 495698944Sobrien{ 4957130803Smarcel gdb_assert (gdbarch != NULL); 4958130803Smarcel gdb_assert (gdbarch->software_single_step != NULL); 495998944Sobrien if (gdbarch_debug >= 2) 496098944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_software_single_step called\n"); 496198944Sobrien gdbarch->software_single_step (sig, insert_breakpoints_p); 496298944Sobrien} 496398944Sobrien 496498944Sobrienvoid 496598944Sobrienset_gdbarch_software_single_step (struct gdbarch *gdbarch, 496698944Sobrien gdbarch_software_single_step_ftype software_single_step) 496798944Sobrien{ 496898944Sobrien gdbarch->software_single_step = software_single_step; 496998944Sobrien} 497098944Sobrien 497198944Sobrienint 4972130803Smarcelgdbarch_print_insn (struct gdbarch *gdbarch, bfd_vma vma, struct disassemble_info *info) 497398944Sobrien{ 4974130803Smarcel gdb_assert (gdbarch != NULL); 4975130803Smarcel gdb_assert (gdbarch->print_insn != NULL); 497698944Sobrien if (gdbarch_debug >= 2) 497798944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_print_insn called\n"); 497898944Sobrien return gdbarch->print_insn (vma, info); 497998944Sobrien} 498098944Sobrien 498198944Sobrienvoid 498298944Sobrienset_gdbarch_print_insn (struct gdbarch *gdbarch, 498398944Sobrien gdbarch_print_insn_ftype print_insn) 498498944Sobrien{ 498598944Sobrien gdbarch->print_insn = print_insn; 498698944Sobrien} 498798944Sobrien 498898944SobrienCORE_ADDR 498998944Sobriengdbarch_skip_trampoline_code (struct gdbarch *gdbarch, CORE_ADDR pc) 499098944Sobrien{ 4991130803Smarcel gdb_assert (gdbarch != NULL); 4992130803Smarcel gdb_assert (gdbarch->skip_trampoline_code != NULL); 499398944Sobrien if (gdbarch_debug >= 2) 499498944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_skip_trampoline_code called\n"); 499598944Sobrien return gdbarch->skip_trampoline_code (pc); 499698944Sobrien} 499798944Sobrien 499898944Sobrienvoid 499998944Sobrienset_gdbarch_skip_trampoline_code (struct gdbarch *gdbarch, 500098944Sobrien gdbarch_skip_trampoline_code_ftype skip_trampoline_code) 500198944Sobrien{ 500298944Sobrien gdbarch->skip_trampoline_code = skip_trampoline_code; 500398944Sobrien} 500498944Sobrien 5005130803SmarcelCORE_ADDR 5006130803Smarcelgdbarch_skip_solib_resolver (struct gdbarch *gdbarch, CORE_ADDR pc) 5007130803Smarcel{ 5008130803Smarcel gdb_assert (gdbarch != NULL); 5009130803Smarcel gdb_assert (gdbarch->skip_solib_resolver != NULL); 5010130803Smarcel if (gdbarch_debug >= 2) 5011130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_skip_solib_resolver called\n"); 5012130803Smarcel return gdbarch->skip_solib_resolver (gdbarch, pc); 5013130803Smarcel} 5014130803Smarcel 5015130803Smarcelvoid 5016130803Smarcelset_gdbarch_skip_solib_resolver (struct gdbarch *gdbarch, 5017130803Smarcel gdbarch_skip_solib_resolver_ftype skip_solib_resolver) 5018130803Smarcel{ 5019130803Smarcel gdbarch->skip_solib_resolver = skip_solib_resolver; 5020130803Smarcel} 5021130803Smarcel 502298944Sobrienint 502398944Sobriengdbarch_in_solib_call_trampoline (struct gdbarch *gdbarch, CORE_ADDR pc, char *name) 502498944Sobrien{ 5025130803Smarcel gdb_assert (gdbarch != NULL); 5026130803Smarcel gdb_assert (gdbarch->in_solib_call_trampoline != NULL); 502798944Sobrien if (gdbarch_debug >= 2) 502898944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_in_solib_call_trampoline called\n"); 502998944Sobrien return gdbarch->in_solib_call_trampoline (pc, name); 503098944Sobrien} 503198944Sobrien 503298944Sobrienvoid 503398944Sobrienset_gdbarch_in_solib_call_trampoline (struct gdbarch *gdbarch, 503498944Sobrien gdbarch_in_solib_call_trampoline_ftype in_solib_call_trampoline) 503598944Sobrien{ 503698944Sobrien gdbarch->in_solib_call_trampoline = in_solib_call_trampoline; 503798944Sobrien} 503898944Sobrien 503998944Sobrienint 5040130803Smarcelgdbarch_in_solib_return_trampoline (struct gdbarch *gdbarch, CORE_ADDR pc, char *name) 5041130803Smarcel{ 5042130803Smarcel gdb_assert (gdbarch != NULL); 5043130803Smarcel gdb_assert (gdbarch->in_solib_return_trampoline != NULL); 5044130803Smarcel if (gdbarch_debug >= 2) 5045130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_in_solib_return_trampoline called\n"); 5046130803Smarcel return gdbarch->in_solib_return_trampoline (pc, name); 5047130803Smarcel} 5048130803Smarcel 5049130803Smarcelvoid 5050130803Smarcelset_gdbarch_in_solib_return_trampoline (struct gdbarch *gdbarch, 5051130803Smarcel gdbarch_in_solib_return_trampoline_ftype in_solib_return_trampoline) 5052130803Smarcel{ 5053130803Smarcel gdbarch->in_solib_return_trampoline = in_solib_return_trampoline; 5054130803Smarcel} 5055130803Smarcel 5056130803Smarcelint 5057130803Smarcelgdbarch_pc_in_sigtramp (struct gdbarch *gdbarch, CORE_ADDR pc, char *name) 5058130803Smarcel{ 5059130803Smarcel gdb_assert (gdbarch != NULL); 5060130803Smarcel gdb_assert (gdbarch->pc_in_sigtramp != NULL); 5061130803Smarcel if (gdbarch_debug >= 2) 5062130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_pc_in_sigtramp called\n"); 5063130803Smarcel return gdbarch->pc_in_sigtramp (pc, name); 5064130803Smarcel} 5065130803Smarcel 5066130803Smarcelvoid 5067130803Smarcelset_gdbarch_pc_in_sigtramp (struct gdbarch *gdbarch, 5068130803Smarcel gdbarch_pc_in_sigtramp_ftype pc_in_sigtramp) 5069130803Smarcel{ 5070130803Smarcel gdbarch->pc_in_sigtramp = pc_in_sigtramp; 5071130803Smarcel} 5072130803Smarcel 5073130803Smarcelint 5074130803Smarcelgdbarch_sigtramp_start_p (struct gdbarch *gdbarch) 5075130803Smarcel{ 5076130803Smarcel gdb_assert (gdbarch != NULL); 5077130803Smarcel return gdbarch->sigtramp_start != NULL; 5078130803Smarcel} 5079130803Smarcel 5080130803SmarcelCORE_ADDR 5081130803Smarcelgdbarch_sigtramp_start (struct gdbarch *gdbarch, CORE_ADDR pc) 5082130803Smarcel{ 5083130803Smarcel gdb_assert (gdbarch != NULL); 5084130803Smarcel gdb_assert (gdbarch->sigtramp_start != NULL); 5085130803Smarcel if (gdbarch_debug >= 2) 5086130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_sigtramp_start called\n"); 5087130803Smarcel return gdbarch->sigtramp_start (pc); 5088130803Smarcel} 5089130803Smarcel 5090130803Smarcelvoid 5091130803Smarcelset_gdbarch_sigtramp_start (struct gdbarch *gdbarch, 5092130803Smarcel gdbarch_sigtramp_start_ftype sigtramp_start) 5093130803Smarcel{ 5094130803Smarcel gdbarch->sigtramp_start = sigtramp_start; 5095130803Smarcel} 5096130803Smarcel 5097130803Smarcelint 5098130803Smarcelgdbarch_sigtramp_end_p (struct gdbarch *gdbarch) 5099130803Smarcel{ 5100130803Smarcel gdb_assert (gdbarch != NULL); 5101130803Smarcel return gdbarch->sigtramp_end != NULL; 5102130803Smarcel} 5103130803Smarcel 5104130803SmarcelCORE_ADDR 5105130803Smarcelgdbarch_sigtramp_end (struct gdbarch *gdbarch, CORE_ADDR pc) 5106130803Smarcel{ 5107130803Smarcel gdb_assert (gdbarch != NULL); 5108130803Smarcel gdb_assert (gdbarch->sigtramp_end != NULL); 5109130803Smarcel if (gdbarch_debug >= 2) 5110130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_sigtramp_end called\n"); 5111130803Smarcel return gdbarch->sigtramp_end (pc); 5112130803Smarcel} 5113130803Smarcel 5114130803Smarcelvoid 5115130803Smarcelset_gdbarch_sigtramp_end (struct gdbarch *gdbarch, 5116130803Smarcel gdbarch_sigtramp_end_ftype sigtramp_end) 5117130803Smarcel{ 5118130803Smarcel gdbarch->sigtramp_end = sigtramp_end; 5119130803Smarcel} 5120130803Smarcel 5121130803Smarcelint 512298944Sobriengdbarch_in_function_epilogue_p (struct gdbarch *gdbarch, CORE_ADDR addr) 512398944Sobrien{ 5124130803Smarcel gdb_assert (gdbarch != NULL); 5125130803Smarcel gdb_assert (gdbarch->in_function_epilogue_p != NULL); 512698944Sobrien if (gdbarch_debug >= 2) 512798944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_in_function_epilogue_p called\n"); 512898944Sobrien return gdbarch->in_function_epilogue_p (gdbarch, addr); 512998944Sobrien} 513098944Sobrien 513198944Sobrienvoid 513298944Sobrienset_gdbarch_in_function_epilogue_p (struct gdbarch *gdbarch, 513398944Sobrien gdbarch_in_function_epilogue_p_ftype in_function_epilogue_p) 513498944Sobrien{ 513598944Sobrien gdbarch->in_function_epilogue_p = in_function_epilogue_p; 513698944Sobrien} 513798944Sobrien 513898944Sobrienchar * 513998944Sobriengdbarch_construct_inferior_arguments (struct gdbarch *gdbarch, int argc, char **argv) 514098944Sobrien{ 5141130803Smarcel gdb_assert (gdbarch != NULL); 5142130803Smarcel gdb_assert (gdbarch->construct_inferior_arguments != NULL); 514398944Sobrien if (gdbarch_debug >= 2) 514498944Sobrien fprintf_unfiltered (gdb_stdlog, "gdbarch_construct_inferior_arguments called\n"); 514598944Sobrien return gdbarch->construct_inferior_arguments (gdbarch, argc, argv); 514698944Sobrien} 514798944Sobrien 514898944Sobrienvoid 514998944Sobrienset_gdbarch_construct_inferior_arguments (struct gdbarch *gdbarch, 515098944Sobrien gdbarch_construct_inferior_arguments_ftype construct_inferior_arguments) 515198944Sobrien{ 515298944Sobrien gdbarch->construct_inferior_arguments = construct_inferior_arguments; 515398944Sobrien} 515498944Sobrien 5155130803Smarcelvoid 5156130803Smarcelgdbarch_elf_make_msymbol_special (struct gdbarch *gdbarch, asymbol *sym, struct minimal_symbol *msym) 5157130803Smarcel{ 5158130803Smarcel gdb_assert (gdbarch != NULL); 5159130803Smarcel gdb_assert (gdbarch->elf_make_msymbol_special != NULL); 5160130803Smarcel if (gdbarch_debug >= 2) 5161130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_elf_make_msymbol_special called\n"); 5162130803Smarcel gdbarch->elf_make_msymbol_special (sym, msym); 5163130803Smarcel} 5164130803Smarcel 5165130803Smarcelvoid 5166130803Smarcelset_gdbarch_elf_make_msymbol_special (struct gdbarch *gdbarch, 5167130803Smarcel gdbarch_elf_make_msymbol_special_ftype elf_make_msymbol_special) 5168130803Smarcel{ 5169130803Smarcel gdbarch->elf_make_msymbol_special = elf_make_msymbol_special; 5170130803Smarcel} 5171130803Smarcel 5172130803Smarcelvoid 5173130803Smarcelgdbarch_coff_make_msymbol_special (struct gdbarch *gdbarch, int val, struct minimal_symbol *msym) 5174130803Smarcel{ 5175130803Smarcel gdb_assert (gdbarch != NULL); 5176130803Smarcel gdb_assert (gdbarch->coff_make_msymbol_special != NULL); 5177130803Smarcel if (gdbarch_debug >= 2) 5178130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_coff_make_msymbol_special called\n"); 5179130803Smarcel gdbarch->coff_make_msymbol_special (val, msym); 5180130803Smarcel} 5181130803Smarcel 5182130803Smarcelvoid 5183130803Smarcelset_gdbarch_coff_make_msymbol_special (struct gdbarch *gdbarch, 5184130803Smarcel gdbarch_coff_make_msymbol_special_ftype coff_make_msymbol_special) 5185130803Smarcel{ 5186130803Smarcel gdbarch->coff_make_msymbol_special = coff_make_msymbol_special; 5187130803Smarcel} 5188130803Smarcel 5189130803Smarcelconst char * 5190130803Smarcelgdbarch_name_of_malloc (struct gdbarch *gdbarch) 5191130803Smarcel{ 5192130803Smarcel gdb_assert (gdbarch != NULL); 5193130803Smarcel /* Skip verify of name_of_malloc, invalid_p == 0 */ 5194130803Smarcel if (gdbarch_debug >= 2) 5195130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_name_of_malloc called\n"); 5196130803Smarcel return gdbarch->name_of_malloc; 5197130803Smarcel} 5198130803Smarcel 5199130803Smarcelvoid 5200130803Smarcelset_gdbarch_name_of_malloc (struct gdbarch *gdbarch, 5201130803Smarcel const char * name_of_malloc) 5202130803Smarcel{ 5203130803Smarcel gdbarch->name_of_malloc = name_of_malloc; 5204130803Smarcel} 5205130803Smarcel 520698944Sobrienint 5207130803Smarcelgdbarch_cannot_step_breakpoint (struct gdbarch *gdbarch) 520898944Sobrien{ 5209130803Smarcel gdb_assert (gdbarch != NULL); 5210130803Smarcel /* Skip verify of cannot_step_breakpoint, invalid_p == 0 */ 5211130803Smarcel if (gdbarch_debug >= 2) 5212130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_cannot_step_breakpoint called\n"); 5213130803Smarcel return gdbarch->cannot_step_breakpoint; 521498944Sobrien} 521598944Sobrien 521698944Sobrienvoid 5217130803Smarcelset_gdbarch_cannot_step_breakpoint (struct gdbarch *gdbarch, 5218130803Smarcel int cannot_step_breakpoint) 521998944Sobrien{ 5220130803Smarcel gdbarch->cannot_step_breakpoint = cannot_step_breakpoint; 5221130803Smarcel} 5222130803Smarcel 5223130803Smarcelint 5224130803Smarcelgdbarch_have_nonsteppable_watchpoint (struct gdbarch *gdbarch) 5225130803Smarcel{ 5226130803Smarcel gdb_assert (gdbarch != NULL); 5227130803Smarcel /* Skip verify of have_nonsteppable_watchpoint, invalid_p == 0 */ 522898944Sobrien if (gdbarch_debug >= 2) 5229130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_have_nonsteppable_watchpoint called\n"); 5230130803Smarcel return gdbarch->have_nonsteppable_watchpoint; 523198944Sobrien} 523298944Sobrien 523398944Sobrienvoid 5234130803Smarcelset_gdbarch_have_nonsteppable_watchpoint (struct gdbarch *gdbarch, 5235130803Smarcel int have_nonsteppable_watchpoint) 523698944Sobrien{ 5237130803Smarcel gdbarch->have_nonsteppable_watchpoint = have_nonsteppable_watchpoint; 523898944Sobrien} 523998944Sobrien 5240130803Smarcelint 5241130803Smarcelgdbarch_address_class_type_flags_p (struct gdbarch *gdbarch) 5242130803Smarcel{ 5243130803Smarcel gdb_assert (gdbarch != NULL); 5244130803Smarcel return gdbarch->address_class_type_flags != NULL; 5245130803Smarcel} 5246130803Smarcel 5247130803Smarcelint 5248130803Smarcelgdbarch_address_class_type_flags (struct gdbarch *gdbarch, int byte_size, int dwarf2_addr_class) 5249130803Smarcel{ 5250130803Smarcel gdb_assert (gdbarch != NULL); 5251130803Smarcel gdb_assert (gdbarch->address_class_type_flags != NULL); 5252130803Smarcel if (gdbarch_debug >= 2) 5253130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_address_class_type_flags called\n"); 5254130803Smarcel return gdbarch->address_class_type_flags (byte_size, dwarf2_addr_class); 5255130803Smarcel} 5256130803Smarcel 525798944Sobrienvoid 5258130803Smarcelset_gdbarch_address_class_type_flags (struct gdbarch *gdbarch, 5259130803Smarcel gdbarch_address_class_type_flags_ftype address_class_type_flags) 526098944Sobrien{ 5261130803Smarcel gdbarch->address_class_type_flags = address_class_type_flags; 5262130803Smarcel} 5263130803Smarcel 5264130803Smarcelint 5265130803Smarcelgdbarch_address_class_type_flags_to_name_p (struct gdbarch *gdbarch) 5266130803Smarcel{ 5267130803Smarcel gdb_assert (gdbarch != NULL); 5268130803Smarcel return gdbarch->address_class_type_flags_to_name != NULL; 5269130803Smarcel} 5270130803Smarcel 5271130803Smarcelconst char * 5272130803Smarcelgdbarch_address_class_type_flags_to_name (struct gdbarch *gdbarch, int type_flags) 5273130803Smarcel{ 5274130803Smarcel gdb_assert (gdbarch != NULL); 5275130803Smarcel gdb_assert (gdbarch->address_class_type_flags_to_name != NULL); 527698944Sobrien if (gdbarch_debug >= 2) 5277130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_address_class_type_flags_to_name called\n"); 5278130803Smarcel return gdbarch->address_class_type_flags_to_name (gdbarch, type_flags); 527998944Sobrien} 528098944Sobrien 528198944Sobrienvoid 5282130803Smarcelset_gdbarch_address_class_type_flags_to_name (struct gdbarch *gdbarch, 5283130803Smarcel gdbarch_address_class_type_flags_to_name_ftype address_class_type_flags_to_name) 528498944Sobrien{ 5285130803Smarcel gdbarch->address_class_type_flags_to_name = address_class_type_flags_to_name; 528698944Sobrien} 528798944Sobrien 5288130803Smarcelint 5289130803Smarcelgdbarch_address_class_name_to_type_flags_p (struct gdbarch *gdbarch) 5290130803Smarcel{ 5291130803Smarcel gdb_assert (gdbarch != NULL); 5292130803Smarcel return gdbarch->address_class_name_to_type_flags != NULL; 5293130803Smarcel} 5294130803Smarcel 5295130803Smarcelint 5296130803Smarcelgdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch, const char *name, int *type_flags_ptr) 5297130803Smarcel{ 5298130803Smarcel gdb_assert (gdbarch != NULL); 5299130803Smarcel gdb_assert (gdbarch->address_class_name_to_type_flags != NULL); 5300130803Smarcel if (gdbarch_debug >= 2) 5301130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_address_class_name_to_type_flags called\n"); 5302130803Smarcel return gdbarch->address_class_name_to_type_flags (gdbarch, name, type_flags_ptr); 5303130803Smarcel} 5304130803Smarcel 530598944Sobrienvoid 5306130803Smarcelset_gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch, 5307130803Smarcel gdbarch_address_class_name_to_type_flags_ftype address_class_name_to_type_flags) 530898944Sobrien{ 5309130803Smarcel gdbarch->address_class_name_to_type_flags = address_class_name_to_type_flags; 5310130803Smarcel} 5311130803Smarcel 5312130803Smarcelint 5313130803Smarcelgdbarch_register_reggroup_p (struct gdbarch *gdbarch, int regnum, struct reggroup *reggroup) 5314130803Smarcel{ 5315130803Smarcel gdb_assert (gdbarch != NULL); 5316130803Smarcel gdb_assert (gdbarch->register_reggroup_p != NULL); 531798944Sobrien if (gdbarch_debug >= 2) 5318130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_register_reggroup_p called\n"); 5319130803Smarcel return gdbarch->register_reggroup_p (gdbarch, regnum, reggroup); 532098944Sobrien} 532198944Sobrien 532298944Sobrienvoid 5323130803Smarcelset_gdbarch_register_reggroup_p (struct gdbarch *gdbarch, 5324130803Smarcel gdbarch_register_reggroup_p_ftype register_reggroup_p) 532598944Sobrien{ 5326130803Smarcel gdbarch->register_reggroup_p = register_reggroup_p; 532798944Sobrien} 532898944Sobrien 5329130803Smarcelint 5330130803Smarcelgdbarch_fetch_pointer_argument_p (struct gdbarch *gdbarch) 5331130803Smarcel{ 5332130803Smarcel gdb_assert (gdbarch != NULL); 5333130803Smarcel return gdbarch->fetch_pointer_argument != NULL; 5334130803Smarcel} 533598944Sobrien 5336130803SmarcelCORE_ADDR 5337130803Smarcelgdbarch_fetch_pointer_argument (struct gdbarch *gdbarch, struct frame_info *frame, int argi, struct type *type) 5338130803Smarcel{ 5339130803Smarcel gdb_assert (gdbarch != NULL); 5340130803Smarcel gdb_assert (gdbarch->fetch_pointer_argument != NULL); 5341130803Smarcel if (gdbarch_debug >= 2) 5342130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_fetch_pointer_argument called\n"); 5343130803Smarcel return gdbarch->fetch_pointer_argument (frame, argi, type); 5344130803Smarcel} 5345130803Smarcel 5346130803Smarcelvoid 5347130803Smarcelset_gdbarch_fetch_pointer_argument (struct gdbarch *gdbarch, 5348130803Smarcel gdbarch_fetch_pointer_argument_ftype fetch_pointer_argument) 5349130803Smarcel{ 5350130803Smarcel gdbarch->fetch_pointer_argument = fetch_pointer_argument; 5351130803Smarcel} 5352130803Smarcel 5353130803Smarcelint 5354130803Smarcelgdbarch_regset_from_core_section_p (struct gdbarch *gdbarch) 5355130803Smarcel{ 5356130803Smarcel gdb_assert (gdbarch != NULL); 5357130803Smarcel return gdbarch->regset_from_core_section != NULL; 5358130803Smarcel} 5359130803Smarcel 5360130803Smarcelconst struct regset * 5361130803Smarcelgdbarch_regset_from_core_section (struct gdbarch *gdbarch, const char *sect_name, size_t sect_size) 5362130803Smarcel{ 5363130803Smarcel gdb_assert (gdbarch != NULL); 5364130803Smarcel gdb_assert (gdbarch->regset_from_core_section != NULL); 5365130803Smarcel if (gdbarch_debug >= 2) 5366130803Smarcel fprintf_unfiltered (gdb_stdlog, "gdbarch_regset_from_core_section called\n"); 5367130803Smarcel return gdbarch->regset_from_core_section (gdbarch, sect_name, sect_size); 5368130803Smarcel} 5369130803Smarcel 5370130803Smarcelvoid 5371130803Smarcelset_gdbarch_regset_from_core_section (struct gdbarch *gdbarch, 5372130803Smarcel gdbarch_regset_from_core_section_ftype regset_from_core_section) 5373130803Smarcel{ 5374130803Smarcel gdbarch->regset_from_core_section = regset_from_core_section; 5375130803Smarcel} 5376130803Smarcel 5377130803Smarcel 537898944Sobrien/* Keep a registry of per-architecture data-pointers required by GDB 537998944Sobrien modules. */ 538098944Sobrien 538198944Sobrienstruct gdbarch_data 538298944Sobrien{ 538398944Sobrien unsigned index; 5384130803Smarcel int init_p; 538598944Sobrien gdbarch_data_init_ftype *init; 538698944Sobrien}; 538798944Sobrien 538898944Sobrienstruct gdbarch_data_registration 538998944Sobrien{ 539098944Sobrien struct gdbarch_data *data; 539198944Sobrien struct gdbarch_data_registration *next; 539298944Sobrien}; 539398944Sobrien 539498944Sobrienstruct gdbarch_data_registry 539598944Sobrien{ 539698944Sobrien unsigned nr; 539798944Sobrien struct gdbarch_data_registration *registrations; 539898944Sobrien}; 539998944Sobrien 540098944Sobrienstruct gdbarch_data_registry gdbarch_data_registry = 540198944Sobrien{ 540298944Sobrien 0, NULL, 540398944Sobrien}; 540498944Sobrien 540598944Sobrienstruct gdbarch_data * 5406130803Smarcelregister_gdbarch_data (gdbarch_data_init_ftype *init) 540798944Sobrien{ 540898944Sobrien struct gdbarch_data_registration **curr; 5409130803Smarcel /* Append the new registraration. */ 541098944Sobrien for (curr = &gdbarch_data_registry.registrations; 541198944Sobrien (*curr) != NULL; 541298944Sobrien curr = &(*curr)->next); 541398944Sobrien (*curr) = XMALLOC (struct gdbarch_data_registration); 541498944Sobrien (*curr)->next = NULL; 541598944Sobrien (*curr)->data = XMALLOC (struct gdbarch_data); 541698944Sobrien (*curr)->data->index = gdbarch_data_registry.nr++; 541798944Sobrien (*curr)->data->init = init; 5418130803Smarcel (*curr)->data->init_p = 1; 541998944Sobrien return (*curr)->data; 542098944Sobrien} 542198944Sobrien 542298944Sobrien 542398944Sobrien/* Create/delete the gdbarch data vector. */ 542498944Sobrien 542546283Sdfrstatic void 542698944Sobrienalloc_gdbarch_data (struct gdbarch *gdbarch) 542746283Sdfr{ 542898944Sobrien gdb_assert (gdbarch->data == NULL); 542998944Sobrien gdbarch->nr_data = gdbarch_data_registry.nr; 5430130803Smarcel gdbarch->data = GDBARCH_OBSTACK_CALLOC (gdbarch, gdbarch->nr_data, void *); 543146283Sdfr} 543246283Sdfr 5433130803Smarcel/* Initialize the current value of the specified per-architecture 543498944Sobrien data-pointer. */ 543546283Sdfr 543698944Sobrienvoid 543798944Sobrienset_gdbarch_data (struct gdbarch *gdbarch, 543898944Sobrien struct gdbarch_data *data, 543998944Sobrien void *pointer) 544098944Sobrien{ 544198944Sobrien gdb_assert (data->index < gdbarch->nr_data); 5442130803Smarcel gdb_assert (gdbarch->data[data->index] == NULL); 544398944Sobrien gdbarch->data[data->index] = pointer; 544498944Sobrien} 544546283Sdfr 544698944Sobrien/* Return the current value of the specified per-architecture 544798944Sobrien data-pointer. */ 544846283Sdfr 544998944Sobrienvoid * 5450130803Smarcelgdbarch_data (struct gdbarch *gdbarch, struct gdbarch_data *data) 545198944Sobrien{ 5452130803Smarcel gdb_assert (data->index < gdbarch->nr_data); 5453130803Smarcel /* The data-pointer isn't initialized, call init() to get a value but 5454130803Smarcel only if the architecture initializaiton has completed. Otherwise 5455130803Smarcel punt - hope that the caller knows what they are doing. */ 5456130803Smarcel if (gdbarch->data[data->index] == NULL 5457130803Smarcel && gdbarch->initialized_p) 5458130803Smarcel { 5459130803Smarcel /* Be careful to detect an initialization cycle. */ 5460130803Smarcel gdb_assert (data->init_p); 5461130803Smarcel data->init_p = 0; 5462130803Smarcel gdb_assert (data->init != NULL); 5463130803Smarcel gdbarch->data[data->index] = data->init (gdbarch); 5464130803Smarcel data->init_p = 1; 5465130803Smarcel gdb_assert (gdbarch->data[data->index] != NULL); 5466130803Smarcel } 5467130803Smarcel return gdbarch->data[data->index]; 546898944Sobrien} 546998944Sobrien 547098944Sobrien 547198944Sobrien 547298944Sobrien/* Keep a registry of swapped data required by GDB modules. */ 547398944Sobrien 547498944Sobrienstruct gdbarch_swap 547598944Sobrien{ 547698944Sobrien void *swap; 547798944Sobrien struct gdbarch_swap_registration *source; 547898944Sobrien struct gdbarch_swap *next; 547998944Sobrien}; 548098944Sobrien 548198944Sobrienstruct gdbarch_swap_registration 548298944Sobrien{ 548398944Sobrien void *data; 548498944Sobrien unsigned long sizeof_data; 548598944Sobrien gdbarch_swap_ftype *init; 548698944Sobrien struct gdbarch_swap_registration *next; 548798944Sobrien}; 548898944Sobrien 548998944Sobrienstruct gdbarch_swap_registry 549098944Sobrien{ 549198944Sobrien int nr; 549298944Sobrien struct gdbarch_swap_registration *registrations; 549398944Sobrien}; 549498944Sobrien 549598944Sobrienstruct gdbarch_swap_registry gdbarch_swap_registry = 549698944Sobrien{ 549798944Sobrien 0, NULL, 549898944Sobrien}; 549998944Sobrien 550098944Sobrienvoid 5501130803Smarceldeprecated_register_gdbarch_swap (void *data, 5502130803Smarcel unsigned long sizeof_data, 5503130803Smarcel gdbarch_swap_ftype *init) 550498944Sobrien{ 550598944Sobrien struct gdbarch_swap_registration **rego; 550698944Sobrien for (rego = &gdbarch_swap_registry.registrations; 550798944Sobrien (*rego) != NULL; 550898944Sobrien rego = &(*rego)->next); 550998944Sobrien (*rego) = XMALLOC (struct gdbarch_swap_registration); 551098944Sobrien (*rego)->next = NULL; 551198944Sobrien (*rego)->init = init; 551298944Sobrien (*rego)->data = data; 551398944Sobrien (*rego)->sizeof_data = sizeof_data; 551498944Sobrien} 551598944Sobrien 551646283Sdfrstatic void 5517130803Smarcelcurrent_gdbarch_swap_init_hack (void) 551846283Sdfr{ 551998944Sobrien struct gdbarch_swap_registration *rego; 5520130803Smarcel struct gdbarch_swap **curr = ¤t_gdbarch->swap; 552198944Sobrien for (rego = gdbarch_swap_registry.registrations; 552298944Sobrien rego != NULL; 552398944Sobrien rego = rego->next) 552446283Sdfr { 552598944Sobrien if (rego->data != NULL) 552698944Sobrien { 5527130803Smarcel (*curr) = GDBARCH_OBSTACK_ZALLOC (current_gdbarch, 5528130803Smarcel struct gdbarch_swap); 552998944Sobrien (*curr)->source = rego; 5530130803Smarcel (*curr)->swap = gdbarch_obstack_zalloc (current_gdbarch, 5531130803Smarcel rego->sizeof_data); 553298944Sobrien (*curr)->next = NULL; 553398944Sobrien curr = &(*curr)->next; 553498944Sobrien } 553598944Sobrien if (rego->init != NULL) 553698944Sobrien rego->init (); 553746283Sdfr } 553846283Sdfr} 553946283Sdfr 5540130803Smarcelstatic struct gdbarch * 5541130803Smarcelcurrent_gdbarch_swap_out_hack (void) 554246283Sdfr{ 5543130803Smarcel struct gdbarch *old_gdbarch = current_gdbarch; 554498944Sobrien struct gdbarch_swap *curr; 5545130803Smarcel 5546130803Smarcel gdb_assert (old_gdbarch != NULL); 5547130803Smarcel for (curr = old_gdbarch->swap; 554898944Sobrien curr != NULL; 554998944Sobrien curr = curr->next) 5550130803Smarcel { 5551130803Smarcel memcpy (curr->swap, curr->source->data, curr->source->sizeof_data); 5552130803Smarcel memset (curr->source->data, 0, curr->source->sizeof_data); 5553130803Smarcel } 5554130803Smarcel current_gdbarch = NULL; 5555130803Smarcel return old_gdbarch; 555646283Sdfr} 555746283Sdfr 555846283Sdfrstatic void 5559130803Smarcelcurrent_gdbarch_swap_in_hack (struct gdbarch *new_gdbarch) 556046283Sdfr{ 556198944Sobrien struct gdbarch_swap *curr; 5562130803Smarcel 5563130803Smarcel gdb_assert (current_gdbarch == NULL); 5564130803Smarcel for (curr = new_gdbarch->swap; 556598944Sobrien curr != NULL; 556698944Sobrien curr = curr->next) 556798944Sobrien memcpy (curr->source->data, curr->swap, curr->source->sizeof_data); 5568130803Smarcel current_gdbarch = new_gdbarch; 556946283Sdfr} 557046283Sdfr 557198944Sobrien 557298944Sobrien/* Keep a registry of the architectures known by GDB. */ 557398944Sobrien 557498944Sobrienstruct gdbarch_registration 557598944Sobrien{ 557698944Sobrien enum bfd_architecture bfd_architecture; 557798944Sobrien gdbarch_init_ftype *init; 557898944Sobrien gdbarch_dump_tdep_ftype *dump_tdep; 557998944Sobrien struct gdbarch_list *arches; 558098944Sobrien struct gdbarch_registration *next; 558198944Sobrien}; 558298944Sobrien 558398944Sobrienstatic struct gdbarch_registration *gdbarch_registry = NULL; 558498944Sobrien 558546283Sdfrstatic void 558698944Sobrienappend_name (const char ***buf, int *nr, const char *name) 558746283Sdfr{ 558898944Sobrien *buf = xrealloc (*buf, sizeof (char**) * (*nr + 1)); 558998944Sobrien (*buf)[*nr] = name; 559098944Sobrien *nr += 1; 559198944Sobrien} 559298944Sobrien 559398944Sobrienconst char ** 559498944Sobriengdbarch_printable_names (void) 559598944Sobrien{ 5596130803Smarcel /* Accumulate a list of names based on the registed list of 5597130803Smarcel architectures. */ 5598130803Smarcel enum bfd_architecture a; 5599130803Smarcel int nr_arches = 0; 5600130803Smarcel const char **arches = NULL; 5601130803Smarcel struct gdbarch_registration *rego; 5602130803Smarcel for (rego = gdbarch_registry; 5603130803Smarcel rego != NULL; 5604130803Smarcel rego = rego->next) 560546283Sdfr { 5606130803Smarcel const struct bfd_arch_info *ap; 5607130803Smarcel ap = bfd_lookup_arch (rego->bfd_architecture, 0); 5608130803Smarcel if (ap == NULL) 5609130803Smarcel internal_error (__FILE__, __LINE__, 5610130803Smarcel "gdbarch_architecture_names: multi-arch unknown"); 5611130803Smarcel do 5612130803Smarcel { 5613130803Smarcel append_name (&arches, &nr_arches, ap->printable_name); 5614130803Smarcel ap = ap->next; 5615130803Smarcel } 5616130803Smarcel while (ap != NULL); 561746283Sdfr } 5618130803Smarcel append_name (&arches, &nr_arches, NULL); 5619130803Smarcel return arches; 562046283Sdfr} 562146283Sdfr 562298944Sobrien 562346283Sdfrvoid 562498944Sobriengdbarch_register (enum bfd_architecture bfd_architecture, 562598944Sobrien gdbarch_init_ftype *init, 562698944Sobrien gdbarch_dump_tdep_ftype *dump_tdep) 562746283Sdfr{ 562898944Sobrien struct gdbarch_registration **curr; 562998944Sobrien const struct bfd_arch_info *bfd_arch_info; 563098944Sobrien /* Check that BFD recognizes this architecture */ 563198944Sobrien bfd_arch_info = bfd_lookup_arch (bfd_architecture, 0); 563298944Sobrien if (bfd_arch_info == NULL) 563398944Sobrien { 563498944Sobrien internal_error (__FILE__, __LINE__, 563598944Sobrien "gdbarch: Attempt to register unknown architecture (%d)", 563698944Sobrien bfd_architecture); 563798944Sobrien } 563898944Sobrien /* Check that we haven't seen this architecture before */ 563998944Sobrien for (curr = &gdbarch_registry; 564098944Sobrien (*curr) != NULL; 564198944Sobrien curr = &(*curr)->next) 564298944Sobrien { 564398944Sobrien if (bfd_architecture == (*curr)->bfd_architecture) 564498944Sobrien internal_error (__FILE__, __LINE__, 564598944Sobrien "gdbarch: Duplicate registraration of architecture (%s)", 564698944Sobrien bfd_arch_info->printable_name); 564798944Sobrien } 564898944Sobrien /* log it */ 564998944Sobrien if (gdbarch_debug) 565098944Sobrien fprintf_unfiltered (gdb_stdlog, "register_gdbarch_init (%s, 0x%08lx)\n", 565198944Sobrien bfd_arch_info->printable_name, 565298944Sobrien (long) init); 565398944Sobrien /* Append it */ 565498944Sobrien (*curr) = XMALLOC (struct gdbarch_registration); 565598944Sobrien (*curr)->bfd_architecture = bfd_architecture; 565698944Sobrien (*curr)->init = init; 565798944Sobrien (*curr)->dump_tdep = dump_tdep; 565898944Sobrien (*curr)->arches = NULL; 565998944Sobrien (*curr)->next = NULL; 566046283Sdfr} 566146283Sdfr 566298944Sobrienvoid 566398944Sobrienregister_gdbarch_init (enum bfd_architecture bfd_architecture, 566498944Sobrien gdbarch_init_ftype *init) 566546283Sdfr{ 566698944Sobrien gdbarch_register (bfd_architecture, init, NULL); 566798944Sobrien} 566898944Sobrien 566998944Sobrien 567098944Sobrien/* Look for an architecture using gdbarch_info. Base search on only 567198944Sobrien BFD_ARCH_INFO and BYTE_ORDER. */ 567298944Sobrien 567398944Sobrienstruct gdbarch_list * 567498944Sobriengdbarch_list_lookup_by_info (struct gdbarch_list *arches, 567598944Sobrien const struct gdbarch_info *info) 567698944Sobrien{ 567798944Sobrien for (; arches != NULL; arches = arches->next) 567846283Sdfr { 567998944Sobrien if (info->bfd_arch_info != arches->gdbarch->bfd_arch_info) 568098944Sobrien continue; 568198944Sobrien if (info->byte_order != arches->gdbarch->byte_order) 568298944Sobrien continue; 5683130803Smarcel if (info->osabi != arches->gdbarch->osabi) 5684130803Smarcel continue; 568598944Sobrien return arches; 568646283Sdfr } 568798944Sobrien return NULL; 568898944Sobrien} 568998944Sobrien 569098944Sobrien 5691130803Smarcel/* Find an architecture that matches the specified INFO. Create a new 5692130803Smarcel architecture if needed. Return that new architecture. Assumes 5693130803Smarcel that there is no current architecture. */ 569498944Sobrien 5695130803Smarcelstatic struct gdbarch * 5696130803Smarcelfind_arch_by_info (struct gdbarch *old_gdbarch, struct gdbarch_info info) 569798944Sobrien{ 569898944Sobrien struct gdbarch *new_gdbarch; 569998944Sobrien struct gdbarch_registration *rego; 570098944Sobrien 5701130803Smarcel /* The existing architecture has been swapped out - all this code 5702130803Smarcel works from a clean slate. */ 5703130803Smarcel gdb_assert (current_gdbarch == NULL); 5704130803Smarcel 570598944Sobrien /* Fill in missing parts of the INFO struct using a number of 5706130803Smarcel sources: "set ..."; INFOabfd supplied; and the existing 5707130803Smarcel architecture. */ 5708130803Smarcel gdbarch_info_fill (old_gdbarch, &info); 570998944Sobrien 571098944Sobrien /* Must have found some sort of architecture. */ 571198944Sobrien gdb_assert (info.bfd_arch_info != NULL); 571298944Sobrien 571398944Sobrien if (gdbarch_debug) 571446283Sdfr { 571598944Sobrien fprintf_unfiltered (gdb_stdlog, 5716130803Smarcel "find_arch_by_info: info.bfd_arch_info %s\n", 571798944Sobrien (info.bfd_arch_info != NULL 571898944Sobrien ? info.bfd_arch_info->printable_name 571998944Sobrien : "(null)")); 572098944Sobrien fprintf_unfiltered (gdb_stdlog, 5721130803Smarcel "find_arch_by_info: info.byte_order %d (%s)\n", 572298944Sobrien info.byte_order, 572398944Sobrien (info.byte_order == BFD_ENDIAN_BIG ? "big" 572498944Sobrien : info.byte_order == BFD_ENDIAN_LITTLE ? "little" 572598944Sobrien : "default")); 572698944Sobrien fprintf_unfiltered (gdb_stdlog, 5727130803Smarcel "find_arch_by_info: info.osabi %d (%s)\n", 5728130803Smarcel info.osabi, gdbarch_osabi_name (info.osabi)); 5729130803Smarcel fprintf_unfiltered (gdb_stdlog, 5730130803Smarcel "find_arch_by_info: info.abfd 0x%lx\n", 573198944Sobrien (long) info.abfd); 573298944Sobrien fprintf_unfiltered (gdb_stdlog, 5733130803Smarcel "find_arch_by_info: info.tdep_info 0x%lx\n", 573498944Sobrien (long) info.tdep_info); 573546283Sdfr } 573646283Sdfr 5737130803Smarcel /* Find the tdep code that knows about this architecture. */ 573898944Sobrien for (rego = gdbarch_registry; 573998944Sobrien rego != NULL; 574098944Sobrien rego = rego->next) 574198944Sobrien if (rego->bfd_architecture == info.bfd_arch_info->arch) 574298944Sobrien break; 574398944Sobrien if (rego == NULL) 574498944Sobrien { 574598944Sobrien if (gdbarch_debug) 5746130803Smarcel fprintf_unfiltered (gdb_stdlog, "find_arch_by_info: " 5747130803Smarcel "No matching architecture\n"); 574898944Sobrien return 0; 574998944Sobrien } 575046283Sdfr 5751130803Smarcel /* Ask the tdep code for an architecture that matches "info". */ 575298944Sobrien new_gdbarch = rego->init (info, rego->arches); 575346283Sdfr 5754130803Smarcel /* Did the tdep code like it? No. Reject the change and revert to 5755130803Smarcel the old architecture. */ 575698944Sobrien if (new_gdbarch == NULL) 575798944Sobrien { 575898944Sobrien if (gdbarch_debug) 5759130803Smarcel fprintf_unfiltered (gdb_stdlog, "find_arch_by_info: " 5760130803Smarcel "Target rejected architecture\n"); 5761130803Smarcel return NULL; 576298944Sobrien } 576346283Sdfr 5764130803Smarcel /* Is this a pre-existing architecture (as determined by already 5765130803Smarcel being initialized)? Move it to the front of the architecture 5766130803Smarcel list (keeping the list sorted Most Recently Used). */ 5767130803Smarcel if (new_gdbarch->initialized_p) 576898944Sobrien { 5769130803Smarcel struct gdbarch_list **list; 5770130803Smarcel struct gdbarch_list *this; 577198944Sobrien if (gdbarch_debug) 5772130803Smarcel fprintf_unfiltered (gdb_stdlog, "find_arch_by_info: " 5773130803Smarcel "Previous architecture 0x%08lx (%s) selected\n", 577498944Sobrien (long) new_gdbarch, 577598944Sobrien new_gdbarch->bfd_arch_info->printable_name); 5776130803Smarcel /* Find the existing arch in the list. */ 5777130803Smarcel for (list = ®o->arches; 5778130803Smarcel (*list) != NULL && (*list)->gdbarch != new_gdbarch; 5779130803Smarcel list = &(*list)->next); 5780130803Smarcel /* It had better be in the list of architectures. */ 5781130803Smarcel gdb_assert ((*list) != NULL && (*list)->gdbarch == new_gdbarch); 5782130803Smarcel /* Unlink THIS. */ 5783130803Smarcel this = (*list); 5784130803Smarcel (*list) = this->next; 5785130803Smarcel /* Insert THIS at the front. */ 5786130803Smarcel this->next = rego->arches; 5787130803Smarcel rego->arches = this; 5788130803Smarcel /* Return it. */ 5789130803Smarcel return new_gdbarch; 579098944Sobrien } 579146283Sdfr 5792130803Smarcel /* It's a new architecture. */ 579398944Sobrien if (gdbarch_debug) 5794130803Smarcel fprintf_unfiltered (gdb_stdlog, "find_arch_by_info: " 5795130803Smarcel "New architecture 0x%08lx (%s) selected\n", 5796130803Smarcel (long) new_gdbarch, 5797130803Smarcel new_gdbarch->bfd_arch_info->printable_name); 579898944Sobrien 5799130803Smarcel /* Insert the new architecture into the front of the architecture 5800130803Smarcel list (keep the list sorted Most Recently Used). */ 5801130803Smarcel { 5802130803Smarcel struct gdbarch_list *this = XMALLOC (struct gdbarch_list); 5803130803Smarcel this->next = rego->arches; 5804130803Smarcel this->gdbarch = new_gdbarch; 5805130803Smarcel rego->arches = this; 5806130803Smarcel } 5807130803Smarcel 580898944Sobrien /* Check that the newly installed architecture is valid. Plug in 580998944Sobrien any post init values. */ 581098944Sobrien new_gdbarch->dump_tdep = rego->dump_tdep; 581198944Sobrien verify_gdbarch (new_gdbarch); 5812130803Smarcel new_gdbarch->initialized_p = 1; 581398944Sobrien 5814130803Smarcel /* Initialize any per-architecture swap areas. This phase requires 5815130803Smarcel a valid global CURRENT_GDBARCH. Set it momentarially, and then 5816130803Smarcel swap the entire architecture out. */ 5817130803Smarcel current_gdbarch = new_gdbarch; 5818130803Smarcel current_gdbarch_swap_init_hack (); 5819130803Smarcel current_gdbarch_swap_out_hack (); 582098944Sobrien 582198944Sobrien if (gdbarch_debug) 5822130803Smarcel gdbarch_dump (new_gdbarch, gdb_stdlog); 582398944Sobrien 5824130803Smarcel return new_gdbarch; 582546283Sdfr} 582646283Sdfr 5827130803Smarcelstruct gdbarch * 5828130803Smarcelgdbarch_find_by_info (struct gdbarch_info info) 5829130803Smarcel{ 5830130803Smarcel /* Save the previously selected architecture, setting the global to 5831130803Smarcel NULL. This stops things like gdbarch->init() trying to use the 5832130803Smarcel previous architecture's configuration. The previous architecture 5833130803Smarcel may not even be of the same architecture family. The most recent 5834130803Smarcel architecture of the same family is found at the head of the 5835130803Smarcel rego->arches list. */ 5836130803Smarcel struct gdbarch *old_gdbarch = current_gdbarch_swap_out_hack (); 583746283Sdfr 5838130803Smarcel /* Find the specified architecture. */ 5839130803Smarcel struct gdbarch *new_gdbarch = find_arch_by_info (old_gdbarch, info); 584098944Sobrien 5841130803Smarcel /* Restore the existing architecture. */ 5842130803Smarcel gdb_assert (current_gdbarch == NULL); 5843130803Smarcel current_gdbarch_swap_in_hack (old_gdbarch); 584498944Sobrien 5845130803Smarcel return new_gdbarch; 5846130803Smarcel} 584798944Sobrien 5848130803Smarcel/* Make the specified architecture current, swapping the existing one 5849130803Smarcel out. */ 5850130803Smarcel 5851130803Smarcelvoid 5852130803Smarceldeprecated_current_gdbarch_select_hack (struct gdbarch *new_gdbarch) 5853130803Smarcel{ 5854130803Smarcel gdb_assert (new_gdbarch != NULL); 5855130803Smarcel gdb_assert (current_gdbarch != NULL); 5856130803Smarcel gdb_assert (new_gdbarch->initialized_p); 5857130803Smarcel current_gdbarch_swap_out_hack (); 5858130803Smarcel current_gdbarch_swap_in_hack (new_gdbarch); 5859130803Smarcel architecture_changed_event (); 5860130803Smarcel} 5861130803Smarcel 586298944Sobrienextern void _initialize_gdbarch (void); 586398944Sobrien 586446283Sdfrvoid 586598944Sobrien_initialize_gdbarch (void) 586646283Sdfr{ 586798944Sobrien struct cmd_list_element *c; 586846283Sdfr 586998944Sobrien add_show_from_set (add_set_cmd ("arch", 587046283Sdfr class_maintenance, 587146283Sdfr var_zinteger, 587246283Sdfr (char *)&gdbarch_debug, 587346283Sdfr "Set architecture debugging.\n\ 587498944SobrienWhen non-zero, architecture debugging is enabled.", &setdebuglist), 587598944Sobrien &showdebuglist); 587698944Sobrien c = add_set_cmd ("archdebug", 587798944Sobrien class_maintenance, 587898944Sobrien var_zinteger, 587998944Sobrien (char *)&gdbarch_debug, 588098944Sobrien "Set architecture debugging.\n\ 588198944SobrienWhen non-zero, architecture debugging is enabled.", &setlist); 588298944Sobrien 588398944Sobrien deprecate_cmd (c, "set debug arch"); 588498944Sobrien deprecate_cmd (add_show_from_set (c, &showlist), "show debug arch"); 588546283Sdfr} 5886