From: Tom Tromey Date: Thu, 28 Sep 2017 03:06:21 +0000 (-0600) Subject: Remove cleanup from xstormy16-tdep.c X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=726b2169b4cda6a0267cb2986ada758270cff093;p=binutils-gdb.git Remove cleanup from xstormy16-tdep.c This removes a cleanup from xstormy16-tdep.c, using gdb::byte_vector. gdb/ChangeLog 2017-09-29 Tom Tromey * xstormy16-tdep.c (xstormy16_push_dummy_call): Use gdb::byte_vector. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d2678d4bb69..989c12718f5 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2017-09-29 Tom Tromey + + * xstormy16-tdep.c (xstormy16_push_dummy_call): Use + gdb::byte_vector. + 2017-09-29 Tom Tromey * complaints.c (vcomplaint): Use std::string. diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c index 40a6d9818f8..bed4305d230 100644 --- a/gdb/xstormy16-tdep.c +++ b/gdb/xstormy16-tdep.c @@ -35,6 +35,7 @@ #include "doublest.h" #include "osabi.h" #include "objfiles.h" +#include "common/byte-vector.h" enum gdb_regnum { @@ -276,21 +277,17 @@ xstormy16_push_dummy_call (struct gdbarch *gdbarch, wordaligned. */ for (j = nargs - 1; j >= i; j--) { - gdb_byte *val; - struct cleanup *back_to; const gdb_byte *bytes = value_contents (args[j]); typelen = TYPE_LENGTH (value_enclosing_type (args[j])); slacklen = typelen & 1; - val = (gdb_byte *) xmalloc (typelen + slacklen); - back_to = make_cleanup (xfree, val); - memcpy (val, bytes, typelen); - memset (val + typelen, 0, slacklen); + gdb::byte_vector val (typelen + slacklen); + memcpy (val.data (), bytes, typelen); + memset (val.data () + typelen, 0, slacklen); /* Now write this data to the stack. The stack grows upwards. */ - write_memory (stack_dest, val, typelen + slacklen); + write_memory (stack_dest, val.data (), typelen + slacklen); stack_dest += typelen + slacklen; - do_cleanups (back_to); } store_unsigned_integer (buf, xstormy16_pc_size, byte_order, bp_addr);