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  <tom@tromey.com>

	* xstormy16-tdep.c (xstormy16_push_dummy_call): Use
	gdb::byte_vector.
This commit is contained in:
Tom Tromey 2017-09-27 21:06:21 -06:00
parent 55b064321e
commit 726b2169b4
2 changed files with 10 additions and 8 deletions

View File

@ -1,3 +1,8 @@
2017-09-29 Tom Tromey <tom@tromey.com>
* xstormy16-tdep.c (xstormy16_push_dummy_call): Use
gdb::byte_vector.
2017-09-29 Tom Tromey <tom@tromey.com>
* complaints.c (vcomplaint): Use std::string.

View File

@ -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);