summaryrefslogtreecommitdiff
path: root/gdb/xtensa-tdep.c
diff options
context:
space:
mode:
authorAlan Hayward <alan.hayward@arm.com>2017-04-26 10:32:35 +0100
committerAlan Hayward <alan.hayward@arm.com>2017-04-26 10:34:15 +0100
commitc185f580b2b3baf7cee762c8ab31ab6925b9534a (patch)
tree9d6417e38b6dcb3fdbe4ea11448b9add84c55fcf /gdb/xtensa-tdep.c
parent19c4559475791cd70e319eaf5c1e23d23d9ae81e (diff)
downloadbinutils-gdb-c185f580b2b3baf7cee762c8ab31ab6925b9534a.tar.gz
xtensa_pseudo_register_read/write - Use regcache_raw_read_unsigned
gdb/ * xtensa-tdep.c (xtensa_pseudo_register_read): Use regcache_raw_read_unsigned. (xtensa_pseudo_register_write): Likewise.
Diffstat (limited to 'gdb/xtensa-tdep.c')
-rw-r--r--gdb/xtensa-tdep.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/gdb/xtensa-tdep.c b/gdb/xtensa-tdep.c
index 0fcd4831654..0a4ed37cf95 100644
--- a/gdb/xtensa-tdep.c
+++ b/gdb/xtensa-tdep.c
@@ -559,16 +559,15 @@ xtensa_pseudo_register_read (struct gdbarch *gdbarch,
&& (regnum >= gdbarch_tdep (gdbarch)->a0_base)
&& (regnum <= gdbarch_tdep (gdbarch)->a0_base + 15))
{
- gdb_byte *buf = (gdb_byte *) alloca (MAX_REGISTER_SIZE);
+ ULONGEST value;
enum register_status status;
- status = regcache_raw_read (regcache,
- gdbarch_tdep (gdbarch)->wb_regnum,
- buf);
+ status = regcache_raw_read_unsigned (regcache,
+ gdbarch_tdep (gdbarch)->wb_regnum,
+ &value);
if (status != REG_VALID)
return status;
- regnum = arreg_number (gdbarch, regnum,
- extract_unsigned_integer (buf, 4, byte_order));
+ regnum = arreg_number (gdbarch, regnum, value);
}
/* We can always read non-pseudo registers. */
@@ -656,12 +655,10 @@ xtensa_pseudo_register_write (struct gdbarch *gdbarch,
&& (regnum >= gdbarch_tdep (gdbarch)->a0_base)
&& (regnum <= gdbarch_tdep (gdbarch)->a0_base + 15))
{
- gdb_byte *buf = (gdb_byte *) alloca (MAX_REGISTER_SIZE);
-
- regcache_raw_read (regcache,
- gdbarch_tdep (gdbarch)->wb_regnum, buf);
- regnum = arreg_number (gdbarch, regnum,
- extract_unsigned_integer (buf, 4, byte_order));
+ ULONGEST value;
+ regcache_raw_read_unsigned (regcache,
+ gdbarch_tdep (gdbarch)->wb_regnum, &value);
+ regnum = arreg_number (gdbarch, regnum, value);
}
/* We can always write 'core' registers.