dynamic initialization need not know the block name.
authorGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Mon, 1 Nov 1993 15:30:34 +0000 (15:30 +0000)
committerGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Mon, 1 Nov 1993 15:30:34 +0000 (15:30 +0000)
v7/src/compiler/machines/C/cout.scm
v7/src/microcode/liarc.h
v8/src/microcode/liarc.h

index f29c630559001530baf9d1d860a103e166c3dac4..d90ad657ef46195cc9ffeb4bcfe887b0838d51d4 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: cout.scm,v 1.8 1993/10/31 18:34:13 gjr Exp $
+$Id: cout.scm,v 1.9 1993/11/01 15:30:24 gjr Exp $
 
 Copyright (c) 1992-1993 Massachusetts Institute of Technology
 
@@ -203,7 +203,8 @@ MIT in each case. |#
                                    "\", " decl-data-name
                                    ", " data-name ")\n"
                                    "#endif /* WANT_ONLY_CODE */\n\n"
-                                   "DECLARE_DYNAMIC_INITIALIZATION ()\n\n"))
+                                   "DECLARE_DYNAMIC_INITIALIZATION (\""
+                                   code-name "\")\n\n"))
                                  '())
                              xtra-procs
 
index 5d07ac54ad90cfe36f063f48f3e773bd50a08740..d9adef7332556578469d8d1b632b1b102dc8f028 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-C-*-
 
-$Id: liarc.h,v 1.7 1993/10/30 03:02:05 gjr Exp $
+$Id: liarc.h,v 1.8 1993/11/01 15:30:34 gjr Exp $
 
 Copyright (c) 1992-1993 Massachusetts Institute of Technology
 
@@ -346,7 +346,7 @@ REGISTER SCHEME_OBJECT * Rsp = Stack_Pointer
   extern int EXFUN (decl_data, (void));                                        \
   extern SCHEME_OBJECT * EXFUN (data, (unsigned long));
 
-# define DECLARE_DYNAMIC_INITIALIZATION()
+# define DECLARE_DYNAMIC_INITIALIZATION(name)
 
 #else /* COMPILE_FOR_DYNAMIC_LOADING */
 
@@ -371,17 +371,21 @@ REGISTER SCHEME_OBJECT * Rsp = Stack_Pointer
     return (declare_compiled_data (name, decl_data, data));            \
   }
 
-# define DECLARE_DYNAMIC_INITIALIZATION()                              \
-  extern int EXFUN (dload_initialize_file, (void));                    \
+# define DECLARE_DYNAMIC_INITIALIZATION(name)                          \
+  extern char * EXFUN (dload_initialize_file, (void));                 \
                                                                        \
-  int                                                                  \
+  char *                                                               \
   DEFUN_VOID (dload_initialize_file)                                   \
   {                                                                    \
     int result = (dload_initialize_code ());                           \
     if (result != 0)                                                   \
-      return (result);                                                 \
-    return (dload_initialize_data ());                                 \
-  }
+      return ((char *) NULL);                                          \
+    result = (dload_initialize_data ());                               \
+    if (result != 0)                                                   \
+      return ((char *) NULL);                                          \
+    else                                                               \
+      return (name);                                                   \
+  }                                                                    \
 
 #endif /* COMPILE_FOR_DYNAMIC_LOADING */
 \f
index 5d07ac54ad90cfe36f063f48f3e773bd50a08740..d9adef7332556578469d8d1b632b1b102dc8f028 100644 (file)
@@ -1,6 +1,6 @@
 /* -*-C-*-
 
-$Id: liarc.h,v 1.7 1993/10/30 03:02:05 gjr Exp $
+$Id: liarc.h,v 1.8 1993/11/01 15:30:34 gjr Exp $
 
 Copyright (c) 1992-1993 Massachusetts Institute of Technology
 
@@ -346,7 +346,7 @@ REGISTER SCHEME_OBJECT * Rsp = Stack_Pointer
   extern int EXFUN (decl_data, (void));                                        \
   extern SCHEME_OBJECT * EXFUN (data, (unsigned long));
 
-# define DECLARE_DYNAMIC_INITIALIZATION()
+# define DECLARE_DYNAMIC_INITIALIZATION(name)
 
 #else /* COMPILE_FOR_DYNAMIC_LOADING */
 
@@ -371,17 +371,21 @@ REGISTER SCHEME_OBJECT * Rsp = Stack_Pointer
     return (declare_compiled_data (name, decl_data, data));            \
   }
 
-# define DECLARE_DYNAMIC_INITIALIZATION()                              \
-  extern int EXFUN (dload_initialize_file, (void));                    \
+# define DECLARE_DYNAMIC_INITIALIZATION(name)                          \
+  extern char * EXFUN (dload_initialize_file, (void));                 \
                                                                        \
-  int                                                                  \
+  char *                                                               \
   DEFUN_VOID (dload_initialize_file)                                   \
   {                                                                    \
     int result = (dload_initialize_code ());                           \
     if (result != 0)                                                   \
-      return (result);                                                 \
-    return (dload_initialize_data ());                                 \
-  }
+      return ((char *) NULL);                                          \
+    result = (dload_initialize_data ());                               \
+    if (result != 0)                                                   \
+      return ((char *) NULL);                                          \
+    else                                                               \
+      return (name);                                                   \
+  }                                                                    \
 
 #endif /* COMPILE_FOR_DYNAMIC_LOADING */
 \f