GDB (xrefs)
Functions | Variables
/tmp/gdb-7.10/gdb/i386fbsd-tdep.c File Reference
#include "defs.h"
#include "arch-utils.h"
#include "gdbcore.h"
#include "osabi.h"
#include "regcache.h"
#include "regset.h"
#include "i386fbsd-tdep.h"
#include "x86-xstate.h"
#include "i386-tdep.h"
#include "i387-tdep.h"
#include "bsd-uthread.h"
#include "fbsd-tdep.h"
#include "solib-svr4.h"

Go to the source code of this file.

Functions

 gdb_static_assert (sizeof i386fbsd_sigtramp_start==sizeof i386fbsd_freebsd4_sigtramp_start)
 
 gdb_static_assert (sizeof i386fbsd_sigtramp_middle > sizeof i386fbsd_sigtramp_start)
 
static int i386fbsd_sigtramp_p (struct frame_info *this_frame)
 
uint64_t i386fbsd_core_read_xcr0 (bfd *abfd)
 
static const struct target_desci386fbsd_core_read_description (struct gdbarch *gdbarch, struct target_ops *target, bfd *abfd)
 
static void i386fbsd_supply_xstateregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *xstateregs, size_t len)
 
static void i386fbsd_collect_xstateregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *xstateregs, size_t len)
 
static void i386fbsd_iterate_over_regset_sections (struct gdbarch *gdbarch, iterate_over_regset_sections_cb *cb, void *cb_data, const struct regcache *regcache)
 
static void i386fbsd_supply_uthread (struct regcache *regcache, int regnum, CORE_ADDR addr)
 
static void i386fbsd_collect_uthread (const struct regcache *regcache, int regnum, CORE_ADDR addr)
 
static void i386fbsdaout_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
static void i386fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
static void i386fbsd4_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
void _initialize_i386fbsd_tdep (void)
 

Variables

static const gdb_byte i386fbsd_sigtramp_start []
 
static const gdb_byte i386fbsd_sigtramp_middle []
 
static const gdb_byte i386fbsd_sigtramp_end []
 
static const gdb_byte i386fbsd_freebsd4_sigtramp_start []
 
static const gdb_byte i386fbsd_freebsd4_sigtramp_middle []
 
static const gdb_byte i386fbsd_freebsd4_sigtramp_end []
 
static const gdb_byte i386fbsd_osigtramp_start []
 
static const gdb_byte i386fbsd_osigtramp_middle []
 
static const gdb_byte i386fbsd_osigtramp_end []
 
static int i386fbsd_r_reg_offset []
 
CORE_ADDR i386fbsd_sigtramp_start_addr
 
CORE_ADDR i386fbsd_sigtramp_end_addr
 
int i386fbsd_sc_reg_offset []
 
static int i386fbsd_jmp_buf_reg_offset []
 
static const struct regset i386fbsd_xstateregset
 
static int i386fbsd4_r_reg_offset []
 
int i386fbsd4_sc_reg_offset []
 

Function Documentation

void _initialize_i386fbsd_tdep ( void  )
gdb_static_assert ( sizeof  i386fbsd_sigtramp_start = =sizeof i386fbsd_freebsd4_sigtramp_start)
gdb_static_assert ( sizeof  i386fbsd_sigtramp_middle,
sizeof  i386fbsd_sigtramp_start 
)
static void i386fbsd4_init_abi ( struct gdbarch_info  info,
struct gdbarch gdbarch 
)
static
static void i386fbsd_collect_uthread ( const struct regcache regcache,
int  regnum,
CORE_ADDR  addr 
)
static
static void i386fbsd_collect_xstateregset ( const struct regset regset,
const struct regcache regcache,
int  regnum,
void *  xstateregs,
size_t  len 
)
static

Definition at line 301 of file i386fbsd-tdep.c.

References i387_collect_xsave().

static const struct target_desc* i386fbsd_core_read_description ( struct gdbarch gdbarch,
struct target_ops target,
bfd *  abfd 
)
static

Definition at line 281 of file i386fbsd-tdep.c.

References i386_target_description(), and i386fbsd_core_read_xcr0().

Referenced by i386fbsd4_init_abi().

uint64_t i386fbsd_core_read_xcr0 ( bfd *  abfd)
static void i386fbsd_init_abi ( struct gdbarch_info  info,
struct gdbarch gdbarch 
)
static
static void i386fbsd_iterate_over_regset_sections ( struct gdbarch gdbarch,
iterate_over_regset_sections_cb cb,
void *  cb_data,
const struct regcache regcache 
)
static
static int i386fbsd_sigtramp_p ( struct frame_info this_frame)
static
static void i386fbsd_supply_uthread ( struct regcache regcache,
int  regnum,
CORE_ADDR  addr 
)
static
static void i386fbsd_supply_xstateregset ( const struct regset regset,
struct regcache regcache,
int  regnum,
const void *  xstateregs,
size_t  len 
)
static

Definition at line 291 of file i386fbsd-tdep.c.

References i387_supply_xsave().

static void i386fbsdaout_init_abi ( struct gdbarch_info  info,
struct gdbarch gdbarch 
)
static

Variable Documentation

int i386fbsd4_r_reg_offset[]
static
Initial value:
=
{
10 * 4, 9 * 4, 8 * 4, 7 * 4,
16 * 4, 5 * 4,
4 * 4, 3 * 4,
13 * 4, 15 * 4,
14 * 4, 17 * 4,
2 * 4, 1 * 4, 0 * 4, 18 * 4
}

Definition at line 425 of file i386fbsd-tdep.c.

Referenced by i386fbsd4_init_abi().

int i386fbsd4_sc_reg_offset[]
Initial value:
=
{
20 + 11 * 4,
20 + 10 * 4,
20 + 9 * 4,
20 + 8 * 4,
20 + 17 * 4,
20 + 6 * 4,
20 + 5 * 4,
20 + 4 * 4,
20 + 14 * 4,
20 + 16 * 4,
20 + 15 * 4,
20 + 18 * 4,
20 + 3 * 4,
20 + 2 * 4,
20 + 1 * 4,
20 + 0 * 4
}

Definition at line 436 of file i386fbsd-tdep.c.

Referenced by i386fbsd4_init_abi().

const gdb_byte i386fbsd_freebsd4_sigtramp_end[]
static
Initial value:
=
{
0xb8, 0x58, 0x01, 0x00, 0x00,
0x50,
0xcd, 0x80
}

Definition at line 82 of file i386fbsd-tdep.c.

Referenced by i386fbsd_sigtramp_p().

const gdb_byte i386fbsd_freebsd4_sigtramp_middle[]
static
Initial value:
=
{
0xf7, 0x40, 0x54, 0x00, 0x00, 0x02, 0x00,
0x75, 0x03,
0x8e, 0x68, 0x14
}

Definition at line 74 of file i386fbsd-tdep.c.

Referenced by i386fbsd_sigtramp_p().

const gdb_byte i386fbsd_freebsd4_sigtramp_start[]
static
Initial value:
=
{
0x8d, 0x44, 0x24, 0x14,
0x50
}

Definition at line 68 of file i386fbsd-tdep.c.

Referenced by i386fbsd_sigtramp_p().

int i386fbsd_jmp_buf_reg_offset[]
static
Initial value:
=
{
-1,
-1,
-1,
1 * 4,
2 * 4,
3 * 4,
4 * 4,
5 * 4,
0 * 4
}

Definition at line 228 of file i386fbsd-tdep.c.

Referenced by i386fbsd_collect_uthread(), and i386fbsd_supply_uthread().

const gdb_byte i386fbsd_osigtramp_end[]
static
Initial value:
=
{
0xb8, 0x67, 0x00, 0x00, 0x00,
0x50,
0xcd, 0x80
}

Definition at line 103 of file i386fbsd-tdep.c.

Referenced by i386fbsd_sigtramp_p().

const gdb_byte i386fbsd_osigtramp_middle[]
static
Initial value:
=
{
0xf7, 0x40, 0x18, 0x00, 0x00, 0x02, 0x00,
0x75, 0x03,
0x8e, 0x68, 0x44
}

Definition at line 95 of file i386fbsd-tdep.c.

Referenced by i386fbsd_sigtramp_p().

const gdb_byte i386fbsd_osigtramp_start[]
static
Initial value:
=
{
0x8d, 0x44, 0x24, 0x14,
0x50
}

Definition at line 89 of file i386fbsd-tdep.c.

Referenced by i386fbsd_sigtramp_p().

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

Definition at line 192 of file i386fbsd-tdep.c.

Referenced by i386fbsdaout_init_abi().

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

Definition at line 207 of file i386fbsd-tdep.c.

Referenced by i386fbsdaout_init_abi().

const gdb_byte i386fbsd_sigtramp_end[]
static
Initial value:
=
{
0xb8, 0xa1, 0x01, 0x00, 0x00,
0x50,
0xcd, 0x80
}

Definition at line 61 of file i386fbsd-tdep.c.

Referenced by i386fbsd_sigtramp_p().

CORE_ADDR i386fbsd_sigtramp_end_addr

Definition at line 204 of file i386fbsd-tdep.c.

Referenced by _initialize_i386fbsd_nat(), and i386fbsdaout_init_abi().

const gdb_byte i386fbsd_sigtramp_middle[]
static
Initial value:
=
{
0xf7, 0x40, 0x54, 0x00, 0x00, 0x02, 0x00,
0x75, 0x03,
0x8e, 0x68, 0x14
}

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

Referenced by i386fbsd_sigtramp_p().

const gdb_byte i386fbsd_sigtramp_start[]
static
Initial value:
=
{
0x8d, 0x44, 0x24, 0x20,
0x50
}

Definition at line 47 of file i386fbsd-tdep.c.

Referenced by i386fbsd_sigtramp_p().

CORE_ADDR i386fbsd_sigtramp_start_addr

Definition at line 203 of file i386fbsd-tdep.c.

Referenced by _initialize_i386fbsd_nat(), and i386fbsdaout_init_abi().

const struct regset i386fbsd_xstateregset
static
Initial value:
=
{
NULL,
}
static void i386fbsd_collect_xstateregset(const struct regset *regset, const struct regcache *regcache, int regnum, void *xstateregs, size_t len)
static void i386fbsd_supply_xstateregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *xstateregs, size_t len)

Definition at line 310 of file i386fbsd-tdep.c.