Change the representation of compiled procedures and other entries:
authorGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Mon, 14 Mar 1988 16:37:15 +0000 (16:37 +0000)
committerGuillermo J. Rozas <edu/mit/csail/zurich/gjr>
Mon, 14 Mar 1988 16:37:15 +0000 (16:37 +0000)
They are now just the address of an instruction with a gc offset
preceding the instruction and an arity/type word preceding that.
Compiled closures are done by creating a tiny fake compiled code block
which jumps to the right place and sets up the free variables for
reference.

Uuo style links are now just jump instructions to the correct address.
All relocators have been updated to reflect this change.

Variable caches have no type code. The relocators know about this.

Incorporate JRM's fix to signal to close interrupt gap in hp-ux.

New types:
TC_COMPILED_ENTRY
TC_MANIFEST_CLOSURE
TC_LINKAGE_SECTION

v7/src/runtime/unpars.scm
v7/src/runtime/utabs.scm

index a23d5b41bec50b8fb43759444954db03a183192a..a9205a223c6b0011549a45c173cb39c8471b7f3c 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;    $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/unpars.scm,v 13.53 1987/11/17 20:11:54 jinx Rel $
+;;;    $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/unpars.scm,v 13.54 1988/03/14 16:36:38 jinx Rel $
 ;;;
 ;;;    Copyright (c) 1987 Massachusetts Institute of Technology
 ;;;
 
 (define-type 'PRIMITIVE unparse-primitive-procedure)
 
-(define (unparse-compiled-procedure procedure)
+(define (unparse-compiled-entry entry)
   (unparse-with-brackets
    (lambda ()
-     (*unparse-string "COMPILED-PROCEDURE ")
-     (unparse-datum procedure))))
+     (*unparse-string (symbol->string (compiled-entry-type entry)))
+     (*unparse-char #\Space)
+     (unparse-datum entry))))
 
-(define-type 'COMPILED-PROCEDURE unparse-compiled-procedure)
+(define-type 'COMPILED-ENTRY unparse-compiled-entry)
 
 (define-type 'ENVIRONMENT
   (lambda (environment)
index e6511e1e7abf804ad0f1e9ba27f3aa2ed2d41e22..6cb36f0a46d18d79f86774deae4bb0f29626df94 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;    $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/utabs.scm,v 13.47 1987/11/17 20:12:41 jinx Rel $
+;;;    $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/utabs.scm,v 13.48 1988/03/14 16:37:15 jinx Rel $
 ;;;
 ;;;    Copyright (c) 1987 Massachusetts Institute of Technology
 ;;;
     (INTERNED-SYMBOL . SYMBOL)
     (UNINTERNED-SYMBOL . SYMBOL)
     (EXTENDED-PROCEDURE . PROCEDURE)
-    (COMPILED-PROCEDURE . PROCEDURE)
     (PRIMITIVE . PRIMITIVE-PROCEDURE)
     (LEXPR . LAMBDA)
     (EXTENDED-LAMBDA . LAMBDA)