GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Enumerations | Functions | Variables
rl78-tdep.c File Reference
#include "defs.h"
#include "arch-utils.h"
#include "prologue-value.h"
#include "target.h"
#include "regcache.h"
#include "opcode/rl78.h"
#include "dis-asm.h"
#include "gdbtypes.h"
#include "frame.h"
#include "frame-unwind.h"
#include "frame-base.h"
#include "value.h"
#include "gdbcore.h"
#include "dwarf2/frame.h"
#include "reggroups.h"
#include "gdbarch.h"
#include "elf/rl78.h"
#include "elf-bfd.h"

Go to the source code of this file.

Classes

struct  rl78_gdbarch_tdep
 
struct  rl78_prologue
 

Macros

#define RL78_SP_ADDR   0xffff8
 

Enumerations

enum  {
  RL78_BANK0 = 0 , RL78_BANK1 = 1 , RL78_BANK2 = 2 , RL78_BANK3 = 3 ,
  RL78_NUMBANKS = 4 , RL78_REGS_PER_BANK = 8
}
 
enum  {
  RL78_RAW_BANK0_R0_REGNUM = 0 , RL78_RAW_BANK0_R1_REGNUM , RL78_RAW_BANK0_R2_REGNUM , RL78_RAW_BANK0_R3_REGNUM ,
  RL78_RAW_BANK0_R4_REGNUM , RL78_RAW_BANK0_R5_REGNUM , RL78_RAW_BANK0_R6_REGNUM , RL78_RAW_BANK0_R7_REGNUM ,
  RL78_RAW_BANK1_R0_REGNUM , RL78_RAW_BANK1_R1_REGNUM , RL78_RAW_BANK1_R2_REGNUM , RL78_RAW_BANK1_R3_REGNUM ,
  RL78_RAW_BANK1_R4_REGNUM , RL78_RAW_BANK1_R5_REGNUM , RL78_RAW_BANK1_R6_REGNUM , RL78_RAW_BANK1_R7_REGNUM ,
  RL78_RAW_BANK2_R0_REGNUM , RL78_RAW_BANK2_R1_REGNUM , RL78_RAW_BANK2_R2_REGNUM , RL78_RAW_BANK2_R3_REGNUM ,
  RL78_RAW_BANK2_R4_REGNUM , RL78_RAW_BANK2_R5_REGNUM , RL78_RAW_BANK2_R6_REGNUM , RL78_RAW_BANK2_R7_REGNUM ,
  RL78_RAW_BANK3_R0_REGNUM , RL78_RAW_BANK3_R1_REGNUM , RL78_RAW_BANK3_R2_REGNUM , RL78_RAW_BANK3_R3_REGNUM ,
  RL78_RAW_BANK3_R4_REGNUM , RL78_RAW_BANK3_R5_REGNUM , RL78_RAW_BANK3_R6_REGNUM , RL78_RAW_BANK3_R7_REGNUM ,
  RL78_PSW_REGNUM , RL78_ES_REGNUM , RL78_CS_REGNUM , RL78_RAW_PC_REGNUM ,
  RL78_SPL_REGNUM , RL78_SPH_REGNUM , RL78_PMC_REGNUM , RL78_MEM_REGNUM ,
  RL78_NUM_REGS , RL78_PC_REGNUM = RL78_NUM_REGS , RL78_SP_REGNUM , RL78_X_REGNUM ,
  RL78_A_REGNUM , RL78_C_REGNUM , RL78_B_REGNUM , RL78_E_REGNUM ,
  RL78_D_REGNUM , RL78_L_REGNUM , RL78_H_REGNUM , RL78_AX_REGNUM ,
  RL78_BC_REGNUM , RL78_DE_REGNUM , RL78_HL_REGNUM , RL78_BANK0_R0_REGNUM ,
  RL78_BANK0_R1_REGNUM , RL78_BANK0_R2_REGNUM , RL78_BANK0_R3_REGNUM , RL78_BANK0_R4_REGNUM ,
  RL78_BANK0_R5_REGNUM , RL78_BANK0_R6_REGNUM , RL78_BANK0_R7_REGNUM , RL78_BANK1_R0_REGNUM ,
  RL78_BANK1_R1_REGNUM , RL78_BANK1_R2_REGNUM , RL78_BANK1_R3_REGNUM , RL78_BANK1_R4_REGNUM ,
  RL78_BANK1_R5_REGNUM , RL78_BANK1_R6_REGNUM , RL78_BANK1_R7_REGNUM , RL78_BANK2_R0_REGNUM ,
  RL78_BANK2_R1_REGNUM , RL78_BANK2_R2_REGNUM , RL78_BANK2_R3_REGNUM , RL78_BANK2_R4_REGNUM ,
  RL78_BANK2_R5_REGNUM , RL78_BANK2_R6_REGNUM , RL78_BANK2_R7_REGNUM , RL78_BANK3_R0_REGNUM ,
  RL78_BANK3_R1_REGNUM , RL78_BANK3_R2_REGNUM , RL78_BANK3_R3_REGNUM , RL78_BANK3_R4_REGNUM ,
  RL78_BANK3_R5_REGNUM , RL78_BANK3_R6_REGNUM , RL78_BANK3_R7_REGNUM , RL78_BANK0_RP0_REGNUM ,
  RL78_BANK0_RP1_REGNUM , RL78_BANK0_RP2_REGNUM , RL78_BANK0_RP3_REGNUM , RL78_BANK1_RP0_REGNUM ,
  RL78_BANK1_RP1_REGNUM , RL78_BANK1_RP2_REGNUM , RL78_BANK1_RP3_REGNUM , RL78_BANK2_RP0_REGNUM ,
  RL78_BANK2_RP1_REGNUM , RL78_BANK2_RP2_REGNUM , RL78_BANK2_RP3_REGNUM , RL78_BANK3_RP0_REGNUM ,
  RL78_BANK3_RP1_REGNUM , RL78_BANK3_RP2_REGNUM , RL78_BANK3_RP3_REGNUM , RL78_BANK0_RP0_PTR_REGNUM ,
  RL78_BANK0_RP1_PTR_REGNUM , RL78_BANK0_RP2_PTR_REGNUM , RL78_BANK0_RP3_PTR_REGNUM , RL78_BANK1_RP0_PTR_REGNUM ,
  RL78_BANK1_RP1_PTR_REGNUM , RL78_BANK1_RP2_PTR_REGNUM , RL78_BANK1_RP3_PTR_REGNUM , RL78_BANK2_RP0_PTR_REGNUM ,
  RL78_BANK2_RP1_PTR_REGNUM , RL78_BANK2_RP2_PTR_REGNUM , RL78_BANK2_RP3_PTR_REGNUM , RL78_BANK3_RP0_PTR_REGNUM ,
  RL78_BANK3_RP1_PTR_REGNUM , RL78_BANK3_RP2_PTR_REGNUM , RL78_BANK3_RP3_PTR_REGNUM , RL78_NUM_TOTAL_REGS ,
  RL78_NUM_PSEUDO_REGS = RL78_NUM_TOTAL_REGS - RL78_NUM_REGS
}
 

Functions

static struct typerl78_psw_type (struct gdbarch *gdbarch)
 
static struct typerl78_register_type (struct gdbarch *gdbarch, int reg_nr)
 
static const char * rl78_register_name (struct gdbarch *gdbarch, int regnr)
 
static const char * rl78_g10_register_name (struct gdbarch *gdbarch, int regnr)
 
static int rl78_register_reggroup_p (struct gdbarch *gdbarch, int regnum, const struct reggroup *group)
 
static CORE_ADDR rl78_make_instruction_address (CORE_ADDR addr)
 
static CORE_ADDR rl78_make_data_address (CORE_ADDR addr)
 
static enum register_status rl78_pseudo_register_read (struct gdbarch *gdbarch, readable_regcache *regcache, int reg, gdb_byte *buffer)
 
static void rl78_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache, int reg, const gdb_byte *buffer)
 
typedef BP_MANIPULATION (rl78_break_insn)
 
static int opc_reg_to_gdb_regnum (int opcreg)
 
static int rl78_get_opcode_byte (void *handle)
 
static void check_for_saved (void *result_untyped, pv_t addr, CORE_ADDR size, pv_t value)
 
static void rl78_analyze_prologue (CORE_ADDR start_pc, CORE_ADDR limit_pc, struct rl78_prologue *result)
 
static CORE_ADDR rl78_addr_bits_remove (struct gdbarch *gdbarch, CORE_ADDR addr)
 
static void rl78_address_to_pointer (struct gdbarch *gdbarch, struct type *type, gdb_byte *buf, CORE_ADDR addr)
 
static CORE_ADDR rl78_pointer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf)
 
static CORE_ADDR rl78_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc)
 
static CORE_ADDR rl78_unwind_pc (struct gdbarch *arch, frame_info_ptr next_frame)
 
static struct rl78_prologuerl78_analyze_frame_prologue (frame_info_ptr this_frame, void **this_prologue_cache)
 
static CORE_ADDR rl78_frame_base (frame_info_ptr this_frame, void **this_prologue_cache)
 
static void rl78_this_id (frame_info_ptr this_frame, void **this_prologue_cache, struct frame_id *this_id)
 
static struct valuerl78_prev_register (frame_info_ptr this_frame, void **this_prologue_cache, int regnum)
 
static int rl78_dwarf_reg_to_regnum (struct gdbarch *gdbarch, int reg)
 
static int rl78_register_sim_regno (struct gdbarch *gdbarch, int regnum)
 
static enum return_value_convention rl78_return_value (struct gdbarch *gdbarch, struct value *function, struct type *valtype, struct regcache *regcache, gdb_byte *readbuf, const gdb_byte *writebuf)
 
static CORE_ADDR rl78_frame_align (struct gdbarch *gdbarch, CORE_ADDR sp)
 
static struct frame_id rl78_dummy_id (struct gdbarch *gdbarch, frame_info_ptr this_frame)
 
static CORE_ADDR rl78_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, function_call_return_method return_method, CORE_ADDR struct_addr)
 
static struct gdbarchrl78_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
void _initialize_rl78_tdep ()
 

Variables

constexpr gdb_byte rl78_break_insn [] = { 0xff }
 
static const struct frame_unwind rl78_unwind
 

Macro Definition Documentation

◆ RL78_SP_ADDR

#define RL78_SP_ADDR   0xffff8

Definition at line 209 of file rl78-tdep.c.

Referenced by rl78_analyze_prologue().

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
RL78_BANK0 
RL78_BANK1 
RL78_BANK2 
RL78_BANK3 
RL78_NUMBANKS 
RL78_REGS_PER_BANK 

Definition at line 44 of file rl78-tdep.c.

◆ anonymous enum

anonymous enum
Enumerator
RL78_RAW_BANK0_R0_REGNUM 
RL78_RAW_BANK0_R1_REGNUM 
RL78_RAW_BANK0_R2_REGNUM 
RL78_RAW_BANK0_R3_REGNUM 
RL78_RAW_BANK0_R4_REGNUM 
RL78_RAW_BANK0_R5_REGNUM 
RL78_RAW_BANK0_R6_REGNUM 
RL78_RAW_BANK0_R7_REGNUM 
RL78_RAW_BANK1_R0_REGNUM 
RL78_RAW_BANK1_R1_REGNUM 
RL78_RAW_BANK1_R2_REGNUM 
RL78_RAW_BANK1_R3_REGNUM 
RL78_RAW_BANK1_R4_REGNUM 
RL78_RAW_BANK1_R5_REGNUM 
RL78_RAW_BANK1_R6_REGNUM 
RL78_RAW_BANK1_R7_REGNUM 
RL78_RAW_BANK2_R0_REGNUM 
RL78_RAW_BANK2_R1_REGNUM 
RL78_RAW_BANK2_R2_REGNUM 
RL78_RAW_BANK2_R3_REGNUM 
RL78_RAW_BANK2_R4_REGNUM 
RL78_RAW_BANK2_R5_REGNUM 
RL78_RAW_BANK2_R6_REGNUM 
RL78_RAW_BANK2_R7_REGNUM 
RL78_RAW_BANK3_R0_REGNUM 
RL78_RAW_BANK3_R1_REGNUM 
RL78_RAW_BANK3_R2_REGNUM 
RL78_RAW_BANK3_R3_REGNUM 
RL78_RAW_BANK3_R4_REGNUM 
RL78_RAW_BANK3_R5_REGNUM 
RL78_RAW_BANK3_R6_REGNUM 
RL78_RAW_BANK3_R7_REGNUM 
RL78_PSW_REGNUM 
RL78_ES_REGNUM 
RL78_CS_REGNUM 
RL78_RAW_PC_REGNUM 
RL78_SPL_REGNUM 
RL78_SPH_REGNUM 
RL78_PMC_REGNUM 
RL78_MEM_REGNUM 
RL78_NUM_REGS 
RL78_PC_REGNUM 
RL78_SP_REGNUM 
RL78_X_REGNUM 
RL78_A_REGNUM 
RL78_C_REGNUM 
RL78_B_REGNUM 
RL78_E_REGNUM 
RL78_D_REGNUM 
RL78_L_REGNUM 
RL78_H_REGNUM 
RL78_AX_REGNUM 
RL78_BC_REGNUM 
RL78_DE_REGNUM 
RL78_HL_REGNUM 
RL78_BANK0_R0_REGNUM 
RL78_BANK0_R1_REGNUM 
RL78_BANK0_R2_REGNUM 
RL78_BANK0_R3_REGNUM 
RL78_BANK0_R4_REGNUM 
RL78_BANK0_R5_REGNUM 
RL78_BANK0_R6_REGNUM 
RL78_BANK0_R7_REGNUM 
RL78_BANK1_R0_REGNUM 
RL78_BANK1_R1_REGNUM 
RL78_BANK1_R2_REGNUM 
RL78_BANK1_R3_REGNUM 
RL78_BANK1_R4_REGNUM 
RL78_BANK1_R5_REGNUM 
RL78_BANK1_R6_REGNUM 
RL78_BANK1_R7_REGNUM 
RL78_BANK2_R0_REGNUM 
RL78_BANK2_R1_REGNUM 
RL78_BANK2_R2_REGNUM 
RL78_BANK2_R3_REGNUM 
RL78_BANK2_R4_REGNUM 
RL78_BANK2_R5_REGNUM 
RL78_BANK2_R6_REGNUM 
RL78_BANK2_R7_REGNUM 
RL78_BANK3_R0_REGNUM 
RL78_BANK3_R1_REGNUM 
RL78_BANK3_R2_REGNUM 
RL78_BANK3_R3_REGNUM 
RL78_BANK3_R4_REGNUM 
RL78_BANK3_R5_REGNUM 
RL78_BANK3_R6_REGNUM 
RL78_BANK3_R7_REGNUM 
RL78_BANK0_RP0_REGNUM 
RL78_BANK0_RP1_REGNUM 
RL78_BANK0_RP2_REGNUM 
RL78_BANK0_RP3_REGNUM 
RL78_BANK1_RP0_REGNUM 
RL78_BANK1_RP1_REGNUM 
RL78_BANK1_RP2_REGNUM 
RL78_BANK1_RP3_REGNUM 
RL78_BANK2_RP0_REGNUM 
RL78_BANK2_RP1_REGNUM 
RL78_BANK2_RP2_REGNUM 
RL78_BANK2_RP3_REGNUM 
RL78_BANK3_RP0_REGNUM 
RL78_BANK3_RP1_REGNUM 
RL78_BANK3_RP2_REGNUM 
RL78_BANK3_RP3_REGNUM 
RL78_BANK0_RP0_PTR_REGNUM 
RL78_BANK0_RP1_PTR_REGNUM 
RL78_BANK0_RP2_PTR_REGNUM 
RL78_BANK0_RP3_PTR_REGNUM 
RL78_BANK1_RP0_PTR_REGNUM 
RL78_BANK1_RP1_PTR_REGNUM 
RL78_BANK1_RP2_PTR_REGNUM 
RL78_BANK1_RP3_PTR_REGNUM 
RL78_BANK2_RP0_PTR_REGNUM 
RL78_BANK2_RP1_PTR_REGNUM 
RL78_BANK2_RP2_PTR_REGNUM 
RL78_BANK2_RP3_PTR_REGNUM 
RL78_BANK3_RP0_PTR_REGNUM 
RL78_BANK3_RP1_PTR_REGNUM 
RL78_BANK3_RP2_PTR_REGNUM 
RL78_BANK3_RP3_PTR_REGNUM 
RL78_NUM_TOTAL_REGS 
RL78_NUM_PSEUDO_REGS 

Definition at line 56 of file rl78-tdep.c.

Function Documentation

◆ _initialize_rl78_tdep()

void _initialize_rl78_tdep ( )

Definition at line 1490 of file rl78-tdep.c.

References gdbarch_register(), and rl78_gdbarch_init().

◆ BP_MANIPULATION()

typedef BP_MANIPULATION ( rl78_break_insn )

Definition at line 801 of file rl78-tdep.c.

◆ check_for_saved()

static void check_for_saved ( void * result_untyped,
pv_t addr,
CORE_ADDR size,
pv_t value )
static

◆ opc_reg_to_gdb_regnum()

static int opc_reg_to_gdb_regnum ( int opcreg)
static

◆ rl78_addr_bits_remove()

static CORE_ADDR rl78_addr_bits_remove ( struct gdbarch * gdbarch,
CORE_ADDR addr )
static

Definition at line 1023 of file rl78-tdep.c.

Referenced by rl78_gdbarch_init(), and rl78_unwind_pc().

◆ rl78_address_to_pointer()

static void rl78_address_to_pointer ( struct gdbarch * gdbarch,
struct type * type,
gdb_byte * buf,
CORE_ADDR addr )
static

Definition at line 1031 of file rl78-tdep.c.

References gdbarch_byte_order(), type::length(), and store_unsigned_integer().

Referenced by rl78_gdbarch_init().

◆ rl78_analyze_frame_prologue()

static struct rl78_prologue * rl78_analyze_frame_prologue ( frame_info_ptr this_frame,
void ** this_prologue_cache )
static

◆ rl78_analyze_prologue()

static void rl78_analyze_prologue ( CORE_ADDR start_pc,
CORE_ADDR limit_pc,
struct rl78_prologue * result )
static

◆ rl78_dummy_id()

static struct frame_id rl78_dummy_id ( struct gdbarch * gdbarch,
frame_info_ptr this_frame )
static

◆ rl78_dwarf_reg_to_regnum()

static int rl78_dwarf_reg_to_regnum ( struct gdbarch * gdbarch,
int reg )
static

◆ rl78_frame_align()

static CORE_ADDR rl78_frame_align ( struct gdbarch * gdbarch,
CORE_ADDR sp )
static

Definition at line 1308 of file rl78-tdep.c.

References rl78_make_data_address().

Referenced by rl78_gdbarch_init().

◆ rl78_frame_base()

static CORE_ADDR rl78_frame_base ( frame_info_ptr this_frame,
void ** this_prologue_cache )
static

◆ rl78_g10_register_name()

static const char * rl78_g10_register_name ( struct gdbarch * gdbarch,
int regnr )
static

Definition at line 453 of file rl78-tdep.c.

Referenced by rl78_gdbarch_init().

◆ rl78_gdbarch_init()

static struct gdbarch * rl78_gdbarch_init ( struct gdbarch_info info,
struct gdbarch_list * arches )
static

Definition at line 1376 of file rl78-tdep.c.

References arches, core_addr_lessthan(), dwarf2_append_unwinders(), rl78_gdbarch_tdep::elf_flags, floatformats_ieee_double, floatformats_ieee_single, frame_unwind_append_unwinder(), gdbarch_alloc(), gdbarch_list_lookup_by_info(), gdbarch::info(), init_integer_type(), init_pointer_type(), type_allocator::new_type(), rl78_addr_bits_remove(), rl78_address_to_pointer(), rl78_gdbarch_tdep::rl78_code_pointer, rl78_gdbarch_tdep::rl78_data_pointer, rl78_dummy_id(), rl78_dwarf_reg_to_regnum(), rl78_frame_align(), rl78_g10_register_name(), rl78_gdbarch_tdep::rl78_int16, rl78_gdbarch_tdep::rl78_int32, rl78_gdbarch_tdep::rl78_int8, RL78_NUM_PSEUDO_REGS, RL78_NUM_REGS, RL78_PC_REGNUM, rl78_pointer_to_address(), rl78_pseudo_register_read(), rl78_pseudo_register_write(), rl78_push_dummy_call(), rl78_register_name(), rl78_register_reggroup_p(), rl78_register_sim_regno(), rl78_register_type(), rl78_return_value(), rl78_skip_prologue(), RL78_SP_REGNUM, rl78_gdbarch_tdep::rl78_uint16, rl78_gdbarch_tdep::rl78_uint32, rl78_gdbarch_tdep::rl78_uint8, rl78_unwind, rl78_unwind_pc(), rl78_gdbarch_tdep::rl78_void, set_gdbarch_addr_bit(), set_gdbarch_addr_bits_remove(), set_gdbarch_address_to_pointer(), set_gdbarch_breakpoint_kind_from_pc(), set_gdbarch_char_signed(), set_gdbarch_decr_pc_after_break(), set_gdbarch_double_bit(), set_gdbarch_double_format(), set_gdbarch_dummy_id(), set_gdbarch_dwarf2_addr_size(), set_gdbarch_dwarf2_reg_to_regnum(), set_gdbarch_float_bit(), set_gdbarch_float_format(), set_gdbarch_frame_align(), set_gdbarch_inner_than(), set_gdbarch_int_bit(), set_gdbarch_long_bit(), set_gdbarch_long_double_bit(), set_gdbarch_long_double_format(), set_gdbarch_long_long_bit(), set_gdbarch_num_pseudo_regs(), set_gdbarch_num_regs(), set_gdbarch_pc_regnum(), set_gdbarch_pointer_to_address(), set_gdbarch_pseudo_register_read(), set_gdbarch_pseudo_register_write(), set_gdbarch_ptr_bit(), set_gdbarch_push_dummy_call(), set_gdbarch_register_name(), set_gdbarch_register_reggroup_p(), set_gdbarch_register_sim_regno(), set_gdbarch_register_type(), set_gdbarch_return_value(), set_gdbarch_short_bit(), set_gdbarch_skip_prologue(), set_gdbarch_sp_regnum(), set_gdbarch_sw_breakpoint_from_kind(), set_gdbarch_unwind_pc(), and set_gdbarch_vbit_in_delta().

Referenced by _initialize_rl78_tdep().

◆ rl78_get_opcode_byte()

static int rl78_get_opcode_byte ( void * handle)
static

Definition at line 867 of file rl78-tdep.c.

References status, and target_read_memory().

Referenced by rl78_analyze_prologue().

◆ rl78_make_data_address()

static CORE_ADDR rl78_make_data_address ( CORE_ADDR addr)
static

◆ rl78_make_instruction_address()

static CORE_ADDR rl78_make_instruction_address ( CORE_ADDR addr)
static

Definition at line 627 of file rl78-tdep.c.

Referenced by rl78_pointer_to_address(), and rl78_prev_register().

◆ rl78_pointer_to_address()

static CORE_ADDR rl78_pointer_to_address ( struct gdbarch * gdbarch,
struct type * type,
const gdb_byte * buf )
static

◆ rl78_prev_register()

static struct value * rl78_prev_register ( frame_info_ptr this_frame,
void ** this_prologue_cache,
int regnum )
static

◆ rl78_pseudo_register_read()

static enum register_status rl78_pseudo_register_read ( struct gdbarch * gdbarch,
readable_regcache * regcache,
int reg,
gdb_byte * buffer )
static

◆ rl78_pseudo_register_write()

static void rl78_pseudo_register_write ( struct gdbarch * gdbarch,
struct regcache * regcache,
int reg,
const gdb_byte * buffer )
static

◆ rl78_psw_type()

static struct type * rl78_psw_type ( struct gdbarch * gdbarch)
static

◆ rl78_push_dummy_call()

static CORE_ADDR rl78_push_dummy_call ( struct gdbarch * gdbarch,
struct value * function,
struct regcache * regcache,
CORE_ADDR bp_addr,
int nargs,
struct value ** args,
CORE_ADDR sp,
function_call_return_method return_method,
CORE_ADDR struct_addr )
static

◆ rl78_register_name()

static const char * rl78_register_name ( struct gdbarch * gdbarch,
int regnr )
static

Definition at line 318 of file rl78-tdep.c.

Referenced by rl78_gdbarch_init().

◆ rl78_register_reggroup_p()

static int rl78_register_reggroup_p ( struct gdbarch * gdbarch,
int regnum,
const struct reggroup * group )
static

◆ rl78_register_sim_regno()

static int rl78_register_sim_regno ( struct gdbarch * gdbarch,
int regnum )
static

Definition at line 1229 of file rl78-tdep.c.

References regnum, and RL78_NUM_REGS.

Referenced by rl78_gdbarch_init().

◆ rl78_register_type()

static struct type * rl78_register_type ( struct gdbarch * gdbarch,
int reg_nr )
static

◆ rl78_return_value()

static enum return_value_convention rl78_return_value ( struct gdbarch * gdbarch,
struct value * function,
struct type * valtype,
struct regcache * regcache,
gdb_byte * readbuf,
const gdb_byte * writebuf )
static

◆ rl78_skip_prologue()

static CORE_ADDR rl78_skip_prologue ( struct gdbarch * gdbarch,
CORE_ADDR pc )
static

◆ rl78_this_id()

static void rl78_this_id ( frame_info_ptr this_frame,
void ** this_prologue_cache,
struct frame_id * this_id )
static

Definition at line 1132 of file rl78-tdep.c.

References frame_id_build(), get_frame_func(), and rl78_frame_base().

◆ rl78_unwind_pc()

static CORE_ADDR rl78_unwind_pc ( struct gdbarch * arch,
frame_info_ptr next_frame )
static

Variable Documentation

◆ rl78_break_insn

constexpr gdb_byte rl78_break_insn[] = { 0xff }
constexpr

Definition at line 799 of file rl78-tdep.c.

◆ rl78_unwind

const struct frame_unwind rl78_unwind
static
Initial value:
=
{
"rl78 prologue",
NULL,
}
int default_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)
enum unwind_stop_reason default_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
@ NORMAL_FRAME
Definition frame.h:187
static struct value * rl78_prev_register(frame_info_ptr this_frame, void **this_prologue_cache, int regnum)
Definition rl78-tdep.c:1143
static void rl78_this_id(frame_info_ptr this_frame, void **this_prologue_cache, struct frame_id *this_id)
Definition rl78-tdep.c:1132

Definition at line 1184 of file rl78-tdep.c.

Referenced by rl78_gdbarch_init().