GDB (xrefs)
Macros | Functions | Variables
/tmp/gdb-7.10/gdb/i386obsd-tdep.c File Reference
#include "defs.h"
#include "arch-utils.h"
#include "frame.h"
#include "frame-unwind.h"
#include "gdbcore.h"
#include "regcache.h"
#include "regset.h"
#include "symtab.h"
#include "objfiles.h"
#include "osabi.h"
#include "target.h"
#include "trad-frame.h"
#include "obsd-tdep.h"
#include "i386-tdep.h"
#include "i387-tdep.h"
#include "solib-svr4.h"
#include "bsd-uthread.h"

Go to the source code of this file.

Macros

#define I386OBSD_UTHREAD_ESP_OFFSET   176
 
#define GDB_OSABI_OPENBSD_AOUT   GDB_OSABI_NETBSD_AOUT
 

Functions

static int i386obsd_sigtramp_p (struct frame_info *this_frame)
 
static void i386obsd_aout_supply_regset (const struct regset *regset, struct regcache *regcache, int regnum, const void *regs, size_t len)
 
static void i386obsd_aout_iterate_over_regset_sections (struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
 
static void i386obsd_supply_uthread (struct regcache *regcache, int regnum, CORE_ADDR addr)
 
static void i386obsd_collect_uthread (const struct regcache *regcache, int regnum, CORE_ADDR addr)
 
static struct trad_frame_cachei386obsd_trapframe_cache (struct frame_info *this_frame, void **this_cache)
 
static void i386obsd_trapframe_this_id (struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
 
static struct valuei386obsd_trapframe_prev_register (struct frame_info *this_frame, void **this_cache, int regnum)
 
static int i386obsd_trapframe_sniffer (const struct frame_unwind *self, struct frame_info *this_frame, void **this_prologue_cache)
 
static void i386obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
static void i386obsd_aout_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
static void i386obsd_elf_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
void _initialize_i386obsd_tdep (void)
 

Variables

static const int i386obsd_page_size = 4096
 
static const int i386obsd_sigreturn_offset []
 
static int i386obsd_r_reg_offset []
 
static const struct regset i386obsd_aout_gregset
 
CORE_ADDR i386obsd_sigtramp_start_addr = 0xbfbfdf20
 
CORE_ADDR i386obsd_sigtramp_end_addr = 0xbfbfdff0
 
int i386obsd_sc_reg_offset [I386_NUM_GREGS]
 
static int i386obsd_uthread_reg_offset []
 
static int i386obsd_tf_reg_offset []
 
static const struct frame_unwind i386obsd_trapframe_unwind
 

Macro Definition Documentation

#define GDB_OSABI_OPENBSD_AOUT   GDB_OSABI_NETBSD_AOUT
#define I386OBSD_UTHREAD_ESP_OFFSET   176

Definition at line 221 of file i386obsd-tdep.c.

Referenced by i386obsd_collect_uthread(), and i386obsd_supply_uthread().

Function Documentation

void _initialize_i386obsd_tdep ( void  )
static void i386obsd_aout_init_abi ( struct gdbarch_info  info,
struct gdbarch gdbarch 
)
static
static void i386obsd_aout_iterate_over_regset_sections ( struct gdbarch gdbarch,
iterate_over_regset_sections_cb cb,
void *  cb_data,
const struct regcache regcache 
)
static

Definition at line 158 of file i386obsd-tdep.c.

References gdbarch_tdep(), I387_SIZEOF_FSAVE, and gdbarch_tdep::sizeof_gregset.

Referenced by i386obsd_aout_init_abi().

static void i386obsd_aout_supply_regset ( const struct regset regset,
struct regcache regcache,
int  regnum,
const void *  regs,
size_t  len 
)
static
static void i386obsd_collect_uthread ( const struct regcache regcache,
int  regnum,
CORE_ADDR  addr 
)
static
static void i386obsd_elf_init_abi ( struct gdbarch_info  info,
struct gdbarch gdbarch 
)
static
static void i386obsd_init_abi ( struct gdbarch_info  info,
struct gdbarch gdbarch 
)
static
static int i386obsd_sigtramp_p ( struct frame_info this_frame)
static
static void i386obsd_supply_uthread ( struct regcache regcache,
int  regnum,
CORE_ADDR  addr 
)
static
static struct trad_frame_cache* i386obsd_trapframe_cache ( struct frame_info this_frame,
void **  this_cache 
)
static
static struct value* i386obsd_trapframe_prev_register ( struct frame_info this_frame,
void **  this_cache,
int  regnum 
)
static

Definition at line 397 of file i386obsd-tdep.c.

References i386obsd_trapframe_cache(), and trad_frame_get_register().

static int i386obsd_trapframe_sniffer ( const struct frame_unwind self,
struct frame_info this_frame,
void **  this_prologue_cache 
)
static
static void i386obsd_trapframe_this_id ( struct frame_info this_frame,
void **  this_cache,
struct frame_id this_id 
)
static

Definition at line 387 of file i386obsd-tdep.c.

References i386obsd_trapframe_cache(), and trad_frame_get_id().

Variable Documentation

const struct regset i386obsd_aout_gregset
static
Initial value:
=
{
}
static void i386obsd_aout_supply_regset(const struct regset *regset, struct regcache *regcache, int regnum, const void *regs, size_t len)

Definition at line 152 of file i386obsd-tdep.c.

const int i386obsd_page_size = 4096
static

Definition at line 53 of file i386obsd-tdep.c.

Referenced by i386obsd_sigtramp_p().

int i386obsd_r_reg_offset[]
static
Initial value:
=
{
0 * 4,
1 * 4,
2 * 4,
3 * 4,
4 * 4,
5 * 4,
6 * 4,
7 * 4,
8 * 4,
9 * 4,
10 * 4,
11 * 4,
12 * 4,
13 * 4,
14 * 4,
15 * 4
}

Definition at line 117 of file i386obsd-tdep.c.

Referenced by i386obsd_init_abi().

int i386obsd_sc_reg_offset[I386_NUM_GREGS]
Initial value:
=
{
10 * 4,
9 * 4,
8 * 4,
7 * 4,
14 * 4,
6 * 4,
5 * 4,
4 * 4,
11 * 4,
13 * 4,
12 * 4,
15 * 4,
3 * 4,
2 * 4,
1 * 4,
0 * 4
}

Definition at line 178 of file i386obsd-tdep.c.

Referenced by i386obsd_init_abi().

const int i386obsd_sigreturn_offset[]
static
Initial value:
= {
0x0a,
0x14,
0x3a,
-1
}

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

Referenced by i386obsd_sigtramp_p().

CORE_ADDR i386obsd_sigtramp_end_addr = 0xbfbfdff0

Definition at line 175 of file i386obsd-tdep.c.

Referenced by _initialize_i386obsd_nat(), and i386obsd_init_abi().

CORE_ADDR i386obsd_sigtramp_start_addr = 0xbfbfdf20

Definition at line 174 of file i386obsd-tdep.c.

Referenced by _initialize_i386obsd_nat(), and i386obsd_init_abi().

int i386obsd_tf_reg_offset[]
static
Initial value:
=
{
10 * 4,
9 * 4,
8 * 4,
7 * 4,
-1,
6 * 4,
5 * 4,
4 * 4,
13 * 4,
15 * 4,
14 * 4,
-1,
3 * 4,
2 * 4,
0 * 4,
1 * 4
}

Definition at line 319 of file i386obsd-tdep.c.

Referenced by i386obsd_trapframe_cache().

const struct frame_unwind i386obsd_trapframe_unwind
static
Initial value:
= {
NULL,
}
static int i386obsd_trapframe_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_prologue_cache)
static void i386obsd_trapframe_this_id(struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
Definition: frame-unwind.c:180
static struct value * i386obsd_trapframe_prev_register(struct frame_info *this_frame, void **this_cache, int regnum)

Definition at line 427 of file i386obsd-tdep.c.

int i386obsd_uthread_reg_offset[]
static
Initial value:
=
{
11 * 4,
10 * 4,
9 * 4,
8 * 4,
-1,
6 * 4,
5 * 4,
4 * 4,
12 * 4,
-1,
13 * 4,
-1,
3 * 4,
2 * 4,
1 * 4,
0 * 4
}

Definition at line 199 of file i386obsd-tdep.c.

Referenced by i386obsd_collect_uthread(), and i386obsd_supply_uthread().