GDB (xrefs)
|
#include "defs.h"
#include "gdbcore.h"
#include "gdbcmd.h"
#include "gdb_string.h"
#include "gdb_assert.h"
#include "arch-utils.h"
#include "observer.h"
#include "inferior.h"
#include "regcache.h"
#include "symfile.h"
#include "objfiles.h"
#include "solib.h"
#include "solist.h"
#include "ppc-tdep.h"
#include "ppc-linux-tdep.h"
#include "spu-tdep.h"
Go to the source code of this file.
#define INSTR_SC 0x44000002 |
Definition at line 51 of file spu-multiarch.c.
Referenced by parse_spufs_run().
#define NR_spu_run 0x0116 |
Definition at line 52 of file spu-multiarch.c.
Referenced by parse_spufs_run().
#define spu_standalone_p | ( | ) |
(symfile_objfile && symfile_objfile->obfd \ && bfd_get_arch (symfile_objfile->obfd) == bfd_arch_spu)
Definition at line 46 of file spu-multiarch.c.
Referenced by spu_multiarch_inferior_created(), spu_multiarch_solib_loaded(), and spu_multiarch_solib_unloaded().
void _initialize_spu_multiarch | ( | void | ) |
Definition at line 409 of file spu-multiarch.c.
References _initialize_spu_multiarch, complete_target_initialization(), init_spu_ops(), observer_attach_inferior_created(), observer_attach_solib_loaded(), observer_attach_solib_unloaded(), spu_multiarch_inferior_created(), spu_multiarch_solib_loaded(), spu_multiarch_solib_unloaded(), and spu_ops.
static void init_spu_ops | ( | void | ) | [static] |
Definition at line 389 of file spu-multiarch.c.
References arch_stratum, OPS_MAGIC, spu_fetch_registers(), spu_mourn_inferior(), spu_ops, spu_region_ok_for_hw_watchpoint(), spu_search_memory(), spu_store_registers(), spu_thread_architecture(), spu_xfer_partial(), target_ops::to_doc, target_ops::to_fetch_registers, target_ops::to_longname, target_ops::to_magic, target_ops::to_mourn_inferior, target_ops::to_region_ok_for_hw_watchpoint, target_ops::to_search_memory, target_ops::to_shortname, target_ops::to_store_registers, target_ops::to_stratum, target_ops::to_thread_architecture, and target_ops::to_xfer_partial.
Referenced by _initialize_spu_multiarch().
static int parse_spufs_run | ( | ptid_t | ptid, |
int * | fd, | ||
CORE_ADDR * | addr | ||
) | [static] |
Definition at line 58 of file spu-multiarch.c.
References extract_unsigned_integer(), gdbarch_bfd_arch_info(), gdbarch_byte_order(), gdbarch_tdep(), get_thread_arch_regcache(), INSTR_SC, int, NR_spu_run, gdbarch_tdep::ppc_gp0_regnum, PPC_ORIG_R3_REGNUM, regcache_cooked_read_unsigned(), regcache_read_pc(), target_gdbarch(), target_read_memory(), and ULONGEST.
Referenced by spu_fetch_registers(), spu_store_registers(), and spu_thread_architecture().
static void spu_fetch_registers | ( | struct target_ops * | ops, |
struct regcache * | regcache, | ||
int | regno | ||
) | [static] |
Definition at line 139 of file spu-multiarch.c.
References gdbarch::byte_order, find_target_beneath(), gdb_assert, gdbarch_bfd_arch_info(), gdbarch_byte_order(), get_regcache_arch(), inferior_ptid, parse_spufs_run(), regcache_raw_supply(), SPU_ID_REGNUM, SPU_NUM_GPRS, SPU_PC_REGNUM, store_unsigned_integer(), TARGET_OBJECT_MEMORY, TARGET_OBJECT_SPU, target_read(), target_ops::to_fetch_registers, and xsnprintf().
Referenced by init_spu_ops().
static struct gdbarch* spu_gdbarch | ( | int | spufs_fd | ) | [static, read] |
Definition at line 95 of file spu-multiarch.c.
References gdbarch_info::bfd_arch_info, gdbarch_info::byte_order, GDB_OSABI_LINUX, gdbarch_find_by_info(), gdbarch_info_init(), gdbarch_info::osabi, and gdbarch_info::tdep_info.
Referenced by spu_multiarch_activate(), and spu_thread_architecture().
static void spu_mourn_inferior | ( | struct target_ops * | ops | ) | [static] |
Definition at line 374 of file spu-multiarch.c.
References find_target_beneath(), gdb_assert, spu_multiarch_deactivate(), and target_ops::to_mourn_inferior.
Referenced by init_spu_ops().
static void spu_multiarch_activate | ( | void | ) | [static] |
Definition at line 326 of file spu-multiarch.c.
References push_target(), registers_changed(), spu_gdbarch(), and spu_ops.
Referenced by spu_multiarch_inferior_created(), and spu_multiarch_solib_loaded().
static void spu_multiarch_deactivate | ( | void | ) | [static] |
Definition at line 340 of file spu-multiarch.c.
References registers_changed(), spu_ops, and unpush_target().
Referenced by spu_mourn_inferior(), and spu_multiarch_solib_unloaded().
static void spu_multiarch_inferior_created | ( | struct target_ops * | ops, |
int | from_tty | ||
) | [static] |
Definition at line 349 of file spu-multiarch.c.
References spu_multiarch_activate(), and spu_standalone_p.
Referenced by _initialize_spu_multiarch().
static void spu_multiarch_solib_loaded | ( | struct so_list * | so | ) | [static] |
Definition at line 356 of file spu-multiarch.c.
References so_list::abfd, spu_multiarch_activate(), spu_nr_solib, and spu_standalone_p.
Referenced by _initialize_spu_multiarch().
static void spu_multiarch_solib_unloaded | ( | struct so_list * | so | ) | [static] |
Definition at line 365 of file spu-multiarch.c.
References so_list::abfd, spu_multiarch_deactivate(), spu_nr_solib, and spu_standalone_p.
Referenced by _initialize_spu_multiarch().
static int spu_region_ok_for_hw_watchpoint | ( | CORE_ADDR | addr, |
int | len | ||
) | [static] |
Definition at line 121 of file spu-multiarch.c.
References find_target_beneath(), spu_ops, SPUADDR_SPU, and target_ops::to_region_ok_for_hw_watchpoint.
Referenced by init_spu_ops().
static int spu_search_memory | ( | struct target_ops * | ops, |
CORE_ADDR | start_addr, | ||
ULONGEST | search_space_len, | ||
const gdb_byte * | pattern, | ||
ULONGEST | pattern_len, | ||
CORE_ADDR * | found_addrp | ||
) | [static] |
Definition at line 301 of file spu-multiarch.c.
References find_target_beneath(), simple_search_memory(), SPUADDR_SPU, and target_ops::to_search_memory.
Referenced by init_spu_ops().
static void spu_store_registers | ( | struct target_ops * | ops, |
struct regcache * | regcache, | ||
int | regno | ||
) | [static] |
Definition at line 198 of file spu-multiarch.c.
References find_target_beneath(), gdb_assert, gdbarch_bfd_arch_info(), get_regcache_arch(), inferior_ptid, parse_spufs_run(), regcache_raw_collect(), SPU_NUM_GPRS, SPU_PC_REGNUM, TARGET_OBJECT_MEMORY, TARGET_OBJECT_SPU, target_write(), target_ops::to_fetch_registers, target_ops::to_store_registers, and xsnprintf().
Referenced by init_spu_ops().
static struct gdbarch* spu_thread_architecture | ( | struct target_ops * | ops, |
ptid_t | ptid | ||
) | [static, read] |
Definition at line 108 of file spu-multiarch.c.
References parse_spufs_run(), spu_gdbarch(), and target_gdbarch().
Referenced by init_spu_ops().
static LONGEST spu_xfer_partial | ( | struct target_ops * | ops, |
enum target_object | object, | ||
const char * | annex, | ||
gdb_byte * | readbuf, | ||
const gdb_byte * | writebuf, | ||
ULONGEST | offset, | ||
LONGEST | len | ||
) | [static] |
Definition at line 249 of file spu-multiarch.c.
References find_target_beneath(), gdb_assert, LONGEST, memset(), SPUADDR_ADDR, SPUADDR_SPU, strtoulst(), TARGET_OBJECT_MEMORY, TARGET_OBJECT_SPU, target_ops::to_xfer_partial, ULONGEST, and xsnprintf().
Referenced by init_spu_ops().
Referenced by _initialize_spu_multiarch(), and initialize_all_files().
int spu_nr_solib [static] |
Definition at line 43 of file spu-multiarch.c.
Referenced by spu_multiarch_solib_loaded(), and spu_multiarch_solib_unloaded().
struct target_ops spu_ops [static] |
Definition at line 40 of file spu-multiarch.c.
Referenced by _initialize_spu_multiarch(), init_spu_ops(), spu_multiarch_activate(), spu_multiarch_deactivate(), and spu_region_ok_for_hw_watchpoint().