]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/gdbarch.c
Finalized intl-update patches
[thirdparty/binutils-gdb.git] / gdb / gdbarch.c
CommitLineData
810fbe39 1/* THIS FILE IS GENERATED -*- buffer-read-only: t -*- */
c4bfde41 2/* vi:set ro: */
59233f88 3
adf40b2e 4/* Dynamic architecture support for GDB, the GNU debugger.
79d45cd4 5
213516ef 6 Copyright (C) 1998-2023 Free Software Foundation, Inc.
c906108c 7
96baa820
JM
8 This file is part of GDB.
9
10 This program is free software; you can redistribute it and/or modify
11 it under the terms of the GNU General Public License as published by
a9762ec7 12 the Free Software Foundation; either version 3 of the License, or
96baa820 13 (at your option) any later version.
618f726f 14
96baa820
JM
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License for more details.
618f726f 19
96baa820 20 You should have received a copy of the GNU General Public License
a9762ec7 21 along with this program. If not, see <http://www.gnu.org/licenses/>. */
adf40b2e 22
a8ab094a
TT
23/* To regenerate this file, run:
24 ./gdbarch.py
25*/
c906108c 26
c906108c 27
0963b4bd 28/* Maintain the struct gdbarch object. */
0f71a2f6
JM
29
30struct gdbarch
adf40b2e 31{
76860b5f 32 /* Has this architecture been fully initialized? */
b987c79a 33 bool initialized_p = false;
aebd7893
AC
34
35 /* An obstack bound to the lifetime of the architecture. */
b987c79a 36 auto_obstack obstack;
cb275538
TT
37 /* Registry. */
38 registry<gdbarch> registry_fields;
aebd7893 39
0963b4bd 40 /* basic architectural information. */
adf40b2e 41 const struct bfd_arch_info * bfd_arch_info;
94123b4f
YQ
42 enum bfd_endian byte_order;
43 enum bfd_endian byte_order_for_code;
4be87837 44 enum gdb_osabi osabi;
424163ea 45 const struct target_desc * target_desc;
0f71a2f6 46
0963b4bd 47 /* target specific vector. */
2b16913c 48 gdbarch_tdep_up tdep;
b987c79a 49 gdbarch_dump_tdep_ftype *dump_tdep = nullptr;
0f71a2f6 50
6c8912c6
TT
51 int short_bit = 2*TARGET_CHAR_BIT;
52 int int_bit = 4*TARGET_CHAR_BIT;
53 int long_bit = 4*TARGET_CHAR_BIT;
54 int long_long_bit = 2*4*TARGET_CHAR_BIT;
55 int bfloat16_bit = 2*TARGET_CHAR_BIT;
35079684 56 const struct floatformat ** bfloat16_format = floatformats_bfloat16;
6c8912c6 57 int half_bit = 2*TARGET_CHAR_BIT;
35079684 58 const struct floatformat ** half_format = floatformats_ieee_half;
6c8912c6 59 int float_bit = 4*TARGET_CHAR_BIT;
35079684 60 const struct floatformat ** float_format = floatformats_ieee_single;
6c8912c6 61 int double_bit = 8*TARGET_CHAR_BIT;
35079684 62 const struct floatformat ** double_format = floatformats_ieee_double;
6c8912c6 63 int long_double_bit = 8*TARGET_CHAR_BIT;
35079684 64 const struct floatformat ** long_double_format = floatformats_ieee_double;
6c8912c6
TT
65 int wchar_bit = 4*TARGET_CHAR_BIT;
66 int wchar_signed = -1;
67 gdbarch_floatformat_for_type_ftype *floatformat_for_type = default_floatformat_for_type;
68 int ptr_bit = 4*TARGET_CHAR_BIT;
b987c79a
TT
69 int addr_bit = 0;
70 int dwarf2_addr_size = 0;
6c8912c6 71 int char_signed = -1;
b987c79a
TT
72 gdbarch_read_pc_ftype *read_pc = nullptr;
73 gdbarch_write_pc_ftype *write_pc = nullptr;
6c8912c6 74 gdbarch_virtual_frame_pointer_ftype *virtual_frame_pointer = legacy_virtual_frame_pointer;
b987c79a
TT
75 gdbarch_pseudo_register_read_ftype *pseudo_register_read = nullptr;
76 gdbarch_pseudo_register_read_value_ftype *pseudo_register_read_value = nullptr;
77 gdbarch_pseudo_register_write_ftype *pseudo_register_write = nullptr;
6c8912c6 78 int num_regs = -1;
b987c79a
TT
79 int num_pseudo_regs = 0;
80 gdbarch_ax_pseudo_register_collect_ftype *ax_pseudo_register_collect = nullptr;
81 gdbarch_ax_pseudo_register_push_stack_ftype *ax_pseudo_register_push_stack = nullptr;
82 gdbarch_report_signal_info_ftype *report_signal_info = nullptr;
6c8912c6
TT
83 int sp_regnum = -1;
84 int pc_regnum = -1;
85 int ps_regnum = -1;
86 int fp0_regnum = -1;
87 gdbarch_stab_reg_to_regnum_ftype *stab_reg_to_regnum = no_op_reg_to_regnum;
88 gdbarch_ecoff_reg_to_regnum_ftype *ecoff_reg_to_regnum = no_op_reg_to_regnum;
89 gdbarch_sdb_reg_to_regnum_ftype *sdb_reg_to_regnum = no_op_reg_to_regnum;
90 gdbarch_dwarf2_reg_to_regnum_ftype *dwarf2_reg_to_regnum = no_op_reg_to_regnum;
a3e200ef 91 gdbarch_register_name_ftype *register_name = nullptr;
b987c79a 92 gdbarch_register_type_ftype *register_type = nullptr;
6c8912c6
TT
93 gdbarch_dummy_id_ftype *dummy_id = default_dummy_id;
94 int deprecated_fp_regnum = -1;
b987c79a 95 gdbarch_push_dummy_call_ftype *push_dummy_call = nullptr;
7807dfae 96 enum call_dummy_location_type call_dummy_location = AT_ENTRY_POINT;
b987c79a 97 gdbarch_push_dummy_code_ftype *push_dummy_code = nullptr;
6c8912c6
TT
98 gdbarch_code_of_frame_writable_ftype *code_of_frame_writable = default_code_of_frame_writable;
99 gdbarch_print_registers_info_ftype *print_registers_info = default_print_registers_info;
100 gdbarch_print_float_info_ftype *print_float_info = default_print_float_info;
b987c79a 101 gdbarch_print_vector_info_ftype *print_vector_info = nullptr;
6c8912c6
TT
102 gdbarch_register_sim_regno_ftype *register_sim_regno = legacy_register_sim_regno;
103 gdbarch_cannot_fetch_register_ftype *cannot_fetch_register = cannot_register_not;
104 gdbarch_cannot_store_register_ftype *cannot_store_register = cannot_register_not;
b987c79a
TT
105 gdbarch_get_longjmp_target_ftype *get_longjmp_target = nullptr;
106 int believe_pcc_promotion = 0;
6c8912c6 107 gdbarch_convert_register_p_ftype *convert_register_p = generic_convert_register_p;
b987c79a
TT
108 gdbarch_register_to_value_ftype *register_to_value = nullptr;
109 gdbarch_value_to_register_ftype *value_to_register = nullptr;
6c8912c6
TT
110 gdbarch_value_from_register_ftype *value_from_register = default_value_from_register;
111 gdbarch_pointer_to_address_ftype *pointer_to_address = unsigned_pointer_to_address;
112 gdbarch_address_to_pointer_ftype *address_to_pointer = unsigned_address_to_pointer;
b987c79a
TT
113 gdbarch_integer_to_address_ftype *integer_to_address = nullptr;
114 gdbarch_return_value_ftype *return_value = nullptr;
4e1d2f58 115 gdbarch_return_value_as_value_ftype *return_value_as_value = default_gdbarch_return_value;
a0eda3df 116 gdbarch_get_return_buf_addr_ftype *get_return_buf_addr = default_get_return_buf_addr;
c1a398a3 117 gdbarch_dwarf2_omit_typedef_p_ftype *dwarf2_omit_typedef_p = default_dwarf2_omit_typedef_p;
9df25c34 118 gdbarch_update_call_site_pc_ftype *update_call_site_pc = default_update_call_site_pc;
6c8912c6 119 gdbarch_return_in_first_hidden_param_p_ftype *return_in_first_hidden_param_p = default_return_in_first_hidden_param_p;
a3e200ef 120 gdbarch_skip_prologue_ftype *skip_prologue = nullptr;
b987c79a
TT
121 gdbarch_skip_main_prologue_ftype *skip_main_prologue = nullptr;
122 gdbarch_skip_entrypoint_ftype *skip_entrypoint = nullptr;
a3e200ef 123 gdbarch_inner_than_ftype *inner_than = nullptr;
6c8912c6 124 gdbarch_breakpoint_from_pc_ftype *breakpoint_from_pc = default_breakpoint_from_pc;
a3e200ef 125 gdbarch_breakpoint_kind_from_pc_ftype *breakpoint_kind_from_pc = nullptr;
6c8912c6
TT
126 gdbarch_sw_breakpoint_from_kind_ftype *sw_breakpoint_from_kind = NULL;
127 gdbarch_breakpoint_kind_from_current_state_ftype *breakpoint_kind_from_current_state = default_breakpoint_kind_from_current_state;
b987c79a 128 gdbarch_adjust_breakpoint_address_ftype *adjust_breakpoint_address = nullptr;
6c8912c6
TT
129 gdbarch_memory_insert_breakpoint_ftype *memory_insert_breakpoint = default_memory_insert_breakpoint;
130 gdbarch_memory_remove_breakpoint_ftype *memory_remove_breakpoint = default_memory_remove_breakpoint;
b987c79a
TT
131 CORE_ADDR decr_pc_after_break = 0;
132 CORE_ADDR deprecated_function_start_offset = 0;
6c8912c6 133 gdbarch_remote_register_number_ftype *remote_register_number = default_remote_register_number;
b987c79a
TT
134 gdbarch_fetch_tls_load_module_address_ftype *fetch_tls_load_module_address = nullptr;
135 gdbarch_get_thread_local_address_ftype *get_thread_local_address = nullptr;
136 CORE_ADDR frame_args_skip = 0;
6c8912c6
TT
137 gdbarch_unwind_pc_ftype *unwind_pc = default_unwind_pc;
138 gdbarch_unwind_sp_ftype *unwind_sp = default_unwind_sp;
b987c79a
TT
139 gdbarch_frame_num_args_ftype *frame_num_args = nullptr;
140 gdbarch_frame_align_ftype *frame_align = nullptr;
6c8912c6 141 gdbarch_stabs_argument_has_addr_ftype *stabs_argument_has_addr = default_stabs_argument_has_addr;
b987c79a 142 int frame_red_zone_size = 0;
6c8912c6
TT
143 gdbarch_convert_from_func_ptr_addr_ftype *convert_from_func_ptr_addr = convert_from_func_ptr_addr_identity;
144 gdbarch_addr_bits_remove_ftype *addr_bits_remove = core_addr_identity;
d88cb738 145 gdbarch_remove_non_address_bits_ftype *remove_non_address_bits = default_remove_non_address_bits;
6c8912c6
TT
146 gdbarch_memtag_to_string_ftype *memtag_to_string = default_memtag_to_string;
147 gdbarch_tagged_address_p_ftype *tagged_address_p = default_tagged_address_p;
148 gdbarch_memtag_matches_p_ftype *memtag_matches_p = default_memtag_matches_p;
149 gdbarch_set_memtags_ftype *set_memtags = default_set_memtags;
150 gdbarch_get_memtag_ftype *get_memtag = default_get_memtag;
b987c79a
TT
151 CORE_ADDR memtag_granule_size = 0;
152 gdbarch_software_single_step_ftype *software_single_step = nullptr;
153 gdbarch_single_step_through_delay_ftype *single_step_through_delay = nullptr;
6c8912c6
TT
154 gdbarch_print_insn_ftype *print_insn = default_print_insn;
155 gdbarch_skip_trampoline_code_ftype *skip_trampoline_code = generic_skip_trampoline_code;
35079684 156 const struct target_so_ops * so_ops = &solib_target_so_ops;
6c8912c6
TT
157 gdbarch_skip_solib_resolver_ftype *skip_solib_resolver = generic_skip_solib_resolver;
158 gdbarch_in_solib_return_trampoline_ftype *in_solib_return_trampoline = generic_in_solib_return_trampoline;
159 gdbarch_in_indirect_branch_thunk_ftype *in_indirect_branch_thunk = default_in_indirect_branch_thunk;
160 gdbarch_stack_frame_destroyed_p_ftype *stack_frame_destroyed_p = generic_stack_frame_destroyed_p;
b987c79a 161 gdbarch_elf_make_msymbol_special_ftype *elf_make_msymbol_special = nullptr;
6c8912c6
TT
162 gdbarch_coff_make_msymbol_special_ftype *coff_make_msymbol_special = default_coff_make_msymbol_special;
163 gdbarch_make_symbol_special_ftype *make_symbol_special = default_make_symbol_special;
164 gdbarch_adjust_dwarf2_addr_ftype *adjust_dwarf2_addr = default_adjust_dwarf2_addr;
165 gdbarch_adjust_dwarf2_line_ftype *adjust_dwarf2_line = default_adjust_dwarf2_line;
b987c79a
TT
166 int cannot_step_breakpoint = 0;
167 int have_nonsteppable_watchpoint = 0;
168 gdbarch_address_class_type_flags_ftype *address_class_type_flags = nullptr;
169 gdbarch_address_class_type_flags_to_name_ftype *address_class_type_flags_to_name = nullptr;
6c8912c6 170 gdbarch_execute_dwarf_cfa_vendor_op_ftype *execute_dwarf_cfa_vendor_op = default_execute_dwarf_cfa_vendor_op;
b987c79a 171 gdbarch_address_class_name_to_type_flags_ftype *address_class_name_to_type_flags = nullptr;
6c8912c6 172 gdbarch_register_reggroup_p_ftype *register_reggroup_p = default_register_reggroup_p;
b987c79a
TT
173 gdbarch_fetch_pointer_argument_ftype *fetch_pointer_argument = nullptr;
174 gdbarch_iterate_over_regset_sections_ftype *iterate_over_regset_sections = nullptr;
175 gdbarch_make_corefile_notes_ftype *make_corefile_notes = nullptr;
176 gdbarch_find_memory_regions_ftype *find_memory_regions = nullptr;
177 gdbarch_create_memtag_section_ftype *create_memtag_section = nullptr;
178 gdbarch_fill_memtag_section_ftype *fill_memtag_section = nullptr;
179 gdbarch_decode_memtag_section_ftype *decode_memtag_section = nullptr;
180 gdbarch_core_xfer_shared_libraries_ftype *core_xfer_shared_libraries = nullptr;
181 gdbarch_core_xfer_shared_libraries_aix_ftype *core_xfer_shared_libraries_aix = nullptr;
182 gdbarch_core_pid_to_str_ftype *core_pid_to_str = nullptr;
183 gdbarch_core_thread_name_ftype *core_thread_name = nullptr;
184 gdbarch_core_xfer_siginfo_ftype *core_xfer_siginfo = nullptr;
c689d1fe 185 gdbarch_core_read_x86_xsave_layout_ftype *core_read_x86_xsave_layout = nullptr;
b987c79a
TT
186 const char * gcore_bfd_target = 0;
187 int vtable_function_descriptors = 0;
188 int vbit_in_delta = 0;
6c8912c6 189 gdbarch_skip_permanent_breakpoint_ftype *skip_permanent_breakpoint = default_skip_permanent_breakpoint;
b987c79a
TT
190 ULONGEST max_insn_length = 0;
191 gdbarch_displaced_step_copy_insn_ftype *displaced_step_copy_insn = nullptr;
6c8912c6
TT
192 gdbarch_displaced_step_hw_singlestep_ftype *displaced_step_hw_singlestep = default_displaced_step_hw_singlestep;
193 gdbarch_displaced_step_fixup_ftype *displaced_step_fixup = NULL;
b987c79a 194 gdbarch_displaced_step_prepare_ftype *displaced_step_prepare = nullptr;
6c8912c6 195 gdbarch_displaced_step_finish_ftype *displaced_step_finish = NULL;
b987c79a
TT
196 gdbarch_displaced_step_copy_insn_closure_by_addr_ftype *displaced_step_copy_insn_closure_by_addr = nullptr;
197 gdbarch_displaced_step_restore_all_in_ptid_ftype *displaced_step_restore_all_in_ptid = nullptr;
deb65a3c 198 ULONGEST displaced_step_buffer_length = 0;
6c8912c6 199 gdbarch_relocate_instruction_ftype *relocate_instruction = NULL;
b987c79a
TT
200 gdbarch_overlay_update_ftype *overlay_update = nullptr;
201 gdbarch_core_read_description_ftype *core_read_description = nullptr;
202 int sofun_address_maybe_missing = 0;
203 gdbarch_process_record_ftype *process_record = nullptr;
204 gdbarch_process_record_signal_ftype *process_record_signal = nullptr;
205 gdbarch_gdb_signal_from_target_ftype *gdb_signal_from_target = nullptr;
206 gdbarch_gdb_signal_to_target_ftype *gdb_signal_to_target = nullptr;
207 gdbarch_get_siginfo_type_ftype *get_siginfo_type = nullptr;
208 gdbarch_record_special_symbol_ftype *record_special_symbol = nullptr;
209 gdbarch_get_syscall_number_ftype *get_syscall_number = nullptr;
210 const char * xml_syscall_file = 0;
211 struct syscalls_info * syscalls_info = 0;
212 const char *const * stap_integer_prefixes = 0;
213 const char *const * stap_integer_suffixes = 0;
214 const char *const * stap_register_prefixes = 0;
215 const char *const * stap_register_suffixes = 0;
216 const char *const * stap_register_indirection_prefixes = 0;
217 const char *const * stap_register_indirection_suffixes = 0;
218 const char * stap_gdb_register_prefix = 0;
219 const char * stap_gdb_register_suffix = 0;
220 gdbarch_stap_is_single_operand_ftype *stap_is_single_operand = nullptr;
221 gdbarch_stap_parse_special_token_ftype *stap_parse_special_token = nullptr;
222 gdbarch_stap_adjust_register_ftype *stap_adjust_register = nullptr;
223 gdbarch_dtrace_parse_probe_argument_ftype *dtrace_parse_probe_argument = nullptr;
224 gdbarch_dtrace_probe_is_enabled_ftype *dtrace_probe_is_enabled = nullptr;
225 gdbarch_dtrace_enable_probe_ftype *dtrace_enable_probe = nullptr;
226 gdbarch_dtrace_disable_probe_ftype *dtrace_disable_probe = nullptr;
227 int has_global_solist = 0;
228 int has_global_breakpoints = 0;
6c8912c6
TT
229 gdbarch_has_shared_address_space_ftype *has_shared_address_space = default_has_shared_address_space;
230 gdbarch_fast_tracepoint_valid_at_ftype *fast_tracepoint_valid_at = default_fast_tracepoint_valid_at;
231 gdbarch_guess_tracepoint_registers_ftype *guess_tracepoint_registers = default_guess_tracepoint_registers;
232 gdbarch_auto_charset_ftype *auto_charset = default_auto_charset;
233 gdbarch_auto_wide_charset_ftype *auto_wide_charset = default_auto_wide_charset;
b987c79a
TT
234 const char * solib_symbols_extension = 0;
235 int has_dos_based_file_system = 0;
6c8912c6 236 gdbarch_gen_return_address_ftype *gen_return_address = default_gen_return_address;
b987c79a
TT
237 gdbarch_info_proc_ftype *info_proc = nullptr;
238 gdbarch_core_info_proc_ftype *core_info_proc = nullptr;
6c8912c6
TT
239 gdbarch_iterate_over_objfiles_in_search_order_ftype *iterate_over_objfiles_in_search_order = default_iterate_over_objfiles_in_search_order;
240 struct ravenscar_arch_ops * ravenscar_ops = NULL;
241 gdbarch_insn_is_call_ftype *insn_is_call = default_insn_is_call;
242 gdbarch_insn_is_ret_ftype *insn_is_ret = default_insn_is_ret;
243 gdbarch_insn_is_jump_ftype *insn_is_jump = default_insn_is_jump;
244 gdbarch_program_breakpoint_here_p_ftype *program_breakpoint_here_p = default_program_breakpoint_here_p;
b987c79a 245 gdbarch_auxv_parse_ftype *auxv_parse = nullptr;
6c8912c6
TT
246 gdbarch_print_auxv_entry_ftype *print_auxv_entry = default_print_auxv_entry;
247 gdbarch_vsyscall_range_ftype *vsyscall_range = default_vsyscall_range;
248 gdbarch_infcall_mmap_ftype *infcall_mmap = default_infcall_mmap;
249 gdbarch_infcall_munmap_ftype *infcall_munmap = default_infcall_munmap;
250 gdbarch_gcc_target_options_ftype *gcc_target_options = default_gcc_target_options;
251 gdbarch_gnu_triplet_regexp_ftype *gnu_triplet_regexp = default_gnu_triplet_regexp;
252 gdbarch_addressable_memory_unit_size_ftype *addressable_memory_unit_size = default_addressable_memory_unit_size;
b987c79a
TT
253 const char * disassembler_options_implicit = 0;
254 char ** disassembler_options = 0;
255 const disasm_options_and_args_t * valid_disassembler_options = 0;
6c8912c6
TT
256 gdbarch_type_align_ftype *type_align = default_type_align;
257 gdbarch_get_pc_address_flags_ftype *get_pc_address_flags = default_get_pc_address_flags;
258 gdbarch_read_core_file_mappings_ftype *read_core_file_mappings = default_read_core_file_mappings;
b93d537f 259 gdbarch_use_target_description_from_corefile_notes_ftype *use_target_description_from_corefile_notes = default_use_target_description_from_corefile_notes;
adf40b2e 260};
0f71a2f6 261
66b43ecb 262/* Create a new ``struct gdbarch'' based on information provided by
0963b4bd 263 ``struct gdbarch_info''. */
0f71a2f6
JM
264
265struct gdbarch *
104c1213 266gdbarch_alloc (const struct gdbarch_info *info,
2b16913c 267 gdbarch_tdep_up tdep)
0f71a2f6 268{
be7811ad 269 struct gdbarch *gdbarch;
aebd7893 270
b987c79a 271 gdbarch = new struct gdbarch;
0f71a2f6 272
2b16913c 273 gdbarch->tdep = std::move (tdep);
0f71a2f6 274
be7811ad
MD
275 gdbarch->bfd_arch_info = info->bfd_arch_info;
276 gdbarch->byte_order = info->byte_order;
9d4fde75 277 gdbarch->byte_order_for_code = info->byte_order_for_code;
be7811ad
MD
278 gdbarch->osabi = info->osabi;
279 gdbarch->target_desc = info->target_desc;
0f71a2f6 280
be7811ad 281 return gdbarch;
0f71a2f6
JM
282}
283
284
aebd7893 285
db446970
AC
286/* Ensure that all values in a GDBARCH are reasonable. */
287
0f71a2f6 288static void
be7811ad 289verify_gdbarch (struct gdbarch *gdbarch)
0f71a2f6 290{
d7e74731 291 string_file log;
05c547f6 292
0f71a2f6 293 /* fundamental */
be7811ad 294 if (gdbarch->byte_order == BFD_ENDIAN_UNKNOWN)
d7e74731 295 log.puts ("\n\tbyte-order");
be7811ad 296 if (gdbarch->bfd_arch_info == NULL)
d7e74731 297 log.puts ("\n\tbfd_arch_info");
0963b4bd 298 /* Check those that need to be defined for the given multi-arch level. */
66b43ecb
AC
299 /* Skip verify of short_bit, invalid_p == 0 */
300 /* Skip verify of int_bit, invalid_p == 0 */
301 /* Skip verify of long_bit, invalid_p == 0 */
302 /* Skip verify of long_long_bit, invalid_p == 0 */
2a67f09d 303 /* Skip verify of bfloat16_bit, invalid_p == 0 */
6e2d282d 304 /* Skip verify of bfloat16_format, invalid_p == 0 */
f9e9243a 305 /* Skip verify of half_bit, invalid_p == 0 */
6e2d282d 306 /* Skip verify of half_format, invalid_p == 0 */
66b43ecb 307 /* Skip verify of float_bit, invalid_p == 0 */
6e2d282d 308 /* Skip verify of float_format, invalid_p == 0 */
66b43ecb 309 /* Skip verify of double_bit, invalid_p == 0 */
6e2d282d 310 /* Skip verify of double_format, invalid_p == 0 */
66b43ecb 311 /* Skip verify of long_double_bit, invalid_p == 0 */
6e2d282d 312 /* Skip verify of long_double_format, invalid_p == 0 */
53375380
PA
313 /* Skip verify of wchar_bit, invalid_p == 0 */
314 if (gdbarch->wchar_signed == -1)
315 gdbarch->wchar_signed = 1;
6e2d282d 316 /* Skip verify of wchar_signed, invalid_p == 0 */
9b790ce7 317 /* Skip verify of floatformat_for_type, invalid_p == 0 */
66b43ecb 318 /* Skip verify of ptr_bit, invalid_p == 0 */
be7811ad
MD
319 if (gdbarch->addr_bit == 0)
320 gdbarch->addr_bit = gdbarch_ptr_bit (gdbarch);
6e2d282d 321 /* Skip verify of addr_bit, invalid_p == 0 */
8da614df
CV
322 if (gdbarch->dwarf2_addr_size == 0)
323 gdbarch->dwarf2_addr_size = gdbarch_ptr_bit (gdbarch) / TARGET_CHAR_BIT;
6e2d282d 324 /* Skip verify of dwarf2_addr_size, invalid_p == 0 */
be7811ad
MD
325 if (gdbarch->char_signed == -1)
326 gdbarch->char_signed = 1;
6e2d282d 327 /* Skip verify of char_signed, invalid_p == 0 */
0963b4bd
MS
328 /* Skip verify of read_pc, has predicate. */
329 /* Skip verify of write_pc, has predicate. */
39d4ef09 330 /* Skip verify of virtual_frame_pointer, invalid_p == 0 */
0963b4bd 331 /* Skip verify of pseudo_register_read, has predicate. */
3543a589 332 /* Skip verify of pseudo_register_read_value, has predicate. */
0963b4bd 333 /* Skip verify of pseudo_register_write, has predicate. */
be7811ad 334 if (gdbarch->num_regs == -1)
d7e74731 335 log.puts ("\n\tnum_regs");
0aba1244 336 /* Skip verify of num_pseudo_regs, invalid_p == 0 */
0963b4bd
MS
337 /* Skip verify of ax_pseudo_register_collect, has predicate. */
338 /* Skip verify of ax_pseudo_register_push_stack, has predicate. */
272bb05c 339 /* Skip verify of report_signal_info, has predicate. */
1200cd6e 340 /* Skip verify of sp_regnum, invalid_p == 0 */
1200cd6e 341 /* Skip verify of pc_regnum, invalid_p == 0 */
c2169756 342 /* Skip verify of ps_regnum, invalid_p == 0 */
60054393 343 /* Skip verify of fp0_regnum, invalid_p == 0 */
88c72b7d
AC
344 /* Skip verify of stab_reg_to_regnum, invalid_p == 0 */
345 /* Skip verify of ecoff_reg_to_regnum, invalid_p == 0 */
88c72b7d
AC
346 /* Skip verify of sdb_reg_to_regnum, invalid_p == 0 */
347 /* Skip verify of dwarf2_reg_to_regnum, invalid_p == 0 */
be7811ad 348 if (gdbarch->register_name == 0)
d7e74731 349 log.puts ("\n\tregister_name");
a5118a18
AB
350 if (gdbarch->register_type == 0)
351 log.puts ("\n\tregister_type");
8bcb5208 352 /* Skip verify of dummy_id, invalid_p == 0 */
f3be58bc 353 /* Skip verify of deprecated_fp_regnum, invalid_p == 0 */
0963b4bd 354 /* Skip verify of push_dummy_call, has predicate. */
b8de8283 355 /* Skip verify of call_dummy_location, invalid_p == 0 */
0963b4bd 356 /* Skip verify of push_dummy_code, has predicate. */
7eb89530 357 /* Skip verify of code_of_frame_writable, invalid_p == 0 */
0ab7a791 358 /* Skip verify of print_registers_info, invalid_p == 0 */
cc86d1cb 359 /* Skip verify of print_float_info, invalid_p == 0 */
0963b4bd 360 /* Skip verify of print_vector_info, has predicate. */
7c7651b2 361 /* Skip verify of register_sim_regno, invalid_p == 0 */
01fb7433
AC
362 /* Skip verify of cannot_fetch_register, invalid_p == 0 */
363 /* Skip verify of cannot_store_register, invalid_p == 0 */
0963b4bd 364 /* Skip verify of get_longjmp_target, has predicate. */
a5118a18 365 /* Skip verify of believe_pcc_promotion, invalid_p == 0 */
13d01224 366 /* Skip verify of convert_register_p, invalid_p == 0 */
a5118a18
AB
367 /* Skip verify of register_to_value, invalid_p == 0 */
368 /* Skip verify of value_to_register, invalid_p == 0 */
9acbedc0 369 /* Skip verify of value_from_register, invalid_p == 0 */
4478b372
JB
370 /* Skip verify of pointer_to_address, invalid_p == 0 */
371 /* Skip verify of address_to_pointer, invalid_p == 0 */
0963b4bd 372 /* Skip verify of integer_to_address, has predicate. */
4e1d2f58
TT
373 /* Skip verify of return_value, invalid_p == 0 */
374 if ((gdbarch->return_value_as_value == default_gdbarch_return_value) == (gdbarch->return_value == nullptr))
375 log.puts ("\n\treturn_value_as_value");
a0eda3df 376 /* Skip verify of get_return_buf_addr, invalid_p == 0 */
c1a398a3 377 /* Skip verify of dwarf2_omit_typedef_p, invalid_p == 0 */
9df25c34 378 /* Skip verify of update_call_site_pc, invalid_p == 0 */
18648a37 379 /* Skip verify of return_in_first_hidden_param_p, invalid_p == 0 */
be7811ad 380 if (gdbarch->skip_prologue == 0)
d7e74731 381 log.puts ("\n\tskip_prologue");
0963b4bd 382 /* Skip verify of skip_main_prologue, has predicate. */
591a12a1 383 /* Skip verify of skip_entrypoint, has predicate. */
be7811ad 384 if (gdbarch->inner_than == 0)
d7e74731 385 log.puts ("\n\tinner_than");
22f13eb8 386 /* Skip verify of breakpoint_from_pc, invalid_p == 0 */
cd6c3b4f 387 if (gdbarch->breakpoint_kind_from_pc == 0)
d7e74731 388 log.puts ("\n\tbreakpoint_kind_from_pc");
cd6c3b4f 389 /* Skip verify of sw_breakpoint_from_kind, invalid_p == 0 */
833b7ab5 390 /* Skip verify of breakpoint_kind_from_current_state, invalid_p == 0 */
0963b4bd 391 /* Skip verify of adjust_breakpoint_address, has predicate. */
c0e8c252
AC
392 /* Skip verify of memory_insert_breakpoint, invalid_p == 0 */
393 /* Skip verify of memory_remove_breakpoint, invalid_p == 0 */
71bd6bd4 394 /* Skip verify of decr_pc_after_break, invalid_p == 0 */
782263ab 395 /* Skip verify of deprecated_function_start_offset, invalid_p == 0 */
123dc839 396 /* Skip verify of remote_register_number, invalid_p == 0 */
0963b4bd 397 /* Skip verify of fetch_tls_load_module_address, has predicate. */
6e056c81 398 /* Skip verify of get_thread_local_address, has predicate. */
5867a2fb 399 /* Skip verify of frame_args_skip, invalid_p == 0 */
8bcb5208
AB
400 /* Skip verify of unwind_pc, invalid_p == 0 */
401 /* Skip verify of unwind_sp, invalid_p == 0 */
0963b4bd
MS
402 /* Skip verify of frame_num_args, has predicate. */
403 /* Skip verify of frame_align, has predicate. */
192cb3d4 404 /* Skip verify of stabs_argument_has_addr, invalid_p == 0 */
a5118a18 405 /* Skip verify of frame_red_zone_size, invalid_p == 0 */
f517ea4e 406 /* Skip verify of convert_from_func_ptr_addr, invalid_p == 0 */
875e1767 407 /* Skip verify of addr_bits_remove, invalid_p == 0 */
d88cb738 408 /* Skip verify of remove_non_address_bits, invalid_p == 0 */
c193949e
LM
409 /* Skip verify of memtag_to_string, invalid_p == 0 */
410 /* Skip verify of tagged_address_p, invalid_p == 0 */
411 /* Skip verify of memtag_matches_p, invalid_p == 0 */
412 /* Skip verify of set_memtags, invalid_p == 0 */
413 /* Skip verify of get_memtag, invalid_p == 0 */
414 /* Skip verify of memtag_granule_size, invalid_p == 0 */
0963b4bd
MS
415 /* Skip verify of software_single_step, has predicate. */
416 /* Skip verify of single_step_through_delay, has predicate. */
39503f82 417 /* Skip verify of print_insn, invalid_p == 0 */
bdcd319a 418 /* Skip verify of skip_trampoline_code, invalid_p == 0 */
6e2d282d 419 /* Skip verify of so_ops, invalid_p == 0 */
dea0c52f 420 /* Skip verify of skip_solib_resolver, invalid_p == 0 */
d50355b6 421 /* Skip verify of in_solib_return_trampoline, invalid_p == 0 */
1d509aa6 422 /* Skip verify of in_indirect_branch_thunk, invalid_p == 0 */
c9cf6e20 423 /* Skip verify of stack_frame_destroyed_p, invalid_p == 0 */
3e29f34a 424 /* Skip verify of elf_make_msymbol_special, has predicate. */
a2cf933a 425 /* Skip verify of coff_make_msymbol_special, invalid_p == 0 */
3e29f34a
MR
426 /* Skip verify of make_symbol_special, invalid_p == 0 */
427 /* Skip verify of adjust_dwarf2_addr, invalid_p == 0 */
428 /* Skip verify of adjust_dwarf2_line, invalid_p == 0 */
c4ed33b9 429 /* Skip verify of cannot_step_breakpoint, invalid_p == 0 */
f74fa174 430 /* Skip verify of have_nonsteppable_watchpoint, invalid_p == 0 */
0963b4bd
MS
431 /* Skip verify of address_class_type_flags, has predicate. */
432 /* Skip verify of address_class_type_flags_to_name, has predicate. */
b41c5a85 433 /* Skip verify of execute_dwarf_cfa_vendor_op, invalid_p == 0 */
0963b4bd 434 /* Skip verify of address_class_name_to_type_flags, has predicate. */
7e20f3fb 435 /* Skip verify of register_reggroup_p, invalid_p == 0 */
0963b4bd 436 /* Skip verify of fetch_pointer_argument, has predicate. */
5aa82d05 437 /* Skip verify of iterate_over_regset_sections, has predicate. */
6432734d 438 /* Skip verify of make_corefile_notes, has predicate. */
35c2fab7 439 /* Skip verify of find_memory_regions, has predicate. */
68cffbbd
LM
440 /* Skip verify of create_memtag_section, has predicate. */
441 /* Skip verify of fill_memtag_section, has predicate. */
442 /* Skip verify of decode_memtag_section, has predicate. */
0963b4bd 443 /* Skip verify of core_xfer_shared_libraries, has predicate. */
356a5233 444 /* Skip verify of core_xfer_shared_libraries_aix, has predicate. */
0963b4bd 445 /* Skip verify of core_pid_to_str, has predicate. */
4dfc5dbc 446 /* Skip verify of core_thread_name, has predicate. */
382b69bb 447 /* Skip verify of core_xfer_siginfo, has predicate. */
c689d1fe 448 /* Skip verify of core_read_x86_xsave_layout, has predicate. */
0963b4bd 449 /* Skip verify of gcore_bfd_target, has predicate. */
0d5de010
DJ
450 /* Skip verify of vtable_function_descriptors, invalid_p == 0 */
451 /* Skip verify of vbit_in_delta, invalid_p == 0 */
ae9bb220 452 /* Skip verify of skip_permanent_breakpoint, invalid_p == 0 */
0963b4bd
MS
453 /* Skip verify of max_insn_length, has predicate. */
454 /* Skip verify of displaced_step_copy_insn, has predicate. */
99e40580 455 /* Skip verify of displaced_step_hw_singlestep, invalid_p == 0 */
41445712
AB
456 if ((gdbarch->displaced_step_copy_insn == nullptr) != (gdbarch->displaced_step_fixup == nullptr))
457 log.puts ("\n\tdisplaced_step_fixup");
187b041e
SM
458 /* Skip verify of displaced_step_prepare, has predicate. */
459 if ((! gdbarch->displaced_step_finish) != (! gdbarch->displaced_step_prepare))
460 log.puts ("\n\tdisplaced_step_finish");
461 /* Skip verify of displaced_step_copy_insn_closure_by_addr, has predicate. */
a5118a18 462 /* Skip verify of displaced_step_restore_all_in_ptid, invalid_p == 0 */
deb65a3c
AB
463 if (gdbarch->displaced_step_buffer_length == 0)
464 gdbarch->displaced_step_buffer_length = gdbarch->max_insn_length;
465 if (gdbarch->displaced_step_buffer_length < gdbarch->max_insn_length)
466 log.puts ("\n\tdisplaced_step_buffer_length");
0963b4bd
MS
467 /* Skip verify of relocate_instruction, has predicate. */
468 /* Skip verify of overlay_update, has predicate. */
469 /* Skip verify of core_read_description, has predicate. */
203c3895 470 /* Skip verify of sofun_address_maybe_missing, invalid_p == 0 */
0963b4bd
MS
471 /* Skip verify of process_record, has predicate. */
472 /* Skip verify of process_record_signal, has predicate. */
1f8cf220 473 /* Skip verify of gdb_signal_from_target, has predicate. */
eb14d406 474 /* Skip verify of gdb_signal_to_target, has predicate. */
0963b4bd
MS
475 /* Skip verify of get_siginfo_type, has predicate. */
476 /* Skip verify of record_special_symbol, has predicate. */
477 /* Skip verify of get_syscall_number, has predicate. */
458c8db8
SDJ
478 /* Skip verify of xml_syscall_file, invalid_p == 0 */
479 /* Skip verify of syscalls_info, invalid_p == 0 */
05c0465e
SDJ
480 /* Skip verify of stap_integer_prefixes, invalid_p == 0 */
481 /* Skip verify of stap_integer_suffixes, invalid_p == 0 */
482 /* Skip verify of stap_register_prefixes, invalid_p == 0 */
483 /* Skip verify of stap_register_suffixes, invalid_p == 0 */
484 /* Skip verify of stap_register_indirection_prefixes, invalid_p == 0 */
485 /* Skip verify of stap_register_indirection_suffixes, invalid_p == 0 */
55aa24fb
SDJ
486 /* Skip verify of stap_gdb_register_prefix, invalid_p == 0 */
487 /* Skip verify of stap_gdb_register_suffix, invalid_p == 0 */
488 /* Skip verify of stap_is_single_operand, has predicate. */
489 /* Skip verify of stap_parse_special_token, has predicate. */
7d7571f0 490 /* Skip verify of stap_adjust_register, has predicate. */
8b367e17
JM
491 /* Skip verify of dtrace_parse_probe_argument, has predicate. */
492 /* Skip verify of dtrace_probe_is_enabled, has predicate. */
493 /* Skip verify of dtrace_enable_probe, has predicate. */
494 /* Skip verify of dtrace_disable_probe, has predicate. */
50c71eaf 495 /* Skip verify of has_global_solist, invalid_p == 0 */
2567c7d9 496 /* Skip verify of has_global_breakpoints, invalid_p == 0 */
6c95b8df 497 /* Skip verify of has_shared_address_space, invalid_p == 0 */
7a697b8d 498 /* Skip verify of fast_tracepoint_valid_at, invalid_p == 0 */
5f034a78 499 /* Skip verify of guess_tracepoint_registers, invalid_p == 0 */
f870a310
TT
500 /* Skip verify of auto_charset, invalid_p == 0 */
501 /* Skip verify of auto_wide_charset, invalid_p == 0 */
a5118a18 502 /* Skip verify of solib_symbols_extension, invalid_p == 0 */
ab38a727 503 /* Skip verify of has_dos_based_file_system, invalid_p == 0 */
6710bf39 504 /* Skip verify of gen_return_address, invalid_p == 0 */
3030c96e 505 /* Skip verify of info_proc, has predicate. */
451b7c33 506 /* Skip verify of core_info_proc, has predicate. */
19630284 507 /* Skip verify of iterate_over_objfiles_in_search_order, invalid_p == 0 */
7e35103a 508 /* Skip verify of ravenscar_ops, invalid_p == 0 */
c2170eef
MM
509 /* Skip verify of insn_is_call, invalid_p == 0 */
510 /* Skip verify of insn_is_ret, invalid_p == 0 */
511 /* Skip verify of insn_is_jump, invalid_p == 0 */
5133a315 512 /* Skip verify of program_breakpoint_here_p, invalid_p == 0 */
27a48a92 513 /* Skip verify of auxv_parse, has predicate. */
2faa3447 514 /* Skip verify of print_auxv_entry, invalid_p == 0 */
3437254d 515 /* Skip verify of vsyscall_range, invalid_p == 0 */
f208eee0 516 /* Skip verify of infcall_mmap, invalid_p == 0 */
7f361056 517 /* Skip verify of infcall_munmap, invalid_p == 0 */
f208eee0 518 /* Skip verify of gcc_target_options, invalid_p == 0 */
ac04f72b 519 /* Skip verify of gnu_triplet_regexp, invalid_p == 0 */
3374165f 520 /* Skip verify of addressable_memory_unit_size, invalid_p == 0 */
471b9d15 521 /* Skip verify of disassembler_options_implicit, invalid_p == 0 */
65b48a81
PB
522 /* Skip verify of disassembler_options, invalid_p == 0 */
523 /* Skip verify of valid_disassembler_options, invalid_p == 0 */
2b4424c3 524 /* Skip verify of type_align, invalid_p == 0 */
aa7ca1bb 525 /* Skip verify of get_pc_address_flags, invalid_p == 0 */
7e183d27 526 /* Skip verify of read_core_file_mappings, invalid_p == 0 */
b93d537f 527 /* Skip verify of use_target_description_from_corefile_notes, invalid_p == 0 */
d7e74731 528 if (!log.empty ())
f34652de 529 internal_error (_("verify_gdbarch: the following are invalid ...%s"),
dda83cd7 530 log.c_str ());
0f71a2f6
JM
531}
532
533
0963b4bd 534/* Print out the details of the current architecture. */
0f71a2f6
JM
535
536void
be7811ad 537gdbarch_dump (struct gdbarch *gdbarch, struct ui_file *file)
0f71a2f6 538{
b78960be 539 const char *gdb_nm_file = "<not-defined>";
05c547f6 540
b78960be
AC
541#if defined (GDB_NM_FILE)
542 gdb_nm_file = GDB_NM_FILE;
543#endif
6cb06a8c 544 gdb_printf (file,
53e03d92
TJB
545 "gdbarch_dump: GDB_NM_FILE = %s\n",
546 gdb_nm_file);
6cb06a8c 547 gdb_printf (file,
53e03d92
TJB
548 "gdbarch_dump: bfd_arch_info = %s\n",
549 gdbarch_bfd_arch_info (gdbarch)->printable_name);
6cb06a8c 550 gdb_printf (file,
53e03d92
TJB
551 "gdbarch_dump: byte_order = %s\n",
552 plongest (gdbarch->byte_order));
6cb06a8c 553 gdb_printf (file,
53e03d92
TJB
554 "gdbarch_dump: byte_order_for_code = %s\n",
555 plongest (gdbarch->byte_order_for_code));
6cb06a8c 556 gdb_printf (file,
53e03d92
TJB
557 "gdbarch_dump: osabi = %s\n",
558 plongest (gdbarch->osabi));
6cb06a8c 559 gdb_printf (file,
53e03d92
TJB
560 "gdbarch_dump: target_desc = %s\n",
561 host_address_to_string (gdbarch->target_desc));
6cb06a8c 562 gdb_printf (file,
53e03d92
TJB
563 "gdbarch_dump: short_bit = %s\n",
564 plongest (gdbarch->short_bit));
6cb06a8c 565 gdb_printf (file,
53e03d92
TJB
566 "gdbarch_dump: int_bit = %s\n",
567 plongest (gdbarch->int_bit));
6cb06a8c 568 gdb_printf (file,
53e03d92
TJB
569 "gdbarch_dump: long_bit = %s\n",
570 plongest (gdbarch->long_bit));
6cb06a8c 571 gdb_printf (file,
53e03d92
TJB
572 "gdbarch_dump: long_long_bit = %s\n",
573 plongest (gdbarch->long_long_bit));
6cb06a8c 574 gdb_printf (file,
53e03d92
TJB
575 "gdbarch_dump: bfloat16_bit = %s\n",
576 plongest (gdbarch->bfloat16_bit));
6cb06a8c 577 gdb_printf (file,
53e03d92
TJB
578 "gdbarch_dump: bfloat16_format = %s\n",
579 pformat (gdbarch, gdbarch->bfloat16_format));
6cb06a8c 580 gdb_printf (file,
53e03d92
TJB
581 "gdbarch_dump: half_bit = %s\n",
582 plongest (gdbarch->half_bit));
6cb06a8c 583 gdb_printf (file,
53e03d92
TJB
584 "gdbarch_dump: half_format = %s\n",
585 pformat (gdbarch, gdbarch->half_format));
6cb06a8c 586 gdb_printf (file,
53e03d92
TJB
587 "gdbarch_dump: float_bit = %s\n",
588 plongest (gdbarch->float_bit));
6cb06a8c 589 gdb_printf (file,
53e03d92
TJB
590 "gdbarch_dump: float_format = %s\n",
591 pformat (gdbarch, gdbarch->float_format));
6cb06a8c 592 gdb_printf (file,
53e03d92
TJB
593 "gdbarch_dump: double_bit = %s\n",
594 plongest (gdbarch->double_bit));
6cb06a8c 595 gdb_printf (file,
53e03d92
TJB
596 "gdbarch_dump: double_format = %s\n",
597 pformat (gdbarch, gdbarch->double_format));
6cb06a8c 598 gdb_printf (file,
53e03d92
TJB
599 "gdbarch_dump: long_double_bit = %s\n",
600 plongest (gdbarch->long_double_bit));
6cb06a8c 601 gdb_printf (file,
53e03d92
TJB
602 "gdbarch_dump: long_double_format = %s\n",
603 pformat (gdbarch, gdbarch->long_double_format));
6cb06a8c 604 gdb_printf (file,
53e03d92
TJB
605 "gdbarch_dump: wchar_bit = %s\n",
606 plongest (gdbarch->wchar_bit));
6cb06a8c 607 gdb_printf (file,
53e03d92
TJB
608 "gdbarch_dump: wchar_signed = %s\n",
609 plongest (gdbarch->wchar_signed));
6cb06a8c 610 gdb_printf (file,
53e03d92
TJB
611 "gdbarch_dump: floatformat_for_type = <%s>\n",
612 host_address_to_string (gdbarch->floatformat_for_type));
6cb06a8c 613 gdb_printf (file,
53e03d92
TJB
614 "gdbarch_dump: ptr_bit = %s\n",
615 plongest (gdbarch->ptr_bit));
6cb06a8c 616 gdb_printf (file,
53e03d92
TJB
617 "gdbarch_dump: addr_bit = %s\n",
618 plongest (gdbarch->addr_bit));
6cb06a8c 619 gdb_printf (file,
53e03d92
TJB
620 "gdbarch_dump: dwarf2_addr_size = %s\n",
621 plongest (gdbarch->dwarf2_addr_size));
6cb06a8c 622 gdb_printf (file,
53e03d92
TJB
623 "gdbarch_dump: char_signed = %s\n",
624 plongest (gdbarch->char_signed));
6cb06a8c 625 gdb_printf (file,
53e03d92
TJB
626 "gdbarch_dump: gdbarch_read_pc_p() = %d\n",
627 gdbarch_read_pc_p (gdbarch));
6cb06a8c 628 gdb_printf (file,
53e03d92
TJB
629 "gdbarch_dump: read_pc = <%s>\n",
630 host_address_to_string (gdbarch->read_pc));
6cb06a8c 631 gdb_printf (file,
53e03d92
TJB
632 "gdbarch_dump: gdbarch_write_pc_p() = %d\n",
633 gdbarch_write_pc_p (gdbarch));
6cb06a8c 634 gdb_printf (file,
53e03d92
TJB
635 "gdbarch_dump: write_pc = <%s>\n",
636 host_address_to_string (gdbarch->write_pc));
6cb06a8c 637 gdb_printf (file,
53e03d92
TJB
638 "gdbarch_dump: virtual_frame_pointer = <%s>\n",
639 host_address_to_string (gdbarch->virtual_frame_pointer));
6cb06a8c 640 gdb_printf (file,
53e03d92
TJB
641 "gdbarch_dump: gdbarch_pseudo_register_read_p() = %d\n",
642 gdbarch_pseudo_register_read_p (gdbarch));
6cb06a8c 643 gdb_printf (file,
53e03d92
TJB
644 "gdbarch_dump: pseudo_register_read = <%s>\n",
645 host_address_to_string (gdbarch->pseudo_register_read));
6cb06a8c 646 gdb_printf (file,
53e03d92
TJB
647 "gdbarch_dump: gdbarch_pseudo_register_read_value_p() = %d\n",
648 gdbarch_pseudo_register_read_value_p (gdbarch));
6cb06a8c 649 gdb_printf (file,
53e03d92
TJB
650 "gdbarch_dump: pseudo_register_read_value = <%s>\n",
651 host_address_to_string (gdbarch->pseudo_register_read_value));
6cb06a8c 652 gdb_printf (file,
53e03d92
TJB
653 "gdbarch_dump: gdbarch_pseudo_register_write_p() = %d\n",
654 gdbarch_pseudo_register_write_p (gdbarch));
6cb06a8c 655 gdb_printf (file,
53e03d92
TJB
656 "gdbarch_dump: pseudo_register_write = <%s>\n",
657 host_address_to_string (gdbarch->pseudo_register_write));
6cb06a8c 658 gdb_printf (file,
53e03d92
TJB
659 "gdbarch_dump: num_regs = %s\n",
660 plongest (gdbarch->num_regs));
6cb06a8c 661 gdb_printf (file,
53e03d92
TJB
662 "gdbarch_dump: num_pseudo_regs = %s\n",
663 plongest (gdbarch->num_pseudo_regs));
6cb06a8c 664 gdb_printf (file,
53e03d92
TJB
665 "gdbarch_dump: gdbarch_ax_pseudo_register_collect_p() = %d\n",
666 gdbarch_ax_pseudo_register_collect_p (gdbarch));
6cb06a8c 667 gdb_printf (file,
53e03d92
TJB
668 "gdbarch_dump: ax_pseudo_register_collect = <%s>\n",
669 host_address_to_string (gdbarch->ax_pseudo_register_collect));
6cb06a8c 670 gdb_printf (file,
53e03d92
TJB
671 "gdbarch_dump: gdbarch_ax_pseudo_register_push_stack_p() = %d\n",
672 gdbarch_ax_pseudo_register_push_stack_p (gdbarch));
6cb06a8c 673 gdb_printf (file,
53e03d92
TJB
674 "gdbarch_dump: ax_pseudo_register_push_stack = <%s>\n",
675 host_address_to_string (gdbarch->ax_pseudo_register_push_stack));
6cb06a8c 676 gdb_printf (file,
53e03d92
TJB
677 "gdbarch_dump: gdbarch_report_signal_info_p() = %d\n",
678 gdbarch_report_signal_info_p (gdbarch));
6cb06a8c 679 gdb_printf (file,
53e03d92
TJB
680 "gdbarch_dump: report_signal_info = <%s>\n",
681 host_address_to_string (gdbarch->report_signal_info));
6cb06a8c 682 gdb_printf (file,
53e03d92
TJB
683 "gdbarch_dump: sp_regnum = %s\n",
684 plongest (gdbarch->sp_regnum));
6cb06a8c 685 gdb_printf (file,
53e03d92
TJB
686 "gdbarch_dump: pc_regnum = %s\n",
687 plongest (gdbarch->pc_regnum));
6cb06a8c 688 gdb_printf (file,
53e03d92
TJB
689 "gdbarch_dump: ps_regnum = %s\n",
690 plongest (gdbarch->ps_regnum));
6cb06a8c 691 gdb_printf (file,
53e03d92
TJB
692 "gdbarch_dump: fp0_regnum = %s\n",
693 plongest (gdbarch->fp0_regnum));
6cb06a8c 694 gdb_printf (file,
53e03d92
TJB
695 "gdbarch_dump: stab_reg_to_regnum = <%s>\n",
696 host_address_to_string (gdbarch->stab_reg_to_regnum));
6cb06a8c 697 gdb_printf (file,
53e03d92
TJB
698 "gdbarch_dump: ecoff_reg_to_regnum = <%s>\n",
699 host_address_to_string (gdbarch->ecoff_reg_to_regnum));
6cb06a8c 700 gdb_printf (file,
53e03d92
TJB
701 "gdbarch_dump: sdb_reg_to_regnum = <%s>\n",
702 host_address_to_string (gdbarch->sdb_reg_to_regnum));
6cb06a8c 703 gdb_printf (file,
53e03d92
TJB
704 "gdbarch_dump: dwarf2_reg_to_regnum = <%s>\n",
705 host_address_to_string (gdbarch->dwarf2_reg_to_regnum));
6cb06a8c 706 gdb_printf (file,
53e03d92
TJB
707 "gdbarch_dump: register_name = <%s>\n",
708 host_address_to_string (gdbarch->register_name));
6cb06a8c 709 gdb_printf (file,
53e03d92
TJB
710 "gdbarch_dump: register_type = <%s>\n",
711 host_address_to_string (gdbarch->register_type));
6cb06a8c 712 gdb_printf (file,
53e03d92
TJB
713 "gdbarch_dump: dummy_id = <%s>\n",
714 host_address_to_string (gdbarch->dummy_id));
6cb06a8c 715 gdb_printf (file,
53e03d92
TJB
716 "gdbarch_dump: deprecated_fp_regnum = %s\n",
717 plongest (gdbarch->deprecated_fp_regnum));
6cb06a8c 718 gdb_printf (file,
53e03d92
TJB
719 "gdbarch_dump: gdbarch_push_dummy_call_p() = %d\n",
720 gdbarch_push_dummy_call_p (gdbarch));
6cb06a8c 721 gdb_printf (file,
53e03d92
TJB
722 "gdbarch_dump: push_dummy_call = <%s>\n",
723 host_address_to_string (gdbarch->push_dummy_call));
6cb06a8c 724 gdb_printf (file,
53e03d92
TJB
725 "gdbarch_dump: call_dummy_location = %s\n",
726 plongest (gdbarch->call_dummy_location));
6cb06a8c 727 gdb_printf (file,
53e03d92
TJB
728 "gdbarch_dump: gdbarch_push_dummy_code_p() = %d\n",
729 gdbarch_push_dummy_code_p (gdbarch));
6cb06a8c 730 gdb_printf (file,
53e03d92
TJB
731 "gdbarch_dump: push_dummy_code = <%s>\n",
732 host_address_to_string (gdbarch->push_dummy_code));
6cb06a8c 733 gdb_printf (file,
53e03d92
TJB
734 "gdbarch_dump: code_of_frame_writable = <%s>\n",
735 host_address_to_string (gdbarch->code_of_frame_writable));
6cb06a8c 736 gdb_printf (file,
53e03d92
TJB
737 "gdbarch_dump: print_registers_info = <%s>\n",
738 host_address_to_string (gdbarch->print_registers_info));
6cb06a8c 739 gdb_printf (file,
53e03d92
TJB
740 "gdbarch_dump: print_float_info = <%s>\n",
741 host_address_to_string (gdbarch->print_float_info));
6cb06a8c 742 gdb_printf (file,
53e03d92
TJB
743 "gdbarch_dump: gdbarch_print_vector_info_p() = %d\n",
744 gdbarch_print_vector_info_p (gdbarch));
6cb06a8c 745 gdb_printf (file,
53e03d92
TJB
746 "gdbarch_dump: print_vector_info = <%s>\n",
747 host_address_to_string (gdbarch->print_vector_info));
6cb06a8c 748 gdb_printf (file,
53e03d92
TJB
749 "gdbarch_dump: register_sim_regno = <%s>\n",
750 host_address_to_string (gdbarch->register_sim_regno));
6cb06a8c 751 gdb_printf (file,
53e03d92
TJB
752 "gdbarch_dump: cannot_fetch_register = <%s>\n",
753 host_address_to_string (gdbarch->cannot_fetch_register));
6cb06a8c 754 gdb_printf (file,
53e03d92
TJB
755 "gdbarch_dump: cannot_store_register = <%s>\n",
756 host_address_to_string (gdbarch->cannot_store_register));
6cb06a8c 757 gdb_printf (file,
53e03d92
TJB
758 "gdbarch_dump: gdbarch_get_longjmp_target_p() = %d\n",
759 gdbarch_get_longjmp_target_p (gdbarch));
6cb06a8c 760 gdb_printf (file,
53e03d92
TJB
761 "gdbarch_dump: get_longjmp_target = <%s>\n",
762 host_address_to_string (gdbarch->get_longjmp_target));
6cb06a8c 763 gdb_printf (file,
53e03d92
TJB
764 "gdbarch_dump: believe_pcc_promotion = %s\n",
765 plongest (gdbarch->believe_pcc_promotion));
6cb06a8c 766 gdb_printf (file,
53e03d92
TJB
767 "gdbarch_dump: convert_register_p = <%s>\n",
768 host_address_to_string (gdbarch->convert_register_p));
6cb06a8c 769 gdb_printf (file,
53e03d92
TJB
770 "gdbarch_dump: register_to_value = <%s>\n",
771 host_address_to_string (gdbarch->register_to_value));
6cb06a8c 772 gdb_printf (file,
53e03d92
TJB
773 "gdbarch_dump: value_to_register = <%s>\n",
774 host_address_to_string (gdbarch->value_to_register));
6cb06a8c 775 gdb_printf (file,
53e03d92
TJB
776 "gdbarch_dump: value_from_register = <%s>\n",
777 host_address_to_string (gdbarch->value_from_register));
6cb06a8c 778 gdb_printf (file,
53e03d92
TJB
779 "gdbarch_dump: pointer_to_address = <%s>\n",
780 host_address_to_string (gdbarch->pointer_to_address));
6cb06a8c 781 gdb_printf (file,
53e03d92
TJB
782 "gdbarch_dump: address_to_pointer = <%s>\n",
783 host_address_to_string (gdbarch->address_to_pointer));
6cb06a8c 784 gdb_printf (file,
53e03d92
TJB
785 "gdbarch_dump: gdbarch_integer_to_address_p() = %d\n",
786 gdbarch_integer_to_address_p (gdbarch));
6cb06a8c 787 gdb_printf (file,
53e03d92
TJB
788 "gdbarch_dump: integer_to_address = <%s>\n",
789 host_address_to_string (gdbarch->integer_to_address));
6cb06a8c 790 gdb_printf (file,
53e03d92
TJB
791 "gdbarch_dump: return_value = <%s>\n",
792 host_address_to_string (gdbarch->return_value));
4e1d2f58
TT
793 gdb_printf (file,
794 "gdbarch_dump: return_value_as_value = <%s>\n",
795 host_address_to_string (gdbarch->return_value_as_value));
a0eda3df 796 gdb_printf (file,
53e03d92
TJB
797 "gdbarch_dump: get_return_buf_addr = <%s>\n",
798 host_address_to_string (gdbarch->get_return_buf_addr));
c1a398a3
CL
799 gdb_printf (file,
800 "gdbarch_dump: dwarf2_omit_typedef_p = <%s>\n",
801 host_address_to_string (gdbarch->dwarf2_omit_typedef_p));
9df25c34
TT
802 gdb_printf (file,
803 "gdbarch_dump: update_call_site_pc = <%s>\n",
804 host_address_to_string (gdbarch->update_call_site_pc));
6cb06a8c 805 gdb_printf (file,
53e03d92
TJB
806 "gdbarch_dump: return_in_first_hidden_param_p = <%s>\n",
807 host_address_to_string (gdbarch->return_in_first_hidden_param_p));
6cb06a8c 808 gdb_printf (file,
53e03d92
TJB
809 "gdbarch_dump: skip_prologue = <%s>\n",
810 host_address_to_string (gdbarch->skip_prologue));
6cb06a8c 811 gdb_printf (file,
53e03d92
TJB
812 "gdbarch_dump: gdbarch_skip_main_prologue_p() = %d\n",
813 gdbarch_skip_main_prologue_p (gdbarch));
6cb06a8c 814 gdb_printf (file,
53e03d92
TJB
815 "gdbarch_dump: skip_main_prologue = <%s>\n",
816 host_address_to_string (gdbarch->skip_main_prologue));
6cb06a8c 817 gdb_printf (file,
53e03d92
TJB
818 "gdbarch_dump: gdbarch_skip_entrypoint_p() = %d\n",
819 gdbarch_skip_entrypoint_p (gdbarch));
6cb06a8c 820 gdb_printf (file,
53e03d92
TJB
821 "gdbarch_dump: skip_entrypoint = <%s>\n",
822 host_address_to_string (gdbarch->skip_entrypoint));
6cb06a8c 823 gdb_printf (file,
53e03d92
TJB
824 "gdbarch_dump: inner_than = <%s>\n",
825 host_address_to_string (gdbarch->inner_than));
6cb06a8c 826 gdb_printf (file,
53e03d92
TJB
827 "gdbarch_dump: breakpoint_from_pc = <%s>\n",
828 host_address_to_string (gdbarch->breakpoint_from_pc));
6cb06a8c 829 gdb_printf (file,
53e03d92
TJB
830 "gdbarch_dump: breakpoint_kind_from_pc = <%s>\n",
831 host_address_to_string (gdbarch->breakpoint_kind_from_pc));
6cb06a8c 832 gdb_printf (file,
53e03d92
TJB
833 "gdbarch_dump: sw_breakpoint_from_kind = <%s>\n",
834 host_address_to_string (gdbarch->sw_breakpoint_from_kind));
6cb06a8c 835 gdb_printf (file,
53e03d92
TJB
836 "gdbarch_dump: breakpoint_kind_from_current_state = <%s>\n",
837 host_address_to_string (gdbarch->breakpoint_kind_from_current_state));
6cb06a8c 838 gdb_printf (file,
53e03d92
TJB
839 "gdbarch_dump: gdbarch_adjust_breakpoint_address_p() = %d\n",
840 gdbarch_adjust_breakpoint_address_p (gdbarch));
6cb06a8c 841 gdb_printf (file,
53e03d92
TJB
842 "gdbarch_dump: adjust_breakpoint_address = <%s>\n",
843 host_address_to_string (gdbarch->adjust_breakpoint_address));
6cb06a8c 844 gdb_printf (file,
53e03d92
TJB
845 "gdbarch_dump: memory_insert_breakpoint = <%s>\n",
846 host_address_to_string (gdbarch->memory_insert_breakpoint));
6cb06a8c 847 gdb_printf (file,
53e03d92
TJB
848 "gdbarch_dump: memory_remove_breakpoint = <%s>\n",
849 host_address_to_string (gdbarch->memory_remove_breakpoint));
6cb06a8c 850 gdb_printf (file,
53e03d92
TJB
851 "gdbarch_dump: decr_pc_after_break = %s\n",
852 core_addr_to_string_nz (gdbarch->decr_pc_after_break));
6cb06a8c 853 gdb_printf (file,
53e03d92
TJB
854 "gdbarch_dump: deprecated_function_start_offset = %s\n",
855 core_addr_to_string_nz (gdbarch->deprecated_function_start_offset));
6cb06a8c 856 gdb_printf (file,
53e03d92
TJB
857 "gdbarch_dump: remote_register_number = <%s>\n",
858 host_address_to_string (gdbarch->remote_register_number));
6cb06a8c 859 gdb_printf (file,
53e03d92
TJB
860 "gdbarch_dump: gdbarch_fetch_tls_load_module_address_p() = %d\n",
861 gdbarch_fetch_tls_load_module_address_p (gdbarch));
6cb06a8c 862 gdb_printf (file,
53e03d92
TJB
863 "gdbarch_dump: fetch_tls_load_module_address = <%s>\n",
864 host_address_to_string (gdbarch->fetch_tls_load_module_address));
6cb06a8c 865 gdb_printf (file,
53e03d92
TJB
866 "gdbarch_dump: gdbarch_get_thread_local_address_p() = %d\n",
867 gdbarch_get_thread_local_address_p (gdbarch));
6cb06a8c 868 gdb_printf (file,
53e03d92
TJB
869 "gdbarch_dump: get_thread_local_address = <%s>\n",
870 host_address_to_string (gdbarch->get_thread_local_address));
6cb06a8c 871 gdb_printf (file,
53e03d92
TJB
872 "gdbarch_dump: frame_args_skip = %s\n",
873 core_addr_to_string_nz (gdbarch->frame_args_skip));
6cb06a8c 874 gdb_printf (file,
53e03d92
TJB
875 "gdbarch_dump: unwind_pc = <%s>\n",
876 host_address_to_string (gdbarch->unwind_pc));
6cb06a8c 877 gdb_printf (file,
53e03d92
TJB
878 "gdbarch_dump: unwind_sp = <%s>\n",
879 host_address_to_string (gdbarch->unwind_sp));
6cb06a8c 880 gdb_printf (file,
53e03d92
TJB
881 "gdbarch_dump: gdbarch_frame_num_args_p() = %d\n",
882 gdbarch_frame_num_args_p (gdbarch));
6cb06a8c 883 gdb_printf (file,
53e03d92
TJB
884 "gdbarch_dump: frame_num_args = <%s>\n",
885 host_address_to_string (gdbarch->frame_num_args));
6cb06a8c 886 gdb_printf (file,
53e03d92
TJB
887 "gdbarch_dump: gdbarch_frame_align_p() = %d\n",
888 gdbarch_frame_align_p (gdbarch));
6cb06a8c 889 gdb_printf (file,
53e03d92
TJB
890 "gdbarch_dump: frame_align = <%s>\n",
891 host_address_to_string (gdbarch->frame_align));
6cb06a8c 892 gdb_printf (file,
53e03d92
TJB
893 "gdbarch_dump: stabs_argument_has_addr = <%s>\n",
894 host_address_to_string (gdbarch->stabs_argument_has_addr));
6cb06a8c 895 gdb_printf (file,
53e03d92
TJB
896 "gdbarch_dump: frame_red_zone_size = %s\n",
897 plongest (gdbarch->frame_red_zone_size));
6cb06a8c 898 gdb_printf (file,
53e03d92
TJB
899 "gdbarch_dump: convert_from_func_ptr_addr = <%s>\n",
900 host_address_to_string (gdbarch->convert_from_func_ptr_addr));
6cb06a8c 901 gdb_printf (file,
53e03d92
TJB
902 "gdbarch_dump: addr_bits_remove = <%s>\n",
903 host_address_to_string (gdbarch->addr_bits_remove));
6cb06a8c 904 gdb_printf (file,
d88cb738
LM
905 "gdbarch_dump: remove_non_address_bits = <%s>\n",
906 host_address_to_string (gdbarch->remove_non_address_bits));
6cb06a8c 907 gdb_printf (file,
53e03d92
TJB
908 "gdbarch_dump: memtag_to_string = <%s>\n",
909 host_address_to_string (gdbarch->memtag_to_string));
6cb06a8c 910 gdb_printf (file,
53e03d92
TJB
911 "gdbarch_dump: tagged_address_p = <%s>\n",
912 host_address_to_string (gdbarch->tagged_address_p));
6cb06a8c 913 gdb_printf (file,
53e03d92
TJB
914 "gdbarch_dump: memtag_matches_p = <%s>\n",
915 host_address_to_string (gdbarch->memtag_matches_p));
6cb06a8c 916 gdb_printf (file,
53e03d92
TJB
917 "gdbarch_dump: set_memtags = <%s>\n",
918 host_address_to_string (gdbarch->set_memtags));
6cb06a8c 919 gdb_printf (file,
53e03d92
TJB
920 "gdbarch_dump: get_memtag = <%s>\n",
921 host_address_to_string (gdbarch->get_memtag));
6cb06a8c 922 gdb_printf (file,
53e03d92
TJB
923 "gdbarch_dump: memtag_granule_size = %s\n",
924 core_addr_to_string_nz (gdbarch->memtag_granule_size));
6cb06a8c 925 gdb_printf (file,
53e03d92
TJB
926 "gdbarch_dump: gdbarch_software_single_step_p() = %d\n",
927 gdbarch_software_single_step_p (gdbarch));
6cb06a8c 928 gdb_printf (file,
53e03d92
TJB
929 "gdbarch_dump: software_single_step = <%s>\n",
930 host_address_to_string (gdbarch->software_single_step));
6cb06a8c 931 gdb_printf (file,
53e03d92
TJB
932 "gdbarch_dump: gdbarch_single_step_through_delay_p() = %d\n",
933 gdbarch_single_step_through_delay_p (gdbarch));
6cb06a8c 934 gdb_printf (file,
53e03d92
TJB
935 "gdbarch_dump: single_step_through_delay = <%s>\n",
936 host_address_to_string (gdbarch->single_step_through_delay));
6cb06a8c 937 gdb_printf (file,
53e03d92
TJB
938 "gdbarch_dump: print_insn = <%s>\n",
939 host_address_to_string (gdbarch->print_insn));
6cb06a8c 940 gdb_printf (file,
53e03d92
TJB
941 "gdbarch_dump: skip_trampoline_code = <%s>\n",
942 host_address_to_string (gdbarch->skip_trampoline_code));
9e468e95 943 gdb_printf (file,
53e03d92
TJB
944 "gdbarch_dump: so_ops = %s\n",
945 host_address_to_string (gdbarch->so_ops));
6cb06a8c 946 gdb_printf (file,
53e03d92
TJB
947 "gdbarch_dump: skip_solib_resolver = <%s>\n",
948 host_address_to_string (gdbarch->skip_solib_resolver));
6cb06a8c 949 gdb_printf (file,
53e03d92
TJB
950 "gdbarch_dump: in_solib_return_trampoline = <%s>\n",
951 host_address_to_string (gdbarch->in_solib_return_trampoline));
6cb06a8c 952 gdb_printf (file,
53e03d92
TJB
953 "gdbarch_dump: in_indirect_branch_thunk = <%s>\n",
954 host_address_to_string (gdbarch->in_indirect_branch_thunk));
6cb06a8c 955 gdb_printf (file,
53e03d92
TJB
956 "gdbarch_dump: stack_frame_destroyed_p = <%s>\n",
957 host_address_to_string (gdbarch->stack_frame_destroyed_p));
6cb06a8c 958 gdb_printf (file,
53e03d92
TJB
959 "gdbarch_dump: gdbarch_elf_make_msymbol_special_p() = %d\n",
960 gdbarch_elf_make_msymbol_special_p (gdbarch));
6cb06a8c 961 gdb_printf (file,
53e03d92
TJB
962 "gdbarch_dump: elf_make_msymbol_special = <%s>\n",
963 host_address_to_string (gdbarch->elf_make_msymbol_special));
6cb06a8c 964 gdb_printf (file,
53e03d92
TJB
965 "gdbarch_dump: coff_make_msymbol_special = <%s>\n",
966 host_address_to_string (gdbarch->coff_make_msymbol_special));
6cb06a8c 967 gdb_printf (file,
53e03d92
TJB
968 "gdbarch_dump: make_symbol_special = <%s>\n",
969 host_address_to_string (gdbarch->make_symbol_special));
6cb06a8c 970 gdb_printf (file,
53e03d92
TJB
971 "gdbarch_dump: adjust_dwarf2_addr = <%s>\n",
972 host_address_to_string (gdbarch->adjust_dwarf2_addr));
6cb06a8c 973 gdb_printf (file,
53e03d92
TJB
974 "gdbarch_dump: adjust_dwarf2_line = <%s>\n",
975 host_address_to_string (gdbarch->adjust_dwarf2_line));
6cb06a8c 976 gdb_printf (file,
53e03d92
TJB
977 "gdbarch_dump: cannot_step_breakpoint = %s\n",
978 plongest (gdbarch->cannot_step_breakpoint));
6cb06a8c 979 gdb_printf (file,
53e03d92
TJB
980 "gdbarch_dump: have_nonsteppable_watchpoint = %s\n",
981 plongest (gdbarch->have_nonsteppable_watchpoint));
6cb06a8c 982 gdb_printf (file,
53e03d92
TJB
983 "gdbarch_dump: gdbarch_address_class_type_flags_p() = %d\n",
984 gdbarch_address_class_type_flags_p (gdbarch));
6cb06a8c 985 gdb_printf (file,
53e03d92
TJB
986 "gdbarch_dump: address_class_type_flags = <%s>\n",
987 host_address_to_string (gdbarch->address_class_type_flags));
6cb06a8c 988 gdb_printf (file,
53e03d92
TJB
989 "gdbarch_dump: gdbarch_address_class_type_flags_to_name_p() = %d\n",
990 gdbarch_address_class_type_flags_to_name_p (gdbarch));
6cb06a8c 991 gdb_printf (file,
53e03d92
TJB
992 "gdbarch_dump: address_class_type_flags_to_name = <%s>\n",
993 host_address_to_string (gdbarch->address_class_type_flags_to_name));
6cb06a8c 994 gdb_printf (file,
53e03d92
TJB
995 "gdbarch_dump: execute_dwarf_cfa_vendor_op = <%s>\n",
996 host_address_to_string (gdbarch->execute_dwarf_cfa_vendor_op));
6cb06a8c 997 gdb_printf (file,
53e03d92
TJB
998 "gdbarch_dump: gdbarch_address_class_name_to_type_flags_p() = %d\n",
999 gdbarch_address_class_name_to_type_flags_p (gdbarch));
6cb06a8c 1000 gdb_printf (file,
53e03d92
TJB
1001 "gdbarch_dump: address_class_name_to_type_flags = <%s>\n",
1002 host_address_to_string (gdbarch->address_class_name_to_type_flags));
6cb06a8c 1003 gdb_printf (file,
53e03d92
TJB
1004 "gdbarch_dump: register_reggroup_p = <%s>\n",
1005 host_address_to_string (gdbarch->register_reggroup_p));
6cb06a8c 1006 gdb_printf (file,
53e03d92
TJB
1007 "gdbarch_dump: gdbarch_fetch_pointer_argument_p() = %d\n",
1008 gdbarch_fetch_pointer_argument_p (gdbarch));
6cb06a8c 1009 gdb_printf (file,
53e03d92
TJB
1010 "gdbarch_dump: fetch_pointer_argument = <%s>\n",
1011 host_address_to_string (gdbarch->fetch_pointer_argument));
6cb06a8c 1012 gdb_printf (file,
53e03d92
TJB
1013 "gdbarch_dump: gdbarch_iterate_over_regset_sections_p() = %d\n",
1014 gdbarch_iterate_over_regset_sections_p (gdbarch));
6cb06a8c 1015 gdb_printf (file,
53e03d92
TJB
1016 "gdbarch_dump: iterate_over_regset_sections = <%s>\n",
1017 host_address_to_string (gdbarch->iterate_over_regset_sections));
6cb06a8c 1018 gdb_printf (file,
53e03d92
TJB
1019 "gdbarch_dump: gdbarch_make_corefile_notes_p() = %d\n",
1020 gdbarch_make_corefile_notes_p (gdbarch));
6cb06a8c 1021 gdb_printf (file,
53e03d92
TJB
1022 "gdbarch_dump: make_corefile_notes = <%s>\n",
1023 host_address_to_string (gdbarch->make_corefile_notes));
6cb06a8c 1024 gdb_printf (file,
53e03d92
TJB
1025 "gdbarch_dump: gdbarch_find_memory_regions_p() = %d\n",
1026 gdbarch_find_memory_regions_p (gdbarch));
6cb06a8c 1027 gdb_printf (file,
53e03d92
TJB
1028 "gdbarch_dump: find_memory_regions = <%s>\n",
1029 host_address_to_string (gdbarch->find_memory_regions));
68cffbbd 1030 gdb_printf (file,
53e03d92
TJB
1031 "gdbarch_dump: gdbarch_create_memtag_section_p() = %d\n",
1032 gdbarch_create_memtag_section_p (gdbarch));
68cffbbd 1033 gdb_printf (file,
53e03d92
TJB
1034 "gdbarch_dump: create_memtag_section = <%s>\n",
1035 host_address_to_string (gdbarch->create_memtag_section));
68cffbbd 1036 gdb_printf (file,
53e03d92
TJB
1037 "gdbarch_dump: gdbarch_fill_memtag_section_p() = %d\n",
1038 gdbarch_fill_memtag_section_p (gdbarch));
68cffbbd 1039 gdb_printf (file,
53e03d92
TJB
1040 "gdbarch_dump: fill_memtag_section = <%s>\n",
1041 host_address_to_string (gdbarch->fill_memtag_section));
68cffbbd 1042 gdb_printf (file,
53e03d92
TJB
1043 "gdbarch_dump: gdbarch_decode_memtag_section_p() = %d\n",
1044 gdbarch_decode_memtag_section_p (gdbarch));
68cffbbd 1045 gdb_printf (file,
53e03d92
TJB
1046 "gdbarch_dump: decode_memtag_section = <%s>\n",
1047 host_address_to_string (gdbarch->decode_memtag_section));
6cb06a8c 1048 gdb_printf (file,
53e03d92
TJB
1049 "gdbarch_dump: gdbarch_core_xfer_shared_libraries_p() = %d\n",
1050 gdbarch_core_xfer_shared_libraries_p (gdbarch));
6cb06a8c 1051 gdb_printf (file,
53e03d92
TJB
1052 "gdbarch_dump: core_xfer_shared_libraries = <%s>\n",
1053 host_address_to_string (gdbarch->core_xfer_shared_libraries));
6cb06a8c 1054 gdb_printf (file,
53e03d92
TJB
1055 "gdbarch_dump: gdbarch_core_xfer_shared_libraries_aix_p() = %d\n",
1056 gdbarch_core_xfer_shared_libraries_aix_p (gdbarch));
6cb06a8c 1057 gdb_printf (file,
53e03d92
TJB
1058 "gdbarch_dump: core_xfer_shared_libraries_aix = <%s>\n",
1059 host_address_to_string (gdbarch->core_xfer_shared_libraries_aix));
6cb06a8c 1060 gdb_printf (file,
53e03d92
TJB
1061 "gdbarch_dump: gdbarch_core_pid_to_str_p() = %d\n",
1062 gdbarch_core_pid_to_str_p (gdbarch));
6cb06a8c 1063 gdb_printf (file,
53e03d92
TJB
1064 "gdbarch_dump: core_pid_to_str = <%s>\n",
1065 host_address_to_string (gdbarch->core_pid_to_str));
6cb06a8c 1066 gdb_printf (file,
53e03d92
TJB
1067 "gdbarch_dump: gdbarch_core_thread_name_p() = %d\n",
1068 gdbarch_core_thread_name_p (gdbarch));
6cb06a8c 1069 gdb_printf (file,
53e03d92
TJB
1070 "gdbarch_dump: core_thread_name = <%s>\n",
1071 host_address_to_string (gdbarch->core_thread_name));
6cb06a8c 1072 gdb_printf (file,
53e03d92
TJB
1073 "gdbarch_dump: gdbarch_core_xfer_siginfo_p() = %d\n",
1074 gdbarch_core_xfer_siginfo_p (gdbarch));
6cb06a8c 1075 gdb_printf (file,
53e03d92
TJB
1076 "gdbarch_dump: core_xfer_siginfo = <%s>\n",
1077 host_address_to_string (gdbarch->core_xfer_siginfo));
c689d1fe
JB
1078 gdb_printf (file,
1079 "gdbarch_dump: gdbarch_core_read_x86_xsave_layout_p() = %d\n",
1080 gdbarch_core_read_x86_xsave_layout_p (gdbarch));
1081 gdb_printf (file,
1082 "gdbarch_dump: core_read_x86_xsave_layout = <%s>\n",
1083 host_address_to_string (gdbarch->core_read_x86_xsave_layout));
6cb06a8c 1084 gdb_printf (file,
53e03d92
TJB
1085 "gdbarch_dump: gdbarch_gcore_bfd_target_p() = %d\n",
1086 gdbarch_gcore_bfd_target_p (gdbarch));
6cb06a8c 1087 gdb_printf (file,
53e03d92
TJB
1088 "gdbarch_dump: gcore_bfd_target = %s\n",
1089 pstring (gdbarch->gcore_bfd_target));
6cb06a8c 1090 gdb_printf (file,
53e03d92
TJB
1091 "gdbarch_dump: vtable_function_descriptors = %s\n",
1092 plongest (gdbarch->vtable_function_descriptors));
6cb06a8c 1093 gdb_printf (file,
53e03d92
TJB
1094 "gdbarch_dump: vbit_in_delta = %s\n",
1095 plongest (gdbarch->vbit_in_delta));
6cb06a8c 1096 gdb_printf (file,
53e03d92
TJB
1097 "gdbarch_dump: skip_permanent_breakpoint = <%s>\n",
1098 host_address_to_string (gdbarch->skip_permanent_breakpoint));
6cb06a8c 1099 gdb_printf (file,
53e03d92
TJB
1100 "gdbarch_dump: gdbarch_max_insn_length_p() = %d\n",
1101 gdbarch_max_insn_length_p (gdbarch));
6cb06a8c 1102 gdb_printf (file,
53e03d92
TJB
1103 "gdbarch_dump: max_insn_length = %s\n",
1104 plongest (gdbarch->max_insn_length));
6cb06a8c 1105 gdb_printf (file,
53e03d92
TJB
1106 "gdbarch_dump: gdbarch_displaced_step_copy_insn_p() = %d\n",
1107 gdbarch_displaced_step_copy_insn_p (gdbarch));
6cb06a8c 1108 gdb_printf (file,
53e03d92
TJB
1109 "gdbarch_dump: displaced_step_copy_insn = <%s>\n",
1110 host_address_to_string (gdbarch->displaced_step_copy_insn));
6cb06a8c 1111 gdb_printf (file,
53e03d92
TJB
1112 "gdbarch_dump: displaced_step_hw_singlestep = <%s>\n",
1113 host_address_to_string (gdbarch->displaced_step_hw_singlestep));
6cb06a8c 1114 gdb_printf (file,
53e03d92
TJB
1115 "gdbarch_dump: displaced_step_fixup = <%s>\n",
1116 host_address_to_string (gdbarch->displaced_step_fixup));
6cb06a8c 1117 gdb_printf (file,
53e03d92
TJB
1118 "gdbarch_dump: gdbarch_displaced_step_prepare_p() = %d\n",
1119 gdbarch_displaced_step_prepare_p (gdbarch));
6cb06a8c 1120 gdb_printf (file,
53e03d92
TJB
1121 "gdbarch_dump: displaced_step_prepare = <%s>\n",
1122 host_address_to_string (gdbarch->displaced_step_prepare));
6cb06a8c 1123 gdb_printf (file,
53e03d92
TJB
1124 "gdbarch_dump: displaced_step_finish = <%s>\n",
1125 host_address_to_string (gdbarch->displaced_step_finish));
6cb06a8c 1126 gdb_printf (file,
53e03d92
TJB
1127 "gdbarch_dump: gdbarch_displaced_step_copy_insn_closure_by_addr_p() = %d\n",
1128 gdbarch_displaced_step_copy_insn_closure_by_addr_p (gdbarch));
6cb06a8c 1129 gdb_printf (file,
53e03d92
TJB
1130 "gdbarch_dump: displaced_step_copy_insn_closure_by_addr = <%s>\n",
1131 host_address_to_string (gdbarch->displaced_step_copy_insn_closure_by_addr));
6cb06a8c 1132 gdb_printf (file,
53e03d92
TJB
1133 "gdbarch_dump: displaced_step_restore_all_in_ptid = <%s>\n",
1134 host_address_to_string (gdbarch->displaced_step_restore_all_in_ptid));
deb65a3c
AB
1135 gdb_printf (file,
1136 "gdbarch_dump: displaced_step_buffer_length = %s\n",
1137 plongest (gdbarch->displaced_step_buffer_length));
6cb06a8c 1138 gdb_printf (file,
53e03d92
TJB
1139 "gdbarch_dump: gdbarch_relocate_instruction_p() = %d\n",
1140 gdbarch_relocate_instruction_p (gdbarch));
6cb06a8c 1141 gdb_printf (file,
53e03d92
TJB
1142 "gdbarch_dump: relocate_instruction = <%s>\n",
1143 host_address_to_string (gdbarch->relocate_instruction));
6cb06a8c 1144 gdb_printf (file,
53e03d92
TJB
1145 "gdbarch_dump: gdbarch_overlay_update_p() = %d\n",
1146 gdbarch_overlay_update_p (gdbarch));
6cb06a8c 1147 gdb_printf (file,
53e03d92
TJB
1148 "gdbarch_dump: overlay_update = <%s>\n",
1149 host_address_to_string (gdbarch->overlay_update));
6cb06a8c 1150 gdb_printf (file,
53e03d92
TJB
1151 "gdbarch_dump: gdbarch_core_read_description_p() = %d\n",
1152 gdbarch_core_read_description_p (gdbarch));
6cb06a8c 1153 gdb_printf (file,
53e03d92
TJB
1154 "gdbarch_dump: core_read_description = <%s>\n",
1155 host_address_to_string (gdbarch->core_read_description));
6cb06a8c 1156 gdb_printf (file,
53e03d92
TJB
1157 "gdbarch_dump: sofun_address_maybe_missing = %s\n",
1158 plongest (gdbarch->sofun_address_maybe_missing));
6cb06a8c 1159 gdb_printf (file,
53e03d92
TJB
1160 "gdbarch_dump: gdbarch_process_record_p() = %d\n",
1161 gdbarch_process_record_p (gdbarch));
6cb06a8c 1162 gdb_printf (file,
53e03d92
TJB
1163 "gdbarch_dump: process_record = <%s>\n",
1164 host_address_to_string (gdbarch->process_record));
6cb06a8c 1165 gdb_printf (file,
53e03d92
TJB
1166 "gdbarch_dump: gdbarch_process_record_signal_p() = %d\n",
1167 gdbarch_process_record_signal_p (gdbarch));
6cb06a8c 1168 gdb_printf (file,
53e03d92
TJB
1169 "gdbarch_dump: process_record_signal = <%s>\n",
1170 host_address_to_string (gdbarch->process_record_signal));
6cb06a8c 1171 gdb_printf (file,
53e03d92
TJB
1172 "gdbarch_dump: gdbarch_gdb_signal_from_target_p() = %d\n",
1173 gdbarch_gdb_signal_from_target_p (gdbarch));
6cb06a8c 1174 gdb_printf (file,
53e03d92
TJB
1175 "gdbarch_dump: gdb_signal_from_target = <%s>\n",
1176 host_address_to_string (gdbarch->gdb_signal_from_target));
6cb06a8c 1177 gdb_printf (file,
53e03d92
TJB
1178 "gdbarch_dump: gdbarch_gdb_signal_to_target_p() = %d\n",
1179 gdbarch_gdb_signal_to_target_p (gdbarch));
6cb06a8c 1180 gdb_printf (file,
53e03d92
TJB
1181 "gdbarch_dump: gdb_signal_to_target = <%s>\n",
1182 host_address_to_string (gdbarch->gdb_signal_to_target));
6cb06a8c 1183 gdb_printf (file,
53e03d92
TJB
1184 "gdbarch_dump: gdbarch_get_siginfo_type_p() = %d\n",
1185 gdbarch_get_siginfo_type_p (gdbarch));
6cb06a8c 1186 gdb_printf (file,
53e03d92
TJB
1187 "gdbarch_dump: get_siginfo_type = <%s>\n",
1188 host_address_to_string (gdbarch->get_siginfo_type));
6cb06a8c 1189 gdb_printf (file,
53e03d92
TJB
1190 "gdbarch_dump: gdbarch_record_special_symbol_p() = %d\n",
1191 gdbarch_record_special_symbol_p (gdbarch));
6cb06a8c 1192 gdb_printf (file,
53e03d92
TJB
1193 "gdbarch_dump: record_special_symbol = <%s>\n",
1194 host_address_to_string (gdbarch->record_special_symbol));
6cb06a8c 1195 gdb_printf (file,
53e03d92
TJB
1196 "gdbarch_dump: gdbarch_get_syscall_number_p() = %d\n",
1197 gdbarch_get_syscall_number_p (gdbarch));
6cb06a8c 1198 gdb_printf (file,
53e03d92
TJB
1199 "gdbarch_dump: get_syscall_number = <%s>\n",
1200 host_address_to_string (gdbarch->get_syscall_number));
6cb06a8c 1201 gdb_printf (file,
53e03d92
TJB
1202 "gdbarch_dump: xml_syscall_file = %s\n",
1203 pstring (gdbarch->xml_syscall_file));
6cb06a8c 1204 gdb_printf (file,
53e03d92
TJB
1205 "gdbarch_dump: syscalls_info = %s\n",
1206 host_address_to_string (gdbarch->syscalls_info));
6cb06a8c 1207 gdb_printf (file,
53e03d92
TJB
1208 "gdbarch_dump: stap_integer_prefixes = %s\n",
1209 pstring_list (gdbarch->stap_integer_prefixes));
6cb06a8c 1210 gdb_printf (file,
53e03d92
TJB
1211 "gdbarch_dump: stap_integer_suffixes = %s\n",
1212 pstring_list (gdbarch->stap_integer_suffixes));
6cb06a8c 1213 gdb_printf (file,
53e03d92
TJB
1214 "gdbarch_dump: stap_register_prefixes = %s\n",
1215 pstring_list (gdbarch->stap_register_prefixes));
6cb06a8c 1216 gdb_printf (file,
53e03d92
TJB
1217 "gdbarch_dump: stap_register_suffixes = %s\n",
1218 pstring_list (gdbarch->stap_register_suffixes));
6cb06a8c 1219 gdb_printf (file,
53e03d92
TJB
1220 "gdbarch_dump: stap_register_indirection_prefixes = %s\n",
1221 pstring_list (gdbarch->stap_register_indirection_prefixes));
6cb06a8c 1222 gdb_printf (file,
53e03d92
TJB
1223 "gdbarch_dump: stap_register_indirection_suffixes = %s\n",
1224 pstring_list (gdbarch->stap_register_indirection_suffixes));
6cb06a8c 1225 gdb_printf (file,
53e03d92
TJB
1226 "gdbarch_dump: stap_gdb_register_prefix = %s\n",
1227 pstring (gdbarch->stap_gdb_register_prefix));
6cb06a8c 1228 gdb_printf (file,
53e03d92
TJB
1229 "gdbarch_dump: stap_gdb_register_suffix = %s\n",
1230 pstring (gdbarch->stap_gdb_register_suffix));
6cb06a8c 1231 gdb_printf (file,
53e03d92
TJB
1232 "gdbarch_dump: gdbarch_stap_is_single_operand_p() = %d\n",
1233 gdbarch_stap_is_single_operand_p (gdbarch));
6cb06a8c 1234 gdb_printf (file,
53e03d92
TJB
1235 "gdbarch_dump: stap_is_single_operand = <%s>\n",
1236 host_address_to_string (gdbarch->stap_is_single_operand));
6cb06a8c 1237 gdb_printf (file,
53e03d92
TJB
1238 "gdbarch_dump: gdbarch_stap_parse_special_token_p() = %d\n",
1239 gdbarch_stap_parse_special_token_p (gdbarch));
6cb06a8c 1240 gdb_printf (file,
53e03d92
TJB
1241 "gdbarch_dump: stap_parse_special_token = <%s>\n",
1242 host_address_to_string (gdbarch->stap_parse_special_token));
6cb06a8c 1243 gdb_printf (file,
53e03d92
TJB
1244 "gdbarch_dump: gdbarch_stap_adjust_register_p() = %d\n",
1245 gdbarch_stap_adjust_register_p (gdbarch));
6cb06a8c 1246 gdb_printf (file,
53e03d92
TJB
1247 "gdbarch_dump: stap_adjust_register = <%s>\n",
1248 host_address_to_string (gdbarch->stap_adjust_register));
6cb06a8c 1249 gdb_printf (file,
53e03d92
TJB
1250 "gdbarch_dump: gdbarch_dtrace_parse_probe_argument_p() = %d\n",
1251 gdbarch_dtrace_parse_probe_argument_p (gdbarch));
6cb06a8c 1252 gdb_printf (file,
53e03d92
TJB
1253 "gdbarch_dump: dtrace_parse_probe_argument = <%s>\n",
1254 host_address_to_string (gdbarch->dtrace_parse_probe_argument));
6cb06a8c 1255 gdb_printf (file,
53e03d92
TJB
1256 "gdbarch_dump: gdbarch_dtrace_probe_is_enabled_p() = %d\n",
1257 gdbarch_dtrace_probe_is_enabled_p (gdbarch));
6cb06a8c 1258 gdb_printf (file,
53e03d92
TJB
1259 "gdbarch_dump: dtrace_probe_is_enabled = <%s>\n",
1260 host_address_to_string (gdbarch->dtrace_probe_is_enabled));
6cb06a8c 1261 gdb_printf (file,
53e03d92
TJB
1262 "gdbarch_dump: gdbarch_dtrace_enable_probe_p() = %d\n",
1263 gdbarch_dtrace_enable_probe_p (gdbarch));
6cb06a8c 1264 gdb_printf (file,
53e03d92
TJB
1265 "gdbarch_dump: dtrace_enable_probe = <%s>\n",
1266 host_address_to_string (gdbarch->dtrace_enable_probe));
6cb06a8c 1267 gdb_printf (file,
53e03d92
TJB
1268 "gdbarch_dump: gdbarch_dtrace_disable_probe_p() = %d\n",
1269 gdbarch_dtrace_disable_probe_p (gdbarch));
6cb06a8c 1270 gdb_printf (file,
53e03d92
TJB
1271 "gdbarch_dump: dtrace_disable_probe = <%s>\n",
1272 host_address_to_string (gdbarch->dtrace_disable_probe));
6cb06a8c 1273 gdb_printf (file,
53e03d92
TJB
1274 "gdbarch_dump: has_global_solist = %s\n",
1275 plongest (gdbarch->has_global_solist));
6cb06a8c 1276 gdb_printf (file,
53e03d92
TJB
1277 "gdbarch_dump: has_global_breakpoints = %s\n",
1278 plongest (gdbarch->has_global_breakpoints));
6cb06a8c 1279 gdb_printf (file,
53e03d92
TJB
1280 "gdbarch_dump: has_shared_address_space = <%s>\n",
1281 host_address_to_string (gdbarch->has_shared_address_space));
6cb06a8c 1282 gdb_printf (file,
53e03d92
TJB
1283 "gdbarch_dump: fast_tracepoint_valid_at = <%s>\n",
1284 host_address_to_string (gdbarch->fast_tracepoint_valid_at));
6cb06a8c 1285 gdb_printf (file,
53e03d92
TJB
1286 "gdbarch_dump: guess_tracepoint_registers = <%s>\n",
1287 host_address_to_string (gdbarch->guess_tracepoint_registers));
6cb06a8c 1288 gdb_printf (file,
53e03d92
TJB
1289 "gdbarch_dump: auto_charset = <%s>\n",
1290 host_address_to_string (gdbarch->auto_charset));
6cb06a8c 1291 gdb_printf (file,
53e03d92
TJB
1292 "gdbarch_dump: auto_wide_charset = <%s>\n",
1293 host_address_to_string (gdbarch->auto_wide_charset));
6cb06a8c 1294 gdb_printf (file,
53e03d92
TJB
1295 "gdbarch_dump: solib_symbols_extension = %s\n",
1296 pstring (gdbarch->solib_symbols_extension));
6cb06a8c 1297 gdb_printf (file,
53e03d92
TJB
1298 "gdbarch_dump: has_dos_based_file_system = %s\n",
1299 plongest (gdbarch->has_dos_based_file_system));
6cb06a8c 1300 gdb_printf (file,
53e03d92
TJB
1301 "gdbarch_dump: gen_return_address = <%s>\n",
1302 host_address_to_string (gdbarch->gen_return_address));
6cb06a8c 1303 gdb_printf (file,
53e03d92
TJB
1304 "gdbarch_dump: gdbarch_info_proc_p() = %d\n",
1305 gdbarch_info_proc_p (gdbarch));
6cb06a8c 1306 gdb_printf (file,
53e03d92
TJB
1307 "gdbarch_dump: info_proc = <%s>\n",
1308 host_address_to_string (gdbarch->info_proc));
6cb06a8c 1309 gdb_printf (file,
53e03d92
TJB
1310 "gdbarch_dump: gdbarch_core_info_proc_p() = %d\n",
1311 gdbarch_core_info_proc_p (gdbarch));
6cb06a8c 1312 gdb_printf (file,
53e03d92
TJB
1313 "gdbarch_dump: core_info_proc = <%s>\n",
1314 host_address_to_string (gdbarch->core_info_proc));
6cb06a8c 1315 gdb_printf (file,
53e03d92
TJB
1316 "gdbarch_dump: iterate_over_objfiles_in_search_order = <%s>\n",
1317 host_address_to_string (gdbarch->iterate_over_objfiles_in_search_order));
6cb06a8c 1318 gdb_printf (file,
53e03d92
TJB
1319 "gdbarch_dump: ravenscar_ops = %s\n",
1320 host_address_to_string (gdbarch->ravenscar_ops));
6cb06a8c 1321 gdb_printf (file,
53e03d92
TJB
1322 "gdbarch_dump: insn_is_call = <%s>\n",
1323 host_address_to_string (gdbarch->insn_is_call));
6cb06a8c 1324 gdb_printf (file,
53e03d92
TJB
1325 "gdbarch_dump: insn_is_ret = <%s>\n",
1326 host_address_to_string (gdbarch->insn_is_ret));
6cb06a8c 1327 gdb_printf (file,
53e03d92
TJB
1328 "gdbarch_dump: insn_is_jump = <%s>\n",
1329 host_address_to_string (gdbarch->insn_is_jump));
6cb06a8c 1330 gdb_printf (file,
53e03d92
TJB
1331 "gdbarch_dump: program_breakpoint_here_p = <%s>\n",
1332 host_address_to_string (gdbarch->program_breakpoint_here_p));
6cb06a8c 1333 gdb_printf (file,
53e03d92
TJB
1334 "gdbarch_dump: gdbarch_auxv_parse_p() = %d\n",
1335 gdbarch_auxv_parse_p (gdbarch));
6cb06a8c 1336 gdb_printf (file,
53e03d92
TJB
1337 "gdbarch_dump: auxv_parse = <%s>\n",
1338 host_address_to_string (gdbarch->auxv_parse));
6cb06a8c 1339 gdb_printf (file,
53e03d92
TJB
1340 "gdbarch_dump: print_auxv_entry = <%s>\n",
1341 host_address_to_string (gdbarch->print_auxv_entry));
6cb06a8c 1342 gdb_printf (file,
53e03d92
TJB
1343 "gdbarch_dump: vsyscall_range = <%s>\n",
1344 host_address_to_string (gdbarch->vsyscall_range));
6cb06a8c 1345 gdb_printf (file,
53e03d92
TJB
1346 "gdbarch_dump: infcall_mmap = <%s>\n",
1347 host_address_to_string (gdbarch->infcall_mmap));
6cb06a8c 1348 gdb_printf (file,
53e03d92
TJB
1349 "gdbarch_dump: infcall_munmap = <%s>\n",
1350 host_address_to_string (gdbarch->infcall_munmap));
6cb06a8c 1351 gdb_printf (file,
53e03d92
TJB
1352 "gdbarch_dump: gcc_target_options = <%s>\n",
1353 host_address_to_string (gdbarch->gcc_target_options));
6cb06a8c 1354 gdb_printf (file,
53e03d92
TJB
1355 "gdbarch_dump: gnu_triplet_regexp = <%s>\n",
1356 host_address_to_string (gdbarch->gnu_triplet_regexp));
6cb06a8c 1357 gdb_printf (file,
53e03d92
TJB
1358 "gdbarch_dump: addressable_memory_unit_size = <%s>\n",
1359 host_address_to_string (gdbarch->addressable_memory_unit_size));
6cb06a8c 1360 gdb_printf (file,
53e03d92
TJB
1361 "gdbarch_dump: disassembler_options_implicit = %s\n",
1362 pstring (gdbarch->disassembler_options_implicit));
6cb06a8c 1363 gdb_printf (file,
53e03d92
TJB
1364 "gdbarch_dump: disassembler_options = %s\n",
1365 pstring_ptr (gdbarch->disassembler_options));
6cb06a8c 1366 gdb_printf (file,
53e03d92
TJB
1367 "gdbarch_dump: valid_disassembler_options = %s\n",
1368 host_address_to_string (gdbarch->valid_disassembler_options));
6cb06a8c 1369 gdb_printf (file,
53e03d92
TJB
1370 "gdbarch_dump: type_align = <%s>\n",
1371 host_address_to_string (gdbarch->type_align));
6cb06a8c 1372 gdb_printf (file,
53e03d92
TJB
1373 "gdbarch_dump: get_pc_address_flags = <%s>\n",
1374 host_address_to_string (gdbarch->get_pc_address_flags));
6cb06a8c 1375 gdb_printf (file,
53e03d92
TJB
1376 "gdbarch_dump: read_core_file_mappings = <%s>\n",
1377 host_address_to_string (gdbarch->read_core_file_mappings));
b93d537f
LM
1378 gdb_printf (file,
1379 "gdbarch_dump: use_target_description_from_corefile_notes = <%s>\n",
1380 host_address_to_string (gdbarch->use_target_description_from_corefile_notes));
be7811ad
MD
1381 if (gdbarch->dump_tdep != NULL)
1382 gdbarch->dump_tdep (gdbarch, file);
0f71a2f6
JM
1383}
1384
0f71a2f6
JM
1385
1386const struct bfd_arch_info *
104c1213 1387gdbarch_bfd_arch_info (struct gdbarch *gdbarch)
0f71a2f6 1388{
8de9bdc4 1389 gdb_assert (gdbarch != NULL);
0f71a2f6 1390 if (gdbarch_debug >= 2)
6cb06a8c 1391 gdb_printf (gdb_stdlog, "gdbarch_bfd_arch_info called\n");
0f71a2f6
JM
1392 return gdbarch->bfd_arch_info;
1393}
1394
94123b4f 1395enum bfd_endian
104c1213 1396gdbarch_byte_order (struct gdbarch *gdbarch)
0f71a2f6 1397{
8de9bdc4 1398 gdb_assert (gdbarch != NULL);
0f71a2f6 1399 if (gdbarch_debug >= 2)
6cb06a8c 1400 gdb_printf (gdb_stdlog, "gdbarch_byte_order called\n");
0f71a2f6
JM
1401 return gdbarch->byte_order;
1402}
1403
94123b4f 1404enum bfd_endian
9d4fde75
SS
1405gdbarch_byte_order_for_code (struct gdbarch *gdbarch)
1406{
1407 gdb_assert (gdbarch != NULL);
1408 if (gdbarch_debug >= 2)
6cb06a8c 1409 gdb_printf (gdb_stdlog, "gdbarch_byte_order_for_code called\n");
9d4fde75
SS
1410 return gdbarch->byte_order_for_code;
1411}
1412
4be87837
DJ
1413enum gdb_osabi
1414gdbarch_osabi (struct gdbarch *gdbarch)
1415{
1416 gdb_assert (gdbarch != NULL);
1417 if (gdbarch_debug >= 2)
6cb06a8c 1418 gdb_printf (gdb_stdlog, "gdbarch_osabi called\n");
4be87837
DJ
1419 return gdbarch->osabi;
1420}
1421
424163ea
DJ
1422const struct target_desc *
1423gdbarch_target_desc (struct gdbarch *gdbarch)
1424{
1425 gdb_assert (gdbarch != NULL);
1426 if (gdbarch_debug >= 2)
6cb06a8c 1427 gdb_printf (gdb_stdlog, "gdbarch_target_desc called\n");
424163ea
DJ
1428 return gdbarch->target_desc;
1429}
1430
0f71a2f6 1431int
104c1213 1432gdbarch_short_bit (struct gdbarch *gdbarch)
0f71a2f6 1433{
8de9bdc4 1434 gdb_assert (gdbarch != NULL);
66b43ecb 1435 /* Skip verify of short_bit, invalid_p == 0 */
0f71a2f6 1436 if (gdbarch_debug >= 2)
6cb06a8c 1437 gdb_printf (gdb_stdlog, "gdbarch_short_bit called\n");
0f71a2f6
JM
1438 return gdbarch->short_bit;
1439}
1440
1441void
104c1213 1442set_gdbarch_short_bit (struct gdbarch *gdbarch,
adc48a49 1443 int short_bit)
0f71a2f6
JM
1444{
1445 gdbarch->short_bit = short_bit;
1446}
1447
1448int
104c1213 1449gdbarch_int_bit (struct gdbarch *gdbarch)
0f71a2f6 1450{
8de9bdc4 1451 gdb_assert (gdbarch != NULL);
66b43ecb 1452 /* Skip verify of int_bit, invalid_p == 0 */
0f71a2f6 1453 if (gdbarch_debug >= 2)
6cb06a8c 1454 gdb_printf (gdb_stdlog, "gdbarch_int_bit called\n");
0f71a2f6
JM
1455 return gdbarch->int_bit;
1456}
1457
1458void
104c1213 1459set_gdbarch_int_bit (struct gdbarch *gdbarch,
adc48a49 1460 int int_bit)
0f71a2f6
JM
1461{
1462 gdbarch->int_bit = int_bit;
1463}
1464
1465int
104c1213 1466gdbarch_long_bit (struct gdbarch *gdbarch)
0f71a2f6 1467{
8de9bdc4 1468 gdb_assert (gdbarch != NULL);
66b43ecb 1469 /* Skip verify of long_bit, invalid_p == 0 */
0f71a2f6 1470 if (gdbarch_debug >= 2)
6cb06a8c 1471 gdb_printf (gdb_stdlog, "gdbarch_long_bit called\n");
0f71a2f6
JM
1472 return gdbarch->long_bit;
1473}
1474
1475void
104c1213 1476set_gdbarch_long_bit (struct gdbarch *gdbarch,
adc48a49 1477 int long_bit)
0f71a2f6
JM
1478{
1479 gdbarch->long_bit = long_bit;
1480}
1481
1482int
104c1213 1483gdbarch_long_long_bit (struct gdbarch *gdbarch)
0f71a2f6 1484{
8de9bdc4 1485 gdb_assert (gdbarch != NULL);
66b43ecb 1486 /* Skip verify of long_long_bit, invalid_p == 0 */
0f71a2f6 1487 if (gdbarch_debug >= 2)
6cb06a8c 1488 gdb_printf (gdb_stdlog, "gdbarch_long_long_bit called\n");
0f71a2f6
JM
1489 return gdbarch->long_long_bit;
1490}
1491
1492void
104c1213 1493set_gdbarch_long_long_bit (struct gdbarch *gdbarch,
adc48a49 1494 int long_long_bit)
0f71a2f6
JM
1495{
1496 gdbarch->long_long_bit = long_long_bit;
1497}
1498
2a67f09d
FW
1499int
1500gdbarch_bfloat16_bit (struct gdbarch *gdbarch)
1501{
1502 gdb_assert (gdbarch != NULL);
1503 /* Skip verify of bfloat16_bit, invalid_p == 0 */
1504 if (gdbarch_debug >= 2)
6cb06a8c 1505 gdb_printf (gdb_stdlog, "gdbarch_bfloat16_bit called\n");
2a67f09d
FW
1506 return gdbarch->bfloat16_bit;
1507}
1508
1509void
1510set_gdbarch_bfloat16_bit (struct gdbarch *gdbarch,
adc48a49 1511 int bfloat16_bit)
2a67f09d
FW
1512{
1513 gdbarch->bfloat16_bit = bfloat16_bit;
1514}
1515
1516const struct floatformat **
1517gdbarch_bfloat16_format (struct gdbarch *gdbarch)
1518{
1519 gdb_assert (gdbarch != NULL);
6e2d282d 1520 /* Skip verify of bfloat16_format, invalid_p == 0 */
2a67f09d 1521 if (gdbarch_debug >= 2)
6cb06a8c 1522 gdb_printf (gdb_stdlog, "gdbarch_bfloat16_format called\n");
2a67f09d
FW
1523 return gdbarch->bfloat16_format;
1524}
1525
1526void
1527set_gdbarch_bfloat16_format (struct gdbarch *gdbarch,
adc48a49 1528 const struct floatformat ** bfloat16_format)
2a67f09d
FW
1529{
1530 gdbarch->bfloat16_format = bfloat16_format;
1531}
1532
f9e9243a
UW
1533int
1534gdbarch_half_bit (struct gdbarch *gdbarch)
1535{
1536 gdb_assert (gdbarch != NULL);
1537 /* Skip verify of half_bit, invalid_p == 0 */
1538 if (gdbarch_debug >= 2)
6cb06a8c 1539 gdb_printf (gdb_stdlog, "gdbarch_half_bit called\n");
f9e9243a
UW
1540 return gdbarch->half_bit;
1541}
1542
1543void
1544set_gdbarch_half_bit (struct gdbarch *gdbarch,
adc48a49 1545 int half_bit)
f9e9243a
UW
1546{
1547 gdbarch->half_bit = half_bit;
1548}
1549
1550const struct floatformat **
1551gdbarch_half_format (struct gdbarch *gdbarch)
1552{
1553 gdb_assert (gdbarch != NULL);
6e2d282d 1554 /* Skip verify of half_format, invalid_p == 0 */
f9e9243a 1555 if (gdbarch_debug >= 2)
6cb06a8c 1556 gdb_printf (gdb_stdlog, "gdbarch_half_format called\n");
f9e9243a
UW
1557 return gdbarch->half_format;
1558}
1559
1560void
1561set_gdbarch_half_format (struct gdbarch *gdbarch,
adc48a49 1562 const struct floatformat ** half_format)
f9e9243a
UW
1563{
1564 gdbarch->half_format = half_format;
1565}
1566
0f71a2f6 1567int
104c1213 1568gdbarch_float_bit (struct gdbarch *gdbarch)
0f71a2f6 1569{
8de9bdc4 1570 gdb_assert (gdbarch != NULL);
66b43ecb 1571 /* Skip verify of float_bit, invalid_p == 0 */
0f71a2f6 1572 if (gdbarch_debug >= 2)
6cb06a8c 1573 gdb_printf (gdb_stdlog, "gdbarch_float_bit called\n");
0f71a2f6
JM
1574 return gdbarch->float_bit;
1575}
1576
1577void
104c1213 1578set_gdbarch_float_bit (struct gdbarch *gdbarch,
adc48a49 1579 int float_bit)
0f71a2f6
JM
1580{
1581 gdbarch->float_bit = float_bit;
1582}
1583
8da61cc4 1584const struct floatformat **
456fcf94
AC
1585gdbarch_float_format (struct gdbarch *gdbarch)
1586{
1587 gdb_assert (gdbarch != NULL);
6e2d282d 1588 /* Skip verify of float_format, invalid_p == 0 */
456fcf94 1589 if (gdbarch_debug >= 2)
6cb06a8c 1590 gdb_printf (gdb_stdlog, "gdbarch_float_format called\n");
456fcf94
AC
1591 return gdbarch->float_format;
1592}
1593
1594void
1595set_gdbarch_float_format (struct gdbarch *gdbarch,
adc48a49 1596 const struct floatformat ** float_format)
456fcf94
AC
1597{
1598 gdbarch->float_format = float_format;
1599}
1600
0f71a2f6 1601int
104c1213 1602gdbarch_double_bit (struct gdbarch *gdbarch)
0f71a2f6 1603{
8de9bdc4 1604 gdb_assert (gdbarch != NULL);
66b43ecb 1605 /* Skip verify of double_bit, invalid_p == 0 */
0f71a2f6 1606 if (gdbarch_debug >= 2)
6cb06a8c 1607 gdb_printf (gdb_stdlog, "gdbarch_double_bit called\n");
0f71a2f6
JM
1608 return gdbarch->double_bit;
1609}
1610
1611void
104c1213 1612set_gdbarch_double_bit (struct gdbarch *gdbarch,
adc48a49 1613 int double_bit)
0f71a2f6
JM
1614{
1615 gdbarch->double_bit = double_bit;
1616}
1617
8da61cc4 1618const struct floatformat **
456fcf94
AC
1619gdbarch_double_format (struct gdbarch *gdbarch)
1620{
1621 gdb_assert (gdbarch != NULL);
6e2d282d 1622 /* Skip verify of double_format, invalid_p == 0 */
456fcf94 1623 if (gdbarch_debug >= 2)
6cb06a8c 1624 gdb_printf (gdb_stdlog, "gdbarch_double_format called\n");
456fcf94
AC
1625 return gdbarch->double_format;
1626}
1627
1628void
1629set_gdbarch_double_format (struct gdbarch *gdbarch,
adc48a49 1630 const struct floatformat ** double_format)
456fcf94
AC
1631{
1632 gdbarch->double_format = double_format;
1633}
1634
0f71a2f6 1635int
104c1213 1636gdbarch_long_double_bit (struct gdbarch *gdbarch)
0f71a2f6 1637{
8de9bdc4 1638 gdb_assert (gdbarch != NULL);
66b43ecb 1639 /* Skip verify of long_double_bit, invalid_p == 0 */
0f71a2f6 1640 if (gdbarch_debug >= 2)
6cb06a8c 1641 gdb_printf (gdb_stdlog, "gdbarch_long_double_bit called\n");
0f71a2f6
JM
1642 return gdbarch->long_double_bit;
1643}
1644
1645void
104c1213 1646set_gdbarch_long_double_bit (struct gdbarch *gdbarch,
adc48a49 1647 int long_double_bit)
0f71a2f6
JM
1648{
1649 gdbarch->long_double_bit = long_double_bit;
1650}
1651
8da61cc4 1652const struct floatformat **
456fcf94
AC
1653gdbarch_long_double_format (struct gdbarch *gdbarch)
1654{
1655 gdb_assert (gdbarch != NULL);
6e2d282d 1656 /* Skip verify of long_double_format, invalid_p == 0 */
456fcf94 1657 if (gdbarch_debug >= 2)
6cb06a8c 1658 gdb_printf (gdb_stdlog, "gdbarch_long_double_format called\n");
456fcf94
AC
1659 return gdbarch->long_double_format;
1660}
1661
1662void
1663set_gdbarch_long_double_format (struct gdbarch *gdbarch,
adc48a49 1664 const struct floatformat ** long_double_format)
456fcf94
AC
1665{
1666 gdbarch->long_double_format = long_double_format;
1667}
1668
53375380
PA
1669int
1670gdbarch_wchar_bit (struct gdbarch *gdbarch)
1671{
1672 gdb_assert (gdbarch != NULL);
1673 /* Skip verify of wchar_bit, invalid_p == 0 */
1674 if (gdbarch_debug >= 2)
6cb06a8c 1675 gdb_printf (gdb_stdlog, "gdbarch_wchar_bit called\n");
53375380
PA
1676 return gdbarch->wchar_bit;
1677}
1678
1679void
1680set_gdbarch_wchar_bit (struct gdbarch *gdbarch,
adc48a49 1681 int wchar_bit)
53375380
PA
1682{
1683 gdbarch->wchar_bit = wchar_bit;
1684}
1685
1686int
1687gdbarch_wchar_signed (struct gdbarch *gdbarch)
1688{
1689 gdb_assert (gdbarch != NULL);
c317ea57 1690 /* Check variable changed from its initial value. */
53375380
PA
1691 gdb_assert (gdbarch->wchar_signed != -1);
1692 if (gdbarch_debug >= 2)
6cb06a8c 1693 gdb_printf (gdb_stdlog, "gdbarch_wchar_signed called\n");
53375380
PA
1694 return gdbarch->wchar_signed;
1695}
1696
1697void
1698set_gdbarch_wchar_signed (struct gdbarch *gdbarch,
adc48a49 1699 int wchar_signed)
53375380
PA
1700{
1701 gdbarch->wchar_signed = wchar_signed;
1702}
1703
9b790ce7
UW
1704const struct floatformat **
1705gdbarch_floatformat_for_type (struct gdbarch *gdbarch, const char *name, int length)
1706{
1707 gdb_assert (gdbarch != NULL);
1708 gdb_assert (gdbarch->floatformat_for_type != NULL);
1709 if (gdbarch_debug >= 2)
6cb06a8c 1710 gdb_printf (gdb_stdlog, "gdbarch_floatformat_for_type called\n");
9b790ce7
UW
1711 return gdbarch->floatformat_for_type (gdbarch, name, length);
1712}
1713
1714void
1715set_gdbarch_floatformat_for_type (struct gdbarch *gdbarch,
adc48a49 1716 gdbarch_floatformat_for_type_ftype floatformat_for_type)
9b790ce7
UW
1717{
1718 gdbarch->floatformat_for_type = floatformat_for_type;
1719}
1720
66b43ecb
AC
1721int
1722gdbarch_ptr_bit (struct gdbarch *gdbarch)
1723{
8de9bdc4 1724 gdb_assert (gdbarch != NULL);
66b43ecb
AC
1725 /* Skip verify of ptr_bit, invalid_p == 0 */
1726 if (gdbarch_debug >= 2)
6cb06a8c 1727 gdb_printf (gdb_stdlog, "gdbarch_ptr_bit called\n");
66b43ecb
AC
1728 return gdbarch->ptr_bit;
1729}
1730
1731void
1732set_gdbarch_ptr_bit (struct gdbarch *gdbarch,
adc48a49 1733 int ptr_bit)
66b43ecb
AC
1734{
1735 gdbarch->ptr_bit = ptr_bit;
1736}
1737
52204a0b
DT
1738int
1739gdbarch_addr_bit (struct gdbarch *gdbarch)
1740{
8de9bdc4 1741 gdb_assert (gdbarch != NULL);
c317ea57 1742 /* Check variable changed from its initial value. */
956ac328 1743 gdb_assert (gdbarch->addr_bit != 0);
52204a0b 1744 if (gdbarch_debug >= 2)
6cb06a8c 1745 gdb_printf (gdb_stdlog, "gdbarch_addr_bit called\n");
52204a0b
DT
1746 return gdbarch->addr_bit;
1747}
1748
1749void
1750set_gdbarch_addr_bit (struct gdbarch *gdbarch,
adc48a49 1751 int addr_bit)
52204a0b
DT
1752{
1753 gdbarch->addr_bit = addr_bit;
1754}
1755
8da614df
CV
1756int
1757gdbarch_dwarf2_addr_size (struct gdbarch *gdbarch)
1758{
1759 gdb_assert (gdbarch != NULL);
c317ea57 1760 /* Check variable changed from its initial value. */
8da614df
CV
1761 gdb_assert (gdbarch->dwarf2_addr_size != 0);
1762 if (gdbarch_debug >= 2)
6cb06a8c 1763 gdb_printf (gdb_stdlog, "gdbarch_dwarf2_addr_size called\n");
8da614df
CV
1764 return gdbarch->dwarf2_addr_size;
1765}
1766
1767void
1768set_gdbarch_dwarf2_addr_size (struct gdbarch *gdbarch,
adc48a49 1769 int dwarf2_addr_size)
8da614df
CV
1770{
1771 gdbarch->dwarf2_addr_size = dwarf2_addr_size;
1772}
1773
4e409299
JB
1774int
1775gdbarch_char_signed (struct gdbarch *gdbarch)
1776{
8de9bdc4 1777 gdb_assert (gdbarch != NULL);
c317ea57 1778 /* Check variable changed from its initial value. */
956ac328 1779 gdb_assert (gdbarch->char_signed != -1);
4e409299 1780 if (gdbarch_debug >= 2)
6cb06a8c 1781 gdb_printf (gdb_stdlog, "gdbarch_char_signed called\n");
4e409299
JB
1782 return gdbarch->char_signed;
1783}
1784
1785void
1786set_gdbarch_char_signed (struct gdbarch *gdbarch,
adc48a49 1787 int char_signed)
4e409299
JB
1788{
1789 gdbarch->char_signed = char_signed;
1790}
1791
39535193 1792bool
cde9ea48
AC
1793gdbarch_read_pc_p (struct gdbarch *gdbarch)
1794{
1795 gdb_assert (gdbarch != NULL);
956ac328 1796 return gdbarch->read_pc != NULL;
cde9ea48
AC
1797}
1798
0f71a2f6 1799CORE_ADDR
c113ed0c 1800gdbarch_read_pc (struct gdbarch *gdbarch, readable_regcache *regcache)
0f71a2f6 1801{
8de9bdc4 1802 gdb_assert (gdbarch != NULL);
956ac328 1803 gdb_assert (gdbarch->read_pc != NULL);
0f71a2f6 1804 if (gdbarch_debug >= 2)
6cb06a8c 1805 gdb_printf (gdb_stdlog, "gdbarch_read_pc called\n");
61a1198a 1806 return gdbarch->read_pc (regcache);
0f71a2f6
JM
1807}
1808
1809void
104c1213 1810set_gdbarch_read_pc (struct gdbarch *gdbarch,
adc48a49 1811 gdbarch_read_pc_ftype read_pc)
0f71a2f6
JM
1812{
1813 gdbarch->read_pc = read_pc;
1814}
1815
39535193 1816bool
61a1198a
UW
1817gdbarch_write_pc_p (struct gdbarch *gdbarch)
1818{
1819 gdb_assert (gdbarch != NULL);
1820 return gdbarch->write_pc != NULL;
1821}
1822
0f71a2f6 1823void
61a1198a 1824gdbarch_write_pc (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR val)
0f71a2f6 1825{
8de9bdc4 1826 gdb_assert (gdbarch != NULL);
956ac328 1827 gdb_assert (gdbarch->write_pc != NULL);
0f71a2f6 1828 if (gdbarch_debug >= 2)
6cb06a8c 1829 gdb_printf (gdb_stdlog, "gdbarch_write_pc called\n");
61a1198a 1830 gdbarch->write_pc (regcache, val);
0f71a2f6
JM
1831}
1832
1833void
104c1213 1834set_gdbarch_write_pc (struct gdbarch *gdbarch,
adc48a49 1835 gdbarch_write_pc_ftype write_pc)
0f71a2f6
JM
1836{
1837 gdbarch->write_pc = write_pc;
1838}
1839
39d4ef09
AC
1840void
1841gdbarch_virtual_frame_pointer (struct gdbarch *gdbarch, CORE_ADDR pc, int *frame_regnum, LONGEST *frame_offset)
1842{
8de9bdc4 1843 gdb_assert (gdbarch != NULL);
956ac328 1844 gdb_assert (gdbarch->virtual_frame_pointer != NULL);
39d4ef09 1845 if (gdbarch_debug >= 2)
6cb06a8c 1846 gdb_printf (gdb_stdlog, "gdbarch_virtual_frame_pointer called\n");
a54fba4c 1847 gdbarch->virtual_frame_pointer (gdbarch, pc, frame_regnum, frame_offset);
39d4ef09
AC
1848}
1849
1850void
1851set_gdbarch_virtual_frame_pointer (struct gdbarch *gdbarch,
adc48a49 1852 gdbarch_virtual_frame_pointer_ftype virtual_frame_pointer)
39d4ef09
AC
1853{
1854 gdbarch->virtual_frame_pointer = virtual_frame_pointer;
1855}
1856
39535193 1857bool
d8124050 1858gdbarch_pseudo_register_read_p (struct gdbarch *gdbarch)
61a0eb5b 1859{
8de9bdc4 1860 gdb_assert (gdbarch != NULL);
956ac328 1861 return gdbarch->pseudo_register_read != NULL;
61a0eb5b
AC
1862}
1863
05d1431c 1864enum register_status
849d0ba8 1865gdbarch_pseudo_register_read (struct gdbarch *gdbarch, readable_regcache *regcache, int cookednum, gdb_byte *buf)
61a0eb5b 1866{
8de9bdc4 1867 gdb_assert (gdbarch != NULL);
956ac328 1868 gdb_assert (gdbarch->pseudo_register_read != NULL);
61a0eb5b 1869 if (gdbarch_debug >= 2)
6cb06a8c 1870 gdb_printf (gdb_stdlog, "gdbarch_pseudo_register_read called\n");
05d1431c 1871 return gdbarch->pseudo_register_read (gdbarch, regcache, cookednum, buf);
61a0eb5b
AC
1872}
1873
1874void
d8124050 1875set_gdbarch_pseudo_register_read (struct gdbarch *gdbarch,
adc48a49 1876 gdbarch_pseudo_register_read_ftype pseudo_register_read)
61a0eb5b 1877{
d8124050 1878 gdbarch->pseudo_register_read = pseudo_register_read;
61a0eb5b
AC
1879}
1880
39535193 1881bool
3543a589
TT
1882gdbarch_pseudo_register_read_value_p (struct gdbarch *gdbarch)
1883{
1884 gdb_assert (gdbarch != NULL);
1885 return gdbarch->pseudo_register_read_value != NULL;
1886}
1887
1888struct value *
849d0ba8 1889gdbarch_pseudo_register_read_value (struct gdbarch *gdbarch, readable_regcache *regcache, int cookednum)
3543a589
TT
1890{
1891 gdb_assert (gdbarch != NULL);
1892 gdb_assert (gdbarch->pseudo_register_read_value != NULL);
1893 if (gdbarch_debug >= 2)
6cb06a8c 1894 gdb_printf (gdb_stdlog, "gdbarch_pseudo_register_read_value called\n");
3543a589
TT
1895 return gdbarch->pseudo_register_read_value (gdbarch, regcache, cookednum);
1896}
1897
1898void
1899set_gdbarch_pseudo_register_read_value (struct gdbarch *gdbarch,
adc48a49 1900 gdbarch_pseudo_register_read_value_ftype pseudo_register_read_value)
3543a589
TT
1901{
1902 gdbarch->pseudo_register_read_value = pseudo_register_read_value;
1903}
1904
39535193 1905bool
d8124050 1906gdbarch_pseudo_register_write_p (struct gdbarch *gdbarch)
61a0eb5b 1907{
8de9bdc4 1908 gdb_assert (gdbarch != NULL);
956ac328 1909 return gdbarch->pseudo_register_write != NULL;
61a0eb5b
AC
1910}
1911
1912void
b60c417a 1913gdbarch_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache, int cookednum, const gdb_byte *buf)
61a0eb5b 1914{
8de9bdc4 1915 gdb_assert (gdbarch != NULL);
956ac328 1916 gdb_assert (gdbarch->pseudo_register_write != NULL);
61a0eb5b 1917 if (gdbarch_debug >= 2)
6cb06a8c 1918 gdb_printf (gdb_stdlog, "gdbarch_pseudo_register_write called\n");
d8124050 1919 gdbarch->pseudo_register_write (gdbarch, regcache, cookednum, buf);
61a0eb5b
AC
1920}
1921
1922void
d8124050 1923set_gdbarch_pseudo_register_write (struct gdbarch *gdbarch,
adc48a49 1924 gdbarch_pseudo_register_write_ftype pseudo_register_write)
61a0eb5b 1925{
d8124050 1926 gdbarch->pseudo_register_write = pseudo_register_write;
61a0eb5b
AC
1927}
1928
0f71a2f6 1929int
104c1213 1930gdbarch_num_regs (struct gdbarch *gdbarch)
0f71a2f6 1931{
8de9bdc4 1932 gdb_assert (gdbarch != NULL);
c317ea57 1933 /* Check variable changed from its initial value. */
956ac328 1934 gdb_assert (gdbarch->num_regs != -1);
0f71a2f6 1935 if (gdbarch_debug >= 2)
6cb06a8c 1936 gdb_printf (gdb_stdlog, "gdbarch_num_regs called\n");
0f71a2f6
JM
1937 return gdbarch->num_regs;
1938}
1939
1940void
104c1213 1941set_gdbarch_num_regs (struct gdbarch *gdbarch,
adc48a49 1942 int num_regs)
0f71a2f6
JM
1943{
1944 gdbarch->num_regs = num_regs;
1945}
1946
0aba1244
EZ
1947int
1948gdbarch_num_pseudo_regs (struct gdbarch *gdbarch)
1949{
8de9bdc4 1950 gdb_assert (gdbarch != NULL);
0aba1244
EZ
1951 /* Skip verify of num_pseudo_regs, invalid_p == 0 */
1952 if (gdbarch_debug >= 2)
6cb06a8c 1953 gdb_printf (gdb_stdlog, "gdbarch_num_pseudo_regs called\n");
0aba1244
EZ
1954 return gdbarch->num_pseudo_regs;
1955}
1956
1957void
1958set_gdbarch_num_pseudo_regs (struct gdbarch *gdbarch,
adc48a49 1959 int num_pseudo_regs)
0aba1244
EZ
1960{
1961 gdbarch->num_pseudo_regs = num_pseudo_regs;
1962}
1963
39535193 1964bool
175ff332
HZ
1965gdbarch_ax_pseudo_register_collect_p (struct gdbarch *gdbarch)
1966{
1967 gdb_assert (gdbarch != NULL);
1968 return gdbarch->ax_pseudo_register_collect != NULL;
1969}
1970
1971int
1972gdbarch_ax_pseudo_register_collect (struct gdbarch *gdbarch, struct agent_expr *ax, int reg)
1973{
1974 gdb_assert (gdbarch != NULL);
1975 gdb_assert (gdbarch->ax_pseudo_register_collect != NULL);
1976 if (gdbarch_debug >= 2)
6cb06a8c 1977 gdb_printf (gdb_stdlog, "gdbarch_ax_pseudo_register_collect called\n");
175ff332
HZ
1978 return gdbarch->ax_pseudo_register_collect (gdbarch, ax, reg);
1979}
1980
1981void
1982set_gdbarch_ax_pseudo_register_collect (struct gdbarch *gdbarch,
adc48a49 1983 gdbarch_ax_pseudo_register_collect_ftype ax_pseudo_register_collect)
175ff332
HZ
1984{
1985 gdbarch->ax_pseudo_register_collect = ax_pseudo_register_collect;
1986}
1987
39535193 1988bool
175ff332
HZ
1989gdbarch_ax_pseudo_register_push_stack_p (struct gdbarch *gdbarch)
1990{
1991 gdb_assert (gdbarch != NULL);
1992 return gdbarch->ax_pseudo_register_push_stack != NULL;
1993}
1994
1995int
1996gdbarch_ax_pseudo_register_push_stack (struct gdbarch *gdbarch, struct agent_expr *ax, int reg)
1997{
1998 gdb_assert (gdbarch != NULL);
1999 gdb_assert (gdbarch->ax_pseudo_register_push_stack != NULL);
2000 if (gdbarch_debug >= 2)
6cb06a8c 2001 gdb_printf (gdb_stdlog, "gdbarch_ax_pseudo_register_push_stack called\n");
175ff332
HZ
2002 return gdbarch->ax_pseudo_register_push_stack (gdbarch, ax, reg);
2003}
2004
2005void
2006set_gdbarch_ax_pseudo_register_push_stack (struct gdbarch *gdbarch,
adc48a49 2007 gdbarch_ax_pseudo_register_push_stack_ftype ax_pseudo_register_push_stack)
175ff332
HZ
2008{
2009 gdbarch->ax_pseudo_register_push_stack = ax_pseudo_register_push_stack;
2010}
2011
39535193 2012bool
272bb05c
JB
2013gdbarch_report_signal_info_p (struct gdbarch *gdbarch)
2014{
2015 gdb_assert (gdbarch != NULL);
2016 return gdbarch->report_signal_info != NULL;
2017}
2018
2019void
2020gdbarch_report_signal_info (struct gdbarch *gdbarch, struct ui_out *uiout, enum gdb_signal siggnal)
2021{
2022 gdb_assert (gdbarch != NULL);
2023 gdb_assert (gdbarch->report_signal_info != NULL);
2024 if (gdbarch_debug >= 2)
6cb06a8c 2025 gdb_printf (gdb_stdlog, "gdbarch_report_signal_info called\n");
272bb05c
JB
2026 gdbarch->report_signal_info (gdbarch, uiout, siggnal);
2027}
2028
2029void
2030set_gdbarch_report_signal_info (struct gdbarch *gdbarch,
adc48a49 2031 gdbarch_report_signal_info_ftype report_signal_info)
272bb05c
JB
2032{
2033 gdbarch->report_signal_info = report_signal_info;
2034}
2035
0f71a2f6 2036int
104c1213 2037gdbarch_sp_regnum (struct gdbarch *gdbarch)
0f71a2f6 2038{
8de9bdc4 2039 gdb_assert (gdbarch != NULL);
1200cd6e 2040 /* Skip verify of sp_regnum, invalid_p == 0 */
0f71a2f6 2041 if (gdbarch_debug >= 2)
6cb06a8c 2042 gdb_printf (gdb_stdlog, "gdbarch_sp_regnum called\n");
0f71a2f6
JM
2043 return gdbarch->sp_regnum;
2044}
2045
2046void
104c1213 2047set_gdbarch_sp_regnum (struct gdbarch *gdbarch,
adc48a49 2048 int sp_regnum)
0f71a2f6
JM
2049{
2050 gdbarch->sp_regnum = sp_regnum;
2051}
2052
0f71a2f6 2053int
104c1213 2054gdbarch_pc_regnum (struct gdbarch *gdbarch)
0f71a2f6 2055{
8de9bdc4 2056 gdb_assert (gdbarch != NULL);
1200cd6e 2057 /* Skip verify of pc_regnum, invalid_p == 0 */
0f71a2f6 2058 if (gdbarch_debug >= 2)
6cb06a8c 2059 gdb_printf (gdb_stdlog, "gdbarch_pc_regnum called\n");
0f71a2f6
JM
2060 return gdbarch->pc_regnum;
2061}
2062
2063void
104c1213 2064set_gdbarch_pc_regnum (struct gdbarch *gdbarch,
adc48a49 2065 int pc_regnum)
0f71a2f6
JM
2066{
2067 gdbarch->pc_regnum = pc_regnum;
2068}
2069
c2169756
AC
2070int
2071gdbarch_ps_regnum (struct gdbarch *gdbarch)
2072{
8de9bdc4 2073 gdb_assert (gdbarch != NULL);
c2169756
AC
2074 /* Skip verify of ps_regnum, invalid_p == 0 */
2075 if (gdbarch_debug >= 2)
6cb06a8c 2076 gdb_printf (gdb_stdlog, "gdbarch_ps_regnum called\n");
c2169756
AC
2077 return gdbarch->ps_regnum;
2078}
2079
2080void
2081set_gdbarch_ps_regnum (struct gdbarch *gdbarch,
adc48a49 2082 int ps_regnum)
c2169756
AC
2083{
2084 gdbarch->ps_regnum = ps_regnum;
2085}
2086
60054393
MS
2087int
2088gdbarch_fp0_regnum (struct gdbarch *gdbarch)
2089{
8de9bdc4 2090 gdb_assert (gdbarch != NULL);
60054393
MS
2091 /* Skip verify of fp0_regnum, invalid_p == 0 */
2092 if (gdbarch_debug >= 2)
6cb06a8c 2093 gdb_printf (gdb_stdlog, "gdbarch_fp0_regnum called\n");
60054393
MS
2094 return gdbarch->fp0_regnum;
2095}
2096
2097void
2098set_gdbarch_fp0_regnum (struct gdbarch *gdbarch,
adc48a49 2099 int fp0_regnum)
60054393
MS
2100{
2101 gdbarch->fp0_regnum = fp0_regnum;
2102}
2103
88c72b7d
AC
2104int
2105gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch, int stab_regnr)
2106{
8de9bdc4 2107 gdb_assert (gdbarch != NULL);
956ac328 2108 gdb_assert (gdbarch->stab_reg_to_regnum != NULL);
88c72b7d 2109 if (gdbarch_debug >= 2)
6cb06a8c 2110 gdb_printf (gdb_stdlog, "gdbarch_stab_reg_to_regnum called\n");
d3f73121 2111 return gdbarch->stab_reg_to_regnum (gdbarch, stab_regnr);
88c72b7d
AC
2112}
2113
2114void
2115set_gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch,
adc48a49 2116 gdbarch_stab_reg_to_regnum_ftype stab_reg_to_regnum)
88c72b7d
AC
2117{
2118 gdbarch->stab_reg_to_regnum = stab_reg_to_regnum;
2119}
2120
2121int
2122gdbarch_ecoff_reg_to_regnum (struct gdbarch *gdbarch, int ecoff_regnr)
2123{
8de9bdc4 2124 gdb_assert (gdbarch != NULL);
956ac328 2125 gdb_assert (gdbarch->ecoff_reg_to_regnum != NULL);
88c72b7d 2126 if (gdbarch_debug >= 2)
6cb06a8c 2127 gdb_printf (gdb_stdlog, "gdbarch_ecoff_reg_to_regnum called\n");
d3f73121 2128 return gdbarch->ecoff_reg_to_regnum (gdbarch, ecoff_regnr);
88c72b7d
AC
2129}
2130
2131void
2132set_gdbarch_ecoff_reg_to_regnum (struct gdbarch *gdbarch,
adc48a49 2133 gdbarch_ecoff_reg_to_regnum_ftype ecoff_reg_to_regnum)
88c72b7d
AC
2134{
2135 gdbarch->ecoff_reg_to_regnum = ecoff_reg_to_regnum;
2136}
2137
88c72b7d
AC
2138int
2139gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch, int sdb_regnr)
2140{
8de9bdc4 2141 gdb_assert (gdbarch != NULL);
956ac328 2142 gdb_assert (gdbarch->sdb_reg_to_regnum != NULL);
88c72b7d 2143 if (gdbarch_debug >= 2)
6cb06a8c 2144 gdb_printf (gdb_stdlog, "gdbarch_sdb_reg_to_regnum called\n");
d3f73121 2145 return gdbarch->sdb_reg_to_regnum (gdbarch, sdb_regnr);
88c72b7d
AC
2146}
2147
2148void
2149set_gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch,
adc48a49 2150 gdbarch_sdb_reg_to_regnum_ftype sdb_reg_to_regnum)
88c72b7d
AC
2151{
2152 gdbarch->sdb_reg_to_regnum = sdb_reg_to_regnum;
2153}
2154
2155int
2156gdbarch_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, int dwarf2_regnr)
2157{
8de9bdc4 2158 gdb_assert (gdbarch != NULL);
956ac328 2159 gdb_assert (gdbarch->dwarf2_reg_to_regnum != NULL);
88c72b7d 2160 if (gdbarch_debug >= 2)
6cb06a8c 2161 gdb_printf (gdb_stdlog, "gdbarch_dwarf2_reg_to_regnum called\n");
d3f73121 2162 return gdbarch->dwarf2_reg_to_regnum (gdbarch, dwarf2_regnr);
88c72b7d
AC
2163}
2164
2165void
2166set_gdbarch_dwarf2_reg_to_regnum (struct gdbarch *gdbarch,
adc48a49 2167 gdbarch_dwarf2_reg_to_regnum_ftype dwarf2_reg_to_regnum)
88c72b7d
AC
2168{
2169 gdbarch->dwarf2_reg_to_regnum = dwarf2_reg_to_regnum;
2170}
2171
fa88f677 2172const char *
0f71a2f6
JM
2173gdbarch_register_name (struct gdbarch *gdbarch, int regnr)
2174{
8de9bdc4 2175 gdb_assert (gdbarch != NULL);
956ac328 2176 gdb_assert (gdbarch->register_name != NULL);
7df42400
AB
2177 gdb_assert (regnr >= 0);
2178 gdb_assert (regnr < gdbarch_num_cooked_regs (gdbarch));
0f71a2f6 2179 if (gdbarch_debug >= 2)
6cb06a8c 2180 gdb_printf (gdb_stdlog, "gdbarch_register_name called\n");
7df42400
AB
2181 auto result = gdbarch->register_name (gdbarch, regnr);
2182 gdb_assert (result != nullptr);
2183 return result;
0f71a2f6
JM
2184}
2185
2186void
104c1213 2187set_gdbarch_register_name (struct gdbarch *gdbarch,
adc48a49 2188 gdbarch_register_name_ftype register_name)
0f71a2f6
JM
2189{
2190 gdbarch->register_name = register_name;
2191}
2192
9c04cab7
AC
2193struct type *
2194gdbarch_register_type (struct gdbarch *gdbarch, int reg_nr)
2195{
2196 gdb_assert (gdbarch != NULL);
956ac328 2197 gdb_assert (gdbarch->register_type != NULL);
0f71a2f6 2198 if (gdbarch_debug >= 2)
6cb06a8c 2199 gdb_printf (gdb_stdlog, "gdbarch_register_type called\n");
9c04cab7 2200 return gdbarch->register_type (gdbarch, reg_nr);
0f71a2f6
JM
2201}
2202
2203void
9c04cab7 2204set_gdbarch_register_type (struct gdbarch *gdbarch,
adc48a49 2205 gdbarch_register_type_ftype register_type)
0f71a2f6 2206{
9c04cab7 2207 gdbarch->register_type = register_type;
0f71a2f6
JM
2208}
2209
f3be58bc 2210struct frame_id
bd2b40ac 2211gdbarch_dummy_id (struct gdbarch *gdbarch, frame_info_ptr this_frame)
f3be58bc
AC
2212{
2213 gdb_assert (gdbarch != NULL);
669fac23 2214 gdb_assert (gdbarch->dummy_id != NULL);
f3be58bc 2215 if (gdbarch_debug >= 2)
6cb06a8c 2216 gdb_printf (gdb_stdlog, "gdbarch_dummy_id called\n");
669fac23 2217 return gdbarch->dummy_id (gdbarch, this_frame);
f3be58bc
AC
2218}
2219
2220void
669fac23 2221set_gdbarch_dummy_id (struct gdbarch *gdbarch,
adc48a49 2222 gdbarch_dummy_id_ftype dummy_id)
f3be58bc 2223{
669fac23 2224 gdbarch->dummy_id = dummy_id;
f3be58bc
AC
2225}
2226
f3be58bc
AC
2227int
2228gdbarch_deprecated_fp_regnum (struct gdbarch *gdbarch)
2229{
2230 gdb_assert (gdbarch != NULL);
2231 /* Skip verify of deprecated_fp_regnum, invalid_p == 0 */
2232 if (gdbarch_debug >= 2)
6cb06a8c 2233 gdb_printf (gdb_stdlog, "gdbarch_deprecated_fp_regnum called\n");
f3be58bc
AC
2234 return gdbarch->deprecated_fp_regnum;
2235}
2236
2237void
2238set_gdbarch_deprecated_fp_regnum (struct gdbarch *gdbarch,
adc48a49 2239 int deprecated_fp_regnum)
f3be58bc
AC
2240{
2241 gdbarch->deprecated_fp_regnum = deprecated_fp_regnum;
2242}
2243
39535193 2244bool
b8de8283 2245gdbarch_push_dummy_call_p (struct gdbarch *gdbarch)
0ab7a791
AC
2246{
2247 gdb_assert (gdbarch != NULL);
956ac328 2248 return gdbarch->push_dummy_call != NULL;
0ab7a791
AC
2249}
2250
b8de8283 2251CORE_ADDR
cf84fa6b 2252gdbarch_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, function_call_return_method return_method, CORE_ADDR struct_addr)
666e11c5 2253{
8de9bdc4 2254 gdb_assert (gdbarch != NULL);
956ac328 2255 gdb_assert (gdbarch->push_dummy_call != NULL);
666e11c5 2256 if (gdbarch_debug >= 2)
6cb06a8c 2257 gdb_printf (gdb_stdlog, "gdbarch_push_dummy_call called\n");
cf84fa6b 2258 return gdbarch->push_dummy_call (gdbarch, function, regcache, bp_addr, nargs, args, sp, return_method, struct_addr);
666e11c5
EZ
2259}
2260
2261void
b8de8283 2262set_gdbarch_push_dummy_call (struct gdbarch *gdbarch,
adc48a49 2263 gdbarch_push_dummy_call_ftype push_dummy_call)
666e11c5 2264{
b8de8283 2265 gdbarch->push_dummy_call = push_dummy_call;
666e11c5
EZ
2266}
2267
7807dfae 2268enum call_dummy_location_type
b8de8283 2269gdbarch_call_dummy_location (struct gdbarch *gdbarch)
2649061d 2270{
8de9bdc4 2271 gdb_assert (gdbarch != NULL);
b8de8283
AC
2272 /* Skip verify of call_dummy_location, invalid_p == 0 */
2273 if (gdbarch_debug >= 2)
6cb06a8c 2274 gdb_printf (gdb_stdlog, "gdbarch_call_dummy_location called\n");
b8de8283 2275 return gdbarch->call_dummy_location;
2649061d
AC
2276}
2277
b8de8283
AC
2278void
2279set_gdbarch_call_dummy_location (struct gdbarch *gdbarch,
adc48a49 2280 enum call_dummy_location_type call_dummy_location)
b8de8283
AC
2281{
2282 gdbarch->call_dummy_location = call_dummy_location;
2283}
2284
39535193 2285bool
b8de8283 2286gdbarch_push_dummy_code_p (struct gdbarch *gdbarch)
0f71a2f6 2287{
8de9bdc4 2288 gdb_assert (gdbarch != NULL);
956ac328 2289 return gdbarch->push_dummy_code != NULL;
b8de8283
AC
2290}
2291
2292CORE_ADDR
82585c72 2293gdbarch_push_dummy_code (struct gdbarch *gdbarch, CORE_ADDR sp, CORE_ADDR funaddr, struct value **args, int nargs, struct type *value_type, CORE_ADDR *real_pc, CORE_ADDR *bp_addr, struct regcache *regcache)
b8de8283
AC
2294{
2295 gdb_assert (gdbarch != NULL);
956ac328 2296 gdb_assert (gdbarch->push_dummy_code != NULL);
0f71a2f6 2297 if (gdbarch_debug >= 2)
6cb06a8c 2298 gdb_printf (gdb_stdlog, "gdbarch_push_dummy_code called\n");
82585c72 2299 return gdbarch->push_dummy_code (gdbarch, sp, funaddr, args, nargs, value_type, real_pc, bp_addr, regcache);
0f71a2f6
JM
2300}
2301
2302void
b8de8283 2303set_gdbarch_push_dummy_code (struct gdbarch *gdbarch,
adc48a49 2304 gdbarch_push_dummy_code_ftype push_dummy_code)
0f71a2f6 2305{
b8de8283 2306 gdbarch->push_dummy_code = push_dummy_code;
0f71a2f6
JM
2307}
2308
7eb89530 2309int
bd2b40ac 2310gdbarch_code_of_frame_writable (struct gdbarch *gdbarch, frame_info_ptr frame)
7eb89530
YQ
2311{
2312 gdb_assert (gdbarch != NULL);
2313 gdb_assert (gdbarch->code_of_frame_writable != NULL);
2314 if (gdbarch_debug >= 2)
6cb06a8c 2315 gdb_printf (gdb_stdlog, "gdbarch_code_of_frame_writable called\n");
7eb89530
YQ
2316 return gdbarch->code_of_frame_writable (gdbarch, frame);
2317}
2318
2319void
2320set_gdbarch_code_of_frame_writable (struct gdbarch *gdbarch,
adc48a49 2321 gdbarch_code_of_frame_writable_ftype code_of_frame_writable)
7eb89530
YQ
2322{
2323 gdbarch->code_of_frame_writable = code_of_frame_writable;
2324}
2325
b8de8283 2326void
bd2b40ac 2327gdbarch_print_registers_info (struct gdbarch *gdbarch, struct ui_file *file, frame_info_ptr frame, int regnum, int all)
b8de8283
AC
2328{
2329 gdb_assert (gdbarch != NULL);
956ac328 2330 gdb_assert (gdbarch->print_registers_info != NULL);
b8de8283 2331 if (gdbarch_debug >= 2)
6cb06a8c 2332 gdb_printf (gdb_stdlog, "gdbarch_print_registers_info called\n");
b8de8283
AC
2333 gdbarch->print_registers_info (gdbarch, file, frame, regnum, all);
2334}
2335
2336void
2337set_gdbarch_print_registers_info (struct gdbarch *gdbarch,
adc48a49 2338 gdbarch_print_registers_info_ftype print_registers_info)
b8de8283
AC
2339{
2340 gdbarch->print_registers_info = print_registers_info;
0f71a2f6
JM
2341}
2342
b8de8283 2343void
bd2b40ac 2344gdbarch_print_float_info (struct gdbarch *gdbarch, struct ui_file *file, frame_info_ptr frame, const char *args)
0f71a2f6 2345{
8de9bdc4 2346 gdb_assert (gdbarch != NULL);
956ac328 2347 gdb_assert (gdbarch->print_float_info != NULL);
0f71a2f6 2348 if (gdbarch_debug >= 2)
6cb06a8c 2349 gdb_printf (gdb_stdlog, "gdbarch_print_float_info called\n");
b8de8283 2350 gdbarch->print_float_info (gdbarch, file, frame, args);
0f71a2f6
JM
2351}
2352
2353void
b8de8283 2354set_gdbarch_print_float_info (struct gdbarch *gdbarch,
adc48a49 2355 gdbarch_print_float_info_ftype print_float_info)
0f71a2f6 2356{
b8de8283
AC
2357 gdbarch->print_float_info = print_float_info;
2358}
2359
39535193 2360bool
b8de8283
AC
2361gdbarch_print_vector_info_p (struct gdbarch *gdbarch)
2362{
2363 gdb_assert (gdbarch != NULL);
956ac328 2364 return gdbarch->print_vector_info != NULL;
b8de8283
AC
2365}
2366
2367void
bd2b40ac 2368gdbarch_print_vector_info (struct gdbarch *gdbarch, struct ui_file *file, frame_info_ptr frame, const char *args)
b8de8283
AC
2369{
2370 gdb_assert (gdbarch != NULL);
956ac328 2371 gdb_assert (gdbarch->print_vector_info != NULL);
b8de8283 2372 if (gdbarch_debug >= 2)
6cb06a8c 2373 gdb_printf (gdb_stdlog, "gdbarch_print_vector_info called\n");
b8de8283 2374 gdbarch->print_vector_info (gdbarch, file, frame, args);
0f71a2f6
JM
2375}
2376
b8de8283
AC
2377void
2378set_gdbarch_print_vector_info (struct gdbarch *gdbarch,
adc48a49 2379 gdbarch_print_vector_info_ftype print_vector_info)
ae45cd16 2380{
b8de8283 2381 gdbarch->print_vector_info = print_vector_info;
ae45cd16
AC
2382}
2383
2384int
b8de8283 2385gdbarch_register_sim_regno (struct gdbarch *gdbarch, int reg_nr)
0f71a2f6 2386{
8de9bdc4 2387 gdb_assert (gdbarch != NULL);
956ac328 2388 gdb_assert (gdbarch->register_sim_regno != NULL);
0f71a2f6 2389 if (gdbarch_debug >= 2)
6cb06a8c 2390 gdb_printf (gdb_stdlog, "gdbarch_register_sim_regno called\n");
e7faf938 2391 return gdbarch->register_sim_regno (gdbarch, reg_nr);
0f71a2f6
JM
2392}
2393
2394void
b8de8283 2395set_gdbarch_register_sim_regno (struct gdbarch *gdbarch,
adc48a49 2396 gdbarch_register_sim_regno_ftype register_sim_regno)
0f71a2f6 2397{
b8de8283 2398 gdbarch->register_sim_regno = register_sim_regno;
0f71a2f6
JM
2399}
2400
0f71a2f6 2401int
b8de8283 2402gdbarch_cannot_fetch_register (struct gdbarch *gdbarch, int regnum)
0f71a2f6 2403{
8de9bdc4 2404 gdb_assert (gdbarch != NULL);
956ac328 2405 gdb_assert (gdbarch->cannot_fetch_register != NULL);
b8de8283 2406 if (gdbarch_debug >= 2)
6cb06a8c 2407 gdb_printf (gdb_stdlog, "gdbarch_cannot_fetch_register called\n");
64a3914f 2408 return gdbarch->cannot_fetch_register (gdbarch, regnum);
b8de8283
AC
2409}
2410
2411void
2412set_gdbarch_cannot_fetch_register (struct gdbarch *gdbarch,
adc48a49 2413 gdbarch_cannot_fetch_register_ftype cannot_fetch_register)
b8de8283
AC
2414{
2415 gdbarch->cannot_fetch_register = cannot_fetch_register;
0f71a2f6
JM
2416}
2417
2418int
b8de8283 2419gdbarch_cannot_store_register (struct gdbarch *gdbarch, int regnum)
0f71a2f6 2420{
8de9bdc4 2421 gdb_assert (gdbarch != NULL);
956ac328 2422 gdb_assert (gdbarch->cannot_store_register != NULL);
0f71a2f6 2423 if (gdbarch_debug >= 2)
6cb06a8c 2424 gdb_printf (gdb_stdlog, "gdbarch_cannot_store_register called\n");
64a3914f 2425 return gdbarch->cannot_store_register (gdbarch, regnum);
0f71a2f6
JM
2426}
2427
2428void
b8de8283 2429set_gdbarch_cannot_store_register (struct gdbarch *gdbarch,
adc48a49 2430 gdbarch_cannot_store_register_ftype cannot_store_register)
0f71a2f6 2431{
b8de8283 2432 gdbarch->cannot_store_register = cannot_store_register;
0f71a2f6
JM
2433}
2434
39535193 2435bool
b8de8283 2436gdbarch_get_longjmp_target_p (struct gdbarch *gdbarch)
e8ab51f7
AC
2437{
2438 gdb_assert (gdbarch != NULL);
956ac328 2439 return gdbarch->get_longjmp_target != NULL;
e8ab51f7
AC
2440}
2441
b8de8283 2442int
bd2b40ac 2443gdbarch_get_longjmp_target (struct gdbarch *gdbarch, frame_info_ptr frame, CORE_ADDR *pc)
0f71a2f6 2444{
8de9bdc4 2445 gdb_assert (gdbarch != NULL);
956ac328 2446 gdb_assert (gdbarch->get_longjmp_target != NULL);
0f71a2f6 2447 if (gdbarch_debug >= 2)
6cb06a8c 2448 gdb_printf (gdb_stdlog, "gdbarch_get_longjmp_target called\n");
60ade65d 2449 return gdbarch->get_longjmp_target (frame, pc);
0f71a2f6
JM
2450}
2451
2452void
b8de8283 2453set_gdbarch_get_longjmp_target (struct gdbarch *gdbarch,
adc48a49 2454 gdbarch_get_longjmp_target_ftype get_longjmp_target)
0f71a2f6 2455{
b8de8283 2456 gdbarch->get_longjmp_target = get_longjmp_target;
0f71a2f6
JM
2457}
2458
2459int
104c1213 2460gdbarch_believe_pcc_promotion (struct gdbarch *gdbarch)
0f71a2f6 2461{
8de9bdc4 2462 gdb_assert (gdbarch != NULL);
a5118a18 2463 /* Skip verify of believe_pcc_promotion, invalid_p == 0 */
0f71a2f6 2464 if (gdbarch_debug >= 2)
6cb06a8c 2465 gdb_printf (gdb_stdlog, "gdbarch_believe_pcc_promotion called\n");
0f71a2f6
JM
2466 return gdbarch->believe_pcc_promotion;
2467}
2468
2469void
104c1213 2470set_gdbarch_believe_pcc_promotion (struct gdbarch *gdbarch,
adc48a49 2471 int believe_pcc_promotion)
0f71a2f6
JM
2472{
2473 gdbarch->believe_pcc_promotion = believe_pcc_promotion;
2474}
2475
13d01224 2476int
ff2e87ac 2477gdbarch_convert_register_p (struct gdbarch *gdbarch, int regnum, struct type *type)
13d01224
AC
2478{
2479 gdb_assert (gdbarch != NULL);
956ac328 2480 gdb_assert (gdbarch->convert_register_p != NULL);
13d01224 2481 if (gdbarch_debug >= 2)
6cb06a8c 2482 gdb_printf (gdb_stdlog, "gdbarch_convert_register_p called\n");
0abe36f5 2483 return gdbarch->convert_register_p (gdbarch, regnum, type);
13d01224
AC
2484}
2485
2486void
2487set_gdbarch_convert_register_p (struct gdbarch *gdbarch,
adc48a49 2488 gdbarch_convert_register_p_ftype convert_register_p)
13d01224
AC
2489{
2490 gdbarch->convert_register_p = convert_register_p;
2491}
2492
8dccd430 2493int
bd2b40ac 2494gdbarch_register_to_value (struct gdbarch *gdbarch, frame_info_ptr frame, int regnum, struct type *type, gdb_byte *buf, int *optimizedp, int *unavailablep)
13d01224
AC
2495{
2496 gdb_assert (gdbarch != NULL);
956ac328 2497 gdb_assert (gdbarch->register_to_value != NULL);
13d01224 2498 if (gdbarch_debug >= 2)
6cb06a8c 2499 gdb_printf (gdb_stdlog, "gdbarch_register_to_value called\n");
8dccd430 2500 return gdbarch->register_to_value (frame, regnum, type, buf, optimizedp, unavailablep);
13d01224
AC
2501}
2502
2503void
2504set_gdbarch_register_to_value (struct gdbarch *gdbarch,
adc48a49 2505 gdbarch_register_to_value_ftype register_to_value)
13d01224
AC
2506{
2507 gdbarch->register_to_value = register_to_value;
2508}
2509
2510void
bd2b40ac 2511gdbarch_value_to_register (struct gdbarch *gdbarch, frame_info_ptr frame, int regnum, struct type *type, const gdb_byte *buf)
13d01224
AC
2512{
2513 gdb_assert (gdbarch != NULL);
956ac328 2514 gdb_assert (gdbarch->value_to_register != NULL);
13d01224 2515 if (gdbarch_debug >= 2)
6cb06a8c 2516 gdb_printf (gdb_stdlog, "gdbarch_value_to_register called\n");
ff2e87ac 2517 gdbarch->value_to_register (frame, regnum, type, buf);
13d01224
AC
2518}
2519
2520void
2521set_gdbarch_value_to_register (struct gdbarch *gdbarch,
adc48a49 2522 gdbarch_value_to_register_ftype value_to_register)
13d01224
AC
2523{
2524 gdbarch->value_to_register = value_to_register;
2525}
2526
9acbedc0 2527struct value *
2ed3c037 2528gdbarch_value_from_register (struct gdbarch *gdbarch, struct type *type, int regnum, struct frame_id frame_id)
9acbedc0
UW
2529{
2530 gdb_assert (gdbarch != NULL);
2531 gdb_assert (gdbarch->value_from_register != NULL);
2532 if (gdbarch_debug >= 2)
6cb06a8c 2533 gdb_printf (gdb_stdlog, "gdbarch_value_from_register called\n");
2ed3c037 2534 return gdbarch->value_from_register (gdbarch, type, regnum, frame_id);
9acbedc0
UW
2535}
2536
2537void
2538set_gdbarch_value_from_register (struct gdbarch *gdbarch,
adc48a49 2539 gdbarch_value_from_register_ftype value_from_register)
9acbedc0
UW
2540{
2541 gdbarch->value_from_register = value_from_register;
2542}
2543
4478b372 2544CORE_ADDR
b60c417a 2545gdbarch_pointer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf)
4478b372 2546{
8de9bdc4 2547 gdb_assert (gdbarch != NULL);
956ac328 2548 gdb_assert (gdbarch->pointer_to_address != NULL);
4478b372 2549 if (gdbarch_debug >= 2)
6cb06a8c 2550 gdb_printf (gdb_stdlog, "gdbarch_pointer_to_address called\n");
9898f801 2551 return gdbarch->pointer_to_address (gdbarch, type, buf);
4478b372
JB
2552}
2553
2554void
2555set_gdbarch_pointer_to_address (struct gdbarch *gdbarch,
adc48a49 2556 gdbarch_pointer_to_address_ftype pointer_to_address)
4478b372
JB
2557{
2558 gdbarch->pointer_to_address = pointer_to_address;
2559}
2560
2561void
b60c417a 2562gdbarch_address_to_pointer (struct gdbarch *gdbarch, struct type *type, gdb_byte *buf, CORE_ADDR addr)
4478b372 2563{
8de9bdc4 2564 gdb_assert (gdbarch != NULL);
956ac328 2565 gdb_assert (gdbarch->address_to_pointer != NULL);
4478b372 2566 if (gdbarch_debug >= 2)
6cb06a8c 2567 gdb_printf (gdb_stdlog, "gdbarch_address_to_pointer called\n");
9898f801 2568 gdbarch->address_to_pointer (gdbarch, type, buf, addr);
4478b372
JB
2569}
2570
2571void
2572set_gdbarch_address_to_pointer (struct gdbarch *gdbarch,
adc48a49 2573 gdbarch_address_to_pointer_ftype address_to_pointer)
4478b372
JB
2574{
2575 gdbarch->address_to_pointer = address_to_pointer;
2576}
2577
39535193 2578bool
fc0c74b1
AC
2579gdbarch_integer_to_address_p (struct gdbarch *gdbarch)
2580{
8de9bdc4 2581 gdb_assert (gdbarch != NULL);
956ac328 2582 return gdbarch->integer_to_address != NULL;
fc0c74b1
AC
2583}
2584
2585CORE_ADDR
fc1a4b47 2586gdbarch_integer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf)
fc0c74b1 2587{
8de9bdc4 2588 gdb_assert (gdbarch != NULL);
956ac328 2589 gdb_assert (gdbarch->integer_to_address != NULL);
fc0c74b1 2590 if (gdbarch_debug >= 2)
6cb06a8c 2591 gdb_printf (gdb_stdlog, "gdbarch_integer_to_address called\n");
79dd2d24 2592 return gdbarch->integer_to_address (gdbarch, type, buf);
fc0c74b1
AC
2593}
2594
2595void
2596set_gdbarch_integer_to_address (struct gdbarch *gdbarch,
adc48a49 2597 gdbarch_integer_to_address_ftype integer_to_address)
fc0c74b1
AC
2598{
2599 gdbarch->integer_to_address = integer_to_address;
2600}
2601
92ad9cd9
AC
2602void
2603set_gdbarch_return_value (struct gdbarch *gdbarch,
adc48a49 2604 gdbarch_return_value_ftype return_value)
92ad9cd9
AC
2605{
2606 gdbarch->return_value = return_value;
2607}
2608
4e1d2f58
TT
2609enum return_value_convention
2610gdbarch_return_value_as_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, struct value **read_value, const gdb_byte *writebuf)
2611{
2612 gdb_assert (gdbarch != NULL);
2613 gdb_assert (gdbarch->return_value_as_value != NULL);
2614 if (gdbarch_debug >= 2)
2615 gdb_printf (gdb_stdlog, "gdbarch_return_value_as_value called\n");
2616 return gdbarch->return_value_as_value (gdbarch, function, valtype, regcache, read_value, writebuf);
2617}
2618
2619void
2620set_gdbarch_return_value_as_value (struct gdbarch *gdbarch,
2621 gdbarch_return_value_as_value_ftype return_value_as_value)
2622{
2623 gdbarch->return_value_as_value = return_value_as_value;
2624}
2625
a0eda3df
CL
2626CORE_ADDR
2627gdbarch_get_return_buf_addr (struct gdbarch *gdbarch, struct type *val_type, frame_info_ptr cur_frame)
2628{
2629 gdb_assert (gdbarch != NULL);
2630 gdb_assert (gdbarch->get_return_buf_addr != NULL);
2631 if (gdbarch_debug >= 2)
2632 gdb_printf (gdb_stdlog, "gdbarch_get_return_buf_addr called\n");
2633 return gdbarch->get_return_buf_addr (val_type, cur_frame);
2634}
2635
2636void
2637set_gdbarch_get_return_buf_addr (struct gdbarch *gdbarch,
adc48a49 2638 gdbarch_get_return_buf_addr_ftype get_return_buf_addr)
a0eda3df
CL
2639{
2640 gdbarch->get_return_buf_addr = get_return_buf_addr;
2641}
2642
c1a398a3
CL
2643bool
2644gdbarch_dwarf2_omit_typedef_p (struct gdbarch *gdbarch, struct type *target_type, const char *producer, const char *name)
2645{
2646 gdb_assert (gdbarch != NULL);
2647 gdb_assert (gdbarch->dwarf2_omit_typedef_p != NULL);
2648 if (gdbarch_debug >= 2)
2649 gdb_printf (gdb_stdlog, "gdbarch_dwarf2_omit_typedef_p called\n");
2650 return gdbarch->dwarf2_omit_typedef_p (target_type, producer, name);
2651}
2652
2653void
2654set_gdbarch_dwarf2_omit_typedef_p (struct gdbarch *gdbarch,
2655 gdbarch_dwarf2_omit_typedef_p_ftype dwarf2_omit_typedef_p)
2656{
2657 gdbarch->dwarf2_omit_typedef_p = dwarf2_omit_typedef_p;
2658}
2659
9df25c34
TT
2660CORE_ADDR
2661gdbarch_update_call_site_pc (struct gdbarch *gdbarch, CORE_ADDR pc)
2662{
2663 gdb_assert (gdbarch != NULL);
2664 gdb_assert (gdbarch->update_call_site_pc != NULL);
2665 if (gdbarch_debug >= 2)
2666 gdb_printf (gdb_stdlog, "gdbarch_update_call_site_pc called\n");
2667 return gdbarch->update_call_site_pc (gdbarch, pc);
2668}
2669
2670void
2671set_gdbarch_update_call_site_pc (struct gdbarch *gdbarch,
2672 gdbarch_update_call_site_pc_ftype update_call_site_pc)
2673{
2674 gdbarch->update_call_site_pc = update_call_site_pc;
2675}
2676
18648a37
YQ
2677int
2678gdbarch_return_in_first_hidden_param_p (struct gdbarch *gdbarch, struct type *type)
2679{
2680 gdb_assert (gdbarch != NULL);
2681 gdb_assert (gdbarch->return_in_first_hidden_param_p != NULL);
2682 if (gdbarch_debug >= 2)
6cb06a8c 2683 gdb_printf (gdb_stdlog, "gdbarch_return_in_first_hidden_param_p called\n");
18648a37
YQ
2684 return gdbarch->return_in_first_hidden_param_p (gdbarch, type);
2685}
2686
2687void
2688set_gdbarch_return_in_first_hidden_param_p (struct gdbarch *gdbarch,
adc48a49 2689 gdbarch_return_in_first_hidden_param_p_ftype return_in_first_hidden_param_p)
18648a37
YQ
2690{
2691 gdbarch->return_in_first_hidden_param_p = return_in_first_hidden_param_p;
2692}
2693
0f71a2f6
JM
2694CORE_ADDR
2695gdbarch_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR ip)
2696{
8de9bdc4 2697 gdb_assert (gdbarch != NULL);
956ac328 2698 gdb_assert (gdbarch->skip_prologue != NULL);
0f71a2f6 2699 if (gdbarch_debug >= 2)
6cb06a8c 2700 gdb_printf (gdb_stdlog, "gdbarch_skip_prologue called\n");
6093d2eb 2701 return gdbarch->skip_prologue (gdbarch, ip);
0f71a2f6
JM
2702}
2703
2704void
104c1213 2705set_gdbarch_skip_prologue (struct gdbarch *gdbarch,
adc48a49 2706 gdbarch_skip_prologue_ftype skip_prologue)
0f71a2f6
JM
2707{
2708 gdbarch->skip_prologue = skip_prologue;
2709}
2710
39535193 2711bool
4309257c
PM
2712gdbarch_skip_main_prologue_p (struct gdbarch *gdbarch)
2713{
2714 gdb_assert (gdbarch != NULL);
2715 return gdbarch->skip_main_prologue != NULL;
2716}
2717
2718CORE_ADDR
2719gdbarch_skip_main_prologue (struct gdbarch *gdbarch, CORE_ADDR ip)
2720{
2721 gdb_assert (gdbarch != NULL);
2722 gdb_assert (gdbarch->skip_main_prologue != NULL);
2723 if (gdbarch_debug >= 2)
6cb06a8c 2724 gdb_printf (gdb_stdlog, "gdbarch_skip_main_prologue called\n");
4309257c
PM
2725 return gdbarch->skip_main_prologue (gdbarch, ip);
2726}
2727
2728void
2729set_gdbarch_skip_main_prologue (struct gdbarch *gdbarch,
adc48a49 2730 gdbarch_skip_main_prologue_ftype skip_main_prologue)
4309257c
PM
2731{
2732 gdbarch->skip_main_prologue = skip_main_prologue;
2733}
2734
39535193 2735bool
591a12a1
UW
2736gdbarch_skip_entrypoint_p (struct gdbarch *gdbarch)
2737{
2738 gdb_assert (gdbarch != NULL);
2739 return gdbarch->skip_entrypoint != NULL;
2740}
2741
2742CORE_ADDR
2743gdbarch_skip_entrypoint (struct gdbarch *gdbarch, CORE_ADDR ip)
2744{
2745 gdb_assert (gdbarch != NULL);
2746 gdb_assert (gdbarch->skip_entrypoint != NULL);
2747 if (gdbarch_debug >= 2)
6cb06a8c 2748 gdb_printf (gdb_stdlog, "gdbarch_skip_entrypoint called\n");
591a12a1
UW
2749 return gdbarch->skip_entrypoint (gdbarch, ip);
2750}
2751
2752void
2753set_gdbarch_skip_entrypoint (struct gdbarch *gdbarch,
adc48a49 2754 gdbarch_skip_entrypoint_ftype skip_entrypoint)
591a12a1
UW
2755{
2756 gdbarch->skip_entrypoint = skip_entrypoint;
2757}
2758
0f71a2f6
JM
2759int
2760gdbarch_inner_than (struct gdbarch *gdbarch, CORE_ADDR lhs, CORE_ADDR rhs)
2761{
8de9bdc4 2762 gdb_assert (gdbarch != NULL);
956ac328 2763 gdb_assert (gdbarch->inner_than != NULL);
0f71a2f6 2764 if (gdbarch_debug >= 2)
6cb06a8c 2765 gdb_printf (gdb_stdlog, "gdbarch_inner_than called\n");
0f71a2f6
JM
2766 return gdbarch->inner_than (lhs, rhs);
2767}
2768
2769void
104c1213 2770set_gdbarch_inner_than (struct gdbarch *gdbarch,
adc48a49 2771 gdbarch_inner_than_ftype inner_than)
0f71a2f6
JM
2772{
2773 gdbarch->inner_than = inner_than;
2774}
2775
fc1a4b47 2776const gdb_byte *
adf40b2e 2777gdbarch_breakpoint_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr, int *lenptr)
0f71a2f6 2778{
8de9bdc4 2779 gdb_assert (gdbarch != NULL);
956ac328 2780 gdb_assert (gdbarch->breakpoint_from_pc != NULL);
0f71a2f6 2781 if (gdbarch_debug >= 2)
6cb06a8c 2782 gdb_printf (gdb_stdlog, "gdbarch_breakpoint_from_pc called\n");
67d57894 2783 return gdbarch->breakpoint_from_pc (gdbarch, pcptr, lenptr);
0f71a2f6
JM
2784}
2785
2786void
104c1213 2787set_gdbarch_breakpoint_from_pc (struct gdbarch *gdbarch,
adc48a49 2788 gdbarch_breakpoint_from_pc_ftype breakpoint_from_pc)
0f71a2f6
JM
2789{
2790 gdbarch->breakpoint_from_pc = breakpoint_from_pc;
2791}
2792
cd6c3b4f
YQ
2793int
2794gdbarch_breakpoint_kind_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr)
2795{
2796 gdb_assert (gdbarch != NULL);
2797 gdb_assert (gdbarch->breakpoint_kind_from_pc != NULL);
2798 if (gdbarch_debug >= 2)
6cb06a8c 2799 gdb_printf (gdb_stdlog, "gdbarch_breakpoint_kind_from_pc called\n");
cd6c3b4f
YQ
2800 return gdbarch->breakpoint_kind_from_pc (gdbarch, pcptr);
2801}
2802
2803void
2804set_gdbarch_breakpoint_kind_from_pc (struct gdbarch *gdbarch,
adc48a49 2805 gdbarch_breakpoint_kind_from_pc_ftype breakpoint_kind_from_pc)
cd6c3b4f
YQ
2806{
2807 gdbarch->breakpoint_kind_from_pc = breakpoint_kind_from_pc;
2808}
2809
2810const gdb_byte *
2811gdbarch_sw_breakpoint_from_kind (struct gdbarch *gdbarch, int kind, int *size)
2812{
2813 gdb_assert (gdbarch != NULL);
2814 gdb_assert (gdbarch->sw_breakpoint_from_kind != NULL);
2815 if (gdbarch_debug >= 2)
6cb06a8c 2816 gdb_printf (gdb_stdlog, "gdbarch_sw_breakpoint_from_kind called\n");
cd6c3b4f
YQ
2817 return gdbarch->sw_breakpoint_from_kind (gdbarch, kind, size);
2818}
2819
2820void
2821set_gdbarch_sw_breakpoint_from_kind (struct gdbarch *gdbarch,
adc48a49 2822 gdbarch_sw_breakpoint_from_kind_ftype sw_breakpoint_from_kind)
cd6c3b4f
YQ
2823{
2824 gdbarch->sw_breakpoint_from_kind = sw_breakpoint_from_kind;
2825}
2826
833b7ab5
YQ
2827int
2828gdbarch_breakpoint_kind_from_current_state (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR *pcptr)
2829{
2830 gdb_assert (gdbarch != NULL);
2831 gdb_assert (gdbarch->breakpoint_kind_from_current_state != NULL);
2832 if (gdbarch_debug >= 2)
6cb06a8c 2833 gdb_printf (gdb_stdlog, "gdbarch_breakpoint_kind_from_current_state called\n");
833b7ab5
YQ
2834 return gdbarch->breakpoint_kind_from_current_state (gdbarch, regcache, pcptr);
2835}
2836
2837void
2838set_gdbarch_breakpoint_kind_from_current_state (struct gdbarch *gdbarch,
adc48a49 2839 gdbarch_breakpoint_kind_from_current_state_ftype breakpoint_kind_from_current_state)
833b7ab5
YQ
2840{
2841 gdbarch->breakpoint_kind_from_current_state = breakpoint_kind_from_current_state;
2842}
2843
39535193 2844bool
a1131521
KB
2845gdbarch_adjust_breakpoint_address_p (struct gdbarch *gdbarch)
2846{
2847 gdb_assert (gdbarch != NULL);
2848 return gdbarch->adjust_breakpoint_address != NULL;
2849}
2850
2851CORE_ADDR
2852gdbarch_adjust_breakpoint_address (struct gdbarch *gdbarch, CORE_ADDR bpaddr)
2853{
2854 gdb_assert (gdbarch != NULL);
2855 gdb_assert (gdbarch->adjust_breakpoint_address != NULL);
2856 if (gdbarch_debug >= 2)
6cb06a8c 2857 gdb_printf (gdb_stdlog, "gdbarch_adjust_breakpoint_address called\n");
a1131521
KB
2858 return gdbarch->adjust_breakpoint_address (gdbarch, bpaddr);
2859}
2860
2861void
2862set_gdbarch_adjust_breakpoint_address (struct gdbarch *gdbarch,
adc48a49 2863 gdbarch_adjust_breakpoint_address_ftype adjust_breakpoint_address)
a1131521
KB
2864{
2865 gdbarch->adjust_breakpoint_address = adjust_breakpoint_address;
2866}
2867
917317f4 2868int
8181d85f 2869gdbarch_memory_insert_breakpoint (struct gdbarch *gdbarch, struct bp_target_info *bp_tgt)
917317f4 2870{
8de9bdc4 2871 gdb_assert (gdbarch != NULL);
956ac328 2872 gdb_assert (gdbarch->memory_insert_breakpoint != NULL);
917317f4 2873 if (gdbarch_debug >= 2)
6cb06a8c 2874 gdb_printf (gdb_stdlog, "gdbarch_memory_insert_breakpoint called\n");
ae4b2284 2875 return gdbarch->memory_insert_breakpoint (gdbarch, bp_tgt);
917317f4
JM
2876}
2877
2878void
2879set_gdbarch_memory_insert_breakpoint (struct gdbarch *gdbarch,
adc48a49 2880 gdbarch_memory_insert_breakpoint_ftype memory_insert_breakpoint)
917317f4
JM
2881{
2882 gdbarch->memory_insert_breakpoint = memory_insert_breakpoint;
2883}
2884
2885int
8181d85f 2886gdbarch_memory_remove_breakpoint (struct gdbarch *gdbarch, struct bp_target_info *bp_tgt)
917317f4 2887{
8de9bdc4 2888 gdb_assert (gdbarch != NULL);
956ac328 2889 gdb_assert (gdbarch->memory_remove_breakpoint != NULL);
917317f4 2890 if (gdbarch_debug >= 2)
6cb06a8c 2891 gdb_printf (gdb_stdlog, "gdbarch_memory_remove_breakpoint called\n");
ae4b2284 2892 return gdbarch->memory_remove_breakpoint (gdbarch, bp_tgt);
917317f4
JM
2893}
2894
2895void
2896set_gdbarch_memory_remove_breakpoint (struct gdbarch *gdbarch,
adc48a49 2897 gdbarch_memory_remove_breakpoint_ftype memory_remove_breakpoint)
917317f4
JM
2898{
2899 gdbarch->memory_remove_breakpoint = memory_remove_breakpoint;
2900}
2901
0f71a2f6 2902CORE_ADDR
104c1213 2903gdbarch_decr_pc_after_break (struct gdbarch *gdbarch)
0f71a2f6 2904{
8de9bdc4 2905 gdb_assert (gdbarch != NULL);
71bd6bd4 2906 /* Skip verify of decr_pc_after_break, invalid_p == 0 */
0f71a2f6 2907 if (gdbarch_debug >= 2)
6cb06a8c 2908 gdb_printf (gdb_stdlog, "gdbarch_decr_pc_after_break called\n");
0f71a2f6
JM
2909 return gdbarch->decr_pc_after_break;
2910}
2911
2912void
104c1213 2913set_gdbarch_decr_pc_after_break (struct gdbarch *gdbarch,
adc48a49 2914 CORE_ADDR decr_pc_after_break)
0f71a2f6
JM
2915{
2916 gdbarch->decr_pc_after_break = decr_pc_after_break;
2917}
2918
2919CORE_ADDR
782263ab 2920gdbarch_deprecated_function_start_offset (struct gdbarch *gdbarch)
0f71a2f6 2921{
8de9bdc4 2922 gdb_assert (gdbarch != NULL);
782263ab 2923 /* Skip verify of deprecated_function_start_offset, invalid_p == 0 */
0f71a2f6 2924 if (gdbarch_debug >= 2)
6cb06a8c 2925 gdb_printf (gdb_stdlog, "gdbarch_deprecated_function_start_offset called\n");
782263ab 2926 return gdbarch->deprecated_function_start_offset;
0f71a2f6
JM
2927}
2928
2929void
782263ab 2930set_gdbarch_deprecated_function_start_offset (struct gdbarch *gdbarch,
adc48a49 2931 CORE_ADDR deprecated_function_start_offset)
0f71a2f6 2932{
782263ab 2933 gdbarch->deprecated_function_start_offset = deprecated_function_start_offset;
0f71a2f6
JM
2934}
2935
123dc839
DJ
2936int
2937gdbarch_remote_register_number (struct gdbarch *gdbarch, int regno)
2938{
2939 gdb_assert (gdbarch != NULL);
2940 gdb_assert (gdbarch->remote_register_number != NULL);
2941 if (gdbarch_debug >= 2)
6cb06a8c 2942 gdb_printf (gdb_stdlog, "gdbarch_remote_register_number called\n");
123dc839
DJ
2943 return gdbarch->remote_register_number (gdbarch, regno);
2944}
2945
2946void
2947set_gdbarch_remote_register_number (struct gdbarch *gdbarch,
adc48a49 2948 gdbarch_remote_register_number_ftype remote_register_number)
123dc839
DJ
2949{
2950 gdbarch->remote_register_number = remote_register_number;
2951}
2952
39535193 2953bool
b2756930
KB
2954gdbarch_fetch_tls_load_module_address_p (struct gdbarch *gdbarch)
2955{
2956 gdb_assert (gdbarch != NULL);
2957 return gdbarch->fetch_tls_load_module_address != NULL;
2958}
2959
2960CORE_ADDR
2961gdbarch_fetch_tls_load_module_address (struct gdbarch *gdbarch, struct objfile *objfile)
2962{
2963 gdb_assert (gdbarch != NULL);
2964 gdb_assert (gdbarch->fetch_tls_load_module_address != NULL);
2965 if (gdbarch_debug >= 2)
6cb06a8c 2966 gdb_printf (gdb_stdlog, "gdbarch_fetch_tls_load_module_address called\n");
b2756930
KB
2967 return gdbarch->fetch_tls_load_module_address (objfile);
2968}
2969
2970void
2971set_gdbarch_fetch_tls_load_module_address (struct gdbarch *gdbarch,
adc48a49 2972 gdbarch_fetch_tls_load_module_address_ftype fetch_tls_load_module_address)
b2756930
KB
2973{
2974 gdbarch->fetch_tls_load_module_address = fetch_tls_load_module_address;
2975}
2976
39535193 2977bool
6e056c81
JB
2978gdbarch_get_thread_local_address_p (struct gdbarch *gdbarch)
2979{
2980 gdb_assert (gdbarch != NULL);
2981 return gdbarch->get_thread_local_address != NULL;
2982}
2983
2984CORE_ADDR
2985gdbarch_get_thread_local_address (struct gdbarch *gdbarch, ptid_t ptid, CORE_ADDR lm_addr, CORE_ADDR offset)
2986{
2987 gdb_assert (gdbarch != NULL);
2988 gdb_assert (gdbarch->get_thread_local_address != NULL);
2989 if (gdbarch_debug >= 2)
6cb06a8c 2990 gdb_printf (gdb_stdlog, "gdbarch_get_thread_local_address called\n");
6e056c81
JB
2991 return gdbarch->get_thread_local_address (gdbarch, ptid, lm_addr, offset);
2992}
2993
2994void
2995set_gdbarch_get_thread_local_address (struct gdbarch *gdbarch,
adc48a49 2996 gdbarch_get_thread_local_address_ftype get_thread_local_address)
6e056c81
JB
2997{
2998 gdbarch->get_thread_local_address = get_thread_local_address;
2999}
3000
0f71a2f6 3001CORE_ADDR
104c1213 3002gdbarch_frame_args_skip (struct gdbarch *gdbarch)
0f71a2f6 3003{
8de9bdc4 3004 gdb_assert (gdbarch != NULL);
5867a2fb 3005 /* Skip verify of frame_args_skip, invalid_p == 0 */
0f71a2f6 3006 if (gdbarch_debug >= 2)
6cb06a8c 3007 gdb_printf (gdb_stdlog, "gdbarch_frame_args_skip called\n");
0f71a2f6
JM
3008 return gdbarch->frame_args_skip;
3009}
3010
3011void
104c1213 3012set_gdbarch_frame_args_skip (struct gdbarch *gdbarch,
adc48a49 3013 CORE_ADDR frame_args_skip)
0f71a2f6
JM
3014{
3015 gdbarch->frame_args_skip = frame_args_skip;
3016}
3017
12cc2063 3018CORE_ADDR
bd2b40ac 3019gdbarch_unwind_pc (struct gdbarch *gdbarch, frame_info_ptr next_frame)
12cc2063
AC
3020{
3021 gdb_assert (gdbarch != NULL);
956ac328 3022 gdb_assert (gdbarch->unwind_pc != NULL);
12cc2063 3023 if (gdbarch_debug >= 2)
6cb06a8c 3024 gdb_printf (gdb_stdlog, "gdbarch_unwind_pc called\n");
12cc2063
AC
3025 return gdbarch->unwind_pc (gdbarch, next_frame);
3026}
3027
3028void
3029set_gdbarch_unwind_pc (struct gdbarch *gdbarch,
adc48a49 3030 gdbarch_unwind_pc_ftype unwind_pc)
12cc2063
AC
3031{
3032 gdbarch->unwind_pc = unwind_pc;
3033}
3034
a9e5fdc2 3035CORE_ADDR
bd2b40ac 3036gdbarch_unwind_sp (struct gdbarch *gdbarch, frame_info_ptr next_frame)
a9e5fdc2
AC
3037{
3038 gdb_assert (gdbarch != NULL);
956ac328 3039 gdb_assert (gdbarch->unwind_sp != NULL);
a9e5fdc2 3040 if (gdbarch_debug >= 2)
6cb06a8c 3041 gdb_printf (gdb_stdlog, "gdbarch_unwind_sp called\n");
a9e5fdc2
AC
3042 return gdbarch->unwind_sp (gdbarch, next_frame);
3043}
3044
3045void
3046set_gdbarch_unwind_sp (struct gdbarch *gdbarch,
adc48a49 3047 gdbarch_unwind_sp_ftype unwind_sp)
a9e5fdc2
AC
3048{
3049 gdbarch->unwind_sp = unwind_sp;
3050}
3051
39535193 3052bool
983a287a
AC
3053gdbarch_frame_num_args_p (struct gdbarch *gdbarch)
3054{
3055 gdb_assert (gdbarch != NULL);
956ac328 3056 return gdbarch->frame_num_args != NULL;
983a287a
AC
3057}
3058
0f71a2f6 3059int
bd2b40ac 3060gdbarch_frame_num_args (struct gdbarch *gdbarch, frame_info_ptr frame)
0f71a2f6 3061{
8de9bdc4 3062 gdb_assert (gdbarch != NULL);
956ac328 3063 gdb_assert (gdbarch->frame_num_args != NULL);
0f71a2f6 3064 if (gdbarch_debug >= 2)
6cb06a8c 3065 gdb_printf (gdb_stdlog, "gdbarch_frame_num_args called\n");
0f71a2f6
JM
3066 return gdbarch->frame_num_args (frame);
3067}
3068
3069void
104c1213 3070set_gdbarch_frame_num_args (struct gdbarch *gdbarch,
adc48a49 3071 gdbarch_frame_num_args_ftype frame_num_args)
0f71a2f6
JM
3072{
3073 gdbarch->frame_num_args = frame_num_args;
3074}
3075
39535193 3076bool
dc604539
AC
3077gdbarch_frame_align_p (struct gdbarch *gdbarch)
3078{
3079 gdb_assert (gdbarch != NULL);
956ac328 3080 return gdbarch->frame_align != NULL;
dc604539
AC
3081}
3082
3083CORE_ADDR
3084gdbarch_frame_align (struct gdbarch *gdbarch, CORE_ADDR address)
3085{
3086 gdb_assert (gdbarch != NULL);
956ac328 3087 gdb_assert (gdbarch->frame_align != NULL);
dc604539 3088 if (gdbarch_debug >= 2)
6cb06a8c 3089 gdb_printf (gdb_stdlog, "gdbarch_frame_align called\n");
dc604539
AC
3090 return gdbarch->frame_align (gdbarch, address);
3091}
3092
3093void
3094set_gdbarch_frame_align (struct gdbarch *gdbarch,
adc48a49 3095 gdbarch_frame_align_ftype frame_align)
dc604539
AC
3096{
3097 gdbarch->frame_align = frame_align;
3098}
3099
192cb3d4
MK
3100int
3101gdbarch_stabs_argument_has_addr (struct gdbarch *gdbarch, struct type *type)
3102{
3103 gdb_assert (gdbarch != NULL);
3104 gdb_assert (gdbarch->stabs_argument_has_addr != NULL);
3105 if (gdbarch_debug >= 2)
6cb06a8c 3106 gdb_printf (gdb_stdlog, "gdbarch_stabs_argument_has_addr called\n");
192cb3d4
MK
3107 return gdbarch->stabs_argument_has_addr (gdbarch, type);
3108}
3109
3110void
3111set_gdbarch_stabs_argument_has_addr (struct gdbarch *gdbarch,
adc48a49 3112 gdbarch_stabs_argument_has_addr_ftype stabs_argument_has_addr)
192cb3d4
MK
3113{
3114 gdbarch->stabs_argument_has_addr = stabs_argument_has_addr;
3115}
3116
8b148df9
AC
3117int
3118gdbarch_frame_red_zone_size (struct gdbarch *gdbarch)
3119{
3120 gdb_assert (gdbarch != NULL);
a5118a18 3121 /* Skip verify of frame_red_zone_size, invalid_p == 0 */
8b148df9 3122 if (gdbarch_debug >= 2)
6cb06a8c 3123 gdb_printf (gdb_stdlog, "gdbarch_frame_red_zone_size called\n");
8b148df9
AC
3124 return gdbarch->frame_red_zone_size;
3125}
3126
3127void
3128set_gdbarch_frame_red_zone_size (struct gdbarch *gdbarch,
adc48a49 3129 int frame_red_zone_size)
8b148df9
AC
3130{
3131 gdbarch->frame_red_zone_size = frame_red_zone_size;
3132}
3133
f517ea4e 3134CORE_ADDR
e2d0e7eb 3135gdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch, CORE_ADDR addr, struct target_ops *targ)
f517ea4e 3136{
8de9bdc4 3137 gdb_assert (gdbarch != NULL);
956ac328 3138 gdb_assert (gdbarch->convert_from_func_ptr_addr != NULL);
f517ea4e 3139 if (gdbarch_debug >= 2)
6cb06a8c 3140 gdb_printf (gdb_stdlog, "gdbarch_convert_from_func_ptr_addr called\n");
e2d0e7eb 3141 return gdbarch->convert_from_func_ptr_addr (gdbarch, addr, targ);
f517ea4e
PS
3142}
3143
3144void
3145set_gdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch,
adc48a49 3146 gdbarch_convert_from_func_ptr_addr_ftype convert_from_func_ptr_addr)
f517ea4e
PS
3147{
3148 gdbarch->convert_from_func_ptr_addr = convert_from_func_ptr_addr;
3149}
3150
875e1767
AC
3151CORE_ADDR
3152gdbarch_addr_bits_remove (struct gdbarch *gdbarch, CORE_ADDR addr)
3153{
8de9bdc4 3154 gdb_assert (gdbarch != NULL);
956ac328 3155 gdb_assert (gdbarch->addr_bits_remove != NULL);
875e1767 3156 if (gdbarch_debug >= 2)
6cb06a8c 3157 gdb_printf (gdb_stdlog, "gdbarch_addr_bits_remove called\n");
24568a2c 3158 return gdbarch->addr_bits_remove (gdbarch, addr);
875e1767
AC
3159}
3160
3161void
3162set_gdbarch_addr_bits_remove (struct gdbarch *gdbarch,
adc48a49 3163 gdbarch_addr_bits_remove_ftype addr_bits_remove)
875e1767
AC
3164{
3165 gdbarch->addr_bits_remove = addr_bits_remove;
3166}
3167
d88cb738
LM
3168CORE_ADDR
3169gdbarch_remove_non_address_bits (struct gdbarch *gdbarch, CORE_ADDR pointer)
a738ea1d
YQ
3170{
3171 gdb_assert (gdbarch != NULL);
d88cb738 3172 gdb_assert (gdbarch->remove_non_address_bits != NULL);
a738ea1d 3173 if (gdbarch_debug >= 2)
d88cb738
LM
3174 gdb_printf (gdb_stdlog, "gdbarch_remove_non_address_bits called\n");
3175 return gdbarch->remove_non_address_bits (gdbarch, pointer);
a738ea1d
YQ
3176}
3177
3178void
d88cb738
LM
3179set_gdbarch_remove_non_address_bits (struct gdbarch *gdbarch,
3180 gdbarch_remove_non_address_bits_ftype remove_non_address_bits)
a738ea1d 3181{
d88cb738 3182 gdbarch->remove_non_address_bits = remove_non_address_bits;
a738ea1d
YQ
3183}
3184
c193949e
LM
3185std::string
3186gdbarch_memtag_to_string (struct gdbarch *gdbarch, struct value *tag)
3187{
3188 gdb_assert (gdbarch != NULL);
3189 gdb_assert (gdbarch->memtag_to_string != NULL);
3190 if (gdbarch_debug >= 2)
6cb06a8c 3191 gdb_printf (gdb_stdlog, "gdbarch_memtag_to_string called\n");
c193949e
LM
3192 return gdbarch->memtag_to_string (gdbarch, tag);
3193}
3194
3195void
3196set_gdbarch_memtag_to_string (struct gdbarch *gdbarch,
adc48a49 3197 gdbarch_memtag_to_string_ftype memtag_to_string)
c193949e
LM
3198{
3199 gdbarch->memtag_to_string = memtag_to_string;
3200}
3201
3202bool
3203gdbarch_tagged_address_p (struct gdbarch *gdbarch, struct value *address)
3204{
3205 gdb_assert (gdbarch != NULL);
3206 gdb_assert (gdbarch->tagged_address_p != NULL);
3207 if (gdbarch_debug >= 2)
6cb06a8c 3208 gdb_printf (gdb_stdlog, "gdbarch_tagged_address_p called\n");
c193949e
LM
3209 return gdbarch->tagged_address_p (gdbarch, address);
3210}
3211
3212void
3213set_gdbarch_tagged_address_p (struct gdbarch *gdbarch,
adc48a49 3214 gdbarch_tagged_address_p_ftype tagged_address_p)
c193949e
LM
3215{
3216 gdbarch->tagged_address_p = tagged_address_p;
3217}
3218
3219bool
3220gdbarch_memtag_matches_p (struct gdbarch *gdbarch, struct value *address)
3221{
3222 gdb_assert (gdbarch != NULL);
3223 gdb_assert (gdbarch->memtag_matches_p != NULL);
3224 if (gdbarch_debug >= 2)
6cb06a8c 3225 gdb_printf (gdb_stdlog, "gdbarch_memtag_matches_p called\n");
c193949e
LM
3226 return gdbarch->memtag_matches_p (gdbarch, address);
3227}
3228
3229void
3230set_gdbarch_memtag_matches_p (struct gdbarch *gdbarch,
adc48a49 3231 gdbarch_memtag_matches_p_ftype memtag_matches_p)
c193949e
LM
3232{
3233 gdbarch->memtag_matches_p = memtag_matches_p;
3234}
3235
3236bool
3237gdbarch_set_memtags (struct gdbarch *gdbarch, struct value *address, size_t length, const gdb::byte_vector &tags, memtag_type tag_type)
3238{
3239 gdb_assert (gdbarch != NULL);
3240 gdb_assert (gdbarch->set_memtags != NULL);
3241 if (gdbarch_debug >= 2)
6cb06a8c 3242 gdb_printf (gdb_stdlog, "gdbarch_set_memtags called\n");
c193949e
LM
3243 return gdbarch->set_memtags (gdbarch, address, length, tags, tag_type);
3244}
3245
3246void
3247set_gdbarch_set_memtags (struct gdbarch *gdbarch,
adc48a49 3248 gdbarch_set_memtags_ftype set_memtags)
c193949e
LM
3249{
3250 gdbarch->set_memtags = set_memtags;
3251}
3252
3253struct value *
3254gdbarch_get_memtag (struct gdbarch *gdbarch, struct value *address, memtag_type tag_type)
3255{
3256 gdb_assert (gdbarch != NULL);
3257 gdb_assert (gdbarch->get_memtag != NULL);
3258 if (gdbarch_debug >= 2)
6cb06a8c 3259 gdb_printf (gdb_stdlog, "gdbarch_get_memtag called\n");
c193949e
LM
3260 return gdbarch->get_memtag (gdbarch, address, tag_type);
3261}
3262
3263void
3264set_gdbarch_get_memtag (struct gdbarch *gdbarch,
adc48a49 3265 gdbarch_get_memtag_ftype get_memtag)
c193949e
LM
3266{
3267 gdbarch->get_memtag = get_memtag;
3268}
3269
3270CORE_ADDR
3271gdbarch_memtag_granule_size (struct gdbarch *gdbarch)
3272{
3273 gdb_assert (gdbarch != NULL);
3274 /* Skip verify of memtag_granule_size, invalid_p == 0 */
3275 if (gdbarch_debug >= 2)
6cb06a8c 3276 gdb_printf (gdb_stdlog, "gdbarch_memtag_granule_size called\n");
c193949e
LM
3277 return gdbarch->memtag_granule_size;
3278}
3279
3280void
3281set_gdbarch_memtag_granule_size (struct gdbarch *gdbarch,
adc48a49 3282 CORE_ADDR memtag_granule_size)
c193949e
LM
3283{
3284 gdbarch->memtag_granule_size = memtag_granule_size;
3285}
3286
39535193 3287bool
64c4637f
AC
3288gdbarch_software_single_step_p (struct gdbarch *gdbarch)
3289{
8de9bdc4 3290 gdb_assert (gdbarch != NULL);
956ac328 3291 return gdbarch->software_single_step != NULL;
64c4637f
AC
3292}
3293
a0ff9e1a 3294std::vector<CORE_ADDR>
f5ea389a 3295gdbarch_software_single_step (struct gdbarch *gdbarch, struct regcache *regcache)
64c4637f 3296{
8de9bdc4 3297 gdb_assert (gdbarch != NULL);
956ac328 3298 gdb_assert (gdbarch->software_single_step != NULL);
64c4637f 3299 if (gdbarch_debug >= 2)
6cb06a8c 3300 gdb_printf (gdb_stdlog, "gdbarch_software_single_step called\n");
f5ea389a 3301 return gdbarch->software_single_step (regcache);
64c4637f
AC
3302}
3303
3304void
3305set_gdbarch_software_single_step (struct gdbarch *gdbarch,
adc48a49 3306 gdbarch_software_single_step_ftype software_single_step)
64c4637f
AC
3307{
3308 gdbarch->software_single_step = software_single_step;
3309}
3310
39535193 3311bool
3352ef37
AC
3312gdbarch_single_step_through_delay_p (struct gdbarch *gdbarch)
3313{
3314 gdb_assert (gdbarch != NULL);
3315 return gdbarch->single_step_through_delay != NULL;
3316}
3317
3318int
bd2b40ac 3319gdbarch_single_step_through_delay (struct gdbarch *gdbarch, frame_info_ptr frame)
3352ef37
AC
3320{
3321 gdb_assert (gdbarch != NULL);
3322 gdb_assert (gdbarch->single_step_through_delay != NULL);
3323 if (gdbarch_debug >= 2)
6cb06a8c 3324 gdb_printf (gdb_stdlog, "gdbarch_single_step_through_delay called\n");
3352ef37
AC
3325 return gdbarch->single_step_through_delay (gdbarch, frame);
3326}
3327
3328void
3329set_gdbarch_single_step_through_delay (struct gdbarch *gdbarch,
adc48a49 3330 gdbarch_single_step_through_delay_ftype single_step_through_delay)
3352ef37
AC
3331{
3332 gdbarch->single_step_through_delay = single_step_through_delay;
3333}
3334
2bf0cb65 3335int
a89aa300 3336gdbarch_print_insn (struct gdbarch *gdbarch, bfd_vma vma, struct disassemble_info *info)
2bf0cb65 3337{
8de9bdc4 3338 gdb_assert (gdbarch != NULL);
956ac328 3339 gdb_assert (gdbarch->print_insn != NULL);
2bf0cb65 3340 if (gdbarch_debug >= 2)
6cb06a8c 3341 gdb_printf (gdb_stdlog, "gdbarch_print_insn called\n");
2bf0cb65
EZ
3342 return gdbarch->print_insn (vma, info);
3343}
3344
3345void
3346set_gdbarch_print_insn (struct gdbarch *gdbarch,
adc48a49 3347 gdbarch_print_insn_ftype print_insn)
2bf0cb65
EZ
3348{
3349 gdbarch->print_insn = print_insn;
3350}
3351
bdcd319a 3352CORE_ADDR
bd2b40ac 3353gdbarch_skip_trampoline_code (struct gdbarch *gdbarch, frame_info_ptr frame, CORE_ADDR pc)
bdcd319a 3354{
8de9bdc4 3355 gdb_assert (gdbarch != NULL);
956ac328 3356 gdb_assert (gdbarch->skip_trampoline_code != NULL);
bdcd319a 3357 if (gdbarch_debug >= 2)
6cb06a8c 3358 gdb_printf (gdb_stdlog, "gdbarch_skip_trampoline_code called\n");
52f729a7 3359 return gdbarch->skip_trampoline_code (frame, pc);
bdcd319a
CV
3360}
3361
3362void
3363set_gdbarch_skip_trampoline_code (struct gdbarch *gdbarch,
adc48a49 3364 gdbarch_skip_trampoline_code_ftype skip_trampoline_code)
bdcd319a
CV
3365{
3366 gdbarch->skip_trampoline_code = skip_trampoline_code;
3367}
3368
9e468e95
TT
3369const struct target_so_ops *
3370gdbarch_so_ops (struct gdbarch *gdbarch)
3371{
3372 gdb_assert (gdbarch != NULL);
6e2d282d 3373 /* Skip verify of so_ops, invalid_p == 0 */
9e468e95
TT
3374 if (gdbarch_debug >= 2)
3375 gdb_printf (gdb_stdlog, "gdbarch_so_ops called\n");
3376 return gdbarch->so_ops;
3377}
3378
3379void
3380set_gdbarch_so_ops (struct gdbarch *gdbarch,
adc48a49 3381 const struct target_so_ops * so_ops)
9e468e95
TT
3382{
3383 gdbarch->so_ops = so_ops;
3384}
3385
dea0c52f
MK
3386CORE_ADDR
3387gdbarch_skip_solib_resolver (struct gdbarch *gdbarch, CORE_ADDR pc)
3388{
3389 gdb_assert (gdbarch != NULL);
3390 gdb_assert (gdbarch->skip_solib_resolver != NULL);
3391 if (gdbarch_debug >= 2)
6cb06a8c 3392 gdb_printf (gdb_stdlog, "gdbarch_skip_solib_resolver called\n");
4c8c40e6 3393 return gdbarch->skip_solib_resolver (gdbarch, pc);
dea0c52f
MK
3394}
3395
3396void
3397set_gdbarch_skip_solib_resolver (struct gdbarch *gdbarch,
adc48a49 3398 gdbarch_skip_solib_resolver_ftype skip_solib_resolver)
dea0c52f
MK
3399{
3400 gdbarch->skip_solib_resolver = skip_solib_resolver;
3401}
3402
d50355b6 3403int
2c02bd72 3404gdbarch_in_solib_return_trampoline (struct gdbarch *gdbarch, CORE_ADDR pc, const char *name)
d50355b6
MS
3405{
3406 gdb_assert (gdbarch != NULL);
956ac328 3407 gdb_assert (gdbarch->in_solib_return_trampoline != NULL);
d50355b6 3408 if (gdbarch_debug >= 2)
6cb06a8c 3409 gdb_printf (gdb_stdlog, "gdbarch_in_solib_return_trampoline called\n");
e17a4113 3410 return gdbarch->in_solib_return_trampoline (gdbarch, pc, name);
d50355b6
MS
3411}
3412
3413void
3414set_gdbarch_in_solib_return_trampoline (struct gdbarch *gdbarch,
adc48a49 3415 gdbarch_in_solib_return_trampoline_ftype in_solib_return_trampoline)
d50355b6
MS
3416{
3417 gdbarch->in_solib_return_trampoline = in_solib_return_trampoline;
3418}
3419
1d509aa6
MM
3420bool
3421gdbarch_in_indirect_branch_thunk (struct gdbarch *gdbarch, CORE_ADDR pc)
3422{
3423 gdb_assert (gdbarch != NULL);
3424 gdb_assert (gdbarch->in_indirect_branch_thunk != NULL);
3425 if (gdbarch_debug >= 2)
6cb06a8c 3426 gdb_printf (gdb_stdlog, "gdbarch_in_indirect_branch_thunk called\n");
1d509aa6
MM
3427 return gdbarch->in_indirect_branch_thunk (gdbarch, pc);
3428}
3429
3430void
3431set_gdbarch_in_indirect_branch_thunk (struct gdbarch *gdbarch,
adc48a49 3432 gdbarch_in_indirect_branch_thunk_ftype in_indirect_branch_thunk)
1d509aa6
MM
3433{
3434 gdbarch->in_indirect_branch_thunk = in_indirect_branch_thunk;
3435}
3436
c12260ac 3437int
c9cf6e20 3438gdbarch_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR addr)
c12260ac 3439{
8de9bdc4 3440 gdb_assert (gdbarch != NULL);
c9cf6e20 3441 gdb_assert (gdbarch->stack_frame_destroyed_p != NULL);
c12260ac 3442 if (gdbarch_debug >= 2)
6cb06a8c 3443 gdb_printf (gdb_stdlog, "gdbarch_stack_frame_destroyed_p called\n");
c9cf6e20 3444 return gdbarch->stack_frame_destroyed_p (gdbarch, addr);
c12260ac
CV
3445}
3446
3447void
c9cf6e20 3448set_gdbarch_stack_frame_destroyed_p (struct gdbarch *gdbarch,
adc48a49 3449 gdbarch_stack_frame_destroyed_p_ftype stack_frame_destroyed_p)
c12260ac 3450{
c9cf6e20 3451 gdbarch->stack_frame_destroyed_p = stack_frame_destroyed_p;
c12260ac
CV
3452}
3453
39535193 3454bool
3e29f34a
MR
3455gdbarch_elf_make_msymbol_special_p (struct gdbarch *gdbarch)
3456{
3457 gdb_assert (gdbarch != NULL);
3458 return gdbarch->elf_make_msymbol_special != NULL;
3459}
3460
a2cf933a
EZ
3461void
3462gdbarch_elf_make_msymbol_special (struct gdbarch *gdbarch, asymbol *sym, struct minimal_symbol *msym)
3463{
8de9bdc4 3464 gdb_assert (gdbarch != NULL);
956ac328 3465 gdb_assert (gdbarch->elf_make_msymbol_special != NULL);
a2cf933a 3466 if (gdbarch_debug >= 2)
6cb06a8c 3467 gdb_printf (gdb_stdlog, "gdbarch_elf_make_msymbol_special called\n");
a2cf933a
EZ
3468 gdbarch->elf_make_msymbol_special (sym, msym);
3469}
3470
3471void
3472set_gdbarch_elf_make_msymbol_special (struct gdbarch *gdbarch,
adc48a49 3473 gdbarch_elf_make_msymbol_special_ftype elf_make_msymbol_special)
a2cf933a
EZ
3474{
3475 gdbarch->elf_make_msymbol_special = elf_make_msymbol_special;
3476}
3477
3478void
3479gdbarch_coff_make_msymbol_special (struct gdbarch *gdbarch, int val, struct minimal_symbol *msym)
3480{
8de9bdc4 3481 gdb_assert (gdbarch != NULL);
956ac328 3482 gdb_assert (gdbarch->coff_make_msymbol_special != NULL);
a2cf933a 3483 if (gdbarch_debug >= 2)
6cb06a8c 3484 gdb_printf (gdb_stdlog, "gdbarch_coff_make_msymbol_special called\n");
a2cf933a
EZ
3485 gdbarch->coff_make_msymbol_special (val, msym);
3486}
3487
3488void
3489set_gdbarch_coff_make_msymbol_special (struct gdbarch *gdbarch,
adc48a49 3490 gdbarch_coff_make_msymbol_special_ftype coff_make_msymbol_special)
a2cf933a
EZ
3491{
3492 gdbarch->coff_make_msymbol_special = coff_make_msymbol_special;
3493}
3494
3e29f34a
MR
3495void
3496gdbarch_make_symbol_special (struct gdbarch *gdbarch, struct symbol *sym, struct objfile *objfile)
3497{
3498 gdb_assert (gdbarch != NULL);
3499 gdb_assert (gdbarch->make_symbol_special != NULL);
3500 if (gdbarch_debug >= 2)
6cb06a8c 3501 gdb_printf (gdb_stdlog, "gdbarch_make_symbol_special called\n");
3e29f34a
MR
3502 gdbarch->make_symbol_special (sym, objfile);
3503}
3504
3505void
3506set_gdbarch_make_symbol_special (struct gdbarch *gdbarch,
adc48a49 3507 gdbarch_make_symbol_special_ftype make_symbol_special)
3e29f34a
MR
3508{
3509 gdbarch->make_symbol_special = make_symbol_special;
3510}
3511
3512CORE_ADDR
3513gdbarch_adjust_dwarf2_addr (struct gdbarch *gdbarch, CORE_ADDR pc)
3514{
3515 gdb_assert (gdbarch != NULL);
3516 gdb_assert (gdbarch->adjust_dwarf2_addr != NULL);
3517 if (gdbarch_debug >= 2)
6cb06a8c 3518 gdb_printf (gdb_stdlog, "gdbarch_adjust_dwarf2_addr called\n");
3e29f34a
MR
3519 return gdbarch->adjust_dwarf2_addr (pc);
3520}
3521
3522void
3523set_gdbarch_adjust_dwarf2_addr (struct gdbarch *gdbarch,
adc48a49 3524 gdbarch_adjust_dwarf2_addr_ftype adjust_dwarf2_addr)
3e29f34a
MR
3525{
3526 gdbarch->adjust_dwarf2_addr = adjust_dwarf2_addr;
3527}
3528
3529CORE_ADDR
3530gdbarch_adjust_dwarf2_line (struct gdbarch *gdbarch, CORE_ADDR addr, int rel)
3531{
3532 gdb_assert (gdbarch != NULL);
3533 gdb_assert (gdbarch->adjust_dwarf2_line != NULL);
3534 if (gdbarch_debug >= 2)
6cb06a8c 3535 gdb_printf (gdb_stdlog, "gdbarch_adjust_dwarf2_line called\n");
3e29f34a
MR
3536 return gdbarch->adjust_dwarf2_line (addr, rel);
3537}
3538
3539void
3540set_gdbarch_adjust_dwarf2_line (struct gdbarch *gdbarch,
adc48a49 3541 gdbarch_adjust_dwarf2_line_ftype adjust_dwarf2_line)
3e29f34a
MR
3542{
3543 gdbarch->adjust_dwarf2_line = adjust_dwarf2_line;
3544}
3545
c4ed33b9
AC
3546int
3547gdbarch_cannot_step_breakpoint (struct gdbarch *gdbarch)
3548{
3549 gdb_assert (gdbarch != NULL);
3550 /* Skip verify of cannot_step_breakpoint, invalid_p == 0 */
3551 if (gdbarch_debug >= 2)
6cb06a8c 3552 gdb_printf (gdb_stdlog, "gdbarch_cannot_step_breakpoint called\n");
c4ed33b9
AC
3553 return gdbarch->cannot_step_breakpoint;
3554}
3555
3556void
3557set_gdbarch_cannot_step_breakpoint (struct gdbarch *gdbarch,
adc48a49 3558 int cannot_step_breakpoint)
c4ed33b9
AC
3559{
3560 gdbarch->cannot_step_breakpoint = cannot_step_breakpoint;
3561}
3562
f74fa174
MM
3563int
3564gdbarch_have_nonsteppable_watchpoint (struct gdbarch *gdbarch)
3565{
3566 gdb_assert (gdbarch != NULL);
3567 /* Skip verify of have_nonsteppable_watchpoint, invalid_p == 0 */
3568 if (gdbarch_debug >= 2)
6cb06a8c 3569 gdb_printf (gdb_stdlog, "gdbarch_have_nonsteppable_watchpoint called\n");
f74fa174
MM
3570 return gdbarch->have_nonsteppable_watchpoint;
3571}
3572
3573void
3574set_gdbarch_have_nonsteppable_watchpoint (struct gdbarch *gdbarch,
adc48a49 3575 int have_nonsteppable_watchpoint)
f74fa174
MM
3576{
3577 gdbarch->have_nonsteppable_watchpoint = have_nonsteppable_watchpoint;
3578}
3579
39535193 3580bool
8b2dbe47
KB
3581gdbarch_address_class_type_flags_p (struct gdbarch *gdbarch)
3582{
3583 gdb_assert (gdbarch != NULL);
956ac328 3584 return gdbarch->address_class_type_flags != NULL;
8b2dbe47
KB
3585}
3586
314ad88d 3587type_instance_flags
8b2dbe47
KB
3588gdbarch_address_class_type_flags (struct gdbarch *gdbarch, int byte_size, int dwarf2_addr_class)
3589{
3590 gdb_assert (gdbarch != NULL);
956ac328 3591 gdb_assert (gdbarch->address_class_type_flags != NULL);
8b2dbe47 3592 if (gdbarch_debug >= 2)
6cb06a8c 3593 gdb_printf (gdb_stdlog, "gdbarch_address_class_type_flags called\n");
8b2dbe47
KB
3594 return gdbarch->address_class_type_flags (byte_size, dwarf2_addr_class);
3595}
3596
3597void
3598set_gdbarch_address_class_type_flags (struct gdbarch *gdbarch,
adc48a49 3599 gdbarch_address_class_type_flags_ftype address_class_type_flags)
8b2dbe47
KB
3600{
3601 gdbarch->address_class_type_flags = address_class_type_flags;
3602}
3603
39535193 3604bool
8b2dbe47
KB
3605gdbarch_address_class_type_flags_to_name_p (struct gdbarch *gdbarch)
3606{
3607 gdb_assert (gdbarch != NULL);
956ac328 3608 return gdbarch->address_class_type_flags_to_name != NULL;
8b2dbe47
KB
3609}
3610
321432c0 3611const char *
314ad88d 3612gdbarch_address_class_type_flags_to_name (struct gdbarch *gdbarch, type_instance_flags type_flags)
8b2dbe47
KB
3613{
3614 gdb_assert (gdbarch != NULL);
956ac328 3615 gdb_assert (gdbarch->address_class_type_flags_to_name != NULL);
8b2dbe47 3616 if (gdbarch_debug >= 2)
6cb06a8c 3617 gdb_printf (gdb_stdlog, "gdbarch_address_class_type_flags_to_name called\n");
5f11f355 3618 return gdbarch->address_class_type_flags_to_name (gdbarch, type_flags);
8b2dbe47
KB
3619}
3620
3621void
3622set_gdbarch_address_class_type_flags_to_name (struct gdbarch *gdbarch,
adc48a49 3623 gdbarch_address_class_type_flags_to_name_ftype address_class_type_flags_to_name)
8b2dbe47
KB
3624{
3625 gdbarch->address_class_type_flags_to_name = address_class_type_flags_to_name;
3626}
3627
b41c5a85
JW
3628bool
3629gdbarch_execute_dwarf_cfa_vendor_op (struct gdbarch *gdbarch, gdb_byte op, struct dwarf2_frame_state *fs)
3630{
3631 gdb_assert (gdbarch != NULL);
3632 gdb_assert (gdbarch->execute_dwarf_cfa_vendor_op != NULL);
3633 if (gdbarch_debug >= 2)
6cb06a8c 3634 gdb_printf (gdb_stdlog, "gdbarch_execute_dwarf_cfa_vendor_op called\n");
b41c5a85
JW
3635 return gdbarch->execute_dwarf_cfa_vendor_op (gdbarch, op, fs);
3636}
3637
3638void
3639set_gdbarch_execute_dwarf_cfa_vendor_op (struct gdbarch *gdbarch,
adc48a49 3640 gdbarch_execute_dwarf_cfa_vendor_op_ftype execute_dwarf_cfa_vendor_op)
b41c5a85
JW
3641{
3642 gdbarch->execute_dwarf_cfa_vendor_op = execute_dwarf_cfa_vendor_op;
3643}
3644
39535193 3645bool
8b2dbe47
KB
3646gdbarch_address_class_name_to_type_flags_p (struct gdbarch *gdbarch)
3647{
3648 gdb_assert (gdbarch != NULL);
956ac328 3649 return gdbarch->address_class_name_to_type_flags != NULL;
8b2dbe47
KB
3650}
3651
314ad88d
PA
3652bool
3653gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch, const char *name, type_instance_flags *type_flags_ptr)
8b2dbe47
KB
3654{
3655 gdb_assert (gdbarch != NULL);
956ac328 3656 gdb_assert (gdbarch->address_class_name_to_type_flags != NULL);
8b2dbe47 3657 if (gdbarch_debug >= 2)
6cb06a8c 3658 gdb_printf (gdb_stdlog, "gdbarch_address_class_name_to_type_flags called\n");
5f11f355 3659 return gdbarch->address_class_name_to_type_flags (gdbarch, name, type_flags_ptr);
8b2dbe47
KB
3660}
3661
3662void
3663set_gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch,
adc48a49 3664 gdbarch_address_class_name_to_type_flags_ftype address_class_name_to_type_flags)
8b2dbe47
KB
3665{
3666 gdbarch->address_class_name_to_type_flags = address_class_name_to_type_flags;
3667}
3668
b59ff9d5 3669int
dbf5d61b 3670gdbarch_register_reggroup_p (struct gdbarch *gdbarch, int regnum, const struct reggroup *reggroup)
b59ff9d5
AC
3671{
3672 gdb_assert (gdbarch != NULL);
956ac328 3673 gdb_assert (gdbarch->register_reggroup_p != NULL);
b59ff9d5 3674 if (gdbarch_debug >= 2)
6cb06a8c 3675 gdb_printf (gdb_stdlog, "gdbarch_register_reggroup_p called\n");
b59ff9d5
AC
3676 return gdbarch->register_reggroup_p (gdbarch, regnum, reggroup);
3677}
3678
3679void
3680set_gdbarch_register_reggroup_p (struct gdbarch *gdbarch,
adc48a49 3681 gdbarch_register_reggroup_p_ftype register_reggroup_p)
b59ff9d5
AC
3682{
3683 gdbarch->register_reggroup_p = register_reggroup_p;
3684}
3685
39535193 3686bool
143985b7
AF
3687gdbarch_fetch_pointer_argument_p (struct gdbarch *gdbarch)
3688{
3689 gdb_assert (gdbarch != NULL);
956ac328 3690 return gdbarch->fetch_pointer_argument != NULL;
143985b7
AF
3691}
3692
3693CORE_ADDR
bd2b40ac 3694gdbarch_fetch_pointer_argument (struct gdbarch *gdbarch, frame_info_ptr frame, int argi, struct type *type)
143985b7
AF
3695{
3696 gdb_assert (gdbarch != NULL);
956ac328 3697 gdb_assert (gdbarch->fetch_pointer_argument != NULL);
143985b7 3698 if (gdbarch_debug >= 2)
6cb06a8c 3699 gdb_printf (gdb_stdlog, "gdbarch_fetch_pointer_argument called\n");
143985b7
AF
3700 return gdbarch->fetch_pointer_argument (frame, argi, type);
3701}
3702
3703void
3704set_gdbarch_fetch_pointer_argument (struct gdbarch *gdbarch,
adc48a49 3705 gdbarch_fetch_pointer_argument_ftype fetch_pointer_argument)
143985b7
AF
3706{
3707 gdbarch->fetch_pointer_argument = fetch_pointer_argument;
3708}
3709
39535193 3710bool
5aa82d05
AA
3711gdbarch_iterate_over_regset_sections_p (struct gdbarch *gdbarch)
3712{
3713 gdb_assert (gdbarch != NULL);
3714 return gdbarch->iterate_over_regset_sections != NULL;
3715}
3716
3717void
3718gdbarch_iterate_over_regset_sections (struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
17ea7499
CES
3719{
3720 gdb_assert (gdbarch != NULL);
5aa82d05 3721 gdb_assert (gdbarch->iterate_over_regset_sections != NULL);
17ea7499 3722 if (gdbarch_debug >= 2)
6cb06a8c 3723 gdb_printf (gdb_stdlog, "gdbarch_iterate_over_regset_sections called\n");
5aa82d05 3724 gdbarch->iterate_over_regset_sections (gdbarch, cb, cb_data, regcache);
17ea7499
CES
3725}
3726
3727void
5aa82d05 3728set_gdbarch_iterate_over_regset_sections (struct gdbarch *gdbarch,
adc48a49 3729 gdbarch_iterate_over_regset_sections_ftype iterate_over_regset_sections)
17ea7499 3730{
5aa82d05 3731 gdbarch->iterate_over_regset_sections = iterate_over_regset_sections;
17ea7499
CES
3732}
3733
39535193 3734bool
6432734d
UW
3735gdbarch_make_corefile_notes_p (struct gdbarch *gdbarch)
3736{
3737 gdb_assert (gdbarch != NULL);
3738 return gdbarch->make_corefile_notes != NULL;
3739}
3740
c21f37a8 3741gdb::unique_xmalloc_ptr<char>
6432734d
UW
3742gdbarch_make_corefile_notes (struct gdbarch *gdbarch, bfd *obfd, int *note_size)
3743{
3744 gdb_assert (gdbarch != NULL);
3745 gdb_assert (gdbarch->make_corefile_notes != NULL);
3746 if (gdbarch_debug >= 2)
6cb06a8c 3747 gdb_printf (gdb_stdlog, "gdbarch_make_corefile_notes called\n");
6432734d
UW
3748 return gdbarch->make_corefile_notes (gdbarch, obfd, note_size);
3749}
3750
3751void
3752set_gdbarch_make_corefile_notes (struct gdbarch *gdbarch,
adc48a49 3753 gdbarch_make_corefile_notes_ftype make_corefile_notes)
6432734d
UW
3754{
3755 gdbarch->make_corefile_notes = make_corefile_notes;
3756}
3757
39535193 3758bool
35c2fab7
UW
3759gdbarch_find_memory_regions_p (struct gdbarch *gdbarch)
3760{
3761 gdb_assert (gdbarch != NULL);
3762 return gdbarch->find_memory_regions != NULL;
3763}
3764
3765int
3766gdbarch_find_memory_regions (struct gdbarch *gdbarch, find_memory_region_ftype func, void *data)
3767{
3768 gdb_assert (gdbarch != NULL);
3769 gdb_assert (gdbarch->find_memory_regions != NULL);
3770 if (gdbarch_debug >= 2)
6cb06a8c 3771 gdb_printf (gdb_stdlog, "gdbarch_find_memory_regions called\n");
35c2fab7
UW
3772 return gdbarch->find_memory_regions (gdbarch, func, data);
3773}
3774
3775void
3776set_gdbarch_find_memory_regions (struct gdbarch *gdbarch,
adc48a49 3777 gdbarch_find_memory_regions_ftype find_memory_regions)
35c2fab7
UW
3778{
3779 gdbarch->find_memory_regions = find_memory_regions;
3780}
3781
68cffbbd
LM
3782bool
3783gdbarch_create_memtag_section_p (struct gdbarch *gdbarch)
3784{
3785 gdb_assert (gdbarch != NULL);
3786 return gdbarch->create_memtag_section != NULL;
3787}
3788
3789asection *
3790gdbarch_create_memtag_section (struct gdbarch *gdbarch, bfd *obfd, CORE_ADDR address, size_t size)
3791{
3792 gdb_assert (gdbarch != NULL);
3793 gdb_assert (gdbarch->create_memtag_section != NULL);
3794 if (gdbarch_debug >= 2)
3795 gdb_printf (gdb_stdlog, "gdbarch_create_memtag_section called\n");
3796 return gdbarch->create_memtag_section (gdbarch, obfd, address, size);
3797}
3798
3799void
3800set_gdbarch_create_memtag_section (struct gdbarch *gdbarch,
adc48a49 3801 gdbarch_create_memtag_section_ftype create_memtag_section)
68cffbbd
LM
3802{
3803 gdbarch->create_memtag_section = create_memtag_section;
3804}
3805
3806bool
3807gdbarch_fill_memtag_section_p (struct gdbarch *gdbarch)
3808{
3809 gdb_assert (gdbarch != NULL);
3810 return gdbarch->fill_memtag_section != NULL;
3811}
3812
3813bool
3814gdbarch_fill_memtag_section (struct gdbarch *gdbarch, asection *osec)
3815{
3816 gdb_assert (gdbarch != NULL);
3817 gdb_assert (gdbarch->fill_memtag_section != NULL);
3818 if (gdbarch_debug >= 2)
3819 gdb_printf (gdb_stdlog, "gdbarch_fill_memtag_section called\n");
3820 return gdbarch->fill_memtag_section (gdbarch, osec);
3821}
3822
3823void
3824set_gdbarch_fill_memtag_section (struct gdbarch *gdbarch,
adc48a49 3825 gdbarch_fill_memtag_section_ftype fill_memtag_section)
68cffbbd
LM
3826{
3827 gdbarch->fill_memtag_section = fill_memtag_section;
3828}
3829
3830bool
3831gdbarch_decode_memtag_section_p (struct gdbarch *gdbarch)
3832{
3833 gdb_assert (gdbarch != NULL);
3834 return gdbarch->decode_memtag_section != NULL;
3835}
3836
3837gdb::byte_vector
3838gdbarch_decode_memtag_section (struct gdbarch *gdbarch, bfd_section *section, int type, CORE_ADDR address, size_t length)
3839{
3840 gdb_assert (gdbarch != NULL);
3841 gdb_assert (gdbarch->decode_memtag_section != NULL);
3842 if (gdbarch_debug >= 2)
3843 gdb_printf (gdb_stdlog, "gdbarch_decode_memtag_section called\n");
3844 return gdbarch->decode_memtag_section (gdbarch, section, type, address, length);
3845}
3846
3847void
3848set_gdbarch_decode_memtag_section (struct gdbarch *gdbarch,
adc48a49 3849 gdbarch_decode_memtag_section_ftype decode_memtag_section)
68cffbbd
LM
3850{
3851 gdbarch->decode_memtag_section = decode_memtag_section;
3852}
3853
39535193 3854bool
de584861
PA
3855gdbarch_core_xfer_shared_libraries_p (struct gdbarch *gdbarch)
3856{
3857 gdb_assert (gdbarch != NULL);
3858 return gdbarch->core_xfer_shared_libraries != NULL;
3859}
3860
c09f20e4 3861ULONGEST
7ec1862d 3862gdbarch_core_xfer_shared_libraries (struct gdbarch *gdbarch, gdb_byte *readbuf, ULONGEST offset, ULONGEST len)
de584861
PA
3863{
3864 gdb_assert (gdbarch != NULL);
3865 gdb_assert (gdbarch->core_xfer_shared_libraries != NULL);
3866 if (gdbarch_debug >= 2)
6cb06a8c 3867 gdb_printf (gdb_stdlog, "gdbarch_core_xfer_shared_libraries called\n");
de584861
PA
3868 return gdbarch->core_xfer_shared_libraries (gdbarch, readbuf, offset, len);
3869}
3870
3871void
3872set_gdbarch_core_xfer_shared_libraries (struct gdbarch *gdbarch,
adc48a49 3873 gdbarch_core_xfer_shared_libraries_ftype core_xfer_shared_libraries)
de584861
PA
3874{
3875 gdbarch->core_xfer_shared_libraries = core_xfer_shared_libraries;
3876}
3877
39535193 3878bool
356a5233
JB
3879gdbarch_core_xfer_shared_libraries_aix_p (struct gdbarch *gdbarch)
3880{
3881 gdb_assert (gdbarch != NULL);
3882 return gdbarch->core_xfer_shared_libraries_aix != NULL;
3883}
3884
c09f20e4 3885ULONGEST
7ec1862d 3886gdbarch_core_xfer_shared_libraries_aix (struct gdbarch *gdbarch, gdb_byte *readbuf, ULONGEST offset, ULONGEST len)
356a5233
JB
3887{
3888 gdb_assert (gdbarch != NULL);
3889 gdb_assert (gdbarch->core_xfer_shared_libraries_aix != NULL);
3890 if (gdbarch_debug >= 2)
6cb06a8c 3891 gdb_printf (gdb_stdlog, "gdbarch_core_xfer_shared_libraries_aix called\n");
356a5233
JB
3892 return gdbarch->core_xfer_shared_libraries_aix (gdbarch, readbuf, offset, len);
3893}
3894
3895void
3896set_gdbarch_core_xfer_shared_libraries_aix (struct gdbarch *gdbarch,
adc48a49 3897 gdbarch_core_xfer_shared_libraries_aix_ftype core_xfer_shared_libraries_aix)
356a5233
JB
3898{
3899 gdbarch->core_xfer_shared_libraries_aix = core_xfer_shared_libraries_aix;
3900}
3901
39535193 3902bool
28439f5e
PA
3903gdbarch_core_pid_to_str_p (struct gdbarch *gdbarch)
3904{
3905 gdb_assert (gdbarch != NULL);
3906 return gdbarch->core_pid_to_str != NULL;
3907}
3908
a068643d 3909std::string
28439f5e
PA
3910gdbarch_core_pid_to_str (struct gdbarch *gdbarch, ptid_t ptid)
3911{
3912 gdb_assert (gdbarch != NULL);
3913 gdb_assert (gdbarch->core_pid_to_str != NULL);
3914 if (gdbarch_debug >= 2)
6cb06a8c 3915 gdb_printf (gdb_stdlog, "gdbarch_core_pid_to_str called\n");
28439f5e
PA
3916 return gdbarch->core_pid_to_str (gdbarch, ptid);
3917}
3918
3919void
3920set_gdbarch_core_pid_to_str (struct gdbarch *gdbarch,
adc48a49 3921 gdbarch_core_pid_to_str_ftype core_pid_to_str)
28439f5e
PA
3922{
3923 gdbarch->core_pid_to_str = core_pid_to_str;
3924}
3925
39535193 3926bool
4dfc5dbc
JB
3927gdbarch_core_thread_name_p (struct gdbarch *gdbarch)
3928{
3929 gdb_assert (gdbarch != NULL);
3930 return gdbarch->core_thread_name != NULL;
3931}
3932
3933const char *
3934gdbarch_core_thread_name (struct gdbarch *gdbarch, struct thread_info *thr)
3935{
3936 gdb_assert (gdbarch != NULL);
3937 gdb_assert (gdbarch->core_thread_name != NULL);
3938 if (gdbarch_debug >= 2)
6cb06a8c 3939 gdb_printf (gdb_stdlog, "gdbarch_core_thread_name called\n");
4dfc5dbc
JB
3940 return gdbarch->core_thread_name (gdbarch, thr);
3941}
3942
3943void
3944set_gdbarch_core_thread_name (struct gdbarch *gdbarch,
adc48a49 3945 gdbarch_core_thread_name_ftype core_thread_name)
4dfc5dbc
JB
3946{
3947 gdbarch->core_thread_name = core_thread_name;
3948}
3949
39535193 3950bool
382b69bb
JB
3951gdbarch_core_xfer_siginfo_p (struct gdbarch *gdbarch)
3952{
3953 gdb_assert (gdbarch != NULL);
3954 return gdbarch->core_xfer_siginfo != NULL;
3955}
3956
3957LONGEST
3958gdbarch_core_xfer_siginfo (struct gdbarch *gdbarch, gdb_byte *readbuf, ULONGEST offset, ULONGEST len)
3959{
3960 gdb_assert (gdbarch != NULL);
3961 gdb_assert (gdbarch->core_xfer_siginfo != NULL);
3962 if (gdbarch_debug >= 2)
6cb06a8c 3963 gdb_printf (gdb_stdlog, "gdbarch_core_xfer_siginfo called\n");
fb14eb08 3964 return gdbarch->core_xfer_siginfo (gdbarch, readbuf, offset, len);
382b69bb
JB
3965}
3966
3967void
3968set_gdbarch_core_xfer_siginfo (struct gdbarch *gdbarch,
adc48a49 3969 gdbarch_core_xfer_siginfo_ftype core_xfer_siginfo)
382b69bb
JB
3970{
3971 gdbarch->core_xfer_siginfo = core_xfer_siginfo;
3972}
3973
c689d1fe
JB
3974bool
3975gdbarch_core_read_x86_xsave_layout_p (struct gdbarch *gdbarch)
3976{
3977 gdb_assert (gdbarch != NULL);
3978 return gdbarch->core_read_x86_xsave_layout != NULL;
3979}
3980
3981bool
3982gdbarch_core_read_x86_xsave_layout (struct gdbarch *gdbarch, x86_xsave_layout &xsave_layout)
3983{
3984 gdb_assert (gdbarch != NULL);
3985 gdb_assert (gdbarch->core_read_x86_xsave_layout != NULL);
3986 if (gdbarch_debug >= 2)
3987 gdb_printf (gdb_stdlog, "gdbarch_core_read_x86_xsave_layout called\n");
3988 return gdbarch->core_read_x86_xsave_layout (gdbarch, xsave_layout);
3989}
3990
3991void
3992set_gdbarch_core_read_x86_xsave_layout (struct gdbarch *gdbarch,
3993 gdbarch_core_read_x86_xsave_layout_ftype core_read_x86_xsave_layout)
3994{
3995 gdbarch->core_read_x86_xsave_layout = core_read_x86_xsave_layout;
3996}
3997
39535193 3998bool
a78c2d62
UW
3999gdbarch_gcore_bfd_target_p (struct gdbarch *gdbarch)
4000{
4001 gdb_assert (gdbarch != NULL);
a3e200ef 4002 return gdbarch->gcore_bfd_target != NULL;
a78c2d62
UW
4003}
4004
4005const char *
4006gdbarch_gcore_bfd_target (struct gdbarch *gdbarch)
4007{
4008 gdb_assert (gdbarch != NULL);
c317ea57
AB
4009 /* Check predicate was used. */
4010 gdb_assert (gdbarch_gcore_bfd_target_p (gdbarch));
a78c2d62 4011 if (gdbarch_debug >= 2)
6cb06a8c 4012 gdb_printf (gdb_stdlog, "gdbarch_gcore_bfd_target called\n");
a78c2d62
UW
4013 return gdbarch->gcore_bfd_target;
4014}
4015
4016void
4017set_gdbarch_gcore_bfd_target (struct gdbarch *gdbarch,
adc48a49 4018 const char * gcore_bfd_target)
a78c2d62
UW
4019{
4020 gdbarch->gcore_bfd_target = gcore_bfd_target;
4021}
4022
0d5de010
DJ
4023int
4024gdbarch_vtable_function_descriptors (struct gdbarch *gdbarch)
4025{
4026 gdb_assert (gdbarch != NULL);
4027 /* Skip verify of vtable_function_descriptors, invalid_p == 0 */
4028 if (gdbarch_debug >= 2)
6cb06a8c 4029 gdb_printf (gdb_stdlog, "gdbarch_vtable_function_descriptors called\n");
0d5de010
DJ
4030 return gdbarch->vtable_function_descriptors;
4031}
4032
4033void
4034set_gdbarch_vtable_function_descriptors (struct gdbarch *gdbarch,
adc48a49 4035 int vtable_function_descriptors)
0d5de010
DJ
4036{
4037 gdbarch->vtable_function_descriptors = vtable_function_descriptors;
4038}
4039
4040int
4041gdbarch_vbit_in_delta (struct gdbarch *gdbarch)
4042{
4043 gdb_assert (gdbarch != NULL);
4044 /* Skip verify of vbit_in_delta, invalid_p == 0 */
4045 if (gdbarch_debug >= 2)
6cb06a8c 4046 gdb_printf (gdb_stdlog, "gdbarch_vbit_in_delta called\n");
0d5de010
DJ
4047 return gdbarch->vbit_in_delta;
4048}
4049
4050void
4051set_gdbarch_vbit_in_delta (struct gdbarch *gdbarch,
adc48a49 4052 int vbit_in_delta)
0d5de010
DJ
4053{
4054 gdbarch->vbit_in_delta = vbit_in_delta;
4055}
4056
6d350bb5
UW
4057void
4058gdbarch_skip_permanent_breakpoint (struct gdbarch *gdbarch, struct regcache *regcache)
4059{
4060 gdb_assert (gdbarch != NULL);
4061 gdb_assert (gdbarch->skip_permanent_breakpoint != NULL);
4062 if (gdbarch_debug >= 2)
6cb06a8c 4063 gdb_printf (gdb_stdlog, "gdbarch_skip_permanent_breakpoint called\n");
6d350bb5
UW
4064 gdbarch->skip_permanent_breakpoint (regcache);
4065}
4066
4067void
4068set_gdbarch_skip_permanent_breakpoint (struct gdbarch *gdbarch,
adc48a49 4069 gdbarch_skip_permanent_breakpoint_ftype skip_permanent_breakpoint)
6d350bb5
UW
4070{
4071 gdbarch->skip_permanent_breakpoint = skip_permanent_breakpoint;
4072}
4073
39535193 4074bool
237fc4c9
PA
4075gdbarch_max_insn_length_p (struct gdbarch *gdbarch)
4076{
4077 gdb_assert (gdbarch != NULL);
4078 return gdbarch->max_insn_length != 0;
4079}
4080
4081ULONGEST
4082gdbarch_max_insn_length (struct gdbarch *gdbarch)
4083{
4084 gdb_assert (gdbarch != NULL);
c317ea57
AB
4085 /* Check predicate was used. */
4086 gdb_assert (gdbarch_max_insn_length_p (gdbarch));
237fc4c9 4087 if (gdbarch_debug >= 2)
6cb06a8c 4088 gdb_printf (gdb_stdlog, "gdbarch_max_insn_length called\n");
237fc4c9
PA
4089 return gdbarch->max_insn_length;
4090}
4091
4092void
4093set_gdbarch_max_insn_length (struct gdbarch *gdbarch,
adc48a49 4094 ULONGEST max_insn_length)
237fc4c9
PA
4095{
4096 gdbarch->max_insn_length = max_insn_length;
4097}
4098
39535193 4099bool
237fc4c9
PA
4100gdbarch_displaced_step_copy_insn_p (struct gdbarch *gdbarch)
4101{
4102 gdb_assert (gdbarch != NULL);
4103 return gdbarch->displaced_step_copy_insn != NULL;
4104}
4105
1152d984 4106displaced_step_copy_insn_closure_up
237fc4c9
PA
4107gdbarch_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs)
4108{
4109 gdb_assert (gdbarch != NULL);
4110 gdb_assert (gdbarch->displaced_step_copy_insn != NULL);
4111 if (gdbarch_debug >= 2)
6cb06a8c 4112 gdb_printf (gdb_stdlog, "gdbarch_displaced_step_copy_insn called\n");
237fc4c9
PA
4113 return gdbarch->displaced_step_copy_insn (gdbarch, from, to, regs);
4114}
4115
4116void
4117set_gdbarch_displaced_step_copy_insn (struct gdbarch *gdbarch,
adc48a49 4118 gdbarch_displaced_step_copy_insn_ftype displaced_step_copy_insn)
237fc4c9
PA
4119{
4120 gdbarch->displaced_step_copy_insn = displaced_step_copy_insn;
4121}
4122
07fbbd01 4123bool
40a53766 4124gdbarch_displaced_step_hw_singlestep (struct gdbarch *gdbarch)
99e40580
UW
4125{
4126 gdb_assert (gdbarch != NULL);
4127 gdb_assert (gdbarch->displaced_step_hw_singlestep != NULL);
4128 if (gdbarch_debug >= 2)
6cb06a8c 4129 gdb_printf (gdb_stdlog, "gdbarch_displaced_step_hw_singlestep called\n");
40a53766 4130 return gdbarch->displaced_step_hw_singlestep (gdbarch);
99e40580
UW
4131}
4132
4133void
4134set_gdbarch_displaced_step_hw_singlestep (struct gdbarch *gdbarch,
adc48a49 4135 gdbarch_displaced_step_hw_singlestep_ftype displaced_step_hw_singlestep)
99e40580
UW
4136{
4137 gdbarch->displaced_step_hw_singlestep = displaced_step_hw_singlestep;
4138}
4139
237fc4c9 4140void
cf141dd8 4141gdbarch_displaced_step_fixup (struct gdbarch *gdbarch, struct displaced_step_copy_insn_closure *closure, CORE_ADDR from, CORE_ADDR to, struct regcache *regs, bool completed_p)
237fc4c9
PA
4142{
4143 gdb_assert (gdbarch != NULL);
4144 gdb_assert (gdbarch->displaced_step_fixup != NULL);
237fc4c9 4145 if (gdbarch_debug >= 2)
6cb06a8c 4146 gdb_printf (gdb_stdlog, "gdbarch_displaced_step_fixup called\n");
cf141dd8 4147 gdbarch->displaced_step_fixup (gdbarch, closure, from, to, regs, completed_p);
237fc4c9
PA
4148}
4149
4150void
4151set_gdbarch_displaced_step_fixup (struct gdbarch *gdbarch,
adc48a49 4152 gdbarch_displaced_step_fixup_ftype displaced_step_fixup)
237fc4c9
PA
4153{
4154 gdbarch->displaced_step_fixup = displaced_step_fixup;
4155}
4156
187b041e
SM
4157bool
4158gdbarch_displaced_step_prepare_p (struct gdbarch *gdbarch)
4159{
4160 gdb_assert (gdbarch != NULL);
4161 return gdbarch->displaced_step_prepare != NULL;
4162}
4163
4164displaced_step_prepare_status
4165gdbarch_displaced_step_prepare (struct gdbarch *gdbarch, thread_info *thread, CORE_ADDR &displaced_pc)
4166{
4167 gdb_assert (gdbarch != NULL);
4168 gdb_assert (gdbarch->displaced_step_prepare != NULL);
4169 if (gdbarch_debug >= 2)
6cb06a8c 4170 gdb_printf (gdb_stdlog, "gdbarch_displaced_step_prepare called\n");
187b041e
SM
4171 return gdbarch->displaced_step_prepare (gdbarch, thread, displaced_pc);
4172}
4173
4174void
4175set_gdbarch_displaced_step_prepare (struct gdbarch *gdbarch,
adc48a49 4176 gdbarch_displaced_step_prepare_ftype displaced_step_prepare)
187b041e
SM
4177{
4178 gdbarch->displaced_step_prepare = displaced_step_prepare;
4179}
4180
4181displaced_step_finish_status
58c01087 4182gdbarch_displaced_step_finish (struct gdbarch *gdbarch, thread_info *thread, const target_waitstatus &ws)
187b041e
SM
4183{
4184 gdb_assert (gdbarch != NULL);
4185 gdb_assert (gdbarch->displaced_step_finish != NULL);
4186 if (gdbarch_debug >= 2)
6cb06a8c 4187 gdb_printf (gdb_stdlog, "gdbarch_displaced_step_finish called\n");
58c01087 4188 return gdbarch->displaced_step_finish (gdbarch, thread, ws);
187b041e
SM
4189}
4190
4191void
4192set_gdbarch_displaced_step_finish (struct gdbarch *gdbarch,
adc48a49 4193 gdbarch_displaced_step_finish_ftype displaced_step_finish)
187b041e
SM
4194{
4195 gdbarch->displaced_step_finish = displaced_step_finish;
4196}
4197
4198bool
4199gdbarch_displaced_step_copy_insn_closure_by_addr_p (struct gdbarch *gdbarch)
4200{
4201 gdb_assert (gdbarch != NULL);
4202 return gdbarch->displaced_step_copy_insn_closure_by_addr != NULL;
4203}
4204
4205const displaced_step_copy_insn_closure *
4206gdbarch_displaced_step_copy_insn_closure_by_addr (struct gdbarch *gdbarch, inferior *inf, CORE_ADDR addr)
4207{
4208 gdb_assert (gdbarch != NULL);
4209 gdb_assert (gdbarch->displaced_step_copy_insn_closure_by_addr != NULL);
4210 if (gdbarch_debug >= 2)
6cb06a8c 4211 gdb_printf (gdb_stdlog, "gdbarch_displaced_step_copy_insn_closure_by_addr called\n");
187b041e
SM
4212 return gdbarch->displaced_step_copy_insn_closure_by_addr (inf, addr);
4213}
4214
4215void
4216set_gdbarch_displaced_step_copy_insn_closure_by_addr (struct gdbarch *gdbarch,
adc48a49 4217 gdbarch_displaced_step_copy_insn_closure_by_addr_ftype displaced_step_copy_insn_closure_by_addr)
187b041e
SM
4218{
4219 gdbarch->displaced_step_copy_insn_closure_by_addr = displaced_step_copy_insn_closure_by_addr;
4220}
4221
4222void
4223gdbarch_displaced_step_restore_all_in_ptid (struct gdbarch *gdbarch, inferior *parent_inf, ptid_t child_ptid)
237fc4c9
PA
4224{
4225 gdb_assert (gdbarch != NULL);
187b041e 4226 gdb_assert (gdbarch->displaced_step_restore_all_in_ptid != NULL);
237fc4c9 4227 if (gdbarch_debug >= 2)
6cb06a8c 4228 gdb_printf (gdb_stdlog, "gdbarch_displaced_step_restore_all_in_ptid called\n");
187b041e 4229 gdbarch->displaced_step_restore_all_in_ptid (parent_inf, child_ptid);
237fc4c9
PA
4230}
4231
4232void
187b041e 4233set_gdbarch_displaced_step_restore_all_in_ptid (struct gdbarch *gdbarch,
adc48a49 4234 gdbarch_displaced_step_restore_all_in_ptid_ftype displaced_step_restore_all_in_ptid)
237fc4c9 4235{
187b041e 4236 gdbarch->displaced_step_restore_all_in_ptid = displaced_step_restore_all_in_ptid;
237fc4c9
PA
4237}
4238
deb65a3c
AB
4239ULONGEST
4240gdbarch_displaced_step_buffer_length (struct gdbarch *gdbarch)
4241{
4242 gdb_assert (gdbarch != NULL);
4243 /* Check variable is valid. */
4244 gdb_assert (!(gdbarch->displaced_step_buffer_length < gdbarch->max_insn_length));
4245 if (gdbarch_debug >= 2)
4246 gdb_printf (gdb_stdlog, "gdbarch_displaced_step_buffer_length called\n");
4247 return gdbarch->displaced_step_buffer_length;
4248}
4249
4250void
4251set_gdbarch_displaced_step_buffer_length (struct gdbarch *gdbarch,
4252 ULONGEST displaced_step_buffer_length)
4253{
4254 gdbarch->displaced_step_buffer_length = displaced_step_buffer_length;
4255}
4256
39535193 4257bool
dde08ee1
PA
4258gdbarch_relocate_instruction_p (struct gdbarch *gdbarch)
4259{
4260 gdb_assert (gdbarch != NULL);
4261 return gdbarch->relocate_instruction != NULL;
4262}
4263
4264void
4265gdbarch_relocate_instruction (struct gdbarch *gdbarch, CORE_ADDR *to, CORE_ADDR from)
4266{
4267 gdb_assert (gdbarch != NULL);
4268 gdb_assert (gdbarch->relocate_instruction != NULL);
4269 /* Do not check predicate: gdbarch->relocate_instruction != NULL, allow call. */
4270 if (gdbarch_debug >= 2)
6cb06a8c 4271 gdb_printf (gdb_stdlog, "gdbarch_relocate_instruction called\n");
dde08ee1
PA
4272 gdbarch->relocate_instruction (gdbarch, to, from);
4273}
4274
4275void
4276set_gdbarch_relocate_instruction (struct gdbarch *gdbarch,
adc48a49 4277 gdbarch_relocate_instruction_ftype relocate_instruction)
dde08ee1
PA
4278{
4279 gdbarch->relocate_instruction = relocate_instruction;
4280}
4281
39535193 4282bool
1c772458
UW
4283gdbarch_overlay_update_p (struct gdbarch *gdbarch)
4284{
4285 gdb_assert (gdbarch != NULL);
4286 return gdbarch->overlay_update != NULL;
4287}
4288
4289void
4290gdbarch_overlay_update (struct gdbarch *gdbarch, struct obj_section *osect)
4291{
4292 gdb_assert (gdbarch != NULL);
4293 gdb_assert (gdbarch->overlay_update != NULL);
4294 if (gdbarch_debug >= 2)
6cb06a8c 4295 gdb_printf (gdb_stdlog, "gdbarch_overlay_update called\n");
1c772458
UW
4296 gdbarch->overlay_update (osect);
4297}
4298
4299void
4300set_gdbarch_overlay_update (struct gdbarch *gdbarch,
adc48a49 4301 gdbarch_overlay_update_ftype overlay_update)
1c772458
UW
4302{
4303 gdbarch->overlay_update = overlay_update;
4304}
4305
39535193 4306bool
4eb0ad19
DJ
4307gdbarch_core_read_description_p (struct gdbarch *gdbarch)
4308{
4309 gdb_assert (gdbarch != NULL);
4310 return gdbarch->core_read_description != NULL;
4311}
4312
4313const struct target_desc *
4314gdbarch_core_read_description (struct gdbarch *gdbarch, struct target_ops *target, bfd *abfd)
4315{
4316 gdb_assert (gdbarch != NULL);
4317 gdb_assert (gdbarch->core_read_description != NULL);
4318 if (gdbarch_debug >= 2)
6cb06a8c 4319 gdb_printf (gdb_stdlog, "gdbarch_core_read_description called\n");
4eb0ad19
DJ
4320 return gdbarch->core_read_description (gdbarch, target, abfd);
4321}
4322
4323void
4324set_gdbarch_core_read_description (struct gdbarch *gdbarch,
adc48a49 4325 gdbarch_core_read_description_ftype core_read_description)
4eb0ad19
DJ
4326{
4327 gdbarch->core_read_description = core_read_description;
4328}
4329
203c3895
UW
4330int
4331gdbarch_sofun_address_maybe_missing (struct gdbarch *gdbarch)
4332{
4333 gdb_assert (gdbarch != NULL);
4334 /* Skip verify of sofun_address_maybe_missing, invalid_p == 0 */
4335 if (gdbarch_debug >= 2)
6cb06a8c 4336 gdb_printf (gdb_stdlog, "gdbarch_sofun_address_maybe_missing called\n");
203c3895
UW
4337 return gdbarch->sofun_address_maybe_missing;
4338}
4339
4340void
4341set_gdbarch_sofun_address_maybe_missing (struct gdbarch *gdbarch,
adc48a49 4342 int sofun_address_maybe_missing)
203c3895
UW
4343{
4344 gdbarch->sofun_address_maybe_missing = sofun_address_maybe_missing;
4345}
4346
39535193 4347bool
0508c3ec
HZ
4348gdbarch_process_record_p (struct gdbarch *gdbarch)
4349{
4350 gdb_assert (gdbarch != NULL);
4351 return gdbarch->process_record != NULL;
4352}
4353
4354int
4355gdbarch_process_record (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR addr)
4356{
4357 gdb_assert (gdbarch != NULL);
4358 gdb_assert (gdbarch->process_record != NULL);
4359 if (gdbarch_debug >= 2)
6cb06a8c 4360 gdb_printf (gdb_stdlog, "gdbarch_process_record called\n");
0508c3ec
HZ
4361 return gdbarch->process_record (gdbarch, regcache, addr);
4362}
4363
4364void
4365set_gdbarch_process_record (struct gdbarch *gdbarch,
adc48a49 4366 gdbarch_process_record_ftype process_record)
0508c3ec
HZ
4367{
4368 gdbarch->process_record = process_record;
4369}
4370
39535193 4371bool
3846b520
HZ
4372gdbarch_process_record_signal_p (struct gdbarch *gdbarch)
4373{
4374 gdb_assert (gdbarch != NULL);
4375 return gdbarch->process_record_signal != NULL;
4376}
4377
4378int
2ea28649 4379gdbarch_process_record_signal (struct gdbarch *gdbarch, struct regcache *regcache, enum gdb_signal signal)
3846b520
HZ
4380{
4381 gdb_assert (gdbarch != NULL);
4382 gdb_assert (gdbarch->process_record_signal != NULL);
4383 if (gdbarch_debug >= 2)
6cb06a8c 4384 gdb_printf (gdb_stdlog, "gdbarch_process_record_signal called\n");
3846b520
HZ
4385 return gdbarch->process_record_signal (gdbarch, regcache, signal);
4386}
4387
4388void
4389set_gdbarch_process_record_signal (struct gdbarch *gdbarch,
adc48a49 4390 gdbarch_process_record_signal_ftype process_record_signal)
3846b520
HZ
4391{
4392 gdbarch->process_record_signal = process_record_signal;
4393}
4394
39535193 4395bool
1f8cf220
PA
4396gdbarch_gdb_signal_from_target_p (struct gdbarch *gdbarch)
4397{
4398 gdb_assert (gdbarch != NULL);
4399 return gdbarch->gdb_signal_from_target != NULL;
4400}
4401
2ea28649 4402enum gdb_signal
22203bbf 4403gdbarch_gdb_signal_from_target (struct gdbarch *gdbarch, int signo)
1cded358
AR
4404{
4405 gdb_assert (gdbarch != NULL);
22203bbf 4406 gdb_assert (gdbarch->gdb_signal_from_target != NULL);
1cded358 4407 if (gdbarch_debug >= 2)
6cb06a8c 4408 gdb_printf (gdb_stdlog, "gdbarch_gdb_signal_from_target called\n");
22203bbf 4409 return gdbarch->gdb_signal_from_target (gdbarch, signo);
1cded358
AR
4410}
4411
4412void
22203bbf 4413set_gdbarch_gdb_signal_from_target (struct gdbarch *gdbarch,
adc48a49 4414 gdbarch_gdb_signal_from_target_ftype gdb_signal_from_target)
1cded358 4415{
22203bbf 4416 gdbarch->gdb_signal_from_target = gdb_signal_from_target;
1cded358
AR
4417}
4418
39535193 4419bool
eb14d406
SDJ
4420gdbarch_gdb_signal_to_target_p (struct gdbarch *gdbarch)
4421{
4422 gdb_assert (gdbarch != NULL);
4423 return gdbarch->gdb_signal_to_target != NULL;
4424}
4425
4426int
4427gdbarch_gdb_signal_to_target (struct gdbarch *gdbarch, enum gdb_signal signal)
4428{
4429 gdb_assert (gdbarch != NULL);
4430 gdb_assert (gdbarch->gdb_signal_to_target != NULL);
4431 if (gdbarch_debug >= 2)
6cb06a8c 4432 gdb_printf (gdb_stdlog, "gdbarch_gdb_signal_to_target called\n");
eb14d406
SDJ
4433 return gdbarch->gdb_signal_to_target (gdbarch, signal);
4434}
4435
4436void
4437set_gdbarch_gdb_signal_to_target (struct gdbarch *gdbarch,
adc48a49 4438 gdbarch_gdb_signal_to_target_ftype gdb_signal_to_target)
eb14d406
SDJ
4439{
4440 gdbarch->gdb_signal_to_target = gdb_signal_to_target;
4441}
4442
39535193 4443bool
4aa995e1
PA
4444gdbarch_get_siginfo_type_p (struct gdbarch *gdbarch)
4445{
4446 gdb_assert (gdbarch != NULL);
4447 return gdbarch->get_siginfo_type != NULL;
4448}
4449
4450struct type *
4451gdbarch_get_siginfo_type (struct gdbarch *gdbarch)
4452{
4453 gdb_assert (gdbarch != NULL);
4454 gdb_assert (gdbarch->get_siginfo_type != NULL);
4455 if (gdbarch_debug >= 2)
6cb06a8c 4456 gdb_printf (gdb_stdlog, "gdbarch_get_siginfo_type called\n");
4aa995e1
PA
4457 return gdbarch->get_siginfo_type (gdbarch);
4458}
4459
4460void
4461set_gdbarch_get_siginfo_type (struct gdbarch *gdbarch,
adc48a49 4462 gdbarch_get_siginfo_type_ftype get_siginfo_type)
4aa995e1
PA
4463{
4464 gdbarch->get_siginfo_type = get_siginfo_type;
4465}
4466
39535193 4467bool
60c5725c
DJ
4468gdbarch_record_special_symbol_p (struct gdbarch *gdbarch)
4469{
4470 gdb_assert (gdbarch != NULL);
4471 return gdbarch->record_special_symbol != NULL;
4472}
4473
4474void
4475gdbarch_record_special_symbol (struct gdbarch *gdbarch, struct objfile *objfile, asymbol *sym)
4476{
4477 gdb_assert (gdbarch != NULL);
4478 gdb_assert (gdbarch->record_special_symbol != NULL);
4479 if (gdbarch_debug >= 2)
6cb06a8c 4480 gdb_printf (gdb_stdlog, "gdbarch_record_special_symbol called\n");
60c5725c
DJ
4481 gdbarch->record_special_symbol (gdbarch, objfile, sym);
4482}
4483
4484void
4485set_gdbarch_record_special_symbol (struct gdbarch *gdbarch,
adc48a49 4486 gdbarch_record_special_symbol_ftype record_special_symbol)
60c5725c
DJ
4487{
4488 gdbarch->record_special_symbol = record_special_symbol;
4489}
4490
39535193 4491bool
a96d9b2e
SDJ
4492gdbarch_get_syscall_number_p (struct gdbarch *gdbarch)
4493{
4494 gdb_assert (gdbarch != NULL);
4495 return gdbarch->get_syscall_number != NULL;
4496}
4497
4498LONGEST
00431a78 4499gdbarch_get_syscall_number (struct gdbarch *gdbarch, thread_info *thread)
a96d9b2e
SDJ
4500{
4501 gdb_assert (gdbarch != NULL);
4502 gdb_assert (gdbarch->get_syscall_number != NULL);
4503 if (gdbarch_debug >= 2)
6cb06a8c 4504 gdb_printf (gdb_stdlog, "gdbarch_get_syscall_number called\n");
00431a78 4505 return gdbarch->get_syscall_number (gdbarch, thread);
a96d9b2e
SDJ
4506}
4507
4508void
4509set_gdbarch_get_syscall_number (struct gdbarch *gdbarch,
adc48a49 4510 gdbarch_get_syscall_number_ftype get_syscall_number)
a96d9b2e
SDJ
4511{
4512 gdbarch->get_syscall_number = get_syscall_number;
4513}
4514
458c8db8
SDJ
4515const char *
4516gdbarch_xml_syscall_file (struct gdbarch *gdbarch)
4517{
4518 gdb_assert (gdbarch != NULL);
4519 /* Skip verify of xml_syscall_file, invalid_p == 0 */
4520 if (gdbarch_debug >= 2)
6cb06a8c 4521 gdb_printf (gdb_stdlog, "gdbarch_xml_syscall_file called\n");
458c8db8
SDJ
4522 return gdbarch->xml_syscall_file;
4523}
4524
4525void
4526set_gdbarch_xml_syscall_file (struct gdbarch *gdbarch,
adc48a49 4527 const char * xml_syscall_file)
458c8db8
SDJ
4528{
4529 gdbarch->xml_syscall_file = xml_syscall_file;
4530}
4531
4532struct syscalls_info *
4533gdbarch_syscalls_info (struct gdbarch *gdbarch)
4534{
4535 gdb_assert (gdbarch != NULL);
4536 /* Skip verify of syscalls_info, invalid_p == 0 */
4537 if (gdbarch_debug >= 2)
6cb06a8c 4538 gdb_printf (gdb_stdlog, "gdbarch_syscalls_info called\n");
458c8db8
SDJ
4539 return gdbarch->syscalls_info;
4540}
4541
4542void
4543set_gdbarch_syscalls_info (struct gdbarch *gdbarch,
adc48a49 4544 struct syscalls_info * syscalls_info)
458c8db8
SDJ
4545{
4546 gdbarch->syscalls_info = syscalls_info;
4547}
4548
05c0465e
SDJ
4549const char *const *
4550gdbarch_stap_integer_prefixes (struct gdbarch *gdbarch)
55aa24fb
SDJ
4551{
4552 gdb_assert (gdbarch != NULL);
05c0465e 4553 /* Skip verify of stap_integer_prefixes, invalid_p == 0 */
55aa24fb 4554 if (gdbarch_debug >= 2)
6cb06a8c 4555 gdb_printf (gdb_stdlog, "gdbarch_stap_integer_prefixes called\n");
05c0465e 4556 return gdbarch->stap_integer_prefixes;
55aa24fb
SDJ
4557}
4558
4559void
05c0465e 4560set_gdbarch_stap_integer_prefixes (struct gdbarch *gdbarch,
adc48a49 4561 const char *const * stap_integer_prefixes)
55aa24fb 4562{
05c0465e 4563 gdbarch->stap_integer_prefixes = stap_integer_prefixes;
55aa24fb
SDJ
4564}
4565
05c0465e
SDJ
4566const char *const *
4567gdbarch_stap_integer_suffixes (struct gdbarch *gdbarch)
55aa24fb
SDJ
4568{
4569 gdb_assert (gdbarch != NULL);
05c0465e 4570 /* Skip verify of stap_integer_suffixes, invalid_p == 0 */
55aa24fb 4571 if (gdbarch_debug >= 2)
6cb06a8c 4572 gdb_printf (gdb_stdlog, "gdbarch_stap_integer_suffixes called\n");
05c0465e 4573 return gdbarch->stap_integer_suffixes;
55aa24fb
SDJ
4574}
4575
4576void
05c0465e 4577set_gdbarch_stap_integer_suffixes (struct gdbarch *gdbarch,
adc48a49 4578 const char *const * stap_integer_suffixes)
55aa24fb 4579{
05c0465e 4580 gdbarch->stap_integer_suffixes = stap_integer_suffixes;
55aa24fb
SDJ
4581}
4582
05c0465e
SDJ
4583const char *const *
4584gdbarch_stap_register_prefixes (struct gdbarch *gdbarch)
55aa24fb
SDJ
4585{
4586 gdb_assert (gdbarch != NULL);
05c0465e 4587 /* Skip verify of stap_register_prefixes, invalid_p == 0 */
55aa24fb 4588 if (gdbarch_debug >= 2)
6cb06a8c 4589 gdb_printf (gdb_stdlog, "gdbarch_stap_register_prefixes called\n");
05c0465e 4590 return gdbarch->stap_register_prefixes;
55aa24fb
SDJ
4591}
4592
4593void
05c0465e 4594set_gdbarch_stap_register_prefixes (struct gdbarch *gdbarch,
adc48a49 4595 const char *const * stap_register_prefixes)
55aa24fb 4596{
05c0465e 4597 gdbarch->stap_register_prefixes = stap_register_prefixes;
55aa24fb
SDJ
4598}
4599
05c0465e
SDJ
4600const char *const *
4601gdbarch_stap_register_suffixes (struct gdbarch *gdbarch)
55aa24fb
SDJ
4602{
4603 gdb_assert (gdbarch != NULL);
05c0465e 4604 /* Skip verify of stap_register_suffixes, invalid_p == 0 */
55aa24fb 4605 if (gdbarch_debug >= 2)
6cb06a8c 4606 gdb_printf (gdb_stdlog, "gdbarch_stap_register_suffixes called\n");
05c0465e 4607 return gdbarch->stap_register_suffixes;
55aa24fb
SDJ
4608}
4609
4610void
05c0465e 4611set_gdbarch_stap_register_suffixes (struct gdbarch *gdbarch,
adc48a49 4612 const char *const * stap_register_suffixes)
55aa24fb 4613{
05c0465e 4614 gdbarch->stap_register_suffixes = stap_register_suffixes;
55aa24fb
SDJ
4615}
4616
05c0465e
SDJ
4617const char *const *
4618gdbarch_stap_register_indirection_prefixes (struct gdbarch *gdbarch)
55aa24fb
SDJ
4619{
4620 gdb_assert (gdbarch != NULL);
05c0465e 4621 /* Skip verify of stap_register_indirection_prefixes, invalid_p == 0 */
55aa24fb 4622 if (gdbarch_debug >= 2)
6cb06a8c 4623 gdb_printf (gdb_stdlog, "gdbarch_stap_register_indirection_prefixes called\n");
05c0465e 4624 return gdbarch->stap_register_indirection_prefixes;
55aa24fb
SDJ
4625}
4626
4627void
05c0465e 4628set_gdbarch_stap_register_indirection_prefixes (struct gdbarch *gdbarch,
adc48a49 4629 const char *const * stap_register_indirection_prefixes)
55aa24fb 4630{
05c0465e 4631 gdbarch->stap_register_indirection_prefixes = stap_register_indirection_prefixes;
55aa24fb
SDJ
4632}
4633
05c0465e
SDJ
4634const char *const *
4635gdbarch_stap_register_indirection_suffixes (struct gdbarch *gdbarch)
55aa24fb
SDJ
4636{
4637 gdb_assert (gdbarch != NULL);
05c0465e 4638 /* Skip verify of stap_register_indirection_suffixes, invalid_p == 0 */
55aa24fb 4639 if (gdbarch_debug >= 2)
6cb06a8c 4640 gdb_printf (gdb_stdlog, "gdbarch_stap_register_indirection_suffixes called\n");
05c0465e 4641 return gdbarch->stap_register_indirection_suffixes;
55aa24fb
SDJ
4642}
4643
4644void
05c0465e 4645set_gdbarch_stap_register_indirection_suffixes (struct gdbarch *gdbarch,
adc48a49 4646 const char *const * stap_register_indirection_suffixes)
55aa24fb 4647{
05c0465e 4648 gdbarch->stap_register_indirection_suffixes = stap_register_indirection_suffixes;
55aa24fb
SDJ
4649}
4650
4651const char *
4652gdbarch_stap_gdb_register_prefix (struct gdbarch *gdbarch)
4653{
4654 gdb_assert (gdbarch != NULL);
4655 /* Skip verify of stap_gdb_register_prefix, invalid_p == 0 */
4656 if (gdbarch_debug >= 2)
6cb06a8c 4657 gdb_printf (gdb_stdlog, "gdbarch_stap_gdb_register_prefix called\n");
55aa24fb
SDJ
4658 return gdbarch->stap_gdb_register_prefix;
4659}
4660
4661void
4662set_gdbarch_stap_gdb_register_prefix (struct gdbarch *gdbarch,
adc48a49 4663 const char * stap_gdb_register_prefix)
55aa24fb
SDJ
4664{
4665 gdbarch->stap_gdb_register_prefix = stap_gdb_register_prefix;
4666}
4667
4668const char *
4669gdbarch_stap_gdb_register_suffix (struct gdbarch *gdbarch)
4670{
4671 gdb_assert (gdbarch != NULL);
4672 /* Skip verify of stap_gdb_register_suffix, invalid_p == 0 */
4673 if (gdbarch_debug >= 2)
6cb06a8c 4674 gdb_printf (gdb_stdlog, "gdbarch_stap_gdb_register_suffix called\n");
55aa24fb
SDJ
4675 return gdbarch->stap_gdb_register_suffix;
4676}
4677
4678void
4679set_gdbarch_stap_gdb_register_suffix (struct gdbarch *gdbarch,
adc48a49 4680 const char * stap_gdb_register_suffix)
55aa24fb
SDJ
4681{
4682 gdbarch->stap_gdb_register_suffix = stap_gdb_register_suffix;
4683}
4684
39535193 4685bool
55aa24fb
SDJ
4686gdbarch_stap_is_single_operand_p (struct gdbarch *gdbarch)
4687{
4688 gdb_assert (gdbarch != NULL);
4689 return gdbarch->stap_is_single_operand != NULL;
4690}
4691
4692int
4693gdbarch_stap_is_single_operand (struct gdbarch *gdbarch, const char *s)
4694{
4695 gdb_assert (gdbarch != NULL);
4696 gdb_assert (gdbarch->stap_is_single_operand != NULL);
4697 if (gdbarch_debug >= 2)
6cb06a8c 4698 gdb_printf (gdb_stdlog, "gdbarch_stap_is_single_operand called\n");
55aa24fb
SDJ
4699 return gdbarch->stap_is_single_operand (gdbarch, s);
4700}
4701
4702void
4703set_gdbarch_stap_is_single_operand (struct gdbarch *gdbarch,
adc48a49 4704 gdbarch_stap_is_single_operand_ftype stap_is_single_operand)
55aa24fb
SDJ
4705{
4706 gdbarch->stap_is_single_operand = stap_is_single_operand;
4707}
4708
39535193 4709bool
55aa24fb
SDJ
4710gdbarch_stap_parse_special_token_p (struct gdbarch *gdbarch)
4711{
4712 gdb_assert (gdbarch != NULL);
4713 return gdbarch->stap_parse_special_token != NULL;
4714}
4715
4c5e7a93 4716expr::operation_up
55aa24fb
SDJ
4717gdbarch_stap_parse_special_token (struct gdbarch *gdbarch, struct stap_parse_info *p)
4718{
4719 gdb_assert (gdbarch != NULL);
4720 gdb_assert (gdbarch->stap_parse_special_token != NULL);
4721 if (gdbarch_debug >= 2)
6cb06a8c 4722 gdb_printf (gdb_stdlog, "gdbarch_stap_parse_special_token called\n");
55aa24fb
SDJ
4723 return gdbarch->stap_parse_special_token (gdbarch, p);
4724}
4725
4726void
4727set_gdbarch_stap_parse_special_token (struct gdbarch *gdbarch,
adc48a49 4728 gdbarch_stap_parse_special_token_ftype stap_parse_special_token)
55aa24fb
SDJ
4729{
4730 gdbarch->stap_parse_special_token = stap_parse_special_token;
4731}
4732
39535193 4733bool
7d7571f0
SDJ
4734gdbarch_stap_adjust_register_p (struct gdbarch *gdbarch)
4735{
4736 gdb_assert (gdbarch != NULL);
4737 return gdbarch->stap_adjust_register != NULL;
4738}
4739
6b78c3f8
AB
4740std::string
4741gdbarch_stap_adjust_register (struct gdbarch *gdbarch, struct stap_parse_info *p, const std::string &regname, int regnum)
7d7571f0
SDJ
4742{
4743 gdb_assert (gdbarch != NULL);
4744 gdb_assert (gdbarch->stap_adjust_register != NULL);
4745 if (gdbarch_debug >= 2)
6cb06a8c 4746 gdb_printf (gdb_stdlog, "gdbarch_stap_adjust_register called\n");
6b78c3f8 4747 return gdbarch->stap_adjust_register (gdbarch, p, regname, regnum);
7d7571f0
SDJ
4748}
4749
4750void
4751set_gdbarch_stap_adjust_register (struct gdbarch *gdbarch,
adc48a49 4752 gdbarch_stap_adjust_register_ftype stap_adjust_register)
7d7571f0
SDJ
4753{
4754 gdbarch->stap_adjust_register = stap_adjust_register;
4755}
4756
39535193 4757bool
8b367e17
JM
4758gdbarch_dtrace_parse_probe_argument_p (struct gdbarch *gdbarch)
4759{
4760 gdb_assert (gdbarch != NULL);
4761 return gdbarch->dtrace_parse_probe_argument != NULL;
4762}
4763
482ddd69
TT
4764expr::operation_up
4765gdbarch_dtrace_parse_probe_argument (struct gdbarch *gdbarch, int narg)
8b367e17
JM
4766{
4767 gdb_assert (gdbarch != NULL);
4768 gdb_assert (gdbarch->dtrace_parse_probe_argument != NULL);
4769 if (gdbarch_debug >= 2)
6cb06a8c 4770 gdb_printf (gdb_stdlog, "gdbarch_dtrace_parse_probe_argument called\n");
482ddd69 4771 return gdbarch->dtrace_parse_probe_argument (gdbarch, narg);
8b367e17
JM
4772}
4773
4774void
4775set_gdbarch_dtrace_parse_probe_argument (struct gdbarch *gdbarch,
adc48a49 4776 gdbarch_dtrace_parse_probe_argument_ftype dtrace_parse_probe_argument)
8b367e17
JM
4777{
4778 gdbarch->dtrace_parse_probe_argument = dtrace_parse_probe_argument;
4779}
4780
39535193 4781bool
8b367e17
JM
4782gdbarch_dtrace_probe_is_enabled_p (struct gdbarch *gdbarch)
4783{
4784 gdb_assert (gdbarch != NULL);
4785 return gdbarch->dtrace_probe_is_enabled != NULL;
4786}
4787
4788int
4789gdbarch_dtrace_probe_is_enabled (struct gdbarch *gdbarch, CORE_ADDR addr)
4790{
4791 gdb_assert (gdbarch != NULL);
4792 gdb_assert (gdbarch->dtrace_probe_is_enabled != NULL);
4793 if (gdbarch_debug >= 2)
6cb06a8c 4794 gdb_printf (gdb_stdlog, "gdbarch_dtrace_probe_is_enabled called\n");
8b367e17
JM
4795 return gdbarch->dtrace_probe_is_enabled (gdbarch, addr);
4796}
4797
4798void
4799set_gdbarch_dtrace_probe_is_enabled (struct gdbarch *gdbarch,
adc48a49 4800 gdbarch_dtrace_probe_is_enabled_ftype dtrace_probe_is_enabled)
8b367e17
JM
4801{
4802 gdbarch->dtrace_probe_is_enabled = dtrace_probe_is_enabled;
4803}
4804
39535193 4805bool
8b367e17
JM
4806gdbarch_dtrace_enable_probe_p (struct gdbarch *gdbarch)
4807{
4808 gdb_assert (gdbarch != NULL);
4809 return gdbarch->dtrace_enable_probe != NULL;
4810}
4811
4812void
4813gdbarch_dtrace_enable_probe (struct gdbarch *gdbarch, CORE_ADDR addr)
4814{
4815 gdb_assert (gdbarch != NULL);
4816 gdb_assert (gdbarch->dtrace_enable_probe != NULL);
4817 if (gdbarch_debug >= 2)
6cb06a8c 4818 gdb_printf (gdb_stdlog, "gdbarch_dtrace_enable_probe called\n");
8b367e17
JM
4819 gdbarch->dtrace_enable_probe (gdbarch, addr);
4820}
4821
4822void
4823set_gdbarch_dtrace_enable_probe (struct gdbarch *gdbarch,
adc48a49 4824 gdbarch_dtrace_enable_probe_ftype dtrace_enable_probe)
8b367e17
JM
4825{
4826 gdbarch->dtrace_enable_probe = dtrace_enable_probe;
4827}
4828
39535193 4829bool
8b367e17
JM
4830gdbarch_dtrace_disable_probe_p (struct gdbarch *gdbarch)
4831{
4832 gdb_assert (gdbarch != NULL);
4833 return gdbarch->dtrace_disable_probe != NULL;
4834}
4835
4836void
4837gdbarch_dtrace_disable_probe (struct gdbarch *gdbarch, CORE_ADDR addr)
4838{
4839 gdb_assert (gdbarch != NULL);
4840 gdb_assert (gdbarch->dtrace_disable_probe != NULL);
4841 if (gdbarch_debug >= 2)
6cb06a8c 4842 gdb_printf (gdb_stdlog, "gdbarch_dtrace_disable_probe called\n");
8b367e17
JM
4843 gdbarch->dtrace_disable_probe (gdbarch, addr);
4844}
4845
4846void
4847set_gdbarch_dtrace_disable_probe (struct gdbarch *gdbarch,
adc48a49 4848 gdbarch_dtrace_disable_probe_ftype dtrace_disable_probe)
8b367e17
JM
4849{
4850 gdbarch->dtrace_disable_probe = dtrace_disable_probe;
4851}
4852
50c71eaf
PA
4853int
4854gdbarch_has_global_solist (struct gdbarch *gdbarch)
4855{
4856 gdb_assert (gdbarch != NULL);
4857 /* Skip verify of has_global_solist, invalid_p == 0 */
4858 if (gdbarch_debug >= 2)
6cb06a8c 4859 gdb_printf (gdb_stdlog, "gdbarch_has_global_solist called\n");
50c71eaf
PA
4860 return gdbarch->has_global_solist;
4861}
4862
4863void
4864set_gdbarch_has_global_solist (struct gdbarch *gdbarch,
adc48a49 4865 int has_global_solist)
50c71eaf
PA
4866{
4867 gdbarch->has_global_solist = has_global_solist;
4868}
4869
2567c7d9
PA
4870int
4871gdbarch_has_global_breakpoints (struct gdbarch *gdbarch)
4872{
4873 gdb_assert (gdbarch != NULL);
4874 /* Skip verify of has_global_breakpoints, invalid_p == 0 */
4875 if (gdbarch_debug >= 2)
6cb06a8c 4876 gdb_printf (gdb_stdlog, "gdbarch_has_global_breakpoints called\n");
2567c7d9
PA
4877 return gdbarch->has_global_breakpoints;
4878}
4879
4880void
4881set_gdbarch_has_global_breakpoints (struct gdbarch *gdbarch,
adc48a49 4882 int has_global_breakpoints)
2567c7d9
PA
4883{
4884 gdbarch->has_global_breakpoints = has_global_breakpoints;
4885}
4886
6c95b8df
PA
4887int
4888gdbarch_has_shared_address_space (struct gdbarch *gdbarch)
4889{
4890 gdb_assert (gdbarch != NULL);
4891 gdb_assert (gdbarch->has_shared_address_space != NULL);
4892 if (gdbarch_debug >= 2)
6cb06a8c 4893 gdb_printf (gdb_stdlog, "gdbarch_has_shared_address_space called\n");
6c95b8df
PA
4894 return gdbarch->has_shared_address_space (gdbarch);
4895}
4896
4897void
4898set_gdbarch_has_shared_address_space (struct gdbarch *gdbarch,
adc48a49 4899 gdbarch_has_shared_address_space_ftype has_shared_address_space)
6c95b8df
PA
4900{
4901 gdbarch->has_shared_address_space = has_shared_address_space;
4902}
4903
7a697b8d 4904int
281d762b 4905gdbarch_fast_tracepoint_valid_at (struct gdbarch *gdbarch, CORE_ADDR addr, std::string *msg)
7a697b8d
SS
4906{
4907 gdb_assert (gdbarch != NULL);
4908 gdb_assert (gdbarch->fast_tracepoint_valid_at != NULL);
4909 if (gdbarch_debug >= 2)
6cb06a8c 4910 gdb_printf (gdb_stdlog, "gdbarch_fast_tracepoint_valid_at called\n");
6b940e6a 4911 return gdbarch->fast_tracepoint_valid_at (gdbarch, addr, msg);
7a697b8d
SS
4912}
4913
4914void
4915set_gdbarch_fast_tracepoint_valid_at (struct gdbarch *gdbarch,
adc48a49 4916 gdbarch_fast_tracepoint_valid_at_ftype fast_tracepoint_valid_at)
7a697b8d
SS
4917{
4918 gdbarch->fast_tracepoint_valid_at = fast_tracepoint_valid_at;
4919}
4920
5f034a78
MK
4921void
4922gdbarch_guess_tracepoint_registers (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR addr)
4923{
4924 gdb_assert (gdbarch != NULL);
4925 gdb_assert (gdbarch->guess_tracepoint_registers != NULL);
4926 if (gdbarch_debug >= 2)
6cb06a8c 4927 gdb_printf (gdb_stdlog, "gdbarch_guess_tracepoint_registers called\n");
5f034a78
MK
4928 gdbarch->guess_tracepoint_registers (gdbarch, regcache, addr);
4929}
4930
4931void
4932set_gdbarch_guess_tracepoint_registers (struct gdbarch *gdbarch,
adc48a49 4933 gdbarch_guess_tracepoint_registers_ftype guess_tracepoint_registers)
5f034a78
MK
4934{
4935 gdbarch->guess_tracepoint_registers = guess_tracepoint_registers;
4936}
4937
f870a310
TT
4938const char *
4939gdbarch_auto_charset (struct gdbarch *gdbarch)
4940{
4941 gdb_assert (gdbarch != NULL);
4942 gdb_assert (gdbarch->auto_charset != NULL);
4943 if (gdbarch_debug >= 2)
6cb06a8c 4944 gdb_printf (gdb_stdlog, "gdbarch_auto_charset called\n");
f870a310
TT
4945 return gdbarch->auto_charset ();
4946}
4947
4948void
4949set_gdbarch_auto_charset (struct gdbarch *gdbarch,
adc48a49 4950 gdbarch_auto_charset_ftype auto_charset)
f870a310
TT
4951{
4952 gdbarch->auto_charset = auto_charset;
4953}
4954
4955const char *
4956gdbarch_auto_wide_charset (struct gdbarch *gdbarch)
4957{
4958 gdb_assert (gdbarch != NULL);
4959 gdb_assert (gdbarch->auto_wide_charset != NULL);
4960 if (gdbarch_debug >= 2)
6cb06a8c 4961 gdb_printf (gdb_stdlog, "gdbarch_auto_wide_charset called\n");
f870a310
TT
4962 return gdbarch->auto_wide_charset ();
4963}
4964
4965void
4966set_gdbarch_auto_wide_charset (struct gdbarch *gdbarch,
adc48a49 4967 gdbarch_auto_wide_charset_ftype auto_wide_charset)
f870a310
TT
4968{
4969 gdbarch->auto_wide_charset = auto_wide_charset;
4970}
4971
08105857
PA
4972const char *
4973gdbarch_solib_symbols_extension (struct gdbarch *gdbarch)
4974{
4975 gdb_assert (gdbarch != NULL);
a5118a18 4976 /* Skip verify of solib_symbols_extension, invalid_p == 0 */
08105857 4977 if (gdbarch_debug >= 2)
6cb06a8c 4978 gdb_printf (gdb_stdlog, "gdbarch_solib_symbols_extension called\n");
08105857
PA
4979 return gdbarch->solib_symbols_extension;
4980}
4981
4982void
4983set_gdbarch_solib_symbols_extension (struct gdbarch *gdbarch,
adc48a49 4984 const char * solib_symbols_extension)
08105857
PA
4985{
4986 gdbarch->solib_symbols_extension = solib_symbols_extension;
4987}
4988
ab38a727
PA
4989int
4990gdbarch_has_dos_based_file_system (struct gdbarch *gdbarch)
4991{
4992 gdb_assert (gdbarch != NULL);
4993 /* Skip verify of has_dos_based_file_system, invalid_p == 0 */
4994 if (gdbarch_debug >= 2)
6cb06a8c 4995 gdb_printf (gdb_stdlog, "gdbarch_has_dos_based_file_system called\n");
ab38a727
PA
4996 return gdbarch->has_dos_based_file_system;
4997}
4998
4999void
5000set_gdbarch_has_dos_based_file_system (struct gdbarch *gdbarch,
adc48a49 5001 int has_dos_based_file_system)
ab38a727
PA
5002{
5003 gdbarch->has_dos_based_file_system = has_dos_based_file_system;
5004}
5005
6710bf39
SS
5006void
5007gdbarch_gen_return_address (struct gdbarch *gdbarch, struct agent_expr *ax, struct axs_value *value, CORE_ADDR scope)
5008{
5009 gdb_assert (gdbarch != NULL);
5010 gdb_assert (gdbarch->gen_return_address != NULL);
5011 if (gdbarch_debug >= 2)
6cb06a8c 5012 gdb_printf (gdb_stdlog, "gdbarch_gen_return_address called\n");
6710bf39
SS
5013 gdbarch->gen_return_address (gdbarch, ax, value, scope);
5014}
5015
5016void
5017set_gdbarch_gen_return_address (struct gdbarch *gdbarch,
adc48a49 5018 gdbarch_gen_return_address_ftype gen_return_address)
6710bf39
SS
5019{
5020 gdbarch->gen_return_address = gen_return_address;
5021}
5022
39535193 5023bool
3030c96e
UW
5024gdbarch_info_proc_p (struct gdbarch *gdbarch)
5025{
5026 gdb_assert (gdbarch != NULL);
5027 return gdbarch->info_proc != NULL;
5028}
5029
5030void
7bc112c1 5031gdbarch_info_proc (struct gdbarch *gdbarch, const char *args, enum info_proc_what what)
3030c96e
UW
5032{
5033 gdb_assert (gdbarch != NULL);
5034 gdb_assert (gdbarch->info_proc != NULL);
5035 if (gdbarch_debug >= 2)
6cb06a8c 5036 gdb_printf (gdb_stdlog, "gdbarch_info_proc called\n");
3030c96e
UW
5037 gdbarch->info_proc (gdbarch, args, what);
5038}
5039
5040void
5041set_gdbarch_info_proc (struct gdbarch *gdbarch,
adc48a49 5042 gdbarch_info_proc_ftype info_proc)
3030c96e
UW
5043{
5044 gdbarch->info_proc = info_proc;
5045}
5046
39535193 5047bool
451b7c33
TT
5048gdbarch_core_info_proc_p (struct gdbarch *gdbarch)
5049{
5050 gdb_assert (gdbarch != NULL);
5051 return gdbarch->core_info_proc != NULL;
5052}
5053
5054void
7bc112c1 5055gdbarch_core_info_proc (struct gdbarch *gdbarch, const char *args, enum info_proc_what what)
451b7c33
TT
5056{
5057 gdb_assert (gdbarch != NULL);
5058 gdb_assert (gdbarch->core_info_proc != NULL);
5059 if (gdbarch_debug >= 2)
6cb06a8c 5060 gdb_printf (gdb_stdlog, "gdbarch_core_info_proc called\n");
451b7c33
TT
5061 gdbarch->core_info_proc (gdbarch, args, what);
5062}
5063
5064void
5065set_gdbarch_core_info_proc (struct gdbarch *gdbarch,
adc48a49 5066 gdbarch_core_info_proc_ftype core_info_proc)
451b7c33
TT
5067{
5068 gdbarch->core_info_proc = core_info_proc;
5069}
5070
19630284 5071void
6e9cd73e 5072gdbarch_iterate_over_objfiles_in_search_order (struct gdbarch *gdbarch, iterate_over_objfiles_in_search_order_cb_ftype cb, struct objfile *current_objfile)
19630284
JB
5073{
5074 gdb_assert (gdbarch != NULL);
5075 gdb_assert (gdbarch->iterate_over_objfiles_in_search_order != NULL);
5076 if (gdbarch_debug >= 2)
6cb06a8c 5077 gdb_printf (gdb_stdlog, "gdbarch_iterate_over_objfiles_in_search_order called\n");
6e9cd73e 5078 gdbarch->iterate_over_objfiles_in_search_order (gdbarch, cb, current_objfile);
19630284
JB
5079}
5080
5081void
5082set_gdbarch_iterate_over_objfiles_in_search_order (struct gdbarch *gdbarch,
adc48a49 5083 gdbarch_iterate_over_objfiles_in_search_order_ftype iterate_over_objfiles_in_search_order)
19630284
JB
5084{
5085 gdbarch->iterate_over_objfiles_in_search_order = iterate_over_objfiles_in_search_order;
5086}
5087
7e35103a
JB
5088struct ravenscar_arch_ops *
5089gdbarch_ravenscar_ops (struct gdbarch *gdbarch)
5090{
5091 gdb_assert (gdbarch != NULL);
5092 /* Skip verify of ravenscar_ops, invalid_p == 0 */
5093 if (gdbarch_debug >= 2)
6cb06a8c 5094 gdb_printf (gdb_stdlog, "gdbarch_ravenscar_ops called\n");
7e35103a
JB
5095 return gdbarch->ravenscar_ops;
5096}
5097
5098void
5099set_gdbarch_ravenscar_ops (struct gdbarch *gdbarch,
adc48a49 5100 struct ravenscar_arch_ops * ravenscar_ops)
7e35103a
JB
5101{
5102 gdbarch->ravenscar_ops = ravenscar_ops;
5103}
5104
c2170eef
MM
5105int
5106gdbarch_insn_is_call (struct gdbarch *gdbarch, CORE_ADDR addr)
5107{
5108 gdb_assert (gdbarch != NULL);
5109 gdb_assert (gdbarch->insn_is_call != NULL);
5110 if (gdbarch_debug >= 2)
6cb06a8c 5111 gdb_printf (gdb_stdlog, "gdbarch_insn_is_call called\n");
c2170eef
MM
5112 return gdbarch->insn_is_call (gdbarch, addr);
5113}
5114
5115void
5116set_gdbarch_insn_is_call (struct gdbarch *gdbarch,
adc48a49 5117 gdbarch_insn_is_call_ftype insn_is_call)
c2170eef
MM
5118{
5119 gdbarch->insn_is_call = insn_is_call;
5120}
5121
5122int
5123gdbarch_insn_is_ret (struct gdbarch *gdbarch, CORE_ADDR addr)
5124{
5125 gdb_assert (gdbarch != NULL);
5126 gdb_assert (gdbarch->insn_is_ret != NULL);
5127 if (gdbarch_debug >= 2)
6cb06a8c 5128 gdb_printf (gdb_stdlog, "gdbarch_insn_is_ret called\n");
c2170eef
MM
5129 return gdbarch->insn_is_ret (gdbarch, addr);
5130}
5131
5132void
5133set_gdbarch_insn_is_ret (struct gdbarch *gdbarch,
adc48a49 5134 gdbarch_insn_is_ret_ftype insn_is_ret)
c2170eef
MM
5135{
5136 gdbarch->insn_is_ret = insn_is_ret;
5137}
5138
5139int
5140gdbarch_insn_is_jump (struct gdbarch *gdbarch, CORE_ADDR addr)
5141{
5142 gdb_assert (gdbarch != NULL);
5143 gdb_assert (gdbarch->insn_is_jump != NULL);
5144 if (gdbarch_debug >= 2)
6cb06a8c 5145 gdb_printf (gdb_stdlog, "gdbarch_insn_is_jump called\n");
c2170eef
MM
5146 return gdbarch->insn_is_jump (gdbarch, addr);
5147}
5148
5149void
5150set_gdbarch_insn_is_jump (struct gdbarch *gdbarch,
adc48a49 5151 gdbarch_insn_is_jump_ftype insn_is_jump)
c2170eef
MM
5152{
5153 gdbarch->insn_is_jump = insn_is_jump;
5154}
5155
5133a315
LM
5156bool
5157gdbarch_program_breakpoint_here_p (struct gdbarch *gdbarch, CORE_ADDR address)
5158{
5159 gdb_assert (gdbarch != NULL);
5160 gdb_assert (gdbarch->program_breakpoint_here_p != NULL);
5161 if (gdbarch_debug >= 2)
6cb06a8c 5162 gdb_printf (gdb_stdlog, "gdbarch_program_breakpoint_here_p called\n");
5133a315
LM
5163 return gdbarch->program_breakpoint_here_p (gdbarch, address);
5164}
5165
5166void
5167set_gdbarch_program_breakpoint_here_p (struct gdbarch *gdbarch,
adc48a49 5168 gdbarch_program_breakpoint_here_p_ftype program_breakpoint_here_p)
5133a315
LM
5169{
5170 gdbarch->program_breakpoint_here_p = program_breakpoint_here_p;
5171}
5172
39535193 5173bool
27a48a92
MK
5174gdbarch_auxv_parse_p (struct gdbarch *gdbarch)
5175{
5176 gdb_assert (gdbarch != NULL);
5177 return gdbarch->auxv_parse != NULL;
5178}
5179
5180int
3fe639b8 5181gdbarch_auxv_parse (struct gdbarch *gdbarch, const gdb_byte **readptr, const gdb_byte *endptr, CORE_ADDR *typep, CORE_ADDR *valp)
27a48a92
MK
5182{
5183 gdb_assert (gdbarch != NULL);
5184 gdb_assert (gdbarch->auxv_parse != NULL);
5185 if (gdbarch_debug >= 2)
6cb06a8c 5186 gdb_printf (gdb_stdlog, "gdbarch_auxv_parse called\n");
27a48a92
MK
5187 return gdbarch->auxv_parse (gdbarch, readptr, endptr, typep, valp);
5188}
5189
5190void
5191set_gdbarch_auxv_parse (struct gdbarch *gdbarch,
adc48a49 5192 gdbarch_auxv_parse_ftype auxv_parse)
27a48a92
MK
5193{
5194 gdbarch->auxv_parse = auxv_parse;
5195}
5196
2faa3447
JB
5197void
5198gdbarch_print_auxv_entry (struct gdbarch *gdbarch, struct ui_file *file, CORE_ADDR type, CORE_ADDR val)
5199{
5200 gdb_assert (gdbarch != NULL);
5201 gdb_assert (gdbarch->print_auxv_entry != NULL);
5202 if (gdbarch_debug >= 2)
6cb06a8c 5203 gdb_printf (gdb_stdlog, "gdbarch_print_auxv_entry called\n");
2faa3447
JB
5204 gdbarch->print_auxv_entry (gdbarch, file, type, val);
5205}
5206
5207void
5208set_gdbarch_print_auxv_entry (struct gdbarch *gdbarch,
adc48a49 5209 gdbarch_print_auxv_entry_ftype print_auxv_entry)
2faa3447
JB
5210{
5211 gdbarch->print_auxv_entry = print_auxv_entry;
5212}
5213
3437254d
PA
5214int
5215gdbarch_vsyscall_range (struct gdbarch *gdbarch, struct mem_range *range)
5216{
5217 gdb_assert (gdbarch != NULL);
5218 gdb_assert (gdbarch->vsyscall_range != NULL);
5219 if (gdbarch_debug >= 2)
6cb06a8c 5220 gdb_printf (gdb_stdlog, "gdbarch_vsyscall_range called\n");
3437254d
PA
5221 return gdbarch->vsyscall_range (gdbarch, range);
5222}
5223
5224void
5225set_gdbarch_vsyscall_range (struct gdbarch *gdbarch,
adc48a49 5226 gdbarch_vsyscall_range_ftype vsyscall_range)
3437254d
PA
5227{
5228 gdbarch->vsyscall_range = vsyscall_range;
5229}
5230
f208eee0
JK
5231CORE_ADDR
5232gdbarch_infcall_mmap (struct gdbarch *gdbarch, CORE_ADDR size, unsigned prot)
5233{
5234 gdb_assert (gdbarch != NULL);
5235 gdb_assert (gdbarch->infcall_mmap != NULL);
5236 if (gdbarch_debug >= 2)
6cb06a8c 5237 gdb_printf (gdb_stdlog, "gdbarch_infcall_mmap called\n");
f208eee0
JK
5238 return gdbarch->infcall_mmap (size, prot);
5239}
5240
5241void
5242set_gdbarch_infcall_mmap (struct gdbarch *gdbarch,
adc48a49 5243 gdbarch_infcall_mmap_ftype infcall_mmap)
f208eee0
JK
5244{
5245 gdbarch->infcall_mmap = infcall_mmap;
5246}
5247
7f361056
JK
5248void
5249gdbarch_infcall_munmap (struct gdbarch *gdbarch, CORE_ADDR addr, CORE_ADDR size)
5250{
5251 gdb_assert (gdbarch != NULL);
5252 gdb_assert (gdbarch->infcall_munmap != NULL);
5253 if (gdbarch_debug >= 2)
6cb06a8c 5254 gdb_printf (gdb_stdlog, "gdbarch_infcall_munmap called\n");
7f361056
JK
5255 gdbarch->infcall_munmap (addr, size);
5256}
5257
5258void
5259set_gdbarch_infcall_munmap (struct gdbarch *gdbarch,
adc48a49 5260 gdbarch_infcall_munmap_ftype infcall_munmap)
7f361056
JK
5261{
5262 gdbarch->infcall_munmap = infcall_munmap;
5263}
5264
953cff56 5265std::string
f208eee0
JK
5266gdbarch_gcc_target_options (struct gdbarch *gdbarch)
5267{
5268 gdb_assert (gdbarch != NULL);
5269 gdb_assert (gdbarch->gcc_target_options != NULL);
5270 if (gdbarch_debug >= 2)
6cb06a8c 5271 gdb_printf (gdb_stdlog, "gdbarch_gcc_target_options called\n");
f208eee0
JK
5272 return gdbarch->gcc_target_options (gdbarch);
5273}
5274
5275void
5276set_gdbarch_gcc_target_options (struct gdbarch *gdbarch,
adc48a49 5277 gdbarch_gcc_target_options_ftype gcc_target_options)
f208eee0
JK
5278{
5279 gdbarch->gcc_target_options = gcc_target_options;
5280}
5281
ac04f72b
TT
5282const char *
5283gdbarch_gnu_triplet_regexp (struct gdbarch *gdbarch)
5284{
5285 gdb_assert (gdbarch != NULL);
5286 gdb_assert (gdbarch->gnu_triplet_regexp != NULL);
5287 if (gdbarch_debug >= 2)
6cb06a8c 5288 gdb_printf (gdb_stdlog, "gdbarch_gnu_triplet_regexp called\n");
ac04f72b
TT
5289 return gdbarch->gnu_triplet_regexp (gdbarch);
5290}
5291
5292void
5293set_gdbarch_gnu_triplet_regexp (struct gdbarch *gdbarch,
adc48a49 5294 gdbarch_gnu_triplet_regexp_ftype gnu_triplet_regexp)
ac04f72b
TT
5295{
5296 gdbarch->gnu_triplet_regexp = gnu_triplet_regexp;
5297}
5298
3374165f
SM
5299int
5300gdbarch_addressable_memory_unit_size (struct gdbarch *gdbarch)
5301{
5302 gdb_assert (gdbarch != NULL);
5303 gdb_assert (gdbarch->addressable_memory_unit_size != NULL);
5304 if (gdbarch_debug >= 2)
6cb06a8c 5305 gdb_printf (gdb_stdlog, "gdbarch_addressable_memory_unit_size called\n");
3374165f
SM
5306 return gdbarch->addressable_memory_unit_size (gdbarch);
5307}
5308
5309void
5310set_gdbarch_addressable_memory_unit_size (struct gdbarch *gdbarch,
adc48a49 5311 gdbarch_addressable_memory_unit_size_ftype addressable_memory_unit_size)
3374165f
SM
5312{
5313 gdbarch->addressable_memory_unit_size = addressable_memory_unit_size;
5314}
5315
471b9d15
MR
5316const char *
5317gdbarch_disassembler_options_implicit (struct gdbarch *gdbarch)
5318{
5319 gdb_assert (gdbarch != NULL);
5320 /* Skip verify of disassembler_options_implicit, invalid_p == 0 */
5321 if (gdbarch_debug >= 2)
6cb06a8c 5322 gdb_printf (gdb_stdlog, "gdbarch_disassembler_options_implicit called\n");
471b9d15
MR
5323 return gdbarch->disassembler_options_implicit;
5324}
5325
5326void
5327set_gdbarch_disassembler_options_implicit (struct gdbarch *gdbarch,
adc48a49 5328 const char * disassembler_options_implicit)
471b9d15
MR
5329{
5330 gdbarch->disassembler_options_implicit = disassembler_options_implicit;
5331}
5332
65b48a81
PB
5333char **
5334gdbarch_disassembler_options (struct gdbarch *gdbarch)
5335{
5336 gdb_assert (gdbarch != NULL);
5337 /* Skip verify of disassembler_options, invalid_p == 0 */
5338 if (gdbarch_debug >= 2)
6cb06a8c 5339 gdb_printf (gdb_stdlog, "gdbarch_disassembler_options called\n");
65b48a81
PB
5340 return gdbarch->disassembler_options;
5341}
5342
5343void
5344set_gdbarch_disassembler_options (struct gdbarch *gdbarch,
adc48a49 5345 char ** disassembler_options)
65b48a81
PB
5346{
5347 gdbarch->disassembler_options = disassembler_options;
5348}
5349
471b9d15 5350const disasm_options_and_args_t *
65b48a81
PB
5351gdbarch_valid_disassembler_options (struct gdbarch *gdbarch)
5352{
5353 gdb_assert (gdbarch != NULL);
5354 /* Skip verify of valid_disassembler_options, invalid_p == 0 */
5355 if (gdbarch_debug >= 2)
6cb06a8c 5356 gdb_printf (gdb_stdlog, "gdbarch_valid_disassembler_options called\n");
65b48a81
PB
5357 return gdbarch->valid_disassembler_options;
5358}
5359
5360void
5361set_gdbarch_valid_disassembler_options (struct gdbarch *gdbarch,
adc48a49 5362 const disasm_options_and_args_t * valid_disassembler_options)
65b48a81
PB
5363{
5364 gdbarch->valid_disassembler_options = valid_disassembler_options;
5365}
5366
2b4424c3
TT
5367ULONGEST
5368gdbarch_type_align (struct gdbarch *gdbarch, struct type *type)
5369{
5370 gdb_assert (gdbarch != NULL);
5371 gdb_assert (gdbarch->type_align != NULL);
5372 if (gdbarch_debug >= 2)
6cb06a8c 5373 gdb_printf (gdb_stdlog, "gdbarch_type_align called\n");
2b4424c3
TT
5374 return gdbarch->type_align (gdbarch, type);
5375}
5376
5377void
5378set_gdbarch_type_align (struct gdbarch *gdbarch,
adc48a49 5379 gdbarch_type_align_ftype type_align)
2b4424c3
TT
5380{
5381 gdbarch->type_align = type_align;
5382}
5383
aa7ca1bb 5384std::string
bd2b40ac 5385gdbarch_get_pc_address_flags (struct gdbarch *gdbarch, frame_info_ptr frame, CORE_ADDR pc)
aa7ca1bb
AH
5386{
5387 gdb_assert (gdbarch != NULL);
5388 gdb_assert (gdbarch->get_pc_address_flags != NULL);
5389 if (gdbarch_debug >= 2)
6cb06a8c 5390 gdb_printf (gdb_stdlog, "gdbarch_get_pc_address_flags called\n");
aa7ca1bb
AH
5391 return gdbarch->get_pc_address_flags (frame, pc);
5392}
5393
5394void
5395set_gdbarch_get_pc_address_flags (struct gdbarch *gdbarch,
adc48a49 5396 gdbarch_get_pc_address_flags_ftype get_pc_address_flags)
aa7ca1bb
AH
5397{
5398 gdbarch->get_pc_address_flags = get_pc_address_flags;
5399}
5400
7e183d27 5401void
aa95b2d4 5402gdbarch_read_core_file_mappings (struct gdbarch *gdbarch, struct bfd *cbfd, read_core_file_mappings_pre_loop_ftype pre_loop_cb, read_core_file_mappings_loop_ftype loop_cb)
7e183d27
KB
5403{
5404 gdb_assert (gdbarch != NULL);
5405 gdb_assert (gdbarch->read_core_file_mappings != NULL);
5406 if (gdbarch_debug >= 2)
6cb06a8c 5407 gdb_printf (gdb_stdlog, "gdbarch_read_core_file_mappings called\n");
7e183d27
KB
5408 gdbarch->read_core_file_mappings (gdbarch, cbfd, pre_loop_cb, loop_cb);
5409}
5410
5411void
5412set_gdbarch_read_core_file_mappings (struct gdbarch *gdbarch,
adc48a49 5413 gdbarch_read_core_file_mappings_ftype read_core_file_mappings)
7e183d27
KB
5414{
5415 gdbarch->read_core_file_mappings = read_core_file_mappings;
5416}
b93d537f
LM
5417
5418bool
5419gdbarch_use_target_description_from_corefile_notes (struct gdbarch *gdbarch, struct bfd *corefile_bfd)
5420{
5421 gdb_assert (gdbarch != NULL);
5422 gdb_assert (gdbarch->use_target_description_from_corefile_notes != NULL);
5423 if (gdbarch_debug >= 2)
5424 gdb_printf (gdb_stdlog, "gdbarch_use_target_description_from_corefile_notes called\n");
5425 return gdbarch->use_target_description_from_corefile_notes (gdbarch, corefile_bfd);
5426}
5427
5428void
5429set_gdbarch_use_target_description_from_corefile_notes (struct gdbarch *gdbarch,
5430 gdbarch_use_target_description_from_corefile_notes_ftype use_target_description_from_corefile_notes)
5431{
5432 gdbarch->use_target_description_from_corefile_notes = use_target_description_from_corefile_notes;
5433}