* interp.c (sim_open): Disable chunk of code that wrote code in
authorAlexandre Oliva <aoliva@redhat.com>
Thu, 18 Apr 2002 19:47:14 +0000 (19:47 +0000)
committerAlexandre Oliva <aoliva@redhat.com>
Thu, 18 Apr 2002 19:47:14 +0000 (19:47 +0000)
vector table entries.

sim/mips/ChangeLog
sim/mips/interp.c

index b7b47312d633e65bc5253dedd984bdba709d4696..ad49fccd6fbd51da67327fa68e7e946c91058387 100644 (file)
@@ -1,3 +1,8 @@
+2002-04-18  Alexandre Oliva  <aoliva@redhat.com>
+
+       * interp.c (sim_open): Disable chunk of code that wrote code in
+       vector table entries.
+
 2002-03-19  Chris Demetriou  <cgd@broadcom.com>
 
        * cp1.c (FP_S_s, FP_D_s, FP_S_be, FP_D_be, FP_S_e, FP_D_e, FP_S_f)
index 5bd61a8a824e32b72f23d82307d2154676a5e8c3..d56c2ef56ce37e320c6c3f1ef113a80db2e6d7f7 100644 (file)
@@ -698,10 +698,14 @@ sim_open (kind, cb, abfd, argv)
       sim_write (sd, 0x80000000, (char *) halt, sizeof (halt));
       sim_write (sd, 0x80000180, (char *) halt, sizeof (halt));
       sim_write (sd, 0x80000200, (char *) halt, sizeof (halt));
+#if 0
+      /* This is wrong.  We're not supposed to write code to the
+        vector tables, but rather pointers to code.  */
       /* XXX: Write here unconditionally? */
       sim_write (sd, 0xBFC00200, (char *) halt, sizeof (halt));
       sim_write (sd, 0xBFC00380, (char *) halt, sizeof (halt));
       sim_write (sd, 0xBFC00400, (char *) halt, sizeof (halt));
+#endif
     }
   }