GDB (xrefs)
Defines | Enumerations | Functions | Variables
/home/stan/gdb/src/gdb/sparc-linux-tdep.c File Reference
#include "defs.h"
#include "dwarf2-frame.h"
#include "frame.h"
#include "frame-unwind.h"
#include "gdbtypes.h"
#include "regset.h"
#include "gdbarch.h"
#include "gdbcore.h"
#include "osabi.h"
#include "regcache.h"
#include "solib-svr4.h"
#include "symtab.h"
#include "trad-frame.h"
#include "tramp-frame.h"
#include "xml-syscall.h"
#include "linux-tdep.h"
#include "sparc-tdep.h"

Go to the source code of this file.

Defines

#define XML_SYSCALL_FILENAME_SPARC32   "syscalls/sparc-linux.xml"
#define PSR_SYSCALL   0x00004000

Enumerations

enum  {
  SPARC_LINUX_SIGEMT = 7, SPARC_LINUX_SIGBUS = 10, SPARC_LINUX_SIGSYS = 12, SPARC_LINUX_SIGURG = 16,
  SPARC_LINUX_SIGSTOP = 17, SPARC_LINUX_SIGTSTP = 18, SPARC_LINUX_SIGCONT = 19, SPARC_LINUX_SIGCHLD = 20,
  SPARC_LINUX_SIGIO = 23, SPARC_LINUX_SIGPOLL = SPARC_LINUX_SIGIO, SPARC_LINUX_SIGLOST = 29, SPARC_LINUX_SIGPWR = SPARC_LINUX_SIGLOST,
  SPARC_LINUX_SIGUSR1 = 30, SPARC_LINUX_SIGUSR2 = 31
}

Functions

static void sparc32_linux_sigframe_init (const struct tramp_frame *self, struct frame_info *this_frame, struct trad_frame_cache *this_cache, CORE_ADDR func)
static CORE_ADDR sparc32_linux_step_trap (struct frame_info *frame, unsigned long insn)
static void sparc32_linux_supply_core_gregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t len)
static void sparc32_linux_collect_core_gregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *gregs, size_t len)
static void sparc32_linux_supply_core_fpregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *fpregs, size_t len)
static void sparc32_linux_collect_core_fpregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *fpregs, size_t len)
static void sparc_linux_write_pc (struct regcache *regcache, CORE_ADDR pc)
static LONGEST sparc32_linux_get_syscall_number (struct gdbarch *gdbarch, ptid_t ptid)
static enum gdb_signal sparc32_linux_gdb_signal_from_target (struct gdbarch *gdbarch, int signal)
static int sparc32_linux_gdb_signal_to_target (struct gdbarch *gdbarch, enum gdb_signal signal)
static void sparc32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
void _initialize_sparc_linux_tdep (void)

Variables

static struct tramp_frame sparc32_linux_sigframe
static struct tramp_frame sparc32_linux_rt_sigframe
struct sparc_gregset sparc32_linux_core_gregset

Define Documentation

#define PSR_SYSCALL   0x00004000

Definition at line 251 of file sparc-linux-tdep.c.

Referenced by sparc_linux_write_pc().

#define XML_SYSCALL_FILENAME_SPARC32   "syscalls/sparc-linux.xml"

Definition at line 38 of file sparc-linux-tdep.c.

Referenced by sparc32_linux_init_abi().


Enumeration Type Documentation

anonymous enum
Enumerator:
SPARC_LINUX_SIGEMT 
SPARC_LINUX_SIGBUS 
SPARC_LINUX_SIGSYS 
SPARC_LINUX_SIGURG 
SPARC_LINUX_SIGSTOP 
SPARC_LINUX_SIGTSTP 
SPARC_LINUX_SIGCONT 
SPARC_LINUX_SIGCHLD 
SPARC_LINUX_SIGIO 
SPARC_LINUX_SIGPOLL 
SPARC_LINUX_SIGLOST 
SPARC_LINUX_SIGPWR 
SPARC_LINUX_SIGUSR1 
SPARC_LINUX_SIGUSR2 

Definition at line 100 of file sparc-linux-tdep.c.


Function Documentation

static void sparc32_linux_collect_core_fpregset ( const struct regset regset,
const struct regcache regcache,
int  regnum,
void *  fpregs,
size_t  len 
) [static]

Definition at line 242 of file sparc-linux-tdep.c.

References sparc32_bsd_fpregset, and sparc32_collect_fpregset().

Referenced by sparc32_linux_init_abi().

static void sparc32_linux_collect_core_gregset ( const struct regset regset,
const struct regcache regcache,
int  regnum,
void *  gregs,
size_t  len 
) [static]

Definition at line 225 of file sparc-linux-tdep.c.

References sparc32_collect_gregset().

Referenced by sparc32_linux_init_abi().

static enum gdb_signal sparc32_linux_gdb_signal_from_target ( struct gdbarch gdbarch,
int  signal 
) [static]
static int sparc32_linux_gdb_signal_to_target ( struct gdbarch gdbarch,
enum gdb_signal  signal 
) [static]
static LONGEST sparc32_linux_get_syscall_number ( struct gdbarch gdbarch,
ptid_t  ptid 
) [static]
static void sparc32_linux_init_abi ( struct gdbarch_info  info,
struct gdbarch gdbarch 
) [static]
static void sparc32_linux_sigframe_init ( const struct tramp_frame self,
struct frame_info this_frame,
struct trad_frame_cache this_cache,
CORE_ADDR  func 
) [static]
static CORE_ADDR sparc32_linux_step_trap ( struct frame_info frame,
unsigned long  insn 
) [static]
static void sparc32_linux_supply_core_fpregset ( const struct regset regset,
struct regcache regcache,
int  regnum,
const void *  fpregs,
size_t  len 
) [static]

Definition at line 234 of file sparc-linux-tdep.c.

References sparc32_bsd_fpregset, and sparc32_supply_fpregset().

Referenced by sparc32_linux_init_abi().

static void sparc32_linux_supply_core_gregset ( const struct regset regset,
struct regcache regcache,
int  regnum,
const void *  gregs,
size_t  len 
) [static]

Definition at line 216 of file sparc-linux-tdep.c.

References sparc32_supply_gregset().

Referenced by sparc32_linux_init_abi().

static void sparc_linux_write_pc ( struct regcache regcache,
CORE_ADDR  pc 
) [static]

Variable Documentation

Initial value:
{
  32 * 4,                       
  33 * 4,                       
  34 * 4,                       
  35 * 4,                       
  -1,                           
  -1,                           
  1 * 4,                        
  16 * 4,                       
  4,                            
}

Definition at line 201 of file sparc-linux-tdep.c.

Initial value:
{
  SIGTRAMP_FRAME,
  4,
  {
    { 0x82102065, -1 },         
    { 0x91d02010, -1 },         
    { TRAMP_SENTINEL_INSN, -1 }
  },
  sparc32_linux_sigframe_init
}

Definition at line 81 of file sparc-linux-tdep.c.

Initial value:
{
  SIGTRAMP_FRAME,
  4,
  {
    { 0x821020d8, -1 },         
    { 0x91d02010, -1 },         
    { TRAMP_SENTINEL_INSN, -1 }
  },
  sparc32_linux_sigframe_init
}

Definition at line 66 of file sparc-linux-tdep.c.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines