GDB (xrefs)
Macros | Functions | Variables
/tmp/gdb-7.10/gdb/ppc64-tdep.c File Reference
#include "defs.h"
#include "frame.h"
#include "gdbcore.h"
#include "infrun.h"
#include "ppc-tdep.h"
#include "ppc64-tdep.h"
#include "elf-bfd.h"

Go to the source code of this file.

Macros

#define insn_d(opcd, rts, ra, d)
 
#define insn_ds(opcd, rts, ra, d, xo)
 
#define insn_xfx(opcd, rts, spr, xo)
 
#define MAX(a, b)   ((a) > (b) ? (a) : (b))
 

Functions

static CORE_ADDR ppc64_plt_entry_point (struct gdbarch *gdbarch, CORE_ADDR plt)
 
static CORE_ADDR ppc64_standard_linkage1_target (struct frame_info *frame, CORE_ADDR pc, unsigned int *insn)
 
static CORE_ADDR ppc64_standard_linkage2_target (struct frame_info *frame, CORE_ADDR pc, unsigned int *insn)
 
static CORE_ADDR ppc64_standard_linkage3_target (struct frame_info *frame, CORE_ADDR pc, unsigned int *insn)
 
static CORE_ADDR ppc64_standard_linkage4_target (struct frame_info *frame, CORE_ADDR pc, unsigned int *insn)
 
CORE_ADDR ppc64_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc)
 
CORE_ADDR ppc64_convert_from_func_ptr_addr (struct gdbarch *gdbarch, CORE_ADDR addr, struct target_ops *targ)
 
void ppc64_elf_make_msymbol_special (asymbol *sym, struct minimal_symbol *msym)
 

Variables

static struct ppc_insn_pattern ppc64_standard_linkage1 []
 
static struct ppc_insn_pattern ppc64_standard_linkage2 []
 
static struct ppc_insn_pattern ppc64_standard_linkage3 []
 
static struct ppc_insn_pattern ppc64_standard_linkage4 []
 
static struct ppc_insn_pattern ppc64_standard_linkage5 []
 
static struct ppc_insn_pattern ppc64_standard_linkage6 []
 
static struct ppc_insn_pattern ppc64_standard_linkage7 []
 
static struct ppc_insn_pattern ppc64_standard_linkage8 []
 

Macro Definition Documentation

#define insn_d (   opcd,
  rts,
  ra,
 
)
Value:
((((opcd) & 0x3f) << 26) \
| (((rts) & 0x1f) << 21) \
| (((ra) & 0x1f) << 16) \
| ((d) & 0xffff))

Definition at line 32 of file ppc64-tdep.c.

#define insn_ds (   opcd,
  rts,
  ra,
  d,
  xo 
)
Value:
((((opcd) & 0x3f) << 26) \
| (((rts) & 0x1f) << 21) \
| (((ra) & 0x1f) << 16) \
| ((d) & 0xfffc) \
| ((xo) & 0x3))

Definition at line 38 of file ppc64-tdep.c.

#define insn_xfx (   opcd,
  rts,
  spr,
  xo 
)
Value:
((((opcd) & 0x3f) << 26) \
| (((rts) & 0x1f) << 21) \
| (((spr) & 0x1f) << 16) \
| (((spr) & 0x3e0) << 6) \
| (((xo) & 0x3ff) << 1))

Definition at line 45 of file ppc64-tdep.c.

#define MAX (   a,
 
)    ((a) > (b) ? (a) : (b))

Function Documentation

CORE_ADDR ppc64_convert_from_func_ptr_addr ( struct gdbarch gdbarch,
CORE_ADDR  addr,
struct target_ops targ 
)
void ppc64_elf_make_msymbol_special ( asymbol *  sym,
struct minimal_symbol msym 
)

Definition at line 609 of file ppc64-tdep.c.

References SET_MSYMBOL_SIZE.

Referenced by ppcfbsd_init_abi().

static CORE_ADDR ppc64_plt_entry_point ( struct gdbarch gdbarch,
CORE_ADDR  plt 
)
static
CORE_ADDR ppc64_skip_trampoline_code ( struct frame_info frame,
CORE_ADDR  pc 
)
static CORE_ADDR ppc64_standard_linkage1_target ( struct frame_info frame,
CORE_ADDR  pc,
unsigned int insn 
)
static
static CORE_ADDR ppc64_standard_linkage2_target ( struct frame_info frame,
CORE_ADDR  pc,
unsigned int insn 
)
static
static CORE_ADDR ppc64_standard_linkage3_target ( struct frame_info frame,
CORE_ADDR  pc,
unsigned int insn 
)
static
static CORE_ADDR ppc64_standard_linkage4_target ( struct frame_info frame,
CORE_ADDR  pc,
unsigned int insn 
)
static

Variable Documentation

struct ppc_insn_pattern ppc64_standard_linkage1[]
static

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

struct ppc_insn_pattern ppc64_standard_linkage2[]
static

Definition at line 107 of file ppc64-tdep.c.

struct ppc_insn_pattern ppc64_standard_linkage3[]
static

Definition at line 150 of file ppc64-tdep.c.

struct ppc_insn_pattern ppc64_standard_linkage4[]
static

Definition at line 189 of file ppc64-tdep.c.

struct ppc_insn_pattern ppc64_standard_linkage5[]
static

Definition at line 231 of file ppc64-tdep.c.

struct ppc_insn_pattern ppc64_standard_linkage6[]
static
Initial value:
=
{
{ -1, insn_ds (62, 2, 1, 24, 0), 1 },
{ insn_d (-1, -1, -1, 0), insn_d (15, 11, 2, 0), 0 },
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 12, 11, 0, 0), 0 },
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 12, 9, 467), 0 },
{ -1, 0x4e800420, 0 },
{ 0, 0, 0 }
}
#define insn_ds(opcd, rts, ra, d, xo)
Definition: ppc64-tdep.c:38
#define insn_xfx(opcd, rts, spr, xo)
Definition: ppc64-tdep.c:45
#define insn_d(opcd, rts, ra, d)
Definition: ppc64-tdep.c:32

Definition at line 268 of file ppc64-tdep.c.

struct ppc_insn_pattern ppc64_standard_linkage7[]
static
Initial value:
=
{
{ -1, insn_ds (62, 2, 1, 24, 0), 1 },
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 12, 2, 0, 0), 0 },
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 12, 9, 467), 0 },
{ -1, 0x4e800420, 0 },
{ 0, 0, 0 }
}
#define insn_ds(opcd, rts, ra, d, xo)
Definition: ppc64-tdep.c:38
#define insn_xfx(opcd, rts, spr, xo)
Definition: ppc64-tdep.c:45

Definition at line 290 of file ppc64-tdep.c.

struct ppc_insn_pattern ppc64_standard_linkage8[]
static
Initial value:
=
{
{ -1, insn_ds (62, 2, 1, 24, 0), 1 },
{ insn_d (-1, -1, -1, 0), insn_d (15, 12, 2, 0), 0 },
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 12, 12, 0, 0), 0 },
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 12, 9, 467), 0 },
{ -1, 0x4e800420, 0 },
{ 0, 0, 0 }
}
#define insn_ds(opcd, rts, ra, d, xo)
Definition: ppc64-tdep.c:38
#define insn_xfx(opcd, rts, spr, xo)
Definition: ppc64-tdep.c:45
#define insn_d(opcd, rts, ra, d)
Definition: ppc64-tdep.c:32

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