mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-24 02:24:46 +08:00
Fix PR16220
This patch removes startup_gdbarch because it is not used anymore. After this patch, [PATCH] Multi-process + multi-arch: GDB https://sourceware.org/ml/gdb-patches/2012-11/msg00228.html global variable target_gdbarch is removed and gdbarch becomes per-inferior. Then, we don't have to keep global variable startup_gdbarch. Rebuild GDB with all targets. Is it OK? gdb: 2014-02-18 Yao Qi <yao@codesourcery.com> PR gdb/16220 * gdbarch.sh: Remove startup_gdbarch. * gdbarch.c: Regenerated. * gdbarch.h: Likewise.
This commit is contained in:
parent
5db3e65d39
commit
e095146be2
@ -1,3 +1,10 @@
|
||||
2014-02-19 Yao Qi <yao@codesourcery.com>
|
||||
|
||||
PR gdb/16220
|
||||
* gdbarch.sh: Remove startup_gdbarch.
|
||||
* gdbarch.c: Regenerated.
|
||||
* gdbarch.h: Likewise.
|
||||
|
||||
2014-02-17 Kevin Buettner <kevinb@redhat.com>
|
||||
|
||||
* rl78-tdep.c (rl78_g10_register_name): New function.
|
||||
|
182
gdb/gdbarch.c
182
gdb/gdbarch.c
@ -159,9 +159,6 @@ struct gdbarch
|
||||
gdbarch_dump(): Add a fprintf_unfiltered call so that the new
|
||||
field is dumped out
|
||||
|
||||
``startup_gdbarch()'': Append an initial value to the static
|
||||
variable (base values on the host's c-type system).
|
||||
|
||||
get_gdbarch(): Implement the set/get functions (probably using
|
||||
the macro's as shortcuts).
|
||||
|
||||
@ -323,185 +320,6 @@ struct gdbarch
|
||||
gdbarch_insn_is_jump_ftype *insn_is_jump;
|
||||
};
|
||||
|
||||
|
||||
/* The default architecture uses host values (for want of a better
|
||||
choice). */
|
||||
|
||||
extern const struct bfd_arch_info bfd_default_arch_struct;
|
||||
|
||||
struct gdbarch startup_gdbarch =
|
||||
{
|
||||
1, /* Always initialized. */
|
||||
NULL, /* The obstack. */
|
||||
/* basic architecture information. */
|
||||
&bfd_default_arch_struct, /* bfd_arch_info */
|
||||
BFD_ENDIAN_BIG, /* byte_order */
|
||||
BFD_ENDIAN_BIG, /* byte_order_for_code */
|
||||
GDB_OSABI_UNKNOWN, /* osabi */
|
||||
0, /* target_desc */
|
||||
/* target specific vector and its dump routine. */
|
||||
NULL, NULL,
|
||||
/*per-architecture data-pointers. */
|
||||
0, NULL,
|
||||
/* Multi-arch values */
|
||||
1, /* bits_big_endian */
|
||||
8 * sizeof (short), /* short_bit */
|
||||
8 * sizeof (int), /* int_bit */
|
||||
8 * sizeof (long), /* long_bit */
|
||||
8 * sizeof (LONGEST), /* long_long_bit */
|
||||
8 * sizeof (LONGEST), /* long_long_align_bit */
|
||||
16, /* half_bit */
|
||||
0, /* half_format */
|
||||
8 * sizeof (float), /* float_bit */
|
||||
0, /* float_format */
|
||||
8 * sizeof (double), /* double_bit */
|
||||
0, /* double_format */
|
||||
8 * sizeof (long double), /* long_double_bit */
|
||||
0, /* long_double_format */
|
||||
8 * sizeof (void*), /* ptr_bit */
|
||||
8 * sizeof (void*), /* addr_bit */
|
||||
sizeof (void*), /* dwarf2_addr_size */
|
||||
1, /* char_signed */
|
||||
0, /* read_pc */
|
||||
0, /* write_pc */
|
||||
legacy_virtual_frame_pointer, /* virtual_frame_pointer */
|
||||
0, /* pseudo_register_read */
|
||||
0, /* pseudo_register_read_value */
|
||||
0, /* pseudo_register_write */
|
||||
0, /* num_regs */
|
||||
0, /* num_pseudo_regs */
|
||||
0, /* ax_pseudo_register_collect */
|
||||
0, /* ax_pseudo_register_push_stack */
|
||||
-1, /* sp_regnum */
|
||||
-1, /* pc_regnum */
|
||||
-1, /* ps_regnum */
|
||||
0, /* fp0_regnum */
|
||||
no_op_reg_to_regnum, /* stab_reg_to_regnum */
|
||||
no_op_reg_to_regnum, /* ecoff_reg_to_regnum */
|
||||
no_op_reg_to_regnum, /* sdb_reg_to_regnum */
|
||||
no_op_reg_to_regnum, /* dwarf2_reg_to_regnum */
|
||||
0, /* register_name */
|
||||
0, /* register_type */
|
||||
0, /* dummy_id */
|
||||
-1, /* deprecated_fp_regnum */
|
||||
0, /* push_dummy_call */
|
||||
0, /* call_dummy_location */
|
||||
0, /* push_dummy_code */
|
||||
default_print_registers_info, /* print_registers_info */
|
||||
0, /* print_float_info */
|
||||
0, /* print_vector_info */
|
||||
legacy_register_sim_regno, /* register_sim_regno */
|
||||
cannot_register_not, /* cannot_fetch_register */
|
||||
cannot_register_not, /* cannot_store_register */
|
||||
0, /* get_longjmp_target */
|
||||
0, /* believe_pcc_promotion */
|
||||
generic_convert_register_p, /* convert_register_p */
|
||||
0, /* register_to_value */
|
||||
0, /* value_to_register */
|
||||
0, /* value_from_register */
|
||||
unsigned_pointer_to_address, /* pointer_to_address */
|
||||
unsigned_address_to_pointer, /* address_to_pointer */
|
||||
0, /* integer_to_address */
|
||||
0, /* return_value */
|
||||
default_return_in_first_hidden_param_p, /* return_in_first_hidden_param_p */
|
||||
0, /* skip_prologue */
|
||||
0, /* skip_main_prologue */
|
||||
0, /* skip_entrypoint */
|
||||
0, /* inner_than */
|
||||
0, /* breakpoint_from_pc */
|
||||
default_remote_breakpoint_from_pc, /* remote_breakpoint_from_pc */
|
||||
0, /* adjust_breakpoint_address */
|
||||
default_memory_insert_breakpoint, /* memory_insert_breakpoint */
|
||||
default_memory_remove_breakpoint, /* memory_remove_breakpoint */
|
||||
0, /* decr_pc_after_break */
|
||||
0, /* deprecated_function_start_offset */
|
||||
default_remote_register_number, /* remote_register_number */
|
||||
0, /* fetch_tls_load_module_address */
|
||||
0, /* frame_args_skip */
|
||||
0, /* unwind_pc */
|
||||
0, /* unwind_sp */
|
||||
0, /* frame_num_args */
|
||||
0, /* frame_align */
|
||||
default_stabs_argument_has_addr, /* stabs_argument_has_addr */
|
||||
0, /* frame_red_zone_size */
|
||||
convert_from_func_ptr_addr_identity, /* convert_from_func_ptr_addr */
|
||||
core_addr_identity, /* addr_bits_remove */
|
||||
0, /* software_single_step */
|
||||
0, /* single_step_through_delay */
|
||||
0, /* print_insn */
|
||||
0, /* skip_trampoline_code */
|
||||
generic_skip_solib_resolver, /* skip_solib_resolver */
|
||||
generic_in_solib_return_trampoline, /* in_solib_return_trampoline */
|
||||
generic_in_function_epilogue_p, /* in_function_epilogue_p */
|
||||
0, /* elf_make_msymbol_special */
|
||||
0, /* coff_make_msymbol_special */
|
||||
0, /* cannot_step_breakpoint */
|
||||
0, /* have_nonsteppable_watchpoint */
|
||||
0, /* address_class_type_flags */
|
||||
0, /* address_class_type_flags_to_name */
|
||||
0, /* address_class_name_to_type_flags */
|
||||
default_register_reggroup_p, /* register_reggroup_p */
|
||||
0, /* fetch_pointer_argument */
|
||||
0, /* regset_from_core_section */
|
||||
0, /* core_regset_sections */
|
||||
0, /* make_corefile_notes */
|
||||
0, /* elfcore_write_linux_prpsinfo */
|
||||
0, /* find_memory_regions */
|
||||
0, /* core_xfer_shared_libraries */
|
||||
0, /* core_xfer_shared_libraries_aix */
|
||||
0, /* core_pid_to_str */
|
||||
0, /* gcore_bfd_target */
|
||||
0, /* vtable_function_descriptors */
|
||||
0, /* vbit_in_delta */
|
||||
0, /* skip_permanent_breakpoint */
|
||||
0, /* max_insn_length */
|
||||
0, /* displaced_step_copy_insn */
|
||||
default_displaced_step_hw_singlestep, /* displaced_step_hw_singlestep */
|
||||
0, /* displaced_step_fixup */
|
||||
NULL, /* displaced_step_free_closure */
|
||||
NULL, /* displaced_step_location */
|
||||
0, /* relocate_instruction */
|
||||
0, /* overlay_update */
|
||||
0, /* core_read_description */
|
||||
0, /* static_transform_name */
|
||||
0, /* sofun_address_maybe_missing */
|
||||
0, /* process_record */
|
||||
0, /* process_record_signal */
|
||||
0, /* gdb_signal_from_target */
|
||||
0, /* gdb_signal_to_target */
|
||||
0, /* get_siginfo_type */
|
||||
0, /* record_special_symbol */
|
||||
0, /* get_syscall_number */
|
||||
0, /* stap_integer_prefixes */
|
||||
0, /* stap_integer_suffixes */
|
||||
0, /* stap_register_prefixes */
|
||||
0, /* stap_register_suffixes */
|
||||
0, /* stap_register_indirection_prefixes */
|
||||
0, /* stap_register_indirection_suffixes */
|
||||
0, /* stap_gdb_register_prefix */
|
||||
0, /* stap_gdb_register_suffix */
|
||||
0, /* stap_is_single_operand */
|
||||
0, /* stap_parse_special_token */
|
||||
0, /* has_global_solist */
|
||||
0, /* has_global_breakpoints */
|
||||
default_has_shared_address_space, /* has_shared_address_space */
|
||||
default_fast_tracepoint_valid_at, /* fast_tracepoint_valid_at */
|
||||
default_auto_charset, /* auto_charset */
|
||||
default_auto_wide_charset, /* auto_wide_charset */
|
||||
0, /* solib_symbols_extension */
|
||||
0, /* has_dos_based_file_system */
|
||||
default_gen_return_address, /* gen_return_address */
|
||||
0, /* info_proc */
|
||||
0, /* core_info_proc */
|
||||
default_iterate_over_objfiles_in_search_order, /* iterate_over_objfiles_in_search_order */
|
||||
NULL, /* ravenscar_ops */
|
||||
default_insn_is_call, /* insn_is_call */
|
||||
default_insn_is_ret, /* insn_is_ret */
|
||||
default_insn_is_jump, /* insn_is_jump */
|
||||
/* startup_gdbarch() */
|
||||
};
|
||||
|
||||
|
||||
/* Create a new ``struct gdbarch'' based on information provided by
|
||||
``struct gdbarch_info''. */
|
||||
|
||||
|
@ -74,11 +74,6 @@ struct elf_internal_linux_prpsinfo;
|
||||
/* This is a convenience wrapper for 'current_inferior ()->gdbarch'. */
|
||||
extern struct gdbarch *target_gdbarch (void);
|
||||
|
||||
/* The initial, default architecture. It uses host values (for want of a better
|
||||
choice). */
|
||||
extern struct gdbarch startup_gdbarch;
|
||||
|
||||
|
||||
/* Callback type for the 'iterate_over_objfiles_in_search_order'
|
||||
gdbarch method. */
|
||||
|
||||
|
@ -1157,11 +1157,6 @@ struct elf_internal_linux_prpsinfo;
|
||||
/* This is a convenience wrapper for 'current_inferior ()->gdbarch'. */
|
||||
extern struct gdbarch *target_gdbarch (void);
|
||||
|
||||
/* The initial, default architecture. It uses host values (for want of a better
|
||||
choice). */
|
||||
extern struct gdbarch startup_gdbarch;
|
||||
|
||||
|
||||
/* Callback type for the 'iterate_over_objfiles_in_search_order'
|
||||
gdbarch method. */
|
||||
|
||||
@ -1595,9 +1590,6 @@ cat <<EOF
|
||||
gdbarch_dump(): Add a fprintf_unfiltered call so that the new
|
||||
field is dumped out
|
||||
|
||||
\`\`startup_gdbarch()'': Append an initial value to the static
|
||||
variable (base values on the host's c-type system).
|
||||
|
||||
get_gdbarch(): Implement the set/get functions (probably using
|
||||
the macro's as shortcuts).
|
||||
|
||||
@ -1616,48 +1608,6 @@ do
|
||||
done
|
||||
printf "};\n"
|
||||
|
||||
# A pre-initialized vector
|
||||
printf "\n"
|
||||
printf "\n"
|
||||
cat <<EOF
|
||||
/* The default architecture uses host values (for want of a better
|
||||
choice). */
|
||||
EOF
|
||||
printf "\n"
|
||||
printf "extern const struct bfd_arch_info bfd_default_arch_struct;\n"
|
||||
printf "\n"
|
||||
printf "struct gdbarch startup_gdbarch =\n"
|
||||
printf "{\n"
|
||||
printf " 1, /* Always initialized. */\n"
|
||||
printf " NULL, /* The obstack. */\n"
|
||||
printf " /* basic architecture information. */\n"
|
||||
function_list | while do_read
|
||||
do
|
||||
if class_is_info_p
|
||||
then
|
||||
printf " ${staticdefault}, /* ${function} */\n"
|
||||
fi
|
||||
done
|
||||
cat <<EOF
|
||||
/* target specific vector and its dump routine. */
|
||||
NULL, NULL,
|
||||
/*per-architecture data-pointers. */
|
||||
0, NULL,
|
||||
/* Multi-arch values */
|
||||
EOF
|
||||
function_list | while do_read
|
||||
do
|
||||
if class_is_function_p || class_is_variable_p
|
||||
then
|
||||
printf " ${staticdefault}, /* ${function} */\n"
|
||||
fi
|
||||
done
|
||||
cat <<EOF
|
||||
/* startup_gdbarch() */
|
||||
};
|
||||
|
||||
EOF
|
||||
|
||||
# Create a new gdbarch struct
|
||||
cat <<EOF
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user