| Index: gdb/spu-multiarch.c
|
| diff --git a/gdb/spu-multiarch.c b/gdb/spu-multiarch.c
|
| index 8d4ef570dcad725197a20e5e771ff6c747ebf6d4..f584a9ad58b4f9f902dc7fe7ca90944370dd52ff 100644
|
| --- a/gdb/spu-multiarch.c
|
| +++ b/gdb/spu-multiarch.c
|
| @@ -1,5 +1,5 @@
|
| /* Cell SPU GNU/Linux multi-architecture debugging support.
|
| - Copyright (C) 2009-2012 Free Software Foundation, Inc.
|
| + Copyright (C) 2009-2013 Free Software Foundation, Inc.
|
|
|
| Contributed by Ulrich Weigand <uweigand@de.ibm.com>.
|
|
|
| @@ -21,7 +21,7 @@
|
| #include "defs.h"
|
| #include "gdbcore.h"
|
| #include "gdbcmd.h"
|
| -#include "gdb_string.h"
|
| +#include <string.h>
|
| #include "gdb_assert.h"
|
| #include "arch-utils.h"
|
| #include "observer.h"
|
| @@ -57,19 +57,19 @@ static int spu_nr_solib;
|
| static int
|
| parse_spufs_run (ptid_t ptid, int *fd, CORE_ADDR *addr)
|
| {
|
| - enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch);
|
| + enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ());
|
| struct gdbarch_tdep *tdep;
|
| struct regcache *regcache;
|
| - char buf[4];
|
| + gdb_byte buf[4];
|
| ULONGEST regval;
|
|
|
| /* If we're not on PPU, there's nothing to detect. */
|
| - if (gdbarch_bfd_arch_info (target_gdbarch)->arch != bfd_arch_powerpc)
|
| + if (gdbarch_bfd_arch_info (target_gdbarch ())->arch != bfd_arch_powerpc)
|
| return 0;
|
|
|
| /* Get PPU-side registers. */
|
| - regcache = get_thread_arch_regcache (ptid, target_gdbarch);
|
| - tdep = gdbarch_tdep (target_gdbarch);
|
| + regcache = get_thread_arch_regcache (ptid, target_gdbarch ());
|
| + tdep = gdbarch_tdep (target_gdbarch ());
|
|
|
| /* Fetch instruction preceding current NIP. */
|
| if (target_read_memory (regcache_read_pc (regcache) - 4, buf, 4) != 0)
|
| @@ -113,7 +113,7 @@ spu_thread_architecture (struct target_ops *ops, ptid_t ptid)
|
| if (parse_spufs_run (ptid, &spufs_fd, &spufs_addr))
|
| return spu_gdbarch (spufs_fd);
|
|
|
| - return target_gdbarch;
|
| + return target_gdbarch ();
|
| }
|
|
|
| /* Override the to_region_ok_for_hw_watchpoint routine. */
|
| @@ -163,7 +163,7 @@ spu_fetch_registers (struct target_ops *ops,
|
| /* The ID register holds the spufs file handle. */
|
| if (regno == -1 || regno == SPU_ID_REGNUM)
|
| {
|
| - char buf[4];
|
| + gdb_byte buf[4];
|
| store_unsigned_integer (buf, 4, byte_order, spufs_fd);
|
| regcache_raw_supply (regcache, SPU_ID_REGNUM, buf);
|
| }
|
| @@ -171,7 +171,7 @@ spu_fetch_registers (struct target_ops *ops,
|
| /* The NPC register is found in PPC memory at SPUFS_ADDR. */
|
| if (regno == -1 || regno == SPU_PC_REGNUM)
|
| {
|
| - char buf[4];
|
| + gdb_byte buf[4];
|
|
|
| if (target_read (ops_beneath, TARGET_OBJECT_MEMORY, NULL,
|
| buf, spufs_addr, sizeof buf) == sizeof buf)
|
| @@ -181,7 +181,8 @@ spu_fetch_registers (struct target_ops *ops,
|
| /* The GPRs are found in the "regs" spufs file. */
|
| if (regno == -1 || (regno >= 0 && regno < SPU_NUM_GPRS))
|
| {
|
| - char buf[16 * SPU_NUM_GPRS], annex[32];
|
| + gdb_byte buf[16 * SPU_NUM_GPRS];
|
| + char annex[32];
|
| int i;
|
|
|
| xsnprintf (annex, sizeof annex, "%d/regs", spufs_fd);
|
| @@ -220,7 +221,7 @@ spu_store_registers (struct target_ops *ops,
|
| /* The NPC register is found in PPC memory at SPUFS_ADDR. */
|
| if (regno == -1 || regno == SPU_PC_REGNUM)
|
| {
|
| - char buf[4];
|
| + gdb_byte buf[4];
|
| regcache_raw_collect (regcache, SPU_PC_REGNUM, buf);
|
|
|
| target_write (ops_beneath, TARGET_OBJECT_MEMORY, NULL,
|
| @@ -230,7 +231,8 @@ spu_store_registers (struct target_ops *ops,
|
| /* The GPRs are found in the "regs" spufs file. */
|
| if (regno == -1 || (regno >= 0 && regno < SPU_NUM_GPRS))
|
| {
|
| - char buf[16 * SPU_NUM_GPRS], annex[32];
|
| + gdb_byte buf[16 * SPU_NUM_GPRS];
|
| + char annex[32];
|
| int i;
|
|
|
| for (i = 0; i < SPU_NUM_GPRS; i++)
|
| @@ -283,7 +285,7 @@ spu_xfer_partial (struct target_ops *ops, enum target_object object,
|
| 0, sizeof buf) <= 0)
|
| return ret;
|
|
|
| - lslr = strtoulst (buf, NULL, 16);
|
| + lslr = strtoulst ((char *) buf, NULL, 16);
|
| return ops_beneath->to_xfer_partial (ops_beneath, TARGET_OBJECT_SPU,
|
| mem_annex, readbuf, writebuf,
|
| addr & lslr, len);
|
| @@ -408,7 +410,7 @@ _initialize_spu_multiarch (void)
|
| {
|
| /* Install ourselves on the target stack. */
|
| init_spu_ops ();
|
| - add_target (&spu_ops);
|
| + complete_target_initialization (&spu_ops);
|
|
|
| /* Install observers to watch for SPU objects. */
|
| observer_attach_inferior_created (spu_multiarch_inferior_created);
|
|
|