* libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 26 Jan 1998 22:54:52 +0000 (22:54 +0000)
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 26 Jan 1998 22:54:52 +0000 (22:54 +0000)
        stuff only if MCT_TEXT is #define'd.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17496 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/libgcc2.c

index 68a8ab5..3ec5d67 100644 (file)
@@ -1,3 +1,8 @@
+Mon Jan 26 23:57:39 1998  Manfred Hollstein  <manfred@s-direktnet.de>
+
+       * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
+       stuff only if MCT_TEXT is #define'd.
+
 Mon Jan 26 23:52:51 1998  Markus F.X.J. Oberhumer <k3040e4@c210.edvz.uni-linz.ac.at>
 
        * configure.in (i*86-pc-msdosdjgpp): Treat like msdos & go32
index 21301f5..673d2f3 100644 (file)
@@ -2724,7 +2724,10 @@ __enable_execute_stack ()
 
 /* Motorola forgot to put memctl.o in the libp version of libc881.a,
    so define it here, because we need it in __clear_insn_cache below */
+/* On older versions of this OS, no memctl or MCT_TEXT are defined;
+   hence we enable this stuff only if MCT_TEXT is #define'd.  */
 
+#ifdef MCT_TEXT
 asm("\n\
        global memctl\n\
 memctl:\n\
@@ -2735,6 +2738,7 @@ memctl:\n\
 noerror:\n\
        movq &0,%d0\n\
        rts");
+#endif
 
 /* Clear instruction cache so we can call trampolines on stack.
    This is called from FINALIZE_TRAMPOLINE in mot3300.h.  */
@@ -2742,6 +2746,7 @@ noerror:\n\
 void
 __clear_insn_cache ()
 {
+#ifdef MCT_TEXT
   int save_errno;
 
   /* Preserve errno, because users would be surprised to have
@@ -2752,6 +2757,7 @@ __clear_insn_cache ()
      No need to use an address derived from _start or %sp, as 0 works also. */
   memctl(0, 4096, MCT_TEXT);
   errno = save_errno;
+#endif
 }
 
 #endif /* __sysV68__ */