This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] Use gdb::byte_vector in ppc-linux-tdep.c
- From: Tom Tromey <tromey at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 4 Nov 2017 16:38:37 -0000
- Subject: [binutils-gdb] Use gdb::byte_vector in ppc-linux-tdep.c
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=779bc38eca950c7f3b64173e99e25f0c0edfbe3b
commit 779bc38eca950c7f3b64173e99e25f0c0edfbe3b
Author: Tom Tromey <tom@tromey.com>
Date: Wed Nov 1 18:52:30 2017 -0600
Use gdb::byte_vector in ppc-linux-tdep.c
This removes a cleanup from ppc-linux-tdep.c, replacing it with
gdb::byte_vector.
gdb/ChangeLog
2017-11-04 Tom Tromey <tom@tromey.com>
* ppc-linux-tdep.c (ppc_linux_get_syscall_number): Use
gdb::byte_vector.
Diff:
---
gdb/ChangeLog | 5 +++++
gdb/ppc-linux-tdep.c | 17 ++++-------------
2 files changed, 9 insertions(+), 13 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 6db35dd..d6c4b6f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2017-11-04 Tom Tromey <tom@tromey.com>
+ * ppc-linux-tdep.c (ppc_linux_get_syscall_number): Use
+ gdb::byte_vector.
+
+2017-11-04 Tom Tromey <tom@tromey.com>
+
* objfiles.c (do_free_objfile_cleanup): Remove.
* compile/compile-object-load.c (compile_object_load): Update.
* objfiles.h (make_cleanup_free_objfile): Remove.
diff --git a/gdb/ppc-linux-tdep.c b/gdb/ppc-linux-tdep.c
index 847908a..ee80a71 100644
--- a/gdb/ppc-linux-tdep.c
+++ b/gdb/ppc-linux-tdep.c
@@ -725,28 +725,19 @@ ppc_linux_get_syscall_number (struct gdbarch *gdbarch,
struct regcache *regcache = get_thread_regcache (ptid);
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
- struct cleanup *cleanbuf;
- /* The content of a register */
- gdb_byte *buf;
- /* The result */
- LONGEST ret;
/* Make sure we're in a 32- or 64-bit machine */
gdb_assert (tdep->wordsize == 4 || tdep->wordsize == 8);
- buf = (gdb_byte *) xmalloc (tdep->wordsize * sizeof (gdb_byte));
-
- cleanbuf = make_cleanup (xfree, buf);
+ /* The content of a register */
+ gdb::byte_vector buf (tdep->wordsize);
/* Getting the system call number from the register.
When dealing with PowerPC architecture, this information
is stored at 0th register. */
- regcache_cooked_read (regcache, tdep->ppc_gp0_regnum, buf);
-
- ret = extract_signed_integer (buf, tdep->wordsize, byte_order);
- do_cleanups (cleanbuf);
+ regcache_cooked_read (regcache, tdep->ppc_gp0_regnum, buf.data ());
- return ret;
+ return extract_signed_integer (buf.data (), tdep->wordsize, byte_order);
}
/* PPC process record-replay */