GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Functions | Variables
m32r-linux-tdep.c File Reference
#include "defs.h"
#include "gdbcore.h"
#include "frame.h"
#include "value.h"
#include "regcache.h"
#include "inferior.h"
#include "osabi.h"
#include "reggroups.h"
#include "regset.h"
#include "glibc-tdep.h"
#include "solib-svr4.h"
#include "symtab.h"
#include "trad-frame.h"
#include "frame-unwind.h"
#include "m32r-tdep.h"
#include "linux-tdep.h"
#include "gdbarch.h"

Go to the source code of this file.

Classes

struct  m32r_frame_cache
 

Macros

#define PSW_OFFSET   (4 * 19)
 
#define BBPSW_OFFSET   (4 * 21)
 
#define SPU_OFFSET   (4 * 23)
 
#define SPI_OFFSET   (4 * 26)
 
#define M32R_LINUX_GREGS_SIZE   (4 * 28)
 

Functions

static CORE_ADDR m32r_linux_sigtramp_start (CORE_ADDR pc, frame_info_ptr this_frame)
 
static CORE_ADDR m32r_linux_rt_sigtramp_start (CORE_ADDR pc, frame_info_ptr this_frame)
 
static int m32r_linux_pc_in_sigtramp (CORE_ADDR pc, const char *name, frame_info_ptr this_frame)
 
static struct m32r_frame_cachem32r_linux_sigtramp_frame_cache (frame_info_ptr this_frame, void **this_cache)
 
static void m32r_linux_sigtramp_frame_this_id (frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
 
static struct valuem32r_linux_sigtramp_frame_prev_register (frame_info_ptr this_frame, void **this_cache, int regnum)
 
static int m32r_linux_sigtramp_frame_sniffer (const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)
 
static void m32r_linux_supply_gregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t size)
 
static void m32r_linux_collect_gregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *gregs, size_t size)
 
static void m32r_linux_iterate_over_regset_sections (struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
 
static void m32r_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
void _initialize_m32r_linux_tdep ()
 

Variables

static const gdb_byte linux_sigtramp_code []
 
static const gdb_byte linux_rt_sigtramp_code []
 
static int m32r_linux_sc_reg_offset []
 
static const struct frame_unwind m32r_linux_sigtramp_frame_unwind
 
static int m32r_pt_regs_offset []
 
static const struct regset m32r_linux_gregset
 

Macro Definition Documentation

◆ BBPSW_OFFSET

#define BBPSW_OFFSET   (4 * 21)

Definition at line 345 of file m32r-linux-tdep.c.

Referenced by m32r_linux_collect_gregset(), and m32r_linux_supply_gregset().

◆ M32R_LINUX_GREGS_SIZE

#define M32R_LINUX_GREGS_SIZE   (4 * 28)

Definition at line 349 of file m32r-linux-tdep.c.

Referenced by m32r_linux_iterate_over_regset_sections().

◆ PSW_OFFSET

#define PSW_OFFSET   (4 * 19)

Definition at line 344 of file m32r-linux-tdep.c.

Referenced by m32r_linux_collect_gregset(), and m32r_linux_supply_gregset().

◆ SPI_OFFSET

#define SPI_OFFSET   (4 * 26)

Definition at line 347 of file m32r-linux-tdep.c.

Referenced by m32r_linux_collect_gregset(), and m32r_linux_supply_gregset().

◆ SPU_OFFSET

#define SPU_OFFSET   (4 * 23)

Definition at line 346 of file m32r-linux-tdep.c.

Referenced by m32r_linux_collect_gregset(), and m32r_linux_supply_gregset().

Function Documentation

◆ _initialize_m32r_linux_tdep()

void _initialize_m32r_linux_tdep ( )

◆ m32r_linux_collect_gregset()

static void m32r_linux_collect_gregset ( const struct regset * regset,
const struct regcache * regcache,
int regnum,
void * gregs,
size_t size )
static

◆ m32r_linux_init_abi()

static void m32r_linux_init_abi ( struct gdbarch_info info,
struct gdbarch * gdbarch )
static

◆ m32r_linux_iterate_over_regset_sections()

static void m32r_linux_iterate_over_regset_sections ( struct gdbarch * gdbarch,
iterate_over_regset_sections_cb * cb,
void * cb_data,
const struct regcache * regcache )
static

Definition at line 440 of file m32r-linux-tdep.c.

References M32R_LINUX_GREGS_SIZE, and m32r_linux_gregset.

Referenced by m32r_linux_init_abi().

◆ m32r_linux_pc_in_sigtramp()

static int m32r_linux_pc_in_sigtramp ( CORE_ADDR pc,
const char * name,
frame_info_ptr this_frame )
static

◆ m32r_linux_rt_sigtramp_start()

static CORE_ADDR m32r_linux_rt_sigtramp_start ( CORE_ADDR pc,
frame_info_ptr this_frame )
static

◆ m32r_linux_sigtramp_frame_cache()

static struct m32r_frame_cache * m32r_linux_sigtramp_frame_cache ( frame_info_ptr this_frame,
void ** this_cache )
static

◆ m32r_linux_sigtramp_frame_prev_register()

static struct value * m32r_linux_sigtramp_frame_prev_register ( frame_info_ptr this_frame,
void ** this_cache,
int regnum )
static

◆ m32r_linux_sigtramp_frame_sniffer()

static int m32r_linux_sigtramp_frame_sniffer ( const struct frame_unwind * self,
frame_info_ptr this_frame,
void ** this_cache )
static

◆ m32r_linux_sigtramp_frame_this_id()

static void m32r_linux_sigtramp_frame_this_id ( frame_info_ptr this_frame,
void ** this_cache,
struct frame_id * this_id )
static

◆ m32r_linux_sigtramp_start()

static CORE_ADDR m32r_linux_sigtramp_start ( CORE_ADDR pc,
frame_info_ptr this_frame )
static

◆ m32r_linux_supply_gregset()

static void m32r_linux_supply_gregset ( const struct regset * regset,
struct regcache * regcache,
int regnum,
const void * gregs,
size_t size )
static

Variable Documentation

◆ linux_rt_sigtramp_code

const gdb_byte linux_rt_sigtramp_code[]
static
Initial value:
= {
0x97, 0xf0, 0x00, 0xad, 0x10, 0xf2, 0xf0, 0x00,
}

Definition at line 128 of file m32r-linux-tdep.c.

Referenced by m32r_linux_rt_sigtramp_start().

◆ linux_sigtramp_code

const gdb_byte linux_sigtramp_code[]
static
Initial value:
= {
0x67, 0x77, 0x10, 0xf2,
}

Definition at line 80 of file m32r-linux-tdep.c.

Referenced by m32r_linux_sigtramp_start().

◆ m32r_linux_gregset

const struct regset m32r_linux_gregset
static
Initial value:
= {
NULL,
}
static void m32r_linux_supply_gregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t size)
static void m32r_linux_collect_gregset(const struct regset *regset, const struct regcache *regcache, int regnum, void *gregs, size_t size)

Definition at line 434 of file m32r-linux-tdep.c.

Referenced by m32r_linux_iterate_over_regset_sections().

◆ m32r_linux_sc_reg_offset

int m32r_linux_sc_reg_offset[]
static
Initial value:
= {
4 * 4,
5 * 4,
6 * 4,
7 * 4,
0 * 4,
1 * 4,
2 * 4,
8 * 4,
9 * 4,
10 * 4,
11 * 4,
12 * 4,
13 * 4,
21 * 4,
22 * 4,
-1 * 4,
16 * 4,
-1 * 4,
23 * 4,
20 * 4,
19 * 4,
17 * 4,
15 * 4,
14 * 4
}

Definition at line 192 of file m32r-linux-tdep.c.

Referenced by m32r_linux_sigtramp_frame_cache().

◆ m32r_linux_sigtramp_frame_unwind

const struct frame_unwind m32r_linux_sigtramp_frame_unwind
static
Initial value:
= {
"m32r linux sigtramp",
NULL,
}
enum unwind_stop_reason default_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
@ SIGTRAMP_FRAME
Definition frame.h:198
static void m32r_linux_sigtramp_frame_this_id(frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
static struct value * m32r_linux_sigtramp_frame_prev_register(frame_info_ptr this_frame, void **this_cache, int regnum)
static int m32r_linux_sigtramp_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)

Definition at line 304 of file m32r-linux-tdep.c.

Referenced by m32r_linux_init_abi().

◆ m32r_pt_regs_offset

int m32r_pt_regs_offset[]
static
Initial value:
= {
4 * 4,
4 * 5,
4 * 6,
4 * 7,
4 * 0,
4 * 1,
4 * 2,
4 * 8,
4 * 9,
4 * 10,
4 * 11,
4 * 12,
4 * 13,
4 * 24,
4 * 25,
4 * 23,
4 * 19,
4 * 19,
4 * 26,
4 * 23,
4 * 22,
4 * 20,
4 * 16,
4 * 15
}

Definition at line 317 of file m32r-linux-tdep.c.

Referenced by m32r_linux_collect_gregset(), and m32r_linux_supply_gregset().