From 4179a4876749849c07b51c418504b3a0f753377c Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Mon, 7 May 2007 22:58:32 +0000 Subject: [PATCH] * spu-linux-nat.c (fetch_ppc_register, fetch_ppc_memory_1, store_ppc_memory_1, fetch_ppc_memory, store_ppc_memory, parse_spufs_run, spu_bfd_iovec_pread, spu_bfd_open, spu_symbol_file_add_from_memory, spu_child_post_startup_inferior, spu_child_post_attach, spu_fetch_inferior_registers, spu_store_inferior_registers, spu_xfer_partial): Store PPE-side memory addresses as ULONGEST, not CORE_ADDR. --- gdb/ChangeLog | 10 ++++++++++ gdb/spu-linux-nat.c | 40 ++++++++++++++++++++-------------------- 2 files changed, 30 insertions(+), 20 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2984e421bf5..31c1d7a98fd 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,13 @@ +2007-05-07 Ulrich Weigand + + * spu-linux-nat.c (fetch_ppc_register, fetch_ppc_memory_1, + store_ppc_memory_1, fetch_ppc_memory, store_ppc_memory, + parse_spufs_run, spu_bfd_iovec_pread, spu_bfd_open, + spu_symbol_file_add_from_memory, spu_child_post_startup_inferior, + spu_child_post_attach, spu_fetch_inferior_registers, + spu_store_inferior_registers, spu_xfer_partial): Store PPE-side + memory addresses as ULONGEST, not CORE_ADDR. + 2007-05-07 Ulrich Weigand * gdbarch.sh: Add skip_permanent_breakpoint callback. diff --git a/gdb/spu-linux-nat.c b/gdb/spu-linux-nat.c index 514fd7fdd88..3fbc9a1d8db 100644 --- a/gdb/spu-linux-nat.c +++ b/gdb/spu-linux-nat.c @@ -43,7 +43,7 @@ /* Fetch PPU register REGNO. */ -static CORE_ADDR +static ULONGEST fetch_ppc_register (int regno) { PTRACE_TYPE_RET res; @@ -67,7 +67,7 @@ fetch_ppc_register (int regno) ptrace (PPC_PTRACE_PEEKUSR_3264, tid, (PTRACE_TYPE_ARG3) (regno * 8 + 4), buf + 4); if (errno == 0) - return (CORE_ADDR) *(unsigned long long *)buf; + return (ULONGEST) *(unsigned long long *)buf; } #endif @@ -81,12 +81,12 @@ fetch_ppc_register (int regno) perror_with_name (_(mess)); } - return (CORE_ADDR) (unsigned long) res; + return (ULONGEST) (unsigned long) res; } /* Fetch WORD from PPU memory at (aligned) MEMADDR in thread TID. */ static int -fetch_ppc_memory_1 (int tid, CORE_ADDR memaddr, PTRACE_TYPE_RET *word) +fetch_ppc_memory_1 (int tid, ULONGEST memaddr, PTRACE_TYPE_RET *word) { errno = 0; @@ -105,7 +105,7 @@ fetch_ppc_memory_1 (int tid, CORE_ADDR memaddr, PTRACE_TYPE_RET *word) /* Store WORD into PPU memory at (aligned) MEMADDR in thread TID. */ static int -store_ppc_memory_1 (int tid, CORE_ADDR memaddr, PTRACE_TYPE_RET word) +store_ppc_memory_1 (int tid, ULONGEST memaddr, PTRACE_TYPE_RET word) { errno = 0; @@ -124,11 +124,11 @@ store_ppc_memory_1 (int tid, CORE_ADDR memaddr, PTRACE_TYPE_RET word) /* Fetch LEN bytes of PPU memory at MEMADDR to MYADDR. */ static int -fetch_ppc_memory (CORE_ADDR memaddr, gdb_byte *myaddr, int len) +fetch_ppc_memory (ULONGEST memaddr, gdb_byte *myaddr, int len) { int i, ret; - CORE_ADDR addr = memaddr & -(CORE_ADDR) sizeof (PTRACE_TYPE_RET); + ULONGEST addr = memaddr & -(ULONGEST) sizeof (PTRACE_TYPE_RET); int count = ((((memaddr + len) - addr) + sizeof (PTRACE_TYPE_RET) - 1) / sizeof (PTRACE_TYPE_RET)); PTRACE_TYPE_RET *buffer; @@ -151,11 +151,11 @@ fetch_ppc_memory (CORE_ADDR memaddr, gdb_byte *myaddr, int len) /* Store LEN bytes from MYADDR to PPU memory at MEMADDR. */ static int -store_ppc_memory (CORE_ADDR memaddr, const gdb_byte *myaddr, int len) +store_ppc_memory (ULONGEST memaddr, const gdb_byte *myaddr, int len) { int i, ret; - CORE_ADDR addr = memaddr & -(CORE_ADDR) sizeof (PTRACE_TYPE_RET); + ULONGEST addr = memaddr & -(ULONGEST) sizeof (PTRACE_TYPE_RET); int count = ((((memaddr + len) - addr) + sizeof (PTRACE_TYPE_RET) - 1) / sizeof (PTRACE_TYPE_RET)); PTRACE_TYPE_RET *buffer; @@ -191,10 +191,10 @@ store_ppc_memory (CORE_ADDR memaddr, const gdb_byte *myaddr, int len) return to FD and ADDR the file handle and NPC parameter address used with the system call. Return non-zero if successful. */ static int -parse_spufs_run (int *fd, CORE_ADDR *addr) +parse_spufs_run (int *fd, ULONGEST *addr) { gdb_byte buf[4]; - CORE_ADDR pc = fetch_ppc_register (32); /* nip */ + ULONGEST pc = fetch_ppc_register (32); /* nip */ /* Fetch instruction preceding current NIP. */ if (fetch_ppc_memory (pc-4, buf, 4) != 0) @@ -270,7 +270,7 @@ static file_ptr spu_bfd_iovec_pread (struct bfd *abfd, void *stream, void *buf, file_ptr nbytes, file_ptr offset) { - CORE_ADDR addr = *(CORE_ADDR *)stream; + ULONGEST addr = *(ULONGEST *)stream; if (fetch_ppc_memory (addr + offset, buf, nbytes) != 0) { @@ -294,11 +294,11 @@ spu_bfd_iovec_stat (struct bfd *abfd, void *stream, struct stat *sb) } static bfd * -spu_bfd_open (CORE_ADDR addr) +spu_bfd_open (ULONGEST addr) { struct bfd *nbfd; - CORE_ADDR *open_closure = xmalloc (sizeof (CORE_ADDR)); + ULONGEST *open_closure = xmalloc (sizeof (ULONGEST)); *open_closure = addr; nbfd = bfd_openr_iovec (xstrdup (""), "elf32-spu", @@ -324,7 +324,7 @@ spu_bfd_open (CORE_ADDR addr) static void spu_symbol_file_add_from_memory (int inferior_fd) { - CORE_ADDR addr; + ULONGEST addr; struct bfd *nbfd; char id[128]; @@ -353,7 +353,7 @@ static void spu_child_post_startup_inferior (ptid_t ptid) { int fd; - CORE_ADDR addr; + ULONGEST addr; int tid = TIDGET (ptid); if (tid == 0) @@ -372,7 +372,7 @@ static void spu_child_post_attach (int pid) { int fd; - CORE_ADDR addr; + ULONGEST addr; /* Like child_post_startup_inferior, if we happened to attach to the inferior while it wasn't currently in spu_run, continue @@ -444,7 +444,7 @@ static void spu_fetch_inferior_registers (struct regcache *regcache, int regno) { int fd; - CORE_ADDR addr; + ULONGEST addr; /* We must be stopped on a spu_run system call. */ if (!parse_spufs_run (&fd, &addr)) @@ -485,7 +485,7 @@ static void spu_store_inferior_registers (struct regcache *regcache, int regno) { int fd; - CORE_ADDR addr; + ULONGEST addr; /* We must be stopped on a spu_run system call. */ if (!parse_spufs_run (&fd, &addr)) @@ -524,7 +524,7 @@ spu_xfer_partial (struct target_ops *ops, if (object == TARGET_OBJECT_MEMORY) { int fd; - CORE_ADDR addr; + ULONGEST addr; char mem_annex[32]; /* We must be stopped on a spu_run system call. */ -- 2.30.2