GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Enumerations | Functions | Variables
arc-tdep.h File Reference
#include "dis-asm.h"
#include "gdbarch.h"
#include "arch/arc.h"

Go to the source code of this file.

Classes

struct  arc_gdbarch_tdep
 

Macros

#define ARC_REGISTER_SIZE   4
 
#define ARC_STATUS32_L_MASK   (1 << 12)
 
#define ARC_STATUS32_DE_MASK   (1 << 6)
 
#define ARC_OFFSET_NO_REGISTER   (-1)
 
#define arc_print(fmt, args...)   gdb_printf (gdb_stdlog, fmt, ##args)
 
#define arc_debug_printf(fmt, ...)    debug_prefixed_printf_cond (arc_debug, "arc", fmt, ##__VA_ARGS__)
 

Enumerations

enum  arc_regnum {
  ARC_R0_REGNUM = 0 , ARC_R1_REGNUM = 1 , ARC_R4_REGNUM = 4 , ARC_R7_REGNUM = 7 ,
  ARC_R9_REGNUM = 9 , ARC_R13_REGNUM = 13 , ARC_R16_REGNUM = 16 , ARC_R25_REGNUM = 25 ,
  ARC_GP_REGNUM , ARC_FP_REGNUM , ARC_SP_REGNUM , ARC_ILINK_REGNUM ,
  ARC_R30_REGNUM , ARC_BLINK_REGNUM , ARC_R58_REGNUM = 58 , ARC_R59_REGNUM ,
  ARC_LP_COUNT_REGNUM = 60 , ARC_RESERVED_REGNUM , ARC_LIMM_REGNUM , ARC_PCL_REGNUM ,
  ARC_LAST_CORE_REGNUM = ARC_PCL_REGNUM , ARC_PC_REGNUM , ARC_FIRST_AUX_REGNUM = ARC_PC_REGNUM , ARC_STATUS32_REGNUM ,
  ARC_LP_START_REGNUM , ARC_LP_END_REGNUM , ARC_BTA_REGNUM , ARC_ERET_REGNUM ,
  ARC_LAST_AUX_REGNUM = ARC_ERET_REGNUM , ARC_LAST_REGNUM = ARC_LAST_AUX_REGNUM , ARC_FIRST_ARG_REGNUM = ARC_R0_REGNUM , ARC_LAST_ARG_REGNUM = ARC_R7_REGNUM ,
  ARC_FIRST_CALLEE_SAVED_REGNUM = ARC_R13_REGNUM , ARC_LAST_CALLEE_SAVED_REGNUM = ARC_R25_REGNUM
}
 

Functions

static int arc_mach_is_arc600 (struct gdbarch *gdbarch)
 
static int arc_mach_is_arc700 (struct gdbarch *gdbarch)
 
static int arc_mach_is_arcv2 (struct gdbarch *gdbarch)
 
static bool arc_arch_is_hs (const struct bfd_arch_info *arch)
 
static bool arc_arch_is_em (const struct bfd_arch_info *arch)
 
int arc_delayed_print_insn (bfd_vma addr, struct disassemble_info *info)
 
CORE_ADDR arc_insn_get_branch_target (const struct arc_instruction &insn)
 
CORE_ADDR arc_insn_get_linear_next_pc (const struct arc_instruction &insn)
 
arc_arch_features arc_arch_features_create (const bfd *abfd, const unsigned long mach)
 

Variables

bool arc_debug
 

Macro Definition Documentation

◆ arc_debug_printf

#define arc_debug_printf ( fmt,
... )    debug_prefixed_printf_cond (arc_debug, "arc", fmt, ##__VA_ARGS__)

◆ ARC_OFFSET_NO_REGISTER

#define ARC_OFFSET_NO_REGISTER   (-1)

Definition at line 111 of file arc-tdep.h.

Referenced by arc_make_sigtramp_frame_cache(), collect_register(), and supply_register().

◆ arc_print

#define arc_print ( fmt,
args... )   gdb_printf (gdb_stdlog, fmt, ##args)

Definition at line 113 of file arc-tdep.h.

Referenced by arc_check_tdesc_feature(), arc_insn_dump(), and arc_tdesc_init().

◆ ARC_REGISTER_SIZE

#define ARC_REGISTER_SIZE   4

◆ ARC_STATUS32_DE_MASK

#define ARC_STATUS32_DE_MASK   (1 << 6)

Definition at line 108 of file arc-tdep.h.

Referenced by arc_linux_software_single_step(), and arc_write_pc().

◆ ARC_STATUS32_L_MASK

#define ARC_STATUS32_L_MASK   (1 << 12)

Definition at line 106 of file arc-tdep.h.

Referenced by arc_linux_software_single_step().

Enumeration Type Documentation

◆ arc_regnum

enum arc_regnum
Enumerator
ARC_R0_REGNUM 
ARC_R1_REGNUM 
ARC_R4_REGNUM 
ARC_R7_REGNUM 
ARC_R9_REGNUM 
ARC_R13_REGNUM 
ARC_R16_REGNUM 
ARC_R25_REGNUM 
ARC_GP_REGNUM 
ARC_FP_REGNUM 
ARC_SP_REGNUM 
ARC_ILINK_REGNUM 
ARC_R30_REGNUM 
ARC_BLINK_REGNUM 
ARC_R58_REGNUM 
ARC_R59_REGNUM 
ARC_LP_COUNT_REGNUM 
ARC_RESERVED_REGNUM 
ARC_LIMM_REGNUM 
ARC_PCL_REGNUM 
ARC_LAST_CORE_REGNUM 
ARC_PC_REGNUM 
ARC_FIRST_AUX_REGNUM 
ARC_STATUS32_REGNUM 
ARC_LP_START_REGNUM 
ARC_LP_END_REGNUM 
ARC_BTA_REGNUM 
ARC_ERET_REGNUM 
ARC_LAST_AUX_REGNUM 
ARC_LAST_REGNUM 
ARC_FIRST_ARG_REGNUM 
ARC_LAST_ARG_REGNUM 
ARC_FIRST_CALLEE_SAVED_REGNUM 
ARC_LAST_CALLEE_SAVED_REGNUM 

Definition at line 35 of file arc-tdep.h.

Function Documentation

◆ arc_arch_features_create()

arc_arch_features arc_arch_features_create ( const bfd * abfd,
const unsigned long mach )

Definition at line 1957 of file arc-tdep.c.

References mach_type_to_arc_isa().

Referenced by arc_linux_core_read_description(), and arc_tdesc_init().

◆ arc_arch_is_em()

static bool arc_arch_is_em ( const struct bfd_arch_info * arch)
inlinestatic

Definition at line 178 of file arc-tdep.h.

◆ arc_arch_is_hs()

static bool arc_arch_is_hs ( const struct bfd_arch_info * arch)
inlinestatic

Definition at line 172 of file arc-tdep.h.

Referenced by arc_gdbarch_init().

◆ arc_delayed_print_insn()

int arc_delayed_print_insn ( bfd_vma addr,
struct disassemble_info * info )

◆ arc_insn_get_branch_target()

CORE_ADDR arc_insn_get_branch_target ( const struct arc_instruction & insn)

◆ arc_insn_get_linear_next_pc()

CORE_ADDR arc_insn_get_linear_next_pc ( const struct arc_instruction & insn)

◆ arc_mach_is_arc600()

static int arc_mach_is_arc600 ( struct gdbarch * gdbarch)
inlinestatic

Definition at line 150 of file arc-tdep.h.

References gdbarch_bfd_arch_info().

Referenced by arc_breakpoint_kind_from_pc(), and arc_gdbarch_init().

◆ arc_mach_is_arc700()

static int arc_mach_is_arc700 ( struct gdbarch * gdbarch)
inlinestatic

Definition at line 157 of file arc-tdep.h.

References gdbarch_bfd_arch_info().

◆ arc_mach_is_arcv2()

static int arc_mach_is_arcv2 ( struct gdbarch * gdbarch)
inlinestatic

Variable Documentation

◆ arc_debug

bool arc_debug
extern