Mon Sep 16 14:32:58 1996 James G. Smith <jsmith@cygnus.co.uk>
authorJackie Smith Cashion <jsmith@redhat.com>
Mon, 16 Sep 1996 13:37:02 +0000 (13:37 +0000)
committerJackie Smith Cashion <jsmith@redhat.com>
Mon, 16 Sep 1996 13:37:02 +0000 (13:37 +0000)
* remote-mips.c (mips_load): Ensure that the PC is explicitly
  loaded after a load to a CAIRO PMON system.

gdb/ChangeLog
gdb/remote-mips.c

index 5c547d33a5d46febb44bac11923cdf045ee42217..4c697fd7f16b2919b45aca5a8868d4c906307cf4 100644 (file)
@@ -1,3 +1,8 @@
+Mon Sep 16 14:32:58 1996  James G. Smith  <jsmith@cygnus.co.uk>
+
+       * remote-mips.c (mips_load): Ensure that the PC is explicitly
+       loaded after a load to a CAIRO PMON system.
+       
 Fri Sep 13 12:02:39 1996  Fred Fish  <fnf@cygnus.com>
 
        * Makefile.in (INTERNAL_LDFLAGS): Add @HLDFLAGS@ to list.
index 5bcd1104d06f57fc93848dea9a17ba58bc86a816..657d1ba0e4e94187f9d46af17f1cf5ace501e07b 100644 (file)
@@ -2901,8 +2901,14 @@ mips_load (file, from_tty)
 
   mips_initialize ();
 
-/* Finally, make the PC point at the start address */
-
+  /* Finally, make the PC point at the start address */
+  if (mips_monitor == MON_CAIRO)
+    {
+      /* Work around problem where CAIRO monitor does not update the
+         PC after a load. The following ensures that the write_pc()
+         WILL update the PC value: */
+      register_valid[PC_REGNUM] = 0;
+    }
   if (exec_bfd)
     write_pc (bfd_get_start_address (exec_bfd));