2003-11-09 Andrew Cagney <cagney@redhat.com>
[deliverable/binutils-gdb.git] / gdb / gdbarch.c
1 /* *INDENT-OFF* */ /* THIS FILE IS GENERATED */
2
3 /* Dynamic architecture support for GDB, the GNU debugger.
4 Copyright 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
5
6 This file is part of GDB.
7
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2 of the License, or
11 (at your option) any later version.
12
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA. */
22
23 /* This file was created with the aid of ``gdbarch.sh''.
24
25 The Bourne shell script ``gdbarch.sh'' creates the files
26 ``new-gdbarch.c'' and ``new-gdbarch.h and then compares them
27 against the existing ``gdbarch.[hc]''. Any differences found
28 being reported.
29
30 If editing this file, please also run gdbarch.sh and merge any
31 changes into that script. Conversely, when making sweeping changes
32 to this file, modifying gdbarch.sh and using its output may prove
33 easier. */
34
35
36 #include "defs.h"
37 #include "arch-utils.h"
38
39 #include "gdbcmd.h"
40 #include "inferior.h" /* enum CALL_DUMMY_LOCATION et.al. */
41 #include "symcat.h"
42
43 #include "floatformat.h"
44
45 #include "gdb_assert.h"
46 #include "gdb_string.h"
47 #include "gdb-events.h"
48 #include "reggroups.h"
49 #include "osabi.h"
50 #include "symfile.h" /* For entry_point_address. */
51 #include "gdb_obstack.h"
52
53 /* Static function declarations */
54
55 static void alloc_gdbarch_data (struct gdbarch *);
56 static void init_gdbarch_swap (struct gdbarch *);
57 static void clear_gdbarch_swap (struct gdbarch *);
58 static void swapout_gdbarch_swap (struct gdbarch *);
59 static void swapin_gdbarch_swap (struct gdbarch *);
60
61 /* Non-zero if we want to trace architecture code. */
62
63 #ifndef GDBARCH_DEBUG
64 #define GDBARCH_DEBUG 0
65 #endif
66 int gdbarch_debug = GDBARCH_DEBUG;
67
68
69 /* Maintain the struct gdbarch object */
70
71 struct gdbarch
72 {
73 /* Has this architecture been fully initialized? */
74 int initialized_p;
75
76 /* An obstack bound to the lifetime of the architecture. */
77 struct obstack *obstack;
78
79 /* basic architectural information */
80 const struct bfd_arch_info * bfd_arch_info;
81 int byte_order;
82 enum gdb_osabi osabi;
83
84 /* target specific vector. */
85 struct gdbarch_tdep *tdep;
86 gdbarch_dump_tdep_ftype *dump_tdep;
87
88 /* per-architecture data-pointers */
89 unsigned nr_data;
90 void **data;
91
92 /* per-architecture swap-regions */
93 struct gdbarch_swap *swap;
94
95 /* Multi-arch values.
96
97 When extending this structure you must:
98
99 Add the field below.
100
101 Declare set/get functions and define the corresponding
102 macro in gdbarch.h.
103
104 gdbarch_alloc(): If zero/NULL is not a suitable default,
105 initialize the new field.
106
107 verify_gdbarch(): Confirm that the target updated the field
108 correctly.
109
110 gdbarch_dump(): Add a fprintf_unfiltered call so that the new
111 field is dumped out
112
113 ``startup_gdbarch()'': Append an initial value to the static
114 variable (base values on the host's c-type system).
115
116 get_gdbarch(): Implement the set/get functions (probably using
117 the macro's as shortcuts).
118
119 */
120
121 int short_bit;
122 int int_bit;
123 int long_bit;
124 int long_long_bit;
125 int float_bit;
126 int double_bit;
127 int long_double_bit;
128 int ptr_bit;
129 int addr_bit;
130 int bfd_vma_bit;
131 int char_signed;
132 gdbarch_read_pc_ftype *read_pc;
133 gdbarch_write_pc_ftype *write_pc;
134 gdbarch_read_sp_ftype *read_sp;
135 gdbarch_virtual_frame_pointer_ftype *virtual_frame_pointer;
136 gdbarch_pseudo_register_read_ftype *pseudo_register_read;
137 gdbarch_pseudo_register_write_ftype *pseudo_register_write;
138 int num_regs;
139 int num_pseudo_regs;
140 int sp_regnum;
141 int pc_regnum;
142 int ps_regnum;
143 int fp0_regnum;
144 int deprecated_npc_regnum;
145 gdbarch_stab_reg_to_regnum_ftype *stab_reg_to_regnum;
146 gdbarch_ecoff_reg_to_regnum_ftype *ecoff_reg_to_regnum;
147 gdbarch_dwarf_reg_to_regnum_ftype *dwarf_reg_to_regnum;
148 gdbarch_sdb_reg_to_regnum_ftype *sdb_reg_to_regnum;
149 gdbarch_dwarf2_reg_to_regnum_ftype *dwarf2_reg_to_regnum;
150 gdbarch_register_name_ftype *register_name;
151 gdbarch_register_type_ftype *register_type;
152 gdbarch_deprecated_register_virtual_type_ftype *deprecated_register_virtual_type;
153 int deprecated_register_bytes;
154 gdbarch_deprecated_register_byte_ftype *deprecated_register_byte;
155 gdbarch_deprecated_register_raw_size_ftype *deprecated_register_raw_size;
156 gdbarch_deprecated_register_virtual_size_ftype *deprecated_register_virtual_size;
157 int deprecated_max_register_raw_size;
158 int deprecated_max_register_virtual_size;
159 gdbarch_unwind_dummy_id_ftype *unwind_dummy_id;
160 gdbarch_deprecated_save_dummy_frame_tos_ftype *deprecated_save_dummy_frame_tos;
161 int deprecated_fp_regnum;
162 gdbarch_deprecated_target_read_fp_ftype *deprecated_target_read_fp;
163 gdbarch_push_dummy_call_ftype *push_dummy_call;
164 gdbarch_deprecated_push_arguments_ftype *deprecated_push_arguments;
165 int deprecated_use_generic_dummy_frames;
166 gdbarch_deprecated_push_return_address_ftype *deprecated_push_return_address;
167 gdbarch_deprecated_dummy_write_sp_ftype *deprecated_dummy_write_sp;
168 int deprecated_register_size;
169 int call_dummy_location;
170 gdbarch_deprecated_call_dummy_address_ftype *deprecated_call_dummy_address;
171 CORE_ADDR deprecated_call_dummy_start_offset;
172 CORE_ADDR deprecated_call_dummy_breakpoint_offset;
173 int deprecated_call_dummy_length;
174 LONGEST * deprecated_call_dummy_words;
175 int deprecated_sizeof_call_dummy_words;
176 int deprecated_call_dummy_stack_adjust;
177 gdbarch_deprecated_fix_call_dummy_ftype *deprecated_fix_call_dummy;
178 gdbarch_push_dummy_code_ftype *push_dummy_code;
179 gdbarch_deprecated_push_dummy_frame_ftype *deprecated_push_dummy_frame;
180 int deprecated_extra_stack_alignment_needed;
181 gdbarch_deprecated_do_registers_info_ftype *deprecated_do_registers_info;
182 gdbarch_print_registers_info_ftype *print_registers_info;
183 gdbarch_print_float_info_ftype *print_float_info;
184 gdbarch_print_vector_info_ftype *print_vector_info;
185 gdbarch_register_sim_regno_ftype *register_sim_regno;
186 gdbarch_register_bytes_ok_ftype *register_bytes_ok;
187 gdbarch_cannot_fetch_register_ftype *cannot_fetch_register;
188 gdbarch_cannot_store_register_ftype *cannot_store_register;
189 gdbarch_get_longjmp_target_ftype *get_longjmp_target;
190 gdbarch_deprecated_pc_in_call_dummy_ftype *deprecated_pc_in_call_dummy;
191 gdbarch_deprecated_init_frame_pc_first_ftype *deprecated_init_frame_pc_first;
192 gdbarch_deprecated_init_frame_pc_ftype *deprecated_init_frame_pc;
193 int believe_pcc_promotion;
194 int believe_pcc_promotion_type;
195 gdbarch_deprecated_get_saved_register_ftype *deprecated_get_saved_register;
196 gdbarch_deprecated_register_convertible_ftype *deprecated_register_convertible;
197 gdbarch_deprecated_register_convert_to_virtual_ftype *deprecated_register_convert_to_virtual;
198 gdbarch_deprecated_register_convert_to_raw_ftype *deprecated_register_convert_to_raw;
199 gdbarch_convert_register_p_ftype *convert_register_p;
200 gdbarch_register_to_value_ftype *register_to_value;
201 gdbarch_value_to_register_ftype *value_to_register;
202 gdbarch_pointer_to_address_ftype *pointer_to_address;
203 gdbarch_address_to_pointer_ftype *address_to_pointer;
204 gdbarch_integer_to_address_ftype *integer_to_address;
205 gdbarch_deprecated_pop_frame_ftype *deprecated_pop_frame;
206 gdbarch_deprecated_store_struct_return_ftype *deprecated_store_struct_return;
207 gdbarch_return_value_ftype *return_value;
208 gdbarch_return_value_on_stack_ftype *return_value_on_stack;
209 gdbarch_extract_return_value_ftype *extract_return_value;
210 gdbarch_store_return_value_ftype *store_return_value;
211 gdbarch_deprecated_extract_return_value_ftype *deprecated_extract_return_value;
212 gdbarch_deprecated_store_return_value_ftype *deprecated_store_return_value;
213 gdbarch_use_struct_convention_ftype *use_struct_convention;
214 gdbarch_extract_struct_value_address_ftype *extract_struct_value_address;
215 gdbarch_deprecated_extract_struct_value_address_ftype *deprecated_extract_struct_value_address;
216 gdbarch_deprecated_frame_init_saved_regs_ftype *deprecated_frame_init_saved_regs;
217 gdbarch_deprecated_init_extra_frame_info_ftype *deprecated_init_extra_frame_info;
218 gdbarch_skip_prologue_ftype *skip_prologue;
219 gdbarch_prologue_frameless_p_ftype *prologue_frameless_p;
220 gdbarch_inner_than_ftype *inner_than;
221 gdbarch_breakpoint_from_pc_ftype *breakpoint_from_pc;
222 gdbarch_adjust_breakpoint_address_ftype *adjust_breakpoint_address;
223 gdbarch_memory_insert_breakpoint_ftype *memory_insert_breakpoint;
224 gdbarch_memory_remove_breakpoint_ftype *memory_remove_breakpoint;
225 CORE_ADDR decr_pc_after_break;
226 CORE_ADDR function_start_offset;
227 gdbarch_remote_translate_xfer_address_ftype *remote_translate_xfer_address;
228 CORE_ADDR frame_args_skip;
229 gdbarch_frameless_function_invocation_ftype *frameless_function_invocation;
230 gdbarch_deprecated_frame_chain_ftype *deprecated_frame_chain;
231 gdbarch_deprecated_frame_chain_valid_ftype *deprecated_frame_chain_valid;
232 gdbarch_deprecated_frame_saved_pc_ftype *deprecated_frame_saved_pc;
233 gdbarch_unwind_pc_ftype *unwind_pc;
234 gdbarch_unwind_sp_ftype *unwind_sp;
235 gdbarch_deprecated_frame_args_address_ftype *deprecated_frame_args_address;
236 gdbarch_deprecated_frame_locals_address_ftype *deprecated_frame_locals_address;
237 gdbarch_deprecated_saved_pc_after_call_ftype *deprecated_saved_pc_after_call;
238 gdbarch_frame_num_args_ftype *frame_num_args;
239 gdbarch_deprecated_stack_align_ftype *deprecated_stack_align;
240 gdbarch_frame_align_ftype *frame_align;
241 gdbarch_deprecated_reg_struct_has_addr_ftype *deprecated_reg_struct_has_addr;
242 gdbarch_stabs_argument_has_addr_ftype *stabs_argument_has_addr;
243 int frame_red_zone_size;
244 int parm_boundary;
245 const struct floatformat * float_format;
246 const struct floatformat * double_format;
247 const struct floatformat * long_double_format;
248 gdbarch_convert_from_func_ptr_addr_ftype *convert_from_func_ptr_addr;
249 gdbarch_addr_bits_remove_ftype *addr_bits_remove;
250 gdbarch_smash_text_address_ftype *smash_text_address;
251 gdbarch_software_single_step_ftype *software_single_step;
252 gdbarch_print_insn_ftype *print_insn;
253 gdbarch_skip_trampoline_code_ftype *skip_trampoline_code;
254 gdbarch_skip_solib_resolver_ftype *skip_solib_resolver;
255 gdbarch_in_solib_call_trampoline_ftype *in_solib_call_trampoline;
256 gdbarch_in_solib_return_trampoline_ftype *in_solib_return_trampoline;
257 gdbarch_pc_in_sigtramp_ftype *pc_in_sigtramp;
258 gdbarch_sigtramp_start_ftype *sigtramp_start;
259 gdbarch_sigtramp_end_ftype *sigtramp_end;
260 gdbarch_in_function_epilogue_p_ftype *in_function_epilogue_p;
261 gdbarch_construct_inferior_arguments_ftype *construct_inferior_arguments;
262 gdbarch_elf_make_msymbol_special_ftype *elf_make_msymbol_special;
263 gdbarch_coff_make_msymbol_special_ftype *coff_make_msymbol_special;
264 const char * name_of_malloc;
265 int cannot_step_breakpoint;
266 int have_nonsteppable_watchpoint;
267 gdbarch_address_class_type_flags_ftype *address_class_type_flags;
268 gdbarch_address_class_type_flags_to_name_ftype *address_class_type_flags_to_name;
269 gdbarch_address_class_name_to_type_flags_ftype *address_class_name_to_type_flags;
270 gdbarch_register_reggroup_p_ftype *register_reggroup_p;
271 gdbarch_fetch_pointer_argument_ftype *fetch_pointer_argument;
272 gdbarch_regset_from_core_section_ftype *regset_from_core_section;
273 };
274
275
276 /* The default architecture uses host values (for want of a better
277 choice). */
278
279 extern const struct bfd_arch_info bfd_default_arch_struct;
280
281 struct gdbarch startup_gdbarch =
282 {
283 1, /* Always initialized. */
284 NULL, /* The obstack. */
285 /* basic architecture information */
286 &bfd_default_arch_struct, /* bfd_arch_info */
287 BFD_ENDIAN_BIG, /* byte_order */
288 GDB_OSABI_UNKNOWN, /* osabi */
289 /* target specific vector and its dump routine */
290 NULL, NULL,
291 /*per-architecture data-pointers and swap regions */
292 0, NULL, NULL,
293 /* Multi-arch values */
294 8 * sizeof (short), /* short_bit */
295 8 * sizeof (int), /* int_bit */
296 8 * sizeof (long), /* long_bit */
297 8 * sizeof (LONGEST), /* long_long_bit */
298 8 * sizeof (float), /* float_bit */
299 8 * sizeof (double), /* double_bit */
300 8 * sizeof (long double), /* long_double_bit */
301 8 * sizeof (void*), /* ptr_bit */
302 8 * sizeof (void*), /* addr_bit */
303 8 * sizeof (void*), /* bfd_vma_bit */
304 1, /* char_signed */
305 0, /* read_pc */
306 0, /* write_pc */
307 0, /* read_sp */
308 0, /* virtual_frame_pointer */
309 0, /* pseudo_register_read */
310 0, /* pseudo_register_write */
311 0, /* num_regs */
312 0, /* num_pseudo_regs */
313 -1, /* sp_regnum */
314 -1, /* pc_regnum */
315 -1, /* ps_regnum */
316 0, /* fp0_regnum */
317 0, /* deprecated_npc_regnum */
318 0, /* stab_reg_to_regnum */
319 0, /* ecoff_reg_to_regnum */
320 0, /* dwarf_reg_to_regnum */
321 0, /* sdb_reg_to_regnum */
322 0, /* dwarf2_reg_to_regnum */
323 0, /* register_name */
324 0, /* register_type */
325 0, /* deprecated_register_virtual_type */
326 0, /* deprecated_register_bytes */
327 generic_register_byte, /* deprecated_register_byte */
328 generic_register_size, /* deprecated_register_raw_size */
329 generic_register_size, /* deprecated_register_virtual_size */
330 0, /* deprecated_max_register_raw_size */
331 0, /* deprecated_max_register_virtual_size */
332 0, /* unwind_dummy_id */
333 0, /* deprecated_save_dummy_frame_tos */
334 -1, /* deprecated_fp_regnum */
335 0, /* deprecated_target_read_fp */
336 0, /* push_dummy_call */
337 0, /* deprecated_push_arguments */
338 0, /* deprecated_use_generic_dummy_frames */
339 0, /* deprecated_push_return_address */
340 0, /* deprecated_dummy_write_sp */
341 0, /* deprecated_register_size */
342 0, /* call_dummy_location */
343 0, /* deprecated_call_dummy_address */
344 0, /* deprecated_call_dummy_start_offset */
345 0, /* deprecated_call_dummy_breakpoint_offset */
346 0, /* deprecated_call_dummy_length */
347 0, /* deprecated_call_dummy_words */
348 0, /* deprecated_sizeof_call_dummy_words */
349 0, /* deprecated_call_dummy_stack_adjust */
350 0, /* deprecated_fix_call_dummy */
351 0, /* push_dummy_code */
352 0, /* deprecated_push_dummy_frame */
353 0, /* deprecated_extra_stack_alignment_needed */
354 0, /* deprecated_do_registers_info */
355 default_print_registers_info, /* print_registers_info */
356 0, /* print_float_info */
357 0, /* print_vector_info */
358 0, /* register_sim_regno */
359 0, /* register_bytes_ok */
360 0, /* cannot_fetch_register */
361 0, /* cannot_store_register */
362 0, /* get_longjmp_target */
363 generic_pc_in_call_dummy, /* deprecated_pc_in_call_dummy */
364 0, /* deprecated_init_frame_pc_first */
365 0, /* deprecated_init_frame_pc */
366 0, /* believe_pcc_promotion */
367 0, /* believe_pcc_promotion_type */
368 0, /* deprecated_get_saved_register */
369 0, /* deprecated_register_convertible */
370 0, /* deprecated_register_convert_to_virtual */
371 0, /* deprecated_register_convert_to_raw */
372 0, /* convert_register_p */
373 0, /* register_to_value */
374 0, /* value_to_register */
375 0, /* pointer_to_address */
376 0, /* address_to_pointer */
377 0, /* integer_to_address */
378 0, /* deprecated_pop_frame */
379 0, /* deprecated_store_struct_return */
380 0, /* return_value */
381 0, /* return_value_on_stack */
382 0, /* extract_return_value */
383 0, /* store_return_value */
384 0, /* deprecated_extract_return_value */
385 0, /* deprecated_store_return_value */
386 0, /* use_struct_convention */
387 0, /* extract_struct_value_address */
388 0, /* deprecated_extract_struct_value_address */
389 0, /* deprecated_frame_init_saved_regs */
390 0, /* deprecated_init_extra_frame_info */
391 0, /* skip_prologue */
392 0, /* prologue_frameless_p */
393 0, /* inner_than */
394 0, /* breakpoint_from_pc */
395 0, /* adjust_breakpoint_address */
396 0, /* memory_insert_breakpoint */
397 0, /* memory_remove_breakpoint */
398 0, /* decr_pc_after_break */
399 0, /* function_start_offset */
400 generic_remote_translate_xfer_address, /* remote_translate_xfer_address */
401 0, /* frame_args_skip */
402 0, /* frameless_function_invocation */
403 0, /* deprecated_frame_chain */
404 0, /* deprecated_frame_chain_valid */
405 0, /* deprecated_frame_saved_pc */
406 0, /* unwind_pc */
407 0, /* unwind_sp */
408 get_frame_base, /* deprecated_frame_args_address */
409 get_frame_base, /* deprecated_frame_locals_address */
410 0, /* deprecated_saved_pc_after_call */
411 0, /* frame_num_args */
412 0, /* deprecated_stack_align */
413 0, /* frame_align */
414 0, /* deprecated_reg_struct_has_addr */
415 default_stabs_argument_has_addr, /* stabs_argument_has_addr */
416 0, /* frame_red_zone_size */
417 0, /* parm_boundary */
418 0, /* float_format */
419 0, /* double_format */
420 0, /* long_double_format */
421 convert_from_func_ptr_addr_identity, /* convert_from_func_ptr_addr */
422 0, /* addr_bits_remove */
423 0, /* smash_text_address */
424 0, /* software_single_step */
425 0, /* print_insn */
426 0, /* skip_trampoline_code */
427 0, /* skip_solib_resolver */
428 0, /* in_solib_call_trampoline */
429 0, /* in_solib_return_trampoline */
430 0, /* pc_in_sigtramp */
431 0, /* sigtramp_start */
432 0, /* sigtramp_end */
433 generic_in_function_epilogue_p, /* in_function_epilogue_p */
434 construct_inferior_arguments, /* construct_inferior_arguments */
435 0, /* elf_make_msymbol_special */
436 0, /* coff_make_msymbol_special */
437 "malloc", /* name_of_malloc */
438 0, /* cannot_step_breakpoint */
439 0, /* have_nonsteppable_watchpoint */
440 0, /* address_class_type_flags */
441 0, /* address_class_type_flags_to_name */
442 0, /* address_class_name_to_type_flags */
443 default_register_reggroup_p, /* register_reggroup_p */
444 0, /* fetch_pointer_argument */
445 0, /* regset_from_core_section */
446 /* startup_gdbarch() */
447 };
448
449 struct gdbarch *current_gdbarch = &startup_gdbarch;
450
451 /* Do any initialization needed for a non-multiarch configuration
452 after the _initialize_MODULE functions have been run. */
453 void
454 initialize_non_multiarch (void)
455 {
456 alloc_gdbarch_data (&startup_gdbarch);
457 /* Ensure that all swap areas are zeroed so that they again think
458 they are starting from scratch. */
459 clear_gdbarch_swap (&startup_gdbarch);
460 init_gdbarch_swap (&startup_gdbarch);
461 }
462
463
464 /* Create a new ``struct gdbarch'' based on information provided by
465 ``struct gdbarch_info''. */
466
467 struct gdbarch *
468 gdbarch_alloc (const struct gdbarch_info *info,
469 struct gdbarch_tdep *tdep)
470 {
471 /* NOTE: The new architecture variable is named ``current_gdbarch''
472 so that macros such as TARGET_DOUBLE_BIT, when expanded, refer to
473 the current local architecture and not the previous global
474 architecture. This ensures that the new architectures initial
475 values are not influenced by the previous architecture. Once
476 everything is parameterised with gdbarch, this will go away. */
477 struct gdbarch *current_gdbarch;
478
479 /* Create an obstack for allocating all the per-architecture memory,
480 then use that to allocate the architecture vector. */
481 struct obstack *obstack = XMALLOC (struct obstack);
482 obstack_init (obstack);
483 current_gdbarch = obstack_alloc (obstack, sizeof (*current_gdbarch));
484 memset (current_gdbarch, 0, sizeof (*current_gdbarch));
485 current_gdbarch->obstack = obstack;
486
487 alloc_gdbarch_data (current_gdbarch);
488
489 current_gdbarch->tdep = tdep;
490
491 current_gdbarch->bfd_arch_info = info->bfd_arch_info;
492 current_gdbarch->byte_order = info->byte_order;
493 current_gdbarch->osabi = info->osabi;
494
495 /* Force the explicit initialization of these. */
496 current_gdbarch->short_bit = 2*TARGET_CHAR_BIT;
497 current_gdbarch->int_bit = 4*TARGET_CHAR_BIT;
498 current_gdbarch->long_bit = 4*TARGET_CHAR_BIT;
499 current_gdbarch->long_long_bit = 2*TARGET_LONG_BIT;
500 current_gdbarch->float_bit = 4*TARGET_CHAR_BIT;
501 current_gdbarch->double_bit = 8*TARGET_CHAR_BIT;
502 current_gdbarch->long_double_bit = 8*TARGET_CHAR_BIT;
503 current_gdbarch->ptr_bit = TARGET_INT_BIT;
504 current_gdbarch->bfd_vma_bit = TARGET_ARCHITECTURE->bits_per_address;
505 current_gdbarch->char_signed = -1;
506 current_gdbarch->write_pc = generic_target_write_pc;
507 current_gdbarch->virtual_frame_pointer = legacy_virtual_frame_pointer;
508 current_gdbarch->num_regs = -1;
509 current_gdbarch->sp_regnum = -1;
510 current_gdbarch->pc_regnum = -1;
511 current_gdbarch->ps_regnum = -1;
512 current_gdbarch->fp0_regnum = -1;
513 current_gdbarch->deprecated_npc_regnum = -1;
514 current_gdbarch->stab_reg_to_regnum = no_op_reg_to_regnum;
515 current_gdbarch->ecoff_reg_to_regnum = no_op_reg_to_regnum;
516 current_gdbarch->dwarf_reg_to_regnum = no_op_reg_to_regnum;
517 current_gdbarch->sdb_reg_to_regnum = no_op_reg_to_regnum;
518 current_gdbarch->dwarf2_reg_to_regnum = no_op_reg_to_regnum;
519 current_gdbarch->deprecated_register_byte = generic_register_byte;
520 current_gdbarch->deprecated_register_raw_size = generic_register_size;
521 current_gdbarch->deprecated_register_virtual_size = generic_register_size;
522 current_gdbarch->deprecated_fp_regnum = -1;
523 current_gdbarch->deprecated_use_generic_dummy_frames = 1;
524 current_gdbarch->call_dummy_location = AT_ENTRY_POINT;
525 current_gdbarch->deprecated_call_dummy_words = legacy_call_dummy_words;
526 current_gdbarch->deprecated_sizeof_call_dummy_words = legacy_sizeof_call_dummy_words;
527 current_gdbarch->print_registers_info = default_print_registers_info;
528 current_gdbarch->register_sim_regno = legacy_register_sim_regno;
529 current_gdbarch->cannot_fetch_register = cannot_register_not;
530 current_gdbarch->cannot_store_register = cannot_register_not;
531 current_gdbarch->deprecated_pc_in_call_dummy = generic_pc_in_call_dummy;
532 current_gdbarch->deprecated_register_convertible = deprecated_register_convertible_not;
533 current_gdbarch->convert_register_p = legacy_convert_register_p;
534 current_gdbarch->register_to_value = legacy_register_to_value;
535 current_gdbarch->value_to_register = legacy_value_to_register;
536 current_gdbarch->pointer_to_address = unsigned_pointer_to_address;
537 current_gdbarch->address_to_pointer = unsigned_address_to_pointer;
538 current_gdbarch->return_value_on_stack = generic_return_value_on_stack_not;
539 current_gdbarch->extract_return_value = legacy_extract_return_value;
540 current_gdbarch->store_return_value = legacy_store_return_value;
541 current_gdbarch->use_struct_convention = generic_use_struct_convention;
542 current_gdbarch->prologue_frameless_p = generic_prologue_frameless_p;
543 current_gdbarch->memory_insert_breakpoint = default_memory_insert_breakpoint;
544 current_gdbarch->memory_remove_breakpoint = default_memory_remove_breakpoint;
545 current_gdbarch->decr_pc_after_break = -1;
546 current_gdbarch->function_start_offset = -1;
547 current_gdbarch->remote_translate_xfer_address = generic_remote_translate_xfer_address;
548 current_gdbarch->frame_args_skip = -1;
549 current_gdbarch->frameless_function_invocation = generic_frameless_function_invocation_not;
550 current_gdbarch->deprecated_frame_args_address = get_frame_base;
551 current_gdbarch->deprecated_frame_locals_address = get_frame_base;
552 current_gdbarch->stabs_argument_has_addr = default_stabs_argument_has_addr;
553 current_gdbarch->convert_from_func_ptr_addr = convert_from_func_ptr_addr_identity;
554 current_gdbarch->addr_bits_remove = core_addr_identity;
555 current_gdbarch->smash_text_address = core_addr_identity;
556 current_gdbarch->skip_trampoline_code = generic_skip_trampoline_code;
557 current_gdbarch->skip_solib_resolver = generic_skip_solib_resolver;
558 current_gdbarch->in_solib_call_trampoline = generic_in_solib_call_trampoline;
559 current_gdbarch->in_solib_return_trampoline = generic_in_solib_return_trampoline;
560 current_gdbarch->pc_in_sigtramp = legacy_pc_in_sigtramp;
561 current_gdbarch->in_function_epilogue_p = generic_in_function_epilogue_p;
562 current_gdbarch->construct_inferior_arguments = construct_inferior_arguments;
563 current_gdbarch->elf_make_msymbol_special = default_elf_make_msymbol_special;
564 current_gdbarch->coff_make_msymbol_special = default_coff_make_msymbol_special;
565 current_gdbarch->name_of_malloc = "malloc";
566 current_gdbarch->register_reggroup_p = default_register_reggroup_p;
567 /* gdbarch_alloc() */
568
569 return current_gdbarch;
570 }
571
572
573 /* Allocate extra space using the per-architecture obstack. */
574
575 void *
576 gdbarch_obstack_zalloc (struct gdbarch *arch, long size)
577 {
578 void *data = obstack_alloc (arch->obstack, size);
579 memset (data, 0, size);
580 return data;
581 }
582
583
584 /* Free a gdbarch struct. This should never happen in normal
585 operation --- once you've created a gdbarch, you keep it around.
586 However, if an architecture's init function encounters an error
587 building the structure, it may need to clean up a partially
588 constructed gdbarch. */
589
590 void
591 gdbarch_free (struct gdbarch *arch)
592 {
593 struct obstack *obstack;
594 gdb_assert (arch != NULL);
595 gdb_assert (!arch->initialized_p);
596 obstack = arch->obstack;
597 obstack_free (obstack, 0); /* Includes the ARCH. */
598 xfree (obstack);
599 }
600
601
602 /* Ensure that all values in a GDBARCH are reasonable. */
603
604 /* NOTE/WARNING: The parameter is called ``current_gdbarch'' so that it
605 just happens to match the global variable ``current_gdbarch''. That
606 way macros refering to that variable get the local and not the global
607 version - ulgh. Once everything is parameterised with gdbarch, this
608 will go away. */
609
610 static void
611 verify_gdbarch (struct gdbarch *current_gdbarch)
612 {
613 struct ui_file *log;
614 struct cleanup *cleanups;
615 long dummy;
616 char *buf;
617 log = mem_fileopen ();
618 cleanups = make_cleanup_ui_file_delete (log);
619 /* fundamental */
620 if (current_gdbarch->byte_order == BFD_ENDIAN_UNKNOWN)
621 fprintf_unfiltered (log, "\n\tbyte-order");
622 if (current_gdbarch->bfd_arch_info == NULL)
623 fprintf_unfiltered (log, "\n\tbfd_arch_info");
624 /* Check those that need to be defined for the given multi-arch level. */
625 /* Skip verify of short_bit, invalid_p == 0 */
626 /* Skip verify of int_bit, invalid_p == 0 */
627 /* Skip verify of long_bit, invalid_p == 0 */
628 /* Skip verify of long_long_bit, invalid_p == 0 */
629 /* Skip verify of float_bit, invalid_p == 0 */
630 /* Skip verify of double_bit, invalid_p == 0 */
631 /* Skip verify of long_double_bit, invalid_p == 0 */
632 /* Skip verify of ptr_bit, invalid_p == 0 */
633 if (current_gdbarch->addr_bit == 0)
634 current_gdbarch->addr_bit = TARGET_PTR_BIT;
635 /* Skip verify of bfd_vma_bit, invalid_p == 0 */
636 if (current_gdbarch->char_signed == -1)
637 current_gdbarch->char_signed = 1;
638 /* Skip verify of read_pc, has predicate */
639 /* Skip verify of write_pc, invalid_p == 0 */
640 /* Skip verify of read_sp, has predicate */
641 /* Skip verify of virtual_frame_pointer, invalid_p == 0 */
642 /* Skip verify of pseudo_register_read, has predicate */
643 /* Skip verify of pseudo_register_write, has predicate */
644 if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
645 && (current_gdbarch->num_regs == -1))
646 fprintf_unfiltered (log, "\n\tnum_regs");
647 /* Skip verify of num_pseudo_regs, invalid_p == 0 */
648 /* Skip verify of sp_regnum, invalid_p == 0 */
649 /* Skip verify of pc_regnum, invalid_p == 0 */
650 /* Skip verify of ps_regnum, invalid_p == 0 */
651 /* Skip verify of fp0_regnum, invalid_p == 0 */
652 /* Skip verify of deprecated_npc_regnum, invalid_p == 0 */
653 /* Skip verify of stab_reg_to_regnum, invalid_p == 0 */
654 /* Skip verify of ecoff_reg_to_regnum, invalid_p == 0 */
655 /* Skip verify of dwarf_reg_to_regnum, invalid_p == 0 */
656 /* Skip verify of sdb_reg_to_regnum, invalid_p == 0 */
657 /* Skip verify of dwarf2_reg_to_regnum, invalid_p == 0 */
658 /* Skip verify of register_type, has predicate */
659 /* Skip verify of deprecated_register_virtual_type, has predicate */
660 /* Skip verify of deprecated_register_byte, has predicate */
661 /* Skip verify of deprecated_register_raw_size, has predicate */
662 /* Skip verify of deprecated_register_virtual_size, has predicate */
663 /* Skip verify of deprecated_max_register_raw_size, has predicate */
664 /* Skip verify of deprecated_max_register_virtual_size, has predicate */
665 /* Skip verify of unwind_dummy_id, has predicate */
666 /* Skip verify of deprecated_save_dummy_frame_tos, has predicate */
667 /* Skip verify of deprecated_fp_regnum, invalid_p == 0 */
668 /* Skip verify of deprecated_target_read_fp, has predicate */
669 /* Skip verify of push_dummy_call, has predicate */
670 /* Skip verify of deprecated_push_arguments, has predicate */
671 /* Skip verify of deprecated_use_generic_dummy_frames, invalid_p == 0 */
672 /* Skip verify of deprecated_push_return_address, has predicate */
673 /* Skip verify of deprecated_dummy_write_sp, has predicate */
674 /* Skip verify of call_dummy_location, invalid_p == 0 */
675 /* Skip verify of deprecated_call_dummy_address, has predicate */
676 /* Skip verify of deprecated_call_dummy_words, invalid_p == 0 */
677 /* Skip verify of deprecated_sizeof_call_dummy_words, invalid_p == 0 */
678 /* Skip verify of deprecated_call_dummy_stack_adjust, has predicate */
679 /* Skip verify of deprecated_fix_call_dummy, has predicate */
680 /* Skip verify of push_dummy_code, has predicate */
681 /* Skip verify of deprecated_push_dummy_frame, has predicate */
682 /* Skip verify of deprecated_extra_stack_alignment_needed, invalid_p == 0 */
683 /* Skip verify of deprecated_do_registers_info, has predicate */
684 /* Skip verify of print_registers_info, invalid_p == 0 */
685 /* Skip verify of print_float_info, has predicate */
686 /* Skip verify of print_vector_info, has predicate */
687 /* Skip verify of register_sim_regno, invalid_p == 0 */
688 /* Skip verify of register_bytes_ok, has predicate */
689 /* Skip verify of cannot_fetch_register, invalid_p == 0 */
690 /* Skip verify of cannot_store_register, invalid_p == 0 */
691 /* Skip verify of get_longjmp_target, has predicate */
692 /* Skip verify of deprecated_pc_in_call_dummy, has predicate */
693 /* Skip verify of deprecated_init_frame_pc_first, has predicate */
694 /* Skip verify of deprecated_init_frame_pc, has predicate */
695 /* Skip verify of deprecated_get_saved_register, has predicate */
696 /* Skip verify of deprecated_register_convertible, invalid_p == 0 */
697 /* Skip verify of deprecated_register_convert_to_virtual, invalid_p == 0 */
698 /* Skip verify of deprecated_register_convert_to_raw, invalid_p == 0 */
699 /* Skip verify of convert_register_p, invalid_p == 0 */
700 /* Skip verify of register_to_value, invalid_p == 0 */
701 /* Skip verify of value_to_register, invalid_p == 0 */
702 /* Skip verify of pointer_to_address, invalid_p == 0 */
703 /* Skip verify of address_to_pointer, invalid_p == 0 */
704 /* Skip verify of integer_to_address, has predicate */
705 /* Skip verify of deprecated_pop_frame, has predicate */
706 /* Skip verify of deprecated_store_struct_return, has predicate */
707 /* Skip verify of return_value, has predicate */
708 /* Skip verify of return_value_on_stack, invalid_p == 0 */
709 /* Skip verify of extract_return_value, invalid_p == 0 */
710 /* Skip verify of store_return_value, invalid_p == 0 */
711 /* Skip verify of use_struct_convention, invalid_p == 0 */
712 /* Skip verify of extract_struct_value_address, has predicate */
713 /* Skip verify of deprecated_extract_struct_value_address, has predicate */
714 /* Skip verify of deprecated_frame_init_saved_regs, has predicate */
715 /* Skip verify of deprecated_init_extra_frame_info, has predicate */
716 if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
717 && (current_gdbarch->skip_prologue == 0))
718 fprintf_unfiltered (log, "\n\tskip_prologue");
719 /* Skip verify of prologue_frameless_p, invalid_p == 0 */
720 if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
721 && (current_gdbarch->inner_than == 0))
722 fprintf_unfiltered (log, "\n\tinner_than");
723 if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
724 && (current_gdbarch->breakpoint_from_pc == 0))
725 fprintf_unfiltered (log, "\n\tbreakpoint_from_pc");
726 /* Skip verify of adjust_breakpoint_address, has predicate */
727 /* Skip verify of memory_insert_breakpoint, invalid_p == 0 */
728 /* Skip verify of memory_remove_breakpoint, invalid_p == 0 */
729 if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
730 && (current_gdbarch->decr_pc_after_break == -1))
731 fprintf_unfiltered (log, "\n\tdecr_pc_after_break");
732 if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
733 && (current_gdbarch->function_start_offset == -1))
734 fprintf_unfiltered (log, "\n\tfunction_start_offset");
735 /* Skip verify of remote_translate_xfer_address, invalid_p == 0 */
736 if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
737 && (current_gdbarch->frame_args_skip == -1))
738 fprintf_unfiltered (log, "\n\tframe_args_skip");
739 /* Skip verify of frameless_function_invocation, invalid_p == 0 */
740 /* Skip verify of deprecated_frame_chain, has predicate */
741 /* Skip verify of deprecated_frame_chain_valid, has predicate */
742 /* Skip verify of deprecated_frame_saved_pc, has predicate */
743 /* Skip verify of unwind_pc, has predicate */
744 /* Skip verify of unwind_sp, has predicate */
745 /* Skip verify of deprecated_frame_args_address, has predicate */
746 /* Skip verify of deprecated_frame_locals_address, has predicate */
747 /* Skip verify of deprecated_saved_pc_after_call, has predicate */
748 /* Skip verify of frame_num_args, has predicate */
749 /* Skip verify of deprecated_stack_align, has predicate */
750 /* Skip verify of frame_align, has predicate */
751 /* Skip verify of deprecated_reg_struct_has_addr, has predicate */
752 /* Skip verify of stabs_argument_has_addr, invalid_p == 0 */
753 if (current_gdbarch->float_format == 0)
754 current_gdbarch->float_format = default_float_format (current_gdbarch);
755 if (current_gdbarch->double_format == 0)
756 current_gdbarch->double_format = default_double_format (current_gdbarch);
757 if (current_gdbarch->long_double_format == 0)
758 current_gdbarch->long_double_format = default_double_format (current_gdbarch);
759 /* Skip verify of convert_from_func_ptr_addr, invalid_p == 0 */
760 /* Skip verify of addr_bits_remove, invalid_p == 0 */
761 /* Skip verify of smash_text_address, invalid_p == 0 */
762 /* Skip verify of software_single_step, has predicate */
763 if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
764 && (current_gdbarch->print_insn == 0))
765 fprintf_unfiltered (log, "\n\tprint_insn");
766 /* Skip verify of skip_trampoline_code, invalid_p == 0 */
767 /* Skip verify of skip_solib_resolver, invalid_p == 0 */
768 /* Skip verify of in_solib_call_trampoline, invalid_p == 0 */
769 /* Skip verify of in_solib_return_trampoline, invalid_p == 0 */
770 /* Skip verify of pc_in_sigtramp, invalid_p == 0 */
771 /* Skip verify of sigtramp_start, has predicate */
772 /* Skip verify of sigtramp_end, has predicate */
773 /* Skip verify of in_function_epilogue_p, invalid_p == 0 */
774 /* Skip verify of construct_inferior_arguments, invalid_p == 0 */
775 /* Skip verify of elf_make_msymbol_special, invalid_p == 0 */
776 /* Skip verify of coff_make_msymbol_special, invalid_p == 0 */
777 /* Skip verify of name_of_malloc, invalid_p == 0 */
778 /* Skip verify of cannot_step_breakpoint, invalid_p == 0 */
779 /* Skip verify of have_nonsteppable_watchpoint, invalid_p == 0 */
780 /* Skip verify of address_class_type_flags, has predicate */
781 /* Skip verify of address_class_type_flags_to_name, has predicate */
782 /* Skip verify of address_class_name_to_type_flags, has predicate */
783 /* Skip verify of register_reggroup_p, invalid_p == 0 */
784 /* Skip verify of fetch_pointer_argument, has predicate */
785 /* Skip verify of regset_from_core_section, has predicate */
786 buf = ui_file_xstrdup (log, &dummy);
787 make_cleanup (xfree, buf);
788 if (strlen (buf) > 0)
789 internal_error (__FILE__, __LINE__,
790 "verify_gdbarch: the following are invalid ...%s",
791 buf);
792 do_cleanups (cleanups);
793 }
794
795
796 /* Print out the details of the current architecture. */
797
798 /* NOTE/WARNING: The parameter is called ``current_gdbarch'' so that it
799 just happens to match the global variable ``current_gdbarch''. That
800 way macros refering to that variable get the local and not the global
801 version - ulgh. Once everything is parameterised with gdbarch, this
802 will go away. */
803
804 void
805 gdbarch_dump (struct gdbarch *current_gdbarch, struct ui_file *file)
806 {
807 fprintf_unfiltered (file,
808 "gdbarch_dump: GDB_MULTI_ARCH = %d\n",
809 GDB_MULTI_ARCH);
810 fprintf_unfiltered (file,
811 "gdbarch_dump: convert_from_func_ptr_addr = 0x%08lx\n",
812 (long) current_gdbarch->convert_from_func_ptr_addr);
813 fprintf_unfiltered (file,
814 "gdbarch_dump: gdbarch_frame_align_p() = %d\n",
815 gdbarch_frame_align_p (current_gdbarch));
816 fprintf_unfiltered (file,
817 "gdbarch_dump: frame_align = 0x%08lx\n",
818 (long) current_gdbarch->frame_align);
819 fprintf_unfiltered (file,
820 "gdbarch_dump: gdbarch_regset_from_core_section_p() = %d\n",
821 gdbarch_regset_from_core_section_p (current_gdbarch));
822 fprintf_unfiltered (file,
823 "gdbarch_dump: regset_from_core_section = 0x%08lx\n",
824 (long) current_gdbarch->regset_from_core_section);
825 fprintf_unfiltered (file,
826 "gdbarch_dump: gdbarch_return_value_p() = %d\n",
827 gdbarch_return_value_p (current_gdbarch));
828 fprintf_unfiltered (file,
829 "gdbarch_dump: return_value = 0x%08lx\n",
830 (long) current_gdbarch->return_value);
831 fprintf_unfiltered (file,
832 "gdbarch_dump: in_function_epilogue_p = 0x%08lx\n",
833 (long) current_gdbarch->in_function_epilogue_p);
834 fprintf_unfiltered (file,
835 "gdbarch_dump: register_reggroup_p = 0x%08lx\n",
836 (long) current_gdbarch->register_reggroup_p);
837 fprintf_unfiltered (file,
838 "gdbarch_dump: stabs_argument_has_addr = 0x%08lx\n",
839 (long) current_gdbarch->stabs_argument_has_addr);
840 fprintf_unfiltered (file,
841 "gdbarch_dump: gdbarch_pseudo_register_read_p() = %d\n",
842 gdbarch_pseudo_register_read_p (current_gdbarch));
843 fprintf_unfiltered (file,
844 "gdbarch_dump: pseudo_register_read = 0x%08lx\n",
845 (long) current_gdbarch->pseudo_register_read);
846 fprintf_unfiltered (file,
847 "gdbarch_dump: gdbarch_pseudo_register_write_p() = %d\n",
848 gdbarch_pseudo_register_write_p (current_gdbarch));
849 fprintf_unfiltered (file,
850 "gdbarch_dump: pseudo_register_write = 0x%08lx\n",
851 (long) current_gdbarch->pseudo_register_write);
852 fprintf_unfiltered (file,
853 "gdbarch_dump: gdbarch_address_class_name_to_type_flags_p() = %d\n",
854 gdbarch_address_class_name_to_type_flags_p (current_gdbarch));
855 fprintf_unfiltered (file,
856 "gdbarch_dump: address_class_name_to_type_flags = 0x%08lx\n",
857 (long) current_gdbarch->address_class_name_to_type_flags);
858 #ifdef ADDRESS_CLASS_TYPE_FLAGS_P
859 fprintf_unfiltered (file,
860 "gdbarch_dump: %s # %s\n",
861 "ADDRESS_CLASS_TYPE_FLAGS_P()",
862 XSTRING (ADDRESS_CLASS_TYPE_FLAGS_P ()));
863 fprintf_unfiltered (file,
864 "gdbarch_dump: ADDRESS_CLASS_TYPE_FLAGS_P() = %d\n",
865 ADDRESS_CLASS_TYPE_FLAGS_P ());
866 #endif
867 #ifdef ADDRESS_CLASS_TYPE_FLAGS
868 fprintf_unfiltered (file,
869 "gdbarch_dump: %s # %s\n",
870 "ADDRESS_CLASS_TYPE_FLAGS(byte_size, dwarf2_addr_class)",
871 XSTRING (ADDRESS_CLASS_TYPE_FLAGS (byte_size, dwarf2_addr_class)));
872 fprintf_unfiltered (file,
873 "gdbarch_dump: ADDRESS_CLASS_TYPE_FLAGS = <0x%08lx>\n",
874 (long) current_gdbarch->address_class_type_flags
875 /*ADDRESS_CLASS_TYPE_FLAGS ()*/);
876 #endif
877 fprintf_unfiltered (file,
878 "gdbarch_dump: gdbarch_address_class_type_flags_to_name_p() = %d\n",
879 gdbarch_address_class_type_flags_to_name_p (current_gdbarch));
880 fprintf_unfiltered (file,
881 "gdbarch_dump: address_class_type_flags_to_name = 0x%08lx\n",
882 (long) current_gdbarch->address_class_type_flags_to_name);
883 #ifdef ADDRESS_TO_POINTER
884 fprintf_unfiltered (file,
885 "gdbarch_dump: %s # %s\n",
886 "ADDRESS_TO_POINTER(type, buf, addr)",
887 XSTRING (ADDRESS_TO_POINTER (type, buf, addr)));
888 fprintf_unfiltered (file,
889 "gdbarch_dump: ADDRESS_TO_POINTER = <0x%08lx>\n",
890 (long) current_gdbarch->address_to_pointer
891 /*ADDRESS_TO_POINTER ()*/);
892 #endif
893 #ifdef ADDR_BITS_REMOVE
894 fprintf_unfiltered (file,
895 "gdbarch_dump: %s # %s\n",
896 "ADDR_BITS_REMOVE(addr)",
897 XSTRING (ADDR_BITS_REMOVE (addr)));
898 fprintf_unfiltered (file,
899 "gdbarch_dump: ADDR_BITS_REMOVE = <0x%08lx>\n",
900 (long) current_gdbarch->addr_bits_remove
901 /*ADDR_BITS_REMOVE ()*/);
902 #endif
903 fprintf_unfiltered (file,
904 "gdbarch_dump: gdbarch_adjust_breakpoint_address_p() = %d\n",
905 gdbarch_adjust_breakpoint_address_p (current_gdbarch));
906 fprintf_unfiltered (file,
907 "gdbarch_dump: adjust_breakpoint_address = 0x%08lx\n",
908 (long) current_gdbarch->adjust_breakpoint_address);
909 #ifdef BELIEVE_PCC_PROMOTION
910 fprintf_unfiltered (file,
911 "gdbarch_dump: BELIEVE_PCC_PROMOTION # %s\n",
912 XSTRING (BELIEVE_PCC_PROMOTION));
913 fprintf_unfiltered (file,
914 "gdbarch_dump: BELIEVE_PCC_PROMOTION = %d\n",
915 BELIEVE_PCC_PROMOTION);
916 #endif
917 #ifdef BELIEVE_PCC_PROMOTION_TYPE
918 fprintf_unfiltered (file,
919 "gdbarch_dump: BELIEVE_PCC_PROMOTION_TYPE # %s\n",
920 XSTRING (BELIEVE_PCC_PROMOTION_TYPE));
921 fprintf_unfiltered (file,
922 "gdbarch_dump: BELIEVE_PCC_PROMOTION_TYPE = %d\n",
923 BELIEVE_PCC_PROMOTION_TYPE);
924 #endif
925 #ifdef BREAKPOINT_FROM_PC
926 fprintf_unfiltered (file,
927 "gdbarch_dump: %s # %s\n",
928 "BREAKPOINT_FROM_PC(pcptr, lenptr)",
929 XSTRING (BREAKPOINT_FROM_PC (pcptr, lenptr)));
930 fprintf_unfiltered (file,
931 "gdbarch_dump: BREAKPOINT_FROM_PC = <0x%08lx>\n",
932 (long) current_gdbarch->breakpoint_from_pc
933 /*BREAKPOINT_FROM_PC ()*/);
934 #endif
935 #ifdef CALL_DUMMY_LOCATION
936 fprintf_unfiltered (file,
937 "gdbarch_dump: CALL_DUMMY_LOCATION # %s\n",
938 XSTRING (CALL_DUMMY_LOCATION));
939 fprintf_unfiltered (file,
940 "gdbarch_dump: CALL_DUMMY_LOCATION = %d\n",
941 CALL_DUMMY_LOCATION);
942 #endif
943 #ifdef CANNOT_FETCH_REGISTER
944 fprintf_unfiltered (file,
945 "gdbarch_dump: %s # %s\n",
946 "CANNOT_FETCH_REGISTER(regnum)",
947 XSTRING (CANNOT_FETCH_REGISTER (regnum)));
948 fprintf_unfiltered (file,
949 "gdbarch_dump: CANNOT_FETCH_REGISTER = <0x%08lx>\n",
950 (long) current_gdbarch->cannot_fetch_register
951 /*CANNOT_FETCH_REGISTER ()*/);
952 #endif
953 #ifdef CANNOT_STEP_BREAKPOINT
954 fprintf_unfiltered (file,
955 "gdbarch_dump: CANNOT_STEP_BREAKPOINT # %s\n",
956 XSTRING (CANNOT_STEP_BREAKPOINT));
957 fprintf_unfiltered (file,
958 "gdbarch_dump: CANNOT_STEP_BREAKPOINT = %d\n",
959 CANNOT_STEP_BREAKPOINT);
960 #endif
961 #ifdef CANNOT_STORE_REGISTER
962 fprintf_unfiltered (file,
963 "gdbarch_dump: %s # %s\n",
964 "CANNOT_STORE_REGISTER(regnum)",
965 XSTRING (CANNOT_STORE_REGISTER (regnum)));
966 fprintf_unfiltered (file,
967 "gdbarch_dump: CANNOT_STORE_REGISTER = <0x%08lx>\n",
968 (long) current_gdbarch->cannot_store_register
969 /*CANNOT_STORE_REGISTER ()*/);
970 #endif
971 #ifdef COFF_MAKE_MSYMBOL_SPECIAL
972 fprintf_unfiltered (file,
973 "gdbarch_dump: %s # %s\n",
974 "COFF_MAKE_MSYMBOL_SPECIAL(val, msym)",
975 XSTRING (COFF_MAKE_MSYMBOL_SPECIAL (val, msym)));
976 fprintf_unfiltered (file,
977 "gdbarch_dump: COFF_MAKE_MSYMBOL_SPECIAL = <0x%08lx>\n",
978 (long) current_gdbarch->coff_make_msymbol_special
979 /*COFF_MAKE_MSYMBOL_SPECIAL ()*/);
980 #endif
981 fprintf_unfiltered (file,
982 "gdbarch_dump: construct_inferior_arguments = 0x%08lx\n",
983 (long) current_gdbarch->construct_inferior_arguments);
984 #ifdef CONVERT_REGISTER_P
985 fprintf_unfiltered (file,
986 "gdbarch_dump: %s # %s\n",
987 "CONVERT_REGISTER_P(regnum, type)",
988 XSTRING (CONVERT_REGISTER_P (regnum, type)));
989 fprintf_unfiltered (file,
990 "gdbarch_dump: CONVERT_REGISTER_P = <0x%08lx>\n",
991 (long) current_gdbarch->convert_register_p
992 /*CONVERT_REGISTER_P ()*/);
993 #endif
994 #ifdef DECR_PC_AFTER_BREAK
995 fprintf_unfiltered (file,
996 "gdbarch_dump: DECR_PC_AFTER_BREAK # %s\n",
997 XSTRING (DECR_PC_AFTER_BREAK));
998 fprintf_unfiltered (file,
999 "gdbarch_dump: DECR_PC_AFTER_BREAK = %ld\n",
1000 (long) DECR_PC_AFTER_BREAK);
1001 #endif
1002 #ifdef DEPRECATED_CALL_DUMMY_ADDRESS_P
1003 fprintf_unfiltered (file,
1004 "gdbarch_dump: %s # %s\n",
1005 "DEPRECATED_CALL_DUMMY_ADDRESS_P()",
1006 XSTRING (DEPRECATED_CALL_DUMMY_ADDRESS_P ()));
1007 fprintf_unfiltered (file,
1008 "gdbarch_dump: DEPRECATED_CALL_DUMMY_ADDRESS_P() = %d\n",
1009 DEPRECATED_CALL_DUMMY_ADDRESS_P ());
1010 #endif
1011 #ifdef DEPRECATED_CALL_DUMMY_ADDRESS
1012 fprintf_unfiltered (file,
1013 "gdbarch_dump: %s # %s\n",
1014 "DEPRECATED_CALL_DUMMY_ADDRESS()",
1015 XSTRING (DEPRECATED_CALL_DUMMY_ADDRESS ()));
1016 fprintf_unfiltered (file,
1017 "gdbarch_dump: DEPRECATED_CALL_DUMMY_ADDRESS = <0x%08lx>\n",
1018 (long) current_gdbarch->deprecated_call_dummy_address
1019 /*DEPRECATED_CALL_DUMMY_ADDRESS ()*/);
1020 #endif
1021 #ifdef DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET
1022 fprintf_unfiltered (file,
1023 "gdbarch_dump: DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET # %s\n",
1024 XSTRING (DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET));
1025 fprintf_unfiltered (file,
1026 "gdbarch_dump: DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET = %ld\n",
1027 (long) DEPRECATED_CALL_DUMMY_BREAKPOINT_OFFSET);
1028 #endif
1029 #ifdef DEPRECATED_CALL_DUMMY_LENGTH
1030 fprintf_unfiltered (file,
1031 "gdbarch_dump: DEPRECATED_CALL_DUMMY_LENGTH # %s\n",
1032 XSTRING (DEPRECATED_CALL_DUMMY_LENGTH));
1033 fprintf_unfiltered (file,
1034 "gdbarch_dump: DEPRECATED_CALL_DUMMY_LENGTH = %d\n",
1035 DEPRECATED_CALL_DUMMY_LENGTH);
1036 #endif
1037 #ifdef DEPRECATED_CALL_DUMMY_STACK_ADJUST_P
1038 fprintf_unfiltered (file,
1039 "gdbarch_dump: %s # %s\n",
1040 "DEPRECATED_CALL_DUMMY_STACK_ADJUST_P()",
1041 XSTRING (DEPRECATED_CALL_DUMMY_STACK_ADJUST_P ()));
1042 fprintf_unfiltered (file,
1043 "gdbarch_dump: DEPRECATED_CALL_DUMMY_STACK_ADJUST_P() = %d\n",
1044 DEPRECATED_CALL_DUMMY_STACK_ADJUST_P ());
1045 #endif
1046 #ifdef DEPRECATED_CALL_DUMMY_STACK_ADJUST
1047 fprintf_unfiltered (file,
1048 "gdbarch_dump: DEPRECATED_CALL_DUMMY_STACK_ADJUST # %s\n",
1049 XSTRING (DEPRECATED_CALL_DUMMY_STACK_ADJUST));
1050 fprintf_unfiltered (file,
1051 "gdbarch_dump: DEPRECATED_CALL_DUMMY_STACK_ADJUST = %d\n",
1052 DEPRECATED_CALL_DUMMY_STACK_ADJUST);
1053 #endif
1054 #ifdef DEPRECATED_CALL_DUMMY_START_OFFSET
1055 fprintf_unfiltered (file,
1056 "gdbarch_dump: DEPRECATED_CALL_DUMMY_START_OFFSET # %s\n",
1057 XSTRING (DEPRECATED_CALL_DUMMY_START_OFFSET));
1058 fprintf_unfiltered (file,
1059 "gdbarch_dump: DEPRECATED_CALL_DUMMY_START_OFFSET = %ld\n",
1060 (long) DEPRECATED_CALL_DUMMY_START_OFFSET);
1061 #endif
1062 #ifdef DEPRECATED_CALL_DUMMY_WORDS
1063 fprintf_unfiltered (file,
1064 "gdbarch_dump: DEPRECATED_CALL_DUMMY_WORDS # %s\n",
1065 XSTRING (DEPRECATED_CALL_DUMMY_WORDS));
1066 fprintf_unfiltered (file,
1067 "gdbarch_dump: DEPRECATED_CALL_DUMMY_WORDS = 0x%08lx\n",
1068 (long) DEPRECATED_CALL_DUMMY_WORDS);
1069 #endif
1070 #ifdef DEPRECATED_DO_REGISTERS_INFO_P
1071 fprintf_unfiltered (file,
1072 "gdbarch_dump: %s # %s\n",
1073 "DEPRECATED_DO_REGISTERS_INFO_P()",
1074 XSTRING (DEPRECATED_DO_REGISTERS_INFO_P ()));
1075 fprintf_unfiltered (file,
1076 "gdbarch_dump: DEPRECATED_DO_REGISTERS_INFO_P() = %d\n",
1077 DEPRECATED_DO_REGISTERS_INFO_P ());
1078 #endif
1079 #ifdef DEPRECATED_DO_REGISTERS_INFO
1080 fprintf_unfiltered (file,
1081 "gdbarch_dump: %s # %s\n",
1082 "DEPRECATED_DO_REGISTERS_INFO(reg_nr, fpregs)",
1083 XSTRING (DEPRECATED_DO_REGISTERS_INFO (reg_nr, fpregs)));
1084 fprintf_unfiltered (file,
1085 "gdbarch_dump: DEPRECATED_DO_REGISTERS_INFO = <0x%08lx>\n",
1086 (long) current_gdbarch->deprecated_do_registers_info
1087 /*DEPRECATED_DO_REGISTERS_INFO ()*/);
1088 #endif
1089 #ifdef DEPRECATED_DUMMY_WRITE_SP_P
1090 fprintf_unfiltered (file,
1091 "gdbarch_dump: %s # %s\n",
1092 "DEPRECATED_DUMMY_WRITE_SP_P()",
1093 XSTRING (DEPRECATED_DUMMY_WRITE_SP_P ()));
1094 fprintf_unfiltered (file,
1095 "gdbarch_dump: DEPRECATED_DUMMY_WRITE_SP_P() = %d\n",
1096 DEPRECATED_DUMMY_WRITE_SP_P ());
1097 #endif
1098 #ifdef DEPRECATED_DUMMY_WRITE_SP
1099 fprintf_unfiltered (file,
1100 "gdbarch_dump: %s # %s\n",
1101 "DEPRECATED_DUMMY_WRITE_SP(val)",
1102 XSTRING (DEPRECATED_DUMMY_WRITE_SP (val)));
1103 fprintf_unfiltered (file,
1104 "gdbarch_dump: DEPRECATED_DUMMY_WRITE_SP = <0x%08lx>\n",
1105 (long) current_gdbarch->deprecated_dummy_write_sp
1106 /*DEPRECATED_DUMMY_WRITE_SP ()*/);
1107 #endif
1108 #ifdef DEPRECATED_EXTRACT_RETURN_VALUE
1109 fprintf_unfiltered (file,
1110 "gdbarch_dump: %s # %s\n",
1111 "DEPRECATED_EXTRACT_RETURN_VALUE(type, regbuf, valbuf)",
1112 XSTRING (DEPRECATED_EXTRACT_RETURN_VALUE (type, regbuf, valbuf)));
1113 fprintf_unfiltered (file,
1114 "gdbarch_dump: DEPRECATED_EXTRACT_RETURN_VALUE = <0x%08lx>\n",
1115 (long) current_gdbarch->deprecated_extract_return_value
1116 /*DEPRECATED_EXTRACT_RETURN_VALUE ()*/);
1117 #endif
1118 #ifdef DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P
1119 fprintf_unfiltered (file,
1120 "gdbarch_dump: %s # %s\n",
1121 "DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P()",
1122 XSTRING (DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P ()));
1123 fprintf_unfiltered (file,
1124 "gdbarch_dump: DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P() = %d\n",
1125 DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS_P ());
1126 #endif
1127 #ifdef DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS
1128 fprintf_unfiltered (file,
1129 "gdbarch_dump: %s # %s\n",
1130 "DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS(regbuf)",
1131 XSTRING (DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS (regbuf)));
1132 fprintf_unfiltered (file,
1133 "gdbarch_dump: DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS = <0x%08lx>\n",
1134 (long) current_gdbarch->deprecated_extract_struct_value_address
1135 /*DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS ()*/);
1136 #endif
1137 #ifdef DEPRECATED_EXTRA_STACK_ALIGNMENT_NEEDED
1138 fprintf_unfiltered (file,
1139 "gdbarch_dump: DEPRECATED_EXTRA_STACK_ALIGNMENT_NEEDED # %s\n",
1140 XSTRING (DEPRECATED_EXTRA_STACK_ALIGNMENT_NEEDED));
1141 fprintf_unfiltered (file,
1142 "gdbarch_dump: DEPRECATED_EXTRA_STACK_ALIGNMENT_NEEDED = %d\n",
1143 DEPRECATED_EXTRA_STACK_ALIGNMENT_NEEDED);
1144 #endif
1145 #ifdef DEPRECATED_FIX_CALL_DUMMY_P
1146 fprintf_unfiltered (file,
1147 "gdbarch_dump: %s # %s\n",
1148 "DEPRECATED_FIX_CALL_DUMMY_P()",
1149 XSTRING (DEPRECATED_FIX_CALL_DUMMY_P ()));
1150 fprintf_unfiltered (file,
1151 "gdbarch_dump: DEPRECATED_FIX_CALL_DUMMY_P() = %d\n",
1152 DEPRECATED_FIX_CALL_DUMMY_P ());
1153 #endif
1154 #ifdef DEPRECATED_FIX_CALL_DUMMY
1155 fprintf_unfiltered (file,
1156 "gdbarch_dump: %s # %s\n",
1157 "DEPRECATED_FIX_CALL_DUMMY(dummy, pc, fun, nargs, args, type, gcc_p)",
1158 XSTRING (DEPRECATED_FIX_CALL_DUMMY (dummy, pc, fun, nargs, args, type, gcc_p)));
1159 fprintf_unfiltered (file,
1160 "gdbarch_dump: DEPRECATED_FIX_CALL_DUMMY = <0x%08lx>\n",
1161 (long) current_gdbarch->deprecated_fix_call_dummy
1162 /*DEPRECATED_FIX_CALL_DUMMY ()*/);
1163 #endif
1164 #ifdef DEPRECATED_FP_REGNUM
1165 fprintf_unfiltered (file,
1166 "gdbarch_dump: DEPRECATED_FP_REGNUM # %s\n",
1167 XSTRING (DEPRECATED_FP_REGNUM));
1168 fprintf_unfiltered (file,
1169 "gdbarch_dump: DEPRECATED_FP_REGNUM = %d\n",
1170 DEPRECATED_FP_REGNUM);
1171 #endif
1172 #ifdef DEPRECATED_FRAME_ARGS_ADDRESS_P
1173 fprintf_unfiltered (file,
1174 "gdbarch_dump: %s # %s\n",
1175 "DEPRECATED_FRAME_ARGS_ADDRESS_P()",
1176 XSTRING (DEPRECATED_FRAME_ARGS_ADDRESS_P ()));
1177 fprintf_unfiltered (file,
1178 "gdbarch_dump: DEPRECATED_FRAME_ARGS_ADDRESS_P() = %d\n",
1179 DEPRECATED_FRAME_ARGS_ADDRESS_P ());
1180 #endif
1181 #ifdef DEPRECATED_FRAME_ARGS_ADDRESS
1182 fprintf_unfiltered (file,
1183 "gdbarch_dump: %s # %s\n",
1184 "DEPRECATED_FRAME_ARGS_ADDRESS(fi)",
1185 XSTRING (DEPRECATED_FRAME_ARGS_ADDRESS (fi)));
1186 fprintf_unfiltered (file,
1187 "gdbarch_dump: DEPRECATED_FRAME_ARGS_ADDRESS = <0x%08lx>\n",
1188 (long) current_gdbarch->deprecated_frame_args_address
1189 /*DEPRECATED_FRAME_ARGS_ADDRESS ()*/);
1190 #endif
1191 #ifdef DEPRECATED_FRAME_CHAIN_P
1192 fprintf_unfiltered (file,
1193 "gdbarch_dump: %s # %s\n",
1194 "DEPRECATED_FRAME_CHAIN_P()",
1195 XSTRING (DEPRECATED_FRAME_CHAIN_P ()));
1196 fprintf_unfiltered (file,
1197 "gdbarch_dump: DEPRECATED_FRAME_CHAIN_P() = %d\n",
1198 DEPRECATED_FRAME_CHAIN_P ());
1199 #endif
1200 #ifdef DEPRECATED_FRAME_CHAIN
1201 fprintf_unfiltered (file,
1202 "gdbarch_dump: %s # %s\n",
1203 "DEPRECATED_FRAME_CHAIN(frame)",
1204 XSTRING (DEPRECATED_FRAME_CHAIN (frame)));
1205 fprintf_unfiltered (file,
1206 "gdbarch_dump: DEPRECATED_FRAME_CHAIN = <0x%08lx>\n",
1207 (long) current_gdbarch->deprecated_frame_chain
1208 /*DEPRECATED_FRAME_CHAIN ()*/);
1209 #endif
1210 #ifdef DEPRECATED_FRAME_CHAIN_VALID_P
1211 fprintf_unfiltered (file,
1212 "gdbarch_dump: %s # %s\n",
1213 "DEPRECATED_FRAME_CHAIN_VALID_P()",
1214 XSTRING (DEPRECATED_FRAME_CHAIN_VALID_P ()));
1215 fprintf_unfiltered (file,
1216 "gdbarch_dump: DEPRECATED_FRAME_CHAIN_VALID_P() = %d\n",
1217 DEPRECATED_FRAME_CHAIN_VALID_P ());
1218 #endif
1219 #ifdef DEPRECATED_FRAME_CHAIN_VALID
1220 fprintf_unfiltered (file,
1221 "gdbarch_dump: %s # %s\n",
1222 "DEPRECATED_FRAME_CHAIN_VALID(chain, thisframe)",
1223 XSTRING (DEPRECATED_FRAME_CHAIN_VALID (chain, thisframe)));
1224 fprintf_unfiltered (file,
1225 "gdbarch_dump: DEPRECATED_FRAME_CHAIN_VALID = <0x%08lx>\n",
1226 (long) current_gdbarch->deprecated_frame_chain_valid
1227 /*DEPRECATED_FRAME_CHAIN_VALID ()*/);
1228 #endif
1229 #ifdef DEPRECATED_FRAME_INIT_SAVED_REGS_P
1230 fprintf_unfiltered (file,
1231 "gdbarch_dump: %s # %s\n",
1232 "DEPRECATED_FRAME_INIT_SAVED_REGS_P()",
1233 XSTRING (DEPRECATED_FRAME_INIT_SAVED_REGS_P ()));
1234 fprintf_unfiltered (file,
1235 "gdbarch_dump: DEPRECATED_FRAME_INIT_SAVED_REGS_P() = %d\n",
1236 DEPRECATED_FRAME_INIT_SAVED_REGS_P ());
1237 #endif
1238 #ifdef DEPRECATED_FRAME_INIT_SAVED_REGS
1239 fprintf_unfiltered (file,
1240 "gdbarch_dump: %s # %s\n",
1241 "DEPRECATED_FRAME_INIT_SAVED_REGS(frame)",
1242 XSTRING (DEPRECATED_FRAME_INIT_SAVED_REGS (frame)));
1243 fprintf_unfiltered (file,
1244 "gdbarch_dump: DEPRECATED_FRAME_INIT_SAVED_REGS = <0x%08lx>\n",
1245 (long) current_gdbarch->deprecated_frame_init_saved_regs
1246 /*DEPRECATED_FRAME_INIT_SAVED_REGS ()*/);
1247 #endif
1248 #ifdef DEPRECATED_FRAME_LOCALS_ADDRESS_P
1249 fprintf_unfiltered (file,
1250 "gdbarch_dump: %s # %s\n",
1251 "DEPRECATED_FRAME_LOCALS_ADDRESS_P()",
1252 XSTRING (DEPRECATED_FRAME_LOCALS_ADDRESS_P ()));
1253 fprintf_unfiltered (file,
1254 "gdbarch_dump: DEPRECATED_FRAME_LOCALS_ADDRESS_P() = %d\n",
1255 DEPRECATED_FRAME_LOCALS_ADDRESS_P ());
1256 #endif
1257 #ifdef DEPRECATED_FRAME_LOCALS_ADDRESS
1258 fprintf_unfiltered (file,
1259 "gdbarch_dump: %s # %s\n",
1260 "DEPRECATED_FRAME_LOCALS_ADDRESS(fi)",
1261 XSTRING (DEPRECATED_FRAME_LOCALS_ADDRESS (fi)));
1262 fprintf_unfiltered (file,
1263 "gdbarch_dump: DEPRECATED_FRAME_LOCALS_ADDRESS = <0x%08lx>\n",
1264 (long) current_gdbarch->deprecated_frame_locals_address
1265 /*DEPRECATED_FRAME_LOCALS_ADDRESS ()*/);
1266 #endif
1267 #ifdef DEPRECATED_FRAME_SAVED_PC_P
1268 fprintf_unfiltered (file,
1269 "gdbarch_dump: %s # %s\n",
1270 "DEPRECATED_FRAME_SAVED_PC_P()",
1271 XSTRING (DEPRECATED_FRAME_SAVED_PC_P ()));
1272 fprintf_unfiltered (file,
1273 "gdbarch_dump: DEPRECATED_FRAME_SAVED_PC_P() = %d\n",
1274 DEPRECATED_FRAME_SAVED_PC_P ());
1275 #endif
1276 #ifdef DEPRECATED_FRAME_SAVED_PC
1277 fprintf_unfiltered (file,
1278 "gdbarch_dump: %s # %s\n",
1279 "DEPRECATED_FRAME_SAVED_PC(fi)",
1280 XSTRING (DEPRECATED_FRAME_SAVED_PC (fi)));
1281 fprintf_unfiltered (file,
1282 "gdbarch_dump: DEPRECATED_FRAME_SAVED_PC = <0x%08lx>\n",
1283 (long) current_gdbarch->deprecated_frame_saved_pc
1284 /*DEPRECATED_FRAME_SAVED_PC ()*/);
1285 #endif
1286 #ifdef DEPRECATED_GET_SAVED_REGISTER_P
1287 fprintf_unfiltered (file,
1288 "gdbarch_dump: %s # %s\n",
1289 "DEPRECATED_GET_SAVED_REGISTER_P()",
1290 XSTRING (DEPRECATED_GET_SAVED_REGISTER_P ()));
1291 fprintf_unfiltered (file,
1292 "gdbarch_dump: DEPRECATED_GET_SAVED_REGISTER_P() = %d\n",
1293 DEPRECATED_GET_SAVED_REGISTER_P ());
1294 #endif
1295 #ifdef DEPRECATED_GET_SAVED_REGISTER
1296 fprintf_unfiltered (file,
1297 "gdbarch_dump: %s # %s\n",
1298 "DEPRECATED_GET_SAVED_REGISTER(raw_buffer, optimized, addrp, frame, regnum, lval)",
1299 XSTRING (DEPRECATED_GET_SAVED_REGISTER (raw_buffer, optimized, addrp, frame, regnum, lval)));
1300 fprintf_unfiltered (file,
1301 "gdbarch_dump: DEPRECATED_GET_SAVED_REGISTER = <0x%08lx>\n",
1302 (long) current_gdbarch->deprecated_get_saved_register
1303 /*DEPRECATED_GET_SAVED_REGISTER ()*/);
1304 #endif
1305 #ifdef DEPRECATED_INIT_EXTRA_FRAME_INFO_P
1306 fprintf_unfiltered (file,
1307 "gdbarch_dump: %s # %s\n",
1308 "DEPRECATED_INIT_EXTRA_FRAME_INFO_P()",
1309 XSTRING (DEPRECATED_INIT_EXTRA_FRAME_INFO_P ()));
1310 fprintf_unfiltered (file,
1311 "gdbarch_dump: DEPRECATED_INIT_EXTRA_FRAME_INFO_P() = %d\n",
1312 DEPRECATED_INIT_EXTRA_FRAME_INFO_P ());
1313 #endif
1314 #ifdef DEPRECATED_INIT_EXTRA_FRAME_INFO
1315 fprintf_unfiltered (file,
1316 "gdbarch_dump: %s # %s\n",
1317 "DEPRECATED_INIT_EXTRA_FRAME_INFO(fromleaf, frame)",
1318 XSTRING (DEPRECATED_INIT_EXTRA_FRAME_INFO (fromleaf, frame)));
1319 fprintf_unfiltered (file,
1320 "gdbarch_dump: DEPRECATED_INIT_EXTRA_FRAME_INFO = <0x%08lx>\n",
1321 (long) current_gdbarch->deprecated_init_extra_frame_info
1322 /*DEPRECATED_INIT_EXTRA_FRAME_INFO ()*/);
1323 #endif
1324 #ifdef DEPRECATED_INIT_FRAME_PC_P
1325 fprintf_unfiltered (file,
1326 "gdbarch_dump: %s # %s\n",
1327 "DEPRECATED_INIT_FRAME_PC_P()",
1328 XSTRING (DEPRECATED_INIT_FRAME_PC_P ()));
1329 fprintf_unfiltered (file,
1330 "gdbarch_dump: DEPRECATED_INIT_FRAME_PC_P() = %d\n",
1331 DEPRECATED_INIT_FRAME_PC_P ());
1332 #endif
1333 #ifdef DEPRECATED_INIT_FRAME_PC
1334 fprintf_unfiltered (file,
1335 "gdbarch_dump: %s # %s\n",
1336 "DEPRECATED_INIT_FRAME_PC(fromleaf, prev)",
1337 XSTRING (DEPRECATED_INIT_FRAME_PC (fromleaf, prev)));
1338 fprintf_unfiltered (file,
1339 "gdbarch_dump: DEPRECATED_INIT_FRAME_PC = <0x%08lx>\n",
1340 (long) current_gdbarch->deprecated_init_frame_pc
1341 /*DEPRECATED_INIT_FRAME_PC ()*/);
1342 #endif
1343 #ifdef DEPRECATED_INIT_FRAME_PC_FIRST_P
1344 fprintf_unfiltered (file,
1345 "gdbarch_dump: %s # %s\n",
1346 "DEPRECATED_INIT_FRAME_PC_FIRST_P()",
1347 XSTRING (DEPRECATED_INIT_FRAME_PC_FIRST_P ()));
1348 fprintf_unfiltered (file,
1349 "gdbarch_dump: DEPRECATED_INIT_FRAME_PC_FIRST_P() = %d\n",
1350 DEPRECATED_INIT_FRAME_PC_FIRST_P ());
1351 #endif
1352 #ifdef DEPRECATED_INIT_FRAME_PC_FIRST
1353 fprintf_unfiltered (file,
1354 "gdbarch_dump: %s # %s\n",
1355 "DEPRECATED_INIT_FRAME_PC_FIRST(fromleaf, prev)",
1356 XSTRING (DEPRECATED_INIT_FRAME_PC_FIRST (fromleaf, prev)));
1357 fprintf_unfiltered (file,
1358 "gdbarch_dump: DEPRECATED_INIT_FRAME_PC_FIRST = <0x%08lx>\n",
1359 (long) current_gdbarch->deprecated_init_frame_pc_first
1360 /*DEPRECATED_INIT_FRAME_PC_FIRST ()*/);
1361 #endif
1362 #ifdef DEPRECATED_MAX_REGISTER_RAW_SIZE_P
1363 fprintf_unfiltered (file,
1364 "gdbarch_dump: %s # %s\n",
1365 "DEPRECATED_MAX_REGISTER_RAW_SIZE_P()",
1366 XSTRING (DEPRECATED_MAX_REGISTER_RAW_SIZE_P ()));
1367 fprintf_unfiltered (file,
1368 "gdbarch_dump: DEPRECATED_MAX_REGISTER_RAW_SIZE_P() = %d\n",
1369 DEPRECATED_MAX_REGISTER_RAW_SIZE_P ());
1370 #endif
1371 #ifdef DEPRECATED_MAX_REGISTER_RAW_SIZE
1372 fprintf_unfiltered (file,
1373 "gdbarch_dump: DEPRECATED_MAX_REGISTER_RAW_SIZE # %s\n",
1374 XSTRING (DEPRECATED_MAX_REGISTER_RAW_SIZE));
1375 fprintf_unfiltered (file,
1376 "gdbarch_dump: DEPRECATED_MAX_REGISTER_RAW_SIZE = %d\n",
1377 DEPRECATED_MAX_REGISTER_RAW_SIZE);
1378 #endif
1379 #ifdef DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P
1380 fprintf_unfiltered (file,
1381 "gdbarch_dump: %s # %s\n",
1382 "DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P()",
1383 XSTRING (DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P ()));
1384 fprintf_unfiltered (file,
1385 "gdbarch_dump: DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P() = %d\n",
1386 DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE_P ());
1387 #endif
1388 #ifdef DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE
1389 fprintf_unfiltered (file,
1390 "gdbarch_dump: DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE # %s\n",
1391 XSTRING (DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE));
1392 fprintf_unfiltered (file,
1393 "gdbarch_dump: DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE = %d\n",
1394 DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE);
1395 #endif
1396 #ifdef DEPRECATED_NPC_REGNUM
1397 fprintf_unfiltered (file,
1398 "gdbarch_dump: DEPRECATED_NPC_REGNUM # %s\n",
1399 XSTRING (DEPRECATED_NPC_REGNUM));
1400 fprintf_unfiltered (file,
1401 "gdbarch_dump: DEPRECATED_NPC_REGNUM = %d\n",
1402 DEPRECATED_NPC_REGNUM);
1403 #endif
1404 #ifdef DEPRECATED_PC_IN_CALL_DUMMY_P
1405 fprintf_unfiltered (file,
1406 "gdbarch_dump: %s # %s\n",
1407 "DEPRECATED_PC_IN_CALL_DUMMY_P()",
1408 XSTRING (DEPRECATED_PC_IN_CALL_DUMMY_P ()));
1409 fprintf_unfiltered (file,
1410 "gdbarch_dump: DEPRECATED_PC_IN_CALL_DUMMY_P() = %d\n",
1411 DEPRECATED_PC_IN_CALL_DUMMY_P ());
1412 #endif
1413 #ifdef DEPRECATED_PC_IN_CALL_DUMMY
1414 fprintf_unfiltered (file,
1415 "gdbarch_dump: %s # %s\n",
1416 "DEPRECATED_PC_IN_CALL_DUMMY(pc, sp, frame_address)",
1417 XSTRING (DEPRECATED_PC_IN_CALL_DUMMY (pc, sp, frame_address)));
1418 fprintf_unfiltered (file,
1419 "gdbarch_dump: DEPRECATED_PC_IN_CALL_DUMMY = <0x%08lx>\n",
1420 (long) current_gdbarch->deprecated_pc_in_call_dummy
1421 /*DEPRECATED_PC_IN_CALL_DUMMY ()*/);
1422 #endif
1423 #ifdef DEPRECATED_POP_FRAME_P
1424 fprintf_unfiltered (file,
1425 "gdbarch_dump: %s # %s\n",
1426 "DEPRECATED_POP_FRAME_P()",
1427 XSTRING (DEPRECATED_POP_FRAME_P ()));
1428 fprintf_unfiltered (file,
1429 "gdbarch_dump: DEPRECATED_POP_FRAME_P() = %d\n",
1430 DEPRECATED_POP_FRAME_P ());
1431 #endif
1432 #ifdef DEPRECATED_POP_FRAME
1433 fprintf_unfiltered (file,
1434 "gdbarch_dump: %s # %s\n",
1435 "DEPRECATED_POP_FRAME(-)",
1436 XSTRING (DEPRECATED_POP_FRAME (-)));
1437 fprintf_unfiltered (file,
1438 "gdbarch_dump: DEPRECATED_POP_FRAME = <0x%08lx>\n",
1439 (long) current_gdbarch->deprecated_pop_frame
1440 /*DEPRECATED_POP_FRAME ()*/);
1441 #endif
1442 #ifdef DEPRECATED_PUSH_ARGUMENTS_P
1443 fprintf_unfiltered (file,
1444 "gdbarch_dump: %s # %s\n",
1445 "DEPRECATED_PUSH_ARGUMENTS_P()",
1446 XSTRING (DEPRECATED_PUSH_ARGUMENTS_P ()));
1447 fprintf_unfiltered (file,
1448 "gdbarch_dump: DEPRECATED_PUSH_ARGUMENTS_P() = %d\n",
1449 DEPRECATED_PUSH_ARGUMENTS_P ());
1450 #endif
1451 #ifdef DEPRECATED_PUSH_ARGUMENTS
1452 fprintf_unfiltered (file,
1453 "gdbarch_dump: %s # %s\n",
1454 "DEPRECATED_PUSH_ARGUMENTS(nargs, args, sp, struct_return, struct_addr)",
1455 XSTRING (DEPRECATED_PUSH_ARGUMENTS (nargs, args, sp, struct_return, struct_addr)));
1456 fprintf_unfiltered (file,
1457 "gdbarch_dump: DEPRECATED_PUSH_ARGUMENTS = <0x%08lx>\n",
1458 (long) current_gdbarch->deprecated_push_arguments
1459 /*DEPRECATED_PUSH_ARGUMENTS ()*/);
1460 #endif
1461 #ifdef DEPRECATED_PUSH_DUMMY_FRAME_P
1462 fprintf_unfiltered (file,
1463 "gdbarch_dump: %s # %s\n",
1464 "DEPRECATED_PUSH_DUMMY_FRAME_P()",
1465 XSTRING (DEPRECATED_PUSH_DUMMY_FRAME_P ()));
1466 fprintf_unfiltered (file,
1467 "gdbarch_dump: DEPRECATED_PUSH_DUMMY_FRAME_P() = %d\n",
1468 DEPRECATED_PUSH_DUMMY_FRAME_P ());
1469 #endif
1470 #ifdef DEPRECATED_PUSH_DUMMY_FRAME
1471 fprintf_unfiltered (file,
1472 "gdbarch_dump: %s # %s\n",
1473 "DEPRECATED_PUSH_DUMMY_FRAME(-)",
1474 XSTRING (DEPRECATED_PUSH_DUMMY_FRAME (-)));
1475 fprintf_unfiltered (file,
1476 "gdbarch_dump: DEPRECATED_PUSH_DUMMY_FRAME = <0x%08lx>\n",
1477 (long) current_gdbarch->deprecated_push_dummy_frame
1478 /*DEPRECATED_PUSH_DUMMY_FRAME ()*/);
1479 #endif
1480 #ifdef DEPRECATED_PUSH_RETURN_ADDRESS_P
1481 fprintf_unfiltered (file,
1482 "gdbarch_dump: %s # %s\n",
1483 "DEPRECATED_PUSH_RETURN_ADDRESS_P()",
1484 XSTRING (DEPRECATED_PUSH_RETURN_ADDRESS_P ()));
1485 fprintf_unfiltered (file,
1486 "gdbarch_dump: DEPRECATED_PUSH_RETURN_ADDRESS_P() = %d\n",
1487 DEPRECATED_PUSH_RETURN_ADDRESS_P ());
1488 #endif
1489 #ifdef DEPRECATED_PUSH_RETURN_ADDRESS
1490 fprintf_unfiltered (file,
1491 "gdbarch_dump: %s # %s\n",
1492 "DEPRECATED_PUSH_RETURN_ADDRESS(pc, sp)",
1493 XSTRING (DEPRECATED_PUSH_RETURN_ADDRESS (pc, sp)));
1494 fprintf_unfiltered (file,
1495 "gdbarch_dump: DEPRECATED_PUSH_RETURN_ADDRESS = <0x%08lx>\n",
1496 (long) current_gdbarch->deprecated_push_return_address
1497 /*DEPRECATED_PUSH_RETURN_ADDRESS ()*/);
1498 #endif
1499 #ifdef DEPRECATED_REGISTER_BYTE_P
1500 fprintf_unfiltered (file,
1501 "gdbarch_dump: %s # %s\n",
1502 "DEPRECATED_REGISTER_BYTE_P()",
1503 XSTRING (DEPRECATED_REGISTER_BYTE_P ()));
1504 fprintf_unfiltered (file,
1505 "gdbarch_dump: DEPRECATED_REGISTER_BYTE_P() = %d\n",
1506 DEPRECATED_REGISTER_BYTE_P ());
1507 #endif
1508 #ifdef DEPRECATED_REGISTER_BYTE
1509 fprintf_unfiltered (file,
1510 "gdbarch_dump: %s # %s\n",
1511 "DEPRECATED_REGISTER_BYTE(reg_nr)",
1512 XSTRING (DEPRECATED_REGISTER_BYTE (reg_nr)));
1513 fprintf_unfiltered (file,
1514 "gdbarch_dump: DEPRECATED_REGISTER_BYTE = <0x%08lx>\n",
1515 (long) current_gdbarch->deprecated_register_byte
1516 /*DEPRECATED_REGISTER_BYTE ()*/);
1517 #endif
1518 #ifdef DEPRECATED_REGISTER_BYTES
1519 fprintf_unfiltered (file,
1520 "gdbarch_dump: DEPRECATED_REGISTER_BYTES # %s\n",
1521 XSTRING (DEPRECATED_REGISTER_BYTES));
1522 fprintf_unfiltered (file,
1523 "gdbarch_dump: DEPRECATED_REGISTER_BYTES = %d\n",
1524 DEPRECATED_REGISTER_BYTES);
1525 #endif
1526 #ifdef DEPRECATED_REGISTER_CONVERTIBLE
1527 fprintf_unfiltered (file,
1528 "gdbarch_dump: %s # %s\n",
1529 "DEPRECATED_REGISTER_CONVERTIBLE(nr)",
1530 XSTRING (DEPRECATED_REGISTER_CONVERTIBLE (nr)));
1531 fprintf_unfiltered (file,
1532 "gdbarch_dump: DEPRECATED_REGISTER_CONVERTIBLE = <0x%08lx>\n",
1533 (long) current_gdbarch->deprecated_register_convertible
1534 /*DEPRECATED_REGISTER_CONVERTIBLE ()*/);
1535 #endif
1536 #ifdef DEPRECATED_REGISTER_CONVERT_TO_RAW
1537 fprintf_unfiltered (file,
1538 "gdbarch_dump: %s # %s\n",
1539 "DEPRECATED_REGISTER_CONVERT_TO_RAW(type, regnum, from, to)",
1540 XSTRING (DEPRECATED_REGISTER_CONVERT_TO_RAW (type, regnum, from, to)));
1541 fprintf_unfiltered (file,
1542 "gdbarch_dump: DEPRECATED_REGISTER_CONVERT_TO_RAW = <0x%08lx>\n",
1543 (long) current_gdbarch->deprecated_register_convert_to_raw
1544 /*DEPRECATED_REGISTER_CONVERT_TO_RAW ()*/);
1545 #endif
1546 #ifdef DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL
1547 fprintf_unfiltered (file,
1548 "gdbarch_dump: %s # %s\n",
1549 "DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL(regnum, type, from, to)",
1550 XSTRING (DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL (regnum, type, from, to)));
1551 fprintf_unfiltered (file,
1552 "gdbarch_dump: DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL = <0x%08lx>\n",
1553 (long) current_gdbarch->deprecated_register_convert_to_virtual
1554 /*DEPRECATED_REGISTER_CONVERT_TO_VIRTUAL ()*/);
1555 #endif
1556 #ifdef DEPRECATED_REGISTER_RAW_SIZE_P
1557 fprintf_unfiltered (file,
1558 "gdbarch_dump: %s # %s\n",
1559 "DEPRECATED_REGISTER_RAW_SIZE_P()",
1560 XSTRING (DEPRECATED_REGISTER_RAW_SIZE_P ()));
1561 fprintf_unfiltered (file,
1562 "gdbarch_dump: DEPRECATED_REGISTER_RAW_SIZE_P() = %d\n",
1563 DEPRECATED_REGISTER_RAW_SIZE_P ());
1564 #endif
1565 #ifdef DEPRECATED_REGISTER_RAW_SIZE
1566 fprintf_unfiltered (file,
1567 "gdbarch_dump: %s # %s\n",
1568 "DEPRECATED_REGISTER_RAW_SIZE(reg_nr)",
1569 XSTRING (DEPRECATED_REGISTER_RAW_SIZE (reg_nr)));
1570 fprintf_unfiltered (file,
1571 "gdbarch_dump: DEPRECATED_REGISTER_RAW_SIZE = <0x%08lx>\n",
1572 (long) current_gdbarch->deprecated_register_raw_size
1573 /*DEPRECATED_REGISTER_RAW_SIZE ()*/);
1574 #endif
1575 #ifdef DEPRECATED_REGISTER_SIZE
1576 fprintf_unfiltered (file,
1577 "gdbarch_dump: DEPRECATED_REGISTER_SIZE # %s\n",
1578 XSTRING (DEPRECATED_REGISTER_SIZE));
1579 fprintf_unfiltered (file,
1580 "gdbarch_dump: DEPRECATED_REGISTER_SIZE = %d\n",
1581 DEPRECATED_REGISTER_SIZE);
1582 #endif
1583 #ifdef DEPRECATED_REGISTER_VIRTUAL_SIZE_P
1584 fprintf_unfiltered (file,
1585 "gdbarch_dump: %s # %s\n",
1586 "DEPRECATED_REGISTER_VIRTUAL_SIZE_P()",
1587 XSTRING (DEPRECATED_REGISTER_VIRTUAL_SIZE_P ()));
1588 fprintf_unfiltered (file,
1589 "gdbarch_dump: DEPRECATED_REGISTER_VIRTUAL_SIZE_P() = %d\n",
1590 DEPRECATED_REGISTER_VIRTUAL_SIZE_P ());
1591 #endif
1592 #ifdef DEPRECATED_REGISTER_VIRTUAL_SIZE
1593 fprintf_unfiltered (file,
1594 "gdbarch_dump: %s # %s\n",
1595 "DEPRECATED_REGISTER_VIRTUAL_SIZE(reg_nr)",
1596 XSTRING (DEPRECATED_REGISTER_VIRTUAL_SIZE (reg_nr)));
1597 fprintf_unfiltered (file,
1598 "gdbarch_dump: DEPRECATED_REGISTER_VIRTUAL_SIZE = <0x%08lx>\n",
1599 (long) current_gdbarch->deprecated_register_virtual_size
1600 /*DEPRECATED_REGISTER_VIRTUAL_SIZE ()*/);
1601 #endif
1602 #ifdef DEPRECATED_REGISTER_VIRTUAL_TYPE_P
1603 fprintf_unfiltered (file,
1604 "gdbarch_dump: %s # %s\n",
1605 "DEPRECATED_REGISTER_VIRTUAL_TYPE_P()",
1606 XSTRING (DEPRECATED_REGISTER_VIRTUAL_TYPE_P ()));
1607 fprintf_unfiltered (file,
1608 "gdbarch_dump: DEPRECATED_REGISTER_VIRTUAL_TYPE_P() = %d\n",
1609 DEPRECATED_REGISTER_VIRTUAL_TYPE_P ());
1610 #endif
1611 #ifdef DEPRECATED_REGISTER_VIRTUAL_TYPE
1612 fprintf_unfiltered (file,
1613 "gdbarch_dump: %s # %s\n",
1614 "DEPRECATED_REGISTER_VIRTUAL_TYPE(reg_nr)",
1615 XSTRING (DEPRECATED_REGISTER_VIRTUAL_TYPE (reg_nr)));
1616 fprintf_unfiltered (file,
1617 "gdbarch_dump: DEPRECATED_REGISTER_VIRTUAL_TYPE = <0x%08lx>\n",
1618 (long) current_gdbarch->deprecated_register_virtual_type
1619 /*DEPRECATED_REGISTER_VIRTUAL_TYPE ()*/);
1620 #endif
1621 #ifdef DEPRECATED_REG_STRUCT_HAS_ADDR_P
1622 fprintf_unfiltered (file,
1623 "gdbarch_dump: %s # %s\n",
1624 "DEPRECATED_REG_STRUCT_HAS_ADDR_P()",
1625 XSTRING (DEPRECATED_REG_STRUCT_HAS_ADDR_P ()));
1626 fprintf_unfiltered (file,
1627 "gdbarch_dump: DEPRECATED_REG_STRUCT_HAS_ADDR_P() = %d\n",
1628 DEPRECATED_REG_STRUCT_HAS_ADDR_P ());
1629 #endif
1630 #ifdef DEPRECATED_REG_STRUCT_HAS_ADDR
1631 fprintf_unfiltered (file,
1632 "gdbarch_dump: %s # %s\n",
1633 "DEPRECATED_REG_STRUCT_HAS_ADDR(gcc_p, type)",
1634 XSTRING (DEPRECATED_REG_STRUCT_HAS_ADDR (gcc_p, type)));
1635 fprintf_unfiltered (file,
1636 "gdbarch_dump: DEPRECATED_REG_STRUCT_HAS_ADDR = <0x%08lx>\n",
1637 (long) current_gdbarch->deprecated_reg_struct_has_addr
1638 /*DEPRECATED_REG_STRUCT_HAS_ADDR ()*/);
1639 #endif
1640 #ifdef DEPRECATED_SAVED_PC_AFTER_CALL_P
1641 fprintf_unfiltered (file,
1642 "gdbarch_dump: %s # %s\n",
1643 "DEPRECATED_SAVED_PC_AFTER_CALL_P()",
1644 XSTRING (DEPRECATED_SAVED_PC_AFTER_CALL_P ()));
1645 fprintf_unfiltered (file,
1646 "gdbarch_dump: DEPRECATED_SAVED_PC_AFTER_CALL_P() = %d\n",
1647 DEPRECATED_SAVED_PC_AFTER_CALL_P ());
1648 #endif
1649 #ifdef DEPRECATED_SAVED_PC_AFTER_CALL
1650 fprintf_unfiltered (file,
1651 "gdbarch_dump: %s # %s\n",
1652 "DEPRECATED_SAVED_PC_AFTER_CALL(frame)",
1653 XSTRING (DEPRECATED_SAVED_PC_AFTER_CALL (frame)));
1654 fprintf_unfiltered (file,
1655 "gdbarch_dump: DEPRECATED_SAVED_PC_AFTER_CALL = <0x%08lx>\n",
1656 (long) current_gdbarch->deprecated_saved_pc_after_call
1657 /*DEPRECATED_SAVED_PC_AFTER_CALL ()*/);
1658 #endif
1659 #ifdef DEPRECATED_SAVE_DUMMY_FRAME_TOS_P
1660 fprintf_unfiltered (file,
1661 "gdbarch_dump: %s # %s\n",
1662 "DEPRECATED_SAVE_DUMMY_FRAME_TOS_P()",
1663 XSTRING (DEPRECATED_SAVE_DUMMY_FRAME_TOS_P ()));
1664 fprintf_unfiltered (file,
1665 "gdbarch_dump: DEPRECATED_SAVE_DUMMY_FRAME_TOS_P() = %d\n",
1666 DEPRECATED_SAVE_DUMMY_FRAME_TOS_P ());
1667 #endif
1668 #ifdef DEPRECATED_SAVE_DUMMY_FRAME_TOS
1669 fprintf_unfiltered (file,
1670 "gdbarch_dump: %s # %s\n",
1671 "DEPRECATED_SAVE_DUMMY_FRAME_TOS(sp)",
1672 XSTRING (DEPRECATED_SAVE_DUMMY_FRAME_TOS (sp)));
1673 fprintf_unfiltered (file,
1674 "gdbarch_dump: DEPRECATED_SAVE_DUMMY_FRAME_TOS = <0x%08lx>\n",
1675 (long) current_gdbarch->deprecated_save_dummy_frame_tos
1676 /*DEPRECATED_SAVE_DUMMY_FRAME_TOS ()*/);
1677 #endif
1678 #ifdef DEPRECATED_SIZEOF_CALL_DUMMY_WORDS
1679 fprintf_unfiltered (file,
1680 "gdbarch_dump: DEPRECATED_SIZEOF_CALL_DUMMY_WORDS # %s\n",
1681 XSTRING (DEPRECATED_SIZEOF_CALL_DUMMY_WORDS));
1682 fprintf_unfiltered (file,
1683 "gdbarch_dump: DEPRECATED_SIZEOF_CALL_DUMMY_WORDS = %d\n",
1684 DEPRECATED_SIZEOF_CALL_DUMMY_WORDS);
1685 #endif
1686 #ifdef DEPRECATED_STACK_ALIGN_P
1687 fprintf_unfiltered (file,
1688 "gdbarch_dump: %s # %s\n",
1689 "DEPRECATED_STACK_ALIGN_P()",
1690 XSTRING (DEPRECATED_STACK_ALIGN_P ()));
1691 fprintf_unfiltered (file,
1692 "gdbarch_dump: DEPRECATED_STACK_ALIGN_P() = %d\n",
1693 DEPRECATED_STACK_ALIGN_P ());
1694 #endif
1695 #ifdef DEPRECATED_STACK_ALIGN
1696 fprintf_unfiltered (file,
1697 "gdbarch_dump: %s # %s\n",
1698 "DEPRECATED_STACK_ALIGN(sp)",
1699 XSTRING (DEPRECATED_STACK_ALIGN (sp)));
1700 fprintf_unfiltered (file,
1701 "gdbarch_dump: DEPRECATED_STACK_ALIGN = <0x%08lx>\n",
1702 (long) current_gdbarch->deprecated_stack_align
1703 /*DEPRECATED_STACK_ALIGN ()*/);
1704 #endif
1705 #ifdef DEPRECATED_STORE_RETURN_VALUE
1706 fprintf_unfiltered (file,
1707 "gdbarch_dump: %s # %s\n",
1708 "DEPRECATED_STORE_RETURN_VALUE(type, valbuf)",
1709 XSTRING (DEPRECATED_STORE_RETURN_VALUE (type, valbuf)));
1710 fprintf_unfiltered (file,
1711 "gdbarch_dump: DEPRECATED_STORE_RETURN_VALUE = <0x%08lx>\n",
1712 (long) current_gdbarch->deprecated_store_return_value
1713 /*DEPRECATED_STORE_RETURN_VALUE ()*/);
1714 #endif
1715 #ifdef DEPRECATED_STORE_STRUCT_RETURN_P
1716 fprintf_unfiltered (file,
1717 "gdbarch_dump: %s # %s\n",
1718 "DEPRECATED_STORE_STRUCT_RETURN_P()",
1719 XSTRING (DEPRECATED_STORE_STRUCT_RETURN_P ()));
1720 fprintf_unfiltered (file,
1721 "gdbarch_dump: DEPRECATED_STORE_STRUCT_RETURN_P() = %d\n",
1722 DEPRECATED_STORE_STRUCT_RETURN_P ());
1723 #endif
1724 #ifdef DEPRECATED_STORE_STRUCT_RETURN
1725 fprintf_unfiltered (file,
1726 "gdbarch_dump: %s # %s\n",
1727 "DEPRECATED_STORE_STRUCT_RETURN(addr, sp)",
1728 XSTRING (DEPRECATED_STORE_STRUCT_RETURN (addr, sp)));
1729 fprintf_unfiltered (file,
1730 "gdbarch_dump: DEPRECATED_STORE_STRUCT_RETURN = <0x%08lx>\n",
1731 (long) current_gdbarch->deprecated_store_struct_return
1732 /*DEPRECATED_STORE_STRUCT_RETURN ()*/);
1733 #endif
1734 #ifdef DEPRECATED_TARGET_READ_FP_P
1735 fprintf_unfiltered (file,
1736 "gdbarch_dump: %s # %s\n",
1737 "DEPRECATED_TARGET_READ_FP_P()",
1738 XSTRING (DEPRECATED_TARGET_READ_FP_P ()));
1739 fprintf_unfiltered (file,
1740 "gdbarch_dump: DEPRECATED_TARGET_READ_FP_P() = %d\n",
1741 DEPRECATED_TARGET_READ_FP_P ());
1742 #endif
1743 #ifdef DEPRECATED_TARGET_READ_FP
1744 fprintf_unfiltered (file,
1745 "gdbarch_dump: %s # %s\n",
1746 "DEPRECATED_TARGET_READ_FP()",
1747 XSTRING (DEPRECATED_TARGET_READ_FP ()));
1748 fprintf_unfiltered (file,
1749 "gdbarch_dump: DEPRECATED_TARGET_READ_FP = <0x%08lx>\n",
1750 (long) current_gdbarch->deprecated_target_read_fp
1751 /*DEPRECATED_TARGET_READ_FP ()*/);
1752 #endif
1753 #ifdef DEPRECATED_USE_GENERIC_DUMMY_FRAMES
1754 fprintf_unfiltered (file,
1755 "gdbarch_dump: DEPRECATED_USE_GENERIC_DUMMY_FRAMES # %s\n",
1756 XSTRING (DEPRECATED_USE_GENERIC_DUMMY_FRAMES));
1757 fprintf_unfiltered (file,
1758 "gdbarch_dump: DEPRECATED_USE_GENERIC_DUMMY_FRAMES = %d\n",
1759 DEPRECATED_USE_GENERIC_DUMMY_FRAMES);
1760 #endif
1761 #ifdef DWARF2_REG_TO_REGNUM
1762 fprintf_unfiltered (file,
1763 "gdbarch_dump: %s # %s\n",
1764 "DWARF2_REG_TO_REGNUM(dwarf2_regnr)",
1765 XSTRING (DWARF2_REG_TO_REGNUM (dwarf2_regnr)));
1766 fprintf_unfiltered (file,
1767 "gdbarch_dump: DWARF2_REG_TO_REGNUM = <0x%08lx>\n",
1768 (long) current_gdbarch->dwarf2_reg_to_regnum
1769 /*DWARF2_REG_TO_REGNUM ()*/);
1770 #endif
1771 #ifdef DWARF_REG_TO_REGNUM
1772 fprintf_unfiltered (file,
1773 "gdbarch_dump: %s # %s\n",
1774 "DWARF_REG_TO_REGNUM(dwarf_regnr)",
1775 XSTRING (DWARF_REG_TO_REGNUM (dwarf_regnr)));
1776 fprintf_unfiltered (file,
1777 "gdbarch_dump: DWARF_REG_TO_REGNUM = <0x%08lx>\n",
1778 (long) current_gdbarch->dwarf_reg_to_regnum
1779 /*DWARF_REG_TO_REGNUM ()*/);
1780 #endif
1781 #ifdef ECOFF_REG_TO_REGNUM
1782 fprintf_unfiltered (file,
1783 "gdbarch_dump: %s # %s\n",
1784 "ECOFF_REG_TO_REGNUM(ecoff_regnr)",
1785 XSTRING (ECOFF_REG_TO_REGNUM (ecoff_regnr)));
1786 fprintf_unfiltered (file,
1787 "gdbarch_dump: ECOFF_REG_TO_REGNUM = <0x%08lx>\n",
1788 (long) current_gdbarch->ecoff_reg_to_regnum
1789 /*ECOFF_REG_TO_REGNUM ()*/);
1790 #endif
1791 #ifdef ELF_MAKE_MSYMBOL_SPECIAL
1792 fprintf_unfiltered (file,
1793 "gdbarch_dump: %s # %s\n",
1794 "ELF_MAKE_MSYMBOL_SPECIAL(sym, msym)",
1795 XSTRING (ELF_MAKE_MSYMBOL_SPECIAL (sym, msym)));
1796 fprintf_unfiltered (file,
1797 "gdbarch_dump: ELF_MAKE_MSYMBOL_SPECIAL = <0x%08lx>\n",
1798 (long) current_gdbarch->elf_make_msymbol_special
1799 /*ELF_MAKE_MSYMBOL_SPECIAL ()*/);
1800 #endif
1801 #ifdef EXTRACT_RETURN_VALUE
1802 fprintf_unfiltered (file,
1803 "gdbarch_dump: %s # %s\n",
1804 "EXTRACT_RETURN_VALUE(type, regcache, valbuf)",
1805 XSTRING (EXTRACT_RETURN_VALUE (type, regcache, valbuf)));
1806 fprintf_unfiltered (file,
1807 "gdbarch_dump: EXTRACT_RETURN_VALUE = <0x%08lx>\n",
1808 (long) current_gdbarch->extract_return_value
1809 /*EXTRACT_RETURN_VALUE ()*/);
1810 #endif
1811 #ifdef EXTRACT_STRUCT_VALUE_ADDRESS_P
1812 fprintf_unfiltered (file,
1813 "gdbarch_dump: %s # %s\n",
1814 "EXTRACT_STRUCT_VALUE_ADDRESS_P()",
1815 XSTRING (EXTRACT_STRUCT_VALUE_ADDRESS_P ()));
1816 fprintf_unfiltered (file,
1817 "gdbarch_dump: EXTRACT_STRUCT_VALUE_ADDRESS_P() = %d\n",
1818 EXTRACT_STRUCT_VALUE_ADDRESS_P ());
1819 #endif
1820 #ifdef EXTRACT_STRUCT_VALUE_ADDRESS
1821 fprintf_unfiltered (file,
1822 "gdbarch_dump: %s # %s\n",
1823 "EXTRACT_STRUCT_VALUE_ADDRESS(regcache)",
1824 XSTRING (EXTRACT_STRUCT_VALUE_ADDRESS (regcache)));
1825 fprintf_unfiltered (file,
1826 "gdbarch_dump: EXTRACT_STRUCT_VALUE_ADDRESS = <0x%08lx>\n",
1827 (long) current_gdbarch->extract_struct_value_address
1828 /*EXTRACT_STRUCT_VALUE_ADDRESS ()*/);
1829 #endif
1830 #ifdef FETCH_POINTER_ARGUMENT_P
1831 fprintf_unfiltered (file,
1832 "gdbarch_dump: %s # %s\n",
1833 "FETCH_POINTER_ARGUMENT_P()",
1834 XSTRING (FETCH_POINTER_ARGUMENT_P ()));
1835 fprintf_unfiltered (file,
1836 "gdbarch_dump: FETCH_POINTER_ARGUMENT_P() = %d\n",
1837 FETCH_POINTER_ARGUMENT_P ());
1838 #endif
1839 #ifdef FETCH_POINTER_ARGUMENT
1840 fprintf_unfiltered (file,
1841 "gdbarch_dump: %s # %s\n",
1842 "FETCH_POINTER_ARGUMENT(frame, argi, type)",
1843 XSTRING (FETCH_POINTER_ARGUMENT (frame, argi, type)));
1844 fprintf_unfiltered (file,
1845 "gdbarch_dump: FETCH_POINTER_ARGUMENT = <0x%08lx>\n",
1846 (long) current_gdbarch->fetch_pointer_argument
1847 /*FETCH_POINTER_ARGUMENT ()*/);
1848 #endif
1849 #ifdef FP0_REGNUM
1850 fprintf_unfiltered (file,
1851 "gdbarch_dump: FP0_REGNUM # %s\n",
1852 XSTRING (FP0_REGNUM));
1853 fprintf_unfiltered (file,
1854 "gdbarch_dump: FP0_REGNUM = %d\n",
1855 FP0_REGNUM);
1856 #endif
1857 #ifdef FRAMELESS_FUNCTION_INVOCATION
1858 fprintf_unfiltered (file,
1859 "gdbarch_dump: %s # %s\n",
1860 "FRAMELESS_FUNCTION_INVOCATION(fi)",
1861 XSTRING (FRAMELESS_FUNCTION_INVOCATION (fi)));
1862 fprintf_unfiltered (file,
1863 "gdbarch_dump: FRAMELESS_FUNCTION_INVOCATION = <0x%08lx>\n",
1864 (long) current_gdbarch->frameless_function_invocation
1865 /*FRAMELESS_FUNCTION_INVOCATION ()*/);
1866 #endif
1867 #ifdef FRAME_ARGS_SKIP
1868 fprintf_unfiltered (file,
1869 "gdbarch_dump: FRAME_ARGS_SKIP # %s\n",
1870 XSTRING (FRAME_ARGS_SKIP));
1871 fprintf_unfiltered (file,
1872 "gdbarch_dump: FRAME_ARGS_SKIP = %ld\n",
1873 (long) FRAME_ARGS_SKIP);
1874 #endif
1875 #ifdef FRAME_NUM_ARGS_P
1876 fprintf_unfiltered (file,
1877 "gdbarch_dump: %s # %s\n",
1878 "FRAME_NUM_ARGS_P()",
1879 XSTRING (FRAME_NUM_ARGS_P ()));
1880 fprintf_unfiltered (file,
1881 "gdbarch_dump: FRAME_NUM_ARGS_P() = %d\n",
1882 FRAME_NUM_ARGS_P ());
1883 #endif
1884 #ifdef FRAME_NUM_ARGS
1885 fprintf_unfiltered (file,
1886 "gdbarch_dump: %s # %s\n",
1887 "FRAME_NUM_ARGS(frame)",
1888 XSTRING (FRAME_NUM_ARGS (frame)));
1889 fprintf_unfiltered (file,
1890 "gdbarch_dump: FRAME_NUM_ARGS = <0x%08lx>\n",
1891 (long) current_gdbarch->frame_num_args
1892 /*FRAME_NUM_ARGS ()*/);
1893 #endif
1894 #ifdef FRAME_RED_ZONE_SIZE
1895 fprintf_unfiltered (file,
1896 "gdbarch_dump: FRAME_RED_ZONE_SIZE # %s\n",
1897 XSTRING (FRAME_RED_ZONE_SIZE));
1898 fprintf_unfiltered (file,
1899 "gdbarch_dump: FRAME_RED_ZONE_SIZE = %d\n",
1900 FRAME_RED_ZONE_SIZE);
1901 #endif
1902 #ifdef FUNCTION_START_OFFSET
1903 fprintf_unfiltered (file,
1904 "gdbarch_dump: FUNCTION_START_OFFSET # %s\n",
1905 XSTRING (FUNCTION_START_OFFSET));
1906 fprintf_unfiltered (file,
1907 "gdbarch_dump: FUNCTION_START_OFFSET = %ld\n",
1908 (long) FUNCTION_START_OFFSET);
1909 #endif
1910 #ifdef GET_LONGJMP_TARGET_P
1911 fprintf_unfiltered (file,
1912 "gdbarch_dump: %s # %s\n",
1913 "GET_LONGJMP_TARGET_P()",
1914 XSTRING (GET_LONGJMP_TARGET_P ()));
1915 fprintf_unfiltered (file,
1916 "gdbarch_dump: GET_LONGJMP_TARGET_P() = %d\n",
1917 GET_LONGJMP_TARGET_P ());
1918 #endif
1919 #ifdef GET_LONGJMP_TARGET
1920 fprintf_unfiltered (file,
1921 "gdbarch_dump: %s # %s\n",
1922 "GET_LONGJMP_TARGET(pc)",
1923 XSTRING (GET_LONGJMP_TARGET (pc)));
1924 fprintf_unfiltered (file,
1925 "gdbarch_dump: GET_LONGJMP_TARGET = <0x%08lx>\n",
1926 (long) current_gdbarch->get_longjmp_target
1927 /*GET_LONGJMP_TARGET ()*/);
1928 #endif
1929 #ifdef HAVE_NONSTEPPABLE_WATCHPOINT
1930 fprintf_unfiltered (file,
1931 "gdbarch_dump: HAVE_NONSTEPPABLE_WATCHPOINT # %s\n",
1932 XSTRING (HAVE_NONSTEPPABLE_WATCHPOINT));
1933 fprintf_unfiltered (file,
1934 "gdbarch_dump: HAVE_NONSTEPPABLE_WATCHPOINT = %d\n",
1935 HAVE_NONSTEPPABLE_WATCHPOINT);
1936 #endif
1937 #ifdef INNER_THAN
1938 fprintf_unfiltered (file,
1939 "gdbarch_dump: %s # %s\n",
1940 "INNER_THAN(lhs, rhs)",
1941 XSTRING (INNER_THAN (lhs, rhs)));
1942 fprintf_unfiltered (file,
1943 "gdbarch_dump: INNER_THAN = <0x%08lx>\n",
1944 (long) current_gdbarch->inner_than
1945 /*INNER_THAN ()*/);
1946 #endif
1947 #ifdef INTEGER_TO_ADDRESS_P
1948 fprintf_unfiltered (file,
1949 "gdbarch_dump: %s # %s\n",
1950 "INTEGER_TO_ADDRESS_P()",
1951 XSTRING (INTEGER_TO_ADDRESS_P ()));
1952 fprintf_unfiltered (file,
1953 "gdbarch_dump: INTEGER_TO_ADDRESS_P() = %d\n",
1954 INTEGER_TO_ADDRESS_P ());
1955 #endif
1956 #ifdef INTEGER_TO_ADDRESS
1957 fprintf_unfiltered (file,
1958 "gdbarch_dump: %s # %s\n",
1959 "INTEGER_TO_ADDRESS(type, buf)",
1960 XSTRING (INTEGER_TO_ADDRESS (type, buf)));
1961 fprintf_unfiltered (file,
1962 "gdbarch_dump: INTEGER_TO_ADDRESS = <0x%08lx>\n",
1963 (long) current_gdbarch->integer_to_address
1964 /*INTEGER_TO_ADDRESS ()*/);
1965 #endif
1966 #ifdef IN_SOLIB_CALL_TRAMPOLINE
1967 fprintf_unfiltered (file,
1968 "gdbarch_dump: %s # %s\n",
1969 "IN_SOLIB_CALL_TRAMPOLINE(pc, name)",
1970 XSTRING (IN_SOLIB_CALL_TRAMPOLINE (pc, name)));
1971 fprintf_unfiltered (file,
1972 "gdbarch_dump: IN_SOLIB_CALL_TRAMPOLINE = <0x%08lx>\n",
1973 (long) current_gdbarch->in_solib_call_trampoline
1974 /*IN_SOLIB_CALL_TRAMPOLINE ()*/);
1975 #endif
1976 #ifdef IN_SOLIB_RETURN_TRAMPOLINE
1977 fprintf_unfiltered (file,
1978 "gdbarch_dump: %s # %s\n",
1979 "IN_SOLIB_RETURN_TRAMPOLINE(pc, name)",
1980 XSTRING (IN_SOLIB_RETURN_TRAMPOLINE (pc, name)));
1981 fprintf_unfiltered (file,
1982 "gdbarch_dump: IN_SOLIB_RETURN_TRAMPOLINE = <0x%08lx>\n",
1983 (long) current_gdbarch->in_solib_return_trampoline
1984 /*IN_SOLIB_RETURN_TRAMPOLINE ()*/);
1985 #endif
1986 #ifdef MEMORY_INSERT_BREAKPOINT
1987 fprintf_unfiltered (file,
1988 "gdbarch_dump: %s # %s\n",
1989 "MEMORY_INSERT_BREAKPOINT(addr, contents_cache)",
1990 XSTRING (MEMORY_INSERT_BREAKPOINT (addr, contents_cache)));
1991 fprintf_unfiltered (file,
1992 "gdbarch_dump: MEMORY_INSERT_BREAKPOINT = <0x%08lx>\n",
1993 (long) current_gdbarch->memory_insert_breakpoint
1994 /*MEMORY_INSERT_BREAKPOINT ()*/);
1995 #endif
1996 #ifdef MEMORY_REMOVE_BREAKPOINT
1997 fprintf_unfiltered (file,
1998 "gdbarch_dump: %s # %s\n",
1999 "MEMORY_REMOVE_BREAKPOINT(addr, contents_cache)",
2000 XSTRING (MEMORY_REMOVE_BREAKPOINT (addr, contents_cache)));
2001 fprintf_unfiltered (file,
2002 "gdbarch_dump: MEMORY_REMOVE_BREAKPOINT = <0x%08lx>\n",
2003 (long) current_gdbarch->memory_remove_breakpoint
2004 /*MEMORY_REMOVE_BREAKPOINT ()*/);
2005 #endif
2006 #ifdef NAME_OF_MALLOC
2007 fprintf_unfiltered (file,
2008 "gdbarch_dump: NAME_OF_MALLOC # %s\n",
2009 XSTRING (NAME_OF_MALLOC));
2010 fprintf_unfiltered (file,
2011 "gdbarch_dump: NAME_OF_MALLOC = %s\n",
2012 NAME_OF_MALLOC);
2013 #endif
2014 #ifdef NUM_PSEUDO_REGS
2015 fprintf_unfiltered (file,
2016 "gdbarch_dump: NUM_PSEUDO_REGS # %s\n",
2017 XSTRING (NUM_PSEUDO_REGS));
2018 fprintf_unfiltered (file,
2019 "gdbarch_dump: NUM_PSEUDO_REGS = %d\n",
2020 NUM_PSEUDO_REGS);
2021 #endif
2022 #ifdef NUM_REGS
2023 fprintf_unfiltered (file,
2024 "gdbarch_dump: NUM_REGS # %s\n",
2025 XSTRING (NUM_REGS));
2026 fprintf_unfiltered (file,
2027 "gdbarch_dump: NUM_REGS = %d\n",
2028 NUM_REGS);
2029 #endif
2030 #ifdef PARM_BOUNDARY
2031 fprintf_unfiltered (file,
2032 "gdbarch_dump: PARM_BOUNDARY # %s\n",
2033 XSTRING (PARM_BOUNDARY));
2034 fprintf_unfiltered (file,
2035 "gdbarch_dump: PARM_BOUNDARY = %d\n",
2036 PARM_BOUNDARY);
2037 #endif
2038 #ifdef PC_IN_SIGTRAMP
2039 fprintf_unfiltered (file,
2040 "gdbarch_dump: %s # %s\n",
2041 "PC_IN_SIGTRAMP(pc, name)",
2042 XSTRING (PC_IN_SIGTRAMP (pc, name)));
2043 fprintf_unfiltered (file,
2044 "gdbarch_dump: PC_IN_SIGTRAMP = <0x%08lx>\n",
2045 (long) current_gdbarch->pc_in_sigtramp
2046 /*PC_IN_SIGTRAMP ()*/);
2047 #endif
2048 #ifdef PC_REGNUM
2049 fprintf_unfiltered (file,
2050 "gdbarch_dump: PC_REGNUM # %s\n",
2051 XSTRING (PC_REGNUM));
2052 fprintf_unfiltered (file,
2053 "gdbarch_dump: PC_REGNUM = %d\n",
2054 PC_REGNUM);
2055 #endif
2056 #ifdef POINTER_TO_ADDRESS
2057 fprintf_unfiltered (file,
2058 "gdbarch_dump: %s # %s\n",
2059 "POINTER_TO_ADDRESS(type, buf)",
2060 XSTRING (POINTER_TO_ADDRESS (type, buf)));
2061 fprintf_unfiltered (file,
2062 "gdbarch_dump: POINTER_TO_ADDRESS = <0x%08lx>\n",
2063 (long) current_gdbarch->pointer_to_address
2064 /*POINTER_TO_ADDRESS ()*/);
2065 #endif
2066 fprintf_unfiltered (file,
2067 "gdbarch_dump: gdbarch_print_float_info_p() = %d\n",
2068 gdbarch_print_float_info_p (current_gdbarch));
2069 fprintf_unfiltered (file,
2070 "gdbarch_dump: print_float_info = 0x%08lx\n",
2071 (long) current_gdbarch->print_float_info);
2072 fprintf_unfiltered (file,
2073 "gdbarch_dump: print_registers_info = 0x%08lx\n",
2074 (long) current_gdbarch->print_registers_info);
2075 fprintf_unfiltered (file,
2076 "gdbarch_dump: gdbarch_print_vector_info_p() = %d\n",
2077 gdbarch_print_vector_info_p (current_gdbarch));
2078 fprintf_unfiltered (file,
2079 "gdbarch_dump: print_vector_info = 0x%08lx\n",
2080 (long) current_gdbarch->print_vector_info);
2081 #ifdef PROLOGUE_FRAMELESS_P
2082 fprintf_unfiltered (file,
2083 "gdbarch_dump: %s # %s\n",
2084 "PROLOGUE_FRAMELESS_P(ip)",
2085 XSTRING (PROLOGUE_FRAMELESS_P (ip)));
2086 fprintf_unfiltered (file,
2087 "gdbarch_dump: PROLOGUE_FRAMELESS_P = <0x%08lx>\n",
2088 (long) current_gdbarch->prologue_frameless_p
2089 /*PROLOGUE_FRAMELESS_P ()*/);
2090 #endif
2091 #ifdef PS_REGNUM
2092 fprintf_unfiltered (file,
2093 "gdbarch_dump: PS_REGNUM # %s\n",
2094 XSTRING (PS_REGNUM));
2095 fprintf_unfiltered (file,
2096 "gdbarch_dump: PS_REGNUM = %d\n",
2097 PS_REGNUM);
2098 #endif
2099 fprintf_unfiltered (file,
2100 "gdbarch_dump: gdbarch_push_dummy_call_p() = %d\n",
2101 gdbarch_push_dummy_call_p (current_gdbarch));
2102 fprintf_unfiltered (file,
2103 "gdbarch_dump: push_dummy_call = 0x%08lx\n",
2104 (long) current_gdbarch->push_dummy_call);
2105 fprintf_unfiltered (file,
2106 "gdbarch_dump: gdbarch_push_dummy_code_p() = %d\n",
2107 gdbarch_push_dummy_code_p (current_gdbarch));
2108 fprintf_unfiltered (file,
2109 "gdbarch_dump: push_dummy_code = 0x%08lx\n",
2110 (long) current_gdbarch->push_dummy_code);
2111 #ifdef REGISTER_BYTES_OK_P
2112 fprintf_unfiltered (file,
2113 "gdbarch_dump: %s # %s\n",
2114 "REGISTER_BYTES_OK_P()",
2115 XSTRING (REGISTER_BYTES_OK_P ()));
2116 fprintf_unfiltered (file,
2117 "gdbarch_dump: REGISTER_BYTES_OK_P() = %d\n",
2118 REGISTER_BYTES_OK_P ());
2119 #endif
2120 #ifdef REGISTER_BYTES_OK
2121 fprintf_unfiltered (file,
2122 "gdbarch_dump: %s # %s\n",
2123 "REGISTER_BYTES_OK(nr_bytes)",
2124 XSTRING (REGISTER_BYTES_OK (nr_bytes)));
2125 fprintf_unfiltered (file,
2126 "gdbarch_dump: REGISTER_BYTES_OK = <0x%08lx>\n",
2127 (long) current_gdbarch->register_bytes_ok
2128 /*REGISTER_BYTES_OK ()*/);
2129 #endif
2130 #ifdef REGISTER_NAME
2131 fprintf_unfiltered (file,
2132 "gdbarch_dump: %s # %s\n",
2133 "REGISTER_NAME(regnr)",
2134 XSTRING (REGISTER_NAME (regnr)));
2135 fprintf_unfiltered (file,
2136 "gdbarch_dump: REGISTER_NAME = <0x%08lx>\n",
2137 (long) current_gdbarch->register_name
2138 /*REGISTER_NAME ()*/);
2139 #endif
2140 #ifdef REGISTER_SIM_REGNO
2141 fprintf_unfiltered (file,
2142 "gdbarch_dump: %s # %s\n",
2143 "REGISTER_SIM_REGNO(reg_nr)",
2144 XSTRING (REGISTER_SIM_REGNO (reg_nr)));
2145 fprintf_unfiltered (file,
2146 "gdbarch_dump: REGISTER_SIM_REGNO = <0x%08lx>\n",
2147 (long) current_gdbarch->register_sim_regno
2148 /*REGISTER_SIM_REGNO ()*/);
2149 #endif
2150 #ifdef REGISTER_TO_VALUE
2151 fprintf_unfiltered (file,
2152 "gdbarch_dump: %s # %s\n",
2153 "REGISTER_TO_VALUE(frame, regnum, type, buf)",
2154 XSTRING (REGISTER_TO_VALUE (frame, regnum, type, buf)));
2155 fprintf_unfiltered (file,
2156 "gdbarch_dump: REGISTER_TO_VALUE = <0x%08lx>\n",
2157 (long) current_gdbarch->register_to_value
2158 /*REGISTER_TO_VALUE ()*/);
2159 #endif
2160 fprintf_unfiltered (file,
2161 "gdbarch_dump: gdbarch_register_type_p() = %d\n",
2162 gdbarch_register_type_p (current_gdbarch));
2163 fprintf_unfiltered (file,
2164 "gdbarch_dump: register_type = 0x%08lx\n",
2165 (long) current_gdbarch->register_type);
2166 fprintf_unfiltered (file,
2167 "gdbarch_dump: remote_translate_xfer_address = 0x%08lx\n",
2168 (long) current_gdbarch->remote_translate_xfer_address);
2169 #ifdef RETURN_VALUE_ON_STACK
2170 fprintf_unfiltered (file,
2171 "gdbarch_dump: %s # %s\n",
2172 "RETURN_VALUE_ON_STACK(type)",
2173 XSTRING (RETURN_VALUE_ON_STACK (type)));
2174 fprintf_unfiltered (file,
2175 "gdbarch_dump: RETURN_VALUE_ON_STACK = <0x%08lx>\n",
2176 (long) current_gdbarch->return_value_on_stack
2177 /*RETURN_VALUE_ON_STACK ()*/);
2178 #endif
2179 #ifdef SDB_REG_TO_REGNUM
2180 fprintf_unfiltered (file,
2181 "gdbarch_dump: %s # %s\n",
2182 "SDB_REG_TO_REGNUM(sdb_regnr)",
2183 XSTRING (SDB_REG_TO_REGNUM (sdb_regnr)));
2184 fprintf_unfiltered (file,
2185 "gdbarch_dump: SDB_REG_TO_REGNUM = <0x%08lx>\n",
2186 (long) current_gdbarch->sdb_reg_to_regnum
2187 /*SDB_REG_TO_REGNUM ()*/);
2188 #endif
2189 #ifdef SIGTRAMP_END_P
2190 fprintf_unfiltered (file,
2191 "gdbarch_dump: %s # %s\n",
2192 "SIGTRAMP_END_P()",
2193 XSTRING (SIGTRAMP_END_P ()));
2194 fprintf_unfiltered (file,
2195 "gdbarch_dump: SIGTRAMP_END_P() = %d\n",
2196 SIGTRAMP_END_P ());
2197 #endif
2198 #ifdef SIGTRAMP_END
2199 fprintf_unfiltered (file,
2200 "gdbarch_dump: %s # %s\n",
2201 "SIGTRAMP_END(pc)",
2202 XSTRING (SIGTRAMP_END (pc)));
2203 fprintf_unfiltered (file,
2204 "gdbarch_dump: SIGTRAMP_END = <0x%08lx>\n",
2205 (long) current_gdbarch->sigtramp_end
2206 /*SIGTRAMP_END ()*/);
2207 #endif
2208 #ifdef SIGTRAMP_START_P
2209 fprintf_unfiltered (file,
2210 "gdbarch_dump: %s # %s\n",
2211 "SIGTRAMP_START_P()",
2212 XSTRING (SIGTRAMP_START_P ()));
2213 fprintf_unfiltered (file,
2214 "gdbarch_dump: SIGTRAMP_START_P() = %d\n",
2215 SIGTRAMP_START_P ());
2216 #endif
2217 #ifdef SIGTRAMP_START
2218 fprintf_unfiltered (file,
2219 "gdbarch_dump: %s # %s\n",
2220 "SIGTRAMP_START(pc)",
2221 XSTRING (SIGTRAMP_START (pc)));
2222 fprintf_unfiltered (file,
2223 "gdbarch_dump: SIGTRAMP_START = <0x%08lx>\n",
2224 (long) current_gdbarch->sigtramp_start
2225 /*SIGTRAMP_START ()*/);
2226 #endif
2227 #ifdef SKIP_PROLOGUE
2228 fprintf_unfiltered (file,
2229 "gdbarch_dump: %s # %s\n",
2230 "SKIP_PROLOGUE(ip)",
2231 XSTRING (SKIP_PROLOGUE (ip)));
2232 fprintf_unfiltered (file,
2233 "gdbarch_dump: SKIP_PROLOGUE = <0x%08lx>\n",
2234 (long) current_gdbarch->skip_prologue
2235 /*SKIP_PROLOGUE ()*/);
2236 #endif
2237 #ifdef SKIP_SOLIB_RESOLVER
2238 fprintf_unfiltered (file,
2239 "gdbarch_dump: %s # %s\n",
2240 "SKIP_SOLIB_RESOLVER(pc)",
2241 XSTRING (SKIP_SOLIB_RESOLVER (pc)));
2242 fprintf_unfiltered (file,
2243 "gdbarch_dump: SKIP_SOLIB_RESOLVER = <0x%08lx>\n",
2244 (long) current_gdbarch->skip_solib_resolver
2245 /*SKIP_SOLIB_RESOLVER ()*/);
2246 #endif
2247 #ifdef SKIP_TRAMPOLINE_CODE
2248 fprintf_unfiltered (file,
2249 "gdbarch_dump: %s # %s\n",
2250 "SKIP_TRAMPOLINE_CODE(pc)",
2251 XSTRING (SKIP_TRAMPOLINE_CODE (pc)));
2252 fprintf_unfiltered (file,
2253 "gdbarch_dump: SKIP_TRAMPOLINE_CODE = <0x%08lx>\n",
2254 (long) current_gdbarch->skip_trampoline_code
2255 /*SKIP_TRAMPOLINE_CODE ()*/);
2256 #endif
2257 #ifdef SMASH_TEXT_ADDRESS
2258 fprintf_unfiltered (file,
2259 "gdbarch_dump: %s # %s\n",
2260 "SMASH_TEXT_ADDRESS(addr)",
2261 XSTRING (SMASH_TEXT_ADDRESS (addr)));
2262 fprintf_unfiltered (file,
2263 "gdbarch_dump: SMASH_TEXT_ADDRESS = <0x%08lx>\n",
2264 (long) current_gdbarch->smash_text_address
2265 /*SMASH_TEXT_ADDRESS ()*/);
2266 #endif
2267 #ifdef SOFTWARE_SINGLE_STEP_P
2268 fprintf_unfiltered (file,
2269 "gdbarch_dump: %s # %s\n",
2270 "SOFTWARE_SINGLE_STEP_P()",
2271 XSTRING (SOFTWARE_SINGLE_STEP_P ()));
2272 fprintf_unfiltered (file,
2273 "gdbarch_dump: SOFTWARE_SINGLE_STEP_P() = %d\n",
2274 SOFTWARE_SINGLE_STEP_P ());
2275 #endif
2276 #ifdef SOFTWARE_SINGLE_STEP
2277 fprintf_unfiltered (file,
2278 "gdbarch_dump: %s # %s\n",
2279 "SOFTWARE_SINGLE_STEP(sig, insert_breakpoints_p)",
2280 XSTRING (SOFTWARE_SINGLE_STEP (sig, insert_breakpoints_p)));
2281 fprintf_unfiltered (file,
2282 "gdbarch_dump: SOFTWARE_SINGLE_STEP = <0x%08lx>\n",
2283 (long) current_gdbarch->software_single_step
2284 /*SOFTWARE_SINGLE_STEP ()*/);
2285 #endif
2286 #ifdef SP_REGNUM
2287 fprintf_unfiltered (file,
2288 "gdbarch_dump: SP_REGNUM # %s\n",
2289 XSTRING (SP_REGNUM));
2290 fprintf_unfiltered (file,
2291 "gdbarch_dump: SP_REGNUM = %d\n",
2292 SP_REGNUM);
2293 #endif
2294 #ifdef STAB_REG_TO_REGNUM
2295 fprintf_unfiltered (file,
2296 "gdbarch_dump: %s # %s\n",
2297 "STAB_REG_TO_REGNUM(stab_regnr)",
2298 XSTRING (STAB_REG_TO_REGNUM (stab_regnr)));
2299 fprintf_unfiltered (file,
2300 "gdbarch_dump: STAB_REG_TO_REGNUM = <0x%08lx>\n",
2301 (long) current_gdbarch->stab_reg_to_regnum
2302 /*STAB_REG_TO_REGNUM ()*/);
2303 #endif
2304 #ifdef STORE_RETURN_VALUE
2305 fprintf_unfiltered (file,
2306 "gdbarch_dump: %s # %s\n",
2307 "STORE_RETURN_VALUE(type, regcache, valbuf)",
2308 XSTRING (STORE_RETURN_VALUE (type, regcache, valbuf)));
2309 fprintf_unfiltered (file,
2310 "gdbarch_dump: STORE_RETURN_VALUE = <0x%08lx>\n",
2311 (long) current_gdbarch->store_return_value
2312 /*STORE_RETURN_VALUE ()*/);
2313 #endif
2314 #ifdef TARGET_ADDR_BIT
2315 fprintf_unfiltered (file,
2316 "gdbarch_dump: TARGET_ADDR_BIT # %s\n",
2317 XSTRING (TARGET_ADDR_BIT));
2318 fprintf_unfiltered (file,
2319 "gdbarch_dump: TARGET_ADDR_BIT = %d\n",
2320 TARGET_ADDR_BIT);
2321 #endif
2322 #ifdef TARGET_ARCHITECTURE
2323 fprintf_unfiltered (file,
2324 "gdbarch_dump: TARGET_ARCHITECTURE # %s\n",
2325 XSTRING (TARGET_ARCHITECTURE));
2326 if (TARGET_ARCHITECTURE != NULL)
2327 fprintf_unfiltered (file,
2328 "gdbarch_dump: TARGET_ARCHITECTURE = %s\n",
2329 TARGET_ARCHITECTURE->printable_name);
2330 #endif
2331 #ifdef TARGET_BFD_VMA_BIT
2332 fprintf_unfiltered (file,
2333 "gdbarch_dump: TARGET_BFD_VMA_BIT # %s\n",
2334 XSTRING (TARGET_BFD_VMA_BIT));
2335 fprintf_unfiltered (file,
2336 "gdbarch_dump: TARGET_BFD_VMA_BIT = %d\n",
2337 TARGET_BFD_VMA_BIT);
2338 #endif
2339 #ifdef TARGET_BYTE_ORDER
2340 fprintf_unfiltered (file,
2341 "gdbarch_dump: TARGET_BYTE_ORDER # %s\n",
2342 XSTRING (TARGET_BYTE_ORDER));
2343 fprintf_unfiltered (file,
2344 "gdbarch_dump: TARGET_BYTE_ORDER = %ld\n",
2345 (long) TARGET_BYTE_ORDER);
2346 #endif
2347 #ifdef TARGET_CHAR_SIGNED
2348 fprintf_unfiltered (file,
2349 "gdbarch_dump: TARGET_CHAR_SIGNED # %s\n",
2350 XSTRING (TARGET_CHAR_SIGNED));
2351 fprintf_unfiltered (file,
2352 "gdbarch_dump: TARGET_CHAR_SIGNED = %d\n",
2353 TARGET_CHAR_SIGNED);
2354 #endif
2355 #ifdef TARGET_DOUBLE_BIT
2356 fprintf_unfiltered (file,
2357 "gdbarch_dump: TARGET_DOUBLE_BIT # %s\n",
2358 XSTRING (TARGET_DOUBLE_BIT));
2359 fprintf_unfiltered (file,
2360 "gdbarch_dump: TARGET_DOUBLE_BIT = %d\n",
2361 TARGET_DOUBLE_BIT);
2362 #endif
2363 #ifdef TARGET_DOUBLE_FORMAT
2364 fprintf_unfiltered (file,
2365 "gdbarch_dump: TARGET_DOUBLE_FORMAT # %s\n",
2366 XSTRING (TARGET_DOUBLE_FORMAT));
2367 fprintf_unfiltered (file,
2368 "gdbarch_dump: TARGET_DOUBLE_FORMAT = %s\n",
2369 (TARGET_DOUBLE_FORMAT)->name);
2370 #endif
2371 #ifdef TARGET_FLOAT_BIT
2372 fprintf_unfiltered (file,
2373 "gdbarch_dump: TARGET_FLOAT_BIT # %s\n",
2374 XSTRING (TARGET_FLOAT_BIT));
2375 fprintf_unfiltered (file,
2376 "gdbarch_dump: TARGET_FLOAT_BIT = %d\n",
2377 TARGET_FLOAT_BIT);
2378 #endif
2379 #ifdef TARGET_FLOAT_FORMAT
2380 fprintf_unfiltered (file,
2381 "gdbarch_dump: TARGET_FLOAT_FORMAT # %s\n",
2382 XSTRING (TARGET_FLOAT_FORMAT));
2383 fprintf_unfiltered (file,
2384 "gdbarch_dump: TARGET_FLOAT_FORMAT = %s\n",
2385 (TARGET_FLOAT_FORMAT)->name);
2386 #endif
2387 #ifdef TARGET_INT_BIT
2388 fprintf_unfiltered (file,
2389 "gdbarch_dump: TARGET_INT_BIT # %s\n",
2390 XSTRING (TARGET_INT_BIT));
2391 fprintf_unfiltered (file,
2392 "gdbarch_dump: TARGET_INT_BIT = %d\n",
2393 TARGET_INT_BIT);
2394 #endif
2395 #ifdef TARGET_LONG_BIT
2396 fprintf_unfiltered (file,
2397 "gdbarch_dump: TARGET_LONG_BIT # %s\n",
2398 XSTRING (TARGET_LONG_BIT));
2399 fprintf_unfiltered (file,
2400 "gdbarch_dump: TARGET_LONG_BIT = %d\n",
2401 TARGET_LONG_BIT);
2402 #endif
2403 #ifdef TARGET_LONG_DOUBLE_BIT
2404 fprintf_unfiltered (file,
2405 "gdbarch_dump: TARGET_LONG_DOUBLE_BIT # %s\n",
2406 XSTRING (TARGET_LONG_DOUBLE_BIT));
2407 fprintf_unfiltered (file,
2408 "gdbarch_dump: TARGET_LONG_DOUBLE_BIT = %d\n",
2409 TARGET_LONG_DOUBLE_BIT);
2410 #endif
2411 #ifdef TARGET_LONG_DOUBLE_FORMAT
2412 fprintf_unfiltered (file,
2413 "gdbarch_dump: TARGET_LONG_DOUBLE_FORMAT # %s\n",
2414 XSTRING (TARGET_LONG_DOUBLE_FORMAT));
2415 fprintf_unfiltered (file,
2416 "gdbarch_dump: TARGET_LONG_DOUBLE_FORMAT = %s\n",
2417 (TARGET_LONG_DOUBLE_FORMAT)->name);
2418 #endif
2419 #ifdef TARGET_LONG_LONG_BIT
2420 fprintf_unfiltered (file,
2421 "gdbarch_dump: TARGET_LONG_LONG_BIT # %s\n",
2422 XSTRING (TARGET_LONG_LONG_BIT));
2423 fprintf_unfiltered (file,
2424 "gdbarch_dump: TARGET_LONG_LONG_BIT = %d\n",
2425 TARGET_LONG_LONG_BIT);
2426 #endif
2427 #ifdef TARGET_OSABI
2428 fprintf_unfiltered (file,
2429 "gdbarch_dump: TARGET_OSABI # %s\n",
2430 XSTRING (TARGET_OSABI));
2431 fprintf_unfiltered (file,
2432 "gdbarch_dump: TARGET_OSABI = %ld\n",
2433 (long) TARGET_OSABI);
2434 #endif
2435 #ifdef TARGET_PRINT_INSN
2436 fprintf_unfiltered (file,
2437 "gdbarch_dump: %s # %s\n",
2438 "TARGET_PRINT_INSN(vma, info)",
2439 XSTRING (TARGET_PRINT_INSN (vma, info)));
2440 fprintf_unfiltered (file,
2441 "gdbarch_dump: TARGET_PRINT_INSN = <0x%08lx>\n",
2442 (long) current_gdbarch->print_insn
2443 /*TARGET_PRINT_INSN ()*/);
2444 #endif
2445 #ifdef TARGET_PTR_BIT
2446 fprintf_unfiltered (file,
2447 "gdbarch_dump: TARGET_PTR_BIT # %s\n",
2448 XSTRING (TARGET_PTR_BIT));
2449 fprintf_unfiltered (file,
2450 "gdbarch_dump: TARGET_PTR_BIT = %d\n",
2451 TARGET_PTR_BIT);
2452 #endif
2453 #ifdef TARGET_READ_PC_P
2454 fprintf_unfiltered (file,
2455 "gdbarch_dump: %s # %s\n",
2456 "TARGET_READ_PC_P()",
2457 XSTRING (TARGET_READ_PC_P ()));
2458 fprintf_unfiltered (file,
2459 "gdbarch_dump: TARGET_READ_PC_P() = %d\n",
2460 TARGET_READ_PC_P ());
2461 #endif
2462 #ifdef TARGET_READ_PC
2463 fprintf_unfiltered (file,
2464 "gdbarch_dump: %s # %s\n",
2465 "TARGET_READ_PC(ptid)",
2466 XSTRING (TARGET_READ_PC (ptid)));
2467 fprintf_unfiltered (file,
2468 "gdbarch_dump: TARGET_READ_PC = <0x%08lx>\n",
2469 (long) current_gdbarch->read_pc
2470 /*TARGET_READ_PC ()*/);
2471 #endif
2472 #ifdef TARGET_READ_SP_P
2473 fprintf_unfiltered (file,
2474 "gdbarch_dump: %s # %s\n",
2475 "TARGET_READ_SP_P()",
2476 XSTRING (TARGET_READ_SP_P ()));
2477 fprintf_unfiltered (file,
2478 "gdbarch_dump: TARGET_READ_SP_P() = %d\n",
2479 TARGET_READ_SP_P ());
2480 #endif
2481 #ifdef TARGET_READ_SP
2482 fprintf_unfiltered (file,
2483 "gdbarch_dump: %s # %s\n",
2484 "TARGET_READ_SP()",
2485 XSTRING (TARGET_READ_SP ()));
2486 fprintf_unfiltered (file,
2487 "gdbarch_dump: TARGET_READ_SP = <0x%08lx>\n",
2488 (long) current_gdbarch->read_sp
2489 /*TARGET_READ_SP ()*/);
2490 #endif
2491 #ifdef TARGET_SHORT_BIT
2492 fprintf_unfiltered (file,
2493 "gdbarch_dump: TARGET_SHORT_BIT # %s\n",
2494 XSTRING (TARGET_SHORT_BIT));
2495 fprintf_unfiltered (file,
2496 "gdbarch_dump: TARGET_SHORT_BIT = %d\n",
2497 TARGET_SHORT_BIT);
2498 #endif
2499 #ifdef TARGET_VIRTUAL_FRAME_POINTER
2500 fprintf_unfiltered (file,
2501 "gdbarch_dump: %s # %s\n",
2502 "TARGET_VIRTUAL_FRAME_POINTER(pc, frame_regnum, frame_offset)",
2503 XSTRING (TARGET_VIRTUAL_FRAME_POINTER (pc, frame_regnum, frame_offset)));
2504 fprintf_unfiltered (file,
2505 "gdbarch_dump: TARGET_VIRTUAL_FRAME_POINTER = <0x%08lx>\n",
2506 (long) current_gdbarch->virtual_frame_pointer
2507 /*TARGET_VIRTUAL_FRAME_POINTER ()*/);
2508 #endif
2509 #ifdef TARGET_WRITE_PC
2510 fprintf_unfiltered (file,
2511 "gdbarch_dump: %s # %s\n",
2512 "TARGET_WRITE_PC(val, ptid)",
2513 XSTRING (TARGET_WRITE_PC (val, ptid)));
2514 fprintf_unfiltered (file,
2515 "gdbarch_dump: TARGET_WRITE_PC = <0x%08lx>\n",
2516 (long) current_gdbarch->write_pc
2517 /*TARGET_WRITE_PC ()*/);
2518 #endif
2519 fprintf_unfiltered (file,
2520 "gdbarch_dump: gdbarch_unwind_dummy_id_p() = %d\n",
2521 gdbarch_unwind_dummy_id_p (current_gdbarch));
2522 fprintf_unfiltered (file,
2523 "gdbarch_dump: unwind_dummy_id = 0x%08lx\n",
2524 (long) current_gdbarch->unwind_dummy_id);
2525 fprintf_unfiltered (file,
2526 "gdbarch_dump: gdbarch_unwind_pc_p() = %d\n",
2527 gdbarch_unwind_pc_p (current_gdbarch));
2528 fprintf_unfiltered (file,
2529 "gdbarch_dump: unwind_pc = 0x%08lx\n",
2530 (long) current_gdbarch->unwind_pc);
2531 fprintf_unfiltered (file,
2532 "gdbarch_dump: gdbarch_unwind_sp_p() = %d\n",
2533 gdbarch_unwind_sp_p (current_gdbarch));
2534 fprintf_unfiltered (file,
2535 "gdbarch_dump: unwind_sp = 0x%08lx\n",
2536 (long) current_gdbarch->unwind_sp);
2537 #ifdef USE_STRUCT_CONVENTION
2538 fprintf_unfiltered (file,
2539 "gdbarch_dump: %s # %s\n",
2540 "USE_STRUCT_CONVENTION(gcc_p, value_type)",
2541 XSTRING (USE_STRUCT_CONVENTION (gcc_p, value_type)));
2542 fprintf_unfiltered (file,
2543 "gdbarch_dump: USE_STRUCT_CONVENTION = <0x%08lx>\n",
2544 (long) current_gdbarch->use_struct_convention
2545 /*USE_STRUCT_CONVENTION ()*/);
2546 #endif
2547 #ifdef VALUE_TO_REGISTER
2548 fprintf_unfiltered (file,
2549 "gdbarch_dump: %s # %s\n",
2550 "VALUE_TO_REGISTER(frame, regnum, type, buf)",
2551 XSTRING (VALUE_TO_REGISTER (frame, regnum, type, buf)));
2552 fprintf_unfiltered (file,
2553 "gdbarch_dump: VALUE_TO_REGISTER = <0x%08lx>\n",
2554 (long) current_gdbarch->value_to_register
2555 /*VALUE_TO_REGISTER ()*/);
2556 #endif
2557 if (current_gdbarch->dump_tdep != NULL)
2558 current_gdbarch->dump_tdep (current_gdbarch, file);
2559 }
2560
2561 struct gdbarch_tdep *
2562 gdbarch_tdep (struct gdbarch *gdbarch)
2563 {
2564 if (gdbarch_debug >= 2)
2565 fprintf_unfiltered (gdb_stdlog, "gdbarch_tdep called\n");
2566 return gdbarch->tdep;
2567 }
2568
2569
2570 const struct bfd_arch_info *
2571 gdbarch_bfd_arch_info (struct gdbarch *gdbarch)
2572 {
2573 gdb_assert (gdbarch != NULL);
2574 if (gdbarch_debug >= 2)
2575 fprintf_unfiltered (gdb_stdlog, "gdbarch_bfd_arch_info called\n");
2576 return gdbarch->bfd_arch_info;
2577 }
2578
2579 int
2580 gdbarch_byte_order (struct gdbarch *gdbarch)
2581 {
2582 gdb_assert (gdbarch != NULL);
2583 if (gdbarch_debug >= 2)
2584 fprintf_unfiltered (gdb_stdlog, "gdbarch_byte_order called\n");
2585 return gdbarch->byte_order;
2586 }
2587
2588 enum gdb_osabi
2589 gdbarch_osabi (struct gdbarch *gdbarch)
2590 {
2591 gdb_assert (gdbarch != NULL);
2592 if (gdbarch_debug >= 2)
2593 fprintf_unfiltered (gdb_stdlog, "gdbarch_osabi called\n");
2594 return gdbarch->osabi;
2595 }
2596
2597 int
2598 gdbarch_short_bit (struct gdbarch *gdbarch)
2599 {
2600 gdb_assert (gdbarch != NULL);
2601 /* Skip verify of short_bit, invalid_p == 0 */
2602 if (gdbarch_debug >= 2)
2603 fprintf_unfiltered (gdb_stdlog, "gdbarch_short_bit called\n");
2604 return gdbarch->short_bit;
2605 }
2606
2607 void
2608 set_gdbarch_short_bit (struct gdbarch *gdbarch,
2609 int short_bit)
2610 {
2611 gdbarch->short_bit = short_bit;
2612 }
2613
2614 int
2615 gdbarch_int_bit (struct gdbarch *gdbarch)
2616 {
2617 gdb_assert (gdbarch != NULL);
2618 /* Skip verify of int_bit, invalid_p == 0 */
2619 if (gdbarch_debug >= 2)
2620 fprintf_unfiltered (gdb_stdlog, "gdbarch_int_bit called\n");
2621 return gdbarch->int_bit;
2622 }
2623
2624 void
2625 set_gdbarch_int_bit (struct gdbarch *gdbarch,
2626 int int_bit)
2627 {
2628 gdbarch->int_bit = int_bit;
2629 }
2630
2631 int
2632 gdbarch_long_bit (struct gdbarch *gdbarch)
2633 {
2634 gdb_assert (gdbarch != NULL);
2635 /* Skip verify of long_bit, invalid_p == 0 */
2636 if (gdbarch_debug >= 2)
2637 fprintf_unfiltered (gdb_stdlog, "gdbarch_long_bit called\n");
2638 return gdbarch->long_bit;
2639 }
2640
2641 void
2642 set_gdbarch_long_bit (struct gdbarch *gdbarch,
2643 int long_bit)
2644 {
2645 gdbarch->long_bit = long_bit;
2646 }
2647
2648 int
2649 gdbarch_long_long_bit (struct gdbarch *gdbarch)
2650 {
2651 gdb_assert (gdbarch != NULL);
2652 /* Skip verify of long_long_bit, invalid_p == 0 */
2653 if (gdbarch_debug >= 2)
2654 fprintf_unfiltered (gdb_stdlog, "gdbarch_long_long_bit called\n");
2655 return gdbarch->long_long_bit;
2656 }
2657
2658 void
2659 set_gdbarch_long_long_bit (struct gdbarch *gdbarch,
2660 int long_long_bit)
2661 {
2662 gdbarch->long_long_bit = long_long_bit;
2663 }
2664
2665 int
2666 gdbarch_float_bit (struct gdbarch *gdbarch)
2667 {
2668 gdb_assert (gdbarch != NULL);
2669 /* Skip verify of float_bit, invalid_p == 0 */
2670 if (gdbarch_debug >= 2)
2671 fprintf_unfiltered (gdb_stdlog, "gdbarch_float_bit called\n");
2672 return gdbarch->float_bit;
2673 }
2674
2675 void
2676 set_gdbarch_float_bit (struct gdbarch *gdbarch,
2677 int float_bit)
2678 {
2679 gdbarch->float_bit = float_bit;
2680 }
2681
2682 int
2683 gdbarch_double_bit (struct gdbarch *gdbarch)
2684 {
2685 gdb_assert (gdbarch != NULL);
2686 /* Skip verify of double_bit, invalid_p == 0 */
2687 if (gdbarch_debug >= 2)
2688 fprintf_unfiltered (gdb_stdlog, "gdbarch_double_bit called\n");
2689 return gdbarch->double_bit;
2690 }
2691
2692 void
2693 set_gdbarch_double_bit (struct gdbarch *gdbarch,
2694 int double_bit)
2695 {
2696 gdbarch->double_bit = double_bit;
2697 }
2698
2699 int
2700 gdbarch_long_double_bit (struct gdbarch *gdbarch)
2701 {
2702 gdb_assert (gdbarch != NULL);
2703 /* Skip verify of long_double_bit, invalid_p == 0 */
2704 if (gdbarch_debug >= 2)
2705 fprintf_unfiltered (gdb_stdlog, "gdbarch_long_double_bit called\n");
2706 return gdbarch->long_double_bit;
2707 }
2708
2709 void
2710 set_gdbarch_long_double_bit (struct gdbarch *gdbarch,
2711 int long_double_bit)
2712 {
2713 gdbarch->long_double_bit = long_double_bit;
2714 }
2715
2716 int
2717 gdbarch_ptr_bit (struct gdbarch *gdbarch)
2718 {
2719 gdb_assert (gdbarch != NULL);
2720 /* Skip verify of ptr_bit, invalid_p == 0 */
2721 if (gdbarch_debug >= 2)
2722 fprintf_unfiltered (gdb_stdlog, "gdbarch_ptr_bit called\n");
2723 return gdbarch->ptr_bit;
2724 }
2725
2726 void
2727 set_gdbarch_ptr_bit (struct gdbarch *gdbarch,
2728 int ptr_bit)
2729 {
2730 gdbarch->ptr_bit = ptr_bit;
2731 }
2732
2733 int
2734 gdbarch_addr_bit (struct gdbarch *gdbarch)
2735 {
2736 gdb_assert (gdbarch != NULL);
2737 /* Check variable changed from pre-default. */
2738 gdb_assert (gdbarch->addr_bit != 0);
2739 if (gdbarch_debug >= 2)
2740 fprintf_unfiltered (gdb_stdlog, "gdbarch_addr_bit called\n");
2741 return gdbarch->addr_bit;
2742 }
2743
2744 void
2745 set_gdbarch_addr_bit (struct gdbarch *gdbarch,
2746 int addr_bit)
2747 {
2748 gdbarch->addr_bit = addr_bit;
2749 }
2750
2751 int
2752 gdbarch_bfd_vma_bit (struct gdbarch *gdbarch)
2753 {
2754 gdb_assert (gdbarch != NULL);
2755 /* Skip verify of bfd_vma_bit, invalid_p == 0 */
2756 if (gdbarch_debug >= 2)
2757 fprintf_unfiltered (gdb_stdlog, "gdbarch_bfd_vma_bit called\n");
2758 return gdbarch->bfd_vma_bit;
2759 }
2760
2761 void
2762 set_gdbarch_bfd_vma_bit (struct gdbarch *gdbarch,
2763 int bfd_vma_bit)
2764 {
2765 gdbarch->bfd_vma_bit = bfd_vma_bit;
2766 }
2767
2768 int
2769 gdbarch_char_signed (struct gdbarch *gdbarch)
2770 {
2771 gdb_assert (gdbarch != NULL);
2772 /* Check variable changed from pre-default. */
2773 gdb_assert (gdbarch->char_signed != -1);
2774 if (gdbarch_debug >= 2)
2775 fprintf_unfiltered (gdb_stdlog, "gdbarch_char_signed called\n");
2776 return gdbarch->char_signed;
2777 }
2778
2779 void
2780 set_gdbarch_char_signed (struct gdbarch *gdbarch,
2781 int char_signed)
2782 {
2783 gdbarch->char_signed = char_signed;
2784 }
2785
2786 int
2787 gdbarch_read_pc_p (struct gdbarch *gdbarch)
2788 {
2789 gdb_assert (gdbarch != NULL);
2790 return gdbarch->read_pc != NULL;
2791 }
2792
2793 CORE_ADDR
2794 gdbarch_read_pc (struct gdbarch *gdbarch, ptid_t ptid)
2795 {
2796 gdb_assert (gdbarch != NULL);
2797 gdb_assert (gdbarch->read_pc != NULL);
2798 if (gdbarch_debug >= 2)
2799 fprintf_unfiltered (gdb_stdlog, "gdbarch_read_pc called\n");
2800 return gdbarch->read_pc (ptid);
2801 }
2802
2803 void
2804 set_gdbarch_read_pc (struct gdbarch *gdbarch,
2805 gdbarch_read_pc_ftype read_pc)
2806 {
2807 gdbarch->read_pc = read_pc;
2808 }
2809
2810 void
2811 gdbarch_write_pc (struct gdbarch *gdbarch, CORE_ADDR val, ptid_t ptid)
2812 {
2813 gdb_assert (gdbarch != NULL);
2814 gdb_assert (gdbarch->write_pc != NULL);
2815 if (gdbarch_debug >= 2)
2816 fprintf_unfiltered (gdb_stdlog, "gdbarch_write_pc called\n");
2817 gdbarch->write_pc (val, ptid);
2818 }
2819
2820 void
2821 set_gdbarch_write_pc (struct gdbarch *gdbarch,
2822 gdbarch_write_pc_ftype write_pc)
2823 {
2824 gdbarch->write_pc = write_pc;
2825 }
2826
2827 int
2828 gdbarch_read_sp_p (struct gdbarch *gdbarch)
2829 {
2830 gdb_assert (gdbarch != NULL);
2831 return gdbarch->read_sp != NULL;
2832 }
2833
2834 CORE_ADDR
2835 gdbarch_read_sp (struct gdbarch *gdbarch)
2836 {
2837 gdb_assert (gdbarch != NULL);
2838 gdb_assert (gdbarch->read_sp != NULL);
2839 if (gdbarch_debug >= 2)
2840 fprintf_unfiltered (gdb_stdlog, "gdbarch_read_sp called\n");
2841 return gdbarch->read_sp ();
2842 }
2843
2844 void
2845 set_gdbarch_read_sp (struct gdbarch *gdbarch,
2846 gdbarch_read_sp_ftype read_sp)
2847 {
2848 gdbarch->read_sp = read_sp;
2849 }
2850
2851 void
2852 gdbarch_virtual_frame_pointer (struct gdbarch *gdbarch, CORE_ADDR pc, int *frame_regnum, LONGEST *frame_offset)
2853 {
2854 gdb_assert (gdbarch != NULL);
2855 gdb_assert (gdbarch->virtual_frame_pointer != NULL);
2856 if (gdbarch_debug >= 2)
2857 fprintf_unfiltered (gdb_stdlog, "gdbarch_virtual_frame_pointer called\n");
2858 gdbarch->virtual_frame_pointer (pc, frame_regnum, frame_offset);
2859 }
2860
2861 void
2862 set_gdbarch_virtual_frame_pointer (struct gdbarch *gdbarch,
2863 gdbarch_virtual_frame_pointer_ftype virtual_frame_pointer)
2864 {
2865 gdbarch->virtual_frame_pointer = virtual_frame_pointer;
2866 }
2867
2868 int
2869 gdbarch_pseudo_register_read_p (struct gdbarch *gdbarch)
2870 {
2871 gdb_assert (gdbarch != NULL);
2872 return gdbarch->pseudo_register_read != NULL;
2873 }
2874
2875 void
2876 gdbarch_pseudo_register_read (struct gdbarch *gdbarch, struct regcache *regcache, int cookednum, void *buf)
2877 {
2878 gdb_assert (gdbarch != NULL);
2879 gdb_assert (gdbarch->pseudo_register_read != NULL);
2880 if (gdbarch_debug >= 2)
2881 fprintf_unfiltered (gdb_stdlog, "gdbarch_pseudo_register_read called\n");
2882 gdbarch->pseudo_register_read (gdbarch, regcache, cookednum, buf);
2883 }
2884
2885 void
2886 set_gdbarch_pseudo_register_read (struct gdbarch *gdbarch,
2887 gdbarch_pseudo_register_read_ftype pseudo_register_read)
2888 {
2889 gdbarch->pseudo_register_read = pseudo_register_read;
2890 }
2891
2892 int
2893 gdbarch_pseudo_register_write_p (struct gdbarch *gdbarch)
2894 {
2895 gdb_assert (gdbarch != NULL);
2896 return gdbarch->pseudo_register_write != NULL;
2897 }
2898
2899 void
2900 gdbarch_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache, int cookednum, const void *buf)
2901 {
2902 gdb_assert (gdbarch != NULL);
2903 gdb_assert (gdbarch->pseudo_register_write != NULL);
2904 if (gdbarch_debug >= 2)
2905 fprintf_unfiltered (gdb_stdlog, "gdbarch_pseudo_register_write called\n");
2906 gdbarch->pseudo_register_write (gdbarch, regcache, cookednum, buf);
2907 }
2908
2909 void
2910 set_gdbarch_pseudo_register_write (struct gdbarch *gdbarch,
2911 gdbarch_pseudo_register_write_ftype pseudo_register_write)
2912 {
2913 gdbarch->pseudo_register_write = pseudo_register_write;
2914 }
2915
2916 int
2917 gdbarch_num_regs (struct gdbarch *gdbarch)
2918 {
2919 gdb_assert (gdbarch != NULL);
2920 /* Check variable changed from pre-default. */
2921 gdb_assert (gdbarch->num_regs != -1);
2922 if (gdbarch_debug >= 2)
2923 fprintf_unfiltered (gdb_stdlog, "gdbarch_num_regs called\n");
2924 return gdbarch->num_regs;
2925 }
2926
2927 void
2928 set_gdbarch_num_regs (struct gdbarch *gdbarch,
2929 int num_regs)
2930 {
2931 gdbarch->num_regs = num_regs;
2932 }
2933
2934 int
2935 gdbarch_num_pseudo_regs (struct gdbarch *gdbarch)
2936 {
2937 gdb_assert (gdbarch != NULL);
2938 /* Skip verify of num_pseudo_regs, invalid_p == 0 */
2939 if (gdbarch_debug >= 2)
2940 fprintf_unfiltered (gdb_stdlog, "gdbarch_num_pseudo_regs called\n");
2941 return gdbarch->num_pseudo_regs;
2942 }
2943
2944 void
2945 set_gdbarch_num_pseudo_regs (struct gdbarch *gdbarch,
2946 int num_pseudo_regs)
2947 {
2948 gdbarch->num_pseudo_regs = num_pseudo_regs;
2949 }
2950
2951 int
2952 gdbarch_sp_regnum (struct gdbarch *gdbarch)
2953 {
2954 gdb_assert (gdbarch != NULL);
2955 /* Skip verify of sp_regnum, invalid_p == 0 */
2956 if (gdbarch_debug >= 2)
2957 fprintf_unfiltered (gdb_stdlog, "gdbarch_sp_regnum called\n");
2958 return gdbarch->sp_regnum;
2959 }
2960
2961 void
2962 set_gdbarch_sp_regnum (struct gdbarch *gdbarch,
2963 int sp_regnum)
2964 {
2965 gdbarch->sp_regnum = sp_regnum;
2966 }
2967
2968 int
2969 gdbarch_pc_regnum (struct gdbarch *gdbarch)
2970 {
2971 gdb_assert (gdbarch != NULL);
2972 /* Skip verify of pc_regnum, invalid_p == 0 */
2973 if (gdbarch_debug >= 2)
2974 fprintf_unfiltered (gdb_stdlog, "gdbarch_pc_regnum called\n");
2975 return gdbarch->pc_regnum;
2976 }
2977
2978 void
2979 set_gdbarch_pc_regnum (struct gdbarch *gdbarch,
2980 int pc_regnum)
2981 {
2982 gdbarch->pc_regnum = pc_regnum;
2983 }
2984
2985 int
2986 gdbarch_ps_regnum (struct gdbarch *gdbarch)
2987 {
2988 gdb_assert (gdbarch != NULL);
2989 /* Skip verify of ps_regnum, invalid_p == 0 */
2990 if (gdbarch_debug >= 2)
2991 fprintf_unfiltered (gdb_stdlog, "gdbarch_ps_regnum called\n");
2992 return gdbarch->ps_regnum;
2993 }
2994
2995 void
2996 set_gdbarch_ps_regnum (struct gdbarch *gdbarch,
2997 int ps_regnum)
2998 {
2999 gdbarch->ps_regnum = ps_regnum;
3000 }
3001
3002 int
3003 gdbarch_fp0_regnum (struct gdbarch *gdbarch)
3004 {
3005 gdb_assert (gdbarch != NULL);
3006 /* Skip verify of fp0_regnum, invalid_p == 0 */
3007 if (gdbarch_debug >= 2)
3008 fprintf_unfiltered (gdb_stdlog, "gdbarch_fp0_regnum called\n");
3009 return gdbarch->fp0_regnum;
3010 }
3011
3012 void
3013 set_gdbarch_fp0_regnum (struct gdbarch *gdbarch,
3014 int fp0_regnum)
3015 {
3016 gdbarch->fp0_regnum = fp0_regnum;
3017 }
3018
3019 int
3020 gdbarch_deprecated_npc_regnum (struct gdbarch *gdbarch)
3021 {
3022 gdb_assert (gdbarch != NULL);
3023 /* Skip verify of deprecated_npc_regnum, invalid_p == 0 */
3024 if (gdbarch_debug >= 2)
3025 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_npc_regnum called\n");
3026 return gdbarch->deprecated_npc_regnum;
3027 }
3028
3029 void
3030 set_gdbarch_deprecated_npc_regnum (struct gdbarch *gdbarch,
3031 int deprecated_npc_regnum)
3032 {
3033 gdbarch->deprecated_npc_regnum = deprecated_npc_regnum;
3034 }
3035
3036 int
3037 gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch, int stab_regnr)
3038 {
3039 gdb_assert (gdbarch != NULL);
3040 gdb_assert (gdbarch->stab_reg_to_regnum != NULL);
3041 if (gdbarch_debug >= 2)
3042 fprintf_unfiltered (gdb_stdlog, "gdbarch_stab_reg_to_regnum called\n");
3043 return gdbarch->stab_reg_to_regnum (stab_regnr);
3044 }
3045
3046 void
3047 set_gdbarch_stab_reg_to_regnum (struct gdbarch *gdbarch,
3048 gdbarch_stab_reg_to_regnum_ftype stab_reg_to_regnum)
3049 {
3050 gdbarch->stab_reg_to_regnum = stab_reg_to_regnum;
3051 }
3052
3053 int
3054 gdbarch_ecoff_reg_to_regnum (struct gdbarch *gdbarch, int ecoff_regnr)
3055 {
3056 gdb_assert (gdbarch != NULL);
3057 gdb_assert (gdbarch->ecoff_reg_to_regnum != NULL);
3058 if (gdbarch_debug >= 2)
3059 fprintf_unfiltered (gdb_stdlog, "gdbarch_ecoff_reg_to_regnum called\n");
3060 return gdbarch->ecoff_reg_to_regnum (ecoff_regnr);
3061 }
3062
3063 void
3064 set_gdbarch_ecoff_reg_to_regnum (struct gdbarch *gdbarch,
3065 gdbarch_ecoff_reg_to_regnum_ftype ecoff_reg_to_regnum)
3066 {
3067 gdbarch->ecoff_reg_to_regnum = ecoff_reg_to_regnum;
3068 }
3069
3070 int
3071 gdbarch_dwarf_reg_to_regnum (struct gdbarch *gdbarch, int dwarf_regnr)
3072 {
3073 gdb_assert (gdbarch != NULL);
3074 gdb_assert (gdbarch->dwarf_reg_to_regnum != NULL);
3075 if (gdbarch_debug >= 2)
3076 fprintf_unfiltered (gdb_stdlog, "gdbarch_dwarf_reg_to_regnum called\n");
3077 return gdbarch->dwarf_reg_to_regnum (dwarf_regnr);
3078 }
3079
3080 void
3081 set_gdbarch_dwarf_reg_to_regnum (struct gdbarch *gdbarch,
3082 gdbarch_dwarf_reg_to_regnum_ftype dwarf_reg_to_regnum)
3083 {
3084 gdbarch->dwarf_reg_to_regnum = dwarf_reg_to_regnum;
3085 }
3086
3087 int
3088 gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch, int sdb_regnr)
3089 {
3090 gdb_assert (gdbarch != NULL);
3091 gdb_assert (gdbarch->sdb_reg_to_regnum != NULL);
3092 if (gdbarch_debug >= 2)
3093 fprintf_unfiltered (gdb_stdlog, "gdbarch_sdb_reg_to_regnum called\n");
3094 return gdbarch->sdb_reg_to_regnum (sdb_regnr);
3095 }
3096
3097 void
3098 set_gdbarch_sdb_reg_to_regnum (struct gdbarch *gdbarch,
3099 gdbarch_sdb_reg_to_regnum_ftype sdb_reg_to_regnum)
3100 {
3101 gdbarch->sdb_reg_to_regnum = sdb_reg_to_regnum;
3102 }
3103
3104 int
3105 gdbarch_dwarf2_reg_to_regnum (struct gdbarch *gdbarch, int dwarf2_regnr)
3106 {
3107 gdb_assert (gdbarch != NULL);
3108 gdb_assert (gdbarch->dwarf2_reg_to_regnum != NULL);
3109 if (gdbarch_debug >= 2)
3110 fprintf_unfiltered (gdb_stdlog, "gdbarch_dwarf2_reg_to_regnum called\n");
3111 return gdbarch->dwarf2_reg_to_regnum (dwarf2_regnr);
3112 }
3113
3114 void
3115 set_gdbarch_dwarf2_reg_to_regnum (struct gdbarch *gdbarch,
3116 gdbarch_dwarf2_reg_to_regnum_ftype dwarf2_reg_to_regnum)
3117 {
3118 gdbarch->dwarf2_reg_to_regnum = dwarf2_reg_to_regnum;
3119 }
3120
3121 const char *
3122 gdbarch_register_name (struct gdbarch *gdbarch, int regnr)
3123 {
3124 gdb_assert (gdbarch != NULL);
3125 gdb_assert (gdbarch->register_name != NULL);
3126 if (gdbarch_debug >= 2)
3127 fprintf_unfiltered (gdb_stdlog, "gdbarch_register_name called\n");
3128 return gdbarch->register_name (regnr);
3129 }
3130
3131 void
3132 set_gdbarch_register_name (struct gdbarch *gdbarch,
3133 gdbarch_register_name_ftype register_name)
3134 {
3135 gdbarch->register_name = register_name;
3136 }
3137
3138 int
3139 gdbarch_register_type_p (struct gdbarch *gdbarch)
3140 {
3141 gdb_assert (gdbarch != NULL);
3142 return gdbarch->register_type != NULL;
3143 }
3144
3145 struct type *
3146 gdbarch_register_type (struct gdbarch *gdbarch, int reg_nr)
3147 {
3148 gdb_assert (gdbarch != NULL);
3149 gdb_assert (gdbarch->register_type != NULL);
3150 if (gdbarch_debug >= 2)
3151 fprintf_unfiltered (gdb_stdlog, "gdbarch_register_type called\n");
3152 return gdbarch->register_type (gdbarch, reg_nr);
3153 }
3154
3155 void
3156 set_gdbarch_register_type (struct gdbarch *gdbarch,
3157 gdbarch_register_type_ftype register_type)
3158 {
3159 gdbarch->register_type = register_type;
3160 }
3161
3162 int
3163 gdbarch_deprecated_register_virtual_type_p (struct gdbarch *gdbarch)
3164 {
3165 gdb_assert (gdbarch != NULL);
3166 return gdbarch->deprecated_register_virtual_type != NULL;
3167 }
3168
3169 struct type *
3170 gdbarch_deprecated_register_virtual_type (struct gdbarch *gdbarch, int reg_nr)
3171 {
3172 gdb_assert (gdbarch != NULL);
3173 gdb_assert (gdbarch->deprecated_register_virtual_type != NULL);
3174 if (gdbarch_debug >= 2)
3175 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_virtual_type called\n");
3176 return gdbarch->deprecated_register_virtual_type (reg_nr);
3177 }
3178
3179 void
3180 set_gdbarch_deprecated_register_virtual_type (struct gdbarch *gdbarch,
3181 gdbarch_deprecated_register_virtual_type_ftype deprecated_register_virtual_type)
3182 {
3183 gdbarch->deprecated_register_virtual_type = deprecated_register_virtual_type;
3184 }
3185
3186 int
3187 gdbarch_deprecated_register_bytes (struct gdbarch *gdbarch)
3188 {
3189 gdb_assert (gdbarch != NULL);
3190 if (gdbarch_debug >= 2)
3191 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_bytes called\n");
3192 return gdbarch->deprecated_register_bytes;
3193 }
3194
3195 void
3196 set_gdbarch_deprecated_register_bytes (struct gdbarch *gdbarch,
3197 int deprecated_register_bytes)
3198 {
3199 gdbarch->deprecated_register_bytes = deprecated_register_bytes;
3200 }
3201
3202 int
3203 gdbarch_deprecated_register_byte_p (struct gdbarch *gdbarch)
3204 {
3205 gdb_assert (gdbarch != NULL);
3206 return gdbarch->deprecated_register_byte != generic_register_byte;
3207 }
3208
3209 int
3210 gdbarch_deprecated_register_byte (struct gdbarch *gdbarch, int reg_nr)
3211 {
3212 gdb_assert (gdbarch != NULL);
3213 gdb_assert (gdbarch->deprecated_register_byte != NULL);
3214 /* Do not check predicate: gdbarch->deprecated_register_byte != generic_register_byte, allow call. */
3215 if (gdbarch_debug >= 2)
3216 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_byte called\n");
3217 return gdbarch->deprecated_register_byte (reg_nr);
3218 }
3219
3220 void
3221 set_gdbarch_deprecated_register_byte (struct gdbarch *gdbarch,
3222 gdbarch_deprecated_register_byte_ftype deprecated_register_byte)
3223 {
3224 gdbarch->deprecated_register_byte = deprecated_register_byte;
3225 }
3226
3227 int
3228 gdbarch_deprecated_register_raw_size_p (struct gdbarch *gdbarch)
3229 {
3230 gdb_assert (gdbarch != NULL);
3231 return gdbarch->deprecated_register_raw_size != generic_register_size;
3232 }
3233
3234 int
3235 gdbarch_deprecated_register_raw_size (struct gdbarch *gdbarch, int reg_nr)
3236 {
3237 gdb_assert (gdbarch != NULL);
3238 gdb_assert (gdbarch->deprecated_register_raw_size != NULL);
3239 /* Do not check predicate: gdbarch->deprecated_register_raw_size != generic_register_size, allow call. */
3240 if (gdbarch_debug >= 2)
3241 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_raw_size called\n");
3242 return gdbarch->deprecated_register_raw_size (reg_nr);
3243 }
3244
3245 void
3246 set_gdbarch_deprecated_register_raw_size (struct gdbarch *gdbarch,
3247 gdbarch_deprecated_register_raw_size_ftype deprecated_register_raw_size)
3248 {
3249 gdbarch->deprecated_register_raw_size = deprecated_register_raw_size;
3250 }
3251
3252 int
3253 gdbarch_deprecated_register_virtual_size_p (struct gdbarch *gdbarch)
3254 {
3255 gdb_assert (gdbarch != NULL);
3256 return gdbarch->deprecated_register_virtual_size != generic_register_size;
3257 }
3258
3259 int
3260 gdbarch_deprecated_register_virtual_size (struct gdbarch *gdbarch, int reg_nr)
3261 {
3262 gdb_assert (gdbarch != NULL);
3263 gdb_assert (gdbarch->deprecated_register_virtual_size != NULL);
3264 /* Do not check predicate: gdbarch->deprecated_register_virtual_size != generic_register_size, allow call. */
3265 if (gdbarch_debug >= 2)
3266 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_virtual_size called\n");
3267 return gdbarch->deprecated_register_virtual_size (reg_nr);
3268 }
3269
3270 void
3271 set_gdbarch_deprecated_register_virtual_size (struct gdbarch *gdbarch,
3272 gdbarch_deprecated_register_virtual_size_ftype deprecated_register_virtual_size)
3273 {
3274 gdbarch->deprecated_register_virtual_size = deprecated_register_virtual_size;
3275 }
3276
3277 int
3278 gdbarch_deprecated_max_register_raw_size_p (struct gdbarch *gdbarch)
3279 {
3280 gdb_assert (gdbarch != NULL);
3281 return gdbarch->deprecated_max_register_raw_size != 0;
3282 }
3283
3284 int
3285 gdbarch_deprecated_max_register_raw_size (struct gdbarch *gdbarch)
3286 {
3287 gdb_assert (gdbarch != NULL);
3288 if (gdbarch_debug >= 2)
3289 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_max_register_raw_size called\n");
3290 return gdbarch->deprecated_max_register_raw_size;
3291 }
3292
3293 void
3294 set_gdbarch_deprecated_max_register_raw_size (struct gdbarch *gdbarch,
3295 int deprecated_max_register_raw_size)
3296 {
3297 gdbarch->deprecated_max_register_raw_size = deprecated_max_register_raw_size;
3298 }
3299
3300 int
3301 gdbarch_deprecated_max_register_virtual_size_p (struct gdbarch *gdbarch)
3302 {
3303 gdb_assert (gdbarch != NULL);
3304 return gdbarch->deprecated_max_register_virtual_size != 0;
3305 }
3306
3307 int
3308 gdbarch_deprecated_max_register_virtual_size (struct gdbarch *gdbarch)
3309 {
3310 gdb_assert (gdbarch != NULL);
3311 if (gdbarch_debug >= 2)
3312 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_max_register_virtual_size called\n");
3313 return gdbarch->deprecated_max_register_virtual_size;
3314 }
3315
3316 void
3317 set_gdbarch_deprecated_max_register_virtual_size (struct gdbarch *gdbarch,
3318 int deprecated_max_register_virtual_size)
3319 {
3320 gdbarch->deprecated_max_register_virtual_size = deprecated_max_register_virtual_size;
3321 }
3322
3323 int
3324 gdbarch_unwind_dummy_id_p (struct gdbarch *gdbarch)
3325 {
3326 gdb_assert (gdbarch != NULL);
3327 return gdbarch->unwind_dummy_id != NULL;
3328 }
3329
3330 struct frame_id
3331 gdbarch_unwind_dummy_id (struct gdbarch *gdbarch, struct frame_info *info)
3332 {
3333 gdb_assert (gdbarch != NULL);
3334 gdb_assert (gdbarch->unwind_dummy_id != NULL);
3335 if (gdbarch_debug >= 2)
3336 fprintf_unfiltered (gdb_stdlog, "gdbarch_unwind_dummy_id called\n");
3337 return gdbarch->unwind_dummy_id (gdbarch, info);
3338 }
3339
3340 void
3341 set_gdbarch_unwind_dummy_id (struct gdbarch *gdbarch,
3342 gdbarch_unwind_dummy_id_ftype unwind_dummy_id)
3343 {
3344 gdbarch->unwind_dummy_id = unwind_dummy_id;
3345 }
3346
3347 int
3348 gdbarch_deprecated_save_dummy_frame_tos_p (struct gdbarch *gdbarch)
3349 {
3350 gdb_assert (gdbarch != NULL);
3351 return gdbarch->deprecated_save_dummy_frame_tos != NULL;
3352 }
3353
3354 void
3355 gdbarch_deprecated_save_dummy_frame_tos (struct gdbarch *gdbarch, CORE_ADDR sp)
3356 {
3357 gdb_assert (gdbarch != NULL);
3358 gdb_assert (gdbarch->deprecated_save_dummy_frame_tos != NULL);
3359 if (gdbarch_debug >= 2)
3360 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_save_dummy_frame_tos called\n");
3361 gdbarch->deprecated_save_dummy_frame_tos (sp);
3362 }
3363
3364 void
3365 set_gdbarch_deprecated_save_dummy_frame_tos (struct gdbarch *gdbarch,
3366 gdbarch_deprecated_save_dummy_frame_tos_ftype deprecated_save_dummy_frame_tos)
3367 {
3368 gdbarch->deprecated_save_dummy_frame_tos = deprecated_save_dummy_frame_tos;
3369 }
3370
3371 int
3372 gdbarch_deprecated_fp_regnum (struct gdbarch *gdbarch)
3373 {
3374 gdb_assert (gdbarch != NULL);
3375 /* Skip verify of deprecated_fp_regnum, invalid_p == 0 */
3376 if (gdbarch_debug >= 2)
3377 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_fp_regnum called\n");
3378 return gdbarch->deprecated_fp_regnum;
3379 }
3380
3381 void
3382 set_gdbarch_deprecated_fp_regnum (struct gdbarch *gdbarch,
3383 int deprecated_fp_regnum)
3384 {
3385 gdbarch->deprecated_fp_regnum = deprecated_fp_regnum;
3386 }
3387
3388 int
3389 gdbarch_deprecated_target_read_fp_p (struct gdbarch *gdbarch)
3390 {
3391 gdb_assert (gdbarch != NULL);
3392 return gdbarch->deprecated_target_read_fp != NULL;
3393 }
3394
3395 CORE_ADDR
3396 gdbarch_deprecated_target_read_fp (struct gdbarch *gdbarch)
3397 {
3398 gdb_assert (gdbarch != NULL);
3399 gdb_assert (gdbarch->deprecated_target_read_fp != NULL);
3400 if (gdbarch_debug >= 2)
3401 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_target_read_fp called\n");
3402 return gdbarch->deprecated_target_read_fp ();
3403 }
3404
3405 void
3406 set_gdbarch_deprecated_target_read_fp (struct gdbarch *gdbarch,
3407 gdbarch_deprecated_target_read_fp_ftype deprecated_target_read_fp)
3408 {
3409 gdbarch->deprecated_target_read_fp = deprecated_target_read_fp;
3410 }
3411
3412 int
3413 gdbarch_push_dummy_call_p (struct gdbarch *gdbarch)
3414 {
3415 gdb_assert (gdbarch != NULL);
3416 return gdbarch->push_dummy_call != NULL;
3417 }
3418
3419 CORE_ADDR
3420 gdbarch_push_dummy_call (struct gdbarch *gdbarch, CORE_ADDR func_addr, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
3421 {
3422 gdb_assert (gdbarch != NULL);
3423 gdb_assert (gdbarch->push_dummy_call != NULL);
3424 if (gdbarch_debug >= 2)
3425 fprintf_unfiltered (gdb_stdlog, "gdbarch_push_dummy_call called\n");
3426 return gdbarch->push_dummy_call (gdbarch, func_addr, regcache, bp_addr, nargs, args, sp, struct_return, struct_addr);
3427 }
3428
3429 void
3430 set_gdbarch_push_dummy_call (struct gdbarch *gdbarch,
3431 gdbarch_push_dummy_call_ftype push_dummy_call)
3432 {
3433 gdbarch->push_dummy_call = push_dummy_call;
3434 }
3435
3436 int
3437 gdbarch_deprecated_push_arguments_p (struct gdbarch *gdbarch)
3438 {
3439 gdb_assert (gdbarch != NULL);
3440 return gdbarch->deprecated_push_arguments != NULL;
3441 }
3442
3443 CORE_ADDR
3444 gdbarch_deprecated_push_arguments (struct gdbarch *gdbarch, int nargs, struct value **args, CORE_ADDR sp, int struct_return, CORE_ADDR struct_addr)
3445 {
3446 gdb_assert (gdbarch != NULL);
3447 gdb_assert (gdbarch->deprecated_push_arguments != NULL);
3448 if (gdbarch_debug >= 2)
3449 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_push_arguments called\n");
3450 return gdbarch->deprecated_push_arguments (nargs, args, sp, struct_return, struct_addr);
3451 }
3452
3453 void
3454 set_gdbarch_deprecated_push_arguments (struct gdbarch *gdbarch,
3455 gdbarch_deprecated_push_arguments_ftype deprecated_push_arguments)
3456 {
3457 gdbarch->deprecated_push_arguments = deprecated_push_arguments;
3458 }
3459
3460 int
3461 gdbarch_deprecated_use_generic_dummy_frames (struct gdbarch *gdbarch)
3462 {
3463 gdb_assert (gdbarch != NULL);
3464 /* Skip verify of deprecated_use_generic_dummy_frames, invalid_p == 0 */
3465 if (gdbarch_debug >= 2)
3466 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_use_generic_dummy_frames called\n");
3467 return gdbarch->deprecated_use_generic_dummy_frames;
3468 }
3469
3470 void
3471 set_gdbarch_deprecated_use_generic_dummy_frames (struct gdbarch *gdbarch,
3472 int deprecated_use_generic_dummy_frames)
3473 {
3474 gdbarch->deprecated_use_generic_dummy_frames = deprecated_use_generic_dummy_frames;
3475 }
3476
3477 int
3478 gdbarch_deprecated_push_return_address_p (struct gdbarch *gdbarch)
3479 {
3480 gdb_assert (gdbarch != NULL);
3481 return gdbarch->deprecated_push_return_address != NULL;
3482 }
3483
3484 CORE_ADDR
3485 gdbarch_deprecated_push_return_address (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR sp)
3486 {
3487 gdb_assert (gdbarch != NULL);
3488 gdb_assert (gdbarch->deprecated_push_return_address != NULL);
3489 if (gdbarch_debug >= 2)
3490 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_push_return_address called\n");
3491 return gdbarch->deprecated_push_return_address (pc, sp);
3492 }
3493
3494 void
3495 set_gdbarch_deprecated_push_return_address (struct gdbarch *gdbarch,
3496 gdbarch_deprecated_push_return_address_ftype deprecated_push_return_address)
3497 {
3498 gdbarch->deprecated_push_return_address = deprecated_push_return_address;
3499 }
3500
3501 int
3502 gdbarch_deprecated_dummy_write_sp_p (struct gdbarch *gdbarch)
3503 {
3504 gdb_assert (gdbarch != NULL);
3505 return gdbarch->deprecated_dummy_write_sp != NULL;
3506 }
3507
3508 void
3509 gdbarch_deprecated_dummy_write_sp (struct gdbarch *gdbarch, CORE_ADDR val)
3510 {
3511 gdb_assert (gdbarch != NULL);
3512 gdb_assert (gdbarch->deprecated_dummy_write_sp != NULL);
3513 if (gdbarch_debug >= 2)
3514 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_dummy_write_sp called\n");
3515 gdbarch->deprecated_dummy_write_sp (val);
3516 }
3517
3518 void
3519 set_gdbarch_deprecated_dummy_write_sp (struct gdbarch *gdbarch,
3520 gdbarch_deprecated_dummy_write_sp_ftype deprecated_dummy_write_sp)
3521 {
3522 gdbarch->deprecated_dummy_write_sp = deprecated_dummy_write_sp;
3523 }
3524
3525 int
3526 gdbarch_deprecated_register_size (struct gdbarch *gdbarch)
3527 {
3528 gdb_assert (gdbarch != NULL);
3529 if (gdbarch_debug >= 2)
3530 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_size called\n");
3531 return gdbarch->deprecated_register_size;
3532 }
3533
3534 void
3535 set_gdbarch_deprecated_register_size (struct gdbarch *gdbarch,
3536 int deprecated_register_size)
3537 {
3538 gdbarch->deprecated_register_size = deprecated_register_size;
3539 }
3540
3541 int
3542 gdbarch_call_dummy_location (struct gdbarch *gdbarch)
3543 {
3544 gdb_assert (gdbarch != NULL);
3545 /* Skip verify of call_dummy_location, invalid_p == 0 */
3546 if (gdbarch_debug >= 2)
3547 fprintf_unfiltered (gdb_stdlog, "gdbarch_call_dummy_location called\n");
3548 return gdbarch->call_dummy_location;
3549 }
3550
3551 void
3552 set_gdbarch_call_dummy_location (struct gdbarch *gdbarch,
3553 int call_dummy_location)
3554 {
3555 gdbarch->call_dummy_location = call_dummy_location;
3556 }
3557
3558 int
3559 gdbarch_deprecated_call_dummy_address_p (struct gdbarch *gdbarch)
3560 {
3561 gdb_assert (gdbarch != NULL);
3562 return gdbarch->deprecated_call_dummy_address != NULL;
3563 }
3564
3565 CORE_ADDR
3566 gdbarch_deprecated_call_dummy_address (struct gdbarch *gdbarch)
3567 {
3568 gdb_assert (gdbarch != NULL);
3569 gdb_assert (gdbarch->deprecated_call_dummy_address != NULL);
3570 if (gdbarch_debug >= 2)
3571 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_address called\n");
3572 return gdbarch->deprecated_call_dummy_address ();
3573 }
3574
3575 void
3576 set_gdbarch_deprecated_call_dummy_address (struct gdbarch *gdbarch,
3577 gdbarch_deprecated_call_dummy_address_ftype deprecated_call_dummy_address)
3578 {
3579 gdbarch->deprecated_call_dummy_address = deprecated_call_dummy_address;
3580 }
3581
3582 CORE_ADDR
3583 gdbarch_deprecated_call_dummy_start_offset (struct gdbarch *gdbarch)
3584 {
3585 gdb_assert (gdbarch != NULL);
3586 if (gdbarch_debug >= 2)
3587 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_start_offset called\n");
3588 return gdbarch->deprecated_call_dummy_start_offset;
3589 }
3590
3591 void
3592 set_gdbarch_deprecated_call_dummy_start_offset (struct gdbarch *gdbarch,
3593 CORE_ADDR deprecated_call_dummy_start_offset)
3594 {
3595 gdbarch->deprecated_call_dummy_start_offset = deprecated_call_dummy_start_offset;
3596 }
3597
3598 CORE_ADDR
3599 gdbarch_deprecated_call_dummy_breakpoint_offset (struct gdbarch *gdbarch)
3600 {
3601 gdb_assert (gdbarch != NULL);
3602 if (gdbarch_debug >= 2)
3603 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_breakpoint_offset called\n");
3604 return gdbarch->deprecated_call_dummy_breakpoint_offset;
3605 }
3606
3607 void
3608 set_gdbarch_deprecated_call_dummy_breakpoint_offset (struct gdbarch *gdbarch,
3609 CORE_ADDR deprecated_call_dummy_breakpoint_offset)
3610 {
3611 gdbarch->deprecated_call_dummy_breakpoint_offset = deprecated_call_dummy_breakpoint_offset;
3612 }
3613
3614 int
3615 gdbarch_deprecated_call_dummy_length (struct gdbarch *gdbarch)
3616 {
3617 gdb_assert (gdbarch != NULL);
3618 if (gdbarch_debug >= 2)
3619 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_length called\n");
3620 return gdbarch->deprecated_call_dummy_length;
3621 }
3622
3623 void
3624 set_gdbarch_deprecated_call_dummy_length (struct gdbarch *gdbarch,
3625 int deprecated_call_dummy_length)
3626 {
3627 gdbarch->deprecated_call_dummy_length = deprecated_call_dummy_length;
3628 }
3629
3630 LONGEST *
3631 gdbarch_deprecated_call_dummy_words (struct gdbarch *gdbarch)
3632 {
3633 gdb_assert (gdbarch != NULL);
3634 /* Skip verify of deprecated_call_dummy_words, invalid_p == 0 */
3635 if (gdbarch_debug >= 2)
3636 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_words called\n");
3637 return gdbarch->deprecated_call_dummy_words;
3638 }
3639
3640 void
3641 set_gdbarch_deprecated_call_dummy_words (struct gdbarch *gdbarch,
3642 LONGEST * deprecated_call_dummy_words)
3643 {
3644 gdbarch->deprecated_call_dummy_words = deprecated_call_dummy_words;
3645 }
3646
3647 int
3648 gdbarch_deprecated_sizeof_call_dummy_words (struct gdbarch *gdbarch)
3649 {
3650 gdb_assert (gdbarch != NULL);
3651 /* Skip verify of deprecated_sizeof_call_dummy_words, invalid_p == 0 */
3652 if (gdbarch_debug >= 2)
3653 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_sizeof_call_dummy_words called\n");
3654 return gdbarch->deprecated_sizeof_call_dummy_words;
3655 }
3656
3657 void
3658 set_gdbarch_deprecated_sizeof_call_dummy_words (struct gdbarch *gdbarch,
3659 int deprecated_sizeof_call_dummy_words)
3660 {
3661 gdbarch->deprecated_sizeof_call_dummy_words = deprecated_sizeof_call_dummy_words;
3662 }
3663
3664 int
3665 gdbarch_deprecated_call_dummy_stack_adjust_p (struct gdbarch *gdbarch)
3666 {
3667 gdb_assert (gdbarch != NULL);
3668 return gdbarch->deprecated_call_dummy_stack_adjust != 0;
3669 }
3670
3671 int
3672 gdbarch_deprecated_call_dummy_stack_adjust (struct gdbarch *gdbarch)
3673 {
3674 gdb_assert (gdbarch != NULL);
3675 if (gdbarch_debug >= 2)
3676 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_call_dummy_stack_adjust called\n");
3677 return gdbarch->deprecated_call_dummy_stack_adjust;
3678 }
3679
3680 void
3681 set_gdbarch_deprecated_call_dummy_stack_adjust (struct gdbarch *gdbarch,
3682 int deprecated_call_dummy_stack_adjust)
3683 {
3684 gdbarch->deprecated_call_dummy_stack_adjust = deprecated_call_dummy_stack_adjust;
3685 }
3686
3687 int
3688 gdbarch_deprecated_fix_call_dummy_p (struct gdbarch *gdbarch)
3689 {
3690 gdb_assert (gdbarch != NULL);
3691 return gdbarch->deprecated_fix_call_dummy != NULL;
3692 }
3693
3694 void
3695 gdbarch_deprecated_fix_call_dummy (struct gdbarch *gdbarch, char *dummy, CORE_ADDR pc, CORE_ADDR fun, int nargs, struct value **args, struct type *type, int gcc_p)
3696 {
3697 gdb_assert (gdbarch != NULL);
3698 gdb_assert (gdbarch->deprecated_fix_call_dummy != NULL);
3699 if (gdbarch_debug >= 2)
3700 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_fix_call_dummy called\n");
3701 gdbarch->deprecated_fix_call_dummy (dummy, pc, fun, nargs, args, type, gcc_p);
3702 }
3703
3704 void
3705 set_gdbarch_deprecated_fix_call_dummy (struct gdbarch *gdbarch,
3706 gdbarch_deprecated_fix_call_dummy_ftype deprecated_fix_call_dummy)
3707 {
3708 gdbarch->deprecated_fix_call_dummy = deprecated_fix_call_dummy;
3709 }
3710
3711 int
3712 gdbarch_push_dummy_code_p (struct gdbarch *gdbarch)
3713 {
3714 gdb_assert (gdbarch != NULL);
3715 return gdbarch->push_dummy_code != NULL;
3716 }
3717
3718 CORE_ADDR
3719 gdbarch_push_dummy_code (struct gdbarch *gdbarch, CORE_ADDR sp, CORE_ADDR funaddr, int using_gcc, struct value **args, int nargs, struct type *value_type, CORE_ADDR *real_pc, CORE_ADDR *bp_addr)
3720 {
3721 gdb_assert (gdbarch != NULL);
3722 gdb_assert (gdbarch->push_dummy_code != NULL);
3723 if (gdbarch_debug >= 2)
3724 fprintf_unfiltered (gdb_stdlog, "gdbarch_push_dummy_code called\n");
3725 return gdbarch->push_dummy_code (gdbarch, sp, funaddr, using_gcc, args, nargs, value_type, real_pc, bp_addr);
3726 }
3727
3728 void
3729 set_gdbarch_push_dummy_code (struct gdbarch *gdbarch,
3730 gdbarch_push_dummy_code_ftype push_dummy_code)
3731 {
3732 gdbarch->push_dummy_code = push_dummy_code;
3733 }
3734
3735 int
3736 gdbarch_deprecated_push_dummy_frame_p (struct gdbarch *gdbarch)
3737 {
3738 gdb_assert (gdbarch != NULL);
3739 return gdbarch->deprecated_push_dummy_frame != NULL;
3740 }
3741
3742 void
3743 gdbarch_deprecated_push_dummy_frame (struct gdbarch *gdbarch)
3744 {
3745 gdb_assert (gdbarch != NULL);
3746 gdb_assert (gdbarch->deprecated_push_dummy_frame != NULL);
3747 if (gdbarch_debug >= 2)
3748 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_push_dummy_frame called\n");
3749 gdbarch->deprecated_push_dummy_frame ();
3750 }
3751
3752 void
3753 set_gdbarch_deprecated_push_dummy_frame (struct gdbarch *gdbarch,
3754 gdbarch_deprecated_push_dummy_frame_ftype deprecated_push_dummy_frame)
3755 {
3756 gdbarch->deprecated_push_dummy_frame = deprecated_push_dummy_frame;
3757 }
3758
3759 int
3760 gdbarch_deprecated_extra_stack_alignment_needed (struct gdbarch *gdbarch)
3761 {
3762 gdb_assert (gdbarch != NULL);
3763 /* Skip verify of deprecated_extra_stack_alignment_needed, invalid_p == 0 */
3764 if (gdbarch_debug >= 2)
3765 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_extra_stack_alignment_needed called\n");
3766 return gdbarch->deprecated_extra_stack_alignment_needed;
3767 }
3768
3769 void
3770 set_gdbarch_deprecated_extra_stack_alignment_needed (struct gdbarch *gdbarch,
3771 int deprecated_extra_stack_alignment_needed)
3772 {
3773 gdbarch->deprecated_extra_stack_alignment_needed = deprecated_extra_stack_alignment_needed;
3774 }
3775
3776 int
3777 gdbarch_deprecated_do_registers_info_p (struct gdbarch *gdbarch)
3778 {
3779 gdb_assert (gdbarch != NULL);
3780 return gdbarch->deprecated_do_registers_info != NULL;
3781 }
3782
3783 void
3784 gdbarch_deprecated_do_registers_info (struct gdbarch *gdbarch, int reg_nr, int fpregs)
3785 {
3786 gdb_assert (gdbarch != NULL);
3787 gdb_assert (gdbarch->deprecated_do_registers_info != NULL);
3788 if (gdbarch_debug >= 2)
3789 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_do_registers_info called\n");
3790 gdbarch->deprecated_do_registers_info (reg_nr, fpregs);
3791 }
3792
3793 void
3794 set_gdbarch_deprecated_do_registers_info (struct gdbarch *gdbarch,
3795 gdbarch_deprecated_do_registers_info_ftype deprecated_do_registers_info)
3796 {
3797 gdbarch->deprecated_do_registers_info = deprecated_do_registers_info;
3798 }
3799
3800 void
3801 gdbarch_print_registers_info (struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, int regnum, int all)
3802 {
3803 gdb_assert (gdbarch != NULL);
3804 gdb_assert (gdbarch->print_registers_info != NULL);
3805 if (gdbarch_debug >= 2)
3806 fprintf_unfiltered (gdb_stdlog, "gdbarch_print_registers_info called\n");
3807 gdbarch->print_registers_info (gdbarch, file, frame, regnum, all);
3808 }
3809
3810 void
3811 set_gdbarch_print_registers_info (struct gdbarch *gdbarch,
3812 gdbarch_print_registers_info_ftype print_registers_info)
3813 {
3814 gdbarch->print_registers_info = print_registers_info;
3815 }
3816
3817 int
3818 gdbarch_print_float_info_p (struct gdbarch *gdbarch)
3819 {
3820 gdb_assert (gdbarch != NULL);
3821 return gdbarch->print_float_info != NULL;
3822 }
3823
3824 void
3825 gdbarch_print_float_info (struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, const char *args)
3826 {
3827 gdb_assert (gdbarch != NULL);
3828 gdb_assert (gdbarch->print_float_info != NULL);
3829 if (gdbarch_debug >= 2)
3830 fprintf_unfiltered (gdb_stdlog, "gdbarch_print_float_info called\n");
3831 gdbarch->print_float_info (gdbarch, file, frame, args);
3832 }
3833
3834 void
3835 set_gdbarch_print_float_info (struct gdbarch *gdbarch,
3836 gdbarch_print_float_info_ftype print_float_info)
3837 {
3838 gdbarch->print_float_info = print_float_info;
3839 }
3840
3841 int
3842 gdbarch_print_vector_info_p (struct gdbarch *gdbarch)
3843 {
3844 gdb_assert (gdbarch != NULL);
3845 return gdbarch->print_vector_info != NULL;
3846 }
3847
3848 void
3849 gdbarch_print_vector_info (struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, const char *args)
3850 {
3851 gdb_assert (gdbarch != NULL);
3852 gdb_assert (gdbarch->print_vector_info != NULL);
3853 if (gdbarch_debug >= 2)
3854 fprintf_unfiltered (gdb_stdlog, "gdbarch_print_vector_info called\n");
3855 gdbarch->print_vector_info (gdbarch, file, frame, args);
3856 }
3857
3858 void
3859 set_gdbarch_print_vector_info (struct gdbarch *gdbarch,
3860 gdbarch_print_vector_info_ftype print_vector_info)
3861 {
3862 gdbarch->print_vector_info = print_vector_info;
3863 }
3864
3865 int
3866 gdbarch_register_sim_regno (struct gdbarch *gdbarch, int reg_nr)
3867 {
3868 gdb_assert (gdbarch != NULL);
3869 gdb_assert (gdbarch->register_sim_regno != NULL);
3870 if (gdbarch_debug >= 2)
3871 fprintf_unfiltered (gdb_stdlog, "gdbarch_register_sim_regno called\n");
3872 return gdbarch->register_sim_regno (reg_nr);
3873 }
3874
3875 void
3876 set_gdbarch_register_sim_regno (struct gdbarch *gdbarch,
3877 gdbarch_register_sim_regno_ftype register_sim_regno)
3878 {
3879 gdbarch->register_sim_regno = register_sim_regno;
3880 }
3881
3882 int
3883 gdbarch_register_bytes_ok_p (struct gdbarch *gdbarch)
3884 {
3885 gdb_assert (gdbarch != NULL);
3886 return gdbarch->register_bytes_ok != NULL;
3887 }
3888
3889 int
3890 gdbarch_register_bytes_ok (struct gdbarch *gdbarch, long nr_bytes)
3891 {
3892 gdb_assert (gdbarch != NULL);
3893 gdb_assert (gdbarch->register_bytes_ok != NULL);
3894 if (gdbarch_debug >= 2)
3895 fprintf_unfiltered (gdb_stdlog, "gdbarch_register_bytes_ok called\n");
3896 return gdbarch->register_bytes_ok (nr_bytes);
3897 }
3898
3899 void
3900 set_gdbarch_register_bytes_ok (struct gdbarch *gdbarch,
3901 gdbarch_register_bytes_ok_ftype register_bytes_ok)
3902 {
3903 gdbarch->register_bytes_ok = register_bytes_ok;
3904 }
3905
3906 int
3907 gdbarch_cannot_fetch_register (struct gdbarch *gdbarch, int regnum)
3908 {
3909 gdb_assert (gdbarch != NULL);
3910 gdb_assert (gdbarch->cannot_fetch_register != NULL);
3911 if (gdbarch_debug >= 2)
3912 fprintf_unfiltered (gdb_stdlog, "gdbarch_cannot_fetch_register called\n");
3913 return gdbarch->cannot_fetch_register (regnum);
3914 }
3915
3916 void
3917 set_gdbarch_cannot_fetch_register (struct gdbarch *gdbarch,
3918 gdbarch_cannot_fetch_register_ftype cannot_fetch_register)
3919 {
3920 gdbarch->cannot_fetch_register = cannot_fetch_register;
3921 }
3922
3923 int
3924 gdbarch_cannot_store_register (struct gdbarch *gdbarch, int regnum)
3925 {
3926 gdb_assert (gdbarch != NULL);
3927 gdb_assert (gdbarch->cannot_store_register != NULL);
3928 if (gdbarch_debug >= 2)
3929 fprintf_unfiltered (gdb_stdlog, "gdbarch_cannot_store_register called\n");
3930 return gdbarch->cannot_store_register (regnum);
3931 }
3932
3933 void
3934 set_gdbarch_cannot_store_register (struct gdbarch *gdbarch,
3935 gdbarch_cannot_store_register_ftype cannot_store_register)
3936 {
3937 gdbarch->cannot_store_register = cannot_store_register;
3938 }
3939
3940 int
3941 gdbarch_get_longjmp_target_p (struct gdbarch *gdbarch)
3942 {
3943 gdb_assert (gdbarch != NULL);
3944 return gdbarch->get_longjmp_target != NULL;
3945 }
3946
3947 int
3948 gdbarch_get_longjmp_target (struct gdbarch *gdbarch, CORE_ADDR *pc)
3949 {
3950 gdb_assert (gdbarch != NULL);
3951 gdb_assert (gdbarch->get_longjmp_target != NULL);
3952 if (gdbarch_debug >= 2)
3953 fprintf_unfiltered (gdb_stdlog, "gdbarch_get_longjmp_target called\n");
3954 return gdbarch->get_longjmp_target (pc);
3955 }
3956
3957 void
3958 set_gdbarch_get_longjmp_target (struct gdbarch *gdbarch,
3959 gdbarch_get_longjmp_target_ftype get_longjmp_target)
3960 {
3961 gdbarch->get_longjmp_target = get_longjmp_target;
3962 }
3963
3964 int
3965 gdbarch_deprecated_pc_in_call_dummy_p (struct gdbarch *gdbarch)
3966 {
3967 gdb_assert (gdbarch != NULL);
3968 return gdbarch->deprecated_pc_in_call_dummy != generic_pc_in_call_dummy;
3969 }
3970
3971 int
3972 gdbarch_deprecated_pc_in_call_dummy (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR sp, CORE_ADDR frame_address)
3973 {
3974 gdb_assert (gdbarch != NULL);
3975 gdb_assert (gdbarch->deprecated_pc_in_call_dummy != NULL);
3976 /* Do not check predicate: gdbarch->deprecated_pc_in_call_dummy != generic_pc_in_call_dummy, allow call. */
3977 if (gdbarch_debug >= 2)
3978 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_pc_in_call_dummy called\n");
3979 return gdbarch->deprecated_pc_in_call_dummy (pc, sp, frame_address);
3980 }
3981
3982 void
3983 set_gdbarch_deprecated_pc_in_call_dummy (struct gdbarch *gdbarch,
3984 gdbarch_deprecated_pc_in_call_dummy_ftype deprecated_pc_in_call_dummy)
3985 {
3986 gdbarch->deprecated_pc_in_call_dummy = deprecated_pc_in_call_dummy;
3987 }
3988
3989 int
3990 gdbarch_deprecated_init_frame_pc_first_p (struct gdbarch *gdbarch)
3991 {
3992 gdb_assert (gdbarch != NULL);
3993 return gdbarch->deprecated_init_frame_pc_first != NULL;
3994 }
3995
3996 CORE_ADDR
3997 gdbarch_deprecated_init_frame_pc_first (struct gdbarch *gdbarch, int fromleaf, struct frame_info *prev)
3998 {
3999 gdb_assert (gdbarch != NULL);
4000 gdb_assert (gdbarch->deprecated_init_frame_pc_first != NULL);
4001 if (gdbarch_debug >= 2)
4002 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_init_frame_pc_first called\n");
4003 return gdbarch->deprecated_init_frame_pc_first (fromleaf, prev);
4004 }
4005
4006 void
4007 set_gdbarch_deprecated_init_frame_pc_first (struct gdbarch *gdbarch,
4008 gdbarch_deprecated_init_frame_pc_first_ftype deprecated_init_frame_pc_first)
4009 {
4010 gdbarch->deprecated_init_frame_pc_first = deprecated_init_frame_pc_first;
4011 }
4012
4013 int
4014 gdbarch_deprecated_init_frame_pc_p (struct gdbarch *gdbarch)
4015 {
4016 gdb_assert (gdbarch != NULL);
4017 return gdbarch->deprecated_init_frame_pc != NULL;
4018 }
4019
4020 CORE_ADDR
4021 gdbarch_deprecated_init_frame_pc (struct gdbarch *gdbarch, int fromleaf, struct frame_info *prev)
4022 {
4023 gdb_assert (gdbarch != NULL);
4024 gdb_assert (gdbarch->deprecated_init_frame_pc != NULL);
4025 if (gdbarch_debug >= 2)
4026 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_init_frame_pc called\n");
4027 return gdbarch->deprecated_init_frame_pc (fromleaf, prev);
4028 }
4029
4030 void
4031 set_gdbarch_deprecated_init_frame_pc (struct gdbarch *gdbarch,
4032 gdbarch_deprecated_init_frame_pc_ftype deprecated_init_frame_pc)
4033 {
4034 gdbarch->deprecated_init_frame_pc = deprecated_init_frame_pc;
4035 }
4036
4037 int
4038 gdbarch_believe_pcc_promotion (struct gdbarch *gdbarch)
4039 {
4040 gdb_assert (gdbarch != NULL);
4041 if (gdbarch_debug >= 2)
4042 fprintf_unfiltered (gdb_stdlog, "gdbarch_believe_pcc_promotion called\n");
4043 return gdbarch->believe_pcc_promotion;
4044 }
4045
4046 void
4047 set_gdbarch_believe_pcc_promotion (struct gdbarch *gdbarch,
4048 int believe_pcc_promotion)
4049 {
4050 gdbarch->believe_pcc_promotion = believe_pcc_promotion;
4051 }
4052
4053 int
4054 gdbarch_believe_pcc_promotion_type (struct gdbarch *gdbarch)
4055 {
4056 gdb_assert (gdbarch != NULL);
4057 if (gdbarch_debug >= 2)
4058 fprintf_unfiltered (gdb_stdlog, "gdbarch_believe_pcc_promotion_type called\n");
4059 return gdbarch->believe_pcc_promotion_type;
4060 }
4061
4062 void
4063 set_gdbarch_believe_pcc_promotion_type (struct gdbarch *gdbarch,
4064 int believe_pcc_promotion_type)
4065 {
4066 gdbarch->believe_pcc_promotion_type = believe_pcc_promotion_type;
4067 }
4068
4069 int
4070 gdbarch_deprecated_get_saved_register_p (struct gdbarch *gdbarch)
4071 {
4072 gdb_assert (gdbarch != NULL);
4073 return gdbarch->deprecated_get_saved_register != NULL;
4074 }
4075
4076 void
4077 gdbarch_deprecated_get_saved_register (struct gdbarch *gdbarch, char *raw_buffer, int *optimized, CORE_ADDR *addrp, struct frame_info *frame, int regnum, enum lval_type *lval)
4078 {
4079 gdb_assert (gdbarch != NULL);
4080 gdb_assert (gdbarch->deprecated_get_saved_register != NULL);
4081 if (gdbarch_debug >= 2)
4082 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_get_saved_register called\n");
4083 gdbarch->deprecated_get_saved_register (raw_buffer, optimized, addrp, frame, regnum, lval);
4084 }
4085
4086 void
4087 set_gdbarch_deprecated_get_saved_register (struct gdbarch *gdbarch,
4088 gdbarch_deprecated_get_saved_register_ftype deprecated_get_saved_register)
4089 {
4090 gdbarch->deprecated_get_saved_register = deprecated_get_saved_register;
4091 }
4092
4093 int
4094 gdbarch_deprecated_register_convertible (struct gdbarch *gdbarch, int nr)
4095 {
4096 gdb_assert (gdbarch != NULL);
4097 gdb_assert (gdbarch->deprecated_register_convertible != NULL);
4098 if (gdbarch_debug >= 2)
4099 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_convertible called\n");
4100 return gdbarch->deprecated_register_convertible (nr);
4101 }
4102
4103 void
4104 set_gdbarch_deprecated_register_convertible (struct gdbarch *gdbarch,
4105 gdbarch_deprecated_register_convertible_ftype deprecated_register_convertible)
4106 {
4107 gdbarch->deprecated_register_convertible = deprecated_register_convertible;
4108 }
4109
4110 void
4111 gdbarch_deprecated_register_convert_to_virtual (struct gdbarch *gdbarch, int regnum, struct type *type, char *from, char *to)
4112 {
4113 gdb_assert (gdbarch != NULL);
4114 gdb_assert (gdbarch->deprecated_register_convert_to_virtual != NULL);
4115 if (gdbarch_debug >= 2)
4116 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_convert_to_virtual called\n");
4117 gdbarch->deprecated_register_convert_to_virtual (regnum, type, from, to);
4118 }
4119
4120 void
4121 set_gdbarch_deprecated_register_convert_to_virtual (struct gdbarch *gdbarch,
4122 gdbarch_deprecated_register_convert_to_virtual_ftype deprecated_register_convert_to_virtual)
4123 {
4124 gdbarch->deprecated_register_convert_to_virtual = deprecated_register_convert_to_virtual;
4125 }
4126
4127 void
4128 gdbarch_deprecated_register_convert_to_raw (struct gdbarch *gdbarch, struct type *type, int regnum, const char *from, char *to)
4129 {
4130 gdb_assert (gdbarch != NULL);
4131 gdb_assert (gdbarch->deprecated_register_convert_to_raw != NULL);
4132 if (gdbarch_debug >= 2)
4133 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_register_convert_to_raw called\n");
4134 gdbarch->deprecated_register_convert_to_raw (type, regnum, from, to);
4135 }
4136
4137 void
4138 set_gdbarch_deprecated_register_convert_to_raw (struct gdbarch *gdbarch,
4139 gdbarch_deprecated_register_convert_to_raw_ftype deprecated_register_convert_to_raw)
4140 {
4141 gdbarch->deprecated_register_convert_to_raw = deprecated_register_convert_to_raw;
4142 }
4143
4144 int
4145 gdbarch_convert_register_p (struct gdbarch *gdbarch, int regnum, struct type *type)
4146 {
4147 gdb_assert (gdbarch != NULL);
4148 gdb_assert (gdbarch->convert_register_p != NULL);
4149 if (gdbarch_debug >= 2)
4150 fprintf_unfiltered (gdb_stdlog, "gdbarch_convert_register_p called\n");
4151 return gdbarch->convert_register_p (regnum, type);
4152 }
4153
4154 void
4155 set_gdbarch_convert_register_p (struct gdbarch *gdbarch,
4156 gdbarch_convert_register_p_ftype convert_register_p)
4157 {
4158 gdbarch->convert_register_p = convert_register_p;
4159 }
4160
4161 void
4162 gdbarch_register_to_value (struct gdbarch *gdbarch, struct frame_info *frame, int regnum, struct type *type, void *buf)
4163 {
4164 gdb_assert (gdbarch != NULL);
4165 gdb_assert (gdbarch->register_to_value != NULL);
4166 if (gdbarch_debug >= 2)
4167 fprintf_unfiltered (gdb_stdlog, "gdbarch_register_to_value called\n");
4168 gdbarch->register_to_value (frame, regnum, type, buf);
4169 }
4170
4171 void
4172 set_gdbarch_register_to_value (struct gdbarch *gdbarch,
4173 gdbarch_register_to_value_ftype register_to_value)
4174 {
4175 gdbarch->register_to_value = register_to_value;
4176 }
4177
4178 void
4179 gdbarch_value_to_register (struct gdbarch *gdbarch, struct frame_info *frame, int regnum, struct type *type, const void *buf)
4180 {
4181 gdb_assert (gdbarch != NULL);
4182 gdb_assert (gdbarch->value_to_register != NULL);
4183 if (gdbarch_debug >= 2)
4184 fprintf_unfiltered (gdb_stdlog, "gdbarch_value_to_register called\n");
4185 gdbarch->value_to_register (frame, regnum, type, buf);
4186 }
4187
4188 void
4189 set_gdbarch_value_to_register (struct gdbarch *gdbarch,
4190 gdbarch_value_to_register_ftype value_to_register)
4191 {
4192 gdbarch->value_to_register = value_to_register;
4193 }
4194
4195 CORE_ADDR
4196 gdbarch_pointer_to_address (struct gdbarch *gdbarch, struct type *type, const void *buf)
4197 {
4198 gdb_assert (gdbarch != NULL);
4199 gdb_assert (gdbarch->pointer_to_address != NULL);
4200 if (gdbarch_debug >= 2)
4201 fprintf_unfiltered (gdb_stdlog, "gdbarch_pointer_to_address called\n");
4202 return gdbarch->pointer_to_address (type, buf);
4203 }
4204
4205 void
4206 set_gdbarch_pointer_to_address (struct gdbarch *gdbarch,
4207 gdbarch_pointer_to_address_ftype pointer_to_address)
4208 {
4209 gdbarch->pointer_to_address = pointer_to_address;
4210 }
4211
4212 void
4213 gdbarch_address_to_pointer (struct gdbarch *gdbarch, struct type *type, void *buf, CORE_ADDR addr)
4214 {
4215 gdb_assert (gdbarch != NULL);
4216 gdb_assert (gdbarch->address_to_pointer != NULL);
4217 if (gdbarch_debug >= 2)
4218 fprintf_unfiltered (gdb_stdlog, "gdbarch_address_to_pointer called\n");
4219 gdbarch->address_to_pointer (type, buf, addr);
4220 }
4221
4222 void
4223 set_gdbarch_address_to_pointer (struct gdbarch *gdbarch,
4224 gdbarch_address_to_pointer_ftype address_to_pointer)
4225 {
4226 gdbarch->address_to_pointer = address_to_pointer;
4227 }
4228
4229 int
4230 gdbarch_integer_to_address_p (struct gdbarch *gdbarch)
4231 {
4232 gdb_assert (gdbarch != NULL);
4233 return gdbarch->integer_to_address != NULL;
4234 }
4235
4236 CORE_ADDR
4237 gdbarch_integer_to_address (struct gdbarch *gdbarch, struct type *type, void *buf)
4238 {
4239 gdb_assert (gdbarch != NULL);
4240 gdb_assert (gdbarch->integer_to_address != NULL);
4241 if (gdbarch_debug >= 2)
4242 fprintf_unfiltered (gdb_stdlog, "gdbarch_integer_to_address called\n");
4243 return gdbarch->integer_to_address (type, buf);
4244 }
4245
4246 void
4247 set_gdbarch_integer_to_address (struct gdbarch *gdbarch,
4248 gdbarch_integer_to_address_ftype integer_to_address)
4249 {
4250 gdbarch->integer_to_address = integer_to_address;
4251 }
4252
4253 int
4254 gdbarch_deprecated_pop_frame_p (struct gdbarch *gdbarch)
4255 {
4256 gdb_assert (gdbarch != NULL);
4257 return gdbarch->deprecated_pop_frame != NULL;
4258 }
4259
4260 void
4261 gdbarch_deprecated_pop_frame (struct gdbarch *gdbarch)
4262 {
4263 gdb_assert (gdbarch != NULL);
4264 gdb_assert (gdbarch->deprecated_pop_frame != NULL);
4265 if (gdbarch_debug >= 2)
4266 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_pop_frame called\n");
4267 gdbarch->deprecated_pop_frame ();
4268 }
4269
4270 void
4271 set_gdbarch_deprecated_pop_frame (struct gdbarch *gdbarch,
4272 gdbarch_deprecated_pop_frame_ftype deprecated_pop_frame)
4273 {
4274 gdbarch->deprecated_pop_frame = deprecated_pop_frame;
4275 }
4276
4277 int
4278 gdbarch_deprecated_store_struct_return_p (struct gdbarch *gdbarch)
4279 {
4280 gdb_assert (gdbarch != NULL);
4281 return gdbarch->deprecated_store_struct_return != NULL;
4282 }
4283
4284 void
4285 gdbarch_deprecated_store_struct_return (struct gdbarch *gdbarch, CORE_ADDR addr, CORE_ADDR sp)
4286 {
4287 gdb_assert (gdbarch != NULL);
4288 gdb_assert (gdbarch->deprecated_store_struct_return != NULL);
4289 if (gdbarch_debug >= 2)
4290 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_store_struct_return called\n");
4291 gdbarch->deprecated_store_struct_return (addr, sp);
4292 }
4293
4294 void
4295 set_gdbarch_deprecated_store_struct_return (struct gdbarch *gdbarch,
4296 gdbarch_deprecated_store_struct_return_ftype deprecated_store_struct_return)
4297 {
4298 gdbarch->deprecated_store_struct_return = deprecated_store_struct_return;
4299 }
4300
4301 int
4302 gdbarch_return_value_p (struct gdbarch *gdbarch)
4303 {
4304 gdb_assert (gdbarch != NULL);
4305 return gdbarch->return_value != NULL;
4306 }
4307
4308 enum return_value_convention
4309 gdbarch_return_value (struct gdbarch *gdbarch, struct type *valtype, struct regcache *regcache, const void *inval, void *outval)
4310 {
4311 gdb_assert (gdbarch != NULL);
4312 gdb_assert (gdbarch->return_value != NULL);
4313 if (gdbarch_debug >= 2)
4314 fprintf_unfiltered (gdb_stdlog, "gdbarch_return_value called\n");
4315 return gdbarch->return_value (gdbarch, valtype, regcache, inval, outval);
4316 }
4317
4318 void
4319 set_gdbarch_return_value (struct gdbarch *gdbarch,
4320 gdbarch_return_value_ftype return_value)
4321 {
4322 gdbarch->return_value = return_value;
4323 }
4324
4325 int
4326 gdbarch_return_value_on_stack (struct gdbarch *gdbarch, struct type *type)
4327 {
4328 gdb_assert (gdbarch != NULL);
4329 gdb_assert (gdbarch->return_value_on_stack != NULL);
4330 if (gdbarch_debug >= 2)
4331 fprintf_unfiltered (gdb_stdlog, "gdbarch_return_value_on_stack called\n");
4332 return gdbarch->return_value_on_stack (type);
4333 }
4334
4335 void
4336 set_gdbarch_return_value_on_stack (struct gdbarch *gdbarch,
4337 gdbarch_return_value_on_stack_ftype return_value_on_stack)
4338 {
4339 gdbarch->return_value_on_stack = return_value_on_stack;
4340 }
4341
4342 void
4343 gdbarch_extract_return_value (struct gdbarch *gdbarch, struct type *type, struct regcache *regcache, void *valbuf)
4344 {
4345 gdb_assert (gdbarch != NULL);
4346 gdb_assert (gdbarch->extract_return_value != NULL);
4347 if (gdbarch_debug >= 2)
4348 fprintf_unfiltered (gdb_stdlog, "gdbarch_extract_return_value called\n");
4349 gdbarch->extract_return_value (type, regcache, valbuf);
4350 }
4351
4352 void
4353 set_gdbarch_extract_return_value (struct gdbarch *gdbarch,
4354 gdbarch_extract_return_value_ftype extract_return_value)
4355 {
4356 gdbarch->extract_return_value = extract_return_value;
4357 }
4358
4359 void
4360 gdbarch_store_return_value (struct gdbarch *gdbarch, struct type *type, struct regcache *regcache, const void *valbuf)
4361 {
4362 gdb_assert (gdbarch != NULL);
4363 gdb_assert (gdbarch->store_return_value != NULL);
4364 if (gdbarch_debug >= 2)
4365 fprintf_unfiltered (gdb_stdlog, "gdbarch_store_return_value called\n");
4366 gdbarch->store_return_value (type, regcache, valbuf);
4367 }
4368
4369 void
4370 set_gdbarch_store_return_value (struct gdbarch *gdbarch,
4371 gdbarch_store_return_value_ftype store_return_value)
4372 {
4373 gdbarch->store_return_value = store_return_value;
4374 }
4375
4376 void
4377 gdbarch_deprecated_extract_return_value (struct gdbarch *gdbarch, struct type *type, char *regbuf, char *valbuf)
4378 {
4379 gdb_assert (gdbarch != NULL);
4380 gdb_assert (gdbarch->deprecated_extract_return_value != NULL);
4381 if (gdbarch_debug >= 2)
4382 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_extract_return_value called\n");
4383 gdbarch->deprecated_extract_return_value (type, regbuf, valbuf);
4384 }
4385
4386 void
4387 set_gdbarch_deprecated_extract_return_value (struct gdbarch *gdbarch,
4388 gdbarch_deprecated_extract_return_value_ftype deprecated_extract_return_value)
4389 {
4390 gdbarch->deprecated_extract_return_value = deprecated_extract_return_value;
4391 }
4392
4393 void
4394 gdbarch_deprecated_store_return_value (struct gdbarch *gdbarch, struct type *type, char *valbuf)
4395 {
4396 gdb_assert (gdbarch != NULL);
4397 gdb_assert (gdbarch->deprecated_store_return_value != NULL);
4398 if (gdbarch_debug >= 2)
4399 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_store_return_value called\n");
4400 gdbarch->deprecated_store_return_value (type, valbuf);
4401 }
4402
4403 void
4404 set_gdbarch_deprecated_store_return_value (struct gdbarch *gdbarch,
4405 gdbarch_deprecated_store_return_value_ftype deprecated_store_return_value)
4406 {
4407 gdbarch->deprecated_store_return_value = deprecated_store_return_value;
4408 }
4409
4410 int
4411 gdbarch_use_struct_convention (struct gdbarch *gdbarch, int gcc_p, struct type *value_type)
4412 {
4413 gdb_assert (gdbarch != NULL);
4414 gdb_assert (gdbarch->use_struct_convention != NULL);
4415 if (gdbarch_debug >= 2)
4416 fprintf_unfiltered (gdb_stdlog, "gdbarch_use_struct_convention called\n");
4417 return gdbarch->use_struct_convention (gcc_p, value_type);
4418 }
4419
4420 void
4421 set_gdbarch_use_struct_convention (struct gdbarch *gdbarch,
4422 gdbarch_use_struct_convention_ftype use_struct_convention)
4423 {
4424 gdbarch->use_struct_convention = use_struct_convention;
4425 }
4426
4427 int
4428 gdbarch_extract_struct_value_address_p (struct gdbarch *gdbarch)
4429 {
4430 gdb_assert (gdbarch != NULL);
4431 return gdbarch->extract_struct_value_address != NULL;
4432 }
4433
4434 CORE_ADDR
4435 gdbarch_extract_struct_value_address (struct gdbarch *gdbarch, struct regcache *regcache)
4436 {
4437 gdb_assert (gdbarch != NULL);
4438 gdb_assert (gdbarch->extract_struct_value_address != NULL);
4439 if (gdbarch_debug >= 2)
4440 fprintf_unfiltered (gdb_stdlog, "gdbarch_extract_struct_value_address called\n");
4441 return gdbarch->extract_struct_value_address (regcache);
4442 }
4443
4444 void
4445 set_gdbarch_extract_struct_value_address (struct gdbarch *gdbarch,
4446 gdbarch_extract_struct_value_address_ftype extract_struct_value_address)
4447 {
4448 gdbarch->extract_struct_value_address = extract_struct_value_address;
4449 }
4450
4451 int
4452 gdbarch_deprecated_extract_struct_value_address_p (struct gdbarch *gdbarch)
4453 {
4454 gdb_assert (gdbarch != NULL);
4455 return gdbarch->deprecated_extract_struct_value_address != NULL;
4456 }
4457
4458 CORE_ADDR
4459 gdbarch_deprecated_extract_struct_value_address (struct gdbarch *gdbarch, char *regbuf)
4460 {
4461 gdb_assert (gdbarch != NULL);
4462 gdb_assert (gdbarch->deprecated_extract_struct_value_address != NULL);
4463 if (gdbarch_debug >= 2)
4464 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_extract_struct_value_address called\n");
4465 return gdbarch->deprecated_extract_struct_value_address (regbuf);
4466 }
4467
4468 void
4469 set_gdbarch_deprecated_extract_struct_value_address (struct gdbarch *gdbarch,
4470 gdbarch_deprecated_extract_struct_value_address_ftype deprecated_extract_struct_value_address)
4471 {
4472 gdbarch->deprecated_extract_struct_value_address = deprecated_extract_struct_value_address;
4473 }
4474
4475 int
4476 gdbarch_deprecated_frame_init_saved_regs_p (struct gdbarch *gdbarch)
4477 {
4478 gdb_assert (gdbarch != NULL);
4479 return gdbarch->deprecated_frame_init_saved_regs != NULL;
4480 }
4481
4482 void
4483 gdbarch_deprecated_frame_init_saved_regs (struct gdbarch *gdbarch, struct frame_info *frame)
4484 {
4485 gdb_assert (gdbarch != NULL);
4486 gdb_assert (gdbarch->deprecated_frame_init_saved_regs != NULL);
4487 if (gdbarch_debug >= 2)
4488 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_init_saved_regs called\n");
4489 gdbarch->deprecated_frame_init_saved_regs (frame);
4490 }
4491
4492 void
4493 set_gdbarch_deprecated_frame_init_saved_regs (struct gdbarch *gdbarch,
4494 gdbarch_deprecated_frame_init_saved_regs_ftype deprecated_frame_init_saved_regs)
4495 {
4496 gdbarch->deprecated_frame_init_saved_regs = deprecated_frame_init_saved_regs;
4497 }
4498
4499 int
4500 gdbarch_deprecated_init_extra_frame_info_p (struct gdbarch *gdbarch)
4501 {
4502 gdb_assert (gdbarch != NULL);
4503 return gdbarch->deprecated_init_extra_frame_info != NULL;
4504 }
4505
4506 void
4507 gdbarch_deprecated_init_extra_frame_info (struct gdbarch *gdbarch, int fromleaf, struct frame_info *frame)
4508 {
4509 gdb_assert (gdbarch != NULL);
4510 gdb_assert (gdbarch->deprecated_init_extra_frame_info != NULL);
4511 if (gdbarch_debug >= 2)
4512 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_init_extra_frame_info called\n");
4513 gdbarch->deprecated_init_extra_frame_info (fromleaf, frame);
4514 }
4515
4516 void
4517 set_gdbarch_deprecated_init_extra_frame_info (struct gdbarch *gdbarch,
4518 gdbarch_deprecated_init_extra_frame_info_ftype deprecated_init_extra_frame_info)
4519 {
4520 gdbarch->deprecated_init_extra_frame_info = deprecated_init_extra_frame_info;
4521 }
4522
4523 CORE_ADDR
4524 gdbarch_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR ip)
4525 {
4526 gdb_assert (gdbarch != NULL);
4527 gdb_assert (gdbarch->skip_prologue != NULL);
4528 if (gdbarch_debug >= 2)
4529 fprintf_unfiltered (gdb_stdlog, "gdbarch_skip_prologue called\n");
4530 return gdbarch->skip_prologue (ip);
4531 }
4532
4533 void
4534 set_gdbarch_skip_prologue (struct gdbarch *gdbarch,
4535 gdbarch_skip_prologue_ftype skip_prologue)
4536 {
4537 gdbarch->skip_prologue = skip_prologue;
4538 }
4539
4540 int
4541 gdbarch_prologue_frameless_p (struct gdbarch *gdbarch, CORE_ADDR ip)
4542 {
4543 gdb_assert (gdbarch != NULL);
4544 gdb_assert (gdbarch->prologue_frameless_p != NULL);
4545 if (gdbarch_debug >= 2)
4546 fprintf_unfiltered (gdb_stdlog, "gdbarch_prologue_frameless_p called\n");
4547 return gdbarch->prologue_frameless_p (ip);
4548 }
4549
4550 void
4551 set_gdbarch_prologue_frameless_p (struct gdbarch *gdbarch,
4552 gdbarch_prologue_frameless_p_ftype prologue_frameless_p)
4553 {
4554 gdbarch->prologue_frameless_p = prologue_frameless_p;
4555 }
4556
4557 int
4558 gdbarch_inner_than (struct gdbarch *gdbarch, CORE_ADDR lhs, CORE_ADDR rhs)
4559 {
4560 gdb_assert (gdbarch != NULL);
4561 gdb_assert (gdbarch->inner_than != NULL);
4562 if (gdbarch_debug >= 2)
4563 fprintf_unfiltered (gdb_stdlog, "gdbarch_inner_than called\n");
4564 return gdbarch->inner_than (lhs, rhs);
4565 }
4566
4567 void
4568 set_gdbarch_inner_than (struct gdbarch *gdbarch,
4569 gdbarch_inner_than_ftype inner_than)
4570 {
4571 gdbarch->inner_than = inner_than;
4572 }
4573
4574 const unsigned char *
4575 gdbarch_breakpoint_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr, int *lenptr)
4576 {
4577 gdb_assert (gdbarch != NULL);
4578 gdb_assert (gdbarch->breakpoint_from_pc != NULL);
4579 if (gdbarch_debug >= 2)
4580 fprintf_unfiltered (gdb_stdlog, "gdbarch_breakpoint_from_pc called\n");
4581 return gdbarch->breakpoint_from_pc (pcptr, lenptr);
4582 }
4583
4584 void
4585 set_gdbarch_breakpoint_from_pc (struct gdbarch *gdbarch,
4586 gdbarch_breakpoint_from_pc_ftype breakpoint_from_pc)
4587 {
4588 gdbarch->breakpoint_from_pc = breakpoint_from_pc;
4589 }
4590
4591 int
4592 gdbarch_adjust_breakpoint_address_p (struct gdbarch *gdbarch)
4593 {
4594 gdb_assert (gdbarch != NULL);
4595 return gdbarch->adjust_breakpoint_address != NULL;
4596 }
4597
4598 CORE_ADDR
4599 gdbarch_adjust_breakpoint_address (struct gdbarch *gdbarch, CORE_ADDR bpaddr)
4600 {
4601 gdb_assert (gdbarch != NULL);
4602 gdb_assert (gdbarch->adjust_breakpoint_address != NULL);
4603 if (gdbarch_debug >= 2)
4604 fprintf_unfiltered (gdb_stdlog, "gdbarch_adjust_breakpoint_address called\n");
4605 return gdbarch->adjust_breakpoint_address (gdbarch, bpaddr);
4606 }
4607
4608 void
4609 set_gdbarch_adjust_breakpoint_address (struct gdbarch *gdbarch,
4610 gdbarch_adjust_breakpoint_address_ftype adjust_breakpoint_address)
4611 {
4612 gdbarch->adjust_breakpoint_address = adjust_breakpoint_address;
4613 }
4614
4615 int
4616 gdbarch_memory_insert_breakpoint (struct gdbarch *gdbarch, CORE_ADDR addr, char *contents_cache)
4617 {
4618 gdb_assert (gdbarch != NULL);
4619 gdb_assert (gdbarch->memory_insert_breakpoint != NULL);
4620 if (gdbarch_debug >= 2)
4621 fprintf_unfiltered (gdb_stdlog, "gdbarch_memory_insert_breakpoint called\n");
4622 return gdbarch->memory_insert_breakpoint (addr, contents_cache);
4623 }
4624
4625 void
4626 set_gdbarch_memory_insert_breakpoint (struct gdbarch *gdbarch,
4627 gdbarch_memory_insert_breakpoint_ftype memory_insert_breakpoint)
4628 {
4629 gdbarch->memory_insert_breakpoint = memory_insert_breakpoint;
4630 }
4631
4632 int
4633 gdbarch_memory_remove_breakpoint (struct gdbarch *gdbarch, CORE_ADDR addr, char *contents_cache)
4634 {
4635 gdb_assert (gdbarch != NULL);
4636 gdb_assert (gdbarch->memory_remove_breakpoint != NULL);
4637 if (gdbarch_debug >= 2)
4638 fprintf_unfiltered (gdb_stdlog, "gdbarch_memory_remove_breakpoint called\n");
4639 return gdbarch->memory_remove_breakpoint (addr, contents_cache);
4640 }
4641
4642 void
4643 set_gdbarch_memory_remove_breakpoint (struct gdbarch *gdbarch,
4644 gdbarch_memory_remove_breakpoint_ftype memory_remove_breakpoint)
4645 {
4646 gdbarch->memory_remove_breakpoint = memory_remove_breakpoint;
4647 }
4648
4649 CORE_ADDR
4650 gdbarch_decr_pc_after_break (struct gdbarch *gdbarch)
4651 {
4652 gdb_assert (gdbarch != NULL);
4653 /* Check variable changed from pre-default. */
4654 gdb_assert (gdbarch->decr_pc_after_break != -1);
4655 if (gdbarch_debug >= 2)
4656 fprintf_unfiltered (gdb_stdlog, "gdbarch_decr_pc_after_break called\n");
4657 return gdbarch->decr_pc_after_break;
4658 }
4659
4660 void
4661 set_gdbarch_decr_pc_after_break (struct gdbarch *gdbarch,
4662 CORE_ADDR decr_pc_after_break)
4663 {
4664 gdbarch->decr_pc_after_break = decr_pc_after_break;
4665 }
4666
4667 CORE_ADDR
4668 gdbarch_function_start_offset (struct gdbarch *gdbarch)
4669 {
4670 gdb_assert (gdbarch != NULL);
4671 /* Check variable changed from pre-default. */
4672 gdb_assert (gdbarch->function_start_offset != -1);
4673 if (gdbarch_debug >= 2)
4674 fprintf_unfiltered (gdb_stdlog, "gdbarch_function_start_offset called\n");
4675 return gdbarch->function_start_offset;
4676 }
4677
4678 void
4679 set_gdbarch_function_start_offset (struct gdbarch *gdbarch,
4680 CORE_ADDR function_start_offset)
4681 {
4682 gdbarch->function_start_offset = function_start_offset;
4683 }
4684
4685 void
4686 gdbarch_remote_translate_xfer_address (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR gdb_addr, int gdb_len, CORE_ADDR *rem_addr, int *rem_len)
4687 {
4688 gdb_assert (gdbarch != NULL);
4689 gdb_assert (gdbarch->remote_translate_xfer_address != NULL);
4690 if (gdbarch_debug >= 2)
4691 fprintf_unfiltered (gdb_stdlog, "gdbarch_remote_translate_xfer_address called\n");
4692 gdbarch->remote_translate_xfer_address (gdbarch, regcache, gdb_addr, gdb_len, rem_addr, rem_len);
4693 }
4694
4695 void
4696 set_gdbarch_remote_translate_xfer_address (struct gdbarch *gdbarch,
4697 gdbarch_remote_translate_xfer_address_ftype remote_translate_xfer_address)
4698 {
4699 gdbarch->remote_translate_xfer_address = remote_translate_xfer_address;
4700 }
4701
4702 CORE_ADDR
4703 gdbarch_frame_args_skip (struct gdbarch *gdbarch)
4704 {
4705 gdb_assert (gdbarch != NULL);
4706 /* Check variable changed from pre-default. */
4707 gdb_assert (gdbarch->frame_args_skip != -1);
4708 if (gdbarch_debug >= 2)
4709 fprintf_unfiltered (gdb_stdlog, "gdbarch_frame_args_skip called\n");
4710 return gdbarch->frame_args_skip;
4711 }
4712
4713 void
4714 set_gdbarch_frame_args_skip (struct gdbarch *gdbarch,
4715 CORE_ADDR frame_args_skip)
4716 {
4717 gdbarch->frame_args_skip = frame_args_skip;
4718 }
4719
4720 int
4721 gdbarch_frameless_function_invocation (struct gdbarch *gdbarch, struct frame_info *fi)
4722 {
4723 gdb_assert (gdbarch != NULL);
4724 gdb_assert (gdbarch->frameless_function_invocation != NULL);
4725 if (gdbarch_debug >= 2)
4726 fprintf_unfiltered (gdb_stdlog, "gdbarch_frameless_function_invocation called\n");
4727 return gdbarch->frameless_function_invocation (fi);
4728 }
4729
4730 void
4731 set_gdbarch_frameless_function_invocation (struct gdbarch *gdbarch,
4732 gdbarch_frameless_function_invocation_ftype frameless_function_invocation)
4733 {
4734 gdbarch->frameless_function_invocation = frameless_function_invocation;
4735 }
4736
4737 int
4738 gdbarch_deprecated_frame_chain_p (struct gdbarch *gdbarch)
4739 {
4740 gdb_assert (gdbarch != NULL);
4741 return gdbarch->deprecated_frame_chain != NULL;
4742 }
4743
4744 CORE_ADDR
4745 gdbarch_deprecated_frame_chain (struct gdbarch *gdbarch, struct frame_info *frame)
4746 {
4747 gdb_assert (gdbarch != NULL);
4748 gdb_assert (gdbarch->deprecated_frame_chain != NULL);
4749 if (gdbarch_debug >= 2)
4750 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_chain called\n");
4751 return gdbarch->deprecated_frame_chain (frame);
4752 }
4753
4754 void
4755 set_gdbarch_deprecated_frame_chain (struct gdbarch *gdbarch,
4756 gdbarch_deprecated_frame_chain_ftype deprecated_frame_chain)
4757 {
4758 gdbarch->deprecated_frame_chain = deprecated_frame_chain;
4759 }
4760
4761 int
4762 gdbarch_deprecated_frame_chain_valid_p (struct gdbarch *gdbarch)
4763 {
4764 gdb_assert (gdbarch != NULL);
4765 return gdbarch->deprecated_frame_chain_valid != NULL;
4766 }
4767
4768 int
4769 gdbarch_deprecated_frame_chain_valid (struct gdbarch *gdbarch, CORE_ADDR chain, struct frame_info *thisframe)
4770 {
4771 gdb_assert (gdbarch != NULL);
4772 gdb_assert (gdbarch->deprecated_frame_chain_valid != NULL);
4773 if (gdbarch_debug >= 2)
4774 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_chain_valid called\n");
4775 return gdbarch->deprecated_frame_chain_valid (chain, thisframe);
4776 }
4777
4778 void
4779 set_gdbarch_deprecated_frame_chain_valid (struct gdbarch *gdbarch,
4780 gdbarch_deprecated_frame_chain_valid_ftype deprecated_frame_chain_valid)
4781 {
4782 gdbarch->deprecated_frame_chain_valid = deprecated_frame_chain_valid;
4783 }
4784
4785 int
4786 gdbarch_deprecated_frame_saved_pc_p (struct gdbarch *gdbarch)
4787 {
4788 gdb_assert (gdbarch != NULL);
4789 return gdbarch->deprecated_frame_saved_pc != NULL;
4790 }
4791
4792 CORE_ADDR
4793 gdbarch_deprecated_frame_saved_pc (struct gdbarch *gdbarch, struct frame_info *fi)
4794 {
4795 gdb_assert (gdbarch != NULL);
4796 gdb_assert (gdbarch->deprecated_frame_saved_pc != NULL);
4797 if (gdbarch_debug >= 2)
4798 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_saved_pc called\n");
4799 return gdbarch->deprecated_frame_saved_pc (fi);
4800 }
4801
4802 void
4803 set_gdbarch_deprecated_frame_saved_pc (struct gdbarch *gdbarch,
4804 gdbarch_deprecated_frame_saved_pc_ftype deprecated_frame_saved_pc)
4805 {
4806 gdbarch->deprecated_frame_saved_pc = deprecated_frame_saved_pc;
4807 }
4808
4809 int
4810 gdbarch_unwind_pc_p (struct gdbarch *gdbarch)
4811 {
4812 gdb_assert (gdbarch != NULL);
4813 return gdbarch->unwind_pc != NULL;
4814 }
4815
4816 CORE_ADDR
4817 gdbarch_unwind_pc (struct gdbarch *gdbarch, struct frame_info *next_frame)
4818 {
4819 gdb_assert (gdbarch != NULL);
4820 gdb_assert (gdbarch->unwind_pc != NULL);
4821 if (gdbarch_debug >= 2)
4822 fprintf_unfiltered (gdb_stdlog, "gdbarch_unwind_pc called\n");
4823 return gdbarch->unwind_pc (gdbarch, next_frame);
4824 }
4825
4826 void
4827 set_gdbarch_unwind_pc (struct gdbarch *gdbarch,
4828 gdbarch_unwind_pc_ftype unwind_pc)
4829 {
4830 gdbarch->unwind_pc = unwind_pc;
4831 }
4832
4833 int
4834 gdbarch_unwind_sp_p (struct gdbarch *gdbarch)
4835 {
4836 gdb_assert (gdbarch != NULL);
4837 return gdbarch->unwind_sp != NULL;
4838 }
4839
4840 CORE_ADDR
4841 gdbarch_unwind_sp (struct gdbarch *gdbarch, struct frame_info *next_frame)
4842 {
4843 gdb_assert (gdbarch != NULL);
4844 gdb_assert (gdbarch->unwind_sp != NULL);
4845 if (gdbarch_debug >= 2)
4846 fprintf_unfiltered (gdb_stdlog, "gdbarch_unwind_sp called\n");
4847 return gdbarch->unwind_sp (gdbarch, next_frame);
4848 }
4849
4850 void
4851 set_gdbarch_unwind_sp (struct gdbarch *gdbarch,
4852 gdbarch_unwind_sp_ftype unwind_sp)
4853 {
4854 gdbarch->unwind_sp = unwind_sp;
4855 }
4856
4857 int
4858 gdbarch_deprecated_frame_args_address_p (struct gdbarch *gdbarch)
4859 {
4860 gdb_assert (gdbarch != NULL);
4861 return gdbarch->deprecated_frame_args_address != get_frame_base;
4862 }
4863
4864 CORE_ADDR
4865 gdbarch_deprecated_frame_args_address (struct gdbarch *gdbarch, struct frame_info *fi)
4866 {
4867 gdb_assert (gdbarch != NULL);
4868 gdb_assert (gdbarch->deprecated_frame_args_address != NULL);
4869 /* Do not check predicate: gdbarch->deprecated_frame_args_address != get_frame_base, allow call. */
4870 if (gdbarch_debug >= 2)
4871 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_args_address called\n");
4872 return gdbarch->deprecated_frame_args_address (fi);
4873 }
4874
4875 void
4876 set_gdbarch_deprecated_frame_args_address (struct gdbarch *gdbarch,
4877 gdbarch_deprecated_frame_args_address_ftype deprecated_frame_args_address)
4878 {
4879 gdbarch->deprecated_frame_args_address = deprecated_frame_args_address;
4880 }
4881
4882 int
4883 gdbarch_deprecated_frame_locals_address_p (struct gdbarch *gdbarch)
4884 {
4885 gdb_assert (gdbarch != NULL);
4886 return gdbarch->deprecated_frame_locals_address != get_frame_base;
4887 }
4888
4889 CORE_ADDR
4890 gdbarch_deprecated_frame_locals_address (struct gdbarch *gdbarch, struct frame_info *fi)
4891 {
4892 gdb_assert (gdbarch != NULL);
4893 gdb_assert (gdbarch->deprecated_frame_locals_address != NULL);
4894 /* Do not check predicate: gdbarch->deprecated_frame_locals_address != get_frame_base, allow call. */
4895 if (gdbarch_debug >= 2)
4896 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_frame_locals_address called\n");
4897 return gdbarch->deprecated_frame_locals_address (fi);
4898 }
4899
4900 void
4901 set_gdbarch_deprecated_frame_locals_address (struct gdbarch *gdbarch,
4902 gdbarch_deprecated_frame_locals_address_ftype deprecated_frame_locals_address)
4903 {
4904 gdbarch->deprecated_frame_locals_address = deprecated_frame_locals_address;
4905 }
4906
4907 int
4908 gdbarch_deprecated_saved_pc_after_call_p (struct gdbarch *gdbarch)
4909 {
4910 gdb_assert (gdbarch != NULL);
4911 return gdbarch->deprecated_saved_pc_after_call != NULL;
4912 }
4913
4914 CORE_ADDR
4915 gdbarch_deprecated_saved_pc_after_call (struct gdbarch *gdbarch, struct frame_info *frame)
4916 {
4917 gdb_assert (gdbarch != NULL);
4918 gdb_assert (gdbarch->deprecated_saved_pc_after_call != NULL);
4919 if (gdbarch_debug >= 2)
4920 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_saved_pc_after_call called\n");
4921 return gdbarch->deprecated_saved_pc_after_call (frame);
4922 }
4923
4924 void
4925 set_gdbarch_deprecated_saved_pc_after_call (struct gdbarch *gdbarch,
4926 gdbarch_deprecated_saved_pc_after_call_ftype deprecated_saved_pc_after_call)
4927 {
4928 gdbarch->deprecated_saved_pc_after_call = deprecated_saved_pc_after_call;
4929 }
4930
4931 int
4932 gdbarch_frame_num_args_p (struct gdbarch *gdbarch)
4933 {
4934 gdb_assert (gdbarch != NULL);
4935 return gdbarch->frame_num_args != NULL;
4936 }
4937
4938 int
4939 gdbarch_frame_num_args (struct gdbarch *gdbarch, struct frame_info *frame)
4940 {
4941 gdb_assert (gdbarch != NULL);
4942 gdb_assert (gdbarch->frame_num_args != NULL);
4943 if (gdbarch_debug >= 2)
4944 fprintf_unfiltered (gdb_stdlog, "gdbarch_frame_num_args called\n");
4945 return gdbarch->frame_num_args (frame);
4946 }
4947
4948 void
4949 set_gdbarch_frame_num_args (struct gdbarch *gdbarch,
4950 gdbarch_frame_num_args_ftype frame_num_args)
4951 {
4952 gdbarch->frame_num_args = frame_num_args;
4953 }
4954
4955 int
4956 gdbarch_deprecated_stack_align_p (struct gdbarch *gdbarch)
4957 {
4958 gdb_assert (gdbarch != NULL);
4959 return gdbarch->deprecated_stack_align != NULL;
4960 }
4961
4962 CORE_ADDR
4963 gdbarch_deprecated_stack_align (struct gdbarch *gdbarch, CORE_ADDR sp)
4964 {
4965 gdb_assert (gdbarch != NULL);
4966 gdb_assert (gdbarch->deprecated_stack_align != NULL);
4967 if (gdbarch_debug >= 2)
4968 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_stack_align called\n");
4969 return gdbarch->deprecated_stack_align (sp);
4970 }
4971
4972 void
4973 set_gdbarch_deprecated_stack_align (struct gdbarch *gdbarch,
4974 gdbarch_deprecated_stack_align_ftype deprecated_stack_align)
4975 {
4976 gdbarch->deprecated_stack_align = deprecated_stack_align;
4977 }
4978
4979 int
4980 gdbarch_frame_align_p (struct gdbarch *gdbarch)
4981 {
4982 gdb_assert (gdbarch != NULL);
4983 return gdbarch->frame_align != NULL;
4984 }
4985
4986 CORE_ADDR
4987 gdbarch_frame_align (struct gdbarch *gdbarch, CORE_ADDR address)
4988 {
4989 gdb_assert (gdbarch != NULL);
4990 gdb_assert (gdbarch->frame_align != NULL);
4991 if (gdbarch_debug >= 2)
4992 fprintf_unfiltered (gdb_stdlog, "gdbarch_frame_align called\n");
4993 return gdbarch->frame_align (gdbarch, address);
4994 }
4995
4996 void
4997 set_gdbarch_frame_align (struct gdbarch *gdbarch,
4998 gdbarch_frame_align_ftype frame_align)
4999 {
5000 gdbarch->frame_align = frame_align;
5001 }
5002
5003 int
5004 gdbarch_deprecated_reg_struct_has_addr_p (struct gdbarch *gdbarch)
5005 {
5006 gdb_assert (gdbarch != NULL);
5007 return gdbarch->deprecated_reg_struct_has_addr != NULL;
5008 }
5009
5010 int
5011 gdbarch_deprecated_reg_struct_has_addr (struct gdbarch *gdbarch, int gcc_p, struct type *type)
5012 {
5013 gdb_assert (gdbarch != NULL);
5014 gdb_assert (gdbarch->deprecated_reg_struct_has_addr != NULL);
5015 if (gdbarch_debug >= 2)
5016 fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_reg_struct_has_addr called\n");
5017 return gdbarch->deprecated_reg_struct_has_addr (gcc_p, type);
5018 }
5019
5020 void
5021 set_gdbarch_deprecated_reg_struct_has_addr (struct gdbarch *gdbarch,
5022 gdbarch_deprecated_reg_struct_has_addr_ftype deprecated_reg_struct_has_addr)
5023 {
5024 gdbarch->deprecated_reg_struct_has_addr = deprecated_reg_struct_has_addr;
5025 }
5026
5027 int
5028 gdbarch_stabs_argument_has_addr (struct gdbarch *gdbarch, struct type *type)
5029 {
5030 gdb_assert (gdbarch != NULL);
5031 gdb_assert (gdbarch->stabs_argument_has_addr != NULL);
5032 if (gdbarch_debug >= 2)
5033 fprintf_unfiltered (gdb_stdlog, "gdbarch_stabs_argument_has_addr called\n");
5034 return gdbarch->stabs_argument_has_addr (gdbarch, type);
5035 }
5036
5037 void
5038 set_gdbarch_stabs_argument_has_addr (struct gdbarch *gdbarch,
5039 gdbarch_stabs_argument_has_addr_ftype stabs_argument_has_addr)
5040 {
5041 gdbarch->stabs_argument_has_addr = stabs_argument_has_addr;
5042 }
5043
5044 int
5045 gdbarch_frame_red_zone_size (struct gdbarch *gdbarch)
5046 {
5047 gdb_assert (gdbarch != NULL);
5048 if (gdbarch_debug >= 2)
5049 fprintf_unfiltered (gdb_stdlog, "gdbarch_frame_red_zone_size called\n");
5050 return gdbarch->frame_red_zone_size;
5051 }
5052
5053 void
5054 set_gdbarch_frame_red_zone_size (struct gdbarch *gdbarch,
5055 int frame_red_zone_size)
5056 {
5057 gdbarch->frame_red_zone_size = frame_red_zone_size;
5058 }
5059
5060 int
5061 gdbarch_parm_boundary (struct gdbarch *gdbarch)
5062 {
5063 gdb_assert (gdbarch != NULL);
5064 if (gdbarch_debug >= 2)
5065 fprintf_unfiltered (gdb_stdlog, "gdbarch_parm_boundary called\n");
5066 return gdbarch->parm_boundary;
5067 }
5068
5069 void
5070 set_gdbarch_parm_boundary (struct gdbarch *gdbarch,
5071 int parm_boundary)
5072 {
5073 gdbarch->parm_boundary = parm_boundary;
5074 }
5075
5076 const struct floatformat *
5077 gdbarch_float_format (struct gdbarch *gdbarch)
5078 {
5079 gdb_assert (gdbarch != NULL);
5080 if (gdbarch_debug >= 2)
5081 fprintf_unfiltered (gdb_stdlog, "gdbarch_float_format called\n");
5082 return gdbarch->float_format;
5083 }
5084
5085 void
5086 set_gdbarch_float_format (struct gdbarch *gdbarch,
5087 const struct floatformat * float_format)
5088 {
5089 gdbarch->float_format = float_format;
5090 }
5091
5092 const struct floatformat *
5093 gdbarch_double_format (struct gdbarch *gdbarch)
5094 {
5095 gdb_assert (gdbarch != NULL);
5096 if (gdbarch_debug >= 2)
5097 fprintf_unfiltered (gdb_stdlog, "gdbarch_double_format called\n");
5098 return gdbarch->double_format;
5099 }
5100
5101 void
5102 set_gdbarch_double_format (struct gdbarch *gdbarch,
5103 const struct floatformat * double_format)
5104 {
5105 gdbarch->double_format = double_format;
5106 }
5107
5108 const struct floatformat *
5109 gdbarch_long_double_format (struct gdbarch *gdbarch)
5110 {
5111 gdb_assert (gdbarch != NULL);
5112 if (gdbarch_debug >= 2)
5113 fprintf_unfiltered (gdb_stdlog, "gdbarch_long_double_format called\n");
5114 return gdbarch->long_double_format;
5115 }
5116
5117 void
5118 set_gdbarch_long_double_format (struct gdbarch *gdbarch,
5119 const struct floatformat * long_double_format)
5120 {
5121 gdbarch->long_double_format = long_double_format;
5122 }
5123
5124 CORE_ADDR
5125 gdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch, CORE_ADDR addr, struct target_ops *targ)
5126 {
5127 gdb_assert (gdbarch != NULL);
5128 gdb_assert (gdbarch->convert_from_func_ptr_addr != NULL);
5129 if (gdbarch_debug >= 2)
5130 fprintf_unfiltered (gdb_stdlog, "gdbarch_convert_from_func_ptr_addr called\n");
5131 return gdbarch->convert_from_func_ptr_addr (gdbarch, addr, targ);
5132 }
5133
5134 void
5135 set_gdbarch_convert_from_func_ptr_addr (struct gdbarch *gdbarch,
5136 gdbarch_convert_from_func_ptr_addr_ftype convert_from_func_ptr_addr)
5137 {
5138 gdbarch->convert_from_func_ptr_addr = convert_from_func_ptr_addr;
5139 }
5140
5141 CORE_ADDR
5142 gdbarch_addr_bits_remove (struct gdbarch *gdbarch, CORE_ADDR addr)
5143 {
5144 gdb_assert (gdbarch != NULL);
5145 gdb_assert (gdbarch->addr_bits_remove != NULL);
5146 if (gdbarch_debug >= 2)
5147 fprintf_unfiltered (gdb_stdlog, "gdbarch_addr_bits_remove called\n");
5148 return gdbarch->addr_bits_remove (addr);
5149 }
5150
5151 void
5152 set_gdbarch_addr_bits_remove (struct gdbarch *gdbarch,
5153 gdbarch_addr_bits_remove_ftype addr_bits_remove)
5154 {
5155 gdbarch->addr_bits_remove = addr_bits_remove;
5156 }
5157
5158 CORE_ADDR
5159 gdbarch_smash_text_address (struct gdbarch *gdbarch, CORE_ADDR addr)
5160 {
5161 gdb_assert (gdbarch != NULL);
5162 gdb_assert (gdbarch->smash_text_address != NULL);
5163 if (gdbarch_debug >= 2)
5164 fprintf_unfiltered (gdb_stdlog, "gdbarch_smash_text_address called\n");
5165 return gdbarch->smash_text_address (addr);
5166 }
5167
5168 void
5169 set_gdbarch_smash_text_address (struct gdbarch *gdbarch,
5170 gdbarch_smash_text_address_ftype smash_text_address)
5171 {
5172 gdbarch->smash_text_address = smash_text_address;
5173 }
5174
5175 int
5176 gdbarch_software_single_step_p (struct gdbarch *gdbarch)
5177 {
5178 gdb_assert (gdbarch != NULL);
5179 return gdbarch->software_single_step != NULL;
5180 }
5181
5182 void
5183 gdbarch_software_single_step (struct gdbarch *gdbarch, enum target_signal sig, int insert_breakpoints_p)
5184 {
5185 gdb_assert (gdbarch != NULL);
5186 gdb_assert (gdbarch->software_single_step != NULL);
5187 if (gdbarch_debug >= 2)
5188 fprintf_unfiltered (gdb_stdlog, "gdbarch_software_single_step called\n");
5189 gdbarch->software_single_step (sig, insert_breakpoints_p);
5190 }
5191
5192 void
5193 set_gdbarch_software_single_step (struct gdbarch *gdbarch,
5194 gdbarch_software_single_step_ftype software_single_step)
5195 {
5196 gdbarch->software_single_step = software_single_step;
5197 }
5198
5199 int
5200 gdbarch_print_insn (struct gdbarch *gdbarch, bfd_vma vma, struct disassemble_info *info)
5201 {
5202 gdb_assert (gdbarch != NULL);
5203 gdb_assert (gdbarch->print_insn != NULL);
5204 if (gdbarch_debug >= 2)
5205 fprintf_unfiltered (gdb_stdlog, "gdbarch_print_insn called\n");
5206 return gdbarch->print_insn (vma, info);
5207 }
5208
5209 void
5210 set_gdbarch_print_insn (struct gdbarch *gdbarch,
5211 gdbarch_print_insn_ftype print_insn)
5212 {
5213 gdbarch->print_insn = print_insn;
5214 }
5215
5216 CORE_ADDR
5217 gdbarch_skip_trampoline_code (struct gdbarch *gdbarch, CORE_ADDR pc)
5218 {
5219 gdb_assert (gdbarch != NULL);
5220 gdb_assert (gdbarch->skip_trampoline_code != NULL);
5221 if (gdbarch_debug >= 2)
5222 fprintf_unfiltered (gdb_stdlog, "gdbarch_skip_trampoline_code called\n");
5223 return gdbarch->skip_trampoline_code (pc);
5224 }
5225
5226 void
5227 set_gdbarch_skip_trampoline_code (struct gdbarch *gdbarch,
5228 gdbarch_skip_trampoline_code_ftype skip_trampoline_code)
5229 {
5230 gdbarch->skip_trampoline_code = skip_trampoline_code;
5231 }
5232
5233 CORE_ADDR
5234 gdbarch_skip_solib_resolver (struct gdbarch *gdbarch, CORE_ADDR pc)
5235 {
5236 gdb_assert (gdbarch != NULL);
5237 gdb_assert (gdbarch->skip_solib_resolver != NULL);
5238 if (gdbarch_debug >= 2)
5239 fprintf_unfiltered (gdb_stdlog, "gdbarch_skip_solib_resolver called\n");
5240 return gdbarch->skip_solib_resolver (pc);
5241 }
5242
5243 void
5244 set_gdbarch_skip_solib_resolver (struct gdbarch *gdbarch,
5245 gdbarch_skip_solib_resolver_ftype skip_solib_resolver)
5246 {
5247 gdbarch->skip_solib_resolver = skip_solib_resolver;
5248 }
5249
5250 int
5251 gdbarch_in_solib_call_trampoline (struct gdbarch *gdbarch, CORE_ADDR pc, char *name)
5252 {
5253 gdb_assert (gdbarch != NULL);
5254 gdb_assert (gdbarch->in_solib_call_trampoline != NULL);
5255 if (gdbarch_debug >= 2)
5256 fprintf_unfiltered (gdb_stdlog, "gdbarch_in_solib_call_trampoline called\n");
5257 return gdbarch->in_solib_call_trampoline (pc, name);
5258 }
5259
5260 void
5261 set_gdbarch_in_solib_call_trampoline (struct gdbarch *gdbarch,
5262 gdbarch_in_solib_call_trampoline_ftype in_solib_call_trampoline)
5263 {
5264 gdbarch->in_solib_call_trampoline = in_solib_call_trampoline;
5265 }
5266
5267 int
5268 gdbarch_in_solib_return_trampoline (struct gdbarch *gdbarch, CORE_ADDR pc, char *name)
5269 {
5270 gdb_assert (gdbarch != NULL);
5271 gdb_assert (gdbarch->in_solib_return_trampoline != NULL);
5272 if (gdbarch_debug >= 2)
5273 fprintf_unfiltered (gdb_stdlog, "gdbarch_in_solib_return_trampoline called\n");
5274 return gdbarch->in_solib_return_trampoline (pc, name);
5275 }
5276
5277 void
5278 set_gdbarch_in_solib_return_trampoline (struct gdbarch *gdbarch,
5279 gdbarch_in_solib_return_trampoline_ftype in_solib_return_trampoline)
5280 {
5281 gdbarch->in_solib_return_trampoline = in_solib_return_trampoline;
5282 }
5283
5284 int
5285 gdbarch_pc_in_sigtramp (struct gdbarch *gdbarch, CORE_ADDR pc, char *name)
5286 {
5287 gdb_assert (gdbarch != NULL);
5288 gdb_assert (gdbarch->pc_in_sigtramp != NULL);
5289 if (gdbarch_debug >= 2)
5290 fprintf_unfiltered (gdb_stdlog, "gdbarch_pc_in_sigtramp called\n");
5291 return gdbarch->pc_in_sigtramp (pc, name);
5292 }
5293
5294 void
5295 set_gdbarch_pc_in_sigtramp (struct gdbarch *gdbarch,
5296 gdbarch_pc_in_sigtramp_ftype pc_in_sigtramp)
5297 {
5298 gdbarch->pc_in_sigtramp = pc_in_sigtramp;
5299 }
5300
5301 int
5302 gdbarch_sigtramp_start_p (struct gdbarch *gdbarch)
5303 {
5304 gdb_assert (gdbarch != NULL);
5305 return gdbarch->sigtramp_start != NULL;
5306 }
5307
5308 CORE_ADDR
5309 gdbarch_sigtramp_start (struct gdbarch *gdbarch, CORE_ADDR pc)
5310 {
5311 gdb_assert (gdbarch != NULL);
5312 gdb_assert (gdbarch->sigtramp_start != NULL);
5313 if (gdbarch_debug >= 2)
5314 fprintf_unfiltered (gdb_stdlog, "gdbarch_sigtramp_start called\n");
5315 return gdbarch->sigtramp_start (pc);
5316 }
5317
5318 void
5319 set_gdbarch_sigtramp_start (struct gdbarch *gdbarch,
5320 gdbarch_sigtramp_start_ftype sigtramp_start)
5321 {
5322 gdbarch->sigtramp_start = sigtramp_start;
5323 }
5324
5325 int
5326 gdbarch_sigtramp_end_p (struct gdbarch *gdbarch)
5327 {
5328 gdb_assert (gdbarch != NULL);
5329 return gdbarch->sigtramp_end != NULL;
5330 }
5331
5332 CORE_ADDR
5333 gdbarch_sigtramp_end (struct gdbarch *gdbarch, CORE_ADDR pc)
5334 {
5335 gdb_assert (gdbarch != NULL);
5336 gdb_assert (gdbarch->sigtramp_end != NULL);
5337 if (gdbarch_debug >= 2)
5338 fprintf_unfiltered (gdb_stdlog, "gdbarch_sigtramp_end called\n");
5339 return gdbarch->sigtramp_end (pc);
5340 }
5341
5342 void
5343 set_gdbarch_sigtramp_end (struct gdbarch *gdbarch,
5344 gdbarch_sigtramp_end_ftype sigtramp_end)
5345 {
5346 gdbarch->sigtramp_end = sigtramp_end;
5347 }
5348
5349 int
5350 gdbarch_in_function_epilogue_p (struct gdbarch *gdbarch, CORE_ADDR addr)
5351 {
5352 gdb_assert (gdbarch != NULL);
5353 gdb_assert (gdbarch->in_function_epilogue_p != NULL);
5354 if (gdbarch_debug >= 2)
5355 fprintf_unfiltered (gdb_stdlog, "gdbarch_in_function_epilogue_p called\n");
5356 return gdbarch->in_function_epilogue_p (gdbarch, addr);
5357 }
5358
5359 void
5360 set_gdbarch_in_function_epilogue_p (struct gdbarch *gdbarch,
5361 gdbarch_in_function_epilogue_p_ftype in_function_epilogue_p)
5362 {
5363 gdbarch->in_function_epilogue_p = in_function_epilogue_p;
5364 }
5365
5366 char *
5367 gdbarch_construct_inferior_arguments (struct gdbarch *gdbarch, int argc, char **argv)
5368 {
5369 gdb_assert (gdbarch != NULL);
5370 gdb_assert (gdbarch->construct_inferior_arguments != NULL);
5371 if (gdbarch_debug >= 2)
5372 fprintf_unfiltered (gdb_stdlog, "gdbarch_construct_inferior_arguments called\n");
5373 return gdbarch->construct_inferior_arguments (gdbarch, argc, argv);
5374 }
5375
5376 void
5377 set_gdbarch_construct_inferior_arguments (struct gdbarch *gdbarch,
5378 gdbarch_construct_inferior_arguments_ftype construct_inferior_arguments)
5379 {
5380 gdbarch->construct_inferior_arguments = construct_inferior_arguments;
5381 }
5382
5383 void
5384 gdbarch_elf_make_msymbol_special (struct gdbarch *gdbarch, asymbol *sym, struct minimal_symbol *msym)
5385 {
5386 gdb_assert (gdbarch != NULL);
5387 gdb_assert (gdbarch->elf_make_msymbol_special != NULL);
5388 if (gdbarch_debug >= 2)
5389 fprintf_unfiltered (gdb_stdlog, "gdbarch_elf_make_msymbol_special called\n");
5390 gdbarch->elf_make_msymbol_special (sym, msym);
5391 }
5392
5393 void
5394 set_gdbarch_elf_make_msymbol_special (struct gdbarch *gdbarch,
5395 gdbarch_elf_make_msymbol_special_ftype elf_make_msymbol_special)
5396 {
5397 gdbarch->elf_make_msymbol_special = elf_make_msymbol_special;
5398 }
5399
5400 void
5401 gdbarch_coff_make_msymbol_special (struct gdbarch *gdbarch, int val, struct minimal_symbol *msym)
5402 {
5403 gdb_assert (gdbarch != NULL);
5404 gdb_assert (gdbarch->coff_make_msymbol_special != NULL);
5405 if (gdbarch_debug >= 2)
5406 fprintf_unfiltered (gdb_stdlog, "gdbarch_coff_make_msymbol_special called\n");
5407 gdbarch->coff_make_msymbol_special (val, msym);
5408 }
5409
5410 void
5411 set_gdbarch_coff_make_msymbol_special (struct gdbarch *gdbarch,
5412 gdbarch_coff_make_msymbol_special_ftype coff_make_msymbol_special)
5413 {
5414 gdbarch->coff_make_msymbol_special = coff_make_msymbol_special;
5415 }
5416
5417 const char *
5418 gdbarch_name_of_malloc (struct gdbarch *gdbarch)
5419 {
5420 gdb_assert (gdbarch != NULL);
5421 /* Skip verify of name_of_malloc, invalid_p == 0 */
5422 if (gdbarch_debug >= 2)
5423 fprintf_unfiltered (gdb_stdlog, "gdbarch_name_of_malloc called\n");
5424 return gdbarch->name_of_malloc;
5425 }
5426
5427 void
5428 set_gdbarch_name_of_malloc (struct gdbarch *gdbarch,
5429 const char * name_of_malloc)
5430 {
5431 gdbarch->name_of_malloc = name_of_malloc;
5432 }
5433
5434 int
5435 gdbarch_cannot_step_breakpoint (struct gdbarch *gdbarch)
5436 {
5437 gdb_assert (gdbarch != NULL);
5438 /* Skip verify of cannot_step_breakpoint, invalid_p == 0 */
5439 if (gdbarch_debug >= 2)
5440 fprintf_unfiltered (gdb_stdlog, "gdbarch_cannot_step_breakpoint called\n");
5441 return gdbarch->cannot_step_breakpoint;
5442 }
5443
5444 void
5445 set_gdbarch_cannot_step_breakpoint (struct gdbarch *gdbarch,
5446 int cannot_step_breakpoint)
5447 {
5448 gdbarch->cannot_step_breakpoint = cannot_step_breakpoint;
5449 }
5450
5451 int
5452 gdbarch_have_nonsteppable_watchpoint (struct gdbarch *gdbarch)
5453 {
5454 gdb_assert (gdbarch != NULL);
5455 /* Skip verify of have_nonsteppable_watchpoint, invalid_p == 0 */
5456 if (gdbarch_debug >= 2)
5457 fprintf_unfiltered (gdb_stdlog, "gdbarch_have_nonsteppable_watchpoint called\n");
5458 return gdbarch->have_nonsteppable_watchpoint;
5459 }
5460
5461 void
5462 set_gdbarch_have_nonsteppable_watchpoint (struct gdbarch *gdbarch,
5463 int have_nonsteppable_watchpoint)
5464 {
5465 gdbarch->have_nonsteppable_watchpoint = have_nonsteppable_watchpoint;
5466 }
5467
5468 int
5469 gdbarch_address_class_type_flags_p (struct gdbarch *gdbarch)
5470 {
5471 gdb_assert (gdbarch != NULL);
5472 return gdbarch->address_class_type_flags != NULL;
5473 }
5474
5475 int
5476 gdbarch_address_class_type_flags (struct gdbarch *gdbarch, int byte_size, int dwarf2_addr_class)
5477 {
5478 gdb_assert (gdbarch != NULL);
5479 gdb_assert (gdbarch->address_class_type_flags != NULL);
5480 if (gdbarch_debug >= 2)
5481 fprintf_unfiltered (gdb_stdlog, "gdbarch_address_class_type_flags called\n");
5482 return gdbarch->address_class_type_flags (byte_size, dwarf2_addr_class);
5483 }
5484
5485 void
5486 set_gdbarch_address_class_type_flags (struct gdbarch *gdbarch,
5487 gdbarch_address_class_type_flags_ftype address_class_type_flags)
5488 {
5489 gdbarch->address_class_type_flags = address_class_type_flags;
5490 }
5491
5492 int
5493 gdbarch_address_class_type_flags_to_name_p (struct gdbarch *gdbarch)
5494 {
5495 gdb_assert (gdbarch != NULL);
5496 return gdbarch->address_class_type_flags_to_name != NULL;
5497 }
5498
5499 const char *
5500 gdbarch_address_class_type_flags_to_name (struct gdbarch *gdbarch, int type_flags)
5501 {
5502 gdb_assert (gdbarch != NULL);
5503 gdb_assert (gdbarch->address_class_type_flags_to_name != NULL);
5504 if (gdbarch_debug >= 2)
5505 fprintf_unfiltered (gdb_stdlog, "gdbarch_address_class_type_flags_to_name called\n");
5506 return gdbarch->address_class_type_flags_to_name (gdbarch, type_flags);
5507 }
5508
5509 void
5510 set_gdbarch_address_class_type_flags_to_name (struct gdbarch *gdbarch,
5511 gdbarch_address_class_type_flags_to_name_ftype address_class_type_flags_to_name)
5512 {
5513 gdbarch->address_class_type_flags_to_name = address_class_type_flags_to_name;
5514 }
5515
5516 int
5517 gdbarch_address_class_name_to_type_flags_p (struct gdbarch *gdbarch)
5518 {
5519 gdb_assert (gdbarch != NULL);
5520 return gdbarch->address_class_name_to_type_flags != NULL;
5521 }
5522
5523 int
5524 gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch, const char *name, int *type_flags_ptr)
5525 {
5526 gdb_assert (gdbarch != NULL);
5527 gdb_assert (gdbarch->address_class_name_to_type_flags != NULL);
5528 if (gdbarch_debug >= 2)
5529 fprintf_unfiltered (gdb_stdlog, "gdbarch_address_class_name_to_type_flags called\n");
5530 return gdbarch->address_class_name_to_type_flags (gdbarch, name, type_flags_ptr);
5531 }
5532
5533 void
5534 set_gdbarch_address_class_name_to_type_flags (struct gdbarch *gdbarch,
5535 gdbarch_address_class_name_to_type_flags_ftype address_class_name_to_type_flags)
5536 {
5537 gdbarch->address_class_name_to_type_flags = address_class_name_to_type_flags;
5538 }
5539
5540 int
5541 gdbarch_register_reggroup_p (struct gdbarch *gdbarch, int regnum, struct reggroup *reggroup)
5542 {
5543 gdb_assert (gdbarch != NULL);
5544 gdb_assert (gdbarch->register_reggroup_p != NULL);
5545 if (gdbarch_debug >= 2)
5546 fprintf_unfiltered (gdb_stdlog, "gdbarch_register_reggroup_p called\n");
5547 return gdbarch->register_reggroup_p (gdbarch, regnum, reggroup);
5548 }
5549
5550 void
5551 set_gdbarch_register_reggroup_p (struct gdbarch *gdbarch,
5552 gdbarch_register_reggroup_p_ftype register_reggroup_p)
5553 {
5554 gdbarch->register_reggroup_p = register_reggroup_p;
5555 }
5556
5557 int
5558 gdbarch_fetch_pointer_argument_p (struct gdbarch *gdbarch)
5559 {
5560 gdb_assert (gdbarch != NULL);
5561 return gdbarch->fetch_pointer_argument != NULL;
5562 }
5563
5564 CORE_ADDR
5565 gdbarch_fetch_pointer_argument (struct gdbarch *gdbarch, struct frame_info *frame, int argi, struct type *type)
5566 {
5567 gdb_assert (gdbarch != NULL);
5568 gdb_assert (gdbarch->fetch_pointer_argument != NULL);
5569 if (gdbarch_debug >= 2)
5570 fprintf_unfiltered (gdb_stdlog, "gdbarch_fetch_pointer_argument called\n");
5571 return gdbarch->fetch_pointer_argument (frame, argi, type);
5572 }
5573
5574 void
5575 set_gdbarch_fetch_pointer_argument (struct gdbarch *gdbarch,
5576 gdbarch_fetch_pointer_argument_ftype fetch_pointer_argument)
5577 {
5578 gdbarch->fetch_pointer_argument = fetch_pointer_argument;
5579 }
5580
5581 int
5582 gdbarch_regset_from_core_section_p (struct gdbarch *gdbarch)
5583 {
5584 gdb_assert (gdbarch != NULL);
5585 return gdbarch->regset_from_core_section != NULL;
5586 }
5587
5588 const struct regset *
5589 gdbarch_regset_from_core_section (struct gdbarch *gdbarch, const char *sect_name, size_t sect_size)
5590 {
5591 gdb_assert (gdbarch != NULL);
5592 gdb_assert (gdbarch->regset_from_core_section != NULL);
5593 if (gdbarch_debug >= 2)
5594 fprintf_unfiltered (gdb_stdlog, "gdbarch_regset_from_core_section called\n");
5595 return gdbarch->regset_from_core_section (gdbarch, sect_name, sect_size);
5596 }
5597
5598 void
5599 set_gdbarch_regset_from_core_section (struct gdbarch *gdbarch,
5600 gdbarch_regset_from_core_section_ftype regset_from_core_section)
5601 {
5602 gdbarch->regset_from_core_section = regset_from_core_section;
5603 }
5604
5605
5606 /* Keep a registry of per-architecture data-pointers required by GDB
5607 modules. */
5608
5609 struct gdbarch_data
5610 {
5611 unsigned index;
5612 int init_p;
5613 gdbarch_data_init_ftype *init;
5614 };
5615
5616 struct gdbarch_data_registration
5617 {
5618 struct gdbarch_data *data;
5619 struct gdbarch_data_registration *next;
5620 };
5621
5622 struct gdbarch_data_registry
5623 {
5624 unsigned nr;
5625 struct gdbarch_data_registration *registrations;
5626 };
5627
5628 struct gdbarch_data_registry gdbarch_data_registry =
5629 {
5630 0, NULL,
5631 };
5632
5633 struct gdbarch_data *
5634 register_gdbarch_data (gdbarch_data_init_ftype *init)
5635 {
5636 struct gdbarch_data_registration **curr;
5637 /* Append the new registraration. */
5638 for (curr = &gdbarch_data_registry.registrations;
5639 (*curr) != NULL;
5640 curr = &(*curr)->next);
5641 (*curr) = XMALLOC (struct gdbarch_data_registration);
5642 (*curr)->next = NULL;
5643 (*curr)->data = XMALLOC (struct gdbarch_data);
5644 (*curr)->data->index = gdbarch_data_registry.nr++;
5645 (*curr)->data->init = init;
5646 (*curr)->data->init_p = 1;
5647 return (*curr)->data;
5648 }
5649
5650
5651 /* Create/delete the gdbarch data vector. */
5652
5653 static void
5654 alloc_gdbarch_data (struct gdbarch *gdbarch)
5655 {
5656 gdb_assert (gdbarch->data == NULL);
5657 gdbarch->nr_data = gdbarch_data_registry.nr;
5658 gdbarch->data = GDBARCH_OBSTACK_CALLOC (gdbarch, gdbarch->nr_data, void *);
5659 }
5660
5661 /* Initialize the current value of the specified per-architecture
5662 data-pointer. */
5663
5664 void
5665 set_gdbarch_data (struct gdbarch *gdbarch,
5666 struct gdbarch_data *data,
5667 void *pointer)
5668 {
5669 gdb_assert (data->index < gdbarch->nr_data);
5670 gdb_assert (gdbarch->data[data->index] == NULL);
5671 gdbarch->data[data->index] = pointer;
5672 }
5673
5674 /* Return the current value of the specified per-architecture
5675 data-pointer. */
5676
5677 void *
5678 gdbarch_data (struct gdbarch *gdbarch, struct gdbarch_data *data)
5679 {
5680 gdb_assert (data->index < gdbarch->nr_data);
5681 /* The data-pointer isn't initialized, call init() to get a value but
5682 only if the architecture initializaiton has completed. Otherwise
5683 punt - hope that the caller knows what they are doing. */
5684 if (gdbarch->data[data->index] == NULL
5685 && gdbarch->initialized_p)
5686 {
5687 /* Be careful to detect an initialization cycle. */
5688 gdb_assert (data->init_p);
5689 data->init_p = 0;
5690 gdb_assert (data->init != NULL);
5691 gdbarch->data[data->index] = data->init (gdbarch);
5692 data->init_p = 1;
5693 gdb_assert (gdbarch->data[data->index] != NULL);
5694 }
5695 return gdbarch->data[data->index];
5696 }
5697
5698
5699
5700 /* Keep a registry of swapped data required by GDB modules. */
5701
5702 struct gdbarch_swap
5703 {
5704 void *swap;
5705 struct gdbarch_swap_registration *source;
5706 struct gdbarch_swap *next;
5707 };
5708
5709 struct gdbarch_swap_registration
5710 {
5711 void *data;
5712 unsigned long sizeof_data;
5713 gdbarch_swap_ftype *init;
5714 struct gdbarch_swap_registration *next;
5715 };
5716
5717 struct gdbarch_swap_registry
5718 {
5719 int nr;
5720 struct gdbarch_swap_registration *registrations;
5721 };
5722
5723 struct gdbarch_swap_registry gdbarch_swap_registry =
5724 {
5725 0, NULL,
5726 };
5727
5728 void
5729 register_gdbarch_swap (void *data,
5730 unsigned long sizeof_data,
5731 gdbarch_swap_ftype *init)
5732 {
5733 struct gdbarch_swap_registration **rego;
5734 for (rego = &gdbarch_swap_registry.registrations;
5735 (*rego) != NULL;
5736 rego = &(*rego)->next);
5737 (*rego) = XMALLOC (struct gdbarch_swap_registration);
5738 (*rego)->next = NULL;
5739 (*rego)->init = init;
5740 (*rego)->data = data;
5741 (*rego)->sizeof_data = sizeof_data;
5742 }
5743
5744 static void
5745 clear_gdbarch_swap (struct gdbarch *gdbarch)
5746 {
5747 struct gdbarch_swap *curr;
5748 for (curr = gdbarch->swap;
5749 curr != NULL;
5750 curr = curr->next)
5751 {
5752 memset (curr->source->data, 0, curr->source->sizeof_data);
5753 }
5754 }
5755
5756 static void
5757 init_gdbarch_swap (struct gdbarch *gdbarch)
5758 {
5759 struct gdbarch_swap_registration *rego;
5760 struct gdbarch_swap **curr = &gdbarch->swap;
5761 for (rego = gdbarch_swap_registry.registrations;
5762 rego != NULL;
5763 rego = rego->next)
5764 {
5765 if (rego->data != NULL)
5766 {
5767 (*curr) = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct gdbarch_swap);
5768 (*curr)->source = rego;
5769 (*curr)->swap = gdbarch_obstack_zalloc (gdbarch, rego->sizeof_data);
5770 (*curr)->next = NULL;
5771 curr = &(*curr)->next;
5772 }
5773 if (rego->init != NULL)
5774 rego->init ();
5775 }
5776 }
5777
5778 static void
5779 swapout_gdbarch_swap (struct gdbarch *gdbarch)
5780 {
5781 struct gdbarch_swap *curr;
5782 for (curr = gdbarch->swap;
5783 curr != NULL;
5784 curr = curr->next)
5785 memcpy (curr->swap, curr->source->data, curr->source->sizeof_data);
5786 }
5787
5788 static void
5789 swapin_gdbarch_swap (struct gdbarch *gdbarch)
5790 {
5791 struct gdbarch_swap *curr;
5792 for (curr = gdbarch->swap;
5793 curr != NULL;
5794 curr = curr->next)
5795 memcpy (curr->source->data, curr->swap, curr->source->sizeof_data);
5796 }
5797
5798
5799 /* Keep a registry of the architectures known by GDB. */
5800
5801 struct gdbarch_registration
5802 {
5803 enum bfd_architecture bfd_architecture;
5804 gdbarch_init_ftype *init;
5805 gdbarch_dump_tdep_ftype *dump_tdep;
5806 struct gdbarch_list *arches;
5807 struct gdbarch_registration *next;
5808 };
5809
5810 static struct gdbarch_registration *gdbarch_registry = NULL;
5811
5812 static void
5813 append_name (const char ***buf, int *nr, const char *name)
5814 {
5815 *buf = xrealloc (*buf, sizeof (char**) * (*nr + 1));
5816 (*buf)[*nr] = name;
5817 *nr += 1;
5818 }
5819
5820 const char **
5821 gdbarch_printable_names (void)
5822 {
5823 /* Accumulate a list of names based on the registed list of
5824 architectures. */
5825 enum bfd_architecture a;
5826 int nr_arches = 0;
5827 const char **arches = NULL;
5828 struct gdbarch_registration *rego;
5829 for (rego = gdbarch_registry;
5830 rego != NULL;
5831 rego = rego->next)
5832 {
5833 const struct bfd_arch_info *ap;
5834 ap = bfd_lookup_arch (rego->bfd_architecture, 0);
5835 if (ap == NULL)
5836 internal_error (__FILE__, __LINE__,
5837 "gdbarch_architecture_names: multi-arch unknown");
5838 do
5839 {
5840 append_name (&arches, &nr_arches, ap->printable_name);
5841 ap = ap->next;
5842 }
5843 while (ap != NULL);
5844 }
5845 append_name (&arches, &nr_arches, NULL);
5846 return arches;
5847 }
5848
5849
5850 void
5851 gdbarch_register (enum bfd_architecture bfd_architecture,
5852 gdbarch_init_ftype *init,
5853 gdbarch_dump_tdep_ftype *dump_tdep)
5854 {
5855 struct gdbarch_registration **curr;
5856 const struct bfd_arch_info *bfd_arch_info;
5857 /* Check that BFD recognizes this architecture */
5858 bfd_arch_info = bfd_lookup_arch (bfd_architecture, 0);
5859 if (bfd_arch_info == NULL)
5860 {
5861 internal_error (__FILE__, __LINE__,
5862 "gdbarch: Attempt to register unknown architecture (%d)",
5863 bfd_architecture);
5864 }
5865 /* Check that we haven't seen this architecture before */
5866 for (curr = &gdbarch_registry;
5867 (*curr) != NULL;
5868 curr = &(*curr)->next)
5869 {
5870 if (bfd_architecture == (*curr)->bfd_architecture)
5871 internal_error (__FILE__, __LINE__,
5872 "gdbarch: Duplicate registraration of architecture (%s)",
5873 bfd_arch_info->printable_name);
5874 }
5875 /* log it */
5876 if (gdbarch_debug)
5877 fprintf_unfiltered (gdb_stdlog, "register_gdbarch_init (%s, 0x%08lx)\n",
5878 bfd_arch_info->printable_name,
5879 (long) init);
5880 /* Append it */
5881 (*curr) = XMALLOC (struct gdbarch_registration);
5882 (*curr)->bfd_architecture = bfd_architecture;
5883 (*curr)->init = init;
5884 (*curr)->dump_tdep = dump_tdep;
5885 (*curr)->arches = NULL;
5886 (*curr)->next = NULL;
5887 }
5888
5889 void
5890 register_gdbarch_init (enum bfd_architecture bfd_architecture,
5891 gdbarch_init_ftype *init)
5892 {
5893 gdbarch_register (bfd_architecture, init, NULL);
5894 }
5895
5896
5897 /* Look for an architecture using gdbarch_info. Base search on only
5898 BFD_ARCH_INFO and BYTE_ORDER. */
5899
5900 struct gdbarch_list *
5901 gdbarch_list_lookup_by_info (struct gdbarch_list *arches,
5902 const struct gdbarch_info *info)
5903 {
5904 for (; arches != NULL; arches = arches->next)
5905 {
5906 if (info->bfd_arch_info != arches->gdbarch->bfd_arch_info)
5907 continue;
5908 if (info->byte_order != arches->gdbarch->byte_order)
5909 continue;
5910 if (info->osabi != arches->gdbarch->osabi)
5911 continue;
5912 return arches;
5913 }
5914 return NULL;
5915 }
5916
5917
5918 /* Update the current architecture. Return ZERO if the update request
5919 failed. */
5920
5921 int
5922 gdbarch_update_p (struct gdbarch_info info)
5923 {
5924 struct gdbarch *new_gdbarch;
5925 struct gdbarch *old_gdbarch;
5926 struct gdbarch_registration *rego;
5927
5928 /* Fill in missing parts of the INFO struct using a number of
5929 sources: ``set ...''; INFOabfd supplied; existing target. */
5930 gdbarch_info_fill (current_gdbarch, &info);
5931
5932 /* Must have found some sort of architecture. */
5933 gdb_assert (info.bfd_arch_info != NULL);
5934
5935 if (gdbarch_debug)
5936 {
5937 fprintf_unfiltered (gdb_stdlog,
5938 "gdbarch_update: info.bfd_arch_info %s\n",
5939 (info.bfd_arch_info != NULL
5940 ? info.bfd_arch_info->printable_name
5941 : "(null)"));
5942 fprintf_unfiltered (gdb_stdlog,
5943 "gdbarch_update: info.byte_order %d (%s)\n",
5944 info.byte_order,
5945 (info.byte_order == BFD_ENDIAN_BIG ? "big"
5946 : info.byte_order == BFD_ENDIAN_LITTLE ? "little"
5947 : "default"));
5948 fprintf_unfiltered (gdb_stdlog,
5949 "gdbarch_update: info.osabi %d (%s)\n",
5950 info.osabi, gdbarch_osabi_name (info.osabi));
5951 fprintf_unfiltered (gdb_stdlog,
5952 "gdbarch_update: info.abfd 0x%lx\n",
5953 (long) info.abfd);
5954 fprintf_unfiltered (gdb_stdlog,
5955 "gdbarch_update: info.tdep_info 0x%lx\n",
5956 (long) info.tdep_info);
5957 }
5958
5959 /* Find the target that knows about this architecture. */
5960 for (rego = gdbarch_registry;
5961 rego != NULL;
5962 rego = rego->next)
5963 if (rego->bfd_architecture == info.bfd_arch_info->arch)
5964 break;
5965 if (rego == NULL)
5966 {
5967 if (gdbarch_debug)
5968 fprintf_unfiltered (gdb_stdlog, "gdbarch_update: No matching architecture\n");
5969 return 0;
5970 }
5971
5972 /* Swap the data belonging to the old target out setting the
5973 installed data to zero. This stops the ->init() function trying
5974 to refer to the previous architecture's global data structures. */
5975 swapout_gdbarch_swap (current_gdbarch);
5976 clear_gdbarch_swap (current_gdbarch);
5977
5978 /* Save the previously selected architecture, setting the global to
5979 NULL. This stops ->init() trying to use the previous
5980 architecture's configuration. The previous architecture may not
5981 even be of the same architecture family. The most recent
5982 architecture of the same family is found at the head of the
5983 rego->arches list. */
5984 old_gdbarch = current_gdbarch;
5985 current_gdbarch = NULL;
5986
5987 /* Ask the target for a replacement architecture. */
5988 new_gdbarch = rego->init (info, rego->arches);
5989
5990 /* Did the target like it? No. Reject the change and revert to the
5991 old architecture. */
5992 if (new_gdbarch == NULL)
5993 {
5994 if (gdbarch_debug)
5995 fprintf_unfiltered (gdb_stdlog, "gdbarch_update: Target rejected architecture\n");
5996 swapin_gdbarch_swap (old_gdbarch);
5997 current_gdbarch = old_gdbarch;
5998 return 0;
5999 }
6000
6001 /* Did the architecture change? No. Oops, put the old architecture
6002 back. */
6003 if (old_gdbarch == new_gdbarch)
6004 {
6005 if (gdbarch_debug)
6006 fprintf_unfiltered (gdb_stdlog, "gdbarch_update: Architecture 0x%08lx (%s) unchanged\n",
6007 (long) new_gdbarch,
6008 new_gdbarch->bfd_arch_info->printable_name);
6009 swapin_gdbarch_swap (old_gdbarch);
6010 current_gdbarch = old_gdbarch;
6011 return 1;
6012 }
6013
6014 /* Is this a pre-existing architecture? Yes. Move it to the front
6015 of the list of architectures (keeping the list sorted Most
6016 Recently Used) and then copy it in. */
6017 {
6018 struct gdbarch_list **list;
6019 for (list = &rego->arches;
6020 (*list) != NULL;
6021 list = &(*list)->next)
6022 {
6023 if ((*list)->gdbarch == new_gdbarch)
6024 {
6025 struct gdbarch_list *this;
6026 if (gdbarch_debug)
6027 fprintf_unfiltered (gdb_stdlog,
6028 "gdbarch_update: Previous architecture 0x%08lx (%s) selected\n",
6029 (long) new_gdbarch,
6030 new_gdbarch->bfd_arch_info->printable_name);
6031 /* Unlink this. */
6032 this = (*list);
6033 (*list) = this->next;
6034 /* Insert in the front. */
6035 this->next = rego->arches;
6036 rego->arches = this;
6037 /* Copy the new architecture in. */
6038 current_gdbarch = new_gdbarch;
6039 swapin_gdbarch_swap (new_gdbarch);
6040 architecture_changed_event ();
6041 return 1;
6042 }
6043 }
6044 }
6045
6046 /* Prepend this new architecture to the architecture list (keep the
6047 list sorted Most Recently Used). */
6048 {
6049 struct gdbarch_list *this = XMALLOC (struct gdbarch_list);
6050 this->next = rego->arches;
6051 this->gdbarch = new_gdbarch;
6052 rego->arches = this;
6053 }
6054
6055 /* Switch to this new architecture marking it initialized. */
6056 current_gdbarch = new_gdbarch;
6057 current_gdbarch->initialized_p = 1;
6058 if (gdbarch_debug)
6059 {
6060 fprintf_unfiltered (gdb_stdlog,
6061 "gdbarch_update: New architecture 0x%08lx (%s) selected\n",
6062 (long) new_gdbarch,
6063 new_gdbarch->bfd_arch_info->printable_name);
6064 }
6065
6066 /* Check that the newly installed architecture is valid. Plug in
6067 any post init values. */
6068 new_gdbarch->dump_tdep = rego->dump_tdep;
6069 verify_gdbarch (new_gdbarch);
6070
6071 /* Initialize the per-architecture memory (swap) areas.
6072 CURRENT_GDBARCH must be update before these modules are
6073 called. */
6074 init_gdbarch_swap (new_gdbarch);
6075
6076 /* Initialize the per-architecture data. CURRENT_GDBARCH
6077 must be updated before these modules are called. */
6078 architecture_changed_event ();
6079
6080 if (gdbarch_debug)
6081 gdbarch_dump (current_gdbarch, gdb_stdlog);
6082
6083 return 1;
6084 }
6085
6086
6087 extern void _initialize_gdbarch (void);
6088
6089 void
6090 _initialize_gdbarch (void)
6091 {
6092 struct cmd_list_element *c;
6093
6094 add_show_from_set (add_set_cmd ("arch",
6095 class_maintenance,
6096 var_zinteger,
6097 (char *)&gdbarch_debug,
6098 "Set architecture debugging.\n\
6099 When non-zero, architecture debugging is enabled.", &setdebuglist),
6100 &showdebuglist);
6101 c = add_set_cmd ("archdebug",
6102 class_maintenance,
6103 var_zinteger,
6104 (char *)&gdbarch_debug,
6105 "Set architecture debugging.\n\
6106 When non-zero, architecture debugging is enabled.", &setlist);
6107
6108 deprecate_cmd (c, "set debug arch");
6109 deprecate_cmd (add_show_from_set (c, &showlist), "show debug arch");
6110 }
This page took 0.155381 seconds and 4 git commands to generate.