GDB (xrefs)
Enumerations | Functions | Variables
/tmp/gdb-7.10/gdb/arch-utils.c File Reference
#include "defs.h"
#include "arch-utils.h"
#include "buildsym.h"
#include "gdbcmd.h"
#include "inferior.h"
#include "infrun.h"
#include "regcache.h"
#include "sim-regno.h"
#include "gdbcore.h"
#include "osabi.h"
#include "target-descriptions.h"
#include "objfiles.h"
#include "language.h"
#include "symtab.h"
#include "version.h"
#include "floatformat.h"

Go to the source code of this file.

Enumerations

enum  set_arch { set_arch_auto, set_arch_manual }
 

Functions

struct displaced_step_closuresimple_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs)
 
void simple_displaced_step_free_closure (struct gdbarch *gdbarch, struct displaced_step_closure *closure)
 
int default_displaced_step_hw_singlestep (struct gdbarch *gdbarch, struct displaced_step_closure *closure)
 
CORE_ADDR displaced_step_at_entry_point (struct gdbarch *gdbarch)
 
int legacy_register_sim_regno (struct gdbarch *gdbarch, int regnum)
 
CORE_ADDR generic_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
 
CORE_ADDR generic_skip_solib_resolver (struct gdbarch *gdbarch, CORE_ADDR pc)
 
int generic_in_solib_return_trampoline (struct gdbarch *gdbarch, CORE_ADDR pc, const char *name)
 
int generic_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
 
int core_addr_lessthan (CORE_ADDR lhs, CORE_ADDR rhs)
 
int core_addr_greaterthan (CORE_ADDR lhs, CORE_ADDR rhs)
 
CORE_ADDR core_addr_identity (struct gdbarch *gdbarch, CORE_ADDR addr)
 
CORE_ADDR convert_from_func_ptr_addr_identity (struct gdbarch *gdbarch, CORE_ADDR addr, struct target_ops *targ)
 
int no_op_reg_to_regnum (struct gdbarch *gdbarch, int reg)
 
void default_coff_make_msymbol_special (int val, struct minimal_symbol *msym)
 
void default_make_symbol_special (struct symbol *sym, struct objfile *objfile)
 
CORE_ADDR default_adjust_dwarf2_addr (CORE_ADDR pc)
 
CORE_ADDR default_adjust_dwarf2_line (CORE_ADDR addr, int rel)
 
int cannot_register_not (struct gdbarch *gdbarch, int regnum)
 
void legacy_virtual_frame_pointer (struct gdbarch *gdbarch, CORE_ADDR pc, int *frame_regnum, LONGEST *frame_offset)
 
int generic_convert_register_p (struct gdbarch *gdbarch, int regnum, struct type *type)
 
int default_stabs_argument_has_addr (struct gdbarch *gdbarch, struct type *type)
 
int generic_instruction_nullified (struct gdbarch *gdbarch, struct regcache *regcache)
 
int default_remote_register_number (struct gdbarch *gdbarch, int regno)
 
int default_vsyscall_range (struct gdbarch *gdbarch, struct mem_range *range)
 
enum bfd_endian selected_byte_order (void)
 
static void show_endian (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static void set_endian (char *ignore_args, int from_tty, struct cmd_list_element *c)
 
static const struct bfd_arch_info * choose_architecture_for_target (const struct target_desc *target_desc, const struct bfd_arch_info *selected)
 
const char * selected_architecture_name (void)
 
static void show_architecture (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static void set_architecture (char *ignore_args, int from_tty, struct cmd_list_element *c)
 
int gdbarch_update_p (struct gdbarch_info info)
 
struct gdbarchgdbarch_from_bfd (bfd *abfd)
 
void set_gdbarch_from_file (bfd *abfd)
 
void initialize_current_architecture (void)
 
void gdbarch_info_init (struct gdbarch_info *info)
 
void gdbarch_info_fill (struct gdbarch_info *info)
 
struct gdbarchget_current_arch (void)
 
int default_has_shared_address_space (struct gdbarch *gdbarch)
 
int default_fast_tracepoint_valid_at (struct gdbarch *gdbarch, CORE_ADDR addr, int *isize, char **msg)
 
void default_remote_breakpoint_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pcptr, int *kindptr)
 
void default_gen_return_address (struct gdbarch *gdbarch, struct agent_expr *ax, struct axs_value *value, CORE_ADDR scope)
 
int default_return_in_first_hidden_param_p (struct gdbarch *gdbarch, struct type *type)
 
int default_insn_is_call (struct gdbarch *gdbarch, CORE_ADDR addr)
 
int default_insn_is_ret (struct gdbarch *gdbarch, CORE_ADDR addr)
 
int default_insn_is_jump (struct gdbarch *gdbarch, CORE_ADDR addr)
 
void default_skip_permanent_breakpoint (struct regcache *regcache)
 
CORE_ADDR default_infcall_mmap (CORE_ADDR size, unsigned prot)
 
void default_infcall_munmap (CORE_ADDR addr, CORE_ADDR size)
 
char * default_gcc_target_options (struct gdbarch *gdbarch)
 
const char * default_gnu_triplet_regexp (struct gdbarch *gdbarch)
 
int default_addressable_memory_unit_size (struct gdbarch *gdbarch)
 
void _initialize_gdbarch_utils (void)
 

Variables

static int target_byte_order_user = BFD_ENDIAN_UNKNOWN
 
static const char endian_big [] = "big"
 
static const char endian_little [] = "little"
 
static const char endian_auto [] = "auto"
 
static const char *const endian_enum []
 
static const char * set_endian_string
 
static const struct bfd_arch_info * target_architecture_user
 
static const char * set_architecture_string
 
const bfd_arch_info_type DEFAULT_BFD_ARCH
 
static const bfd_arch_info_type * default_bfd_arch = &DEFAULT_BFD_ARCH
 
const bfd_target DEFAULT_BFD_VEC
 
static const bfd_target * default_bfd_vec = &DEFAULT_BFD_VEC
 
static int default_byte_order = BFD_ENDIAN_UNKNOWN
 
initialize_file_ftype _initialize_gdbarch_utils
 

Enumeration Type Documentation

enum set_arch
Enumerator
set_arch_auto 
set_arch_manual 

Definition at line 441 of file arch-utils.c.

Function Documentation

void _initialize_gdbarch_utils ( void  )
int cannot_register_not ( struct gdbarch gdbarch,
int  regnum 
)

Definition at line 201 of file arch-utils.c.

Referenced by gdbarch_alloc().

static const struct bfd_arch_info* choose_architecture_for_target ( const struct target_desc target_desc,
const struct bfd_arch_info *  selected 
)
static

Definition at line 370 of file arch-utils.c.

References _, tdesc_architecture(), tdesc_compatible_p(), and warning().

Referenced by gdbarch_info_fill().

CORE_ADDR convert_from_func_ptr_addr_identity ( struct gdbarch gdbarch,
CORE_ADDR  addr,
struct target_ops targ 
)

Definition at line 158 of file arch-utils.c.

int core_addr_greaterthan ( CORE_ADDR  lhs,
CORE_ADDR  rhs 
)

Definition at line 144 of file arch-utils.c.

Referenced by hppa_gdbarch_init(), and xstormy16_gdbarch_init().

CORE_ADDR core_addr_identity ( struct gdbarch gdbarch,
CORE_ADDR  addr 
)

Definition at line 152 of file arch-utils.c.

Referenced by gdbarch_alloc().

int core_addr_lessthan ( CORE_ADDR  lhs,
CORE_ADDR  rhs 
)
int default_addressable_memory_unit_size ( struct gdbarch gdbarch)

Definition at line 895 of file arch-utils.c.

Referenced by gdbarch_alloc().

CORE_ADDR default_adjust_dwarf2_addr ( CORE_ADDR  pc)

Definition at line 187 of file arch-utils.c.

Referenced by gdbarch_alloc().

CORE_ADDR default_adjust_dwarf2_line ( CORE_ADDR  addr,
int  rel 
)

Definition at line 195 of file arch-utils.c.

Referenced by gdbarch_alloc().

void default_coff_make_msymbol_special ( int  val,
struct minimal_symbol msym 
)

Definition at line 171 of file arch-utils.c.

Referenced by gdbarch_alloc().

int default_displaced_step_hw_singlestep ( struct gdbarch gdbarch,
struct displaced_step_closure closure 
)

Definition at line 71 of file arch-utils.c.

References gdbarch_software_single_step_p().

Referenced by gdbarch_alloc().

int default_fast_tracepoint_valid_at ( struct gdbarch gdbarch,
CORE_ADDR  addr,
int isize,
char **  msg 
)

Definition at line 798 of file arch-utils.c.

Referenced by gdbarch_alloc().

char* default_gcc_target_options ( struct gdbarch gdbarch)

Definition at line 877 of file arch-utils.c.

References gdbarch_ptr_bit(), and xstrprintf().

Referenced by gdbarch_alloc().

void default_gen_return_address ( struct gdbarch gdbarch,
struct agent_expr ax,
struct axs_value value,
CORE_ADDR  scope 
)

Definition at line 816 of file arch-utils.c.

References _, and error().

Referenced by gdbarch_alloc().

const char* default_gnu_triplet_regexp ( struct gdbarch gdbarch)

Definition at line 886 of file arch-utils.c.

References gdbarch_bfd_arch_info().

Referenced by gdbarch_alloc().

int default_has_shared_address_space ( struct gdbarch gdbarch)

Definition at line 790 of file arch-utils.c.

Referenced by gdbarch_alloc().

CORE_ADDR default_infcall_mmap ( CORE_ADDR  size,
unsigned  prot 
)

Definition at line 862 of file arch-utils.c.

References _, and error().

Referenced by gdbarch_alloc().

void default_infcall_munmap ( CORE_ADDR  addr,
CORE_ADDR  size 
)

Definition at line 868 of file arch-utils.c.

Referenced by gdbarch_alloc().

int default_insn_is_call ( struct gdbarch gdbarch,
CORE_ADDR  addr 
)

Definition at line 833 of file arch-utils.c.

Referenced by gdbarch_alloc().

int default_insn_is_jump ( struct gdbarch gdbarch,
CORE_ADDR  addr 
)

Definition at line 843 of file arch-utils.c.

Referenced by gdbarch_alloc().

int default_insn_is_ret ( struct gdbarch gdbarch,
CORE_ADDR  addr 
)

Definition at line 838 of file arch-utils.c.

Referenced by gdbarch_alloc().

void default_make_symbol_special ( struct symbol sym,
struct objfile objfile 
)

Definition at line 179 of file arch-utils.c.

Referenced by gdbarch_alloc().

void default_remote_breakpoint_from_pc ( struct gdbarch gdbarch,
CORE_ADDR pcptr,
int kindptr 
)

Definition at line 809 of file arch-utils.c.

References gdbarch_breakpoint_from_pc().

Referenced by gdbarch_alloc().

int default_remote_register_number ( struct gdbarch gdbarch,
int  regno 
)

Definition at line 259 of file arch-utils.c.

Referenced by gdbarch_alloc().

int default_return_in_first_hidden_param_p ( struct gdbarch gdbarch,
struct type type 
)

Definition at line 824 of file arch-utils.c.

References language_pass_by_reference().

Referenced by gdbarch_alloc().

void default_skip_permanent_breakpoint ( struct regcache regcache)
int default_stabs_argument_has_addr ( struct gdbarch gdbarch,
struct type type 
)

Definition at line 246 of file arch-utils.c.

Referenced by gdbarch_alloc(), and sparc64_init_abi().

int default_vsyscall_range ( struct gdbarch gdbarch,
struct mem_range range 
)

Definition at line 268 of file arch-utils.c.

Referenced by gdbarch_alloc().

CORE_ADDR displaced_step_at_entry_point ( struct gdbarch gdbarch)

Definition at line 78 of file arch-utils.c.

References entry_point_address(), and gdbarch_breakpoint_from_pc().

Referenced by rs6000_gdbarch_init().

struct gdbarch* gdbarch_from_bfd ( bfd *  abfd)
void gdbarch_info_fill ( struct gdbarch_info info)
void gdbarch_info_init ( struct gdbarch_info info)
int gdbarch_update_p ( struct gdbarch_info  info)
int generic_convert_register_p ( struct gdbarch gdbarch,
int  regnum,
struct type type 
)

Definition at line 239 of file arch-utils.c.

Referenced by gdbarch_alloc().

int generic_in_solib_return_trampoline ( struct gdbarch gdbarch,
CORE_ADDR  pc,
const char *  name 
)

Definition at line 123 of file arch-utils.c.

Referenced by gdbarch_alloc().

int generic_instruction_nullified ( struct gdbarch gdbarch,
struct regcache regcache 
)

Definition at line 252 of file arch-utils.c.

CORE_ADDR generic_skip_solib_resolver ( struct gdbarch gdbarch,
CORE_ADDR  pc 
)

Definition at line 117 of file arch-utils.c.

Referenced by gdbarch_alloc().

CORE_ADDR generic_skip_trampoline_code ( struct frame_info frame,
CORE_ADDR  pc 
)

Definition at line 111 of file arch-utils.c.

Referenced by gdbarch_alloc().

int generic_stack_frame_destroyed_p ( struct gdbarch gdbarch,
CORE_ADDR  pc 
)

Definition at line 130 of file arch-utils.c.

Referenced by gdbarch_alloc().

struct gdbarch* get_current_arch ( void  )

Definition at line 781 of file arch-utils.c.

References get_frame_arch(), get_selected_frame(), has_stack_frames(), and target_gdbarch().

Referenced by add_solib_catchpoint(), add_symbol_file_command(), agent_eval_command_one(), bpfinishpy_detect_out_scope_cb(), bpfinishpy_handle_stop(), break_command_1(), break_range_command(), catch_ada_exception_command(), catch_assert_command(), catch_exec_command_1(), catch_fork_command_1(), catch_syscall_command_1(), cmdpy_completer_handle_brkchars(), cmdpy_destroyer(), cmdpy_function(), compile_to_object(), core_info_proc(), create_signal_catchpoint(), create_syscall_event_catchpoint(), create_tracepoint_from_upload(), disassemble_command(), do_one_display(), do_set_command(), dprintf_command(), echo_command(), edit_command(), extract_display_start_addr(), find_command(), ftrace_command(), gdbpy_apply_type_printers(), gdbpy_before_prompt_hook(), gdbpy_breakpoint_cond_says_stop(), gdbpy_breakpoint_has_cond(), gdbpy_clone_xmethod_worker_data(), gdbpy_eval_from_control_command(), gdbpy_finish_initialization(), gdbpy_free_type_printers(), gdbpy_free_xmethod_worker_data(), gdbpy_get_matching_xmethod_workers(), gdbpy_get_xmethod_arg_types(), gdbpy_get_xmethod_result_type(), gdbpy_invoke_xmethod(), gdbpy_run_events(), gdbpy_source_script(), gdbpy_start_type_printers(), gdbscm_current_arch(), gdbscm_make_value(), gdbscm_register_breakpoint_x(), gdbscm_value_call(), get_set_value(), get_show_value(), handle_gnu_v3_exceptions(), i386_mpx_enabled(), i386_mpx_get_bt_entry(), i386_mpx_info_bounds(), i386_mpx_print_bounds(), i386_mpx_set_bounds(), inferior_call_waitpid(), info_checkpoints_command(), info_exceptions_command(), info_probes_for_ops(), info_proc_cmd_1(), jump_command(), line_info(), list_command(), maint_agent_printf_command(), maintenance_print_architecture(), maintenance_print_reggroups(), maintenance_print_user_registers(), merge_uploaded_tracepoints(), mi_cmd_break_insert_1(), mi_cmd_catch_assert(), mi_cmd_catch_exception(), mi_cmd_data_list_register_names(), mi_cmd_data_read_memory(), mi_cmd_data_read_memory_bytes(), mi_cmd_data_write_memory(), mi_cmd_data_write_memory_bytes(), mi_cmd_disassemble(), mi_cmd_info_ada_exceptions(), msp430_gdbarch_init(), overlay_load_command(), parse_cmd_to_aexpr(), parse_exp_in_context_1(), python_command(), python_interactive_command(), python_on_normal_stop(), record_full_restore(), remove_symbol_file_command(), set_charset_sfunc(), set_host_charset_sfunc(), set_target_charset_sfunc(), set_target_wide_charset_sfunc(), show_architecture(), show_convenience(), show_endian(), show_osabi(), show_target_charset_name(), show_target_wide_charset_name(), skip_function_command(), strace_command(), trace_command(), trace_find_line_command(), tui_get_begin_asm_address(), tui_reg_command(), tyscm_lookup_typename(), VEC(), vlscm_binop(), vlscm_rich_compare(), and vlscm_unop().

void initialize_current_architecture ( void  )
int legacy_register_sim_regno ( struct gdbarch gdbarch,
int  regnum 
)
void legacy_virtual_frame_pointer ( struct gdbarch gdbarch,
CORE_ADDR  pc,
int frame_regnum,
LONGEST frame_offset 
)
int no_op_reg_to_regnum ( struct gdbarch gdbarch,
int  reg 
)

Definition at line 165 of file arch-utils.c.

Referenced by gdbarch_alloc().

const char* selected_architecture_name ( void  )

Definition at line 448 of file arch-utils.c.

References set_architecture_string, and target_architecture_user.

Referenced by gdbsim_open().

enum bfd_endian selected_byte_order ( void  )

Definition at line 291 of file arch-utils.c.

References target_byte_order_user.

Referenced by gdbsim_open().

static void set_architecture ( char *  ignore_args,
int  from_tty,
struct cmd_list_element c 
)
static
static void set_endian ( char *  ignore_args,
int  from_tty,
struct cmd_list_element c 
)
static
void set_gdbarch_from_file ( bfd *  abfd)
static void show_architecture ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static
static void show_endian ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static
struct displaced_step_closure* simple_displaced_step_copy_insn ( struct gdbarch gdbarch,
CORE_ADDR  from,
CORE_ADDR  to,
struct regcache regs 
)
void simple_displaced_step_free_closure ( struct gdbarch gdbarch,
struct displaced_step_closure closure 
)

Variable Documentation

initialize_file_ftype _initialize_gdbarch_utils
const bfd_arch_info_type DEFAULT_BFD_ARCH
const bfd_arch_info_type* default_bfd_arch = &DEFAULT_BFD_ARCH
static

Definition at line 594 of file arch-utils.c.

Referenced by gdbarch_info_fill(), and initialize_current_architecture().

const bfd_target DEFAULT_BFD_VEC
const bfd_target* default_bfd_vec = &DEFAULT_BFD_VEC
static

Definition at line 601 of file arch-utils.c.

Referenced by initialize_current_architecture().

int default_byte_order = BFD_ENDIAN_UNKNOWN
static

Definition at line 606 of file arch-utils.c.

Referenced by gdbarch_info_fill(), and initialize_current_architecture().

const char endian_auto[] = "auto"
static

Definition at line 280 of file arch-utils.c.

Referenced by set_endian().

const char endian_big[] = "big"
static

Definition at line 278 of file arch-utils.c.

Referenced by set_endian().

const char* const endian_enum[]
static
Initial value:
=
{
NULL,
}
static const char endian_auto[]
Definition: arch-utils.c:280
static const char endian_little[]
Definition: arch-utils.c:279
static const char endian_big[]
Definition: arch-utils.c:278

Definition at line 281 of file arch-utils.c.

Referenced by _initialize_gdbarch_utils().

const char endian_little[] = "little"
static

Definition at line 279 of file arch-utils.c.

Referenced by set_endian().

const char* set_architecture_string
static
const char* set_endian_string
static

Definition at line 288 of file arch-utils.c.

Referenced by _initialize_gdbarch_utils(), and set_endian().

const struct bfd_arch_info* target_architecture_user
static
int target_byte_order_user = BFD_ENDIAN_UNKNOWN
static

Definition at line 276 of file arch-utils.c.

Referenced by gdbarch_info_fill(), selected_byte_order(), set_endian(), and show_endian().