GDBserver
Macros | Functions | Variables
linux-tile-low.c File Reference
#include "server.h"
#include "linux-low.h"
#include <arch/abi.h>
#include "nat/gdb_ptrace.h"

Go to the source code of this file.

Macros

#define tile_num_regs   65
 
#define tile_breakpoint_len   8
 

Functions

void init_registers_tilegx (void)
 
void init_registers_tilegx32 (void)
 
static int tile_cannot_fetch_register (int regno)
 
static int tile_cannot_store_register (int regno)
 
static const gdb_bytetile_sw_breakpoint_from_kind (int kind, int *size)
 
static int tile_breakpoint_at (CORE_ADDR where)
 
static void tile_fill_gregset (struct regcache *regcache, void *buf)
 
static void tile_store_gregset (struct regcache *regcache, const void *buf)
 
static const struct regs_infotile_regs_info (void)
 
static void tile_arch_setup (void)
 
static int tile_supports_hardware_single_step (void)
 
void initialize_low_arch (void)
 

Variables

const struct target_desctdesc_tilegx
 
const struct target_desctdesc_tilegx32
 
static int tile_regmap []
 
static uint64_t tile_breakpoint = 0x400b3cae70166000ULL
 
static struct regset_info tile_regsets []
 
static struct regsets_info tile_regsets_info
 
static struct usrregs_info tile_usrregs_info
 
static struct regs_info regs_info
 
struct linux_target_ops the_low_target
 

Macro Definition Documentation

◆ tile_breakpoint_len

#define tile_breakpoint_len   8

Definition at line 72 of file linux-tile-low.c.

Referenced by tile_sw_breakpoint_from_kind().

◆ tile_num_regs

#define tile_num_regs   65

Definition at line 34 of file linux-tile-low.c.

Referenced by tile_fill_gregset(), and tile_store_gregset().

Function Documentation

◆ init_registers_tilegx()

void init_registers_tilegx ( void  )

Referenced by initialize_low_arch().

◆ init_registers_tilegx32()

void init_registers_tilegx32 ( void  )

Referenced by initialize_low_arch().

◆ initialize_low_arch()

void initialize_low_arch ( void  )

◆ tile_arch_setup()

static void tile_arch_setup ( void  )
static

◆ tile_breakpoint_at()

static int tile_breakpoint_at ( CORE_ADDR  where)
static

Definition at line 84 of file linux-tile-low.c.

References target_ops::read_memory, the_target, and tile_breakpoint.

◆ tile_cannot_fetch_register()

static int tile_cannot_fetch_register ( int  regno)
static

Definition at line 50 of file linux-tile-low.c.

◆ tile_cannot_store_register()

static int tile_cannot_store_register ( int  regno)
static

Definition at line 61 of file linux-tile-low.c.

◆ tile_fill_gregset()

static void tile_fill_gregset ( struct regcache regcache,
void *  buf 
)
static

Definition at line 98 of file linux-tile-low.c.

References collect_register(), tile_num_regs, and tile_regmap.

◆ tile_regs_info()

static const struct regs_info* tile_regs_info ( void  )
static

Definition at line 145 of file linux-tile-low.c.

References regs_info.

◆ tile_store_gregset()

static void tile_store_gregset ( struct regcache regcache,
const void *  buf 
)
static

Definition at line 108 of file linux-tile-low.c.

References supply_register(), tile_num_regs, and tile_regmap.

◆ tile_supports_hardware_single_step()

static int tile_supports_hardware_single_step ( void  )
static

Definition at line 170 of file linux-tile-low.c.

◆ tile_sw_breakpoint_from_kind()

static const gdb_byte* tile_sw_breakpoint_from_kind ( int  kind,
int *  size 
)
static

Definition at line 77 of file linux-tile-low.c.

References tile_breakpoint, and tile_breakpoint_len.

Variable Documentation

◆ regs_info

struct regs_info regs_info
static
Initial value:
=
{
NULL,
}
static struct usrregs_info tile_usrregs_info
static struct regsets_info tile_regsets_info

Definition at line 137 of file linux-tile-low.c.

Referenced by tile_regs_info().

◆ tdesc_tilegx

const struct target_desc* tdesc_tilegx

Referenced by tile_arch_setup().

◆ tdesc_tilegx32

const struct target_desc* tdesc_tilegx32

Referenced by tile_arch_setup().

◆ the_low_target

struct linux_target_ops the_low_target

Definition at line 176 of file linux-tile-low.c.

◆ tile_breakpoint

uint64_t tile_breakpoint = 0x400b3cae70166000ULL
static

Definition at line 71 of file linux-tile-low.c.

Referenced by tile_breakpoint_at(), and tile_sw_breakpoint_from_kind().

◆ tile_regmap

int tile_regmap[]
static
Initial value:
=
{
0, 1, 2, 3, 4, 5, 6, 7,
8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 53, 54, 55,
-1, -1, -1, -1, -1, -1, -1, -1,
56
}

Definition at line 36 of file linux-tile-low.c.

Referenced by tile_fill_gregset(), and tile_store_gregset().

◆ tile_regsets

struct regset_info tile_regsets[]
static
Initial value:
=
{
{ PTRACE_GETREGS, PTRACE_SETREGS, 0, tile_num_regs * 8,
NULL_REGSET
}
#define tile_num_regs
static void tile_store_gregset(struct regcache *regcache, const void *buf)
static void tile_fill_gregset(struct regcache *regcache, void *buf)

Definition at line 117 of file linux-tile-low.c.

◆ tile_regsets_info

struct regsets_info tile_regsets_info
static
Initial value:
=
{
0,
NULL,
}
static struct regset_info tile_regsets[]

Definition at line 124 of file linux-tile-low.c.

Referenced by initialize_low_arch().

◆ tile_usrregs_info

struct usrregs_info tile_usrregs_info
static
Initial value:
=
{
}
#define tile_num_regs
static int tile_regmap[]

Definition at line 131 of file linux-tile-low.c.