aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog10
-rw-r--r--gdb/TODO5
-rw-r--r--gdb/rs6000-tdep.c3
3 files changed, 12 insertions, 6 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 55931d5..e905147 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,13 @@
+Sat Oct 22 03:41:13 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * valarith.c (value_binop): Take care of ANSI `value preserving'
+ rule, which was not addressed by the previous change.
+
+ * rs6000-tdep.c (skip_prologue): Handle `mr r31,r1', which is
+ generated by gcc-2.6, as a synonym for `oril r31,r1,0'.
+
+ * TODO: Remove item about RS/6000 shared libraries.
+
Thu Oct 20 17:35:45 1994 Stu Grossman (grossman@cygnus.com)
* defs.h, infrun.c (wait_for_inferior), top.c: Call
diff --git a/gdb/TODO b/gdb/TODO
index 85f463e..0860360 100644
--- a/gdb/TODO
+++ b/gdb/TODO
@@ -277,11 +277,6 @@ solution).
investigate "x/s 0" (right now stops early) (I think maybe GDB is
using a 0 address for bad purposes internally).
-Play with RS/6000 shared libraries (using shared library tests
-listed in testsuite/TODO as a guide). (Schauer has done shared
-library stuff on most other platforms but has not touched the
-RS/6000).
-
Make "info path" and path_command work again (but independent of the
environment either of gdb or that we'll pass to the inferior).
diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c
index 757e111..18fe4e9 100644
--- a/gdb/rs6000-tdep.c
+++ b/gdb/rs6000-tdep.c
@@ -244,7 +244,8 @@ CORE_ADDR pc;
op = read_memory_integer (pc, 4);
}
- if (op == 0x603f0000) { /* oril r31, r1, 0x0 */
+ if (op == 0x603f0000 /* oril r31, r1, 0x0 */
+ || op == 0x7c3f0b78) { /* mr r31, r1 */
pc += 4; /* this happens if r31 is used as */
op = read_memory_integer (pc, 4); /* frame ptr. (gcc does that) */