diff options
author | Carl Love <cel@us.ibm.com> | 2021-10-08 22:54:05 +0000 |
---|---|---|
committer | Carl Love <cel@us.ibm.com> | 2021-10-13 13:16:21 -0500 |
commit | 1284c2264cca5c848e2f9622ea53e42c97e4e838 (patch) | |
tree | 0886484575871267eb0f8b2a4a5da355d3dd049a /gdb | |
parent | 76b43c9b5c2b275cbf4f927bfc25984410cb5dd5 (diff) | |
download | gdb-1284c2264cca5c848e2f9622ea53e42c97e4e838.zip gdb-1284c2264cca5c848e2f9622ea53e42c97e4e838.tar.gz gdb-1284c2264cca5c848e2f9622ea53e42c97e4e838.tar.bz2 |
PPC fix for stfiwx instruction (and additional stores with primary opcode of 31)
[gdb] Fix address being recorded in rs6000-tdep.c, ppc_process_record_op31.
The GDB record function was recording the variable addr that was passed in
rather than the calculated effective address (ea) by the
ppc_process_record_op31 function.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/rs6000-tdep.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c index 826f026..9c2bfca 100644 --- a/gdb/rs6000-tdep.c +++ b/gdb/rs6000-tdep.c @@ -4993,20 +4993,20 @@ ppc_process_record_op31 (struct gdbarch *gdbarch, struct regcache *regcache, switch (ext) { case 167: /* Store Vector Element Halfword Indexed */ - addr = addr & ~0x1ULL; + ea = ea & ~0x1ULL; break; case 199: /* Store Vector Element Word Indexed */ - addr = addr & ~0x3ULL; + ea = ea & ~0x3ULL; break; case 231: /* Store Vector Indexed */ case 487: /* Store Vector Indexed LRU */ - addr = addr & ~0xfULL; + ea = ea & ~0xfULL; break; } - record_full_arch_list_add_mem (addr, size); + record_full_arch_list_add_mem (ea, size); return 0; case 397: /* Store VSX Vector with Length */ |