GDB (xrefs)
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
/tmp/gdb-8.1/gdb/target-descriptions.c File Reference
#include "defs.h"
#include "arch-utils.h"
#include "gdbcmd.h"
#include "gdbtypes.h"
#include "reggroups.h"
#include "target.h"
#include "target-descriptions.h"
#include "vec.h"
#include "xml-support.h"
#include "xml-tdesc.h"
#include "osabi.h"
#include "gdb_obstack.h"
#include "hashtab.h"
#include "inferior.h"
#include <algorithm>
#include "completer.h"
#include "readline/tilde.h"

Go to the source code of this file.

Classes

class  tdesc_element_visitor
 
class  tdesc_element
 
struct  property
 
struct  tdesc_reg
 
struct  tdesc_type_field
 
struct  tdesc_type
 
struct  tdesc_type_builtin
 
struct  tdesc_type_vector
 
struct  tdesc_type_with_fields
 
struct  tdesc_feature
 
struct  target_desc
 
struct  tdesc_arch_reg
 
struct  tdesc_arch_data
 
struct  target_desc_info
 
class  print_c_tdesc
 
class  print_c_feature
 

Namespaces

 selftests
 

Macros

#define target_desc_fetched   get_tdesc_info (current_inferior ())->fetched
 
#define current_target_desc   get_tdesc_info (current_inferior ())->tdesc
 
#define target_description_filename   get_tdesc_info (current_inferior ())->filename
 

Typedefs

typedef std::unique_ptr< tdesc_regtdesc_reg_up
 
typedef std::unique_ptr< tdesc_typetdesc_type_up
 
typedef std::unique_ptr< tdesc_featuretdesc_feature_up
 

Enumerations

enum  tdesc_type_kind {
  TDESC_TYPE_BOOL, TDESC_TYPE_INT8, TDESC_TYPE_INT16, TDESC_TYPE_INT32,
  TDESC_TYPE_INT64, TDESC_TYPE_INT128, TDESC_TYPE_UINT8, TDESC_TYPE_UINT16,
  TDESC_TYPE_UINT32, TDESC_TYPE_UINT64, TDESC_TYPE_UINT128, TDESC_TYPE_CODE_PTR,
  TDESC_TYPE_DATA_PTR, TDESC_TYPE_IEEE_SINGLE, TDESC_TYPE_IEEE_DOUBLE, TDESC_TYPE_ARM_FPA_EXT,
  TDESC_TYPE_I387_EXT, TDESC_TYPE_VECTOR, TDESC_TYPE_STRUCT, TDESC_TYPE_UNION,
  TDESC_TYPE_FLAGS, TDESC_TYPE_ENUM
}
 

Functions

static struct target_desc_infoget_tdesc_info (struct inferior *inf)
 
int target_desc_info_from_user_p (struct target_desc_info *info)
 
void copy_inferior_target_desc_info (struct inferior *destinf, struct inferior *srcinf)
 
void target_desc_info_free (struct target_desc_info *tdesc_info)
 
void target_find_description (void)
 
void target_clear_description (void)
 
const struct target_desctarget_current_description (void)
 
int tdesc_compatible_p (const struct target_desc *target_desc, const struct bfd_arch_info *arch)
 
const char * tdesc_property (const struct target_desc *target_desc, const char *key)
 
const struct bfd_arch_info * tdesc_architecture (const struct target_desc *target_desc)
 
enum gdb_osabi tdesc_osabi (const struct target_desc *target_desc)
 
int tdesc_has_registers (const struct target_desc *target_desc)
 
const struct tdesc_featuretdesc_find_feature (const struct target_desc *target_desc, const char *name)
 
const char * tdesc_feature_name (const struct tdesc_feature *feature)
 
static struct tdesc_typetdesc_predefined_type (enum tdesc_type_kind kind)
 
struct tdesc_typetdesc_named_type (const struct tdesc_feature *feature, const char *id)
 
struct typetdesc_find_type (struct gdbarch *gdbarch, const char *id)
 
static void * tdesc_data_init (struct obstack *obstack)
 
struct tdesc_arch_datatdesc_data_alloc (void)
 
void tdesc_data_cleanup (void *data_untyped)
 
static struct tdesc_regtdesc_find_register_early (const struct tdesc_feature *feature, const char *name)
 
int tdesc_numbered_register (const struct tdesc_feature *feature, struct tdesc_arch_data *data, int regno, const char *name)
 
int tdesc_unnumbered_register (const struct tdesc_feature *feature, const char *name)
 
int tdesc_numbered_register_choices (const struct tdesc_feature *feature, struct tdesc_arch_data *data, int regno, const char *const names[])
 
int tdesc_register_size (const struct tdesc_feature *feature, const char *name)
 
static struct tdesc_arch_regtdesc_find_arch_register (struct gdbarch *gdbarch, int regno)
 
static struct tdesc_regtdesc_find_register (struct gdbarch *gdbarch, int regno)
 
const char * tdesc_register_name (struct gdbarch *gdbarch, int regno)
 
struct typetdesc_register_type (struct gdbarch *gdbarch, int regno)
 
static int tdesc_remote_register_number (struct gdbarch *gdbarch, int regno)
 
int tdesc_register_in_reggroup_p (struct gdbarch *gdbarch, int regno, struct reggroup *reggroup)
 
static int tdesc_register_reggroup_p (struct gdbarch *gdbarch, int regno, struct reggroup *reggroup)
 
void set_tdesc_pseudo_register_name (struct gdbarch *gdbarch, gdbarch_register_name_ftype *pseudo_name)
 
void set_tdesc_pseudo_register_type (struct gdbarch *gdbarch, gdbarch_register_type_ftype *pseudo_type)
 
void set_tdesc_pseudo_register_reggroup_p (struct gdbarch *gdbarch, gdbarch_register_reggroup_p_ftype *pseudo_reggroup_p)
 
void tdesc_use_registers (struct gdbarch *gdbarch, const struct target_desc *target_desc, struct tdesc_arch_data *early_data)
 
void tdesc_create_reg (struct tdesc_feature *feature, const char *name, int regnum, int save_restore, const char *group, int bitsize, const char *type)
 
struct tdesc_typetdesc_create_vector (struct tdesc_feature *feature, const char *name, struct tdesc_type *field_type, int count)
 
tdesc_type_with_fieldstdesc_create_struct (struct tdesc_feature *feature, const char *name)
 
void tdesc_set_struct_size (tdesc_type_with_fields *type, int size)
 
tdesc_type_with_fieldstdesc_create_union (struct tdesc_feature *feature, const char *name)
 
tdesc_type_with_fieldstdesc_create_flags (struct tdesc_feature *feature, const char *name, int size)
 
tdesc_type_with_fieldstdesc_create_enum (struct tdesc_feature *feature, const char *name, int size)
 
void tdesc_add_field (tdesc_type_with_fields *type, const char *field_name, struct tdesc_type *field_type)
 
void tdesc_add_typed_bitfield (tdesc_type_with_fields *type, const char *field_name, int start, int end, struct tdesc_type *field_type)
 
void tdesc_add_bitfield (tdesc_type_with_fields *type, const char *field_name, int start, int end)
 
void tdesc_add_flag (tdesc_type_with_fields *type, int start, const char *flag_name)
 
void tdesc_add_enum_value (tdesc_type_with_fields *type, int value, const char *name)
 
struct tdesc_featuretdesc_create_feature (struct target_desc *tdesc, const char *name, const char *xml)
 
struct target_descallocate_target_description (void)
 
static void free_target_description (void *arg)
 
struct cleanupmake_cleanup_free_target_description (struct target_desc *target_desc)
 
void tdesc_add_compatible (struct target_desc *target_desc, const struct bfd_arch_info *compatible)
 
void set_tdesc_property (struct target_desc *target_desc, const char *key, const char *value)
 
void set_tdesc_architecture (struct target_desc *target_desc, const char *name)
 
void set_tdesc_architecture (struct target_desc *target_desc, const struct bfd_arch_info *arch)
 
void set_tdesc_osabi (struct target_desc *target_desc, const char *name)
 
void set_tdesc_osabi (struct target_desc *target_desc, enum gdb_osabi osabi)
 
static void set_tdesc_cmd (const char *args, int from_tty)
 
static void show_tdesc_cmd (const char *args, int from_tty)
 
static void unset_tdesc_cmd (const char *args, int from_tty)
 
static void set_tdesc_filename_cmd (const char *args, int from_tty, struct cmd_list_element *c)
 
static void show_tdesc_filename_cmd (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static void unset_tdesc_filename_cmd (const char *args, int from_tty)
 
static void maint_print_c_tdesc_cmd (const char *args, int from_tty)
 
static void maintenance_check_xml_descriptions (const char *dir, int from_tty)
 
void _initialize_target_descriptions (void)
 

Variables

static struct gdbarch_datatdesc_data
 
static char * tdesc_filename_cmd_string
 
static tdesc_type_builtin tdesc_predefined_types []
 
static struct cmd_list_elementtdesc_set_cmdlist
 
static struct cmd_list_elementtdesc_show_cmdlist
 
static struct cmd_list_elementtdesc_unset_cmdlist
 
static std::vector< std::pair< const char *, const target_desc * > > selftests::xml_tdesc
 

Macro Definition Documentation

◆ current_target_desc

#define current_target_desc   get_tdesc_info (current_inferior ())->tdesc

◆ target_desc_fetched

#define target_desc_fetched   get_tdesc_info (current_inferior ())->fetched

◆ target_description_filename

#define target_description_filename   get_tdesc_info (current_inferior ())->filename

Typedef Documentation

◆ tdesc_feature_up

typedef std::unique_ptr<tdesc_feature> tdesc_feature_up

Definition at line 587 of file target-descriptions.c.

◆ tdesc_reg_up

typedef std::unique_ptr<tdesc_reg> tdesc_reg_up

Definition at line 153 of file target-descriptions.c.

◆ tdesc_type_up

typedef std::unique_ptr<tdesc_type> tdesc_type_up

Definition at line 233 of file target-descriptions.c.

Enumeration Type Documentation

◆ tdesc_type_kind

Enumerator
TDESC_TYPE_BOOL 
TDESC_TYPE_INT8 
TDESC_TYPE_INT16 
TDESC_TYPE_INT32 
TDESC_TYPE_INT64 
TDESC_TYPE_INT128 
TDESC_TYPE_UINT8 
TDESC_TYPE_UINT16 
TDESC_TYPE_UINT32 
TDESC_TYPE_UINT64 
TDESC_TYPE_UINT128 
TDESC_TYPE_CODE_PTR 
TDESC_TYPE_DATA_PTR 
TDESC_TYPE_IEEE_SINGLE 
TDESC_TYPE_IEEE_DOUBLE 
TDESC_TYPE_ARM_FPA_EXT 
TDESC_TYPE_I387_EXT 
TDESC_TYPE_VECTOR 
TDESC_TYPE_STRUCT 
TDESC_TYPE_UNION 
TDESC_TYPE_FLAGS 
TDESC_TYPE_ENUM 

Definition at line 172 of file target-descriptions.c.

Function Documentation

◆ _initialize_target_descriptions()

void _initialize_target_descriptions ( void  )

◆ allocate_target_description()

struct target_desc* allocate_target_description ( void  )

Definition at line 1613 of file target-descriptions.c.

References target_desc::target_desc().

Referenced by _initialize_mips_tdep(), aarch64_create_target_description(), amd64_create_target_description(), i386_create_target_description(), initialize_tdesc_arc_arcompact(), initialize_tdesc_arc_v2(), initialize_tdesc_arm_with_iwmmxt(), initialize_tdesc_arm_with_m(), initialize_tdesc_arm_with_m_fpa_layout(), initialize_tdesc_arm_with_m_vfp_d16(), initialize_tdesc_arm_with_neon(), initialize_tdesc_arm_with_vfpv2(), initialize_tdesc_arm_with_vfpv3(), initialize_tdesc_microblaze(), initialize_tdesc_microblaze_with_stack_protect(), initialize_tdesc_mips64_dsp_linux(), initialize_tdesc_mips64_linux(), initialize_tdesc_mips_dsp_linux(), initialize_tdesc_mips_linux(), initialize_tdesc_nds32(), initialize_tdesc_nios2(), initialize_tdesc_or1k(), initialize_tdesc_powerpc_32(), initialize_tdesc_powerpc_32l(), initialize_tdesc_powerpc_403(), initialize_tdesc_powerpc_403gc(), initialize_tdesc_powerpc_405(), initialize_tdesc_powerpc_505(), initialize_tdesc_powerpc_601(), initialize_tdesc_powerpc_602(), initialize_tdesc_powerpc_603(), initialize_tdesc_powerpc_604(), initialize_tdesc_powerpc_64(), initialize_tdesc_powerpc_64l(), initialize_tdesc_powerpc_7400(), initialize_tdesc_powerpc_750(), initialize_tdesc_powerpc_860(), initialize_tdesc_powerpc_altivec32(), initialize_tdesc_powerpc_altivec32l(), initialize_tdesc_powerpc_altivec64(), initialize_tdesc_powerpc_altivec64l(), initialize_tdesc_powerpc_cell32l(), initialize_tdesc_powerpc_cell64l(), initialize_tdesc_powerpc_e500(), initialize_tdesc_powerpc_e500l(), initialize_tdesc_powerpc_isa205_32l(), initialize_tdesc_powerpc_isa205_64l(), initialize_tdesc_powerpc_isa205_altivec32l(), initialize_tdesc_powerpc_isa205_altivec64l(), initialize_tdesc_powerpc_isa205_vsx32l(), initialize_tdesc_powerpc_isa205_vsx64l(), initialize_tdesc_powerpc_vsx32(), initialize_tdesc_powerpc_vsx32l(), initialize_tdesc_powerpc_vsx64(), initialize_tdesc_powerpc_vsx64l(), initialize_tdesc_rs6000(), initialize_tdesc_s390_gs_linux64(), initialize_tdesc_s390_linux32(), initialize_tdesc_s390_linux32v1(), initialize_tdesc_s390_linux32v2(), initialize_tdesc_s390_linux64(), initialize_tdesc_s390_linux64v1(), initialize_tdesc_s390_linux64v2(), initialize_tdesc_s390_te_linux64(), initialize_tdesc_s390_tevx_linux64(), initialize_tdesc_s390_vx_linux64(), initialize_tdesc_s390x_gs_linux64(), initialize_tdesc_s390x_linux64(), initialize_tdesc_s390x_linux64v1(), initialize_tdesc_s390x_linux64v2(), initialize_tdesc_s390x_te_linux64(), initialize_tdesc_s390x_tevx_linux64(), initialize_tdesc_s390x_vx_linux64(), initialize_tdesc_sparc32_solaris(), initialize_tdesc_sparc64_solaris(), tdesc_parse_xml(), and tic6x_create_target_description().

◆ copy_inferior_target_desc_info()

void copy_inferior_target_desc_info ( struct inferior destinf,
struct inferior srcinf 
)

◆ free_target_description()

static void free_target_description ( void *  arg)
static

Definition at line 1619 of file target-descriptions.c.

References target_desc::target_desc().

Referenced by make_cleanup_free_target_description().

◆ get_tdesc_info()

static struct target_desc_info* get_tdesc_info ( struct inferior inf)
static

Definition at line 715 of file target-descriptions.c.

References XCNEW.

Referenced by copy_inferior_target_desc_info().

◆ maint_print_c_tdesc_cmd()

static void maint_print_c_tdesc_cmd ( const char *  args,
int  from_tty 
)
static

◆ maintenance_check_xml_descriptions()

static void maintenance_check_xml_descriptions ( const char *  dir,
int  from_tty 
)
static

◆ make_cleanup_free_target_description()

struct cleanup* make_cleanup_free_target_description ( struct target_desc target_desc)

Definition at line 1627 of file target-descriptions.c.

References free_target_description(), and make_cleanup().

Referenced by tdesc_parse_xml().

◆ set_tdesc_architecture() [1/2]

void set_tdesc_architecture ( struct target_desc target_desc,
const char *  name 
)

Definition at line 1668 of file target-descriptions.c.

References name.

Referenced by aarch64_create_target_description(), amd64_create_target_description(), i386_create_target_description(), initialize_tdesc_arc_arcompact(), initialize_tdesc_arc_v2(), initialize_tdesc_arm_with_iwmmxt(), initialize_tdesc_arm_with_m(), initialize_tdesc_arm_with_m_fpa_layout(), initialize_tdesc_arm_with_m_vfp_d16(), initialize_tdesc_arm_with_neon(), initialize_tdesc_arm_with_vfpv2(), initialize_tdesc_arm_with_vfpv3(), initialize_tdesc_mips64_dsp_linux(), initialize_tdesc_mips64_linux(), initialize_tdesc_mips_dsp_linux(), initialize_tdesc_mips_linux(), initialize_tdesc_nds32(), initialize_tdesc_nios2(), initialize_tdesc_or1k(), initialize_tdesc_powerpc_32(), initialize_tdesc_powerpc_32l(), initialize_tdesc_powerpc_64(), initialize_tdesc_powerpc_64l(), initialize_tdesc_powerpc_altivec32(), initialize_tdesc_powerpc_altivec32l(), initialize_tdesc_powerpc_altivec64(), initialize_tdesc_powerpc_altivec64l(), initialize_tdesc_powerpc_cell32l(), initialize_tdesc_powerpc_cell64l(), initialize_tdesc_powerpc_e500(), initialize_tdesc_powerpc_e500l(), initialize_tdesc_powerpc_isa205_32l(), initialize_tdesc_powerpc_isa205_64l(), initialize_tdesc_powerpc_isa205_altivec32l(), initialize_tdesc_powerpc_isa205_altivec64l(), initialize_tdesc_powerpc_isa205_vsx32l(), initialize_tdesc_powerpc_isa205_vsx64l(), initialize_tdesc_powerpc_vsx32(), initialize_tdesc_powerpc_vsx32l(), initialize_tdesc_powerpc_vsx64(), initialize_tdesc_powerpc_vsx64l(), initialize_tdesc_rs6000(), initialize_tdesc_s390_gs_linux64(), initialize_tdesc_s390_linux32(), initialize_tdesc_s390_linux32v1(), initialize_tdesc_s390_linux32v2(), initialize_tdesc_s390_linux64(), initialize_tdesc_s390_linux64v1(), initialize_tdesc_s390_linux64v2(), initialize_tdesc_s390_te_linux64(), initialize_tdesc_s390_tevx_linux64(), initialize_tdesc_s390_vx_linux64(), initialize_tdesc_s390x_gs_linux64(), initialize_tdesc_s390x_linux64(), initialize_tdesc_s390x_linux64v1(), initialize_tdesc_s390x_linux64v2(), initialize_tdesc_s390x_te_linux64(), initialize_tdesc_s390x_tevx_linux64(), initialize_tdesc_s390x_vx_linux64(), initialize_tdesc_sparc32_solaris(), initialize_tdesc_sparc64_solaris(), tdesc_end_arch(), and tic6x_create_target_description().

◆ set_tdesc_architecture() [2/2]

void set_tdesc_architecture ( struct target_desc target_desc,
const struct bfd_arch_info *  arch 
)

Definition at line 1675 of file target-descriptions.c.

References target_desc::arch.

◆ set_tdesc_cmd()

static void set_tdesc_cmd ( const char *  args,
int  from_tty 
)
static

◆ set_tdesc_filename_cmd()

static void set_tdesc_filename_cmd ( const char *  args,
int  from_tty,
struct cmd_list_element c 
)
static

◆ set_tdesc_osabi() [1/2]

void set_tdesc_osabi ( struct target_desc target_desc,
const char *  name 
)

◆ set_tdesc_osabi() [2/2]

void set_tdesc_osabi ( struct target_desc target_desc,
enum gdb_osabi  osabi 
)

Definition at line 1690 of file target-descriptions.c.

References target_desc::osabi.

◆ set_tdesc_property()

void set_tdesc_property ( struct target_desc target_desc,
const char *  key,
const char *  value 
)

◆ set_tdesc_pseudo_register_name()

void set_tdesc_pseudo_register_name ( struct gdbarch gdbarch,
gdbarch_register_name_ftype pseudo_name 
)

◆ set_tdesc_pseudo_register_reggroup_p()

void set_tdesc_pseudo_register_reggroup_p ( struct gdbarch gdbarch,
gdbarch_register_reggroup_p_ftype pseudo_reggroup_p 
)

◆ set_tdesc_pseudo_register_type()

void set_tdesc_pseudo_register_type ( struct gdbarch gdbarch,
gdbarch_register_type_ftype pseudo_type 
)

◆ show_tdesc_cmd()

static void show_tdesc_cmd ( const char *  args,
int  from_tty 
)
static

Definition at line 1708 of file target-descriptions.c.

References cmd_show_list(), and tdesc_show_cmdlist.

Referenced by _initialize_target_descriptions().

◆ show_tdesc_filename_cmd()

static void show_tdesc_filename_cmd ( struct ui_file file,
int  from_tty,
struct cmd_list_element c,
const char *  value 
)
static

◆ target_clear_description()

void target_clear_description ( void  )

◆ target_current_description()

const struct target_desc* target_current_description ( void  )

Definition at line 861 of file target-descriptions.c.

References current_target_desc, and target_desc_fetched.

Referenced by gdbarch_update_p(), and set_gdbarch_from_file().

◆ target_desc_info_free()

void target_desc_info_free ( struct target_desc_info tdesc_info)

Definition at line 751 of file target-descriptions.c.

References target_desc_info::filename, and xfree().

Referenced by inferior::~inferior().

◆ target_desc_info_from_user_p()

int target_desc_info_from_user_p ( struct target_desc_info info)

Definition at line 730 of file target-descriptions.c.

References target_desc_info::filename.

Referenced by clone_inferior_command().

◆ target_find_description()

void target_find_description ( void  )

◆ tdesc_add_bitfield()

void tdesc_add_bitfield ( tdesc_type_with_fields type,
const char *  field_name,
int  start,
int  end 
)

◆ tdesc_add_compatible()

void tdesc_add_compatible ( struct target_desc target_desc,
const struct bfd_arch_info *  compatible 
)

◆ tdesc_add_enum_value()

void tdesc_add_enum_value ( tdesc_type_with_fields type,
int  value,
const char *  name 
)

◆ tdesc_add_field()

void tdesc_add_field ( tdesc_type_with_fields type,
const char *  field_name,
struct tdesc_type field_type 
)

◆ tdesc_add_flag()

void tdesc_add_flag ( tdesc_type_with_fields type,
int  start,
const char *  flag_name 
)

◆ tdesc_add_typed_bitfield()

void tdesc_add_typed_bitfield ( tdesc_type_with_fields type,
const char *  field_name,
int  start,
int  end,
struct tdesc_type field_type 
)

◆ tdesc_architecture()

const struct bfd_arch_info* tdesc_architecture ( const struct target_desc target_desc)

◆ tdesc_compatible_p()

int tdesc_compatible_p ( const struct target_desc target_desc,
const struct bfd_arch_info *  arch 
)

◆ tdesc_create_enum()

tdesc_type_with_fields* tdesc_create_enum ( struct tdesc_feature feature,
const char *  name,
int  size 
)

Definition at line 1520 of file target-descriptions.c.

References gdb_assert, name, size, TDESC_TYPE_ENUM, type, and tdesc_feature::types.

Referenced by tdesc_start_enum().

◆ tdesc_create_feature()

struct tdesc_feature* tdesc_create_feature ( struct target_desc tdesc,
const char *  name,
const char *  xml 
)

Definition at line 1602 of file target-descriptions.c.

References target_desc::features, name, and tdesc_feature::tdesc_feature().

Referenced by create_feature_aarch64_core(), create_feature_aarch64_fpu(), create_feature_i386_32bit_avx(), create_feature_i386_32bit_avx512(), create_feature_i386_32bit_core(), create_feature_i386_32bit_linux(), create_feature_i386_32bit_mpx(), create_feature_i386_32bit_pkeys(), create_feature_i386_32bit_sse(), create_feature_i386_64bit_avx(), create_feature_i386_64bit_avx512(), create_feature_i386_64bit_core(), create_feature_i386_64bit_linux(), create_feature_i386_64bit_mpx(), create_feature_i386_64bit_pkeys(), create_feature_i386_64bit_segments(), create_feature_i386_64bit_sse(), create_feature_i386_x32_core(), create_feature_tic6x_c6xp(), create_feature_tic6x_core(), create_feature_tic6x_gp(), initialize_tdesc_arc_arcompact(), initialize_tdesc_arc_v2(), initialize_tdesc_arm_with_iwmmxt(), initialize_tdesc_arm_with_m(), initialize_tdesc_arm_with_m_fpa_layout(), initialize_tdesc_arm_with_m_vfp_d16(), initialize_tdesc_arm_with_neon(), initialize_tdesc_arm_with_vfpv2(), initialize_tdesc_arm_with_vfpv3(), initialize_tdesc_microblaze(), initialize_tdesc_microblaze_with_stack_protect(), initialize_tdesc_mips64_dsp_linux(), initialize_tdesc_mips64_linux(), initialize_tdesc_mips_dsp_linux(), initialize_tdesc_mips_linux(), initialize_tdesc_nds32(), initialize_tdesc_nios2(), initialize_tdesc_or1k(), initialize_tdesc_powerpc_32(), initialize_tdesc_powerpc_32l(), initialize_tdesc_powerpc_403(), initialize_tdesc_powerpc_403gc(), initialize_tdesc_powerpc_405(), initialize_tdesc_powerpc_505(), initialize_tdesc_powerpc_601(), initialize_tdesc_powerpc_602(), initialize_tdesc_powerpc_603(), initialize_tdesc_powerpc_604(), initialize_tdesc_powerpc_64(), initialize_tdesc_powerpc_64l(), initialize_tdesc_powerpc_7400(), initialize_tdesc_powerpc_750(), initialize_tdesc_powerpc_860(), initialize_tdesc_powerpc_altivec32(), initialize_tdesc_powerpc_altivec32l(), initialize_tdesc_powerpc_altivec64(), initialize_tdesc_powerpc_altivec64l(), initialize_tdesc_powerpc_cell32l(), initialize_tdesc_powerpc_cell64l(), initialize_tdesc_powerpc_e500(), initialize_tdesc_powerpc_e500l(), initialize_tdesc_powerpc_isa205_32l(), initialize_tdesc_powerpc_isa205_64l(), initialize_tdesc_powerpc_isa205_altivec32l(), initialize_tdesc_powerpc_isa205_altivec64l(), initialize_tdesc_powerpc_isa205_vsx32l(), initialize_tdesc_powerpc_isa205_vsx64l(), initialize_tdesc_powerpc_vsx32(), initialize_tdesc_powerpc_vsx32l(), initialize_tdesc_powerpc_vsx64(), initialize_tdesc_powerpc_vsx64l(), initialize_tdesc_rs6000(), initialize_tdesc_s390_gs_linux64(), initialize_tdesc_s390_linux32(), initialize_tdesc_s390_linux32v1(), initialize_tdesc_s390_linux32v2(), initialize_tdesc_s390_linux64(), initialize_tdesc_s390_linux64v1(), initialize_tdesc_s390_linux64v2(), initialize_tdesc_s390_te_linux64(), initialize_tdesc_s390_tevx_linux64(), initialize_tdesc_s390_vx_linux64(), initialize_tdesc_s390x_gs_linux64(), initialize_tdesc_s390x_linux64(), initialize_tdesc_s390x_linux64v1(), initialize_tdesc_s390x_linux64v2(), initialize_tdesc_s390x_te_linux64(), initialize_tdesc_s390x_tevx_linux64(), initialize_tdesc_s390x_vx_linux64(), initialize_tdesc_sparc32_solaris(), initialize_tdesc_sparc64_solaris(), and tdesc_start_feature().

◆ tdesc_create_flags()

tdesc_type_with_fields* tdesc_create_flags ( struct tdesc_feature feature,
const char *  name,
int  size 
)

◆ tdesc_create_reg()

void tdesc_create_reg ( struct tdesc_feature feature,
const char *  name,
int  regnum,
int  save_restore,
const char *  group,
int  bitsize,
const char *  type 
)

Definition at line 1448 of file target-descriptions.c.

References name, tdesc_feature::registers, and regnum.

Referenced by create_feature_aarch64_core(), create_feature_aarch64_fpu(), create_feature_i386_32bit_avx(), create_feature_i386_32bit_avx512(), create_feature_i386_32bit_core(), create_feature_i386_32bit_linux(), create_feature_i386_32bit_mpx(), create_feature_i386_32bit_pkeys(), create_feature_i386_32bit_sse(), create_feature_i386_64bit_avx(), create_feature_i386_64bit_avx512(), create_feature_i386_64bit_core(), create_feature_i386_64bit_linux(), create_feature_i386_64bit_mpx(), create_feature_i386_64bit_pkeys(), create_feature_i386_64bit_segments(), create_feature_i386_64bit_sse(), create_feature_i386_x32_core(), create_feature_tic6x_c6xp(), create_feature_tic6x_core(), create_feature_tic6x_gp(), initialize_tdesc_arc_arcompact(), initialize_tdesc_arc_v2(), initialize_tdesc_arm_with_iwmmxt(), initialize_tdesc_arm_with_m(), initialize_tdesc_arm_with_m_fpa_layout(), initialize_tdesc_arm_with_m_vfp_d16(), initialize_tdesc_arm_with_neon(), initialize_tdesc_arm_with_vfpv2(), initialize_tdesc_arm_with_vfpv3(), initialize_tdesc_microblaze(), initialize_tdesc_microblaze_with_stack_protect(), initialize_tdesc_mips64_dsp_linux(), initialize_tdesc_mips64_linux(), initialize_tdesc_mips_dsp_linux(), initialize_tdesc_mips_linux(), initialize_tdesc_nds32(), initialize_tdesc_nios2(), initialize_tdesc_or1k(), initialize_tdesc_powerpc_32(), initialize_tdesc_powerpc_32l(), initialize_tdesc_powerpc_403(), initialize_tdesc_powerpc_403gc(), initialize_tdesc_powerpc_405(), initialize_tdesc_powerpc_505(), initialize_tdesc_powerpc_601(), initialize_tdesc_powerpc_602(), initialize_tdesc_powerpc_603(), initialize_tdesc_powerpc_604(), initialize_tdesc_powerpc_64(), initialize_tdesc_powerpc_64l(), initialize_tdesc_powerpc_7400(), initialize_tdesc_powerpc_750(), initialize_tdesc_powerpc_860(), initialize_tdesc_powerpc_altivec32(), initialize_tdesc_powerpc_altivec32l(), initialize_tdesc_powerpc_altivec64(), initialize_tdesc_powerpc_altivec64l(), initialize_tdesc_powerpc_cell32l(), initialize_tdesc_powerpc_cell64l(), initialize_tdesc_powerpc_e500(), initialize_tdesc_powerpc_e500l(), initialize_tdesc_powerpc_isa205_32l(), initialize_tdesc_powerpc_isa205_64l(), initialize_tdesc_powerpc_isa205_altivec32l(), initialize_tdesc_powerpc_isa205_altivec64l(), initialize_tdesc_powerpc_isa205_vsx32l(), initialize_tdesc_powerpc_isa205_vsx64l(), initialize_tdesc_powerpc_vsx32(), initialize_tdesc_powerpc_vsx32l(), initialize_tdesc_powerpc_vsx64(), initialize_tdesc_powerpc_vsx64l(), initialize_tdesc_rs6000(), initialize_tdesc_s390_gs_linux64(), initialize_tdesc_s390_linux32(), initialize_tdesc_s390_linux32v1(), initialize_tdesc_s390_linux32v2(), initialize_tdesc_s390_linux64(), initialize_tdesc_s390_linux64v1(), initialize_tdesc_s390_linux64v2(), initialize_tdesc_s390_te_linux64(), initialize_tdesc_s390_tevx_linux64(), initialize_tdesc_s390_vx_linux64(), initialize_tdesc_s390x_gs_linux64(), initialize_tdesc_s390x_linux64(), initialize_tdesc_s390x_linux64v1(), initialize_tdesc_s390x_linux64v2(), initialize_tdesc_s390x_te_linux64(), initialize_tdesc_s390x_tevx_linux64(), initialize_tdesc_s390x_vx_linux64(), initialize_tdesc_sparc32_solaris(), initialize_tdesc_sparc64_solaris(), and tdesc_start_reg().

◆ tdesc_create_struct()

tdesc_type_with_fields* tdesc_create_struct ( struct tdesc_feature feature,
const char *  name 
)

◆ tdesc_create_union()

tdesc_type_with_fields* tdesc_create_union ( struct tdesc_feature feature,
const char *  name 
)

◆ tdesc_create_vector()

struct tdesc_type* tdesc_create_vector ( struct tdesc_feature feature,
const char *  name,
struct tdesc_type field_type,
int  count 
)

◆ tdesc_data_alloc()

struct tdesc_arch_data* tdesc_data_alloc ( void  )

◆ tdesc_data_cleanup()

void tdesc_data_cleanup ( void *  data_untyped)

◆ tdesc_data_init()

static void* tdesc_data_init ( struct obstack *  obstack)
static

Definition at line 1037 of file target-descriptions.c.

References OBSTACK_ZALLOC.

Referenced by _initialize_target_descriptions().

◆ tdesc_feature_name()

const char* tdesc_feature_name ( const struct tdesc_feature feature)

Definition at line 955 of file target-descriptions.c.

References tdesc_feature::name.

Referenced by arc_tdesc_init().

◆ tdesc_find_arch_register()

static struct tdesc_arch_reg* tdesc_find_arch_register ( struct gdbarch gdbarch,
int  regno 
)
static

Definition at line 1150 of file target-descriptions.c.

References tdesc_arch_data::arch_regs, and tdesc_data.

Referenced by tdesc_find_register(), and tdesc_register_type().

◆ tdesc_find_feature()

const struct tdesc_feature* tdesc_find_feature ( const struct target_desc target_desc,
const char *  name 
)

◆ tdesc_find_register()

static struct tdesc_reg* tdesc_find_register ( struct gdbarch gdbarch,
int  regno 
)
static

◆ tdesc_find_register_early()

static struct tdesc_reg* tdesc_find_register_early ( const struct tdesc_feature feature,
const char *  name 
)
static

◆ tdesc_find_type()

struct type* tdesc_find_type ( struct gdbarch gdbarch,
const char *  id 
)

◆ tdesc_has_registers()

int tdesc_has_registers ( const struct target_desc target_desc)

◆ tdesc_named_type()

struct tdesc_type* tdesc_named_type ( const struct tdesc_feature feature,
const char *  id 
)

◆ tdesc_numbered_register()

int tdesc_numbered_register ( const struct tdesc_feature feature,
struct tdesc_arch_data data,
int  regno,
const char *  name 
)

◆ tdesc_numbered_register_choices()

int tdesc_numbered_register_choices ( const struct tdesc_feature feature,
struct tdesc_arch_data data,
int  regno,
const char *const  names[] 
)

Definition at line 1121 of file target-descriptions.c.

References tdesc_numbered_register().

Referenced by arm_gdbarch_init(), and rs6000_gdbarch_init().

◆ tdesc_osabi()

enum gdb_osabi tdesc_osabi ( const struct target_desc target_desc)

Definition at line 916 of file target-descriptions.c.

References target_desc::osabi.

Referenced by gdbarch_info_fill(), and print_c_tdesc::visit_pre().

◆ tdesc_predefined_type()

static struct tdesc_type* tdesc_predefined_type ( enum tdesc_type_kind  kind)
static

◆ tdesc_property()

const char* tdesc_property ( const struct target_desc target_desc,
const char *  key 
)

◆ tdesc_register_in_reggroup_p()

int tdesc_register_in_reggroup_p ( struct gdbarch gdbarch,
int  regno,
struct reggroup reggroup 
)

◆ tdesc_register_name()

const char* tdesc_register_name ( struct gdbarch gdbarch,
int  regno 
)

◆ tdesc_register_reggroup_p()

static int tdesc_register_reggroup_p ( struct gdbarch gdbarch,
int  regno,
struct reggroup reggroup 
)
static

◆ tdesc_register_size()

int tdesc_register_size ( const struct tdesc_feature feature,
const char *  name 
)

Definition at line 1138 of file target-descriptions.c.

References gdb_assert, name, and tdesc_find_register_early().

Referenced by rs6000_gdbarch_init().

◆ tdesc_register_type()

struct type* tdesc_register_type ( struct gdbarch gdbarch,
int  regno 
)

◆ tdesc_remote_register_number()

static int tdesc_remote_register_number ( struct gdbarch gdbarch,
int  regno 
)
static

Definition at line 1270 of file target-descriptions.c.

References tdesc_find_register().

Referenced by tdesc_use_registers().

◆ tdesc_set_struct_size()

void tdesc_set_struct_size ( tdesc_type_with_fields type,
int  size 
)

◆ tdesc_unnumbered_register()

int tdesc_unnumbered_register ( const struct tdesc_feature feature,
const char *  name 
)

◆ tdesc_use_registers()

void tdesc_use_registers ( struct gdbarch gdbarch,
const struct target_desc target_desc,
struct tdesc_arch_data early_data 
)

◆ unset_tdesc_cmd()

static void unset_tdesc_cmd ( const char *  args,
int  from_tty 
)
static

◆ unset_tdesc_filename_cmd()

static void unset_tdesc_filename_cmd ( const char *  args,
int  from_tty 
)
static

Variable Documentation

◆ tdesc_data

struct gdbarch_data* tdesc_data
static

◆ tdesc_filename_cmd_string

char* tdesc_filename_cmd_string
static

◆ tdesc_predefined_types

tdesc_type_builtin tdesc_predefined_types[]
static
Initial value:
=
{
{ "bool", TDESC_TYPE_BOOL },
{ "int8", TDESC_TYPE_INT8 },
{ "int16", TDESC_TYPE_INT16 },
{ "int32", TDESC_TYPE_INT32 },
{ "int64", TDESC_TYPE_INT64 },
{ "int128", TDESC_TYPE_INT128 },
{ "uint8", TDESC_TYPE_UINT8 },
{ "uint16", TDESC_TYPE_UINT16 },
{ "uint32", TDESC_TYPE_UINT32 },
{ "uint64", TDESC_TYPE_UINT64 },
{ "uint128", TDESC_TYPE_UINT128 },
{ "code_ptr", TDESC_TYPE_CODE_PTR },
{ "data_ptr", TDESC_TYPE_DATA_PTR },
{ "ieee_single", TDESC_TYPE_IEEE_SINGLE },
{ "ieee_double", TDESC_TYPE_IEEE_DOUBLE },
{ "arm_fpa_ext", TDESC_TYPE_ARM_FPA_EXT },
{ "i387_ext", TDESC_TYPE_I387_EXT }
}

Definition at line 961 of file target-descriptions.c.

Referenced by tdesc_named_type(), and tdesc_predefined_type().

◆ tdesc_set_cmdlist

struct cmd_list_element* tdesc_set_cmdlist
static

Definition at line 1696 of file target-descriptions.c.

Referenced by _initialize_target_descriptions(), and set_tdesc_cmd().

◆ tdesc_show_cmdlist

struct cmd_list_element * tdesc_show_cmdlist
static

Definition at line 1696 of file target-descriptions.c.

Referenced by _initialize_target_descriptions(), and show_tdesc_cmd().

◆ tdesc_unset_cmdlist

struct cmd_list_element* tdesc_unset_cmdlist
static

Definition at line 1697 of file target-descriptions.c.

Referenced by _initialize_target_descriptions(), and unset_tdesc_cmd().