diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2015-05-18 01:39:40 +0300 |
---|---|---|
committer | Max Filippov <jcmvbkbc@gmail.com> | 2015-05-29 13:33:30 +0300 |
commit | 8c6a948dbe1d6587058a85c31f4c9f5cf13bb464 (patch) | |
tree | 8796df5a84bcc7afc532c7dba142b5b98449852d /gdb | |
parent | 030f4c7f08246bdc79d74c4c297729003773b67c (diff) | |
download | gdb-8c6a948dbe1d6587058a85c31f4c9f5cf13bb464.zip gdb-8c6a948dbe1d6587058a85c31f4c9f5cf13bb464.tar.gz gdb-8c6a948dbe1d6587058a85c31f4c9f5cf13bb464.tar.bz2 |
xtensa: fix access to the last pseudo register
Currently access to the last pseudo register is aliased to a1. This is
done by little snippets in the beginning of xtensa_pseudo_register_read
and xtensa_pseudo_register_write that used to do such aliasing for FP
register since bdb4c075a29dd086f0868b394b488b1c94666be6, but then
FP_ALIAS was expanded into gdbarch_num_regs (current_gdbarch) +
gdbarch_num_pseudo_regs (current_gdbarch) (one register past the last
pseudo register) in 304fe2552d6e0821e8fdb7575f8e7ba6607a076d, which
then was changed to the last pseudo register in
94a0e877111421d300d26b858bd3a0a27078d1e8.
Drop these snippets.
2015-05-29 Max Filippov <jcmvbkbc@gmail.com>
gdb/
* xtensa-tdep.c (xtensa_pseudo_register_read)
(xtensa_pseudo_register_write): Don't alias last pseudo register
to a1.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/xtensa-tdep.c | 8 |
2 files changed, 6 insertions, 8 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ab10166..7090e96 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2015-05-29 Max Filippov <jcmvbkbc@gmail.com> + + * xtensa-tdep.c (xtensa_pseudo_register_read) + (xtensa_pseudo_register_write): Don't alias last pseudo register + to a1. + 2015-05-28 Don Breazeal <donb@codesourcery.com> * infrun.c (follow_fork_inferior): Ensure the use of diff --git a/gdb/xtensa-tdep.c b/gdb/xtensa-tdep.c index a66d00a..55e7d98 100644 --- a/gdb/xtensa-tdep.c +++ b/gdb/xtensa-tdep.c @@ -553,10 +553,6 @@ xtensa_pseudo_register_read (struct gdbarch *gdbarch, DEBUGTRACE ("xtensa_pseudo_register_read (... regnum = %d (%s) ...)\n", regnum, xtensa_register_name (gdbarch, regnum)); - if (regnum == gdbarch_num_regs (gdbarch) - + gdbarch_num_pseudo_regs (gdbarch) - 1) - regnum = gdbarch_tdep (gdbarch)->a0_base + 1; - /* Read aliases a0..a15, if this is a Windowed ABI. */ if (gdbarch_tdep (gdbarch)->isa_use_windowed_registers && (regnum >= gdbarch_tdep (gdbarch)->a0_base) @@ -653,10 +649,6 @@ xtensa_pseudo_register_write (struct gdbarch *gdbarch, DEBUGTRACE ("xtensa_pseudo_register_write (... regnum = %d (%s) ...)\n", regnum, xtensa_register_name (gdbarch, regnum)); - if (regnum == gdbarch_num_regs (gdbarch) - + gdbarch_num_pseudo_regs (gdbarch) -1) - regnum = gdbarch_tdep (gdbarch)->a0_base + 1; - /* Renumber register, if aliase a0..a15 on Windowed ABI. */ if (gdbarch_tdep (gdbarch)->isa_use_windowed_registers && (regnum >= gdbarch_tdep (gdbarch)->a0_base) |